summaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2013-04-30Hexagon: fix return value for notify_resume case in do_work_pendingRichard Kuo1-0/+1
Signed-off-by: Richard Kuo <rkuo@codeaurora.org>
2013-04-30Hexagon: fix signal number for user mem faultsRichard Kuo1-2/+2
Signed-off-by: Richard Kuo <rkuo@codeaurora.org>
2013-04-30Hexagon: remove two Kconfig entriesPaul Bolle1-9/+0
The Kconfig entries for HEXAGON_VM and HEXAGON_ANGEL_TRAPS were added, together with the configuration and makefiles for the Hexagon architecture, in v3.2. They have never been used. They can safely be removed. Signed-off-by: Paul Bolle <pebolle@tiscali.nl> [rkuo@codeaurora.org: adjust for line changes in Kconfig] Signed-off-by: Richard Kuo <rkuo@codeaurora.org>
2013-04-30arch: remove CONFIG_GENERIC_FIND_NEXT_BIT againPaul Bolle2-6/+0
CONFIG_GENERIC_FIND_NEXT_BIT was removed in v3.0, but reappeared in two architectures. Remove it again. Signed-off-by: Paul Bolle <pebolle@tiscali.nl> Acked-by: Jonas Bonn <jonas@southpole.se> Signed-off-by: Richard Kuo <rkuo@codeaurora.org>
2013-04-30Hexagon: update copyright datesRichard Kuo20-20/+20
Signed-off-by: Richard Kuo <rkuo@codeaurora.org>
2013-04-30Hexagon: add translation types for __vmnewmapRichard Kuo1-0/+7
Signed-off-by: Richard Kuo <rkuo@codeaurora.org>
2013-04-30Hexagon: fix signal.c compile errorRichard Kuo1-0/+2
Signed-off-by: Richard Kuo <rkuo@codeaurora.org>
2013-04-30Hexagon: break up user fn/arg register settingRichard Kuo1-1/+2
Signed-off-by: Richard Kuo <rkuo@codeaurora.org>
2013-04-30Hexagon: use generic sys_fork, sys_vfork, and sys_cloneRichard Kuo2-0/+5
Signed-off-by: Richard Kuo <rkuo@codeaurora.org>
2013-04-30Hexagon: fix psp/sp macroRichard Kuo1-2/+1
Based on feedback from Al Viro; previous-stack-pointer and user reg for same should always be kept consistent. Signed-off-by: Richard Kuo <rkuo@codeaurora.org>
2013-04-30Hexagon: fix up int enable/disable at ret_from_forkRichard Kuo1-2/+11
Check return coming out of check_work_pending, and if copy_thread passed us a function in r24, call it. Based on feedback from Al Viro. Signed-off-by: Richard Kuo <rkuo@codeaurora.org>
2013-04-30Hexagon: add IOMEM and _relaxed IO macrosRichard Kuo1-0/+14
Signed-off-by: Richard Kuo <rkuo@codeaurora.org>
2013-04-30Hexagon: switch to using the device type for IO mappingsRichard Kuo1-5/+4
Uncached on our architecture can still have side effects such as canceled/replayed transactions; device type prevents this. Signed-off-by: Richard Kuo <rkuo@codeaurora.org>
2013-04-30Hexagon: don't print info for offline CPU'sRichard Kuo1-0/+5
Signed-off-by: Richard Kuo <rkuo@codeaurora.org>
2013-04-30Hexagon: add support for single-stepping (v4+)Richard Kuo6-1/+38
Hardware single-step is only available on v4 and later architectures. Signed-off-by: Richard Kuo <rkuo@codeaurora.org>
2013-04-30Hexagon: use correct work mask when checking for more workRichard Kuo1-1/+1
Signed-off-by: Richard Kuo <rkuo@codeaurora.org>
2013-04-30Hexagon: add support for additional exceptionsRichard Kuo1-0/+10
Add multi-reg-write and unaligned-PC exceptions. Signed-off-by: Richard Kuo <rkuo@codeaurora.org>
2013-04-30Hexagon: fix initial page table setup prior to jump to VARichard Kuo1-12/+73
Use the exact number of pages needed to be mapped pre-VA-jump, then map 896MB afterwards, which the arch mem init will fix up. Signed-off-by: Richard Kuo <rkuo@codeaurora.org>
2013-04-30Hexagon: remove keyring related callRichard Kuo1-3/+0
Signed-off-by: Richard Kuo <rkuo@codeaurora.org>
2013-04-30Hexagon: check to if we will overflow the signal stackRichard Kuo1-0/+4
Signed-off-by: Richard Kuo <rkuo@codeaurora.org>
2013-04-30Hexagon: Signal and return path fixesRichard Kuo5-88/+84
This fixes the return value of sigreturn and moves the work pending check into a c routine for readability and fixes the loop for multiple pending signals. Based on feedback from Al Viro. Signed-off-by: Richard Kuo <rkuo@codeaurora.org>
2013-04-30Hexagon: add support for new v4+ registersRichard Kuo8-48/+206
Add support for a couple new v4+ registers, along with newer save/restore pt_regs. Signed-off-by: Richard Kuo <rkuo@codeaurora.org>
2013-04-30Hexagon: add individual register access for switch_stackRichard Kuo1-6/+43
Signed-off-by: Richard Kuo <rkuo@codeaurora.org>
2013-04-30Hexagon: use defines for MIN_KERNEL_SEG calculationRichard Kuo1-1/+1
Signed-off-by: Richard Kuo <rkuo@codeaurora.org>
2013-04-30Hexagon: use GENERIC_CPU_DEVICESRichard Kuo3-53/+2
Signed-off-by: Richard Kuo <rkuo@codeaurora.org>
2013-04-30Hexagon: change arch version config to allow comparisonsRichard Kuo3-31/+10
Signed-off-by: Richard Kuo <rkuo@codeaurora.org>
2013-04-30Hexagon: add support for ARCH_PFN_OFFSETRichard Kuo8-55/+91
Add support for loading the kernel at a physical offset. The offset should still be 4M aligned. Signed-off-by: Richard Kuo <rkuo@codeaurora.org>
2013-04-30Hexagon: fix __atomic_add_unlessRichard Kuo1-9/+11
Signed-off-by: Richard Kuo <rkuo@codeaurora.org>
2013-04-30Hexagon: clean up generic headers in KbuildRichard Kuo1-1/+1
Signed-off-by: Richard Kuo <rkuo@codeaurora.org>
2013-04-28Linux 3.9v3.9Linus Torvalds1-1/+1
2013-04-27Merge tag 'fixes-for-linus' of ↵Linus Torvalds1-7/+11
git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc Pull ARM SoC fix from Olof Johansson: "A late-arriving fix for musb on OMAP4, resolving an issue where the musb IP won't be clocked and thus not functional. Small in scope, most of the lines changed is a longish comment." * tag 'fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: ARM: OMAP4: hwmod data: make 'ocp2scp_usb_phy_phy_48m" as the main clock
2013-04-27vm: add no-mmu vm_iomap_memory() stubLinus Torvalds1-0/+10
I think we could just move the full vm_iomap_memory() function into util.h or similar, but I didn't get any reply from anybody actually using nommu even to this trivial patch, so I'm not going to touch it any more than required. Here's the fairly minimal stub to make the nommu case at least potentially work. It doesn't seem like anybody cares, though. Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2013-04-27Merge branch 'perf-urgent-for-linus' of ↵Linus Torvalds1-0/+2
git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip Pull perf fix from Ingo Molnar: "This fix adds missing RCU read protection" * 'perf-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: events: Protect access via task_subsys_state_check()
2013-04-26Merge tag 'omap-for-v3.9-rc6/fixes-signed' of ↵Olof Johansson1-7/+11
git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap into fixes From Tony Lindgren: One MUSB regression fix that I forgot to send earlier. Without this MUSB no longer works on omap4 based devices. * tag 'omap-for-v3.9-rc6/fixes-signed' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap: ARM: OMAP4: hwmod data: make 'ocp2scp_usb_phy_phy_48m" as the main clock Signed-off-by: Olof Johansson <olof@lixom.net>
2013-04-26Merge branch 'v4l_for_linus' of ↵Linus Torvalds2-2/+2
git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-media Pull media fixes from Mauro Carvalho Chehab: "Two driver fixes. One avoids reading any file at a system with a cx25821 board (fortunately, this is not a common device). The other one prevents reading after a buffer with ISDB-T devices based on mb86a20s." * 'v4l_for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-media: [media] cx25821: do not expose broken video output streams [media] mb86a20s: Fix estimate_rate setting
2013-04-26Merge branch 'fixes-3.9-late' of ↵Linus Torvalds8-40/+67
git://git.kernel.org/pub/scm/linux/kernel/git/deller/parisc-linux Pull late parisc fixes from Helge Deller: "I know it's *very* late in the 3.9 release cycle, but since there aren't that many people testing the parisc linux kernel, a few (for our port) critical issues just showed up a few days back for the first time. What's in it? - add missing __ucmpdi2 symbol, which is required for btrfs on 32bit kernel. - change kunmap() macro to static inline function. This fixes a debian/gcc-4.4 build error. - add locking when doing PTE updates. This fixes random userspace crashes. - disable (optional) -mlong-calls compiler option for modules, else modules can't be loaded at runtime. - a smart patch by Will Deacon which fixes 64bit put_user() warnings on 32bit kernel." * 'fixes-3.9-late' of git://git.kernel.org/pub/scm/linux/kernel/git/deller/parisc-linux: parisc: use spin_lock_irqsave/spin_unlock_irqrestore for PTE updates parisc: disable -mlong-calls compiler option for kernel modules parisc: uaccess: fix compiler warnings caused by __put_user casting parisc: Change kunmap macro to static inline function parisc: Provide __ucmpdi2 to resolve undefined references in 32 bit builds.
2013-04-26efivars: only check for duplicates on the registered listMatt Fleming1-5/+7
variable_is_present() accesses '__efivars' directly, but when called via gsmi_init() Michel reports observing the following crash, BUG: unable to handle kernel NULL pointer dereference at (null) IP: variable_is_present+0x55/0x170 Call Trace: register_efivars+0x106/0x370 gsmi_init+0x2ad/0x3da do_one_initcall+0x3f/0x170 The reason for the crash is that '__efivars' hasn't been initialised nor has it been registered with register_efivars() by the time the google EFI SMI driver runs. The gsmi code uses its own struct efivars, and therefore, a different variable list. Fix the above crash by passing the registered struct efivars to variable_is_present(), so that we traverse the correct list. Reported-by: Michel Lespinasse <walken@google.com> Tested-by: Michel Lespinasse <walken@google.com> Cc: Mike Waychison <mikew@google.com> Cc: Matthew Garrett <matthew.garrett@nebula.com> Cc: Seiji Aguchi <seiji.aguchi@hds.com> Signed-off-by: Matt Fleming <matt.fleming@intel.com> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2013-04-26TTY: fix atime/mtime regressionJiri Slaby1-2/+16
In commit b0de59b5733d ("TTY: do not update atime/mtime on read/write") we removed timestamps from tty inodes to fix a security issue and waited if something breaks. Well, 'w', the utility to find out logged users and their inactivity time broke. It shows that users are inactive since the time they logged in. To revert to the old behaviour while still preventing attackers to guess the password length, we update the timestamps in one-minute intervals by this patch. Signed-off-by: Jiri Slaby <jslaby@suse.cz> Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2013-04-26aio: fix possible invalid memory access when DEBUG is enabledZhao Hongjiang1-1/+1
dprintk() shouldn't access @ring after it's unmapped. Signed-off-by: Zhao Hongjiang <zhaohongjiang@huawei.com> Cc: stable@vger.kernel.org Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2013-04-25Merge tag 'efi-urgent' into x86/urgentH. Peter Anvin1-2/+2
* The EFI variable anti-bricking algorithm merged in -rc8 broke booting on some Apple machines because they implement EFI spec 1.10, which doesn't provide a QueryVariableInfo() runtime function and the logic used to check for the existence of that function was insufficient. Fix from Josh Boyer. * The anti-bricking algorithm also introduced a compiler warning on 32-bit. Fix from Borislav Petkov. Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
2013-04-25parisc: use spin_lock_irqsave/spin_unlock_irqrestore for PTE updatesJohn David Anglin2-26/+26
User applications running on SMP kernels have long suffered from instability and random segmentation faults. This patch improves the situation although there is more work to be done. One of the problems is the various routines in pgtable.h that update page table entries use different locking mechanisms, or no lock at all (set_pte_at). This change modifies the routines to all use the same lock pa_dbit_lock. This lock is used for dirty bit updates in the interruption code. The patch also purges the TLB entries associated with the PTE to ensure that inconsistent values are not used after the page table entry is updated. The UP and SMP code are now identical. The change also includes a minor update to the purge_tlb_entries function in cache.c to improve its efficiency. Signed-off-by: John David Anglin <dave.anglin@bell.net> Cc: Helge Deller <deller@gmx.de> Signed-off-by: Helge Deller <deller@gmx.de>
2013-04-25parisc: disable -mlong-calls compiler option for kernel modulesHelge Deller1-2/+4
CONFIG_MLONGCALLS was introduced in commit ec758f98328da3eb933a25dc7a2eed01ef44d849 to overcome linker issues when linking huge linux kernels, e.g. with many modules linked in. But in the kernel module loader there is no support yet for the new relocation types, which is why modules built with -mlong-calls can't be loaded. Furthermore, for modules long calls are not really necessary, since we already use stub sections which resolve long distance calls. So, let's just disable this compiler option when compiling kernel modules. Signed-off-by: Helge Deller <deller@gmx.de>
2013-04-25parisc: uaccess: fix compiler warnings caused by __put_user castingWill Deacon1-10/+4
When targetting 32-bit processors, __put_user emits a pair of stw instructions for the 8-byte case. If the type of __val is a pointer, the marshalling code casts it to the wider integer type of u64, resulting in the following compiler warnings: kernel/signal.c: In function 'copy_siginfo_to_user': kernel/signal.c:2752:11: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast] kernel/signal.c:2752:11: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast] [...] This patch fixes the warnings by removing the marshalling code and using the correct output modifiers in the __put_{user,kernel}_asm64 macros so that GCC will allocate the right registers without the need to extract the two words explicitly. Cc: Helge Deller <deller@gmx.de> Signed-off-by: Will Deacon <will.deacon@arm.com> Signed-off-by: Helge Deller <deller@gmx.de>
2013-04-25parisc: Change kunmap macro to static inline functionJohn David Anglin1-1/+4
Change kunmap macro to static inline function to fix build error compiling drivers/base/dma-buf.c. Without the change, the following error can occur: CC drivers/base/dma-buf.o drivers/base/dma-buf.c: In function 'dma_buf_kunmap': drivers/base/dma-buf.c:427:46: error: macro "kunmap" passed 3 arguments, but takes just 1 I believe parisc is the only arch to implement kunmap using a macro. Signed-off-by: John David Anglin <dave.anglin@bell.net> Cc: "James E.J. Bottomley" <jejb@parisc-linux.org> Cc: Helge Deller <deller@gmx.de> Signed-off-by: Helge Deller <deller@gmx.de>
2013-04-25parisc: Provide __ucmpdi2 to resolve undefined references in 32 bit builds.John David Anglin3-1/+29
The Debian experimental linux source package (3.8.5-1) build fails with the following errors: ... MODPOST 2016 modules ERROR: "__ucmpdi2" [fs/btrfs/btrfs.ko] undefined! ERROR: "__ucmpdi2" [drivers/md/dm-verity.ko] undefined! The attached patch resolves this problem. It is based on the s390 implementation of ucmpdi2.c. Signed-off-by: John David Anglin <dave.anglin@bell.net> Cc: "James E.J. Bottomley" <jejb@parisc-linux.org> Signed-off-by: Helge Deller <deller@gmx.de>
2013-04-24Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparcLinus Torvalds1-1/+2
Pull sparc fix from David Miller: "Brown paper bag fix for sparc64" * git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc: sparc64: Fix missing put_cpu_var() in tlb_batch_add_one() when not batching.
2013-04-24Merge tag 'gpio-v3.9-lastminute' of ↵Linus Torvalds1-1/+6
git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-gpio Pull gpi fix from Linus Walleij: "This is a last minute revert for the GPIO tree, as Mike Dunn noticed breakage on some older PXA machines due to moving PXA GPIO initcalls to the module_init initlevel" * tag 'gpio-v3.9-lastminute' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-gpio: Revert "gpio: pxa: set initcall level to module init"
2013-04-24sparc64: Fix missing put_cpu_var() in tlb_batch_add_one() when not batching.David S. Miller1-1/+2
Reported-by: Meelis Roos <mroos@linux.ee> Signed-off-by: David S. Miller <davem@davemloft.net>
2013-04-24Revert "gpio: pxa: set initcall level to module init"Linus Walleij1-1/+6
This reverts commit 6c7e660a27da7494c670bfba21cfeba30457656c. The commit causes breakage on several older PXA machines. Reported-by: Mike Dunn <mikedunn@newsguy.com> Acked-by: Haojian Zhuang <haojian.zhuang@linaro.org> Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
2013-04-24efi: Check EFI revision in setup_efi_varsJosh Boyer1-1/+1
We need to check the runtime sys_table for the EFI version the firmware specifies instead of just checking for a NULL QueryVariableInfo. Older implementations of EFI don't have QueryVariableInfo but the runtime is a smaller structure, so the pointer to it may be pointing off into garbage. This is apparently the case with several Apple firmwares that support EFI 1.10, and the current check causes them to no longer boot. Fix based on a suggestion from Matthew Garrett. Signed-off-by: Josh Boyer <jwboyer@redhat.com> Signed-off-by: Matt Fleming <matt.fleming@intel.com>