Re: [PATCH 5/6] Added flush_disk to factor out common buffer cacheflushing code.

From: Andrew Patterson
Date: Thu Sep 04 2008 - 00:16:36 EST


On Wed, 2008-09-03 at 14:19 -0400, Jeff Moyer wrote:
> Andrew Patterson <andrew.patterson@xxxxxx> writes:
>
> > Added flush_disk to factor out common buffer cache flushing code.
> >
> > We need to be able to flush the buffer cache for for more than
> > just when a disk is changed, so we factor out common cache flush code
> > in check_disk_change() to an internal flush_disk() routine. This
> > routine will then be used for both disk changes and disk resizes (in a
> > later patch).
> >
> > Include the disk name in the text indicating that there are busy
> > inodes on the device and increase the KERN severity of the message.
> >
> > Signed-off-by: Andrew Patterson <andrew.patterson@xxxxxx>
> Reviewed-by: Jeff Moyer <jmoyer@xxxxxxxxxx>
>
> > +static void flush_disk(struct block_device *bdev)
> > +{
> > + if (__invalidate_device(bdev)) {
> > + char name[BDEVNAME_SIZE] = "";
> > +
> > + if (bdev->bd_disk)
> > + disk_name(bdev->bd_disk, 0, name);
> > + printk(KERN_WARNING "VFS: busy inodes on changed media %s\n",
> > + name);
> > + }
>
> This message will scare folks growing their devices online. Can you
> think of some better verbiage for this?

This message is shared with the check_disk_change() routine. Yes, it is
scary, but perhaps that is to the good. We have no guarantee how the
user changed the underlying storage. For example, they might have
shrunk the volume below the size of an underlying file-system and then
grew it again before kicking off the resize detection (admittedly a
degenerate case), in which case the warning is appropriate. Any
suggestions on better wording?

Andrew

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