From mboxrd@z Thu Jan 1 00:00:00 1970 From: "Jan Beulich" Subject: [PATCH 6/7] x86/ACPI: __init-annotate Date: Thu, 31 Mar 2011 16:57:06 +0100 Message-ID: <4D94C07202000078000396CD@vpn.id2.novell.com> Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="=__Part577B8342.0__=" Return-path: List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Sender: xen-devel-bounces@lists.xensource.com Errors-To: xen-devel-bounces@lists.xensource.com To: "xen-devel@lists.xensource.com" List-Id: xen-devel@lists.xenproject.org This is a MIME message. If you are reading this text, you may want to consider changing to a mail reader or gateway that understands how to properly handle MIME multipart messages. --=__Part577B8342.0__= Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: quoted-printable Content-Disposition: inline xen/arch/x86/acpi/boot.c consists of almost only code/data in .init.*, so move the few bits that aren't into a new file and then use the recently introduced .init.o mechanism to move all the literal strings into .init.rodata. Signed-off-by: Jan Beulich --- a/xen/arch/x86/acpi/Makefile +++ b/xen/arch/x86/acpi/Makefile @@ -1,4 +1,4 @@ subdir-y +=3D cpufreq =20 -obj-y +=3D boot.o power.o suspend.o cpu_idle.o cpuidle_menu.o -obj-bin-y +=3D wakeup_prot.o +obj-y +=3D lib.o power.o suspend.o cpu_idle.o cpuidle_menu.o +obj-bin-y +=3D boot.init.o wakeup_prot.o --- a/xen/arch/x86/acpi/boot.c +++ b/xen/arch/x86/acpi/boot.c @@ -69,58 +69,10 @@ bool_t acpi_skip_timer_override __initda static u64 acpi_lapic_addr __initdata =3D APIC_DEFAULT_PHYS_BASE; #endif =20 -u32 __read_mostly acpi_smi_cmd; -u8 __read_mostly acpi_enable_value; -u8 __read_mostly acpi_disable_value; - -u32 __read_mostly x86_acpiid_to_apicid[MAX_MADT_ENTRIES] =3D - {[0 ... MAX_MADT_ENTRIES - 1] =3D BAD_APICID }; - /* -----------------------------------------------------------------------= --- Boot-time Configuration -----------------------------------------------------------------------= --- */ =20 -/* - * Temporarily use the virtual area starting from FIX_IO_APIC_BASE_END, - * to map the target physical address. The problem is that set_fixmap() - * provides a single page, and it is possible that the page is not - * sufficient. - * By using this area, we can map up to MAX_IO_APICS pages temporarily, - * i.e. until the next __va_range() call. - * - * Important Safety Note: The fixed I/O APIC page numbers are *subtracted= * - * from the fixed base. That's why we start at FIX_IO_APIC_BASE_END and - * count idx down while incrementing the phys address. - */ -char *__acpi_map_table(unsigned long phys, unsigned long size) -{ - unsigned long base, offset, mapped_size; - int idx; - - /* XEN: RAM holes above 1MB are not permanently mapped. */ - if ((phys + size) <=3D (1 * 1024 * 1024)) - return __va(phys); - - offset =3D phys & (PAGE_SIZE - 1); - mapped_size =3D PAGE_SIZE - offset; - set_fixmap(FIX_ACPI_END, phys); - base =3D fix_to_virt(FIX_ACPI_END); - - /* - * Most cases can be covered by the below. - */ - idx =3D FIX_ACPI_END; - while (mapped_size < size) { - if (--idx < FIX_ACPI_BEGIN) - return NULL; /* cannot handle this */ - phys +=3D PAGE_SIZE; - set_fixmap(idx, phys); - mapped_size +=3D PAGE_SIZE; - } - - return ((char *) base + offset); -} - #ifdef CONFIG_X86_LOCAL_APIC static int __init acpi_parse_madt(struct acpi_table_header *table) { @@ -927,17 +879,3 @@ int __init acpi_boot_init(void) =20 return 0; } - -unsigned int acpi_get_processor_id(unsigned int cpu) -{ - unsigned int acpiid, apicid; - - if ((apicid =3D x86_cpu_to_apicid[cpu]) =3D=3D BAD_APICID) - return INVALID_ACPIID; - - for (acpiid =3D 0; acpiid < ARRAY_SIZE(x86_acpiid_to_apicid); = acpiid++) - if (x86_acpiid_to_apicid[acpiid] =3D=3D apicid) - return acpiid; - - return INVALID_ACPIID; -} --- /dev/null +++ b/xen/arch/x86/acpi/lib.c @@ -0,0 +1,83 @@ +/* + * lib.c - Architecture-Specific Low-Level ACPI Support + * + * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~= ~~~ + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 = USA + * + * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~= ~~~ + */ + +#include +#include +#include +#include +#include +#include + +u32 __read_mostly acpi_smi_cmd; +u8 __read_mostly acpi_enable_value; +u8 __read_mostly acpi_disable_value; + +u32 __read_mostly x86_acpiid_to_apicid[MAX_MADT_ENTRIES] =3D + {[0 ... MAX_MADT_ENTRIES - 1] =3D BAD_APICID }; + +/* + * Important Safety Note: The fixed ACPI page numbers are *subtracted* + * from the fixed base. That's why we start at FIX_ACPI_END and + * count idx down while incrementing the phys address. + */ +char *__acpi_map_table(unsigned long phys, unsigned long size) +{ + unsigned long base, offset, mapped_size; + int idx; + + /* XEN: RAM holes above 1MB are not permanently mapped. */ + if ((phys + size) <=3D (1 * 1024 * 1024)) + return __va(phys); + + offset =3D phys & (PAGE_SIZE - 1); + mapped_size =3D PAGE_SIZE - offset; + set_fixmap(FIX_ACPI_END, phys); + base =3D fix_to_virt(FIX_ACPI_END); + + /* + * Most cases can be covered by the below. + */ + idx =3D FIX_ACPI_END; + while (mapped_size < size) { + if (--idx < FIX_ACPI_BEGIN) + return NULL; /* cannot handle this */ + phys +=3D PAGE_SIZE; + set_fixmap(idx, phys); + mapped_size +=3D PAGE_SIZE; + } + + return ((char *) base + offset); +} + +unsigned int acpi_get_processor_id(unsigned int cpu) +{ + unsigned int acpiid, apicid; + + if ((apicid =3D x86_cpu_to_apicid[cpu]) =3D=3D BAD_APICID) + return INVALID_ACPIID; + + for (acpiid =3D 0; acpiid < ARRAY_SIZE(x86_acpiid_to_apicid); = acpiid++) + if (x86_acpiid_to_apicid[acpiid] =3D=3D apicid) + return acpiid; + + return INVALID_ACPIID; +} --- a/xen/drivers/acpi/tables/Makefile +++ b/xen/drivers/acpi/tables/Makefile @@ -1,5 +1,5 @@ -obj-y +=3D tbfadt.o -obj-y +=3D tbinstal.o +obj-bin-y +=3D tbfadt.init.o +obj-bin-y +=3D tbinstal.init.o obj-y +=3D tbutils.o -obj-y +=3D tbxface.o -obj-y +=3D tbxfroot.o +obj-bin-y +=3D tbxface.init.o +obj-bin-y +=3D tbxfroot.init.o --- a/xen/drivers/acpi/tables/tbxface.c +++ b/xen/drivers/acpi/tables/tbxface.c @@ -67,7 +67,8 @@ ACPI_MODULE_NAME("tbxface") acpi_status __init acpi_allocate_root_table(u32 initial_table_count) { =20 - acpi_gbl_root_table_list.size =3D initial_table_count; + acpi_gbl_root_table_list.size =3D initial_table_count - + ACPI_ROOT_TABLE_SIZE_INCREMENT; acpi_gbl_root_table_list.flags =3D ACPI_ROOT_ALLOW_RESIZE; =20 return (acpi_tb_resize_root_table_list()); --- a/xen/drivers/acpi/utilities/Makefile +++ b/xen/drivers/acpi/utilities/Makefile @@ -1,2 +1,2 @@ obj-y +=3D utglobal.o -obj-y +=3D utmisc.o +obj-bin-y +=3D utmisc.init.o --- a/xen/drivers/acpi/utilities/utmisc.c +++ b/xen/drivers/acpi/utilities/utmisc.c @@ -135,7 +135,7 @@ const char *__init acpi_ut_validate_exce *************************************************************************= *****/ =20 void ACPI_INTERNAL_VAR_XFACE __init -acpi_ut_error(char *module_name, u32 line_number, char *format, ...) +acpi_ut_error(const char *module_name, u32 line_number, char *format, = ...) { va_list args; =20 @@ -148,7 +148,7 @@ acpi_ut_error(char *module_name, u32 lin } =20 void ACPI_INTERNAL_VAR_XFACE __init -acpi_ut_warning(char *module_name, u32 line_number, char *format, ...) +acpi_ut_warning(const char *module_name, u32 line_number, char *format, = ...) { va_list args; =20 @@ -162,7 +162,7 @@ acpi_ut_warning(char *module_name, u32 l } =20 void ACPI_INTERNAL_VAR_XFACE __init -acpi_ut_info(char *module_name, u32 line_number, char *format, ...) +acpi_ut_info(const char *module_name, u32 line_number, char *format, ...) { va_list args; =20 --- a/xen/include/acpi/acmacros.h +++ b/xen/include/acpi/acmacros.h @@ -413,7 +413,7 @@ * error messages. The __FILE__ macro is not very useful for this, = because it * often includes the entire pathname to the module */ -#define ACPI_MODULE_NAME(name) static char ACPI_UNUSED_VAR = *_acpi_module_name =3D name; +#define ACPI_MODULE_NAME(name) static const char ACPI_UNUSED_VAR = _acpi_module_name[] =3D name; #else #define ACPI_MODULE_NAME(name) #endif --- a/xen/include/acpi/acutils.h +++ b/xen/include/acpi/acutils.h @@ -121,41 +121,41 @@ void acpi_ut_track_stack_ptr(void); =20 void acpi_ut_trace(u32 line_number, - const char *function_name, char *module_name, u32 component_i= d); + const char *function_name, const char *module_name, u32 = component_id); =20 void acpi_ut_trace_ptr(u32 line_number, const char *function_name, - char *module_name, u32 component_id, void *pointer); + const char *module_name, u32 component_id, void = *pointer); =20 void acpi_ut_trace_u32(u32 line_number, const char *function_name, - char *module_name, u32 component_id, u32 integer); + const char *module_name, u32 component_id, u32 integer); =20 void acpi_ut_trace_str(u32 line_number, const char *function_name, - char *module_name, u32 component_id, char *string); + const char *module_name, u32 component_id, char = *string); =20 void acpi_ut_exit(u32 line_number, - const char *function_name, char *module_name, u32 component_id= ); + const char *function_name, const char *module_name, u32 = component_id); =20 void acpi_ut_status_exit(u32 line_number, const char *function_name, - char *module_name, u32 component_id, acpi_status = status); + const char *module_name, u32 component_id, acpi_status = status); =20 void acpi_ut_value_exit(u32 line_number, const char *function_name, - char *module_name, u32 component_id, acpi_integer = value); + const char *module_name, u32 component_id, acpi_integer = value); =20 void acpi_ut_ptr_exit(u32 line_number, const char *function_name, - char *module_name, u32 component_id, u8 * ptr); + const char *module_name, u32 component_id, u8 * ptr); =20 /* Error and message reporting interfaces */ =20 @@ -163,32 +163,32 @@ void ACPI_INTERNAL_VAR_XFACE acpi_ut_debug_print(u32 requested_debug_level, u32 line_number, const char *function_name, - char *module_name, + const char *module_name, u32 component_id, char *format, ...) ACPI_PRINTF_LIKE(6= ); =20 void ACPI_INTERNAL_VAR_XFACE acpi_ut_debug_print_raw(u32 requested_debug_level, u32 line_number, const char *function_name, - char *module_name, + const char *module_name, u32 component_id, char *format, ...) ACPI_PRINTF_LIKE(6); =20 void ACPI_INTERNAL_VAR_XFACE -acpi_ut_error(char *module_name, +acpi_ut_error(const char *module_name, u32 line_number, char *format, ...) ACPI_PRINTF_LIKE(3); =20 void ACPI_INTERNAL_VAR_XFACE -acpi_ut_exception(char *module_name, +acpi_ut_exception(const char *module_name, u32 line_number, acpi_status status, char *format, ...) ACPI_PRINTF_LIKE(4= ); =20 void ACPI_INTERNAL_VAR_XFACE -acpi_ut_warning(char *module_name, +acpi_ut_warning(const char *module_name, u32 line_number, char *format, ...) ACPI_PRINTF_LIKE(3); =20 void ACPI_INTERNAL_VAR_XFACE -acpi_ut_info(char *module_name, +acpi_ut_info(const char *module_name, u32 line_number, char *format, ...) ACPI_PRINTF_LIKE(3); =20 /* --=__Part577B8342.0__= Content-Type: text/plain; name="acpi-init.patch" Content-Transfer-Encoding: quoted-printable Content-Disposition: attachment; filename="acpi-init.patch" xen/arch/x86/acpi/boot.c consists of almost only code/data in .init.*,=0Aso= move the few bits that aren't into a new file and then use the=0Arecently = introduced .init.o mechanism to move all the literal strings=0Ainto = .init.rodata.=0A=0ASigned-off-by: Jan Beulich =0A=0A--= - a/xen/arch/x86/acpi/Makefile=0A+++ b/xen/arch/x86/acpi/Makefile=0A@@ = -1,4 +1,4 @@=0A subdir-y +=3D cpufreq=0A =0A-obj-y +=3D boot.o power.o = suspend.o cpu_idle.o cpuidle_menu.o=0A-obj-bin-y +=3D wakeup_prot.o=0A+obj-= y +=3D lib.o power.o suspend.o cpu_idle.o cpuidle_menu.o=0A+obj-bin-y +=3D = boot.init.o wakeup_prot.o=0A--- a/xen/arch/x86/acpi/boot.c=0A+++ b/xen/arch= /x86/acpi/boot.c=0A@@ -69,58 +69,10 @@ bool_t acpi_skip_timer_override = __initda=0A static u64 acpi_lapic_addr __initdata =3D APIC_DEFAULT_PHYS_BAS= E;=0A #endif=0A =0A-u32 __read_mostly acpi_smi_cmd;=0A-u8 __read_mostly = acpi_enable_value;=0A-u8 __read_mostly acpi_disable_value;=0A-=0A-u32 = __read_mostly x86_acpiid_to_apicid[MAX_MADT_ENTRIES] =3D=0A- {[0 ... = MAX_MADT_ENTRIES - 1] =3D BAD_APICID };=0A-=0A /* -------------------------= -------------------------------------------------=0A = Boot-time Configuration=0A -------------------------------------= ------------------------------------- */=0A =0A-/*=0A- * Temporarily use = the virtual area starting from FIX_IO_APIC_BASE_END,=0A- * to map the = target physical address. The problem is that set_fixmap()=0A- * provides a = single page, and it is possible that the page is not=0A- * sufficient.=0A- = * By using this area, we can map up to MAX_IO_APICS pages temporarily,=0A- = * i.e. until the next __va_range() call.=0A- *=0A- * Important Safety = Note: The fixed I/O APIC page numbers are *subtracted*=0A- * from the = fixed base. That's why we start at FIX_IO_APIC_BASE_END and=0A- * count = idx down while incrementing the phys address.=0A- */=0A-char *__acpi_map_ta= ble(unsigned long phys, unsigned long size)=0A-{=0A- unsigned long = base, offset, mapped_size;=0A- int idx;=0A-=0A- /* XEN: RAM holes = above 1MB are not permanently mapped. */=0A- if ((phys + size) <=3D (1 = * 1024 * 1024))=0A- return __va(phys);=0A-=0A- offset =3D = phys & (PAGE_SIZE - 1);=0A- mapped_size =3D PAGE_SIZE - offset;=0A- = set_fixmap(FIX_ACPI_END, phys);=0A- base =3D fix_to_virt(FIX_ACPI_END);= =0A-=0A- /*=0A- * Most cases can be covered by the below.=0A- = */=0A- idx =3D FIX_ACPI_END;=0A- while (mapped_size < size) {=0A- = if (--idx < FIX_ACPI_BEGIN)=0A- return NULL; /* = cannot handle this */=0A- phys +=3D PAGE_SIZE;=0A- = set_fixmap(idx, phys);=0A- mapped_size +=3D PAGE_SIZE;=0A- = }=0A-=0A- return ((char *) base + offset);=0A-}=0A-=0A #ifdef = CONFIG_X86_LOCAL_APIC=0A static int __init acpi_parse_madt(struct = acpi_table_header *table)=0A {=0A@@ -927,17 +879,3 @@ int __init acpi_boot_= init(void)=0A =0A return 0;=0A }=0A-=0A-unsigned int acpi_get_process= or_id(unsigned int cpu)=0A-{=0A- unsigned int acpiid, apicid;=0A-=0A= - if ((apicid =3D x86_cpu_to_apicid[cpu]) =3D=3D BAD_APICID)=0A- = return INVALID_ACPIID;=0A-=0A- for (acpiid =3D 0; acpiid < ARRAY_SIZE(x86_= acpiid_to_apicid); acpiid++)=0A- if (x86_acpiid_to_apicid[ac= piid] =3D=3D apicid)=0A- return acpiid;=0A-=0A- = return INVALID_ACPIID;=0A-}=0A--- /dev/null=0A+++ b/xen/arch/x86/acpi/lib.c= =0A@@ -0,0 +1,83 @@=0A+/*=0A+ * lib.c - Architecture-Specific Low-Level = ACPI Support=0A+ *=0A+ * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~= ~~~~~~~~~~~~~~~~~~~~~~~~=0A+ *=0A+ * This program is free software; you = can redistribute it and/or modify=0A+ * it under the terms of the GNU = General Public License as published by=0A+ * the Free Software Foundation;= either version 2 of the License, or=0A+ * (at your option) any later = version.=0A+ *=0A+ * This program is distributed in the hope that it will = be useful,=0A+ * but WITHOUT ANY WARRANTY; without even the implied = warranty of=0A+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. = See the=0A+ * GNU General Public License for more details.=0A+ *=0A+ * = You should have received a copy of the GNU General Public License=0A+ * = along with this program; if not, write to the Free Software=0A+ * = Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 = USA=0A+ *=0A+ * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~= ~~~~~~~~~~~~~~~=0A+ */=0A+=0A+#include =0A+#include = =0A+#include =0A+#include =0A+#include= =0A+#include =0A+=0A+u32 __read_mostly = acpi_smi_cmd;=0A+u8 __read_mostly acpi_enable_value;=0A+u8 __read_mostly = acpi_disable_value;=0A+=0A+u32 __read_mostly x86_acpiid_to_apicid[MAX_MADT_= ENTRIES] =3D=0A+ {[0 ... MAX_MADT_ENTRIES - 1] =3D BAD_APICID };=0A+=0A+= /*=0A+ * Important Safety Note: The fixed ACPI page numbers are *subtracte= d*=0A+ * from the fixed base. That's why we start at FIX_ACPI_END and=0A+ = * count idx down while incrementing the phys address.=0A+ */=0A+char = *__acpi_map_table(unsigned long phys, unsigned long size)=0A+{=0A+ = unsigned long base, offset, mapped_size;=0A+ int idx;=0A+=0A+ /* = XEN: RAM holes above 1MB are not permanently mapped. */=0A+ if ((phys = + size) <=3D (1 * 1024 * 1024))=0A+ return __va(phys);=0A+=0A+ = offset =3D phys & (PAGE_SIZE - 1);=0A+ mapped_size =3D PAGE_SIZE - = offset;=0A+ set_fixmap(FIX_ACPI_END, phys);=0A+ base =3D fix_to_vir= t(FIX_ACPI_END);=0A+=0A+ /*=0A+ * Most cases can be covered by = the below.=0A+ */=0A+ idx =3D FIX_ACPI_END;=0A+ while (mapped_size = < size) {=0A+ if (--idx < FIX_ACPI_BEGIN)=0A+ = return NULL; /* cannot handle this */=0A+ phys +=3D = PAGE_SIZE;=0A+ set_fixmap(idx, phys);=0A+ mapped_size= +=3D PAGE_SIZE;=0A+ }=0A+=0A+ return ((char *) base + offset);=0A= +}=0A+=0A+unsigned int acpi_get_processor_id(unsigned int cpu)=0A+{=0A+ = unsigned int acpiid, apicid;=0A+=0A+ if ((apicid =3D x86_cpu_to_apicid[c= pu]) =3D=3D BAD_APICID)=0A+ return INVALID_ACPIID;=0A+=0A+ = for (acpiid =3D 0; acpiid < ARRAY_SIZE(x86_acpiid_to_apicid); acpiid++)=0A+= if (x86_acpiid_to_apicid[acpiid] =3D=3D apicid)=0A+ = return acpiid;=0A+=0A+ return INVALID_ACPIID;=0A+}=0A--- = a/xen/drivers/acpi/tables/Makefile=0A+++ b/xen/drivers/acpi/tables/Makefile= =0A@@ -1,5 +1,5 @@=0A-obj-y +=3D tbfadt.o=0A-obj-y +=3D tbinstal.o=0A+obj-b= in-y +=3D tbfadt.init.o=0A+obj-bin-y +=3D tbinstal.init.o=0A obj-y +=3D = tbutils.o=0A-obj-y +=3D tbxface.o=0A-obj-y +=3D tbxfroot.o=0A+obj-bin-y = +=3D tbxface.init.o=0A+obj-bin-y +=3D tbxfroot.init.o=0A--- a/xen/drivers/a= cpi/tables/tbxface.c=0A+++ b/xen/drivers/acpi/tables/tbxface.c=0A@@ -67,7 = +67,8 @@ ACPI_MODULE_NAME("tbxface")=0A acpi_status __init acpi_allocate_ro= ot_table(u32 initial_table_count)=0A {=0A =0A- acpi_gbl_root_table_list.si= ze =3D initial_table_count;=0A+ acpi_gbl_root_table_list.size =3D = initial_table_count -=0A+ ACPI_ROOT_T= ABLE_SIZE_INCREMENT;=0A acpi_gbl_root_table_list.flags =3D = ACPI_ROOT_ALLOW_RESIZE;=0A =0A return (acpi_tb_resize_root_table_list());= =0A--- a/xen/drivers/acpi/utilities/Makefile=0A+++ b/xen/drivers/acpi/utili= ties/Makefile=0A@@ -1,2 +1,2 @@=0A obj-y +=3D utglobal.o=0A-obj-y +=3D = utmisc.o=0A+obj-bin-y +=3D utmisc.init.o=0A--- a/xen/drivers/acpi/utilities= /utmisc.c=0A+++ b/xen/drivers/acpi/utilities/utmisc.c=0A@@ -135,7 +135,7 = @@ const char *__init acpi_ut_validate_exce=0A ***************************= ***************************************************/=0A =0A void ACPI_INTER= NAL_VAR_XFACE __init=0A-acpi_ut_error(char *module_name, u32 line_number, = char *format, ...)=0A+acpi_ut_error(const char *module_name, u32 line_numbe= r, char *format, ...)=0A {=0A va_list args;=0A =0A@@ -148,7 +148,7 @@ = acpi_ut_error(char *module_name, u32 lin=0A }=0A =0A void ACPI_INTERNAL_VAR= _XFACE __init=0A-acpi_ut_warning(char *module_name, u32 line_number, char = *format, ...)=0A+acpi_ut_warning(const char *module_name, u32 line_number, = char *format, ...)=0A {=0A va_list args;=0A =0A@@ -162,7 +162,7 @@ = acpi_ut_warning(char *module_name, u32 l=0A }=0A =0A void ACPI_INTERNAL_VAR= _XFACE __init=0A-acpi_ut_info(char *module_name, u32 line_number, char = *format, ...)=0A+acpi_ut_info(const char *module_name, u32 line_number, = char *format, ...)=0A {=0A va_list args;=0A =0A--- a/xen/include/acpi/= acmacros.h=0A+++ b/xen/include/acpi/acmacros.h=0A@@ -413,7 +413,7 @@=0A * = error messages. The __FILE__ macro is not very useful for this, because = it=0A * often includes the entire pathname to the module=0A */=0A-#define= ACPI_MODULE_NAME(name) static char ACPI_UNUSED_VAR *_acpi_module_= name =3D name;=0A+#define ACPI_MODULE_NAME(name) static const = char ACPI_UNUSED_VAR _acpi_module_name[] =3D name;=0A #else=0A #define = ACPI_MODULE_NAME(name)=0A #endif=0A--- a/xen/include/acpi/acutils.h=0A+++ = b/xen/include/acpi/acutils.h=0A@@ -121,41 +121,41 @@ void acpi_ut_track_sta= ck_ptr(void);=0A =0A void=0A acpi_ut_trace(u32 line_number,=0A- = const char *function_name, char *module_name, u32 component_id);=0A+ = const char *function_name, const char *module_name, u32 component_id);= =0A =0A void=0A acpi_ut_trace_ptr(u32 line_number,=0A const = char *function_name,=0A- char *module_name, u32 component_= id, void *pointer);=0A+ const char *module_name, u32 component_id= , void *pointer);=0A =0A void=0A acpi_ut_trace_u32(u32 line_number,=0A = const char *function_name,=0A- char *module_name, u32 = component_id, u32 integer);=0A+ const char *module_name, u32 = component_id, u32 integer);=0A =0A void=0A acpi_ut_trace_str(u32 line_numbe= r,=0A const char *function_name,=0A- char = *module_name, u32 component_id, char *string);=0A+ const = char *module_name, u32 component_id, char *string);=0A =0A void=0A = acpi_ut_exit(u32 line_number,=0A- const char *function_name, = char *module_name, u32 component_id);=0A+ const char *function_n= ame, const char *module_name, u32 component_id);=0A =0A void=0A acpi_ut_sta= tus_exit(u32 line_number,=0A const char *function_name,=0A- = char *module_name, u32 component_id, acpi_status status);=0A+ = const char *module_name, u32 component_id, acpi_status = status);=0A =0A void=0A acpi_ut_value_exit(u32 line_number,=0A = const char *function_name,=0A- char *module_name, u32 = component_id, acpi_integer value);=0A+ const char *module_name,= u32 component_id, acpi_integer value);=0A =0A void=0A acpi_ut_ptr_exit(u32= line_number,=0A const char *function_name,=0A- = char *module_name, u32 component_id, u8 * ptr);=0A+ const = char *module_name, u32 component_id, u8 * ptr);=0A =0A /* Error and = message reporting interfaces */=0A =0A@@ -163,32 +163,32 @@ void ACPI_INTER= NAL_VAR_XFACE=0A acpi_ut_debug_print(u32 requested_debug_level,=0A = u32 line_number,=0A const char *function_name,=0A- = char *module_name,=0A+ const char *module_name= ,=0A u32 component_id, char *format, ...) ACPI_PRINTF_LIKE(6= );=0A =0A void ACPI_INTERNAL_VAR_XFACE=0A acpi_ut_debug_print_raw(u32 = requested_debug_level,=0A u32 line_number,=0A = const char *function_name,=0A- char *module_name,= =0A+ const char *module_name,=0A = u32 component_id,=0A char *format, ...) ACPI_PRINTF_LIKE= (6);=0A =0A void ACPI_INTERNAL_VAR_XFACE=0A-acpi_ut_error(char *module_name= ,=0A+acpi_ut_error(const char *module_name,=0A u32 line_number, = char *format, ...) ACPI_PRINTF_LIKE(3);=0A =0A void ACPI_INTERNAL_VAR_XFACE= =0A-acpi_ut_exception(char *module_name,=0A+acpi_ut_exception(const char = *module_name,=0A u32 line_number,=0A = acpi_status status, char *format, ...) ACPI_PRINTF_LIKE(4);=0A =0A void = ACPI_INTERNAL_VAR_XFACE=0A-acpi_ut_warning(char *module_name,=0A+acpi_ut_wa= rning(const char *module_name,=0A u32 line_number, char = *format, ...) ACPI_PRINTF_LIKE(3);=0A =0A void ACPI_INTERNAL_VAR_XFACE=0A-a= cpi_ut_info(char *module_name,=0A+acpi_ut_info(const char *module_name,=0A = u32 line_number, char *format, ...) ACPI_PRINTF_LIKE(3);=0A = =0A /*=0A --=__Part577B8342.0__= Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Disposition: inline _______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel --=__Part577B8342.0__=--