On 07/26/2013 07:15 AM, Dave Hansen wrote: > I've got a relatively new system that doesn't seem to be able to hotplug > SATA disks. I see the same behavior on 3.10, 3.11-rc2, and Ubuntu's > 3.8.0-25-generic. The disks are detected right away on reboots, but > even after poking the /sys/class/scsi_host/host*/scan files, new disks > are never detected. I've disabled link power management. > > Am I doing something stupid here? I thought this "just worked" on my > previous hardware. My vague memory reminds me that not all SATA ports are hot pluggable - you can check the port's "External SATA port" bit and "Hot Plug Capable" bit of the PxCMD register like this: $ grep ahci /proc/iomem e1a40000-e1a407ff : ahci # dd if=/dev/mem of=ahcidump bs=4096 count=1 skip=0xe1a40 You will need to change 0xe1a40 to decimal format. Then the PxCMD is at offset 0x118 for port 0, check bit 21 for E-SATA or bit 18 for hot pluggable bits. If any of them set to 1, this port should be hot pluggable; otherwise, it doesn't have this capability. > > The motherboard is an Intel DH87RL. The SATA controller is: > >> 00:1f.2 SATA controller: Intel Corporation Lynx Point 6-port SATA Controller 1 [AHCI mode] (rev 04) (prog-if 01 [AHCI 1.0]) >> Subsystem: Intel Corporation Device 204a >> Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx+ >> Status: Cap+ 66MHz+ UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx- >> Latency: 0 >> Interrupt: pin B routed to IRQ 41 >> Region 0: I/O ports at f0d0 [size=8] >> Region 1: I/O ports at f0c0 [size=4] >> Region 2: I/O ports at f0b0 [size=8] >> Region 3: I/O ports at f0a0 [size=4] >> Region 4: I/O ports at f060 [size=32] >> Region 5: Memory at f7d3a000 (32-bit, non-prefetchable) [size=2K] >> Capabilities: [80] MSI: Enable+ Count=1/1 Maskable- 64bit- >> Address: fee2200c Data: 4191 >> Capabilities: [70] Power Management version 3 >> Flags: PMEClk- DSI- D1- D2- AuxCurrent=0mA PME(D0-,D1-,D2-,D3hot+,D3cold-) >> Status: D0 NoSoftRst+ PME-Enable- DSel=0 DScale=0 PME- >> Capabilities: [a8] SATA HBA v1.0 BAR4 Offset=00000004 >> Kernel driver in use: ahci > > Relevant dmesg from boot: > > ahci 0000:00:1f.2: version 3.0 > ahci 0000:00:1f.2: irq 41 for MSI/MSI-X > ahci 0000:00:1f.2: AHCI 0001.0300 32 slots 5 ports 6 Gbps 0x1e impl SATA > mode > ahci 0000:00:1f.2: flags: 64bit ncq pm led clo pio slum part ems apst This doesn't have sxs(support external sata) bit here, so no ports from this host is E-SATA port. Only need to check the hot pluggable bit. Hope this helps, -Aaron > ahci 0000:00:1f.2: setting latency timer to 64 > scsi0 : ahci > scsi1 : ahci > scsi2 : ahci > scsi3 : ahci > scsi4 : ahci > ata1: DUMMY > ata2: SATA max UDMA/133 abar m2048@0xf7d3a000 port 0xf7d3a180 irq 41 > ata3: SATA max UDMA/133 abar m2048@0xf7d3a000 port 0xf7d3a200 irq 41 > ata4: SATA max UDMA/133 abar m2048@0xf7d3a000 port 0xf7d3a280 irq 41 > ata5: SATA max UDMA/133 abar m2048@0xf7d3a000 port 0xf7d3a300 irq 41 > -- To unsubscribe from this list: send the line "unsubscribe linux-ide" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html