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 'mips_fixes_5.4_4' of git://git.kernel.org/pub/scm/linux/kernel/git/mips/linux

Pull MIPS fixes from Paul Burton:
"A fix and simplification for SGI IP27 exception handlers, and a small
MAINTAINERS update for Broadcom MIPS systems"

* tag 'mips_fixes_5.4_4' of git://git.kernel.org/pub/scm/linux/kernel/git/mips/linux:
MAINTAINERS: Remove Kevin as maintainer of BMIPS generic platforms
MIPS: SGI-IP27: fix exception handler replication

+6 -27
-1
MAINTAINERS
··· 3261 3261 F: drivers/cpufreq/bmips-cpufreq.c 3262 3262 3263 3263 BROADCOM BMIPS MIPS ARCHITECTURE 3264 - M: Kevin Cernekee <cernekee@gmail.com> 3265 3264 M: Florian Fainelli <f.fainelli@gmail.com> 3266 3265 L: bcm-kernel-feedback-list@broadcom.com 3267 3266 L: linux-mips@vger.kernel.org
-7
arch/mips/sgi-ip27/Kconfig
··· 38 38 Say Y here to enable replicating the kernel text across multiple 39 39 nodes in a NUMA cluster. This trades memory for speed. 40 40 41 - config REPLICATE_EXHANDLERS 42 - bool "Exception handler replication support" 43 - depends on SGI_IP27 44 - help 45 - Say Y here to enable replicating the kernel exception handlers 46 - across multiple nodes in a NUMA cluster. This trades memory for 47 - speed.
+6 -15
arch/mips/sgi-ip27/ip27-init.c
··· 69 69 70 70 hub_rtc_init(cnode); 71 71 72 - #ifdef CONFIG_REPLICATE_EXHANDLERS 73 - /* 74 - * If this is not a headless node initialization, 75 - * copy over the caliased exception handlers. 76 - */ 77 - if (get_compact_nodeid() == cnode) { 78 - extern char except_vec2_generic, except_vec3_generic; 79 - extern void build_tlb_refill_handler(void); 80 - 81 - memcpy((void *)(CKSEG0 + 0x100), &except_vec2_generic, 0x80); 82 - memcpy((void *)(CKSEG0 + 0x180), &except_vec3_generic, 0x80); 83 - build_tlb_refill_handler(); 84 - memcpy((void *)(CKSEG0 + 0x100), (void *) CKSEG0, 0x80); 85 - memcpy((void *)(CKSEG0 + 0x180), &except_vec3_generic, 0x100); 72 + if (nasid) { 73 + /* copy exception handlers from first node to current node */ 74 + memcpy((void *)NODE_OFFSET_TO_K0(nasid, 0), 75 + (void *)CKSEG0, 0x200); 86 76 __flush_cache_all(); 77 + /* switch to node local exception handlers */ 78 + REMOTE_HUB_S(nasid, PI_CALIAS_SIZE, PI_CALIAS_SIZE_8K); 87 79 } 88 - #endif 89 80 } 90 81 91 82 void per_cpu_init(void)
-4
arch/mips/sgi-ip27/ip27-memory.c
··· 332 332 * thinks it is a node 0 address. 333 333 */ 334 334 REMOTE_HUB_S(nasid, PI_REGION_PRESENT, (region_mask | 1)); 335 - #ifdef CONFIG_REPLICATE_EXHANDLERS 336 - REMOTE_HUB_S(nasid, PI_CALIAS_SIZE, PI_CALIAS_SIZE_8K); 337 - #else 338 335 REMOTE_HUB_S(nasid, PI_CALIAS_SIZE, PI_CALIAS_SIZE_0); 339 - #endif 340 336 341 337 #ifdef LATER 342 338 /*