diff options
| author | Linus Torvalds <torvalds@linux-foundation.org> | 2008-07-14 16:43:24 -0400 |
|---|---|---|
| committer | Linus Torvalds <torvalds@linux-foundation.org> | 2008-07-14 16:43:24 -0400 |
| commit | a3da5bf84a97d48cfaf66c6842470fc403da5121 (patch) | |
| tree | cdf66c0cff8c61eedd60601fc9dffdd1ed39b880 /include/linux | |
| parent | 3b23e665b68387f5ee7b21f7b75ceea4d9acae4a (diff) | |
| parent | d59fdcf2ac501de99c3dfb452af5e254d4342886 (diff) | |
Merge branch 'x86/for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip
* 'x86/for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: (821 commits)
x86: make 64bit hpet_set_mapping to use ioremap too, v2
x86: get x86_phys_bits early
x86: max_low_pfn_mapped fix #4
x86: change _node_to_cpumask_ptr to return const ptr
x86: I/O APIC: remove an IRQ2-mask hack
x86: fix numaq_tsc_disable calling
x86, e820: remove end_user_pfn
x86: max_low_pfn_mapped fix, #3
x86: max_low_pfn_mapped fix, #2
x86: max_low_pfn_mapped fix, #1
x86_64: fix delayed signals
x86: remove conflicting nx6325 and nx6125 quirks
x86: Recover timer_ack lost in the merge of the NMI watchdog
x86: I/O APIC: Never configure IRQ2
x86: L-APIC: Always fully configure IRQ0
x86: L-APIC: Set IRQ0 as edge-triggered
x86: merge dwarf2 headers
x86: use AS_CFI instead of UNWIND_INFO
x86: use ignore macro instead of hash comment
x86: use matching CFI_ENDPROC
...
Diffstat (limited to 'include/linux')
| -rw-r--r-- | include/linux/acpi.h | 6 | ||||
| -rw-r--r-- | include/linux/bootmem.h | 2 | ||||
| -rw-r--r-- | include/linux/console.h | 2 | ||||
| -rw-r--r-- | include/linux/delay.h | 1 | ||||
| -rw-r--r-- | include/linux/efi.h | 4 | ||||
| -rw-r--r-- | include/linux/firmware-map.h | 74 | ||||
| -rw-r--r-- | include/linux/kernel_stat.h | 2 | ||||
| -rw-r--r-- | include/linux/linkage.h | 4 | ||||
| -rw-r--r-- | include/linux/mm.h | 7 | ||||
| -rw-r--r-- | include/linux/page-flags.h | 1 | ||||
| -rw-r--r-- | include/linux/pageblock-flags.h | 8 | ||||
| -rw-r--r-- | include/linux/resume-trace.h | 2 |
12 files changed, 100 insertions, 13 deletions
diff --git a/include/linux/acpi.h b/include/linux/acpi.h index 41f7ce7edd7a..0601075d09a1 100644 --- a/include/linux/acpi.h +++ b/include/linux/acpi.h | |||
| @@ -82,6 +82,7 @@ char * __acpi_map_table (unsigned long phys_addr, unsigned long size); | |||
| 82 | int early_acpi_boot_init(void); | 82 | int early_acpi_boot_init(void); |
| 83 | int acpi_boot_init (void); | 83 | int acpi_boot_init (void); |
| 84 | int acpi_boot_table_init (void); | 84 | int acpi_boot_table_init (void); |
| 85 | int acpi_mps_check (void); | ||
| 85 | int acpi_numa_init (void); | 86 | int acpi_numa_init (void); |
| 86 | 87 | ||
| 87 | int acpi_table_init (void); | 88 | int acpi_table_init (void); |
| @@ -250,6 +251,11 @@ static inline int acpi_boot_table_init(void) | |||
| 250 | return 0; | 251 | return 0; |
| 251 | } | 252 | } |
| 252 | 253 | ||
| 254 | static inline int acpi_mps_check(void) | ||
| 255 | { | ||
| 256 | return 0; | ||
| 257 | } | ||
| 258 | |||
| 253 | static inline int acpi_check_resource_conflict(struct resource *res) | 259 | static inline int acpi_check_resource_conflict(struct resource *res) |
| 254 | { | 260 | { |
| 255 | return 0; | 261 | return 0; |
diff --git a/include/linux/bootmem.h b/include/linux/bootmem.h index 686895bacd9d..a1d9b79078ea 100644 --- a/include/linux/bootmem.h +++ b/include/linux/bootmem.h | |||
| @@ -84,6 +84,8 @@ extern int reserve_bootmem(unsigned long addr, unsigned long size, int flags); | |||
| 84 | __alloc_bootmem_low(x, PAGE_SIZE, 0) | 84 | __alloc_bootmem_low(x, PAGE_SIZE, 0) |
| 85 | #endif /* !CONFIG_HAVE_ARCH_BOOTMEM_NODE */ | 85 | #endif /* !CONFIG_HAVE_ARCH_BOOTMEM_NODE */ |
| 86 | 86 | ||
| 87 | extern int reserve_bootmem_generic(unsigned long addr, unsigned long size, | ||
| 88 | int flags); | ||
| 87 | extern unsigned long free_all_bootmem(void); | 89 | extern unsigned long free_all_bootmem(void); |
| 88 | extern unsigned long free_all_bootmem_node(pg_data_t *pgdat); | 90 | extern unsigned long free_all_bootmem_node(pg_data_t *pgdat); |
| 89 | extern void *__alloc_bootmem_node(pg_data_t *pgdat, | 91 | extern void *__alloc_bootmem_node(pg_data_t *pgdat, |
diff --git a/include/linux/console.h b/include/linux/console.h index a4f27fbdf549..248e6e3b9b73 100644 --- a/include/linux/console.h +++ b/include/linux/console.h | |||
| @@ -108,6 +108,8 @@ struct console { | |||
| 108 | struct console *next; | 108 | struct console *next; |
| 109 | }; | 109 | }; |
| 110 | 110 | ||
| 111 | extern int console_set_on_cmdline; | ||
| 112 | |||
| 111 | extern int add_preferred_console(char *name, int idx, char *options); | 113 | extern int add_preferred_console(char *name, int idx, char *options); |
| 112 | extern int update_console_cmdline(char *name, int idx, char *name_new, int idx_new, char *options); | 114 | extern int update_console_cmdline(char *name, int idx, char *name_new, int idx_new, char *options); |
| 113 | extern void register_console(struct console *); | 115 | extern void register_console(struct console *); |
diff --git a/include/linux/delay.h b/include/linux/delay.h index 54552d21296e..fd832c6d419e 100644 --- a/include/linux/delay.h +++ b/include/linux/delay.h | |||
| @@ -41,6 +41,7 @@ static inline void ndelay(unsigned long x) | |||
| 41 | #define ndelay(x) ndelay(x) | 41 | #define ndelay(x) ndelay(x) |
| 42 | #endif | 42 | #endif |
| 43 | 43 | ||
| 44 | extern unsigned long lpj_fine; | ||
| 44 | void calibrate_delay(void); | 45 | void calibrate_delay(void); |
| 45 | void msleep(unsigned int msecs); | 46 | void msleep(unsigned int msecs); |
| 46 | unsigned long msleep_interruptible(unsigned int msecs); | 47 | unsigned long msleep_interruptible(unsigned int msecs); |
diff --git a/include/linux/efi.h b/include/linux/efi.h index a5f359a7ad0e..807373d467f7 100644 --- a/include/linux/efi.h +++ b/include/linux/efi.h | |||
| @@ -287,7 +287,6 @@ efi_guid_unparse(efi_guid_t *guid, char *out) | |||
| 287 | extern void efi_init (void); | 287 | extern void efi_init (void); |
| 288 | extern void *efi_get_pal_addr (void); | 288 | extern void *efi_get_pal_addr (void); |
| 289 | extern void efi_map_pal_code (void); | 289 | extern void efi_map_pal_code (void); |
| 290 | extern void efi_map_memmap(void); | ||
| 291 | extern void efi_memmap_walk (efi_freemem_callback_t callback, void *arg); | 290 | extern void efi_memmap_walk (efi_freemem_callback_t callback, void *arg); |
| 292 | extern void efi_gettimeofday (struct timespec *ts); | 291 | extern void efi_gettimeofday (struct timespec *ts); |
| 293 | extern void efi_enter_virtual_mode (void); /* switch EFI to virtual mode, if possible */ | 292 | extern void efi_enter_virtual_mode (void); /* switch EFI to virtual mode, if possible */ |
| @@ -295,14 +294,11 @@ extern u64 efi_get_iobase (void); | |||
| 295 | extern u32 efi_mem_type (unsigned long phys_addr); | 294 | extern u32 efi_mem_type (unsigned long phys_addr); |
| 296 | extern u64 efi_mem_attributes (unsigned long phys_addr); | 295 | extern u64 efi_mem_attributes (unsigned long phys_addr); |
| 297 | extern u64 efi_mem_attribute (unsigned long phys_addr, unsigned long size); | 296 | extern u64 efi_mem_attribute (unsigned long phys_addr, unsigned long size); |
| 298 | extern int efi_mem_attribute_range (unsigned long phys_addr, unsigned long size, | ||
| 299 | u64 attr); | ||
| 300 | extern int __init efi_uart_console_only (void); | 297 | extern int __init efi_uart_console_only (void); |
| 301 | extern void efi_initialize_iomem_resources(struct resource *code_resource, | 298 | extern void efi_initialize_iomem_resources(struct resource *code_resource, |
| 302 | struct resource *data_resource, struct resource *bss_resource); | 299 | struct resource *data_resource, struct resource *bss_resource); |
| 303 | extern unsigned long efi_get_time(void); | 300 | extern unsigned long efi_get_time(void); |
| 304 | extern int efi_set_rtc_mmss(unsigned long nowtime); | 301 | extern int efi_set_rtc_mmss(unsigned long nowtime); |
| 305 | extern int is_available_memory(efi_memory_desc_t * md); | ||
| 306 | extern struct efi_memory_map memmap; | 302 | extern struct efi_memory_map memmap; |
| 307 | 303 | ||
| 308 | /** | 304 | /** |
diff --git a/include/linux/firmware-map.h b/include/linux/firmware-map.h new file mode 100644 index 000000000000..acbdbcc16051 --- /dev/null +++ b/include/linux/firmware-map.h | |||
| @@ -0,0 +1,74 @@ | |||
| 1 | /* | ||
| 2 | * include/linux/firmware-map.h: | ||
| 3 | * Copyright (C) 2008 SUSE LINUX Products GmbH | ||
| 4 | * by Bernhard Walle <bwalle@suse.de> | ||
| 5 | * | ||
| 6 | * This program is free software; you can redistribute it and/or modify | ||
| 7 | * it under the terms of the GNU General Public License v2.0 as published by | ||
| 8 | * the Free Software Foundation | ||
| 9 | * | ||
| 10 | * This program is distributed in the hope that it will be useful, | ||
| 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
| 13 | * GNU General Public License for more details. | ||
| 14 | * | ||
| 15 | */ | ||
| 16 | #ifndef _LINUX_FIRMWARE_MAP_H | ||
| 17 | #define _LINUX_FIRMWARE_MAP_H | ||
| 18 | |||
| 19 | #include <linux/list.h> | ||
| 20 | #include <linux/kobject.h> | ||
| 21 | |||
| 22 | /* | ||
| 23 | * provide a dummy interface if CONFIG_FIRMWARE_MEMMAP is disabled | ||
| 24 | */ | ||
| 25 | #ifdef CONFIG_FIRMWARE_MEMMAP | ||
| 26 | |||
| 27 | /** | ||
| 28 | * Adds a firmware mapping entry. This function uses kmalloc() for memory | ||
| 29 | * allocation. Use firmware_map_add_early() if you want to use the bootmem | ||
| 30 | * allocator. | ||
| 31 | * | ||
| 32 | * That function must be called before late_initcall. | ||
| 33 | * | ||
| 34 | * @start: Start of the memory range. | ||
| 35 | * @end: End of the memory range (inclusive). | ||
| 36 | * @type: Type of the memory range. | ||
| 37 | * | ||
| 38 | * Returns 0 on success, or -ENOMEM if no memory could be allocated. | ||
| 39 | */ | ||
| 40 | int firmware_map_add(resource_size_t start, resource_size_t end, | ||
| 41 | const char *type); | ||
| 42 | |||
| 43 | /** | ||
| 44 | * Adds a firmware mapping entry. This function uses the bootmem allocator | ||
| 45 | * for memory allocation. Use firmware_map_add() if you want to use kmalloc(). | ||
| 46 | * | ||
| 47 | * That function must be called before late_initcall. | ||
| 48 | * | ||
| 49 | * @start: Start of the memory range. | ||
| 50 | * @end: End of the memory range (inclusive). | ||
| 51 | * @type: Type of the memory range. | ||
| 52 | * | ||
| 53 | * Returns 0 on success, or -ENOMEM if no memory could be allocated. | ||
| 54 | */ | ||
| 55 | int firmware_map_add_early(resource_size_t start, resource_size_t end, | ||
| 56 | const char *type); | ||
| 57 | |||
| 58 | #else /* CONFIG_FIRMWARE_MEMMAP */ | ||
| 59 | |||
| 60 | static inline int firmware_map_add(resource_size_t start, resource_size_t end, | ||
| 61 | const char *type) | ||
| 62 | { | ||
| 63 | return 0; | ||
| 64 | } | ||
| 65 | |||
| 66 | static inline int firmware_map_add_early(resource_size_t start, | ||
| 67 | resource_size_t end, const char *type) | ||
| 68 | { | ||
| 69 | return 0; | ||
| 70 | } | ||
| 71 | |||
| 72 | #endif /* CONFIG_FIRMWARE_MEMMAP */ | ||
| 73 | |||
| 74 | #endif /* _LINUX_FIRMWARE_MAP_H */ | ||
diff --git a/include/linux/kernel_stat.h b/include/linux/kernel_stat.h index e8ffce898bf9..cf9f40a91c9c 100644 --- a/include/linux/kernel_stat.h +++ b/include/linux/kernel_stat.h | |||
| @@ -1,11 +1,11 @@ | |||
| 1 | #ifndef _LINUX_KERNEL_STAT_H | 1 | #ifndef _LINUX_KERNEL_STAT_H |
| 2 | #define _LINUX_KERNEL_STAT_H | 2 | #define _LINUX_KERNEL_STAT_H |
| 3 | 3 | ||
| 4 | #include <asm/irq.h> | ||
| 5 | #include <linux/smp.h> | 4 | #include <linux/smp.h> |
| 6 | #include <linux/threads.h> | 5 | #include <linux/threads.h> |
| 7 | #include <linux/percpu.h> | 6 | #include <linux/percpu.h> |
| 8 | #include <linux/cpumask.h> | 7 | #include <linux/cpumask.h> |
| 8 | #include <asm/irq.h> | ||
| 9 | #include <asm/cputime.h> | 9 | #include <asm/cputime.h> |
| 10 | 10 | ||
| 11 | /* | 11 | /* |
diff --git a/include/linux/linkage.h b/include/linux/linkage.h index 2119610b24f8..9fd1f859021b 100644 --- a/include/linux/linkage.h +++ b/include/linux/linkage.h | |||
| @@ -1,6 +1,7 @@ | |||
| 1 | #ifndef _LINUX_LINKAGE_H | 1 | #ifndef _LINUX_LINKAGE_H |
| 2 | #define _LINUX_LINKAGE_H | 2 | #define _LINUX_LINKAGE_H |
| 3 | 3 | ||
| 4 | #include <linux/compiler.h> | ||
| 4 | #include <asm/linkage.h> | 5 | #include <asm/linkage.h> |
| 5 | 6 | ||
| 6 | #ifdef __cplusplus | 7 | #ifdef __cplusplus |
| @@ -17,6 +18,9 @@ | |||
| 17 | # define asmregparm | 18 | # define asmregparm |
| 18 | #endif | 19 | #endif |
| 19 | 20 | ||
| 21 | #define __page_aligned_data __section(.data.page_aligned) __aligned(PAGE_SIZE) | ||
| 22 | #define __page_aligned_bss __section(.bss.page_aligned) __aligned(PAGE_SIZE) | ||
| 23 | |||
| 20 | /* | 24 | /* |
| 21 | * This is used by architectures to keep arguments on the stack | 25 | * This is used by architectures to keep arguments on the stack |
| 22 | * untouched by the compiler by keeping them live until the end. | 26 | * untouched by the compiler by keeping them live until the end. |
diff --git a/include/linux/mm.h b/include/linux/mm.h index 586a943cab01..cf1cd3a2ed78 100644 --- a/include/linux/mm.h +++ b/include/linux/mm.h | |||
| @@ -998,8 +998,8 @@ extern void free_area_init_node(int nid, pg_data_t *pgdat, | |||
| 998 | extern void free_area_init_nodes(unsigned long *max_zone_pfn); | 998 | extern void free_area_init_nodes(unsigned long *max_zone_pfn); |
| 999 | extern void add_active_range(unsigned int nid, unsigned long start_pfn, | 999 | extern void add_active_range(unsigned int nid, unsigned long start_pfn, |
| 1000 | unsigned long end_pfn); | 1000 | unsigned long end_pfn); |
| 1001 | extern void shrink_active_range(unsigned int nid, unsigned long old_end_pfn, | 1001 | extern void remove_active_range(unsigned int nid, unsigned long start_pfn, |
| 1002 | unsigned long new_end_pfn); | 1002 | unsigned long end_pfn); |
| 1003 | extern void push_node_boundaries(unsigned int nid, unsigned long start_pfn, | 1003 | extern void push_node_boundaries(unsigned int nid, unsigned long start_pfn, |
| 1004 | unsigned long end_pfn); | 1004 | unsigned long end_pfn); |
| 1005 | extern void remove_all_active_ranges(void); | 1005 | extern void remove_all_active_ranges(void); |
| @@ -1011,6 +1011,8 @@ extern unsigned long find_min_pfn_with_active_regions(void); | |||
| 1011 | extern unsigned long find_max_pfn_with_active_regions(void); | 1011 | extern unsigned long find_max_pfn_with_active_regions(void); |
| 1012 | extern void free_bootmem_with_active_regions(int nid, | 1012 | extern void free_bootmem_with_active_regions(int nid, |
| 1013 | unsigned long max_low_pfn); | 1013 | unsigned long max_low_pfn); |
| 1014 | typedef int (*work_fn_t)(unsigned long, unsigned long, void *); | ||
| 1015 | extern void work_with_active_regions(int nid, work_fn_t work_fn, void *data); | ||
| 1014 | extern void sparse_memory_present_with_active_regions(int nid); | 1016 | extern void sparse_memory_present_with_active_regions(int nid); |
| 1015 | #ifndef CONFIG_HAVE_ARCH_EARLY_PFN_TO_NID | 1017 | #ifndef CONFIG_HAVE_ARCH_EARLY_PFN_TO_NID |
| 1016 | extern int early_pfn_to_nid(unsigned long pfn); | 1018 | extern int early_pfn_to_nid(unsigned long pfn); |
| @@ -1024,6 +1026,7 @@ extern void mem_init(void); | |||
| 1024 | extern void show_mem(void); | 1026 | extern void show_mem(void); |
| 1025 | extern void si_meminfo(struct sysinfo * val); | 1027 | extern void si_meminfo(struct sysinfo * val); |
| 1026 | extern void si_meminfo_node(struct sysinfo *val, int nid); | 1028 | extern void si_meminfo_node(struct sysinfo *val, int nid); |
| 1029 | extern int after_bootmem; | ||
| 1027 | 1030 | ||
| 1028 | #ifdef CONFIG_NUMA | 1031 | #ifdef CONFIG_NUMA |
| 1029 | extern void setup_per_cpu_pageset(void); | 1032 | extern void setup_per_cpu_pageset(void); |
diff --git a/include/linux/page-flags.h b/include/linux/page-flags.h index f31debfac926..0d2a4e7012aa 100644 --- a/include/linux/page-flags.h +++ b/include/linux/page-flags.h | |||
| @@ -157,6 +157,7 @@ PAGEFLAG(Active, active) __CLEARPAGEFLAG(Active, active) | |||
| 157 | __PAGEFLAG(Slab, slab) | 157 | __PAGEFLAG(Slab, slab) |
| 158 | PAGEFLAG(Checked, owner_priv_1) /* Used by some filesystems */ | 158 | PAGEFLAG(Checked, owner_priv_1) /* Used by some filesystems */ |
| 159 | PAGEFLAG(Pinned, owner_priv_1) TESTSCFLAG(Pinned, owner_priv_1) /* Xen */ | 159 | PAGEFLAG(Pinned, owner_priv_1) TESTSCFLAG(Pinned, owner_priv_1) /* Xen */ |
| 160 | PAGEFLAG(SavePinned, dirty); /* Xen */ | ||
| 160 | PAGEFLAG(Reserved, reserved) __CLEARPAGEFLAG(Reserved, reserved) | 161 | PAGEFLAG(Reserved, reserved) __CLEARPAGEFLAG(Reserved, reserved) |
| 161 | PAGEFLAG(Private, private) __CLEARPAGEFLAG(Private, private) | 162 | PAGEFLAG(Private, private) __CLEARPAGEFLAG(Private, private) |
| 162 | __SETPAGEFLAG(Private, private) | 163 | __SETPAGEFLAG(Private, private) |
diff --git a/include/linux/pageblock-flags.h b/include/linux/pageblock-flags.h index e875905f7b12..e8c06122be36 100644 --- a/include/linux/pageblock-flags.h +++ b/include/linux/pageblock-flags.h | |||
| @@ -25,13 +25,11 @@ | |||
| 25 | 25 | ||
| 26 | #include <linux/types.h> | 26 | #include <linux/types.h> |
| 27 | 27 | ||
| 28 | /* Macro to aid the definition of ranges of bits */ | ||
| 29 | #define PB_range(name, required_bits) \ | ||
| 30 | name, name ## _end = (name + required_bits) - 1 | ||
| 31 | |||
| 32 | /* Bit indices that affect a whole block of pages */ | 28 | /* Bit indices that affect a whole block of pages */ |
| 33 | enum pageblock_bits { | 29 | enum pageblock_bits { |
| 34 | PB_range(PB_migrate, 3), /* 3 bits required for migrate types */ | 30 | PB_migrate, |
| 31 | PB_migrate_end = PB_migrate + 3 - 1, | ||
| 32 | /* 3 bits required for migrate types */ | ||
| 35 | NR_PAGEBLOCK_BITS | 33 | NR_PAGEBLOCK_BITS |
| 36 | }; | 34 | }; |
| 37 | 35 | ||
diff --git a/include/linux/resume-trace.h b/include/linux/resume-trace.h index f3f4f28c6960..c9ba2fdf807d 100644 --- a/include/linux/resume-trace.h +++ b/include/linux/resume-trace.h | |||
| @@ -8,7 +8,7 @@ extern int pm_trace_enabled; | |||
| 8 | 8 | ||
| 9 | struct device; | 9 | struct device; |
| 10 | extern void set_trace_device(struct device *); | 10 | extern void set_trace_device(struct device *); |
| 11 | extern void generate_resume_trace(void *tracedata, unsigned int user); | 11 | extern void generate_resume_trace(const void *tracedata, unsigned int user); |
| 12 | 12 | ||
| 13 | #define TRACE_DEVICE(dev) do { \ | 13 | #define TRACE_DEVICE(dev) do { \ |
| 14 | if (pm_trace_enabled) \ | 14 | if (pm_trace_enabled) \ |
