Re: [PATCH 02/19] io-controller: Common flat fair queuing code in elevaotor layer

Vivek Goyal
2009-06-17T13:01:01Z

On Tue, Jun 16, 2009 at 12:44:58PM -0700, Divyesh Shah wrote:
> On Mon, Jun 8, 2009 at 7:08 PM, Vivek Goyal<vgoyal@redhat.com> wrote:
> > void elv_deactivate_ioq(struct elv_fq_data *efqd, struct io_queue *ioq,
> > +                                       int requeue)
> > +{
> > +       if (ioq == efqd->active_queue)
> > +               elv_reset_active_ioq(efqd);
> > +
> > +       bfq_deactivate_entity(&ioq->entity, requeue);
> > +}
>
> The check for ioq == efqd->active_queue and the call to
> elv_reset_active_ioq() seem to be unnecessary. This gets called from
> elv_del_ioq_busy() which has 2 callers which:
> - either explicitly check for ioq != efqd->active_queue
> - or call elv_reset_active_ioq() right before invoking this function
>
> This was needed earlier as the io_ioq_move() function didn't fall in
> one of the 2 categories above. This has been done away with the ref
> counting patch, AFAICT.

True. Looks like we don't need above reset_active_ioq() call in
deactivate_ioq(). I will get rid of it in next posting. Thanks.

Vivek