diff options
Diffstat (limited to 'include/asm-generic')
-rw-r--r-- | include/asm-generic/parport.h | 4 | ||||
-rw-r--r-- | include/asm-generic/tlb.h | 9 |
2 files changed, 11 insertions, 2 deletions
diff --git a/include/asm-generic/parport.h b/include/asm-generic/parport.h index 40528cb977e8..2c9f9d4336ca 100644 --- a/include/asm-generic/parport.h +++ b/include/asm-generic/parport.h | |||
@@ -10,8 +10,8 @@ | |||
10 | * to devices on the PCI bus. | 10 | * to devices on the PCI bus. |
11 | */ | 11 | */ |
12 | 12 | ||
13 | static int __devinit parport_pc_find_isa_ports(int autoirq, int autodma); | 13 | static int parport_pc_find_isa_ports(int autoirq, int autodma); |
14 | static int __devinit parport_pc_find_nonpci_ports(int autoirq, int autodma) | 14 | static int parport_pc_find_nonpci_ports(int autoirq, int autodma) |
15 | { | 15 | { |
16 | #ifdef CONFIG_ISA | 16 | #ifdef CONFIG_ISA |
17 | return parport_pc_find_isa_ports(autoirq, autodma); | 17 | return parport_pc_find_isa_ports(autoirq, autodma); |
diff --git a/include/asm-generic/tlb.h b/include/asm-generic/tlb.h index ed6642ad03e0..25f01d0bc149 100644 --- a/include/asm-generic/tlb.h +++ b/include/asm-generic/tlb.h | |||
@@ -78,6 +78,14 @@ struct mmu_gather_batch { | |||
78 | #define MAX_GATHER_BATCH \ | 78 | #define MAX_GATHER_BATCH \ |
79 | ((PAGE_SIZE - sizeof(struct mmu_gather_batch)) / sizeof(void *)) | 79 | ((PAGE_SIZE - sizeof(struct mmu_gather_batch)) / sizeof(void *)) |
80 | 80 | ||
81 | /* | ||
82 | * Limit the maximum number of mmu_gather batches to reduce a risk of soft | ||
83 | * lockups for non-preemptible kernels on huge machines when a lot of memory | ||
84 | * is zapped during unmapping. | ||
85 | * 10K pages freed at once should be safe even without a preemption point. | ||
86 | */ | ||
87 | #define MAX_GATHER_BATCH_COUNT (10000UL/MAX_GATHER_BATCH) | ||
88 | |||
81 | /* struct mmu_gather is an opaque type used by the mm code for passing around | 89 | /* struct mmu_gather is an opaque type used by the mm code for passing around |
82 | * any data needed by arch specific code for tlb_remove_page. | 90 | * any data needed by arch specific code for tlb_remove_page. |
83 | */ | 91 | */ |
@@ -96,6 +104,7 @@ struct mmu_gather { | |||
96 | struct mmu_gather_batch *active; | 104 | struct mmu_gather_batch *active; |
97 | struct mmu_gather_batch local; | 105 | struct mmu_gather_batch local; |
98 | struct page *__pages[MMU_GATHER_BUNDLE]; | 106 | struct page *__pages[MMU_GATHER_BUNDLE]; |
107 | unsigned int batch_count; | ||
99 | }; | 108 | }; |
100 | 109 | ||
101 | #define HAVE_GENERIC_MMU_GATHER | 110 | #define HAVE_GENERIC_MMU_GATHER |