The ACPI BIOSes of some problematic machines, e.g. Toshiba Satellite
L35, only export C1 when running on AC while the same machines support
more than C1 when running on battery. This results in
cpuidle_register_device not being called during system initialization
when running on battery. However, cpuidle_enable_device will be called
without cpuidle_register_device being called before when user switches
from AC to DC and _CST changed notification occurs, thus the oops.
Upstream bug report can be found at
http://bugzilla.kernel.org/show_bug.cgi?id=10394 and Cherry picking
upstream dcb84f335bee9c9a7781cfc5d74492dccaf066d2 can fix it.
Fix is available below:
The following changes since commit
70cb93e6771963cca14ad9a3d87687484ee02428:
Stefan Bader (1):
UBUNTU: ACPICA: Fix for resource descriptor optimization issues
for _CRS/_SRC
--
kernel-team mailing list
kernel-team@lists.ubuntu.com
https://lists.ubuntu.com/mailman/listinfo/kernel-team
06-19-2008, 11:35 AM
Stefan Bader
SRU request for LP#241229
Wang, Yong Y wrote:
> https://bugs.launchpad.net/ubuntu/+source/linux/+bug/241229
>
> SRU justification:
>
> The ACPI BIOSes of some problematic machines, e.g. Toshiba Satellite
> L35, only export C1 when running on AC while the same machines support
> more than C1 when running on battery. This results in
> cpuidle_register_device not being called during system initialization
> when running on battery. However, cpuidle_enable_device will be called
> without cpuidle_register_device being called before when user switches
> from AC to DC and _CST changed notification occurs, thus the oops.
>
> Upstream bug report can be found at
> http://bugzilla.kernel.org/show_bug.cgi?id=10394 and Cherry picking
> upstream dcb84f335bee9c9a7781cfc5d74492dccaf066d2 can fix it.
>
> Fix is available below:
>
> The following changes since commit
> 70cb93e6771963cca14ad9a3d87687484ee02428:
> Stefan Bader (1):
> UBUNTU: ACPICA: Fix for resource descriptor optimization issues
> for _CRS/_SRC
>
> are available in the git repository at:
>
> git://kernel.ubuntu.com/ywang/ubuntu-hardy.git master
>
> Yong Wang (1):
> UBUNTU: cpuidle acpi driver: fix oops on AC<->DC
>
> drivers/acpi/processor_idle.c | 26 +++++++++++++++++++-------
> drivers/cpuidle/cpuidle.c | 40
> +++++++++++++++++++++++++++++++++++-----
> include/linux/cpuidle.h | 3 ++-
> 3 files changed, 56 insertions(+), 13 deletions(-)
>
> -Yong
>
Hi Yong,
looking at your backported patch I noticed that it also introduces an
override option for cpuidle. Was this strictly necessary or rather
because upstream just has this in place and the patch didn't apply
otherwise?
Note to all: while I think the patch looks fairly simple and should not
cause much impact, it still will change the ABI. Should we proceed with
integration (since there is already another patch that changes the ABI)
or rather try a PPA first?
Stefan
--
kernel-team mailing list
kernel-team@lists.ubuntu.com
https://lists.ubuntu.com/mailman/listinfo/kernel-team
06-19-2008, 12:52 PM
"Wang, Yong Y"
SRU request for LP#241229
> -----Original Message-----
> From: Stefan Bader [mailto:stefan.bader@canonical.com]
> Sent: 2008年6月19日 19:35
> To: Wang, Yong Y
> Cc: kernel-team@lists.ubuntu.com
> Subject: Re: SRU request for LP#241229
>
> Wang, Yong Y wrote:
> > https://bugs.launchpad.net/ubuntu/+source/linux/+bug/241229
> >
> > SRU justification:
> >
> > The ACPI BIOSes of some problematic machines, e.g. Toshiba Satellite
> > L35, only export C1 when running on AC while the same
> machines support
> > more than C1 when running on battery. This results in
> > cpuidle_register_device not being called during system
> initialization
> > when running on battery. However, cpuidle_enable_device
> will be called
> > without cpuidle_register_device being called before when
> user switches
> > from AC to DC and _CST changed notification occurs, thus the oops.
> >
> > Upstream bug report can be found at
> > http://bugzilla.kernel.org/show_bug.cgi?id=10394 and Cherry picking
> > upstream dcb84f335bee9c9a7781cfc5d74492dccaf066d2 can fix it.
> >
> > Fix is available below:
> >
> > The following changes since commit
> > 70cb93e6771963cca14ad9a3d87687484ee02428:
> > Stefan Bader (1):
> > UBUNTU: ACPICA: Fix for resource descriptor
> optimization issues
> > for _CRS/_SRC
> >
> > are available in the git repository at:
> >
> > git://kernel.ubuntu.com/ywang/ubuntu-hardy.git master
> >
> > Yong Wang (1):
> > UBUNTU: cpuidle acpi driver: fix oops on AC<->DC
> >
> > drivers/acpi/processor_idle.c | 26 +++++++++++++++++++-------
> > drivers/cpuidle/cpuidle.c | 40
> > +++++++++++++++++++++++++++++++++++-----
> > include/linux/cpuidle.h | 3 ++-
> > 3 files changed, 56 insertions(+), 13 deletions(-)
> >
> > -Yong
> >
> Hi Yong,
>
> looking at your backported patch I noticed that it also introduces an
> override option for cpuidle. Was this strictly necessary or rather
> because upstream just has this in place and the patch didn't apply
> otherwise?
>
Stefan, thanks for reviewing the patch. I did not introduce any new override option in the patch. The idle=[poll, mwait] option has been there for quite a while. However, I did backported another upstream patch 36a913586597cab1cd565e9bf348d037f0df955b along this one which really fix the AC<->DC oops bug. Otherwise, I cannot make this patch as clean as I expect;-)
-Yong
--
kernel-team mailing list
kernel-team@lists.ubuntu.com
https://lists.ubuntu.com/mailman/listinfo/kernel-team
06-20-2008, 01:35 PM
Tim Gardner
SRU request for LP#241229
Stefan Bader wrote:
> Wang, Yong Y wrote:
>> https://bugs.launchpad.net/ubuntu/+source/linux/+bug/241229
>>
>> SRU justification:
>>
>> The ACPI BIOSes of some problematic machines, e.g. Toshiba Satellite
>> L35, only export C1 when running on AC while the same machines support
>> more than C1 when running on battery. This results in
>> cpuidle_register_device not being called during system initialization
>> when running on battery. However, cpuidle_enable_device will be called
>> without cpuidle_register_device being called before when user switches
>> from AC to DC and _CST changed notification occurs, thus the oops.
>>
>> Upstream bug report can be found at
>> http://bugzilla.kernel.org/show_bug.cgi?id=10394 and Cherry picking
>> upstream dcb84f335bee9c9a7781cfc5d74492dccaf066d2 can fix it.
>>
>> Fix is available below:
>>
>> The following changes since commit
>> 70cb93e6771963cca14ad9a3d87687484ee02428:
>> Stefan Bader (1):
>> UBUNTU: ACPICA: Fix for resource descriptor optimization issues
>> for _CRS/_SRC
>>
>> are available in the git repository at:
>>
>> git://kernel.ubuntu.com/ywang/ubuntu-hardy.git master
>>
>> Yong Wang (1):
>> UBUNTU: cpuidle acpi driver: fix oops on AC<->DC
>>
>> drivers/acpi/processor_idle.c | 26 +++++++++++++++++++-------
>> drivers/cpuidle/cpuidle.c | 40
>> +++++++++++++++++++++++++++++++++++-----
>> include/linux/cpuidle.h | 3 ++-
>> 3 files changed, 56 insertions(+), 13 deletions(-)
>>
>> -Yong
>>
> Hi Yong,
>
> looking at your backported patch I noticed that it also introduces an
> override option for cpuidle. Was this strictly necessary or rather
> because upstream just has this in place and the patch didn't apply
> otherwise?
>
> Note to all: while I think the patch looks fairly simple and should not
> cause much impact, it still will change the ABI. Should we proceed with
> integration (since there is already another patch that changes the ABI)
> or rather try a PPA first?
>
> Stefan
>
ACK - there are already 2 ABI bumping patches pending since -19.34.
--
Tim Gardner tim.gardner@ubuntu.com
--
kernel-team mailing list
kernel-team@lists.ubuntu.com
https://lists.ubuntu.com/mailman/listinfo/kernel-team