Re: [PATCH 05/10] block: remove per-queue plugging

From: Jens Axboe
Date: Tue Mar 08 2011 - 07:24:19 EST


On 2011-03-04 05:00, Vivek Goyal wrote:
> On Sat, Jan 22, 2011 at 01:17:24AM +0000, Jens Axboe wrote:
>
> [..]
>> mm/page-writeback.c | 2 +-
>> mm/readahead.c | 12 ---
>> mm/shmem.c | 1 -
>> mm/swap_state.c | 5 +-
>> mm/swapfile.c | 37 --------
>> mm/vmscan.c | 2 +-
>> 118 files changed, 153 insertions(+), 1248 deletions(-)
>
> block/blk-throttle.c also uses blk_unplug(). We need to get rid of that
> also.

Done.

> [..]
>> @@ -632,8 +630,6 @@ void elv_insert(struct request_queue *q, struct request *rq, int where)
>> * don't force unplug of the queue for that case.
>> * Clear unplug_it and fall through.
>> */
>
> Above comments now seem to be redundant.

Killed.

>> diff --git a/drivers/md/dm-raid.c b/drivers/md/dm-raid.c
>> index b9e1e15..5ef136c 100644
>> --- a/drivers/md/dm-raid.c
>> +++ b/drivers/md/dm-raid.c
>> @@ -394,7 +394,7 @@ static void raid_unplug(struct dm_target_callbacks *cb)
>> {
>> struct raid_set *rs = container_of(cb, struct raid_set, callbacks);
>>
>> - md_raid5_unplug_device(rs->md.private);
>> + md_raid5_kick_device(rs->md.private);
>
> With all the unplug logic gone, I think we can get rid of blk_sync_queue()
> call from md. It looks like md was syncing the queue just to make sure
> that unplug_fn is not called again. Now all that logic is gone so it
> should be redundant.
>
> Also we can probably get rid of some queue_lock taking instances in
> md code. NeilBrown recently put following patch in, which is taking
> queue lock only around plug functions. Now queue plugging gone,
> I guess it should not be required.

Agree on both accounts. I'll leave that out for this version, though.

--
Jens Axboe

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