* [PATCH v3 1/2] ACPI: Cleanup to convert acpi.no_static_ssdt into a compile-time configurable. [not found] <cover.1396925060.git.lv.zheng@intel.com> @ 2014-05-12 7:49 ` Lv Zheng 2014-05-19 22:49 ` Rafael J. Wysocki 2014-05-12 7:50 ` [PATCH v3 2/2] ACPI: Fix the issue that the DSDT local copy is conflict with the customized DSDT Lv Zheng 1 sibling, 1 reply; 6+ messages in thread From: Lv Zheng @ 2014-05-12 7:49 UTC (permalink / raw) To: Rafael J. Wysocki, Len Brown; +Cc: Lv Zheng, Lv Zheng, linux-kernel, linux-acpi User can specify a DSDT with SSDT embedded, in which case, no_static_ssdt must be enforced during compile-time. If we don't do that and forget to specify acpi.no_static_ssdt as a boot parameter, then: 1. The AML executable will be executed twice, the second execution is running under a changed environment. 2. The namespace object conflicts will result in an AE_ALREADY_EXISTS exception; 3. The namespace objects that are deleted from the original SSDT will be restored by the auto loading of the original SSDT. Note that: 1. The DSDT customization is a compile-time feature, thus the SSDT inclusion indication of the DSDT customization should also be implemented as a compile-time configurable. 2. According to the commit log: Commit: 67effe8fff32f60bdf51cba484766ba6003005bb Subject: ACPI: add "acpi_no_auto_ssdt" bootparam The acpi.no_static_ssdt (originally acpi.no_auto_ssdt) was introduced to be used for this use case. And over a long time, there is no other situation than this requires this boot parameter. This patch thus converts the runtime kernel parameter into the compile-time configuration item. References: https://bugzilla.kernel.org/show_bug.cgi?id=3774 Buglink: https://bugzilla.kernel.org/show_bug.cgi?id=69711 Original-by: Enrico Etxe Arte <goitizena.generoa@gmail.com> Signed-off-by: Lv Zheng <lv.zheng@intel.com> --- Documentation/kernel-parameters.txt | 10 ---------- drivers/acpi/Kconfig | 32 ++++++++++++++++++++++++++------ drivers/acpi/internal.h | 5 +++++ drivers/acpi/osl.c | 8 +++----- drivers/acpi/tables.c | 2 ++ 5 files changed, 36 insertions(+), 21 deletions(-) diff --git a/Documentation/kernel-parameters.txt b/Documentation/kernel-parameters.txt index 831fb1e..ceba0d6 100644 --- a/Documentation/kernel-parameters.txt +++ b/Documentation/kernel-parameters.txt @@ -237,16 +237,6 @@ bytes respectively. Such letter suffixes can also be entirely omitted. This feature is enabled by default. This option allows to turn off the feature. - acpi_no_static_ssdt [HW,ACPI] - Disable installation of static SSDTs at early boot time - By default, SSDTs contained in the RSDT/XSDT will be - installed automatically and they will appear under - /sys/firmware/acpi/tables. - This option turns off this feature. - Note that specifying this option does not affect - dynamic table installation which will install SSDT - tables to /sys/firmware/acpi/tables/dynamic. - acpica_no_return_repair [HW, ACPI] Disable AML predefined validation mechanism This mechanism can repair the evaluation result to make diff --git a/drivers/acpi/Kconfig b/drivers/acpi/Kconfig index c0160bb..51dc3b8 100644 --- a/drivers/acpi/Kconfig +++ b/drivers/acpi/Kconfig @@ -216,22 +216,40 @@ config ACPI_NUMA depends on (X86 || IA64) default y if IA64_GENERIC || IA64_SGI_SN2 -config ACPI_CUSTOM_DSDT_FILE - string "Custom DSDT Table file to include" - default "" +menu "Table override" + +menuconfig ACPI_CUSTOM_DSDT + bool "Customize DSDT" depends on !STANDALONE help This option supports a custom DSDT by linking it into the kernel. See Documentation/acpi/dsdt-override.txt + If unsure, say N. + +if ACPI_CUSTOM_DSDT + +config ACPI_CUSTOM_DSDT_FILE + string "Custom DSDT Table file to include" + default "" + help Enter the full path name to the file which includes the AmlCode declaration. If unsure, don't enter a file name. -config ACPI_CUSTOM_DSDT - bool - default ACPI_CUSTOM_DSDT_FILE != "" +config ACPI_CUSTOM_DSDT_WITH_SSDT + bool "Customize DSDT with static SSDTs included" + depends on ACPI_CUSTOM_DSDT + help + This option allows a DSDT override to optionally be a DSDT+SSDT + override. In which case, Linux should stop loading static SSDTs + from RSDT/XSDT. Otherwise, the load time AML execution of the + SSDTs will be errornously executed twice. + + If unsure, say N. + +endif config ACPI_INITRD_TABLE_OVERRIDE bool "ACPI tables override via initrd" @@ -243,6 +261,8 @@ config ACPI_INITRD_TABLE_OVERRIDE initrd, therefore it's safe to say Y. See Documentation/acpi/initrd_table_override.txt for details +endmenu + config ACPI_DEBUG bool "Debug Statements" default n diff --git a/drivers/acpi/internal.h b/drivers/acpi/internal.h index 9573913..f84ef59 100644 --- a/drivers/acpi/internal.h +++ b/drivers/acpi/internal.h @@ -57,6 +57,11 @@ void acpi_cmos_rtc_init(void); #else static inline void acpi_cmos_rtc_init(void) {} #endif +#ifdef CONFIG_ACPI_CUSTOM_DSDT_WITH_SSDT +void __init acpi_ssdt_customized(void); +#else +static inline void acpi_ssdt_customized(void) {} +#endif extern bool acpi_force_hot_remove; diff --git a/drivers/acpi/osl.c b/drivers/acpi/osl.c index 9aeae41..c6024c2 100644 --- a/drivers/acpi/osl.c +++ b/drivers/acpi/osl.c @@ -1770,15 +1770,13 @@ acpi_status acpi_os_release_object(acpi_cache_t * cache, void *object) } #endif -static int __init acpi_no_static_ssdt_setup(char *s) +#ifdef CONFIG_ACPI_CUSTOM_DSDT_WITH_SSDT +void __init acpi_ssdt_customized(void) { acpi_gbl_disable_ssdt_table_install = TRUE; pr_info("ACPI: static SSDT installation disabled\n"); - - return 0; } - -early_param("acpi_no_static_ssdt", acpi_no_static_ssdt_setup); +#endif static int __init acpi_disable_return_repair(char *s) { diff --git a/drivers/acpi/tables.c b/drivers/acpi/tables.c index 2178229..aaf2177 100644 --- a/drivers/acpi/tables.c +++ b/drivers/acpi/tables.c @@ -184,6 +184,7 @@ void acpi_table_print_madt_entry(struct acpi_subtable_header *header) } } +#include "internal.h" int __init acpi_table_parse_entries(char *id, @@ -333,6 +334,7 @@ int __init acpi_table_init(void) { acpi_status status; + acpi_ssdt_customized(); status = acpi_initialize_tables(initial_tables, ACPI_MAX_TABLES, 0); if (ACPI_FAILURE(status)) return -EINVAL; -- 1.7.10 ^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [PATCH v3 1/2] ACPI: Cleanup to convert acpi.no_static_ssdt into a compile-time configurable. 2014-05-12 7:49 ` [PATCH v3 1/2] ACPI: Cleanup to convert acpi.no_static_ssdt into a compile-time configurable Lv Zheng @ 2014-05-19 22:49 ` Rafael J. Wysocki 2014-05-19 22:52 ` Rafael J. Wysocki 0 siblings, 1 reply; 6+ messages in thread From: Rafael J. Wysocki @ 2014-05-19 22:49 UTC (permalink / raw) To: Lv Zheng; +Cc: Rafael J. Wysocki, Len Brown, Lv Zheng, linux-kernel, linux-acpi On Monday, May 12, 2014 03:49:59 PM Lv Zheng wrote: > User can specify a DSDT with SSDT embedded, in which case, no_static_ssdt > must be enforced during compile-time. If we don't do that and forget to > specify acpi.no_static_ssdt as a boot parameter, then: > 1. The AML executable will be executed twice, the second execution is > running under a changed environment. > 2. The namespace object conflicts will result in an AE_ALREADY_EXISTS > exception; > 3. The namespace objects that are deleted from the original SSDT will be > restored by the auto loading of the original SSDT. > > Note that: > 1. The DSDT customization is a compile-time feature, thus the SSDT > inclusion indication of the DSDT customization should also be > implemented as a compile-time configurable. > 2. According to the commit log: > Commit: 67effe8fff32f60bdf51cba484766ba6003005bb > Subject: ACPI: add "acpi_no_auto_ssdt" bootparam > The acpi.no_static_ssdt (originally acpi.no_auto_ssdt) was introduced to > be used for this use case. And over a long time, there is no other > situation than this requires this boot parameter. > This patch thus converts the runtime kernel parameter into the compile-time > configuration item. > > References: https://bugzilla.kernel.org/show_bug.cgi?id=3774 > Buglink: https://bugzilla.kernel.org/show_bug.cgi?id=69711 > Original-by: Enrico Etxe Arte <goitizena.generoa@gmail.com> > Signed-off-by: Lv Zheng <lv.zheng@intel.com> > --- > Documentation/kernel-parameters.txt | 10 ---------- > drivers/acpi/Kconfig | 32 ++++++++++++++++++++++++++------ > drivers/acpi/internal.h | 5 +++++ > drivers/acpi/osl.c | 8 +++----- > drivers/acpi/tables.c | 2 ++ > 5 files changed, 36 insertions(+), 21 deletions(-) > > diff --git a/Documentation/kernel-parameters.txt b/Documentation/kernel-parameters.txt > index 831fb1e..ceba0d6 100644 > --- a/Documentation/kernel-parameters.txt > +++ b/Documentation/kernel-parameters.txt > @@ -237,16 +237,6 @@ bytes respectively. Such letter suffixes can also be entirely omitted. > This feature is enabled by default. > This option allows to turn off the feature. > > - acpi_no_static_ssdt [HW,ACPI] > - Disable installation of static SSDTs at early boot time > - By default, SSDTs contained in the RSDT/XSDT will be > - installed automatically and they will appear under > - /sys/firmware/acpi/tables. > - This option turns off this feature. > - Note that specifying this option does not affect > - dynamic table installation which will install SSDT > - tables to /sys/firmware/acpi/tables/dynamic. > - > acpica_no_return_repair [HW, ACPI] > Disable AML predefined validation mechanism > This mechanism can repair the evaluation result to make > diff --git a/drivers/acpi/Kconfig b/drivers/acpi/Kconfig > index c0160bb..51dc3b8 100644 > --- a/drivers/acpi/Kconfig > +++ b/drivers/acpi/Kconfig > @@ -216,22 +216,40 @@ config ACPI_NUMA > depends on (X86 || IA64) > default y if IA64_GENERIC || IA64_SGI_SN2 > > -config ACPI_CUSTOM_DSDT_FILE > - string "Custom DSDT Table file to include" > - default "" > +menu "Table override" > + > +menuconfig ACPI_CUSTOM_DSDT I would make this a choice, like the "Kernel compression mode" (in init/Kconfig). Then ACPI_CUSTOM_DSDT_ONLY and ACPI_CUSTOM_DSDT_WITH_SSDT may be the options and they both would select ACPI_CUSTOM_DSDT (otherwise invisible to the user), and -> > + bool "Customize DSDT" > depends on !STANDALONE > help > This option supports a custom DSDT by linking it into the kernel. > See Documentation/acpi/dsdt-override.txt > > + If unsure, say N. > + > +if ACPI_CUSTOM_DSDT > + > +config ACPI_CUSTOM_DSDT_FILE -> this would work for both. Would that make sense? > + string "Custom DSDT Table file to include" > + default "" > + help > Enter the full path name to the file which includes the AmlCode > declaration. > > If unsure, don't enter a file name. > > -config ACPI_CUSTOM_DSDT > - bool > - default ACPI_CUSTOM_DSDT_FILE != "" > +config ACPI_CUSTOM_DSDT_WITH_SSDT > + bool "Customize DSDT with static SSDTs included" > + depends on ACPI_CUSTOM_DSDT > + help > + This option allows a DSDT override to optionally be a DSDT+SSDT > + override. In which case, Linux should stop loading static SSDTs > + from RSDT/XSDT. Otherwise, the load time AML execution of the > + SSDTs will be errornously executed twice. > + > + If unsure, say N. > + > +endif > > config ACPI_INITRD_TABLE_OVERRIDE > bool "ACPI tables override via initrd" > @@ -243,6 +261,8 @@ config ACPI_INITRD_TABLE_OVERRIDE > initrd, therefore it's safe to say Y. > See Documentation/acpi/initrd_table_override.txt for details > > +endmenu > + > config ACPI_DEBUG > bool "Debug Statements" > default n > diff --git a/drivers/acpi/internal.h b/drivers/acpi/internal.h > index 9573913..f84ef59 100644 > --- a/drivers/acpi/internal.h > +++ b/drivers/acpi/internal.h > @@ -57,6 +57,11 @@ void acpi_cmos_rtc_init(void); > #else > static inline void acpi_cmos_rtc_init(void) {} > #endif > +#ifdef CONFIG_ACPI_CUSTOM_DSDT_WITH_SSDT > +void __init acpi_ssdt_customized(void); > +#else > +static inline void acpi_ssdt_customized(void) {} > +#endif > > extern bool acpi_force_hot_remove; > > diff --git a/drivers/acpi/osl.c b/drivers/acpi/osl.c > index 9aeae41..c6024c2 100644 > --- a/drivers/acpi/osl.c > +++ b/drivers/acpi/osl.c > @@ -1770,15 +1770,13 @@ acpi_status acpi_os_release_object(acpi_cache_t * cache, void *object) > } > #endif > > -static int __init acpi_no_static_ssdt_setup(char *s) > +#ifdef CONFIG_ACPI_CUSTOM_DSDT_WITH_SSDT > +void __init acpi_ssdt_customized(void) > { > acpi_gbl_disable_ssdt_table_install = TRUE; > pr_info("ACPI: static SSDT installation disabled\n"); > - > - return 0; > } > - > -early_param("acpi_no_static_ssdt", acpi_no_static_ssdt_setup); > +#endif > > static int __init acpi_disable_return_repair(char *s) > { > diff --git a/drivers/acpi/tables.c b/drivers/acpi/tables.c > index 2178229..aaf2177 100644 > --- a/drivers/acpi/tables.c > +++ b/drivers/acpi/tables.c > @@ -184,6 +184,7 @@ void acpi_table_print_madt_entry(struct acpi_subtable_header *header) > } > } > > +#include "internal.h" > > int __init > acpi_table_parse_entries(char *id, > @@ -333,6 +334,7 @@ int __init acpi_table_init(void) > { > acpi_status status; > > + acpi_ssdt_customized(); > status = acpi_initialize_tables(initial_tables, ACPI_MAX_TABLES, 0); > if (ACPI_FAILURE(status)) > return -EINVAL; > -- I speak only for myself. Rafael J. Wysocki, Intel Open Source Technology Center. ^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [PATCH v3 1/2] ACPI: Cleanup to convert acpi.no_static_ssdt into a compile-time configurable. 2014-05-19 22:49 ` Rafael J. Wysocki @ 2014-05-19 22:52 ` Rafael J. Wysocki 2014-05-20 2:01 ` Zheng, Lv 0 siblings, 1 reply; 6+ messages in thread From: Rafael J. Wysocki @ 2014-05-19 22:52 UTC (permalink / raw) To: Lv Zheng; +Cc: Rafael J. Wysocki, Len Brown, Lv Zheng, linux-kernel, linux-acpi On Tuesday, May 20, 2014 12:49:04 AM Rafael J. Wysocki wrote: > On Monday, May 12, 2014 03:49:59 PM Lv Zheng wrote: > > User can specify a DSDT with SSDT embedded, in which case, no_static_ssdt > > must be enforced during compile-time. If we don't do that and forget to > > specify acpi.no_static_ssdt as a boot parameter, then: > > 1. The AML executable will be executed twice, the second execution is > > running under a changed environment. > > 2. The namespace object conflicts will result in an AE_ALREADY_EXISTS > > exception; > > 3. The namespace objects that are deleted from the original SSDT will be > > restored by the auto loading of the original SSDT. > > > > Note that: > > 1. The DSDT customization is a compile-time feature, thus the SSDT > > inclusion indication of the DSDT customization should also be > > implemented as a compile-time configurable. > > 2. According to the commit log: > > Commit: 67effe8fff32f60bdf51cba484766ba6003005bb > > Subject: ACPI: add "acpi_no_auto_ssdt" bootparam > > The acpi.no_static_ssdt (originally acpi.no_auto_ssdt) was introduced to > > be used for this use case. And over a long time, there is no other > > situation than this requires this boot parameter. > > This patch thus converts the runtime kernel parameter into the compile-time > > configuration item. > > > > References: https://bugzilla.kernel.org/show_bug.cgi?id=3774 > > Buglink: https://bugzilla.kernel.org/show_bug.cgi?id=69711 > > Original-by: Enrico Etxe Arte <goitizena.generoa@gmail.com> > > Signed-off-by: Lv Zheng <lv.zheng@intel.com> > > --- > > Documentation/kernel-parameters.txt | 10 ---------- > > drivers/acpi/Kconfig | 32 ++++++++++++++++++++++++++------ > > drivers/acpi/internal.h | 5 +++++ > > drivers/acpi/osl.c | 8 +++----- > > drivers/acpi/tables.c | 2 ++ > > 5 files changed, 36 insertions(+), 21 deletions(-) > > > > diff --git a/Documentation/kernel-parameters.txt b/Documentation/kernel-parameters.txt > > index 831fb1e..ceba0d6 100644 > > --- a/Documentation/kernel-parameters.txt > > +++ b/Documentation/kernel-parameters.txt > > @@ -237,16 +237,6 @@ bytes respectively. Such letter suffixes can also be entirely omitted. > > This feature is enabled by default. > > This option allows to turn off the feature. > > > > - acpi_no_static_ssdt [HW,ACPI] > > - Disable installation of static SSDTs at early boot time > > - By default, SSDTs contained in the RSDT/XSDT will be > > - installed automatically and they will appear under > > - /sys/firmware/acpi/tables. > > - This option turns off this feature. > > - Note that specifying this option does not affect > > - dynamic table installation which will install SSDT > > - tables to /sys/firmware/acpi/tables/dynamic. > > - > > acpica_no_return_repair [HW, ACPI] > > Disable AML predefined validation mechanism > > This mechanism can repair the evaluation result to make > > diff --git a/drivers/acpi/Kconfig b/drivers/acpi/Kconfig > > index c0160bb..51dc3b8 100644 > > --- a/drivers/acpi/Kconfig > > +++ b/drivers/acpi/Kconfig > > @@ -216,22 +216,40 @@ config ACPI_NUMA > > depends on (X86 || IA64) > > default y if IA64_GENERIC || IA64_SGI_SN2 > > > > -config ACPI_CUSTOM_DSDT_FILE > > - string "Custom DSDT Table file to include" > > - default "" > > +menu "Table override" > > + > > +menuconfig ACPI_CUSTOM_DSDT > > I would make this a choice, like the "Kernel compression mode" (in init/Kconfig). > > Then ACPI_CUSTOM_DSDT_ONLY and ACPI_CUSTOM_DSDT_WITH_SSDT may be the options > and they both would select ACPI_CUSTOM_DSDT (otherwise invisible to the user), With the third (and default) option NO_ACPI_CUSTOM_DSDT that would not select ACPI_CUSTOM_DSDT. Thanks! -- I speak only for myself. Rafael J. Wysocki, Intel Open Source Technology Center. ^ permalink raw reply [flat|nested] 6+ messages in thread
* RE: [PATCH v3 1/2] ACPI: Cleanup to convert acpi.no_static_ssdt into a compile-time configurable. 2014-05-19 22:52 ` Rafael J. Wysocki @ 2014-05-20 2:01 ` Zheng, Lv 0 siblings, 0 replies; 6+ messages in thread From: Zheng, Lv @ 2014-05-20 2:01 UTC (permalink / raw) To: Rafael J. Wysocki Cc: Wysocki, Rafael J, Brown, Len, Lv Zheng, linux-kernel, linux-acpi [-- Warning: decoded text below may be mangled, UTF-8 assumed --] [-- Attachment #1: Type: text/plain; charset="utf-8", Size: 4463 bytes --] Hi, Rafael > From: Rafael J. Wysocki [mailto:rjw@rjwysocki.net] > Sent: Tuesday, May 20, 2014 6:52 AM > Subject: Re: [PATCH v3 1/2] ACPI: Cleanup to convert acpi.no_static_ssdt into a compile-time configurable. > > On Tuesday, May 20, 2014 12:49:04 AM Rafael J. Wysocki wrote: > > On Monday, May 12, 2014 03:49:59 PM Lv Zheng wrote: > > > User can specify a DSDT with SSDT embedded, in which case, no_static_ssdt > > > must be enforced during compile-time. If we don't do that and forget to > > > specify acpi.no_static_ssdt as a boot parameter, then: > > > 1. The AML executable will be executed twice, the second execution is > > > running under a changed environment. > > > 2. The namespace object conflicts will result in an AE_ALREADY_EXISTS > > > exception; > > > 3. The namespace objects that are deleted from the original SSDT will be > > > restored by the auto loading of the original SSDT. > > > > > > Note that: > > > 1. The DSDT customization is a compile-time feature, thus the SSDT > > > inclusion indication of the DSDT customization should also be > > > implemented as a compile-time configurable. > > > 2. According to the commit log: > > > Commit: 67effe8fff32f60bdf51cba484766ba6003005bb > > > Subject: ACPI: add "acpi_no_auto_ssdt" bootparam > > > The acpi.no_static_ssdt (originally acpi.no_auto_ssdt) was introduced to > > > be used for this use case. And over a long time, there is no other > > > situation than this requires this boot parameter. > > > This patch thus converts the runtime kernel parameter into the compile-time > > > configuration item. > > > > > > References: https://bugzilla.kernel.org/show_bug.cgi?id=3774 > > > Buglink: https://bugzilla.kernel.org/show_bug.cgi?id=69711 > > > Original-by: Enrico Etxe Arte <goitizena.generoa@gmail.com> > > > Signed-off-by: Lv Zheng <lv.zheng@intel.com> > > > --- > > > Documentation/kernel-parameters.txt | 10 ---------- > > > drivers/acpi/Kconfig | 32 ++++++++++++++++++++++++++------ > > > drivers/acpi/internal.h | 5 +++++ > > > drivers/acpi/osl.c | 8 +++----- > > > drivers/acpi/tables.c | 2 ++ > > > 5 files changed, 36 insertions(+), 21 deletions(-) > > > > > > diff --git a/Documentation/kernel-parameters.txt b/Documentation/kernel-parameters.txt > > > index 831fb1e..ceba0d6 100644 > > > --- a/Documentation/kernel-parameters.txt > > > +++ b/Documentation/kernel-parameters.txt > > > @@ -237,16 +237,6 @@ bytes respectively. Such letter suffixes can also be entirely omitted. > > > This feature is enabled by default. > > > This option allows to turn off the feature. > > > > > > - acpi_no_static_ssdt [HW,ACPI] > > > - Disable installation of static SSDTs at early boot time > > > - By default, SSDTs contained in the RSDT/XSDT will be > > > - installed automatically and they will appear under > > > - /sys/firmware/acpi/tables. > > > - This option turns off this feature. > > > - Note that specifying this option does not affect > > > - dynamic table installation which will install SSDT > > > - tables to /sys/firmware/acpi/tables/dynamic. > > > - > > > acpica_no_return_repair [HW, ACPI] > > > Disable AML predefined validation mechanism > > > This mechanism can repair the evaluation result to make > > > diff --git a/drivers/acpi/Kconfig b/drivers/acpi/Kconfig > > > index c0160bb..51dc3b8 100644 > > > --- a/drivers/acpi/Kconfig > > > +++ b/drivers/acpi/Kconfig > > > @@ -216,22 +216,40 @@ config ACPI_NUMA > > > depends on (X86 || IA64) > > > default y if IA64_GENERIC || IA64_SGI_SN2 > > > > > > -config ACPI_CUSTOM_DSDT_FILE > > > - string "Custom DSDT Table file to include" > > > - default "" > > > +menu "Table override" > > > + > > > +menuconfig ACPI_CUSTOM_DSDT > > > > I would make this a choice, like the "Kernel compression mode" (in init/Kconfig). > > > > Then ACPI_CUSTOM_DSDT_ONLY and ACPI_CUSTOM_DSDT_WITH_SSDT may be the options > > and they both would select ACPI_CUSTOM_DSDT (otherwise invisible to the user), > > With the third (and default) option NO_ACPI_CUSTOM_DSDT that would not > select ACPI_CUSTOM_DSDT. OK. Thanks -Lv > > Thanks! > > -- > I speak only for myself. > Rafael J. Wysocki, Intel Open Source Technology Center. ÿôèº{.nÇ+·®+%Ëÿ±éݶ\x17¥wÿº{.nÇ+·¥{±þG«éÿ{ayº\x1dÊÚë,j\a¢f£¢·hïêÿêçz_è®\x03(éÝ¢j"ú\x1a¶^[m§ÿÿ¾\a«þG«éÿ¢¸?¨èÚ&£ø§~á¶iOæ¬z·vØ^\x14\x04\x1a¶^[m§ÿÿÃ\fÿ¶ìÿ¢¸?I¥ ^ permalink raw reply [flat|nested] 6+ messages in thread
* [PATCH v3 2/2] ACPI: Fix the issue that the DSDT local copy is conflict with the customized DSDT. [not found] <cover.1396925060.git.lv.zheng@intel.com> 2014-05-12 7:49 ` [PATCH v3 1/2] ACPI: Cleanup to convert acpi.no_static_ssdt into a compile-time configurable Lv Zheng @ 2014-05-12 7:50 ` Lv Zheng 2014-05-19 22:34 ` Rafael J. Wysocki 1 sibling, 1 reply; 6+ messages in thread From: Lv Zheng @ 2014-05-12 7:50 UTC (permalink / raw) To: Rafael J. Wysocki, Len Brown Cc: Lv Zheng, Lv Zheng, linux-kernel, linux-acpi, Enrico Etxe Arte This patch fixes the following issue: If DSDT is customized, no local DSDT copy is needed. Buglink: https://bugzilla.kernel.org/show_bug.cgi?id=69711 Signed-off-by: Lv Zheng <lv.zheng@intel.com> Signed-off-by: Enrico Etxe Arte <goitizena.generoa@gmail.com> Cc: <stable@vger.kernel.org> # 2.6.35.x: aa2110cb: ACPI: add boot option acpi=copy_dsdt to fix corrupt DSDT --- drivers/acpi/bus.c | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/drivers/acpi/bus.c b/drivers/acpi/bus.c index 610261a..cfd2318 100644 --- a/drivers/acpi/bus.c +++ b/drivers/acpi/bus.c @@ -52,6 +52,12 @@ struct proc_dir_entry *acpi_root_dir; EXPORT_SYMBOL(acpi_root_dir); #ifdef CONFIG_X86 +#ifdef CONFIG_ACPI_CUSTOM_DSDT +static inline int set_copy_dsdt(const struct dmi_system_id *id) +{ + return 0; +} +#else static int set_copy_dsdt(const struct dmi_system_id *id) { printk(KERN_NOTICE "%s detected - " @@ -59,6 +65,7 @@ static int set_copy_dsdt(const struct dmi_system_id *id) acpi_gbl_copy_dsdt_locally = 1; return 0; } +#endif static struct dmi_system_id dsdt_dmi_table[] __initdata = { /* -- 1.7.10 ^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [PATCH v3 2/2] ACPI: Fix the issue that the DSDT local copy is conflict with the customized DSDT. 2014-05-12 7:50 ` [PATCH v3 2/2] ACPI: Fix the issue that the DSDT local copy is conflict with the customized DSDT Lv Zheng @ 2014-05-19 22:34 ` Rafael J. Wysocki 0 siblings, 0 replies; 6+ messages in thread From: Rafael J. Wysocki @ 2014-05-19 22:34 UTC (permalink / raw) To: Lv Zheng Cc: Rafael J. Wysocki, Len Brown, Lv Zheng, linux-kernel, linux-acpi, Enrico Etxe Arte On Monday, May 12, 2014 03:50:16 PM Lv Zheng wrote: > This patch fixes the following issue: > If DSDT is customized, no local DSDT copy is needed. > > Buglink: https://bugzilla.kernel.org/show_bug.cgi?id=69711 > Signed-off-by: Lv Zheng <lv.zheng@intel.com> > Signed-off-by: Enrico Etxe Arte <goitizena.generoa@gmail.com> > Cc: <stable@vger.kernel.org> # 2.6.35.x: aa2110cb: ACPI: add boot option acpi=copy_dsdt to fix corrupt DSDT Queued up for 3.16, thanks! > --- > drivers/acpi/bus.c | 7 +++++++ > 1 file changed, 7 insertions(+) > > diff --git a/drivers/acpi/bus.c b/drivers/acpi/bus.c > index 610261a..cfd2318 100644 > --- a/drivers/acpi/bus.c > +++ b/drivers/acpi/bus.c > @@ -52,6 +52,12 @@ struct proc_dir_entry *acpi_root_dir; > EXPORT_SYMBOL(acpi_root_dir); > > #ifdef CONFIG_X86 > +#ifdef CONFIG_ACPI_CUSTOM_DSDT > +static inline int set_copy_dsdt(const struct dmi_system_id *id) > +{ > + return 0; > +} > +#else > static int set_copy_dsdt(const struct dmi_system_id *id) > { > printk(KERN_NOTICE "%s detected - " > @@ -59,6 +65,7 @@ static int set_copy_dsdt(const struct dmi_system_id *id) > acpi_gbl_copy_dsdt_locally = 1; > return 0; > } > +#endif > > static struct dmi_system_id dsdt_dmi_table[] __initdata = { > /* > -- I speak only for myself. Rafael J. Wysocki, Intel Open Source Technology Center. ^ permalink raw reply [flat|nested] 6+ messages in thread
end of thread, other threads:[~2014-05-20 2:01 UTC | newest]
Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
[not found] <cover.1396925060.git.lv.zheng@intel.com>
2014-05-12 7:49 ` [PATCH v3 1/2] ACPI: Cleanup to convert acpi.no_static_ssdt into a compile-time configurable Lv Zheng
2014-05-19 22:49 ` Rafael J. Wysocki
2014-05-19 22:52 ` Rafael J. Wysocki
2014-05-20 2:01 ` Zheng, Lv
2014-05-12 7:50 ` [PATCH v3 2/2] ACPI: Fix the issue that the DSDT local copy is conflict with the customized DSDT Lv Zheng
2014-05-19 22:34 ` Rafael J. Wysocki
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®