public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Dave Hansen <dave@sr71.net>
To: Aaron Lu <aaron.lu@intel.com>
Cc: Tejun Heo <tj@kernel.org>,
	linux-ide@vger.kernel.org, LKML <linux-kernel@vger.kernel.org>,
	Shane Huang <shane.huang@amd.com>
Subject: Re: SATA hotplug not detecting new disks
Date: Fri, 26 Jul 2013 10:57:10 -0700	[thread overview]
Message-ID: <51F2B876.8050104@sr71.net> (raw)
In-Reply-To: <51F1D63A.2010403@intel.com>

On 07/25/2013 06:51 PM, Aaron Lu wrote:
> 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.

That whole I/O area looks to be 0'd to me, at least for the port if I
boot with it unplugged.  I even tried toggling the PORT_CMD_ALPE bit
with powertop since it is in the same port.  Nothing seems to happen for
port0 (the one unplugged at boot), although I _can_ see the writes show
up for the other ports.

I also tried booting with a disk plugged in to a port, then put that
disk to sleep and unplugged it.  I replugged a _different_ disk in its
place, and it was detected just fine.

Is it possible that the 'ata_dummy_port_ops' are getting left in place
at boot accidentally, that we're mistaking an unplugged port for a
disabled one?

  reply	other threads:[~2013-07-26 17:57 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-07-25 23:15 SATA hotplug not detecting new disks Dave Hansen
2013-07-26  1:51 ` Aaron Lu
2013-07-26 17:57   ` Dave Hansen [this message]
2013-07-26 21:12   ` Dave Hansen

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=51F2B876.8050104@sr71.net \
    --to=dave@sr71.net \
    --cc=aaron.lu@intel.com \
    --cc=linux-ide@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=shane.huang@amd.com \
    --cc=tj@kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox