1. 08 Mar, 2014 2 commits
    • Linus Torvalds's avatar
      Merge tag 'trace-fixes-v3.14-rc5' of... · 721f0c12
      Linus Torvalds authored
      Merge tag 'trace-fixes-v3.14-rc5' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-trace
      
      Pull tracing fix from Steven Rostedt:
       "In the past, I've had lots of reports about trace events not working.
        Developers would say they put a trace_printk() before and after the
        trace event but when they enable it (and the trace event said it was
        enabled) they would see the trace_printks but not the trace event.
      
        I was not able to reproduce this, but that's because I wasn't looking
        at the right location.  Recently, another bug came up that showed the
        issue.
      
        If your kernel supports signed modules but allows for non-signed
        modules to be loaded, then when one is, the kernel will silently set
        the MODULE_FORCED taint on the module.  Although, this taint happens
        without the need for insmod --force or anything of the kind, it labels
        the module with that taint anyway.
      
        If this tainted module has tracepoints, the tracepoints will be
        ignored because of the MODULE_FORCED taint.  But no error message will
        be displayed.  Worse yet, the event infrastructure will still be
        created letting users enable the trace event represented by the
        tracepoint, although that event will never actually be enabled.  This
        is because the tracepoint infrastructure allows for non-existing
        tracepoints to be enabled for new modules to arrive and have their
        tracepoints set.
      
        Although there are several things wrong with the above, this change
        only addresses the creation of the trace event files for tracepoints
        that are not created when a module is loaded and is tainted.  This
        change will print an error message about the module being tainted and
        not the trace events will not be created, and it does not create the
        trace event infrastructure"
      
      * tag 'trace-fixes-v3.14-rc5' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-trace:
        tracing: Do not add event files for modules that fail tracepoints
      721f0c12
    • Linus Torvalds's avatar
      Merge branch 'irq-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 27ea0f78
      Linus Torvalds authored
      Pull irq fixes from Thomas Gleixner:
       - a bugfix for a long standing waitqueue race
       - a trivial fix for a missing include
      
      * 'irq-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        genirq: Include missing header file in irqdomain.c
        genirq: Remove racy waitqueue_active check
      27ea0f78
  2. 07 Mar, 2014 10 commits
    • Linus Torvalds's avatar
      Merge tag 'dm-3.14-fixes-3' of git://git.kernel.org/pub/scm/linux/kernel/git/device-mapper/linux-dm · 2ef176f1
      Linus Torvalds authored
      Pull device mapper fixes from Mike Snitzer:
      
       - dm-cache memory allocation failure fix
       - fix DM's Kconfig identation
       - dm-snapshot metadata corruption fix for bug introduced in 3.14-rc1
       - important refcount < 0 fix for the DM persistent data library's space
         map metadata interface which fixes corruption reported by a few
         dm-thinp users
      
      and last but not least:
      
       - more extensive fixes than ideal for dm-thinp's data resize capability
         (which has had growing pain much like we've seen from -ENOSPC
         handling of filesystems that mature).
      
         The end result is dm-thinp now handles metadata operation failure and
         no data space error conditions much better than before.
      
      * tag 'dm-3.14-fixes-3' of git://git.kernel.org/pub/scm/linux/kernel/git/device-mapper/linux-dm:
        dm space map metadata: fix refcount decrement below 0 which caused corruption
        dm thin: fix Documentation for held metadata root feature
        dm thin: fix noflush suspend IO queueing
        dm thin: fix deadlock in __requeue_bio_list
        dm thin: fix out of data space handling
        dm thin: ensure user takes action to validate data and metadata consistency
        dm thin: synchronize the pool mode during suspend
        dm snapshot: fix metadata corruption
        dm: fix Kconfig indentation
        dm cache mq: fix memory allocation failure for large cache devices
      2ef176f1
    • Vineet Gupta's avatar
      ARC: Use correct PTAG register for icache flush · b053940d
      Vineet Gupta authored
      This fixes a subtle issue with cache flush which could potentially cause
      random userspace crashes because of stale icache lines.
      
      This error crept in when consolidating the cache flush code
      
      Fixes: bd12976c (ARC: cacheflush refactor #3: Unify the {d,i}cache)
      Signed-off-by: default avatarVineet Gupta <vgupta@synopsys.com>
      Cc: linux-kernel@vger.kernel.org
      Cc: stable@vger.kernel.org  # 3.13
      Cc: arc-linux-dev@synopsys.com
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      b053940d
    • Linus Torvalds's avatar
      Merge tag 'sound-3.14-rc6' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound · e1aa17c7
      Linus Torvalds authored
      Pull sound fixes from Takashi Iwai:
       "Just a few device-specific quirks for HD-audio and USB-audio, most of
        which are one-liners"
      
      * tag 'sound-3.14-rc6' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound:
        ALSA: usb-audio: Add quirk for Logitech Webcam C500
        ALSA: hda - Use analog beep for Thinkpads with AD1984 codecs
        ALSA: hda - Add missing loopback merge path for AD1884/1984 codecs
        ALSA: hda - add automute fix for another dell AIO model
        ALSA: hda - Added inverted digital-mic handling for Acer TravelMate 8371
      e1aa17c7
    • Linus Torvalds's avatar
      Merge branch 'drm-fixes' of git://people.freedesktop.org/~airlied/linux · 3bf7706b
      Linus Torvalds authored
      Pull drm fixes from Dave Airlie:
       "Mostly intel and radeon fixes, one tda998x, one kconfig dep fix and
        two more MAINTAINERS updates,
      
        All pretty run of the mill for this stage"
      
      * 'drm-fixes' of git://people.freedesktop.org/~airlied/linux:
        drm/radeon/atom: select the proper number of lanes in transmitter setup
        MAINTAINERS: add maintainer entry for TDA998x driver
        drm: fix bochs kconfig dependencies
        drm/radeon/dpm: fix typo in EVERGREEN_SMC_FIRMWARE_HEADER_softRegisters
        drm/radeon/cik: fix typo in documentation
        drm/radeon: silence GCC warning on 32 bit
        drm/radeon: resume old pm late
        drm/radeon: TTM must be init with cpu-visible VRAM, v2
        DRM: armada: fix use of kfifo_put()
        drm/i915: Reject >165MHz modes w/ DVI monitors
        drm/i915: fix assert_cursor on BDW
        drm/i915: vlv: reserve GT power context early
        drm/i915: fix pch pci device enumeration
        drm/i915: Resolving the memory region conflict for Stolen area
        drm/i915: use backlight legacy combination mode also for i915gm/i945gm
        MAINTAINERS: update AGP tree to point at drm tree
      3bf7706b
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of git://git.kernel.dk/linux-block · 2a75184d
      Linus Torvalds authored
      Pull block fixes from Jens Axboe:
       "Small collection of fixes for 3.14-rc. It contains:
      
         - Three minor update to blk-mq from Christoph.
      
         - Reduce number of unaligned (< 4kb) in-flight writes on mtip32xx to
           two.  From Micron.
      
         - Make the blk-mq CPU notify spinlock raw, since it can't be a
           sleeper spinlock on RT.  From Mike Galbraith.
      
         - Drop now bogus BUG_ON() for bio iteration with blk integrity.  From
           Nic Bellinger.
      
         - Properly propagate the SYNC flag on requests. From Shaohua"
      
      * 'for-linus' of git://git.kernel.dk/linux-block:
        blk-mq: add REQ_SYNC early
        rt,blk,mq: Make blk_mq_cpu_notify_lock a raw spinlock
        bio-integrity: Drop bio_integrity_verify BUG_ON in post bip->bip_iter world
        blk-mq: support partial I/O completions
        blk-mq: merge blk_mq_insert_request and blk_mq_run_request
        blk-mq: remove blk_mq_alloc_rq
        mtip32xx: Reduce the number of unaligned writes to 2
      2a75184d
    • Linus Torvalds's avatar
      Merge tag 'pinctrl-v3.14-3' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-pinctrl · 8ab47d3e
      Linus Torvalds authored
      Pull pin control fixes from Linus Walleij:
       "This is a set of pin control fixes I have collected over the last few
        days.  Some have rotated more than others in linux-next, but they were
        rebased on v3.14-rc5 due to sloppy commit messages.  I am quite
        convinced that they are all good fixes that only hit this or that
        individual driver and not the entire subsystem.
      
         - Fix chained interrupts, interrupt masking and register offset
           calculation for the sunxi driver
      
         - Make MSM a bool rather than a tristate to stop build problems to
           happen - chained interrupt controllers cannot currently be defined
           in modules
      
         - Fix a clock in the PFC driver
      
         - Fix a kernel panic in the sirf driver"
      
      * tag 'pinctrl-v3.14-3' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-pinctrl:
        pinctrl: sirf: fix kernel panic in gpio_lock_as_irq
        pinctrl: sh-pfc: r8a7791: SD1_CLK fix
        pinctrl: msm: make PINCTRL_MSM bool instead of tristate
        pinctrl: sunxi: Fix interrupt register offset calculation
        pinctrl: sunxi: Fix masking when setting irq type
        pinctrl: sunxi: use chained_irq_{enter, exit} for GIC compatibility
      8ab47d3e
    • Linus Torvalds's avatar
      Merge tag 'stable/for-linus-3.14-rc5-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/xen/tip · ee693507
      Linus Torvalds authored
      Pull Xen fix from Konrad Rzeszutek Wilk:
       "This has exactly one patch for Xen ARM.  It sets the dependency to
        compile the kernel with MMU enabled - otherwise - the guest won't work
        very well"
      
      * tag 'stable/for-linus-3.14-rc5-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/xen/tip:
        ARM: XEN depends on having a MMU
      ee693507
    • Linus Torvalds's avatar
      Merge tag 'for-linus' of git://linux-c6x.org/git/projects/linux-c6x-upstreaming · 31481401
      Linus Torvalds authored
      Pull c6x build fix from Mark Salter:
       "Build fix for c6x"
      
      * tag 'for-linus' of git://linux-c6x.org/git/projects/linux-c6x-upstreaming:
        c6x: fix build failure caused by cache.h
      31481401
    • Joe Thornber's avatar
      dm space map metadata: fix refcount decrement below 0 which caused corruption · cebc2de4
      Joe Thornber authored
      This has been a relatively long-standing issue that wasn't nailed down
      until Teng-Feng Yang's meticulous bug report to dm-devel on 3/7/2014,
      see: http://www.redhat.com/archives/dm-devel/2014-March/msg00021.html
      
      From that report:
        "When decreasing the reference count of a metadata block with its
        reference count equals 3, we will call dm_btree_remove() to remove
        this enrty from the B+tree which keeps the reference count info in
        metadata device.
      
        The B+tree will try to rebalance the entry of the child nodes in each
        node it traversed, and the rebalance process contains the following
        steps.
      
        (1) Finding the corresponding children in current node (shadow_current(s))
        (2) Shadow the children block (issue BOP_INC)
        (3) redistribute keys among children, and free children if necessary (issue BOP_DEC)
      
        Since the update of a metadata block's reference count could be
        recursive, we will stash these reference count update operations in
        smm->uncommitted and then process them in a FILO fashion.
      
        The problem is that step(3) could free the children which is created
        in step(2), so the BOP_DEC issued in step(3) will be carried out
        before the BOP_INC issued in step(2) since these BOPs will be
        processed in FILO fashion. Once the BOP_DEC from step(3) tries to
        decrease the reference count of newly shadow block, it will report
        failure for its reference equals 0 before decreasing. It looks like we
        can solve this issue by processing these BOPs in a FIFO fashion
        instead of FILO."
      
      Commit 5b564d80 ("dm space map: disallow decrementing a reference count
      below zero") changed the code to report an error for this temporary
      refcount decrement below zero.  So what was previously a harmless
      invalid refcount became a hard failure due to the new error path:
      
       device-mapper: space map common: unable to decrement a reference count below 0
       device-mapper: thin: 253:6: dm_thin_insert_block() failed: error = -22
       device-mapper: thin: 253:6: switching pool to read-only mode
      
      This bug is in dm persistent-data code that is common to the DM thin and
      cache targets.  So any users of those targets should apply this fix.
      
      Fix this by applying recursive space map operations in FIFO order rather
      than FILO.
      
      Resolves: https://bugzilla.kernel.org/show_bug.cgi?id=68801Reported-by: default avatarApollon Oikonomopoulos <apoikos@debian.org>
      Reported-by: edwillam1007@gmail.com
      Reported-by: default avatarTeng-Feng Yang <shinrairis@gmail.com>
      Signed-off-by: default avatarJoe Thornber <ejt@redhat.com>
      Signed-off-by: default avatarMike Snitzer <snitzer@redhat.com>
      Cc: stable@vger.kernel.org # 3.13+
      cebc2de4
    • Shaohua Li's avatar
      blk-mq: add REQ_SYNC early · 739c3eea
      Shaohua Li authored
      Add REQ_SYNC early, so rq_dispatched[] in blk_mq_rq_ctx_init
      is set correctly.
      
      Signed-off-by: Shaohua Li<shli@fusionio.com>
      Signed-off-by: default avatarJens Axboe <axboe@fb.com>
      739c3eea
  3. 06 Mar, 2014 12 commits
  4. 05 Mar, 2014 14 commits
    • Joe Thornber's avatar
      dm thin: fix noflush suspend IO queueing · 738211f7
      Joe Thornber authored
      i) by the time DM core calls the postsuspend hook the dm_noflush flag
      has been cleared.  So the old thin_postsuspend did nothing.  We need to
      use the presuspend hook instead.
      
      ii) There was a race between bios leaving DM core and arriving in the
      deferred queue.
      
      thin_presuspend now sets a 'requeue' flag causing all bios destined for
      that thin to be requeued back to DM core.  Then it requeues all held IO,
      and all IO on the deferred queue (destined for that thin).  Finally
      postsuspend clears the 'requeue' flag.
      Signed-off-by: default avatarJoe Thornber <ejt@redhat.com>
      Signed-off-by: default avatarMike Snitzer <snitzer@redhat.com>
      738211f7
    • Joe Thornber's avatar
      dm thin: fix deadlock in __requeue_bio_list · 18adc577
      Joe Thornber authored
      The spin lock in requeue_io() was held for too long, allowing deadlock.
      Don't worry, due to other issues addressed in the following "dm thin:
      fix noflush suspend IO queueing" commit, this code was never called.
      
      Fix this by taking the spin lock for a much shorter period of time.
      Signed-off-by: default avatarJoe Thornber <ejt@redhat.com>
      Signed-off-by: default avatarMike Snitzer <snitzer@redhat.com>
      18adc577
    • Joe Thornber's avatar
      dm thin: fix out of data space handling · 3e1a0699
      Joe Thornber authored
      Ideally a thin pool would never run out of data space; the low water
      mark would trigger userland to extend the pool before we completely run
      out of space.  However, many small random IOs to unprovisioned space can
      consume data space at an alarming rate.  Adjust your low water mark if
      you're frequently seeing "out-of-data-space" mode.
      
      Before this fix, if data space ran out the pool would be put in
      PM_READ_ONLY mode which also aborted the pool's current metadata
      transaction (data loss for any changes in the transaction).  This had a
      side-effect of needlessly compromising data consistency.  And retry of
      queued unserviceable bios, once the data pool was resized, could
      initiate changes to potentially inconsistent pool metadata.
      
      Now when the pool's data space is exhausted transition to a new pool
      mode (PM_OUT_OF_DATA_SPACE) that allows metadata to be changed but data
      may not be allocated.  This allows users to remove thin volumes or
      discard data to recover data space.
      
      The pool is no longer put in PM_READ_ONLY mode in response to the pool
      running out of data space.  And PM_READ_ONLY mode no longer aborts the
      pool's current metadata transaction.  Also, set_pool_mode() will now
      notify userspace when the pool mode is changed.
      Signed-off-by: default avatarJoe Thornber <ejt@redhat.com>
      Signed-off-by: default avatarMike Snitzer <snitzer@redhat.com>
      3e1a0699
    • Mike Snitzer's avatar
      dm thin: ensure user takes action to validate data and metadata consistency · 07f2b6e0
      Mike Snitzer authored
      If a thin metadata operation fails the current transaction will abort,
      whereby causing potential for IO layers up the stack (e.g. filesystems)
      to have data loss.  As such, set THIN_METADATA_NEEDS_CHECK_FLAG in the
      thin metadata's superblock which:
      1) requires the user verify the thin metadata is consistent (e.g. use
         thin_check, etc)
      2) suggests the user verify the thin data is consistent (e.g. use fsck)
      
      The only way to clear the superblock's THIN_METADATA_NEEDS_CHECK_FLAG is
      to run thin_repair.
      
      On metadata operation failure: abort current metadata transaction, set
      pool in read-only mode, and now set the needs_check flag.
      
      As part of this change, constraints are introduced or relaxed:
      * don't allow a pool to transition to write mode if needs_check is set
      * don't allow data or metadata space to be resized if needs_check is set
      * if a thin pool's metadata space is exhausted: the kernel will now
        force the user to take the pool offline for repair before the kernel
        will allow the metadata space to be extended.
      
      Also, update Documentation to include information about when the thin
      provisioning target commits metadata, how it handles metadata failures
      and running out of space.
      Signed-off-by: default avatarMike Snitzer <snitzer@redhat.com>
      Signed-off-by: default avatarJoe Thornber <ejt@redhat.com>
      07f2b6e0
    • Takashi Iwai's avatar
      ALSA: usb-audio: Add quirk for Logitech Webcam C500 · e805ca8b
      Takashi Iwai authored
      Logitech C500 (046d:0807) needs the same workaround like other
      Logitech Webcams.
      
      Cc: <stable@vger.kernel.org>
      Signed-off-by: default avatarTakashi Iwai <tiwai@suse.de>
      e805ca8b
    • Takashi Iwai's avatar
      ALSA: hda - Use analog beep for Thinkpads with AD1984 codecs · f3e9b59c
      Takashi Iwai authored
      For making the driver behavior compatible with the earlier kernels,
      use the analog beep in the loopback path instead of the digital beep.
      
      Cc: <stable@vger.kernel.org>
      Signed-off-by: default avatarTakashi Iwai <tiwai@suse.de>
      f3e9b59c
    • Takashi Iwai's avatar
      ALSA: hda - Add missing loopback merge path for AD1884/1984 codecs · c5eda4c1
      Takashi Iwai authored
      The mixer widget (NID 0x20) of AD1884 and AD1984 codecs isn't
      connected directly to the actual I/O paths but only via another mixer
      widget (NID 0x21).  We need a similar fix as we did for AD1882.
      
      Cc: <stable@vger.kernel.org>
      Signed-off-by: default avatarTakashi Iwai <tiwai@suse.de>
      c5eda4c1
    • Barry Song's avatar
      pinctrl: sirf: fix kernel panic in gpio_lock_as_irq · e291fd20
      Barry Song authored
      commit 655dada6 causes kernel panic, this patch fixes it.
      
          [    1.197816] [ffffffee] *pgd=0d7fd821, *pte=00000000, *ppte=00000000
          [    1.204070] Internal error: Oops: 17 [#1] PREEMPT SMP ARM
          [    1.209447] Modules linked in:
          [    1.212490] CPU: 0 PID: 1 Comm: swapper/0 Not tainted 3.14.0-rc1 #3
          [    1.218737] task: cd03c000 ti: cd040000 task.ti: cd040000
          [    1.224127] PC is at gpiod_lock_as_irq+0xc/0x64
          [    1.228634] LR is at sirfsoc_gpio_irq_startup+0x18/0x44
          [    1.233842] pc : [<c01d3990>]    lr : [<c01d1c38>]    psr: a0000193
          [    1.233842] sp : cd041d30  ip : 00000000  fp : 00000000
          [    1.245296] r10: 00000000  r9 : cd023db4  r8 : 60000113
          [    1.250505] r7 : 0000003e  r6 : cd023dd4  r5 : c06bfa54  r4 : cd023d80
          [    1.257014] r3 : 00000020  r2 : 00000000  r1 : ffffffea  r0 : ffffffea
          [    1.263526] Flags: NzCv  IRQs off  FIQs on  Mode SVC_32  ISA ARM  Segment kernel
          [    1.270903] Control: 10c53c7d  Table: 00004059  DAC: 00000015
          [    1.276631] Process swapper/0 (pid: 1, stack limit = 0xcd040240)
          [    1.282620] Stack: (0xcd041d30 to 0xcd042000)
          [    1.286963] 1d20:                                     cd023d80 c01d1c38 c01d1c20 cd023d80
          [    1.295124] 1d40: 00000001 c0068438 cd023d80 ccb6d880 cd023dd4 c0067044 0000718e c006719c
          [    1.286963] 1d20:                                     cd023d80 c01d1c38 c01d1c20 cd023d80
          [    1.295124] 1d40: 00000001 c0068438 cd023d80 ccb6d880 cd023dd4 c0067044 0000718e c006719c
          [    1.295124] 1d40: 00000001 c0068438 cd023d80 ccb6d880 cd023dd4 c0067044 0000718e c006719c
          [    1.303283] 1d60: 00000800 00000083 ccb6d880 cd023d80 c02b41d8 00000083 0000003e ccb7c410
          [    1.311442] 1d80: 00000000 c00671dc 00000083 0000003e c02b41d8 cd3dd5c0 0000003e ccb7c634
          [    1.319601] 1da0: cd040030 c00672a8 cd3dd5c0 ccb7c410 ccb6d340 ccb7c410 ccb6d340 cd3dd400
          [    1.327760] 1dc0: cd3dd410 c02b4434 ccb7c410 c01265a8 00000001 cd3dd410 c0687108 00000000
          [    1.335919] 1de0: c0687108 00000000 00000000 c0240170 c0240158 cd3dd410 c06c30d0 c023e8bc
          [    1.344079] 1e00: c023e9d4 00000000 cd3dd410 c023e9d4 c0682150 c023cf88 cd003e98 cd2d50c4
          [    1.352238] 1e20: cd3dd410 cd3dd444 c06822f0 c023e768 cd3dd418 cd3dd410 c06822f0 c023de14
          [    1.360397] 1e40: cd3dd418 00000000 cd3dd410 c023c398 cd041e78 cd041ea8 cd3dd400 cd3dd410
          [    1.368556] 1e60: 00000083 00000000 cd3dd400 cd3dd410 00000083 000000c8 c04e00c8 c023fee8
          [    1.376715] 1e80: 00000000 cd041ea8 cd3dd400 00000001 00000083 c024048c c0435ef8 c0434dec
          [    1.384874] 1ea0: c068da58 c04c6d04 c0682150 c0435ef8 ffffffff 00000000 00000000 c068da58
          [    1.393033] 1ec0: 00000020 00000000 00000000 00000000 c05dabb8 00000007 c068d640 c068d640
          [    1.401193] 1ee0: c04c247c c04c249c 00000000 c00088e8 cd004c00 c043bbb8 cd029180 c03812a0
          [    1.409352] 1f00: 00000000 00000000 60000113 c0673728 60000113 c0673728 00000000 00000000
          [    1.417511] 1f20: cd7fce01 c0390a54 00000065 c003a81c c049e8bc 00000007 cd7fce0e 00000007
          [    1.425670] 1f40: 00000000 c05dabb8 00000007 c068d640 c068d640 c04c050c c04e00c8 00000065
          [    1.433829] 1f60: c04e00c0 c04c0c54 00000007 00000007 c04c050c c037d8fc cd03c000 c004322c
          [    1.441988] 1f80: c0662b40 0000d640 c03737c0 00000000 00000000 00000000 00000000 00000000
          [    1.450147] 1fa0: 00000000 c03737cc 00000000 c000e478 00000000 00000000 00000000 00000000
          [    1.458307] 1fc0: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
          [    1.466467] 1fe0: 00000000 00000000 00000000 00000000 00000013 00000000 0002d481 05014092
          [    1.474640] [<c01d3990>] (gpiod_lock_as_irq) from [<c01d1c38>] (sirfsoc_gpio_irq_startup+0x18/0x44)
          [    1.483661] [<c01d1c38>] (sirfsoc_gpio_irq_startup) from [<c0068438>] (irq_startup+0x34/0x6c)
          [    1.492163] [<c0068438>] (irq_startup) from [<c0067044>] (__setup_irq+0x450/0x4b8)
          [    1.499714] [<c0067044>] (__setup_irq) from [<c00671dc>] (request_threaded_irq+0xa8/0x128)
          [    1.507960] [<c00671dc>] (request_threaded_irq) from [<c00672a8>] (request_any_context_irq+0x4c/0x7c)
          [    1.517164] [<c00672a8>] (request_any_context_irq) from [<c02b4434>] (gpio_extcon_probe+0x144/0x1d4)
          [    1.526279] [<c02b4434>] (gpio_extcon_probe) from [<c0240170>] (platform_drv_probe+0x18/0x48)
          [    1.534783] [<c0240170>] (platform_drv_probe) from [<c023e8bc>] (driver_probe_device+0x120/0x238)
          [    1.543641] [<c023e8bc>] (driver_probe_device) from [<c023cf88>] (bus_for_each_drv+0x58/0x8c)
          [    1.552143] [<c023cf88>] (bus_for_each_drv) from [<c023e768>] (device_attach+0x74/0x88)
          [    1.560126] [<c023e768>] (device_attach) from [<c023de14>] (bus_probe_device+0x84/0xa8)
          [    1.568113] [<c023de14>] (bus_probe_device) from [<c023c398>] (device_add+0x440/0x520)
          [    1.576012] [<c023c398>] (device_add) from [<c023fee8>] (platform_device_add+0xb4/0x214)
          [    1.584084] [<c023fee8>] (platform_device_add) from [<c024048c>] (platform_device_register_full+0xb8/0xdc)
          [    1.593719] [<c024048c>] (platform_device_register_full) from [<c04c6d04>] (sirfsoc_init_late+0xec/0xf4)
          [    1.603185] [<c04c6d04>] (sirfsoc_init_late) from [<c04c249c>] (init_machine_late+0x20/0x28)
          [    1.611603] [<c04c249c>] (init_machine_late) from [<c00088e8>] (do_one_initcall+0xf8/0x144)
          [    1.619934] [<c00088e8>] (do_one_initcall) from [<c04c0c54>] (kernel_init_freeable+0x13c/0x1dc)
          [    1.628620] [<c04c0c54>] (kernel_init_freeable) from [<c03737cc>] (kernel_init+0xc/0x118)
      Signed-off-by: default avatarBarry Song <Baohua.Song@csr.com>
      Signed-off-by: default avatarLinus Walleij <linus.walleij@linaro.org>
      e291fd20
    • Dave Airlie's avatar
      Merge tag 'drm-intel-fixes-2014-03-04' of ssh://git.freedesktop.org/git/drm-intel into drm-fixes · 6d7c2a67
      Dave Airlie authored
      Small fixes all around, mostly stable material. Please pull.
      
      * tag 'drm-intel-fixes-2014-03-04' of ssh://git.freedesktop.org/git/drm-intel:
        drm/i915: Reject >165MHz modes w/ DVI monitors
        drm/i915: fix assert_cursor on BDW
        drm/i915: vlv: reserve GT power context early
        drm/i915: fix pch pci device enumeration
        drm/i915: Resolving the memory region conflict for Stolen area
        drm/i915: use backlight legacy combination mode also for i915gm/i945gm
      6d7c2a67
    • Magnus Damm's avatar
      pinctrl: sh-pfc: r8a7791: SD1_CLK fix · b5973fcd
      Magnus Damm authored
      Fix the SD1_CLK handling for r8a7791. Without this patch
      it is impossible to request all pins needed for SDHI1 on
      the Koelsch board.
      Signed-off-by: default avatarMagnus Damm <damm@opensource.se>
      Acked-by: default avatarLaurent Pinchart <laurent.pinchart@ideasonboard.com>
      Signed-off-by: default avatarLinus Walleij <linus.walleij@linaro.org>
      b5973fcd
    • Josh Cartwright's avatar
      pinctrl: msm: make PINCTRL_MSM bool instead of tristate · 5ba34160
      Josh Cartwright authored
      Modular builds of pinctrl-msm break due to handle_bad_irq being
      unexported for module use.  For now, make PINCTRL_MSM 'bool'.
      Signed-off-by: default avatarJosh Cartwright <joshc@codeaurora.org>
      Reviewed-by: default avatarBjorn Andersson <bjorn.andersson@sonymobile.com>
      Signed-off-by: default avatarLinus Walleij <linus.walleij@linaro.org>
      5ba34160
    • Hans de Goede's avatar
      pinctrl: sunxi: Fix interrupt register offset calculation · ef5aff05
      Hans de Goede authored
      This fixing setting the interrupt type for eints >= 8.
      Signed-off-by: default avatarHans de Goede <hdegoede@redhat.com>
      Acked-by: default avatarMaxime Ripard <maxime.ripard@free-electrons.com>
      Signed-off-by: default avatarLinus Walleij <linus.walleij@linaro.org>
      ef5aff05
    • Hans de Goede's avatar
    • Chen-Yu Tsai's avatar
      pinctrl: sunxi: use chained_irq_{enter, exit} for GIC compatibility · 905a5117
      Chen-Yu Tsai authored
      On tha Allwinner A20 SoC, the external interrupts on the pin controller
      device are connected to the GIC. Without chained_irq_{enter, exit},
      external GPIO interrupts, such as used by mmc core card detect, cause
      the system to hang.
      
      This issue was first encountered during my attempt to get out-of-band
      interrupts for WiFi on the Cubietruck working. With David's new series
      of sunci-mci using mmc slot-gpio for (GPIO interrupt based) card
      detection, removing the SD card also causes my Cubietruck to hang. This
      problem should extend to all Allwinner A20 based boards.
      
      With this fix, the system no longer hangs when I remove or insert the
      SD card. /proc/interrupts show that the interrupt has correctly fired.
      However the system still does not detect card removal/insertion. I
      believe this is another unrelated issue.
      
      Cc: stable@vger.kernel.org
      Signed-off-by: default avatarChen-Yu Tsai <wens@csie.org>
      Acked-by: default avatarMaxime Ripard <maxime.ripard@free-electrons.com>
      Signed-off-by: default avatarLinus Walleij <linus.walleij@linaro.org>
      905a5117
  5. 04 Mar, 2014 2 commits
    • Mark Salter's avatar
      c6x: fix build failure caused by cache.h · ae72758f
      Mark Salter authored
      A patch to linux/irqflags.h uncovered a problem with c6x asm/cache.h
      which causes a build failure:
      
      /arch/c6x/include/asm/cache.h:63:20: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘c6x_cache_init’
       extern void __init c6x_cache_init(void);
      
      The asm/cache.h was relying on linux/irqflags.h to pull in linux/init.h
      but the recent patch changed that. The c6x header should have included
      linux/init.h all along.
      Signed-off-by: default avatarMark Salter <msalter@redhat.com>
      ae72758f
    • Linus Torvalds's avatar
      Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net · c3bebc71
      Linus Torvalds authored
      Pull networking fixes from David Miller:
      
       1) Fix memory leak in ieee80211_prep_connection(), sta_info leaked on
          error.  From Eytan Lifshitz.
      
       2) Unintentional switch case fallthrough in nft_reject_inet_eval(),
          from Patrick McHardy.
      
       3) Must check if payload lenth is a power of 2 in
          nft_payload_select_ops(), from Nikolay Aleksandrov.
      
       4) Fix mis-checksumming in xen-netfront driver, ip_hdr() is not in the
          correct place when we invoke skb_checksum_setup().  From Wei Liu.
      
       5) TUN driver should not advertise HW vlan offload features in
          vlan_features.  Fix from Fernando Luis Vazquez Cao.
      
       6) IPV6_VTI needs to select NET_IPV_TUNNEL to avoid build errors, fix
          from Steffen Klassert.
      
       7) Add missing locking in xfrm_migrade_state_find(), we must hold the
          per-namespace xfrm_state_lock while traversing the lists.  Fix from
          Steffen Klassert.
      
       8) Missing locking in ath9k driver, access to tid->sched must be done
          under ath_txq_lock().  Fix from Stanislaw Gruszka.
      
       9) Fix two bugs in TCP fastopen.  First respect the size argument given
          to tcp_sendmsg() in the fastopen path, and secondly prevent
          tcp_send_syn_data() from potentially using order-5 allocations.
          From Eric Dumazet.
      
      10) Fix handling of default neigh garbage collection params, from Jiri
          Pirko.
      
      11) Fix cwnd bloat and over-inflation of RTT when transmit segmentation
          is in use.  From Eric Dumazet.
      
      12) Missing initialization of Realtek r8169 driver's statistics
          seqlocks.  Fix from Kyle McMartin.
      
      13) Fix RTNL assertion failures in 802.3ad and AB ARP monitor of bonding
          driver, from Ding Tianhong.
      
      14) Bonding slave release race can cause divide by zero, fix from
          Nikolay Aleksandrov.
      
      15) Overzealous return from neigh_periodic_work() causes reachability
          time to not be computed.  Fix from Duain Jiong.
      
      16) Fix regression in ipv6_find_hdr(), it should not return -ENOENT when
          a specific target is specified and found.  From Hans Schillstrom.
      
      17) Fix VLAN tag stripping regression in BNA driver, from Ivan Vecera.
      
      18) Tail loss probe can calculate bogus RTTs due to missing packet
          marking on retransmit.  Fix from Yuchung Cheng.
      
      19) We cannot do skb_dst_drop() in iptunnel_pull_header() because
          multicast loopback detection in later code paths need access to
          skb_rtable().  Fix from Xin Long.
      
      20) The macvlan driver regresses in that it propagates lower device
          offload support disables into itself, causing severe slowdowns when
          running over a bridge.  Provide the software offloads always on
          macvlan devices to deal with this and the regression is gone.  From
          Vlad Yasevich.
      
      * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net: (103 commits)
        macvlan: Add support for 'always_on' offload features
        net: sctp: fix sctp_sf_do_5_1D_ce to verify if we/peer is AUTH capable
        ip_tunnel:multicast process cause panic due to skb->_skb_refdst NULL pointer
        net: cpsw: fix cpdma rx descriptor leak on down interface
        be2net: isolate TX workarounds not applicable to Skyhawk-R
        be2net: Fix skb double free in be_xmit_wrokarounds() failure path
        be2net: clear promiscuous bits in adapter->flags while disabling promiscuous mode
        be2net: Fix to reset transparent vlan tagging
        qlcnic: dcb: a couple off by one bugs
        tcp: fix bogus RTT on special retransmission
        hsr: off by one sanity check in hsr_register_frame_in()
        can: remove CAN FD compatibility for CAN 2.0 sockets
        can: flexcan: factor out soft reset into seperate funtion
        can: flexcan: flexcan_remove(): add missing netif_napi_del()
        can: flexcan: fix transition from and to freeze mode in chip_{,un}freeze
        can: flexcan: factor out transceiver {en,dis}able into seperate functions
        can: flexcan: fix transition from and to low power mode in chip_{en,dis}able
        can: flexcan: flexcan_open(): fix error path if flexcan_chip_start() fails
        can: flexcan: fix shutdown: first disable chip, then all interrupts
        USB AX88179/178A: Support D-Link DUB-1312
        ...
      c3bebc71