From: Jeff Moyer <jmoyer@redhat.com>
To: Andrew Patterson <andrew.patterson@hp.com>
Cc: linux-scsi@vger.kernel.org,
James.Bottomley@HansenPartnership.com,
linux-kernel@vger.kernel.org, viro@zeniv.linux.org.uk,
axboe@kernel.dk, andmike@linux.vnet.ibm.com, mike.miller@hp.com,
genanr@emsphone.com
Subject: Re: [PATCH 6/6] Call flush_disk() after detecting an online resize.
Date: Wed, 03 Sep 2008 14:20:11 -0400 [thread overview]
Message-ID: <x491w019jms.fsf@segfault.boston.devel.redhat.com> (raw)
In-Reply-To: <20080829231325.25065.48172.stgit@bluto.andrew> (Andrew Patterson's message of "Fri, 29 Aug 2008 17:13:26 -0600")
Andrew Patterson <andrew.patterson@hp.com> writes:
> Call flush_disk() after detecting an online resize.
>
> We call flush_disk() to make sure the buffer cache for the disk is
> flushed after a disk resize. There are two resize cases, growing and
> shrinking. Given that users can shrink/then grow a disk before
> revalidate_disk() is called, we treat the grow case identically to
> shrinking. We need to flush the buffer cache after an online shrink
> because, as James Bottomley puts it,
>
> The two use cases for shrinking I can see are
>
> 1. planned: the fs is already shrunk to within the new boundaries
> and all data is relocated, so invalidate is fine (any dirty
> buffers that might exist in the shrunk region are there only
> because they were relocated but not yet written to their
> original location).
> 2. unplanned: In this case, the fs is probably toast, so whether
> we invalidate or not isn't going to make a whole lot of
> difference; it's still going to try to read or write from
> sectors beyond the new size and get I/O errors.
>
> Immediately invalidating shrunk disks will cause errors for outstanding
> I/Os for reads/write beyond the new end of the disk to be generated
> earlier then if we waited for the normal buffer cache operation. It also
> removes a potential security hole where we might keep old data around
> from beyond the end of the shrunk disk if the disk was not invalidated.
>
> Signed-off-by: Andrew Patterson <andrew.patterson@hp.com>
Reviewed-by: Jeff Moyer <jmoyer@redhat.com>
next prev parent reply other threads:[~2008-09-03 18:30 UTC|newest]
Thread overview: 21+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-08-29 23:12 [PATCH 0/6] detect online disk resize Andrew Patterson
2008-08-29 23:13 ` [PATCH 1/6] Wrapper for lower-level revalidate_disk routines Andrew Patterson
2008-09-03 18:16 ` Jeff Moyer
2008-08-29 23:13 ` [PATCH 2/6] Adjust block device size after an online resize of a disk Andrew Patterson
2008-09-03 18:17 ` Jeff Moyer
2008-08-29 23:13 ` [PATCH 3/6] Check for device resize when rescanning partitions Andrew Patterson
2008-09-03 18:17 ` Jeff Moyer
2008-08-29 23:13 ` [PATCH 4/6] SCSI sd driver calls revalidate_disk wrapper Andrew Patterson
2008-09-03 18:17 ` Jeff Moyer
2008-08-29 23:13 ` [PATCH 5/6] Added flush_disk to factor out common buffer cache flushing code Andrew Patterson
2008-09-03 18:19 ` Jeff Moyer
2008-09-04 4:16 ` Andrew Patterson
2008-09-04 13:13 ` Jeff Moyer
2008-08-29 23:13 ` [PATCH 6/6] Call flush_disk() after detecting an online resize Andrew Patterson
2008-09-03 18:20 ` Jeff Moyer [this message]
2008-09-04 7:26 ` [PATCH 0/6] detect online disk resize Jens Axboe
2008-09-04 14:25 ` Andrew Patterson
2008-09-08 18:01 ` Jeff Moyer
2008-09-09 7:41 ` Pasi Kärkkäinen
2008-09-24 15:23 ` Vladislav Bolkhovitin
2008-09-04 20:27 Andrew Patterson
2008-09-04 20:27 ` [PATCH 6/6] Call flush_disk() after detecting an online resize Andrew Patterson
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=x491w019jms.fsf@segfault.boston.devel.redhat.com \
--to=jmoyer@redhat.com \
--cc=James.Bottomley@HansenPartnership.com \
--cc=andmike@linux.vnet.ibm.com \
--cc=andrew.patterson@hp.com \
--cc=axboe@kernel.dk \
--cc=genanr@emsphone.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-scsi@vger.kernel.org \
--cc=mike.miller@hp.com \
--cc=viro@zeniv.linux.org.uk \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®