Re: [PATCH 001 of 2] Fix read/truncate race.

Andrew Morton
2007-06-08T06:11:06Z

On Fri, 8 Jun 2007 12:48:48 +1000 Neil Brown <neilb@suse.de> wrote:

> The following patch will remove the extra seqlock except when we
> actually need it and remove the extra arithmetic - but I haven't
> tested it or reviewed it properly. I can do that if you think it is
> the right direction.

Yes, the optimisation is valid and looks useful.

> ./mm/filemap.c | 34 ++++++++++++++++++++++++++++------

It didn't apply - your tree seems different from mine.

> + *
> + * NOTE: This access of inode->i_size is not protected
> + * and if there is a concurrent update on a 32bit machine,
> + * it could return the wrong value. This could only be a problem
> + * if i_size has actually changed to a smaller value before the
> + * page became uptodate, and at this point it still has a smaller
> + * value, but due to a race while reading, it appears unchanged.
> + * The chances of this happening are so small and the consequence
> + * sufficiently minor, that the cost of the seqlock seems
> + * not to be justified.

please consider incorporating scripts/checkpatch.pl into your patch
preparation toolchain.