Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

pulling latest linux code #1

Merged
merged 10,000 commits into from
Sep 18, 2014
Merged

pulling latest linux code #1

merged 10,000 commits into from
Sep 18, 2014
This pull request is big! We’re only showing the most recent 250 commits.

Commits on Sep 4, 2014

  1. nohz: Restore NMI safe local irq work for local nohz kick

    The local nohz kick is currently used by perf which needs it to be
    NMI-safe. Recent commit though (7d1311b)
    changed its implementation to fire the local kick using the remote kick
    API. It was convenient to make the code more generic but the remote kick
    isn't NMI-safe.
    
    As a result:
    
    	WARNING: CPU: 3 PID: 18062 at kernel/irq_work.c:72 irq_work_queue_on+0x11e/0x140()
    	CPU: 3 PID: 18062 Comm: trinity-subchil Not tainted 3.16.0+ #34
    	0000000000000009 00000000903774d1 ffff880244e06c00 ffffffff9a7f1e37
    	0000000000000000 ffff880244e06c38 ffffffff9a0791dd ffff880244fce180
    	0000000000000003 ffff880244e06d58 ffff880244e06ef8 0000000000000000
    	Call Trace:
    	<NMI>  [<ffffffff9a7f1e37>] dump_stack+0x4e/0x7a
    	[<ffffffff9a0791dd>] warn_slowpath_common+0x7d/0xa0
    	[<ffffffff9a07930a>] warn_slowpath_null+0x1a/0x20
    	[<ffffffff9a17ca1e>] irq_work_queue_on+0x11e/0x140
    	[<ffffffff9a10a2c7>] tick_nohz_full_kick_cpu+0x57/0x90
    	[<ffffffff9a186cd5>] __perf_event_overflow+0x275/0x350
    	[<ffffffff9a184f80>] ? perf_event_task_disable+0xa0/0xa0
    	[<ffffffff9a01a4cf>] ? x86_perf_event_set_period+0xbf/0x150
    	[<ffffffff9a187934>] perf_event_overflow+0x14/0x20
    	[<ffffffff9a020386>] intel_pmu_handle_irq+0x206/0x410
    	[<ffffffff9a0b54d3>] ? arch_vtime_task_switch+0x63/0x130
    	[<ffffffff9a01937b>] perf_event_nmi_handler+0x2b/0x50
    	[<ffffffff9a007b72>] nmi_handle+0xd2/0x390
    	[<ffffffff9a007aa5>] ? nmi_handle+0x5/0x390
    	[<ffffffff9a0d131b>] ? lock_release+0xab/0x330
    	[<ffffffff9a008062>] default_do_nmi+0x72/0x1c0
    	[<ffffffff9a0c925f>] ? cpuacct_account_field+0xcf/0x200
    	[<ffffffff9a008268>] do_nmi+0xb8/0x100
    
    Lets fix this by restoring the use of local irq work for the nohz local
    kick.
    
    Reported-by: Catalin Iacob <[email protected]>
    Reported-and-tested-by: Dave Jones <[email protected]>
    Cc: Peter Zijlstra <[email protected]>
    Cc: Thomas Gleixner <[email protected]>
    Signed-off-by: Frederic Weisbecker <[email protected]>
    fweisbec committed Sep 4, 2014
    Configuration menu
    Copy the full SHA
    40bea03 View commit details
    Browse the repository at this point in the history
  2. aio: block exit_aio() until all context requests are completed

    It seems that exit_aio() also needs to wait for all iocbs to complete (like
    io_destroy), but we missed the wait step in current implemention, so fix
    it in the same way as we did in io_destroy.
    
    Signed-off-by: Gu Zheng <[email protected]>
    Signed-off-by: Benjamin LaHaise <[email protected]>
    Cc: [email protected]
    Gu Zheng authored and bcrl committed Sep 4, 2014
    Configuration menu
    Copy the full SHA
    6098b45 View commit details
    Browse the repository at this point in the history
  3. Merge git://git.kvack.org/~bcrl/aio-fixes

    Pull aio bugfixes from Ben LaHaise:
     "Two small fixes"
    
    * git://git.kvack.org/~bcrl/aio-fixes:
      aio: block exit_aio() until all context requests are completed
      aio: add missing smp_rmb() in read_events_ring
    torvalds committed Sep 4, 2014
    Configuration menu
    Copy the full SHA
    b7fece1 View commit details
    Browse the repository at this point in the history
  4. drm/nouveau/core: don't leak oclass type bits to user

    Fixes not being able to init fence subsystem when multiple boards are
    present.
    
    Reported-by: Ilia Mirkin <[email protected]>
    Signed-off-by: Ben Skeggs <[email protected]>
    Ben Skeggs committed Sep 4, 2014
    Configuration menu
    Copy the full SHA
    2acc868 View commit details
    Browse the repository at this point in the history
  5. usb: usbip: fix usbip.h path in userspace tool

    Fixes: 588b48c ("usbip: move usbip userspace code out of staging")
    which introduced build failure by not changing uapi/usbip.h include path
    according to new location.
    
    Signed-off-by: Piotr Król <[email protected]>
    Signed-off-by: Greg Kroah-Hartman <[email protected]>
    pietrushnic authored and gregkh committed Sep 4, 2014
    Configuration menu
    Copy the full SHA
    6fa9e1b View commit details
    Browse the repository at this point in the history
  6. Merge branch 'linux-3.17' of git://anongit.freedesktop.org/git/nouvea…

    …u/linux-2.6 into drm-fixes
    
    single fix for nouveau.
    
    * 'linux-3.17' of git://anongit.freedesktop.org/git/nouveau/linux-2.6:
      drm/nouveau/core: don't leak oclass type bits to user
    airlied committed Sep 4, 2014
    Configuration menu
    Copy the full SHA
    68c78bd View commit details
    Browse the repository at this point in the history

Commits on Sep 5, 2014

  1. crypto: drbg - backport "fix maximum value checks on 32 bit systems"

    This is a backport of commit b9347af.
    This backport is needed as without it the code will crash on 32-bit
    systems.
        
    The maximum values for additional input string or generated blocks is
    larger than 1<<32. To ensure a sensible value on 32 bit systems, return
    SIZE_MAX on 32 bit systems. This value is lower than the maximum
    allowed values defined in SP800-90A. The standard allow lower maximum
    values, but not larger values.
    
    SIZE_MAX - 1 is used for drbg_max_addtl to allow
    drbg_healthcheck_sanity to check the enforcement of the variable
    without wrapping.
        
    Reported-by: Stephen Rothwell <[email protected]>
    Reported-by: kbuild test robot <[email protected]>
    Signed-off-by: Herbert Xu <[email protected]>
    herbertx committed Sep 5, 2014
    Configuration menu
    Copy the full SHA
    fb38ab4 View commit details
    Browse the repository at this point in the history
  2. crypto: drbg - remove check for uninitialized DRBG handle

    The drbg_healthcheck() contained a test to call the DRBG with an
    uninitialized DRBG cipher handle. As this is an inappropriate use of the
    kernel crypto API to try to generate random numbers before
    initialization, checks verifying for an initialized DRBG have been
    removed in previous patches.
    
    Now, the drbg_healthcheck test must also be removed.
    
    Changes V2: Added patch marker to email subject line.
    
    Signed-off-by: Stephan Mueller <[email protected]>
    Signed-off-by: Herbert Xu <[email protected]>
    smuellerDD authored and herbertx committed Sep 5, 2014
    Configuration menu
    Copy the full SHA
    78f543a View commit details
    Browse the repository at this point in the history
  3. Merge remote-tracking branches 'regulator/fix/doc' and 'regulator/fix…

    …/tps65090' into regulator-linus
    broonie committed Sep 5, 2014
    Configuration menu
    Copy the full SHA
    a65c866 View commit details
    Browse the repository at this point in the history
  4. Merge branches 'acpica', 'acpi-processor' and 'acpi-scan'

    * acpica:
      ACPICA: ACPI 5.1: Add support for runtime validation of _DSD package.
    
    * acpi-processor:
      ACPI / cpuidle: fix deadlock between cpuidle_lock and cpu_hotplug.lock
    
    * acpi-scan:
      ACPI / scan: not cache _SUN value in struct acpi_device_pnp
    rafaeljw committed Sep 5, 2014
    Configuration menu
    Copy the full SHA
    af4eb14 View commit details
    Browse the repository at this point in the history
  5. Merge branches 'acpi-video' and 'acpi-ec'

    * acpi-video:
      ACPI / video: Disable native_backlight on HP ENVY 15 Notebook PC
      ACPI / video: Add a disable_native_backlight quirk
      ACPI / video: Fix use_native_backlight selection logic
    
    * acpi-ec:
      ACPI / EC: Add msi quirk for Clevo W350etq
    rafaeljw committed Sep 5, 2014
    Configuration menu
    Copy the full SHA
    73f517b View commit details
    Browse the repository at this point in the history
  6. Merge branches 'pm-sleep', 'powercap', 'pm-domains' and 'pm-cpufreq'

    * pm-sleep:
      PM / sleep: Fix test_suspend= command line option
    
    * powercap:
      powercap / RAPL: change domain detection message
      powercap / RAPL: add support for CPU model 0x3f
    
    * pm-domains:
      PM / domains: Make generic_pm_domain.name const
    
    * pm-cpufreq:
      cpufreq: intel_pstate: Remove unneeded variable
    rafaeljw committed Sep 5, 2014
    Configuration menu
    Copy the full SHA
    9aa4e2f View commit details
    Browse the repository at this point in the history
  7. iommu/fsl: Fix warning resulting from adding PCI device twice

    iommu_group_get_for_dev determines the iommu group for the PCI device and adds
    the device to the group.
    
    In the PAMU driver we were again adding the device to the same group without checking
    if the device already had an iommu group. This resulted in the following warning.
    
    sysfs: cannot create duplicate filename '/devices/ffe200000.pcie/pci0000:00/0000:00:00.0/iommu_group'
    ------------[ cut here ]------------
    WARNING: at fs/sysfs/dir.c:31
    Modules linked in:
    CPU: 0 PID: 1 Comm: swapper/0 Not tainted 3.17.0-rc3-00002-g7505cea-dirty #126
    task: c0000001fe0a0000 ti: c0000001fe044000 task.ti: c0000001fe044000
    NIP: c00000000018879c LR: c000000000188798 CTR: c00000000001ea50
    REGS: c0000001fe047040 TRAP: 0700   Not tainted  (3.17.0-rc3-00002-g7505cea-dirty)
    MSR: 0000000080029000 <CE,EE,ME>  CR: 24ad8e22  XER: 20000000
    SOFTE: 1
    GPR00: c000000000188798 c0000001fe0472c0 c0000000009a52e0 0000000000000065
    GPR04: 0000000000000001 0000000000000000 3a30303a00000000 0000000027000000
    GPR08: 2f696f6d00000000 c0000000008d3830 c0000000009b3938 c0000000009bb3d0
    GPR12: 0000000028ad8e24 c00000000fff4000 c00000000000205c 0000000000000000
    GPR16: 0000000000000000 0000000000000000 0000000000000000 0000000000000000
    GPR20: 0000000000000000 0000000000000000 0000000000000000 c0000000008a4c70
    GPR24: c0000000007e9010 c0000001fe0140a8 ffffffffffffffef 0000000000000001
    GPR28: c0000001fe22ebb8 c0000000007e9010 c00000000090bf10 c0000001fe220000
    NIP [c00000000018879c] .sysfs_warn_dup+0x74/0xa4
    LR [c000000000188798] .sysfs_warn_dup+0x70/0xa4
    Call Trace:
    [c0000001fe0472c0] [c000000000188798] .sysfs_warn_dup+0x70/0xa4 (unreliable)
    [c0000001fe047350] [c000000000188d34] .sysfs_do_create_link_sd.clone.2+0x168/0x174
    [c0000001fe047400] [c0000000004b3cf8] .iommu_group_add_device+0x78/0x244
    [c0000001fe0474b0] [c0000000004b6964] .fsl_pamu_add_device+0x88/0x1a8
    [c0000001fe047570] [c0000000004b3960] .iommu_bus_notifier+0xdc/0x15c
    [c0000001fe047600] [c000000000059848] .notifier_call_chain+0x8c/0xe8
    [c0000001fe0476a0] [c000000000059d04] .__blocking_notifier_call_chain+0x58/0x84
    [c0000001fe047750] [c00000000036619c] .device_add+0x464/0x5c8
    [c0000001fe047820] [c000000000300ebc] .pci_device_add+0x14c/0x17c
    [c0000001fe0478c0] [c000000000300fbc] .pci_scan_single_device+0xd0/0xf4
    [c0000001fe047970] [c00000000030104c] .pci_scan_slot+0x6c/0x18c
    [c0000001fe047a10] [c00000000030226c] .pci_scan_child_bus+0x40/0x114
    [c0000001fe047ac0] [c000000000021974] .pcibios_scan_phb+0x240/0x2c8
    [c0000001fe047b70] [c00000000085a970] .pcibios_init+0x64/0xc8
    [c0000001fe047c00] [c000000000001884] .do_one_initcall+0xbc/0x224
    [c0000001fe047d00] [c000000000852d50] .kernel_init_freeable+0x14c/0x21c
    [c0000001fe047db0] [c000000000002078] .kernel_init+0x1c/0xfa4
    [c0000001fe047e30] [c000000000000884] .ret_from_kernel_thread+0x58/0xd4
    Instruction dump:
    7c7f1b79 4182001c 7fe4fb78 7f83e378 38a01000 4bffc905 60000000 7c641b78
    e87e8008 7fa5eb78 48482ff5 60000000 <0fe00000> 7fe3fb78 4bf7bd39 60000000
    
    Signed-off-by: Varun Sethi <[email protected]>
    Cc: [email protected]
    Signed-off-by: Joerg Roedel <[email protected]>
    varunfsl authored and joergroedel committed Sep 5, 2014
    Configuration menu
    Copy the full SHA
    5a9137a View commit details
    Browse the repository at this point in the history
  8. usb: dwc3: fix TRB completion when multiple TRBs are started

    After commit 2ec2a8b (usb: dwc3: gadget:
    always enable IOC on bulk/interrupt transfers)
    we created a situation where it was possible to
    hang a bulk/interrupt endpoint if we had more
    than one pending request in our queue and they
    were both started with a single Start Transfer
    command.
    
    The problems triggers because we had not enabled
    Transfer In Progress event for those endpoints
    and we were not able to process early giveback
    of requests completed without LST bit set.
    
    Fix the problem by finally enabling Xfer In Progress
    event for all endpoint types, except control.
    
    Fixes: 2ec2a8b (usb: dwc3: gadget: always
    	enable IOC on bulk/interrupt transfers)
    Cc: <[email protected]> # v3.14+
    Reported-by: Pratyush Anand <[email protected]>
    Signed-off-by: Felipe Balbi <[email protected]>
    Felipe Balbi committed Sep 5, 2014
    Configuration menu
    Copy the full SHA
    0b93a4c View commit details
    Browse the repository at this point in the history
  9. Merge branch 'drm-fixes' of git://people.freedesktop.org/~airlied/linux

    Pull drm fixes from Dave Airlie:
     - i915 fixes: a few display regressions
     - vmwgfx: possible loop forever fix
     - nouveau: one userspace interface fix
    
    * 'drm-fixes' of git://people.freedesktop.org/~airlied/linux:
      drm/nouveau/core: don't leak oclass type bits to user
      drm/i915: Fix lock dropping in intel_tv_detect()
      drm/i915: handle G45/GM45 pulse detection connected state.
      drm/vmwgfx: Fix a potential infinite spin waiting for fifo idle
      drm/vmwgfx: Fix an incorrect OOM return value
      drm/i915: Remove bogus __init annotation from DMI callbacks
      drm/i915: don't warn if backlight unexpectedly enabled
      drm/i915: Move intel_ddi_set_vc_payload_alloc(false) to haswell_crtc_disable()
      drm/i915: fix plane/cursor handling when runtime suspended
      drm/i915: Ignore VBT backlight presence check on Acer C720 (4005U)
    torvalds committed Sep 5, 2014
    Configuration menu
    Copy the full SHA
    caa5523 View commit details
    Browse the repository at this point in the history
  10. Merge tag 'gpio-v3.17-3' of git://git.kernel.org/pub/scm/linux/kernel…

    …/git/linusw/linux-gpio
    
    Pull GPIO fixes from Linus Walleij:
     - some documentation sync
     - resource leak in the bt8xx driver
     - again fix the way varargs are used to handle the optional flags on
       the gpiod_* accessors.  Now hopefully nailed the entire problem.
    
    * tag 'gpio-v3.17-3' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-gpio:
      gpio: move varargs hack outside #ifdef GPIOLIB
      gpio: bt8xx: fix release of managed resources
      Documentation: gpio: documentation for optional getters functions
    torvalds committed Sep 5, 2014
    Configuration menu
    Copy the full SHA
    5e6c723 View commit details
    Browse the repository at this point in the history
  11. Merge tag 'omap-fixes-against-v3.17-rc3' of git://git.kernel.org/pub/…

    …scm/linux/kernel/git/tmlind/linux-omap into fixes
    
    Merge "omap fixes against v3.17-rc3" from Tony Lindgren:
    
    Few fixes for omaps mostly for various devices to get them working
    properly on the new am437x and dra7 hardware for several devices
    such as I2C, NAND, DDR3 and USB. There's also a clock fix for omap3.
    
    And also included are two minor cosmetic fixes that are not
    stictly fixes for the new hardware support added recently to
    downgrade a GPMC warning into a debug statement, and fix the
    confusing comments for dra7-evm spi1 mux.
    
    Note that these are all .dts changes except for a GPMC change.
    
    * tag 'omap-fixes-against-v3.17-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap: (255 commits)
      ARM: dts: dra7-evm: Add vtt regulator support
      ARM: dts: dra7-evm: Fix spi1 mux documentation
      ARM: dts: am43x-epos-evm: Disable QSPI to prevent conflict with GPMC-NAND
      ARM: OMAP2+: gpmc: Don't complain if wait pin is used without r/w monitoring
      ARM: dts: am43xx-epos-evm: Don't use read/write wait monitoring
      ARM: dts: am437x-gp-evm: Don't use read/write wait monitoring
      ARM: dts: am437x-gp-evm: Use BCH16 ECC scheme instead of BCH8
      ARM: dts: am43x-epos-evm: Use BCH16 ECC scheme instead of BCH8
      ARM: dts: am4372: fix USB regs size
      ARM: dts: am437x-gp: switch i2c0 to 100KHz
      ARM: dts: dra7-evm: Fix 8th NAND partition's name
      ARM: dts: dra7-evm: Fix i2c3 pinmux and frequency
      Linux 3.17-rc3
      ...
    
    Signed-off-by: Kevin Hilman <[email protected]>
    Kevin Hilman committed Sep 5, 2014
    Configuration menu
    Copy the full SHA
    95f6e81 View commit details
    Browse the repository at this point in the history
  12. Merge tag 'regulator-v3.17-rc3' of git://git.kernel.org/pub/scm/linux…

    …/kernel/git/broonie/regulator
    
    Pull regulator documentation fixes from Mark Brown:
     "All the fixes people have found for the regulator API have been
      documentation fixes, avoiding warnings while building the kerneldoc,
      fixing some errors in one of the DT bindings documents and fixing some
      typos in the header"
    
    * tag 'regulator-v3.17-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regulator:
      regulator: fix kernel-doc warnings in header files
      regulator: Proofread documentation
      regulator: tps65090: Fix tps65090 typos in example
    torvalds committed Sep 5, 2014
    Configuration menu
    Copy the full SHA
    8e6353b View commit details
    Browse the repository at this point in the history
  13. Export sync_filesystem() for modular ->remount_fs() use

    This patch changes sync_filesystem() to be EXPORT_SYMBOL().
    
    The reason this is needed is that starting with 3.15 kernel, due to
    Theodore Ts'o's commit 02b9984 ("fs: push sync_filesystem() down to
    the file system's remount_fs()"), all file systems that have dirty data
    to be written out need to call sync_filesystem() from their
    ->remount_fs() method when remounting read-only.
    
    As this is now a generically required function rather than an internal
    only function it should be EXPORT_SYMBOL() so that all file systems can
    call it.
    
    Signed-off-by: Anton Altaparmakov <[email protected]>
    Acked-by: Andrew Morton <[email protected]>
    Signed-off-by: Linus Torvalds <[email protected]>
    Anton Altaparmakov authored and torvalds committed Sep 5, 2014
    Configuration menu
    Copy the full SHA
    10096fb View commit details
    Browse the repository at this point in the history
  14. mm: memcontrol: revert use of root_mem_cgroup res_counter

    Dave Hansen reports a massive scalability regression in an uncontained
    page fault benchmark with more than 30 concurrent threads, which he
    bisected down to 05b8430 ("mm: memcontrol: use root_mem_cgroup
    res_counter") and pin-pointed on res_counter spinlock contention.
    
    That change relied on the per-cpu charge caches to mostly swallow the
    res_counter costs, but it's apparent that the caches don't scale yet.
    
    Revert memcg back to bypassing res_counters on the root level in order
    to restore performance for uncontained workloads.
    
    Reported-by: Dave Hansen <[email protected]>
    Signed-off-by: Johannes Weiner <[email protected]>
    Tested-by: Dave Hansen <[email protected]>
    Acked-by: Michal Hocko <[email protected]>
    Acked-by: Vladimir Davydov <[email protected]>
    Signed-off-by: Linus Torvalds <[email protected]>
    hnaz authored and torvalds committed Sep 5, 2014
    Configuration menu
    Copy the full SHA
    ce00a96 View commit details
    Browse the repository at this point in the history
  15. ARM: at91/dt: sam9g20: set at91sam9g20 pllb driver

    The at91sam9g20 SOC uses its own pllb implementation which is different
    from the one inherited from at91sam9260 SOC.
    
    Signed-off-by: Gaël PORTAY <[email protected]>
    Acked-by: Boris Brezillon <[email protected]>
    Signed-off-by: Nicolas Ferre <[email protected]>
    gportay authored and Nicolas Ferre committed Sep 5, 2014
    Configuration menu
    Copy the full SHA
    650ca01 View commit details
    Browse the repository at this point in the history
  16. ARM: at91: rm9200: fix clock registration

    Actually register clocks from device tree when using the common clock
    framework.
    
    Signed-off-by: Alexandre Belloni <[email protected]>
    Acked-by: Boris Brezillon <[email protected]>
    [[email protected]: add at91 to function name]
    Signed-off-by: Nicolas Ferre <[email protected]>
    alexandrebelloni authored and Nicolas Ferre committed Sep 5, 2014
    Configuration menu
    Copy the full SHA
    04ffc96 View commit details
    Browse the repository at this point in the history
  17. ARM: at91/dt: rm9200: fix usb clock definition

    The atmel,clk-divisors property is taking 4 divisors, if less are
    provided, the clock registration will fail.
    
    Signed-off-by: Alexandre Belloni <[email protected]>
    Signed-off-by: Nicolas Ferre <[email protected]>
    alexandrebelloni authored and Nicolas Ferre committed Sep 5, 2014
    Configuration menu
    Copy the full SHA
    ea4fc62 View commit details
    Browse the repository at this point in the history
  18. Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel…

    …/git/geert/linux-m68k
    
    Pull m68k updates from Geert Uytterhoeven:
     "Wire up new syscalls getrandom and memfd_create"
    
    * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/geert/linux-m68k:
      m68k: Wire up memfd_create
      m68k: Wire up getrandom
    torvalds committed Sep 5, 2014
    Configuration menu
    Copy the full SHA
    fb76234 View commit details
    Browse the repository at this point in the history
  19. ahci: add pcid for Marvel 0x9182 controller

    Keystone K2E EVM uses Marvel 0x9182 controller. This requires support
    for the ID in the ahci driver.
    
    Signed-off-by: Murali Karicheri <[email protected]>
    Signed-off-by: Tejun Heo <[email protected]>
    Cc: Santosh Shilimkar <[email protected]>
    Cc: [email protected]
    Murali Karicheri authored and htejun committed Sep 5, 2014
    Configuration menu
    Copy the full SHA
    c5edfff View commit details
    Browse the repository at this point in the history
  20. VMXNET3: Check for map error in vmxnet3_set_mc

    We should check if the map of the table actually succeeds, and also free
    resources accordingly.
    
    Version bumped to 1.2.1.0
    
    Acked-by: Shelley Gong <[email protected]>
    Acked-by: Bhavesh Davda <[email protected]>
    Signed-off-by: Andy King <[email protected]>
    Reported-by: Tetsuo Handa <[email protected]>
    Signed-off-by: David S. Miller <[email protected]>
    Andy King authored and davem330 committed Sep 5, 2014
    Configuration menu
    Copy the full SHA
    4ad9a64 View commit details
    Browse the repository at this point in the history
  21. ipv6: fix rtnl locking in setsockopt for anycast and multicast

    Calling setsockopt with IPV6_JOIN_ANYCAST or IPV6_LEAVE_ANYCAST
    triggers the assertion in addrconf_join_solict()/addrconf_leave_solict()
    
    ipv6_sock_ac_join(), ipv6_sock_ac_drop(), ipv6_sock_ac_close() need to
    take RTNL before calling ipv6_dev_ac_inc/dec. Same thing with
    ipv6_sock_mc_join(), ipv6_sock_mc_drop(), ipv6_sock_mc_close() before
    calling ipv6_dev_mc_inc/dec.
    
    This patch moves ASSERT_RTNL() up a level in the call stack.
    
    Signed-off-by: Cong Wang <[email protected]>
    Signed-off-by: Sabrina Dubroca <[email protected]>
    Reported-by: Tommi Rantala <[email protected]>
    Acked-by: Hannes Frederic Sowa <[email protected]>
    Signed-off-by: David S. Miller <[email protected]>
    qsn authored and davem330 committed Sep 5, 2014
    Configuration menu
    Copy the full SHA
    a9ed4a2 View commit details
    Browse the repository at this point in the history
  22. bus: arm-ccn: Move event cleanup routine

    The function cleaning up an initialized event
    was called from the "event_del" handler, instead
    of being used as the "destroy" callback. In case of
    events group allocation this caused NULL pointer
    dereference (as events are added and deleted
    multiple times then). Fixed now.
    
    Signed-off-by: Pawel Moll <[email protected]>
    Signed-off-by: Kevin Hilman <[email protected]>
    Pawel Moll authored and Kevin Hilman committed Sep 5, 2014
    Configuration menu
    Copy the full SHA
    8fb2226 View commit details
    Browse the repository at this point in the history
  23. Merge tag 'at91-fixes' of git://github.com/at91linux/linux-at91 into …

    …fixes
    
    Merge "at91: fixes for 3.17 #1" from Nicols Ferre:
    
    First AT91 fixes batch for 3.17:
    - compatibility string precision
    - clock registration and USB DT fix for at91rm9200
    
    * tag 'at91-fixes' of git://github.com/at91linux/linux-at91:
      ARM: at91/dt: rm9200: fix usb clock definition
      ARM: at91: rm9200: fix clock registration
      ARM: at91/dt: sam9g20: set at91sam9g20 pllb driver
    
    Signed-off-by: Kevin Hilman <[email protected]>
    Kevin Hilman committed Sep 5, 2014
    Configuration menu
    Copy the full SHA
    3897108 View commit details
    Browse the repository at this point in the history
  24. Merge branch 'i2c/for-current' of git://git.kernel.org/pub/scm/linux/…

    …kernel/git/wsa/linux
    
    Pull i2c bugfixes from Wolfram Sang:
     "I2C driver bugfixes for the 3.17 release.  Details can be found in the
      commit messages, yet I think this is typical driver stuff"
    
    * 'i2c/for-current' of git://git.kernel.org/pub/scm/linux/kernel/git/wsa/linux:
      Revert "i2c: rcar: remove spinlock"
      i2c: at91: add bound checking on SMBus block length bytes
      i2c: rk3x: fix bug that cause transfer fails in master receive mode
      i2c: at91: Fix a race condition during signal handling in at91_do_twi_xfer.
      i2c: mv64xxx: continue probe when clock-frequency is missing
      i2c: rcar: fix MNR interrupt handling
    torvalds committed Sep 5, 2014
    Configuration menu
    Copy the full SHA
    86ba8b0 View commit details
    Browse the repository at this point in the history
  25. l2tp: fix race while getting PMTU on PPP pseudo-wire

    Use dst_entry held by sk_dst_get() to retrieve tunnel's PMTU.
    
    The dst_mtu(__sk_dst_get(tunnel->sock)) call was racy. __sk_dst_get()
    could return NULL if tunnel->sock->sk_dst_cache was reset just before the
    call, thus making dst_mtu() dereference a NULL pointer:
    
    [ 1937.661598] BUG: unable to handle kernel NULL pointer dereference at 0000000000000020
    [ 1937.664005] IP: [<ffffffffa049db88>] pppol2tp_connect+0x33d/0x41e [l2tp_ppp]
    [ 1937.664005] PGD daf0c067 PUD d9f93067 PMD 0
    [ 1937.664005] Oops: 0000 [#1] SMP
    [ 1937.664005] Modules linked in: l2tp_ppp l2tp_netlink l2tp_core ip6table_filter ip6_tables iptable_filter ip_tables ebtable_nat ebtables x_tables udp_tunnel pppoe pppox ppp_generic slhc deflate ctr twofish_generic twofish_x86_64_3way xts lrw gf128mul glue_helper twofish_x86_64 twofish_common blowfish_generic blowfish_x86_64 blowfish_common des_generic cbc xcbc rmd160 sha512_generic hmac crypto_null af_key xfrm_algo 8021q garp bridge stp llc tun atmtcp clip atm ext3 mbcache jbd iTCO_wdt coretemp kvm_intel iTCO_vendor_support kvm pcspkr evdev ehci_pci lpc_ich mfd_core i5400_edac edac_core i5k_amb shpchp button processor thermal_sys xfs crc32c_generic libcrc32c dm_mod usbhid sg hid sr_mod sd_mod cdrom crc_t10dif crct10dif_common ata_generic ahci ata_piix tg3 libahci libata uhci_hcd ptp ehci_hcd pps_core usbcore scsi_mod libphy usb_common [last unloaded: l2tp_core]
    [ 1937.664005] CPU: 0 PID: 10022 Comm: l2tpstress Tainted: G           O   3.17.0-rc1 #1
    [ 1937.664005] Hardware name: HP ProLiant DL160 G5, BIOS O12 08/22/2008
    [ 1937.664005] task: ffff8800d8fda790 ti: ffff8800c43c4000 task.ti: ffff8800c43c4000
    [ 1937.664005] RIP: 0010:[<ffffffffa049db88>]  [<ffffffffa049db88>] pppol2tp_connect+0x33d/0x41e [l2tp_ppp]
    [ 1937.664005] RSP: 0018:ffff8800c43c7de8  EFLAGS: 00010282
    [ 1937.664005] RAX: ffff8800da8a7240 RBX: ffff8800d8c64600 RCX: 000001c325a137b5
    [ 1937.664005] RDX: 8c6318c6318c6320 RSI: 000000000000010c RDI: 0000000000000000
    [ 1937.664005] RBP: ffff8800c43c7ea8 R08: 0000000000000000 R09: 0000000000000000
    [ 1937.664005] R10: ffffffffa048e2c0 R11: ffff8800d8c64600 R12: ffff8800ca7a5000
    [ 1937.664005] R13: ffff8800c439bf40 R14: 000000000000000c R15: 0000000000000009
    [ 1937.664005] FS:  00007fd7f610f700(0000) GS:ffff88011a600000(0000) knlGS:0000000000000000
    [ 1937.664005] CS:  0010 DS: 0000 ES: 0000 CR0: 000000008005003b
    [ 1937.664005] CR2: 0000000000000020 CR3: 00000000d9d75000 CR4: 00000000000027e0
    [ 1937.664005] Stack:
    [ 1937.664005]  ffffffffa049da80 ffff8800d8fda790 000000000000005b ffff880000000009
    [ 1937.664005]  ffff8800daf3f200 0000000000000003 ffff8800c43c7e48 ffffffff81109b57
    [ 1937.664005]  ffffffff81109b0e ffffffff8114c566 0000000000000000 0000000000000000
    [ 1937.664005] Call Trace:
    [ 1937.664005]  [<ffffffffa049da80>] ? pppol2tp_connect+0x235/0x41e [l2tp_ppp]
    [ 1937.664005]  [<ffffffff81109b57>] ? might_fault+0x9e/0xa5
    [ 1937.664005]  [<ffffffff81109b0e>] ? might_fault+0x55/0xa5
    [ 1937.664005]  [<ffffffff8114c566>] ? rcu_read_unlock+0x1c/0x26
    [ 1937.664005]  [<ffffffff81309196>] SYSC_connect+0x87/0xb1
    [ 1937.664005]  [<ffffffff813e56f7>] ? sysret_check+0x1b/0x56
    [ 1937.664005]  [<ffffffff8107590d>] ? trace_hardirqs_on_caller+0x145/0x1a1
    [ 1937.664005]  [<ffffffff81213dee>] ? trace_hardirqs_on_thunk+0x3a/0x3f
    [ 1937.664005]  [<ffffffff8114c262>] ? spin_lock+0x9/0xb
    [ 1937.664005]  [<ffffffff813092b4>] SyS_connect+0x9/0xb
    [ 1937.664005]  [<ffffffff813e56d2>] system_call_fastpath+0x16/0x1b
    [ 1937.664005] Code: 10 2a 84 81 e8 65 76 bd e0 65 ff 0c 25 10 bb 00 00 4d 85 ed 74 37 48 8b 85 60 ff ff ff 48 8b 80 88 01 00 00 48 8b b8 10 02 00 00 <48> 8b 47 20 ff 50 20 85 c0 74 0f 83 e8 28 89 83 10 01 00 00 89
    [ 1937.664005] RIP  [<ffffffffa049db88>] pppol2tp_connect+0x33d/0x41e [l2tp_ppp]
    [ 1937.664005]  RSP <ffff8800c43c7de8>
    [ 1937.664005] CR2: 0000000000000020
    [ 1939.559375] ---[ end trace 82d44500f28f8708 ]---
    
    Fixes: f34c4a3 ("l2tp: take PMTU from tunnel UDP socket")
    Signed-off-by: Guillaume Nault <[email protected]>
    Acked-by: Eric Dumazet <[email protected]>
    Signed-off-by: David S. Miller <[email protected]>
    Guillaume Nault authored and davem330 committed Sep 5, 2014
    Configuration menu
    Copy the full SHA
    eed4d83 View commit details
    Browse the repository at this point in the history
  26. drivers/net/fddi/skfp/h/skfbi.h: Remove useless PCI_BASE_2ND macros

    They are use less, and may generate compiling warnings, so remove them
    (microblaze, arc, arm64, and unicore32 have already defined PCI_IOBASE).
    
    The related warnings (with allmodconfig under microblaze):
    
      CC [M]  drivers/net/fddi/skfp/skfddi.o
      In file included from drivers/net/fddi/skfp/skfddi.c:95:0:
      drivers/net/fddi/skfp/h/skfbi.h:151:0: warning: "PCI_IOBASE" redefined
       #define PCI_IOBASE 0xffffff00L  /* Bit 31..8:  I/O Base address */
       ^
      In file included from include/linux/io.h:22:0,
                       from include/linux/pci.h:31,
                       from drivers/net/fddi/skfp/skfddi.c:82:
      ./arch/microblaze/include/asm/io.h:33:0: note: this is the location of the previous definition
       #define PCI_IOBASE ((void __iomem *)_IO_BASE)
       ^
    
    Signed-off-by: Chen Gang <[email protected]>
    Signed-off-by: David S. Miller <[email protected]>
    Chen-Gang authored and davem330 committed Sep 5, 2014
    Configuration menu
    Copy the full SHA
    4357450 View commit details
    Browse the repository at this point in the history
  27. net-timestamp: only report sw timestamp if reporting bit is set

    The timestamping API has separate bits for generating and reporting
    timestamps. A software timestamp should only be reported for a packet
    when the packet has the relevant generation flag (SKBTX_..) set
    and the socket has reporting bit SOF_TIMESTAMPING_SOFTWARE set.
    
    The second check was accidentally removed. Reinstitute the original
    behavior.
    
    Tested:
      Without this patch, Documentation/networking/txtimestamp reports
      timestamps regardless of whether SOF_TIMESTAMPING_SOFTWARE is set.
      After the patch, it only reports them when the flag is set.
    
    Fixes: f24b9be ("net-timestamp: extend SCM_TIMESTAMPING ancillary data struct")
    Signed-off-by: Willem de Bruijn <[email protected]>
    Signed-off-by: David S. Miller <[email protected]>
    wdebruij authored and davem330 committed Sep 5, 2014
    Configuration menu
    Copy the full SHA
    c199105 View commit details
    Browse the repository at this point in the history

Commits on Sep 6, 2014

  1. ipv6: fix a refcnt leak with peer addr

    There is no reason to take a refcnt before deleting the peer address route.
    It's done some lines below for the local prefix route because
    inet6_ifa_finish_destroy() will release it at the end.
    For the peer address route, we want to free it right now.
    
    This bug has been introduced by commit
    caeaba7 ("ipv6: add support of peer address").
    
    Signed-off-by: Nicolas Dichtel <[email protected]>
    Acked-by: Hannes Frederic Sowa <[email protected]>
    Signed-off-by: David S. Miller <[email protected]>
    NicolasDichtel authored and davem330 committed Sep 6, 2014
    Configuration menu
    Copy the full SHA
    f24062b View commit details
    Browse the repository at this point in the history
  2. ipv6: use addrconf_get_prefix_route() to remove peer addr

    addrconf_get_prefix_route() ensures to get the right route in the right table.
    
    Signed-off-by: Nicolas Dichtel <[email protected]>
    Acked-by: Hannes Frederic Sowa <[email protected]>
    Signed-off-by: David S. Miller <[email protected]>
    NicolasDichtel authored and davem330 committed Sep 6, 2014
    Configuration menu
    Copy the full SHA
    e7478df View commit details
    Browse the repository at this point in the history
  3. netfilter: add explicit Kconfig for NETFILTER_XT_NAT

    Paul Bolle reports that 'select NETFILTER_XT_NAT' from the IPV4 and IPV6
    NAT tables becomes noop since there is no Kconfig switch for it. Add the
    Kconfig switch to resolve this problem.
    
    Fixes: 8993cf8 netfilter: move NAT Kconfig switches out of the iptables scope
    Reported-by: Paul Bolle <[email protected]>
    Signed-off-by: Pablo Neira Ayuso <[email protected]>
    Signed-off-by: David S. Miller <[email protected]>
    ummakynes authored and davem330 committed Sep 6, 2014
    Configuration menu
    Copy the full SHA
    84a59ca View commit details
    Browse the repository at this point in the history
  4. 3c59x: avoid panic in boomerang_start_xmit when finding page address:

    This bug was reported on a very old kernel (RHEL6, 2.6.32-491.el6):
    
    BUG: unable to handle kernel paging request at 00800000
    IP: [<c04107b5>] nommu_map_page+0x15/0x110
    *pdpt = 000000003454f001 *pde = 000000003f03d067
    Oops: 0000 [#1] SMP
    last sysfs file: /sys/devices/system/cpu/online
    Modules linked in: nfsd lockd nfs_acl auth_rpcgss sunrpc exportfs p4_clockmod
    ipv6 ppdev parport_pc parport microcode iTCO_wdt iTCO_vendor_support 3c59x mii
    dcdbas serio_raw snd_intel8x0 snd_ac97_codec ac97_bus snd_seq snd_seq_device
    snd_pcm snd_timer snd soundcore snd_page_alloc i2c_i801 sg lpc_ich mfd_core ext4
    jbd2 mbcache sr_mod cdrom sd_mod crc_t10dif pata_acpi ata_generic ata_piix
    radeon ttm drm_kms_helper drm i2c_algo_bit i2c_core dm_mirror dm_region_hash
    dm_log dm_mod [last unloaded: mperf]
    
    Pid: 4219, comm: nfsd Not tainted 2.6.32-491.el6.i686 #1 Dell Computer
    Corporation OptiPlex GX240               /OptiPlex GX240
    EIP: 0060:[<c04107b5>] EFLAGS: 00010246 CPU: 0
    EIP is at nommu_map_page+0x15/0x110
    EAX: 00000000 EBX: c0a83480 ECX: 00000000 EDX: 00800000
    ESI: 00000000 EDI: f70e7860 EBP: e2d09b54 ESP: e2d09b24
     DS: 007b ES: 007b FS: 00d8 GS: 00e0 SS: 0068
    Process nfsd (pid: 4219, ti=e2d08000 task=e2ceaaa0 task.ti=e2d08000)
    Stack:
     00000056 00000000 0000000e c65efd38 00000020 00000296 00000206 00000206
    <0> c050c85 c0a83480 e2cef154 00000001 e2d09ba8 f8fcd585 00000510 00000001
    <0> 00000000 00000000 f5172200 f8fdac00 0039ef8c f5277020 f70e7860 00000510
    Call Trace:
     [<c050c850>] ? page_address+0xd0/0xe0
     [<f8fcd585>] ? boomerang_start_xmit+0x3b5/0x520 [3c59x]
     [<c07b2975>] ? dev_hard_start_xmit+0xe5/0x400
     [<f9182b00>] ? ip6_output_finish+0x0/0xf0 [ipv6]
     [<c07ca053>] ? sch_direct_xmit+0x113/0x180
     [<c07d5588>] ? nf_hook_slow+0x68/0x120
     [<c07b2ea5>] ? dev_queue_xmit+0x1b5/0x290
     [<f9182b6d>] ? ip6_output_finish+0x6d/0xf0 [ipv6]
     [<f9184cb8>] ? ip6_xmit+0x3e8/0x490 [ipv6]
     [<f91ab9f9>] ? inet6_csk_xmit+0x289/0x2f0 [ipv6]
     [<c07f6451>] ? tcp_transmit_skb+0x431/0x7f0
     [<c07a403f>] ? __alloc_skb+0x4f/0x140
     [<c07f85a2>] ? tcp_write_xmit+0x1c2/0xa50
     [<c07f90b1>] ? __tcp_push_pending_frames+0x31/0xe0
     [<c07ea47a>] ? tcp_sendpage+0x44a/0x4b0
     [<c07ea030>] ? tcp_sendpage+0x0/0x4b0
     [<c079be1e>] ? kernel_sendpage+0x4e/0x90
     [<f8457bb9>] ? svc_send_common+0xc9/0x120 [sunrpc]
     [<f8457c85>] ? svc_sendto+0x75/0x1f0 [sunrpc]
     [<c060d0d9>] ? _atomic_dec_and_lock+0x59/0x90
     [<f87d55d0>] ? nfs3svc_encode_readres+0x0/0xc0 [nfsd]
     [<f845876d>] ? svc_authorise+0x2d/0x40 [sunrpc]
     [<f87d4410>] ? nfs3svc_release_fhandle+0x0/0x10 [nfsd]
     [<f8455721>] ? svc_process_common+0xf1/0x5a0 [sunrpc]
     [<f8457e86>] ? svc_tcp_sendto+0x36/0xa0 [sunrpc]
     [<f8461778>] ? svc_send+0x98/0xd0 [sunrpc]
     [<f87c698c>] ? nfsd+0xac/0x140 [nfsd]
     [<c04470e0>] ? complete+0x40/0x60
     [<f87c68e0>] ? nfsd+0x0/0x140 [nfsd]
     [<c04802ac>] ? kthread+0x7c/0xa0
     [<c0480230>] ? kthread+0x0/0xa0
     [<c0409f9f>] ? kernel_thread_helper+0x7/0x10
    Code: 8d b6 00 00 00 00 eb f8 8d b4 26 00 00 00 00 8d bc 27 00 00 00 00 55 89 e5
    83 ec 30 89 75 f8 31 f6 89 7d fc 89 c7 89 c8 89 5d f4 <8b> 1a 8b 4d 08 c1 eb 19
    c1 e3 04 8b 9b c0 29 c7 c0 83 e3 fc 29
    
    But the problem seems to still exist upstream.  It seems on 32 bit kernels
    page_address() can reutrn a NULL value in some circumstances, and the
    pci_map_single api isn't prepared to handle that (on this system it results in a
    bogus pointer deference in nommu_map_page.
    
    The fix is pretty easy, if we convert the 3c59x driver to use the more
    convieient skb_frag_dma_map api we don't need to find the virtual address of the
    page at all, and page gets mapped to the hardware properly.  Verified to fix the
    problem as described by the reporter.
    
    Applies to the net tree
    
    Change Notes:
    
    v2) Converted PCI_DMA_TODEVICE to DMA_TO_DEVICE.  Thanks Dave!
    
    v3) Actually Run git commit after making changes to v2 :)
    
    Signed-off-by: Neil Horman <[email protected]>
    CC: [email protected]
    CC: "David S. Miller" <[email protected]>
    Signed-off-by: David S. Miller <[email protected]>
    nhorman authored and davem330 committed Sep 6, 2014
    Configuration menu
    Copy the full SHA
    98ea232 View commit details
    Browse the repository at this point in the history
  5. bnx2x: Fix link problems for 1G SFP RJ45 module

    When 1G SFP RJ45 module is detected, driver must reset the Tx laser
    in order to prevent link issues. As part of change, the link_attr_sync
    was relocated from vars to params.
    
    Signed-off-by: Yaniv Rosner <[email protected]>
    Signed-off-by: Yuval Mintz <[email protected]>
    Signed-off-by: David S. Miller <[email protected]>
    Yaniv Rosner authored and davem330 committed Sep 6, 2014
    Configuration menu
    Copy the full SHA
    6e9e564 View commit details
    Browse the repository at this point in the history
  6. net: treewide: Fix typo found in DocBook/networking.xml

    This patch fix spelling typo found in DocBook/networking.xml.
    It is because the neworking.xml is generated from comments
    in the source, I have to fix typo in comments within the source.
    
    Signed-off-by: Masanari Iida <[email protected]>
    Acked-by: Randy Dunlap <[email protected]>
    Signed-off-by: David S. Miller <[email protected]>
    standby24x7 authored and davem330 committed Sep 6, 2014
    Configuration menu
    Copy the full SHA
    e793c0f View commit details
    Browse the repository at this point in the history
  7. ahci_xgene: Skip the PHY and clock initialization if already configur…

    …ed by the firmware.
    
    This patch implements the feature to skip the PHY and clock
    initialization if it is already configured by the firmware.
    
    Signed-off-by: Loc Ho <[email protected]>
    Signed-off-by: Suman Tripathi <[email protected]>
    Signed-off-by: Tejun Heo <[email protected]>
    suman-tripathi authored and htejun committed Sep 6, 2014
    Configuration menu
    Copy the full SHA
    0bed13b View commit details
    Browse the repository at this point in the history
  8. ahci_xgene: Fix the link down in first attempt for the APM X-Gene SoC…

    … AHCI SATA host controller driver.
    
    Due to HW errata the APM X-Gene AHCI SATA host controller reports link
    down even if the device presence is detected. This issue is due to speed
    negotiation failure. This patch implements the algorithm to retry the
    COMRESET if PxSTAT register reports device presence detected but
    PHY communication not established. The maximum retry attempts are 3.
    
    This patch also fixes the code to match the algorithm for the printing
    a warning message if the disparity error still exists after link up.
    
    Signed-off-by: Loc Ho <[email protected]>
    Signed-off-by: Suman Tripathi <[email protected]>
    Signed-off-by: Tejun Heo <[email protected]>
    suman-tripathi authored and htejun committed Sep 6, 2014
    Configuration menu
    Copy the full SHA
    0babe61 View commit details
    Browse the repository at this point in the history
  9. cnic : Cleanup CONFIG_IPV6 & VLAN check

    The cnic module needs to ensure that if ipv6 support is compiled as a module,
    then the cnic module cannot be compiled as built-in as it depends on ipv6.
    Made this check cleaner via Kconfig
    
    Use simpler IS_ENABLED for CONFIG_VLAN_8021Q check
    
    Signed-off-by: Anish Bhatt <[email protected]>
    Acked-by: Michael Chan <[email protected]>
    Signed-off-by: David S. Miller <[email protected]>
    anish authored and davem330 committed Sep 6, 2014
    Configuration menu
    Copy the full SHA
    c99d667 View commit details
    Browse the repository at this point in the history
  10. greth: moved TX ring cleaning to NAPI rx poll func

    This patch does not affect the 10/100 GRETH MAC.
    
    Before all GBit GRETH TX descriptor ring cleaning was done in
    start_xmit(), when descriptor list became full it activated
    TX interrupt to start the NAPI rx poll function to do TX ring
    cleaning.
    
    With this patch the TX descriptor ring is always cleaned from
    the NAPI rx poll function, triggered via TX or RX interrupt.
    Otherwise we could end up in TX frames being sent but not
    reported to the stack being sent. On the 10/100 GRETH this
    is not an issue since the SKB is copied&aligned into private
    buffers so that the SKB can be freed directly on start_xmit()
    
    Signed-off-by: Daniel Hellstrom <[email protected]>
    Signed-off-by: David S. Miller <[email protected]>
    daniel-hellstrom authored and davem330 committed Sep 6, 2014
    Configuration menu
    Copy the full SHA
    e1743a1 View commit details
    Browse the repository at this point in the history
  11. amd-xgbe: Treat certain counter registers as 64 bit

    Even if the management counters are configured to be 32 bit register
    values, the [rt]xoctetcount_gb and [rt]xoctetcount_g counters are
    always 64 bit counter registers.  Since they are not being treated as
    64 bit values, these statistics are being reported incorrectly (ifconfig,
    ethtool, etc.).
    
    Update the routines used to read the registers to access the "hi"
    register (an offset of 4 from the "lo" register) to create a 64 bit
    value for these 64 bit counters.
    
    Signed-off-by: Tom Lendacky <[email protected]>
    Signed-off-by: David S. Miller <[email protected]>
    tlendacky authored and davem330 committed Sep 6, 2014
    Configuration menu
    Copy the full SHA
    6026510 View commit details
    Browse the repository at this point in the history
  12. amd-xgbe: Enable interrupts for all management counters

    As the management counters reach a threshold they will generate an
    interrupt so the value can be saved and the counter reset. The
    current code does not enable this interrupt on all counters. This
    can result in inaccurate statistics.
    
    Update the code to enable all the counters to generate an interrupt
    when its threshold is exceeded.
    
    Signed-off-by: Tom Lendacky <[email protected]>
    Signed-off-by: David S. Miller <[email protected]>
    tlendacky authored and davem330 committed Sep 6, 2014
    Configuration menu
    Copy the full SHA
    a3ba7c9 View commit details
    Browse the repository at this point in the history
  13. Merge branch 'amd-xgbe-net'

    Tom Lendacky says:
    
    ====================
    amd-xgbe: AMD XGBE driver fixes 2014-09-05
    
    The following series of patches includes fixes to the driver.
    
    - Proper access to 64 bit management counter registers
    - Enable all management counter registers to generate an interrupt when
      the counter threshold is reached
    
    This patch series is based on net.
    ====================
    
    Signed-off-by: David S. Miller <[email protected]>
    davem330 committed Sep 6, 2014
    Configuration menu
    Copy the full SHA
    bc55dc6 View commit details
    Browse the repository at this point in the history
  14. compat: nanosleep: Clarify error handling

    The error handling in compat_sys_nanosleep() is correct, but
    completely non obvious. Document it and restrict it to the
    -ERESTART_RESTARTBLOCK return value for clarity.
    
    Reported-by: Kees Cook <[email protected]>
    Signed-off-by: Thomas Gleixner <[email protected]>
    KAGA-KOKO committed Sep 6, 2014
    Configuration menu
    Copy the full SHA
    849151d View commit details
    Browse the repository at this point in the history
  15. timekeeping: Update timekeeper before updating vsyscall and pvclock

    The update_walltime() code works on the shadow timekeeper to make the
    seqcount protected region as short as possible. But that update to the
    shadow timekeeper does not update all timekeeper fields because it's
    sufficient to do that once before it becomes life. One of these fields
    is tkr.base_mono. That stays stale in the shadow timekeeper unless an
    operation happens which copies the real timekeeper to the shadow.
    
    The update function is called after the update calls to vsyscall and
    pvclock. While not correct, it did not cause any problems because none
    of the invoked update functions used base_mono.
    
    commit cbcf2dd (x86: kvm: Make kvm_get_time_and_clockread()
    nanoseconds based) changed that in the kvm pvclock update function, so
    the stale mono_base value got used and caused kvm-clock to malfunction.
    
    Put the update where it belongs and fix the issue.
    
    Reported-by: Chris J Arges <[email protected]>
    Reported-by: Paolo Bonzini <[email protected]>
    Cc: Gleb Natapov <[email protected]>
    Cc: John Stultz <[email protected]>
    Link: http://lkml.kernel.org/r/alpine.DEB.2.10.1409050000570.3333@nanos
    Signed-off-by: Thomas Gleixner <[email protected]>
    KAGA-KOKO committed Sep 6, 2014
    Configuration menu
    Copy the full SHA
    9bf2419 View commit details
    Browse the repository at this point in the history
  16. Merge tag 'for-linus-20140905' of git://git.infradead.org/linux-mtd

    Pull mtd fixes from Brian Norris:
     "Two trivial MTD updates for 3.17-rc4:
    
       - a tiny comment tweak, to kill a bunch of DocBook warnings added
         during the merge window
    
       - a small fixup to the OTP routines' error handling"
    
    * tag 'for-linus-20140905' of git://git.infradead.org/linux-mtd:
      mtd: nand: fix DocBook warnings on nand_sdr_timings doc
      mtd: cfi_cmdset_0002: check return code for get_chip()
    torvalds committed Sep 6, 2014
    Configuration menu
    Copy the full SHA
    925e0ea View commit details
    Browse the repository at this point in the history
  17. Merge tag 'xfs-for-linus-3.17-rc3' of git://git.kernel.org/pub/scm/li…

    …nux/kernel/git/dgc/linux-xfs
    
    Pull xfs fixes from Dave Chinner:
     "The fixes all address recently discovered data corruption issues.
    
      The original Direct IO issue was discovered by Chris Mason @ Facebook
      on a production workload which mixed buffered reads with direct reads
      and writes IO to the same file.  The fix for that exposed other issues
      with page invalidation (exposed by millions of fsx operations) failing
      due to dirty buffers beyond EOF.
    
      Finally, the collapse_range code could also cause problems due to
      racing writeback changing the extent map while it was being shifted
      around.  The commits for that problem are simple mitigation fixes that
      prevent the problem from occuring.  A more robust fix for 3.18 that
      addresses the underlying problem is currently being worked on by
      Brian.
    
      Summary of fixes:
       - a direct IO read/buffered read data corruption
       - the associated fallout from the DIO data corruption fix
       - collapse range bugs that are potential data corruption issues"
    
    * tag 'xfs-for-linus-3.17-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/dgc/linux-xfs:
      xfs: trim eofblocks before collapse range
      xfs: xfs_file_collapse_range is delalloc challenged
      xfs: don't log inode unless extent shift makes extent modifications
      xfs: use ranged writeback and invalidation for direct IO
      xfs: don't zero partial page cache pages during O_DIRECT writes
      xfs: don't zero partial page cache pages during O_DIRECT writes
      xfs: don't dirty buffers beyond EOF
    torvalds committed Sep 6, 2014
    Configuration menu
    Copy the full SHA
    11e9739 View commit details
    Browse the repository at this point in the history
  18. Merge tag 'fixes-for-linus' of git://git.kernel.org/pub/scm/linux/ker…

    …nel/git/arm/arm-soc
    
    Pull ARM SoC fixes from Kevin Hilman:
     "Another round of fixes from arm-soc land, which are mostly DT fixes
      for:
    
       - OMAP: handful of DT fixes devices on newly supported hardware
       - davinci: fix 2nd EDMA channel
       - ux500: extend previous pinctrl fix to another board
       - at91: clock registration fixes, compatibility string precision
    
      And one more fix for event cleanup in drivers/bus/arm-ccn"
    
    * tag 'fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc:
      bus: arm-ccn: Move event cleanup routine
      ARM: at91/dt: rm9200: fix usb clock definition
      ARM: at91: rm9200: fix clock registration
      ARM: at91/dt: sam9g20: set at91sam9g20 pllb driver
      ARM: dts: dra7-evm: Add vtt regulator support
      ARM: dts: dra7-evm: Fix spi1 mux documentation
      ARM: dts: am43x-epos-evm: Disable QSPI to prevent conflict with GPMC-NAND
      ARM: OMAP2+: gpmc: Don't complain if wait pin is used without r/w monitoring
      ARM: dts: am43xx-epos-evm: Don't use read/write wait monitoring
      ARM: dts: am437x-gp-evm: Don't use read/write wait monitoring
      ARM: dts: am437x-gp-evm: Use BCH16 ECC scheme instead of BCH8
      ARM: dts: am43x-epos-evm: Use BCH16 ECC scheme instead of BCH8
      ARM: dts: am4372: fix USB regs size
      ARM: dts: am437x-gp: switch i2c0 to 100KHz
      ARM: dts: dra7-evm: Fix 8th NAND partition's name
      ARM: dts: dra7-evm: Fix i2c3 pinmux and frequency
      ARM: ux500: disable msp2 node on Snowball
      ARM: edma: Fix configuration parsing for SoCs with multiple eDMA3 CC
      ARM: dts: set 'ti,set-rate-parent' for dpll4_m5x2 clock
    torvalds committed Sep 6, 2014
    Configuration menu
    Copy the full SHA
    56c2285 View commit details
    Browse the repository at this point in the history
  19. Merge tag 'for-linus' of git://git.kernel.org/pub/scm/virt/kvm/kvm

    Pull kvm fixes from Paolo Bonzini:
     "A smattering of bug fixes across most architectures"
    
    * tag 'for-linus' of git://git.kernel.org/pub/scm/virt/kvm/kvm:
      powerpc/kvm/cma: Fix panic introduces by signed shift operation
      KVM: s390/mm: Fix guest storage key corruption in ptep_set_access_flags
      KVM: s390/mm: Fix storage key corruption during swapping
      arm/arm64: KVM: Complete WFI/WFE instructions
      ARM/ARM64: KVM: Nuke Hyp-mode tlbs before enabling MMU
      KVM: s390/mm: try a cow on read only pages for key ops
      KVM: s390: Fix user triggerable bug in dead code
    torvalds committed Sep 6, 2014
    Configuration menu
    Copy the full SHA
    2b12164 View commit details
    Browse the repository at this point in the history

Commits on Sep 7, 2014

  1. ufs: fix deadlocks introduced by sb mutex merge

    Commit 0244756 ("ufs: sb mutex merge + mutex_destroy") introduces
    deadlocks in ufs_new_inode() and ufs_free_inode().
    Most callers of that functions acqure the mutex by themselves and
    ufs_{new,free}_inode() do that via lock_ufs(),
    i.e we have an unavoidable double lock.
    
    The patch proposes to resolve the issue by making sure that
    ufs_{new,free}_inode() are not called with the mutex held.
    
    Found by Linux Driver Verification project (linuxtesting.org).
    
    Cc: [email protected] # 3.16
    Signed-off-by: Alexey Khoroshilov <[email protected]>
    Signed-off-by: Al Viro <[email protected]>
    khoroshilov authored and Al Viro committed Sep 7, 2014
    Configuration menu
    Copy the full SHA
    9ef7db7 View commit details
    Browse the repository at this point in the history
  2. Merge branch 'timers-urgent-for-linus' of git://git.kernel.org/pub/sc…

    …m/linux/kernel/git/tip/tip
    
    Pull timer fixes from Thomas Gleixner:
     "Three fixlets from the timer departement:
    
       - Update the timekeeper before updating vsyscall and pvclock.  This
         fixes the kvm-clock regression reported by Chris and Paolo.
    
       - Use the proper irq work interface from NMI.  This fixes the
         regression reported by Catalin and Dave.
    
       - Clarify the compat_nanosleep error handling mechanism to avoid
         future confusion"
    
    * 'timers-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
      timekeeping: Update timekeeper before updating vsyscall and pvclock
      compat: nanosleep: Clarify error handling
      nohz: Restore NMI safe local irq work for local nohz kick
    torvalds committed Sep 7, 2014
    Configuration menu
    Copy the full SHA
    ebc54f2 View commit details
    Browse the repository at this point in the history
  3. Merge branch 'core-urgent-for-linus' of git://git.kernel.org/pub/scm/…

    …linux/kernel/git/tip/tip
    
    Pull RCU fix from Ingo Molnar:
     "A boot hang fix for the offloaded callback RCU model (RCU_NOCB_CPU=y
      && (TREE_CPU=y || TREE_PREEMPT_RC)) in certain bootup scenarios"
    
    * 'core-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
      rcu: Make nocb leader kthreads process pending callbacks after spawning
    torvalds committed Sep 7, 2014
    Configuration menu
    Copy the full SHA
    81368f8 View commit details
    Browse the repository at this point in the history
  4. Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel…

    …/git/viro/vfs
    
    Pull filesystem fixes from Al Viro:
     "Several bugfixes (all of them -stable fodder).
    
      Alexey's one deals with double mutex_lock() in UFS (apparently, nobody
      has tried to test "ufs: sb mutex merge + mutex_destroy" on something
      like file creation/removal on ufs).  Mine deal with two kinds of
      umount bugs, in umount propagation and in handling of automounted
      submounts, both resulting in bogus transient EBUSY from umount"
    
    * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs:
      ufs: fix deadlocks introduced by sb mutex merge
      fix EBUSY on umount() from MNT_SHRINKABLE
      get rid of propagate_umount() mistakenly treating slaves as busy.
    torvalds committed Sep 7, 2014
    Configuration menu
    Copy the full SHA
    9142ead View commit details
    Browse the repository at this point in the history
  5. Merge tag 'pm+acpi-3.17-rc4' of git://git.kernel.org/pub/scm/linux/ke…

    …rnel/git/rafael/linux-pm
    
    Pull ACPI and power management fixes from Rafael Wysocki:
     "These are regression fixes (ACPI sysfs, ACPI video, suspend test),
      ACPI cpuidle deadlock fix, missing runtime validation of ACPI _DSD
      output, a fix and a new CPU ID for the RAPL driver, new blacklist
      entry for the ACPI EC driver and a couple of trivial cleanups
      (intel_pstate and generic PM domains).
    
      Specifics:
    
       - Fix for recently broken test_suspend= command line argument (Rafael
         Wysocki).
    
       - Fixes for regressions related to the ACPI video driver caused by
         switching the default to native backlight handling in 3.16 from
         Hans de Goede.
    
       - Fix for a sysfs attribute of ACPI device objects that returns stale
         values sometimes due to the fact that they are cached instead of
         executing the appropriate method (_SUN) every time (broken in
         3.14).  From Yasuaki Ishimatsu.
    
       - Fix for a deadlock between cpuidle_lock and cpu_hotplug.lock in the
         ACPI processor driver from Jiri Kosina.
    
       - Runtime output validation for the ACPI _DSD device configuration
         object missing from the support for it that has been introduced
         recently.  From Mika Westerberg.
    
       - Fix for an unuseful and misleading RAPL (Running Average Power
         Limit) domain detection message in the RAPL driver from Jacob Pan.
    
       - New Intel Haswell CPU ID for the RAPL driver from Jason Baron.
    
       - New Clevo W350etq blacklist entry for the ACPI EC driver from Lan
         Tianyu.
    
       - Cleanup for the intel_pstate driver and the core generic PM domains
         code from Gabriele Mazzotta and Geert Uytterhoeven"
    
    * tag 'pm+acpi-3.17-rc4' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm:
      ACPI / cpuidle: fix deadlock between cpuidle_lock and cpu_hotplug.lock
      ACPI / scan: not cache _SUN value in struct acpi_device_pnp
      cpufreq: intel_pstate: Remove unneeded variable
      powercap / RAPL: change domain detection message
      powercap / RAPL: add support for CPU model 0x3f
      PM / domains: Make generic_pm_domain.name const
      PM / sleep: Fix test_suspend= command line option
      ACPI / EC: Add msi quirk for Clevo W350etq
      ACPI / video: Disable native_backlight on HP ENVY 15 Notebook PC
      ACPI / video: Add a disable_native_backlight quirk
      ACPI / video: Fix use_native_backlight selection logic
      ACPICA: ACPI 5.1: Add support for runtime validation of _DSD package.
    torvalds committed Sep 7, 2014
    Configuration menu
    Copy the full SHA
    6fef37c View commit details
    Browse the repository at this point in the history
  6. cpufreq / OPP: Fix the order of arguments for kcalloc()

    These changes fix the argument to the kcalloc
            @n: number of elements.
            @SiZe: element size.
            @flags: the type of memory to allocate (see kmalloc).
    
            void *kcalloc(size_t n, size_t size, gfp_t flags)
    
    Fixes: 3c5445c (cpufreq: OPP: Avoid sleeping while atomic)
    Signed-off-by: Anand Moon <[email protected]>
    Acked-by: Viresh Kumar <[email protected]>
    Reviewed-by: Stephen Boyd <[email protected]>
    Signed-off-by: Rafael J. Wysocki <[email protected]>
    moonlinux authored and rafaeljw committed Sep 7, 2014
    Configuration menu
    Copy the full SHA
    d359992 View commit details
    Browse the repository at this point in the history
  7. Documentation: seq_file: Document seq_open_private(), seq_release_pri…

    …vate()
    
    Despite the fact that these functions have been around for years, they
    are little used (only 15 uses in 13 files at the preseht time) even
    though many other files use work-arounds to achieve the same result.
    
    By documenting them, hopefully they will become more widely used.
    
    Signed-off-by: Rob Jones <[email protected]>
    Acked-by: Steven Whitehouse <[email protected]>
    Signed-off-by: Randy Dunlap <[email protected]>
    Signed-off-by: Linus Torvalds <[email protected]>
    Rob Jones authored and torvalds committed Sep 7, 2014
    Configuration menu
    Copy the full SHA
    77be4da View commit details
    Browse the repository at this point in the history
  8. Documentation: i2c: rename variable "register" to "reg"

    The example code provided with the i2c device interface documentation
    won't compile since it uses the reserved word "register" to name a
    variable.
    
    The compiler fails with this error message:
    
     error: expected identifier or '(' before '=' token
       __u8 register = 0x20; /* Device register to access */
                     ^
    
    Rename the variable "register" to simply "reg" in the example code.
    
    Another couple of typos has been fixed as well.
    [Change "! =" to "!=".]
    
    Signed-off-by: Jose Alarcon Roldan <[email protected]>
    Signed-off-by: Randy Dunlap <[email protected]>
    Acked-by: Wolfram Sang <[email protected]>
    Signed-off-by: Linus Torvalds <[email protected]>
    melonipoika authored and torvalds committed Sep 7, 2014
    Configuration menu
    Copy the full SHA
    257d6ef View commit details
    Browse the repository at this point in the history
  9. Documentation: misc-devices: Rename freefall.c from hpfall.c in lis2l…

    …v02d
    
    hpfall.c was renamed to freefall.c in 3.16, but this file still refer to
    hpfall.c instead of freefall.c
    
    Signed-off-by: Masanari Iida <[email protected]>
    Signed-off-by: Randy Dunlap <[email protected]>
    Signed-off-by: Linus Torvalds <[email protected]>
    standby24x7 authored and torvalds committed Sep 7, 2014
    Configuration menu
    Copy the full SHA
    0024d6e View commit details
    Browse the repository at this point in the history
  10. Documentation: NFS/RDMA: Document separate Kconfig symbols

    The NFS/RDMA Kconfig symbol was split into separate options for client
    and server in commit 2e8c12e ("xprtrdma: add separate Kconfig
    options for NFSoRDMA client and server support").
    
    Update the documentation to reflect this split.
    
    Signed-off-by: Paul Bolle <[email protected]>
    Reviewed-by: Jeff Layton <[email protected]>
    Signed-off-by: Randy Dunlap <[email protected]>
    Cc: "J. Bruce Fields" <[email protected]>
    Signed-off-by: Linus Torvalds <[email protected]>
    pebolle authored and torvalds committed Sep 7, 2014
    Configuration menu
    Copy the full SHA
    731d5cc View commit details
    Browse the repository at this point in the history
  11. Documentation: new page link in SubmittingPatches

    new link for - How to piss off a Linux kernel subsystem maintainer
    
    Signed-off-by: Sudip Mukherjee <[email protected]>
    Signed-off-by: Randy Dunlap <[email protected]>
    Signed-off-by: Linus Torvalds <[email protected]>
    sudipm-mukherjee authored and torvalds committed Sep 7, 2014
    Configuration menu
    Copy the full SHA
    7e0dae6 View commit details
    Browse the repository at this point in the history
  12. Linux 3.17-rc4

    torvalds committed Sep 7, 2014
    Configuration menu
    Copy the full SHA
    2ce7598 View commit details
    Browse the repository at this point in the history
  13. ipv6: restore the behavior of ipv6_sock_ac_drop()

    It is possible that the interface is already gone after joining
    the list of anycast on this interface as we don't hold a refcount
    for the device, in this case we are safe to ignore the error.
    
    What's more important, for API compatibility we should not
    change this behavior for applications even if it were correct.
    
    Fixes: commit a9ed4a2 ("ipv6: fix rtnl locking in setsockopt for anycast and multicast")
    Cc: Sabrina Dubroca <[email protected]>
    Cc: David S. Miller <[email protected]>
    Signed-off-by: Cong Wang <[email protected]>
    Acked-by: Hannes Frederic Sowa <[email protected]>
    Signed-off-by: David S. Miller <[email protected]>
    congwang authored and davem330 committed Sep 7, 2014
    Configuration menu
    Copy the full SHA
    de185ab View commit details
    Browse the repository at this point in the history
  14. Merge tag 'master-2014-09-04' of git://git.kernel.org/pub/scm/linux/k…

    …ernel/git/linville/wireless
    
    John W. Linville says:
    
    ====================
    pull request: wireless 2014-09-05
    
    Please pull this batch of fixes intended for the 3.17 stream...
    
    For the mac80211 bits, Johannes says:
    
    "Here are a few fixes for mac80211. One has been discussed for a while
    and adds a terminating NUL-byte to the alpha2 sent to userspace, which
    shouldn't be necessary but since many places treat it as a string we
    couldn't move to just sending two bytes.
    
    In addition to that, we have two VLAN fixes from Felix, a mesh fix, a
    fix for the recently introduced RX aggregation offload, a revert for
    a broken patch (that luckily didn't really cause any harm) and a small
    fix for alignment in debugfs."
    
    For the iwlwifi bits, Emmanuel says:
    
    "I revert a patch that disabled CTS to self in dvm because users
    reported issues. The revert is CCed to stable since the offending
    patch was sent to stable too. I also bump the firmware API versions
    since a new firmware is coming up. On top of that, Marcel fixes a
    bug I introduced while fixing a bug in our Kconfig file."
    
    Please let me know if there are problems!
    ====================
    
    Signed-off-by: David S. Miller <[email protected]>
    davem330 committed Sep 7, 2014
    Configuration menu
    Copy the full SHA
    45ce829 View commit details
    Browse the repository at this point in the history

Commits on Sep 8, 2014

  1. Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net

    Pull networking fixes from David Miller:
    
     1) Fix skb leak in mac802154, from Martin Townsend
    
     2) Use select not depends on NF_NAT for NFT_NAT, from Pablo Neira
        Ayuso
    
     3) Fix union initializer bogosity in vxlan, from Gerhard Stenzel
    
     4) Fix RX checksum configuration in stmmac driver, from Giuseppe
        CAVALLARO
    
     5) Fix TSO with non-accelerated VLANs in e1000, e1000e, bna, ehea,
        i40e, i40evf, mvneta, and qlge, from Vlad Yasevich
    
     6) Fix capability checks in phy_init_eee(), from Giuseppe CAVALLARO
    
     7) Try high order allocations more sanely for SKBs, specifically if a
        high order allocation fails, fall back directly to zero order pages
        rather than iterating down one order at a time.  From Eric Dumazet
    
     8) Fix a memory leak in openvswitch, from Li RongQing
    
     9) amd-xgbe initializes wrong spinlock, from Thomas Lendacky
    
    10) RTNL locking was busted in setsockopt for anycast and multicast, fix
        from Sabrina Dubroca
    
    11) Fix peer address refcount leak in ipv6, from Nicolas Dichtel
    
    12) DocBook typo fixes, from Masanari Iida
    
    * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net: (101 commits)
      ipv6: restore the behavior of ipv6_sock_ac_drop()
      amd-xgbe: Enable interrupts for all management counters
      amd-xgbe: Treat certain counter registers as 64 bit
      greth: moved TX ring cleaning to NAPI rx poll func
      cnic : Cleanup CONFIG_IPV6 & VLAN check
      net: treewide: Fix typo found in DocBook/networking.xml
      bnx2x: Fix link problems for 1G SFP RJ45 module
      3c59x: avoid panic in boomerang_start_xmit when finding page address:
      netfilter: add explicit Kconfig for NETFILTER_XT_NAT
      ipv6: use addrconf_get_prefix_route() to remove peer addr
      ipv6: fix a refcnt leak with peer addr
      net-timestamp: only report sw timestamp if reporting bit is set
      drivers/net/fddi/skfp/h/skfbi.h: Remove useless PCI_BASE_2ND macros
      l2tp: fix race while getting PMTU on PPP pseudo-wire
      ipv6: fix rtnl locking in setsockopt for anycast and multicast
      VMXNET3: Check for map error in vmxnet3_set_mc
      openvswitch: distinguish between the dropped and consumed skb
      amd-xgbe: Fix initialization of the wrong spin lock
      openvswitch: fix a memory leak
      netfilter: fix missing dependencies in NETFILTER_XT_TARGET_LOG
      ...
    torvalds committed Sep 8, 2014
    Configuration menu
    Copy the full SHA
    b531f5d View commit details
    Browse the repository at this point in the history
  2. Merge branch 'for-3.17-fixes' of git://git.kernel.org/pub/scm/linux/k…

    …ernel/git/tj/libata
    
    Pull libata fixes from Tejun Heo:
     "Two patches are to add PCI IDs for ICH9 and all others are device
      specific fixes.  Nothing too interesting"
    
    * 'for-3.17-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/libata:
      ahci_xgene: Fix the link down in first attempt for the APM X-Gene SoC AHCI SATA host controller driver.
      ahci_xgene: Skip the PHY and clock initialization if already configured by the firmware.
      ahci: add pcid for Marvel 0x9182 controller
      ata: Disabling the async PM for JMicron chip 363/361
      ata_piix: Add Device IDs for Intel 9 Series PCH
      ahci: Add Device IDs for Intel 9 Series PCH
      ata: ahci_tegra: Read calibration fuse
    torvalds committed Sep 8, 2014
    Configuration menu
    Copy the full SHA
    cfa7c64 View commit details
    Browse the repository at this point in the history
  3. Merge branch 'for-3.17-fixes' of git://git.kernel.org/pub/scm/linux/k…

    …ernel/git/tj/percpu
    
    Pull percpu fixes from Tejun Heo:
     "One patch to fix a failure path in the alloc path.  The bug is
      dangerous but probably not too likely to actually trigger in the wild
      given that there hasn't been any report yet.
    
      The other two are low impact fixes"
    
    * 'for-3.17-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/percpu:
      percpu: free percpu allocation info for uniprocessor system
      percpu: perform tlb flush after pcpu_map_pages() failure
      percpu: fix pcpu_alloc_pages() failure path
    torvalds committed Sep 8, 2014
    Configuration menu
    Copy the full SHA
    6a5c75c View commit details
    Browse the repository at this point in the history
  4. Merge branch 'for-3.17-fixes' of git://git.kernel.org/pub/scm/linux/k…

    …ernel/git/tj/cgroup
    
    Pull cgroup fixes from Tejun Heo:
     "This pull request includes Alban's patch to disallow '\n' in cgroup
      names.
    
      Two other patches from Li to fix a possible oops when cgroup
      destruction races against other file operations and one from Vivek to
      fix a unified hierarchy devel behavior"
    
    * 'for-3.17-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/cgroup:
      cgroup: check cgroup liveliness before unbreaking kernfs
      cgroup: delay the clearing of cgrp->kn->priv
      cgroup: Display legacy cgroup files on default hierarchy
      cgroup: reject cgroup names with '\n'
    torvalds committed Sep 8, 2014
    Configuration menu
    Copy the full SHA
    d030671 View commit details
    Browse the repository at this point in the history
  5. drm/i915: Prevent recursive deadlock on releasing a busy userptr

    During release of the GEM object we hold the struct_mutex. As the
    object may be holding onto the last reference for the task->mm,
    calling mmput() may trigger exit_mmap() which close the vma
    which will call drm_gem_vm_close() and attempt to reacquire
    the struct_mutex. In order to avoid that recursion, we have
    to defer the mmput() until after we drop the struct_mutex,
    i.e. we need to schedule a worker to do the clean up. A further issue
    spotted by Tvrtko was caused when we took a GTT mmapping of a userptr
    buffer object. In that case, we would never call mmput as the object
    would be cyclically referenced by the GTT mmapping and not freed upon
    process exit - keeping the entire process mm alive after the process
    task was reaped. The fix employed is to replace the mm_users/mmput()
    reference handling to mm_count/mmdrop() for the shared i915_mm_struct.
    
       INFO: task test_surfaces:1632 blocked for more than 120 seconds.
             Tainted: GF          O 3.14.5+ #1
       "echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message.
       test_surfaces   D 0000000000000000     0  1632   1590 0x00000082
        ffff88014914baa8 0000000000000046 0000000000000000 ffff88014914a010
        0000000000012c40 0000000000012c40 ffff8800a0058210 ffff88014784b010
        ffff88014914a010 ffff880037b1c820 ffff8800a0058210 ffff880037b1c824
       Call Trace:
        [<ffffffff81582499>] schedule+0x29/0x70
        [<ffffffff815825fe>] schedule_preempt_disabled+0xe/0x10
        [<ffffffff81583b93>] __mutex_lock_slowpath+0x183/0x220
        [<ffffffff81583c53>] mutex_lock+0x23/0x40
        [<ffffffffa005c2a3>] drm_gem_vm_close+0x33/0x70 [drm]
        [<ffffffff8115a483>] remove_vma+0x33/0x70
        [<ffffffff8115a5dc>] exit_mmap+0x11c/0x170
        [<ffffffff8104d6eb>] mmput+0x6b/0x100
        [<ffffffffa00f44b9>] i915_gem_userptr_release+0x89/0xc0 [i915]
        [<ffffffffa00e6706>] i915_gem_free_object+0x126/0x250 [i915]
        [<ffffffffa005c06a>] drm_gem_object_free+0x2a/0x40 [drm]
        [<ffffffffa005cc32>] drm_gem_object_handle_unreference_unlocked+0xe2/0x120 [drm]
        [<ffffffffa005ccd4>] drm_gem_object_release_handle+0x64/0x90 [drm]
        [<ffffffff8127ffeb>] idr_for_each+0xab/0x100
        [<ffffffffa005cc70>] ?  drm_gem_object_handle_unreference_unlocked+0x120/0x120 [drm]
        [<ffffffff81583c46>] ? mutex_lock+0x16/0x40
        [<ffffffffa005c354>] drm_gem_release+0x24/0x40 [drm]
        [<ffffffffa005b82b>] drm_release+0x3fb/0x480 [drm]
        [<ffffffff8118d482>] __fput+0xb2/0x260
        [<ffffffff8118d6de>] ____fput+0xe/0x10
        [<ffffffff8106f27f>] task_work_run+0x8f/0xf0
        [<ffffffff81052228>] do_exit+0x1a8/0x480
        [<ffffffff81052551>] do_group_exit+0x51/0xc0
        [<ffffffff810525d7>] SyS_exit_group+0x17/0x20
        [<ffffffff8158e092>] system_call_fastpath+0x16/0x1b
    
    v2: Incorporate feedback from Tvrtko and remove the unnessary mm
    referencing when creating the i915_mm_struct and improve some of the
    function names and comments.
    
    Reported-by: Jacek Danecki <[email protected]>
    Test-case: igt/gem_userptr_blits/process-exit*
    Signed-off-by: Chris Wilson <[email protected]>
    Tested-by: "Gong, Zhipeng" <[email protected]>
    Cc: Jacek Danecki <[email protected]>
    Cc: "Ursulin, Tvrtko" <[email protected]>
    Reviewed-by: "Ursulin, Tvrtko" <[email protected]>
    Signed-off-by: Daniel Vetter <[email protected]>
    Cc: [email protected] # hold off until 3.17 ships for additional testing
    Signed-off-by: Jani Nikula <[email protected]>
    ickle authored and jnikula committed Sep 8, 2014
    Configuration menu
    Copy the full SHA
    ad46cb5 View commit details
    Browse the repository at this point in the history
  6. drm/i915: Fix EIO/wedged handling in gem fault handler

    In
    
    commit 1f83fee
    Author: Daniel Vetter <[email protected]>
    Date:   Thu Nov 15 17:17:22 2012 +0100
    
        drm/i915: clear up wedged transitions
    
    I've accidentally inverted the EIO/wedged handling in the fault
    handler: We want to return the EIO as a SIGBUS only if it's not
    because of the gpu having died, to prevent userspace from unduly
    dying.
    
    In my defence the comment right above is completely misleading, so fix
    both.
    
    v2: Drop the WARN_ON, it's not actually a bug to e.g. receive an -EIO
    when swap-in fails.
    
    v3: Don't remove too much ... oops.
    
    Reported-by: Chris Wilson <[email protected]>
    Cc: Chris Wilson <[email protected]>
    Cc: [email protected]
    Signed-off-by: Daniel Vetter <[email protected]>
    Reviewed-by: Chris Wilson <[email protected]>
    Signed-off-by: Jani Nikula <[email protected]>
    danvet authored and jnikula committed Sep 8, 2014
    Configuration menu
    Copy the full SHA
    2232f03 View commit details
    Browse the repository at this point in the history
  7. drm/i915: Fix irq enable tracking in driver load

    A bunch of warnings fire on some ->irq_postinstall hooks since those
    can enable interrupts (e.g. rps interrupts). And then our ordering
    self-checks fire and complain.
    
    To fix that set the tracking boolen before enabling the irqs with
    drm_irq_install. Quoting the discussion with Jesse why that's safe:
    
    On Tue, Aug 26, 2014 at 11:18 PM, Jesse Barnes <[email protected]> wrote:
    > Yes, it might work, but if you look through the history, we set this
    > field carefully; first to true in the irq_init code, then to false only
    > after the irq_install completes.  So I think your fragility arguments
    > apply to this change too.
    
    Well we've done it in 4 commits or so, but currently we have:
    
    - Set irqs_disabled to true early in driver load to make sure checks
    that. That's done in irq_init, which is totally not the function that
    enables interrupts, only the function that initializes all the vtables
    and similar things. We actually have a fairly sane naming scheme
    nowadays (not fully consistent ofc): _init is sw setup,
    _enable/_hw_init is the actual hw setup. That is done in
    95f25be
    
    - Set irqs_disabled to false right after the irqs are actually
    enabled. This is done in ed2e6df
    
    So my change should only move the flag change over the ->preinstall
    and ->postinstall hooks. I've done a little audit and didn't spot
    anything amiss. Furthermore the runtime pm setup already clears
    irqs_disabled _before_ calling these two hooks.
    
    This regression has been introduced in
    
    commit ed2e6df
    Author: Jesse Barnes <[email protected]>
    Date:   Fri Jun 20 09:39:36 2014 -0700
    
        drm/i915: clear pm._irqs_disabled field after installing IRQs
    
    Cc: Jesse Barnes <[email protected]>
    Cc: Oliver Hartkopp <[email protected]>
    Tested-by: Oliver Hartkopp <[email protected]>
    Signed-off-by: Daniel Vetter <[email protected]>
    Tested-by: Chris Wilson <[email protected]> # gm45, ilk
    Reviewed-by: Jesse Barnes <[email protected]>
    Signed-off-by: Jani Nikula <[email protected]>
    danvet authored and jnikula committed Sep 8, 2014
    Configuration menu
    Copy the full SHA
    4868b45 View commit details
    Browse the repository at this point in the history
  8. regmap: Fix debugfs-file 'registers' mode

    The macro "REGMAP_ALLOW_WRITE_DEBUGFS" can be used to enable write
    support on the registers file in the debugfs. The mode of the file is
    fixed to 0400 so it is not possible to write the file ever.
    
    This patch fixes the mode by setting it to the correct value depending
    on the macro.
    
    Signed-off-by: Markus Pargmann <[email protected]>
    Signed-off-by: Mark Brown <[email protected]>
    Markus Pargmann authored and broonie committed Sep 8, 2014
    Configuration menu
    Copy the full SHA
    ffff7a1 View commit details
    Browse the repository at this point in the history
  9. ACPI / RTC: Fix CMOS RTC opregion handler accesses to wrong addresses

    The value64 parameter is an u64 point that used to transfer the value
    for write to CMOS, or used to return the value that's read from CMOS.
    
    The value64 is an u64 point, so don't need get address again. It causes
    acpi_cmos_rtc_space_handler always return 0 to reader and didn't write
    expected value to CMOS.
    
    Signed-off-by: Lee, Chun-Yi <[email protected]>
    Cc: 3.11+ <[email protected]> # 3.11+
    Signed-off-by: Rafael J. Wysocki <[email protected]>
    Lee, Chun-Yi authored and rafaeljw committed Sep 8, 2014
    Configuration menu
    Copy the full SHA
    9389f46 View commit details
    Browse the repository at this point in the history
  10. drm/i915: Evict CS TLBs between batches

    Running igt, I was encountering the invalid TLB bug on my 845g, despite
    that it was using the CS workaround. Examining the w/a buffer in the
    error state, showed that the copy from the user batch into the
    workaround itself was suffering from the invalid TLB bug (the first
    cacheline was broken with the first two words reversed). Time to try a
    fresh approach. This extends the workaround to write into each page of
    our scratch buffer in order to overflow the TLB and evict the invalid
    entries. This could be refined to only do so after we update the GTT,
    but for simplicity, we do it before each batch.
    
    I suspect this supersedes our current workaround, but for safety keep
    doing both.
    
    v2: The magic number shall be 2.
    
    This doesn't conclusively prove that it is the mythical TLB bug we've
    been trying to workaround for so long, that it requires touching a number
    of pages to prevent the corruption indicates to me that it is TLB
    related, but the corruption (the reversed cacheline) is more subtle than
    a TLB bug, where we would expect it to read the wrong page entirely.
    
    Oh well, it prevents a reliable hang for me and so probably for others
    as well.
    
    Signed-off-by: Chris Wilson <[email protected]>
    Cc: Daniel Vetter <[email protected]>
    Cc: Ville Syrjälä <[email protected]>
    Cc: [email protected]
    Reviewed-by: Daniel Vetter <[email protected]>
    Signed-off-by: Jani Nikula <[email protected]>
    ickle authored and jnikula committed Sep 8, 2014
    Configuration menu
    Copy the full SHA
    c4d69da View commit details
    Browse the repository at this point in the history
  11. drm/i915: Wait for vblank before enabling the TV encoder

    The vblank waits in intel_tv_detect_type() are timing out for some
    reason. This is a regression caused removing seemingly useless vblank
    waits from the modeset seqeuence in:
    
     commit 56ef52c
     Author: Ville Syrjälä <[email protected]>
     Date:   Thu May 8 19:23:15 2014 +0300
    
        drm/i915: Kill vblank waits after pipe enable on gmch platforms
    
    So it turns out they weren't all entirely useless. Apparently the pipe
    has to go through one full frame before we enable the TV port. Add a
    vblank wait to intel_enable_tv() to make sure that happens.
    
    Another approach was attempted by placing the vblank wait just after
    enabling the port. The theory behind that attempt was that we need to
    let the port stay enabled for one full frame before disabling it again
    during load detection. But that didn't work, and we definitely must
    have the vblank wait before enabling the port.
    
    Cc: [email protected]
    Cc: Alan Bartlett <[email protected]>
    Tested-by: Alan Bartlett <[email protected]>
    Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=79311
    Signed-off-by: Ville Syrjälä <[email protected]>
    Reviewed-by: Daniel Vetter <[email protected]>
    Signed-off-by: Jani Nikula <[email protected]>
    vsyrjala authored and jnikula committed Sep 8, 2014
    Configuration menu
    Copy the full SHA
    7a98948 View commit details
    Browse the repository at this point in the history
  12. Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel…

    …/git/s390/linux
    
    Pull s390 fixes from Martin Schwidefsky:
     "A bug fix for the vdso code, the loadparm for booting from SCSI is
      added and the access permissions for the dasd module parameters are
      corrected"
    
    * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/s390/linux:
      s390/vdso: remove NULL pointer check from clock_gettime
      s390/ipl: Add missing SCSI loadparm attributes to /sys/firmware
      s390/dasd: Make module parameter visible in sysfs
    torvalds committed Sep 8, 2014
    Configuration menu
    Copy the full SHA
    35af256 View commit details
    Browse the repository at this point in the history
  13. nfsd4: fix rd_dircount enforcement

    Commit 3b29970 "nfsd4: enforce rd_dircount" totally misunderstood
    rd_dircount; it refers to total non-attribute bytes returned, not number
    of directory entries returned.
    
    Bring the code into agreement with RFC 3530 section 14.2.24.
    
    Cc: [email protected]
    Fixes: 3b29970 "nfsd4: enforce rd_dircount"
    Signed-off-by: J. Bruce Fields <[email protected]>
    J. Bruce Fields committed Sep 8, 2014
    Configuration menu
    Copy the full SHA
    aee3776 View commit details
    Browse the repository at this point in the history
  14. lockd: fix rpcbind crash on lockd startup failure

    Nikita Yuschenko reported that booting a kernel with init=/bin/sh and
    then nfs mounting without portmap or rpcbind running using a busybox
    mount resulted in:
    
      # mount -t nfs 10.30.130.21:/opt /mnt
      svc: failed to register lockdv1 RPC service (errno 111).
      lockd_up: makesock failed, error=-111
      Unable to handle kernel paging request for data at address 0x00000030
      Faulting instruction address: 0xc055e65c
      Oops: Kernel access of bad area, sig: 11 [#1]
      MPC85xx CDS
      Modules linked in:
      CPU: 0 PID: 1338 Comm: mount Not tainted 3.10.44.cge #117
      task: cf29cea0 ti: cf35c00 task.ti: cf35c00
      NIP: c055e65c LR: c056649 CTR: c055e648
      REGS: cf35dad0 TRAP: 0300   Not tainted  (3.10.44.cge)
      MSR: 00029000 <CE,EE,ME>  CR: 22442488  XER: 20000000
      DEAR: 00000030, ESR: 00000000
    
      GPR00: c05606f4 cf35db80 cf29cea0 cf0ded80 cf0dedb8 00000001 1dec3086
      00000000
      GPR08: 00000000 c07b1640 00000007 1dec3086 22442482 100b9758 00000000
      10090ae8
      GPR16: 00000000 000186a5 00000000 00000000 100c3018 bfa46edc 100b0000
      bfa46ef0
      GPR24: cf386ae0 c07834f0 00000000 c0565f88 00000001 cf0dedb8 00000000
      cf0ded80
      NIP [c055e65c] call_start+0x14/0x34
      LR [c056649] __rpc_execute+0x70/0x250
      Call Trace:
      [cf35db80] [00000080] 0x80 (unreliable)
      [cf35dbb0] [c05606f4] rpc_run_task+0x9c/0xc4
      [cf35dbc0] [c0560840] rpc_call_sync+0x50/0xb8
      [cf35dbf0] [c056ee90] rpcb_register_call+0x54/0x84
      [cf35dc10] [c056f24c] rpcb_register+0xf8/0x10c
      [cf35dc70] [c0569e18] svc_unregister.isra.23+0x100/0x108
      [cf35dc90] [c0569e38] svc_rpcb_cleanup+0x18/0x30
      [cf35dca0] [c0198c5c] lockd_up+0x1dc/0x2e0
      [cf35dcd0] [c0195348] nlmclnt_init+0x2c/0xc8
      [cf35dcf0] [c015bb5c] nfs_start_lockd+0x98/0xec
      [cf35dd20] [c015ce6c] nfs_create_server+0x1e8/0x3f4
      [cf35dd90] [c0171590] nfs3_create_server+0x10/0x44
      [cf35dda0] [c016528c] nfs_try_mount+0x158/0x1e4
      [cf35de20] [c01670d0] nfs_fs_mount+0x434/0x8c8
      [cf35de70] [c00cd3bc] mount_fs+0x20/0xbc
      [cf35de90] [c00e4f88] vfs_kern_mount+0x50/0x104
      [cf35dec0] [c00e6e0c] do_mount+0x1d0/0x8e0
      [cf35df10] [c00e75ac] SyS_mount+0x90/0xd0
      [cf35df40] [c000ccf4] ret_from_syscall+0x0/0x3c
    
    The addition of svc_shutdown_net() resulted in two calls to
    svc_rpcb_cleanup(); the second is no longer necessary and crashes when
    it calls rpcb_register_call with clnt=NULL.
    
    Reported-by: Nikita Yushchenko <[email protected]>
    Fixes: 679b033 "lockd: ensure we tear down any live sockets when socket creation fails during lockd_up"
    Cc: [email protected]
    Acked-by: Jeff Layton <[email protected]>
    Signed-off-by: J. Bruce Fields <[email protected]>
    J. Bruce Fields committed Sep 8, 2014
    Configuration menu
    Copy the full SHA
    7c17705 View commit details
    Browse the repository at this point in the history
  15. drm/radeon: only use me/pfp sync on evergreen+

    The packet seems to cause hangs on some 7xx asics.
    
    bug:
    https://bugs.freedesktop.org/show_bug.cgi?id=83616
    
    Signed-off-by: Alex Deucher <[email protected]>
    alexdeucher committed Sep 8, 2014
    Configuration menu
    Copy the full SHA
    b6c2b4f View commit details
    Browse the repository at this point in the history
  16. drm/radeon: fix semaphore value init

    Semaphore values have 64 bits, not 32. This fixes a very subtle bug
    that disables synchronization when the upper 32bits wasn't zero.
    
    Signed-off-by: Christian König <[email protected]>
    Cc: [email protected]
    Reviewed-By: Grigori Goronzy <[email protected]>
    Signed-off-by: Alex Deucher <[email protected]>
    ChristianKoenigAMD authored and alexdeucher committed Sep 8, 2014
    Configuration menu
    Copy the full SHA
    f229407 View commit details
    Browse the repository at this point in the history
  17. drm/radeon: add connector quirk for fujitsu board

    Vbios connector table lists non-existent VGA port.
    
    Bug:
    https://bugs.freedesktop.org/show_bug.cgi?id=83184
    
    Signed-off-by: Alex Deucher <[email protected]>
    Cc: [email protected]
    alexdeucher committed Sep 8, 2014
    Configuration menu
    Copy the full SHA
    1952f24 View commit details
    Browse the repository at this point in the history
  18. imx-drm: ipuv3-plane: fix ipu_plane_dpms()

    When unbinding imx-drm, the following oops was observed:
    
    Unable to handle kernel NULL pointer dereference at virtual address 00000004
    pgd = e995c000
    [00000004] *pgd=4fea5831
    Internal error: Oops: 817 [#1] SMP ARM
    Modules linked in: bnep rfcomm bluetooth nfsd exportfs hid_cypress brcmfmac brcmutil snd_soc_fsl_ssi snd_soc_fsl_spdif imx_pcm_fiq imx_pcm_dma snd_soc_sgtl5000 imx_sdma imx2_wdt imx_ldb(C) imx_thermal snd_soc_imx_sgtl5000 snd_soc_imx_spdif snd_soc_imx_audmux
    CPU: 1 PID: 779 Comm: bash Tainted: G         C    3.16.0-rc2+ #1230
    task: ea9eb180 ti: ea378000 task.ti: ea378000
    PC is at ipu_dp_put+0x10/0x18
    LR is at ipu_plane_dpms+0x60/0x8c
    pc : [<c0350d20>]    lr : [<c04bd9e8>]    psr: 200f0013
    sp : ea379d80  ip : ea379d90  fp : ea379d8c
    r10: 00100100  r9 : 00000000  r8 : 00200200
    r7 : e9ba0264  r6 : e9ba01f8  r5 : 00000000  r4 : ea34b800
    r3 : 00000000  r2 : 00000000  r1 : 0000009b  r0 : 00000000
    Flags: nzCv  IRQs on  FIQs on  Mode SVC_32  ISA ARM  Segment user
    Control: 10c53c7d  Table: 3995c04a  DAC: 00000015
    Process bash (pid: 779, stack limit = 0xea378240)
    Stack: (0xea379d80 to 0xea37a000)
    ...
    Backtrace:
    [<c0350d10>] (ipu_dp_put) from [<c04bd9e8>] (ipu_plane_dpms+0x60/0x8c)
    [<c04bd988>] (ipu_plane_dpms) from [<c04bda40>] (ipu_disable_plane+0x2c/0x60)
    [<c04bda14>] (ipu_disable_plane) from [<c04bda9c>] (ipu_plane_destroy+0x28/0x60)
    [<c04bda74>] (ipu_plane_destroy) from [<c033ff84>] (drm_mode_config_cleanup+0x1b8/0x250)
    [<c033fdcc>] (drm_mode_config_cleanup) from [<c04bc234>] (imx_drm_driver_unload+0x44/0x4c)
    [<c04bc1f0>] (imx_drm_driver_unload) from [<c03394a4>] (drm_dev_unregister+0x2c/0xa0)
    [<c0339478>] (drm_dev_unregister) from [<c0339f8c>] (drm_put_dev+0x30/0x6c)
    [<c0339f5c>] (drm_put_dev) from [<c04bc1cc>] (imx_drm_unbind+0x14/0x18)
    [<c04bc1b8>] (imx_drm_unbind) from [<c03530b4>] (component_master_del+0xbc/0xd8)
    ...
    Code: e1a0c00d e92dd800 e24cb004 e3a03000 (e5c03004)
    
    This is caused by a missing check in ipu_plane_dpms for a NULL pointer.
    
    Fixes: b8d181e ("staging: drm/imx: add drm plane support")
    Cc: <[email protected]>
    Signed-off-by: Russell King <[email protected]>
    Signed-off-by: Greg Kroah-Hartman <[email protected]>
    Russell King authored and gregkh committed Sep 8, 2014
    Configuration menu
    Copy the full SHA
    3a44a20 View commit details
    Browse the repository at this point in the history
  19. imx-drm: imx-ldb: fix NULL pointer in imx_ldb_unbind()

    When trying to unbind imx-drm, the following oops was observed from
    the imx-ldb driver:
    
    Unable to handle kernel NULL pointer dereference at virtual address 0000001c
    pgd = de954000
    [0000001c] *pgd=2e92c831, *pte=00000000, *ppte=00000000
    Internal error: Oops: 17 [#1] SMP ARM
    Modules linked in: bnep rfcomm bluetooth nfsd exportfs hid_cypress brcmfmac brcmutil snd_soc_fsl_ssi snd_soc_fsl_spdif imx_pcm_fiq imx_pcm_dma imx_ldb(C) imx_thermal imx_sdma imx2_wdt snd_soc_sgtl5000 snd_soc_imx_sgtl5000 snd_soc_imx_spdif snd_soc_imx_audmux
    CPU: 1 PID: 1228 Comm: bash Tainted: G         C    3.16.0-rc2+ #1229
    task: ea378d80 ti: de948000 task.ti: de948000
    PC is at imx_ldb_unbind+0x1c/0x58 [imx_ldb]
    LR is at component_unbind+0x38/0x70
    pc : [<bf025068>]    lr : [<c0353108>]    psr: 200f0013
    sp : de949da8  ip : de949dc0  fp : de949dbc
    r10: e9a44b0c  r9 : 00000000  r8 : de949f78
    r7 : 00000012  r6 : e9b3f400  r5 : e9b133b8  r4 : e9b13010
    r3 : 00000000  r2 : e9b3f400  r1 : ea9a0210  r0 : e9b13020
    Flags: nzCv  IRQs on  FIQs on  Mode SVC_32  ISA ARM  Segment user
    Control: 10c53c7d  Table: 2e95404a  DAC: 00000015
    Process bash (pid: 1228, stack limit = 0xde948240)
    Stack: (0xde949da8 to 0xde94a000)
    ...
    Backtrace:
    [<bf02504c>] (imx_ldb_unbind [imx_ldb]) from [<c0353108>] (component_unbind+0x38/0x70)
    [<c03530d0>] (component_unbind) from [<c03531d4>] (component_unbind_all+0x94/0xc8)
    [<c0353140>] (component_unbind_all) from [<c04bc224>] (imx_drm_driver_unload+0x34/0x4c)
    [<c04bc1f0>] (imx_drm_driver_unload) from [<c03394a4>] (drm_dev_unregister+0x2c/0xa0)
    [<c0339478>] (drm_dev_unregister) from [<c0339f8c>] (drm_put_dev+0x30/0x6c)
    [<c0339f5c>] (drm_put_dev) from [<c04bc1cc>] (imx_drm_unbind+0x14/0x18)
    [<c04bc1b8>] (imx_drm_unbind) from [<c03530b4>] (component_master_del+0xbc/0xd8)
    ...
    Code: e5904058 e2840010 e2845fea e59430a0 (e593301c)
    ---[ end trace 4f211c6dbbcd4963 ]---
    
    This is caused by only having one channel out of the pair configured in
    DT; the second channel remains uninitialised, but upon unbind, the
    driver attempts to clean up both, thereby dereferencing a NULL pointer.
    Avoid this by checking that the second channel is initialised.
    
    Fixes: 1b3f767 ("imx-drm: initialise drm components directly")
    Cc: <[email protected]>
    Signed-off-by: Russell King <[email protected]>
    Signed-off-by: Greg Kroah-Hartman <[email protected]>
    Russell King authored and gregkh committed Sep 8, 2014
    Configuration menu
    Copy the full SHA
    d9fdb9f View commit details
    Browse the repository at this point in the history
  20. android: fix reference leak in sync_fence_create

    According to the documentation sync_fence_create takes ownership of the point,
    not a reference on the point.
    
    This fixes a memory leak introduced in 3.17's android fence rework.
    
    Signed-off-by: Maarten Lankhorst <[email protected]>
    Cc: Colin Cross <[email protected]>
    Cc: Dan Carpenter <[email protected]>
    Signed-off-by: Greg Kroah-Hartman <[email protected]>
    Maarten Lankhorst authored and gregkh committed Sep 8, 2014
    Configuration menu
    Copy the full SHA
    3ea411c View commit details
    Browse the repository at this point in the history
  21. Btrfs: kfree()ing ERR_PTRs

    The "inherit" in btrfs_ioctl_snap_create_v2() and "vol_args" in
    btrfs_ioctl_rm_dev() are ERR_PTRs so we can't call kfree() on them.
    
    These kind of bugs are "One Err Bugs" where there is just one error
    label that does everything.  I could set the "inherit = NULL" and keep
    the single out label but it ends up being more complicated that way.  It
    makes the code simpler to re-order the unwind so it's in the mirror
    order of the allocation and introduce some new error labels.
    
    Signed-off-by: Dan Carpenter <[email protected]>
    Signed-off-by: Chris Mason <[email protected]>
    Dan Carpenter authored and masoncl committed Sep 8, 2014
    Configuration menu
    Copy the full SHA
    c47ca32 View commit details
    Browse the repository at this point in the history
  22. Btrfs: fix fsync data loss after a ranged fsync

    While we're doing a full fsync (when the inode has the flag
    BTRFS_INODE_NEEDS_FULL_SYNC set) that is ranged too (covers only a
    portion of the file), we might have ordered operations that are started
    before or while we're logging the inode and that fall outside the fsync
    range.
    
    Therefore when a full ranged fsync finishes don't remove every extent
    map from the list of modified extent maps - as for some of them, that
    fall outside our fsync range, their respective ordered operation hasn't
    finished yet, meaning the corresponding file extent item wasn't inserted
    into the fs/subvol tree yet and therefore we didn't log it, and we must
    let the next fast fsync (one that checks only the modified list) see this
    extent map and log a matching file extent item to the log btree and wait
    for its ordered operation to finish (if it's still ongoing).
    
    A test case for xfstests follows.
    
    Signed-off-by: Filipe Manana <[email protected]>
    Signed-off-by: Chris Mason <[email protected]>
    fdmanana authored and masoncl committed Sep 8, 2014
    Configuration menu
    Copy the full SHA
    49dae1b View commit details
    Browse the repository at this point in the history
  23. Btrfs: use insert_inode_locked4 for inode creation

    Btrfs was inserting inodes into the hash table before we had fully
    set the inode up on disk.  This leaves us open to rare races that allow
    two different inodes in memory for the same [root, inode] pair.
    
    This patch fixes things by using insert_inode_locked4 to insert an I_NEW
    inode and unlock_new_inode when we're ready for the rest of the kernel
    to use the inode.
    
    It also makes sure to init the operations pointers on the inode before
    going into the error handling paths.
    
    Signed-off-by: Chris Mason <[email protected]>
    Reported-by: Al Viro <[email protected]>
    masoncl committed Sep 8, 2014
    Configuration menu
    Copy the full SHA
    b0d5d10 View commit details
    Browse the repository at this point in the history
  24. usb: host: xhci: fix compliance mode workaround

    Commit 71c731a (usb: host: xhci: Fix Compliance Mode
    on SN65LVP3502CP Hardware) implemented a workaround
    for a known issue with Texas Instruments' USB 3.0
    redriver IC but it left a condition where any xHCI
    host would be taken out of reset if port was placed
    in compliance mode and there was no device connected
    to the port.
    
    That condition would trigger a fake connection to a
    non-existent device so that usbcore would trigger a
    warm reset of the port, thus taking the link out of
    reset.
    
    This has the side-effect of preventing any xHCI host
    connected to a Linux machine from starting and running
    the USB 3.0 Electrical Compliance Suite because the
    port will mysteriously taken out of compliance mode
    and, thus, xHCI won't step through the necessary
    compliance patterns for link validation.
    
    This patch fixes the issue by just adding a missing
    check for XHCI_COMP_MODE_QUIRK inside
    xhci_hub_report_usb3_link_state() when PORT_CAS isn't
    set.
    
    This patch should be backported to all kernels containing
    commit 71c731a.
    
    Fixes: 71c731a (usb: host: xhci: Fix Compliance Mode on SN65LVP3502CP Hardware)
    Cc: Alexis R. Cortes <[email protected]>
    Cc: <[email protected]> # v3.2+
    Signed-off-by: Felipe Balbi <[email protected]>
    Acked-by: Mathias Nyman <[email protected]>
    Signed-off-by: Greg Kroah-Hartman <[email protected]>
    Felipe Balbi authored and gregkh committed Sep 8, 2014
    Configuration menu
    Copy the full SHA
    9690858 View commit details
    Browse the repository at this point in the history
  25. USB: document the 'u' flag for usb-storage quirks parameter

    Commit d24d481 (usb-storage: Modify and export adjust_quirks so
    that it can be used by uas) added the 'u' flag to the quirks module
    parameter for usb-storage, but neglected to update the
    documentation.  This patch adds the documentation.
    
    Signed-off-by: Alan Stern <[email protected]>
    Cc: stable <[email protected]>  # 3.15+
    Signed-off-by: Greg Kroah-Hartman <[email protected]>
    AlanStern authored and gregkh committed Sep 8, 2014
    Configuration menu
    Copy the full SHA
    b6089f1 View commit details
    Browse the repository at this point in the history
  26. Lattice ECP3 FPGA: Check firmware pointer

    This patch corrects a lack of testing.
    If fw is NULL when calling firmware_load(), it results in a kernel oops.
    
    Signed-off-by: Jean-Michel Hautbois <[email protected]>
    Reviewed-by: Takashi Iwai <[email protected]>
    Signed-off-by: Greg Kroah-Hartman <[email protected]>
    jmhautbois authored and gregkh committed Sep 8, 2014
    Configuration menu
    Copy the full SHA
    3f0d97d View commit details
    Browse the repository at this point in the history
  27. Input: elantech - fix detection of touchpad on ASUS s301l

    Adjust Elantech signature validation to account fo rnewer models of
    touchpads.
    
    Cc: [email protected]
    Reported-and-tested-by: Màrius Monton <[email protected]>
    Signed-off-by: Hans de Goede <[email protected]>
    Signed-off-by: Dmitry Torokhov <[email protected]>
    jwrdegoede authored and dtor committed Sep 8, 2014
    Configuration menu
    Copy the full SHA
    271329b View commit details
    Browse the repository at this point in the history
  28. Input: add INPUT_PROP_POINTING_STICK property

    It is useful for userspace to know that there not dealing with a regular
    mouse but rather with a pointing stick (e.g. a trackpoint) so that
    userspace can e.g. automatically enable middle button scrollwheel
    emulation.
    
    It is impossible to tell the difference from the evdev info without
    resorting to putting a list of device / driver names in userspace, this is
    undesirable.
    
    Add a property which allows userspace to see if a device is a pointing
    stick, and set it on all the pointing stick drivers.
    
    Signed-off-by: Hans de Goede <[email protected]>
    Acked-by: Benjamin Tissoires <[email protected]>
    Acked-by: Peter Hutterer <[email protected]>
    Signed-off-by: Dmitry Torokhov <[email protected]>
    jwrdegoede authored and dtor committed Sep 8, 2014
    Configuration menu
    Copy the full SHA
    7611392 View commit details
    Browse the repository at this point in the history
  29. Input: add missing POINTER / DIRECT properties to a bunch of drivers

    I've not done a full audit of all mouse drivers, I noticed these ones were
    missing the POINTER property while working on the POINTING_STICK property.
    
    Signed-off-by: Hans de Goede <[email protected]>
    Signed-off-by: Dmitry Torokhov <[email protected]>
    jwrdegoede authored and dtor committed Sep 8, 2014
    Configuration menu
    Copy the full SHA
    01d4cd5 View commit details
    Browse the repository at this point in the history
  30. Input: cap1106 - fix register definition

    Use the correct register address for Calibration Active and Interrupt
    Enable.
    
    Signed-off-by: Klaus Goger <[email protected]>
    Acked-by: Daniel Mack <[email protected]>
    Signed-off-by: Dmitry Torokhov <[email protected]>
    kgoger authored and dtor committed Sep 8, 2014
    Configuration menu
    Copy the full SHA
    1df9029 View commit details
    Browse the repository at this point in the history
  31. Merge branch 'for-3.17' of git://linux-nfs.org/~bfields/linux

    Pull nfsd bugfixes from Bruce Fields:
     "A couple minor nfsd bugfixes"
    
    * 'for-3.17' of git://linux-nfs.org/~bfields/linux:
      lockd: fix rpcbind crash on lockd startup failure
      nfsd4: fix rd_dircount enforcement
    torvalds committed Sep 8, 2014
    Configuration menu
    Copy the full SHA
    861b710 View commit details
    Browse the repository at this point in the history
  32. Merge branch 'for_linus_urgent' of git://git.kernel.org/pub/scm/linux…

    …/kernel/git/tytso/ext4
    
    Pull ext4 bugfix from Ted Ts'o.
    
    [ Hmm.  It's possible we should make kfree() aware of error pointers,
      and use IS_ERR_OR_NULL rather than a NULL check.  But in the meantime
      this is obviously the right fix.  - Linus ]
    
    * 'for_linus_urgent' of git://git.kernel.org/pub/scm/linux/kernel/git/tytso/ext4:
      ext4: avoid trying to kfree an ERR_PTR pointer
    torvalds committed Sep 8, 2014
    Configuration menu
    Copy the full SHA
    8c68fac View commit details
    Browse the repository at this point in the history
  33. USB: ftdi_sio: Add support for GE Healthcare Nemo Tracker device

    Signed-off-by: Taylor Braun-Jones <[email protected]>
    Cc: Johan Hovold <[email protected]>
    Cc: stable <[email protected]>
    Signed-off-by: Greg Kroah-Hartman <[email protected]>
    nocnokneo authored and gregkh committed Sep 8, 2014
    Configuration menu
    Copy the full SHA
    9c491c3 View commit details
    Browse the repository at this point in the history
  34. uwb: init beacon cache entry before registering uwb device

    Make sure the uwb_dev->bce entry is set before calling uwb_dev_add in
    uwbd_dev_onair so that usermode will only see the device after it is
    properly initialized.  This fixes a kernel panic that can occur if
    usermode tries to access the IEs sysfs attribute of a UWB device before
    the driver has had a chance to set the beacon cache entry.
    
    Signed-off-by: Thomas Pugliese <[email protected]>
    Cc: [email protected]
    Signed-off-by: Greg Kroah-Hartman <[email protected]>
    TomServo3000 authored and gregkh committed Sep 8, 2014
    Configuration menu
    Copy the full SHA
    675f0ab View commit details
    Browse the repository at this point in the history
  35. serial: 8250_dw: Add ACPI ID for Intel Braswell

    Another new ACPI identifier for the 8250 dw bindings to cover newer Intel
    SoCs such as Braswell.
    
    Signed-off-by: Alan Cox <[email protected]>
    Signed-off-by: Mika Westerberg <[email protected]>
    Signed-off-by: Greg Kroah-Hartman <[email protected]>
    Alan Cox authored and gregkh committed Sep 8, 2014
    Configuration menu
    Copy the full SHA
    f174442 View commit details
    Browse the repository at this point in the history
  36. tty/serial: at91: BUG: disable interrupts when !UART_ENABLE_MS()

    In set_termios(), interrupts where not disabled if UART_ENABLE_MS() was
    false.
    
    Tested on at91sam9g35.
    
    Signed-off-by: Richard Genoud <[email protected]>
    Cc: stable <[email protected]> # >= 3.16
    Reviewed-by: Peter Hurley <[email protected]>
    Acked-by: Nicolas Ferre <[email protected]>
    Signed-off-by: Greg Kroah-Hartman <[email protected]>
    rgenoud authored and gregkh committed Sep 8, 2014
    Configuration menu
    Copy the full SHA
    35b675b View commit details
    Browse the repository at this point in the history
  37. tty: xuartps: Fix tx_emtpy() callback

    The tx_empty() callback currently checks the TXEMPTY bit in the interrupt
    status register to decided whether the FIFO should be reported as empty or
    not. The bit in this register gets set when the FIFO state transitions from
    non-empty to empty but is cleared again in the interrupt handler. This means
    it is not suitable to be used to decided whether the FIFO is currently empty
    or not. Instead use the TXEMPTY bit from the status register which will be
    set as long as the FIFO is empty.
    
    Signed-off-by: Lars-Peter Clausen <[email protected]>
    Acked-by: Soren Brinkmann <[email protected]>
    Signed-off-by: Greg Kroah-Hartman <[email protected]>
    larsclausen authored and gregkh committed Sep 8, 2014
    Configuration menu
    Copy the full SHA
    6731af5 View commit details
    Browse the repository at this point in the history
  38. nfs: fix kernel warning when removing proc entry

    I saw the following kernel warning:
    
    [ 1852.321222] ------------[ cut here ]------------
    [ 1852.326527] WARNING: CPU: 0 PID: 118 at fs/proc/generic.c:521 remove_proc_entry+0x154/0x16b()
    [ 1852.335630] remove_proc_entry: removing non-empty directory 'fs/nfsfs', leaking at least 'volumes'
    [ 1852.344084] CPU: 0 PID: 118 Comm: kworker/u8:2 Not tainted 3.16.0+ #540
    [ 1852.350036] Hardware name: Bochs Bochs, BIOS Bochs 01/01/2011
    [ 1852.354992] Workqueue: netns cleanup_net
    [ 1852.358701]  0000000000000000 ffff880116f2fbd0 ffffffff819c03e9 ffff880116f2fc18
    [ 1852.366474]  ffff880116f2fc08 ffffffff810744ee ffffffff811e0e6e ffff8800d4e96238
    [ 1852.373507]  ffffffff81dbe665 ffff8800d46a5948 0000000000000005 ffff880116f2fc68
    [ 1852.380224] Call Trace:
    [ 1852.381976]  [<ffffffff819c03e9>] dump_stack+0x4d/0x66
    [ 1852.385495]  [<ffffffff810744ee>] warn_slowpath_common+0x7a/0x93
    [ 1852.389869]  [<ffffffff811e0e6e>] ? remove_proc_entry+0x154/0x16b
    [ 1852.393987]  [<ffffffff8107457b>] warn_slowpath_fmt+0x4c/0x4e
    [ 1852.397999]  [<ffffffff811e0e6e>] remove_proc_entry+0x154/0x16b
    [ 1852.402034]  [<ffffffff8129c73d>] nfs_fs_proc_net_exit+0x53/0x56
    [ 1852.406136]  [<ffffffff812a103b>] nfs_net_exit+0x12/0x1d
    [ 1852.409774]  [<ffffffff81785bc9>] ops_exit_list+0x44/0x55
    [ 1852.413529]  [<ffffffff81786389>] cleanup_net+0xee/0x182
    [ 1852.417198]  [<ffffffff81088c9e>] process_one_work+0x209/0x40d
    [ 1852.502320]  [<ffffffff81088bf7>] ? process_one_work+0x162/0x40d
    [ 1852.587629]  [<ffffffff810890c1>] worker_thread+0x1f0/0x2c7
    [ 1852.673291]  [<ffffffff81088ed1>] ? process_scheduled_works+0x2f/0x2f
    [ 1852.759470]  [<ffffffff8108e079>] kthread+0xc9/0xd1
    [ 1852.843099]  [<ffffffff8109427f>] ? finish_task_switch+0x3a/0xce
    [ 1852.926518]  [<ffffffff8108dfb0>] ? __kthread_parkme+0x61/0x61
    [ 1853.008565]  [<ffffffff819cbeac>] ret_from_fork+0x7c/0xb0
    [ 1853.076477]  [<ffffffff8108dfb0>] ? __kthread_parkme+0x61/0x61
    [ 1853.140653] ---[ end trace 69c4c6617f78e32d ]---
    
    It looks wrong that we add "/proc/net/nfsfs" in nfs_fs_proc_net_init()
    while remove "/proc/fs/nfsfs" in nfs_fs_proc_net_exit().
    
    Fixes: commit 65b3885 (NFS: Fix /proc/fs/nfsfs/servers and /proc/fs/nfsfs/volumes)
    Cc: Eric W. Biederman <[email protected]>
    Cc: Trond Myklebust <[email protected]>
    Cc: Dan Aloni <[email protected]>
    Signed-off-by: Cong Wang <[email protected]>
    [Trond: replace uses of remove_proc_entry() with remove_proc_subtree()
    as suggested by Al Viro]
    Cc: [email protected] # 3.4.x : 65b3885: NFS: Fix /proc/fs/nfsfs/servers
    Cc: [email protected] # 3.4.x
    Signed-off-by: Trond Myklebust <[email protected]>
    congwang authored and trondmypd committed Sep 8, 2014
    Configuration menu
    Copy the full SHA
    21e8100 View commit details
    Browse the repository at this point in the history

Commits on Sep 9, 2014

  1. nfs: revert "nfs4: queue free_lock_state job submission to nfsiod"

    This reverts commit 49a4bda.
    
    Christoph reported an oops due to the above commit:
    
    generic/089 242s ...[ 2187.041239] general protection fault: 0000 [#1]
    SMP
    [ 2187.042899] Modules linked in:
    [ 2187.044000] CPU: 0 PID: 11913 Comm: kworker/0:1 Not tainted 3.16.0-rc6+ #1151
    [ 2187.044287] Hardware name: Bochs Bochs, BIOS Bochs 01/01/2007
    [ 2187.044287] Workqueue: nfsiod free_lock_state_work
    [ 2187.044287] task: ffff880072b50cd0 ti: ffff88007a4ec000 task.ti: ffff88007a4ec000
    [ 2187.044287] RIP: 0010:[<ffffffff81361ca6>]  [<ffffffff81361ca6>] free_lock_state_work+0x16/0x30
    [ 2187.044287] RSP: 0018:ffff88007a4efd58  EFLAGS: 00010296
    [ 2187.044287] RAX: 6b6b6b6b6b6b6b6b RBX: ffff88007a947ac0 RCX: 8000000000000000
    [ 2187.044287] RDX: ffffffff826af9e0 RSI: ffff88007b093c00 RDI: ffff88007b093db8
    [ 2187.044287] RBP: ffff88007a4efd58 R08: ffffffff832d3e10 R09: 000001c40efc0000
    [ 2187.044287] R10: 0000000000000000 R11: 0000000000059e30 R12: ffff88007fc13240
    [ 2187.044287] R13: ffff88007fc18b00 R14: ffff88007b093db8 R15: 0000000000000000
    [ 2187.044287] FS:  0000000000000000(0000) GS:ffff88007fc00000(0000) knlGS:0000000000000000
    [ 2187.044287] CS:  0010 DS: 0000 ES: 0000 CR0: 000000008005003b
    [ 2187.044287] CR2: 00007f93ec33fb80 CR3: 0000000079dc2000 CR4: 00000000000006f0
    [ 2187.044287] Stack:
    [ 2187.044287]  ffff88007a4efdd8 ffffffff810cc877 ffffffff810cc80d ffff88007fc13258
    [ 2187.044287]  000000007a947af0 0000000000000000 ffffffff8353ccc8 ffffffff82b6f3d0
    [ 2187.044287]  0000000000000000 ffffffff82267679 ffff88007a4efdd8 ffff88007fc13240
    [ 2187.044287] Call Trace:
    [ 2187.044287]  [<ffffffff810cc877>] process_one_work+0x1c7/0x490
    [ 2187.044287]  [<ffffffff810cc80d>] ? process_one_work+0x15d/0x490
    [ 2187.044287]  [<ffffffff810cd569>] worker_thread+0x119/0x4f0
    [ 2187.044287]  [<ffffffff810fbbad>] ? trace_hardirqs_on+0xd/0x10
    [ 2187.044287]  [<ffffffff810cd450>] ? init_pwq+0x190/0x190
    [ 2187.044287]  [<ffffffff810d3c6f>] kthread+0xdf/0x100
    [ 2187.044287]  [<ffffffff810d3b90>] ? __init_kthread_worker+0x70/0x70
    [ 2187.044287]  [<ffffffff81d9873c>] ret_from_fork+0x7c/0xb0
    [ 2187.044287]  [<ffffffff810d3b90>] ? __init_kthread_worker+0x70/0x70
    [ 2187.044287] Code: 0f 1f 44 00 00 31 c0 5d c3 66 66 66 2e 0f 1f 84 00 00 00 00 00 55 48 8d b7 48 fe ff ff 48 8b 87 58 fe ff ff 48 89 e5 48 8b 40 30 <48> 8b 00 48 8b 10 48 89 c7 48 8b 92 90 03 00 00 ff 52 28 5d c3
    [ 2187.044287] RIP  [<ffffffff81361ca6>] free_lock_state_work+0x16/0x30
    [ 2187.044287]  RSP <ffff88007a4efd58>
    [ 2187.103626] ---[ end trace 0f11326d28e5d8fa ]---
    
    The original reason for this patch was because the fl_release_private
    operation couldn't sleep. With commit ed9814d (locks: defer freeing
    locks in locks_delete_lock until after i_lock has been dropped), this is
    no longer a problem so we can revert this patch.
    
    Reported-by: Christoph Hellwig <[email protected]>
    Signed-off-by: Jeff Layton <[email protected]>
    Reviewed-by: Christoph Hellwig <[email protected]>
    Tested-by: Christoph Hellwig <[email protected]>
    Signed-off-by: Trond Myklebust <[email protected]>
    Jeff Layton authored and trondmypd committed Sep 9, 2014
    Configuration menu
    Copy the full SHA
    0c0e0d3 View commit details
    Browse the repository at this point in the history
  2. powerpc/pseries: Fix endian issues in memory hotplug

    Values acquired from Open Firmware are in 32-bit big endian format
    and need to be handled on little endian architectures.  This patch
    ensures values are in cpu endian when hotplugging memory.
    
    Signed-off-by: Thomas Falcon <[email protected]>
    tlfalcon authored and mpe committed Sep 9, 2014
    Configuration menu
    Copy the full SHA
    c9ac408 View commit details
    Browse the repository at this point in the history
  3. powerpc/perf: Fix ABIv2 kernel backtraces

    ABIv2 kernels are failing to backtrace through the kernel. An example:
    
    39.30%  readseek2_proce  [kernel.kallsyms]    [k] find_get_entry
                |
                --- find_get_entry
                   __GI___libc_read
    
    The problem is in valid_next_sp() where we check that the new stack
    pointer is at least STACK_FRAME_OVERHEAD below the previous one.
    
    ABIv1 has a minimum stack frame size of 112 bytes consisting of 48 bytes
    and 64 bytes of parameter save area. ABIv2 changes that to 32 bytes
    with no paramter save area.
    
    STACK_FRAME_OVERHEAD is in theory the minimum stack frame size,
    but we over 240 uses of it, some of which assume that it includes
    space for the parameter area.
    
    We need to work through all our stack defines and rationalise them
    but let's fix perf now by creating STACK_FRAME_MIN_SIZE and using
    in valid_next_sp(). This fixes the issue:
    
    30.64%  readseek2_proce  [kernel.kallsyms]    [k] find_get_entry
                |
                --- find_get_entry
                   pagecache_get_page
                   generic_file_read_iter
                   new_sync_read
                   vfs_read
                   sys_read
                   syscall_exit
                   __GI___libc_read
    
    Cc: [email protected] # 3.16+
    Reported-by: Aneesh Kumar K.V <[email protected]>
    Signed-off-by: Anton Blanchard <[email protected]>
    antonblanchard authored and mpe committed Sep 9, 2014
    Configuration menu
    Copy the full SHA
    85101af View commit details
    Browse the repository at this point in the history
  4. powerpc: use machine_subsys_initcall() for opal_hmi_handler_init()

    As opal_message_init() uses machine_early_initcall(powernv, ), and
    opal_hmi_handler_init() depends on that early initcall, so it also needs
    use machine_* to check the machine_id.
    
    Signed-off-by: Li Zhong <[email protected]>
    Li Zhong authored and mpe committed Sep 9, 2014
    Configuration menu
    Copy the full SHA
    c1c8a92 View commit details
    Browse the repository at this point in the history
  5. powerpc: Make CONFIG_FHANDLE=y for all 64 bit powerpc defconfigs

    CONFIG_FHANDLE is a requirement for systemd and with the increasing
    uptake of systemd within distros it makes sense for 64 bit defconfigs
    to include it.
    
    Signed-off-by: Cyril Bur <[email protected]>
    cyrilbur-ibm authored and mpe committed Sep 9, 2014
    Configuration menu
    Copy the full SHA
    d11dfd1 View commit details
    Browse the repository at this point in the history
  6. powerpc: Wire up sys_seccomp(), sys_getrandom() and sys_memfd_create()

    This patch wires up three new syscalls for powerpc. The three
    new syscalls are seccomp, getrandom and memfd_create.
    
    Signed-off-by: Pranith Kumar <[email protected]>
    Reviewed-by: David Herrmann <[email protected]>
    pranith authored and mpe committed Sep 9, 2014
    Configuration menu
    Copy the full SHA
    7d59deb View commit details
    Browse the repository at this point in the history
  7. arch/microblaze/include/asm/entry.h: Include "linux/linkage.h" to avo…

    …id compiling issue
    
    "entry.h" needs 'asmlinkage', and "asm/linkage.h" does not provide it.
    So need include "linux/linkage.h" to use generic one instead of.
    
    The related error (with allmodconfig under microblaze):
    
        CC [M]  drivers/net/ethernet/emulex/benet/be_main.o
      In file included from ./arch/microblaze/include/asm/processor.h:17:0,
                       from include/linux/prefetch.h:14,
                       from drivers/net/ethernet/emulex/benet/be_main.c:18:
      ./arch/microblaze/include/asm/entry.h:33:19: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'void'
       extern asmlinkage void do_notify_resume(struct pt_regs *regs, int in_syscall);
                         ^
    
    Signed-off-by: Chen Gang <[email protected]>
    Signed-off-by: Michal Simek <[email protected]>
    Chen-Gang authored and Michal Simek committed Sep 9, 2014
    Configuration menu
    Copy the full SHA
    dd03524 View commit details
    Browse the repository at this point in the history
  8. arch/microblaze/include/asm/uaccess.h: Use pr_devel() instead of pr_d…

    …ebug()
    
    When DYNAMIC_DEBUG enabled, pr_debug() depends on KBUILD_MODNAME which
    also depends on the modules number in Makefile. The related information
    in "scripts/Makefile.lib" line 94:
    
      # $(modname_flags) #defines KBUILD_MODNAME as the name of the module it will
      # end up in (or would, if it gets compiled in)
      # Note: Files that end up in two or more modules are compiled without the
      #       KBUILD_MODNAME definition. The reason is that any made-up name would
      #       differ in different configs.
    
    For this case, 'radio-si470x-i2c.o' and 'radio-si470x-common.o' are in
    one line, so cause compiling issue. And 'uaccess.h' is a common shared
    header (not specially for drivers), so use pr_devel() instead of is OK.
    
    The related error with allmodconfig:
    
        CC [M]  drivers/media/radio/si470x/radio-si470x-i2c.o
        CC [M]  drivers/media/radio/si470x/radio-si470x-common.o
      In file included from include/linux/printk.h:257:0,
                       from include/linux/kernel.h:13,
                       from drivers/media/radio/si470x/radio-si470x.h:29,
                       from drivers/media/radio/si470x/radio-si470x-common.c:115:
      ./arch/microblaze/include/asm/uaccess.h: In function 'access_ok':
      include/linux/dynamic_debug.h:66:14: error: 'KBUILD_MODNAME' undeclared (first use in this function)
         .modname = KBUILD_MODNAME,   \
                    ^
      include/linux/dynamic_debug.h:76:2: note: in expansion of macro 'DEFINE_DYNAMIC_DEBUG_METADATA'
        DEFINE_DYNAMIC_DEBUG_METADATA(descriptor, fmt);  \
        ^
      include/linux/printk.h:263:2: note: in expansion of macro 'dynamic_pr_debug'
        dynamic_pr_debug(fmt, ##__VA_ARGS__)
        ^
      ./arch/microblaze/include/asm/uaccess.h:101:3: note: in expansion of macro 'pr_debug'
         pr_debug("ACCESS fail: %s at 0x%08x (size 0x%x), seg 0x%08x\n",
         ^
    
    Signed-off-by: Chen Gang <[email protected]>
    Signed-off-by: Michal Simek <[email protected]>
    Chen-Gang authored and Michal Simek committed Sep 9, 2014
    Configuration menu
    Copy the full SHA
    de295cf View commit details
    Browse the repository at this point in the history
  9. microblaze: Add mm/Kconfig to advance menu

    mm/Kconfig is getting too big to be in root menu.
    Move it to submenu.
    
    Signed-off-by: Michal Simek <[email protected]>
    Michal Simek committed Sep 9, 2014
    Configuration menu
    Copy the full SHA
    7acdc1c View commit details
    Browse the repository at this point in the history
  10. microblaze: Rename Advance setup to Kernel features

    "Advance setup: menu is misleading that's why rename it.
    
    Signed-off-by: Michal Simek <[email protected]>
    Michal Simek committed Sep 9, 2014
    Configuration menu
    Copy the full SHA
    b408e2c View commit details
    Browse the repository at this point in the history
  11. microblaze: Fix number of syscalls

    Number of syscalls have to be updated too.
    
    Signed-off-by: Michal Simek <[email protected]>
    Michal Simek committed Sep 9, 2014
    Configuration menu
    Copy the full SHA
    9fc4b7e View commit details
    Browse the repository at this point in the history
  12. Revert "ACPI / battery: Fix warning message in acpi_battery_get_state()"

    This reverts commit d719870 ("ACPI / battery: Fix warning message in
    acpi_battery_get_state()")
    
    Capping 'capacity_now' to 'full_charge_capacity' is plain wrong. If this
    is necessary to work around some buggy firmware, then the workaround needs
    protection against being applied to working firmwares.
    
    Good battery firmwares will allow 'capacity_now' to increase above
    'full_charge_capacity', and will update the latter when the battery
    is fully charged.  By capping 'capacity_now' we lose accurate capacity
    reporting until charging is complete whenever 'full_charge_capacity'
    needs to be increased.
    
    Fixes: d719870 ("ACPI / battery: Fix warning message in acpi_battery_get_state()")
    Cc: 3.16+ <[email protected]> # 3.16+
    Signed-off-by: Bjørn Mork <[email protected]>
    Signed-off-by: Rafael J. Wysocki <[email protected]>
    bmork authored and rafaeljw committed Sep 9, 2014
    Configuration menu
    Copy the full SHA
    583ee39 View commit details
    Browse the repository at this point in the history
  13. Revert "ACPI / battery: fix wrong value of capacity_now reported when…

    … fully charged"
    
    This reverts commit 232de51 ("ACPI / battery: fix wrong value of
    capacity_now reported when fully charged")
    
    There is nothing wrong or unexpected about 'capacity_now' increasing above
    the last 'full_charge_capacity' value. Different charging cycles will cause
    'full_charge_capacity' to vary, both up and down.  Good battery firmwares
    will update 'full_charge_capacity' when the current charging cycle is
    complete, increasing it if necessary. It might even go above
    'design_capacity' on a fresh and healthy battery.
    
    Capping 'capacity_now' to 'full_charge_capacity' is plain wrong, and
    printing a warning if this doesn't happen to match the 'design_capacity'
    is both annoying and terribly wrong.
    
    This results in bogus warnings on perfectly working systems/firmwares:
    
     [Firmware Bug]: battery: reported current charge level (39800) is higher than reported maximum charge level (39800).
    
    and wrong values being reported for 'capacity_now' and
    'full_charge_capacity' after the warning has been triggered.
    
    Fixes: 232de51 ("ACPI / battery: fix wrong value of capacity_now reported when fully charged")
    Cc: 3.16+ <[email protected]> # 3.16+
    Signed-off-by: Bjørn Mork <[email protected]>
    Signed-off-by: Rafael J. Wysocki <[email protected]>
    bmork authored and rafaeljw committed Sep 9, 2014
    Configuration menu
    Copy the full SHA
    508b3c6 View commit details
    Browse the repository at this point in the history
  14. ACPI / LPSS: complete PM entries for LPSS power domain

    PM entries of LPSS power domain were not implemented correctly
    in commit c78b083 "ACPI / LPSS: custom power domain for LPSS".
    
    This patch fixes and completes these PM entries.
    
    Fixes: c78b083 (ACPI / LPSS: custom power domain for LPSS)
    Signed-off-by: Li Aubrey <[email protected]>
    Signed-off-by: Mika Westerberg <[email protected]>
    Signed-off-by: Fu Zhonghui <[email protected]>
    Cc: 3.16+ <[email protected]> # 3.16+
    Signed-off-by: Rafael J. Wysocki <[email protected]>
    Fu Zhonghui authored and rafaeljw committed Sep 9, 2014
    Configuration menu
    Copy the full SHA
    f4168b6 View commit details
    Browse the repository at this point in the history
  15. drm/radeon: reduce memory footprint for debugging

    There is no need to use hex_dump_to_buffer() since we have a kernel helper to
    dump up to 64 bytes just via printk(). In our case the actual size is 15 bytes.
    
    Signed-off-by: Andy Shevchenko <[email protected]>
    Signed-off-by: Alex Deucher <[email protected]>
    andy-shev authored and alexdeucher committed Sep 9, 2014
    Configuration menu
    Copy the full SHA
    df8fbc2 View commit details
    Browse the repository at this point in the history
  16. drm/radeon/dpm: set the thermal type properly for special configs

    On systems with special thermal configurations make sure we make
    note of the thermal setup.  This is required for proper firmware
    configuration on these systems.
    
    Signed-off-by: Alex Deucher <[email protected]>
    Cc: [email protected]
    alexdeucher committed Sep 9, 2014
    Configuration menu
    Copy the full SHA
    ff43779 View commit details
    Browse the repository at this point in the history
  17. Block: fix unbalanced bypass-disable in blk_register_queue

    When a queue is registered, the block layer turns off the bypass
    setting (because bypass is enabled when the queue is created).  This
    doesn't work well for queues that are unregistered and then registered
    again; we get a WARNING because of the unbalanced calls to
    blk_queue_bypass_end().
    
    This patch fixes the problem by making blk_register_queue() call
    blk_queue_bypass_end() only the first time the queue is registered.
    
    Signed-off-by: Alan Stern <[email protected]>
    Acked-by: Tejun Heo <[email protected]>
    CC: James Bottomley <[email protected]>
    CC: Jens Axboe <[email protected]>
    Signed-off-by: Jens Axboe <[email protected]>
    AlanStern authored and axboe committed Sep 9, 2014
    Configuration menu
    Copy the full SHA
    df35c7c View commit details
    Browse the repository at this point in the history
  18. usb: dwc2/gadget: fix phy disable sequence

    When the driver is removed s3c_hsotg_phy_disable is called three times
    instead of once. This results in decreasing of the phy reference counter
    below zero and thus consecutive inserts of the module fails.
    
    This patch removes calls to s3c_hsotg_phy_disable from s3c_hsotg_remove
    and s3c_hsotg_udc_stop.
    
    s3c_hsotg_udc_stop is called from udc-core.c only after
    usb_gadget_disconnect, which in turn calls s3c_hsotg_pullup, which
    already calls s3c_hsotg_phy_disable.
    
    s3c_hsotg_remove must be called only after udc_stop, so there is no
    point in disabling phy once again there.
    
    Signed-off-by: Kamil Debski <[email protected]>
    Signed-off-by: Marek Szyprowski <[email protected]>
    Signed-off-by: Robert Baldyga <[email protected]>
    Cc: stable <[email protected]> # 3.16
    Signed-off-by: Greg Kroah-Hartman <[email protected]>
    Kamil Debski authored and gregkh committed Sep 9, 2014
    Configuration menu
    Copy the full SHA
    0655314 View commit details
    Browse the repository at this point in the history
  19. usb: dwc2/gadget: fix phy initialization sequence

    In the Generic PHY Framework a NULL phy is considered to be a valid phy
    thus the "if (hsotg->phy)" check does not give us the information whether
    the Generic PHY Framework is used.
    
    In addition to the above this patch also removes phy_init from probe and
    phy_exit from remove. This is not necessary when init/exit is done in the
    s3c_hsotg_phy_enable/disable functions.
    
    Signed-off-by: Kamil Debski <[email protected]>
    Signed-off-by: Marek Szyprowski <[email protected]>
    Signed-off-by: Robert Baldyga <[email protected]>
    Cc: stable <[email protected]> # 3.16
    Signed-off-by: Greg Kroah-Hartman <[email protected]>
    Kamil Debski authored and gregkh committed Sep 9, 2014
    Configuration menu
    Copy the full SHA
    ca2c5ba View commit details
    Browse the repository at this point in the history
  20. usb: dwc2/gadget: break infinite loop in endpoint disable code

    This patch fixes possible freeze caused by infinite loop in interrupt
    context.
    
    Signed-off-by: Marek Szyprowski <[email protected]>
    Signed-off-by: Robert Baldyga <[email protected]>
    Cc: stable <[email protected]> # 3.16
    Signed-off-by: Greg Kroah-Hartman <[email protected]>
    mszyprow authored and gregkh committed Sep 9, 2014
    Configuration menu
    Copy the full SHA
    e0cbe59 View commit details
    Browse the repository at this point in the history
  21. usb: dwc2/gadget: do not call disconnect method in pullup

    This leads to potential spinlock recursion in composite framework, other
    udc drivers also don't call it directly from pullup method.
    
    Signed-off-by: Marek Szyprowski <[email protected]>
    Signed-off-by: Robert Baldyga <[email protected]>
    Cc: stable <[email protected]> # 3.16
    Signed-off-by: Greg Kroah-Hartman <[email protected]>
    mszyprow authored and gregkh committed Sep 9, 2014
    Configuration menu
    Copy the full SHA
    b510df5 View commit details
    Browse the repository at this point in the history
  22. usb: dwc2/gadget: delay enabling irq once hardware is configured prop…

    …erly
    
    This patch fixes kernel panic/interrupt storm/etc issues if bootloader
    left s3c-hsotg module in enabled state. Now interrupt handler is enabled
    only after proper configuration of hardware registers.
    
    Signed-off-by: Marek Szyprowski <[email protected]>
    Signed-off-by: Robert Baldyga <[email protected]>
    Cc: stable <[email protected]> # 3.16
    Signed-off-by: Greg Kroah-Hartman <[email protected]>
    mszyprow authored and gregkh committed Sep 9, 2014
    Configuration menu
    Copy the full SHA
    eb3c56c View commit details
    Browse the repository at this point in the history
  23. usb: dwc2/gadget: avoid disabling ep0

    Endpoint 0 should not be disabled, so we start loop counter from number 1.
    
    Signed-off-by: Robert Baldyga <[email protected]>
    Cc: stable <[email protected]> # 3.16
    Signed-off-by: Greg Kroah-Hartman <[email protected]>
    Robert Baldyga authored and gregkh committed Sep 9, 2014
    Configuration menu
    Copy the full SHA
    604eac3 View commit details
    Browse the repository at this point in the history
  24. Merge tag 'microblaze-3.17-rc5' of git://git.monstr.eu/linux-2.6-micr…

    …oblaze
    
    Pull arch/microblaze fixes from Michal Simek:
     - Kconfig menu structure fix
     - fix number of syscalls
     - fix compilation warnings from allmodconfig
    
    * tag 'microblaze-3.17-rc5' of git://git.monstr.eu/linux-2.6-microblaze:
      microblaze: Fix number of syscalls
      microblaze: Rename Advance setup to Kernel features
      microblaze: Add mm/Kconfig to advance menu
      arch/microblaze/include/asm/uaccess.h: Use pr_devel() instead of pr_debug()
      arch/microblaze/include/asm/entry.h: Include "linux/linkage.h" to avoid compiling issue
    torvalds committed Sep 9, 2014
    Configuration menu
    Copy the full SHA
    619df5d View commit details
    Browse the repository at this point in the history
  25. Input: wm971x - fix typo in module parameter description

    Signed-off-by: Masanari Iida <[email protected]>
    Signed-off-by: Dmitry Torokhov <[email protected]>
    standby24x7 authored and dtor committed Sep 9, 2014
    Configuration menu
    Copy the full SHA
    31b2b16 View commit details
    Browse the repository at this point in the history
  26. Input: atmel_mxt_ts - downgrade warning about empty interrupts

    In the case where the CHG/interrupt line mode is not configured correctly,
    this warning is output to dmesg output for each interrupt. Downgrade the
    message to debug.
    
    Signed-off-by: Nick Dyer <[email protected]>
    Signed-off-by: Dmitry Torokhov <[email protected]>
    ndyer authored and dtor committed Sep 9, 2014
    Configuration menu
    Copy the full SHA
    651b460 View commit details
    Browse the repository at this point in the history
  27. Input: matrix_keypad - use request_any_context_irq()

    When trying to use the matrix-keypad driver with GPIO drivers that
    require nested irq handlers (e.g. I2C GPIO adapters like PCA9554),
    request_irq() fails because the GPIO driver requires a threaded
    interrupt handler.
    
    Use request_any_context_irq() to be able to use any GPIO driver as
    keypad driver.
    
    Signed-off-by: Lothar Waßmann <[email protected]>
    Signed-off-by: Dmitry Torokhov <[email protected]>
    lw-karo authored and dtor committed Sep 9, 2014
    Configuration menu
    Copy the full SHA
    24e4d21 View commit details
    Browse the repository at this point in the history
  28. Input: synaptics - add support for ForcePads

    ForcePads are found on HP EliteBook 1040 laptops. They lack any kind of
    physical buttons, instead they generate primary button click when user
    presses somewhat hard on the surface of the touchpad. Unfortunately they
    also report primary button click whenever there are 2 or more contacts
    on the pad, messing up all multi-finger gestures (2-finger scrolling,
    multi-finger tapping, etc). To cope with this behavior we introduce a
    delay (currently 50 msecs) in reporting primary press in case more
    contacts appear.
    
    Cc: [email protected]
    Reviewed-by: Hans de Goede <[email protected]>
    Signed-off-by: Dmitry Torokhov <[email protected]>
    dtor committed Sep 9, 2014
    Configuration menu
    Copy the full SHA
    5715fc7 View commit details
    Browse the repository at this point in the history

Commits on Sep 10, 2014

  1. Merge branch 'for-next-3.17' of git://git.samba.org/sfrench/cifs-2.6

    Pull cifs/smb3 fixes from Steve French:
     "This includes various cifs and smb3 bug fixes including those for bugs
      found with the recently updated xfstests.
    
      Also I am working fixes for two additional cifs problems found by
      xfstests which I plan to send later (when reviewed and run additional
      tests)"
    
    * 'for-next-3.17' of git://git.samba.org/sfrench/cifs-2.6:
      Clarify Kconfig help text for CIFS and SMB2/SMB3
      CIFS: Fix wrong filename length for SMB2
      CIFS: Fix wrong restart readdir for SMB1
      CIFS: Fix directory rename error
      cifs: No need to send SIGKILL to demux_thread during umount
      cifs: Allow directIO read/write during cache=strict
      cifs: remove unneeded check of null checking in if condition
      cifs: fix a possible use of uninit variable in SMB2_sess_setup
      cifs: fix memory leak when password is supplied multiple times
      cifs: fix a possible null pointer deref in decode_ascii_ssetup
      Trivial whitespace fix
    torvalds committed Sep 10, 2014
    Configuration menu
    Copy the full SHA
    e874a5f View commit details
    Browse the repository at this point in the history
  2. rbd: avoid format-security warning inside alloc_workqueue()

    drivers/block/rbd.c: In function ‘rbd_dev_device_setup’:
    drivers/block/rbd.c:5090:19: warning: format not a string literal and no format arguments [-Wformat-security]
    
    Reported-by: kbuild test robot <[email protected]>
    Signed-off-by: Ilya Dryomov <[email protected]>
    idryomov committed Sep 10, 2014
    Configuration menu
    Copy the full SHA
    58d1362 View commit details
    Browse the repository at this point in the history
  3. rbd: fix error return code in rbd_dev_device_setup()

    Fix to return -ENOMEM from the workqueue alloc error handling
    case instead of 0, as done elsewhere in this function.
    
    Reviewed-by: Alex Elder <[email protected]>
    Signed-off-by: Wei Yongjun <[email protected]>
    Wei Yongjun authored and idryomov committed Sep 10, 2014
    Configuration menu
    Copy the full SHA
    255939e View commit details
    Browse the repository at this point in the history
  4. pinctrl: baytrail: resolve unbalanced IRQ wake disable warning

    Add the IRQCHIP_SKIP_SET_WAKE flag to baytrail gpio irq_chip
    to resolve unbalaced IRQ wake disable warnings.
    
    Suggested-by: Borun Fu <[email protected]>
    Signed-off-by: Mathias Nyman <[email protected]>
    Reviewed-by: Mika Westerberg <[email protected]>
    Signed-off-by: Linus Walleij <[email protected]>
    matnyman authored and linusw committed Sep 10, 2014
    Configuration menu
    Copy the full SHA
    41939e6 View commit details
    Browse the repository at this point in the history
  5. MAINTAINERS: Tomasz has moved

    I am leaving Samsung, so my current e-mail address is not going to work
    any longer. Replace it with my private one. In addition, Sylwester
    Nawrocki is being added as co-maintainer for Samsung clock drivers to
    take some of the responsibilities, as I will be doing my part in my spare
    time.
    
    Signed-off-by: Tomasz Figa <[email protected]>
    Signed-off-by: Linus Walleij <[email protected]>
    Tomasz Figa authored and linusw committed Sep 10, 2014
    Configuration menu
    Copy the full SHA
    fea685e View commit details
    Browse the repository at this point in the history
  6. x86/xen: don't copy bogus duplicate entries into kernel page tables

    When RANDOMIZE_BASE (KASLR) is enabled; or the sum of all loaded
    modules exceeds 512 MiB, then loading modules fails with a warning
    (and hence a vmalloc allocation failure) because the PTEs for the
    newly-allocated vmalloc address space are not zero.
    
      WARNING: CPU: 0 PID: 494 at linux/mm/vmalloc.c:128
               vmap_page_range_noflush+0x2a1/0x360()
    
    This is caused by xen_setup_kernel_pagetables() copying
    level2_kernel_pgt into level2_fixmap_pgt, overwriting many non-present
    entries.
    
    Without KASLR, the normal kernel image size only covers the first half
    of level2_kernel_pgt and module space starts after that.
    
    L4[511]->level3_kernel_pgt[510]->level2_kernel_pgt[  0..255]->kernel
                                                      [256..511]->module
                              [511]->level2_fixmap_pgt[  0..505]->module
    
    This allows 512 MiB of of module vmalloc space to be used before
    having to use the corrupted level2_fixmap_pgt entries.
    
    With KASLR enabled, the kernel image uses the full PUD range of 1G and
    module space starts in the level2_fixmap_pgt. So basically:
    
    L4[511]->level3_kernel_pgt[510]->level2_kernel_pgt[0..511]->kernel
                              [511]->level2_fixmap_pgt[0..505]->module
    
    And now no module vmalloc space can be used without using the corrupt
    level2_fixmap_pgt entries.
    
    Fix this by properly converting the level2_fixmap_pgt entries to MFNs,
    and setting level1_fixmap_pgt as read-only.
    
    A number of comments were also using the the wrong L3 offset for
    level2_kernel_pgt.  These have been corrected.
    
    Signed-off-by: Stefan Bader <[email protected]>
    Signed-off-by: David Vrabel <[email protected]>
    Reviewed-by: Boris Ostrovsky <[email protected]>
    Cc: [email protected]
    smb49 authored and David Vrabel committed Sep 10, 2014
    Configuration menu
    Copy the full SHA
    0b5a506 View commit details
    Browse the repository at this point in the history
  7. blk-mq: scale depth and rq map appropriate if low on memory

    If we are running in a kdump environment, resources are scarce.
    For some SCSI setups with a huge set of shared tags, we run out
    of memory allocating what the drivers is asking for. So implement
    a scale back logic to reduce the tag depth for those cases, allowing
    the driver to successfully load.
    
    We should extend this to detect low memory situations, and implement
    a sane fallback for those (1 queue, 64 tags, or something like that).
    
    Tested-by: Robert Elliott <[email protected]>
    Signed-off-by: Jens Axboe <[email protected]>
    axboe committed Sep 10, 2014
    Configuration menu
    Copy the full SHA
    a516440 View commit details
    Browse the repository at this point in the history
  8. dm cache: fix race causing dirty blocks to be marked as clean

    When a writeback or a promotion of a block is completed, the cell of
    that block is removed from the prison, the block is marked as clean, and
    the clear_dirty() callback of the cache policy is called.
    
    Unfortunately, performing those actions in this order allows an incoming
    new write bio for that block to come in before clearing the dirty status
    is completed and therefore possibly causing one of these two scenarios:
    
    Scenario A:
    
    Thread 1                      Thread 2
    cell_defer()                  .
    - cell removed from prison    .
    - detained bios queued        .
    .                             incoming write bio
    .                             remapped to cache
    .                             set_dirty() called,
    .                               but block already dirty
    .                               => it does nothing
    clear_dirty()                 .
    - block marked clean          .
    - policy clear_dirty() called .
    
    Result: Block is marked clean even though it is actually dirty. No
    writeback will occur.
    
    Scenario B:
    
    Thread 1                      Thread 2
    cell_defer()                  .
    - cell removed from prison    .
    - detained bios queued        .
    clear_dirty()                 .
    - block marked clean          .
    .                             incoming write bio
    .                             remapped to cache
    .                             set_dirty() called
    .                             - block marked dirty
    .                             - policy set_dirty() called
    - policy clear_dirty() called .
    
    Result: Block is properly marked as dirty, but policy thinks it is clean
    and therefore never asks us to writeback it.
    This case is visible in "dmsetup status" dirty block count (which
    normally decreases to 0 on a quiet device).
    
    Fix these issues by calling clear_dirty() before calling cell_defer().
    Incoming bios for that block will then be detained in the cell and
    released only after clear_dirty() has completed, so the race will not
    occur.
    
    Found by inspecting the code after noticing spurious dirty counts
    (scenario B).
    
    Signed-off-by: Anssi Hannula <[email protected]>
    Acked-by: Joe Thornber <[email protected]>
    Signed-off-by: Mike Snitzer <[email protected]>
    Cc: [email protected]
    anssih authored and snitm committed Sep 10, 2014
    Configuration menu
    Copy the full SHA
    40aa978 View commit details
    Browse the repository at this point in the history
  9. libceph: gracefully handle large reply messages from the mon

    We preallocate a few of the message types we get back from the mon.  If we
    get a larger message than we are expecting, fall back to trying to allocate
    a new one instead of blindly using the one we have.
    
    CC: [email protected]
    Signed-off-by: Sage Weil <[email protected]>
    Reviewed-by: Ilya Dryomov <[email protected]>
    liewegas authored and idryomov committed Sep 10, 2014
    Configuration menu
    Copy the full SHA
    73c3d48 View commit details
    Browse the repository at this point in the history
  10. libceph: add process_one_ticket() helper

    Add a helper for processing individual cephx auth tickets.  Needed for
    the next commit, which deals with allocating ticket buffers.  (Most of
    the diff here is whitespace - view with git diff -b).
    
    Cc: [email protected]
    Signed-off-by: Ilya Dryomov <[email protected]>
    Reviewed-by: Sage Weil <[email protected]>
    idryomov committed Sep 10, 2014
    Configuration menu
    Copy the full SHA
    597cda3 View commit details
    Browse the repository at this point in the history
  11. libceph: do not hard code max auth ticket len

    We hard code cephx auth ticket buffer size to 256 bytes.  This isn't
    enough for any moderate setups and, in case tickets themselves are not
    encrypted, leads to buffer overflows (ceph_x_decrypt() errors out, but
    ceph_decode_copy() doesn't - it's just a memcpy() wrapper).  Since the
    buffer is allocated dynamically anyway, allocated it a bit later, at
    the point where we know how much is going to be needed.
    
    Fixes: http://tracker.ceph.com/issues/8979
    
    Cc: [email protected]
    Signed-off-by: Ilya Dryomov <[email protected]>
    Reviewed-by: Sage Weil <[email protected]>
    idryomov committed Sep 10, 2014
    Configuration menu
    Copy the full SHA
    c27a3e4 View commit details
    Browse the repository at this point in the history
  12. Input: atmel_mxt_ts - fix double free of input device

    [Nick Dyer: reworked to move free of input device into separate function
    and only call in paths that require it.]
    Signed-off-by: Nick Dyer <[email protected]>
    Signed-off-by: Dmitry Torokhov <[email protected]>
    swarren authored and dtor committed Sep 10, 2014
    Configuration menu
    Copy the full SHA
    58e4aee View commit details
    Browse the repository at this point in the history
  13. Input: serport - add compat handling for SPIOCSTYPE ioctl

    When running a 32-bit inputattach utility in a 64-bit system, there will be
    error code "inputattach: can't set device type". This is caused by the
    serport device driver not supporting compat_ioctl, so that SPIOCSTYPE ioctl
    fails.
    
    Cc: [email protected]
    Signed-off-by: John Sung <[email protected]>
    Signed-off-by: Dmitry Torokhov <[email protected]>
    penmount authored and dtor committed Sep 10, 2014
    Configuration menu
    Copy the full SHA
    a80d8b0 View commit details
    Browse the repository at this point in the history
  14. pnfs: fix filelayout_retry_commit when idx > 0

    filelayout_retry_commit was recently split out from alloc_ds_commits,
    but was done in such a way that the bucket pointer always starts at
    index 0 no matter what the @idx argument is set to.
    
    The intention of the @idx argument is to retry commits starting at
    bucket @idx. This is called when alloc_ds_commits fails for a bucket.
    
    Signed-off-by: Weston Andros Adamson <[email protected]>
    Signed-off-by: Trond Myklebust <[email protected]>
    westonandrosadamson authored and trondmypd committed Sep 10, 2014
    Configuration menu
    Copy the full SHA
    224ecbf View commit details
    Browse the repository at this point in the history
  15. uas: Disable uas on ASM1051 devices

    There are a large numbers of issues with ASM1051 devices in uas mode:
    
    1) They do not support REPORT SUPPORTED OPERATION CODES
    
    2) They use out of spec 8 byte status iu-s when they have no sense data,
       switching to normal 16 byte status iu-s when they do have sense data.
    
    3) They hang / crash when combined with some disks, e.g. a Crucial M500 ssd.
    
    4) They hang / crash when stressed (through e.g. sg_reset --bus) with disks
       with which then normally do work (once 1 & 2 are worked around).
    
    Where as in BOT mode they appear to work fine, so the best way forward with
    these devices is to just blacklist them for uas usage.
    
    Unfortunately this is easier said then done. as older versions of the ASM1053
    (which works fine) use the same usb-id as the ASM1051.
    
    When connected over USB-3 the 2 can be told apart by the number of streams
    they support. So this patch adds some less then pretty code to disable uas for
    the ASM1051. When connected over USB-2, simply disable uas alltogether for
    devices with the shared usb-id.
    
    Cc: [email protected] # 3.16
    Signed-off-by: Hans de Goede <[email protected]>
    Signed-off-by: Greg Kroah-Hartman <[email protected]>
    jwrdegoede authored and gregkh committed Sep 10, 2014
    Configuration menu
    Copy the full SHA
    a9c54ca View commit details
    Browse the repository at this point in the history
  16. usb: hub: take hub->hdev reference when processing from eventlist

    During surprise device hotplug removal tests, it was observed that
    hub_events may try to call usb_lock_device on a device that has already
    been freed. Protect the usb_device by taking out a reference (under the
    hub_event_lock) when hub_events pulls it off the list, returning the
    reference after hub_events is finished using it.
    
    Signed-off-by: Joe Lawrence <[email protected]>
    Suggested-by: David Bulkow <[email protected]> for using kref
    Suggested-by: Alan Stern <[email protected]> for placement
    Acked-by: Alan Stern <[email protected]>
    Cc: stable <[email protected]>
    Signed-off-by: Greg Kroah-Hartman <[email protected]>
    Joe Lawrence authored and gregkh committed Sep 10, 2014
    Configuration menu
    Copy the full SHA
    c605f3c View commit details
    Browse the repository at this point in the history
  17. Merge branch 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel…

    …/git/jack/linux-fs
    
    Pull UDF fixes from Jan Kara:
     "Fixes for UDF handling of NFS handles and one fix for proper handling
      of corrupted media"
    
    * 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jack/linux-fs:
      udf: saner calling conventions for udf_new_inode()
      udf: fix the udf_iget() vs. udf_new_inode() races
      udf: merge the pieces inserting a new non-directory object into directory
      udf: Set i_generation field
      udf: Properly detect stale inodes
      udf: Make udf_read_inode() and udf_iget() return error
      udf: Avoid infinite loop when processing indirect ICBs
      udf: Fold udf_fill_inode() into __udf_read_inode()
      udf: Avoid dir link count to go negative
    torvalds committed Sep 10, 2014
    Configuration menu
    Copy the full SHA
    7ec62d4 View commit details
    Browse the repository at this point in the history
  18. mem-hotplug: let memblock skip the hotpluggable memory regions in __n…

    …ext_mem_range()
    
    Let memblock skip the hotpluggable memory regions in __next_mem_range(),
    it is used to to prevent memblock from allocating hotpluggable memory
    for the kernel at early time. The code is the same as __next_mem_range_rev().
    
    Clear hotpluggable flag before releasing free pages to the buddy
    allocator.  If we don't clear hotpluggable flag in
    free_low_memory_core_early(), the memory which marked hotpluggable flag
    will not free to buddy allocator.  Because __next_mem_range() will skip
    them.
    
    free_low_memory_core_early
    	for_each_free_mem_range
    		for_each_mem_range
    			__next_mem_range
    
    [[email protected]: fix warning]
    Signed-off-by: Xishi Qiu <[email protected]>
    Cc: Tejun Heo <[email protected]>
    Cc: Tang Chen <[email protected]>
    Cc: Zhang Yanfei <[email protected]>
    Cc: Wen Congyang <[email protected]>
    Cc: "Rafael J. Wysocki" <[email protected]>
    Cc: "H. Peter Anvin" <[email protected]>
    Cc: Wu Fengguang <[email protected]>
    Signed-off-by: Andrew Morton <[email protected]>
    Signed-off-by: Linus Torvalds <[email protected]>
    Xishi Qiu authored and torvalds committed Sep 10, 2014
    Configuration menu
    Copy the full SHA
    0a313a9 View commit details
    Browse the repository at this point in the history
  19. kernel/printk/printk.c: fix faulty logic in the case of recursive printk

    We shouldn't set text_len in the code path that detects printk recursion
    because text_len corresponds to the length of the string inside textbuf.
    A few lines down from the line
    
        text_len = strlen(recursion_msg);
    
    is the line
    
        text_len += vscnprintf(text + text_len, ...);
    
    So if printk detects recursion, it sets text_len to 29 (the length of
    recursion_msg) and logs an error.  Then the message supplied by the
    caller of printk is stored inside textbuf but offset by 29 bytes.  This
    means that the output of the recursive call to printk will contain 29
    bytes of garbage in front of it.
    
    This defect is caused by commit 458df9f ("printk: remove separate
    printk_sched buffers and use printk buf instead") which turned the line
    
        text_len = vscnprintf(text, ...);
    
    into
    
        text_len += vscnprintf(text + text_len, ...);
    
    To fix this, this patch avoids setting text_len when logging the printk
    recursion error.  This patch also marks unlikely() the branch leading up
    to this code.
    
    Fixes: 458df9f ("printk: remove separate printk_sched buffers and use printk buf instead")
    Signed-off-by: Patrick Palka <[email protected]>
    Reviewed-by: Petr Mladek <[email protected]>
    Reviewed-by: Jan Kara <[email protected]>
    Acked-by: Steven Rostedt <[email protected]>
    Cc: <[email protected]>
    Signed-off-by: Andrew Morton <[email protected]>
    Signed-off-by: Linus Torvalds <[email protected]>
    Patrick Palka authored and torvalds committed Sep 10, 2014
    Configuration menu
    Copy the full SHA
    000a7d6 View commit details
    Browse the repository at this point in the history
  20. eventpoll: fix uninitialized variable in epoll_ctl

    When calling epoll_ctl with operation EPOLL_CTL_DEL, structure epds is
    not initialized but ep_take_care_of_epollwakeup reads its event field.
    When this unintialized field has EPOLLWAKEUP bit set, a capability check
    is done for CAP_BLOCK_SUSPEND in ep_take_care_of_epollwakeup.  This
    produces unexpected messages in the audit log, such as (on a system
    running SELinux):
    
        type=AVC msg=audit(1408212798.866:410): avc:  denied
        { block_suspend } for  pid=7754 comm="dbus-daemon" capability=36
        scontext=unconfined_u:unconfined_r:unconfined_t
        tcontext=unconfined_u:unconfined_r:unconfined_t
        tclass=capability2 permissive=1
    
        type=SYSCALL msg=audit(1408212798.866:410): arch=c000003e syscall=233
        success=yes exit=0 a0=3 a1=2 a2=9 a3=7fffd4d66ec0 items=0 ppid=1
        pid=7754 auid=1000 uid=0 gid=0 euid=0 suid=0 fsuid=0 egid=0 sgid=0
        fsgid=0 tty=(none) ses=3 comm="dbus-daemon"
        exe="/usr/bin/dbus-daemon"
        subj=unconfined_u:unconfined_r:unconfined_t key=(null)
    
    ("arch=c000003e syscall=233 a1=2" means "epoll_ctl(op=EPOLL_CTL_DEL)")
    
    Remove use of epds in epoll_ctl when op == EPOLL_CTL_DEL.
    
    Fixes: 4d7e30d ("epoll: Add a flag, EPOLLWAKEUP, to prevent suspend while epoll events are ready")
    Signed-off-by: Nicolas Iooss <[email protected]>
    Cc: Alexander Viro <[email protected]>
    Cc: Arve Hjønnevåg <[email protected]>
    Cc: <[email protected]>
    Signed-off-by: Andrew Morton <[email protected]>
    Signed-off-by: Linus Torvalds <[email protected]>
    fishilico authored and torvalds committed Sep 10, 2014
    Configuration menu
    Copy the full SHA
    c680e41 View commit details
    Browse the repository at this point in the history
  21. sh: get_user_pages_fast() must flush cache

    This patch avoids fuse hangs on sh4 by flushing the cache on
    get_user_pages_fast().  This is not necessary a good thing to do, but
    get_user_pages() does this, so get_user_pages_fast() should too.
    
    Please note the patch for mips arch that addresses the similar problem:
      https://kernel.googlesource.com/pub/scm/linux/kernel/git/ralf/linux/+/linux-3.4.50%5E!/#F0
    
    They basically simply disable get_user_pages_fast() at all, using a
    fall-back to get_user_pages().  But my fix is different, it adds an
    explicit cache flushes.
    
    Signed-off-by: Stas Sergeev <[email protected]>
    Cc: Geert Uytterhoeven <[email protected]>
    Cc: Kamal Dasu <[email protected]>
    Signed-off-by: Andrew Morton <[email protected]>
    Signed-off-by: Linus Torvalds <[email protected]>
    stsp authored and torvalds committed Sep 10, 2014
    Configuration menu
    Copy the full SHA
    caac7e6 View commit details
    Browse the repository at this point in the history
  22. checkpatch: allow commit descriptions on separate line from commit id

    The general form for commit id and description is
    
      'Commit <12+hexdigits> ("commit description/subject line")'
    
    but commit logs often have relatively long commit ids and the commit
    description emds on the next line like:
    
      Some explanation as to why commit <12+hexdigits>
      ("commit foo description/subject line") is improved.
    
    Allow this form.
    
    Signed-off-by: Joe Perches <[email protected]>
    Suggested-by: Joe Lawrence <[email protected]>
    Tested-by: Joe Lawrence <[email protected]>
    Suggested-by: Geert Uytterhoeven <[email protected]>
    Signed-off-by: Andrew Morton <[email protected]>
    Signed-off-by: Linus Torvalds <[email protected]>
    JoePerches authored and torvalds committed Sep 10, 2014
    Configuration menu
    Copy the full SHA
    6688173 View commit details
    Browse the repository at this point in the history
  23. shm: add memfd.h to UAPI export list

    The new header file memfd.h from commit 9183df2 ("shm: add
    memfd_create() syscall") should be exported.
    
    Signed-off-by: David Drysdale <[email protected]>
    Reviewed-by: David Herrmann <[email protected]>
    Cc: Hugh Dickins <[email protected]>
    Signed-off-by: Andrew Morton <[email protected]>
    Signed-off-by: Linus Torvalds <[email protected]>
    daviddrysdale authored and torvalds committed Sep 10, 2014
    Configuration menu
    Copy the full SHA
    b01d072 View commit details
    Browse the repository at this point in the history
  24. mm/mmap.c: use pr_emerg when printing BUG related information

    Make sure we actually see the output of validate_mm() and browse_rb()
    before triggering a BUG().  pr_info isn't shown by default so the reason
    for the BUG() isn't obvious.
    
    Signed-off-by: Sasha Levin <[email protected]>
    Signed-off-by: Andrew Morton <[email protected]>
    Signed-off-by: Linus Torvalds <[email protected]>
    sashalevin authored and torvalds committed Sep 10, 2014
    Configuration menu
    Copy the full SHA
    8542bdf View commit details
    Browse the repository at this point in the history
  25. kcmp: fix standard comparison bug

    The C operator <= defines a perfectly fine total ordering on the set of
    values representable in a long.  However, unlike its namesake in the
    integers, it is not translation invariant, meaning that we do not have
    "b <= c" iff "a+b <= a+c" for all a,b,c.
    
    This means that it is always wrong to try to boil down the relationship
    between two longs to a question about the sign of their difference,
    because the resulting relation [a LEQ b iff a-b <= 0] is neither
    anti-symmetric or transitive.  The former is due to -LONG_MIN==LONG_MIN
    (take any two a,b with a-b = LONG_MIN; then a LEQ b and b LEQ a, but a !=
    b).  The latter can either be seen observing that x LEQ x+1 for all x,
    implying x LEQ x+1 LEQ x+2 ...  LEQ x-1 LEQ x; or more directly with the
    simple example a=LONG_MIN, b=0, c=1, for which a-b < 0, b-c < 0, but a-c >
    0.
    
    Note that it makes absolutely no difference that a transmogrying bijection
    has been applied before the comparison is done.  In fact, had the
    obfuscation not been done, one could probably not observe the bug
    (assuming all values being compared always lie in one half of the address
    space, the mathematical value of a-b is always representable in a long).
    As it stands, one can easily obtain three file descriptors exhibiting the
    non-transitivity of kcmp().
    
    Side note 1: I can't see that ensuring the MSB of the multiplier is
    set serves any purpose other than obfuscating the obfuscating code.
    
    Side note 2:
    #include <stdio.h>
    #include <stdlib.h>
    #include <string.h>
    #include <fcntl.h>
    #include <unistd.h>
    #include <assert.h>
    #include <sys/syscall.h>
    
    enum kcmp_type {
            KCMP_FILE,
            KCMP_VM,
            KCMP_FILES,
            KCMP_FS,
            KCMP_SIGHAND,
            KCMP_IO,
            KCMP_SYSVSEM,
            KCMP_TYPES,
    };
    pid_t pid;
    
    int kcmp(pid_t pid1, pid_t pid2, int type,
    	 unsigned long idx1, unsigned long idx2)
    {
    	return syscall(SYS_kcmp, pid1, pid2, type, idx1, idx2);
    }
    int cmp_fd(int fd1, int fd2)
    {
    	int c = kcmp(pid, pid, KCMP_FILE, fd1, fd2);
    	if (c < 0) {
    		perror("kcmp");
    		exit(1);
    	}
    	assert(0 <= c && c < 3);
    	return c;
    }
    int cmp_fdp(const void *a, const void *b)
    {
    	static const int normalize[] = {0, -1, 1};
    	return normalize[cmp_fd(*(int*)a, *(int*)b)];
    }
    #define MAX 100 /* This is plenty; I've seen it trigger for MAX==3 */
    int main(int argc, char *argv[])
    {
    	int r, s, count = 0;
    	int REL[3] = {0,0,0};
    	int fd[MAX];
    	pid = getpid();
    	while (count < MAX) {
    		r = open("/dev/null", O_RDONLY);
    		if (r < 0)
    			break;
    		fd[count++] = r;
    	}
    	printf("opened %d file descriptors\n", count);
    	for (r = 0; r < count; ++r) {
    		for (s = r+1; s < count; ++s) {
    			REL[cmp_fd(fd[r], fd[s])]++;
    		}
    	}
    	printf("== %d\t< %d\t> %d\n", REL[0], REL[1], REL[2]);
    	qsort(fd, count, sizeof(fd[0]), cmp_fdp);
    	memset(REL, 0, sizeof(REL));
    
    	for (r = 0; r < count; ++r) {
    		for (s = r+1; s < count; ++s) {
    			REL[cmp_fd(fd[r], fd[s])]++;
    		}
    	}
    	printf("== %d\t< %d\t> %d\n", REL[0], REL[1], REL[2]);
    	return (REL[0] + REL[2] != 0);
    }
    
    Signed-off-by: Rasmus Villemoes <[email protected]>
    Reviewed-by: Cyrill Gorcunov <[email protected]>
    "Eric W. Biederman" <[email protected]>
    Cc: <[email protected]>
    Signed-off-by: Andrew Morton <[email protected]>
    Signed-off-by: Linus Torvalds <[email protected]>
    Villemoes authored and torvalds committed Sep 10, 2014
    Configuration menu
    Copy the full SHA
    acbbe6f View commit details
    Browse the repository at this point in the history
  26. fsnotify/fdinfo: use named constants instead of hardcoded values

    MAX_HANDLE_SZ is equal to 128, but currently the size of pad is only 64
    bytes, so exportfs_encode_inode_fh can return an error.
    
    Signed-off-by: Andrey Vagin <[email protected]>
    Acked-by: Cyrill Gorcunov <[email protected]>
    Cc: Alexander Viro <[email protected]>
    Cc: <[email protected]>
    Signed-off-by: Andrew Morton <[email protected]>
    Signed-off-by: Linus Torvalds <[email protected]>
    avagin authored and torvalds committed Sep 10, 2014
    Configuration menu
    Copy the full SHA
    1fc98d1 View commit details
    Browse the repository at this point in the history
  27. fs/notify: don't show f_handle if exportfs_encode_inode_fh failed

    Currently we handle only ENOSPC.  In case of other errors the file_handle
    variable isn't filled properly and we will show a part of stack.
    
    Signed-off-by: Andrey Vagin <[email protected]>
    Acked-by: Cyrill Gorcunov <[email protected]>
    Cc: Alexander Viro <[email protected]>
    Cc: <[email protected]>
    Signed-off-by: Andrew Morton <[email protected]>
    Signed-off-by: Linus Torvalds <[email protected]>
    avagin authored and torvalds committed Sep 10, 2014
    Configuration menu
    Copy the full SHA
    7e88248 View commit details
    Browse the repository at this point in the history
  28. Merge branch 'akpm' (fixes from Andrew Morton)

    Merge misc fixes from Andrew Morton:
     "10 fixes"
    
    * emailed patches from Andrew Morton <[email protected]>:
      fs/notify: don't show f_handle if exportfs_encode_inode_fh failed
      fsnotify/fdinfo: use named constants instead of hardcoded values
      kcmp: fix standard comparison bug
      mm/mmap.c: use pr_emerg when printing BUG related information
      shm: add memfd.h to UAPI export list
      checkpatch: allow commit descriptions on separate line from commit id
      sh: get_user_pages_fast() must flush cache
      eventpoll: fix uninitialized variable in epoll_ctl
      kernel/printk/printk.c: fix faulty logic in the case of recursive printk
      mem-hotplug: let memblock skip the hotpluggable memory regions in __next_mem_range()
    torvalds committed Sep 10, 2014
    Configuration menu
    Copy the full SHA
    584f1ad View commit details
    Browse the repository at this point in the history

Commits on Sep 11, 2014

  1. usb: chipidea: msm: Use USB PHY API to control PHY state

    PHY drivers keep track of the current state of the hardware,
    so don't change PHY settings under it.
    
    Cc: 3.16+ <[email protected]>
    Cc: Tim Bird <[email protected]>
    Signed-off-by: Peter Chen <[email protected]>
    Signed-off-by: Ivan T. Ivanov <[email protected]>
    Acked-by: Felipe Balbi <[email protected]>
    Signed-off-by: Greg Kroah-Hartman <[email protected]>
    Ivan T. Ivanov authored and gregkh committed Sep 11, 2014
    Configuration menu
    Copy the full SHA
    ea29005 View commit details
    Browse the repository at this point in the history
  2. usb: chipidea: msm: Initialize PHY on reset event

    Initialize USB PHY after every Link controller reset
    
    Cc: 3.16+ <[email protected]>
    Cc: Tim Bird <[email protected]>
    Signed-off-by: Peter Chen <[email protected]>
    Signed-off-by: Ivan T. Ivanov <[email protected]>
    Signed-off-by: Greg Kroah-Hartman <[email protected]>
    Ivan T. Ivanov authored and gregkh committed Sep 11, 2014
    Configuration menu
    Copy the full SHA
    233c7da View commit details
    Browse the repository at this point in the history
  3. dmaengine: jz4740: Fix non-cyclic descriptor completion

    We need to make sure to deqeueue the descriptor from the active list before
    we call vchan_cookie_complete(). Also we need obviously only set chan->desc
    to NULL after we stopped using it.
    
    Signed-off-by: Lars-Peter Clausen <[email protected]>
    Signed-off-by: Vinod Koul <[email protected]>
    larsclausen authored and Vinod Koul committed Sep 11, 2014
    Configuration menu
    Copy the full SHA
    f498e06 View commit details
    Browse the repository at this point in the history
  4. GFS2: Hash the negative dentry during inode lookup

    Fix a regression introduced by:
    6d4ade9 GFS2: Add atomic_open support
    where an early return misses d_splice_alias() which had been
    adding the negative dentry.
    
    Signed-off-by: Benjamin Coddington <[email protected]>
    Signed-off-by: Bob Peterson <[email protected]>
    Signed-off-by: Steven Whitehouse <[email protected]>
    Benjamin Coddington authored and swhiteho committed Sep 11, 2014
    Configuration menu
    Copy the full SHA
    7b7a911 View commit details
    Browse the repository at this point in the history
  5. GFS2: Don't use MAXQUOTAS value

    MAXQUOTAS value defines maximum number of quota types VFS supports.
    This isn't necessarily the number of types gfs2 supports and with
    addition of project quotas these two numbers stop matching. So make gfs2
    use its private definition.
    
    CC: [email protected]
    Signed-off-by: Jan Kara <[email protected]>
    Signed-off-by: Steven Whitehouse <[email protected]>
    jankara authored and swhiteho committed Sep 11, 2014
    Configuration menu
    Copy the full SHA
    a937cca View commit details
    Browse the repository at this point in the history
  6. Merge branch 'drm-fixes-3.17' of git://people.freedesktop.org/~agd5f/…

    …linux into drm-fixes
    
    Just a few fixes for radeon for 3.17.
    
    * 'drm-fixes-3.17' of git://people.freedesktop.org/~agd5f/linux:
      drm/radeon/dpm: set the thermal type properly for special configs
      drm/radeon: reduce memory footprint for debugging
      drm/radeon: add connector quirk for fujitsu board
      drm/radeon: fix semaphore value init
      drm/radeon: only use me/pfp sync on evergreen+
    airlied committed Sep 11, 2014
    Configuration menu
    Copy the full SHA
    69e672f View commit details
    Browse the repository at this point in the history
  7. Merge tag 'drm-intel-fixes-2014-09-10' of git://anongit.freedesktop.o…

    …rg/drm-intel into drm-fixes
    
    more fixes for 3.17, almost all Cc: stable material.
    
    * tag 'drm-intel-fixes-2014-09-10' of git://anongit.freedesktop.org/drm-intel:
      drm/i915: Wait for vblank before enabling the TV encoder
      drm/i915: Evict CS TLBs between batches
      drm/i915: Fix irq enable tracking in driver load
      drm/i915: Fix EIO/wedged handling in gem fault handler
      drm/i915: Prevent recursive deadlock on releasing a busy userptr
    airlied committed Sep 11, 2014
    Configuration menu
    Copy the full SHA
    3afdd8a View commit details
    Browse the repository at this point in the history
  8. drm/msm: Change nested function to static function

    There is currently a nested function in Russel King's tree
    for the msm HDMI driver.
    
    The last nested function was removed from the Linux kernel
    when the Thinkpad driver was fixed.
    
    I believe nested functions are not desired upstream, and it
    also breaks compilation with clang so here is a patch to
    change the nested function into static function. The patch
    works with both clang and gcc.
    
    Signed-off-by: Mark Charlebois <[email protected]>
    Signed-off-by: Rob Clark <[email protected]>
    mcharleb authored and robclark committed Sep 11, 2014
    Configuration menu
    Copy the full SHA
    fc88610 View commit details
    Browse the repository at this point in the history
  9. drm/msm/hdmi: fix build break on non-CCF platforms

    Reported-by: Russell King <[email protected]>
    Signed-off-by: Rob Clark <[email protected]>
    robclark committed Sep 11, 2014
    Configuration menu
    Copy the full SHA
    28a38b6 View commit details
    Browse the repository at this point in the history
  10. drm/msm: don't crash if no msm.vram param

    If VRAM carveout is used, due to no IOMMU, we should have a default
    value for msm.vram so that we don't simply crash.
    
    Reported-by: Srinivas Kandagatla <[email protected]>
    Signed-off-by: Rob Clark <[email protected]>
    robclark committed Sep 11, 2014
    Configuration menu
    Copy the full SHA
    3a10ba8 View commit details
    Browse the repository at this point in the history
  11. Merge branch 'msm-fixes-3.17-rc4' of git://people.freedesktop.org/~ro…

    …bclark/linux into drm-fixes
    
    A couple more little fixes:
     1) fix from llvm/clang folks
     2) fix build if common clock framework is not used
     3) if vram carveout is used, have default size for vram carveout
    
    * 'msm-fixes-3.17-rc4' of git://people.freedesktop.org/~robclark/linux:
      drm/msm: don't crash if no msm.vram param
      drm/msm/hdmi: fix build break on non-CCF platforms
      drm/msm: Change nested function to static function
    airlied committed Sep 11, 2014
    Configuration menu
    Copy the full SHA
    d9f4acd View commit details
    Browse the repository at this point in the history
  12. virtio-rng: fix stuck of hot-unplugging busy device

    When we try to hot-remove a busy virtio-rng device from QEMU monitor,
    the device can't be hot-removed. Because virtio-rng driver hangs at
    wait_for_completion_killable().
    
    This patch exits the waiting by completing have_data completion before
    unregistering, resets data_avail to avoid the hwrng core use wrong
    buffer bytes.
    
    Signed-off-by: Amos Kong <[email protected]>
    Reviewed-by: Amit Shah <[email protected]>
    Cc: [email protected]
    Signed-off-by: Rusty Russell <[email protected]>
    amoskong authored and rustyrussell committed Sep 11, 2014
    Configuration menu
    Copy the full SHA
    3856e54 View commit details
    Browse the repository at this point in the history
  13. virtio-rng: skip reading when we start to remove the device

    Before we really unregister the hwrng device, reading will get stuck if
    the virtio device is reset. We should return error for reading when we
    start to remove the device.
    
    Signed-off-by: Amos Kong <[email protected]>
    Reviewed-by: Amit Shah <[email protected]>
    Cc: [email protected]
    Signed-off-by: Rusty Russell <[email protected]>
    amoskong authored and rustyrussell committed Sep 11, 2014
    Configuration menu
    Copy the full SHA
    f498195 View commit details
    Browse the repository at this point in the history
  14. Merge branch 'pm-cpufreq'

    * pm-cpufreq:
      cpufreq / OPP: Fix the order of arguments for kcalloc()
    rafaeljw committed Sep 11, 2014
    Configuration menu
    Copy the full SHA
    1c00f73 View commit details
    Browse the repository at this point in the history
  15. Merge branches 'acpi-rtc', 'acpi-lpss' and 'acpi-battery'

    * acpi-rtc:
      ACPI / RTC: Fix CMOS RTC opregion handler accesses to wrong addresses
    
    * acpi-lpss:
      ACPI / LPSS: complete PM entries for LPSS power domain
    
    * acpi-battery:
      Revert "ACPI / battery: fix wrong value of capacity_now reported when fully charged"
      Revert "ACPI / battery: Fix warning message in acpi_battery_get_state()"
    rafaeljw committed Sep 11, 2014
    Configuration menu
    Copy the full SHA
    d2be899 View commit details
    Browse the repository at this point in the history
  16. Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel…

    …/git/dtor/input
    
    Pull input updates from Dmitry Torokhov:
     "An update to Synaptics PS/2 driver to handle "ForcePads" (currently
      found in HP EliteBook 1040 laptops), a change for Elan PS/2 driver to
      detect newer touchpads, bunch of devices get annotated as Trackpoint
      and/or Pointer to help userspace classify and handle them, plus
      assorted driver fixes"
    
    * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input:
      Input: serport - add compat handling for SPIOCSTYPE ioctl
      Input: atmel_mxt_ts - fix double free of input device
      Input: synaptics - add support for ForcePads
      Input: matrix_keypad - use request_any_context_irq()
      Input: atmel_mxt_ts - downgrade warning about empty interrupts
      Input: wm971x - fix typo in module parameter description
      Input: cap1106 - fix register definition
      Input: add missing POINTER / DIRECT properties to a bunch of drivers
      Input: add INPUT_PROP_POINTING_STICK property
      Input: elantech - fix detection of touchpad on ASUS s301l
    torvalds committed Sep 11, 2014
    Configuration menu
    Copy the full SHA
    c8c16e3 View commit details
    Browse the repository at this point in the history
  17. Merge tag 'pinctrl-v3.17-3' of git://git.kernel.org/pub/scm/linux/ker…

    …nel/git/linusw/linux-pinctrl
    
    Pull two pin control fixes from Linus Walleij:
     - fix a warning about unbalanced IRQs on the Baytrail
     - update Tomasz Figa's address in MAINTAINERS
    
    * tag 'pinctrl-v3.17-3' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-pinctrl:
      MAINTAINERS: Tomasz has moved
      pinctrl: baytrail: resolve unbalanced IRQ wake disable warning
    torvalds committed Sep 11, 2014
    Configuration menu
    Copy the full SHA
    8b02c5e View commit details
    Browse the repository at this point in the history
  18. Merge branch 'fixes' of git://git.infradead.org/users/vkoul/slave-dma

    Pull dmaengine fixes from Vinod Koul:
     "Two minor fixes.
    
      First one from Kuninori clarifying dmas bindings and second from Lars
      for fixing dma descriptor completion in non cyclic case"
    
    * 'fixes' of git://git.infradead.org/users/vkoul/slave-dma:
      dmaengine: jz4740: Fix non-cyclic descriptor completion
      dt/bindings: rcar-audmapp: tidyup dmas explanation
    torvalds committed Sep 11, 2014
    Configuration menu
    Copy the full SHA
    1497e84 View commit details
    Browse the repository at this point in the history
  19. arm64: flush TLS registers during exec

    Nathan reports that we leak TLS information from the parent context
    during an exec, as we don't clear the TLS registers when flushing the
    thread state.
    
    This patch updates the flushing code so that we:
    
      (1) Unconditionally zero the tpidr_el0 register (since this is fully
          context switched for native tasks and zeroed for compat tasks)
    
      (2) Zero the tp_value state in thread_info before clearing the
          tpidrr0_el0 register for compat tasks (since this is only writable
          by the set_tls compat syscall and therefore not fully switched).
    
    A missing compiler barrier is also added to the compat set_tls syscall.
    
    Cc: <[email protected]>
    Acked-by: Nathan Lynch <[email protected]>
    Reported-by: Nathan Lynch <[email protected]>
    Signed-off-by: Will Deacon <[email protected]>
    wildea01 committed Sep 11, 2014
    Configuration menu
    Copy the full SHA
    eb35bdd View commit details
    Browse the repository at this point in the history
  20. xen/arm: introduce XENFEAT_grant_map_identity

    The flag tells us that the hypervisor maps a grant page to guest
    physical address == machine address of the page in addition to the
    normal grant mapping address. It is needed to properly issue cache
    maintenance operation at the completion of a DMA operation involving a
    foreign grant.
    
    Signed-off-by: Stefano Stabellini <[email protected]>
    Tested-by: Denis Schneider <[email protected]>
    Stefano Stabellini committed Sep 11, 2014
    Configuration menu
    Copy the full SHA
    5ebc77d View commit details
    Browse the repository at this point in the history
  21. xen/arm: reimplement xen_dma_unmap_page & friends

    xen_dma_unmap_page, xen_dma_sync_single_for_cpu and
    xen_dma_sync_single_for_device are currently implemented by calling into
    the corresponding generic ARM implementation of these functions. In
    order to do this, firstly the dma_addr_t handle, that on Xen is a
    machine address, needs to be translated into a physical address.  The
    operation is expensive and inaccurate, given that a single machine
    address can correspond to multiple physical addresses in one domain,
    because the same page can be granted multiple times by the frontend.
    
    To avoid this problem, we introduce a Xen specific implementation of
    xen_dma_unmap_page, xen_dma_sync_single_for_cpu and
    xen_dma_sync_single_for_device, that can operate on machine addresses
    directly.
    
    The new implementation relies on the fact that the hypervisor creates a
    second p2m mapping of any grant pages at physical address == machine
    address of the page for dom0. Therefore we can access memory at physical
    address == dma_addr_r handle and perform the cache flushing there. Some
    cache maintenance operations require a virtual address. Instead of using
    ioremap_cache, that is not safe in interrupt context, we allocate a
    per-cpu PAGE_KERNEL scratch page and we manually update the pte for it.
    
    arm64 doesn't need cache maintenance operations on unmap for now.
    
    Signed-off-by: Stefano Stabellini <[email protected]>
    Tested-by: Denis Schneider <[email protected]>
    Stefano Stabellini committed Sep 11, 2014
    Configuration menu
    Copy the full SHA
    340720b View commit details
    Browse the repository at this point in the history
  22. xen/arm: remove mach_to_phys rbtree

    Remove the rbtree used to keep track of machine to physical mappings:
    the frontend can grant the same page multiple times, leading to errors
    inserting or removing entries from the mach_to_phys tree.
    
    Linux only needed to know the physical address corresponding to a given
    machine address in swiotlb-xen. Now that swiotlb-xen can call the
    xen_dma_* functions passing the machine address directly, we can remove
    it.
    
    Signed-off-by: Stefano Stabellini <[email protected]>
    Tested-by: Denis Schneider <[email protected]>
    Stefano Stabellini committed Sep 11, 2014
    Configuration menu
    Copy the full SHA
    d50582e View commit details
    Browse the repository at this point in the history
  23. Merge tag 'pm+acpi-3.17-rc5' of git://git.kernel.org/pub/scm/linux/ke…

    …rnel/git/rafael/linux-pm
    
    Pull ACPI and power management fixes from Rafael Wysocki:
     "These are regression fixes (cpufreq, ACPI battery) and fixes for stuff
      that never worked correctly (ACPI RTC operation region handler and PM
      domain implementation in the ACPI LPSS driver).
    
      Specifics:
    
       - Fix for the cpufreq Operation Performance Points (OPP) code where a
         recent commit added a kcalloc() call with an incorrect ordering of
         arguments.  From Anand Moon.
    
       - Reverts of two ACPI battery commits that caused incorrect
         diagnostic information to be printed to dmesg in some cases from
         Bjørn Mork.
    
       - Fix for the ACPI RTC operation region handler that applied the &
         operator to an argument already representing an address and that
         caused it to overwrite its own argument instead of writing to the
         address contained in it as expected.  From Chun-Yi Lee.
    
       - Fix for the PM domain implementation in the ACPI LPSS (Low-Power
         Subsystem) driver where one callback pointer pointed to a wrong
         routine and one was NULL, but it shouldn't.  From Fu Zhonghui"
    
    * tag 'pm+acpi-3.17-rc5' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm:
      ACPI / LPSS: complete PM entries for LPSS power domain
      Revert "ACPI / battery: fix wrong value of capacity_now reported when fully charged"
      Revert "ACPI / battery: Fix warning message in acpi_battery_get_state()"
      ACPI / RTC: Fix CMOS RTC opregion handler accesses to wrong addresses
      cpufreq / OPP: Fix the order of arguments for kcalloc()
    torvalds committed Sep 11, 2014
    Configuration menu
    Copy the full SHA
    8381e57 View commit details
    Browse the repository at this point in the history
  24. uas: Add missing le16_to_cpu calls to asm1051 / asm1053 usb-id check

    Reported-by: kbuild test robot <[email protected]>
    Cc: [email protected] # 3.16
    Signed-off-by: Hans de Goede <[email protected]>
    Signed-off-by: Greg Kroah-Hartman <[email protected]>
    jwrdegoede authored and gregkh committed Sep 11, 2014
    Configuration menu
    Copy the full SHA
    a79e5bc View commit details
    Browse the repository at this point in the history
  25. storage: Add single-LUN quirk for Jaz USB Adapter

    The Iomega Jaz USB Adapter is a SCSI-USB converter cable. The hardware
    seems to be identical to e.g. the Microtech XpressSCSI, using a Shuttle/
    SCM chip set. However its firmware restricts it to only work with Jaz
    drives.
    
    On connecting the cable a message like this appears four times in the log:
     reset full speed USB device number 4 using uhci_hcd
    
    That's non-fatal but the US_FL_SINGLE_LUN quirk fixes it.
    
    Signed-off-by: Mark Knibbs <[email protected]>
    Cc: stable <[email protected]>
    Signed-off-by: Greg Kroah-Hartman <[email protected]>
    M-a-r-k authored and gregkh committed Sep 11, 2014
    Configuration menu
    Copy the full SHA
    c66f1c6 View commit details
    Browse the repository at this point in the history
  26. xhci: Fix null pointer dereference if xhci initialization fails

    If xhci initialization fails before the roothub bandwidth
    domains (xhci->rh_bw[i]) are allocated it will oops when
    trying to access rh_bw members in xhci_mem_cleanup().
    
    Reported-by: Manuel Reimer <[email protected]>
    Cc: stable <[email protected]>
    Signed-off-by: Mathias Nyman <[email protected]>
    Signed-off-by: Greg Kroah-Hartman <[email protected]>
    matnyman authored and gregkh committed Sep 11, 2014
    Configuration menu
    Copy the full SHA
    c207e7c View commit details
    Browse the repository at this point in the history
  27. usb: xhci: Fix OOPS in xhci error handling code

    The xhci driver will OOPS on resume from S2/S3 if dma_alloc_coherent()
    is out of memory. This is a result of two things:
    1. xhci_mem_cleanup() in xhci-mem.c free's xhci->lpm_command if
    it's not NULL, but doesn't set it to NULL after the free.
    2. xhci_mem_cleanup() is called twice on resume, once for normal
    restart and once from xhci_mem_init() if dma_alloc_coherent() fails,
    resulting in a free of xhci->lpm_command that has already been freed.
    The fix is to set xhci->lpm_command to NULL after freeing it.
    
    Signed-off-by: Al Cooper <[email protected]>
    Cc: stable <[email protected]>
    Signed-off-by: Mathias Nyman <[email protected]>
    Signed-off-by: Greg Kroah-Hartman <[email protected]>
    alcooper authored and gregkh committed Sep 11, 2014
    Configuration menu
    Copy the full SHA
    0eda06c View commit details
    Browse the repository at this point in the history
  28. xhci: fix oops when xhci resumes from hibernate with hw lpm capable d…

    …evices
    
    Resuming from hibernate (S4) will restart and re-initialize xHC.
    The device contexts are freed and will be re-allocated later during device reset.
    
    Usb core will disable link pm in device resume before device reset, which will
    try to change the max exit latency, accessing the device contexts before they are re-allocated.
    
    There is no need to zero (disable) the max exit latency when disabling hw lpm
    for a freshly re-initialized xHC. So check that device context exists before
    doing anything. The max exit latency will be set again after device reset when usb core
    enables the link pm.
    
    Reported-by: Imre Deak <[email protected]>
    Tested-by: Imre Deak <[email protected]>
    Cc: stable <[email protected]>
    Signed-off-by: Mathias Nyman <[email protected]>
    Signed-off-by: Greg Kroah-Hartman <[email protected]>
    matnyman authored and gregkh committed Sep 11, 2014
    Configuration menu
    Copy the full SHA
    9604469 View commit details
    Browse the repository at this point in the history
  29. Merge tag 'fixes-for-v3.17-rc4' of git://git.kernel.org/pub/scm/linux…

    …/kernel/git/balbi/usb into usb-linus
    
    Felipe writes:
    
    usb: fixes for v3.17-rc4
    
    Some late fixes for dwc3 so we have something more stable
    on v3.17-final.
    
    Most bugs have been there for quite a while and nobody
    noticed, except for TRB completion when multiple TRBs
    are started.
    
    Patches were tested on AM437x SK and J6 EVM and are passing
    my tests.
    
    Signed-of-by: Felipe Balbi <[email protected]>
    gregkh committed Sep 11, 2014
    Configuration menu
    Copy the full SHA
    e2c6098 View commit details
    Browse the repository at this point in the history
  30. Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel…

    …/git/mpe/linux
    
    Pull powerpc fixes from Michael Ellerman:
     "Ben's travelling so this is my first attempt at a pull request.
    
      There's nothing too exciting.  The CONFIG_FHANDLE one is annoying, I
      know you love defconfig changes.  But we've had a couple of developers
      waste time debugging boxes that wouldn't boot, only to realise it's
      just that systemd needs CONFIG_FHANDLE and our defconfigs don't have
      it.
    
      The new syscalls seem to be working, I've run the selftests that
      exist, and also let trinity bash on them for a while"
    
    * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mpe/linux:
      powerpc: Wire up sys_seccomp(), sys_getrandom() and sys_memfd_create()
      powerpc: Make CONFIG_FHANDLE=y for all 64 bit powerpc defconfigs
      powerpc: use machine_subsys_initcall() for opal_hmi_handler_init()
      powerpc/perf: Fix ABIv2 kernel backtraces
      powerpc/pseries: Fix endian issues in memory hotplug
    torvalds committed Sep 11, 2014
    Configuration menu
    Copy the full SHA
    018cace View commit details
    Browse the repository at this point in the history
  31. Merge tag 'stable/for-linus-3.17-b-rc4-tag' of git://git.kernel.org/p…

    …ub/scm/linux/kernel/git/xen/tip
    
    Pull Xen bug fixes from David Vrabel:
     - fix for PVHVM suspend/resume and migration
     - don't pointlessly retry certain ballooning ops
     - fix gntalloc when grefs have run out.
     - fix PV boot if KSALR is enable or very large modules are used.
    
    * tag 'stable/for-linus-3.17-b-rc4-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/xen/tip:
      x86/xen: don't copy bogus duplicate entries into kernel page tables
      xen/gntalloc: safely delete grefs in add_grefs() undo path
      xen/gntalloc: fix oops after runnning out of grant refs
      xen/balloon: cancel ballooning if adding new memory failed
      xen/manage: Always freeze/thaw processes when suspend/resuming
    torvalds committed Sep 11, 2014
    Configuration menu
    Copy the full SHA
    7ee2d2d View commit details
    Browse the repository at this point in the history

Commits on Sep 12, 2014

  1. Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel…

    …/git/sage/ceph-client
    
    Pull Ceph fixes from Sage Weil:
     "The main thing here is a set of three patches that fix a buffer
      overrun for large authentication tickets (sigh).
    
      There is also a trivial warning fix and an error path fix that are
      both regressions"
    
    * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/sage/ceph-client:
      libceph: do not hard code max auth ticket len
      libceph: add process_one_ticket() helper
      libceph: gracefully handle large reply messages from the mon
      rbd: fix error return code in rbd_dev_device_setup()
      rbd: avoid format-security warning inside alloc_workqueue()
    torvalds committed Sep 12, 2014
    Configuration menu
    Copy the full SHA
    c73f6fd View commit details
    Browse the repository at this point in the history
  2. drm/ast: open key before detect chips

    Some config settings like 3rd TX chips will not get correctly
    if the extended reg is protected
    
    Signed-off-by: Y.C. Chen <[email protected]>
    Reviewed-by: Egbert Eich <[email protected]>
    Cc: [email protected]
    Signed-off-by: Dave Airlie <[email protected]>
    ycchen0221 authored and airlied committed Sep 12, 2014
    Configuration menu
    Copy the full SHA
    8f372e2 View commit details
    Browse the repository at this point in the history
  3. drm/ast: AST2000 cannot be detected correctly

    Type error and cause AST2000 cannot be detected correctly
    
    Signed-off-by: Y.C. Chen <[email protected]>
    Reviewed-by: Egbert Eich <[email protected]>
    Cc: [email protected]
    Signed-off-by: Dave Airlie <[email protected]>
    ycchen0221 authored and airlied committed Sep 12, 2014
    Configuration menu
    Copy the full SHA
    83502a5 View commit details
    Browse the repository at this point in the history
  4. Input: atkbd - do not try 'deactivate' keyboard on any LG laptops

    We are getting more and more reports about LG laptops not having
    functioning keyboard if we try to deactivate keyboard during probe.
    Given that having keyboard deactivated is merely "nice to have"
    instead of a hard requirement for probing, let's disable it on all
    LG boxes instead of trying to hunt down particular models.
    
    This change is prompted by patches trying to add "LG Electronics"/"ROCKY"
    and "LG Electronics"/"LW60-F27B" to the DMI list.
    
    https://bugzilla.kernel.org/show_bug.cgi?id=77051
    
    Cc: [email protected]
    Reported-by: Jaime Velasco Juan <[email protected]>
    Reported-by: Georgios Tsalikis <[email protected]>
    Tested-by: Jaime Velasco Juan <[email protected]>
    Signed-off-by: Dmitry Torokhov <[email protected]>
    dtor committed Sep 12, 2014
    Configuration menu
    Copy the full SHA
    c012067 View commit details
    Browse the repository at this point in the history
  5. Input: i8042 - add Fujitsu U574 to no_timeout dmi table

    https://bugzilla.kernel.org/show_bug.cgi?id=69731
    
    Cc: [email protected]
    Reported-by: Jason Robinson <[email protected]>
    Signed-off-by: Hans de Goede <[email protected]>
    Signed-off-by: Dmitry Torokhov <[email protected]>
    jwrdegoede authored and dtor committed Sep 12, 2014
    Configuration menu
    Copy the full SHA
    cc18a69 View commit details
    Browse the repository at this point in the history
  6. Input: i8042 - add nomux quirk for Avatar AVIU-145A6

    The sys_vendor / product_name are somewhat generic unfortunately, so this
    may lead to some false positives. But nomux usually does no harm, where as
    not having it clearly is causing problems on the Avatar AVIU-145A6.
    
    https://bugzilla.kernel.org/show_bug.cgi?id=77391
    
    Cc: [email protected]
    Reported-by: Hugo P <[email protected]>
    Signed-off-by: Hans de Goede <[email protected]>
    Signed-off-by: Dmitry Torokhov <[email protected]>
    jwrdegoede authored and dtor committed Sep 12, 2014
    Configuration menu
    Copy the full SHA
    d268211 View commit details
    Browse the repository at this point in the history
  7. Input: i8042 - also set the firmware id for MUXed ports

    So that firmware-id matching can be used with multiplexed aux ports too.
    
    Signed-off-by: Hans de Goede <[email protected]>
    Signed-off-by: Dmitry Torokhov <[email protected]>
    jwrdegoede authored and dtor committed Sep 12, 2014
    Configuration menu
    Copy the full SHA
    266e43c View commit details
    Browse the repository at this point in the history
  8. Input: atmel_mxt_ts - fix merge in DT documentation

    Something went a bit wrong in merging f594023 - there's a bit of repeated
    text that's been introduced.
    
    Signed-off-by: Nick Dyer <[email protected]>
    Signed-off-by: Dmitry Torokhov <[email protected]>
    ndyer authored and dtor committed Sep 12, 2014
    Configuration menu
    Copy the full SHA
    807362c View commit details
    Browse the repository at this point in the history
  9. video: ARM CLCD: Fix color model capabilities for DT platforms

    The DT-based panel capabilities selection was picking up
    a subset of available modes based on hardware configuration.
    This was wrong, as the capabilities describe available
    memory models and adapt the display controller to them
    that the RGB output is wired up correctly (as in: R and
    B components are not swapped).
    
    This patch fixes it by removing the unnecessary limitation.
    
    Signed-off-by: Pawel Moll <[email protected]>
    Signed-off-by: Tomi Valkeinen <[email protected]>
    pawelmoll authored and tomba committed Sep 12, 2014
    Configuration menu
    Copy the full SHA
    e4cf39e View commit details
    Browse the repository at this point in the history
  10. KEYS: Fix termination condition in assoc array garbage collection

    This fixes CVE-2014-3631.
    
    It is possible for an associative array to end up with a shortcut node at the
    root of the tree if there are more than fan-out leaves in the tree, but they
    all crowd into the same slot in the lowest level (ie. they all have the same
    first nibble of their index keys).
    
    When assoc_array_gc() returns back up the tree after scanning some leaves, it
    can fall off of the root and crash because it assumes that the back pointer
    from a shortcut (after label ascend_old_tree) must point to a normal node -
    which isn't true of a shortcut node at the root.
    
    Should we find we're ascending rootwards over a shortcut, we should check to
    see if the backpointer is zero - and if it is, we have completed the scan.
    
    This particular bug cannot occur if the root node is not a shortcut - ie. if
    you have fewer than 17 keys in a keyring or if you have at least two keys that
    sit into separate slots (eg. a keyring and a non keyring).
    
    This can be reproduced by:
    
    	ring=`keyctl newring bar @s`
    	for ((i=1; i<=18; i++)); do last_key=`keyctl newring foo$i $ring`; done
    	keyctl timeout $last_key 2
    
    Doing this:
    
    	echo 3 >/proc/sys/kernel/keys/gc_delay
    
    first will speed things up.
    
    If we do fall off of the top of the tree, we get the following oops:
    
    BUG: unable to handle kernel NULL pointer dereference at 0000000000000018
    IP: [<ffffffff8136cea7>] assoc_array_gc+0x2f7/0x540
    PGD dae15067 PUD cfc24067 PMD 0
    Oops: 0000 [#1] SMP
    Modules linked in: xt_nat xt_mark nf_conntrack_netbios_ns nf_conntrack_broadcast ip6t_rpfilter ip6t_REJECT xt_conntrack ebtable_nat ebtable_broute bridge stp llc ebtable_filter ebtables ip6table_ni
    CPU: 0 PID: 26011 Comm: kworker/0:1 Not tainted 3.14.9-200.fc20.x86_64 #1
    Hardware name: Bochs Bochs, BIOS Bochs 01/01/2011
    Workqueue: events key_garbage_collector
    task: ffff8800918bd580 ti: ffff8800aac14000 task.ti: ffff8800aac14000
    RIP: 0010:[<ffffffff8136cea7>] [<ffffffff8136cea7>] assoc_array_gc+0x2f7/0x540
    RSP: 0018:ffff8800aac15d40  EFLAGS: 00010206
    RAX: 0000000000000000 RBX: 0000000000000000 RCX: ffff8800aaecacc0
    RDX: ffff8800daecf440 RSI: 0000000000000001 RDI: ffff8800aadc2bc0
    RBP: ffff8800aac15da8 R08: 0000000000000001 R09: 0000000000000003
    R10: ffffffff8136ccc7 R11: 0000000000000000 R12: 0000000000000000
    R13: 0000000000000000 R14: 0000000000000070 R15: 0000000000000001
    FS:  0000000000000000(0000) GS:ffff88011fc00000(0000) knlGS:0000000000000000
    CS:  0010 DS: 0000 ES: 0000 CR0: 000000008005003b
    CR2: 0000000000000018 CR3: 00000000db10d000 CR4: 00000000000006f0
    Stack:
     ffff8800aac15d50 0000000000000011 ffff8800aac15db8 ffffffff812e2a70
     ffff880091a00600 0000000000000000 ffff8800aadc2bc3 00000000cd42c987
     ffff88003702df20 ffff88003702dfa0 0000000053b65c09 ffff8800aac15fd8
    Call Trace:
     [<ffffffff812e2a70>] ? keyring_detect_cycle_iterator+0x30/0x30
     [<ffffffff812e3e75>] keyring_gc+0x75/0x80
     [<ffffffff812e1424>] key_garbage_collector+0x154/0x3c0
     [<ffffffff810a67b6>] process_one_work+0x176/0x430
     [<ffffffff810a744b>] worker_thread+0x11b/0x3a0
     [<ffffffff810a7330>] ? rescuer_thread+0x3b0/0x3b0
     [<ffffffff810ae1a8>] kthread+0xd8/0xf0
     [<ffffffff810ae0d0>] ? insert_kthread_work+0x40/0x40
     [<ffffffff816ffb7c>] ret_from_fork+0x7c/0xb0
     [<ffffffff810ae0d0>] ? insert_kthread_work+0x40/0x40
    Code: 08 4c 8b 22 0f 84 bf 00 00 00 41 83 c7 01 49 83 e4 fc 41 83 ff 0f 4c 89 65 c0 0f 8f 5a fe ff ff 48 8b 45 c0 4d 63 cf 49 83 c1 02 <4e> 8b 34 c8 4d 85 f6 0f 84 be 00 00 00 41 f6 c6 01 0f 84 92
    RIP  [<ffffffff8136cea7>] assoc_array_gc+0x2f7/0x540
     RSP <ffff8800aac15d40>
    CR2: 0000000000000018
    ---[ end trace 1129028a088c0cbd ]---
    
    Signed-off-by: David Howells <[email protected]>
    Acked-by: Don Zickus <[email protected]>
    Signed-off-by: James Morris <[email protected]>
    dhowells authored and James Morris committed Sep 12, 2014
    Configuration menu
    Copy the full SHA
    95389b0 View commit details
    Browse the repository at this point in the history
  11. Merge branch 'drm-fixes' of git://people.freedesktop.org/~airlied/linux

    Pull drm fixes from Dave Airlie:
     "AST, i915, radeon and msm fixes, all over the place.
    
      All fixing build issues, regressions, oopses or failure to detect
      cards"
    
    * 'drm-fixes' of git://people.freedesktop.org/~airlied/linux:
      drm/ast: AST2000 cannot be detected correctly
      drm/ast: open key before detect chips
      drm/msm: don't crash if no msm.vram param
      drm/msm/hdmi: fix build break on non-CCF platforms
      drm/msm: Change nested function to static function
      drm/radeon/dpm: set the thermal type properly for special configs
      drm/radeon: reduce memory footprint for debugging
      drm/radeon: add connector quirk for fujitsu board
      drm/radeon: fix semaphore value init
      drm/radeon: only use me/pfp sync on evergreen+
      drm/i915: Wait for vblank before enabling the TV encoder
      drm/i915: Evict CS TLBs between batches
      drm/i915: Fix irq enable tracking in driver load
      drm/i915: Fix EIO/wedged handling in gem fault handler
      drm/i915: Prevent recursive deadlock on releasing a busy userptr
    torvalds committed Sep 12, 2014
    Configuration menu
    Copy the full SHA
    850ebc0 View commit details
    Browse the repository at this point in the history
  12. Merge tag 'fbdev-fixes-3.17' of git://git.kernel.org/pub/scm/linux/ke…

    …rnel/git/tomba/linux
    
    Pull fbdev fixes from Tomi Valkeinen:
     "Minor fixes for amba-clcd and video DT bindings"
    
    * tag 'fbdev-fixes-3.17' of git://git.kernel.org/pub/scm/linux/kernel/git/tomba/linux:
      video: ARM CLCD: Fix color model capabilities for DT platforms
      video: fix composite video connector compatible string
    torvalds committed Sep 12, 2014
    Configuration menu
    Copy the full SHA
    5874cfe View commit details
    Browse the repository at this point in the history
  13. Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel…

    …/git/jmorris/linux-security
    
    Pull assoc array garbage collection fix from James Morris.
    
    * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/linux-security:
      KEYS: Fix termination condition in assoc array garbage collection
    torvalds committed Sep 12, 2014
    Configuration menu
    Copy the full SHA
    96ea975 View commit details
    Browse the repository at this point in the history
  14. Merge tag 'iommu-fixes-v3.17-rc4' of git://git.kernel.org/pub/scm/lin…

    …ux/kernel/git/joro/iommu
    
    Pull iommu fixes from Joerg Roedel:
     - two fixes for issues found by Coverity
     - various fixes for the ARM SMMU driver
     - a warning fix for the FSL PAMU driver
    
    * tag 'iommu-fixes-v3.17-rc4' of git://git.kernel.org/pub/scm/linux/kernel/git/joro/iommu:
      iommu/fsl: Fix warning resulting from adding PCI device twice
      iommu/arm-smmu: fix corner cases in address size calculations
      iommu/arm-smmu: fix decimal printf format specifiers prefixed with 0x
      iommu/arm-smmu: Do not access non-existing S2CR registers
      iommu/arm-smmu: fix s2cr and smr teardown on device detach from domain
      iommu/arm-smmu: remove pgtable_page_{c,d}tor()
      iommu/arm-smmu: fix programming of SMMU_CBn_TCR for stage 1
      iommu/arm-smmu: avoid calling request_irq in atomic context
      iommu/vt-d: Check return value of acpi_bus_get_device()
      iommu/core: Make iommu_group_get_for_dev() more robust
    torvalds committed Sep 12, 2014
    Configuration menu
    Copy the full SHA
    753a6cb View commit details
    Browse the repository at this point in the history
  15. Merge tag 'arm64-fixes' of git://git.kernel.org/pub/scm/linux/kernel/…

    …git/arm64/linux
    
    Pull arm64 fixes from Will Deacon:
     "Just a couple of stragglers here:
    
       - fix an issue migrating interrupts on CPU hotplug
       - fix a potential information leak of TLS registers across an exec
         (Nathan has sent a corresponding patch for arch/arm/ to rmk)"
    
    * tag 'arm64-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux:
      arm64: flush TLS registers during exec
      arm64: use irq_set_affinity with force=false when migrating irqs
    torvalds committed Sep 12, 2014
    Configuration menu
    Copy the full SHA
    9925cc1 View commit details
    Browse the repository at this point in the history
  16. Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel…

    …/git/mason/linux-btrfs
    
    Pull btrfs fixes from Chris Mason:
     "Filipe is doing a careful pass through fsync problems, and these are
      the fixes so far.  I'll have one more for rc6 that we're still
      testing.
    
      My big commit is fixing up some inode hash races that Al Viro found
      (thanks Al)"
    
    * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mason/linux-btrfs:
      Btrfs: use insert_inode_locked4 for inode creation
      Btrfs: fix fsync data loss after a ranged fsync
      Btrfs: kfree()ing ERR_PTRs
      Btrfs: fix crash while doing a ranged fsync
      Btrfs: fix corruption after write/fsync failure + fsync + log recovery
      Btrfs: fix autodefrag with compression
    torvalds committed Sep 12, 2014
    Configuration menu
    Copy the full SHA
    7ed641b View commit details
    Browse the repository at this point in the history
  17. Merge tag 'nfs-for-3.17-4' of git://git.linux-nfs.org/projects/trondm…

    …y/linux-nfs
    
    Pull NFS client fixes from Trond Myklebust:
     "Highlights:
       - fix a kernel warning when removing /proc/net/nfsfs
       - revert commit 49a4bda due to Oopses
       - fix a typo in the pNFS file layout commit code"
    
    * tag 'nfs-for-3.17-4' of git://git.linux-nfs.org/projects/trondmy/linux-nfs:
      pnfs: fix filelayout_retry_commit when idx > 0
      nfs: revert "nfs4: queue free_lock_state job submission to nfsiod"
      nfs: fix kernel warning when removing proc entry
    torvalds committed Sep 12, 2014
    Configuration menu
    Copy the full SHA
    602b536 View commit details
    Browse the repository at this point in the history
  18. Merge tag 'usb-3.17-rc5' 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 3.17-rc5.
    
      Nothing major here, just a number of tiny fixes for reported issues,
      and some new device ids as well.
    
      All have been tested in linux-next"
    
    * tag 'usb-3.17-rc5' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb: (46 commits)
      xhci: fix oops when xhci resumes from hibernate with hw lpm capable devices
      usb: xhci: Fix OOPS in xhci error handling code
      xhci: Fix null pointer dereference if xhci initialization fails
      storage: Add single-LUN quirk for Jaz USB Adapter
      uas: Add missing le16_to_cpu calls to asm1051 / asm1053 usb-id check
      usb: chipidea: msm: Initialize PHY on reset event
      usb: chipidea: msm: Use USB PHY API to control PHY state
      usb: hub: take hub->hdev reference when processing from eventlist
      uas: Disable uas on ASM1051 devices
      usb: dwc2/gadget: avoid disabling ep0
      usb: dwc2/gadget: delay enabling irq once hardware is configured properly
      usb: dwc2/gadget: do not call disconnect method in pullup
      usb: dwc2/gadget: break infinite loop in endpoint disable code
      usb: dwc2/gadget: fix phy initialization sequence
      usb: dwc2/gadget: fix phy disable sequence
      uwb: init beacon cache entry before registering uwb device
      USB: ftdi_sio: Add support for GE Healthcare Nemo Tracker device
      USB: document the 'u' flag for usb-storage quirks parameter
      usb: host: xhci: fix compliance mode workaround
      usb: dwc3: fix TRB completion when multiple TRBs are started
      ...
    torvalds committed Sep 12, 2014
    Configuration menu
    Copy the full SHA
    90a3c48 View commit details
    Browse the repository at this point in the history
  19. Merge tag 'tty-3.17-rc5' of git://git.kernel.org/pub/scm/linux/kernel…

    …/git/gregkh/tty
    
    Pull tty/serial fixes from Greg KH:
     "Here are 3 patches for 3.17-rc5.  Two serial driver fixes that resolve
      some reported issues, and one new device id.
    
      All have been in linux-next just fine"
    
    * tag 'tty-3.17-rc5' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty:
      tty: xuartps: Fix tx_emtpy() callback
      tty/serial: at91: BUG: disable interrupts when !UART_ENABLE_MS()
      serial: 8250_dw: Add ACPI ID for Intel Braswell
    torvalds committed Sep 12, 2014
    Configuration menu
    Copy the full SHA
    09db9d6 View commit details
    Browse the repository at this point in the history
  20. Merge tag 'staging-3.17-rc5' of git://git.kernel.org/pub/scm/linux/ke…

    …rnel/git/gregkh/staging
    
    Pull staging driver fixes from Greg KH:
     "Here are 3 tiny staging driver fixes for 3.17-rc5.
    
      Two are fixes for the imx-drm driver, resolving issues that have been
      reported.  The other is a memory leak fix for the Android sync driver,
      due to changes that went into 3.17-rc1.
    
      All have been in linux-next for a while"
    
    * tag 'staging-3.17-rc5' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging:
      android: fix reference leak in sync_fence_create
      imx-drm: imx-ldb: fix NULL pointer in imx_ldb_unbind()
      imx-drm: ipuv3-plane: fix ipu_plane_dpms()
    torvalds committed Sep 12, 2014
    Configuration menu
    Copy the full SHA
    a6988b3 View commit details
    Browse the repository at this point in the history
  21. Merge tag 'char-misc-3.17-rc5' of git://git.kernel.org/pub/scm/linux/…

    …kernel/git/gregkh/char-misc
    
    Pull char/misc driver fix from Greg KH:
     "Here is one misc driver fix for 3.17-rc5.  It resolves a kernel oops
      that can happen in the lattice FPGA driver if the firmware isn't
      present on the system.
    
      It's been in the linux-next tree for a while now"
    
    * tag 'char-misc-3.17-rc5' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/char-misc:
      Lattice ECP3 FPGA: Check firmware pointer
    torvalds committed Sep 12, 2014
    Configuration menu
    Copy the full SHA
    471cff7 View commit details
    Browse the repository at this point in the history
  22. GFS2: fix d_splice_alias() misuses

    Callers of d_splice_alias(dentry, inode) don't need iput(), neither
    on success nor on failure.  Either the reference to inode is stored
    in a previously negative dentry, or it's dropped.  In either case
    inode reference the caller used to hold is consumed.
    
    __gfs2_lookup() does iput() in case when d_splice_alias() has failed.
    Double iput() if we ever hit that.  And gfs2_create_inode() ends up
    not only with double iput(), but with link count dropped to zero - on
    an inode it has just found in directory.
    
    Cc: [email protected] # v3.14+
    Signed-off-by: Al Viro <[email protected]>
    Signed-off-by: Steven Whitehouse <[email protected]>
    Al Viro authored and swhiteho committed Sep 12, 2014
    Configuration menu
    Copy the full SHA
    cfb2f9d View commit details
    Browse the repository at this point in the history
  23. futex: Unlock hb->lock in futex_wait_requeue_pi() error path

    futex_wait_requeue_pi() calls futex_wait_setup(). If
    futex_wait_setup() succeeds it returns with hb->lock held and
    preemption disabled. Now the sanity check after this does:
    
            if (match_futex(&q.key, &key2)) {
    	   	ret = -EINVAL;
    		goto out_put_keys;
    	}
    
    which releases the keys but does not release hb->lock.
    
    So we happily return to user space with hb->lock held and therefor
    preemption disabled.
    
    Unlock hb->lock before taking the exit route.
    
    Reported-by: Dave "Trinity" Jones <[email protected]>
    Signed-off-by: Thomas Gleixner <[email protected]>
    Reviewed-by: Darren Hart <[email protected]>
    Reviewed-by: Davidlohr Bueso <[email protected]>
    Cc: Peter Zijlstra <[email protected]>
    Cc: [email protected]
    Link: http://lkml.kernel.org/r/alpine.DEB.2.10.1409112318500.4178@nanos
    Signed-off-by: Thomas Gleixner <[email protected]>
    KAGA-KOKO committed Sep 12, 2014
    Configuration menu
    Copy the full SHA
    13c42c2 View commit details
    Browse the repository at this point in the history
  24. jiffies: Fix timeval conversion to jiffies

    timeval_to_jiffies tried to round a timeval up to an integral number
    of jiffies, but the logic for doing so was incorrect: intervals
    corresponding to exactly N jiffies would become N+1. This manifested
    itself particularly repeatedly stopping/starting an itimer:
    
    setitimer(ITIMER_PROF, &val, NULL);
    setitimer(ITIMER_PROF, NULL, &val);
    
    would add a full tick to val, _even if it was exactly representable in
    terms of jiffies_ (say, the result of a previous rounding.)  Doing
    this repeatedly would cause unbounded growth in val.  So fix the math.
    
    Here's what was wrong with the conversion: we essentially computed
    (eliding seconds)
    
    jiffies = usec  * (NSEC_PER_USEC/TICK_NSEC)
    
    by using scaling arithmetic, which took the best approximation of
    NSEC_PER_USEC/TICK_NSEC with denominator of 2^USEC_JIFFIE_SC =
    x/(2^USEC_JIFFIE_SC), and computed:
    
    jiffies = (usec * x) >> USEC_JIFFIE_SC
    
    and rounded this calculation up in the intermediate form (since we
    can't necessarily exactly represent TICK_NSEC in usec.) But the
    scaling arithmetic is a (very slight) *over*approximation of the true
    value; that is, instead of dividing by (1 usec/ 1 jiffie), we
    effectively divided by (1 usec/1 jiffie)-epsilon (rounding
    down). This would normally be fine, but we want to round timeouts up,
    and we did so by adding 2^USEC_JIFFIE_SC - 1 before the shift; this
    would be fine if our division was exact, but dividing this by the
    slightly smaller factor was equivalent to adding just _over_ 1 to the
    final result (instead of just _under_ 1, as desired.)
    
    In particular, with HZ=1000, we consistently computed that 10000 usec
    was 11 jiffies; the same was true for any exact multiple of
    TICK_NSEC.
    
    We could possibly still round in the intermediate form, adding
    something less than 2^USEC_JIFFIE_SC - 1, but easier still is to
    convert usec->nsec, round in nanoseconds, and then convert using
    time*spec*_to_jiffies.  This adds one constant multiplication, and is
    not observably slower in microbenchmarks on recent x86 hardware.
    
    Tested: the following program:
    
    int main() {
      struct itimerval zero = {{0, 0}, {0, 0}};
      /* Initially set to 10 ms. */
      struct itimerval initial = zero;
      initial.it_interval.tv_usec = 10000;
      setitimer(ITIMER_PROF, &initial, NULL);
      /* Save and restore several times. */
      for (size_t i = 0; i < 10; ++i) {
        struct itimerval prev;
        setitimer(ITIMER_PROF, &zero, &prev);
        /* on old kernels, this goes up by TICK_USEC every iteration */
        printf("previous value: %ld %ld %ld %ld\n",
               prev.it_interval.tv_sec, prev.it_interval.tv_usec,
               prev.it_value.tv_sec, prev.it_value.tv_usec);
        setitimer(ITIMER_PROF, &prev, NULL);
      }
        return 0;
    }
    
    Cc: [email protected]
    Cc: Thomas Gleixner <[email protected]>
    Cc: Ingo Molnar <[email protected]>
    Cc: Paul Turner <[email protected]>
    Cc: Richard Cochran <[email protected]>
    Cc: Prarit Bhargava <[email protected]>
    Reviewed-by: Paul Turner <[email protected]>
    Reported-by: Aaron Jacobs <[email protected]>
    Signed-off-by: Andrew Hunter <[email protected]>
    [jstultz: Tweaked to apply to 3.17-rc]
    Signed-off-by: John Stultz <[email protected]>
    ahh authored and johnstultz-work committed Sep 12, 2014
    Configuration menu
    Copy the full SHA
    d78c930 View commit details
    Browse the repository at this point in the history
  25. alarmtimer: Return relative times in timer_gettime

    Returns the time remaining for an alarm timer, rather than the time at
    which it is scheduled to expire.  If the timer has already expired or it
    is not currently scheduled, the it_value's members are set to zero.
    
    This new behavior matches that of the other posix-timers and the POSIX
    specifications.
    
    This is a change in user-visible behavior, and may break existing
    applications.  Hopefully, few users rely on the old incorrect behavior.
    
    Cc: [email protected]
    Cc: Thomas Gleixner <[email protected]>
    Cc: Ingo Molnar <[email protected]>
    Cc: Richard Cochran <[email protected]>
    Cc: Prarit Bhargava <[email protected]>
    Cc: Sharvil Nanavati <[email protected]>
    Signed-off-by: Richard Larocque <[email protected]>
    [jstultz: minor style tweak]
    Signed-off-by: John Stultz <[email protected]>
    rlarocque2 authored and johnstultz-work committed Sep 12, 2014
    Configuration menu
    Copy the full SHA
    e86fea7 View commit details
    Browse the repository at this point in the history
  26. alarmtimer: Do not signal SIGEV_NONE timers

    Avoids sending a signal to alarm timers created with sigev_notify set to
    SIGEV_NONE by checking for that special case in the timeout callback.
    
    The regular posix timers avoid sending signals to SIGEV_NONE timers by
    not scheduling any callbacks for them in the first place.  Although it
    would be possible to do something similar for alarm timers, it's simpler
    to handle this as a special case in the timeout.
    
    Prior to this patch, the alarm timer would ignore the sigev_notify value
    and try to deliver signals to the process anyway.  Even worse, the
    sanity check for the value of sigev_signo is skipped when SIGEV_NONE was
    specified, so the signal number could be bogus.  If sigev_signo was an
    unitialized value (as it often would be if SIGEV_NONE is used), then
    it's hard to predict which signal will be sent.
    
    Cc: [email protected]
    Cc: Thomas Gleixner <[email protected]>
    Cc: Ingo Molnar <[email protected]>
    Cc: Richard Cochran <[email protected]>
    Cc: Prarit Bhargava <[email protected]>
    Cc: Sharvil Nanavati <[email protected]>
    Signed-off-by: Richard Larocque <[email protected]>
    Signed-off-by: John Stultz <[email protected]>
    rlarocque2 authored and johnstultz-work committed Sep 12, 2014
    Configuration menu
    Copy the full SHA
    265b81d View commit details
    Browse the repository at this point in the history
  27. alarmtimer: Lock k_itimer during timer callback

    Locks the k_itimer's it_lock member when handling the alarm timer's
    expiry callback.
    
    The regular posix timers defined in posix-timers.c have this lock held
    during timout processing because their callbacks are routed through
    posix_timer_fn().  The alarm timers follow a different path, so they
    ought to grab the lock somewhere else.
    
    Cc: [email protected]
    Cc: Thomas Gleixner <[email protected]>
    Cc: Ingo Molnar <[email protected]>
    Cc: Richard Cochran <[email protected]>
    Cc: Prarit Bhargava <[email protected]>
    Cc: Sharvil Nanavati <[email protected]>
    Signed-off-by: Richard Larocque <[email protected]>
    Signed-off-by: John Stultz <[email protected]>
    rlarocque2 authored and johnstultz-work committed Sep 12, 2014
    Configuration menu
    Copy the full SHA
    474e941 View commit details
    Browse the repository at this point in the history

Commits on Sep 13, 2014

  1. Merge tag 'stable/for-linus-3.17-b-rc4-arm-tag' of git://git.kernel.o…

    …rg/pub/scm/linux/kernel/git/xen/tip
    
    Pull Xen ARM bugfix from Stefano Stabellini:
     "The patches fix the "xen_add_mach_to_phys_entry: cannot add" bug that
      has been affecting xen on arm and arm64 guests since 3.16.  They
      require a few hypervisor side changes that just went in xen-unstable.
    
      A couple of days ago David sent out a pull request with a few other
      Xen fixes (it is already in master).  Sorry we didn't synchronized
      better among us"
    
    * tag 'stable/for-linus-3.17-b-rc4-arm-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/xen/tip:
      xen/arm: remove mach_to_phys rbtree
      xen/arm: reimplement xen_dma_unmap_page & friends
      xen/arm: introduce XENFEAT_grant_map_identity
    torvalds committed Sep 13, 2014
    Configuration menu
    Copy the full SHA
    fc486b0 View commit details
    Browse the repository at this point in the history
  2. Merge branch 'for-linus' of git://git.kernel.dk/linux-block

    Pull block fixes from Jens Axboe:
     "A small collection of fixes for the current rc series.  This contains:
    
       - Two small blk-mq patches from Rob Elliott, cleaning up error case
         at init time.
    
       - A fix from Ming Lei, fixing SG merging for blk-mq where
         QUEUE_FLAG_SG_NO_MERGE is the default.
    
       - A dev_t minor lifetime fix from Keith, fixing an issue where a
         minor might be reused before all references to it were gone.
    
       - Fix from Alan Stern where an unbalanced queue bypass caused SCSI
         some headaches when it does a series of add/del on devices without
         fully registrering the queue.
    
       - A fix from me for improving the scaling of tag depth in blk-mq if
         we are short on memory"
    
    * 'for-linus' of git://git.kernel.dk/linux-block:
      blk-mq: scale depth and rq map appropriate if low on memory
      Block: fix unbalanced bypass-disable in blk_register_queue
      block: Fix dev_t minor allocation lifetime
      blk-mq: cleanup after blk_mq_init_rq_map failures
      blk-mq: pass along blk_mq_alloc_tag_set return values
      blk-merge: fix blk_recount_segments
    torvalds committed Sep 13, 2014
    Configuration menu
    Copy the full SHA
    645cc09 View commit details
    Browse the repository at this point in the history
  3. Merge tag 'dm-3.17-fix2' of git://git.kernel.org/pub/scm/linux/kernel…

    …/git/device-mapper/linux-dm
    
    Pull device mapper fix from Mike Snitzer:
     "Fix a race in the DM cache target that caused dirty blocks to be
      marked as clean.  This could cause no writeback to occur or spurious
      dirty block counts"
    
    * tag 'dm-3.17-fix2' of git://git.kernel.org/pub/scm/linux/kernel/git/device-mapper/linux-dm:
      dm cache: fix race causing dirty blocks to be marked as clean
    torvalds committed Sep 13, 2014
    Configuration menu
    Copy the full SHA
    186cec3 View commit details
    Browse the repository at this point in the history
  4. Make ARCH_HAS_FAST_MULTIPLIER a real config variable

    It used to be an ad-hoc hack defined by the x86 version of
    <asm/bitops.h> that enabled a couple of library routines to know whether
    an integer multiply is faster than repeated shifts and additions.
    
    This just makes it use the real Kconfig system instead, and makes x86
    (which was the only architecture that did this) select the option.
    
    NOTE! Even for x86, this really is kind of wrong.  If we cared, we would
    probably not enable this for builds optimized for netburst (P4), where
    shifts-and-adds are generally faster than multiplies.  This patch does
    *not* change that kind of logic, though, it is purely a syntactic change
    with no code changes.
    
    This was triggered by the fact that we have other places that really
    want to know "do I want to expand multiples by constants by hand or
    not", particularly the hash generation code.
    
    Signed-off-by: Linus Torvalds <[email protected]>
    torvalds committed Sep 13, 2014
    Configuration menu
    Copy the full SHA
    72d9310 View commit details
    Browse the repository at this point in the history
  5. Make hash_64() use a 64-bit multiply when appropriate

    The hash_64() function historically does the multiply by the
    GOLDEN_RATIO_PRIME_64 number with explicit shifts and adds, because
    unlike the 32-bit case, gcc seems unable to turn the constant multiply
    into the more appropriate shift and adds when required.
    
    However, that means that we generate those shifts and adds even when the
    architecture has a fast multiplier, and could just do it better in
    hardware.
    
    Use the now-cleaned-up CONFIG_ARCH_HAS_FAST_MULTIPLIER (together with
    "is it a 64-bit architecture") to decide whether to use an integer
    multiply or the explicit sequence of shift/add instructions.
    
    Signed-off-by: Linus Torvalds <[email protected]>
    torvalds committed Sep 13, 2014
    Configuration menu
    Copy the full SHA
    23d0db7 View commit details
    Browse the repository at this point in the history
  6. vfs: fix bad hashing of dentries

    Josef Bacik found a performance regression between 3.2 and 3.10 and
    narrowed it down to commit bfcfaa7 ("vfs: use 'unsigned long'
    accesses for dcache name comparison and hashing"). He reports:
    
     "The test case is essentially
    
          for (i = 0; i < 1000000; i++)
                  mkdir("a$i");
    
      On xfs on a fio card this goes at about 20k dir/sec with 3.2, and 12k
      dir/sec with 3.10.  This is because we spend waaaaay more time in
      __d_lookup on 3.10 than in 3.2.
    
      The new hashing function for strings is suboptimal for <
      sizeof(unsigned long) string names (and hell even > sizeof(unsigned
      long) string names that I've tested).  I broke out the old hashing
      function and the new one into a userspace helper to get real numbers
      and this is what I'm getting:
    
          Old hash table had 1000000 entries, 0 dupes, 0 max dupes
          New hash table had 12628 entries, 987372 dupes, 900 max dupes
          We had 11400 buckets with a p50 of 30 dupes, p90 of 240 dupes, p99 of 567 dupes for the new hash
    
      My test does the hash, and then does the d_hash into a integer pointer
      array the same size as the dentry hash table on my system, and then
      just increments the value at the address we got to see how many
      entries we overlap with.
    
      As you can see the old hash function ended up with all 1 million
      entries in their own bucket, whereas the new one they are only
      distributed among ~12.5k buckets, which is why we're using so much
      more CPU in __d_lookup".
    
    The reason for this hash regression is two-fold:
    
     - On 64-bit architectures the down-mixing of the original 64-bit
       word-at-a-time hash into the final 32-bit hash value is very
       simplistic and suboptimal, and just adds the two 32-bit parts
       together.
    
       In particular, because there is no bit shuffling and the mixing
       boundary is also a byte boundary, similar character patterns in the
       low and high word easily end up just canceling each other out.
    
     - the old byte-at-a-time hash mixed each byte into the final hash as it
       hashed the path component name, resulting in the low bits of the hash
       generally being a good source of hash data.  That is not true for the
       word-at-a-time case, and the hash data is distributed among all the
       bits.
    
    The fix is the same in both cases: do a better job of mixing the bits up
    and using as much of the hash data as possible.  We already have the
    "hash_32|64()" functions to do that.
    
    Reported-by: Josef Bacik <[email protected]>
    Cc: Al Viro <[email protected]>
    Cc: Christoph Hellwig <[email protected]>
    Cc: Chris Mason <[email protected]>
    Cc: [email protected]
    Signed-off-by: Linus Torvalds <[email protected]>
    torvalds committed Sep 13, 2014
    Configuration menu
    Copy the full SHA
    99d263d View commit details
    Browse the repository at this point in the history
  7. parisc: Implement new LWS CAS supporting 64 bit operations.

    The current LWS cas only works correctly for 32bit. The new LWS allows
    for CAS operations of variable size.
    
    Signed-off-by: Guy Martin <[email protected]>
    Cc: <[email protected]> # 3.13+
    Signed-off-by: Helge Deller <[email protected]>
    gmsoft-tuxicoman authored and hdeller committed Sep 13, 2014
    Configuration menu
    Copy the full SHA
    8920649 View commit details
    Browse the repository at this point in the history
  8. Merge branches 'locking-urgent-for-linus' and 'timers-urgent-for-linu…

    …s' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip
    
    Pull futex and timer fixes from Thomas Gleixner:
     "A oneliner bugfix for the jinxed futex code:
    
       - Drop hash bucket lock in the error exit path.  I really could slap
         myself for intruducing that bug while fixing all the other horror
         in that code three month ago ...
    
      and the timer department is not too proud about the following fixes:
    
       - Deal with a long standing rounding bug in the timeval to jiffies
         conversion.  It's a real issue and this fix fell through the cracks
         for quite some time.
    
       - Another round of alarmtimer fixes.  Finally this code gets used
         more widely and the subtle issues hidden for quite some time are
         noticed and fixed.  Nothing really exciting, just the itty bitty
         details which bite the serious users here and there"
    
    * 'locking-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
      futex: Unlock hb->lock in futex_wait_requeue_pi() error path
    
    * 'timers-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
      alarmtimer: Lock k_itimer during timer callback
      alarmtimer: Do not signal SIGEV_NONE timers
      alarmtimer: Return relative times in timer_gettime
      jiffies: Fix timeval conversion to jiffies
    torvalds committed Sep 13, 2014
    Configuration menu
    Copy the full SHA
    1536340 View commit details
    Browse the repository at this point in the history

Commits on Sep 14, 2014

  1. [fix] lustre: d_make_root() does iput() on dentry allocation failure

    double-free is a bad thing
    
    Signed-off-by: Al Viro <[email protected]>
    Al Viro committed Sep 14, 2014
    Configuration menu
    Copy the full SHA
    f77ced6 View commit details
    Browse the repository at this point in the history
  2. move the call of __d_drop(anon) into __d_materialise_unique(dentry, a…

    …non)
    
    and lock the right list there
    
    Cc: [email protected]
    Signed-off-by: Al Viro <[email protected]>
    Al Viro committed Sep 14, 2014
    Configuration menu
    Copy the full SHA
    6f18493 View commit details
    Browse the repository at this point in the history
  3. fix bogus read_seqretry() checks introduced in b37199e

    read_seqretry() returns true on mismatch, not on match...
    
    Cc: [email protected] # 3.15+
    Signed-off-by: Al Viro <[email protected]>
    Al Viro committed Sep 14, 2014
    Configuration menu
    Copy the full SHA
    f5be3e2 View commit details
    Browse the repository at this point in the history
  4. NTB: correct the spread of queues over mw's

    The detection of an uneven number of queues on the given memory windows
    was not correct.  The mw_num is zero based and the mod should be
    division to spread them evenly over the mw's.
    
    Signed-off-by: Jon Mason <[email protected]>
    Jon Mason authored and jonmason committed Sep 14, 2014
    Configuration menu
    Copy the full SHA
    a1413cf View commit details
    Browse the repository at this point in the history
  5. MAINTAINERS: update NTB info

    Update my contact info to my personal email address and add Dave Jiang.
    
    Signed-off-by: Jon Mason <[email protected]>
    Signed-off-by: Dave Jiang <[email protected]>
    Jon Mason authored and jonmason committed Sep 14, 2014
    Configuration menu
    Copy the full SHA
    9ef6bf6 View commit details
    Browse the repository at this point in the history
  6. ntb: Add alignment check to meet hardware requirement

    The NTB translate register must have the value to be BAR size aligned.
    This alignment check make sure that the DMA memory allocated has the
    proper alignment. Another requirement for NTB to function properly with
    memory window BAR size greater or equal to 4M is to use the CMA feature
    in 3.16 kernel with the appropriate CONFIG_CMA_ALIGNMENT and
    CONFIG_CMA_SIZE_MBYTES set.
    
    Signed-off-by: Dave Jiang <[email protected]>
    Signed-off-by: Jon Mason <[email protected]>
    davejiang authored and jonmason committed Sep 14, 2014
    Configuration menu
    Copy the full SHA
    3cc5ba1 View commit details
    Browse the repository at this point in the history
  7. Merge tag 'irqchip-urgent-3.17' of git://git.infradead.org/users/jcoo…

    …per/linux into irq/urgent
    
    irqchip fixes for v3.17 from Jason Cooper
    
     - GIC/GICV3: Various fixlets
     - crossbar: Fix off-by-one bug
     - exynos-combiner: Fix arm64 build error
    KAGA-KOKO committed Sep 14, 2014
    Configuration menu
    Copy the full SHA
    938c04a View commit details
    Browse the repository at this point in the history
  8. Merge branch 'irq-urgent-for-linus' of git://git.kernel.org/pub/scm/l…

    …inux/kernel/git/tip/tip
    
    Pull ARM irq chip fixes from Thomas Gleixner:
     "Another pile of ARM specific irq chip fixlets:
    
       - off by one bugs in the crossbar driver
       - missing annotations
       - a bunch of "make it compile" updates
    
      I pulled the lot today from Jason, but it has been in -next for at
      least a week"
    
    * 'irq-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
      irqchip: gic-v3: Declare rdist as __percpu pointer to __iomem pointer
      irqchip: gic: Make gic_default_routable_irq_domain_ops static
      irqchip: exynos-combiner: Fix compilation error on ARM64
      irqchip: crossbar: Off by one bugs in init
      irqchip: gic-v3: Tag all low level accessors __maybe_unused
      irqchip: gic-v3: Only define gic_peek_irq() when building SMP
    torvalds committed Sep 14, 2014
    Configuration menu
    Copy the full SHA
    8ac19f0 View commit details
    Browse the repository at this point in the history
  9. Merge tag 'ntb-3.17' of git://github.com/jonmason/ntb

    Pull ntb driver bugfixes from Jon Mason:
     "NTB driver fixes for queue spread and buffer alignment.  Also, update
      to MAINTAINERS to reflect new e-mail address"
    
    * tag 'ntb-3.17' of git://github.com/jonmason/ntb:
      ntb: Add alignment check to meet hardware requirement
      MAINTAINERS: update NTB info
      NTB: correct the spread of queues over mw's
    torvalds committed Sep 14, 2014
    Configuration menu
    Copy the full SHA
    02c1be3 View commit details
    Browse the repository at this point in the history
  10. don't bugger nd->seq on set_root_rcu() from follow_dotdot_rcu()

    return the value instead, and have path_init() do the assignment.  Broken by
    "vfs: Fix absolute RCU path walk failures due to uninitialized seq number",
    which was Cc-stable with 2.6.38+ as destination.  This one should go where
    it went.
    
    To avoid dummy value returned in case when root is already set (it would do
    no harm, actually, since the only caller that doesn't ignore the return value
    is guaranteed to have nd->root *not* set, but it's more obvious that way),
    lift the check into callers.  And do the same to set_root(), to keep them
    in sync.
    
    Cc: [email protected] # 2.6.38+
    Signed-off-by: Al Viro <[email protected]>
    Al Viro committed Sep 14, 2014
    Configuration menu
    Copy the full SHA
    7bd8837 View commit details
    Browse the repository at this point in the history
  11. be careful with nd->inode in path_init() and follow_dotdot_rcu()

    in the former we simply check if dentry is still valid after picking
    its ->d_inode; in the latter we fetch ->d_inode in the same places
    where we fetch dentry and its ->d_seq, under the same checks.
    
    Cc: [email protected] # 2.6.38+
    Signed-off-by: Al Viro <[email protected]>
    Al Viro committed Sep 14, 2014
    Configuration menu
    Copy the full SHA
    4023bfc View commit details
    Browse the repository at this point in the history
  12. Merge branch 'parisc-3.17-1' of git://git.kernel.org/pub/scm/linux/ke…

    …rnel/git/deller/parisc-linux
    
    Pull parisc updates from Helge Deller:
     "The most important patch is a new Light Weigth Syscall (LWS) for 8,
      16, 32 and 64 bit atomic CAS operations which is required in order to
      be able to implement the atomic gcc builtins on our platform.
    
      Other than that, we wire up the seccomp, getrandom and memfd_create
      syscalls, fixes a minor off-by-one bug and a wrong printk string"
    
    * 'parisc-3.17-1' of git://git.kernel.org/pub/scm/linux/kernel/git/deller/parisc-linux:
      parisc: Implement new LWS CAS supporting 64 bit operations.
      parisc: Wire up seccomp, getrandom and memfd_create syscalls
      parisc: dino: fix %d confusingly prefixed with 0x in format string
      parisc: sys_hpux: NUL terminator is one past the end
    torvalds committed Sep 14, 2014
    Configuration menu
    Copy the full SHA
    5910cfd View commit details
    Browse the repository at this point in the history

Commits on Sep 15, 2014

  1. vfs: avoid non-forwarding large load after small store in path lookup

    The performance regression that Josef Bacik reported in the pathname
    lookup (see commit 99d263d "vfs: fix bad hashing of dentries") made
    me look at performance stability of the dcache code, just to verify that
    the problem was actually fixed.  That turned up a few other problems in
    this area.
    
    There are a few cases where we exit RCU lookup mode and go to the slow
    serializing case when we shouldn't, Al has fixed those and they'll come
    in with the next VFS pull.
    
    But my performance verification also shows that link_path_walk() turns
    out to have a very unfortunate 32-bit store of the length and hash of
    the name we look up, followed by a 64-bit read of the combined hash_len
    field.  That screws up the processor store to load forwarding, causing
    an unnecessary hickup in this critical routine.
    
    It's caused by the ugly calling convention for the "hash_name()"
    function, and easily fixed by just making hash_name() fill in the whole
    'struct qstr' rather than passing it a pointer to just the hash value.
    
    With that, the profile for this function looks much smoother.
    
    Signed-off-by: Linus Torvalds <[email protected]>
    torvalds committed Sep 15, 2014
    Configuration menu
    Copy the full SHA
    9226b5b View commit details
    Browse the repository at this point in the history
  2. Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel…

    …/git/viro/vfs
    
    Pull vfs fixes from Al Viro:
     "double iput() on failure exit in lustre, racy removal of spliced
      dentries from ->s_anon in __d_materialise_dentry() plus a bunch of
      assorted RCU pathwalk fixes"
    
    The RCU pathwalk fixes end up fixing a couple of cases where we
    incorrectly dropped out of RCU walking, due to incorrect initialization
    and testing of the sequence locks in some corner cases.  Since dropping
    out of RCU walk mode forces the slow locked accesses, those corner cases
    slowed down quite dramatically.
    
    * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs:
      be careful with nd->inode in path_init() and follow_dotdot_rcu()
      don't bugger nd->seq on set_root_rcu() from follow_dotdot_rcu()
      fix bogus read_seqretry() checks introduced in b37199e
      move the call of __d_drop(anon) into __d_materialise_unique(dentry, anon)
      [fix] lustre: d_make_root() does iput() on dentry allocation failure
    torvalds committed Sep 15, 2014
    Configuration menu
    Copy the full SHA
    83373f7 View commit details
    Browse the repository at this point in the history
  3. Linux 3.17-rc5

    torvalds committed Sep 15, 2014
    Configuration menu
    Copy the full SHA
    9e82bf0 View commit details
    Browse the repository at this point in the history
  4. Merge git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6

    Pull crypto fixes from Herbert Xu:
     "This fixes the newly added drbg generator so that it actually works on
      32-bit machines.  Previously the code was only tested on 64-bit and on
      32-bit it overflowed and simply doesn't work"
    
    * git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6:
      crypto: drbg - remove check for uninitialized DRBG handle
      crypto: drbg - backport "fix maximum value checks on 32 bit systems"
    torvalds committed Sep 15, 2014
    Configuration menu
    Copy the full SHA
    3630056 View commit details
    Browse the repository at this point in the history
  5. vfs: simplify and shrink stack frame of link_path_walk()

    Commit 9226b5b ("vfs: avoid non-forwarding large load after small
    store in path lookup") made link_path_walk() always access the
    "hash_len" field as a single 64-bit entity, in order to avoid mixed size
    accesses to the members.
    
    However, what I didn't notice was that that effectively means that the
    whole "struct qstr this" is now basically redundant.  We already
    explicitly track the "const char *name", and if we just use "u64
    hash_len" instead of "long len", there is nothing else left of the
    "struct qstr".
    
    We do end up wanting the "struct qstr" if we have a filesystem with a
    "d_hash()" function, but that's a rare case, and we might as well then
    just squirrell away the name and hash_len at that point.
    
    End result: fewer live variables in the loop, a smaller stack frame, and
    better code generation.  And we don't need to pass in pointers variables
    to helper functions any more, because the return value contains all the
    relevant information.  So this removes more lines than it adds, and the
    source code is clearer too.
    
    Signed-off-by: Linus Torvalds <[email protected]>
    torvalds committed Sep 15, 2014
    Configuration menu
    Copy the full SHA
    d6bb3e9 View commit details
    Browse the repository at this point in the history
  6. ia64: Fix syscall number for memfd_create

    Cut & paste typo from the line above.
    
    Reported-by: Ben Hutchings <[email protected]>
    Signed-off-by: Tony Luck <[email protected]>
    Signed-off-by: Linus Torvalds <[email protected]>
    aegl authored and torvalds committed Sep 15, 2014
    Configuration menu
    Copy the full SHA
    f3b5933 View commit details
    Browse the repository at this point in the history
  7. Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel…

    …/git/dtor/input
    
    Pull input updates from Dmitry Torokhov:
     "A few quirks for i8042/AT keyboards and a small device tree doc fix
      for Atmel Touchscreens"
    
    * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input:
      Input: atmel_mxt_ts - fix merge in DT documentation
      Input: i8042 - also set the firmware id for MUXed ports
      Input: i8042 - add nomux quirk for Avatar AVIU-145A6
      Input: i8042 - add Fujitsu U574 to no_timeout dmi table
      Input: atkbd - do not try 'deactivate' keyboard on any LG laptops
    torvalds committed Sep 15, 2014
    Configuration menu
    Copy the full SHA
    b921786 View commit details
    Browse the repository at this point in the history
  8. Merge tag 'regmap-v3.17-rc5' of git://git.kernel.org/pub/scm/linux/ke…

    …rnel/git/broonie/regmap
    
    Pull regmap fix from Mark Brown:
     "Fix registers file in debugfs
    
      Ensure that the mode reported for the registers file in debugfs is
      accurate by marking it as read only when the define to enable writes
      has not been set.  This is on the edge of being a bug fix but it's
      debugfs and it makes it much easier for users to spot what's going
      wrong when they forget to enable writeability"
    
    * tag 'regmap-v3.17-rc5' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regmap:
      regmap: Fix debugfs-file 'registers' mode
    torvalds committed Sep 15, 2014
    Configuration menu
    Copy the full SHA
    2324067 View commit details
    Browse the repository at this point in the history

Commits on Sep 16, 2014

  1. Merge tag 'fixes-for-linus' of git://git.kernel.org/pub/scm/linux/ker…

    …nel/git/rusty/linux
    
    Pull virtio fixes from Rusty Russell:
     "virtio-rng corner case fixes, with cc:stable.
    
      Survived a few days in linux-next"
    
    * tag 'fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux:
      virtio-rng: skip reading when we start to remove the device
      virtio-rng: fix stuck of hot-unplugging busy device
    torvalds committed Sep 16, 2014
    Configuration menu
    Copy the full SHA
    2856db7 View commit details
    Browse the repository at this point in the history
  2. vfs: workaround gcc <4.6 build error in link_path_walk()

    Commit d6bb3e9 ("vfs: simplify and shrink stack frame of
    link_path_walk()") introduced build problems with GCC versions older
    than 4.6 due to the initialisation of a member of an anonymous union in
    struct qstr without enclosing braces.
    
    This hits GCC bug 10676 [1] (which was fixed in GCC 4.6 by [2]), and
    causes the following build error:
    
      fs/namei.c: In function 'link_path_walk':
      fs/namei.c:1778: error: unknown field 'hash_len' specified in initializer
    
    This is worked around by adding explicit braces.
    
    [1] https://gcc.gnu.org/bugzilla/show_bug.cgi?id=10676
    [2] https://gcc.gnu.org/viewcvs/gcc?view=revision&revision=159206
    
    Fixes: d6bb3e9 (vfs: simplify and shrink stack frame of link_path_walk())
    Signed-off-by: James Hogan <[email protected]>
    Cc: Linus Torvalds <[email protected]>
    Cc: Alexander Viro <[email protected]>
    Cc: Geert Uytterhoeven <[email protected]>
    Cc: [email protected]
    Cc: [email protected]
    Signed-off-by: Linus Torvalds <[email protected]>
    James Hogan authored and torvalds committed Sep 16, 2014
    Configuration menu
    Copy the full SHA
    a060dc5 View commit details
    Browse the repository at this point in the history
  3. Merge tag 'gfs2-fixes' of git://git.kernel.org/pub/scm/linux/kernel/g…

    …it/steve/gfs2-3.0-fixes
    
    Pull gfs2 fixes from Steven Whitehouse:
     "Here are a number of small fixes for GFS2.
    
      There is a fix for FIEMAP on large sparse files, a negative dentry
      hashing fix, a fix for flock, and a bug fix relating to d_splice_alias
      usage.
    
      There are also (patches 1 and 5) a couple of updates which are less
      critical, but small and low risk"
    
    * tag 'gfs2-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/steve/gfs2-3.0-fixes:
      GFS2: fix d_splice_alias() misuses
      GFS2: Don't use MAXQUOTAS value
      GFS2: Hash the negative dentry during inode lookup
      GFS2: Request demote when a "try" flock fails
      GFS2: Change maxlen variables to size_t
      GFS2: fs/gfs2/super.c: replace seq_printf by seq_puts
    torvalds committed Sep 16, 2014
    Configuration menu
    Copy the full SHA
    37504a3 View commit details
    Browse the repository at this point in the history

Commits on Sep 17, 2014

  1. Revert "init: make rootdelay=N consistent with rootwait behaviour"

    This reverts commit 4dfe694.
    
    In that, we did:
    
      Here we move the rootdelay code to be right beside the rootwait code, so
      that their behaviour is consistent.
    
    ...which is fine, but in hindsight, perhaps moving the rootwait to be
    beside the rootdelay would have been better.  We also indicated:
    
      It should be noted that in doing so, the actions based on the
      saved_root_name[0] and initrd_load() were previously put on hold by
      rootdelay=N and now currently will not be delayed.  However, I think
      consistent behaviour is more important than matching historical behaviour
      of delaying the above two operations.
    
    But Pavel reported an instance where an ARM target with root on MMC
    was failing to mount root, and Russell diagnosed it to the fact that
    the call to set ROOT_DEV within the saved_root_name[0] processing
    block mentioned above was no longer being delayed.
    
    Rather than moving both wait clauses to the original position of
    rootdelay and risking unearthing other possible corner case breakage
    at this point in time, we simply revert now and we can revisit
    trying the alternate/earlier location in another development cycle.
    
    Cc: Pavel Machek <[email protected]>
    Cc: Russell King <[email protected]>
    Cc: Andrew Morton <[email protected]>
    Signed-off-by: Paul Gortmaker <[email protected]>
    Signed-off-by: Linus Torvalds <[email protected]>
    Paul Gortmaker authored and torvalds committed Sep 17, 2014
    Configuration menu
    Copy the full SHA
    8ba4caf View commit details
    Browse the repository at this point in the history