Re: [PATCH] ACPI: EC: do transaction from interrupt context

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Friday, 26 of September 2008, Zhao, Yakui wrote:
> Alan gives a suggestion that after processing the EC notification event, EC driver
> should continue to issue the query command and process the EC notification
> event until the query command returns zero. 
> But this suggestion will break my laptop. On my laptop when issuing the query
> command, a non-zero query event is  returned but it can't be processed.(There
> is no corresponding ACPI _Qxx object). At the same time the SCI_EVT bit won't
> be cleared. In such case OS can't exit the function of acpi_ec_query_handler,
> which causes that the acpid kernel thread can't work well.

Well, perhaps we should exit acpi_ec_query_handler() if SCI_EVT is clear _or_
the processing of an event fails due to the lack of a _Qxx object?  Alex?

> In fact according to my analysis IMO Alexey's patch will break my laptop.

That obviously would be a regression.

> But now the laptop is not in my hand and I can't do the test. After I own the
> laptop again, I will do the test and attach the corresponding info.

OK, how much time is it going to take, approximately?

> At the same time there are two generic issues in this patch:
>    a. spin_lock is overkill. When 2000 EC I/O read/write are executed, the
>    CPU interrupt will be disabled for about 1.5ms. This will affect the normal
>    laptops.

OTOH, I think we need _some_ locking in there in order to prevent races from
happening.

>    b. the local variable that resides in process stack space is used in
>    interrupt-context.

Which one?

Rafael
--
To unsubscribe from this list: send the line "unsubscribe linux-acpi" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux IBM ACPI]     [Linux Power Management]     [Linux Kernel]     [Linux Laptop]     [Kernel Newbies]     [Share Photos]     [Security]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Samba]     [Video 4 Linux]     [Device Mapper]     [Linux Resources]

  Powered by Linux