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 Wed, Apr 26, 2017 at 06:48:43PM +0800, Ming Lei wrote:
> Looks there are some choices for this issue:
> 
> 1) if internal ops uses independent tag space
> - we need to clean up the mtip32xx driver
> 
> 2) if internal ops shares tag space with normal request
> - export blk_mq_get_driver_tag() for mtip32xx
> 
> or
> 
> - use private way to send internal ops, and the drawback
> is that we still need to reserve tag and the reserved tag
> can't be used at all.

The fundamental problem in mtip is that it uses the block layer to
allocate requests, but not to issue them.  Either it needs to switch to
use blk_execute_rq(_nowait) to issue the command, or it needs to stop
using blk_mq_alloc_request to allocatate the internal commands.
Everything else is a layering violation just asking for more problems
down the road.

> 
> >From mtip32xx source code, I can see both share same tag space.
> When I try to search hw manual via google, not succeed yet.
> 
> Christoph, could you share us your findings about if internal ops
> uses independent tag space or not?

As said earlier in the thread - mtip32xx is a beefed up AHCI design,
and the internal commands issued are bog standard ATA commands.  So
I would be very surprised if the hardware requires a specific tag.
The way the driver is written it might very well expect a tag to be
set aside, though.



[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