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 'arc-4.4-rc3-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/vgupta/arc

Pull ARC fixes from Vineet Gupta:
- Fix for perf callgraph unwinding causing RCU stalls
- Fix to enable Linux to run on non-default Interrupt priority 0
- Removal of pointless SYNC from __switch_to()

* tag 'arc-4.4-rc3-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/vgupta/arc:
ARC: dw2 unwind: Remove falllback linear search thru FDE entries
ARC: remove SYNC from __switch_to()
ARCv2: Use the default irq priority for idle sleep
ARC: Abstract out ISA specific SLEEP args
ARC: comments update
ARC: switch to arc-linux- CROSS_COMPILE prefix across all configs

+24 -54
+1 -1
arch/arc/configs/axs101_defconfig
··· 1 - CONFIG_CROSS_COMPILE="arc-linux-uclibc-" 1 + CONFIG_CROSS_COMPILE="arc-linux-" 2 2 CONFIG_DEFAULT_HOSTNAME="ARCLinux" 3 3 # CONFIG_SWAP is not set 4 4 CONFIG_SYSVIPC=y
+1 -1
arch/arc/configs/axs103_defconfig
··· 1 - CONFIG_CROSS_COMPILE="arc-linux-uclibc-" 1 + CONFIG_CROSS_COMPILE="arc-linux-" 2 2 CONFIG_DEFAULT_HOSTNAME="ARCLinux" 3 3 # CONFIG_SWAP is not set 4 4 CONFIG_SYSVIPC=y
+1 -1
arch/arc/configs/axs103_smp_defconfig
··· 1 - CONFIG_CROSS_COMPILE="arc-linux-uclibc-" 1 + CONFIG_CROSS_COMPILE="arc-linux-" 2 2 CONFIG_DEFAULT_HOSTNAME="ARCLinux" 3 3 # CONFIG_SWAP is not set 4 4 CONFIG_SYSVIPC=y
+1 -1
arch/arc/configs/nsim_hs_defconfig
··· 1 - CONFIG_CROSS_COMPILE="arc-linux-uclibc-" 1 + CONFIG_CROSS_COMPILE="arc-linux-" 2 2 # CONFIG_LOCALVERSION_AUTO is not set 3 3 CONFIG_DEFAULT_HOSTNAME="ARCLinux" 4 4 # CONFIG_SWAP is not set
+1 -1
arch/arc/configs/nsim_hs_smp_defconfig
··· 1 - CONFIG_CROSS_COMPILE="arc-linux-uclibc-" 1 + CONFIG_CROSS_COMPILE="arc-linux-" 2 2 # CONFIG_LOCALVERSION_AUTO is not set 3 3 CONFIG_DEFAULT_HOSTNAME="ARCLinux" 4 4 # CONFIG_SWAP is not set
+1 -1
arch/arc/configs/nsimosci_hs_defconfig
··· 1 - CONFIG_CROSS_COMPILE="arc-linux-uclibc-" 1 + CONFIG_CROSS_COMPILE="arc-linux-" 2 2 # CONFIG_LOCALVERSION_AUTO is not set 3 3 CONFIG_DEFAULT_HOSTNAME="ARCLinux" 4 4 # CONFIG_SWAP is not set
+1 -1
arch/arc/configs/nsimosci_hs_smp_defconfig
··· 1 - CONFIG_CROSS_COMPILE="arc-linux-uclibc-" 1 + CONFIG_CROSS_COMPILE="arc-linux-" 2 2 CONFIG_DEFAULT_HOSTNAME="ARCLinux" 3 3 # CONFIG_SWAP is not set 4 4 CONFIG_SYSVIPC=y
+1 -1
arch/arc/configs/vdk_hs38_defconfig
··· 1 - CONFIG_CROSS_COMPILE="arc-linux-uclibc-" 1 + CONFIG_CROSS_COMPILE="arc-linux-" 2 2 # CONFIG_LOCALVERSION_AUTO is not set 3 3 CONFIG_DEFAULT_HOSTNAME="ARCLinux" 4 4 # CONFIG_CROSS_MEMORY_ATTACH is not set
+1 -1
arch/arc/configs/vdk_hs38_smp_defconfig
··· 1 - CONFIG_CROSS_COMPILE="arc-linux-uclibc-" 1 + CONFIG_CROSS_COMPILE="arc-linux-" 2 2 # CONFIG_LOCALVERSION_AUTO is not set 3 3 CONFIG_DEFAULT_HOSTNAME="ARCLinux" 4 4 # CONFIG_CROSS_MEMORY_ATTACH is not set
+3
arch/arc/include/asm/irqflags-arcv2.h
··· 37 37 #define ISA_INIT_STATUS_BITS (STATUS_IE_MASK | STATUS_AD_MASK | \ 38 38 (ARCV2_IRQ_DEF_PRIO << 1)) 39 39 40 + /* SLEEP needs default irq priority (<=) which can interrupt the doze */ 41 + #define ISA_SLEEP_ARG (0x10 | ARCV2_IRQ_DEF_PRIO) 42 + 40 43 #ifndef __ASSEMBLY__ 41 44 42 45 /*
+2
arch/arc/include/asm/irqflags-compact.h
··· 43 43 44 44 #define ISA_INIT_STATUS_BITS STATUS_IE_MASK 45 45 46 + #define ISA_SLEEP_ARG 0x3 47 + 46 48 #ifndef __ASSEMBLY__ 47 49 48 50 /******************************************************************
-2
arch/arc/kernel/ctx_sw.c
··· 58 58 "st sp, [r24] \n\t" 59 59 #endif 60 60 61 - "sync \n\t" 62 - 63 61 /* 64 62 * setup _current_task with incoming tsk. 65 63 * optionally, set r25 to that as well
-3
arch/arc/kernel/ctx_sw_asm.S
··· 44 44 * don't need to do anything special to return it 45 45 */ 46 46 47 - /* hardware memory barrier */ 48 - sync 49 - 50 47 /* 51 48 * switch to new task, contained in r1 52 49 * Temp reg r3 is required to get the ptr to store val
+4 -5
arch/arc/kernel/process.c
··· 44 44 void arch_cpu_idle(void) 45 45 { 46 46 /* sleep, but enable all interrupts before committing */ 47 - if (is_isa_arcompact()) { 48 - __asm__("sleep 0x3"); 49 - } else { 50 - __asm__("sleep 0x10"); 51 - } 47 + __asm__ __volatile__( 48 + "sleep %0 \n" 49 + : 50 + :"I"(ISA_SLEEP_ARG)); /* can't be "r" has to be embedded const */ 52 51 } 53 52 54 53 asmlinkage void ret_from_fork(void);
+4 -33
arch/arc/kernel/unwind.c
··· 986 986 (const u8 *)(fde + 987 987 1) + 988 988 *fde, ptrType); 989 - if (pc >= endLoc) 989 + if (pc >= endLoc) { 990 990 fde = NULL; 991 - } else 992 - fde = NULL; 993 - } 994 - if (fde == NULL) { 995 - for (fde = table->address, tableSize = table->size; 996 - cie = NULL, tableSize > sizeof(*fde) 997 - && tableSize - sizeof(*fde) >= *fde; 998 - tableSize -= sizeof(*fde) + *fde, 999 - fde += 1 + *fde / sizeof(*fde)) { 1000 - cie = cie_for_fde(fde, table); 1001 - if (cie == &bad_cie) { 1002 991 cie = NULL; 1003 - break; 1004 992 } 1005 - if (cie == NULL 1006 - || cie == &not_fde 1007 - || (ptrType = fde_pointer_type(cie)) < 0) 1008 - continue; 1009 - ptr = (const u8 *)(fde + 2); 1010 - startLoc = read_pointer(&ptr, 1011 - (const u8 *)(fde + 1) + 1012 - *fde, ptrType); 1013 - if (!startLoc) 1014 - continue; 1015 - if (!(ptrType & DW_EH_PE_indirect)) 1016 - ptrType &= 1017 - DW_EH_PE_FORM | DW_EH_PE_signed; 1018 - endLoc = 1019 - startLoc + read_pointer(&ptr, 1020 - (const u8 *)(fde + 1021 - 1) + 1022 - *fde, ptrType); 1023 - if (pc >= startLoc && pc < endLoc) 1024 - break; 993 + } else { 994 + fde = NULL; 995 + cie = NULL; 1025 996 } 1026 997 } 1027 998 }
+2 -2
arch/arc/mm/tlb.c
··· 619 619 620 620 int dirty = !test_and_set_bit(PG_dc_clean, &page->flags); 621 621 if (dirty) { 622 - /* wback + inv dcache lines */ 622 + /* wback + inv dcache lines (K-mapping) */ 623 623 __flush_dcache_page(paddr, paddr); 624 624 625 - /* invalidate any existing icache lines */ 625 + /* invalidate any existing icache lines (U-mapping) */ 626 626 if (vma->vm_flags & VM_EXEC) 627 627 __inv_icache_page(paddr, vaddr); 628 628 }