How do I use NCQ of Intel X25-E(SSD) on ahci(4)?
Alexander Motin
mav at FreeBSD.org
Mon Dec 14 11:27:59 UTC 2009
Ivan Voras wrote:
> 2009/11/18 Alexander Motin <mav at freebsd.org>:
>> Ivan Voras wrote:
>
>>> I know next to nothing about AHCI and drivers so this might be obviously
>>> wrong but wouldn't a quick (i.e. MFC-able) obvious temporary fix be to say
>>>
>>> numslots = min(get_minimum_tags_of_all_drives(), ...)
>>> ?
>> Problem is that SIM driver has no idea about devices capabilities, and
>> also doesn't have method to resize queue after attach. In SCSI case,
>> tags are random and only simultaneous number of request is limited, and
>> this is handled fine by CAM. SATA NCQ is more restrictive, allowing to
>> use only tags 0..(N-1). I am planning to make XPT inform SIM about
>> supported tags for each device, to allow SIM to use that information
>> while scheduling requests. I didn't do it yet, just because most of
>> devices able to handle all 32 tags possible on SATA. This Intel SSD is
>> one of rare exceptions.
>
> Ok, (still thinking about something that could be MFC-able in an
> emergency), how about adding a loader tunable integer instead of "32"?
Just for note, it is already fixed and merged.
--
Alexander Motin
More information about the freebsd-current
mailing list