From mboxrd@z Thu Jan 1 00:00:00 1970 From: "Zheng, Lv" Subject: RE: 4.9-rc1: [TMP_] ACPI namespace lookup failure, AE_ALREADY_EXISTS Date: Mon, 24 Oct 2016 07:35:39 +0000 Message-ID: <1AE640813FDE7649BE1B193DEA596E886A2579A5@SHSMSX101.ccr.corp.intel.com> References: <1476913001.7633.13.camel@intel.com> <1AE640813FDE7649BE1B193DEA596E886A256F5B@SHSMSX101.ccr.corp.intel.com> <1477216090.7258.9.camel@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga02.intel.com ([134.134.136.20]:8745 "EHLO mga02.intel.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S932354AbcJXHf7 (ORCPT ); Mon, 24 Oct 2016 03:35:59 -0400 In-Reply-To: <1477216090.7258.9.camel@intel.com> Content-Language: en-US Sender: linux-acpi-owner@vger.kernel.org List-Id: linux-acpi@vger.kernel.org To: "Deak, Imre" , "Moore, Robert" , "Wysocki, Rafael J" , "linux-acpi@vger.kernel.org" , "devel@acpica.org" SGksIEltcmUNCg0KPiBGcm9tOiBEZWFrLCBJbXJlDQo+IFN1YmplY3Q6IFJlOiA0LjktcmMxOiBb VE1QX10gQUNQSSBuYW1lc3BhY2UgbG9va3VwIGZhaWx1cmUsIEFFX0FMUkVBRFlfRVhJU1RTDQo+ IA0KPiBPbiBGcmksIDIwMTYtMTAtMjEgYXQgMjI6NDYgKzAzMDAsIFpoZW5nLCBMdiB3cm90ZToN Cj4gPsKgWy4uLl0NCj4gPiBJIGNoZWNrZWQgdGhlIGNvZGUsIG9ubHkgZm91bmQgb25lIGlzc3Vl Lg0KPiA+IEFuZCBJJ20gbm90IHN1cmUgaWYgaXQgaXMgcmVsYXRlZC4NCj4gPiBQbGVhc2Ugc2Vu ZCBtZSB0aGUgZnVsbCBkbWVzZyBjb250YWluaW5nIHRoZSBlcnJvcnMgYW5kIHRoZSBhY3BpZHVt cA0KPiA+IG91dHB1dC4NCj4gDQo+IEkgYXR0YWNoZWQgdGhlIGRtZXNnIGNvbnRhaW5pbmcgdGhl IGVycm9yIGR1cmluZyBib290IChoYXBwZW5lZCAxIG91dA0KPiBvZiAyMDAgYm9vdHMpLCBkdXJp bmcgcmVib290ICgyMCBvdXQgb2YgMjAwIHJlYm9vdHMpLCBkdXJpbmcgc3VzcGVuZA0KPiAoaGFw cGVuZWQgYWxsIHRoZSB0aW1lKS4NCg0KSSBqdXN0IGNoZWNrZWQgdGhlIGVycm9yIGFuZCB0aGUg cmVsYXRlZCBjb2RlLg0KDQoxLiBXaGF0IHRoZSBlcnJvciBpcw0KVGhlIGVycm9yIG1lc3NhZ2Ug aXMgZ2VuZXJhdGVkIGJ5IGFuIG9sZCBtZXRob2QgYXV0by1zZXJpYWwgbWVjaGFuaXNtLg0KSG93 ZXZlciB0aGlzIG1lY2hhbmlzbSBzaG91bGQgaGF2ZSBiZWVuIGRpc2FibGVkIGJ5IG5ldyBhdXRv LXNlcmlhbCBhcHByb2FjaC4NCg0KU2VlOiB0aGUgZXJyb3IgaXMgZ2VuZXJhdGVkIGJ5IHRoZSBj b2RlIGluIGRyaXZlcnMvYWNwaS9hY3BpY2EvcHNwYXJzZS5jOg0KCQkJaWYgKChzdGF0dXMgPT0g QUVfQUxSRUFEWV9FWElTVFMpICYmDQoJCQkgICAgKCEod2Fsa19zdGF0ZS0+bWV0aG9kX2Rlc2Mt Pm1ldGhvZC4NCgkJCSAgICAgICBpbmZvX2ZsYWdzICYgQUNQSV9NRVRIT0RfU0VSSUFMSVpFRCkp KSB7DQoJCQkJLyoNCgkJCQkgKiBNZXRob2QgaXMgbm90IHNlcmlhbGl6ZWQgYW5kIHRyaWVkIHRv IGNyZWF0ZSBhbiBvYmplY3QNCgkJCQkgKiB0d2ljZS4gVGhlIHByb2JhYmxlIGNhdXNlIGlzIHRo YXQgdGhlIG1ldGhvZCBjYW5ub3QNCgkJCQkgKiBoYW5kbGUgcmVlbnRyYW5jeS4gTWFyayBhcyAi cGVuZGluZyBzZXJpYWxpemVkIiBub3csIGFuZA0KCQkJCSAqIHRoZW4gbWFyayAic2VyaWFsaXpl ZCIgd2hlbiB0aGUgbGFzdCB0aHJlYWQgZXhpdHMuDQoJCQkJICovDQoJCQkJd2Fsa19zdGF0ZS0+ bWV0aG9kX2Rlc2MtPm1ldGhvZC5pbmZvX2ZsYWdzIHw9DQoJCQkJICAgIEFDUElfTUVUSE9EX1NF UklBTElaRURfUEVORElORzsNCgkJCX0NCkl0IGNhbiBvbmx5IGhhcHBlbiB3aGVuIEFDUElfTUVU SE9EX1NFUklBTElaRUQgZmxhZyBpcyBub3Qgc2V0Lg0KSG93ZXZlciwgaW4gdGhlIHVwc3RyZWFt IGtlcm5lbCwgdGhpcyBmbGFnIGlzIHNldCBieSB0aGUgY29kZSBpbiBkcml2ZXJzL2FjcGkvYWNw aWNhL2RzaW5pdC5jOg0KCQlpZiAob2JqX2Rlc2MtPm1ldGhvZC5pbmZvX2ZsYWdzICYgQUNQSV9N RVRIT0RfU0VSSUFMSVpFRCkgew0KCQkJaW5mby0+c2VyaWFsX21ldGhvZF9jb3VudCsrOw0KCQkJ YnJlYWs7DQoJCX0NCg0KCQlpZiAoYWNwaV9nYmxfYXV0b19zZXJpYWxpemVfbWV0aG9kcykgew0K DQoJCQkvKiBQYXJzZS9zY2FuIG1ldGhvZCBhbmQgc2VyaWFsaXplIGl0IGlmIG5lY2Vzc2FyeSAq Lw0KDQoJCQlhY3BpX2RzX2F1dG9fc2VyaWFsaXplX21ldGhvZChub2RlLCBvYmpfZGVzYyk7DQoJ CQlpZiAob2JqX2Rlc2MtPm1ldGhvZC4NCgkJCSAgICBpbmZvX2ZsYWdzICYgQUNQSV9NRVRIT0Rf U0VSSUFMSVpFRCkgew0KDQoJCQkJLyogTWV0aG9kIHdhcyBqdXN0IGNvbnZlcnRlZCB0byBTZXJp YWxpemVkICovDQoNCgkJCQlpbmZvLT5zZXJpYWxfbWV0aG9kX2NvdW50Kys7DQoJCQkJaW5mby0+ c2VyaWFsaXplZF9tZXRob2RfY291bnQrKzsNCgkJCQlicmVhazsNCgkJCX0NCgkJfQ0KV2hpY2gg aXMgaW52b2tlZCBieSBhY3BpX2RzX2luaXRpYWxpemVfb2JqZWN0cygpLCBhbHdheXMgaW52b2tl ZCBpbiBhY3BpX25zX2xvYWRfdGFibGUoKS4NClVubGVzcyBhY3BpX2dibF9hdXRvX3NlcmlhbGl6 ZV9tZXRob2RzID0gZmFsc2Ugb3IgYWNwaV9uc19wYXJzZV90YWJsZSgpIGZhaWxlZCwgdGhlIGZs YWcgd29uJ3QgYmUgcmVtYWluZWQgdW5zZXQuDQoNClRoZSBlcnJvciBtZXNzYWdlIGlzIGdlbmVy YXRlZCBieSBvbGQgYXV0by1zZXJpYWxpemUgaW1wbGVtZW50YXRpb24uDQpBbmQgYWNwaV9nYmxf YXV0b19zZXJpYWxpemVfbWV0aG9kcyBpcyBtZWFudCB0byBtdXRlIHRoZSB3YXJuaW5ncy4NCg0K Qm90aCBtZWNoYW5pc20gc2hvdWxkIHdvcmssIHRodXMgdGhpcyBlcnJvciBtZXNzYWdlIGlzIG5v dCBmYXRhbC4NCkl0IGp1c3QgbWFrZXMgQUNQSUNBIHRvIGZhbGwgYmFjayB0byB1c2Ugb2xkIGF1 dG8tc2VyaWFsIG1ldGhvZC4NClNvIHRoZSBpc3N1ZSBpcyBub3QgdXJnZW50Lg0KDQoyLiBXaHkg dGhlIGVycm9yIG1lc3NhZ2UgaXMgY2F1c2VkDQpJIGNvdWxkbid0IHNlZSB3aGV0aGVyIHRoZSBi aXNlY3RlZCBjb21taXQgY2FuIGJlIHJlbGF0ZWQgdG8gdGhpcyBmZWF0dXJlLg0KSXQgc2VlbXMg d2UgbmVlZCB5b3VyIGhlbHAgdG8gZGVidWcgd2hhdCB0aGUgcHJvYmxlbSBpcy4NCg0KRmlyc3Qs IHBsZWFzZSB0cnkgdGhlIG1lbnRpb25lZCBicmFuY2ggaGVyZToNCmh0dHBzOi8vZ2l0aHViLmNv bS96ZXRhbG9nL2xpbnV4DQphY3BpY2EtbG9jayBicmFuY2guDQoNCkFzIEkgbWF5IG5lZWQgdG8g YXNrIGZvciBzZXZlcmFsIGRlYnVnZ2luZyBzdGVwcywgbGV0IG1lIGZpbGUgYSBrZXJuZWwgQnVn emlsbGEgYnVnIGZvciB0aGlzLg0KU28gdGhhdCB3ZSBjYW4gY29tbXVuaWNhdGUgdGhlcmUgaW4g b3JkZXIgbm90IHRvIGJvdGhlciBvdGhlcnM6DQoNCmh0dHBzOi8vYnVnemlsbGEua2VybmVsLm9y Zy9zaG93X2J1Zy5jZ2k/aWQ9MTgwMTExDQoNClRoYW5rcyBhbmQgYmVzdCByZWdhcmRzDQpMdg0K DQoNCj4gDQo+IEkgYXR0YWNoZWQgdGhlIGFjcGlkdW1wIG91dHB1dC4NCj4gDQo+ID4gUGxlYXNl IGdpdmUgdGhlIGZpeCBhIHRyeSAoc2VlIGF0dGFjaG1lbnQpLg0KPiANCj4gVGhlIHBhdGNoIGRp ZG4ndCBhcHBseSBvbiA0LjktcmMxIG9yIExpbnVzJyBtYXN0ZXIsIHBsZWFzZSBzZWUgdGhlDQo+ IGF0dGFjaGVkIHBhdGNoIGZvciBteSBhdHRlbXB0IHRvIHJlc29sdmUgdGhlIGNvbmZsaWN0cy4g V2l0aCB0aGUgcGF0Y2gNCj4gYXBwbGllZCBJIGNvdWxkIHN0aWxsIHRyaWdnZXIgdGhlIHNhbWUg cHJvYmxlbSBkdXJpbmcgc3VzcGVuZC4NCj4gDQo+IC0tSW1yZQ0KPiANCj4gPiBJJ20gc29ycnkg Zm9yIHNlbmRpbmcgZml4IHBhdGNoIHVzaW5nIGF0dGFjaG1lbnQuDQo+ID4gSXQncyBub3QgY29u dmVuaWVudCBmb3IgbWUgZHVlIHRvIG15IGN1cnJlbnQgd29ya2luZyBlbnZpcm9ubWVudC4NCj4g Pg0KPiA+IFRoYW5rcyBhbmQgYmVzdCByZWdhcmRzDQo+ID4gTHYNCg== From mboxrd@z Thu Jan 1 00:00:00 1970 Content-Type: multipart/mixed; boundary="===============4785483429754798363==" MIME-Version: 1.0 From: Zheng, Lv Subject: Re: [Devel] 4.9-rc1: [TMP_] ACPI namespace lookup failure, AE_ALREADY_EXISTS Date: Mon, 24 Oct 2016 07:35:39 +0000 Message-ID: <1AE640813FDE7649BE1B193DEA596E886A2579A5@SHSMSX101.ccr.corp.intel.com> In-Reply-To: 1477216090.7258.9.camel@intel.com List-ID: To: devel@acpica.org --===============4785483429754798363== Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Hi, Imre > From: Deak, Imre > Subject: Re: 4.9-rc1: [TMP_] ACPI namespace lookup failure, AE_ALREADY_EX= ISTS > = > On Fri, 2016-10-21 at 22:46 +0300, Zheng, Lv wrote: > >=C2=A0[...] > > I checked the code, only found one issue. > > And I'm not sure if it is related. > > Please send me the full dmesg containing the errors and the acpidump > > output. > = > I attached the dmesg containing the error during boot (happened 1 out > of 200 boots), during reboot (20 out of 200 reboots), during suspend > (happened all the time). I just checked the error and the related code. 1. What the error is The error message is generated by an old method auto-serial mechanism. However this mechanism should have been disabled by new auto-serial approac= h. See: the error is generated by the code in drivers/acpi/acpica/psparse.c: if ((status =3D=3D AE_ALREADY_EXISTS) && (!(walk_state->method_desc->method. info_flags & ACPI_METHOD_SERIALIZED))) { /* * Method is not serialized and tried to create an object * twice. The probable cause is that the method cannot * handle reentrancy. Mark as "pending serialized" now, and * then mark "serialized" when the last thread exits. */ walk_state->method_desc->method.info_flags |=3D ACPI_METHOD_SERIALIZED_PENDING; } It can only happen when ACPI_METHOD_SERIALIZED flag is not set. However, in the upstream kernel, this flag is set by the code in drivers/ac= pi/acpica/dsinit.c: if (obj_desc->method.info_flags & ACPI_METHOD_SERIALIZED) { info->serial_method_count++; break; } if (acpi_gbl_auto_serialize_methods) { /* Parse/scan method and serialize it if necessary */ acpi_ds_auto_serialize_method(node, obj_desc); if (obj_desc->method. info_flags & ACPI_METHOD_SERIALIZED) { /* Method was just converted to Serialized */ info->serial_method_count++; info->serialized_method_count++; break; } } Which is invoked by acpi_ds_initialize_objects(), always invoked in acpi_ns= _load_table(). Unless acpi_gbl_auto_serialize_methods =3D false or acpi_ns_parse_table() f= ailed, the flag won't be remained unset. The error message is generated by old auto-serialize implementation. And acpi_gbl_auto_serialize_methods is meant to mute the warnings. Both mechanism should work, thus this error message is not fatal. It just makes ACPICA to fall back to use old auto-serial method. So the issue is not urgent. 2. Why the error message is caused I couldn't see whether the bisected commit can be related to this feature. It seems we need your help to debug what the problem is. First, please try the mentioned branch here: https://github.com/zetalog/linux acpica-lock branch. As I may need to ask for several debugging steps, let me file a kernel Bugz= illa bug for this. So that we can communicate there in order not to bother others: https://bugzilla.kernel.org/show_bug.cgi?id=3D180111 Thanks and best regards Lv > = > I attached the acpidump output. > = > > Please give the fix a try (see attachment). > = > The patch didn't apply on 4.9-rc1 or Linus' master, please see the > attached patch for my attempt to resolve the conflicts. With the patch > applied I could still trigger the same problem during suspend. > = > --Imre > = > > I'm sorry for sending fix patch using attachment. > > It's not convenient for me due to my current working environment. > > > > Thanks and best regards > > Lv --===============4785483429754798363==--