1. 20 7月, 2012 1 次提交
    • A
      HID: usbhid: fix use-after-free bug · 668160e5
      Alan Stern 提交于
      This patch (as1592) fixes an obscure problem in the usbhid driver.
      Under some circumstances, a control or interrupt-OUT URB can be
      submitted twice.  This will happen if the first submission fails; the
      queue pointers aren't updated, so the next time the queue is restarted
      the same URB will be submitted again.
      
      The problem is that raw_report gets deallocated during the first
      submission.  The second submission will then dereference and try to
      free an already-freed region of memory.  The patch fixes the problem
      by setting raw_report to NULL when it is deallocated and checking for
      NULL before dereferencing it.
      Signed-off-by: NAlan Stern <stern@rowland.harvard.edu>
      CC: Oliver Neukum <oliver@neukum.org>
      Signed-off-by: NJiri Kosina <jkosina@suse.cz>
      668160e5
  2. 19 7月, 2012 4 次提交
    • E
      cx25821: Remove bad strcpy to read-only char* · 380e99fc
      Ezequiel Garcia 提交于
      The strcpy was being used to set the name of the board.  Since the
      destination char* was read-only and the name is set statically at
      compile time; this was both wrong and redundant.
      
      The type of char* is changed to const char* to prevent future errors.
      Reported-by: NRadek Masin <radek@masin.eu>
      Signed-off-by: NEzequiel Garcia <elezegarcia@gmail.com>
      [ Taking directly due to vacations   - Linus ]
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      380e99fc
    • B
    • L
      Make wait_for_device_probe() also do scsi_complete_async_scans() · eea03c20
      Linus Torvalds 提交于
      Commit a7a20d10 ("sd: limit the scope of the async probe domain")
      make the SCSI device probing run device discovery in it's own async
      domain.
      
      However, as a result, the partition detection was no longer synchronized
      by async_synchronize_full() (which, despite the name, only synchronizes
      the global async space, not all of them).  Which in turn meant that
      "wait_for_device_probe()" would not wait for the SCSI partitions to be
      parsed.
      
      And "wait_for_device_probe()" was what the boot time init code relied on
      for mounting the root filesystem.
      
      Now, most people never noticed this, because not only is it
      timing-dependent, but modern distributions all use initrd.  So the root
      filesystem isn't actually on a disk at all.  And then before they
      actually mount the final disk filesystem, they will have loaded the
      scsi-wait-scan module, which not only does the expected
      wait_for_device_probe(), but also does scsi_complete_async_scans().
      
      [ Side note: scsi_complete_async_scans() had also been partially broken,
        but that was fixed in commit 43a8d39d ("fix async probe
        regression"), so that same commit a7a20d10 had actually broken
        setups even if you used scsi-wait-scan explicitly ]
      
      Solve this problem by just moving the scsi_complete_async_scans() call
      into wait_for_device_probe().  Everybody who wants to wait for device
      probing to finish really wants the SCSI probing to complete, so there's
      no reason not to do this.
      
      So now "wait_for_device_probe()" really does what the name implies, and
      properly waits for device probing to finish.  This also removes the now
      unnecessary extra calls to scsi_complete_async_scans().
      Reported-and-tested-by: NArtem S. Tashkinov <t.artem@mailcity.com>
      Cc: Dan Williams <dan.j.williams@gmail.com>
      Cc: Alan Stern <stern@rowland.harvard.edu>
      Cc: James Bottomley <jbottomley@parallels.com>
      Cc: Borislav Petkov <bp@amd64.org>
      Cc: linux-scsi <linux-scsi@vger.kernel.org>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      eea03c20
    • H
      v4l2-dev: forgot to add VIDIOC_DV_TIMINGS_CAP. · c1e32096
      Hans Verkuil 提交于
      The VIDIOC_DV_TIMINGS_CAP ioctl check wasn't added to determine_valid_ioctls().
      This caused this ioctl to always return -ENOTTY.
      
      The cause for this was that for 3.5 two patch series were merged, one
      changing V4L2 core ioctl handling and one adding new functionality, and
      some of the new functionality wasn't handled by the new V4L2 core code.
      Signed-off-by: NHans Verkuil <hans.verkuil@cisco.com>
      [ Taking it directly due to vacations  - Linus ]
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      c1e32096
  3. 18 7月, 2012 6 次提交
  4. 17 7月, 2012 8 次提交
  5. 15 7月, 2012 4 次提交
  6. 14 7月, 2012 3 次提交
  7. 13 7月, 2012 3 次提交
  8. 12 7月, 2012 7 次提交
  9. 11 7月, 2012 4 次提交