Re: elevator private data for REQ_FLUSH

From: Tejun Heo
Date: Mon Mar 28 2011 - 04:23:32 EST


Hey,

On Sat, Mar 26, 2011 at 12:21:56AM -0400, Mike Snitzer wrote:
> > Yes, I was thinking about something like that. I consider the patch
> > merged an immediate stop gap, we need to improve this situation. It's
> > not exactly pretty to have this sort of condition in both
> > __make_request() and flush_plug_list(). Clearly it should be handled
> > further down.
>
> OK, and btw my patch was too restrictive. blk_kick_flush()
> elv_insert()s a flush request with ELEVATOR_INSERT_REQUEUE.
>
> Should blk_kick_flush() process the flush request without calling
> elv_insert() -- like is done with open coded list_add() in
> blk_insert_flush()?
>
> Or should blk_insert_flush() use elv_insert() with
> ELEVATOR_INSERT_REQUEUE too?

Hmmm... I would prefer the latter. Given that INSERT_REQUEUE and
FRONT are no longer different, it would probably be better to use
FRONT tho. The only reason REQUEUE is used there is to avoid kicking
the queue from elv_insert(), which is gone now.

Thanks.

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