Re: [patch 8/8] consolidate generic_writepages and mpage_writepages fix

Andrew Morton
2007-03-07T20:47:05Z

On Tue, 06 Mar 2007 19:04:51 +0100
Miklos Szeredi <miklos@szeredi.hu> wrote:

> From: Miklos Szeredi <mszeredi@suse.cz>
>
> Fix NULL pointer dereference in __mpage_writepage. This probably
> doesn't matter in practice, but this is the original behavior.
>
> Signed-off-by: Miklos Szeredi <mszeredi@suse.cz>
> ---
>
> Index: linux/fs/mpage.c
> ===================================================================
> --- linux.orig/fs/mpage.c 2007-03-06 17:30:09.000000000 +0100
> +++ linux/fs/mpage.c 2007-03-06 17:30:33.000000000 +0100
> @@ -662,7 +662,7 @@ confused:
> if (bio)
> bio = mpage_bio_submit(WRITE, bio);
>
> - if (mpd->use_writepage) {
> + if (mpd->use_writepage && mapping->a_ops->writepage) {
> ret = mapping->a_ops->writepage(page, wbc);
> } else {
> ret = -EAGAIN;
>
> --

I'm inclined to leave the code as-is, as an optimisation. If it
blows up then it'd be cleaner to change the caller (mpage_writepages)
to do

.use_writepage = (writepage != NULL),

?