Re: [PATCH 0/4] blk-mq-sched: allow to use hw tag for sched

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Mon, Apr 17, 2017 at 10:30:46AM -0700, Omar Sandoval wrote:
> On Mon, Apr 17, 2017 at 12:03:53AM +0800, Ming Lei wrote:
> > On Sat, Apr 15, 2017 at 08:38:21PM +0800, Ming Lei wrote:
> > > The 1st patch enhances BLK_MQ_F_NO_SCHED so that we can't change/
> > > show available io schedulers on devices which don't support io
> > > scheduler.
> > > 
> > > The 2nd patch passes BLK_MQ_F_NO_SCHED for avoiding one regression
> > > on mtip32xx, which is introduced by blk-mq io scheduler.
> > > 
> > > The last two patches introduce BLK_MQ_F_SCHED_USE_HW_TAG so that
> > > we can allow to use hardware tag for scheduler, then mq-deadline
> > > can work well on mtip32xx. Even though other devices with enough
> > > hardware tag space can benefit from this feature too.
> > > 
> > > The 1st two patches aims on v4.11, and the last two are for
> > > v4.12.
> > 
> > Please ignore this patchset, and I will post another serial for
> > mtip32xx fix.
> > 
> > thanks,
> > Ming
> 
> Regardless of the mtip32xx fix, I actually wanted to skip the scheduler
> tags when possible just for performance reasons. I don't think that
> should be a device-specific setting. We can let the I/O scheduler decide
> how many tags it wants, and if the device has at least that many tags,
> just use the hardware tags directly. I'll probably look at doing that
> for 4.13, we'll see if it actually makes a performance difference.

Yes, I thought about that too, the following policy may be applied at
default:

	- if queue depth is not less than q->nr_requests
	and
	- the tag space isn't shared

We still can keep the flag of BLK_MQ_F_SCHED_USE_HW_TAG so that
drivers can decide if they want to do that, since I guess it may
help some shared tag cases too.

Now the mtip32xx fix has been sent out already, I will post this
patchset of using hw tag for scheduler out soon for review.

Thanks,
Ming



[Index of Archives]     [Linux RAID]     [Linux SCSI]     [Linux ATA RAID]     [IDE]     [Linux Wireless]     [Linux Kernel]     [ATH6KL]     [Linux Bluetooth]     [Linux Netdev]     [Kernel Newbies]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Device Mapper]

  Powered by Linux