linux-fsdevel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* Bug in block_write_full_page (fs/buffer.c)?
       [not found] <8e70aacf05060519472206605e@mail.gmail.com>
@ 2005-06-06 20:02 ` Martin Jambor
  2005-06-06 22:55   ` Anton Altaparmakov
  0 siblings, 1 reply; 2+ messages in thread
From: Martin Jambor @ 2005-06-06 20:02 UTC (permalink / raw)
  To: linux-fsdevel

Hi,

when block_write_full_page (fs/buffer.c) is called and the page is
fully outside the i_size, the function does not call
end_page_writeback() even though Documentation/filesystems/Locking
explicitly says that any implementation of aops->writepage must do so
in any case.

"If no I/O is submitted, the filesystem must run end_page_writeback()
against the page before returning from writepage."

Is this a bug, is the documentation wrong or is it just me?

TIA,

Martin Jambor

^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: Bug in block_write_full_page (fs/buffer.c)?
  2005-06-06 20:02 ` Bug in block_write_full_page (fs/buffer.c)? Martin Jambor
@ 2005-06-06 22:55   ` Anton Altaparmakov
  0 siblings, 0 replies; 2+ messages in thread
From: Anton Altaparmakov @ 2005-06-06 22:55 UTC (permalink / raw)
  To: Martin Jambor; +Cc: linux-fsdevel

Hi,

On Mon, 6 Jun 2005, Martin Jambor wrote:
> when block_write_full_page (fs/buffer.c) is called and the page is
> fully outside the i_size, the function does not call
> end_page_writeback() even though Documentation/filesystems/Locking
> explicitly says that any implementation of aops->writepage must do so
> in any case.
> 
> "If no I/O is submitted, the filesystem must run end_page_writeback()
> against the page before returning from writepage."
> 
> Is this a bug, is the documentation wrong or is it just me?

Just you.  (-;

The sentence you quote applies only once set_page_writeback() has been 
run which it hasn't in this case.

But this is beside the point.  The point is that the code path you are 
concerned about calls block_invalidatepage() which ends up calling 
clear_page_dirty() for the kind of page we are discussing which in turn 
clears the radix tree dirty tag so all is dandy.

Best regards,

	Anton
-- 
Anton Altaparmakov <aia21 at cam.ac.uk> (replace at with @)
Unix Support, Computing Service, University of Cambridge, CB2 3QH, UK
Linux NTFS maintainer / IRC: #ntfs on irc.freenode.net
WWW: http://linux-ntfs.sf.net/ & http://www-stu.christs.cam.ac.uk/~aia21/

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2005-06-06 22:56 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
     [not found] <8e70aacf05060519472206605e@mail.gmail.com>
2005-06-06 20:02 ` Bug in block_write_full_page (fs/buffer.c)? Martin Jambor
2005-06-06 22:55   ` Anton Altaparmakov

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).