Re: [PATCH] zero_user_page uses in fs/buffer.c and fs/libfs.c

From: Nate Diller
Date: Tue May 01 2007 - 22:27:33 EST


On 5/1/07, Nate Diller <nate.diller@xxxxxxxxx> wrote:
On 5/1/07, Christoph Lameter <clameter@xxxxxxx> wrote:
> On Tue, 1 May 2007, Andrew Morton wrote:
>
> > As Satyam said, this will sometimes cause us to map and unmap the page
> > twice, and to run flush_dcache_page() twice. In not-terribly-uncommon
> > circumstances in very frequently called functions.
> >
> > Doesn't seem worth it to me.
>
> Ok but we have that code three times. Should I add a variant of
> zero_user_page that zeroes everything but the section specified?
>
> zero_user_page_allbut() ?

the function already exists, it's called simple_prepare_write(), and i
thought there were patches to convert those callsites in -mm ...
although it looks like i let a review comment on that slide by. I
need to redo a bunch of patches for re-submission anyway, so i guess
i'll deal with that tomorrow.

NATE


well, leave it to me to reply too quickly, sorry. i think we should
leave simple_prepare_write() the way it is, since it's a library
function itself. the other two callsites in your patch are buffers,
which may themselves be smaller than a page so you would need a
special function for just those two uses, there's no other way to
avoid making two calls to flush_dcache_page(). if it's tremendously
important to you to eliminate open coding of these, maybe make a
'static int buffer_prepare_write()' or some such in fs/buffer.c

NATE
-
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/