From: Robert Hancock <hancockrwd@gmail.com>
To: Feng Tang <feng.tang@intel.com>
Cc: "Moore, Robert" <robert.moore@intel.com>,
"Rafael J. Wysocki" <rjw@sisk.pl>,
Greg KH <gregkh@linuxfoundation.org>,
Azat Khuzhin <dohardgopro@gmail.com>,
"linux-acpi@vger.kernel.org" <linux-acpi@vger.kernel.org>,
Linux Kernel Mailing List <linux-kernel@vger.kernel.org>,
"Zheng, Lv" <lv.zheng@intel.com>, Len Brown <lenb@kernel.org>
Subject: Re: ACPI errors with 3.7-rc3
Date: Fri, 16 Nov 2012 23:40:26 -0600 [thread overview]
Message-ID: <50A7234A.7080309@gmail.com> (raw)
In-Reply-To: <20121109163625.GA10171@feng-snb>
On 11/09/2012 10:36 AM, Feng Tang wrote:
> On Fri, Nov 09, 2012 at 10:30:43PM +0800, Moore, Robert wrote:
>> The ACPI Global Lock is in fact intended to provide exclusion between the BIOS and the OS.
>> Bob
>
> Thanks for the info.
>
> And per my check, most of ACPI FW don't implement this lock, say
> after driver probe, the ec->global_lock will be 0.
The DSDT is supposed to define the _GLK control method on the EC if the
BIOS needs to perform its own access which may conflict with the OS
usage. If it doesn't, then it should be the case that either the BIOS
doesn't touch the EC itself or it uses a separate interface that doesn't
cause conflicts with what the OS is doing.
>
> - Feng
>
>>
>>
>>> -----Original Message-----
>>> From: Tang, Feng
>>> Sent: Friday, November 09, 2012 1:29 AM
>>> To: Rafael J. Wysocki
>>> Cc: Greg KH; Azat Khuzhin; linux-acpi@vger.kernel.org; Linux Kernel
>>> Mailing List; Zheng, Lv; Len Brown; Moore, Robert
>>> Subject: Re: ACPI errors with 3.7-rc3
>>>
>>> On Thu, Nov 08, 2012 at 05:49:40AM +0800, Rafael J. Wysocki wrote:
>>>> On Tuesday, November 06, 2012 01:48:26 PM Greg KH wrote:
>>>>> On Tue, Nov 06, 2012 at 04:42:24PM +0400, Azat Khuzhin wrote:
>>>>>> I'v also have such errors on my macbook pro.
>>>>>>
>>>>>> $ dmesg | tail
>>>>>> [17056.008564] ACPI Error: Method parse/execution failed
>>>>>> [\_SB_.PCI0.LPCB.EC__.SMB0.SBRW] (Node ffff88026547ea10), AE_TIME
>>>>>> (20120711/psparse-536)
>>>>>> [17056.011194] ACPI Error: Method parse/execution failed
>>>>>> [\_SB_.BAT0.UBST] (Node ffff88026547e678), AE_TIME
>>>>>> (20120711/psparse-536)
>>>>>> [17056.013793] ACPI Error: Method parse/execution failed
>>>>>> [\_SB_.BAT0._BST] (Node ffff88026547e740), AE_TIME
>>>>>> (20120711/psparse-536)
>>>>>> [17056.016383] ACPI Exception: AE_TIME, Evaluating _BST
>>>>>> (20120711/battery-464) [17056.511373] ACPI: EC: input buffer is
>>>>>> not empty, aborting transaction [17056.512672] ACPI Exception:
>>>>>> AE_TIME, Returned by Handler for [EmbeddedControl]
>>>>>> (20120711/evregion-501) [17056.515256] ACPI Error: Method
>>>>>> parse/execution failed [\_SB_.PCI0.LPCB.EC__.SMB0.SBRW] (Node
>>>>>> ffff88026547ea10), AE_TIME
>>>>>> (20120711/psparse-536)
>>>>>> [17056.517886] ACPI Error: Method parse/execution failed
>>>>>> [\_SB_.BAT0.UBST] (Node ffff88026547e678), AE_TIME
>>>>>> (20120711/psparse-536)
>>>>>> [17056.520479] ACPI Error: Method parse/execution failed
>>>>>> [\_SB_.BAT0._BST] (Node ffff88026547e740), AE_TIME
>>>>>> (20120711/psparse-536)
>>>>>> [17056.523070] ACPI Exception: AE_TIME, Evaluating _BST
>>>>>> (20120711/battery-464)
>>>>>
>>>>> I'm seeing this again right now. I'm wondering if it's because I'm
>>>>> running on battery power at the moment:
>>>>>
>>>>> [41694.309264] ACPI Exception: AE_TIME, Returned by Handler for
>>>>> [EmbeddedControl] (20120913/evregion-501) [41694.309282] ACPI Error:
>>>>> Method parse/execution failed [\_SB_.PCI0.LPCB.EC__.SMB0.SBRW] (Node
>>>>> ffff88045cc64618), AE_TIME (20120913/psparse-536) [41694.309300]
>>>>> ACPI Error: Method parse/execution failed [\_SB_.BAT0.UBST] (Node
>>>>> ffff88045cc64988), AE_TIME (20120913/psparse-536) [41694.309310]
>>>>> ACPI Error: Method parse/execution failed [\_SB_.BAT0._BST] (Node
>>>>> ffff88045cc648c0), AE_TIME (20120913/psparse-536) [41694.309324]
>>>>> ACPI Exception: AE_TIME, Evaluating _BST (20120913/battery-464)
>>>>> [41694.809093] ACPI: EC: input buffer is not empty, aborting
>>>>> transaction
>>>>>
>>>>> ec_storm_threshold is still set to 8 in /sys/module/acpi/parameters/
>>>>> so that's not the issue here.
>>>>>
>>>>>> And also loadavg is too high ~ 10
>>>>>> While there is no process that load CPU up to 100% or like that.
>>>>>> I think that this because of processes that is done in kernel space.
>>>>>> (basically that one who write such errors)
>>>>>>
>>>>>> $ uname -a
>>>>>> Linux macbook-pro-sq 3.6.5macbook-pro-custom-v0.1 #4 SMP Sun Nov 4
>>>>>> 12:39:03 UTC 2012 x86_64 GNU/Linux
>>>>>
>>>>> Ah, ok, that means it's not something new in 3.7-rc, so maybe it's
>>>>> just never worked properly for this hardware :)
>>>>>
>>>>> So it's not a regression, just an ACPI issue, any ACPI developer
>>>>> have an idea about this?
>>>>
>>>> Can you please send the output of acpidump from the affected machine(s)?
>>>
>>> I doubt this problem is sometimes inevitable for some machines, because
>>> AFAIK most modern machines have the race problem for EC HW controller, as
>>> both OS side and the BIOS may access the EC HW at the same time
>>> without any race control.
>>>
>>> For this case, usually the battery and thermal modules (which may be
>>> controlled through EC) are always monitored by BIOS, when OS also
>>> frequently visit them too, the EC's own state machine may be broken and
>>> not responsive due to the race, then cause the timeout error.
>>> And how severe the problem will be depends on the EC HW, the quality of
>>> BIOS code and OS/driver code.
>>>
>>> Myself have seen the similar "ACPI: EC: input buffer is not empty,
>>> aborting transaction" error message on one laptop when its EC is busy
>>> visited by OS.
>>>
>>> btw, in EC driver I see a "ec->global_lock", don't know if it was designed
>>> to control the race between OS and BIOS.
>>>
>>> Thanks,
>>> Feng
> --
> To unsubscribe from this list: send the line "unsubscribe linux-acpi" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at http://vger.kernel.org/majordomo-info.html
>
next prev parent reply other threads:[~2012-11-17 5:40 UTC|newest]
Thread overview: 27+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-10-31 1:45 ACPI errors with 3.7-rc3 Greg KH
2012-10-31 9:11 ` Rafael J. Wysocki
2012-10-31 17:33 ` Greg KH
2012-11-06 12:42 ` Azat Khuzhin
2012-11-06 12:48 ` Greg KH
2012-11-06 13:04 ` Azat Khuzhin
2012-11-07 21:49 ` Rafael J. Wysocki
2012-11-08 4:47 ` Greg KH
2012-11-08 9:15 ` Azat Khuzhin
2012-11-08 9:27 ` Rafael J. Wysocki
2013-01-26 12:23 ` Carlos R. Mafra
2013-01-26 13:23 ` Rafael J. Wysocki
2013-01-26 13:39 ` Carlos R. Mafra
2013-01-26 13:55 ` Rafael J. Wysocki
2013-01-26 21:23 ` Azat Khuzhin
2013-01-27 12:37 ` Carlos R. Mafra
2012-11-09 9:28 ` Feng Tang
2012-11-09 14:30 ` Moore, Robert
2012-11-09 16:36 ` Feng Tang
2012-11-09 16:45 ` Moore, Robert
2012-11-11 10:00 ` Azat Khuzhin
2012-11-13 0:41 ` Moore, Robert
2012-11-13 0:41 ` Moore, Robert
2012-11-14 17:33 ` Azat Khuzhin
2012-11-17 5:40 ` Robert Hancock [this message]
2012-12-01 20:59 ` Azat Khuzhin
2012-12-01 21:54 ` Azat Khuzhin
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=50A7234A.7080309@gmail.com \
--to=hancockrwd@gmail.com \
--cc=dohardgopro@gmail.com \
--cc=feng.tang@intel.com \
--cc=gregkh@linuxfoundation.org \
--cc=lenb@kernel.org \
--cc=linux-acpi@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=lv.zheng@intel.com \
--cc=rjw@sisk.pl \
--cc=robert.moore@intel.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.