26 Feb, 2011
1 commit
-
…git/tip/linux-2.6-tip
* 'x86-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:
x86 quirk: Fix polarity for IRQ0 pin2 override on SB800 systems
x86/mrst: Fix apb timer rating when lapic timer is used
x86: Fix reboot problem on VersaLogic Menlow boards
25 Feb, 2011
2 commits
-
* 'kvm-updates/2.6.38' of git://git.kernel.org/pub/scm/virt/kvm/kvm:
KVM: SVM: Advance instruction pointer in dr_intercept -
On some SB800 systems polarity for IOAPIC pin2 is wrongly
specified as low active by BIOS. This caused system hangs after
resume from S3 when HPET was used in one-shot mode on such
systems because a timer interrupt was missed (HPET signal is
high active).For more details see:
http://marc.info/?l=linux-kernel&m=129623757413868
Tested-by: Manoj Iyer
Tested-by: Andre Przywara
Signed-off-by: Andreas Herrmann
Cc: Borislav Petkov
Cc: stable@kernel.org # 37.x, 32.x
LKML-Reference:
Signed-off-by: Ingo Molnar
24 Feb, 2011
3 commits
-
Need to adjust the clockevent device rating for the structure
that will be registered with clockevent system instead of the
temporary structure.Without this fix, APB timer rating will be higher than LAPIC
timer such that it can not be released later to be used as the
broadcast timer.Signed-off-by: Jacob Pan
Cc: Arjan van de Ven
Cc: Alan Cox
Cc: Thomas Gleixner
Cc: John Stultz
LKML-Reference:
Signed-off-by: Ingo Molnar -
* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input:
Input: serio/gameport - use 'long' system workqueue
Input: synaptics - document 0x0c query
Input: tegra-kbc - add function keymap -
The __param section is already brought in by RODATA above.
Signed-off-by: Jesper Nilsson
Signed-off-by: Linus Torvalds
23 Feb, 2011
1 commit
-
…/git/tip/linux-2.6-tip
* 'perf-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:
perf: Fix throttle logic
perf, x86: P4 PMU: Fix spurious NMI messages
22 Feb, 2011
14 commits
-
In the dr_intercept function a new cpu-feature called
decode-assists is implemented and used when available. This
code-path does not advance the guest-rip causing the guest
to dead-loop over mov-dr instructions. This is fixed by this
patch.Signed-off-by: Joerg Roedel
Signed-off-by: Avi Kivity -
…git/kgene/linux-samsung
* 's5p-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/kgene/linux-samsung:
ARM: S5PV210: Fix regulator names
ARM: S5PV210: Update max8998_platform_data
ARM: SAMSUNG: Drop exporting s3c24xx_ts_set_platdata
ARM: S5P: Fix end address in memory resource information for UART devices
ARM: S5P64X0: Cleanup map.h file
ARM: S5P6442: Cleanup map.h file
ARM: S5PC100: Clenaup map.h file
ARM: S5PV210: Cleanup map.h file
ARM: S5PV310: Cleanup map.h file -
* 'fixes' of master.kernel.org:/home/rmk/linux-2.6-arm:
ARM: 6745/1: kprobes insn decoding fix
ARM: tlb: move noMMU tlb_flush() to asm/tlb.h
ARM: tlb: delay page freeing for SMP and ARMv7 CPUs
ARM: Keep exit text/data around for SMP_ON_UP
ARM: Ensure predictable endian state on signal handler entry
ARM: 6740/1: Place correctly notes section in the linker script
ARM: 6700/1: SPEAr: Correct SOC config base address for spear320
ARM: 6722/1: SPEAr: sp810: switch to slow mode before reset
ARM: 6712/1: SPEAr: replace readl(), writel() with relaxed versions in uncompress.h
ARM: 6720/1: SPEAr: Append UL to VMALLOC_END
ARM: 6676/1: Correct the cpu_architecture() function for ARMv7
ARM: 6739/1: update .gitignore for boot/compressed
ARM: 6743/1: errata: interrupted ICALLUIS may prevent completion of broadcasted operation
ARM: 6742/1: pmu: avoid setting IRQ affinity on UP systems
ARM: 6741/1: errata: pl310 cache sync operation may be faulty -
* 'for-linus' of git://git390.marist.edu/pub/scm/linux-2.6:
[S390] net: provide architecture specific NET_SKB_PAD
[S390] atomic: use inline asm
[S390] correct ipl parameter block safe guard
[S390] atomic: use ACCESS_ONCE() for atomic_read()
[S390] dasd: correct device table -
Marcin Slusarz says:
> In arch/arm/kernel/kprobes-decode.c there's a function
> arm_kprobe_decode_insn which does:
>
> } else if ((insn & 0x0e000000) == 0x0c400000) {
> ...
>
> This is always false, so code below is dead.
> I found this bug by coccinelle (http://coccinelle.lip6.fr/).Reported-by: Marcin Slusarz
Signed-off-by: Nicolas Pitre
Signed-off-by: Russell King -
There's no need to noMMU to put tlb_flush() in asm/tlbflush.h - it's
part of the tlb shootdown interface. Move it to asm/tlb.h instead, as
per x86.Signed-off-by: Russell King
-
We need to delay freeing any mapped page on SMP and ARMv7 systems to
ensure that the data is not accessed by other CPUs, or is used for
speculative prefetch with ARMv7. This includes not only mapped pages
but also pages used for the page tables themselves.This avoids races with the MMU/other CPUs accessing pages after they've
been freed but before we've invalidated the TLB.Signed-off-by: Russell King
-
When SMP_ON_UP is used and the spinlocks are inlined, we end up with
inline spinlocks in the exit code, with references from the SMP
alternatives section to the exit sections. This causes link time
errors. Avoid this by placing the exit sections in the init-discarded
region.Cc:
Tested-by: Dave Martin
Signed-off-by: Russell King -
Ensure a predictable endian state when entering signal handlers. This
avoids programs which use SETEND to momentarily switch their endian
state from having their signal handlers entered with an unpredictable
endian state.Cc:
Acked-by: Dave Martin
Signed-off-by: Russell King -
Commit 18991197b4b588255ccabf472ebc84db7b66a19c added --build-id
linker option when toolchain supports it. ARM one does, but for some
reason places the section at 0 when linker script doesn't mention it
explicitly.The 1e621a8e3752367d4aae78a8ab00a18fb2793f34 worked around the problem
removing this section from binary image with explicit objcopy options,
but it still exists in vmlinux, confusing tools like debuggers and perf.This problem was discussed here:
http://lists.infradead.org/pipermail/linux-arm-kernel/2010-May/015994.html
http://lists.infradead.org/pipermail/linux-arm-kernel/2010-May/015994.html
but the proposed changes to the linker script were substantial.This patch simply places NOTES (36 bytes long, at least when compiled
with CodeSourcery toolchain) between data and bss, which seem to be
the right place (and suggested by the sample linker script in
include/asm-generic/vmlinux.lds.h).It is enough to place it correctly in vmlinux (so debuggers are happy):
Section Headers:
[11] .data PROGBITS c07ce000 7ce000 020fc0 00 WA 0 0 32
[12] .notes NOTE c07eefc0 7eefc0 000024 00 AX 0 0 4
[13] .bss NOBITS c07ef000 7eefe4 01e628 00 WA 0 0 32
Program Headers:
LOAD 0x008000 0xc0008000 0xc0008000 0x7e6fe4 0x805628 RWE 0x8000
NOTE 0x7eefc0 0xc07eefc0 0xc07eefc0 0x00024 0x00024 R E 0x4
Section to Segment mapping:
Segment Sections...
00 .data .notes .bss
01 .notesand to get it exposed as /sys/kernel/notes used by perf tools.
Signed-off-by: Pawel Moll
Signed-off-by: Russell King -
SPEAR320_SOC_CONFIG_BASE was wrong, causing the wrong registers to be
accessed.Reviewed-by: Stanley Miao
Signed-off-by: Viresh Kumar
Signed-off-by: Russell King -
In sysctl_soft_reset(), switch to slow mode before resetting the system
via the system controller. This is required.Reviewed-by: Stanley Miao
Signed-off-by: Shiraz Hashim
Signed-off-by: Russell King -
readl() and writel() calls the outer cache maintainance operations
which are not available during Linux uncompression. This patch replaces
readl() and writel() with readl_relaxed() and writel_relaxed() to avoid
the link time errors.Reviewed-by: Stanley Miao
Signed-off-by: Viresh Kumar
Signed-off-by: Russell King -
This patch fixes following warning:
arch/arm/mm/init.c:606: warning: format '%08lx' expects type 'long unsigned int', but argument 12 has type 'unsigned int'by appending UL to VMALLOC_END's Number.
Reviewed-by: Stanley Miao
Signed-off-by: Viresh Kumar
Signed-off-by: Russell King
21 Feb, 2011
1 commit
-
VersaLogic Menlow based boards hang on reboot unless reboot=bios
is used. Add quirk to reboot through the BIOS.Tested on at least four boards.
Signed-off-by: Kushal Koolwal
LKML-Reference:
Signed-off-by: Ingo Molnar
19 Feb, 2011
6 commits
-
If ID_MMFR0[3:0] >= 3, the architecture version is ARMv7. The code was
currently only testing for ID_MMFR0[3:0] == 3.Signed-off-by: Catalin Marinas
Signed-off-by: Russell King -
Signed-off-by: Nicolas Pitre
Signed-off-by: Russell King -
On versions of the Cortex-A9 prior to r3p0, an interrupted ICIALLUIS
operation may prevent the completion of a following broadcasted
operation if the second operation is received by a CPU before the
ICIALLUIS has completed, potentially leading to corrupted entries in
the cache or TLB.This workaround sets a bit in the diagnostic register of the Cortex-A9,
causing CP15 maintenance operations to be uninterruptible.Acked-by: Catalin Marinas
Signed-off-by: Will Deacon
Signed-off-by: Russell King -
Now that we can execute a CONFIG_SMP kernel on a uniprocessor system,
extra care has to be taken in the PMU IRQ affinity setting code to
ensure that we don't always fail to initialise.This patch changes the CPU PMU initialisation code so that when we
only have a single IRQ, whose affinity can not be changed at the
controller, we report success (0) rather than -EINVAL.Reported-by: Avik Sil
Acked-by: Jamie Iles
Signed-off-by: Will Deacon
Signed-off-by: Russell King -
The effect of cache sync operation is to drain the store buffer and
wait for all internal buffers to be empty. In normal conditions, store
buffer is able to merge the normal memory writes within its 32-byte
data buffers. Due to this erratum present in r3p0, the effect of cache
sync operation on the store buffer still remains when the operation
completes. This means that the store buffer is always asked to drain
and this prevents it from merging any further writes.This can severely affect performance on the write traffic esp. on
Normal memory NC one.The proposed workaround is to replace the normal offset of cache sync
operation(0x730) by another offset targeting an unmapped PL310
register 0x740.Signed-off-by: srinidhi kasagar
Acked-by: Linus Walleij
Acked-by: Catalin Marinas
Signed-off-by: Russell King -
Add Fn keymap support to allow for internal processing of Fn keys.
Signed-off-by: Rakesh Iyer
Signed-off-by: Dmitry Torokhov
18 Feb, 2011
4 commits
-
Since commit 1130e5b3ff4 regulators are exported to debugfs. The names
of the regulators that contains slash ('/') causes an ops during kernel
boot. This patch fixes this issue.Signed-off-by: Marek Szyprowski
Signed-off-by: Kyungmin Park
Signed-off-by: Kukjin Kim -
Max8998 PMIC driver's platform data has been changed once again in
commit 735a3d9efdc. This patch fixes build break caused by that commit.Signed-off-by: Marek Szyprowski
Signed-off-by: Kyungmin Park
Signed-off-by: Kukjin Kim -
s3c24xx_ts_set_platdata is annotated __init and not used by any module,
thus don't export it.This patch fixes below warning:
WARNING: arch/arm/plat-samsung/built-in.o(__ksymtab+0x90): Section mismatch
in reference from the variable __ksymtab_s3c24xx_ts_set_platdata to the
function .init.text:s3c24xx_ts_set_platdata()The symbol s3c24xx_ts_set_platdata is exported and annotated __init
Fix this by removing the __init annotation of s3c24xx_ts_set_platdata
or drop the export.Signed-off-by: Axel Lin
Signed-off-by: Kukjin Kim -
* git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc-2.6:
sparc64: Fix NMI startup bug which also breaks perf.
sparc: fix size argument to find_next_zero_bit()
sparc: use bitmap_set()
sparc32: unaligned memory access (MNA) trap handler bug
17 Feb, 2011
8 commits
-
NET_SKB_PAD has been increased from 32 to 64 and later to
max(32, L1_CACHE_BYTES). This led to a 25% throughput decrease for
streaming workloads accompanied by a 37% CPU cost increase on s390.
Define a architecture specific NET_SKB_PAD with the old value of 32.Signed-off-by: Horst Hartmann
Signed-off-by: Martin Schwidefsky -
Use inline assemblies for atomic_read/set(). This way there shouldn't
be any questions or subtle volatile semantics left.Signed-off-by: Heiko Carstens
Signed-off-by: Martin Schwidefsky -
The 'output' variable is passed from decompress_kernel to
check_ipl_parmblock before it is initialized. That disables the
safe guard against the overwrite of the ipl parameter block.
Fix this by passing the correct value to check_ipl_parmblock.Reported-by: David Binderman
Signed-off-by: Martin Schwidefsky -
Let's make atomic_read() and atomic_set() behave like on all/most other
architectures. Generated code is identical with gcc 4.5.2.Signed-off-by: Heiko Carstens
Signed-off-by: Martin Schwidefsky -
For S5P platforms, the end address in memory resource information for UART
devices is one byte more than the intended value. Fix this by reducing the
end address by one byte.Signed-off-by: Thomas Abraham
Signed-off-by: Kukjin Kim -
Signed-off-by: Kukjin Kim
-
Signed-off-by: Kukjin Kim
-
Signed-off-by: Kukjin Kim