Re: 2.6.19-rc2-mm1

From: Nick Piggin
Date: Wed Oct 18 2006 - 14:14:55 EST


Badari Pulavarty wrote:
On Thu, 2006-10-19 at 03:32 +1000, Nick Piggin wrote:

Sorry. Can you try with ext2? Alternatively, try with ext3 or reiserfs
and change the line in mm/filemap.c:generic_file_buffered_write from

status = a_ops->commit_write(file, page, offset, offset+copied);
to
status = a_ops->commit_write(file, page, offset, offset+bytes);

and see if that solves your problem (that will result in rubbish being
temporarily visible, but there is a similar problem upstream anyway, so it
shouldn't cause other failures in your test).


No. Above change didn't help either :(

OK, so it isn't due to passing in a short / zero length to commit_write.

It is more likely to be a subtle bug when retrying the write after having
faulted on the first page. Hmm, you wouldn't be deadlocking on i_mutex,
due to faulting in fault_in_pages_readable (that is against the documented
lock ordering, but thank god it looks like the documentation is incorrect
as msync doesn't hold mmap_sem over do_fsync).

I can't see anything yet, but I'll keep looking (and try to reproduce
if I can get TLP working).

--
SUSE Labs, Novell Inc.
Send instant messages to your online friends http://au.messenger.yahoo.com -
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/