You are not logged in.

#1 2012-06-29 17:34:00

tomxtobin
Member
Registered: 2010-10-07
Posts: 22

[SOLVED] Lenovo ThinkPad X230: Certain ACPI events can stop being sent

2012-10-15: Solved.  The issue went away after upgrading my kernel from 3.4.x to 3.5.x.

Certain ACPI events (e.g., removing/applying AC power, or pressing certain special hardware keys such as sleep) on my ThinkPad X230 are sometimes not being sent.

The problem is not constant, but seems determined when I boot the laptop: they either work, or do not work, until I reboot the machine.

Cold boots vs. reboots do not seem to make a difference.

The values in /sys/devices/platform/thinkpad_acpi seem to be the same regardless of whether the buttons are working or not.

As far as hardware keys, the problem is only limited to certain keys; others (e.g., media-previous, media-play, media-next) always send ACPI events correctly.

Most strange of all: when the events are not working, if I run /usr/bin/sensors from the lm_sensors package, the ACPI events are suddenly sent all at once, as if a backlog of events is being saved somewhere and not processed until I run /usr/bin/sensors.

Does anyone have any idea what might be going on here?

Last edited by tomxtobin (2012-10-15 20:16:17)

Offline

#2 2012-06-29 21:31:54

cfr
Member
From: Cymru
Registered: 2011-11-27
Posts: 7,130

Re: [SOLVED] Lenovo ThinkPad X230: Certain ACPI events can stop being sent

/var/log/acpid.log?


CLI Paste | How To Ask Questions

Arch Linux | x86_64 | GPT | EFI boot | refind | stub loader | systemd | LVM2 on LUKS
Lenovo x270 | Intel(R) Core(TM) i5-7200U CPU @ 2.50GHz | Intel Wireless 8265/8275 | US keyboard w/ Euro | 512G NVMe INTEL SSDPEKKF512G7L

Offline

#3 2012-06-29 21:59:42

tomxtobin
Member
Registered: 2010-10-07
Posts: 22

Re: [SOLVED] Lenovo ThinkPad X230: Certain ACPI events can stop being sent

cfr wrote:

/var/log/acpid.log?

Jun 24 15:27:16 localhost acpid: client 576[0:0] has disconnected
Jun 24 15:27:16 localhost acpid: client connected from 576[0:0]
Jun 24 15:27:16 localhost acpid: 1 client rule loaded
Jun 24 23:17:25 localhost acpid: client 576[0:0] has disconnected
Jun 24 23:17:25 localhost acpid: client connected from 576[0:0]
Jun 24 23:17:25 localhost acpid: 1 client rule loaded
Jun 26 11:18:06 localhost acpid: exiting
Jun 26 11:18:32 localhost acpid: starting up with netlink and the input layer
Jun 26 11:18:32 localhost acpid: 1 rule loaded
Jun 26 11:18:32 localhost acpid: waiting for events: event logging is off
Jun 26 11:18:33 localhost acpid: client connected from 567[0:0]
Jun 26 11:18:33 localhost acpid: 1 client rule loaded
Jun 26 15:04:24 localhost acpid: client 567[0:0] has disconnected
Jun 26 15:04:24 localhost acpid: client connected from 1406[0:0]
Jun 26 15:04:24 localhost acpid: 1 client rule loaded
Jun 26 15:09:43 localhost acpid: exiting
Jun 26 15:10:28 localhost acpid: starting up with netlink and the input layer
Jun 26 15:10:28 localhost acpid: 1 rule loaded
Jun 26 15:10:28 localhost acpid: waiting for events: event logging is off
Jun 26 15:10:28 localhost acpid: client connected from 576[0:0]
Jun 26 15:10:28 localhost acpid: 1 client rule loaded
Jun 26 15:32:31 localhost acpid: exiting
Jun 26 15:32:58 localhost acpid: starting up with netlink and the input layer
Jun 26 15:32:58 localhost acpid: 1 rule loaded
Jun 26 15:32:58 localhost acpid: waiting for events: event logging is off
Jun 26 15:32:58 localhost acpid: client connected from 567[0:0]
Jun 26 15:32:58 localhost acpid: 1 client rule loaded
Jun 26 15:33:56 localhost acpid: exiting
Jun 26 15:34:23 localhost acpid: starting up with netlink and the input layer
Jun 26 15:34:23 localhost acpid: 1 rule loaded
Jun 26 15:34:23 localhost acpid: waiting for events: event logging is off
Jun 26 15:34:24 localhost acpid: client connected from 579[0:0]
Jun 26 15:34:24 localhost acpid: 1 client rule loaded
Jun 26 15:35:44 localhost acpid: client 579[0:0] has disconnected
Jun 26 15:35:44 localhost acpid: client connected from 850[0:0]
Jun 26 15:35:44 localhost acpid: 1 client rule loaded
Jun 26 15:39:30 localhost acpid: exiting
Jun 26 15:39:31 localhost acpid: starting up with netlink and the input layer
Jun 26 15:39:31 localhost acpid: 1 rule loaded
Jun 26 15:39:31 localhost acpid: waiting for events: event logging is off
Jun 26 15:39:32 localhost acpid: client connected from 850[0:0]
Jun 26 15:39:32 localhost acpid: 1 client rule loaded
Jun 27 10:11:22 localhost acpid: exiting
Jun 27 10:12:04 localhost acpid: starting up with netlink and the input layer
Jun 27 10:12:04 localhost acpid: 1 rule loaded
Jun 27 10:12:04 localhost acpid: waiting for events: event logging is off
Jun 27 10:12:05 localhost acpid: client connected from 567[0:0]
Jun 27 10:12:05 localhost acpid: 1 client rule loaded
Jun 27 10:13:15 localhost acpid: client 567[0:0] has disconnected
Jun 27 10:13:15 localhost acpid: client connected from 567[0:0]
Jun 27 10:13:15 localhost acpid: 1 client rule loaded
Jun 27 11:37:39 localhost acpid: client 567[0:0] has disconnected
Jun 27 11:37:39 localhost acpid: client connected from 567[0:0]
Jun 27 11:37:39 localhost acpid: 1 client rule loaded
Jun 27 12:06:00 localhost acpid: client 567[0:0] has disconnected
Jun 27 12:06:00 localhost acpid: client connected from 3046[0:0]
Jun 27 12:06:00 localhost acpid: 1 client rule loaded
Jun 27 14:48:07 localhost acpid: exiting
Jun 27 14:48:57 localhost acpid: starting up with netlink and the input layer
Jun 27 14:48:57 localhost acpid: 1 rule loaded
Jun 27 14:48:57 localhost acpid: waiting for events: event logging is off
Jun 27 14:48:57 localhost acpid: client connected from 570[0:0]
Jun 27 14:48:57 localhost acpid: 1 client rule loaded
Jun 27 22:24:44 localhost acpid: client 570[0:0] has disconnected
Jun 27 22:24:44 localhost acpid: client connected from 570[0:0]
Jun 27 22:24:44 localhost acpid: 1 client rule loaded
Jun 28 20:03:21 localhost acpid: exiting
Jun 28 20:03:49 localhost acpid: starting up with netlink and the input layer
Jun 28 20:03:49 localhost acpid: 1 rule loaded
Jun 28 20:03:49 localhost acpid: waiting for events: event logging is off
Jun 28 20:03:49 localhost acpid: client connected from 518[0:0]
Jun 28 20:03:49 localhost acpid: 1 client rule loaded
Jun 28 20:13:06 localhost acpid: client 518[0:0] has disconnected
Jun 28 20:13:07 localhost acpid: exiting
Jun 28 20:13:37 localhost acpid: starting up with netlink and the input layer
Jun 28 20:13:37 localhost acpid: 1 rule loaded
Jun 28 20:13:37 localhost acpid: waiting for events: event logging is off
Jun 28 20:13:38 localhost acpid: client connected from 522[0:0]
Jun 28 20:13:38 localhost acpid: 1 client rule loaded
Jun 29 11:47:03 localhost acpid: exiting
Jun 29 11:47:35 localhost acpid: starting up with netlink and the input layer
Jun 29 11:47:35 localhost acpid: 1 rule loaded
Jun 29 11:47:35 localhost acpid: waiting for events: event logging is off
Jun 29 11:47:35 localhost acpid: client connected from 521[0:0]
Jun 29 11:47:35 localhost acpid: 1 client rule loaded
Jun 29 12:18:42 localhost acpid: client 521[0:0] has disconnected
Jun 29 12:18:42 localhost acpid: exiting
Jun 29 12:19:26 localhost acpid: starting up with netlink and the input layer
Jun 29 12:19:26 localhost acpid: 1 rule loaded
Jun 29 12:19:26 localhost acpid: waiting for events: event logging is off
Jun 29 12:19:27 localhost acpid: client connected from 527[0:0]
Jun 29 12:19:27 localhost acpid: 1 client rule loaded
Jun 29 13:09:43 localhost acpid: exiting
Jun 29 13:12:03 localhost acpid: starting up with netlink and the input layer
Jun 29 13:12:03 localhost acpid: 1 rule loaded
Jun 29 13:12:03 localhost acpid: waiting for events: event logging is off
Jun 29 13:12:04 localhost acpid: client connected from 521[0:0]
Jun 29 13:12:04 localhost acpid: 1 client rule loaded
Jun 29 13:32:40 localhost acpid: client 521[0:0] has disconnected
Jun 29 13:32:40 localhost acpid: client connected from 521[0:0]
Jun 29 13:32:40 localhost acpid: 1 client rule loaded
Jun 29 13:36:13 localhost acpid: exiting
Jun 29 13:38:12 localhost acpid: starting up with netlink and the input layer
Jun 29 13:38:12 localhost acpid: 1 rule loaded
Jun 29 13:38:12 localhost acpid: waiting for events: event logging is off
Jun 29 13:38:13 localhost acpid: client connected from 528[0:0]
Jun 29 13:38:13 localhost acpid: 1 client rule loaded
Jun 29 16:00:02 localhost acpid: client 528[0:0] has disconnected
Jun 29 16:00:02 localhost acpid: exiting
Jun 29 16:00:29 localhost acpid: starting up with netlink and the input layer
Jun 29 16:00:29 localhost acpid: 1 rule loaded
Jun 29 16:00:29 localhost acpid: waiting for events: event logging is off
Jun 29 16:00:29 localhost acpid: client connected from 550[0:0]
Jun 29 16:00:29 localhost acpid: 1 client rule loaded
Jun 29 16:01:41 localhost acpid: client 550[0:0] has disconnected
Jun 29 16:01:41 localhost acpid: exiting
Jun 29 16:02:21 localhost acpid: starting up with netlink and the input layer
Jun 29 16:02:21 localhost acpid: 1 rule loaded
Jun 29 16:02:21 localhost acpid: waiting for events: event logging is off
Jun 29 16:02:22 localhost acpid: client connected from 517[0:0]
Jun 29 16:02:22 localhost acpid: 1 client rule loaded
Jun 29 16:13:15 localhost acpid: client 517[0:0] has disconnected
Jun 29 16:13:15 localhost acpid: exiting
Jun 29 16:13:42 localhost acpid: starting up with netlink and the input layer
Jun 29 16:13:42 localhost acpid: 1 rule loaded
Jun 29 16:13:42 localhost acpid: waiting for events: event logging is off
Jun 29 16:13:42 localhost acpid: client connected from 527[0:0]
Jun 29 16:13:42 localhost acpid: 1 client rule loaded
Jun 29 16:15:03 localhost acpid: client 527[0:0] has disconnected
Jun 29 16:15:03 localhost acpid: client connected from 527[0:0]
Jun 29 16:15:03 localhost acpid: 1 client rule loaded
Jun 29 16:16:02 localhost acpid: exiting
Jun 29 16:16:31 localhost acpid: starting up with netlink and the input layer
Jun 29 16:16:31 localhost acpid: 1 rule loaded
Jun 29 16:16:31 localhost acpid: waiting for events: event logging is off
Jun 29 16:16:31 localhost acpid: client connected from 514[0:0]
Jun 29 16:16:31 localhost acpid: 1 client rule loaded
Jun 29 16:17:23 localhost acpid: exiting
Jun 29 16:18:43 localhost acpid: starting up with netlink and the input layer
Jun 29 16:18:43 localhost acpid: 1 rule loaded
Jun 29 16:18:43 localhost acpid: waiting for events: event logging is off
Jun 29 16:18:44 localhost acpid: client connected from 534[0:0]
Jun 29 16:18:44 localhost acpid: 1 client rule loaded

Offline

#4 2012-06-29 22:23:07

tomxtobin
Member
Registered: 2010-10-07
Posts: 22

Re: [SOLVED] Lenovo ThinkPad X230: Certain ACPI events can stop being sent

Hmm.  Could this be related to a race condition between multiple watchdogs?

It looks like I have (at least) two modules attempting to register as /dev/watchdog: iTCO_wdt and mei.

Comparing the output of dmesg when the ACPI events are working, vs. not working, I've noticed that mei seems to win the race when the events do not work.

Here's the relevant lines when the ACPI events are not working:

mei: module is from the staging directory, the quality is unknown, you have been warned.
mei 0000:00:16.0: setting latency timer to 64
mei 0000:00:16.0: irq 42 for MSI/MSI-X

iTCO_vendor_support: vendor-support=0
iTCO_wdt: Intel TCO WatchDog Timer Driver v1.07
iTCO_wdt: Found a Panther Point TCO device (Version=2, TCOBASE=0x0460)
iTCO_wdt: cannot register miscdev on minor=130 (err=-16)
iTCO_wdt: probe of iTCO_wdt failed with error -16

And here's the relevant lines when they are working:

mei: module is from the staging directory, the quality is unknown, you have been warned.
mei 0000:00:16.0: setting latency timer to 64
mei 0000:00:16.0: irq 44 for MSI/MSI-X
mei 0000:00:16.0: unable to register watchdog device.

iTCO_vendor_support: vendor-support=0
iTCO_wdt: Intel TCO WatchDog Timer Driver v1.07
iTCO_wdt: Found a Panther Point TCO device (Version=2, TCOBASE=0x0460)
iTCO_wdt: initialized. heartbeat=30 sec (nowayout=0)

I'd blacklist mei, but I'm not sure if that's wise.

Offline

#5 2012-06-29 22:39:12

cfr
Member
From: Cymru
Registered: 2011-11-27
Posts: 7,130

Re: [SOLVED] Lenovo ThinkPad X230: Certain ACPI events can stop being sent

Hmm... well, both seem to get initialised OK here:

$ dmesg | grep -i tco
[   11.614245] iTCO_vendor_support: vendor-support=0
[   12.880765] iTCO_wdt: Intel TCO WatchDog Timer Driver v1.07
[   12.880890] iTCO_wdt: Found a Cougar Point TCO device (Version=2, TCOBASE=0x0460)
[   12.880976] iTCO_wdt: initialized. heartbeat=30 sec (nowayout=0)
$ dmesg | grep -i mei
[   11.717324] mei: module is from the staging directory, the quality is unknown, you have been warned.
[   11.717796] mei 0000:00:16.0: setting latency timer to 64
[   11.717938] mei 0000:00:16.0: irq 42 for MSI/MSI-X
[15475.326302] mei 0000:00:16.0: irq 42 for MSI/MSI-X

Maybe "Panther" is less tolerant of mei than "Cougar"?


CLI Paste | How To Ask Questions

Arch Linux | x86_64 | GPT | EFI boot | refind | stub loader | systemd | LVM2 on LUKS
Lenovo x270 | Intel(R) Core(TM) i5-7200U CPU @ 2.50GHz | Intel Wireless 8265/8275 | US keyboard w/ Euro | 512G NVMe INTEL SSDPEKKF512G7L

Offline

#6 2012-06-29 22:44:19

tomxtobin
Member
Registered: 2010-10-07
Posts: 22

Re: [SOLVED] Lenovo ThinkPad X230: Certain ACPI events can stop being sent

Yeah, I think the watchdogs are a red herring; I used softdep to force iTCO_wdt to load before mei, yet I'm experiencing the issue.

Offline

#7 2012-06-29 22:54:35

tomxtobin
Member
Registered: 2010-10-07
Posts: 22

Re: [SOLVED] Lenovo ThinkPad X230: Certain ACPI events can stop being sent

I've also tried blacklisting (one at a time) both mei and iTCO_wdt, and I've had both scenarios (working and not-working) in both cases.

Offline

#8 2012-07-07 14:52:53

tomxtobin
Member
Registered: 2010-10-07
Posts: 22

Re: [SOLVED] Lenovo ThinkPad X230: Certain ACPI events can stop being sent

I've tried baking thinkpad_acpi, iTCO_wdt, and button into the initial kernel ramdisk, with no luck.  Comparing the output of dmesg isn't giving me any more clues at this point.  I'm fairly convinced that the problem must be a race condition of some kind, but it beats me as to what.  :-/

Offline

#9 2012-07-22 02:13:34

s3cr3to
Member
Registered: 2012-07-22
Posts: 2

Re: [SOLVED] Lenovo ThinkPad X230: Certain ACPI events can stop being sent

I have the same issue in my Thinkpad/Edge; I update the most recent BIOS but the issue remains.
The only fix that temporarily works for me:
Shutdown the laptop + remove the battery + put the battery again and boot again.
This fix the issues with special keys and suspend.. but just for a few days.

Regards.

Offline

#10 2012-07-22 04:20:34

tomxtobin
Member
Registered: 2010-10-07
Posts: 22

Re: [SOLVED] Lenovo ThinkPad X230: Certain ACPI events can stop being sent

s3cr3to wrote:

The only fix that temporarily works for me:
Shutdown the laptop + remove the battery + put the battery again and boot again.
This fix the issues with special keys and suspend.. but just for a few days.

When your system's ACPI is working properly, does it stay working properly until the next time you reboot?

Offline

#11 2012-07-22 06:44:16

s3cr3to
Member
Registered: 2012-07-22
Posts: 2

Re: [SOLVED] Lenovo ThinkPad X230: Certain ACPI events can stop being sent

Yes it works after many shutdown and reboots. But the issue reappears again. This week works fine from thursday until today saturday.
In lenovo forums some thinks that this problem is related to some bad material used to store the BIOS/config I don't know jack about electronics-mumbo-jumbo; but I feel like the battery trick force to rewrite/refresh this parts.

I only hope that 5 days are the "minimum" before to repeat this trick... argh!

BTW I even install winblows 7 just to be sure, the problem remains so this issue is not OS related.

Last edited by s3cr3to (2012-07-22 06:47:05)

Offline

#12 2012-07-22 15:07:29

tomxtobin
Member
Registered: 2010-10-07
Posts: 22

Re: [SOLVED] Lenovo ThinkPad X230: Certain ACPI events can stop being sent

s3cr3to wrote:

Yes it works after many shutdown and reboots. But the issue reappears again.

What I mean is this: the problem doesn't reappear until after a shutdown or reboot?  In other words, if it's working, you could leave your system on for as long as you wanted (including putting it to sleep) and it doesn't stop working until after you shutdown or reboot, even if that's many days later?  (I'm just trying to confirm that the issue really is the same as mine.)

Do you have lm_sensors installed?  When ACPI isn't working for you, if you hit the sleep key and then run sensors with no arguments, does the system then go to sleep?  (It does for me.)

s3cr3to wrote:

This week works fine from thursday until today saturday.

And it stopped when you booted up the machine again?

For me, it seems like the ACPI gets selected as "working" or "not working" upon initial boot, and all I have to do to get it back to "working" is keep rebooting until sleep works again.

s3cr3to wrote:

In lenovo forums some thinks that this problem is related to some bad material used to store the BIOS/config I don't know jack about electronics-mumbo-jumbo; but I feel like the battery trick force to rewrite/refresh this parts.

I only hope that 5 days are the "minimum" before to repeat this trick... argh!

BTW I even install winblows 7 just to be sure, the problem remains so this issue is not OS related.

So it may not be OS-related, eh?  Ugh.

I ripped out the Windows HDD almost immediately and replaced it with a SSD.  I suppose I could stick the Windows HDD into an enclosure and boot from that for testing.

If the problem does appear under Windows for me as well, I'd then have to figure out if I got a bad machine, or if something's wrong with the entire line of laptops.

Offline

#13 2012-07-22 15:54:46

tomxtobin
Member
Registered: 2010-10-07
Posts: 22

Re: [SOLVED] Lenovo ThinkPad X230: Certain ACPI events can stop being sent

s3cr3to wrote:

In lenovo forums some thinks that this problem is related to some bad material used to store the BIOS/config I don't know jack about electronics-mumbo-jumbo; but I feel like the battery trick force to rewrite/refresh this parts.

I looked around the Lenovo forums and found descriptions like this one:

After talking with a Lenovo support representative I learned the cause of my troubles. I was leaving my charger in after the battery was fully charged, and this caused the capacitors on the board to fill up, and the board would malfunction.

I discharged the caps by removing the battery, unplugging the AC cord, and pressing the power button 10 times, and then holding it for 10 seconds.

That particular "trick" (10 times / 10 seconds) does nothing for my particular issue, for what it's worth.  And the supposed "problem" described by Lenovo there is ridiculous: of course I leave my laptop plugged in when I'm home.  I hope Lenovo isn't really trying to pass off problems with their machines as normal; I'd really hate to go back through the hassle of researching Linux-friendly laptops all over again.

Offline

#14 2012-08-17 07:59:28

bassu
Member
Registered: 2011-12-21
Posts: 90

Re: [SOLVED] Lenovo ThinkPad X230: Certain ACPI events can stop being sent

And the supposed "problem" described by Lenovo there is ridiculous: of course I leave my laptop plugged in when I'm home.  I hope Lenovo isn't really trying to pass off problems with their machines as normal; I'd really hate to go back through the hassle of researching Linux-friendly laptops all over again.

One by one, Lenovo is taking features out of Thinkpads that really made them a 'Thinkpad'. They already have lost huge diverse fans after the keyboard controversy.
I'm in process of selecting a new Thinkpad (which itself is a hard decision to make), do you think the ACPI problems you are having aren't isolated ? The Dell XPS 1645 I've, once got the same problem after some how it got overcharged and I had to take out the battery for a few nights for power recycles to fix it over!

I do have read a few posts from guys using x230 and none of them reported any similar issues!

Last edited by bassu (2012-08-17 08:00:22)


The greatest threat to knowledge is not ignorance - it is the illusion of knowledge!

Offline

#15 2012-08-17 12:51:54

tomxtobin
Member
Registered: 2010-10-07
Posts: 22

Re: [SOLVED] Lenovo ThinkPad X230: Certain ACPI events can stop being sent

I haven't seen anyone with an X230 reply to this thread saying that they definitely didn't have the issue, either.  (And if anyone does, I'd like to know if they tend to run off of battery or AC; I spend virtually all my time running off of AC, so I definitely wonder about that "overcharge".)  If I could get a confirmation either way, I could either deal with it until a fix gets written (if it's widespread/"normal"), or have Lenovo repair the machine (if the problem is unique to me).

FWIW, I still haven't had a chance to dig up the original Windows drive, plug it in, and try to boot back off of Windows and test the ACPI events from there.  Since the problem only manifests upon boot, once I've booted "okay" I tend to leave my machine running until I'm forced to reboot because of a kernel update or whatnot, which could be days later, and only then do I start grumbling about the problem again.  :-)  Since testing from Windows seems to be all I can do at this point (since no one else with an X230 has chimed in), I'll try that now and report back.

Offline

#16 2012-08-17 13:22:21

George
Member
Registered: 2011-05-11
Posts: 165

Re: [SOLVED] Lenovo ThinkPad X230: Certain ACPI events can stop being sent

I haven't seen anyone with an X230 reply to this thread saying that they definitely didn't have the issue, either.

Well I've never seen any symptoms like this on my X230, but as I've had it for less than a month there's still plenty of time for problems to develop.... FWIW I do run mainly off with the mains adapter connected but occasionally I run it off the battery for a while.

That power button dance.... I've seen it recommended for all kinds of random stuff on thinkpads of many generations (usually not by official sources), but the explanation given (apparently by a "support representative") for its application here does rather stretch my credulity.... there's no reason why leaving a laptop battery attached would "fill up" capacitors on the main board unless there's something seriously wrong with the design.
To the best of my knowledge the recommendation to 'discharge capacitors using the power button' was originally a workaround for a rare fault where a laptop which had worked fine for ages suddenly wouldn't power on correctly, it was supposed to be a one-off fix.

Offline

#17 2012-08-17 13:36:49

tomxtobin
Member
Registered: 2010-10-07
Posts: 22

Re: [SOLVED] Lenovo ThinkPad X230: Certain ACPI events can stop being sent

tomxtobin wrote:

Since testing from Windows seems to be all I can do at this point (since no one else with an X230 has chimed in), I'll try that now and report back.

I just tried booting off the Windows drive using two different external enclosures, and they both BSOD'd on me.  I'll try popping the Windows HDD back into the laptop as soon as I get a chance.

Offline

#18 2012-08-17 13:38:49

tomxtobin
Member
Registered: 2010-10-07
Posts: 22

Re: [SOLVED] Lenovo ThinkPad X230: Certain ACPI events can stop being sent

George wrote:

Well I've never seen any symptoms like this on my X230, but as I've had it for less than a month there's still plenty of time for problems to develop.... FWIW I do run mainly off with the mains adapter connected but occasionally I run it off the battery for a while.

That makes me suspect that I have a faulty machine.  If I can confirm it under Windows, I suppose I'll get to test out the Lenovo on-site repair process.  :-/

Offline

#19 2012-08-17 14:26:03

George
Member
Registered: 2011-05-11
Posts: 165

Re: [SOLVED] Lenovo ThinkPad X230: Certain ACPI events can stop being sent

I don't think you'll have any luck booting windows using an external drive, AFAIR it won't boot if the ID of the SATA controller has changed even...

Offline

#20 2012-08-17 23:52:29

cfr
Member
From: Cymru
Registered: 2011-11-27
Posts: 7,130

Re: [SOLVED] Lenovo ThinkPad X230: Certain ACPI events can stop being sent

For what it is worth, I've already tested the Lenovo repair service locally. I took the laptop to them rather than then coming to me but they ordered the part required just based on my report on the phone so that I only had to make one visit when they'd received the part. They then replaced it on the spot.

I realise the part required was pretty obvious in my case (keyboard) but I can imagine a lot of places insisting on seeing the machine before agreeing to order the part so I was reasonably impressed.


CLI Paste | How To Ask Questions

Arch Linux | x86_64 | GPT | EFI boot | refind | stub loader | systemd | LVM2 on LUKS
Lenovo x270 | Intel(R) Core(TM) i5-7200U CPU @ 2.50GHz | Intel Wireless 8265/8275 | US keyboard w/ Euro | 512G NVMe INTEL SSDPEKKF512G7L

Offline

#21 2012-08-19 02:19:06

bassu
Member
Registered: 2011-12-21
Posts: 90

Re: [SOLVED] Lenovo ThinkPad X230: Certain ACPI events can stop being sent

tomxtobin wrote:
George wrote:

Well I've never seen any symptoms like this on my X230, but as I've had it for less than a month there's still plenty of time for problems to develop.... FWIW I do run mainly off with the mains adapter connected but occasionally I run it off the battery for a while.

That makes me suspect that I have a faulty machine.  If I can confirm it under Windows, I suppose I'll get to test out the Lenovo on-site repair process.  :-/

From all the evidence you've provided, it looks like that's a possibility. If the problem doesn't go away after taking off the battery and keeping the machine off for quite some time, I think it's wiser to RMA it and have it replaced. I certainly wouldn't live with that kind of an issue!


The greatest threat to knowledge is not ignorance - it is the illusion of knowledge!

Offline

#22 2012-08-19 19:19:22

tomxtobin
Member
Registered: 2010-10-07
Posts: 22

Re: [SOLVED] Lenovo ThinkPad X230: Certain ACPI events can stop being sent

tomxtobin wrote:

I just tried booting off the Windows drive using two different external enclosures, and they both BSOD'd on me.  I'll try popping the Windows HDD back into the laptop as soon as I get a chance.

I put the Windows HDD back into my X230, and I was not able to reproduce the issue.  The problem seems specific to some aspect of my Arch Linux setup.  :-/

I also updated the BIOS from v1.10 to v1.12 while I was running Windows, but it didn't help.

Offline

#23 2012-08-19 20:21:24

cfr
Member
From: Cymru
Registered: 2011-11-27
Posts: 7,130

Re: [SOLVED] Lenovo ThinkPad X230: Certain ACPI events can stop being sent

Do you get *any* differences in dmesg output in the two cases? Or in /var/log/boot?

I believe there are ways of increasing the verbosity by e.g. passing relevant parameters on the kernel command line. Maybe that would reveal something?

Do the same modules get loaded in the two cases?

Are you using any non-default modules?


CLI Paste | How To Ask Questions

Arch Linux | x86_64 | GPT | EFI boot | refind | stub loader | systemd | LVM2 on LUKS
Lenovo x270 | Intel(R) Core(TM) i5-7200U CPU @ 2.50GHz | Intel Wireless 8265/8275 | US keyboard w/ Euro | 512G NVMe INTEL SSDPEKKF512G7L

Offline

#24 2012-08-19 20:40:46

tomxtobin
Member
Registered: 2010-10-07
Posts: 22

Re: [SOLVED] Lenovo ThinkPad X230: Certain ACPI events can stop being sent

cfr wrote:

Do you get *any* differences in dmesg output in the two cases? Or in /var/log/boot?

I've tried logging the dmesg output and diffing between the two cases (with timestamps stripped), as well as simply comparing the message order.  I haven't been able to find any consistent pattern.

I am loading acpid in the background in my /etc/rc.conf DAEMONS, now that you mention /var/log/boot ... I'll try un-backgrounding it.

cfr wrote:

I believe there are ways of increasing the verbosity by e.g. passing relevant parameters on the kernel command line. Maybe that would reveal something?

I tried upping the verbosity for the thinkpad_acpi module (modprobe.conf: options thinkpad_acpi debug=0xffff), but it hasn't given me a clue yet.

cfr wrote:

Do the same modules get loaded in the two cases?

The main difference I tend to see, which isn't consistent, is the apparent race condition between mei and iTCO_wdt I mentioned in an earlier post, but the outcome of the race doesn't seem to have any bearing on whether my button/sleep events get fired correctly or not.

cfr wrote:

Are you using any non-default modules?

Everything I'm using is a standard Linux module, as far as I can see (including thinkpad_acpi).  I have virtualbox-modules installed but not loaded.

Offline

#25 2012-08-19 21:39:33

cfr
Member
From: Cymru
Registered: 2011-11-27
Posts: 7,130

Re: [SOLVED] Lenovo ThinkPad X230: Certain ACPI events can stop being sent

It is weird that it affects some acpi events but not others e.g. events from some buttons but not others. Is there any principled difference between the two groups?


CLI Paste | How To Ask Questions

Arch Linux | x86_64 | GPT | EFI boot | refind | stub loader | systemd | LVM2 on LUKS
Lenovo x270 | Intel(R) Core(TM) i5-7200U CPU @ 2.50GHz | Intel Wireless 8265/8275 | US keyboard w/ Euro | 512G NVMe INTEL SSDPEKKF512G7L

Offline

Board footer

Powered by FluxBB