diff options
author | Alexander Motin <mav@FreeBSD.org> | 2009-11-11 11:10:36 +0000 |
---|---|---|
committer | Alexander Motin <mav@FreeBSD.org> | 2009-11-11 11:10:36 +0000 |
commit | 30a4094f86e4b05c28c4d89342f047142f349ab4 (patch) | |
tree | ceea3fcf873c9fdc72f0d23c18d3cdc692b9c8c0 /sys/dev/ahci/ahci.c | |
parent | b4263060748915db48ac68cf21810786d70fcf38 (diff) | |
download | src-30a4094f86e4b05c28c4d89342f047142f349ab4.tar.gz src-30a4094f86e4b05c28c4d89342f047142f349ab4.zip |
MFp4:
- Move tagged queueing control from ADA to ATA XPT. It allows to control
device command queue length correctly. First step to support < 32 tags.
- Limit queue for non-tagged devices by 2 slots for ahci(4) and siis(4).
- Implement quirk matching for ATA devices.
- Move xpt_schedule_dev_sendq() from header to source file.
- Move delayed queue shrinking to the more expected place - element freeing.
- Remove some SCSIsms in ATA.
Notes
Notes:
svn path=/head/; revision=199178
Diffstat (limited to 'sys/dev/ahci/ahci.c')
-rw-r--r-- | sys/dev/ahci/ahci.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/sys/dev/ahci/ahci.c b/sys/dev/ahci/ahci.c index 92a65199c654..c46d0ce495d5 100644 --- a/sys/dev/ahci/ahci.c +++ b/sys/dev/ahci/ahci.c @@ -733,7 +733,8 @@ ahci_ch_attach(device_t dev) } /* Construct SIM entry */ ch->sim = cam_sim_alloc(ahciaction, ahcipoll, "ahcich", ch, - device_get_unit(dev), &ch->mtx, ch->numslots, 0, devq); + device_get_unit(dev), &ch->mtx, + min(2, ch->numslots), ch->numslots, devq); if (ch->sim == NULL) { device_printf(dev, "unable to allocate sim\n"); error = ENOMEM; |