Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

Merge tag 'powerpc-4.2-3' of git://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux

Pull powerpc fixes from Michael Ellerman:
- TCE table memory calculation fix from Alexey
- Build fix for ans-lcd from Luis
- Unbalanced IRQ warning fix from Alistair

* tag 'powerpc-4.2-3' of git://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux:
powerpc/eeh-powernv: Fix unbalanced IRQ warning
macintosh/ans-lcd: fix build failure after module_init/exit relocation
powerpc/powernv/ioda2: Fix calculation for memory allocated for TCE table

+8 -7
+1 -1
arch/powerpc/platforms/powernv/eeh-powernv.c
··· 1478 1478 } 1479 1479 1480 1480 /* Unmask the event */ 1481 - if (eeh_enabled()) 1481 + if (ret == EEH_NEXT_ERR_NONE && eeh_enabled()) 1482 1482 enable_irq(eeh_event_irq); 1483 1483 1484 1484 return ret;
+6 -5
arch/powerpc/platforms/powernv/pci-ioda.c
··· 2220 2220 2221 2221 static __be64 *pnv_pci_ioda2_table_do_alloc_pages(int nid, unsigned shift, 2222 2222 unsigned levels, unsigned long limit, 2223 - unsigned long *current_offset) 2223 + unsigned long *current_offset, unsigned long *total_allocated) 2224 2224 { 2225 2225 struct page *tce_mem = NULL; 2226 2226 __be64 *addr, *tmp; ··· 2236 2236 } 2237 2237 addr = page_address(tce_mem); 2238 2238 memset(addr, 0, allocated); 2239 + *total_allocated += allocated; 2239 2240 2240 2241 --levels; 2241 2242 if (!levels) { ··· 2246 2245 2247 2246 for (i = 0; i < entries; ++i) { 2248 2247 tmp = pnv_pci_ioda2_table_do_alloc_pages(nid, shift, 2249 - levels, limit, current_offset); 2248 + levels, limit, current_offset, total_allocated); 2250 2249 if (!tmp) 2251 2250 break; 2252 2251 ··· 2268 2267 struct iommu_table *tbl) 2269 2268 { 2270 2269 void *addr; 2271 - unsigned long offset = 0, level_shift; 2270 + unsigned long offset = 0, level_shift, total_allocated = 0; 2272 2271 const unsigned window_shift = ilog2(window_size); 2273 2272 unsigned entries_shift = window_shift - page_shift; 2274 2273 unsigned table_shift = max_t(unsigned, entries_shift + 3, PAGE_SHIFT); ··· 2287 2286 2288 2287 /* Allocate TCE table */ 2289 2288 addr = pnv_pci_ioda2_table_do_alloc_pages(nid, level_shift, 2290 - levels, tce_table_size, &offset); 2289 + levels, tce_table_size, &offset, &total_allocated); 2291 2290 2292 2291 /* addr==NULL means that the first level allocation failed */ 2293 2292 if (!addr) ··· 2309 2308 page_shift); 2310 2309 tbl->it_level_size = 1ULL << (level_shift - 3); 2311 2310 tbl->it_indirect_levels = levels - 1; 2312 - tbl->it_allocated_size = offset; 2311 + tbl->it_allocated_size = total_allocated; 2313 2312 2314 2313 pr_devel("Created TCE table: ws=%08llx ts=%lx @%08llx\n", 2315 2314 window_size, tce_table_size, bus_offset);
+1 -1
drivers/macintosh/ans-lcd.c
··· 7 7 #include <linux/kernel.h> 8 8 #include <linux/miscdevice.h> 9 9 #include <linux/fcntl.h> 10 - #include <linux/init.h> 10 + #include <linux/module.h> 11 11 #include <linux/delay.h> 12 12 #include <linux/fs.h> 13 13