1. 24 12月, 2012 1 次提交
    • R
      Partly revert "[media] uvcvideo: Set error_idx properly for extended controls API failures" · 9c016d61
      Rafael J. Wysocki 提交于
      Commit f0ed2ce8 ("[media] uvcvideo: Set error_idx properly for
      extended controls API failures") causes user space to behave incorrectly
      on one of my test machines (there is no sound under KDE 4.9.4 using
      pulseaudio and there is a knotify4 process occupying one of the CPU
      cores 100% of the time).  Reverting that commit entirely fixes the
      problem for me.
      
      However, commit f0ed2ce8 appears to do more than it follows from its
      changelog, because the changelog only says about the changes related to
      ctrls->error_idx, while the commit additionally changes error codes
      returned by various functions in uvc_ctrl.c and uvc_v4l2.c.  It turns
      out that the changes of the returned error codes confuse the user spce,
      so it is sufficient to revert the part of commit f0ed2ce8 not
      mentioned in its changelog to fix the problem.
      
      [ 'ENOENT' is not a valid error return from an ioctl to begin with, and
        I don't understand how anybody ever even thought it would be.  - Linus ]
      Signed-off-by: NRafael J. Wysocki <rafael.j.wysocki@intel.com>
      Cc: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
      Cc: Mauro Carvalho Chehab <mchehab@redhat.com>
      Cc: Hans Verkuil <hans.verkuil@cisco.com>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      9c016d61
  2. 23 12月, 2012 1 次提交
  3. 22 12月, 2012 36 次提交
  4. 21 12月, 2012 2 次提交
    • R
      SGI-XP: handle non-fatal traps · 891348ca
      Robin Holt 提交于
      We found a user code which was raising a divide-by-zero trap.  That trap
      would lead to XPC connections between system-partitions being torn down
      due to the die_chain notifier callouts it received.
      
      This also revealed a different issue where multiple callers into
      xpc_die_deactivate() would all attempt to do the disconnect in parallel
      which would sometimes lock up but often overwhelm the console on very
      large machines as each would print at least one line of output at the
      end of the deactivate.
      
      I reviewed all the users of the die_chain notifier and changed the code
      to ignore the notifier callouts for reasons which will not actually lead
      to a system to continue on to call die().
      
      [akpm@linux-foundation.org: fix ia64]
      Signed-off-by: NRobin Holt <holt@sgi.com>
      Cc: Thomas Gleixner <tglx@linutronix.de>
      Cc: Ingo Molnar <mingo@elte.hu>
      Cc: <stable@vger.kernel.org>
      Signed-off-by: NAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      891348ca
    • A
      revert "rtc: recycle id when unloading a rtc driver" · 5abe257a
      Andrew Morton 提交于
      Revert commit 2830a6d2.
      
      We already perform the ida_simple_remove() in rtc_device_release(),
      which is an appropriate place.  Commit 2830a6d2 ("rtc: recycle id when
      unloading a rtc driver") caused the kernel to emit
      
      	ida_remove called for id=0 which is not allocated.
      
      warnings when rtc_device_release() tries to release an alread-released
      ID.
      
      Let's restore things to their previous state and then work out why
      Vincent's kernel wasn't calling rtc_device_release() - presumably a bug
      in a specific sub-driver.
      Reported-by: NLothar Waßmann <LW@KARO-electronics.de>
      Acked-by: NAlexander Holler <holler@ahsoftware.de>
      Cc: Vincent Palatin <vpalatin@chromium.org>
      Cc: <stable@vger.kernel.org>		[3.7.x]
      Signed-off-by: NAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      5abe257a