01 Dec, 2014

3 commits


30 Nov, 2014

2 commits

  • Pull irq fixes from Thomas Gleixner:
    "Three fixlets from the ARM SoC camp:
    - correct irqdomain initialization for atmel-aic
    - correct error handling for device tree parsing in bcm controllers"

    * 'irq-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
    irqchip: brcmstb-l2: Fix error handling of irq_of_parse_and_map
    irqchip: bcm7120-l2: Fix error handling of irq_of_parse_and_map
    irqchip: atmel-aic: Fix irqdomain initialization

    Linus Torvalds
     
  • Pull SCSI fixes from James Bottomley:
    "This is a set of ten fixes: 8 for UFS including four static checker
    warnings, a potential null deref in the voltage regulator code, a race
    on module unload, a ref counting fix on the well known LUNs which made
    it impossible to remove the ufs module and fix to correct the
    information in pwr_info.

    In addition to UFS, there's a blacklist for the Intel Multi-Flex array
    which chokes on report supported operation codes and a fix to an oops
    in bnx2fc caused by shared skbs"

    [ For us non-SCSI people: "UFS" here is "Universal Flash Storage" not
    the filesystem. - Linus ]

    * tag 'scsi-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi:
    ufs: fix NULL dereference when no regulators are defined
    ufs: ensure clk gating work is finished before module unloading
    scsi: ufs: fix static checker warning in ufshcd_parse_clock_info
    scsi: ufs: fix static checker warning in __ufshcd_setup_clocks
    scsi: ufs: fix static checker warning in ufshcd_populate_vreg
    scsi: ufs: fix static checker errors in ufshcd_system_suspend
    ufs: fix power info after link start-up
    ufs: fix reference counting of W-LUs
    scsi: add Intel Multi-Flex to scsi scan blacklist
    bnx2fc: do not add shared skbs to the fcoe_rx_list

    Linus Torvalds
     

29 Nov, 2014

7 commits

  • Pull staging/IIO driver fixes from Greg KH:
    "Here are some staging and IIO driver fixes for 3.18-rc7 that resolve a
    number of reported issues, and a new device id for a staging wireless
    driver.

    All of these have been in linux-next"

    * tag 'staging-3.18-rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging:
    staging: r8188eu: Add new device ID for DLink GO-USB-N150
    staging: r8188eu: Fix scheduling while atomic error introduced in commit fadbe0cd
    iio: accel: bmc150: set low default thresholds
    iio: accel: bmc150: Fix iio_event_spec direction
    iio: accel: bmc150: Send x, y and z motion separately
    iio: accel: bmc150: Error handling when mode set fails
    iio: gyro: bmg160: Fix iio_event_spec direction
    iio: gyro: bmg160: Send x, y and z motion separately
    iio: gyro: bmg160: Don't let interrupt mode to be open drain
    iio: gyro: bmg160: Error handling when mode set fails
    iio: adc: men_z188_adc: Add terminating entry for men_z188_ids
    iio: accel: kxcjk-1013: Fix kxcjk10013_set_range
    iio: Fix IIO_EVENT_CODE_EXTRACT_DIR bit mask

    Linus Torvalds
     
  • Pull tty/serial fix from Greg KH:
    "Here is a single revert for the of-serial driver that resolves a
    reported issue.

    This revert has been in linux-next for a while"

    * tag 'tty-3.18-rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty:
    Revert "serial: of-serial: add PM suspend/resume support"

    Linus Torvalds
     
  • Pull USB fixes from Greg KH:
    "Here are some USB driver fixes and new device ids for 3.18-rc7.

    Full details are in the shortlog, and all of these have been in the
    linux-next tree for a while"

    * tag 'usb-3.18-rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb:
    usb-quirks: Add reset-resume quirk for MS Wireless Laser Mouse 6000
    usb: xhci: rework root port wake bits if controller isn't allowed to wakeup
    USB: xhci: Reset a halted endpoint immediately when we encounter a stall.
    Revert "xhci: clear root port wake on bits if controller isn't wake-up capable"
    USB: xhci: don't start a halted endpoint before its new dequeue is set
    USB: uas: Add no-uas quirk for Hitachi usb-3 enclosures 4971:1012
    USB: ssu100: fix overrun-error reporting
    USB: keyspan: fix overrun-error reporting
    USB: keyspan: fix tty line-status reporting
    usb: serial: ftdi_sio: add PIDs for Matrix Orbital products
    usb: dwc3: ep0: fix for dead code
    USB: serial: cp210x: add IDs for CEL MeshConnect USB Stick

    Linus Torvalds
     
  • Pull thermal fixes from Eduardo Valentin:
    "In this -rc still very minor changes:

    - Lee Jones fixes compilation warning in sti thermal driver
    - Marjus Elfring removes unnecessary checks in exynos thermal driver
    (as per coccinelle)
    - Now we always update cpufreq policies, and thus get (hopefully)
    always in sync with cpufreq, thanks to Yadwinder"

    * 'fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/evalenti/linux-soc-thermal:
    thermal: Exynos: Deletion of unnecessary checks before two function calls
    thermal: sti: Ignore suspend/resume functions when !PM_SLEEP
    thermal: cpu_cooling: Update always cpufreq policy with thermal constraints

    Linus Torvalds
     
  • Pull sound fixes from Takashi Iwai:
    "No excitement, here are only minor fixes: an endian fix for the new
    DSD format we added in 3.18, a fix for HP mute LED, and a fix for
    Native Instrument quirk"

    * tag 'sound-3.18-rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound:
    ALSA: pcm: Add big-endian DSD sample formats and fix XMOS DSD sample format
    ALSA: hda - One more HP machine needs to change mute led quirk
    ALSA: usb-audio: Use snd_usb_ctl_msg() for Native Instruments quirk

    Linus Torvalds
     
  • Pull ARM SoC fixes from Arnd Bergmann:
    "Not much interesting going on fixes-wise for us this week, as it
    should be for an -rc7. I'm not expecting Olof to work much over
    Thanksgiving weekend, so I decided to take over again and push these
    out to you.

    Just four simple fixes this week:

    - one missing of_node_put() on armv7 based mvebu
    - forcing the USB host into the right mode on Chromebook
    (exynos5-snow)
    - enabling two important drivers for exynos_defconfig
    - fixing a noncritical bug for tegra that would cause a regression
    with common code patches queued for 3.19"

    * tag 'armsoc-for-rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc:
    ARM: tegra: irq: fix buggy usage of irq_data irq field
    ARM: exynos_defconfig: Enable max77802 rtc and clock drivers
    ARM: dts: Explicitly set dr_mode on exynos5250-snow
    ARM: mvebu: add missing of_node_put() call in coherency.c

    Linus Torvalds
     
  • Pull ARM fixes from Russell King:
    "Another round of relatively small ARM fixes.

    Thomas spotted that the strex backoff delay bit was a disable bit, so
    it needed to be clear for this to work. Vladimir spotted that using a
    restart block for the cache flush operation would return -EINTR, which
    userspace was not expecting. Dmitry spotted that the auxiliary
    control register accesses for Xscale were not correct"

    * 'fixes' of git://ftp.arm.linux.org.uk/~rmk/linux-arm:
    ARM: 8226/1: cacheflush: get rid of restarting block
    ARM: 8222/1: mvebu: enable strex backoff delay
    ARM: 8216/1: xscale: correct auxiliary register in suspend/resume

    Linus Torvalds
     

28 Nov, 2014

9 commits

  • Two regression fixes from Ville.

    * tag 'drm-intel-fixes-2014-11-27' of git://anongit.freedesktop.org/drm-intel:
    drm/i915: Cancel vdd off work before suspend
    drm/i915: Ignore SURFLIVE and flip counter when the GPU gets reset

    Dave Airlie
     
  • Pull mips fixes from Ralf Baechle:
    "The hopefully final round of fixes for 3.18:

    - Fix a number of build errors affecting particular configurations.
    - Handle EVA correctly when flushing a signal trampoline and dcache
    lines.
    - Fix printks printing jibberish.
    - Handle 64 bit memory addresses correctly when adding memory chunk
    on 32 bit kernels.
    - Fix a race condition in the hardware tablewalker code"

    * 'upstream' of git://git.linux-mips.org/pub/scm/ralf/upstream-linus:
    MIPS: tlbex: Fix potential HTW race on TLBL/M/S handlers
    MIPS: Fix address type used for early memory detection.
    MIPS: Kconfig: Don't allow both microMIPS and SmartMIPS to be selected.
    MIPS: kernel: cps-vec: Set ISA level to mips32r2 for the MIPS MT ASE
    MIPS: Netlogic: handle modular AHCI builds
    MIPS: Netlogic: handle modular USB case
    MIPS: Loongson: Make platform serial setup always built-in.
    MIPS: fix EVA & non-SMP non-FPU FP context signal handling
    MIPS: cpu-probe: Set the FTLB probability bit on supported cores
    MIPS: BMIPS: Fix ".previous without corresponding .section" warnings
    MIPS: uaccess.h: Fix strnlen_user comment.
    MIPS: r4kcache: Add EVA case for protected_writeback_dcache_line
    MIPS: Fix info about plat_setup in arch_mem_init comment
    MIPS: rtlx: Remove KERN_DEBUG from pr_debug() arguments in rtlx.c
    MIPS: SEAD3: Fix LED device registration.
    MIPS: Fix a copy & paste error in unistd.h

    Linus Torvalds
     
  • Pull powerpc fixes from Michael Ellerman:
    "Here are five fixes for you to pull please.

    They're all CC'ed to stable except the "Fix PE state format" one which
    went in this release"

    * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mpe/linux:
    powerpc: 32 bit getcpu VDSO function uses 64 bit instructions
    powerpc/powernv: Replace OPAL_DEASSERT_RESET with EEH_RESET_DEACTIVATE
    powerpc/eeh: Fix PE state format
    powerpc/pseries: Fix endiannes issue in RTAS call from xmon
    powerpc/powernv: Fix the hmi event version check.

    Linus Torvalds
     
  • Pull sparc fixlet from David Miller:
    "Aparc fix to add dma_cache_sync(), even if a nop it should be provided
    if dma_{alloc,free}_noncoherent() is provided too"

    * git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc:
    sparc: Add NOP dma_cache_sync() implementation.

    Linus Torvalds
     
  • Pull networking fixes from David Miller:
    "Several small fixes here:

    1) Don't crash in tg3 driver when the number of tx queues has been
    configured to be different from the number of rx queues. From
    Thadeu Lima de Souza Cascardo.

    2) VLAN filter not disabled properly in promisc mode in ixgbe driver,
    from Vlad Yasevich.

    3) Fix OOPS on dellink op in VTI tunnel driver, from Xin Long.

    4) IPV6 GRE driver WCCP code checks skb->protocol for ETH_P_IP
    instead of ETH_P_IPV6, whoops. From Yuri Chislov.

    5) Socket matching in ping driver is buggy when packet AF does not
    match socket's AF. Fix from Jane Zhou.

    6) Fix checksum calculation errors in VXLAN due to where the
    udp_tunnel6_xmit_skb() helper gets it's saddr/daddr from. From
    Alexander Duyck.

    7) Fix 5G detection problem in rtlwifi driver, from Larry Finger.

    8) Fix NULL deref in tcp_v{4,6}_send_reset, from Eric Dumazet.

    9) Various missing netlink attribute verifications in bridging code,
    from Thomas Graf.

    10) tcp_recvmsg() unconditionally calls ipv4 ip_recv_error even for
    ipv6 sockets, whoops. Fix from Willem de Bruijn"

    * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net: (29 commits)
    net-timestamp: make tcp_recvmsg call ipv6_recv_error for AF_INET6 socks
    bridge: Sanitize IFLA_EXT_MASK for AF_BRIDGE:RTM_GETLINK
    bridge: Add missing policy entry for IFLA_BRPORT_FAST_LEAVE
    net: Check for presence of IFLA_AF_SPEC
    net: Validate IFLA_BRIDGE_MODE attribute length
    bridge: Validate IFLA_BRIDGE_FLAGS attribute length
    stmmac: platform: fix default values of the filter bins setting
    net/mlx4_core: Limit count field to 24 bits in qp_alloc_res
    net: dsa: bcm_sf2: reset switch prior to initialization
    net: dsa: bcm_sf2: fix unmapping registers in case of errors
    tg3: fix ring init when there are more TX than RX channels
    tcp: fix possible NULL dereference in tcp_vX_send_reset()
    rtlwifi: Change order in device startup
    rtlwifi: rtl8821ae: Fix 5G detection problem
    Revert "netfilter: conntrack: fix race in __nf_conntrack_confirm against get_next_corpse"
    vxlan: Fix boolean flip in VXLAN_F_UDP_ZERO_CSUM6_[TX|RX]
    ip6_udp_tunnel: Fix checksum calculation
    net-timestamp: Fix a documentation typo
    net/ping: handle protocol mismatching scenario
    af_packet: fix sparse warning
    ...

    Linus Torvalds
     
  • Pull spi fixes from Mark Brown:
    "There's a couple of driver fixes here, plus one core fix for the DMA
    mapping which wasn't doing the right thing for vmalloc()ed addresses
    that hadn't been through kmap(). It's fairly rare to use vmalloc()
    with SPI and it's a subset of those users who might fail so it's
    unsurprising that this wasn't noticed sooner"

    * tag 'spi-v3.18-rc6' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/spi:
    spi: sirf: fix word width configuration
    spi: Fix mapping from vmalloc-ed buffer to scatter list
    spi: dw: Fix dynamic speed change.

    Linus Torvalds
     
  • Pull input layer fixes from Dmitry Torokhov:
    "The main change is to fix breakage in Elantech driver introduced by
    the recent commit adding trackpoint reporting to protocol v4. Now we
    are trusting the hardware to advertise the trackpoint properly and do
    not try to decode the data as trackpoint if firmware told us it is not
    present"

    * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input:
    Input: xpad - use proper endpoint type
    Input: elantech - trust firmware about trackpoint presence
    Input: synaptics - adjust min/max on Thinkpad E540

    Linus Torvalds
     
  • The DLink GO-USB-N150 with revision B1 uses this driver.

    Signed-off-by: Larry Finger
    Cc: stable
    Signed-off-by: Greg Kroah-Hartman

    Larry Finger
     
  • There is a potential race when probing the TLB in TLBL/M/S exception
    handlers for a matching entry. Between the time we hit a TLBL/S/M
    exception and the time we get to execute the TLBP instruction, the
    HTW may have replaced the TLB entry we are interested in hence the TLB
    probe may fail. However, in the existing handlers, we never checked the
    status of the TLBP (ie check the result in the C0/Index register). We
    fix this by adding such a check when the core implements the HTW. If
    we couldn't find a matching entry, we return back and try again.

    Signed-off-by: Leonid Yegoshin
    Signed-off-by: Markos Chandras
    Reviewed-by: James Hogan
    Cc: # v3.17+
    Cc: linux-mips@linux-mips.org
    Patchwork: https://patchwork.linux-mips.org/patch/8599/
    Signed-off-by: Ralf Baechle

    Leonid Yegoshin
     

27 Nov, 2014

19 commits

  • We cannot restart cacheflush safely if a process provides user-defined
    signal handler and signal is pending. In this case -EINTR is returned
    and it is expected that process re-invokes syscall. However, there are
    a few problems with that:
    * looks like nobody bothers checking return value from cacheflush
    * but if it did, we don't provide the restart address for that, so the
    process has to use the same range again
    * ...and again, what might lead to looping forever

    So, remove cacheflush restarting code and terminate cache flushing
    as early as fatal signal is pending.

    Cc: stable@vger.kernel.org # 3.12+
    Reported-by: Chanho Min
    Signed-off-by: Vladimir Murzin
    Acked-by: Will Deacon
    Signed-off-by: Russell King

    Vladimir Murzin
     
  • Under extremely rare conditions, in an MPCore node consisting of at
    least 3 CPUs, two CPUs trying to perform a STREX to data on the same
    shared cache line can enter a livelock situation.

    This patch enables the HW mechanism that overcomes the bug. This fixes
    the incorrect setup of the STREX backoff delay bit due to a wrong
    description in the specification.

    Note that enabling the STREX backoff delay mechanism is done by
    leaving the bit *cleared*, while the bit was currently being set by
    the proc-v7.S code.

    [Thomas: adapt to latest mainline, slightly reword the commit log, add
    stable markers.]

    Fixes: de4901933f6d ("arm: mm: Add support for PJ4B cpu and init routines")

    Cc: # v3.8+
    Signed-off-by: Nadav Haklai
    Signed-off-by: Thomas Petazzoni
    Acked-by: Gregory CLEMENT
    Acked-by: Jason Cooper
    Signed-off-by: Russell King

    Thomas Petazzoni
     
  • Pull "mvebu fixes for v3.18 (round 2)" frm Jason Cooper:

    - mvebu
    - coherency.c needed an of_node_put()

    * tag 'mvebu-fixes-3.18-2' of git://git.infradead.org/linux-mvebu:
    ARM: mvebu: add missing of_node_put() call in coherency.c

    Signed-off-by: Arnd Bergmann

    Arnd Bergmann
     
  • …/git/kgene/linux-samsung into fixes

    Pull "Samsung defconfig update for v3.18" from Kukjin Kim:

    - enable max77802 rtc and clock drivers for exynos_defconfig
    : enable the kernel config options to have the drivers for
    max77802 including rtc and 2-ch 32kHz clock outputs

    * tag 'samsung-defconfig-v3.18' of git://git.kernel.org/pub/scm/linux/kernel/git/kgene/linux-samsung:
    ARM: exynos_defconfig: Enable max77802 rtc and clock drivers

    Signed-off-by: Arnd Bergmann <arnd@arndb.de>

    Arnd Bergmann
     
  • …/kgene/linux-samsung into fixes

    Pull "Samsung fixes for v3.18" from Kukjin Kim:

    - explicitly set dr_mode on exynos5250-snow
    this is required when kernel is built with USB gadget support.

    * tag 'samsung-fixes-v3.18' of git://git.kernel.org/pub/scm/linux/kernel/git/kgene/linux-samsung:
    ARM: dts: Explicitly set dr_mode on exynos5250-snow

    Signed-off-by: Arnd Bergmann <arnd@arndb.de>

    Arnd Bergmann
     
  • The crazy gic_arch_extn thing that Tegra uses contains multiple
    references to the irq field in struct irq_data, and uses this
    to directly poke hardware register.

    But irq is the *virtual* irq number, something that has nothing
    to do with the actual HW irq (stored in the hwirq field). And once
    we put the stacked domain code in action, the whole thing explodes,
    as these two values are *very* different:

    root@bacon-fat:~# cat /proc/interrupts
    CPU0 CPU1
    16: 25801 2075 GIC 29 twd
    17: 0 0 GIC 73 timer0
    112: 0 0 GPIO 58 c8000600.sdhci cd
    123: 0 0 GPIO 69 c8000200.sdhci cd
    279: 1126 0 GIC 122 serial
    281: 0 0 GIC 70 7000c000.i2c
    282: 0 0 GIC 116 7000c400.i2c
    283: 0 0 GIC 124 7000c500.i2c
    284: 300 0 GIC 85 7000d000.i2c
    [...]

    Just replacing all instances of irq with hwirq fixes the issue.

    Signed-off-by: Marc Zyngier
    Acked-by: Thierry Reding
    Signed-off-by: Arnd Bergmann

    Marc Zyngier
     
  • one fix for PX laptops.

    * 'drm-fixes-3.18' of git://people.freedesktop.org/~agd5f/linux:
    drm/radeon: report disconnected for LVDS/eDP with PX if ddc fails

    Dave Airlie
     
  • If ddc fails, presumably the i2c mux (and hopefully the signal
    mux) are switched to the other GPU so don't fetch the edid from
    the vbios so that the connector reports disconnected.

    bug:
    https://bugzilla.opensuse.org/show_bug.cgi?id=904417

    Signed-off-by: Alex Deucher
    Cc: stable@vger.kernel.org

    Alex Deucher
     
  • I used some 64 bit instructions when adding the 32 bit getcpu VDSO
    function. Fix it.

    Fixes: 18ad51dd342a ("powerpc: Add VDSO version of getcpu")
    Cc: stable@vger.kernel.org
    Signed-off-by: Anton Blanchard
    Signed-off-by: Michael Ellerman

    Anton Blanchard
     
  • The flag passed to ioda_eeh_phb_reset() should be EEH_RESET_DEACTIVATE,
    which is translated to OPAL_DEASSERT_RESET or something else by the
    EEH backend accordingly.

    The patch replaces OPAL_DEASSERT_RESET with EEH_RESET_DEACTIVATE for
    ioda_eeh_phb_reset().

    Cc: stable@vger.kernel.org
    Signed-off-by: Gavin Shan
    Signed-off-by: Michael Ellerman

    Gavin Shan
     
  • Obviously I had wrong format given to the PE state output from
    /sys/bus/pci/devices/xxxx/eeh_pe_state with some typoes, which
    was introduced by commit 2013add4ce73. The patch fixes it up.

    Fixes: 2013add4ce73 ("powerpc/eeh: Show hex prefix for PE state sysfs")
    Signed-off-by: Gavin Shan
    Signed-off-by: Michael Ellerman

    Gavin Shan
     
  • On pseries system (LPAR) xmon failed to enter when running in LE mode,
    system is hunging. Inititating xmon will lead to such an output on the
    console:

    SysRq : Entering xmon
    cpu 0x15: Vector: 0 at [c0000003f39ffb10]
    pc: c00000000007ed7c: sysrq_handle_xmon+0x5c/0x70
    lr: c00000000007ed7c: sysrq_handle_xmon+0x5c/0x70
    sp: c0000003f39ffc70
    msr: 8000000000009033
    current = 0xc0000003fafa7180
    paca = 0xc000000007d75e80 softe: 0 irq_happened: 0x01
    pid = 14617, comm = bash
    Bad kernel stack pointer fafb4b0 at eca7cc4
    cpu 0x15: Vector: 300 (Data Access) at [c000000007f07d40]
    pc: 000000000eca7cc4
    lr: 000000000eca7c44
    sp: fafb4b0
    msr: 8000000000001000
    dar: 10000000
    dsisr: 42000000
    current = 0xc0000003fafa7180
    paca = 0xc000000007d75e80 softe: 0 irq_happened: 0x01
    pid = 14617, comm = bash
    cpu 0x15: Exception 300 (Data Access) in xmon, returning to main loop
    xmon: WARNING: bad recursive fault on cpu 0x15

    The root cause is that xmon is calling RTAS to turn off the surveillance
    when entering xmon, and RTAS is requiring big endian parameters.

    This patch is byte swapping the RTAS arguments when running in LE mode.

    Cc: stable@vger.kernel.org
    Signed-off-by: Laurent Dufour
    Signed-off-by: Michael Ellerman

    Laurent Dufour
     
  • The current HMI event structure is an ABI and carries a version field to
    accommodate future changes without affecting/rearranging current structure
    members that are valid for previous versions.

    The current version check "if (hmi_evt->version != OpalHMIEvt_V1)"
    doesn't accomodate the fact that the version number may change in
    future.

    If firmware starts returning an HMI event with version > 1, this check
    will fail and no HMI information will be printed on older kernels.

    This patch fixes this issue.

    Cc: stable@vger.kernel.org # 3.17+
    Signed-off-by: Mahesh Salgaonkar
    [mpe: Reword changelog]
    Signed-off-by: Michael Ellerman

    Mahesh Salgaonkar
     
  • In commit fadbe0cd5292851608e2e01b91d9295fa287b9fe entitled "staging:
    rtl8188eu:Remove rtw_zmalloc(), wrapper for kzalloc()", the author failed
    to note that the original code in the wrapper tested whether the caller
    could sleep, and set the flags argument to kzalloc() appropriately.
    After the patch, GFP_KERNEL is used unconditionally. Unfortunately, several
    of the routines may be entered from an interrupt routine and generate
    a BUG splat for every such call. Routine rtw_sitesurvey_cmd() is used in the
    example below:

    BUG: sleeping function called from invalid context at mm/slub.c:1240
    in_atomic(): 1, irqs_disabled(): 0, pid: 756, name: wpa_supplicant
    INFO: lockdep is turned off.
    CPU: 2 PID: 756 Comm: wpa_supplicant Tainted: G WC O 3.18.0-rc4+ #34
    Hardware name: TOSHIBA TECRA A50-A/TECRA A50-A, BIOS Version 4.20 04/17/2014
    ffffc90005557000 ffff880216fafaa8 ffffffff816b0bbf 0000000000000000
    ffff8800c3b58000 ffff880216fafac8 ffffffff8107af77 0000000000000001
    0000000000000010 ffff880216fafb18 ffffffff811b06ce 0000000000000000
    Call Trace:
    [] dump_stack+0x4e/0x71
    [] __might_sleep+0xf7/0x120
    [] kmem_cache_alloc_trace+0x4e/0x1f0
    [] ? rtw_sitesurvey_cmd+0x56/0x2a0 [r8188eu]
    [] rtw_sitesurvey_cmd+0x56/0x2a0 [r8188eu]
    [] rtw_do_join+0x22d/0x370 [r8188eu]
    [] rtw_set_802_11_ssid+0x218/0x3d0 [r8188eu]
    [] rtw_wx_set_essid+0x1e5/0x410 [r8188eu]
    [] ? rtw_wx_get_rate+0x50/0x50 [r8188eu]
    [] ioctl_standard_iw_point+0x151/0x3f0
    [] ioctl_standard_call+0xb2/0xe0
    [] ? rtnl_lock+0x17/0x20
    [] ? iw_handler_get_private+0x70/0x70
    [] ? call_commit_handler+0x40/0x40
    [] wireless_process_ioctl+0x176/0x1c0
    [] wext_handle_ioctl+0x69/0xc0
    [] dev_ioctl+0x309/0x5e0
    [] ? call_rcu+0x17/0x20
    [] sock_ioctl+0x142/0x2e0
    [] do_vfs_ioctl+0x300/0x520
    [] ? __audit_syscall_entry+0xb4/0x110
    [] ? __audit_syscall_entry+0xb4/0x110
    [] ? do_audit_syscall_entry+0x6c/0x70
    [] SyS_ioctl+0x81/0xa0
    [] system_call_fastpath+0x12/0x17

    Additional routines that generate this BUG are rtw_joinbss_cmd(),
    rtw_dynamic_chk_wk_cmd(), rtw_lps_ctrl_wk_cmd(), rtw_rpt_timer_cfg_cmd(),
    rtw_ps_cmd(), report_survey_event(), report_join_res(), survey_timer_hdl(),
    and rtw_check_bcn_info().

    Signed-off-by: Larry Finger
    Cc: navin patidar
    Signed-off-by: Greg Kroah-Hartman

    Larry Finger
     
  • John W. Linville says:

    ====================
    pull request: wireless 2014-11-26

    Please pull this little batch of fixes intended for the 3.18 stream...

    For the iwlwifi one, Emmanuel says:

    "Not all the firmware know how to handle the HOT_SPOT_CMD.
    Make sure that the firmware will know this command before
    sending it. This avoids a firmware crash."

    Along with that, Larry sends a pair of rtlwifi fixes to address some
    discrepancies from moving drivers out of staging. Larry says:

    "These two patches are needed to fix a regression introduced when
    driver rtl8821ae was moved from staging to the regular wireless tree."

    Please let me know if there are problems!
    ====================

    Signed-off-by: David S. Miller

    David S. Miller
     
  • This can be a NOP because we forward dma_{alloc,free}_noncoherent to
    dma_{alloc,free}_coherent.

    Signed-off-by: David S. Miller

    David S. Miller
     
  • TCP timestamping introduced MSG_ERRQUEUE handling for TCP sockets.
    If the socket is of family AF_INET6, call ipv6_recv_error instead
    of ip_recv_error.

    This change is more complex than a single branch due to the loadable
    ipv6 module. It reuses a pre-existing indirect function call from
    ping. The ping code is safe to call, because it is part of the core
    ipv6 module and always present when AF_INET6 sockets are active.

    Fixes: 4ed2d765 (net-timestamp: TCP timestamping)
    Signed-off-by: Willem de Bruijn

    ----

    It may also be worthwhile to add WARN_ON_ONCE(sk->family == AF_INET6)
    to ip_recv_error.
    Signed-off-by: David S. Miller

    Willem de Bruijn
     
  • Thomas Graf says:

    ====================
    bridge: Fix missing Netlink message validations

    Adds various missing length checks in the bridging code for Netlink
    messages and corresponding attributes provided by user space.
    ====================

    Signed-off-by: David S. Miller

    David S. Miller
     
  • Only search for IFLA_EXT_MASK if the message actually carries a
    ifinfomsg header and validate minimal length requirements for
    IFLA_EXT_MASK.

    Fixes: 6cbdceeb ("bridge: Dump vlan information from a bridge port")
    Cc: Vlad Yasevich
    Signed-off-by: Thomas Graf
    Signed-off-by: David S. Miller

    Thomas Graf