Re: 2.5.70-mm1

Andrew Morton
2003-05-30T16:30:43Z

"Martin J. Bligh" <mbligh@aracnet.com> wrote:
>
> Well, that just seems to make the box hang in SDET (actually, moving it
> outside lock_kernel makes it hang in a similar way). Not sure it's
> *caused* by this ... it might just change timing enough to trigger it.

Yes, sorry. Looks like you hit the filemap.c screwup. The below should
fix it.

--- 25/mm/filemap.c~generic_file_write-commit_write-fix 2003-05-30 04:01:19.000000000 -0700
+++ 25-akpm/mm/filemap.c 2003-05-30 04:04:11.000000000 -0700
@@ -1718,10 +1718,9 @@ generic_file_aio_write_nolock(struct kio
copied = filemap_copy_from_user_iovec(page, offset,
cur_iov, iov_base, bytes);
flush_dcache_page(page);
+ status = a_ops->commit_write(file, page, offset,
+ offset + copied);
if (likely(copied > 0)) {
- status = a_ops->commit_write(file, page, offset,
- offset + copied);
-
if (!status)
status = copied;

_