From: Li, S. <sha...@in...> - 2003-10-28 02:31:21
|
Hi, Which time did the panic occur? Boot time? Yes, I made the patch to = fix some boot time errors. But if boot is ok, the patch should not = impact anything. Please give me more info. Thanks, Shaohua > -----Original Message----- > From: acp...@li... [mailto:acpi-devel- > ad...@li...] On Behalf Of Karol Kozimor > Sent: 2003=C4=EA10=D4=C228=C8=D5 1:08 > To: acp...@li... > Subject: [ACPI] 2.6.0-test9 regression: panic on Fn+F7 hotkey >=20 > Hi, > Pressing Fn+F7 to turn the LCD on / off causes 2.6.0-test9 to panic. > That's > AFAIK the single event that causes such a behaviour, other keys work = fine. > Reverting the acpi_ec_gpe_query.patchi[1] fixes the issue and makes = the > kernel > run fine. >=20 > [1]: > = http://www.kernel.org/pub/linux/kernel/people/lenb/acpi/patches/test/2.4.= 2 > 2/20031017152411-acpi_ec_gpe_query.patch >=20 > Best regards, >=20 > -- > Karol 'sziwan' Kozimor > sz...@he... >=20 >=20 > ------------------------------------------------------- > This SF.net email is sponsored by: The SF.net Donation Program. > Do you like what SourceForge.net is doing for the Open > Source Community? Make a contribution, and help us add new > features and functionality. Click here: http://sourceforge.net/donate/ > _______________________________________________ > Acpi-devel mailing list > Acp...@li... > https://lists.sourceforge.net/lists/listinfo/acpi-devel |
From: Li, S. <sha...@in...> - 2003-10-28 08:15:54
Attachments:
ec_gpe.patch2
|
Hi, I missed non-ECDT situation. Try this one.=20 Thanks, Shaohua > -----Original Message----- > From: S=A8=A6rgio Monteiro Basto [mailto:ser...@ne...] > Sent: 2003=C4=EA10=D4=C228=C8=D5 14:23 > To: Li, Shaohua > Cc: Karol Kozimor; acpi-devel > Subject: RE: [ACPI] 2.6.0-test9 regression: panic on Fn+F7 hotkey >=20 > Hi > Pressing Fn+F7 doesnt seems to be in boot time. > For me acpi_ec_gpe_query.patch in 2.4.23-pre8, hangs my laptop when I > press lid button, after boot and after login after enter in X, after = all > things up. >=20 > On Tue, 2003-10-28 at 02:30, Li, Shaohua wrote: > > Hi, > > Which time did the panic occur? Boot time? Yes, I made the patch = to > fix some boot time errors. > > But if boot is ok, the patch should not impact anything. >=20 > but have a lot of impact. > in my case, boots without problems. >=20 > Please give me more info. > > > > Thanks, > > Shaohua > > > > > > > -----Original Message----- > > > From: acp...@li... [mailto:acpi-devel- > > > ad...@li...] On Behalf Of Karol Kozimor > > > Sent: 2003=C4=EA10=D4=C228=C8=D5 1:08 > > > To: acp...@li... > > > Subject: [ACPI] 2.6.0-test9 regression: panic on Fn+F7 hotkey > > > > > > Hi, > > > Pressing Fn+F7 to turn the LCD on / off causes 2.6.0-test9 to = panic. > > > That's > > > AFAIK the single event that causes such a behaviour, other keys = work > fine. > > > Reverting the acpi_ec_gpe_query.patchi[1] fixes the issue and = makes > the > > > kernel > > > run fine. > > > > > > [1]: > > > > = http://www.kernel.org/pub/linux/kernel/people/lenb/acpi/patches/test/2.4.= 2 > > > 2/20031017152411-acpi_ec_gpe_query.patch > > > > > > Best regards, > > > > > > -- > > > Karol 'sziwan' Kozimor > > > sz...@he... > > > > > > > > > ------------------------------------------------------- > > > This SF.net email is sponsored by: The SF.net Donation Program. > > > Do you like what SourceForge.net is doing for the Open > > > Source Community? Make a contribution, and help us add new > > > features and functionality. Click here: = http://sourceforge.net/donate/ > > > _______________________________________________ > > > Acpi-devel mailing list > > > Acp...@li... > > > https://lists.sourceforge.net/lists/listinfo/acpi-devel > > > > > > ------------------------------------------------------- > > This SF.net email is sponsored by: The SF.net Donation Program. > > Do you like what SourceForge.net is doing for the Open > > Source Community? Make a contribution, and help us add new > > features and functionality. Click here: = http://sourceforge.net/donate/ > > _______________________________________________ > > Acpi-devel mailing list > > Acp...@li... > > https://lists.sourceforge.net/lists/listinfo/acpi-devel > -- > S=A8=A6rgioMB > email: ser...@ne... >=20 > Who gives me one shell, give me everything. |
From: Ducrot B. <du...@po...> - 2003-10-28 10:08:31
|
On Tue, Oct 28, 2003 at 04:14:56PM +0800, Li, Shaohua wrote: > Hi, > > I missed non-ECDT situation. Try this one. > Please don't apply. This is not OK. You missed the point that an interrupt handler can not sleep. Anyway, from my point-of-view, ec.c is not buggy, but events/exviface.c::acpi_remove_.*(). IMHO, we should have our own acpi workqueue, at first, and then wait for completion when removing any events handlers. Those, the correct fix should be in osl.c, and in events/evxface.c calling this wait for completition implemented in osl.c. -- Ducrot Bruno -- Which is worse: ignorance or apathy? -- Don't know. Don't care. |
From: Li, S. <sha...@in...> - 2003-10-28 12:37:45
|
> -----Original Message----- > From: Ducrot Bruno [mailto:du...@po...] > Sent: 2003=C4=EA10=D4=C228=C8=D5 18:04 > To: Li, Shaohua > Cc: S=A8=A6rgio Monteiro Basto; Karol Kozimor; acpi-devel > Subject: Re: [ACPI] 2.6.0-test9 regression: panic on Fn+F7 hotkey >=20 > On Tue, Oct 28, 2003 at 04:14:56PM +0800, Li, Shaohua wrote: > > Hi, > > > > I missed non-ECDT situation. Try this one. > > >=20 > Please don't apply. This is not OK. You missed the > point that an interrupt handler can not sleep. Anyway, > from my point-of-view, ec.c is not buggy, but > events/exviface.c::acpi_remove_.*(). >=20 > IMHO, we should have our own acpi workqueue, at first, and > then wait for completion when removing any events handlers. > Those, the correct fix should be in osl.c, and in events/evxface.c > calling this wait for completition implemented in osl.c. yes, I know it's a bad idea to execute GPE query in interrupt = handler. I do such thing is because this situation is rare. The = interrupts seldom occur before EC device is initialized.=20 But even though acpi has own workqueue, When replace ECDT with EC, we = still have a wrong context.=20 I think a better solution is when replace ECDT with EC, we can change = the context in the event queue. Or we can use indirectly accessed = context. Like this: --- ec.c 2003-10-09 03:24:07.000000000 +0800 +++ ec.c.new 2003-10-28 20:17:05.643232728 +0800 @@ -93,7 +93,7 @@ =20 /* External interfaces use first EC only, so remember */ static struct acpi_device *first_ec; - +static struct acpi_device *ec_context =3D NULL; /* = -------------------------------------------------------------------------= - Transaction Management = -------------------------------------------------------------------------= - */ @@ -386,7 +386,7 @@ void *data) { acpi_status status =3D AE_OK; - struct acpi_ec *ec =3D (struct acpi_ec *) data; + struct acpi_ec *ec =3D ec_context; =20 if (!ec) return; @@ -581,7 +581,7 @@ sprintf(acpi_device_name(device), "%s", ACPI_EC_DEVICE_NAME); sprintf(acpi_device_class(device), "%s", ACPI_EC_CLASS); acpi_driver_data(device) =3D ec; - + ec_context =3D ec; /* Use the global lock for all EC transactions? */ acpi_evaluate_integer(ec->handle, "_GLK", NULL, &ec->global_lock); =20 @@ -793,7 +793,7 @@ /* use the GL just to be safe */ ec_ecdt->global_lock =3D TRUE; ec_ecdt->uid =3D ecdt_ptr->uid; - + ec_context =3D ec_ecdt; status =3D acpi_get_handle(NULL, ecdt_ptr->ec_id, &ec_ecdt->handle); if (ACPI_FAILURE(status)) { goto error; In general, ECDT includes similar info as EC device. does this one make = sense? Thanks, shaohua |
From: Ducrot B. <du...@po...> - 2003-10-28 13:59:51
|
On Tue, Oct 28, 2003 at 08:33:16PM +0800, Li, Shaohua wrote: > > > -----Original Message----- > > From: Ducrot Bruno [mailto:du...@po...] > > Sent: 2003??10??28?? 18:04 > > To: Li, Shaohua > > Cc: Sérgio Monteiro Basto; Karol Kozimor; acpi-devel > > Subject: Re: [ACPI] 2.6.0-test9 regression: panic on Fn+F7 hotkey > > > > On Tue, Oct 28, 2003 at 04:14:56PM +0800, Li, Shaohua wrote: > > > Hi, > > > > > > I missed non-ECDT situation. Try this one. > > > > > > > Please don't apply. This is not OK. You missed the > > point that an interrupt handler can not sleep. Anyway, > > from my point-of-view, ec.c is not buggy, but > > events/exviface.c::acpi_remove_.*(). > > > > IMHO, we should have our own acpi workqueue, at first, and > > then wait for completion when removing any events handlers. > > Those, the correct fix should be in osl.c, and in events/evxface.c > > calling this wait for completition implemented in osl.c. > > yes, I know it's a bad idea to execute GPE query in interrupt handler. I do such thing is because this situation is rare. The interrupts seldom occur before EC device is initialized. > > But even though acpi has own workqueue, When replace ECDT with EC, we still have a wrong context. Yes, there is still a little window where unlikely this may happens (that why I think that should go in osl.c, because anyway this is more generic than the EC problem, and have to be done in OS fashion). > > I think a better solution is when replace ECDT with EC, we can change the context in the event queue. Or we can use indirectly accessed context. Like this: > > --- ec.c 2003-10-09 03:24:07.000000000 +0800 > +++ ec.c.new 2003-10-28 20:17:05.643232728 +0800 > @@ -93,7 +93,7 @@ > > /* External interfaces use first EC only, so remember */ > static struct acpi_device *first_ec; > - > +static struct acpi_device *ec_context = NULL; > /* -------------------------------------------------------------------------- > Transaction Management > -------------------------------------------------------------------------- */ > @@ -386,7 +386,7 @@ > void *data) > { > acpi_status status = AE_OK; > - struct acpi_ec *ec = (struct acpi_ec *) data; > + struct acpi_ec *ec = ec_context; > > if (!ec) > return; ... What happens if you have more than one EC? Toshiba Satellite 190x series have 2 EC IIRC, and only one will have an interrupt handler. Cheers, -- Ducrot Bruno -- Which is worse: ignorance or apathy? -- Don't know. Don't care. |
From: Li, S. <sha...@in...> - 2003-10-28 13:47:35
|
Hi, Sorry, I made a mistake. should be this one. Because ECDT unusually has similar info with EC. Changing the context = should not cause problem.=20 --- ec.c 2003-10-09 03:24:07.000000000 +0800 +++ ec.c.new 2003-10-28 21:29:51.000000000 +0800 @@ -93,7 +93,7 @@ =20 /* External interfaces use first EC only, so remember */ static struct acpi_device *first_ec; - +static struct acpi_device *ec_context; /* = -------------------------------------------------------------------------= - Transaction Management = -------------------------------------------------------------------------= - */ @@ -342,7 +342,7 @@ acpi_ec_gpe_query ( void *ec_cxt) { - struct acpi_ec *ec =3D (struct acpi_ec *) ec_cxt; + struct acpi_ec *ec =3D ec_context; u32 value =3D 0; unsigned long flags =3D 0; static char object_name[5] =3D {'_','Q','0','0','\0'}; @@ -581,7 +581,7 @@ sprintf(acpi_device_name(device), "%s", ACPI_EC_DEVICE_NAME); sprintf(acpi_device_class(device), "%s", ACPI_EC_CLASS); acpi_driver_data(device) =3D ec; - + ec_context =3D ec; /* Use the global lock for all EC transactions? */ acpi_evaluate_integer(ec->handle, "_GLK", NULL, &ec->global_lock); =20 @@ -793,7 +793,7 @@ /* use the GL just to be safe */ ec_ecdt->global_lock =3D TRUE; ec_ecdt->uid =3D ecdt_ptr->uid; - + ec_context =3D ec_ecdt; status =3D acpi_get_handle(NULL, ecdt_ptr->ec_id, &ec_ecdt->handle); if (ACPI_FAILURE(status)) { goto error; |
From: Ducrot B. <du...@po...> - 2003-10-28 14:00:59
|
On Tue, Oct 28, 2003 at 09:42:45PM +0800, Li, Shaohua wrote: > > Hi, > Sorry, I made a mistake. should be this one. > Because ECDT unusually has similar info with EC. Changing the context should not cause problem. Same answer. There can be more than one EC. -- Ducrot Bruno -- Which is worse: ignorance or apathy? -- Don't know. Don't care. |
From: M. B. <ser...@ne...> - 2003-10-28 05:24:27
|
Hi Pressing Fn+F7 doesnt seems to be in boot time. For me acpi_ec_gpe_query.patch in 2.4.23-pre8, hangs my laptop when I press lid button, after boot and after login after enter in X, after all things up. =20 On Tue, 2003-10-28 at 02:30, Li, Shaohua wrote: > Hi, > Which time did the panic occur? Boot time? Yes, I made the patch to fix= some boot time errors.=20 > But if boot is ok, the patch should not impact anything. but have a lot of impact. in my case, boots without problems.=20 Please give me more info. >=20 > Thanks, > Shaohua >=20 >=20 > > -----Original Message----- > > From: acp...@li... [mailto:acpi-devel- > > ad...@li...] On Behalf Of Karol Kozimor > > Sent: 2003=E5=B9=B410=E6=9C=8828=E6=97=A5 1:08 > > To: acp...@li... > > Subject: [ACPI] 2.6.0-test9 regression: panic on Fn+F7 hotkey > >=20 > > Hi, > > Pressing Fn+F7 to turn the LCD on / off causes 2.6.0-test9 to panic. > > That's > > AFAIK the single event that causes such a behaviour, other keys work fi= ne. > > Reverting the acpi_ec_gpe_query.patchi[1] fixes the issue and makes the > > kernel > > run fine. > >=20 > > [1]: > > http://www.kernel.org/pub/linux/kernel/people/lenb/acpi/patches/test/2.= 4.2 > > 2/20031017152411-acpi_ec_gpe_query.patch > >=20 > > Best regards, > >=20 > > -- > > Karol 'sziwan' Kozimor > > sz...@he... > >=20 > >=20 > > ------------------------------------------------------- > > This SF.net email is sponsored by: The SF.net Donation Program. > > Do you like what SourceForge.net is doing for the Open > > Source Community? Make a contribution, and help us add new > > features and functionality. Click here: http://sourceforge.net/donate/ > > _______________________________________________ > > Acpi-devel mailing list > > Acp...@li... > > https://lists.sourceforge.net/lists/listinfo/acpi-devel >=20 >=20 > ------------------------------------------------------- > This SF.net email is sponsored by: The SF.net Donation Program. > Do you like what SourceForge.net is doing for the Open > Source Community? Make a contribution, and help us add new > features and functionality. Click here: http://sourceforge.net/donate/ > _______________________________________________ > Acpi-devel mailing list > Acp...@li... > https://lists.sourceforge.net/lists/listinfo/acpi-devel --=20 S=C3=A9rgioMB email: ser...@ne... Who gives me one shell, give me everything. |