aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2014-07-13Merge branch 'parisc-3.16-5' of ↵Linus Torvalds3-38/+13
git://git.kernel.org/pub/scm/linux/kernel/git/deller/parisc-linux Pull parisc fixes from Helge Deller: "The major patch in here is one which fixes the fanotify_mark() syscall in the compat layer of the 64bit parisc kernel. It went unnoticed so long, because the calling syntax when using a 64bit parameter in a 32bit syscall is quite complex and even worse, it may be even different if you call syscall() or the glibc wrapper. This patch makes the kernel accept the calling convention when called by the glibc wrapper. The other two patches are trivial and remove unused headers, #includes and adds the serial ports of the fastest C8000 workstation to the parisc-kernel internal hardware database" * 'parisc-3.16-5' of git://git.kernel.org/pub/scm/linux/kernel/git/deller/parisc-linux: parisc: drop unused defines and header includes parisc: fix fanotify_mark() syscall on 32bit compat kernel parisc: add serial ports of C8000/1GHz machine to hardware database
2014-07-13clk: spear3xx: Set proper clock parent of uart1/2Thomas Gleixner1-4/+10
The uarts only work when the parent is ras_ahb_clk. The stale 3.5 based ST tree does this in the board file. Add it to the clk init function. Not pretty, but the mess there is amazing anyway. Signed-off-by: Thomas Gleixner <[email protected]> Acked-by: Viresh Kumar <[email protected]> Signed-off-by: Mike Turquette <[email protected]>
2014-07-13clk: spear3xx: Use proper control register offsetThomas Gleixner1-1/+1
The control register is at offset 0x10, not 0x0. This is wreckaged since commit 5df33a62c (SPEAr: Switch to common clock framework). Signed-off-by: Thomas Gleixner <[email protected]> Cc: [email protected] Acked-by: Viresh Kumar <[email protected]> Signed-off-by: Mike Turquette <[email protected]>
2014-07-13parisc: drop unused defines and header includesHelge Deller1-36/+0
Signed-off-by: Helge Deller <[email protected]> Cc: [email protected] # 3.13+
2014-07-13parisc: fix fanotify_mark() syscall on 32bit compat kernelHelge Deller2-1/+11
On parisc we can not use the existing compat implementation for fanotify_mark() because for the 64bit mask parameter the higher and lower 32bits are ordered differently than what the compat function expects from big endian architectures. Specifically: It finally turned out, that on hppa we end up with different assignments of parameters to kernel arguments depending on if we call the glibc wrapper function int fanotify_mark (int __fanotify_fd, unsigned int __flags, uint64_t __mask, int __dfd, const char *__pathname); or directly calling the syscall manually syscall(__NR_fanotify_mark, ...) Reason is, that the syscall() function is implemented as C-function and because we now have the sysno as first parameter in front of the other parameters the compiler will unexpectedly add an empty paramenter in front of the u64 value to ensure the correct calling alignment for 64bit values. This means, on hppa you can't simply use syscall() to call the kernel fanotify_mark() function directly, but you have to use the glibc function instead. This patch fixes the kernel in the hppa-arch specifc coding to adjust the parameters in a way as if userspace calls the glibc wrapper function fanotify_mark(). Signed-off-by: Helge Deller <[email protected]> Cc: [email protected] # 3.13+
2014-07-13parisc: add serial ports of C8000/1GHz machine to hardware databaseHelge Deller1-1/+2
Signed-off-by: Helge Deller <[email protected]> Cc: [email protected] # 3.13+
2014-07-12Merge branch 'fixes' of git://git.infradead.org/users/vkoul/slave-dmaLinus Torvalds3-8/+28
Pull slave-dmaengine fixes from Vinod Koul: "We have two small fixes. First one from Daniel to handle 0-length packets for usb cppi dma. Second by Russell for imx-sdam cyclic residue reporting" * 'fixes' of git://git.infradead.org/users/vkoul/slave-dma: Update imx-sdma cyclic handling to report residue dma: cppi41: handle 0-length packets
2014-07-12Merge tag 'samsung-fixes-3' of ↵Olof Johansson6-8/+92
git://git.kernel.org/pub/scm/linux/kernel/git/kgene/linux-samsung into fixes Merge "Samsung fixes-3 for 3.16" from Kukjin Kim: Samsung fixes-3 for v3.16 - update the parent for Auudss clock because kernel will be hang during late boot if the parent clock is disabled in bootloader. - enable clk handing in power domain because while power domain on/off, its regarding clock source will be reset and it causes a problem so need to handle it. - add mux clocks to be used by power domain for exynos5420-mfc during power domain on/off and property in device tree also. - register cpuidle only for exynos4210 and exynos5250 because a system failure will be happened on other exynos SoCs. * tag 'samsung-fixes-3' of git://git.kernel.org/pub/scm/linux/kernel/git/kgene/linux-samsung: ARM: EXYNOS: Register cpuidle device only on exynos4210 and 5250 ARM: dts: Add clock property for mfc_pd in exynos5420 clk: exynos5420: Add IDs for clocks used in PD mfc ARM: EXYNOS: Add support for clock handling in power domain ARM: dts: Update the parent for Audss clocks in Exynos5420 Signed-off-by: Olof Johansson <[email protected]>
2014-07-12Merge tag 'usb-3.16-rc5' of ↵Linus Torvalds8-9/+28
git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb Pull USB fixes from Greg KH: "Here are some small USB fixes, PHY driver fixes (they ended up in this tree for lack of somewhere else to put them), and some new USB device ids" * tag 'usb-3.16-rc5' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb: phy: omap-usb2: Balance pm_runtime_enable() on probe failure and remove phy: core: Fix error path in phy_create() drivers: phy: phy-samsung-usb2.c: Add missing MODULE_DEVICE_TABLE phy: omap-usb2: fix devm_ioremap_resource error detection code phy: sun4i: depend on RESET_CONTROLLER USB: serial: ftdi_sio: Add Infineon Triboard USB: ftdi_sio: Add extra PID. usb: option: Add ID for Telewell TW-LTE 4G v2 USB: cp210x: add support for Corsair usb dongle
2014-07-12Merge tag 'tty-3.16-rc5' of ↵Linus Torvalds8-4/+26
git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty Pull tty/serial fixes from Greg KH: "Here are some small serial fixes that resolve some reported problems that started in 3.15 with some serial drivers. And there's a new dt binding for a serial driver, which was all that was needed for the renesas serial driver" * tag 'tty-3.16-rc5' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty: serial: sh-sci: Add device tree support for r8a7{778,740,3a4} and sh73a0 serial: imx: Fix build breakage serial: arc_uart: Use uart_circ_empty() for open-coded comparison serial: Test for no tx data on tx restart
2014-07-12Merge tag 'char-misc-3.16-rc5' of ↵Linus Torvalds4-7/+24
git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/char-misc Pull char/misc driver fixes from Greg KH: "Here are two hyperv driver fixes, and one i8k driver fix for 3.16" * tag 'char-misc-3.16-rc5' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/char-misc: i8k: Fix non-SMP operation Drivers: hv: util: Fix a bug in the KVP code Drivers: hv: vmbus: Fix a bug in the channel callback dispatch code
2014-07-12Merge tag 'staging-3.16-rc5' of ↵Linus Torvalds8-32/+23
git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging Pull IIO fixes from Greg KH: "Here are some IIO driver fixes for 3.16-rc5. Nothing major, just resolves some minor issues that have been reported" * tag 'staging-3.16-rc5' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging: iio: ti_am335x_adc: Fix: Use same step id at FIFOs both ends iio:tcs3472: Check for buffer enabled and locking iio: hid-sensor-prox: Fix return values iio: hid-sensor-gyro-3d: Fix return values iio: hid-sensor-als: Fix return values iio: hid-sensor-magn-3d: Fix return values iio: hid-sensor-accel-3d: Fix return values iio: hid-sensor-press: Fix return values
2014-07-12ext4: fix potential null pointer dereference in ext4_free_inodeNamjae Jeon1-1/+1
Fix potential null pointer dereferencing problem caused by e43bb4e612 ("ext4: decrement free clusters/inodes counters when block group declared bad") Reported-by: Dan Carpenter <[email protected]> Signed-off-by: Namjae Jeon <[email protected]> Signed-off-by: Ashish Sangwan <[email protected]> Signed-off-by: Theodore Ts'o <[email protected]> Reviewed-by: Lukas Czerner <[email protected]>
2014-07-12ext4: fix a potential deadlock in __ext4_es_shrink()Theodore Ts'o1-2/+2
This fixes the following lockdep complaint: [ INFO: possible circular locking dependency detected ] 3.16.0-rc2-mm1+ #7 Tainted: G O ------------------------------------------------------- kworker/u24:0/4356 is trying to acquire lock: (&(&sbi->s_es_lru_lock)->rlock){+.+.-.}, at: [<ffffffff81285fff>] __ext4_es_shrink+0x4f/0x2e0 but task is already holding lock: (&ei->i_es_lock){++++-.}, at: [<ffffffff81286961>] ext4_es_insert_extent+0x71/0x180 which lock already depends on the new lock. Possible unsafe locking scenario: CPU0 CPU1 ---- ---- lock(&ei->i_es_lock); lock(&(&sbi->s_es_lru_lock)->rlock); lock(&ei->i_es_lock); lock(&(&sbi->s_es_lru_lock)->rlock); *** DEADLOCK *** 6 locks held by kworker/u24:0/4356: #0: ("writeback"){.+.+.+}, at: [<ffffffff81071d00>] process_one_work+0x180/0x560 #1: ((&(&wb->dwork)->work)){+.+.+.}, at: [<ffffffff81071d00>] process_one_work+0x180/0x560 #2: (&type->s_umount_key#22){++++++}, at: [<ffffffff811a9c74>] grab_super_passive+0x44/0x90 #3: (jbd2_handle){+.+...}, at: [<ffffffff812979f9>] start_this_handle+0x189/0x5f0 #4: (&ei->i_data_sem){++++..}, at: [<ffffffff81247062>] ext4_map_blocks+0x132/0x550 #5: (&ei->i_es_lock){++++-.}, at: [<ffffffff81286961>] ext4_es_insert_extent+0x71/0x180 stack backtrace: CPU: 0 PID: 4356 Comm: kworker/u24:0 Tainted: G O 3.16.0-rc2-mm1+ #7 Hardware name: Bochs Bochs, BIOS Bochs 01/01/2011 Workqueue: writeback bdi_writeback_workfn (flush-253:0) ffffffff8213dce0 ffff880014b07538 ffffffff815df0bb 0000000000000007 ffffffff8213e040 ffff880014b07588 ffffffff815db3dd ffff880014b07568 ffff880014b07610 ffff88003b868930 ffff88003b868908 ffff88003b868930 Call Trace: [<ffffffff815df0bb>] dump_stack+0x4e/0x68 [<ffffffff815db3dd>] print_circular_bug+0x1fb/0x20c [<ffffffff810a7a3e>] __lock_acquire+0x163e/0x1d00 [<ffffffff815e89dc>] ? retint_restore_args+0xe/0xe [<ffffffff815ddc7b>] ? __slab_alloc+0x4a8/0x4ce [<ffffffff81285fff>] ? __ext4_es_shrink+0x4f/0x2e0 [<ffffffff810a8707>] lock_acquire+0x87/0x120 [<ffffffff81285fff>] ? __ext4_es_shrink+0x4f/0x2e0 [<ffffffff8128592d>] ? ext4_es_free_extent+0x5d/0x70 [<ffffffff815e6f09>] _raw_spin_lock+0x39/0x50 [<ffffffff81285fff>] ? __ext4_es_shrink+0x4f/0x2e0 [<ffffffff8119760b>] ? kmem_cache_alloc+0x18b/0x1a0 [<ffffffff81285fff>] __ext4_es_shrink+0x4f/0x2e0 [<ffffffff812869b8>] ext4_es_insert_extent+0xc8/0x180 [<ffffffff812470f4>] ext4_map_blocks+0x1c4/0x550 [<ffffffff8124c4c4>] ext4_writepages+0x6d4/0xd00 ... Reported-by: Minchan Kim <[email protected]> Signed-off-by: Theodore Ts'o <[email protected]> Reported-by: Minchan Kim <[email protected]> Cc: [email protected] Cc: Zheng Liu <[email protected]>
2014-07-12Documenation/laptops: rename and update hpfall.cPali Rohár2-16/+47
Dell kernel driver dell-smo8800 provides same freefall interface as hp_accel so program hpfall.c works also on Dell laptops. So rename it to freefall.c. Dell driver does not provide hp::hddprotect led so make sure that freefall.c works also if hp::hddprotect does not exist in sysfs. Additionally write info to syslog. Signed-off-by: Pali Rohár <[email protected]> Cc: Sonal Santan <[email protected]> Acked-by: Pavel Machek <[email protected]> Signed-off-by: Randy Dunlap <[email protected]> Signed-off-by: Linus Torvalds <[email protected]>
2014-07-12DocBook: fix various typosMasanari Iida9-13/+13
This patch fixed spelling typo in various template files within Documentation/Docbook. Signed-off-by: Masanari Iida <[email protected]> Signed-off-by: Randy Dunlap <[email protected]> Signed-off-by: Linus Torvalds <[email protected]>
2014-07-12DocBook: fix mtdnand typosMasanari Iida1-15/+15
This patch fixed spelling typo found in DocBook/mtdnand.tmpl. Signed-off-by: Masanari Iida <[email protected]> Signed-off-by: Randy Dunlap <[email protected]> Signed-off-by: Linus Torvalds <[email protected]>
2014-07-12scripts/kernel-doc: handle object-like macrosHoria Geanta1-3/+12
Object-like macros are different than function-like macros: https://gcc.gnu.org/onlinedocs/cpp/Object-like-Macros.html https://gcc.gnu.org/onlinedocs/cpp/Function-like-Macros.html They are not parsed correctly, generating invalid intermediate files (xmls) for cases like: #define BIT_MASK (0xFF << BIT_SHIFT) where "OxFF <<" is considered to be parameter type. When parsing, we can differentiate beween these two types of macros by checking whether there is at least one whitespace b/w "#define" and first opening parenthesis. Signed-off-by: Horia Geanta <[email protected]> Signed-off-by: Randy Dunlap <[email protected]> Signed-off-by: Linus Torvalds <[email protected]>
2014-07-12Documentation/Changes: clean up mcelog paragraphPaul Bolle1-6/+3
The paragraph on mcelog currently describes kernel v2.6.31. In that kernel the mce code (for i386, that is) was in transition. Ever since v2.6.32 the situation is much simpler (eg, mcelog is now needed to process events on almost all x86 machines, i386 and x86-64). Since this "document is designed to provide a list of the minimum levels of software necessary to run the 3.0 kernels" let's just describe that situation. Signed-off-by: Paul Bolle <[email protected]> Acked-by: Andi Kleen <[email protected]> Signed-off-by: Randy Dunlap <[email protected]> Signed-off-by: Linus Torvalds <[email protected]>
2014-07-12ARM: at91: at91sam9x5: add clocks for usb deviceBo Shen1-0/+2
Add clocks for usb device, or else switch to CCF, the gadget won't work. Reported-by: Jiri Prchal <[email protected]> Signed-off-by: Bo Shen <[email protected]> Acked-by: Alexandre Belloni <[email protected]> Tested-by: Jiri Prchal <[email protected]> Signed-off-by: Nicolas Ferre <[email protected]> Signed-off-by: Olof Johansson <[email protected]>
2014-07-12Merge branch 'kprobes-test-fixes' of git://git.linaro.org/people/tixy/kernel ↵Russell King504-4308/+7721
into fixes
2014-07-11phy: omap-usb2: Balance pm_runtime_enable() on probe failure and removeRoger Quadros1-2/+5
If probe fails then we need to call pm_runtime_disable() to balance out the previous pm_runtime_enable() call. Else it will cause unbalanced pm_runtime_enable() call in the succeding probe call. This anomaly was observed when the call to devm_phy_create() failed with -EPROBE_DEFER. Balance out the pm_runtime_enable() call in .remove() as well. Signed-off-by: Roger Quadros <[email protected]> Signed-off-by: Kishon Vijay Abraham I <[email protected]> Signed-off-by: Greg Kroah-Hartman <[email protected]>
2014-07-11phy: core: Fix error path in phy_create()Roger Quadros1-3/+4
Prevent resources from being freed twice in case device_add() call fails within phy_create(). Also use ida_simple_remove() instead of ida_remove() as we had used ida_simple_get() to allocate the ida. Cc: 3.13+ <[email protected]> # 3.13+ Signed-off-by: Roger Quadros <[email protected]> Signed-off-by: Kishon Vijay Abraham I <[email protected]> Signed-off-by: Greg Kroah-Hartman <[email protected]>
2014-07-11drivers: phy: phy-samsung-usb2.c: Add missing MODULE_DEVICE_TABLESjoerd Simons1-0/+1
Allow phy-exynos-usb2 to be autoloaded based on devicetree information. Tested on Odroid X2 with its USB subsystem build as modules. Signed-off-by: Sjoerd Simons <[email protected]> Signed-off-by: Kishon Vijay Abraham I <[email protected]> Signed-off-by: Greg Kroah-Hartman <[email protected]>
2014-07-11phy: omap-usb2: fix devm_ioremap_resource error detection codeHimangi Saraogi1-2/+2
devm_ioremap_resource returns an ERR_PTR value, not NULL, on failure. A simplified version of the semantic match that finds this problem is as follows: // <smpl> @@ expression e,e1; statement S; @@ *e = devm_ioremap_resource(...); if (!e1) S // </smpl> Signed-off-by: Himangi Saraogi <[email protected]> Acked-by: Julia Lawall <[email protected]> Signed-off-by: Kishon Vijay Abraham I <[email protected]> Signed-off-by: Greg Kroah-Hartman <[email protected]>
2014-07-11phy: sun4i: depend on RESET_CONTROLLERMaxime Ripard1-0/+1
The driver depend on the reset framework in a mandatory way. Make sure reset_control_get is defined by adding this dependency in Kconfig Signed-off-by: Maxime Ripard <[email protected]> Reported-by: Arnd Bergmann <[email protected]> Signed-off-by: Kishon Vijay Abraham I <[email protected]> Signed-off-by: Greg Kroah-Hartman <[email protected]>
2014-07-11USB: serial: ftdi_sio: Add Infineon TriboardMichal Sojka2-0/+8
This adds support for Infineon TriBoard TC1798 [1]. Only interface 1 is used as serial line (see [2], Figure 8-6). [1] http://www.infineon.com/cms/de/product/microcontroller/development-tools-software-and-kits/tricore-tm-development-tools-software-and-kits/starterkits-and-evaluation-boards/starter-kit-tc1798/channel.html?channel=db3a304333b8a7ca0133cfa3d73e4268 [2] http://www.infineon.com/dgdl/TriBoardManual-TC1798-V10.pdf?folderId=db3a304412b407950112b409ae7c0343&fileId=db3a304333b8a7ca0133cfae99fe426a Signed-off-by: Michal Sojka <[email protected]> Cc: Johan Hovold <[email protected]> Cc: stable <[email protected]> Signed-off-by: Greg Kroah-Hartman <[email protected]>
2014-07-11USB: add reset resume quirk for usb3503Joonyoung Shim1-0/+3
The usb device will autoresume from choose_wakeup() if it is autosuspended with the wrong wakeup setting, but below errors occur because usb3503 misc driver will switch to standby mode when suspended. As add USB_QUIRK_RESET_RESUME, it can stop setting wrong wakeup from autosuspend_check(). [ 7.734717] usb 1-3: reset high-speed USB device number 3 using exynos-ehci [ 7.854658] usb 1-3: device descriptor read/64, error -71 [ 8.079657] usb 1-3: device descriptor read/64, error -71 [ 8.294664] usb 1-3: reset high-speed USB device number 3 using exynos-ehci [ 8.414658] usb 1-3: device descriptor read/64, error -71 [ 8.639657] usb 1-3: device descriptor read/64, error -71 [ 8.854667] usb 1-3: reset high-speed USB device number 3 using exynos-ehci [ 9.264598] usb 1-3: device not accepting address 3, error -71 [ 9.374655] usb 1-3: reset high-speed USB device number 3 using exynos-ehci [ 9.784601] usb 1-3: device not accepting address 3, error -71 [ 9.784838] usb usb1-port3: device 1-3 not suspended yet Signed-off-by: Joonyoung Shim <[email protected]> Signed-off-by: Greg Kroah-Hartman <[email protected]>
2014-07-11usb: usb3503: add PM functionsJoonyoung Shim1-2/+32
The usb3503 needs to switch to standby mode while suspending and should switch to hub mode when resumed. Also we can control clock on PM function. Signed-off-by: Joonyoung Shim <[email protected]> Signed-off-by: Greg Kroah-Hartman <[email protected]>
2014-07-11serial: sh-sci: Add device tree support for r8a7{778,740,3a4} and sh73a0Simon Horman1-0/+7
Simply document new compat strings. There appears to be no need for a driver updates. Signed-off-by: Simon Horman <[email protected]> Signed-off-by: Greg Kroah-Hartman <[email protected]>
2014-07-11serial: imx: Fix build breakagePeter Hurley1-1/+1
Fix breakage introduced by commit c557d392fbf5badd693ea1946a4317c87a26a716, 'serial: Test for no tx data on tx restart'. Reported-by: Stephen Rothwell <[email protected]> Signed-off-by: Peter Hurley <[email protected]> Signed-off-by: Greg Kroah-Hartman <[email protected]>
2014-07-11Merge branch 'x86-urgent-for-linus' of ↵Linus Torvalds2-0/+7
git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip Pull x86 fixes from Peter Anvin: "A couple of further build fixes for the VDSO code. This is turning into a bit of a headache, and Andy has already come up with a more ultimate cleanup, but most likely that is 3.17 material" * 'x86-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: x86-32, vdso: Fix vDSO build error due to missing align_vdso_addr() x86-64, vdso: Fix vDSO build breakage due to empty .rela.dyn
2014-07-11Merge branch 'for-3.16' of git://linux-nfs.org/~bfields/linuxLinus Torvalds1-1/+1
Pull nfsd bugfix from Bruce Fields: "Another xdr encoding regression that may cause incorrect encoding on failures of certain readdirs" * 'for-3.16' of git://linux-nfs.org/~bfields/linux: nfsd: Fix bad reserving space for encoding rdattr_error
2014-07-11Merge tag 'arm64-fixes' of ↵Linus Torvalds2-0/+4
git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux Pull arm64 fixes from Catalin Marinas: "ARM64 implementation of TASK_SIZE_OF and exporting two functions to modules" * tag 'arm64-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux: arm64: implement TASK_SIZE_OF arm64: export __cpu_{clear,copy}_user_page functions
2014-07-11ext4: revert commit which was causing fs corruption after journal replaysTheodore Ts'o1-27/+24
Commit 007649375f6af2 ("ext4: initialize multi-block allocator before checking block descriptors") causes the block group descriptor's count of the number of free blocks to become inconsistent with the number of free blocks in the allocation bitmap. This is a harmless form of fs corruption, but it causes the kernel to potentially remount the file system read-only, or to panic, depending on the file systems's error behavior. Thanks to Eric Whitney for his tireless work to reproduce and to find the guilty commit. Fixes: 007649375f6af2 ("ext4: initialize multi-block allocator before checking block descriptors" Cc: [email protected] # 3.15 Reported-by: David Jander <[email protected]> Reported-by: Matteo Croce <[email protected]> Tested-by: Eric Whitney <[email protected]> Suggested-by: Eric Whitney <[email protected]> Signed-off-by: Theodore Ts'o <[email protected]>
2014-07-11Merge tag 'dm-3.16-fixes' of ↵Linus Torvalds5-22/+28
git://git.kernel.org/pub/scm/linux/kernel/git/device-mapper/linux-dm Pull device mapper fixes from Mike Snitzer: - Fix DM multipath IO hang regression from 3.15 due to logic bug in multipath_busy. This impacted cable-pull testing and also the ability to boot with IPR SCSI on a POWER8 box. - Fix possible deadlock with deferred device removal by using a new dedicated workqueue rather than using the system workqueue. - Fix NULL pointer crash due to race condition in dm-io's wake up code for sync_io by using a completion. - Update dm-crypt and dm-zero author name following legal name change; this is important to Jana so I didn't see any reason to hold it back. * tag 'dm-3.16-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/device-mapper/linux-dm: dm mpath: fix IO hang due to logic bug in multipath_busy dm io: fix a race condition in the wake up code for sync_io dm crypt, dm zero: update author name following legal name change dm: allocate a special workqueue for deferred device removal
2014-07-11Merge branch 'merge' of ↵Linus Torvalds11-37/+37
git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc Pull powerpc fixes from Ben Herrenschmidt: "Here are a few more powerpc fixes for 3.16 There's a small series of 3 patches that fix saving/restoring MMUCR2 when using KVM without which perf goes completely bonkers in the host system. Another perf fix from Anton that's been rotting away in patchwork due to my poor eyesight, a couple of compile fixes, a little addition to the WSP removal by Michael (removing a bit more dead stuff) and a fix for an embarassing regression with our soft irq masking" * 'merge' of git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc: powerpc/perf: Never program book3s PMCs with values >= 0x80000000 powerpc: Disable RELOCATABLE for COMPILE_TEST with PPC64 powerpc/perf: Clear MMCR2 when enabling PMU powerpc/perf: Add PPMU_ARCH_207S define powerpc/kvm: Remove redundant save of SIER AND MMCR2 powerpc/powernv: Check for IRQHAPPENED before sleeping powerpc: Clean up MMU_FTRS_A2 and MMU_FTR_TYPE_3E powerpc/cell: Fix compilation with CONFIG_COREDUMP=n
2014-07-11m68k: Export mach_random_get_entropy to modulesGeert Uytterhoeven1-0/+2
When a module calls random_get_entropy(): ERROR: "mach_random_get_entropy" [crypto/drbg.ko] undefined! make[1]: *** [__modpost] Error 1 Signed-off-by: Geert Uytterhoeven <[email protected]>
2014-07-11powerpc/perf: Never program book3s PMCs with values >= 0x80000000Anton Blanchard1-1/+16
We are seeing a lot of PMU warnings on POWER8: Can't find PMC that caused IRQ Looking closer, the active PMC is 0 at this point and we took a PMU exception on the transition from negative to 0. Some versions of POWER8 have an issue where they edge detect and not level detect PMC overflows. A number of places program the PMC with (0x80000000 - period_left), where period_left can be negative. We can either fix all of these or just ensure that period_left is always >= 1. This patch takes the second option. Cc: <[email protected]> Signed-off-by: Anton Blanchard <[email protected]> Signed-off-by: Benjamin Herrenschmidt <[email protected]>
2014-07-10Merge branch 'drm-fixes' of git://people.freedesktop.org/~airlied/linuxLinus Torvalds26-73/+177
Pull drm fixes from Dave Airlie: "Nothing too scary, we have one outstanding i915 regression but Daniel has promised the fix as soon as he's finished testing it a bit. Fixes for the main x86 drivers: - radeon: dpm fixes, displayport regression fix - i915: quirks for backlight regression, edp reboot fix, valleyview black screen fixes - nouveau: display port regression fixes, fix for memory reclocking" * 'drm-fixes' of git://people.freedesktop.org/~airlied/linux: drm/radeon/dpm: Reenabling SS on Cayman drm/radeon: fix typo in ci_stop_dpm() drm/radeon: fix typo in golden register setup on evergreen drm/radeon: only print meaningful VM faults drm/radeon/dp: return -EIO for flags not zero case drm/i915/vlv: T12 eDP panel timing enforcement during reboot drm/i915: Only unbind vgacon, not other console drivers drm/i915: Don't clobber the GTT when it's within stolen memory drm/i915/vlv: Update the DSI ULPS entry/exit sequence drm/i915/vlv: DPI FIFO empty check is not needed drm/i915: Toshiba CB35 has a controllable backlight drm/i915: Acer C720 and C720P have controllable backlights drm/i915: quirk asserts controllable backlight presence, overriding VBT drm/nouveau/ram: fix test for gpio presence drm/nouveau/dp: workaround broken display drm/nouveau/dp: fix required link bandwidth calculations drm/nouveau/kms: restore fbcon after display has been resumed drm/nv50-/kms: pass a non-zero value for head to sor dpms methods drm/nouveau/fb: Prevent inlining of ramfuc_reg drm/gk104/ram: bash mpll bit 31 on
2014-07-11powerpc: Disable RELOCATABLE for COMPILE_TEST with PPC64Guenter Roeck1-1/+2
powerpc:allmodconfig has been failing for some time with the following error. arch/powerpc/kernel/exceptions-64s.S: Assembler messages: arch/powerpc/kernel/exceptions-64s.S:1312: Error: attempt to move .org backwards make[1]: *** [arch/powerpc/kernel/head_64.o] Error 1 A number of attempts to fix the problem by moving around code have been unsuccessful and resulted in failed builds for some configurations and the discovery of toolchain bugs. Fix the problem by disabling RELOCATABLE for COMPILE_TEST builds instead. While this is less than perfect, it avoids substantial code changes which would otherwise be necessary just to make COMPILE_TEST builds happy and might have undesired side effects. Signed-off-by: Guenter Roeck <[email protected]> Signed-off-by: Benjamin Herrenschmidt <[email protected]>
2014-07-11powerpc/perf: Clear MMCR2 when enabling PMUJoel Stanley1-0/+3
On POWER8 when switching to a KVM guest we set bits in MMCR2 to freeze the PMU counters. Aside from on boot they are then never reset, resulting in stuck perf counters for any user in the guest or host. We now set MMCR2 to 0 whenever enabling the PMU, which provides a sane state for perf to use the PMU counters under either the guest or the host. This was manifesting as a bug with ppc64_cpu --frequency: $ sudo ppc64_cpu --frequency WARNING: couldn't run on cpu 0 WARNING: couldn't run on cpu 8 ... WARNING: couldn't run on cpu 144 WARNING: couldn't run on cpu 152 min: 18446744073.710 GHz (cpu -1) max: 0.000 GHz (cpu -1) avg: 0.000 GHz The command uses a perf counter to measure CPU cycles over a fixed amount of time, in order to approximate the frequency of the machine. The counters were returning zero once a guest was started, regardless of weather it was still running or had been shut down. By dumping the value of MMCR2, it was observed that once a guest is running MMCR2 is set to 1s - which stops counters from running: $ sudo sh -c 'echo p > /proc/sysrq-trigger' CPU: 0 PMU registers, ppmu = POWER8 n_counters = 6 PMC1: 5b635e38 PMC2: 00000000 PMC3: 00000000 PMC4: 00000000 PMC5: 1bf5a646 PMC6: 5793d378 PMC7: deadbeef PMC8: deadbeef MMCR0: 0000000080000000 MMCR1: 000000001e000000 MMCRA: 0000040000000000 MMCR2: fffffffffffffc00 EBBHR: 0000000000000000 EBBRR: 0000000000000000 BESCR: 0000000000000000 SIAR: 00000000000a51cc SDAR: c00000000fc40000 SIER: 0000000001000000 This is done unconditionally in book3s_hv_interrupts.S upon entering the guest, and the original value is only save/restored if the host has indicated it was using the PMU. This is okay, however the user of the PMU needs to ensure that it is in a defined state when it starts using it. Fixes: e05b9b9e5c10 ("powerpc/perf: Power8 PMU support") Cc: [email protected] Signed-off-by: Joel Stanley <[email protected]> Acked-by: Michael Ellerman <[email protected]> Signed-off-by: Benjamin Herrenschmidt <[email protected]>
2014-07-11powerpc/perf: Add PPMU_ARCH_207S defineJoel Stanley3-6/+5
Instead of separate bits for every POWER8 PMU feature, have a single one for v2.07 of the architecture. This saves us adding a MMCR2 define for a future patch. Cc: [email protected] Signed-off-by: Joel Stanley <[email protected]> Acked-by: Michael Ellerman <[email protected]> Signed-off-by: Benjamin Herrenschmidt <[email protected]>
2014-07-11powerpc/kvm: Remove redundant save of SIER AND MMCR2Joel Stanley1-5/+0
These two registers are already saved in the block above. Aside from being unnecessary, by the time we get down to the second save location r8 no longer contains MMCR2, so we are clobbering the saved value with PMC5. MMCR2 primarily consists of counter freeze bits. So restoring the value of PMC5 into MMCR2 will most likely have the effect of freezing counters. Fixes: 72cde5a88d37 ("KVM: PPC: Book3S HV: Save/restore host PMU registers that are new in POWER8") Cc: [email protected] Signed-off-by: Joel Stanley <[email protected]> Acked-by: Michael Ellerman <[email protected]> Acked-by: Paul Mackerras <[email protected]> Reviewed-by: Alexander Graf <[email protected]> Signed-off-by: Benjamin Herrenschmidt <[email protected]>
2014-07-11powerpc/powernv: Check for IRQHAPPENED before sleepingPreeti U Murthy1-1/+1
Commit 8d6f7c5a: "powerpc/powernv: Make it possible to skip the IRQHAPPENED check in power7_nap()" added code that prevents cpus from checking for pending interrupts just before entering sleep state, which is wrong. These interrupts are delivered during the soft irq disabled state of the cpu. A cpu cannot enter any idle state with pending interrupts because they will never be serviced until the next time the cpu is woken up by some other interrupt. Its only then that the pending interrupts are replayed. This can result in device timeouts or warnings about this cpu being stuck. This patch fixes ths issue by ensuring that cpus check for pending interrupts just before entering any idle state as long as they are not in the path of split core operations. Signed-off-by: Preeti U Murthy <[email protected]> Acked-by: Michael Ellerman <[email protected]> Signed-off-by: Benjamin Herrenschmidt <[email protected]>
2014-07-11powerpc: Clean up MMU_FTRS_A2 and MMU_FTR_TYPE_3EMichael Ellerman2-20/+2
In fb5a515704d7 "powerpc: Remove platforms/wsp and associated pieces", we removed the last user of MMU_FTRS_A2. So remove it. MMU_FTRS_A2 was the last user of MMU_FTR_TYPE_3E, so remove it also. This leaves some unreachable code in mmu_context_nohash.c, so remove that also. Signed-off-by: Michael Ellerman <[email protected]> Signed-off-by: Benjamin Herrenschmidt <[email protected]>
2014-07-11powerpc/cell: Fix compilation with CONFIG_COREDUMP=nMichael Ellerman3-3/+8
Commit 046d662f4818 "coredump: make core dump functionality optional" made the coredump optional, but didn't update the spufs code that depends on it. That leads to build errors such as: arch/powerpc/platforms/built-in.o: In function `.spufs_arch_write_note': coredump.c:(.text+0x22cd4): undefined reference to `.dump_emit' coredump.c:(.text+0x22cf4): undefined reference to `.dump_emit' coredump.c:(.text+0x22d0c): undefined reference to `.dump_align' coredump.c:(.text+0x22d48): undefined reference to `.dump_emit' coredump.c:(.text+0x22e7c): undefined reference to `.dump_skip' Fix it by adding some ifdefs in the cell code. Signed-off-by: Michael Ellerman <[email protected]> Signed-off-by: Benjamin Herrenschmidt <[email protected]>
2014-07-10Merge branch 'rc-fixes' of ↵Linus Torvalds2-48/+57
git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild Pull kbuild fixes from Michal Marek: "Three more fixes for the relative build dir feature: - Shut up make -s again - Fix for rpm/deb/tar-pkg with O=<subdir> - Fix for CONFIG_EXTRA_FIRMWARE" * 'rc-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild: firmware: Create directories for external firmware kbuild: Fix packaging targets with relative $(srctree) kbuild: Do not print the build directory with make -s
2014-07-10Merge tag 'pm+acpi-3.16-rc5' of ↵Linus Torvalds12-104/+317
git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm Pull ACPI and power management fixes from Rafael Wysocki: "These are a few regression fixes for ACPI device enumeration and resources management, intel_pstate and cpufreq, a revert of an ACPI commit removing user space interfaces in /proc that we incorrectly thought were not used any more, fixes for some long-standing concurrency issues in the ACPI EC driver, two ACPI battery driver fixes, stable-candidate fixes for intel_pstate, an ACPI-related fix for i915 and two new ACPI video blacklist entries for Win8-oriented BIOSes. Specifics: - Missing device ID for ACPI enumeration of PNP devices that we overlooked during the recent rework of that code from Zhang Rui. - Fix for a problem introduced during the 3.14 cycle in the ACPI device resources management code and causing it to reject all resources of length 0 although some of them are actually valid which affects serial ports detection on a number of systems. From Andy Whitcroft. - intel_pstate fix for a boot problem on some BayTrail-based systems introduced by a previous fix related to that platform during the 3.13 cycle from Dirk Brandewie. - Revert of a 3.13 commit that removed the ACPI AC /proc interface which turns out to be still needed by some old utilities (kpowersave from kde 3.5.10 in particular) from Lan Tianyu. - cpufreq build fix for the davinci ARM platform from Prabhakar Lad (the breakage was introduced during the 3.10 cycle). - ACPI-related i915 fix preventing firmware on some Thinkpad laptops from setting backlight levels incorrectly during AC plug/unplug. From Aaron Lu. - Fixes for two nasty race conditions in the ACPI embedded controller driver that may be responsible for a number of past bug reports related to the EC from Lv Zhang and a fix for two memory leaks in error code paths in that driver from Colin Ian King. - Fixes for a couple of corner-case issues in the intel_pstate driver (all candidates for -stable) from Dirk Brandewie and Vincent Minet. - Fixes for two corner-case issues in the ACPI battery driver from Josef Gajdusek and Lan Tianyu. - Two new ACPI video blacklist entries for Acer TravelMate B113 and Dell Inspiron 5737 from Edward Lin and Martin Kepplinger" * tag 'pm+acpi-3.16-rc5' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm: ACPI / PNP: add soc_button_array device ID to PNP IDs list cpufreq: Makefile: fix compilation for davinci platform ACPI / video: Add Acer TravelMate B113 to native backlight blacklist ACPI / video: Add Dell Inspiron 5737 to the blacklist ACPI / i915: ignore firmware requests for backlight change ACPI / battery: fix wrong value of capacity_now reported when fully charged ACPI / resources: only reject zero length resources based at address zero ACPI / battery: Retry to get battery information if failed during probing ACPI / EC: Free saved_ec on error exit path ACPI / EC: Add detailed fields debugging support of EC_SC(R). ACPI / EC: Update revision due to recent changes ACPI / EC: Fix race condition in ec_transaction_completed() ACPI / EC: Remove duplicated ec_wait_ibf0() waiter ACPI / EC: Add asynchronous command byte write support ACPI / EC: Avoid race condition related to advance_transaction() intel_pstate: Set CPU number before accessing MSRs intel_pstate: Update documentation of {max,min}_perf_pct sysfs files intel_pstate: don't touch turbo bit if turbo disabled or unavailable. intel_pstate: Fix setting VID Revert "ACPI / AC: Remove AC's proc directory."
2014-07-11Merge branch 'drm-fixes-3.16' of git://people.freedesktop.org/~agd5f/linux ↵Dave Airlie6-18/+18
into drm-fixes This new request drops the pageflipping fixes for now. Just a few small fixes for dpm, DP, and a fix for a hang on boot evergreen. * 'drm-fixes-3.16' of git://people.freedesktop.org/~agd5f/linux: drm/radeon/dpm: Reenabling SS on Cayman drm/radeon: fix typo in ci_stop_dpm() drm/radeon: fix typo in golden register setup on evergreen drm/radeon: only print meaningful VM faults drm/radeon/dp: return -EIO for flags not zero case