Loading Documentation/networking/bonding.txt +6 −5 Original line number Diff line number Diff line Loading @@ -191,11 +191,12 @@ ad_actor_sys_prio ad_actor_system In an AD system, this specifies the mac-address for the actor in protocol packet exchanges (LACPDUs). The value cannot be NULL or multicast. It is preferred to have the local-admin bit set for this mac but driver does not enforce it. If the value is not given then system defaults to using the masters' mac address as actors' system address. protocol packet exchanges (LACPDUs). The value cannot be a multicast address. If the all-zeroes MAC is specified, bonding will internally use the MAC of the bond itself. It is preferred to have the local-admin bit set for this mac but driver does not enforce it. If the value is not given then system defaults to using the masters' mac address as actors' system address. This parameter has effect only in 802.3ad mode and is available through SysFs interface. Loading Makefile +1 −1 Original line number Diff line number Diff line VERSION = 4 PATCHLEVEL = 4 SUBLEVEL = 295 SUBLEVEL = 299 EXTRAVERSION = NAME = Blurry Fish Butt Loading arch/arm/kernel/entry-armv.S +3 −5 Original line number Diff line number Diff line Loading @@ -625,11 +625,9 @@ call_fpe: tstne r0, #0x04000000 @ bit 26 set on both ARM and Thumb-2 reteq lr and r8, r0, #0x00000f00 @ mask out CP number THUMB( lsr r8, r8, #8 ) mov r7, #1 add r6, r10, #TI_USED_CP ARM( strb r7, [r6, r8, lsr #8] ) @ set appropriate used_cp[] THUMB( strb r7, [r6, r8] ) @ set appropriate used_cp[] add r6, r10, r8, lsr #8 @ add used_cp[] array offset first strb r7, [r6, #TI_USED_CP] @ set appropriate used_cp[] #ifdef CONFIG_IWMMXT @ Test if we need to give access to iWMMXt coprocessors ldr r5, [r10, #TI_FLAGS] Loading @@ -638,7 +636,7 @@ call_fpe: bcs iwmmxt_task_enable #endif ARM( add pc, pc, r8, lsr #6 ) THUMB( lsl r8, r8, #2 ) THUMB( lsr r8, r8, #6 ) THUMB( add pc, r8 ) nop Loading arch/arm/mm/copypage-fa.c +17 −18 Original line number Diff line number Diff line Loading @@ -17,26 +17,25 @@ /* * Faraday optimised copy_user_page */ static void __naked fa_copy_user_page(void *kto, const void *kfrom) static void fa_copy_user_page(void *kto, const void *kfrom) { asm("\ stmfd sp!, {r4, lr} @ 2\n\ mov r2, %0 @ 1\n\ 1: ldmia r1!, {r3, r4, ip, lr} @ 4\n\ stmia r0, {r3, r4, ip, lr} @ 4\n\ mcr p15, 0, r0, c7, c14, 1 @ 1 clean and invalidate D line\n\ add r0, r0, #16 @ 1\n\ ldmia r1!, {r3, r4, ip, lr} @ 4\n\ stmia r0, {r3, r4, ip, lr} @ 4\n\ mcr p15, 0, r0, c7, c14, 1 @ 1 clean and invalidate D line\n\ add r0, r0, #16 @ 1\n\ subs r2, r2, #1 @ 1\n\ int tmp; asm volatile ("\ 1: ldmia %1!, {r3, r4, ip, lr} @ 4\n\ stmia %0, {r3, r4, ip, lr} @ 4\n\ mcr p15, 0, %0, c7, c14, 1 @ 1 clean and invalidate D line\n\ add %0, %0, #16 @ 1\n\ ldmia %1!, {r3, r4, ip, lr} @ 4\n\ stmia %0, {r3, r4, ip, lr} @ 4\n\ mcr p15, 0, %0, c7, c14, 1 @ 1 clean and invalidate D line\n\ add %0, %0, #16 @ 1\n\ subs %2, %2, #1 @ 1\n\ bne 1b @ 1\n\ mcr p15, 0, r2, c7, c10, 4 @ 1 drain WB\n\ ldmfd sp!, {r4, pc} @ 3" : : "I" (PAGE_SIZE / 32)); mcr p15, 0, %2, c7, c10, 4 @ 1 drain WB" : "+&r" (kto), "+&r" (kfrom), "=&r" (tmp) : "2" (PAGE_SIZE / 32) : "r3", "r4", "ip", "lr"); } void fa_copy_user_highpage(struct page *to, struct page *from, Loading arch/arm/mm/copypage-feroceon.c +48 −50 Original line number Diff line number Diff line Loading @@ -13,58 +13,56 @@ #include <linux/init.h> #include <linux/highmem.h> static void __naked feroceon_copy_user_page(void *kto, const void *kfrom) static void feroceon_copy_user_page(void *kto, const void *kfrom) { asm("\ stmfd sp!, {r4-r9, lr} \n\ mov ip, %2 \n\ 1: mov lr, r1 \n\ ldmia r1!, {r2 - r9} \n\ pld [lr, #32] \n\ pld [lr, #64] \n\ pld [lr, #96] \n\ pld [lr, #128] \n\ pld [lr, #160] \n\ pld [lr, #192] \n\ pld [lr, #224] \n\ stmia r0, {r2 - r9} \n\ ldmia r1!, {r2 - r9} \n\ mcr p15, 0, r0, c7, c14, 1 @ clean and invalidate D line\n\ add r0, r0, #32 \n\ stmia r0, {r2 - r9} \n\ ldmia r1!, {r2 - r9} \n\ mcr p15, 0, r0, c7, c14, 1 @ clean and invalidate D line\n\ add r0, r0, #32 \n\ stmia r0, {r2 - r9} \n\ ldmia r1!, {r2 - r9} \n\ mcr p15, 0, r0, c7, c14, 1 @ clean and invalidate D line\n\ add r0, r0, #32 \n\ stmia r0, {r2 - r9} \n\ ldmia r1!, {r2 - r9} \n\ mcr p15, 0, r0, c7, c14, 1 @ clean and invalidate D line\n\ add r0, r0, #32 \n\ stmia r0, {r2 - r9} \n\ ldmia r1!, {r2 - r9} \n\ mcr p15, 0, r0, c7, c14, 1 @ clean and invalidate D line\n\ add r0, r0, #32 \n\ stmia r0, {r2 - r9} \n\ ldmia r1!, {r2 - r9} \n\ mcr p15, 0, r0, c7, c14, 1 @ clean and invalidate D line\n\ add r0, r0, #32 \n\ stmia r0, {r2 - r9} \n\ ldmia r1!, {r2 - r9} \n\ mcr p15, 0, r0, c7, c14, 1 @ clean and invalidate D line\n\ add r0, r0, #32 \n\ stmia r0, {r2 - r9} \n\ subs ip, ip, #(32 * 8) \n\ mcr p15, 0, r0, c7, c14, 1 @ clean and invalidate D line\n\ add r0, r0, #32 \n\ int tmp; asm volatile ("\ 1: ldmia %1!, {r2 - r7, ip, lr} \n\ pld [%1, #0] \n\ pld [%1, #32] \n\ pld [%1, #64] \n\ pld [%1, #96] \n\ pld [%1, #128] \n\ pld [%1, #160] \n\ pld [%1, #192] \n\ stmia %0, {r2 - r7, ip, lr} \n\ ldmia %1!, {r2 - r7, ip, lr} \n\ mcr p15, 0, %0, c7, c14, 1 @ clean and invalidate D line\n\ add %0, %0, #32 \n\ stmia %0, {r2 - r7, ip, lr} \n\ ldmia %1!, {r2 - r7, ip, lr} \n\ mcr p15, 0, %0, c7, c14, 1 @ clean and invalidate D line\n\ add %0, %0, #32 \n\ stmia %0, {r2 - r7, ip, lr} \n\ ldmia %1!, {r2 - r7, ip, lr} \n\ mcr p15, 0, %0, c7, c14, 1 @ clean and invalidate D line\n\ add %0, %0, #32 \n\ stmia %0, {r2 - r7, ip, lr} \n\ ldmia %1!, {r2 - r7, ip, lr} \n\ mcr p15, 0, %0, c7, c14, 1 @ clean and invalidate D line\n\ add %0, %0, #32 \n\ stmia %0, {r2 - r7, ip, lr} \n\ ldmia %1!, {r2 - r7, ip, lr} \n\ mcr p15, 0, %0, c7, c14, 1 @ clean and invalidate D line\n\ add %0, %0, #32 \n\ stmia %0, {r2 - r7, ip, lr} \n\ ldmia %1!, {r2 - r7, ip, lr} \n\ mcr p15, 0, %0, c7, c14, 1 @ clean and invalidate D line\n\ add %0, %0, #32 \n\ stmia %0, {r2 - r7, ip, lr} \n\ ldmia %1!, {r2 - r7, ip, lr} \n\ mcr p15, 0, %0, c7, c14, 1 @ clean and invalidate D line\n\ add %0, %0, #32 \n\ stmia %0, {r2 - r7, ip, lr} \n\ subs %2, %2, #(32 * 8) \n\ mcr p15, 0, %0, c7, c14, 1 @ clean and invalidate D line\n\ add %0, %0, #32 \n\ bne 1b \n\ mcr p15, 0, ip, c7, c10, 4 @ drain WB\n\ ldmfd sp!, {r4-r9, pc}" : : "r" (kto), "r" (kfrom), "I" (PAGE_SIZE)); mcr p15, 0, %2, c7, c10, 4 @ drain WB" : "+&r" (kto), "+&r" (kfrom), "=&r" (tmp) : "2" (PAGE_SIZE) : "r2", "r3", "r4", "r5", "r6", "r7", "ip", "lr"); } void feroceon_copy_user_highpage(struct page *to, struct page *from, Loading Loading
Documentation/networking/bonding.txt +6 −5 Original line number Diff line number Diff line Loading @@ -191,11 +191,12 @@ ad_actor_sys_prio ad_actor_system In an AD system, this specifies the mac-address for the actor in protocol packet exchanges (LACPDUs). The value cannot be NULL or multicast. It is preferred to have the local-admin bit set for this mac but driver does not enforce it. If the value is not given then system defaults to using the masters' mac address as actors' system address. protocol packet exchanges (LACPDUs). The value cannot be a multicast address. If the all-zeroes MAC is specified, bonding will internally use the MAC of the bond itself. It is preferred to have the local-admin bit set for this mac but driver does not enforce it. If the value is not given then system defaults to using the masters' mac address as actors' system address. This parameter has effect only in 802.3ad mode and is available through SysFs interface. Loading
Makefile +1 −1 Original line number Diff line number Diff line VERSION = 4 PATCHLEVEL = 4 SUBLEVEL = 295 SUBLEVEL = 299 EXTRAVERSION = NAME = Blurry Fish Butt Loading
arch/arm/kernel/entry-armv.S +3 −5 Original line number Diff line number Diff line Loading @@ -625,11 +625,9 @@ call_fpe: tstne r0, #0x04000000 @ bit 26 set on both ARM and Thumb-2 reteq lr and r8, r0, #0x00000f00 @ mask out CP number THUMB( lsr r8, r8, #8 ) mov r7, #1 add r6, r10, #TI_USED_CP ARM( strb r7, [r6, r8, lsr #8] ) @ set appropriate used_cp[] THUMB( strb r7, [r6, r8] ) @ set appropriate used_cp[] add r6, r10, r8, lsr #8 @ add used_cp[] array offset first strb r7, [r6, #TI_USED_CP] @ set appropriate used_cp[] #ifdef CONFIG_IWMMXT @ Test if we need to give access to iWMMXt coprocessors ldr r5, [r10, #TI_FLAGS] Loading @@ -638,7 +636,7 @@ call_fpe: bcs iwmmxt_task_enable #endif ARM( add pc, pc, r8, lsr #6 ) THUMB( lsl r8, r8, #2 ) THUMB( lsr r8, r8, #6 ) THUMB( add pc, r8 ) nop Loading
arch/arm/mm/copypage-fa.c +17 −18 Original line number Diff line number Diff line Loading @@ -17,26 +17,25 @@ /* * Faraday optimised copy_user_page */ static void __naked fa_copy_user_page(void *kto, const void *kfrom) static void fa_copy_user_page(void *kto, const void *kfrom) { asm("\ stmfd sp!, {r4, lr} @ 2\n\ mov r2, %0 @ 1\n\ 1: ldmia r1!, {r3, r4, ip, lr} @ 4\n\ stmia r0, {r3, r4, ip, lr} @ 4\n\ mcr p15, 0, r0, c7, c14, 1 @ 1 clean and invalidate D line\n\ add r0, r0, #16 @ 1\n\ ldmia r1!, {r3, r4, ip, lr} @ 4\n\ stmia r0, {r3, r4, ip, lr} @ 4\n\ mcr p15, 0, r0, c7, c14, 1 @ 1 clean and invalidate D line\n\ add r0, r0, #16 @ 1\n\ subs r2, r2, #1 @ 1\n\ int tmp; asm volatile ("\ 1: ldmia %1!, {r3, r4, ip, lr} @ 4\n\ stmia %0, {r3, r4, ip, lr} @ 4\n\ mcr p15, 0, %0, c7, c14, 1 @ 1 clean and invalidate D line\n\ add %0, %0, #16 @ 1\n\ ldmia %1!, {r3, r4, ip, lr} @ 4\n\ stmia %0, {r3, r4, ip, lr} @ 4\n\ mcr p15, 0, %0, c7, c14, 1 @ 1 clean and invalidate D line\n\ add %0, %0, #16 @ 1\n\ subs %2, %2, #1 @ 1\n\ bne 1b @ 1\n\ mcr p15, 0, r2, c7, c10, 4 @ 1 drain WB\n\ ldmfd sp!, {r4, pc} @ 3" : : "I" (PAGE_SIZE / 32)); mcr p15, 0, %2, c7, c10, 4 @ 1 drain WB" : "+&r" (kto), "+&r" (kfrom), "=&r" (tmp) : "2" (PAGE_SIZE / 32) : "r3", "r4", "ip", "lr"); } void fa_copy_user_highpage(struct page *to, struct page *from, Loading
arch/arm/mm/copypage-feroceon.c +48 −50 Original line number Diff line number Diff line Loading @@ -13,58 +13,56 @@ #include <linux/init.h> #include <linux/highmem.h> static void __naked feroceon_copy_user_page(void *kto, const void *kfrom) static void feroceon_copy_user_page(void *kto, const void *kfrom) { asm("\ stmfd sp!, {r4-r9, lr} \n\ mov ip, %2 \n\ 1: mov lr, r1 \n\ ldmia r1!, {r2 - r9} \n\ pld [lr, #32] \n\ pld [lr, #64] \n\ pld [lr, #96] \n\ pld [lr, #128] \n\ pld [lr, #160] \n\ pld [lr, #192] \n\ pld [lr, #224] \n\ stmia r0, {r2 - r9} \n\ ldmia r1!, {r2 - r9} \n\ mcr p15, 0, r0, c7, c14, 1 @ clean and invalidate D line\n\ add r0, r0, #32 \n\ stmia r0, {r2 - r9} \n\ ldmia r1!, {r2 - r9} \n\ mcr p15, 0, r0, c7, c14, 1 @ clean and invalidate D line\n\ add r0, r0, #32 \n\ stmia r0, {r2 - r9} \n\ ldmia r1!, {r2 - r9} \n\ mcr p15, 0, r0, c7, c14, 1 @ clean and invalidate D line\n\ add r0, r0, #32 \n\ stmia r0, {r2 - r9} \n\ ldmia r1!, {r2 - r9} \n\ mcr p15, 0, r0, c7, c14, 1 @ clean and invalidate D line\n\ add r0, r0, #32 \n\ stmia r0, {r2 - r9} \n\ ldmia r1!, {r2 - r9} \n\ mcr p15, 0, r0, c7, c14, 1 @ clean and invalidate D line\n\ add r0, r0, #32 \n\ stmia r0, {r2 - r9} \n\ ldmia r1!, {r2 - r9} \n\ mcr p15, 0, r0, c7, c14, 1 @ clean and invalidate D line\n\ add r0, r0, #32 \n\ stmia r0, {r2 - r9} \n\ ldmia r1!, {r2 - r9} \n\ mcr p15, 0, r0, c7, c14, 1 @ clean and invalidate D line\n\ add r0, r0, #32 \n\ stmia r0, {r2 - r9} \n\ subs ip, ip, #(32 * 8) \n\ mcr p15, 0, r0, c7, c14, 1 @ clean and invalidate D line\n\ add r0, r0, #32 \n\ int tmp; asm volatile ("\ 1: ldmia %1!, {r2 - r7, ip, lr} \n\ pld [%1, #0] \n\ pld [%1, #32] \n\ pld [%1, #64] \n\ pld [%1, #96] \n\ pld [%1, #128] \n\ pld [%1, #160] \n\ pld [%1, #192] \n\ stmia %0, {r2 - r7, ip, lr} \n\ ldmia %1!, {r2 - r7, ip, lr} \n\ mcr p15, 0, %0, c7, c14, 1 @ clean and invalidate D line\n\ add %0, %0, #32 \n\ stmia %0, {r2 - r7, ip, lr} \n\ ldmia %1!, {r2 - r7, ip, lr} \n\ mcr p15, 0, %0, c7, c14, 1 @ clean and invalidate D line\n\ add %0, %0, #32 \n\ stmia %0, {r2 - r7, ip, lr} \n\ ldmia %1!, {r2 - r7, ip, lr} \n\ mcr p15, 0, %0, c7, c14, 1 @ clean and invalidate D line\n\ add %0, %0, #32 \n\ stmia %0, {r2 - r7, ip, lr} \n\ ldmia %1!, {r2 - r7, ip, lr} \n\ mcr p15, 0, %0, c7, c14, 1 @ clean and invalidate D line\n\ add %0, %0, #32 \n\ stmia %0, {r2 - r7, ip, lr} \n\ ldmia %1!, {r2 - r7, ip, lr} \n\ mcr p15, 0, %0, c7, c14, 1 @ clean and invalidate D line\n\ add %0, %0, #32 \n\ stmia %0, {r2 - r7, ip, lr} \n\ ldmia %1!, {r2 - r7, ip, lr} \n\ mcr p15, 0, %0, c7, c14, 1 @ clean and invalidate D line\n\ add %0, %0, #32 \n\ stmia %0, {r2 - r7, ip, lr} \n\ ldmia %1!, {r2 - r7, ip, lr} \n\ mcr p15, 0, %0, c7, c14, 1 @ clean and invalidate D line\n\ add %0, %0, #32 \n\ stmia %0, {r2 - r7, ip, lr} \n\ subs %2, %2, #(32 * 8) \n\ mcr p15, 0, %0, c7, c14, 1 @ clean and invalidate D line\n\ add %0, %0, #32 \n\ bne 1b \n\ mcr p15, 0, ip, c7, c10, 4 @ drain WB\n\ ldmfd sp!, {r4-r9, pc}" : : "r" (kto), "r" (kfrom), "I" (PAGE_SIZE)); mcr p15, 0, %2, c7, c10, 4 @ drain WB" : "+&r" (kto), "+&r" (kfrom), "=&r" (tmp) : "2" (PAGE_SIZE) : "r2", "r3", "r4", "r5", "r6", "r7", "ip", "lr"); } void feroceon_copy_user_highpage(struct page *to, struct page *from, Loading