1. 22 Mar, 2013 6 commits
    • Linus Torvalds's avatar
      Merge tag 'usb-3.9-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb · 8f46c507
      Linus Torvalds authored
      Pull USB fixes from Greg Kroah-Hartman:
       "Here are a number of USB fixes that resolve issues that have been
        reported against 3.9-rc3."
      
      * tag 'usb-3.9-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb: (37 commits)
        USB: ti_usb_3410_5052: fix use-after-free in TIOCMIWAIT
        USB: ssu100: fix use-after-free in TIOCMIWAIT
        USB: spcp8x5: fix use-after-free in TIOCMIWAIT
        USB: quatech2: fix use-after-free in TIOCMIWAIT
        USB: pl2303: fix use-after-free in TIOCMIWAIT
        USB: oti6858: fix use-after-free in TIOCMIWAIT
        USB: mos7840: fix use-after-free in TIOCMIWAIT
        USB: mos7840: fix broken TIOCMIWAIT
        USB: mct_u232: fix use-after-free in TIOCMIWAIT
        USB: io_ti: fix use-after-free in TIOCMIWAIT
        USB: io_edgeport: fix use-after-free in TIOCMIWAIT
        USB: ftdi_sio: fix use-after-free in TIOCMIWAIT
        USB: f81232: fix use-after-free in TIOCMIWAIT
        USB: cypress_m8: fix use-after-free in TIOCMIWAIT
        USB: ch341: fix use-after-free in TIOCMIWAIT
        USB: ark3116: fix use-after-free in TIOCMIWAIT
        USB: serial: add modem-status-change wait queue
        USB: serial: fix interface refcounting
        USB: io_ti: fix get_icount for two port adapters
        USB: garmin_gps: fix memory leak on disconnect
        ...
      8f46c507
    • Linus Torvalds's avatar
      Merge tag 'sound-3.9' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound · 70dc52fa
      Linus Torvalds authored
      Pull sound fixes from Takashi Iwai:
       "Mostly HD-audio and USB-audio regression fixes:
         - Oops fix at unloading of snd-hda-codec-conexant module
         - A few trivial regression fixes for Cirrus and Conexant HD-audio
           codecs
         - Relax the USB-audio descriptor parse errors as non-fatal
         - Fix locking of HD-audio CA0132 DSP loader
         - Fix the generic HD-audio parser for VIA codecs"
      
      * tag 'sound-3.9' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound:
        ALSA: hda - Fix DAC assignment for independent HP
        ALSA: hda - Fix abuse of snd_hda_lock_devices() for DSP loader
        ALSA: hda - Fix typo in checking IEC958 emphasis bit
        ALSA: snd-usb: mixer: ignore -EINVAL in snd_usb_mixer_controls()
        ALSA: snd-usb: mixer: propagate errors up the call chain
        ALSA: usb: Parse UAC2 extension unit like for UAC1
        ALSA: hda - Fix yet missing GPIO/EAPD setup in cirrus driver
        ALSA: hda/cirrus - Fix the digital beep registration
        ALSA: hda - Fix missing beep detach in patch_conexant.c
        ALSA: documentation: Fix typo in Documentation/sound
      70dc52fa
    • Linus Torvalds's avatar
      Merge tag 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/bp/bp · 1e0695cb
      Linus Torvalds authored
      Pull EDAC fixes from Borislav Petkov:
       "A fix from Mauro to correct csrow size accounting in sysfs and a
        sparse fix from Stephen Hemminger."
      
      * tag 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/bp/bp:
        EDAC: Merge mci.mem_is_per_rank with mci.csbased
        amd64_edac: Correct DIMM sizes
        EDAC: Make sysfs functions static
      1e0695cb
    • Linus Torvalds's avatar
      vfs,proc: guarantee unique inodes in /proc · 51f0885e
      Linus Torvalds authored
      Dave Jones found another /proc issue with his Trinity tool: thanks to
      the namespace model, we can have multiple /proc dentries that point to
      the same inode, aliasing directories in /proc/<pid>/net/ for example.
      
      This ends up being a total disaster, because it acts like hardlinked
      directories, and causes locking problems.  We rely on the topological
      sort of the inodes pointed to by dentries, and if we have aliased
      directories, that odering becomes unreliable.
      
      In short: don't do this.  Multiple dentries with the same (directory)
      inode is just a bad idea, and the namespace code should never have
      exposed things this way.  But we're kind of stuck with it.
      
      This solves things by just always allocating a new inode during /proc
      dentry lookup, instead of using "iget_locked()" to look up existing
      inodes by superblock and number.  That actually simplies the code a bit,
      at the cost of potentially doing more inode [de]allocations.
      
      That said, the inode lookup wasn't free either (and did a lot of locking
      of inodes), so it is probably not that noticeable.  We could easily keep
      the old lookup model for non-directory entries, but rather than try to
      be excessively clever this just implements the minimal and simplest
      workaround for the problem.
      Reported-and-tested-by: default avatarDave Jones <davej@redhat.com>
      Analyzed-by: default avatarAl Viro <viro@zeniv.linux.org.uk>
      Cc: stable@vger.kernel.org
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      51f0885e
    • Linus Torvalds's avatar
      Merge branch 'for-next' of git://git.samba.org/sfrench/cifs-2.6 · 9217cbb8
      Linus Torvalds authored
      Pull CIFS fixes from Steve French:
       "Three small CIFS Fixes (the most important of the three fixes a recent
        problem authenticating to Windows 8 using cifs rather than SMB2)"
      
      * 'for-next' of git://git.samba.org/sfrench/cifs-2.6:
        cifs: ignore everything in SPNEGO blob after mechTypes
        cifs: delay super block destruction until all cifsFileInfo objects are gone
        cifs: map NT_STATUS_SHARING_VIOLATION to EBUSY instead of ETXTBSY
      9217cbb8
    • Linus Torvalds's avatar
      Merge tag 'ext4_for_linue' of git://git.kernel.org/pub/scm/linux/kernel/git/tytso/ext4 · d3c92626
      Linus Torvalds authored
      Pull ext4 fixes from Ted Ts'o:
       "Fix a number of regression and other bugs in ext4, most of which were
        relatively obscure cornercases or races that were found using
        regression tests."
      
      * tag 'ext4_for_linue' of git://git.kernel.org/pub/scm/linux/kernel/git/tytso/ext4: (21 commits)
        ext4: fix data=journal fast mount/umount hang
        ext4: fix ext4_evict_inode() racing against workqueue processing code
        ext4: fix memory leakage in mext_check_coverage
        ext4: use s_extent_max_zeroout_kb value as number of kb
        ext4: use atomic64_t for the per-flexbg free_clusters count
        jbd2: fix use after free in jbd2_journal_dirty_metadata()
        ext4: reserve metadata block for every delayed write
        ext4: update reserved space after the 'correction'
        ext4: do not use yield()
        ext4: remove unused variable in ext4_free_blocks()
        ext4: fix WARN_ON from ext4_releasepage()
        ext4: fix the wrong number of the allocated blocks in ext4_split_extent()
        ext4: update extent status tree after an extent is zeroed out
        ext4: fix wrong m_len value after unwritten extent conversion
        ext4: add self-testing infrastructure to do a sanity check
        ext4: avoid a potential overflow in ext4_es_can_be_merged()
        ext4: invalidate extent status tree during extent migration
        ext4: remove unnecessary wait for extent conversion in ext4_fallocate()
        ext4: add warning to ext4_convert_unwritten_extents_endio
        ext4: disable merging of uninitialized extents
        ...
      d3c92626
  2. 21 Mar, 2013 32 commits
  3. 20 Mar, 2013 2 commits
    • Alan Stern's avatar
      USB: EHCI: fix regression in QH unlinking · d714aaf6
      Alan Stern authored
      This patch (as1670) fixes a regression caused by commit
      6402c796 (USB: EHCI: work around
      silicon bug in Intel's EHCI controllers).  The workaround goes through
      two IAA cycles for each QH being unlinked.  During the first cycle,
      the QH is not added to the async_iaa list (because it isn't fully gone
      from the hardware yet), which means that list will be empty.
      
      Unfortunately, I forgot to update the IAA watchdog timer routine.  It
      thinks that an empty async_iaa list means the timer expiration was an
      error, which isn't true any more.  This problem didn't show up during
      initial testing because the controllers being tested all had working
      IAA interrupts.  But not all controllers do, and when the watchdog
      timer expires, the empty-list check prevents the second IAA cycle from
      starting.  As a result, URB unlinks never complete.  The check needs
      to be removed.
      
      Among the symptoms of the regression are processes stuck in D wait
      states and hangs during system shutdown.
      Signed-off-by: default avatarAlan Stern <stern@rowland.harvard.edu>
      Reported-and-tested-by: default avatarStephen Warren <swarren@wwwdotorg.org>
      Reported-and-tested-by: default avatarSven Joachim <svenjoac@gmx.de>
      Reported-by: default avatarAndreas Bombe <aeb@debian.org>
      Cc: stable <stable@vger.kernel.org>
      Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
      d714aaf6
    • Takashi Iwai's avatar
      ALSA: hda - Fix abuse of snd_hda_lock_devices() for DSP loader · eb49faa6
      Takashi Iwai authored
      The current DSP loader code abuses snd_hda_lock_devices() for ensuring
      the DSP loader not conflicting with the other normal operations.  But
      this trick obviously doesn't work for the PM resume since the streams
      are kept opened there where snd_hda_lock_devices() returns -EBUSY.
      That means we need another lock mechanism instead of abuse.
      
      This patch provides the new lock state to azx_dev.  Theoretically it's
      possible that the DSP loader conflicts with the stream that has been
      already assigned for another PCM.  If it's running, the DSP loader
      should simply fail.  If not -- it's the case for PM resume --, we
      should assign this stream temporarily to the DSP loader, and take it
      back to the PCM after finishing DSP loading.  If the PCM is operated
      during the DSP loading, it should get an error, too.
      Reported-and-tested-by: default avatarDylan Reid <dgreid@chromium.org>
      Signed-off-by: default avatarTakashi Iwai <tiwai@suse.de>
      eb49faa6