Message ID | 20220322065608.167815-1-damien.lemoal@opensource.wdc.com |
---|---|
State | New |
Headers | show |
Series | [GIT,PULL] ata changes for 5.18-rc1 | expand |
On Mon, Mar 21, 2022 at 11:57 PM Damien Le Moal <damien.lemoal@opensource.wdc.com> wrote: > > * Rename ahci_board_mobile to board_ahci_low_power to be more descriptive > of the feature as that is also used on PC and server AHCI adapters, > from Mario. > > Mario Limonciello (3): > ata: ahci: Rename board_ahci_mobile > ata: ahci: Rename `AHCI_HFLAG_IS_MOBILE` > ata: ahci: Rename CONFIG_SATA_LPM_MOBILE_POLICY configuration item So I've pulled this, but it's worth noting that particularly renaming that CONFIG option was probably not a good idea. Why? Because it means that people silently lose their old values. And it has that range 0 4 default 0 with 4 being explicitly marked as very dangerous - but at least Fedora seems to actually have a default of 3 in their kernels: /boot/config-5.16.13-200.fc35.x86_64: CONFIG_SATA_MOBILE_LPM_POLICY=3 so that "default 0" may actually not be the right one. Now, we're at the point where few enough people likely care about ATA, but the corollary to that is also that these kinds of changes can cause user pain that then developers have *no* idea about. Particularly when the pain ends up being caused by some subtle default config option silently changing that nobody even thought about. Now, that "default 0" is probably the only safe default - and I don't dispute that part. But I also suspect that Fedora chose that value '3' because it probably makes a noticeable power use difference on at least some platforms. I don't know. But I doubt really *anybody* knows, so renaming them and silently likely changing config options for some less-than-critical reason is just not a great idea. Linus
[Public] > On Mon, Mar 21, 2022 at 11:57 PM Damien Le Moal > <damien.lemoal@opensource.wdc.com> wrote: > > > > * Rename ahci_board_mobile to board_ahci_low_power to be more > descriptive > > of the feature as that is also used on PC and server AHCI adapters, > > from Mario. > > > > Mario Limonciello (3): > > ata: ahci: Rename board_ahci_mobile > > ata: ahci: Rename `AHCI_HFLAG_IS_MOBILE` > > ata: ahci: Rename CONFIG_SATA_LPM_MOBILE_POLICY configuration item > > So I've pulled this, but it's worth noting that particularly renaming > that CONFIG option was probably not a good idea. > > Why? > > Because it means that people silently lose their old values. And it has that > > range 0 4 > default 0 > > with 4 being explicitly marked as very dangerous - but at least Fedora > seems to actually have a default of 3 in their kernels: > > /boot/config-5.16.13-200.fc35.x86_64: > CONFIG_SATA_MOBILE_LPM_POLICY=3 > > so that "default 0" may actually not be the right one. > > Now, we're at the point where few enough people likely care about ATA, > but the corollary to that is also that these kinds of changes can > cause user pain that then developers have *no* idea about. > Particularly when the pain ends up being caused by some subtle default > config option silently changing that nobody even thought about. > > Now, that "default 0" is probably the only safe default - and I don't > dispute that part. But I also suspect that Fedora chose that value '3' > because it probably makes a noticeable power use difference on at > least some platforms. > > I don't know. But I doubt really *anybody* knows, so renaming them and > silently likely changing config options for some less-than-critical > reason is just not a great idea. > > Linus Thanks for pointing out the subtlety of renaming a configuration option hides problems because people don't see the new config option and pick the default. I wouldn't call this configuration option rename critical, so if you chose to revert it I would understand. However I think you raise a good point that if distros are picking different "default" values and keeping them there a long time that the value in the upstream kernel is probably not right anymore. A while back that default made sense because all the power saving stuff was risky at the time. It's pretty well baked now. So maybe a logical thing is to keep this change and send a follow up that also changes the default to 3? If you're supportive of that I'll send something to Damien to do that.
On Wed, Mar 23, 2022 at 4:04 PM Limonciello, Mario <Mario.Limonciello@amd.com> wrote: > > So maybe a logical thing is to keep this change and send a follow up that also changes > the default to 3? If you're supportive of that I'll send something to Damien to do that. It would probably be good to have some way to see what other distros do. I only have F35 here, so a very limited selection of distro defaults.. Linus
The pull request you sent on Tue, 22 Mar 2022 15:56:08 +0900:
> ssh://git@gitolite.kernel.org/pub/scm/linux/kernel/git/dlemoal/libata tags/ata-5.18-rc1
has been merged into torvalds/linux.git:
https://git.kernel.org/torvalds/c/c7d4b15372bde442059c7d6415afeba073a09474
Thank you!
On 3/24/22 07:10, Linus Torvalds wrote: > On Mon, Mar 21, 2022 at 11:57 PM Damien Le Moal > <damien.lemoal@opensource.wdc.com> wrote: >> >> * Rename ahci_board_mobile to board_ahci_low_power to be more descriptive >> of the feature as that is also used on PC and server AHCI adapters, >> from Mario. >> >> Mario Limonciello (3): >> ata: ahci: Rename board_ahci_mobile >> ata: ahci: Rename `AHCI_HFLAG_IS_MOBILE` >> ata: ahci: Rename CONFIG_SATA_LPM_MOBILE_POLICY configuration item > > So I've pulled this, but it's worth noting that particularly renaming > that CONFIG option was probably not a good idea. > > Why? > > Because it means that people silently lose their old values. And it has that > > range 0 4 > default 0 > > with 4 being explicitly marked as very dangerous - but at least Fedora > seems to actually have a default of 3 in their kernels: > > /boot/config-5.16.13-200.fc35.x86_64: > CONFIG_SATA_MOBILE_LPM_POLICY=3 > > so that "default 0" may actually not be the right one. Yes. Mario has follow up patches to change the default. But as changing it may break things, we are going to try it early this cycle so that it can get lots of linux-next testing. Since Fedora has had the default of 3 for a long time now, changing the kernel default from 0 to 3 should be OK. The goal here is of course to have a default kernel config that is more eco-friendly. > Now, we're at the point where few enough people likely care about ATA, > but the corollary to that is also that these kinds of changes can > cause user pain that then developers have *no* idea about. > Particularly when the pain ends up being caused by some subtle default > config option silently changing that nobody even thought about. > > Now, that "default 0" is probably the only safe default - and I don't > dispute that part. But I also suspect that Fedora chose that value '3' > because it probably makes a noticeable power use difference on at > least some platforms. Most laptops benefit from it. And yes, most laptop today have switched to NVMe, but there are still a fair amount out there using SATA SSDs and 2.5" HDDs, even new ones (low end models). > I don't know. But I doubt really *anybody* knows, so renaming them and > silently likely changing config options for some less-than-critical > reason is just not a great idea. Understood. I will monitor this and see if a revert of the rename is needed. For now, I do prefer the new name as it reflects the fact that link power management policies are not for mobile chipsets anymore and also apply to regular server chipsets where power consumption really matters too.
On 3/24/22 08:13, Linus Torvalds wrote: > On Wed, Mar 23, 2022 at 4:04 PM Limonciello, Mario > <Mario.Limonciello@amd.com> wrote: >> >> So maybe a logical thing is to keep this change and send a follow up that also changes >> the default to 3? If you're supportive of that I'll send something to Damien to do that. > > It would probably be good to have some way to see what other distros do. > > I only have F35 here, so a very limited selection of distro defaults.. I use Fedora too. I will check the other major distributions default.
On 3/24/22 08:04, Limonciello, Mario wrote: > [Public] > >> On Mon, Mar 21, 2022 at 11:57 PM Damien Le Moal >> <damien.lemoal@opensource.wdc.com> wrote: >>> >>> * Rename ahci_board_mobile to board_ahci_low_power to be more >> descriptive >>> of the feature as that is also used on PC and server AHCI adapters, >>> from Mario. >>> >>> Mario Limonciello (3): >>> ata: ahci: Rename board_ahci_mobile >>> ata: ahci: Rename `AHCI_HFLAG_IS_MOBILE` >>> ata: ahci: Rename CONFIG_SATA_LPM_MOBILE_POLICY configuration item >> >> So I've pulled this, but it's worth noting that particularly renaming >> that CONFIG option was probably not a good idea. >> >> Why? >> >> Because it means that people silently lose their old values. And it has that >> >> range 0 4 >> default 0 >> >> with 4 being explicitly marked as very dangerous - but at least Fedora >> seems to actually have a default of 3 in their kernels: >> >> /boot/config-5.16.13-200.fc35.x86_64: >> CONFIG_SATA_MOBILE_LPM_POLICY=3 >> >> so that "default 0" may actually not be the right one. >> >> Now, we're at the point where few enough people likely care about ATA, >> but the corollary to that is also that these kinds of changes can >> cause user pain that then developers have *no* idea about. >> Particularly when the pain ends up being caused by some subtle default >> config option silently changing that nobody even thought about. >> >> Now, that "default 0" is probably the only safe default - and I don't >> dispute that part. But I also suspect that Fedora chose that value '3' >> because it probably makes a noticeable power use difference on at >> least some platforms. >> >> I don't know. But I doubt really *anybody* knows, so renaming them and >> silently likely changing config options for some less-than-critical >> reason is just not a great idea. >> >> Linus > > Thanks for pointing out the subtlety of renaming a configuration option hides > problems because people don't see the new config option and pick the default. > I wouldn't call this configuration option rename critical, so if you chose to revert > it I would understand. > > However I think you raise a good point that if distros are picking different "default" > values and keeping them there a long time that the value in the upstream kernel > is probably not right anymore. A while back that default made sense because all the > power saving stuff was risky at the time. It's pretty well baked now. > > So maybe a logical thing is to keep this change and send a follow up that also changes > the default to 3? If you're supportive of that I'll send something to Damien to do that. Mario, let's check what other distros do first before deciding. Fedora for sure has a default of 3 and I have never seen any issue with it (and I have been using Fedora for a long time with many different drives). Not sure what distro you are using, but if it is not Fedora, please check. We should check at least Debian, Ubuntu, SUSE, RHEL and CentOS. I can check some other minor ones too as I know users.
[Public] > On 3/24/22 08:04, Limonciello, Mario wrote: > > [Public] > > > >> On Mon, Mar 21, 2022 at 11:57 PM Damien Le Moal > >> <damien.lemoal@opensource.wdc.com> wrote: > >>> > >>> * Rename ahci_board_mobile to board_ahci_low_power to be more > >> descriptive > >>> of the feature as that is also used on PC and server AHCI adapters, > >>> from Mario. > >>> > >>> Mario Limonciello (3): > >>> ata: ahci: Rename board_ahci_mobile > >>> ata: ahci: Rename `AHCI_HFLAG_IS_MOBILE` > >>> ata: ahci: Rename CONFIG_SATA_LPM_MOBILE_POLICY configuration > item > >> > >> So I've pulled this, but it's worth noting that particularly renaming > >> that CONFIG option was probably not a good idea. > >> > >> Why? > >> > >> Because it means that people silently lose their old values. And it has that > >> > >> range 0 4 > >> default 0 > >> > >> with 4 being explicitly marked as very dangerous - but at least Fedora > >> seems to actually have a default of 3 in their kernels: > >> > >> /boot/config-5.16.13-200.fc35.x86_64: > >> CONFIG_SATA_MOBILE_LPM_POLICY=3 > >> > >> so that "default 0" may actually not be the right one. > >> > >> Now, we're at the point where few enough people likely care about ATA, > >> but the corollary to that is also that these kinds of changes can > >> cause user pain that then developers have *no* idea about. > >> Particularly when the pain ends up being caused by some subtle default > >> config option silently changing that nobody even thought about. > >> > >> Now, that "default 0" is probably the only safe default - and I don't > >> dispute that part. But I also suspect that Fedora chose that value '3' > >> because it probably makes a noticeable power use difference on at > >> least some platforms. > >> > >> I don't know. But I doubt really *anybody* knows, so renaming them and > >> silently likely changing config options for some less-than-critical > >> reason is just not a great idea. > >> > >> Linus > > > > Thanks for pointing out the subtlety of renaming a configuration option hides > > problems because people don't see the new config option and pick the default. > > I wouldn't call this configuration option rename critical, so if you chose to > revert > > it I would understand. > > > > However I think you raise a good point that if distros are picking different > "default" > > values and keeping them there a long time that the value in the upstream > kernel > > is probably not right anymore. A while back that default made sense because > all the > > power saving stuff was risky at the time. It's pretty well baked now. > > > > So maybe a logical thing is to keep this change and send a follow up that also > changes > > the default to 3? If you're supportive of that I'll send something to Damien to > do that. > > Mario, let's check what other distros do first before deciding. Fedora for > sure has a default of 3 and I have never seen any issue with it (and I > have been using Fedora for a long time with many different drives). > > Not sure what distro you are using, but if it is not Fedora, please check. > We should check at least Debian, Ubuntu, SUSE, RHEL and CentOS. I can > check some other minor ones too as I know users. > I use Ubuntu mostly, and have a variety of distro kernels installed: config-5.13.0-25-generic:CONFIG_SATA_MOBILE_LPM_POLICY=3 config-5.14.0-1029-oem:CONFIG_SATA_MOBILE_LPM_POLICY=3 config-5.4.0-60-generic:CONFIG_SATA_MOBILE_LPM_POLICY=3 From a box with a random RHEL8 kernel I see: config-4.18.0-372.2.1.el8.x86_64:CONFIG_SATA_MOBILE_LPM_POLICY=0 However I believe that is because RH uses tuned to set policies like this. They have use cases from embedded up through datacenter. For example you can see their "desktop" profile overrides it to to medium_power: https://github.com/redhat-performance/tuned/commit/adffbb0ca1537277d5344661e05a705af2520c89 Downloaded a random Debian 5.10 kernel package and extracted it: $ grep LPM config-5.10.0-10-amd64 CONFIG_SATA_MOBILE_LPM_POLICY=3 Checked arch from their source tree and they also set 3: https://github.com/archlinux/svntogit-packages/blob/packages/linux/trunk/config#L2798 Not sure where to check SUSE.
On 3/24/22 09:25, Limonciello, Mario wrote: > [Public] > >> On 3/24/22 08:04, Limonciello, Mario wrote: >>> [Public] >>> >>>> On Mon, Mar 21, 2022 at 11:57 PM Damien Le Moal >>>> <damien.lemoal@opensource.wdc.com> wrote: >>>>> >>>>> * Rename ahci_board_mobile to board_ahci_low_power to be more >>>> descriptive >>>>> of the feature as that is also used on PC and server AHCI adapters, >>>>> from Mario. >>>>> >>>>> Mario Limonciello (3): >>>>> ata: ahci: Rename board_ahci_mobile >>>>> ata: ahci: Rename `AHCI_HFLAG_IS_MOBILE` >>>>> ata: ahci: Rename CONFIG_SATA_LPM_MOBILE_POLICY configuration >> item >>>> >>>> So I've pulled this, but it's worth noting that particularly renaming >>>> that CONFIG option was probably not a good idea. >>>> >>>> Why? >>>> >>>> Because it means that people silently lose their old values. And it has that >>>> >>>> range 0 4 >>>> default 0 >>>> >>>> with 4 being explicitly marked as very dangerous - but at least Fedora >>>> seems to actually have a default of 3 in their kernels: >>>> >>>> /boot/config-5.16.13-200.fc35.x86_64: >>>> CONFIG_SATA_MOBILE_LPM_POLICY=3 >>>> >>>> so that "default 0" may actually not be the right one. >>>> >>>> Now, we're at the point where few enough people likely care about ATA, >>>> but the corollary to that is also that these kinds of changes can >>>> cause user pain that then developers have *no* idea about. >>>> Particularly when the pain ends up being caused by some subtle default >>>> config option silently changing that nobody even thought about. >>>> >>>> Now, that "default 0" is probably the only safe default - and I don't >>>> dispute that part. But I also suspect that Fedora chose that value '3' >>>> because it probably makes a noticeable power use difference on at >>>> least some platforms. >>>> >>>> I don't know. But I doubt really *anybody* knows, so renaming them and >>>> silently likely changing config options for some less-than-critical >>>> reason is just not a great idea. >>>> >>>> Linus >>> >>> Thanks for pointing out the subtlety of renaming a configuration option hides >>> problems because people don't see the new config option and pick the default. >>> I wouldn't call this configuration option rename critical, so if you chose to >> revert >>> it I would understand. >>> >>> However I think you raise a good point that if distros are picking different >> "default" >>> values and keeping them there a long time that the value in the upstream >> kernel >>> is probably not right anymore. A while back that default made sense because >> all the >>> power saving stuff was risky at the time. It's pretty well baked now. >>> >>> So maybe a logical thing is to keep this change and send a follow up that also >> changes >>> the default to 3? If you're supportive of that I'll send something to Damien to >> do that. >> >> Mario, let's check what other distros do first before deciding. Fedora for >> sure has a default of 3 and I have never seen any issue with it (and I >> have been using Fedora for a long time with many different drives). >> >> Not sure what distro you are using, but if it is not Fedora, please check. >> We should check at least Debian, Ubuntu, SUSE, RHEL and CentOS. I can >> check some other minor ones too as I know users. >> > > I use Ubuntu mostly, and have a variety of distro kernels installed: > > config-5.13.0-25-generic:CONFIG_SATA_MOBILE_LPM_POLICY=3 > config-5.14.0-1029-oem:CONFIG_SATA_MOBILE_LPM_POLICY=3 > config-5.4.0-60-generic:CONFIG_SATA_MOBILE_LPM_POLICY=3 OK. Thanks. > > From a box with a random RHEL8 kernel I see: > > config-4.18.0-372.2.1.el8.x86_64:CONFIG_SATA_MOBILE_LPM_POLICY=0 > > However I believe that is because RH uses tuned to set policies like this. > They have use cases from embedded up through datacenter. > For example you can see their "desktop" profile overrides it to > to medium_power: > > https://github.com/redhat-performance/tuned/commit/adffbb0ca1537277d5344661e05a705af2520c89 OK. I will check CentOS too, but it should be the same as RHEL. > > Downloaded a random Debian 5.10 kernel package and extracted it: > $ grep LPM config-5.10.0-10-amd64 > CONFIG_SATA_MOBILE_LPM_POLICY=3 Yep, just checked that too. Both Debian stable and testing have 3 as the default. > > Checked arch from their source tree and they also set 3: > https://github.com/archlinux/svntogit-packages/blob/packages/linux/trunk/config#L2798 > > Not sure where to check SUSE. Checking this one now.
On Thu, Mar 24, 2022 at 08:45:56AM +0900, Damien Le Moal wrote: > Mario, let's check what other distros do first before deciding. Fedora for > sure has a default of 3 and I have never seen any issue with it (and I > have been using Fedora for a long time with many different drives). > > Not sure what distro you are using, but if it is not Fedora, please check. > We should check at least Debian, Ubuntu, SUSE, RHEL and CentOS. I can > check some other minor ones too as I know users. Debian: hch@brick:~/work/linux$ grep CONFIG_SATA_MOBILE_LPM_POLICY /boot/config-5.10.0-1* /boot/config-5.10.0-10-amd64:CONFIG_SATA_MOBILE_LPM_POLICY=3 /boot/config-5.10.0-11-amd64:CONFIG_SATA_MOBILE_LPM_POLICY=3 /boot/config-5.10.0-12-amd64:CONFIG_SATA_MOBILE_LPM_POLICY=3
On 3/24/22 15:28, Christoph Hellwig wrote: > On Thu, Mar 24, 2022 at 08:45:56AM +0900, Damien Le Moal wrote: >> Mario, let's check what other distros do first before deciding. Fedora for >> sure has a default of 3 and I have never seen any issue with it (and I >> have been using Fedora for a long time with many different drives). >> >> Not sure what distro you are using, but if it is not Fedora, please check. >> We should check at least Debian, Ubuntu, SUSE, RHEL and CentOS. I can >> check some other minor ones too as I know users. > > Debian: > > hch@brick:~/work/linux$ grep CONFIG_SATA_MOBILE_LPM_POLICY /boot/config-5.10.0-1* > /boot/config-5.10.0-10-amd64:CONFIG_SATA_MOBILE_LPM_POLICY=3 > /boot/config-5.10.0-11-amd64:CONFIG_SATA_MOBILE_LPM_POLICY=3 > /boot/config-5.10.0-12-amd64:CONFIG_SATA_MOBILE_LPM_POLICY=3 Thanks. Debian testing also has the default at 3. Mario reported that Ubuntu and Arch also use 3, and that RHEL has 0 as default but changes it to 3 after boot. Gentoo default config is also 3. Checking CentOS and [open]SUSE now. So far, it is looking like 3 is a sane default.
On Thu, Mar 24, 2022 at 03:38:00PM +0900, Damien Le Moal wrote: > On 3/24/22 15:28, Christoph Hellwig wrote: > > On Thu, Mar 24, 2022 at 08:45:56AM +0900, Damien Le Moal wrote: > >> Mario, let's check what other distros do first before deciding. Fedora for > >> sure has a default of 3 and I have never seen any issue with it (and I > >> have been using Fedora for a long time with many different drives). > >> > >> Not sure what distro you are using, but if it is not Fedora, please check. > >> We should check at least Debian, Ubuntu, SUSE, RHEL and CentOS. I can > >> check some other minor ones too as I know users. > > > > Debian: > > > > hch@brick:~/work/linux$ grep CONFIG_SATA_MOBILE_LPM_POLICY /boot/config-5.10.0-1* > > /boot/config-5.10.0-10-amd64:CONFIG_SATA_MOBILE_LPM_POLICY=3 > > /boot/config-5.10.0-11-amd64:CONFIG_SATA_MOBILE_LPM_POLICY=3 > > /boot/config-5.10.0-12-amd64:CONFIG_SATA_MOBILE_LPM_POLICY=3 > > Thanks. Debian testing also has the default at 3. > > Mario reported that Ubuntu and Arch also use 3, and that RHEL has 0 as > default but changes it to 3 after boot. > > Gentoo default config is also 3. Checking CentOS and [open]SUSE now. CentOS uses the RHEL configs and defaults to 0. I do agree that renaming config options can be problematic, but the heads up from Damien helped. It will not be an issue for Fedora, CentOS, and RHEL. Justin > So far, it is looking like 3 is a sane default. > > -- > Damien Le Moal > Western Digital Research