Skip to content
  1. May 10, 2013
  2. May 08, 2013
    • David Henningsson's avatar
      ALSA: Add comment for control TLV API · d24f5a9a
      David Henningsson authored
      
      
      Userspace is not meant to have to handle all strange dB ranges,
      so add a specification comment.
      
      Signed-off-by: default avatarDavid Henningsson <david.henningsson@canonical.com>
      Signed-off-by: default avatarTakashi Iwai <tiwai@suse.de>
      d24f5a9a
    • Takashi Iwai's avatar
      ALSA: hda - Apply pin-enablement workaround to all Haswell HDMI codecs · 17df3f55
      Takashi Iwai authored
      This is a revised patch based on Mengdong Lin's fix patch, which is a
      supplement to a previous patch [1611a9c9
      
      : ALSA: hda - Add fixup for
      Haswell to enable all pin and convertor widgets].
      
      Some Haswell BIOS will disable the 2nd and 3rd pin/covertor widgets
      when the HD-A controller changes state from D3 to D0.  So when the
      controller resumes after a system or runtime suspend, these widgets
      are disabled and programming these widgets to D0 will cause H/W error
      and codec will not respond.
      
      In addition, we found out that some BIOS disables the pins at S3
      although it shows up at boot.  This confuses the driver utterly, and
      the hardware falls into the fatal communication error like the above.
      
      So in this patch, we apply intel_haswell_enable_all_pins() not only as
      a fixup to a certain device (with 8086:2010) but to all Haswell
      machines.  The codec driver basically assumes that all pins are
      exposed, so it's anyway better to see them from the beginning.  Even
      if all pins and converters are shown by this call, there should be no
      regression in practice: the pin default configurations are still kept,
      thus the disabled pins are handled as disabled by the driver
      properly.
      
      Signed-off-by: default avatarMengdong Lin <mengdong.lin@intel.com>
      Signed-off-by: default avatarTakashi Iwai <tiwai@suse.de>
      17df3f55
  3. May 07, 2013
    • Wang YanQing's avatar
      ALSA: HDA: Fix Oops caused by dereference NULL pointer · 2195b063
      Wang YanQing authored
      
      
      The interrupt handler azx_interrupt will call azx_update_rirb,
      which may call snd_hda_queue_unsol_event, snd_hda_queue_unsol_event
      will dereference chip->bus pointer.
      
      The problem is we alloc chip->bus in azx_codec_create
      which will be called after we enable IRQ and enable unsolicited
      event in azx_probe.
      
      This will cause Oops due dereference NULL pointer. I meet it, good luck:)
      
      [Rearranged the NULL check before the tracepoint and added another
       NULL check of bus->workq -- tiwai]
      
      Signed-off-by: default avatarWang YanQing <udknight@gmail.com>
      Cc: <stable@vger.kernel.org>
      Signed-off-by: default avatarTakashi Iwai <tiwai@suse.de>
      2195b063
  4. May 06, 2013
  5. May 04, 2013
  6. May 03, 2013
  7. May 01, 2013
  8. Apr 30, 2013
  9. Apr 29, 2013
  10. Apr 28, 2013
  11. Apr 27, 2013
  12. Apr 26, 2013
    • Linus Torvalds's avatar
      Merge branch 'v4l_for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-media · d7d7271f
      Linus Torvalds authored
      Pull media fixes from Mauro Carvalho Chehab:
       "Two driver fixes.
      
        One avoids reading any file at a system with a cx25821 board
        (fortunately, this is not a common device).  The other one prevents
        reading after a buffer with ISDB-T devices based on mb86a20s."
      
      * 'v4l_for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-media:
        [media] cx25821: do not expose broken video output streams
        [media] mb86a20s: Fix estimate_rate setting
      d7d7271f
    • Linus Torvalds's avatar
      Merge branch 'fixes-3.9-late' of git://git.kernel.org/pub/scm/linux/kernel/git/deller/parisc-linux · 96edcf31
      Linus Torvalds authored
      Pull late parisc fixes from Helge Deller:
       "I know it's *very* late in the 3.9 release cycle, but since there
        aren't that many people testing the parisc linux kernel, a few (for
        our port) critical issues just showed up a few days back for the first
        time.
      
        What's in it?
         - add missing __ucmpdi2 symbol, which is required for btrfs on 32bit
           kernel.
         - change kunmap() macro to static inline function.  This fixes a
           debian/gcc-4.4 build error.
         - add locking when doing PTE updates.  This fixes random userspace
           crashes.
         - disable (optional) -mlong-calls compiler option for modules, else
           modules can't be loaded at runtime.
         - a smart patch by Will Deacon which fixes 64bit put_user() warnings
           on 32bit kernel."
      
      * 'fixes-3.9-late' of git://git.kernel.org/pub/scm/linux/kernel/git/deller/parisc-linux:
        parisc: use spin_lock_irqsave/spin_unlock_irqrestore for PTE updates
        parisc: disable -mlong-calls compiler option for kernel modules
        parisc: uaccess: fix compiler warnings caused by __put_user casting
        parisc: Change kunmap macro to static inline function
        parisc: Provide __ucmpdi2 to resolve undefined references in 32 bit builds.
      96edcf31
    • Matt Fleming's avatar
      efivars: only check for duplicates on the registered list · f464246d
      Matt Fleming authored
      
      
      variable_is_present() accesses '__efivars' directly, but when called via
      gsmi_init() Michel reports observing the following crash,
      
        BUG: unable to handle kernel NULL pointer dereference at (null)
        IP: variable_is_present+0x55/0x170
        Call Trace:
          register_efivars+0x106/0x370
          gsmi_init+0x2ad/0x3da
          do_one_initcall+0x3f/0x170
      
      The reason for the crash is that '__efivars' hasn't been initialised nor
      has it been registered with register_efivars() by the time the google
      EFI SMI driver runs.  The gsmi code uses its own struct efivars, and
      therefore, a different variable list.  Fix the above crash by passing
      the registered struct efivars to variable_is_present(), so that we
      traverse the correct list.
      
      Reported-by: default avatarMichel Lespinasse <walken@google.com>
      Tested-by: default avatarMichel Lespinasse <walken@google.com>
      Cc: Mike Waychison <mikew@google.com>
      Cc: Matthew Garrett <matthew.garrett@nebula.com>
      Cc: Seiji Aguchi <seiji.aguchi@hds.com>
      Signed-off-by: default avatarMatt Fleming <matt.fleming@intel.com>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      f464246d
    • Jiri Slaby's avatar
      TTY: fix atime/mtime regression · 37b7f3c7
      Jiri Slaby authored
      In commit b0de59b5
      
       ("TTY: do not update atime/mtime on read/write")
      we removed timestamps from tty inodes to fix a security issue and waited
      if something breaks.  Well, 'w', the utility to find out logged users
      and their inactivity time broke.  It shows that users are inactive since
      the time they logged in.
      
      To revert to the old behaviour while still preventing attackers to
      guess the password length, we update the timestamps in one-minute
      intervals by this patch.
      
      Signed-off-by: default avatarJiri Slaby <jslaby@suse.cz>
      Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      37b7f3c7
    • Zhao Hongjiang's avatar
      aio: fix possible invalid memory access when DEBUG is enabled · 91d80a84
      Zhao Hongjiang authored
      
      
      dprintk() shouldn't access @ring after it's unmapped.
      
      Signed-off-by: default avatarZhao Hongjiang <zhaohongjiang@huawei.com>
      Cc: stable@vger.kernel.org
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      91d80a84
    • David Henningsson's avatar
      ALSA: usb - Avoid unnecessary sample rate changes on USB 2.0 clock sources · fa92dd77
      David Henningsson authored
      
      
      The Scarlett 2i2 seems to take almost 500 ms to set the sample rate,
      even if the clock is currently set to that value. This patch speeds
      up prepare of the device, by avoiding setting the clock to something
      it already is.
      
      Signed-off-by: default avatarDavid Henningsson <david.henningsson@canonical.com>
      Signed-off-by: default avatarTakashi Iwai <tiwai@suse.de>
      fa92dd77
    • Arnd Bergmann's avatar
      sound: oss/dmabuf: use dma_map_single · 4b417cf0
      Arnd Bergmann authored
      
      
      The virt_to_bus/bus_to_virt functions have been deprecated
      for as long as I can remember, and they are used in very
      few remaining instances, usually in obscure ISA device
      drivers. The OSS sound drivers are the only ones that are
      still used on the ARM architecture, and only on some of
      the earliest StrongARM machines.
      
      The problem for converting the OSS subsystem to use
      dma_map_single instead is that the caller of virt_to_bus
      does not have a device pointer, since the subsystem has
      never been ported to use the common device infrastructure.
      
      Signed-off-by: default avatarArnd Bergmann <arnd@arndb.de>
      Signed-off-by: default avatarTakashi Iwai <tiwai@suse.de>
      4b417cf0
    • Arnd Bergmann's avatar
      ALSA: ali5451: use mdelay instead of large udelay constants · 76039358
      Arnd Bergmann authored
      
      
      ARM cannot handle udelay for more than 2 miliseconds, so we
      should use mdelay instead for those.
      
      Signed-off-by: default avatarArnd Bergmann <arnd@arndb.de>
      Signed-off-by: default avatarTakashi Iwai <tiwai@suse.de>
      76039358
    • H. Peter Anvin's avatar
      Merge tag 'efi-urgent' into x86/urgent · 697dfd88
      H. Peter Anvin authored
      
      
       * The EFI variable anti-bricking algorithm merged in -rc8 broke booting
         on some Apple machines because they implement EFI spec 1.10, which
         doesn't provide a QueryVariableInfo() runtime function and the logic
         used to check for the existence of that function was insufficient.
         Fix from Josh Boyer.
      
       * The anti-bricking algorithm also introduced a compiler warning on
         32-bit. Fix from Borislav Petkov.
      
      Signed-off-by: default avatarH. Peter Anvin <hpa@linux.intel.com>
      697dfd88
    • John David Anglin's avatar
      parisc: use spin_lock_irqsave/spin_unlock_irqrestore for PTE updates · bda079d3
      John David Anglin authored
      
      
      User applications running on SMP kernels have long suffered from instability
      and random segmentation faults.  This patch improves the situation although
      there is more work to be done.
      
      One of the problems is the various routines in pgtable.h that update page table
      entries use different locking mechanisms, or no lock at all (set_pte_at).  This
      change modifies the routines to all use the same lock pa_dbit_lock.  This lock
      is used for dirty bit updates in the interruption code. The patch also purges
      the TLB entries associated with the PTE to ensure that inconsistent values are
      not used after the page table entry is updated.  The UP and SMP code are now
      identical.
      
      The change also includes a minor update to the purge_tlb_entries function in
      cache.c to improve its efficiency.
      
      Signed-off-by: default avatarJohn David Anglin <dave.anglin@bell.net>
      Cc: Helge Deller <deller@gmx.de>
      Signed-off-by: default avatarHelge Deller <deller@gmx.de>
      bda079d3
    • Helge Deller's avatar
      parisc: disable -mlong-calls compiler option for kernel modules · cf71130d
      Helge Deller authored
      CONFIG_MLONGCALLS was introduced in commit
      ec758f98
      
       to overcome linker issues when linking
      huge linux kernels, e.g. with many modules linked in.
      
      But in the kernel module loader there is no support yet for the new relocation
      types, which is why modules built with -mlong-calls can't be loaded.
      Furthermore, for modules long calls are not really necessary, since we already
      use stub sections which resolve long distance calls.
      
      So, let's just disable this compiler option when compiling kernel modules.
      
      Signed-off-by: default avatarHelge Deller <deller@gmx.de>
      cf71130d
    • Will Deacon's avatar
      parisc: uaccess: fix compiler warnings caused by __put_user casting · 0f28b628
      Will Deacon authored
      
      
      When targetting 32-bit processors, __put_user emits a pair of stw
      instructions for the 8-byte case. If the type of __val is a pointer, the
      marshalling code casts it to the wider integer type of u64, resulting
      in the following compiler warnings:
      
        kernel/signal.c: In function 'copy_siginfo_to_user':
        kernel/signal.c:2752:11: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast]
        kernel/signal.c:2752:11: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast]
        [...]
      
      This patch fixes the warnings by removing the marshalling code and using
      the correct output modifiers in the __put_{user,kernel}_asm64 macros
      so that GCC will allocate the right registers without the need to
      extract the two words explicitly.
      
      Cc: Helge Deller <deller@gmx.de>
      Signed-off-by: default avatarWill Deacon <will.deacon@arm.com>
      Signed-off-by: default avatarHelge Deller <deller@gmx.de>
      0f28b628