-
Notifications
You must be signed in to change notification settings - Fork 8
Gem5/v4.4 #1
base: gem5/v4.3
Are you sure you want to change the base?
Commits on Dec 20, 2015
-
Merge tag 'powerpc-4.4-5' of git://git.kernel.org/pub/scm/linux/kerne…
…l/git/powerpc/linux Pull powerpc fixes from Michael Ellerman: - Partial revert of "powerpc: Individual System V IPC system calls" - pr_warn_once on unsupported OPAL_MSG type from Stewart - Fix deadlock in opal-irqchip introduced by "Fix double endian conversion" from Alistair * tag 'powerpc-4.4-5' of git://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux: powerpc/opal-irqchip: Fix deadlock introduced by "Fix double endian conversion" powerpc/powernv: pr_warn_once on unsupported OPAL_MSG type Partial revert of "powerpc: Individual System V IPC system calls"
Configuration menu - View commit details
-
Copy full SHA for 35b3154 - Browse repository at this point
Copy the full SHA 35b3154View commit details -
Merge tag 'md/4.4-rc5-fixes' of git://neil.brown.name/md
Pull md fixes from Neil Brown: "Four fixes for md: - two recently introduced regressions fixed. - one older bug in RAID10 - tagged for -stable since 4.2 - one minor sysfs api improvement" * tag 'md/4.4-rc5-fixes' of git://neil.brown.name/md: Fix remove_and_add_spares removes drive added as spare in slot_store md: fix bug due to nested suspend MD: change journal disk role to disk 0 md/raid10: fix data corruption and crash during resync
Configuration menu - View commit details
-
Copy full SHA for 3a87711 - Browse repository at this point
Copy the full SHA 3a87711View commit details -
Merge tag 'usb-4.4-rc6' of git://git.kernel.org/pub/scm/linux/kernel/…
…git/gregkh/usb Pull USB fixes from Greg KH: "Here are some USB and PHY fixes for 4.4-rc6. All of them resolve some reported problems. Full details in the shortlog" * tag 'usb-4.4-rc6' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb: USB: fix invalid memory access in hub_activate() USB: ipaq.c: fix a timeout loop phy: core: Get a refcount to phy in devm_of_phy_get_by_index() phy: cygnus: pcie: add missing of_node_put phy: miphy365x: add missing of_node_put phy: miphy28lp: add missing of_node_put phy: rockchip-usb: add missing of_node_put phy: berlin-sata: add missing of_node_put phy: mt65xx-usb3: add missing of_node_put phy: brcmstb-sata: add missing of_node_put phy: sun9i-usb: add USB dependency
Configuration menu - View commit details
-
Copy full SHA for 24b0d5e - Browse repository at this point
Copy the full SHA 24b0d5eView commit details -
Merge tag 'tty-4.4-rc6' of git://git.kernel.org/pub/scm/linux/kernel/…
…git/gregkh/tty Pull tty/serial fixes from Greg KH: "Here are some tty/serial driver fixes for 4.4-rc6 that resolve some reported problems. All of these have been in linux-next. The details are in the shortlog" * tag 'tty-4.4-rc6' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty: tty: Fix GPF in flush_to_ldisc() serial: earlycon: Add missing spinlock initialization serial: sh-sci: Fix length of scatterlist n_tty: Fix poll() after buffer-limited eof push read serial: 8250_uniphier: fix dl_read and dl_write functions
Configuration menu - View commit details
-
Copy full SHA for 69c37a9 - Browse repository at this point
Copy the full SHA 69c37a9View commit details -
rtc: rk808: Compensate for Rockchip calendar deviation on November 31st
In A.D. 1582 Pope Gregory XIII found that the existing Julian calendar insufficiently represented reality, and changed the rules about calculating leap years to account for this. Similarly, in A.D. 2013 Rockchip hardware engineers found that the new Gregorian calendar still contained flaws, and that the month of November should be counted up to 31 days instead. Unfortunately it takes a long time for calendar changes to gain widespread adoption, and just like more than 300 years went by before the last Protestant nation implemented Greg's proposal, we will have to wait a while until all religions and operating system kernels acknowledge the inherent advantages of the Rockchip system. Until then we need to translate dates read from (and written to) Rockchip hardware back to the Gregorian format. This patch works by defining Jan 1st, 2016 as the arbitrary anchor date on which Rockchip and Gregorian calendars are in sync. From that we can translate arbitrary later dates back and forth by counting the number of November/December transitons since the anchor date to determine the offset between the calendars. We choose this method (rather than trying to regularly "correct" the date stored in hardware) since it's the only way to ensure perfect time-keeping even if the system may be shut down for an unknown number of years. The drawback is that other software reading the same hardware (e.g. mainboard firmware) must use the same translation convention (including the same anchor date) to be able to read and write correct timestamps from/to the RTC. Signed-off-by: Julius Werner <[email protected]> Reviewed-by: Douglas Anderson <[email protected]> Signed-off-by: Alexandre Belloni <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for f076ef4 - Browse repository at this point
Copy the full SHA f076ef4View commit details -
rtc: da9063: fix access ordering error during RTC interrupt at system…
… power on This fix alters the ordering of the IRQ and device registrations in the RTC driver probe function. This change will apply to the RTC driver that supports both DA9063 and DA9062 PMICs. A problem could occur with the existing RTC driver if: A system is started from a cold boot using the PMIC RTC IRQ to initiate a power on operation. For instance, if an RTC alarm is used to start a platform from power off. The existing driver IRQ is requested before the device has been properly registered. i.e. ret = devm_request_threaded_irq() comes before rtc->rtc_dev = devm_rtc_device_register(); In this case, the interrupt can be called before the device has been registered and the handler can be called immediately. The IRQ handler da9063_alarm_event() contains the function call rtc_update_irq(rtc->rtc_dev, 1, RTC_IRQF | RTC_AF); which in turn tries to access the unavailable rtc->rtc_dev. The fix is to reorder the functions inside the RTC probe. The IRQ is requested after the RTC device resource has been registered so that get_irq_byname is the last thing to happen. Signed-off-by: Steve Twiss <[email protected]> Signed-off-by: Alexandre Belloni <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 77535ac - Browse repository at this point
Copy the full SHA 77535acView commit details -
Merge tag 'rtc-4.4-3' of git://git.kernel.org/pub/scm/linux/kernel/gi…
…t/abelloni/linux Pull RTC fixes from Alexandre Belloni: "Late fixes for the RTC subsystem for 4.4: A fix for a nasty hardware bug in rk808 and an initialization reordering in da9063 to fix a possible crash" * tag 'rtc-4.4-3' of git://git.kernel.org/pub/scm/linux/kernel/git/abelloni/linux: rtc: da9063: fix access ordering error during RTC interrupt at system power on rtc: rk808: Compensate for Rockchip calendar deviation on November 31st
Configuration menu - View commit details
-
Copy full SHA for 9f7e432 - Browse repository at this point
Copy the full SHA 9f7e432View commit details
Commits on Dec 21, 2015
-
Configuration menu - View commit details
-
Copy full SHA for 4ef7675 - Browse repository at this point
Copy the full SHA 4ef7675View commit details -
md: remove check for MD_RECOVERY_NEEDED in action_store.
md currently doesn't allow a 'sync_action' such as 'reshape' to be set while MD_RECOVERY_NEEDED is set. This s a problem, particularly since commit 738a273 as that can cause ->check_shape to call mddev_resume() which sets MD_RECOVERY_NEEDED. So by the time we come to start 'reshape' it is very likely that MD_RECOVERY_NEEDED is still set. Testing for this flag is not really needed and is in any case very racy as it can be set at any moment - asynchronously. Any race between setting a sync_action and setting MD_RECOVERY_NEEDED must already be handled properly in some locked code, probably md_check_recovery(), so remove the test here. The test on MD_RECOVERY_RUNNING is also racy in the 'reshape' case so we should test it again after getting mddev_lock(). As this fixes a race and a regression which can cause 'reshape' to fail, it is suitable for -stable kernels since 4.1 Reported-by: Xiao Ni <[email protected]> Fixes: 738a273 ("md/raid5: fix allocation of 'scribble' array.") Cc: [email protected] (v4.1+) Signed-off-by: NeilBrown <[email protected]>
NeilBrown committedDec 21, 2015 Configuration menu - View commit details
-
Copy full SHA for 312045e - Browse repository at this point
Copy the full SHA 312045eView commit details -
ACPI / processor: Fix thermal cooling device regression
The processor cooling device is no longer present for passive thermal control. Commit 239708a ("ACPI: Split out ACPI PSS from ACPI Processor driver") moved the processing to a new function acpi_pss_perf_init(), but missed "return 0" after successful creation. This causes the error handling functions to be called, which will delete the previously created processor cooling device. Fixes: 239708a (ACPI: Split out ACPI PSS from ACPI Processor driver) Signed-off-by: Srinivas Pandruvada <[email protected]> Cc: 4.3+ <[email protected]> # 4.3+ Signed-off-by: Rafael J. Wysocki <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for ce360db - Browse repository at this point
Copy the full SHA ce360dbView commit details -
ARC: mm: HIGHMEM: Fix section mismatch splat
| WARNING: vmlinux.o(.text+0xd6c2): Section mismatch in reference from the function alloc_kmap_pgtable() to the function | .init.text:__alloc_bootmem_low() The function alloc_kmap_pgtable() references the function __init __alloc_bootmem_low(). This is often because alloc_kmap_pgtable lacks a __init annotation or the annotation of __alloc_bootmem_low is wrong. Signed-off-by: Vineet Gupta <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 899cfd2 - Browse repository at this point
Copy the full SHA 899cfd2View commit details -
ARC: mm: fix building for MMU v2
ARC700 cores with MMU v2 don't have IC_PTAG AUX register and so we only define ARC_REG_IC_PTAG for MMU versions >= 3. But current implementation of cache_line_loop_vX() routines assumes availability of all of them (v2, v3 and v4) simultaneously. And given undefined ARC_REG_IC_PTAG if CONFIG_MMU_VER=2 we're seeing compilation problem: ---------------------------------->8------------------------------- CC arch/arc/mm/cache.o arch/arc/mm/cache.c: In function '__cache_line_loop_v3': arch/arc/mm/cache.c:270:13: error: 'ARC_REG_IC_PTAG' undeclared (first use in this function) aux_tag = ARC_REG_IC_PTAG; ^ arch/arc/mm/cache.c:270:13: note: each undeclared identifier is reported only once for each function it appears in scripts/Makefile.build:258: recipe for target 'arch/arc/mm/cache.o' failed ---------------------------------->8------------------------------- The simples fix is to have ARC_REG_IC_PTAG defined regardless MMU version being used. We don't use it in cache_line_loop_v2() anyways so who cares. Signed-off-by: Alexey Brodkin <[email protected]> Signed-off-by: Vineet Gupta <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 4b32e89 - Browse repository at this point
Copy the full SHA 4b32e89View commit details -
ARC: Fix linking errors with CONFIG_MODULE + CONFIG_CC_OPTIMIZE_FOR_SIZE
At -Os, ARC gcc generates millicode thunk for function prologue/epilogue, which are served by libgcc. Modules historically are NOT linked with libgcc to avoid code bloat, reducing runtime relocation fixups etc. I even once tried doing that but got lost in makefile intricacies. This means modules at -Os don't get the millicode thunks, causing build failures below: | MODPOST 5 modules | ERROR: "__ld_r13_to_r18" [crypto/sha256_generic.ko] undefined! | ERROR: "__ld_r13_to_r18_ret" [crypto/sha256_generic.ko] undefined! | ERROR: "__st_r13_to_r18" [crypto/sha256_generic.ko] undefined! | ERROR: "__ld_r13_to_r17_ret" [crypto/sha256_generic.ko] undefined! | ERROR: "__st_r13_to_r17" [crypto/sha256_generic.ko] undefined! | ERROR: "__ld_r13_to_r16_ret" [crypto/sha256_generic.ko] undefined! | ERROR: "__st_r13_to_r16" [crypto/sha256_generic.ko] undefined! |.... |.... Workaround that by inhibiting millicode thunks for loadable modules Fixes STAR 9000641864: ("Linux built with optimizations for size emits errors for modules") Reported-by: Anton Kolesov <[email protected]> Cc: Michal Marek <[email protected]> Cc: [email protected] Signed-off-by: Vineet Gupta <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 07fd7d4 - Browse repository at this point
Copy the full SHA 07fd7d4View commit details -
Revert "ARC: dw2 unwind: Ignore CIE version !=1 gracefully instead of…
… bailing" Blingly ignoring CIE.version != 1 was a bad idea. It still leaves "desirability" when running perf with callgraphing where libgcc symbols might show in hotspot. More importantly, basic CIE.version == 3 support already exists in code: | | retAddrReg = state.version <= 1 ? *ptr++ : get_uleb128(&ptr, end); | Next commit with simply add continue-not-bail for CIE.version != 1 This reverts commit 323f41f.
Configuration menu - View commit details
-
Copy full SHA for 2d64aff - Browse repository at this point
Copy the full SHA 2d64affView commit details -
ARC: dw2 unwind: Don't bail for CIE.version != 1
The rudimentary CIE.version == 3 handling is already present in code (for return address register specification) Signed-off-by: Vineet Gupta <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 6d0d506 - Browse repository at this point
Copy the full SHA 6d0d506View commit details -
ARC: dw2 unwind: Catch Dwarf SNAFUs early
Instead of seeing empty stack traces, let kernel fail early so dwarf issues can be fixed sooner Signed-off-by: Vineet Gupta <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 6b538db - Browse repository at this point
Copy the full SHA 6b538dbView commit details -
On parisc syscalls which are interrupted by signals sometimes failed to restart and instead returned -ENOSYS which in the worst case lead to userspace crashes. A similiar problem existed on MIPS and was fixed by commit e967ef0 ("MIPS: Fix restart of indirect syscalls"). On parisc the current syscall restart code assumes that all syscall callers load the syscall number in the delay slot of the ble instruction. That's how it is e.g. done in the unistd.h header file: ble 0x100(%sr2, %r0) ldi #syscall_nr, %r20 Because of that assumption the current code never restored %r20 before returning to userspace. This assumption is at least not true for code which uses the glibc syscall() function, which instead uses this syntax: ble 0x100(%sr2, %r0) copy regX, %r20 where regX depend on how the compiler optimizes the code and register usage. This patch fixes this problem by adding code to analyze how the syscall number is loaded in the delay branch and - if needed - copy the syscall number to regX prior returning to userspace for the syscall restart. Signed-off-by: Helge Deller <[email protected]> Cc: [email protected] Cc: Mathieu Desnoyers <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 71a71fb - Browse repository at this point
Copy the full SHA 71a71fbView commit details -
Signed-off-by: Andy Lutomirski <[email protected]> Reviewed-and-tested-by: Borislav Petkov <[email protected]> Cc: <[email protected]> Cc: Su Tao <[email protected]> Cc: Denys Vlasenko <[email protected]> Cc: <[email protected]> Cc: <[email protected]> Cc: <[email protected]> Cc: Brian Gerst <[email protected]> Cc: Mingwei Shi <[email protected]> Cc: Linus Torvalds <[email protected]> Signed-off-by: Thomas Gleixner <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 6a613ac - Browse repository at this point
Copy the full SHA 6a613acView commit details -
x86/entry: Restore traditional SYSENTER calling convention
It turns out that some Android versions hardcode the SYSENTER calling convention. This is buggy and will cause problems no matter what the kernel does. Nonetheless, we should try to support it. Credit goes to Linus for pointing out a clean way to handle the SYSENTER/SYSCALL clobber differences while preserving straightforward DWARF annotations. I believe that the original offending Android commit was: https://android.googlesource.com/platform%2Fbionic/+/7dc3684d7a2587e43e6d2a8e0e3f39bf759bd535 Reported-by: Qiuxu Zhuo <[email protected]> Signed-off-by: Andy Lutomirski <[email protected]> Reviewed-and-tested-by: Borislav Petkov <[email protected]> Cc: <[email protected]> Cc: Su Tao <[email protected]> Cc: Denys Vlasenko <[email protected]> Cc: <[email protected]> Cc: <[email protected]> Cc: Brian Gerst <[email protected]> Cc: Mingwei Shi <[email protected]> Cc: Linus Torvalds <[email protected]> Signed-off-by: Thomas Gleixner <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 30bfa7b - Browse repository at this point
Copy the full SHA 30bfa7bView commit details -
net: usb: cdc_ncm: Adding Dell DW5812 LTE Verizon Mobile Broadband Card
Unlike DW5550, Dell DW5812 is a mobile broadband card with no ARP capabilities: the patch makes this device to use wwan_noarp_info struct Signed-off-by: Daniele Palmas <[email protected]> Signed-off-by: David S. Miller <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 670c0d6 - Browse repository at this point
Copy the full SHA 670c0d6View commit details -
net: usb: cdc_ncm: Adding Dell DW5813 LTE AT&T Mobile Broadband Card
Unlike DW5550, Dell DW5813 is a mobile broadband card with no ARP capabilities: the patch makes this device to use wwan_noarp_info struct Signed-off-by: Daniele Palmas <[email protected]> Signed-off-by: David S. Miller <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for fb83d5f - Browse repository at this point
Copy the full SHA fb83d5fView commit details -
Merge branch 'cdc_ncm-new-Dell-devices'
Daniele Palmas says: ==================== net: usb: cdc_ncm: Adding support for two new Dell devices This patch series add support in the cdc_ncm driver for two devices based on the same platform, that are different only for carrier customization. V2: Added comment for highlighting FLAG_NOARP usage for those devices ==================== Signed-off-by: David S. Miller <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 987aaad - Browse repository at this point
Copy the full SHA 987aaadView commit details
Commits on Dec 22, 2015
-
sd: Reject optimal transfer length smaller than page size
Eryu Guan reported that loading scsi_debug would fail. This turned out to be caused by scsi_debug reporting an optimal I/O size of 32KB which is smaller than the 64KB page size on the PowerPC system in question. Add a check to ensure that we only use the device-reported OPTIMAL TRANSFER LENGTH if it is bigger than or equal to the page cache size. Reported-by: Eryu Guan <[email protected]> Reported-by: Ming Lei <[email protected]> Reviewed-by: Douglas Gilbert <[email protected]> Reviewed-by: Ewan Milne <[email protected]> Signed-off-by: Martin K. Petersen <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 9c1d9c2 - Browse repository at this point
Copy the full SHA 9c1d9c2View commit details -
ALSA: hda/realtek - Fix silent headphone output on MacPro 4,1 (v2)
Without this patch, internal speaker and line-out work, but front headphone output jack stays silent on the Mac Pro 4,1. This code path also gets executed on the MacPro 5,1 due to identical codec SSID, but i don't know if it has any positive or adverse effects there or not. (v2) Implement feedback from Takashi Iwai: Reuse alc889_fixup_mbp_vref and just add a new nid 0x19 for the MacPro 4,1. Signed-off-by: Mario Kleiner <[email protected]> Cc: <[email protected]> Signed-off-by: Takashi Iwai <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 9f660a1 - Browse repository at this point
Copy the full SHA 9f660a1View commit details -
drm/i915: Drop the broken cursor base==0 special casing
The cursor code tries to treat base==0 to mean disabled. That fails when the cursor bo gets bound at ggtt offset 0, and the user is left looking at an invisible cursor. We lose the disabled->disabled optimization, but that seems like something better handled at a slightly higher level. Cc: [email protected] Cc: Takashi Iwai <[email protected]> Cc: Jani Nikula <[email protected]> Signed-off-by: Ville Syrjälä <[email protected]> Link: http://patchwork.freedesktop.org/patch/msgid/[email protected] Reviewed-by: Chris Wilson <[email protected]> (cherry picked from commit 663f3122d00c0b412d429f105dca129aa8f4f094) Signed-off-by: Jani Nikula <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 615cb24 - Browse repository at this point
Copy the full SHA 615cb24View commit details -
drm/i915: Set the map-and-fenceable flag for preallocated objects
As we mark the preallocated objects as bound, we should also flag them correctly as being map-and-fenceable (if appropriate!) so that later users do not get confused and try and rebind the pinned vma in order to get a map-and-fenceable binding. Signed-off-by: Chris Wilson <[email protected]> Cc: "Goel, Akash" <[email protected]> Cc: Daniel Vetter <[email protected]> Cc: Jesse Barnes <[email protected]> Cc: [email protected] Link: http://patchwork.freedesktop.org/patch/msgid/[email protected] Reviewed-by: Jesse Barnes <[email protected]> Signed-off-by: Daniel Vetter <[email protected]> (cherry picked from commit d0710abbcd88b1ff17760e97d74a673e67b49ea1) Signed-off-by: Jani Nikula <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 62d622c - Browse repository at this point
Copy the full SHA 62d622cView commit details -
drm/i915: Disable primary plane if we fail to reconstruct BIOS fb (v2)
If we fail to reconstruct the BIOS fb (e.g., because the FB is too large), we'll be left with plane state that indicates the primary plane is visible yet has a NULL fb. This mismatch causes problems later on (e.g., for the watermark code). Since we've failed to reconstruct the BIOS FB, the best solution is to just disable the primary plane and pretend the BIOS never had it enabled. v2: Add intel_pre_disable_primary() call (Maarten) Cc: Daniel Vetter <[email protected]> Cc: Ville Syrjälä <[email protected]> Cc: Maarten Lankhorst <[email protected]> Cc: [email protected] Signed-off-by: Matt Roper <[email protected]> Reviewed-by: Maarten Lankhorst <[email protected]> Link: http://patchwork.freedesktop.org/patch/msgid/[email protected] (cherry picked from commit 200757f5d7c6f7f7032a0a07bbb8c02a840bbf7d) Signed-off-by: Jani Nikula <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for a59fac6 - Browse repository at this point
Copy the full SHA a59fac6View commit details -
MIPS: uaccess: Fix strlen_user with EVA
The strlen_user() function calls __strlen_kernel_asm in both branches of the eva_kernel_access() conditional. For EVA it should be calling __strlen_user_eva for user accesses, otherwise it will load from the kernel address space instead of the user address space, and the access checking will likely be ineffective at preventing it due to EVA's overlapping user and kernel address spaces. This was found after extending the test_user_copy module to cover user string access functions, which gave the following error with EVA: test_user_copy: illegal strlen_user passed Fortunately the use of strlen_user() has been all but eradicated from the mainline kernel, so only out of tree modules could be affected. Fixes: e3a9b07 ("MIPS: asm: uaccess: Add EVA support for str*_user operations") Signed-off-by: James Hogan <[email protected]> Cc: Markos Chandras <[email protected]> Cc: Paul Burton <[email protected]> Cc: Leonid Yegoshin <[email protected]> Cc: [email protected] Cc: <[email protected]> # 3.15.x- Patchwork: https://patchwork.linux-mips.org/patch/10842/ Signed-off-by: Ralf Baechle <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 5dc62fd - Browse repository at this point
Copy the full SHA 5dc62fdView commit details -
drm/i915: Break busywaiting for requests on pending signals
The busywait in __i915_spin_request() does not respect pending signals and so may consume the entire timeslice for the task instead of returning to userspace to handle the signal. In the worst case this could cause a delay in signal processing of 20ms, which would be a noticeable jitter in cursor tracking. If a higher resolution signal was being used, for example to provide fairness of a server timeslices between clients, we could expect to detect some unfairness between clients (i.e. some windows not updating as fast as others). This issue was noticed when inspecting a report of poor interactivity resulting from excessively high __i915_spin_request usage. Fixes regression from commit 2def4ad [v4.2] Author: Chris Wilson <[email protected]> Date: Tue Apr 7 16:20:41 2015 +0100 drm/i915: Optimistically spin for the request completion v2: Try to assess the impact of the bug Signed-off-by: Chris Wilson <[email protected]> Reviewed-by: Tvrtko Ursulin <[email protected]> Cc: Jens Axboe <[email protected]> Cc; "Rogozhkin, Dmitry V" <[email protected]> Cc: Daniel Vetter <[email protected]> Cc: Tvrtko Ursulin <[email protected]> Cc: Eero Tamminen <[email protected]> Cc: "Rantala, Valtteri" <[email protected]> Cc: [email protected] Signed-off-by: Daniel Vetter <[email protected]> Link: http://patchwork.freedesktop.org/patch/msgid/[email protected] (cherry picked from commit 91b0c352ace9afec1fb51590c7b8bd60e0eb9fbd) Signed-off-by: Jani Nikula <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for e7571f7 - Browse repository at this point
Copy the full SHA e7571f7View commit details -
MIPS: uaccess: Take EVA into account in __copy_from_user()
When EVA is in use, __copy_from_user() was unconditionally using the EVA instructions to read the user address space, however this can also be used for kernel access. If the address isn't a valid user address it will cause an address error or TLB exception, and if it is then user memory may be read instead of kernel memory. For example in the following stack trace from Linux v3.10 (changes since then will prevent this particular one still happening) kernel_sendmsg() set the user address limit to KERNEL_DS, and tcp_sendmsg() goes on to use __copy_from_user() with a kernel address in KSeg0. [<8002d434>] __copy_fromuser_common+0x10c/0x254 [<805710e0>] tcp_sendmsg+0x5f4/0xf00 [<804e8e3c>] sock_sendmsg+0x78/0xa0 [<804e8f28>] kernel_sendmsg+0x24/0x38 [<804ee0f8>] sock_no_sendpage+0x70/0x7c [<8017c820>] pipe_to_sendpage+0x80/0x98 [<8017c6b0>] splice_from_pipe_feed+0xa8/0x198 [<8017cc54>] __splice_from_pipe+0x4c/0x8c [<8017e844>] splice_from_pipe+0x58/0x78 [<8017e884>] generic_splice_sendpage+0x20/0x2c [<8017d690>] do_splice_from+0xb4/0x110 [<8017d710>] direct_splice_actor+0x24/0x30 [<8017d394>] splice_direct_to_actor+0xd8/0x208 [<8017d51c>] do_splice_direct+0x58/0x7c [<8014eaf4>] do_sendfile+0x1dc/0x39c [<8014f82c>] SyS_sendfile+0x90/0xf8 Add the eva_kernel_access() check in __copy_from_user() like the one in copy_from_user(). Signed-off-by: James Hogan <[email protected]> Cc: Markos Chandras <[email protected]> Cc: Paul Burton <[email protected]> Cc: Leonid Yegoshin <[email protected]> Cc: [email protected] Patchwork: https://patchwork.linux-mips.org/patch/10843/ Signed-off-by: Ralf Baechle <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 6f06a2c - Browse repository at this point
Copy the full SHA 6f06a2cView commit details -
drm/i915: Limit the busy wait on requests to 5us not 10ms!
When waiting for high frequency requests, the finite amount of time required to set up the irq and wait upon it limits the response rate. By busywaiting on the request completion for a short while we can service the high frequency waits as quick as possible. However, if it is a slow request, we want to sleep as quickly as possible. The tradeoff between waiting and sleeping is roughly the time it takes to sleep on a request, on the order of a microsecond. Based on measurements of synchronous workloads from across big core and little atom, I have set the limit for busywaiting as 10 microseconds. In most of the synchronous cases, we can reduce the limit down to as little as 2 miscroseconds, but that leaves quite a few test cases regressing by factors of 3 and more. The code currently uses the jiffie clock, but that is far too coarse (on the order of 10 milliseconds) and results in poor interactivity as the CPU ends up being hogged by slow requests. To get microsecond resolution we need to use a high resolution timer. The cheapest of which is polling local_clock(), but that is only valid on the same CPU. If we switch CPUs because the task was preempted, we can also use that as an indicator that the system is too busy to waste cycles on spinning and we should sleep instead. __i915_spin_request was introduced in commit 2def4ad [v4.2] Author: Chris Wilson <[email protected]> Date: Tue Apr 7 16:20:41 2015 +0100 drm/i915: Optimistically spin for the request completion v2: Drop full u64 for unsigned long - the timer is 32bit wraparound safe, so we can use native register sizes on smaller architectures. Mention the approximate microseconds units for elapsed time and add some extra comments describing the reason for busywaiting. v3: Raise the limit to 10us v4: Now 5us. Reported-by: Jens Axboe <[email protected]> Link: https://lkml.org/lkml/2015/11/12/621 Reviewed-by: Tvrtko Ursulin <[email protected]> Cc: "Rogozhkin, Dmitry V" <[email protected]> Cc: Daniel Vetter <[email protected]> Cc: Tvrtko Ursulin <[email protected]> Cc: Eero Tamminen <[email protected]> Cc: "Rantala, Valtteri" <[email protected]> Cc: [email protected] Signed-off-by: Daniel Vetter <[email protected]> Link: http://patchwork.freedesktop.org/patch/msgid/[email protected] (cherry picked from commit ca5b721e238226af1d767103ac852aeb8e4c0764) Signed-off-by: Jani Nikula <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for f87a780 - Browse repository at this point
Copy the full SHA f87a780View commit details -
drm/i915: Only spin whilst waiting on the current request
Limit busywaiting only to the request currently being processed by the GPU. If the request is not currently being processed by the GPU, there is a very low likelihood of it being completed within the 2 microsecond spin timeout and so we will just be wasting CPU cycles. v2: Check for logical inversion when rebasing - we were incorrectly checking for this request being active, and instead busywaiting for when the GPU was not yet processing the request of interest. v3: Try another colour for the seqno names. v4: Another colour for the function names. v5: Remove the forced coherency when checking for the active request. On reflection and plenty of recent experimentation, the issue is not a cache coherency problem - but an irq/seqno ordering problem (timing issue). Here, we do not need the w/a to force ordering of the read with an interrupt. Signed-off-by: Chris Wilson <[email protected]> Reviewed-by: Tvrtko Ursulin <[email protected]> Cc: "Rogozhkin, Dmitry V" <[email protected]> Cc: Daniel Vetter <[email protected]> Cc: Tvrtko Ursulin <[email protected]> Cc: Eero Tamminen <[email protected]> Cc: "Rantala, Valtteri" <[email protected]> Cc: [email protected] Signed-off-by: Daniel Vetter <[email protected]> Link: http://patchwork.freedesktop.org/patch/msgid/[email protected] (cherry picked from commit 821485dc2ad665f136c57ee589bf7a8210160fe2) Signed-off-by: Jani Nikula <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 0f0cd47 - Browse repository at this point
Copy the full SHA 0f0cd47View commit details -
drm/i915: Workaround CHV pipe C cursor fail
Turns out CHV pipe C was glued on somewhat poorly, and there's something wrong with the cursor. If the cursor straddles the left screen edge, and is then moved away from the edge or disabled, the pipe will often underrun. If enough underruns are triggered quickly enough the pipe will fall over and die (it just scans out a solid color and reports a constant underrun). We need to turn the disp2d power well off and on again to recover the pipe. None of that is very nice for the user, so let's just refuse to place the cursor in the compromised position. The ddx appears to fall back to swcursor when the ioctl returns an error, so theoretically there's no loss of functionality for the user (discounting swcursor bugs). I suppose most cursors images actually have the hotspot not exactly at 0,0 so under typical conditions the fallback will in fact kick in as soon as the cursor touches the left edge of the screen. Any atomic compositor should anyway be prepared to fall back to GPU composition when things don't work out, so there should be no problem with those. Other things that I tried to solve this include flipping all display related clock gating knobs I could find, increasing the minimum gtt alignment all the way up to 512k. I also tried to see if there are more specific screen coordinates that hit the bug, but the findings were somewhat inconclusive. Sometimes the failures happen almost across the whole left edge, sometimes more at the very top and around the bottom half. I wasn't able to find any real pattern to these variations, so it seems our only choice is to just refuse to straddle the left screen edge at all. Cc: [email protected] Cc: Jason Plum <[email protected]> Testcase: igt/kms_chv_cursor_fail Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=92826 Signed-off-by: Ville Syrjälä <[email protected]> Link: http://patchwork.freedesktop.org/patch/msgid/[email protected] Signed-off-by: Daniel Vetter <[email protected]> (cherry picked from commit b29ec92c4f5e6d45d8bae8194e664427a01c6687) Signed-off-by: Jani Nikula <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for ef8dd37 - Browse repository at this point
Copy the full SHA ef8dd37View commit details -
MIPS: uaccess: Take EVA into account in [__]clear_user
__clear_user() (and clear_user() which uses it), always access the user mode address space, which results in EVA store instructions when EVA is enabled even if the current user address limit is KERNEL_DS. Fix this by adding a new symbol __bzero_kernel for the normal kernel address space bzero in EVA mode, and call that from __clear_user() if eva_kernel_access(). Signed-off-by: James Hogan <[email protected]> Cc: Markos Chandras <[email protected]> Cc: Paul Burton <[email protected]> Cc: Leonid Yegoshin <[email protected]> Cc: [email protected] Patchwork: https://patchwork.linux-mips.org/patch/10844/ Signed-off-by: Ralf Baechle <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for d6a428f - Browse repository at this point
Copy the full SHA d6a428fView commit details -
drm/i915: Kill intel_crtc->cursor_bo
The vma may have been rebound between the last time the cursor was enabled and now, so skipping the cursor gtt offset deduction is not safe unless we would also reset cursor_bo to NULL when disabling the cursor. Just thow cursor_bo to the bin instead since it's lost all other uses thanks to universal plane support. Chris pointed out that cursor updates are currently too slow via universal planes that micro optimizations like these wouldn't even help. v2: Add a note about futility of micro optimizations (Chris) Cc: [email protected] References: http://lists.freedesktop.org/archives/intel-gfx/2015-December/082976.html Cc: Chris Wilson <[email protected]> Cc: Takashi Iwai <[email protected]> Cc: Jani Nikula <[email protected]> Signed-off-by: Ville Syrjälä <[email protected]> Link: http://patchwork.freedesktop.org/patch/msgid/[email protected] Reviewed-by: Chris Wilson <[email protected]> (cherry picked from commit 1264859d648c4bdc9f0a098efbff90cbf462a075) Signed-off-by: Jani Nikula <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 57a2af6 - Browse repository at this point
Copy the full SHA 57a2af6View commit details -
drm/i915: mdelay(10) considered harmful
I missed this myself when reviewing commit 237ed86 Author: Sonika Jindal <[email protected]> Date: Tue Sep 15 09:44:20 2015 +0530 drm/i915: Check live status before reading edid Long sleeps like this really shouldn't waste cpu cycles spinning. Cc: Sonika Jindal <[email protected]> Cc: "Wang, Gary C" <[email protected]> Link: http://patchwork.freedesktop.org/patch/msgid/[email protected] Reviewed-by: Sonika Jindal <[email protected]> Signed-off-by: Daniel Vetter <[email protected]> (cherry picked from commit 71a199bacb398ee54eeac001699257dda083a455) Signed-off-by: Jani Nikula <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 97f9010 - Browse repository at this point
Copy the full SHA 97f9010View commit details -
drm/i915: Correct max delay for HDMI hotplug live status checking
The total delay of HDMI hotplug detecting with 30ms have already been split into a resolution of 3 retries of 10ms each, for the worst cases. But it still suffered from only waiting 10ms at most in intel_hdmi_detect(). This patch corrects it by reading hotplug status with 4 times at most for 30ms delay. v2: - straight up to loop execution for more clear in code readability - mdelay will replace with msleep by Daniel's new patch drm/i915: mdelay(10) considered harmful - suggest to re-evaluate try times for being compatible to old HDMI monitor Reviewed-by: Cooper Chiou <[email protected]> Tested-by: Gary Wang <[email protected]> Cc: Jani Nikula <[email protected]> Cc: Daniel Vetter <[email protected]> Cc: Gavin Hindman <[email protected]> Cc: Sonika Jindal <[email protected]> Cc: Shashank Sharma <[email protected]> Signed-off-by: Gary Wang <[email protected]> [danvet: fixup conflict with s/mdelay/msleep/ patch.] Cc: [email protected] Signed-off-by: Daniel Vetter <[email protected]> (cherry picked from commit 61fb3980dd396880ffba48523b1e27579868b82b) Signed-off-by: Jani Nikula <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for a98728e - Browse repository at this point
Copy the full SHA a98728eView commit details -
MIPS: CPS: drop .set mips64r2 directives
Commit 977e043 ("MIPS: kernel: cps-vec: Replace mips32r2 ISA level with mips64r2") leads to .set mips64r2 directives being present in 32 bit (ie. CONFIG_32BIT=y) kernels. This is incorrect & leads to MIPS64 instructions being emitted by the assembler when expanding pseudo-instructions. For example the "move" instruction can legitimately be expanded to a "daddu". This causes problems when the kernel is run on a MIPS32 CPU, as CONFIG_32BIT kernels of course often are... Fix this by dropping the .set <ISA> directives entirely now that Kconfig should be ensuring that kernels including this code are built with a suitable -march= compiler flag. Signed-off-by: Paul Burton <[email protected]> Cc: Markos Chandras <[email protected]> Cc: James Hogan <[email protected]> Cc: <[email protected]> # 3.16+ Cc: [email protected] Cc: [email protected] Patchwork: https://patchwork.linux-mips.org/patch/10869/ Signed-off-by: Ralf Baechle <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for f3575e2 - Browse repository at this point
Copy the full SHA f3575e2View commit details -
Commit ebb5e78 ("MIPS: Initial implementation of a VDSO") introduced a build error. For MIPS VDSO to be compiled it requires binutils version 2.25 or above but the check in the Makefile had inverted logic causing it to be compiled in if binutils is below 2.25. This fixes the following compilation error: CC arch/mips/vdso/gettimeofday.o /tmp/ccsExcUd.s: Assembler messages: /tmp/ccsExcUd.s:62: Error: can't resolve `_start' {*UND* section} - `L0' {.text section} /tmp/ccsExcUd.s:467: Error: can't resolve `_start' {*UND* section} - `L0' {.text section} make[2]: *** [arch/mips/vdso/gettimeofday.o] Error 1 make[1]: *** [arch/mips/vdso] Error 2 make: *** [arch/mips] Error 2 [ralf@linux-mips: Fixed Sergei's complaint on the formatting of the cited commit and generally reformatted the log message.] Signed-off-by: Qais Yousef <[email protected]> Cc: [email protected] Cc: [email protected] Cc: [email protected] Patchwork: https://patchwork.linux-mips.org/patch/11745/ Signed-off-by: Ralf Baechle <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 2a037f3 - Browse repository at this point
Copy the full SHA 2a037f3View commit details -
crypto: algif_skcipher - Use new skcipher interface
This patch replaces uses of ablkcipher with the new skcipher interface. Cc: [email protected] Signed-off-by: Herbert Xu <[email protected]> Tested-by: <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 0d96e4b - Browse repository at this point
Copy the full SHA 0d96e4bView commit details -
MIPS: Fix build error due to unused variables.
c861519 ("MIPS: Fix delay loops which may be removed by GCC.") which made it upstream was an outdated version of the patch and is lacking some the removal of two variables that became unused thus resulting in further warnings and build breakage. The commit from ae878615d7cee5d7346946cf1ae1b60e427013c2 was correct however. Signed-off-by: Ralf Baechle <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for ec7b972 - Browse repository at this point
Copy the full SHA ec7b972View commit details -
KVM: MTRR: fix fixed MTRR segment look up
This fixes the slow-down of VM running with pci-passthrough, since some MTRR range changed from MTRR_TYPE_WRBACK to MTRR_TYPE_UNCACHABLE. Memory in the 0K-640K range was incorrectly treated as uncacheable. Fixes: f7bfb57 Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=107561 Cc: [email protected] Signed-off-by: Alexis Dambricourt <[email protected]> [Use correct BZ for "Fixes" annotation. - Paolo] Signed-off-by: Paolo Bonzini <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for a7f2d78 - Browse repository at this point
Copy the full SHA a7f2d78View commit details -
KVM: MTRR: observe maxphyaddr from guest CPUID, not host
Conversion of MTRRs to ranges used the maxphyaddr from the boot CPU. This is wrong, because var_mtrr_range's mask variable then is discontiguous (like FF00FFFF000, where the first run of 0s corresponds to the bits between host and guest maxphyaddr). Instead always set up the masks to be full 64-bit values---we know that the reserved bits at the top are zero, and we can restore them when reading the MSR. This way var_mtrr_range gets a mask that just works. Fixes: a13842d Cc: [email protected] Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=107561 Signed-off-by: Paolo Bonzini <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for fa7c4eb - Browse repository at this point
Copy the full SHA fa7c4ebView commit details -
KVM: MTRR: treat memory as writeback if MTRR is disabled in guest CPUID
Virtual machines can be run with CPUID such that there are no MTRRs. In that case, the firmware will never enable MTRRs and it is obviously undesirable to run the guest entirely with UC memory. Check out guest CPUID, and use WB memory if MTRR do not exist. Cc: [email protected] Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=107561 Signed-off-by: Paolo Bonzini <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for e24dea2 - Browse repository at this point
Copy the full SHA e24dea2View commit details -
KVM: x86: Reload pit counters for all channels when restoring state
Currently if userspace restores the pit counters with a count of 0 on channels 1 or 2 and the guest attempts to read the count on those channels, then KVM will perform a mod of 0 and crash. This will ensure that 0 values are converted to 65536 as per the spec. This is CVE-2015-7513. Signed-off-by: Andy Honig <[email protected]> Signed-off-by: Paolo Bonzini <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 0185604 - Browse repository at this point
Copy the full SHA 0185604View commit details -
NVMe: IO ending fixes on surprise removal
This patch fixes a lost request discovered during IO + hot removal. The driver's pci removal deletes gendisks prior to shutting down the controller to allow dirty data to sync. Dirty data can not be synced on a surprise removal, though, and would potentially block indefinitely. The driver previously had marked the queue as dying in this scenario to prevent new requests from attempting, however it will still block for requests that already entered the queue. This patch fixes this by quiescing IO first, then aborting the requeued requests before deleting disks. Reported-by: Sujith Pandel <[email protected]> Signed-off-by: Keith Busch <[email protected]> Tested-by: Sujith Pandel <[email protected]> Signed-off-by: Jens Axboe <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for b587522 - Browse repository at this point
Copy the full SHA b587522View commit details -
block: ensure to split after potentially bouncing a bio
blk_queue_bio() does split then bounce, which makes the segment counting based on pages before bouncing and could go wrong. Move the split to after bouncing, like we do for blk-mq, and the we fix the issue of having the bio count for segments be wrong. Fixes: 54efd50 ("block: make generic_make_request handle arbitrarily sized bios") Cc: [email protected] Tested-by: Artem S. Tashkinov <[email protected]> Signed-off-by: Jens Axboe <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 23688bf - Browse repository at this point
Copy the full SHA 23688bfView commit details -
null_blk: fix use-after-free error
blk_end_request_all may free request, so we need to save request_queue pointer before blk_end_request_all call. The problem was introduced in commit cf8ecc5 ("null_blk: guarantee device restart in all irq modes") and causes general protection fault with slab poisoning enabled. Fixes: cf8ecc5 ("null_blk: guarantee device restart in all irq modes") Signed-off-by: Mike Krinkin <[email protected]> Reviewed-by: Ming Lei <[email protected]> Signed-off-by: Jens Axboe <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for e827120 - Browse repository at this point
Copy the full SHA e827120View commit details -
bus: sunxi-rsb: Fix primary PMIC mapping hardware address
The primary PMICs use 0x3a3 as their hardware address, not 0x3e3. Signed-off-by: Chen-Yu Tsai <[email protected]> Signed-off-by: Olof Johansson <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 427d6e4 - Browse repository at this point
Copy the full SHA 427d6e4View commit details -
bus: sunxi-rsb: Fix peripheral IC mapping runtime address
0x4e is the runtime address normally associated with perihperal ICs. 0x45 is not a valid runtime address. Signed-off-by: Chen-Yu Tsai <[email protected]> Signed-off-by: Olof Johansson <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for bccd240 - Browse repository at this point
Copy the full SHA bccd240View commit details -
Merge tag 'imx-fixes-4.4-3' of git://git.kernel.org/pub/scm/linux/ker…
…nel/git/shawnguo/linux into fixes The i.MX fixes for 4.4, 3rd round: - Fix Ethernet PHY mode on i.MX6 Ventana boards, which can result in a non-functional Ethernet when Marvell phy driver rather than generic phy driver is selected. - Fix an assigned-clock configuration bug on imx6qdl-sabreauto board which was introduced by commit ed33936 ("ARM: dts: imx6qdl-sabreauto: Allow HDMI and LVDS to work simultaneously"). * tag 'imx-fixes-4.4-3' of git://git.kernel.org/pub/scm/linux/kernel/git/shawnguo/linux: ARM: dts: imx6: Fix Ethernet PHY mode on Ventana boards ARM: dts: imx: Fix the assigned-clock mismatch issue on imx6q/dl
Configuration menu - View commit details
-
Copy full SHA for 8b9c133 - Browse repository at this point
Copy the full SHA 8b9c133View commit details -
Merge git://git.kernel.org/pub/scm/linux/kernel/git/pablo/nf
Pablo Neira Ayuso says: ==================== Netfilter fixes for net The following patchset contains two netfilter fixes: 1) Oneliner from Florian to dump missing NFT_CT_L3PROTOCOL netlink attribute, from Florian Westphal. 2) Another oneliner for nf_tables to use skb->protocol from the new netdev family, we can't assume ethernet there. ==================== Signed-off-by: David S. Miller <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for a7c09ae - Browse repository at this point
Copy the full SHA a7c09aeView commit details -
veth: don’t modify ip_summed; doing so treats packets with bad checks…
…ums as good. Packets that arrive from real hardware devices have ip_summed == CHECKSUM_UNNECESSARY if the hardware verified the checksums, or CHECKSUM_NONE if the packet is bad or it was unable to verify it. The current version of veth will replace CHECKSUM_NONE with CHECKSUM_UNNECESSARY, which causes corrupt packets routed from hardware to a veth device to be delivered to the application. This caused applications at Twitter to receive corrupt data when network hardware was corrupting packets. We believe this was added as an optimization to skip computing and verifying checksums for communication between containers. However, locally generated packets have ip_summed == CHECKSUM_PARTIAL, so the code as written does nothing for them. As far as we can tell, after removing this code, these packets are transmitted from one stack to another unmodified (tcpdump shows invalid checksums on both sides, as expected), and they are delivered correctly to applications. We didn’t test every possible network configuration, but we tried a few common ones such as bridging containers, using NAT between the host and a container, and routing from hardware devices to containers. We have effectively deployed this in production at Twitter (by disabling RX checksum offloading on veth devices). This code dates back to the first version of the driver, commit <e314dbdc1c0dc6a548ecf> ("[NET]: Virtual ethernet device driver"), so I suspect this bug occurred mostly because the driver API has evolved significantly since then. Commit <0b7967503dc97864f283a> ("net/veth: Fix packet checksumming") (in December 2010) fixed this for packets that get created locally and sent to hardware devices, by not changing CHECKSUM_PARTIAL. However, the same issue still occurs for packets coming in from hardware devices. Co-authored-by: Evan Jones <[email protected]> Signed-off-by: Evan Jones <[email protected]> Cc: Nicolas Dichtel <[email protected]> Cc: Phil Sutter <[email protected]> Cc: Toshiaki Makita <[email protected]> Cc: [email protected] Cc: [email protected] Signed-off-by: Vijay Pandurangan <[email protected]> Acked-by: Cong Wang <[email protected]> Signed-off-by: David S. Miller <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for ce8c839 - Browse repository at this point
Copy the full SHA ce8c839View commit details -
sh_eth: fix 16-bit descriptor field access endianness too
Commit 1299653 ("sh_eth: fix descriptor access endianness") only addressed the 32-bit buffer address field byte-swapping but the driver still accesses 16-bit frame/buffer length descriptor fields without the necessary byte-swapping -- which should affect the big-endian kernels. In order to be able to use {cpu|edmac}_to_{edmac|cpu}(), we need to declare the RX/TX descriptor word 1 as a 32-bit field and use shifts/masking to access the 16-bit subfields (which gets rid of the ugly #ifdef'ery too)... Signed-off-by: Sergei Shtylyov <[email protected]> Signed-off-by: David S. Miller <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 5cbf20c - Browse repository at this point
Copy the full SHA 5cbf20cView commit details -
switchdev: bridge: Pass ageing time as clock_t instead of jiffies
The bridge's ageing time is offloaded to hardware when: 1) A port joins a bridge 2) The ageing time of the bridge is changed In the first case the ageing time is offloaded as jiffies, but in the second case it's offloaded as clock_t, which is what existing switchdev drivers expect to receive. Fixes: 6ac311a ("Adding switchdev ageing notification on port bridged") Signed-off-by: Ido Schimmel <[email protected]> Signed-off-by: Jiri Pirko <[email protected]> Signed-off-by: David S. Miller <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for ef9cdd0 - Browse repository at this point
Copy the full SHA ef9cdd0View commit details -
ipv6/addrlabel: fix ip6addrlbl_get()
ip6addrlbl_get() has never worked. If ip6addrlbl_hold() succeeded, ip6addrlbl_get() will exit with '-ESRCH'. If ip6addrlbl_hold() failed, ip6addrlbl_get() will use about to be free ip6addrlbl_entry pointer. Fix this by inverting ip6addrlbl_hold() check. Fixes: 2a8cc6c ("[IPV6] ADDRCONF: Support RFC3484 configurable address selection policy table.") Signed-off-by: Andrey Ryabinin <[email protected]> Reviewed-by: Cong Wang <[email protected]> Acked-by: YOSHIFUJI Hideaki <[email protected]> Signed-off-by: David S. Miller <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for e459dfe - Browse repository at this point
Copy the full SHA e459dfeView commit details -
Merge tag 'omap-for-v4.4/fixes-rc6' of git://git.kernel.org/pub/scm/l…
…inux/kernel/git/tmlind/linux-omap into fixes Few fixes for omaps to allow am437x only builds to boot properly with CPU_IDLE and ARM TWD timer. This is probably a common configuration setup for people making products with these SoCs so let's make sure it works. Also a wakeirq fix for duovero parlor making my life a bit easier as that allows me to run basic PM regression tests on it. It would be nice to have these in v4.4, but if it gets too late for that because of the holidays, it is not super critical if these get merged for v4.5. * tag 'omap-for-v4.4/fixes-rc6' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap: ARM: dts: Fix UART wakeirq for omap4 duovero parlor ARM: OMAP2+: AM43xx: select ARM TWD timer ARM: OMAP2+: am43xx: enable GENERIC_CLOCKEVENTS_BROADCAST Signed-off-by: Olof Johansson <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 741db4a - Browse repository at this point
Copy the full SHA 741db4aView commit details -
Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/gi…
…t/klassert/ipsec Steffen Klassert says: ==================== pull request (net): ipsec 2015-12-22 Just one patch to fix dst_entries_init with multiple namespaces. From Dan Streetman. Please pull or let me know if there are problems. ==================== Signed-off-by: David S. Miller <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 024f35c - Browse repository at this point
Copy the full SHA 024f35cView commit details -
addrconf: always initialize sysctl table data
When sysctl performs restrict writes, it allows to write from a middle position of a sysctl file, which requires us to initialize the table data before calling proc_dostring() for the write case. Fixes: 3d1bec9 ("ipv6: introduce secret_stable to ipv6_devconf") Reported-by: Sasha Levin <[email protected]> Acked-by: Hannes Frederic Sowa <[email protected]> Tested-by: Sasha Levin <[email protected]> Signed-off-by: Cong Wang <[email protected]> Signed-off-by: David S. Miller <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 5449a5c - Browse repository at this point
Copy the full SHA 5449a5cView commit details -
Fix a pointer cast typo introduced in v4.4-rc5 especially visible for the i386 subarchitecture where it results in a kernel crash. [ Also removed pointless cast as per Al Viro - Linus ] Fixes: 8090bfd ("um: Fix fpstate handling") Signed-off-by: Mickaël Salaün <[email protected]> Cc: Jeff Dike <[email protected]> Acked-by: Richard Weinberger <[email protected]> Signed-off-by: Linus Torvalds <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for de37937 - Browse repository at this point
Copy the full SHA de37937View commit details -
Merge tag 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/gi…
…t/mst/vhost Pull virtio fix from Michael Tsirkin: "This includes a single fix for virtio ccw error handling" * tag 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mst/vhost: virtio/s390: handle error values in irb
Configuration menu - View commit details
-
Copy full SHA for ea82813 - Browse repository at this point
Copy the full SHA ea82813View commit details -
ARM: tegra: Fix suspend hang on Tegra124 Chromebooks
Enabling CPUFreq support for Tegra124 Chromebooks is causing the Tegra124 to hang when resuming from suspend. When CPUFreq is enabled, the CPU clock is changed from the PLLX clock to the DFLL clock during kernel boot. When resuming from suspend the CPU clock is temporarily changed back to the PLLX clock before switching back to the DFLL. If the DFLL is operating at a much lower frequency than the PLLX when we enter suspend, and so the CPU voltage rail is at a voltage too low for the CPUs to operate at the PLLX frequency, then the device will hang. Please note that the PLLX is used in the resume sequence to switch the CPU clock from the very slow 32K clock to a faster clock during early resume to speed up the resume sequence before the DFLL is resumed. Ideally, we should fix this by setting the suspend frequency so that it matches the PLLX frequency, however, that would be a bigger change. For now simply disable CPUFreq support for Tegra124 Chromebooks to avoid the hang when resuming from suspend. Fixes: 9a0baee ("ARM: tegra: Enable CPUFreq support for Tegra124 Chromebooks") Signed-off-by: Jon Hunter <[email protected]> Signed-off-by: Olof Johansson <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 80373d3 - Browse repository at this point
Copy the full SHA 80373d3View commit details -
Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel…
…/git/s390/linux Pull s390 fixes from Martin Schwidefsky: "Two late bug fixes for kernel 4.4. Merry Christmas" * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/s390/linux: s390/dis: Fix handling of format specifiers s390/zcrypt: Fix AP queue handling if queue is full
Configuration menu - View commit details
-
Copy full SHA for ad3d1ab - Browse repository at this point
Copy the full SHA ad3d1abView commit details -
Merge tag 'for-linus' of git://git.kernel.org/pub/scm/virt/kvm/kvm
Pull kvm fixes from Paolo Bonzini: - A series of fixes to the MTRR emulation, tested in the BZ by several users so they should be safe this late - A fix for a division by zero - Two very simple ARM and PPC fixes * tag 'for-linus' of git://git.kernel.org/pub/scm/virt/kvm/kvm: KVM: x86: Reload pit counters for all channels when restoring state KVM: MTRR: treat memory as writeback if MTRR is disabled in guest CPUID KVM: MTRR: observe maxphyaddr from guest CPUID, not host KVM: MTRR: fix fixed MTRR segment look up KVM: VMX: Fix host initiated access to guest MSR_TSC_AUX KVM: arm/arm64: vgic: Fix kvm_vgic_map_is_active's dist check kvm: x86: move tracepoints outside extended quiescent state KVM: PPC: Book3S HV: Prohibit setting illegal transaction state in MSR
Configuration menu - View commit details
-
Copy full SHA for e73a317 - Browse repository at this point
Copy the full SHA e73a317View commit details -
Merge tag 'nfsd-4.4-1' of git://linux-nfs.org/~bfields/linux
Pull nfsd fix from Bruce Fields: "Just one fix for a NFSv4 callback bug introduced in 4.4" * tag 'nfsd-4.4-1' of git://linux-nfs.org/~bfields/linux: nfsd: don't hold ls_mutex across a layout recall
Configuration menu - View commit details
-
Copy full SHA for 0bee6ec - Browse repository at this point
Copy the full SHA 0bee6ecView commit details
Commits on Dec 23, 2015
-
Merge branch 'for-linus' of git://git.kernel.dk/linux-block
Pull block layer fixes from Jens Axboe: "Three small fixes for 4.4 final. Specifically: - The segment issue fix from Junichi, where the old IO path does a bio limit split before potentially bouncing the pages. We need to do that in the right order, to ensure that limitations are met. - A NVMe surprise removal IO hang fix from Keith. - A use-after-free in null_blk, introduced by a previous patch in this series. From Mike Krinkin" * 'for-linus' of git://git.kernel.dk/linux-block: null_blk: fix use-after-free error block: ensure to split after potentially bouncing a bio NVMe: IO ending fixes on surprise removal
Configuration menu - View commit details
-
Copy full SHA for 24bc3ea - Browse repository at this point
Copy the full SHA 24bc3eaView commit details -
block: Split bios on chunk boundaries
For h/w that advertise their block storage's underlying chunk size, it's a big performance win to not submit commands that cross them. This patch uses that criteria if it is provided. If it is not provided, this patch uses the max sectors as before. Signed-off-by: Keith Busch <[email protected]> Signed-off-by: Jens Axboe <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for d380561 - Browse repository at this point
Copy the full SHA d380561View commit details -
Merge remote-tracking branches 'asoc/fix/davinci', 'asoc/fix/es8328',…
… 'asoc/fix/fsl-sai', 'asoc/fix/rockchip', 'asoc/fix/sgtl5000' and 'asoc/fix/wm8974' into asoc-linus
Configuration menu - View commit details
-
Copy full SHA for 3dd5fc0 - Browse repository at this point
Copy the full SHA 3dd5fc0View commit details -
IB/cma: cma_match_net_dev needs to take into account port_num
Previously, cma_match_net_dev called cma_protocol_roce which tried to verify that the IB device uses RoCE protocol. However, if rdma_id wasn't bound to a port, then the check would occur against the first port of the device without regard to whether that port was even of the same type as the type of port the incoming packet was received on. Fix this by passing the port of the request and only checking against the same port of the device. Reported-by: Or Gerlitz <[email protected]> Fixes: b8cab5d ('IB/cma: Accept connection without a valid netdev on RoCE') Signed-off-by: Matan Barak <[email protected]> Signed-off-by: Doug Ledford <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for fac5159 - Browse repository at this point
Copy the full SHA fac5159View commit details -
IB/mlx4: Replace kfree with kvfree in mlx4_ib_destroy_srq
Commit 0ef2f05 uses vmalloc for WR buffers when needed and uses kvfree to free the buffers. It missed changing kfree to kvfree in mlx4_ib_destroy_srq(). Reported-by: Matthew Finaly <[email protected]> Signed-off-by: Wengang Wang <[email protected]> Signed-off-by: Doug Ledford <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for df41766 - Browse repository at this point
Copy the full SHA df41766View commit details -
Merge tag 'asoc-fix-v4.4-rc6' of git://git.kernel.org/pub/scm/linux/k…
…ernel/git/broonie/sound into for-linus ASoC: Fixes for v4.4 A collection of small driver specific fixes here, nothing that'll affect users who don't have the devices concerned. At least the wm8974 bug indicates that there's not too many users of some of these devices.
Configuration menu - View commit details
-
Copy full SHA for 0fb0b82 - Browse repository at this point
Copy the full SHA 0fb0b82View commit details -
drm/i915: Unbreak check_digital_port_conflicts()
Atomic changes broke check_digital_port_conflicts(). It needs to look at the global situation instead of just trying to find a conflict within the current atomic state. This bug made my HSW explode spectacularly after I had split the DDI encoders into separate DP and HDMI encoders. With the fix, things seem much more solid. I hope holding the connection_mutex is enough protection that we can actually walk the connectors even if they're not part of the current atomic state... v2: Regenerate the patch so that it actually applies (Jani) Cc: [email protected] Cc: Ander Conselvan de Oliveira <[email protected]> Fixes: 5448a00 ("drm/i915: Don't use staged config in check_digital_port_conflicts()") Signed-off-by: Ville Syrjälä <[email protected]> Reviewed-by: Daniel Vetter <[email protected]> Link: http://patchwork.freedesktop.org/patch/msgid/[email protected] (cherry picked from commit 0bff4858653312a10c83709e0009c3adb87e6f1e) Signed-off-by: Jani Nikula <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for ae35b56 - Browse repository at this point
Copy the full SHA ae35b56View commit details -
Merge branch 'drm-fixes' of git://people.freedesktop.org/~airlied/linux
Pull drm fixes from Dave Airlie: "Not much happening, should have dequeued this lot earlier. One amdgpu, one nouveau and one exynos fix" * 'drm-fixes' of git://people.freedesktop.org/~airlied/linux: drm/exynos: atomic check only enabled crtc states drm/nouveau/bios/fan: hardcode the fan mode to linear drm/amdgpu: fix user fence handling
Configuration menu - View commit details
-
Copy full SHA for 2bfd43d - Browse repository at this point
Copy the full SHA 2bfd43dView commit details -
Merge tag 'drm-intel-fixes-2015-12-23' of git://anongit.freedesktop.o…
…rg/drm-intel Pull i915 drm fixes from Jani Nikula: "Here's a batch of i915 fixes all around. It may be slightly bigger than one would hope for at this stage, but they've all been through testing in our -next before being picked up for v4.4. Also, I missed Dave's fixes pull earlier today just because I wanted an extra testing round on this. So I'm fairly confident. Wishing you all the things it is customary to wish this time of the year" * tag 'drm-intel-fixes-2015-12-23' of git://anongit.freedesktop.org/drm-intel: drm/i915: Correct max delay for HDMI hotplug live status checking drm/i915: mdelay(10) considered harmful drm/i915: Kill intel_crtc->cursor_bo drm/i915: Workaround CHV pipe C cursor fail drm/i915: Only spin whilst waiting on the current request drm/i915: Limit the busy wait on requests to 5us not 10ms! drm/i915: Break busywaiting for requests on pending signals drm/i915: Disable primary plane if we fail to reconstruct BIOS fb (v2) drm/i915: Set the map-and-fenceable flag for preallocated objects drm/i915: Drop the broken cursor base==0 special casing
Configuration menu - View commit details
-
Copy full SHA for 5b726e0 - Browse repository at this point
Copy the full SHA 5b726e0View commit details -
Merge tag 'sound-4.4-rc7' of git://git.kernel.org/pub/scm/linux/kerne…
…l/git/tiwai/sound Pull sound fixes from Takashi Iwai: "This shouldn't be a nightmare before Christmas: just a handful small device-specific fixes for various ASoC and HD-audio drivers. Most of them are stable fixes" * tag 'sound-4.4-rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound: ALSA: hda/realtek - Fix silent headphone output on MacPro 4,1 (v2) ASoC: fsl_sai: fix no frame clk in master mode ALSA: hda - Set SKL+ hda controller power at freeze() and thaw() ASoC: sgtl5000: fix VAG power up timing ASoC: rockchip: spdif: Set transmit data level to 16 samples ASoC: wm8974: set cache type for regmap ASoC: es8328: Fix shifts for mixer switches ASoC: davinci-mcasp: Fix XDATA check in mcasp_start_tx ASoC: es8328: Fix deemphasis values
Configuration menu - View commit details
-
Copy full SHA for a881643 - Browse repository at this point
Copy the full SHA a881643View commit details -
sparc: Hook up userfaultfd system call
After hooking up system call, userfaultfd selftest was successful for both 32 and 64 bit version of test. Signed-off-by: Mike Kravetz <[email protected]> Signed-off-by: David S. Miller <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 9bcfd78 - Browse repository at this point
Copy the full SHA 9bcfd78View commit details
Commits on Dec 24, 2015
-
cpufreq: scpi-cpufreq: signedness bug in scpi_get_dvfs_info()
The "domain" variable needs to be signed for the error handling to work. Fixes: 8def310 (cpufreq: arm_big_little: add SCPI interface driver) Signed-off-by: Dan Carpenter <[email protected]> Acked-by: Viresh Kumar <[email protected]> Acked-by: Sudeep Holla <[email protected]> Signed-off-by: Rafael J. Wysocki <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for a7def56 - Browse repository at this point
Copy the full SHA a7def56View commit details -
ipv6: honor ifindex in case we receive ll addresses in router adverti…
…sements Marc Haber reported we don't honor interface indexes when we receive link local router addresses in router advertisements. Luckily the non-strict version of ipv6_chk_addr already does the correct job here, so we can simply use it to lighten the checks and use those addresses by default without any configuration change. Link: <http://permalink.gmane.org/gmane.linux.network/391348> Reported-by: Marc Haber <[email protected]> Cc: Marc Haber <[email protected]> Signed-off-by: Hannes Frederic Sowa <[email protected]> Signed-off-by: David S. Miller <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for c1a9a29 - Browse repository at this point
Copy the full SHA c1a9a29View commit details -
geneve: initialize needed_headroom
Currently the needed_headroom field for the geneve device is left to the default value. This patch set it to space required for basic geneve encapsulation, so that we can avoid the skb head re-allocation on xmit. This give a 6% speedup for unsegment traffic on geneve tunnel. v1 -> v2: - add ETH_HLEN for the lower device to the needed headroom Signed-off-by: Paolo Abeni <[email protected]> Acked-by: Hannes Frederic Sowa <[email protected]> Acked-by: John W. Linville <[email protected]> Signed-off-by: David S. Miller <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 184fc8b - Browse repository at this point
Copy the full SHA 184fc8bView commit details -
net: cdc_ncm: avoid changing RX/TX buffers on MTU changes
NCM buffer sizes are negotiated with the device independently of the network device MTU. The RX buffers are allocated by the usbnet framework based on the rx_urb_size value set by cdc_ncm. A single RX buffer can hold a number of MTU sized packets. The default usbnet change_mtu ndo only modifies rx_urb_size if it is equal to hard_mtu. And the cdc_ncm driver will set rx_urb_size and hard_mtu independently of each other, based on dwNtbInMaxSize and dwNtbOutMaxSize respectively. It was therefore assumed that usbnet_change_mtu() would never touch rx_urb_size. This failed to consider the case where dwNtbInMaxSize and dwNtbOutMaxSize happens to be equal. Fix by implementing an NCM specific change_mtu ndo, modifying the netdev MTU without touching the buffer size settings. Signed-off-by: Bjørn Mork <[email protected]> Signed-off-by: David S. Miller <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 1dfddff - Browse repository at this point
Copy the full SHA 1dfddffView commit details -
qlcnic: fix a loop exit condition better
In the original code, if we succeeded on the last iteration through the loop then we still returned failure. Fixes: 389e4e0 ('qlcnic: fix a timeout loop') Signed-off-by: Dan Carpenter <[email protected]> Signed-off-by: David S. Miller <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 3358a5c - Browse repository at this point
Copy the full SHA 3358a5cView commit details -
tty: serial: constify sunhv_ops structs
Constifies sunhv_ops structures in tty's serial driver since they are not modified after their initialization. Detected and found using Coccinelle. Suggested-by: Julia Lawall <[email protected]> Signed-off-by: Aya Mahfouz <[email protected]> Signed-off-by: David S. Miller <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 01fd3c2 - Browse repository at this point
Copy the full SHA 01fd3c2View commit details -
sparc64: Add ADI capability to cpu capabilities
Add ADI (Application Data Integrity) capability to cpu capabilities list. ADI capability allows virtual addresses to be encoded with a tag in bits 63-60. This tag serves as an access control key for the regions of virtual address with ADI enabled and a key set on them. Hypervisor encodes this capability as "adp" in "hwcap-list" property in machine description. Signed-off-by: Khalid Aziz <[email protected]> Signed-off-by: David S. Miller <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 82924e5 - Browse repository at this point
Copy the full SHA 82924e5View commit details -
sparc64: Don't set %pil in rtrap_nmi too early
Commit 28a1f53 delays setting %pil to avoid potential hardirq stack overflow in the common rtrap_irq path. Setting %pil also needs to be delayed in the rtrap_nmi path for the same reason. Signed-off-by: Rob Gardner <[email protected]> Signed-off-by: Dave Aldridge <[email protected]> Signed-off-by: David S. Miller <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 1ca04a4 - Browse repository at this point
Copy the full SHA 1ca04a4View commit details -
sparc64: Ensure perf can access user stacks
When an interrupt (such as a perf counter interrupt) is delivered while executing in user space, the trap entry code puts ASI_AIUS in %asi so that copy_from_user() and copy_to_user() will access the correct memory. But if a perf counter interrupt is delivered while the cpu is already executing in kernel space, then the trap entry code will put ASI_P in %asi, and this will prevent copy_from_user() from reading any useful stack data in either of the perf_callchain_user_X functions, and thus no user callgraph data will be collected for this sample period. An additional problem is that a fault is guaranteed to occur, and though it will be silently covered up, it wastes time and could perturb state. In perf_callchain_user(), we ensure that %asi contains ASI_AIUS because we know for a fact that the subsequent calls to copy_from_user() are intended to read the user's stack. [ Use get_fs()/set_fs() -DaveM ] Signed-off-by: Rob Gardner <[email protected]> Signed-off-by: Dave Aldridge <[email protected]> Signed-off-by: David S. Miller <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 3f74306 - Browse repository at this point
Copy the full SHA 3f74306View commit details -
sparc64: Perf should save/restore fault info
There have been several reports of random processes being killed with a bus error or segfault during userspace stack walking in perf. One of the root causes of this problem is an asynchronous modification to thread_info fault_address and fault_code, which stems from a perf counter interrupt arriving during kernel processing of a "benign" fault, such as a TSB miss. Since perf_callchain_user() invokes copy_from_user() to read user stacks, a fault is not only possible, but probable. Validity checks on the stack address merely cover up the problem and reduce its frequency. The solution here is to save and restore fault_address and fault_code in perf_callchain_user() so that the benign fault handler is not disturbed by a perf interrupt. Signed-off-by: Rob Gardner <[email protected]> Signed-off-by: Dave Aldridge <[email protected]> Signed-off-by: David S. Miller <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 8335269 - Browse repository at this point
Copy the full SHA 8335269View commit details -
sparc64: fix FP corruption in user copy functions
Short story: Exception handlers used by some copy_to_user() and copy_from_user() functions do not diligently clean up floating point register usage, and this can result in a user process seeing invalid values in floating point registers. This sometimes makes the process fail. Long story: Several cpu-specific (NG4, NG2, U1, U3) memcpy functions use floating point registers and VIS alignaddr/faligndata to accelerate data copying when source and dest addresses don't align well. Linux uses a lazy scheme for saving floating point registers; It is not done upon entering the kernel since it's a very expensive operation. Rather, it is done only when needed. If the kernel ends up not using FP regs during the course of some trap or system call, then it can return to user space without saving or restoring them. The various memcpy functions begin their FP code with VISEntry (or a variation thereof), which saves the FP regs. They conclude their FP code with VISExit (or a variation) which essentially marks the FP regs "clean", ie, they contain no unsaved values. fprs.FPRS_FEF is turned off so that a lazy restore will be triggered when/if the user process accesses floating point regs again. The bug is that the user copy variants of memcpy, copy_from_user() and copy_to_user(), employ an exception handling mechanism to detect faults when accessing user space addresses, and when this handler is invoked, an immediate return from the function is forced, and VISExit is not executed, thus leaving the fprs register in an indeterminate state, but often with fprs.FPRS_FEF set and one or more dirty bits. This results in a return to user space with invalid values in the FP regs, and since fprs.FPRS_FEF is on, no lazy restore occurs. This bug affects copy_to_user() and copy_from_user() for NG4, NG2, U3, and U1. All are fixed by using a new exception handler for those loads and stores that are done during the time between VISEnter and VISExit. n.b. In NG4memcpy, the problematic code can be triggered by a copy size greater than 128 bytes and an unaligned source address. This bug is known to be the cause of random user process memory corruptions while perf is running with the callgraph option (ie, perf record -g). This occurs because perf uses copy_from_user() to read user stacks, and may fault when it follows a stack frame pointer off to an invalid page. Validation checks on the stack address just obscure the underlying problem. Signed-off-by: Rob Gardner <[email protected]> Signed-off-by: Dave Aldridge <[email protected]> Signed-off-by: David S. Miller <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for a7c5724 - Browse repository at this point
Copy the full SHA a7c5724View commit details -
tty/serial: Skip 'NULL' char after console break when sysrq enabled
When sysrq is triggered from console, serial driver for SUN hypervisor console receives a console break and enables the sysrq. It expects a valid sysrq char following with break. Meanwhile if driver receives 'NULL' ASCII char then it disables sysrq and sysrq handler will never be invoked. This fix skips calling uart sysrq handler when 'NULL' is received while sysrq is enabled. Signed-off-by: Vijay Kumar <[email protected]> Acked-by: Karl Volz <[email protected]> Signed-off-by: David S. Miller <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 079317a - Browse repository at this point
Copy the full SHA 079317aView commit details -
ASoC: arizona: Fix bclk for sample rates that are multiple of 4kHz
For a sample rate of 12kHz the bclk was taken from the 44.1kHz table as we test for a multiple of 8kHz. This patch fixes this issue by testing for multiples of 4kHz instead. Signed-off-by: Nikesh Oswal <[email protected]> Signed-off-by: Charles Keepax <[email protected]> Signed-off-by: Mark Brown <[email protected]> Cc: [email protected]
Configuration menu - View commit details
-
Copy full SHA for e73694d - Browse repository at this point
Copy the full SHA e73694dView commit details
Commits on Dec 25, 2015
-
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc
Pull sparc fixes from David Miller: 1) Finally make perf stack backtraces stable on sparc, several problems (mostly due to the context in which the user copies from the stack are done) contributed to this. From Rob Gardner. 2) Export ADI capability if the cpu supports it. 3) Hook up userfaultfd system call. 4) When faults happen during user copies we really have to clean up and restore the FPU state fully. Also from Rob Gardner * git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc: tty/serial: Skip 'NULL' char after console break when sysrq enabled sparc64: fix FP corruption in user copy functions sparc64: Perf should save/restore fault info sparc64: Ensure perf can access user stacks sparc64: Don't set %pil in rtrap_nmi too early sparc64: Add ADI capability to cpu capabilities tty: serial: constify sunhv_ops structs sparc: Hook up userfaultfd system call
Configuration menu - View commit details
-
Copy full SHA for 682cb0c - Browse repository at this point
Copy the full SHA 682cb0cView commit details -
Merge branch 'parisc-4.4-4' of git://git.kernel.org/pub/scm/linux/ker…
…nel/git/deller/parisc-linux Pull parisc system call restart fix from Helge Deller: "The architectural design of parisc always uses two instructions to call kernel syscalls (delayed branch feature). This means that the instruction following the branch (located in the delay slot of the branch instruction) is executed before control passes to the branch destination. Depending on which assembler instruction and how it is used in usersapce in the delay slot, this sometimes made restarted syscalls like futex() and poll() failing with -ENOSYS" * 'parisc-4.4-4' of git://git.kernel.org/pub/scm/linux/kernel/git/deller/parisc-linux: parisc: Fix syscall restarts
Configuration menu - View commit details
-
Copy full SHA for 8db7b3c - Browse repository at this point
Copy the full SHA 8db7b3cView commit details
Commits on Dec 26, 2015
-
Merge branches 'acpi-processor' and 'pm-cpufreq'
* acpi-processor: ACPI / processor: Fix thermal cooling device regression * pm-cpufreq: cpufreq: scpi-cpufreq: signedness bug in scpi_get_dvfs_info()
Configuration menu - View commit details
-
Copy full SHA for 43b28ca - Browse repository at this point
Copy the full SHA 43b28caView commit details -
Merge tag 'arc-4.4-rc7-fixes' of git://git.kernel.org/pub/scm/linux/k…
…ernel/git/vgupta/arc Pull ARC fixes from Vineet Gupta: "Sorry for this late pull request, but these are all important fixes for code introduced/updated in this release which we will otherwise end up back porting. - Unwinder rework (A revert followed by better fix) - Build errors: MMUv2, modules with -Os - highmem section mismatch build splat" * tag 'arc-4.4-rc7-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/vgupta/arc: ARC: dw2 unwind: Catch Dwarf SNAFUs early ARC: dw2 unwind: Don't bail for CIE.version != 1 Revert "ARC: dw2 unwind: Ignore CIE version !=1 gracefully instead of bailing" ARC: Fix linking errors with CONFIG_MODULE + CONFIG_CC_OPTIMIZE_FOR_SIZE ARC: mm: fix building for MMU v2 ARC: mm: HIGHMEM: Fix section mismatch splat
Configuration menu - View commit details
-
Copy full SHA for 12261f4 - Browse repository at this point
Copy the full SHA 12261f4View commit details
Commits on Dec 27, 2015
-
Merge tag 'trace-v4.4-rc4-2' of git://git.kernel.org/pub/scm/linux/ke…
…rnel/git/rostedt/linux-trace Pull ftrace/recordmcount fix from Steven Rostedt: "Russell King was reporting lots of warnings when he compiled his kernel with ftrace enabled. With some investigation it was discovered that it was his compile setup. He was using ccache with hard links, which allowed recordmcount to process the same .o twice. When this happens, recordmcount will detect that it was already done and give a warning about it. Russell fixed this by having recordmcount detect that the object file has more than one hard link, and if it does, it unlinks the object file after it maps it and processes then. This appears to fix the issue. As you did not like the fact that recordmcount modified the file in place and thought that it should do the modifications in memory and then write it out to disk and move it over the old file to prevent other more subtle issues like the one above, a second patch is added on top of Russell's to do just that. Luckily the original code had write and lseek wrappers that I was able to modify to not do inplace writes, but simply keep track of the changes made in memory. When a write is made, a "update" flag is set, and at the end of processing, if the update is set, then it writes the file with changes out to a new file, and then renames it over the original one. The file descriptor is still passed to the write and lseek wrappers because removing that would cause the change to be more intrusive. That can be removed in a follow up cleanup patch that can wait till the next merge window" * tag 'trace-v4.4-rc4-2' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-trace: ftrace/scripts: Have recordmcount copy the object file scripts: recordmcount: break hardlinks
Configuration menu - View commit details
-
Copy full SHA for e2b0a16 - Browse repository at this point
Copy the full SHA e2b0a16View commit details -
Merge tag 'upstream-4.4-rc7' of git://git.infradead.org/linux-ubifs
Pull UBI bug fixes from Richard Weinberger: "This contains four bug fixes for UBI" * tag 'upstream-4.4-rc7' of git://git.infradead.org/linux-ubifs: mtd: ubi: don't leak e if schedule_erase() fails mtd: ubi: fixup error correction in do_sync_erase() UBI: fix use of "VID" vs. "EC" in header self-check UBI: fix return error code
Configuration menu - View commit details
-
Copy full SHA for 3bef22e - Browse repository at this point
Copy the full SHA 3bef22eView commit details -
Merge tag 'md/4.4-rc6-fix' of git://neil.brown.name/md
Pull md bugfix from Neil Brown: "One more md fix for 4.4-rc Fix a regression which causes reshape to not start properly sometimes" * tag 'md/4.4-rc6-fix' of git://neil.brown.name/md: md: remove check for MD_RECOVERY_NEEDED in action_store.
Configuration menu - View commit details
-
Copy full SHA for f0cf008 - Browse repository at this point
Copy the full SHA f0cf008View commit details -
Merge tag 'pm+acpi-4.4-rc7' of git://git.kernel.org/pub/scm/linux/ker…
…nel/git/rafael/linux-pm Pull power management and ACPI fixes from Rafael Wysocki: "These fix an ACPI processor driver regression introduced during the 4.3 cycle and a mistake in the recently added SCPI support in the arm_big_little cpufreq driver. Specifics: - Fix a thermal management issue introduced by an ACPI processor driver change made during the 4.3 development cycle that failed to return 0 from a function on success which triggered an error cleanup path every time it had been called that deleted useful data structures created previously (Srinivas Pandruvada). - Fix a variable data type issue in the arm_big_little cpufreq driver's SCPI support code added recently that prevents error handling in there from working correctly (Dan Carpenter)" * tag 'pm+acpi-4.4-rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm: cpufreq: scpi-cpufreq: signedness bug in scpi_get_dvfs_info() ACPI / processor: Fix thermal cooling device regression
Configuration menu - View commit details
-
Copy full SHA for 2c96961 - Browse repository at this point
Copy the full SHA 2c96961View commit details -
MIPS: Fix bitrot in __get_user_unaligned()
Signed-off-by: Al Viro <[email protected]> Signed-off-by: Ralf Baechle <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 930c0f7 - Browse repository at this point
Copy the full SHA 930c0f7View commit details
Commits on Dec 28, 2015
-
Merge tag 'armsoc-fixes' of git://git.kernel.org/pub/scm/linux/kernel…
…/git/arm/arm-soc Pull ARM SoC fixes from Olof Johansson: "A smallish set of fixes that we've been sitting on for a while now, flushing the queue here so they go in. Summary: A handful of fixes for OMAP, i.MX, Allwinner and Tegra: - A clock rate and a PHY setup fix for i.MX6Q/DL - A couple of fixes for the reduced serial bus (sunxi-rsb) on Allwinner - UART wakeirq fix for an OMAP4 board, timer config fixes for AM43XX. - Suspend fix for Tegra124 Chromebooks - Fix for missing implicit include that's different between ARM/ARM64" * tag 'armsoc-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: ARM: tegra: Fix suspend hang on Tegra124 Chromebooks bus: sunxi-rsb: Fix peripheral IC mapping runtime address bus: sunxi-rsb: Fix primary PMIC mapping hardware address ARM: dts: Fix UART wakeirq for omap4 duovero parlor ARM: OMAP2+: AM43xx: select ARM TWD timer ARM: OMAP2+: am43xx: enable GENERIC_CLOCKEVENTS_BROADCAST fsl-ifc: add missing include on ARM64 ARM: dts: imx6: Fix Ethernet PHY mode on Ventana boards ARM: dts: imx: Fix the assigned-clock mismatch issue on imx6q/dl bus: sunxi-rsb: unlock on error in sunxi_rsb_read() ARM: dts: sunxi: sun6i-a31s-primo81.dts: add touchscreen axis swapping property
Configuration menu - View commit details
-
Copy full SHA for db06650 - Browse repository at this point
Copy the full SHA db06650View commit details -
Merge branch 'upstream' of git://git.linux-mips.org/pub/scm/ralf/upst…
…ream-linus Pull MIPS fixes from Ralf Baechle: - Fix bitrot in __get_user_unaligned() - EVA userspace accessor bug fixes. - Fix for build issues with certain toolchains. - Fix build error for VDSO with particular toolchain versions. - Fix build error due to a variable that should have been removed by an earlier patch * 'upstream' of git://git.linux-mips.org/pub/scm/ralf/upstream-linus: MIPS: Fix bitrot in __get_user_unaligned() MIPS: Fix build error due to unused variables. MIPS: VDSO: Fix build error MIPS: CPS: drop .set mips64r2 directives MIPS: uaccess: Take EVA into account in [__]clear_user MIPS: uaccess: Take EVA into account in __copy_from_user() MIPS: uaccess: Fix strlen_user with EVA
Configuration menu - View commit details
-
Copy full SHA for 3ae86f1 - Browse repository at this point
Copy the full SHA 3ae86f1View commit details -
Configuration menu - View commit details
-
Copy full SHA for 74bf8ef - Browse repository at this point
Copy the full SHA 74bf8efView commit details -
sctp: use GFP_USER for user-controlled kmalloc
Commit cacc062 ("sctp: use GFP_USER for user-controlled kmalloc") missed two other spots. For connectx, as it's more likely to be used by kernel users of the API, it detects if GFP_USER should be used or not. Fixes: cacc062 ("sctp: use GFP_USER for user-controlled kmalloc") Reported-by: Dmitry Vyukov <[email protected]> Signed-off-by: Marcelo Ricardo Leitner <[email protected]> Signed-off-by: David S. Miller <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 9ba0b96 - Browse repository at this point
Copy the full SHA 9ba0b96View commit details -
sctp: label accepted/peeled off sockets
Accepted or peeled off sockets were missing a security label (e.g. SELinux) which means that socket was in "unlabeled" state. This patch clones the sock's label from the parent sock and resolves the issue (similar to AF_BLUETOOTH protocol family). Cc: Paul Moore <[email protected]> Cc: David Teigland <[email protected]> Signed-off-by: Marcelo Ricardo Leitner <[email protected]> Acked-by: Paul Moore <[email protected]> Signed-off-by: David S. Miller <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 3538a5c - Browse repository at this point
Copy the full SHA 3538a5cView commit details -
Merge remote-tracking branch 'mkp-scsi/4.4/scsi-fixes' into fixes
James Bottomley authored and James Bottomley committedDec 28, 2015 Configuration menu - View commit details
-
Copy full SHA for f9ec0d5 - Browse repository at this point
Copy the full SHA f9ec0d5View commit details -
iommu/dma: Add some missing #includes
dma-iommu.c was naughtily relying on an implicit transitive #include of linux/vmalloc.h, which is apparently not present on some architectures. Add that, plus a couple more headers for other functions which are used similarly. Reported-by: kbuild test robot <[email protected]> Signed-off-by: Robin Murphy <[email protected]> Signed-off-by: Joerg Roedel <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 5b11e9c - Browse repository at this point
Copy the full SHA 5b11e9cView commit details -
iommu/dma: Avoid unlikely high-order allocations
Doug reports that the equivalent page allocator on 32-bit ARM exhibits particularly pathalogical behaviour under memory pressure when fragmentation is high, where allocating a 4MB buffer takes tens of seconds and the number of calls to alloc_pages() is over 9000![1] We can drastically improve that situation without losing the other benefits of high-order allocations when they would succeed, by assuming memory pressure is relatively constant over the course of an allocation, and not retrying allocations at orders we know to have failed before. This way, the best-case behaviour remains unchanged, and in the worst case we should see at most a dozen or so (MAX_ORDER - 1) failed attempts before falling back to single pages for the remainder of the buffer. [1]:http://lists.infradead.org/pipermail/linux-arm-kernel/2015-December/394660.html Reported-by: Douglas Anderson <[email protected]> Signed-off-by: Robin Murphy <[email protected]> Signed-off-by: Joerg Roedel <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 0a9afed - Browse repository at this point
Copy the full SHA 0a9afedView commit details -
iommu/ipmmu-vmsa: Don't truncate ttbr if LPAE is not enabled
If CONFIG_PHYS_ADDR_T_64BIT=n: drivers/iommu/ipmmu-vmsa.c: In function 'ipmmu_domain_init_context': drivers/iommu/ipmmu-vmsa.c:434:2: warning: right shift count >= width of type ipmmu_ctx_write(domain, IMTTUBR0, ttbr >> 32); ^ As io_pgtable_cfg.arm_lpae_s1_cfg.ttbr[] is an array of u64s, assigning it to a phys_addr_t may truncates it. Make ttbr u64 to fix this. Signed-off-by: Geert Uytterhoeven <[email protected]> Signed-off-by: Joerg Roedel <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for f64232e - Browse repository at this point
Copy the full SHA f64232eView commit details -
RDMA/ocrdma: Fix vlan-id assignment in qp parameters
vlan-id is wrongly getting as 0 when PFC is enabled. Set vlan-id configured by user in QP parameters. In case vlan interface is not used, flash a warning to user to configure vlan and assign vlan-id as 0 in qp params. Fixes: dbf727d ('IB/core: Use GID table in AH creation and dmac resolution') Cc: Matan Barak <[email protected]> Signed-off-by: Devesh Sharma <[email protected]> Signed-off-by: Doug Ledford <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for c6002d5 - Browse repository at this point
Copy the full SHA c6002d5View commit details -
RDMA/ocrdma: Dispatch only port event when port state changes
Dispatch only port event to IB stack when port state changes. Don't explicitly modify qps to error. Let application listen to port events on async event queue or let QP fail with retry-exceeded completion error. Signed-off-by: Padmanabh Ratnakar <[email protected]> Signed-off-by: Devesh Sharma <[email protected]> Signed-off-by: Doug Ledford <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 36ac0db - Browse repository at this point
Copy the full SHA 36ac0dbView commit details -
RDMA/ocrdma: Depend on async link events from CNA
Recently Dough Ledford reported a deadlock happening between ocrdma-load sequence and NetworkManager service issuing "open" on be2net interface. The deadlock happens when any be2net hook (e.g. open/close) is called in parallel to insmod ocrdma.ko. A. be2net is sending administrative open/close event to ocrdma holding device_list_mutex. It does this from ndo_open/ndo_stop hooks of be2net. So sequence of locks is rtnl_lock---> device_list lock B. When new ocrdma roce device gets registered, infiniband stack now takes rtnl_lock in ib_register_device() in GID initialization routines. So sequence of locks in this path is device_list lock ---> rtnl_lock. This improper locking sequence causes deadlock. With this patch we stop using administrative open and close events injected by be2net driver. These events were used to dispatch PORT_ACTIVE and PORT_ERROR events to the IB-stack. This patch implements a logic to receive async-link-events generated from CNA whenever link-state-change is detected. Now on, these async-events will be used to dispatch PORT_ACTIVE and PORT_ERROR events to IB-stack. Depending on async-events from CNA removes the need to hold device-list-mutex and thus breaks the busy-wait scenario. Reported-by: Doug Ledford <[email protected]> CC: Sathya Perla <[email protected]> Signed-off-by: Padmanabh Ratnakar <[email protected]> Signed-off-by: Selvin Xavier <[email protected]> Signed-off-by: Devesh Sharma <[email protected]> Signed-off-by: Doug Ledford <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 10a214d - Browse repository at this point
Copy the full SHA 10a214dView commit details -
RDMA/be2net: Remove open and close entry points
Recently Dough Ledford reported a deadlock happening between ocrdma-load sequence and NetworkManager service issueing "open" on be2net interface. The deadlock happens when any be2net hook (e.g. open/close) is called in parallel to insmod ocrdma.ko. A. be2net is sending administrative open/close event to ocrdma holding device_list_mutex. It does this from ndo_open/ndo_stop hooks of be2net. So sequence of locks is rtnl_lock---> device_list lock B. When new ocrdma roce device gets registered, infiniband stack now takes rtnl_lock in ib_register_device() in GID initialization routines. So sequence of locks in this path is device_list lock ---> rtnl_lock. This improper locking sequence causes deadlock. In order to resolve the above deadlock condition, ocrdma intorduced a patch to stop listening to administrative open/close events generated from be2net driver. It now depends on link-state-change async-event generated from CNA. This change leaves behind dead code which used to generate administrative open/close events. This patch cleans-up all that dead code from be2net. Reported-by: Doug Ledford <[email protected]> CC: Sathya Perla <[email protected]> Signed-off-by: Padmanabh Ratnakar <[email protected]> Signed-off-by: Selvin Xavier <[email protected]> Signed-off-by: Devesh Sharma <[email protected]> Signed-off-by: Doug Ledford <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for f41647e - Browse repository at this point
Copy the full SHA f41647eView commit details -
Merge branch 'for-linus2' of git://git.kernel.org/pub/scm/linux/kerne…
…l/git/jmorris/linux-security Pull key handling bugfix from James Morris: "Fix a race between keyctl_read() and keyctl_revoke()" * 'for-linus2' of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/linux-security: KEYS: Fix race between read and revoke
Configuration menu - View commit details
-
Copy full SHA for 2c7143d - Browse repository at this point
Copy the full SHA 2c7143dView commit details -
Merge branch 'linus' of git://git.kernel.org/pub/scm/linux/kernel/git…
…/herbert/crypto-2.6 Pull crypto fix from Herbert Xu: "This fixes a bug in the algif_skcipher interface that can trigger a kernel WARN_ON from user-space. It does so by using the new skcipher interface which unlike the previous ablkcipher does not need to create extra geniv objects which is what was used to trigger the WARN_ON" * 'linus' of git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6: crypto: algif_skcipher - Use new skcipher interface
Configuration menu - View commit details
-
Copy full SHA for 8513342 - Browse repository at this point
Copy the full SHA 8513342View commit details -
block: add blk_start_queue_async()
We currently only have an inline/sync helper to restart a stopped queue. If drivers need an async version, they have to roll their own. Add a generic helper instead. Signed-off-by: Jens Axboe <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 2149141 - Browse repository at this point
Copy the full SHA 2149141View commit details -
null_blk: use async queue restart helper
If null_blk is run in NULL_IRQ_TIMER mode and with queue_mode NULL_Q_RQ, we need to restart the queue from the hrtimer interrupt. We can't directly invoke the request_fn from that context, so punt the queue run to async kblockd context. Tested-by: Rabin Vincent <[email protected]> Signed-off-by: Jens Axboe <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 48cc661 - Browse repository at this point
Copy the full SHA 48cc661View commit details
Commits on Dec 29, 2015
-
Merge tag 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/gi…
…t/dledford/rdma Pull rdma fixes from Doug Ledford: "Three late 4.4-rc fixes. The first two were very small in terms of number of lines, the third is more lines of change than I like this late in the cycle, but there are positive test results from Avagotech and from my own test setup with the target hardware, and given the problem was a 100% failure case, I sent it through. - A previous patch updated the mlx4 driver to use vmalloc when there was not enough memory to get a contiguous region large enough for our needs, so we need kvfree() whenever we free that item. We missed one place, so fix that now. - A previous patch added code to match incoming packets against a specific device, but failed to compensate for devices that have both InfiniBand and Ethernet ports. Fix that. - Under certain vlan conditions, the ocrdma driver would fail to bring up any vlan interfaces and would print out a circular locking failure. Fix that" * tag 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dledford/rdma: RDMA/be2net: Remove open and close entry points RDMA/ocrdma: Depend on async link events from CNA RDMA/ocrdma: Dispatch only port event when port state changes RDMA/ocrdma: Fix vlan-id assignment in qp parameters IB/mlx4: Replace kfree with kvfree in mlx4_ib_destroy_srq IB/cma: cma_match_net_dev needs to take into account port_num
Configuration menu - View commit details
-
Copy full SHA for 1e60508 - Browse repository at this point
Copy the full SHA 1e60508View commit details -
ALSA: hda - Add mic mute hotkey quirk for Lenovo ThinkCentre AIO
The Lenovo ThinkCenter AIO uses Line2 (NID 0x1b) to implement the micmute hotkey, here we register an input device and use Line2 unsol event to collect the hotkey pressing or releasing. In the meanwhile, the micmute led is controlled by GPIO2, so we use an existing function alc_fixup_gpio_mic_mute_hook() to control the led. [Hui: And there are two places to register the input device, to make the code simple and clean, move the two same code sections into a function.] Cc: <[email protected]> Signed-off-by: Kailang <[email protected]> Signed-off-by: Hui Wang <[email protected]> Signed-off-by: Takashi Iwai <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 3694cb2 - Browse repository at this point
Copy the full SHA 3694cb2View commit details -
ALSA: hda - Add keycode map for alc input device
Then users can remap the keycode from userspace. If without the remap, the input device will pass KEY_MICMUTE to userspace, but in X11 layer, it uses KEY_F20 rather than KEY_MICMUTE for XF86AudioMicMute. After adding the keycode map, users can remap the keycode to any value users want. Cc: <[email protected]> Signed-off-by: Hui Wang <[email protected]> Signed-off-by: Takashi Iwai <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for c7b60a8 - Browse repository at this point
Copy the full SHA c7b60a8View commit details -
lightnvm: wrong offset in bad blk lun calculation
dev->nr_luns reports the total number of luns available in a device while dev->luns_per_chnl is the number of luns per channel. When multiple channels are available, the offset is calculated from a channel and lun id into a linear array. As it multiplies with the total number of luns, we go out of bound when channel id > 0 and causes the kernel to panic when we read a protected kernel memory area. Signed-off-by: Matias Bjørling <[email protected]> Signed-off-by: Jens Axboe <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for c3293a9 - Browse repository at this point
Copy the full SHA c3293a9View commit details -
[PATCH] arm: fix handling of F_OFD_... in oabi_fcntl64()
Cc: [email protected] # 3.15+ Reviewed-by: Jeff Layton <[email protected]> Signed-off-by: Al Viro <[email protected]>
Al Viro committedDec 29, 2015 Configuration menu - View commit details
-
Copy full SHA for 76cc404 - Browse repository at this point
Copy the full SHA 76cc404View commit details -
openvswitch: Fix template leak in error cases.
Commit 5b48bb8506c5 ("openvswitch: Fix helper reference leak") fixed a reference leak on helper objects, but inadvertently introduced a leak on the ct template. Previously, ct_info.ct->general.use was initialized to 0 by nf_ct_tmpl_alloc() and only incremented when ovs_ct_copy_action() returned successful. If an error occurred while adding the helper or adding the action to the actions buffer, the __ovs_ct_free_action() cleanup would use nf_ct_put() to free the entry; However, this relies on atomic_dec_and_test(ct_info.ct->general.use). This reference must be incremented first, or nf_ct_put() will never free it. Fix the issue by acquiring a reference to the template immediately after allocation. Fixes: cae3a26 ("openvswitch: Allow attaching helpers to ct action") Fixes: 5b48bb8506c5 ("openvswitch: Fix helper reference leak") Signed-off-by: Joe Stringer <[email protected]> Signed-off-by: David S. Miller <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 90c7afc - Browse repository at this point
Copy the full SHA 90c7afcView commit details -
drivers: net: cpsw: fix error return code
Propagate the return value of platform_get_irq on failure. A simplified version of the semantic match that finds the two cases where no error code is returned at all is as follows: (http://coccinelle.lip6.fr/) // <smpl> @@ identifier ret; expression e1,e2; @@ ( if (\(ret < 0\|ret != 0\)) { ... return ret; } | ret = 0 ) ... when != ret = e1 when != &ret *if(...) { ... when != ret = e2 when forall return ret; } // </smpl> Signed-off-by: Julia Lawall <[email protected]> Signed-off-by: David S. Miller <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for c1e3334 - Browse repository at this point
Copy the full SHA c1e3334View commit details -
MIPS: VDSO: Fix build error with binutils 2.24 and earlier
Commit 2a037f3 ("MIPS: VDSO: Fix build error") tries to fix a build error seen with binutils 2.24 and earlier. However, the fix does not work, and again results in the already known build errors if the kernel is built with an earlier version of binutils. CC arch/mips/vdso/gettimeofday.o /tmp/ccnOVbHT.s: Assembler messages: /tmp/ccnOVbHT.s:50: Error: can't resolve `_start' {*UND* section} - `L0 {.text section} /tmp/ccnOVbHT.s:374: Error: can't resolve `_start' {*UND* section} - `L0 {.text section} scripts/Makefile.build:258: recipe for target 'arch/mips/vdso/gettimeofday.o' failed make[2]: *** [arch/mips/vdso/gettimeofday.o] Error 1 Fixes: 2a037f3 ("MIPS: VDSO: Fix build error") Cc: Qais Yousef <[email protected]> Cc: [email protected] Cc: [email protected] Patchwork: https://patchwork.linux-mips.org/patch/11926/ Signed-off-by: Guenter Roeck <[email protected]> Signed-off-by: Ralf Baechle <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 398c750 - Browse repository at this point
Copy the full SHA 398c750View commit details
Commits on Dec 30, 2015
-
ocfs2: fix BUG when calculate new backup super
When resizing, it firstly extends the last gd. Once it should backup super in the gd, it calculates new backup super and update the corresponding value. But it currently doesn't consider the situation that the backup super is already done. And in this case, it still sets the bit in gd bitmap and then decrease from bg_free_bits_count, which leads to a corrupted gd and trigger the BUG in ocfs2_block_group_set_bits: BUG_ON(le16_to_cpu(bg->bg_free_bits_count) < num_bits); So check whether the backup super is done and then do the updates. Signed-off-by: Joseph Qi <[email protected]> Reviewed-by: Jiufei Xue <[email protected]> Reviewed-by: Yiwen Jiang <[email protected]> Cc: Mark Fasheh <[email protected]> Cc: Joel Becker <[email protected]> Cc: <[email protected]> Signed-off-by: Andrew Morton <[email protected]> Signed-off-by: Linus Torvalds <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 5c9ee4c - Browse repository at this point
Copy the full SHA 5c9ee4cView commit details -
mm: memcontrol: fix possible memcg leak due to interrupted reclaim
Memory cgroup reclaim can be interrupted with mem_cgroup_iter_break() once enough pages have been reclaimed, in which case, in contrast to a full round-trip over a cgroup sub-tree, the current position stored in mem_cgroup_reclaim_iter of the target cgroup does not get invalidated and so is left holding the reference to the last scanned cgroup. If the target cgroup does not get scanned again (we might have just reclaimed the last page or all processes might exit and free their memory voluntary), we will leak it, because there is nobody to put the reference held by the iterator. The problem is easy to reproduce by running the following command sequence in a loop: mkdir /sys/fs/cgroup/memory/test echo 100M > /sys/fs/cgroup/memory/test/memory.limit_in_bytes echo $$ > /sys/fs/cgroup/memory/test/cgroup.procs memhog 150M echo $$ > /sys/fs/cgroup/memory/cgroup.procs rmdir test The cgroups generated by it will never get freed. This patch fixes this issue by making mem_cgroup_iter avoid taking reference to the current position. In order not to hit use-after-free bug while running reclaim in parallel with cgroup deletion, we make use of ->css_released cgroup callback to clear references to the dying cgroup in all reclaim iterators that might refer to it. This callback is called right before scheduling rcu work which will free css, so if we access iter->position from rcu read section, we might be sure it won't go away under us. [[email protected]: clean up css ref handling] Fixes: 5ac8fb3 ("mm: memcontrol: convert reclaim iterator to simple css refcounting") Signed-off-by: Vladimir Davydov <[email protected]> Signed-off-by: Johannes Weiner <[email protected]> Acked-by: Michal Hocko <[email protected]> Acked-by: Johannes Weiner <[email protected]> Cc: <[email protected]> [3.19+] Signed-off-by: Andrew Morton <[email protected]> Signed-off-by: Linus Torvalds <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 6df3868 - Browse repository at this point
Copy the full SHA 6df3868View commit details -
arch/x86/xen/suspend.c: include xen/xen.h
Fix the build warning: arch/x86/xen/suspend.c: In function 'xen_arch_pre_suspend': arch/x86/xen/suspend.c:70:9: error: implicit declaration of function 'xen_pv_domain' [-Werror=implicit-function-declaration] if (xen_pv_domain()) ^ Reported-by: kbuild test robot <[email protected]> Cc: Sasha Levin <[email protected]> Cc: Konrad Rzeszutek Wilk <[email protected]> Cc: Boris Ostrovsky <[email protected]> Cc: David Vrabel <[email protected]> Signed-off-by: Andrew Morton <[email protected]> Signed-off-by: Linus Torvalds <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for facca61 - Browse repository at this point
Copy the full SHA facca61View commit details -
m32r allmodconfig is failing with: In file included from ../include/linux/kvm_para.h:4:0, from ../kernel/watchdog.c:26: ../include/uapi/linux/kvm_para.h:30:26: fatal error: asm/kvm_para.h: No such file or directory kvm_para.h was not included in the build. Signed-off-by: Sudip Mukherjee <[email protected]> Signed-off-by: Andrew Morton <[email protected]> Signed-off-by: Linus Torvalds <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 6122192 - Browse repository at this point
Copy the full SHA 6122192View commit details -
m32r allmodconfig was failing with the error: error: implicit declaration of function 'read' On checking io.h it turned out that 'read' is not defined but 'readb' is defined and 'ioread8' will then obviously mean 'readb'. At the same time some of the helper functions ioreadN_rep() and iowriteN_rep() were missing which also led to the build failure. Signed-off-by: Sudip Mukherjee <[email protected]> Signed-off-by: Andrew Morton <[email protected]> Signed-off-by: Linus Torvalds <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 92a8ed4 - Browse repository at this point
Copy the full SHA 92a8ed4View commit details -
Commit 4f65636 ("Move locks API users to locks_lock_inode_wait()") move flock/posix lock indentify code to locks_lock_inode_wait(), but missed to set fl_flags to FL_FLOCK which caused the following kernel panic on 4.4.0_rc5. kernel BUG at fs/locks.c:1895! invalid opcode: 0000 [#1] SMP Modules linked in: ocfs2(O) ocfs2_dlmfs(O) ocfs2_stack_o2cb(O) ocfs2_dlm(O) ocfs2_nodemanager(O) ocfs2_stackglue(O) iscsi_tcp libiscsi_tcp libiscsi scsi_transport_iscsi xen_kbdfront xen_netfront xen_fbfront xen_blkfront CPU: 0 PID: 20268 Comm: flock_unit_test Tainted: G O 4.4.0-rc5-next-20151217 #1 Hardware name: Xen HVM domU, BIOS 4.3.1OVM 05/14/2014 task: ffff88007b3672c0 ti: ffff880028b58000 task.ti: ffff880028b58000 RIP: locks_lock_inode_wait+0x2e/0x160 Call Trace: ocfs2_do_flock+0x91/0x160 [ocfs2] ocfs2_flock+0x76/0xd0 [ocfs2] SyS_flock+0x10f/0x1a0 entry_SYSCALL_64_fastpath+0x12/0x71 Code: e5 41 57 41 56 49 89 fe 41 55 41 54 53 48 89 f3 48 81 ec 88 00 00 00 8b 46 40 83 e0 03 83 f8 01 0f 84 ad 00 00 00 83 f8 02 74 04 <0f> 0b eb fe 4c 8d ad 60 ff ff ff 4c 8d 7b 58 e8 0e 8e 73 00 4d RIP locks_lock_inode_wait+0x2e/0x160 RSP <ffff880028b5bce8> ---[ end trace dfca74ec9b5b274c ]--- Fixes: 4f65636 ("Move locks API users to locks_lock_inode_wait()") Signed-off-by: Junxiao Bi <[email protected]> Cc: Mark Fasheh <[email protected]> Cc: Joel Becker <[email protected]> Cc: Joseph Qi <[email protected]> Signed-off-by: Andrew Morton <[email protected]> Signed-off-by: Linus Torvalds <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for b5a8bc3 - Browse repository at this point
Copy the full SHA b5a8bc3View commit details -
mm/memory_hotplug.c: check for missing sections in test_pages_in_a_zo…
…ne() test_pages_in_a_zone() does not account for the possibility of missing sections in the given pfn range. pfn_valid_within always returns 1 when CONFIG_HOLES_IN_ZONE is not set, allowing invalid pfns from missing sections to pass the test, leading to a kernel oops. Wrap an additional pfn loop with PAGES_PER_SECTION granularity to check for missing sections before proceeding into the zone-check code. This also prevents a crash from offlining memory devices with missing sections. Despite this, it may be a good idea to keep the related patch '[PATCH 3/3] drivers: memory: prohibit offlining of memory blocks with missing sections' because missing sections in a memory block may lead to other problems not covered by the scope of this fix. Signed-off-by: Andrew Banman <[email protected]> Acked-by: Alex Thorlton <[email protected]> Cc: Russ Anderson <[email protected]> Cc: Alex Thorlton <[email protected]> Cc: Yinghai Lu <[email protected]> Cc: Greg KH <[email protected]> Cc: Seth Jennings <[email protected]> Cc: <[email protected]> Signed-off-by: Andrew Morton <[email protected]> Signed-off-by: Linus Torvalds <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 5f0f288 - Browse repository at this point
Copy the full SHA 5f0f288View commit details -
ocfs2/dlm: clear migration_pending when migration target goes down
We have found a BUG on res->migration_pending when migrating lock resources. The situation is as follows. dlm_mark_lockres_migration res->migration_pending = 1; __dlm_lockres_reserve_ast dlm_lockres_release_ast returns with res->migration_pending remains because other threads reserve asts wait dlm_migration_can_proceed returns 1 >>>>>>> o2hb found that target goes down and remove target from domain_map dlm_migration_can_proceed returns 1 dlm_mark_lockres_migrating returns -ESHOTDOWN with res->migration_pending still remains. When reentering dlm_mark_lockres_migrating(), it will trigger the BUG_ON with res->migration_pending. So clear migration_pending when target is down. Signed-off-by: Jiufei Xue <[email protected]> Reviewed-by: Joseph Qi <[email protected]> Cc: Mark Fasheh <[email protected]> Cc: Joel Becker <[email protected]> Cc: Junxiao Bi <[email protected]> Signed-off-by: Andrew Morton <[email protected]> Signed-off-by: Linus Torvalds <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for cc28d6d - Browse repository at this point
Copy the full SHA cc28d6dView commit details -
mm/vmstat: fix overflow in mod_zone_page_state()
mod_zone_page_state() takes a "delta" integer argument. delta contains the number of pages that should be added or subtracted from a struct zone's vm_stat field. If a zone is larger than 8TB this will cause overflows. E.g. for a zone with a size slightly larger than 8TB the line mod_zone_page_state(zone, NR_ALLOC_BATCH, zone->managed_pages); in mm/page_alloc.c:free_area_init_core() will result in a negative result for the NR_ALLOC_BATCH entry within the zone's vm_stat, since 8TB contain 0x8xxxxxxx pages which will be sign extended to a negative value. Fix this by changing the delta argument to long type. This could fix an early boot problem seen on s390, where we have a 9TB system with only one node. ZONE_DMA contains 2GB and ZONE_NORMAL the rest. The system is trying to allocate a GFP_DMA page but ZONE_DMA is completely empty, so it tries to reclaim pages in an endless loop. This was seen on a heavily patched 3.10 kernel. One possible explaination seem to be the overflows caused by mod_zone_page_state(). Unfortunately I did not have the chance to verify that this patch actually fixes the problem, since I don't have access to the system right now. However the overflow problem does exist anyway. Given the description that a system with slightly less than 8TB does work, this seems to be a candidate for the observed problem. Signed-off-by: Heiko Carstens <[email protected]> Cc: Christoph Lameter <[email protected]> Signed-off-by: Andrew Morton <[email protected]> Signed-off-by: Linus Torvalds <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 6cdb18a - Browse repository at this point
Copy the full SHA 6cdb18aView commit details -
Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel…
…/git/viro/vfs Pull vfs fix from Al Viro: "Fix for 3.15 breakage of fcntl64() in arm OABI compat. -stable fodder" * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs: [PATCH] arm: fix handling of F_OFD_... in oabi_fcntl64()
Configuration menu - View commit details
-
Copy full SHA for e25bd6c - Browse repository at this point
Copy the full SHA e25bd6cView commit details -
Merge branch 'akpm' (patches from Andrew)
Merge misc fixes from Andrew Morton: "9 fixes" * emailed patches from Andrew Morton <[email protected]>: mm/vmstat: fix overflow in mod_zone_page_state() ocfs2/dlm: clear migration_pending when migration target goes down mm/memory_hotplug.c: check for missing sections in test_pages_in_a_zone() ocfs2: fix flock panic issue m32r: add io*_rep helpers m32r: fix build failure arch/x86/xen/suspend.c: include xen/xen.h mm: memcontrol: fix possible memcg leak due to interrupted reclaim ocfs2: fix BUG when calculate new backup super
Configuration menu - View commit details
-
Copy full SHA for 866be88 - Browse repository at this point
Copy the full SHA 866be88View commit details -
drm/i915: increase the tries for HDMI hotplug live status checking
The total delay of HDMI hotplug detecting with 30ms is sometimes not enoughtfor HDMI live status up with specific HDMI monitors in BSW platform. After doing experiments for following monitors, it needs 80ms at least for those worst cases. Lenovo L246 1xwA (4 failed, necessary hot-plug delay: 58/40/60/40ms) Philips HH2AP (9 failed, necessary hot-plug delay: 80/50/50/60/46/40/58/58/39ms) BENQ ET-0035-N (6 failed, necessary hot-plug delay: 60/50/50/80/80/40ms) DELL U2713HM (2 failed, necessary hot-plug delay: 58/59ms) HP HP-LP2475w (5 failed, necessary hot-plug delay: 70/50/40/60/40ms) It looks like 70-80 ms is BSW platform needs in some bad cases of the monitors at this end (8 times delay at most). Keep less than 100ms for HDCP pulse HPD low (with at least 100ms) to respond a plug out. Reviewed-by: Cooper Chiou <[email protected]> Tested-by: Gary Wang <[email protected]> Cc: Gavin Hindman <[email protected]> Cc: Sonika Jindal <[email protected]> Cc: Shashank Sharma <[email protected]> Cc: Shobhit Kumar <[email protected]> Signed-off-by: Gary Wang <[email protected]> Link: http://patchwork.freedesktop.org/patch/msgid/[email protected] Tested-by: Shobhit Kumar <[email protected]> Cc: [email protected] Fixes: 237ed86 ("drm/i915: Check live status before reading edid") Signed-off-by: Daniel Vetter <[email protected]> (cherry picked from commit f8d03ea0053b23de42c828d559016eabe0b91523) [Jani: undo the file mode change of the original commit] Signed-off-by: Jani Nikula <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 3d8acd1 - Browse repository at this point
Copy the full SHA 3d8acd1View commit details -
ASoC: rt5645: add sys clk detection
Add system clock detection to prevent output DC from SPO. Signed-off-by: Bard Liao <[email protected]> Signed-off-by: Mark Brown <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for ca8457b - Browse repository at this point
Copy the full SHA ca8457bView commit details -
ASoC: Use nested lock for snd_soc_dapm_mutex_lock
snd_soc_dapm_mutex_lock currently uses the un-nested call which can cause lockdep warnings when called from control handlers (a relatively common usage) and using modules. As creating the control causes a potential mutex inversion with the handler, creating the control will take the controls_rwsem under the dapm_mutex and accessing the control will take the dapm_mutex under controls_rwsem. All the users look like they want to be using the runtime class of the lock anyway, so this patch just changes snd_soc_dapm_mutex_lock to use the nested call, with the SND_SOC_DAPM_CLASS_RUNTIME class. Fixes: f6d5e58 ("ASoC: dapm: Add helpers to lock/unlock DAPM mutex") Signed-off-by: Charles Keepax <[email protected]> Signed-off-by: Mark Brown <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 783513e - Browse repository at this point
Copy the full SHA 783513eView commit details -
x86/numachip: Fix NumaConnect2 MMCFG PCI access
The MMCFG PCI accessors weren't being setup for NumacConnect2 correctly due to over-early assignment; this would create the potential for the wrong PCI domain to be accessed. Fix this by using the correct arch-specific PCI init function. Signed-off-by: Daniel J Blueman <[email protected]> Acked-by: Steffen Persvold <[email protected]> Cc: Daniel Lezcano <[email protected]> Cc: Linus Torvalds <[email protected]> Link: http://lkml.kernel.org/r/[email protected] Signed-off-by: Thomas Gleixner <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for dd7a5ab - Browse repository at this point
Copy the full SHA dd7a5abView commit details -
Merge branch 'for-linus' of git://git.kernel.dk/linux-block
Pull block fixes from Jens Axboe: "Make the block layer great again. Basically three amazing fixes in this pull request, split into 4 patches. Believe me, they should go into 4.4. Two of them fix a regression, the third and last fixes an easy-to-trigger bug. - Fix a bad irq enable through null_blk, for queue_mode=1 and using timer completions. Add a block helper to restart a queue asynchronously, and use that from null_blk. From me. - Fix a performance issue in NVMe. Some devices (Intel Pxxxx) expose a stripe boundary, and performance suffers if we cross it. We took that into account for merging, but not for the newer splitting code. Fix from Keith. - Fix a kernel oops in lightnvm with multiple channels. From Matias" * 'for-linus' of git://git.kernel.dk/linux-block: lightnvm: wrong offset in bad blk lun calculation null_blk: use async queue restart helper block: add blk_start_queue_async() block: Split bios on chunk boundaries
Configuration menu - View commit details
-
Copy full SHA for c616920 - Browse repository at this point
Copy the full SHA c616920View commit details -
net, socket, socket_wq: fix missing initialization of flags
Commit ceb5d58 ("net: fix sock_wake_async() rcu protection") from the current 4.4 release cycle introduced a new flags member in struct socket_wq and moved SOCKWQ_ASYNC_NOSPACE and SOCKWQ_ASYNC_WAITDATA from struct socket's flags member into that new place. Unfortunately, the new flags field is never initialized properly, at least not for the struct socket_wq instance created in sock_alloc_inode(). One particular issue I encountered because of this is that my GNU Emacs failed to draw anything on my desktop -- i.e. what I got is a transparent window, including the title bar. Bisection lead to the commit mentioned above and further investigation by means of strace told me that Emacs is indeed speaking to my Xorg through an O_ASYNC AF_UNIX socket. This is reproducible 100% of times and the fact that properly initializing the struct socket_wq ->flags fixes the issue leads me to the conclusion that somehow SOCKWQ_ASYNC_WAITDATA got set in the uninitialized ->flags, preventing my Emacs from receiving any SIGIO's due to data becoming available and it got stuck. Make sock_alloc_inode() set the newly created struct socket_wq's ->flags member to zero. Fixes: ceb5d58 ("net: fix sock_wake_async() rcu protection") Signed-off-by: Nicolai Stange <[email protected]> Acked-by: Eric Dumazet <[email protected]> Signed-off-by: David S. Miller <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 574aab1 - Browse repository at this point
Copy the full SHA 574aab1View commit details -
Merge tag 'wireless-drivers-for-davem-2015-12-28' of git://git.kernel…
….org/pub/scm/linux/kernel/git/kvalo/wireless-drivers Kalle Valo says: ==================== iwlwifi * don't load firmware that won't exist for 7260 * fix RCU splat ==================== Signed-off-by: David S. Miller <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for a0ccc3f - Browse repository at this point
Copy the full SHA a0ccc3fView commit details -
sctp: sctp should release assoc when sctp_make_abort_user return NULL…
… in sctp_close In sctp_close, sctp_make_abort_user may return NULL because of memory allocation failure. If this happens, it will bypass any state change and never free the assoc. The assoc has no chance to be freed and it will be kept in memory with the state it had even after the socket is closed by sctp_close(). So if sctp_make_abort_user fails to allocate memory, we should abort the asoc via sctp_primitive_ABORT as well. Just like the annotation in sctp_sf_cookie_wait_prm_abort and sctp_sf_do_9_1_prm_abort said, "Even if we can't send the ABORT due to low memory delete the TCB. This is a departure from our typical NOMEM handling". But then the chunk is NULL (low memory) and the SCTP_CMD_REPLY cmd would dereference the chunk pointer, and system crash. So we should add SCTP_CMD_REPLY cmd only when the chunk is not NULL, just like other places where it adds SCTP_CMD_REPLY cmd. Signed-off-by: Xin Long <[email protected]> Acked-by: Marcelo Ricardo Leitner <[email protected]> Signed-off-by: David S. Miller <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 068d8bd - Browse repository at this point
Copy the full SHA 068d8bdView commit details
Commits on Dec 31, 2015
-
ARM: Fix broken USB support in sunxi_defconfig
Commit 69fb4dc ("power: Add an axp20x-usb-power driver") introduced a new driver for the USB power supply used on various Allwinner based SBCs. However, the driver was not added to sunxi_defconfig which breaks USB support for some boards (e.g. LeMaker BananaPi) as the kernel will now turn off the USB power supply during boot by default if the driver isn't present. (This was not the case in linux 4.3 or lower where the USB power was always left on.) Hence, add the driver to sunxi_defconfig in order to keep USB support working on those boards that require it. Signed-off-by: Timo Sigurdsson <[email protected]> Reported-by: David Tulloh <[email protected]> Tested-by: David Tulloh <[email protected]> Tested-by: Timo Sigurdsson <[email protected]> Signed-off-by: Arnd Bergmann <[email protected]> Acked-by: Maxime Ripard <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 694341c - Browse repository at this point
Copy the full SHA 694341cView commit details -
sparc: Add all necessary direct socket system calls.
The GLIBC folks would like to eliminate socketcall support eventually, and this makes sense regardless so wire them all up. Signed-off-by: David S. Miller <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 8b30ca7 - Browse repository at this point
Copy the full SHA 8b30ca7View commit details -
sparc: Wire up mlock2 system call.
Signed-off-by: David S. Miller <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 42d85c5 - Browse repository at this point
Copy the full SHA 42d85c5View commit details -
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net
Pull networking fixes from David Miller: 1) Prevent XFRM per-cpu counter updates for one namespace from being applied to another namespace. Fix from DanS treetman. 2) Fix RCU de-reference in iwl_mvm_get_key_sta_id(), from Johannes Berg. 3) Remove ethernet header assumption in nft_do_chain_netdev(), from Pablo Neira Ayuso. 4) Fix cpsw PHY ident with multiple slaves and fixed-phy, from Pascal Speck. 5) Fix use after free in sixpack_close and mkiss_close. 6) Fix VXLAN fw assertion on bnx2x, from Yuval Mintz. 7) natsemi doesn't check for DMA mapping errors, from Alexey Khoroshilov. 8) Fix inverted test in ip6addrlbl_get(), from ANdrey Ryabinin. 9) Missing initialization of needed_headroom in geneve tunnel driver, from Paolo Abeni. 10) Fix conntrack template leak in openvswitch, from Joe Stringer. 11) Mission initialization of wq->flags in sock_alloc_inode(), from Nicolai Stange. * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net: (35 commits) sctp: sctp should release assoc when sctp_make_abort_user return NULL in sctp_close net, socket, socket_wq: fix missing initialization of flags drivers: net: cpsw: fix error return code openvswitch: Fix template leak in error cases. sctp: label accepted/peeled off sockets sctp: use GFP_USER for user-controlled kmalloc qlcnic: fix a loop exit condition better net: cdc_ncm: avoid changing RX/TX buffers on MTU changes geneve: initialize needed_headroom ipv6: honor ifindex in case we receive ll addresses in router advertisements addrconf: always initialize sysctl table data ipv6/addrlabel: fix ip6addrlbl_get() switchdev: bridge: Pass ageing time as clock_t instead of jiffies sh_eth: fix 16-bit descriptor field access endianness too veth: don’t modify ip_summed; doing so treats packets with bad checksums as good. net: usb: cdc_ncm: Adding Dell DW5813 LTE AT&T Mobile Broadband Card net: usb: cdc_ncm: Adding Dell DW5812 LTE Verizon Mobile Broadband Card natsemi: add checks for dma mapping errors rhashtable: Kill harmless RCU warning in rhashtable_walk_init openvswitch: correct encoding of set tunnel action attributes ...
Configuration menu - View commit details
-
Copy full SHA for 8f5daf2 - Browse repository at this point
Copy the full SHA 8f5daf2View commit details -
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc
Pull sparc fixes from David Miller: "Just some missing syscall wire ups" * git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc: sparc: Wire up mlock2 system call. sparc: Add all necessary direct socket system calls.
Configuration menu - View commit details
-
Copy full SHA for 7c672dd - Browse repository at this point
Copy the full SHA 7c672ddView commit details -
Merge tag 'pci-v4.4-fixes-3' of git://git.kernel.org/pub/scm/linux/ke…
…rnel/git/helgaas/pci Pull PCI bugfix from Bjorn Helgaas: "Here's another fix for v4.4. This fixes 32-bit config reads for the HiSilicon driver. Obviously the driver is completely broken without this fix (apparently it actually was tested internally, but got broken somehow in the process of upstreaming it). Summary: HiSilicon host bridge driver Fix 32-bit config reads (Dongdong Liu)" * tag 'pci-v4.4-fixes-3' of git://git.kernel.org/pub/scm/linux/kernel/git/helgaas/pci: PCI: hisi: Fix hisi_pcie_cfg_read() 32-bit reads
Configuration menu - View commit details
-
Copy full SHA for 9c982e8 - Browse repository at this point
Copy the full SHA 9c982e8View commit details
Commits on Jan 3, 2016
-
Merge tag 'drm-intel-fixes-2016-01-02' of git://anongit.freedesktop.o…
…rg/drm-intel Pull i915 drm fixes from Jani Nikula: "Two display fixes still for v4.4. The new year's resolution is to start using signed tags per Linus' request. This one is still unsigned; I want to fix this up in our maintainer scripts instead of doing it one-off" * tag 'drm-intel-fixes-2016-01-02' of git://anongit.freedesktop.org/drm-intel: drm/i915: increase the tries for HDMI hotplug live status checking drm/i915: Unbreak check_digital_port_conflicts()
Configuration menu - View commit details
-
Copy full SHA for 4e5e384 - Browse repository at this point
Copy the full SHA 4e5e384View commit details -
Merge branch 'upstream' of git://git.linux-mips.org/pub/scm/ralf/upst…
…ream-linus Pull MIPS build fix from Ralf Baechle: "Fix a makefile issue resulting in build breakage with older binutils. This has sat in -next for a few days, testers and buildbot are happy with it, too though if you are going for another -rc that'd certainly help ironing out a few more issues" * 'upstream' of git://git.linux-mips.org/pub/scm/ralf/upstream-linus: MIPS: VDSO: Fix build error with binutils 2.24 and earlier
Configuration menu - View commit details
-
Copy full SHA for 4294616 - Browse repository at this point
Copy the full SHA 4294616View commit details -
Configuration menu - View commit details
-
Copy full SHA for 1683098 - Browse repository at this point
Copy the full SHA 1683098View commit details
Commits on Jan 4, 2016
-
ftrace/scripts: Fix incorrect use of sprintf in recordmcount
Fix build warning: scripts/recordmcount.c:589:4: warning: format not a string literal and no format arguments [-Wformat-security] sprintf("%s: failed\n", file); Fixes: a50bd43 ("ftrace/scripts: Have recordmcount copy the object file") Link: http://lkml.kernel.org/r/[email protected] Cc: Li Bin <[email protected]> Cc: Russell King <[email protected]> Cc: Will Deacon <[email protected]> Cc: [email protected] # 2.6.37+ Signed-off-by: Colin Ian King <[email protected]> Signed-off-by: Steven Rostedt <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 713a3e4 - Browse repository at this point
Copy the full SHA 713a3e4View commit details -
mtd: fix cmdlinepart parser, early naming for auto-filled MTD
Commit 807f16d ("mtd: core: set some defaults when dev.parent is set") attempted to provide some default settings for MTDs that (a) assign the parent device and (b) don't provide their own name or owner However, this isn't a perfect drop-in replacement for the boilerplate found in some drivers, because the MTD name is used by partition parsers like cmdlinepart, but the name isn't set until add_mtd_device(), after the parsing is completed. This means cmdlinepart sees a NULL name and therefore will not work properly. Fix this by moving the default name and owner assignment to be first in the MTD registration process. [Note: this does not fix all reported issues, particularly with NAND drivers. Will require an additional fix for drivers/mtd/nand/] Fixes: 807f16d ("mtd: core: set some defaults when dev.parent is set") Reported-by: Heiko Schocher <[email protected]> Signed-off-by: Brian Norris <[email protected]> Cc: Heiko Schocher <[email protected]> Cc: Frans Klaver <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 472b444 - Browse repository at this point
Copy the full SHA 472b444View commit details -
tracing: Fix setting of start_index in find_next()
When we do cat /sys/kernel/debug/tracing/printk_formats, we hit kernel panic at t_show. general protection fault: 0000 [#1] PREEMPT SMP CPU: 0 PID: 2957 Comm: sh Tainted: G W O 3.14.55-x86_64-01062-gd4acdc7 #2 RIP: 0010:[<ffffffff811375b2>] [<ffffffff811375b2>] t_show+0x22/0xe0 RSP: 0000:ffff88002b4ebe80 EFLAGS: 00010246 RAX: 0000000000000000 RBX: 0000000000000000 RCX: 0000000000000004 RDX: 0000000000000004 RSI: ffffffff81fd26a6 RDI: ffff880032f9f7b1 RBP: ffff88002b4ebe98 R08: 0000000000001000 R09: 000000000000ffec R10: 0000000000000000 R11: 000000000000000f R12: ffff880004d9b6c0 R13: 7365725f6d706400 R14: ffff880004d9b6c0 R15: ffffffff82020570 FS: 0000000000000000(0000) GS:ffff88003aa00000(0063) knlGS:00000000f776bc40 CS: 0010 DS: 002b ES: 002b CR0: 0000000080050033 CR2: 00000000f6c02ff0 CR3: 000000002c2b3000 CR4: 00000000001007f0 Call Trace: [<ffffffff811dc076>] seq_read+0x2f6/0x3e0 [<ffffffff811b749b>] vfs_read+0x9b/0x160 [<ffffffff811b7f69>] SyS_read+0x49/0xb0 [<ffffffff81a3a4b9>] ia32_do_call+0x13/0x13 ---[ end trace 5bd9eb630614861e ]--- Kernel panic - not syncing: Fatal exception When the first time find_next calls find_next_mod_format, it should iterate the trace_bprintk_fmt_list to find the first print format of the module. However in current code, start_index is smaller than *pos at first, and code will not iterate the list. Latter container_of will get the wrong address with former v, which will cause mod_fmt be a meaningless object and so is the returned mod_fmt->fmt. This patch will fix it by correcting the start_index. After fixed, when the first time calls find_next_mod_format, start_index will be equal to *pos, and code will iterate the trace_bprintk_fmt_list to get the right module printk format, so is the returned mod_fmt->fmt. Link: http://lkml.kernel.org/r/[email protected] Cc: [email protected] # 3.12+ Fixes: 102c932 "tracing: Add __tracepoint_string() to export string pointers" Signed-off-by: Qiu Peiyang <[email protected]> Signed-off-by: Steven Rostedt <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for f36d1be - Browse repository at this point
Copy the full SHA f36d1beView commit details -
drm/nouveau/gr/nv40: fix oops in interrupt handler
fdo#93557 Signed-off-by: Ben Skeggs <[email protected]> Cc: [email protected]
Ben Skeggs committedJan 4, 2016 Configuration menu - View commit details
-
Copy full SHA for 9daf38f - Browse repository at this point
Copy the full SHA 9daf38fView commit details -
qlcnic: correctly handle qlcnic_alloc_mbx_args
Since qlcnic_alloc_mbx_args can be failed, return value should be checked. Signed-off-by: Insu Yun <[email protected]> Signed-off-by: David S. Miller <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for b77357b - Browse repository at this point
Copy the full SHA b77357bView commit details -
cxgb4: correctly handling failed allocation
Since t4_alloc_mem can be failed in memory pressure, if not properly handled, NULL dereference could be happened. Signed-off-by: Insu Yun <[email protected]> Signed-off-by: David S. Miller <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 3934aa4 - Browse repository at this point
Copy the full SHA 3934aa4View commit details
Commits on Jan 5, 2016
-
connector: bump skb->users before callback invocation
Dmitry reports memleak with syskaller program. Problem is that connector bumps skb usecount but might not invoke callback. So move skb_get to where we invoke the callback. Reported-by: Dmitry Vyukov <[email protected]> Signed-off-by: Florian Westphal <[email protected]> Signed-off-by: David S. Miller <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 55285bf - Browse repository at this point
Copy the full SHA 55285bfView commit details -
r8152: add reset_resume function
When the reset_resume() is called, the flag of SELECTIVE_SUSPEND should be cleared and reinitialize the device, whether the SELECTIVE_SUSPEND is set or not. If reset_resume() is called, it means the power supply is cut or the device is reset. That is, the device wouldn't be in runtime suspend state and the reinitialization is necessary. Signed-off-by: Hayes Wang <[email protected]> Signed-off-by: David S. Miller <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 7ec2541 - Browse repository at this point
Copy the full SHA 7ec2541View commit details -
net: Propagate lookup failure in l3mdev_get_saddr to caller
Commands run in a vrf context are not failing as expected on a route lookup: root@kenny:~# ip ro ls table vrf-red unreachable default root@kenny:~# ping -I vrf-red -c1 -w1 10.100.1.254 ping: Warning: source address might be selected on device other than vrf-red. PING 10.100.1.254 (10.100.1.254) from 0.0.0.0 vrf-red: 56(84) bytes of data. --- 10.100.1.254 ping statistics --- 2 packets transmitted, 0 received, 100% packet loss, time 999ms Since the vrf table does not have a route for 10.100.1.254 the ping should have failed. The saddr lookup causes a full VRF table lookup. Propogating a lookup failure to the user allows the command to fail as expected: root@kenny:~# ping -I vrf-red -c1 -w1 10.100.1.254 connect: No route to host Signed-off-by: David Ahern <[email protected]> Signed-off-by: David S. Miller <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for b5bdacf - Browse repository at this point
Copy the full SHA b5bdacfView commit details -
af_unix: Fix splice-bind deadlock
On 2015/11/06, Dmitry Vyukov reported a deadlock involving the splice system call and AF_UNIX sockets, http://lists.openwall.net/netdev/2015/11/06/24 The situation was analyzed as (a while ago) A: socketpair() B: splice() from a pipe to /mnt/regular_file does sb_start_write() on /mnt C: try to freeze /mnt wait for B to finish with /mnt A: bind() try to bind our socket to /mnt/new_socket_name lock our socket, see it not bound yet decide that it needs to create something in /mnt try to do sb_start_write() on /mnt, block (it's waiting for C). D: splice() from the same pipe to our socket lock the pipe, see that socket is connected try to lock the socket, block waiting for A B: get around to actually feeding a chunk from pipe to file, try to lock the pipe. Deadlock. on 2015/11/10 by Al Viro, http://lists.openwall.net/netdev/2015/11/10/4 The patch fixes this by removing the kern_path_create related code from unix_mknod and executing it as part of unix_bind prior acquiring the readlock of the socket in question. This means that A (as used above) will sb_start_write on /mnt before it acquires the readlock, hence, it won't indirectly block B which first did a sb_start_write and then waited for a thread trying to acquire the readlock. Consequently, A being blocked by C waiting for B won't cause a deadlock anymore (effectively, both A and B acquire two locks in opposite order in the situation described above). Dmitry Vyukov(<[email protected]>) tested the original patch. Signed-off-by: Rainer Weikusat <[email protected]> Signed-off-by: David S. Miller <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for c845acb - Browse repository at this point
Copy the full SHA c845acbView commit details -
ASoC: Intel: Skylake: Revert previous broken fix memory leak fix
This reverts commit 87b5ed8 ("ASoC: Intel: Skylake: fix memory leak") as it causes regression on Skylake devices The SKL drivers can be deferred probe. The topology file based widgets can have references to topology file so this can't be freed until card is fully created, so revert this patch for now [ 66.682767] BUG: unable to handle kernel paging request at ffffc900001363fc [ 66.690735] IP: [<ffffffff806c94dd>] strnlen+0xd/0x40 [ 66.696509] PGD 16e035067 PUD 16e036067 PMD 16e038067 PTE 0 [ 66.702925] Oops: 0000 [#1] PREEMPT SMP [ 66.768390] CPU: 3 PID: 57 Comm: kworker/u16:3 Tainted: G O 4.4.0-rc7-skl #62 [ 66.778869] Hardware name: Intel Corporation Skylake Client platform [ 66.793201] Workqueue: deferwq deferred_probe_work_func [ 66.799173] task: ffff88008b700f40 ti: ffff88008b704000 task.ti: ffff88008b704000 [ 66.807692] RIP: 0010:[<ffffffff806c94dd>] [<ffffffff806c94dd>] strnlen+0xd/0x40 [ 66.816243] RSP: 0018:ffff88008b707878 EFLAGS: 00010286 [ 66.822293] RAX: ffffffff80e60a82 RBX: 000000000000000e RCX: fffffffffffffffe [ 66.830406] RDX: ffffc900001363fc RSI: ffffffffffffffff RDI: ffffc900001363fc [ 66.838520] RBP: ffff88008b707878 R08: 000000000000ffff R09: 000000000000ffff [ 66.846649] R10: 0000000000000001 R11: ffffffffa01c6368 R12: ffffc900001363fc [ 66.854765] R13: 0000000000000000 R14: 00000000ffffffff R15: 0000000000000000 [ 66.862910] FS: 0000000000000000(0000) GS:ffff88016ecc0000(0000) knlGS:0000000000000000 [ 66.872150] CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 [ 66.878696] CR2: ffffc900001363fc CR3: 0000000002c09000 CR4: 00000000003406e0 [ 66.886820] DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000 [ 66.894938] DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400 [ 66.903052] Stack: [ 66.905346] ffff88008b7078b0 ffffffff806cb1db 000000000000000e 0000000000000000 [ 66.913854] ffff88008b707928 ffffffffa00d1050 ffffffffa00d104e ffff88008b707918 [ 66.922353] ffffffff806ccbd6 ffff88008b707948 0000000000000046 ffff88008b707940 [ 66.930855] Call Trace: [ 66.933646] [<ffffffff806cb1db>] string.isra.4+0x3b/0xd0 [ 66.939793] [<ffffffff806ccbd6>] vsnprintf+0x116/0x540 [ 66.945742] [<ffffffff806d02f0>] kvasprintf+0x40/0x80 [ 66.951591] [<ffffffff806d0370>] kasprintf+0x40/0x50 [ 66.957359] [<ffffffffa00c085f>] dapm_create_or_share_kcontrol+0x1cf/0x300 [snd_soc_core] [ 66.966771] [<ffffffff8057dd1e>] ? __kmalloc+0x16e/0x2a0 [ 66.972931] [<ffffffffa00c0dab>] snd_soc_dapm_new_widgets+0x41b/0x4b0 [snd_soc_core] [ 66.981857] [<ffffffffa00be8c0>] ? snd_soc_dapm_add_routes+0xb0/0xd0 [snd_soc_core] [ 67.007828] [<ffffffffa00b92ed>] soc_probe_component+0x23d/0x360 [snd_soc_core] [ 67.016244] [<ffffffff80b14e69>] ? mutex_unlock+0x9/0x10 [ 67.022405] [<ffffffffa00ba02f>] snd_soc_instantiate_card+0x47f/0xd10 [snd_soc_core] [ 67.031329] [<ffffffff8049eeb2>] ? debug_mutex_init+0x32/0x40 [ 67.037973] [<ffffffffa00baa92>] snd_soc_register_card+0x1d2/0x2b0 [snd_soc_core] [ 67.046619] [<ffffffffa00c8b54>] devm_snd_soc_register_card+0x44/0x80 [snd_soc_core] [ 67.055539] [<ffffffffa01c303b>] skylake_audio_probe+0x1b/0x20 [snd_soc_skl_rt286] [ 67.064292] [<ffffffff808aa887>] platform_drv_probe+0x37/0x90 Signed-off-by: Vinod Koul <[email protected]> Signed-off-by: Mark Brown <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for fb203ad - Browse repository at this point
Copy the full SHA fb203adView commit details -
ASoC: Intel: Skylake: Fix the memory leak
This provide the fix for firmware memory by freeing the pointer in driver remove where it is safe to do so Signed-off-by: Vinod Koul <[email protected]> Signed-off-by: Mark Brown <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for d801836 - Browse repository at this point
Copy the full SHA d801836View commit details -
tile: provide CONFIG_PAGE_SIZE_64KB etc for tilepro
This allows the build system to know that it can't attempt to configure the Lustre virtual block device, for example, when tilepro is using 64KB pages (as it does by default). The tilegx build already provided those symbols. Previously we required that the tilepro hypervisor be rebuilt with a different hardcoded page size in its headers, and then Linux be rebuilt using the updated hypervisor header. Now we allow each of the hypervisor and Linux to be built independently. We still check at boot time to ensure that the page size provided by the hypervisor matches what Linux expects. Signed-off-by: Chris Metcalf <[email protected]> Cc: [email protected] [3.19+]
Chris Metcalf committedJan 5, 2016 Configuration menu - View commit details
-
Copy full SHA for c1b27ab - Browse repository at this point
Copy the full SHA c1b27abView commit details -
Merge branch 'stable' of git://git.kernel.org/pub/scm/linux/kernel/gi…
…t/cmetcalf/linux-tile Pull tile bugfix from Chris Metcalf: "This fixes a bug that Sudip's buildbot found for tilepro allmodconfig. I've tagged it for stable only back to 3.19, which was when most of the other affected architectures added their support for working around this issue" * 'stable' of git://git.kernel.org/pub/scm/linux/kernel/git/cmetcalf/linux-tile: tile: provide CONFIG_PAGE_SIZE_64KB etc for tilepro
Configuration menu - View commit details
-
Copy full SHA for 3331f99 - Browse repository at this point
Copy the full SHA 3331f99View commit details -
Merge tag 'trace-v4.4-rc4-3' of git://git.kernel.org/pub/scm/linux/ke…
…rnel/git/rostedt/linux-trace Pull tracing fixes from Steven Rostedt: "Two more fixes: 1. The recordmcount change had an output that used sprintf() (incorrectly) when it should have been a fprintf() to stderr. 2. The printk_formats file could crash if someone added a trace_printk() in the core kernel, and also added one in a module. This does not affect production kernels. Only kernels where developers add trace_printk() for debugging can crash" * tag 'trace-v4.4-rc4-3' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-trace: tracing: Fix setting of start_index in find_next() ftrace/scripts: Fix incorrect use of sprintf in recordmcount
Configuration menu - View commit details
-
Copy full SHA for ee9a7d2 - Browse repository at this point
Copy the full SHA ee9a7d2View commit details -
bridge: Only call /sbin/bridge-stp for the initial network namespace
[I stole this patch from Eric Biederman. He wrote:] > There is no defined mechanism to pass network namespace information > into /sbin/bridge-stp therefore don't even try to invoke it except > for bridge devices in the initial network namespace. > > It is possible for unprivileged users to cause /sbin/bridge-stp to be > invoked for any network device name which if /sbin/bridge-stp does not > guard against unreasonable arguments or being invoked twice on the > same network device could cause problems. [Hannes: changed patch using netns_eq] Cc: Eric W. Biederman <[email protected]> Signed-off-by: Eric W. Biederman <[email protected]> Signed-off-by: Hannes Frederic Sowa <[email protected]> Signed-off-by: David S. Miller <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for ff62198 - Browse repository at this point
Copy the full SHA ff62198View commit details -
Configuration menu - View commit details
-
Copy full SHA for 7a78d94 - Browse repository at this point
Copy the full SHA 7a78d94View commit details -
Configuration menu - View commit details
-
Copy full SHA for 449af26 - Browse repository at this point
Copy the full SHA 449af26View commit details -
Configuration menu - View commit details
-
Copy full SHA for 84a5347 - Browse repository at this point
Copy the full SHA 84a5347View commit details -
Configuration menu - View commit details
-
Copy full SHA for bc42f36 - Browse repository at this point
Copy the full SHA bc42f36View commit details
Commits on Jan 6, 2016
-
mtd: spi-nor: fix Spansion regressions (aliased with Winbond)
Spansion and Winbond have occasionally used the same manufacturer ID, and they don't support the same features. Particularly, writing SR=0 seems to break read access for Spansion's s25fl064k. Unfortunately, we don't currently have a way to differentiate these Spansion and Winbond parts, so rather than regressing support for these Spansion flash, let's drop the new Winbond lock/unlock support for now. We can try to address Winbond support during the next release cycle. Original discussion: http://patchwork.ozlabs.org/patch/549173/ http://patchwork.ozlabs.org/patch/553683/ Fixes: 357ca38 ("mtd: spi-nor: support lock/unlock/is_locked for Winbond") Fixes: c6fc217 ("mtd: spi-nor: disable protection for Winbond flash at startup") Signed-off-by: Brian Norris <[email protected]> Reported-by: Felix Fietkau <[email protected]> Cc: Felix Fietkau <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 67b9bcd - Browse repository at this point
Copy the full SHA 67b9bcdView commit details -
mtd: spi-nor: fix stm_is_locked_sr() parameters
stm_is_locked_sr() takes the status register (SR) value as the last parameter, not the second. Reported-by: Bayi Cheng <[email protected]> Signed-off-by: Brian Norris <[email protected]> Cc: Bayi Cheng <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for a32d5b7 - Browse repository at this point
Copy the full SHA a32d5b7View commit details -
net: filter: make JITs zero A for SKF_AD_ALU_XOR_X
The SKF_AD_ALU_XOR_X ancillary is not like the other ancillary data instructions since it XORs A with X while all the others replace A with some loaded value. All the BPF JITs fail to clear A if this is used as the first instruction in a filter. This was found using american fuzzy lop. Add a helper to determine if A needs to be cleared given the first instruction in a filter, and use this in the JITs. Except for ARM, the rest have only been compile-tested. Fixes: 3480593 ("net: filter: get rid of BPF_S_* enum") Signed-off-by: Rabin Vincent <[email protected]> Acked-by: Daniel Borkmann <[email protected]> Acked-by: Alexei Starovoitov <[email protected]> Signed-off-by: David S. Miller <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 55795ef - Browse repository at this point
Copy the full SHA 55795efView commit details -
6pack: fix free memory scribbles
commit acf673a fixed a user triggerable free memory scribble but in doing so replaced it with a different one that allows the user to control the data and scribble even more. sixpack_close is called by the tty layer in tty context. The tty context is protected by sp_get() and sp_put(). However network layer activity via sp_xmit() is not protected this way. We must therefore stop the queue otherwise the user gets to dump a buffer mostly of their choice into freed kernel pages. Signed-off-by: Alan Cox <[email protected]> Signed-off-by: David S. Miller <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 60aa3b0 - Browse repository at this point
Copy the full SHA 60aa3b0View commit details -
ARM: net: bpf: fix zero right shift
The LSR instruction cannot be used to perform a zero right shift since a 0 as the immediate value (imm5) in the LSR instruction encoding means that a shift of 32 is perfomed. See DecodeIMMShift() in the ARM ARM. Make the JIT skip generation of the LSR if a zero-shift is requested. This was found using american fuzzy lop. Signed-off-by: Rabin Vincent <[email protected]> Acked-by: Alexei Starovoitov <[email protected]> Signed-off-by: David S. Miller <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for f941461 - Browse repository at this point
Copy the full SHA f941461View commit details -
net: sched: fix missing free per cpu on qstats
When a qdisc is using per cpu stats (currently just the ingress qdisc) only the bstats are being freed. This also free's the qstats. Fixes: b0ab6f9 ("net: sched: enable per cpu qstats") Signed-off-by: John Fastabend <[email protected]> Acked-by: Eric Dumazet <[email protected]> Acked-by: Daniel Borkmann <[email protected]> Signed-off-by: David S. Miller <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 73c20a8 - Browse repository at this point
Copy the full SHA 73c20a8View commit details -
dmaengine: Revert "dmaengine: mic_x100: add missing spin_unlock"
This reverts commit e958e07 ("dmaengine: mic_x100: add missing spin_unlock"). The above patch is incorrect. There is nothing wrong with the original code. The spin_lock is acquired in the "prep" functions and released in "submit". Signed-off-by: Ashutosh Dixit <[email protected]> Signed-off-by: Vinod Koul <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 16605e8 - Browse repository at this point
Copy the full SHA 16605e8View commit details -
perf: Fix race in perf_event_exec()
I managed to tickle this warning: [ 2338.884942] ------------[ cut here ]------------ [ 2338.890112] WARNING: CPU: 13 PID: 35162 at ../kernel/events/core.c:2702 task_ctx_sched_out+0x6b/0x80() [ 2338.900504] Modules linked in: [ 2338.903933] CPU: 13 PID: 35162 Comm: bash Not tainted 4.4.0-rc4-dirty #244 [ 2338.911610] Hardware name: Intel Corporation S2600GZ/S2600GZ, BIOS SE5C600.86B.02.02.0002.122320131210 12/23/2013 [ 2338.923071] ffffffff81f1468e ffff8807c6457cb8 ffffffff815c680c 0000000000000000 [ 2338.931382] ffff8807c6457cf0 ffffffff810c8a56 ffffe8ffff8c1bd0 ffff8808132ed400 [ 2338.939678] 0000000000000286 ffff880813170380 ffff8808132ed400 ffff8807c6457d00 [ 2338.947987] Call Trace: [ 2338.950726] [<ffffffff815c680c>] dump_stack+0x4e/0x82 [ 2338.956474] [<ffffffff810c8a56>] warn_slowpath_common+0x86/0xc0 [ 2338.963195] [<ffffffff810c8b4a>] warn_slowpath_null+0x1a/0x20 [ 2338.969720] [<ffffffff811a49cb>] task_ctx_sched_out+0x6b/0x80 [ 2338.976244] [<ffffffff811a62d2>] perf_event_exec+0xe2/0x180 [ 2338.982575] [<ffffffff8121fb6f>] setup_new_exec+0x6f/0x1b0 [ 2338.988810] [<ffffffff8126de83>] load_elf_binary+0x393/0x1660 [ 2338.995339] [<ffffffff811dc772>] ? get_user_pages+0x52/0x60 [ 2339.001669] [<ffffffff8121e297>] search_binary_handler+0x97/0x200 [ 2339.008581] [<ffffffff8121f8b3>] do_execveat_common.isra.33+0x543/0x6e0 [ 2339.016072] [<ffffffff8121fcea>] SyS_execve+0x3a/0x50 [ 2339.021819] [<ffffffff819fc165>] stub_execve+0x5/0x5 [ 2339.027469] [<ffffffff819fbeb2>] ? entry_SYSCALL_64_fastpath+0x12/0x71 [ 2339.034860] ---[ end trace ee1337c59a0ddeac ]--- Which is a WARN_ON_ONCE() indicating that cpuctx->task_ctx is not what we expected it to be. This is because context switches can swap the task_struct::perf_event_ctxp[] pointer around. Therefore you have to either disable preemption when looking at current, or hold ctx->lock. Fix perf_event_enable_on_exec(), it loads current->perf_event_ctxp[] before disabling interrupts, therefore a preemption in the right place can swap contexts around and we're using the wrong one. Signed-off-by: Peter Zijlstra (Intel) <[email protected]> Cc: Alexander Potapenko <[email protected]> Cc: Arnaldo Carvalho de Melo <[email protected]> Cc: Arnaldo Carvalho de Melo <[email protected]> Cc: Dmitry Vyukov <[email protected]> Cc: Eric Dumazet <[email protected]> Cc: Jiri Olsa <[email protected]> Cc: Kostya Serebryany <[email protected]> Cc: Linus Torvalds <[email protected]> Cc: Peter Zijlstra <[email protected]> Cc: Sasha Levin <[email protected]> Cc: Stephane Eranian <[email protected]> Cc: Thomas Gleixner <[email protected]> Cc: Vince Weaver <[email protected]> Cc: syzkaller <[email protected]> Link: http://lkml.kernel.org/r/[email protected] Signed-off-by: Ingo Molnar <[email protected]>
Peter Zijlstra authored and Ingo Molnar committedJan 6, 2016 Configuration menu - View commit details
-
Copy full SHA for c127449 - Browse repository at this point
Copy the full SHA c127449View commit details -
perf: Fix race in swevent hash
There's a race on CPU unplug where we free the swevent hash array while it can still have events on. This will result in a use-after-free which is BAD. Simply do not free the hash array on unplug. This leaves the thing around and no use-after-free takes place. When the last swevent dies, we do a for_each_possible_cpu() iteration anyway to clean these up, at which time we'll free it, so no leakage will occur. Reported-by: Sasha Levin <[email protected]> Tested-by: Sasha Levin <[email protected]> Signed-off-by: Peter Zijlstra (Intel) <[email protected]> Cc: Arnaldo Carvalho de Melo <[email protected]> Cc: Frederic Weisbecker <[email protected]> Cc: Jiri Olsa <[email protected]> Cc: Linus Torvalds <[email protected]> Cc: Peter Zijlstra <[email protected]> Cc: Stephane Eranian <[email protected]> Cc: Thomas Gleixner <[email protected]> Cc: Vince Weaver <[email protected]> Signed-off-by: Ingo Molnar <[email protected]>
Peter Zijlstra authored and Ingo Molnar committedJan 6, 2016 Configuration menu - View commit details
-
Copy full SHA for 12ca6ad - Browse repository at this point
Copy the full SHA 12ca6adView commit details -
sched/fair: Fix multiplication overflow on 32-bit systems
Make 'r' 64-bit type to avoid overflow in 'r * LOAD_AVG_MAX' on 32-bit systems: UBSAN: Undefined behaviour in kernel/sched/fair.c:2785:18 signed integer overflow: 87950 * 47742 cannot be represented in type 'int' The most likely effect of this bug are bad load average numbers resulting in weird scheduling. It's also likely that this can persist for a longer time - until the system goes idle for a long time so that all load avg numbers get reset. [ This is the CFS load average metric, not the procfs output, which is separate. ] Signed-off-by: Andrey Ryabinin <[email protected]> Signed-off-by: Peter Zijlstra (Intel) <[email protected]> Cc: Linus Torvalds <[email protected]> Cc: Peter Zijlstra <[email protected]> Cc: Thomas Gleixner <[email protected]> Fixes: 9d89c25 ("sched/fair: Rewrite runnable load and utilization average tracking") Link: http://lkml.kernel.org/r/[email protected] [ Improved the changelog. ] Signed-off-by: Ingo Molnar <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 9e0e83a - Browse repository at this point
Copy the full SHA 9e0e83aView commit details -
sched/core: Check tgid in is_global_init()
Our global init task can have sub-threads, so ->pid check is not reliable enough for is_global_init(), we need to check tgid instead. This has been spotted by Oleg and a fix was proposed by Richard a long time ago (see the link below). Oleg wrote: : Because is_global_init() is only true for the main thread of /sbin/init. : : Just look at oom_unkillable_task(). It tries to not kill init. But, say, : select_bad_process() can happily find a sub-thread of is_global_init() : and still kill it. I recently hit the problem in question; re-sending the patch (to the best of my knowledge it has never been submitted) with updated function comment. Credit goes to Oleg and Richard. Suggested-by: Richard Guy Briggs <[email protected]> Reported-by: Oleg Nesterov <[email protected]> Signed-off-by: Sergey Senozhatsky <[email protected]> Signed-off-by: Peter Zijlstra (Intel) <[email protected]> Acked-by: Serge Hallyn <[email protected]> Cc: Andrew Morton <[email protected]> Cc: Eric W . Biederman <[email protected]> Cc: Linus Torvalds <[email protected]> Cc: Peter Zijlstra <[email protected]> Cc: Serge E . Hallyn <[email protected]> Cc: Sergey Senozhatsky <[email protected]> Cc: Thomas Gleixner <[email protected]> Link: https://www.redhat.com/archives/linux-audit/2013-December/msg00086.html Signed-off-by: Ingo Molnar <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 570f524 - Browse repository at this point
Copy the full SHA 570f524View commit details -
sched/core: Fix unserialized r-m-w scribbling stuff
Some of the sched bitfieds (notably sched_reset_on_fork) can be set on other than current, this can cause the r-m-w to race with other updates. Since all the sched bits are serialized by scheduler locks, pull them in a separate word. Reported-by: Tejun Heo <[email protected]> Signed-off-by: Peter Zijlstra (Intel) <[email protected]> Cc: Dmitry Vyukov <[email protected]> Cc: Linus Torvalds <[email protected]> Cc: Peter Zijlstra <[email protected]> Cc: Sasha Levin <[email protected]> Cc: Thomas Gleixner <[email protected]> Cc: [email protected] Cc: [email protected] Cc: [email protected] Cc: [email protected] Link: http://lkml.kernel.org/r/[email protected] Signed-off-by: Ingo Molnar <[email protected]>
Peter Zijlstra authored and Ingo Molnar committedJan 6, 2016 Configuration menu - View commit details
-
Copy full SHA for be958bd - Browse repository at this point
Copy the full SHA be958bdView commit details -
sched/core: Reset task's lockless wake-queues on fork()
In the following commit: 7675104 ("sched: Implement lockless wake-queues") we gained lockless wake-queues. The -RT kernel managed to lockup itself with those. There could be multiple attempts for task X to enqueue it for a wakeup _even_ if task X is already running. The reason is that task X could be runnable but not yet on CPU. The the task performing the wakeup did not leave the CPU it could performe multiple wakeups. With the proper timming task X could be running and enqueued for a wakeup. If this happens while X is performing a fork() then its its child will have a !NULL `wake_q` member copied. This is not a problem as long as the child task does not participate in lockless wakeups :) Signed-off-by: Sebastian Andrzej Siewior <[email protected]> Signed-off-by: Peter Zijlstra (Intel) <[email protected]> Cc: Davidlohr Bueso <[email protected]> Cc: Linus Torvalds <[email protected]> Cc: Peter Zijlstra <[email protected]> Cc: Steven Rostedt <[email protected]> Cc: Thomas Gleixner <[email protected]> Fixes: 7675104 ("sched: Implement lockless wake-queues") Link: http://lkml.kernel.org/r/[email protected] Signed-off-by: Ingo Molnar <[email protected]>
Sebastian Andrzej Siewior authored and Ingo Molnar committedJan 6, 2016 Configuration menu - View commit details
-
Copy full SHA for 093e584 - Browse repository at this point
Copy the full SHA 093e584View commit details -
ARM: OMAP2+: Fix onenand rate detection to avoid filesystem corruption
Commit 63aa945 ("memory: omap-gpmc: Add Kconfig option for debug") unified the GPMC debug for the SoCs with GPMC. The commit also left out the option for HWMOD_INIT_NO_RESET as we now require proper timings for GPMC to be able to remap GPMC devices out of address 0. Unfortunately on Nokia N900, onenand now only partially works with the device tree provided timings. It works enough to get detected but the clock rate supported by the onenand chip gets misdetected. This in turn causes the GPMC timings to be miscalculated and this leads into file system corruption on N900. Looks like onenand needs CS_CONFIG1 bit 27 WRITETYPE set for for sync write. This is needed also for async timings when we write to onenand with omap2_onenand_set_async_mode(). Without sync write bit set, the async read for the onenand ONENAND_REG_VERSION_ID will return 0xfff. Let's exit with an error if onenand rate is not detected. And let's remove the extra call to omap2_onenand_set_async_mode() as we only need to do this once at the end of omap2_onenand_setup_async(). Fixes: 63aa945 ("memory: omap-gpmc: Add Kconfig option for debug") Cc: [email protected] # v4.2+ Reported-by: Ivaylo Dimitrov <[email protected]> Tested-by: Ivaylo Dimitrov <[email protected]> Tested-by: Aaro Koskinen <[email protected]> Signed-off-by: Tony Lindgren <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for e7b11dc - Browse repository at this point
Copy the full SHA e7b11dcView commit details -
Merge tag 'asoc-fix-v4.4-rc8' of git://git.kernel.org/pub/scm/linux/k…
…ernel/git/broonie/sound into for-linus ASoC: Last minute fixes for v4.4 A few final fixes for v4.4, the main one being the two patches to the new Sky Lake drivers which fix a previous incorrect fix that went in during an earlier -rc.
Configuration menu - View commit details
-
Copy full SHA for 3f37b26 - Browse repository at this point
Copy the full SHA 3f37b26View commit details -
net: possible use after free in dst_release
dst_release should not access dst->flags after decrementing __refcnt to 0. The dst_entry may be in dst_busy_list and dst_gc_task may dst_destroy it before dst_release gets a chance to access dst->flags. Fixes: d69bbf8 ("net: fix a race in dst_release()") Fixes: 27b75c9 ("net: avoid RCU for NOCACHE dst") Signed-off-by: Francesco Ruggeri <[email protected]> Acked-by: Eric Dumazet <[email protected]> Signed-off-by: David S. Miller <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 07a5d38 - Browse repository at this point
Copy the full SHA 07a5d38View commit details -
mkiss: fix scribble on freed memory
commit d79f16c fixed a user triggerable scribble on free memory but added a new one which allows the user to scribble even more and user controlled data into freed space. As with 6pack we need to halt the queue before we free the buffers, because the transmit logic is not protected by the semaphore. Signed-off-by: Alan Cox <[email protected]> Signed-off-by: David S. Miller <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for fde55c4 - Browse repository at this point
Copy the full SHA fde55c4View commit details -
net: qmi_wwan: Add WeTelecom-WPD600N
The WeTelecom-WPD600N is an LTE module that, in addition to supporting most "normal" bands, also supports LTE over 450MHz. Manual testing showed that only interface number three replies to QMI messages. Cc: Bjørn Mork <[email protected]> Signed-off-by: Kristian Evensen <[email protected]> Acked-by: Bjørn Mork <[email protected]> Signed-off-by: David S. Miller <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for e439bd4 - Browse repository at this point
Copy the full SHA e439bd4View commit details -
Driver: Vmxnet3: Fix regression caused by 5738a09
Reported-by: Bingkuo Liu <[email protected]> Signed-off-by: Shrikrishna Khare <[email protected]> Signed-off-by: David S. Miller <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 58caf63 - Browse repository at this point
Copy the full SHA 58caf63View commit details -
tcp: fix zero cwnd in tcp_cwnd_reduction
Patch 3759824 ("tcp: PRR uses CRB mode by default and SS mode conditionally") introduced a bug that cwnd may become 0 when both inflight and sndcnt are 0 (cwnd = inflight + sndcnt). This may lead to a div-by-zero if the connection starts another cwnd reduction phase by setting tp->prior_cwnd to the current cwnd (0) in tcp_init_cwnd_reduction(). To prevent this we skip PRR operation when nothing is acked or sacked. Then cwnd must be positive in all cases as long as ssthresh is positive: 1) The proportional reduction mode inflight > ssthresh > 0 2) The reduction bound mode a) inflight == ssthresh > 0 b) inflight < ssthresh sndcnt > 0 since newly_acked_sacked > 0 and inflight < ssthresh Therefore in all cases inflight and sndcnt can not both be 0. We check invalid tp->prior_cwnd to avoid potential div0 bugs. In reality this bug is triggered only with a sequence of less common events. For example, the connection is terminating an ECN-triggered cwnd reduction with an inflight 0, then it receives reordered/old ACKs or DSACKs from prior transmission (which acks nothing). Or the connection is in fast recovery stage that marks everything lost, but fails to retransmit due to local issues, then receives data packets from other end which acks nothing. Fixes: 3759824 ("tcp: PRR uses CRB mode by default and SS mode conditionally") Reported-by: Oleksandr Natalenko <[email protected]> Signed-off-by: Yuchung Cheng <[email protected]> Signed-off-by: Neal Cardwell <[email protected]> Signed-off-by: Eric Dumazet <[email protected]> Signed-off-by: David S. Miller <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 8b8a321 - Browse repository at this point
Copy the full SHA 8b8a321View commit details
Commits on Jan 7, 2016
-
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net
Pull networking fixes from David Miller: "As usual, there are a couple straggler bug fixes: 1) qlcnic_alloc_mbx_args() error returns are not checked in qlcnic driver. Fix from Insu Yun. 2) SKB refcounting bug in connector, from Florian Westphal. 3) vrf_get_saddr() has to propagate fib_lookup() errors to it's callers, from David Ahern. 4) Fix AF_UNIX splice/bind deadlock, from Rainer Weikusat. 5) qdisc_rcu_free() fails to free the per-cpu qstats. Fix from John Fastabend. 6) vmxnet3 driver passes wrong page to dma_map_page(), fix from Shrikrishna Khare. 7) Don't allow zero cwnd in tcp_cwnd_reduction(), from Yuchung Cheng" * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net: tcp: fix zero cwnd in tcp_cwnd_reduction Driver: Vmxnet3: Fix regression caused by 5738a09 net: qmi_wwan: Add WeTelecom-WPD600N mkiss: fix scribble on freed memory net: possible use after free in dst_release net: sched: fix missing free per cpu on qstats ARM: net: bpf: fix zero right shift 6pack: fix free memory scribbles net: filter: make JITs zero A for SKF_AD_ALU_XOR_X bridge: Only call /sbin/bridge-stp for the initial network namespace af_unix: Fix splice-bind deadlock net: Propagate lookup failure in l3mdev_get_saddr to caller r8152: add reset_resume function connector: bump skb->users before callback invocation cxgb4: correctly handling failed allocation qlcnic: correctly handle qlcnic_alloc_mbx_args
Configuration menu - View commit details
-
Copy full SHA for 51cb67c - Browse repository at this point
Copy the full SHA 51cb67cView commit details -
Merge tag 'for-linus-20160106' of git://git.infradead.org/linux-mtd
Pull MTD fixes from Brian Norris: "Three last MTD fixes for v4.4. These are all fixes for regressions and bugs reported mid cycle. Unfortunately, some of them took a bit long to get proper testing and feedback. - Assign the default MTD name earlier in the registration process, so partition parsers (like cmdlinepart) see the right name. Without this, some systems may come up with unpartitioned flash. This was a v4.4-rc1 regression. - Revert some new Winbond SPI NOR flash unlocking/locking support; new code in v4.4 caused regressions on some Spansion flash. - Fix mis-typed parameter ordering in SPI NOR unlock function; this bug was introduced in v4.4-rc1" * tag 'for-linus-20160106' of git://git.infradead.org/linux-mtd: mtd: spi-nor: fix stm_is_locked_sr() parameters mtd: spi-nor: fix Spansion regressions (aliased with Winbond) mtd: fix cmdlinepart parser, early naming for auto-filled MTD
Configuration menu - View commit details
-
Copy full SHA for b06f3a1 - Browse repository at this point
Copy the full SHA b06f3a1View commit details -
ARM: nomadik: set latencies to 8 cycles
The Nomadik has sporadic crashes because of these latencies, setting them to max makes the platform work nicely, so use this values for now. These latencies were set to 2 since the Nomadik platform was merged, but I suspect they never took effect until the right size and associativity for the cache was specified in the device tree and that is why the crash comes now. Cc: [email protected] Signed-off-by: Linus Walleij <[email protected]> Signed-off-by: Olof Johansson <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for a461a3e - Browse repository at this point
Copy the full SHA a461a3eView commit details -
ARM: versatile: fix MMC/SD interrupt assignment
Commit 0976c94 "arm/versatile: Fix versatile irq specifications" has an off-by-one error on the Versatile AB that has been regressing the Versatile AB hardware for some time. However it seems like the interrupt assignments have never been correct and I have now adjusted them according to the specification. The masks for the valid interrupts made it impossible to assign the right SIC interrupt for the MMCI, so I went in and fixed these to correspond to the specifications, and added references if anyone wants to double-check. Due to the Versatile PB including the Versatile AB as a base DTS file, we need to override and correct some values to correspond to the actual changes in the hardware. For the Versatile PB I don't think the IRQ line assignment for MMCI has ever been correct for either of the two MMCI blocks. It would be nice if someone with the physical PB board could test this. Patch tested on the Versatile AB, QEMU for Versatile AB and QEMU for Versatile PB. Cc: Rob Herring <[email protected]> Cc: Grant Likely <[email protected]> Cc: [email protected] Fixes: 0976c94 ("arm/versatile: Fix versatile irq specifications") Signed-off-by: Linus Walleij <[email protected]> Signed-off-by: Olof Johansson <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 20f1275 - Browse repository at this point
Copy the full SHA 20f1275View commit details -
async_tx: use GFP_NOWAIT rather than GFP_IO
These async_XX functions are called from md/raid5 in an atomic section, between get_cpu() and put_cpu(), so they must not sleep. So use GFP_NOWAIT rather than GFP_IO. Dan Williams writes: Longer term async_tx needs to be merged into md directly as we can allocate this unmap data statically per-stripe rather than per request. Fixed: 7476bd7 ("async_pq: convert to dmaengine_unmap_data") Cc: [email protected] (v3.13+) Reported-and-tested-by: Stanislav Samsonov <[email protected]> Acked-by: Dan Williams <[email protected]> Signed-off-by: NeilBrown <[email protected]> Signed-off-by: Vinod Koul <[email protected]>
NeilBrown authored and Vinod Koul committedJan 7, 2016 Configuration menu - View commit details
-
Copy full SHA for b02bab6 - Browse repository at this point
Copy the full SHA b02bab6View commit details -
dmaengine: xgene-dma: Fix double IRQ issue by setting IRQ_DISABLE_UNL…
…AZY flag For interrupt controller that doesn't support irq_disable and hardware with level interrupt, an extra interrupt can be pending. This patch fixes the issue by setting IRQ_DISABLE_UNLAZY flag for the interrupt line. Reference: http://git.kernel.org/tip/e9849777d0e27cdd2902805be51da73e7c79578c Signed-off-by: Rameshwar Prasad Sahu <[email protected]> Signed-off-by: Vinod Koul <[email protected]>
Rameshwar Prasad Sahu authored and Vinod Koul committedJan 7, 2016 Configuration menu - View commit details
-
Copy full SHA for b0b7902 - Browse repository at this point
Copy the full SHA b0b7902View commit details -
Merge branch 'linux-4.4' of git://github.com/skeggsb/linux into drm-f…
…ixes single nv40 oops fix. * 'linux-4.4' of git://github.com/skeggsb/linux: drm/nouveau/gr/nv40: fix oops in interrupt handler
Configuration menu - View commit details
-
Copy full SHA for 3bea6a4 - Browse repository at this point
Copy the full SHA 3bea6a4View commit details -
iommu/dma: Use correct offset in map_sg
When mapping a non-page-aligned scatterlist entry, we copy the original offset to the output DMA address before aligning it to hand off to iommu_map_sg(), then later adding the IOVA page address portion to get the final mapped address. However, when the IOVA page size is smaller than the CPU page size, it is the offset within the IOVA page we want, not that within the CPU page, which can easily be larger than an IOVA page and thus result in an incorrect final address. Fix the bug by taking only the IOVA-aligned part of the offset as the basis of the DMA address, not the whole thing. Signed-off-by: Robin Murphy <[email protected]> Signed-off-by: Joerg Roedel <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 164afb1 - Browse repository at this point
Copy the full SHA 164afb1View commit details -
kvm: x86: only channel 0 of the i8254 is linked to the HPET
While setting the KVM PIT counters in 'kvm_pit_load_count', if 'hpet_legacy_start' is set, the function disables the timer on channel[0], instead of the respective index 'channel'. This is because channels 1-3 are not linked to the HPET. Fix the caller to only activate the special HPET processing for channel 0. Reported-by: P J P <[email protected]> Fixes: 0185604 Signed-off-by: Paolo Bonzini <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for e5e57e7 - Browse repository at this point
Copy the full SHA e5e57e7View commit details -
ARM: Fix broken USB support in multi_v7_defconfig for sunxi devices
Commit 69fb4dc ("power: Add an axp20x-usb-power driver") introduced a new driver for the USB power supply used on various Allwinner based SBCs. However, the driver was not added to multi_v7_defconfig which breaks USB support for some boards (e.g. LeMaker BananaPi) as the kernel will now turn off the USB power supply during boot by default if the driver isn't present. (This was not the case in linux 4.3 or lower where the USB power was always left on.) Hence, add the driver to multi_v7_defconfig in order to keep USB support working on those boards that require it. Signed-off-by: Timo Sigurdsson <[email protected]> Tested-by: Timo Sigurdsson <[email protected]> Acked-by: Maxime Ripard <[email protected]> Signed-off-by: Arnd Bergmann <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 5b1a618 - Browse repository at this point
Copy the full SHA 5b1a618View commit details -
dts: vt8500: Add SDHC node to DTS file for WM8650
Since WM8650 has the same 'WMT' SDHC controller as WM8505, and the driver is already in the kernel, this node enables the controller support for WM8650 Signed-off-by: Roman Volkov <[email protected]> Reviewed-by: Alexey Charkov <[email protected]> Cc: [email protected] Signed-off-by: Arnd Bergmann <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 0f090bf - Browse repository at this point
Copy the full SHA 0f090bfView commit details -
ftrace/module: Call clean up function when module init fails early
If the module init code fails after calling ftrace_module_init() and before calling do_init_module(), we can suffer from a memory leak. This is because ftrace_module_init() allocates pages to store the locations that ftrace hooks are placed in the module text. If do_init_module() fails, it still calls the MODULE_GOING notifiers which will tell ftrace to do a clean up of the pages it allocated for the module. But if load_module() fails before then, the pages allocated by ftrace_module_init() will never be freed. Call ftrace_release_mod() on the module if load_module() fails before getting to do_init_module(). Link: http://lkml.kernel.org/r/[email protected] Reported-by: "Qiu, PeiyangX" <[email protected]> Fixes: a949ae5 "ftrace/module: Hardcode ftrace_module_init() call into load_module()" Cc: [email protected] # v2.6.38+ Acked-by: Rusty Russell <[email protected]> Signed-off-by: Steven Rostedt <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 049fb9b - Browse repository at this point
Copy the full SHA 049fb9bView commit details -
Merge tag 'trace-v4.4-rc4-4' of git://git.kernel.org/pub/scm/linux/ke…
…rnel/git/rostedt/linux-trace Pull ftrace fix from Steven Rostedt: "PeiyangX Qiu reported that if a module fails to load between calling ftrace_module_init() and do_init_module() that the allocations made in ftrace_module_init() will not be freed, resulting in a memory leak. The solution is to call ftrace_release_mod() on the failing module in the fail path befor do_init_module() is called. This will remove any allocations made for that module, and nothing if ftrace_module_init() wasn't called yet for that module. Note, once do_init_module() is called, the MODULE_GOING notifiers are called for the failed module, which calls into the ftrace code to do the proper clean up (basically calling ftrace_release_mod())" * tag 'trace-v4.4-rc4-4' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-trace: ftrace/module: Call clean up function when module init fails early
Configuration menu - View commit details
-
Copy full SHA for 2626820 - Browse repository at this point
Copy the full SHA 2626820View commit details -
Merge tag 'iommu-fixes-v4.4-rc8' of git://git.kernel.org/pub/scm/linu…
…x/kernel/git/joro/iommu Pull IOMMU fixes from Joerg Roedel: - Two build issues, one in the ipmmu-vmsa driver and one for the new generic dma-api implemention used on arm64 - A performance fix for said dma-api implemention - An issue caused by a wrong offset in map_sg in the same code as above * tag 'iommu-fixes-v4.4-rc8' of git://git.kernel.org/pub/scm/linux/kernel/git/joro/iommu: iommu/dma: Use correct offset in map_sg iommu/ipmmu-vmsa: Don't truncate ttbr if LPAE is not enabled iommu/dma: Avoid unlikely high-order allocations iommu/dma: Add some missing #includes
Configuration menu - View commit details
-
Copy full SHA for 1d8b0e7 - Browse repository at this point
Copy the full SHA 1d8b0e7View commit details -
Merge branch 'drm-fixes' of git://people.freedesktop.org/~airlied/linux
Pull drm nouveau fix from Dave Airlie: "Still not back to work, but I decided to forward this fix" * 'drm-fixes' of git://people.freedesktop.org/~airlied/linux: drm/nouveau/gr/nv40: fix oops in interrupt handler
Configuration menu - View commit details
-
Copy full SHA for 02006f7 - Browse repository at this point
Copy the full SHA 02006f7View commit details
Commits on Jan 8, 2016
-
ACPI / property: avoid leaking format string into kobject name
The dn->name is expected to be used as a literal, so add the missing "%s". Fixes: 263b4c1 (ACPI / property: Expose data-only subnodes via sysfs) Signed-off-by: Kees Cook <[email protected]> Signed-off-by: Rafael J. Wysocki <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 9db22d9 - Browse repository at this point
Copy the full SHA 9db22d9View commit details -
firmware: dmi_scan: Fix UUID endianness for SMBIOS >= 2.6
The dmi_ver wasn't updated correctly before the dmi_decode method run to save the uuid. That resulted in "dmidecode -s system-uuid" and /sys/class/dmi/id/product_uuid disagreeing. The latter was buggy and this fixes it. Reported-by: Federico Simoncelli <[email protected]> Fixes: 9f9c9cb ("drivers/firmware/dmi_scan.c: fetch dmi version from SMBIOS if it exists") Fixes: 79bae42 ("dmi_scan: refactor dmi_scan_machine(), {smbios,dmi}_present()") Signed-off-by: Andrea Arcangeli <[email protected]> Signed-off-by: Jean Delvare <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for ff4319d - Browse repository at this point
Copy the full SHA ff4319dView commit details -
PCI: dra7xx: Mark driver as broken
Mark the dra7xx PCI host driver as broken. This driver was first merged in v3.17 and has never worked. Although the driver compiles just fine, it is missing an essential device reset. If the driver is included, the kernel locks up hard shortly after booting, before any console output appears. Signed-off-by: Richard Cochran <[email protected]> Signed-off-by: Bjorn Helgaas <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 5c3b99d - Browse repository at this point
Copy the full SHA 5c3b99dView commit details -
Revert "block: Split bios on chunk boundaries"
This reverts commit d380561. If we end up splitting on the first segment, we don't adjust the sector count. That results in hitting a BUG() with attempting to split 0 sectors. As this is just a performance issue and not a regression since 4.3 release, let's just rever this change. That gives us more time to test a real fix for 4.5, which would be marked for stable anyway.
Configuration menu - View commit details
-
Copy full SHA for 6126eb2 - Browse repository at this point
Copy the full SHA 6126eb2View commit details -
Merge tag 'omap-for-v4.4/onenand-corruption' of git://git.kernel.org/…
…pub/scm/linux/kernel/git/tmlind/linux-omap into fixes Pull "urgent onenand file system corruption fix for n900" from Tony Lindgren: Last minute urgent pull request to prevent file system corruption on Nokia N900. Looks like we have a GPMC bus timing bug that has gone unnoticed because of bootloader configured registers until few days ago. We are not detecting the onenand clock rate properly unless we have CONFIG_OMAP_GPMC_DEBUG set and this causes onenand corruption that can be easily be reproduced. There seems to be also an additional bug still lurking around for onenand corruption. But that is still being investigated and it does not seem to be GPMC timings related. Meanwhile, it would be good to get this fix into v4.4 to prevent wrong timings from corrupting onenand. * tag 'omap-for-v4.4/onenand-corruption' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap: ARM: OMAP2+: Fix onenand rate detection to avoid filesystem corruption
Configuration menu - View commit details
-
Copy full SHA for 841bcd2 - Browse repository at this point
Copy the full SHA 841bcd2View commit details -
Merge tag 'sound-4.4' of git://git.kernel.org/pub/scm/linux/kernel/gi…
…t/tiwai/sound Pull sound fixes from Takashi Iwai: "A slightly higher volume than a new year's wish, but not too worrisome: a large LOC is only for HD-audio device-specific quirks, so fairly safe to apply. The rest ASoC fixes are all trivial and small; a simple replacement of mutex call with nested lock version, a few Arizona and Realtek codec fixes, and a regression fix for Skylake firmware handling" * tag 'sound-4.4' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound: ASoC: Intel: Skylake: Fix the memory leak ASoC: Intel: Skylake: Revert previous broken fix memory leak fix ASoC: Use nested lock for snd_soc_dapm_mutex_lock ASoC: rt5645: add sys clk detection ALSA: hda - Add keycode map for alc input device ALSA: hda - Add mic mute hotkey quirk for Lenovo ThinkCentre AIO ASoC: arizona: Fix bclk for sample rates that are multiple of 4kHz
Configuration menu - View commit details
-
Copy full SHA for 4054f64 - Browse repository at this point
Copy the full SHA 4054f64View commit details -
Merge branch 'dmi-for-linus' of git://git.kernel.org/pub/scm/linux/ke…
…rnel/git/jdelvare/staging Pull dmi fix from Jean Delvare. * 'dmi-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jdelvare/staging: firmware: dmi_scan: Fix UUID endianness for SMBIOS >= 2.6
Configuration menu - View commit details
-
Copy full SHA for 436950a - Browse repository at this point
Copy the full SHA 436950aView commit details -
Merge tag 'dmaengine-fix-4.4' of git://git.infradead.org/users/vkoul/…
…slave-dma Pull dmaengine fixes from Vinod Koul: "Late fixes for 4.4 are three fixes for drivers which include a revert of mic-x100 fix which is causing regression, xgene fix for double IRQ and async_tx fix to use GFP_NOWAIT" * tag 'dmaengine-fix-4.4' of git://git.infradead.org/users/vkoul/slave-dma: dmaengine: xgene-dma: Fix double IRQ issue by setting IRQ_DISABLE_UNLAZY flag async_tx: use GFP_NOWAIT rather than GFP_IO dmaengine: Revert "dmaengine: mic_x100: add missing spin_unlock"
Configuration menu - View commit details
-
Copy full SHA for 212c7f6 - Browse repository at this point
Copy the full SHA 212c7f6View commit details -
Merge branch 'for-linus' of git://git.kernel.dk/linux-block
Pull block revert from Jens Axboe: "The previous pull request had a split fix for NVMe, however there are corner cases where that ends up blowing up. So let's revert it for 4.4. The regression isn't introduced in this cycle, and it's "just" a performance regression, not a stability/integrity issue" * 'for-linus' of git://git.kernel.dk/linux-block: Revert "block: Split bios on chunk boundaries"
Configuration menu - View commit details
-
Copy full SHA for a6a7358 - Browse repository at this point
Copy the full SHA a6a7358View commit details -
Merge branch 'irq-urgent-for-linus' of git://git.kernel.org/pub/scm/l…
…inux/kernel/git/tip/tip Pull irq fix from Ingo Molnar: "Fixes a core IRQ subsystem deadlock" * 'irq-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: genirq: Prevent chip buslock deadlock
Configuration menu - View commit details
-
Copy full SHA for ea83ae2 - Browse repository at this point
Copy the full SHA ea83ae2View commit details -
Merge branch 'perf-urgent-for-linus' of git://git.kernel.org/pub/scm/…
…linux/kernel/git/tip/tip Pull perf fixes from Ingo Molnar: "Two core subsystem fixes, plus a handful of tooling fixes" * 'perf-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: perf: Fix race in swevent hash perf: Fix race in perf_event_exec() perf list: Robustify event printing routine perf list: Add support for PERF_COUNT_SW_BPF_OUT perf hists browser: Fix segfault if use symbol filter in cmdline perf hists browser: Reset selection when refresh perf hists browser: Add NULL pointer check to prevent crash perf buildid-list: Fix return value of perf buildid-list -k perf buildid-list: Show running kernel build id fix
Configuration menu - View commit details
-
Copy full SHA for 3ab6d1e - Browse repository at this point
Copy the full SHA 3ab6d1eView commit details -
Merge branch 'sched-urgent-for-linus' of git://git.kernel.org/pub/scm…
…/linux/kernel/git/tip/tip Pull scheduler fixes from Ingo Molnar: "Misc scheduler fixes" * 'sched-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: sched/core: Reset task's lockless wake-queues on fork() sched/core: Fix unserialized r-m-w scribbling stuff sched/core: Check tgid in is_global_init() sched/fair: Fix multiplication overflow on 32-bit systems
Configuration menu - View commit details
-
Copy full SHA for de03017 - Browse repository at this point
Copy the full SHA de03017View commit details -
Merge branch 'x86-urgent-for-linus' of git://git.kernel.org/pub/scm/l…
…inux/kernel/git/tip/tip Pull x86 fixes from Ingo Molnar: "A handful of x86 fixes: - a syscall ABI fix, fixing an Android breakage - a Xen PV guest fix relating to the RTC device, causing a non-working console - a Xen guest syscall stack frame fix - an MCE hotplug CPU crash fix" * 'x86-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: x86/numachip: Fix NumaConnect2 MMCFG PCI access x86/entry: Restore traditional SYSENTER calling convention x86/entry: Fix some comments x86/paravirt: Prevent rtc_cmos platform device init on PV guests x86/xen: Avoid fast syscall path for Xen PV guests x86/mce: Ensure offline CPUs don't participate in rendezvous process
Configuration menu - View commit details
-
Copy full SHA for 650e545 - Browse repository at this point
Copy the full SHA 650e545View commit details -
Merge tag 'pm+acpi-4.4-final' of git://git.kernel.org/pub/scm/linux/k…
…ernel/git/rafael/linux-pm Pull ACPI fix from Rafael Wysocki: "Just one obvious fix that adds a missing function argument in ACPI code introduced recently (Kees Cook)" * tag 'pm+acpi-4.4-final' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm: ACPI / property: avoid leaking format string into kobject name
Configuration menu - View commit details
-
Copy full SHA for 496b0b5 - Browse repository at this point
Copy the full SHA 496b0b5View commit details -
Merge tag 'for-linus' of git://git.kernel.org/pub/scm/virt/kvm/kvm
Pull KVM fix from Paolo Bonzini: "A simple fix. I'm sending it before the merge window, because it refines a patch found in your master branch but not yet in the kvm/next branch that is destined for 4.5" * tag 'for-linus' of git://git.kernel.org/pub/scm/virt/kvm/kvm: kvm: x86: only channel 0 of the i8254 is linked to the HPET
Configuration menu - View commit details
-
Copy full SHA for 516c50c - Browse repository at this point
Copy the full SHA 516c50cView commit details
Commits on Jan 9, 2016
-
Merge tag 'fixes-for-linus' of git://git.kernel.org/pub/scm/linux/ker…
…nel/git/arm/arm-soc Pull ARM SoC fixes from Arnd Bergmann: "This is the final small set of ARM SoC bug fixes for linux-4.4, almost all regressions: OMAP: - data corruption on the Nokia N900 flash Allwinner: - Two defconfig change to get USB working again ARM Versatile: - Interrupt numbers gone bad after an older bug fix Nomadik: - Crashes from incorrect L2 cache settings VIA vt8500: - SD/MMC support on WM8650 never worked" * tag 'fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: dts: vt8500: Add SDHC node to DTS file for WM8650 ARM: Fix broken USB support in multi_v7_defconfig for sunxi devices ARM: versatile: fix MMC/SD interrupt assignment ARM: nomadik: set latencies to 8 cycles ARM: OMAP2+: Fix onenand rate detection to avoid filesystem corruption ARM: Fix broken USB support in sunxi_defconfig
Configuration menu - View commit details
-
Copy full SHA for 44d8a7d - Browse repository at this point
Copy the full SHA 44d8a7dView commit details -
vmstat: allocate vmstat_wq before it is used
kernel test robot has reported the following crash: BUG: unable to handle kernel NULL pointer dereference at 00000100 IP: [<c1074df6>] __queue_work+0x26/0x390 *pdpt = 0000000000000000 *pde = f000ff53f000ff53 *pde = f000ff53f000ff53 Oops: 0000 [#1] PREEMPT PREEMPT SMP SMP CPU: 0 PID: 24 Comm: kworker/0:1 Not tainted 4.4.0-rc4-00139-g373ccbe #1 Workqueue: events vmstat_shepherd task: cb684600 ti: cb7ba000 task.ti: cb7ba000 EIP: 0060:[<c1074df6>] EFLAGS: 00010046 CPU: 0 EIP is at __queue_work+0x26/0x390 EAX: 00000046 EBX: cbb37800 ECX: cbb37800 EDX: 00000000 ESI: 00000000 EDI: 00000000 EBP: cb7bbe68 ESP: cb7bbe38 DS: 007b ES: 007b FS: 00d8 GS: 00e0 SS: 0068 CR0: 8005003b CR2: 00000100 CR3: 01fd5000 CR4: 000006b0 Stack: Call Trace: __queue_delayed_work+0xa1/0x160 queue_delayed_work_on+0x36/0x60 vmstat_shepherd+0xad/0xf0 process_one_work+0x1aa/0x4c0 worker_thread+0x41/0x440 kthread+0xb0/0xd0 ret_from_kernel_thread+0x21/0x40 The reason is that start_shepherd_timer schedules the shepherd work item which uses vmstat_wq (vmstat_shepherd) before setup_vmstat allocates that workqueue so if the further initialization takes more than HZ we might end up scheduling on a NULL vmstat_wq. This is really unlikely but not impossible. Fixes: 373ccbe ("mm, vmstat: allow WQ concurrency to discover memory reclaim doesn't make any progress") Reported-by: kernel test robot <[email protected]> Signed-off-by: Michal Hocko <[email protected]> Tested-by: Tetsuo Handa <[email protected]> Cc: [email protected] Cc: Andrew Morton <[email protected]> Signed-off-by: Linus Torvalds <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 751e5f5 - Browse repository at this point
Copy the full SHA 751e5f5View commit details -
Merge tag 'pci-v4.4-fixes-4' of git://git.kernel.org/pub/scm/linux/ke…
…rnel/git/helgaas/pci Pull PCI fixlet from Bjorn Helgaas: "This marks the TI DRA7xx host bridge driver as broken. Apparently it has never worked without some additional out-of-tree code, so I'm going to mark it broken now and remove it completely next cycle unless it's fixed" * tag 'pci-v4.4-fixes-4' of git://git.kernel.org/pub/scm/linux/kernel/git/helgaas/pci: PCI: dra7xx: Mark driver as broken
Configuration menu - View commit details
-
Copy full SHA for c0cb139 - Browse repository at this point
Copy the full SHA c0cb139View commit details -
Merge tag 'scsi-fixes' of git://git.kernel.org/pub/scm/linux/kernel/g…
…it/jejb/scsi Pull SCSI fix from James Bottomley: "A single fix for machines with pages > 4k (PPC mostly). There's a bug in our optimal transfer size code where we don't account for pages > 4k and can set the transfer size to be less than the page size causing nasty failures" * tag 'scsi-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi: sd: Reject optimal transfer length smaller than page size
Configuration menu - View commit details
-
Copy full SHA for eac6f76 - Browse repository at this point
Copy the full SHA eac6f76View commit details
Commits on Jan 10, 2016
-
Configuration menu - View commit details
-
Copy full SHA for afd2ff9 - Browse repository at this point
Copy the full SHA afd2ff9View commit details
Commits on May 6, 2016
-
gem5: Add gem5 instrumentation
Export a set of symbols used for gem5 to determine sizes and locations of useful data structures within the kernel. Change-Id: Idcfaf5fcd91b7ea38e70f174af7f4d19c27a107e Signed-off-by: Andreas Sandberg <[email protected]> Reviewed-by: Curtis Dunham <[email protected]> Reviewed-by: Geoffrey Blake <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for e35fa92 - Browse repository at this point
Copy the full SHA e35fa92View commit details -
gem5: Add support for gem5's extended GIC mode
gem5's GIC model contains a gem5-specific extension that enables support for up to 255 CPUs. When enabled, the GIC interprets registers where a CPU bitmask would normally be present as a CPU ID. This extensions need to be enabled by setting the OF compatible string to "gem5,gic". Kudos to Matt Evans for the original version of this patch. Change-Id: I1a8776f1adcbfcd97813573050a8595176de6a7e Signed-off-by: Andreas Sandberg <[email protected]> Reviewed-by: Stephan Diestelhorst <[email protected]> Reviewed-by: Curtis Dunham <[email protected]> [Ported to 4.4] Signed-off-by: Andreas Sandberg <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 7d85279 - Browse repository at this point
Copy the full SHA 7d85279View commit details -
gem5: Add aarch32 default configurations
Add a default gem5 Linux configuration Change-Id: I57d1bab24bb835b872bfc9528e59a3bb029041fe Reviewed-by: Curtis Dunham <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for e12ffd4 - Browse repository at this point
Copy the full SHA e12ffd4View commit details -
Add a default gem5 Linux configuration for arm64 Change-Id: Ib3247dbf99b10078f023b7a393e71c573eccdd4e Signed-off-by: Geoffrey Blake <[email protected]> Reviewed-by: Andreas Sandberg <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 7ae8120 - Browse repository at this point
Copy the full SHA 7ae8120View commit details -
gem5: Add readq and writeq support to arch/arm/include/asm/io.h
Update asm/io.h to provide known working implementations for writeq and readq to work with NVMe and IGB device drivers which perform 64-bit IO reads and writes. Signed-off-by: Geoffrey Blake <[email protected]> Change-Id: I1ec9bad6fc9d0ef4eda2f71200bc3e08460dcacf Reviewed-by: Andreas Sandberg <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 86a7b4a - Browse repository at this point
Copy the full SHA 86a7b4aView commit details -
gem5: Add MSI and GIC_v2m build support to arm architecture
Modify mach-vexpress/Kconfig and include/asm/Kbuild to build in MSI support for armv7 so we can use the GIC_V2M with PCI devices that support MSI and MSI-X. Signed-off-by: Geoffrey Blake <[email protected]> Change-Id: I0858eeb6ea713cb5725d24524dc522dfecd56e45 Reviewed-by: Andreas Sandberg <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 795add6 - Browse repository at this point
Copy the full SHA 795add6View commit details -
gem5: Update armv7 gem5_defconfig to support MSI and GIC_v2m
Update gem5_defconfig to build in support for MSI-X and the GIC_V2M for default gem5 armv7 kernel builds. Signed-off-by: Geoffrey Blake <[email protected]> Change-Id: If330eb467bf3cebbaee677d817e5202913642aee Reviewed-by: Andreas Sandberg <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 4bfd6d0 - Browse repository at this point
Copy the full SHA 4bfd6d0View commit details -
drm: Add support for ARM's HDLCD controller.
The HDLCD controller is a display controller that supports resolutions up to 4096x4096 pixels. It is present on various development boards produced by ARM Ltd and emulated by the latest Fast Models from the company. Cc: David Airlie <[email protected]> Cc: Robin Murphy <[email protected]> Signed-off-by: Liviu Dudau <[email protected]> [Kconfig cleanup and !CONFIG_PM fixes] Signed-off-by: Arnd Bergmann <[email protected]> Acked-by: Daniel Vetter <[email protected]> [Backported to gem5's 4.3 kernel] Signed-off-by: Andreas Sandberg <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for c7b7dc2 - Browse repository at this point
Copy the full SHA c7b7dc2View commit details -
drm: ARM HDLCD - get rid of devm_clk_put()
Clock is acquired with devm_clk_get() which already manages corresponding resource. I.e. in case of driver removal or failure on installaiton clock resources will be automatically released and explicit call of devm_clk_put() is not required. Cc: Arnd Bergmann <[email protected]> Cc: Daniel Vetter <[email protected]> Cc: David Airlie <[email protected]> Cc: Robin Murphy <[email protected]> Signed-off-by: Alexey Brodkin <[email protected]> Signed-off-by: Liviu Dudau <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 9e633bb - Browse repository at this point
Copy the full SHA 9e633bbView commit details -
drm: ARM HDLCD - fix an error code
We accidentally return PTR_ERR(NULL) which is success instead of a negative error code. Fixes: 879e40bea6f2 ('drm: ARM HDLCD - get rid of devm_clk_put()') Signed-off-by: Dan Carpenter <[email protected]> Signed-off-by: Liviu Dudau <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for fbae3f4 - Browse repository at this point
Copy the full SHA fbae3f4View commit details -
Documentation: drm: Add DT bindings for ARM HDLCD
Cc: Pawel Moll <[email protected]> Cc: Mark Rutland <[email protected]> Cc: Ian Campbell <[email protected]> Cc: Kumar Gala <[email protected]> Acked-by: Rob Herring <[email protected]> Signed-off-by: Liviu Dudau <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for edd74f2 - Browse repository at this point
Copy the full SHA edd74f2View commit details -
dt/bindings: display: Add DT bindings for the DRM virtual encoder
Add DT bindings for a simple DRM encoder that gets the display timings information from the DT and can be connected to a driver via the OF graph bindings. Signed-off-by: Liviu Dudau <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 2fe5557 - Browse repository at this point
Copy the full SHA 2fe5557View commit details -
drm: Add component-aware simple encoder
This is a simple DRM encoder that gets its connector timings information from a OF subnode in the device tree and exposes that as a "discovered" panel. It can be used together with component-based DRM drivers in an emulated environment where no real encoder or connector hardware exists and the display output is configured outside the kernel. Signed-off-by: Liviu Dudau <[email protected]> [Backported to gem5's 4.3 kernel] Signed-off-by: Andreas Sandberg <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 443c2d9 - Browse repository at this point
Copy the full SHA 443c2d9View commit details -
Add support for the dma-buf exporter role to the frame buffer API. The importer role isn't meaningful for frame buffer devices, as the frame buffer device model doesn't allow using externally allocated memory. Taken from an RFC on the linaro-mm-sig mailing list: http://lists.linaro.org/pipermail/linaro-mm-sig/2012-June/002167.html Signed-off-by: Guillaume Tucker <[email protected]> [Ported to gem5's 4.3 kernel] Signed-off-by: Andreas Sandberg <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for ea23f2f - Browse repository at this point
Copy the full SHA ea23f2fView commit details -
fbdev: Add missing dependency on CONFIG_DMA_SHARED_BUFFER
The change that added dma-buf support to fbdev (fbdev: add dma-buf support) didn't correctly list dma-buf as a dependency. List it as a dependency of CONFIG_FB to avoid build errors. Change-Id: I8539b51c36c202a03b04a6888d03e8d28b0a78c4 Signed-off-by: Andreas Sandberg <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for e8c0cf8 - Browse repository at this point
Copy the full SHA e8c0cf8View commit details -
drm/fb_cma_helper: Add support for the fbdev dma-buf API
Add support for the new semi-standard fbdev API for dma-buf exports to user space. Change-Id: I8df10b2d214bb75a0c3f42f4c6ce58da9e9573b8 Signed-off-by: Andreas Sandberg <[email protected]> Reviewed-by: Liviu Dudau <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for ed48cad - Browse repository at this point
Copy the full SHA ed48cadView commit details -
gem5: Enable the HDLCD driver by default on v7
Change-Id: Ib5889feb5af659cecafcdd6ec896c0ca2e6370db Signed-off-by: Andreas Sandberg <[email protected]> Reviewed-by: Liviu Dudau <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 09d200b - Browse repository at this point
Copy the full SHA 09d200bView commit details -
gem5: Update defconfigs with defaults for 4.4
Change-Id: I2b13286c48a095f74c32f80b0338062fa2cb9e9e Signed-off-by: Andreas Sandberg <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 8062a3b - Browse repository at this point
Copy the full SHA 8062a3bView commit details
Commits on Sep 5, 2016
-
gem5: Fix initialization of gem5 GIC extensions
The gem5 GIC extensions weren't initialized correctly after the 4.4 rebase. This was caused by the distributor being initialized before the extensions were probed and enabled. This changeset moves the initialization from the OF-specific initialization code (gic_of_init) to the common path (__gic_init_bases). Change-Id: I31666c787675cddbb26858ec594702075d7775ac Signed-off-by: Andreas Sandberg <[email protected]> Reviewed-by: Geoffrey Blake <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for e16f94e - Browse repository at this point
Copy the full SHA e16f94eView commit details -
drm: Add missing dependency for the component-aware simple encoder
The simple encoder depends on the DRM video mode helpers. Add this as a Kconfig dependency. Change-Id: I9fdc41fa9aca4a1a7ec08f22435086508ec2a133 Signed-off-by: Andreas Sandberg <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 25f51f6 - Browse repository at this point
Copy the full SHA 25f51f6View commit details
Commits on Sep 8, 2016
-
drm/fb_cma_helper: Increase ref count when exporting dma-buf
The fbdev helper that exports a dma-buf to user space didn't correctly increase the reference count of the DRM driver. Increase the reference count if exporting was successful. Change-Id: Id0239e10b7cd46b146dd596f78ee4690910ea747 Signed-off-by: Andreas Sandberg <[email protected]> Reviewed-by: Liviu Dudau <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 2e54922 - Browse repository at this point
Copy the full SHA 2e54922View commit details
Commits on Sep 1, 2017
-
gem5, ARM: Add support for the gem5 energy controller
The energy controller enables DVFS (dynamic voltage and frequency scaling support) of gem5 for up to 32 independent domains (or clusters). The changes are modelled somewhat after the VExpress SPC component, but are specific to gem5. Change-Id: I161913cb72bd9a8515f4e63686452e94ef222106 Signed-off-by: Sascha Bischoff <[email protected]> Reviewed-by: Geoffrey Blake <[email protected]> Signed-off-by: Andreas Sandberg <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 6a5a789 - Browse repository at this point
Copy the full SHA 6a5a789View commit details -
gem5, ARM: Enable the CPUFreq framework and corresponding drivers
In this changeset we enable the CPUFreq framework, as well as the corresponding gem5 drivers, in the gem5_defconfig for arm. We enable the following goverors: * Performance (Default) * Powersave * Userspace * Ondemand * Conservative The default governor is Performance as this will not adjust the frequency, and will leave it at the maximum frequency. Therefore, unless the governor is changed, future simulations should run as before. Change-Id: I02f2bac7e38824a9b4273dce58c1fda512e15176 Signed-off-by: Sascha Bischoff <[email protected]> Reviewed-by: Geoffrey Blake <[email protected]> Signed-off-by: Andreas Sandberg <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 5b15712 - Browse repository at this point
Copy the full SHA 5b15712View commit details -
gem5, ARM64: Enable the CPUFreq framework and corresponding drivers
In this changeset we enable the CPUFreq framework, as well as the corresponding gem5 drivers, in the gem5_defconfig for arm64. We enable the following goverors: * Performance (Default) * Powersave * Userspace * Ondemand * Conservative The default governor is Performance as this will not adjust the frequency, and will leave it at the maximum frequency. Therefore, unless the governor is changed, future simulations should run as before. Change-Id: Iffe1734b92cc0421c2844b0e784b0ba34143d28d Signed-off-by: Sascha Bischoff <[email protected]> Reviewed-by: Geoffrey Blake <[email protected]> Signed-off-by: Andreas Sandberg <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 5c8b411 - Browse repository at this point
Copy the full SHA 5c8b411View commit details