[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <56CFAF2E.4050001@redhat.com>
Date: Thu, 25 Feb 2016 17:49:34 -0800
From: Laura Abbott <labbott@...hat.com>
To: Manuel Lauss <manuel.lauss@...il.com>
Cc: Tejun Heo <tj@...nel.org>, Linux-IDE <linux-ide@...r.kernel.org>,
Linux Kernel Mailing List <linux-kernel@...r.kernel.org>
Subject: Re: [REGRESSION] 8a3e33cf92c7 "ata: ahci: find eSATA ports and flag
them as removable" changes userspace behavior
On 02/25/2016 11:09 AM, Manuel Lauss wrote:
> On Thu, Feb 25, 2016 at 6:12 PM, Laura Abbott <labbott@...hat.com> wrote:
>> Hi,
>>
>> We received a bugzilla report
>> https://bugzilla.redhat.com/show_bug.cgi?id=1310682
>> of partitions being automounted unexpectedly. Testing showed that
>> 8a3e33cf92c7 ("ata: ahci: find eSATA ports and flag them as removable") was
>> responsible.
>> This seems to be classified as 'breaking' userspace given that this behavior
>> results
>> in partitions that were previously unmounted now being being mounted
>> unwanted
>> automatically which is unwanted behavior for the user. Can we revert this
>> patch or
>> give a fix to change this behavior?
>
> Can you test this? I think the old HPCP bit should just be ignored,
> although windows does use it, i.e. when I enable hotplug capability
> in the bios on my desktop it shows the "eject device" icon for a device
> attached to the port on the motherboard, we probably can ignore it
> on linux to not break all automounting distros. On my laptop, where
> I care about this, it still works as intended.
>
> diff --git a/drivers/ata/libahci.c b/drivers/ata/libahci.c
> index 4029679..e029e3c 100644
> --- a/drivers/ata/libahci.c
> +++ b/drivers/ata/libahci.c
> @@ -1164,8 +1164,7 @@ static void ahci_port_init(struct device *dev,
> struct ata_port *ap,
>
> /* mark esata ports */
> tmp = readl(port_mmio + PORT_CMD);
> - if ((tmp & PORT_CMD_HPCP) ||
> - ((tmp & PORT_CMD_ESP) && (hpriv->cap & HOST_CAP_SXS)))
> + if ((tmp & PORT_CMD_ESP) && (hpriv->cap & HOST_CAP_SXS))
> ap->pflags |= ATA_PFLAG_EXTERNAL;
> }
>
At least one user reported that this fixed the issue and he said
you could add
Tested-by: Bob Schultz <bob@...ineer.com>
Thanks,
Laura
Powered by blists - more mailing lists