Re: [PATCH] ata: Add sdev attribute to lower link speed in runtime
From: Niklas Cassel
Date: Wed Apr 17 2024 - 05:56:33 EST
On Wed, Apr 17, 2024 at 08:59:27AM +1000, Damien Le Moal wrote:
>
> Can you send examples of the errors you are seeing ? That needs to be
> investigated first before going the (drastic) route of allowing to manually
> lower link speed at run-time.
Gustav, is it possible for you to share the error messages that you are
seeing? Preferably a whole kernel boot.
Since you are talking hot plug, there is a bunch of libata hot-plug related
in v6.9.x (which turns off LPM if your external port is hotplug capable).
So it would be interesting to see if you still get these errors on v6.9-rc4
(we will see if you have LPM enabled), and if so, what errors you are seeing.
You could also try booting with: libata.force=nolpm on the kernel command line.
(This will explicitly set lpm-policy to MAX_POWER, which is different from
lpm-policy=0 (which is the default) - which means keep firmware settings.)
Kind regards,
Niklas
>
> >
> > So I want to adapt the link, depending on the connected model, in a
> > running system because I know that some particular models in this case
> > will operate better in SATA2 in this system.
> >
> > Can I use the libata.force module to make changes to a particular link
> > in runtime?
>
> Nope, libata.force is a module parameter so you can specify it as a kernel boot
> parameter, or if you compile libata as a module when loading (modprobe) libata.
> At run time, you need to rmmod+modprobe again libata, and so the ahci driver as
> well (because of dependencies).
>
> As I mentioned, if a run-time knob really is necessary (it should not be), using
> the ata_link hw_sata_spd_limit would be a better approach. But again, that
> really should not be necessary at all.
>
> >
> > Best regards
> > Gustav
> >
>
> --
> Damien Le Moal
> Western Digital Research
>