aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2014-07-24r8152: fix the checking of the usb speedhayeswang1-4/+3
When the usb speed of the RTL8152 is not high speed, the USB_DEV_STAT[2:1] should be equal to [0 1]. That is, the STAT_SPEED_FULL should be equal to 2. There is a easy way to check the usb speed by the speed field of the struct usb_device. Use it to replace the original metheod. Signed-off-by: Hayes Wang <[email protected]> Spotted-by: Andrey Utkin <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2014-07-24Merge tag 'master-2014-07-23' of ↵David S. Miller6-21/+38
git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless John W. Linville says: ==================== pull request: wireless 2014-07-24 Please pull this batch of fixes intended for the 3.16 stream... For the mac80211 fixes, Johannes says: "I have two fixes: one for tracing that fixes a long-standing NULL pointer dereference, and one for a mac80211 issue that causes iwlmvm to send invalid frames during authentication/association." and, "One more fix - for a bug in the newly introduced code that obtains rate control information for stations." For the iwlwifi fixes, Emmanuel says: "It includes a merge damage fix. This region has been changed in -next and -fixes quite a few times and apparently, I failed to handle it properly, so here the fix. Along with that I have a fix from Eliad to properly handle overlapping BSS in AP mode." On top of that, Felix provides and ath9k fix for Tx stalls that happen after an aggregation session failure. Please let me know if there are problems! There are some changes here that will cause merge conflicts in -next. Once you merge this I can pull it into wireless-next and resolve those issues. ==================== Signed-off-by: David S. Miller <[email protected]>
2014-07-24Merge branch 'mdio_module_unload'David S. Miller2-0/+14
Ezequiel Garcia says: ==================== net: phy: Prevent an MDIO bus from being unloaded while in use Changes from v1: * Dropped the unneeded module_put() on phy_attach_direct(). The motivation of this small series is to fix the current lack of relationship between an ethernet driver and the MDIO bus behind the PHY device. In such cases, we would find no visible link between the drivers: $ lsmod Module Size Used by Not tainted mvmdio 2941 0 mvneta 22069 0 Which means nothing prevents the MDIO driver from being removed: $ modprobe -r mvmdio # Unable to handle kernel NULL pointer dereference at virtual address 00000060 pgd = c0004000 [00000060] *pgd=00000000 Internal error: Oops: 17 [#1] SMP ARM Modules linked in: mvneta [last unloaded: mvmdio] CPU: 0 PID: 22 Comm: kworker/0:1 Not tainted 3.16.0-rc5-01127-g62c0816-dirty #608 Workqueue: events_power_efficient phy_state_machine task: df5ec840 ti: df67a000 task.ti: df67a000 PC is at phy_state_machine+0x1c/0x468 LR is at phy_state_machine+0x18/0x468 [snip] This patchset fixes this problem by adding a pair of module_{get,put}, so the module reference count is increased when the PHY device is attached and is decreased when the PHY is detached. Tested with mvneta and mv643xx_eth drivers, which depend on the mvmdio driver to handle MDIO. This series applies on both net and net-next branches. ==================== Signed-off-by: David S. Miller <[email protected]>
2014-07-24net: phy: Ensure the MDIO bus module is heldEzequiel Garcia1-0/+13
This commit adds proper module_{get,put} to prevent the MDIO bus module from being unloaded while the phydev is connected. By doing so, we fix a kernel panic produced when a MDIO driver is removed, but the phydev that relies on it is attached and running. Signed-off-by: Ezequiel Garcia <[email protected]> Reviewed-by: Florian Fainelli <[email protected]> Tested-by: Florian Fainelli <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2014-07-24net: phy: Set the driver when registering an MDIO bus deviceEzequiel Garcia1-0/+1
mdiobus_register() registers a device which is already bound to a driver. Hence, the driver pointer should be set properly in order to track down the driver associated to the MDIO bus. This will be used to allow ethernet driver to pin down a MDIO bus driver, preventing it from being unloaded while the PHY device is running. Reviewed-by: Florian Fainelli <[email protected]> Tested-by: Florian Fainelli <[email protected]> Signed-off-by: Ezequiel Garcia <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2014-07-24bnx2x: fix set_setting for some PHYsYaniv Rosner1-0/+1
Allow set_settings() to complete succesfully even if link is not estabilished and port type isn't known yet. Signed-off-by: Yaniv Rosner <[email protected]> Signed-off-by: Dmitry Kravkov <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2014-07-24Merge git://git.kernel.org/pub/scm/linux/kernel/git/pablo/nfDavid S. Miller1-1/+0
Pablo Neira Ayuso says: ==================== Via Simon Horman, I received the following one-liner for your net tree: 1) Fix crash when exiting from netns that uses IPVS and conntrack, from Julian Anastasov via Simon Horman. ==================== Signed-off-by: David S. Miller <[email protected]>
2014-07-24x86: Merge tag 'ras_urgent' into x86/urgentH. Peter Anvin1-4/+6
Promote one fix for 3.16 This fix was necessary after 9c15a24b038f ("x86/mce: Improve mcheck_init_device() error handling") went in. What this patch did was, among others, check the return value of misc_register and exit early if it encountered an error. Original code sloppily didn't do that. However, cef12ee52b05 ("xen/mce: Add mcelog support for Xen platform") made it so that xen's init routine xen_late_init_mcelog runs first. This was needed for the xen mcelog device which is supposed to be independent from the baremetal one. Initially it was reported that misc_register() fails often on xen and that's why it needed fixing. However, it is *supposed* to fail by design, when running in dom0 so that the xen mcelog device file gets registered first. And *then* you need the notifier *not* unregistered on the error path so that the timer does get deleted properly in the CPU hotplug notifier. Btw, this fix is needed also on baremetal in the unlikely event that misc_register(&mce_chrdev_device) fails there too. I was unsure whether to rush it in now and decided to delay it to 3.17. However, xen people wanted it promoted as it breaks xen when doing cpu hotplug there. So, after a bit of simmering in tip/master for initial smoke testing, let's move it to 3.16. It fixes a semi-regression which got introduced in 3.16 so no need for stable tagging. tip/x86/ras contains that exact same commit but we can't remove it there as it is not the last one. It won't cause any merge issues, as I confirmed locally but I should state here the special situation of this one fix explicitly anyway. Thanks. Signed-off-by: H. Peter Anvin <[email protected]>
2014-07-25drm/radeon: fix cut and paste issue for hawaii.Jerome Glisse1-0/+1
This is a halfway fix for hawaii acceleration. More fixes to come but hopefully isolated to userspace. Signed-off-by: Jérôme Glisse <[email protected]> Cc: [email protected] Signed-off-by: Dave Airlie <[email protected]>
2014-07-25Merge branch 'drm-fixes-3.16' of git://people.freedesktop.org/~agd5f/linux ↵Dave Airlie5-0/+8
into drm-fixes two more radeon fixes. * 'drm-fixes-3.16' of git://people.freedesktop.org/~agd5f/linux: drm/radeon: fix irq ring buffer overflow handling drm/radeon: fix error handling in radeon_vm_bo_set_addr
2014-07-25Merge tag 'drm-intel-fixes-2014-07-24' of ↵Dave Airlie3-25/+15
git://anongit.freedesktop.org/drm-intel into drm-fixes This time in time! Just 32bit-pae fix from Hugh, semaphores fun from Chris and a fix for runtime pm cherry-picked from next. Paulo is still working on a fix for runtime pm when X does cursor fun when the display is off, but that one isn't ready yet. * tag 'drm-intel-fixes-2014-07-24' of git://anongit.freedesktop.org/drm-intel: drm/i915: Simplify i915_gem_release_all_mmaps() drm/i915: fix freeze with blank screen booting highmem drm/i915: Reorder the semaphore deadlock check, again
2014-07-24staging: vt6655: Fix disassociated messages every 10 secondsMalcolm Priestley1-1/+1
byReAssocCount is incremented every second resulting in disassociated message being send every 10 seconds whether connection or not. byReAssocCount should only advance while eCommandState is in WLAN_ASSOCIATE_WAIT Change existing scope to if condition. Signed-off-by: Malcolm Priestley <[email protected]> Cc: <[email protected]> Signed-off-by: Greg Kroah-Hartman <[email protected]>
2014-07-24staging: vt6655: Fix Warning on boot handle_irq_event_percpu.Malcolm Priestley1-2/+5
WARNING: CPU: 0 PID: 929 at /home/apw/COD/linux/kernel/irq/handle.c:147 handle_irq_event_percpu+0x1d1/0x1e0() irq 17 handler device_intr+0x0/0xa80 [vt6655_stage] enabled interrupts Using spin_lock_irqsave appears to fix this. Signed-off-by: Malcolm Priestley <[email protected]> Cc: <[email protected]> Signed-off-by: Greg Kroah-Hartman <[email protected]>
2014-07-24staging: vt6656: use test_bit to check flags statusMalcolm Priestley3-5/+5
Signed-off-by: Malcolm Priestley <[email protected]> Signed-off-by: Greg Kroah-Hartman <[email protected]>
2014-07-24staging: vt6656: Remove unused macro MP_TEST_FLAGSMalcolm Priestley1-2/+0
Signed-off-by: Malcolm Priestley <[email protected]> Signed-off-by: Greg Kroah-Hartman <[email protected]>
2014-07-24staging: vt6656: use clear_bit to remove device flagMalcolm Priestley2-3/+2
Replacing MP_CLEAR_FLAG Signed-off-by: Malcolm Priestley <[email protected]> Signed-off-by: Greg Kroah-Hartman <[email protected]>
2014-07-24staging: vt6656: use set_bit to set flagsMalcolm Priestley2-3/+2
Replacing MP_SET_FLAG Signed-off-by: Malcolm Priestley <[email protected]> Signed-off-by: Greg Kroah-Hartman <[email protected]>
2014-07-24staging: vt6656: struct vnt_private merge flag and macrosMalcolm Priestley4-15/+13
merge u32 flag into unsigned long Flags Replacing fMP_DISCONNECTED with DEVICE_FLAGS_DISCONNECTED Signed-off-by: Malcolm Priestley <[email protected]> Signed-off-by: Greg Kroah-Hartman <[email protected]>
2014-07-24staging: vt6656: Remove unsed macro DEVICE_FLAGS_OPENEDMalcolm Priestley2-7/+0
Signed-off-by: Malcolm Priestley <[email protected]> Signed-off-by: Greg Kroah-Hartman <[email protected]>
2014-07-24staging: vt6656: remove macro MP_IS_READYMalcolm Priestley2-3/+1
Just test FLag and remove not. Signed-off-by: Malcolm Priestley <[email protected]> Signed-off-by: Greg Kroah-Hartman <[email protected]>
2014-07-24staging: vt6656: Remove flags fMP_POST_READS and fMP_POST_WRITESMalcolm Priestley3-7/+1
MP_IS_READY(fMP_DISCONNECTED) is used to block thread in vnt_tx_context Signed-off-by: Malcolm Priestley <[email protected]> Signed-off-by: Greg Kroah-Hartman <[email protected]>
2014-07-24Staging: vt6655: remove redundant comments from bssdb.hIgor Bezukh1-23/+2
Removed redundant comments from bssdb.h header file. Signed-off-by: Igor Bezukh <[email protected]> Signed-off-by: Greg Kroah-Hartman <[email protected]>
2014-07-24Staging: vt6655: remove redundant comments from baseband.hIgor Bezukh1-12/+0
Removed redundant comments in baseband.h header file. Signed-off-by: Igor Bezukh <[email protected]> Signed-off-by: Greg Kroah-Hartman <[email protected]>
2014-07-24staging: unisys: ABI documentation for new sysfs entriesBenjamin Romer1-0/+101
This patch adds a documentation file for all of the interfaces that were moved to sysfs by the other patches in this set. Signed-off-by: Benjamin Romer <[email protected]> Signed-off-by: Greg Kroah-Hartman <[email protected]>
2014-07-24staging: unisys: clean up diagdump proc entry codeBenjamin Romer1-7/+1
Remove remnant code left over from the diagdump proc entry. Signed-off-by: Benjamin Romer <[email protected]> Signed-off-by: Greg Kroah-Hartman <[email protected]>
2014-07-24staging: unisys: move chipsetready to sysfsBenjamin Romer1-52/+24
Move the chipsetready proc entry to sysfs under a new directory guest. This entry is used by Unisys application software on the guest to acknowledge completion of specific events for integration purposes, but these acknowledgements are not required for the guest to operate correctly. The store function is simplified as well, to use scanf() instead of copying the buffer and using strsep(). Signed-off-by: Benjamin Romer <[email protected]> Signed-off-by: Greg Kroah-Hartman <[email protected]>
2014-07-24staging: unisys: move installer to sysfs and split fieldsBenjamin Romer1-127/+106
The installer entry in /proc/visorchipset/installer was composed of three separate fields as one entry. This patch removes the proc entry and associated functions, and creates new fields with distinct entries under sysfs in the visorchipset/install directory. The fields are: textid: used to send the ID of a string that should be displayed on s-Par's automatic installation progress screen. Setting this field when not in installation mode (boottotool was set on the previous guest boot) has no effect. remaining_steps: used to set the value of the progress bar on the s-Par automatic installation progress screen. This field has no effect if not in installation mode. error: used to send the ID of a string that should be displayed on s-Par's automatic installation progress screen when an error is encountered during installation. This field has no effect if not in installation mode. Signed-off-by: Benjamin Romer <[email protected]> Signed-off-by: Greg Kroah-Hartman <[email protected]>
2014-07-24staging: et131x: Remove trailing semicolon from macros in et131x.hMasanari Iida1-20/+20
This patch removes trailing semicolon from macros within et131x.h Signed-off-by: Masanari Iida <[email protected]> Signed-off-by: Greg Kroah-Hartman <[email protected]>
2014-07-24staging: et131x: Fix typo in et131xMasanari Iida2-7/+7
This patch fix spelling typos in comments and printk within et131x. Signed-off-by: Masanari Iida <[email protected]> Signed-off-by: Greg Kroah-Hartman <[email protected]>
2014-07-24staging: comedi: usbduxfast: adding missing break in case statementBernd Porr1-0/+1
Added a missing "break" which forced the board to acquire 16 channels even when only 3 had been requested. Thanks for Hartley Sweeten to spot this bug. Signed-off-by: Bernd Porr <[email protected]> Reported-by: H Hartley Sweeten <[email protected]> Reviewed-by: Ian Abbott <[email protected]> Reviewed-by: H Hartley Sweeten <[email protected]> Signed-off-by: Greg Kroah-Hartman <[email protected]>
2014-07-24staging: dgnc: Fix space required after that ','Seunghun Lee1-2/+2
This patch fixes checkpatch errors: "space required after that ','" Signed-off-by: Seunghun Lee <[email protected]> Signed-off-by: Greg Kroah-Hartman <[email protected]>
2014-07-24staging: lustre: obdclass: fix sparse warnings about static declarationAndrey Skvortsov1-12/+12
Signed-off-by: Andrey Skvortsov <[email protected]> Signed-off-by: Greg Kroah-Hartman <[email protected]>
2014-07-24staging: comedi: ni_65xx: disable edge detection on initializationIan Abbott1-0/+1
When the hardware is being initialized, the edge detection interrupts are cleared and disabled. Also disable edge detection for all channels at this time so they start off in a known state. Signed-off-by: Ian Abbott <[email protected]> Signed-off-by: Greg Kroah-Hartman <[email protected]>
2014-07-24staging: comedi: ni_65xx: support INSN_CONFIG_DIGITAL_TRIGIan Abbott1-3/+36
The "edge detection interrupt" subdevice supports the `INSN_CONFIG_CHANGE_NOTIFY` comedi instruction which is only supported by one other driver. It is limited to the first 32 channels, but boards supported by this driver support edge detection on all digital I/O, digital input and digital output channels. The `INSN_CONFIG_DIGITAL_TRIG` comedi instruction is more flexible as it supports more than 32 channels (with multiple instructions). It can also support level detection, but the hardware does not support that. Add partial support for the `INSN_CONFIG_DIGITAL_TRIG` instruction, but only for edge detection. Since `INSN_CONFIG_CHANGE_NOTIFY` can only deal with 32 channels, make it disable edge detection for any remaining channels. Signed-off-by: Ian Abbott <[email protected]> Signed-off-by: Greg Kroah-Hartman <[email protected]>
2014-07-24staging: comedi: ni_65xx: refactor edge detection configurationIan Abbott1-22/+49
Refactor the code that updates the rising and falling edge detection registers into new function `ni_65xx_update_edge_detection()`. This updates the rising and falling edge detection registers for up to 32 channels starting at an arbitrary channel. Call it from the code that handles the `INSN_CONFIG_CHANGE_NOTIFY` instruction, which is limited to the first 32 channels. (For the purposes of edge detection, the channels are in the natural port order of the board, 8 channels per port. In practice, this is all the digital I/O channels (if any), followed by all the digital input channels (if any), followed by all the digital output channels (if any). Signed-off-by: Ian Abbott <[email protected]> Signed-off-by: Greg Kroah-Hartman <[email protected]>
2014-07-24staging: comedi: ni_65xx: add ni_65xx_num_ports()Ian Abbott1-6/+8
Add a function to return the total number of digital I/O, digital input, and digital output ports on the board. Each port has 8 channels (bits). Signed-off-by: Ian Abbott <[email protected]> Signed-off-by: Greg Kroah-Hartman <[email protected]>
2014-07-24staging: quickstart: remove driverKristina Martšenko5-472/+0
The driver hasn't been cleaned up and it doesn't look like anyone is working on it anymore (including the original author). So remove the driver from the kernel. If someone wants to work on cleaning it up and moving it out of staging, this commit can be reverted. Signed-off-by: Kristina Martšenko <[email protected]> Cc: Angelo Arrifano <[email protected]> Signed-off-by: Greg Kroah-Hartman <[email protected]>
2014-07-24staging: phison: remove driverKristina Martšenko5-103/+0
The driver hasn't been cleaned up and it doesn't look like anyone is working on it anymore (including the original author). So remove the driver from the kernel. If someone wants to work on cleaning it up and moving it out of staging, this commit can be reverted. Signed-off-by: Kristina Martšenko <[email protected]> Cc: Evan Ko <[email protected]> Signed-off-by: Greg Kroah-Hartman <[email protected]>
2014-07-24Merge tag 'iio-for-3.17d' of ↵Greg Kroah-Hartman16-503/+1262
git://git.kernel.org/pub/scm/linux/kernel/git/jic23/iio into staging-next Jonathan writes: Fourth round of IIO new drivers, functionality and cleanups for the 3.17 cycle New functionality * A new modifier to indicate that a rotation is relative to either true or magnetic north. This is to be used by some magnetometers that provide data in this way. * hid magnetometer now supports output rotations from various variants on North * HMC5843 driver converted to regmap and reworked to allow easy support of other similar devices. Support for HMC5983 added via both i2c and SPI. * Rework of Exynos driver to simplify extension to support more devices. * Addition of support for the Exynos3250 ADC (which requires an additional clock) Support for quite a few more devices on its way. Cleanups * ad7997 - a number of cleanups and tweaks to how the events are controlled to make it more intuitive. * kxcjk - cleanups and minor fixes for this new driver.
2014-07-24parisc: Eliminate memset after alloc_bootmem_pagesHIMANGI SARAOGI1-1/+0
alloc_bootmem and related function always return zeroed region of memory. Thus a memset after calls to these functions is unnecessary. The following Coccinelle semantic patch was used for making the change: @@ expression E,E1; @@ E = \(alloc_bootmem\|alloc_bootmem_low\|alloc_bootmem_pages\|alloc_bootmem_low_pages\)(...) ... when != E - memset(E,0,E1); Signed-off-by: Himangi Saraogi <[email protected]> Acked-by: Julia Lawall <[email protected]> Signed-off-by: Helge Deller <[email protected]>
2014-07-24parisc: Remove SA_RESTORER defineJohn David Anglin1-2/+0
The sa_restorer field in struct sigaction is obsolete and no longer in the parisc implementation. However, the core code assumes the field is present if SA_RESTORER is defined. So, the define needs to be removed. Signed-off-by: John David Anglin <[email protected]> Cc: <[email protected]> Signed-off-by: Helge Deller <[email protected]>
2014-07-24perf session: Fix accounting of ordered samples queueJiri Olsa1-2/+1
Properly account flushed samples within the ordered samples queue. Signed-off-by: Jiri Olsa <[email protected]> Acked-by: Adrian Hunter <[email protected]> Acked-by: David Ahern <[email protected]> Cc: Corey Ashford <[email protected]> Cc: David Ahern <[email protected]> Cc: Frederic Weisbecker <[email protected]> Cc: Ingo Molnar <[email protected]> Cc: Jean Pihet <[email protected]> Cc: Namhyung Kim <[email protected]> Cc: Paul Mackerras <[email protected]> Cc: Peter Zijlstra <[email protected]> Link: http://lkml.kernel.org/r/[email protected] Signed-off-by: Arnaldo Carvalho de Melo <[email protected]>
2014-07-24arm64: fix soft lockup due to large tlb flush rangeMark Salter1-3/+26
Under certain loads, this soft lockup has been observed: BUG: soft lockup - CPU#2 stuck for 22s! [ip6tables:1016] Modules linked in: ip6t_rpfilter ip6t_REJECT cfg80211 rfkill xt_conntrack ebtable_nat ebtable_broute bridge stp llc ebtable_filter ebtables ip6table_nat nf_conntrack_ipv6 nf_defrag_ipv6 nf_nat_ipv6 ip6table_mangle ip6table_security ip6table_raw ip6table_filter ip6_tables iptable_nat nf_conntrack_ipv4 nf_defrag_ipv4 nf_nat_ipv4 nf_nat nf_conntrack iptable_mangle iptable_security iptable_raw vfat fat efivarfs xfs libcrc32c CPU: 2 PID: 1016 Comm: ip6tables Not tainted 3.13.0-0.rc7.30.sa2.aarch64 #1 task: fffffe03e81d1400 ti: fffffe03f01f8000 task.ti: fffffe03f01f8000 PC is at __cpu_flush_kern_tlb_range+0xc/0x40 LR is at __purge_vmap_area_lazy+0x28c/0x3ac pc : [<fffffe000009c5cc>] lr : [<fffffe0000182710>] pstate: 80000145 sp : fffffe03f01fbb70 x29: fffffe03f01fbb70 x28: fffffe03f01f8000 x27: fffffe0000b19000 x26: 00000000000000d0 x25: 000000000000001c x24: fffffe03f01fbc50 x23: fffffe03f01fbc58 x22: fffffe03f01fbc10 x21: fffffe0000b2a3f8 x20: 0000000000000802 x19: fffffe0000b2a3c8 x18: 000003fffdf52710 x17: 000003ff9d8bb910 x16: fffffe000050fbfc x15: 0000000000005735 x14: 000003ff9d7e1a5c x13: 0000000000000000 x12: 000003ff9d7e1a5c x11: 0000000000000007 x10: fffffe0000c09af0 x9 : fffffe0000ad1000 x8 : 000000000000005c x7 : fffffe03e8624000 x6 : 0000000000000000 x5 : 0000000000000000 x4 : 0000000000000000 x3 : fffffe0000c09cc8 x2 : 0000000000000000 x1 : 000fffffdfffca80 x0 : 000fffffcd742150 The __cpu_flush_kern_tlb_range() function looks like: ENTRY(__cpu_flush_kern_tlb_range) dsb sy lsr x0, x0, #12 lsr x1, x1, #12 1: tlbi vaae1is, x0 add x0, x0, #1 cmp x0, x1 b.lo 1b dsb sy isb ret ENDPROC(__cpu_flush_kern_tlb_range) The above soft lockup shows the PC at tlbi insn with: x0 = 0x000fffffcd742150 x1 = 0x000fffffdfffca80 So __cpu_flush_kern_tlb_range has 0x128ba930 tlbi flushes left after it has already been looping for 23 seconds!. Looking up one frame at __purge_vmap_area_lazy(), there is: ... list_for_each_entry_rcu(va, &vmap_area_list, list) { if (va->flags & VM_LAZY_FREE) { if (va->va_start < *start) *start = va->va_start; if (va->va_end > *end) *end = va->va_end; nr += (va->va_end - va->va_start) >> PAGE_SHIFT; list_add_tail(&va->purge_list, &valist); va->flags |= VM_LAZY_FREEING; va->flags &= ~VM_LAZY_FREE; } } ... if (nr || force_flush) flush_tlb_kernel_range(*start, *end); So if two areas are being freed, the range passed to flush_tlb_kernel_range() may be as large as the vmalloc space. For arm64, this is ~240GB for 4k pagesize and ~2TB for 64kpage size. This patch works around this problem by adding a loop limit. If the range is larger than the limit, use flush_tlb_all() rather than flushing based on individual pages. The limit chosen is arbitrary as the TLB size is implementation specific and not accessible in an architected way. The aim of the arbitrary limit is to avoid soft lockup. Signed-off-by: Mark Salter <[email protected]> [[email protected]: commit log update] [[email protected]: marginal optimisation] [[email protected]: changed to MAX_TLB_RANGE and added comment] Signed-off-by: Catalin Marinas <[email protected]>
2014-07-24arm64/crypto: fix makefile rule for aes-glue-%.oAndreas Schwab1-1/+1
This fixes the following build failure when building with CONFIG_MODVERSIONS enabled: CC [M] arch/arm64/crypto/aes-glue-ce.o ld: cannot find arch/arm64/crypto/aes-glue-ce.o: No such file or directory make[1]: *** [arch/arm64/crypto/aes-ce-blk.o] Error 1 make: *** [arch/arm64/crypto] Error 2 The $(obj)/aes-glue-%.o rule only creates $(obj)/.tmp_aes-glue-ce.o, it should use if_changed_rule instead of if_changed_dep. Signed-off-by: Andreas Schwab <[email protected]> [ardb: mention CONFIG_MODVERSIONS in commit log] Signed-off-by: Ard Biesheuvel <[email protected]> Signed-off-by: Catalin Marinas <[email protected]>
2014-07-24ftrace: Add warning if tramp hash does not match nr_trampolinesSteven Rostedt (Red Hat)1-0/+3
After adding all the records to the tramp_hash, add a check that makes sure that the number of records added matches the number of records expected to match and do a WARN_ON and disable ftrace if they do not match. Signed-off-by: Steven Rostedt <[email protected]>
2014-07-24arm64: Do not invoke audit_syscall_* functions if !CONFIG_AUDIT_SYSCALLCatalin Marinas1-0/+4
This is a temporary patch to be able to compile the kernel in linux-next where the audit_syscall_* API has been changed. To be reverted once the proper arm64 fix can be applied. Signed-off-by: Catalin Marinas <[email protected]>
2014-07-24ftrace: Fix trampoline hash update check on rec->flagsSteven Rostedt (Red Hat)1-0/+8
In the loop of ftrace_save_ops_tramp_hash(), it adds all the recs to the ops hash if the rec has only one callback attached and the ops is connected to the rec. It gives a nasty warning and shuts down ftrace if the rec doesn't have a trampoline set for it. But this can happen with the following scenario: # cd /sys/kernel/debug/tracing # echo schedule do_IRQ > set_ftrace_filter # mkdir instances/foo # echo schedule > instances/foo/set_ftrace_filter # echo function_graph > current_function # echo function > instances/foo/current_function # echo nop > instances/foo/current_function The above would then trigger the following warning and disable ftrace: ------------[ cut here ]------------ WARNING: CPU: 0 PID: 3145 at kernel/trace/ftrace.c:2212 ftrace_run_update_code+0xe4/0x15b() Modules linked in: ipt_MASQUERADE sunrpc ip6t_REJECT nf_conntrack_ipv6 nf_defrag_ip [...] CPU: 1 PID: 3145 Comm: bash Not tainted 3.16.0-rc3-test+ #136 Hardware name: To Be Filled By O.E.M. To Be Filled By O.E.M./To be filled by O.E.M., BIOS SDBLI944.86P 05/08/2007 0000000000000000 ffffffff81808a88 ffffffff81502130 0000000000000000 ffffffff81040ca1 ffff880077c08000 ffffffff810bd286 0000000000000001 ffffffff81a56830 ffff88007a041be0 ffff88007a872d60 00000000000001be Call Trace: [<ffffffff81502130>] ? dump_stack+0x4a/0x75 [<ffffffff81040ca1>] ? warn_slowpath_common+0x7e/0x97 [<ffffffff810bd286>] ? ftrace_run_update_code+0xe4/0x15b [<ffffffff810bd286>] ? ftrace_run_update_code+0xe4/0x15b [<ffffffff810bda1a>] ? ftrace_shutdown+0x11c/0x16b [<ffffffff810bda87>] ? unregister_ftrace_function+0x1e/0x38 [<ffffffff810cc7e1>] ? function_trace_reset+0x1a/0x28 [<ffffffff810c924f>] ? tracing_set_tracer+0xc1/0x276 [<ffffffff810c9477>] ? tracing_set_trace_write+0x73/0x91 [<ffffffff81132383>] ? __sb_start_write+0x9a/0xcc [<ffffffff8120478f>] ? security_file_permission+0x1b/0x31 [<ffffffff81130e49>] ? vfs_write+0xac/0x11c [<ffffffff8113115d>] ? SyS_write+0x60/0x8e [<ffffffff81508112>] ? system_call_fastpath+0x16/0x1b ---[ end trace 938c4415cbc7dc96 ]--- ------------[ cut here ]------------ Link: http://lkml.kernel.org/r/[email protected] Reported-by: Oleg Nesterov <[email protected]> Signed-off-by: Steven Rostedt <[email protected]>
2014-07-24perf powerpc: Include util/util.h and remove stringify macrosSukadev Bhattiprolu1-3/+1
The stringify macros are defined in tools/perf/util/util.h and don't need to be redfined specfiically for powerpc. Signed-off-by: Sukadev Bhattiprolu <[email protected]> Cc: Andi Kleen <[email protected]> Cc: Jiri Olsa <[email protected]> Cc: Michael Ellerman <[email protected]> Link: http://lkml.kernel.org/r/[email protected] Signed-off-by: Arnaldo Carvalho de Melo <[email protected]>
2014-07-24ARM: 8111/1: Enable erratum 798181 for Broadcom Brahma-B15Gregory Fong1-8/+12
Broadcom Brahma-B15 (r0p0..r0p2) is also affected by Cortex-A15 erratum 798181, so enable the workaround for Brahma-B15. Signed-off-by: Gregory Fong <[email protected]> Acked-by: Marc Carino <[email protected]> Acked-by: Arnd Bergmann <[email protected]> Signed-off-by: Brian Norris <[email protected]> Cc: Rob Herring <[email protected]> Cc: Will Deacon <[email protected]> Signed-off-by: Russell King <[email protected]>
2014-07-24ARM: 8112/1: only select ARM_PATCH_PHYS_VIRT if MMU is enabledUwe Kleine-König1-2/+2
This fixes the following warning: warning: (ARCH_MULTIPLATFORM && ARCH_INTEGRATOR && ARCH_SHMOBILE_LEGACY) selects ARM_PATCH_PHYS_VIRT which has unmet direct dependencies (!XIP_KERNEL && MMU && (!ARCH_REALVIEW || !SPARSEMEM)) Signed-off-by: Uwe Kleine-König <[email protected]> Signed-off-by: Russell King <[email protected]>