[PATCH] generic_osync_inode() with OSYNC_INODE only passed (Re: [PATCH 1/2] miss-sync changes on attributes)

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 




generic_osync_inode() seems to do over-writing, if OSYNC_INODE only passed.
According comments of generic_osync_inode(), it is expected to write inode
itself only. Current implementation trys to write data page, even if
OSYNC_INODE only passed. This patch fixes it.

This patch is preparetion of other patch to fix "miss-sync changes on
attributes".


Machida, Hiroyuki wrote:


OGAWA Hirofumi wrote:

"Machida, Hiroyuki" <[email protected]> writes:


OGAWA Hirofumi wrote:

Andrew Morton <[email protected]> writes:


However there's not much point in writing a brand-new function when
write_inode_now() almost does the right thing.  We can share the
implementation within fs-writeback.c.


Indeed. We use the generic_osync_inode() for it?


Please let me confirm.
Using generic_osync_inode(inode, NULL, OSYNC_INODE) instaed of
sync_inode_wodata(inode) is peferable for changes on fs/open.c,
even it would write data. Is it correct?



No, I only thought the interface is good. I don't know why it writes
data pages even if OSYNC_INODE only.



I checked 2.6.13 tree, following functions call generic_osync_inode().
However noone calls it with OSYNC_INODE. SO I can't find intention of
it's usage.

Does anyone know why generic_osync_inode() trys to write data page,
even if OSYNC_INODE only passed ?

  - fs/reiserfs/file.c
    reiserfs_file_write()        OSYNC_METADATA | OSYNC_DATA
  - mm/filemap.c
    sync_page_range()        OSYNC_METADATA
    sync_page_range_nolock()    OSYNC_METADATA
    generic_file_direct_write    OSYNC_METADATA


--
Hiroyuki Machida		[email protected]		

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

[Index of Archives]     [Kernel Newbies]     [Netfilter]     [Bugtraq]     [Photo]     [Stuff]     [Gimp]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Video 4 Linux]     [Linux for the blind]     [Linux Resources]
  Powered by Linux