[Lustre-devel] mmp unplug patch
johann at whamcloud.com
Fri Jun 29 13:43:39 PDT 2012
On Fri, Jun 29, 2012 at 11:58:53AM -0700, Nathan Rutman wrote:
> Can anyone explain the purpose of unplug call in this patch?
I guess the intent is to make sure that the MMP block updates aren't delayed by the underlying I/O scheduler and make it to the storage system in a timely manner.
> The first part of the patch I get, but why do we need to drop the existing queued items?
The issue is that some I/O schedulers might not support BIO_RW_SYNC and the ones that do might still delay the request a bit, hoping to merge it with a forthcoming request. Therefore, the only way to make sure that the I/O is issued straight away is to unplug the queue.
All in all, it depends on whether the I/O scheduler delay is negligible compared to the MMP update interval.
> Doesn't this simply result in more fragmented IO?
Yes, it might.
More information about the lustre-devel