acpi: don't load acpi_cpufreq if acpi=off
Subsystems (7)
PATCH 1/7 acpi: don't load acpi_cpufreq if acpi=off
--- arch/x86/kernel/cpu/cpufreq/acpi-cpufreq.c | 3 +++ 1 files changed, 3 insertions(+), 0 deletions(-)
arch/x86/kernel/cpu/cpufreq/acpi-cpufreq.c +3 -0
@@ -779,6 +779,9 @@ static int __init acpi_cpufreq_init(void) {int ret; +if (acpi_disabled) +return 0 ; +dprintk ("acpi_cpufreq_init\n" ); ret =acpi_cpufreq_early_init ();
Signature · 1 line
1.5.6
PATCH 2/7 acpi: remove have_arch_parse_srat in acpi.h
32bit don't need that anymore
--- include/linux/acpi.h | 8 -------- 1 files changed, 0 insertions(+), 8 deletions(-)
include/linux/acpi.h +0 -8
@@ -95,18 +95,10 @@ int acpi_parse_mcfg (struct acpi_table_header *header);void acpi_table_print_madt_entry (struct acpi_subtable_header *madt);/* the following four functions are architecture-dependent */ -#ifdef CONFIG_HAVE_ARCH_PARSE_SRAT -#define NR_NODE_MEMBLKS MAX_NUMNODES -#define acpi_numa_slit_init (slit) do {} while (0) -#define acpi_numa_processor_affinity_init (pa) do {} while (0) -#define acpi_numa_memory_affinity_init (ma) do {} while (0) -#define acpi_numa_arch_fixup () do {} while (0) -#else void acpi_numa_slit_init (struct acpi_table_slit *slit);void acpi_numa_processor_affinity_init (struct acpi_srat_cpu_affinity *pa);void acpi_numa_memory_affinity_init (struct acpi_srat_mem_affinity *ma);void acpi_numa_arch_fixup (void ); -#endif #ifdef CONFIG_ACPI_HOTPLUG_CPU /* Arch dependent functions for cpu hotplug support */
Signature · 1 line
1.5.6
Re: [PATCH 2/7] acpi: remove have_arch_parse_srat in acpi.h
Quoted 1 line · Yinghai Lu
32bit don't need that anymore
I don't understand the connection between this commit log and the patch below.
Quoted 28 lines
Signed-off-by Yinghai Lu <[email protected]>--- include/linux/acpi.h | 8 -------- 1 files changed, 0 insertions(+), 8 deletions(-)include/linux/acpi.h +0
-8@@ -95,18 +95,10 @@ int acpi_parse_mcfg (struct acpi_table_header *header);void acpi_table_print_madt_entry (struct acpi_subtable_header *madt);/* the following four functions are architecture-dependent */ -#ifdef CONFIG_HAVE_ARCH_PARSE_SRAT -#define NR_NODE_MEMBLKS MAX_NUMNODES -#define acpi_numa_slit_init (slit) do {} while (0) -#define acpi_numa_processor_affinity_init (pa) do {} while (0) -#define acpi_numa_memory_affinity_init (ma) do {} while (0) -#define acpi_numa_arch_fixup () do {} while (0) -#else void acpi_numa_slit_init (struct acpi_table_slit *slit);void acpi_numa_processor_affinity_init (struct acpi_srat_cpu_affinity *pa);void acpi_numa_memory_affinity_init (struct acpi_srat_mem_affinity *ma);void acpi_numa_arch_fixup (void ); -#endif #ifdef CONFIG_ACPI_HOTPLUG_CPU /* Arch dependent functions for cpu hotplug support */
Re: [PATCH 2/7] acpi: remove have_arch_parse_srat in acpi.h
Quoted 32 lines · Bjorn Helgaas
Quoted 1 line · Yinghai Lu
32bit don't need that anymore
I don't understand the connection between this commit log and the patch below.
Quoted 26 lines
Signed-off-by Yinghai Lu <[email protected]>--- include/linux/acpi.h | 8 -------- 1 files changed, 0 insertions(+), 8 deletions(-)include/linux/acpi.h +0
-8@@ -95,18 +95,10 @@ int acpi_parse_mcfg (struct acpi_table_header *header);void acpi_table_print_madt_entry (struct acpi_subtable_header *madt);/* the following four functions are architecture-dependent */ -#ifdef CONFIG_HAVE_ARCH_PARSE_SRAT -#define NR_NODE_MEMBLKS MAX_NUMNODES -#define acpi_numa_slit_init (slit) do {} while (0) -#define acpi_numa_processor_affinity_init (pa) do {} while (0) -#define acpi_numa_memory_affinity_init (ma) do {} while (0) -#define acpi_numa_arch_fixup () do {} while (0) -#else void acpi_numa_slit_init (struct acpi_table_slit *slit);void acpi_numa_processor_affinity_init (struct acpi_srat_cpu_affinity *pa);void acpi_numa_memory_affinity_init (struct acpi_srat_mem_affinity *ma);void acpi_numa_arch_fixup (void ); -#endif
Quoted 3 lines
include/linux/acpi.h int acpi_parse_mcfg (struct acpi_table_header *header); · line 104
Quoted 2 lines
include/linux/acpi.h +0
-0#ifdef CONFIG_ACPI_HOTPLUG_CPU /* Arch dependent functions for cpu hotplug support */
there was some workaround for 32bit numa (srat processing), and we removed those workaround, and make 32bit more like 64bit.
now HAVE_ARCH_PARSE_SRAT is not defined in any place.
YH
PATCH 3/7 pci: using %pF in quirks.c
In reply to Yinghai Lu--- drivers/pci/quirks.c | 3 +-- 1 files changed, 1 insertions(+), 2 deletions(-)
drivers/pci/quirks.c +1 -2
@@ -1689,8 +1689,7 @@ static void pci_do_fixups(struct pci_dev *dev, struct pci_fixup *f, struct pci_fif ((f->vendor == dev->vendor || f->vendor == (u16 )PCI_ANY_ID ) && (f->device == dev->device || f->device == (u16 )PCI_ANY_ID )) {#ifdef DEBUG -dev_dbg (&dev->dev,"calling " ); -print_fn_descriptor_symbol ("%s\n" , f->hook); +dev_dbg (&dev->dev,"calling %pF\n" , f->hook);#endif f->hook (dev); }
Signature · 1 line
1.5.6
Jesse Barnes
AppliedRe: [PATCH 3/7] pci: using %pF in quirks.c
Quoted 13 lines · Yinghai Lu
Signed-off-by Yinghai Lu <[email protected]>--- drivers/pci/quirks.c | 3 +-- 1 files changed, 1 insertions(+), 2 deletions(-)drivers/pci/quirks.c +0
-0@@ -1689,8 +1689,7 @@ static void pci_do_fixups(struct pci_dev *dev, struct
pci_fixup*f, structpci_fif ((f->vendor==dev->vendor||f->vendor== (u16)PCI_ANY_ID) && (f->device==dev->device||f->device== (u16)PCI_ANY_ID)) { #ifdef DEBUG
drivers/pci/quirks.c static void pci_do_fixups(struct pci_dev *dev, struct pci_fixup *f, struct pci_f · line 1695
Quoted 6 lines
drivers/pci/quirks.c +1
-2-dev_dbg (&dev->dev,"calling " ); -print_fn_descriptor_symbol ("%s\n" , f->hook); +dev_dbg (&dev->dev,"calling %pF\n" , f->hook);#endif f->hook (dev); }
Applied to linux-next, thanks.
Signature · 1 line
Jesse Barnes, Intel Open Source Technology Center
Re: [PATCH 3/7] pci: using %pF in quirks.c
In reply to Yinghai LuQuoted 10 lines · Yinghai Lu
Signed-off-by Yinghai Lu <[email protected]>--- drivers/pci/quirks.c | 3 +-- 1 files changed, 1 insertions(+), 2 deletions(-)drivers/pci/quirks.c +0
-0
drivers/pci/quirks.c static void pci_do_fixups(struct pci_dev *dev, struct pci_fixup *f, struct pci_f · line 1695
Quoted 9 lines
drivers/pci/quirks.c +1
-2@@ -1689,8 +1689,7 @@ static void pci_do_fixups(struct pci_dev *dev, struct pci_fixup *f, struct pci_fif ((f->vendor == dev->vendor || f->vendor == (u16 )PCI_ANY_ID ) && (f->device == dev->device || f->device == (u16 )PCI_ANY_ID )) {#ifdef DEBUG -dev_dbg (&dev->dev,"calling " ); -print_fn_descriptor_symbol ("%s\n" , f->hook); +dev_dbg (&dev->dev,"calling %pF\n" , f->hook);#endif f->hook (dev); }
I posted a similar patch already:
http://lkml.org/lkml/2008/8/22/178
Maybe mine was too complicated because it touched more files at once. Regardless, we need to remove the #ifdef DEBUG because it's no longer necessary.
Re: [PATCH 3/7] pci: using %pF in quirks.c
Quoted 24 lines · Bjorn Helgaas
Quoted 13 lines · Yinghai Lu
Signed-off-by Yinghai Lu <[email protected]>--- drivers/pci/quirks.c | 3 +-- 1 files changed, 1 insertions(+), 2 deletions(-)drivers/pci/quirks.c +0
-0@@ -1689,8 +1689,7 @@ static void pci_do_fixups(struct pci_dev *dev,struct
pci_fixup*f, structpci_fif ((f->vendor==dev->vendor||f->vendor== (u16)PCI_ANY_ID) && (f->device==dev->device||f->device== (u16)PCI_ANY_ID)) { #ifdef DEBUGdrivers/pci/quirks.c static void pci_do_fixups(struct pci_dev *dev, struct pci_fixup *f, struct pci_f · line 1695
Quoted 6 lines
drivers/pci/quirks.c +1
-2-dev_dbg (&dev->dev,"calling " ); -print_fn_descriptor_symbol ("%s\n" , f->hook); +dev_dbg (&dev->dev,"calling %pF\n" , f->hook);#endif f->hook (dev); }I posted a similar patch already:
http://lkml.org/lkml/2008/8/22/178
Quoted 3 lines
Maybe mine was too complicated because it touched more files at once. Regardless, we need to remove the #ifdef DEBUG because it's no longer necessary.
Yeah you sent it to Andrew and it touched several files; maybe I shouldn't have ignored it. :)
Anyway I'll fix up the #ifdefs in my linux-next branch.
Thanks,
Jesse
PATCH 4/7 mm: print out meminit for memmap
In reply to Yinghai Lu--- mm/page_alloc.c | 7 +++---- 1 files changed, 3 insertions(+), 4 deletions(-)
mm/page_alloc.c +3 -4
@@ -3425,8 +3425,8 @@ static void __paginginit free_area_init_core(struct pglist_data *pgdat,PAGE_ALIGN (size *sizeof (struct page )) >>PAGE_SHIFT ;if (realsize >= memmap_pages) { realsize -= memmap_pages; -mminit_dprintk (MMINIT_TRACE ,"memmap_init" , -"%s zone: %lu pages used for memmap\n" , +printk (KERN_DEBUG +" %s zone: %lu pages used for memmap\n" , zone_names[j], memmap_pages); }else printk(KERN_WARNING
@@ -3436,8 +3436,7 @@ static void __paginginit free_area_init_core(struct pglist_data *pgdat,/* Account for reserved pages */ if (j ==0 && realsize > dma_reserve) { realsize -= dma_reserve; -mminit_dprintk (MMINIT_TRACE ,"memmap_init" , -"%s zone: %lu pages reserved\n" , +printk (KERN_DEBUG " %s zone: %lu pages reserved\n" , zone_names[0 ], dma_reserve); }
Signature · 1 line
1.5.6
Re: [PATCH 4/7] mm: print out meminit for memmap
Quoted 4 lines · Yinghai Lu
Signed-off-by Yinghai Lu <[email protected]>--- mm/page_alloc.c | 7 +++---- 1 files changed, 3 insertions(+), 4 deletions(-)
rationale: improve debuggability of memory setup problems.
Ingo
PATCH 5/7 x86: fix typo in irq_desc array
In reply to Yinghai Luwhen SPARSE_IRQ is not used, should still use irq_desc->lock
--- kernel/irq/handle.c | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-)
kernel/irq/handle.c +1 -1
@@ -253,7 +253,7 @@ struct irq_desc irq_desc[NR_IRQS] __cacheline_aligned_in_smp = { .chip = &no_irq_chip, .handle_irq = handle_bad_irq, .depth = 1, - .lock =__SPIN_LOCK_UNLOCKED (sparse_irqs->lock), + .lock =__SPIN_LOCK_UNLOCKED (irq_desc->lock), #ifdef CONFIG_SMP .affinity =CPU_MASK_ALL #endif
Signature · 1 line
1.5.6
Ingo Molnar
AppliedRe: [PATCH 5/7] x86: fix typo in irq_desc array
Quoted 6 lines · Yinghai Lu
when
SPARSE_IRQis not used, should still useirq_desc->lockSigned-off-by Yinghai Lu <[email protected]>--- kernel/irq/handle.c | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-)
applied to tip/irq/sparseirq, thanks Yinghai!
Ingo
PATCH 6/7 x86: irq no should not use hex in /proc/interrupts
In reply to Yinghai Lu--- arch/x86/kernel/irq_32.c | 2 +- arch/x86/kernel/irq_64.c | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-)
arch/x86/kernel/irq_32.c +1 -1
@@ -307,7 +307,7 @@ int show_interrupts(struct seq_file *p, void *v) action = desc->action;if (!action && !any_count) goto skip; -seq_printf (p,"%#x: " ,i); +seq_printf (p,"%3d: " , i);#ifndef CONFIG_SMP seq_printf (p,"%10u " ,kstat_irqs (i));#else
arch/x86/kernel/irq_64.c +1 -1
@@ -112,7 +112,7 @@ int show_interrupts(struct seq_file *p, void *v) action = desc->action;if (!action && !any_count) goto skip; -seq_printf (p,"%#x: " ,i); +seq_printf (p,"%3d: " , i);#ifndef CONFIG_SMP seq_printf (p,"%10u " ,kstat_irqs (i));#else
Signature · 1 line
1.5.6
Ingo Molnar
AppliedRe: [PATCH 6/7] x86: irq no should not use hex in /proc/interrupts
Quoted 5 lines · Yinghai Lu
Signed-off-by Yinghai Lu <[email protected]>--- arch/x86/kernel/irq_32.c | 2 +- arch/x86/kernel/irq_64.c | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-)
applied to tip/irq/sparseirq, thanks Yinghai!
Ingo
PATCH 7/7 x86: print out irq nr for msi/ht
In reply to Yinghai Lu--- arch/x86/kernel/hpet.c | 3 +++ arch/x86/kernel/io_apic.c | 7 +++++++ 2 files changed, 10 insertions(+), 0 deletions(-)
arch/x86/kernel/hpet.c +3 -0
@@ -467,6 +467,9 @@ static int hpet_setup_irq(struct hpet_dev *dev)irq_set_affinity (dev->irq,cpumask_of_cpu (dev->cpu));enable_irq (dev->irq); +printk (KERN_DEBUG "hpet: %s is using irq %#x aka %d for MSI\n" , + dev->name, irq, irq); +return 0 ; }
arch/x86/kernel/io_apic.c +7 -0
@@ -3355,6 +3355,9 @@ static int setup_msi_irq(struct pci_dev *dev, struct msi_desc *desc, int irq)#endif set_irq_chip_and_handler_name (irq, &msi_chip, handle_edge_irq,"edge" ); +printk (KERN_DEBUG "PCI: %s is using irq %#x aka %d for MSI/MSI-X\n" , +pci_name (dev), irq, irq); +return 0 ; }
@@ -3587,6 +3590,7 @@ int arch_setup_hpet_msi(unsigned int irq)hpet_msi_write (irq, &msg);set_irq_chip_and_handler_name (irq, &hpet_msi_type, handle_edge_irq,"edge" ); + return 0; }#endif
@@ -3683,6 +3687,9 @@ int arch_setup_ht_irq(unsigned int irq, struct pci_dev *dev)set_irq_chip_and_handler_name (irq, &ht_irq_chip, handle_edge_irq,"edge" ); + +printk (KERN_DEBUG "PCI: %s is using irq %#x aka %d for HT\n" , +pci_name (dev), irq, irq); }return err; }
Signature · 1 line
1.5.6