1. 26 Jan, 2015 1 commit
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of git://git.kernel.dk/linux-block · 8e908e99
      Linus Torvalds authored
      Pull two block layer fixes from Jens Axboe:
       "Two small patches that should make it into 3.19:
      
         - a fixup from me for NVMe, making the cq_vector a signed variable.
           Otherwise our -1 comparison fails, and commit 2b25d981 doesn't
           do what it was supposed to.
      
         - a fixup for the hotplug handling for blk-mq from Ming Lei, using
           the proper kobject referencing to ensure we release resources at
           the right time"
      
      * 'for-linus' of git://git.kernel.dk/linux-block:
        blk-mq: fix hctx/ctx kobject use-after-free
        NVMe: cq_vector should be signed
      8e908e99
  2. 24 Jan, 2015 10 commits
  3. 23 Jan, 2015 12 commits
  4. 22 Jan, 2015 12 commits
  5. 21 Jan, 2015 5 commits
    • Sakari Ailus's avatar
      [media] omap3isp: Correctly set QUERYCAP capabilities · 2c0108e1
      Sakari Ailus authored
      
      
      device_caps in struct v4l2_capability were inadequately set in
      VIDIOC_QUERYCAP. Fix this. Without this a WARN_ON in the v4l2 core
      is triggered. This WARN_ON was added for kernel 3.19 exactly to
      detect these situations.
      Signed-off-by: default avatarSakari Ailus <sakari.ailus@iki.fi>
      Acked-by: Laurent Pinchart's avatarLaurent Pinchart <laurent.pinchart@ideasonboard.com>
      Signed-off-by: default avatarHans Verkuil <hans.verkuil@cisco.com>
      Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@osg.samsung.com>
      2c0108e1
    • Hans Verkuil's avatar
      [media] cx23885: fix free interrupt bug · 8d4d9329
      Hans Verkuil authored
      
      
      First free the interrupt, then disable the PCI device. The other way
      around will lead to this warning:
      
      Jan 19 11:42:02 telek kernel: [ 1440.161234] WARNING: CPU: 0 PID: 2191 at kernel/irq/manage.c:1311 __free_irq+0x97/0x1f0()
      Jan 19 11:42:02 telek kernel: [ 1440.161236] Trying to free already-free IRQ 0
      Jan 19 11:42:02 telek kernel: [ 1440.161237] Modules linked in: tda8290 tda10048 cx25840 cx23885(-) altera_ci tda18271 altera_stapl videobuf2_dvb tveeprom cx2341x videobuf2_dma_sg dvb_core rc_core videobuf2_memops videobuf2_core v4l2_common videodev media nouveau x86_pkg_temp_thermal cfbfillrect cfbimgblt cfbcopyarea ttm drm_kms_helper processor button isci
      Jan 19 11:42:02 telek kernel: [ 1440.161266] CPU: 0 PID: 2191 Comm: rmmod Tainted: G        W      3.19.0-rc1-telek #345
      Jan 19 11:42:02 telek kernel: [ 1440.161268] Hardware name: ASUSTeK COMPUTER INC. Z9PE-D8 WS/Z9PE-D8 WS, BIOS 5404 02/10/2014
      Jan 19 11:42:02 telek kernel: [ 1440.161270]  ffffffff81bf1fce ffff8808958b7cc8 ffffffff8194a97f 0000000000000000
      Jan 19 11:42:02 telek kernel: [ 1440.161274]  ffff8808958b7d18 ffff8808958b7d08 ffffffff810c56b0 0000000000000286
      Jan 19 11:42:02 telek kernel: [ 1440.161279]  0000000000000000 0000000000000000 ffff88089f808890 ffff88089f808800
      Jan 19 11:42:02 telek kernel: [ 1440.161284] Call Trace:
      Jan 19 11:42:02 telek kernel: [ 1440.161290]  [<ffffffff8194a97f>] dump_stack+0x4f/0x7b
      Jan 19 11:42:02 telek kernel: [ 1440.161295]  [<ffffffff810c56b0>] warn_slowpath_common+0x80/0xc0
      Jan 19 11:42:02 telek kernel: [ 1440.161299]  [<ffffffff810c5731>] warn_slowpath_fmt+0x41/0x50
      Jan 19 11:42:02 telek kernel: [ 1440.161303]  [<ffffffff81955d36>] ? _raw_spin_lock_irqsave+0x56/0x70
      Jan 19 11:42:02 telek kernel: [ 1440.161307]  [<ffffffff81114849>] ? __free_irq+0x49/0x1f0
      Jan 19 11:42:02 telek kernel: [ 1440.161311]  [<ffffffff81114897>] __free_irq+0x97/0x1f0
      Jan 19 11:42:02 telek kernel: [ 1440.161316]  [<ffffffff81114a88>] free_irq+0x48/0xd0
      Jan 19 11:42:02 telek kernel: [ 1440.161323]  [<ffffffffa00e6deb>] cx23885_finidev+0x4b/0x90 [cx23885]
      Jan 19 11:42:02 telek kernel: [ 1440.161329]  [<ffffffff814529fa>] pci_device_remove+0x3a/0xc0
      Jan 19 11:42:02 telek kernel: [ 1440.161334]  [<ffffffff8153b4ea>] __device_release_driver+0x7a/0xf0
      Jan 19 11:42:02 telek kernel: [ 1440.161338]  [<ffffffff8153bc98>] driver_detach+0xc8/0xd0
      Jan 19 11:42:02 telek kernel: [ 1440.161341]  [<ffffffff8153b1de>] bus_remove_driver+0x4e/0xb0
      Jan 19 11:42:02 telek kernel: [ 1440.161345]  [<ffffffff8153c2eb>] driver_unregister+0x2b/0x60
      Jan 19 11:42:02 telek kernel: [ 1440.161349]  [<ffffffff814525c5>] pci_unregister_driver+0x25/0x70
      Jan 19 11:42:02 telek kernel: [ 1440.161355]  [<ffffffffa00f6ddc>] cx23885_fini+0x10/0x12 [cx23885]
      Jan 19 11:42:02 telek kernel: [ 1440.161360]  [<ffffffff81139a98>] SyS_delete_module+0x1a8/0x1f0
      Jan 19 11:42:02 telek kernel: [ 1440.161364]  [<ffffffff819561a9>] system_call_fastpath+0x12/0x17
      Jan 19 11:42:02 telek kernel: [ 1440.161367] ---[ end trace a9c07cb5f3357020 ]---
      Signed-off-by: default avatarHans Verkuil <hans.verkuil@cisco.com>
      Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@osg.samsung.com>
      8d4d9329
    • Hans Verkuil's avatar
      [media] pvrusb2: fix missing device_caps in querycap · 42639f6d
      Hans Verkuil authored
      
      
      The VIDIOC_QUERYCAP function should set device_caps, but this was missing.
      In addition, it set the version field as well, but that should be done by
      the core, not by the driver.
      
      If a driver doesn't set device_caps the v4l2 core will issue a WARN_ON, so
      it's important that this is set correctly.
      Signed-off-by: default avatarHans Verkuil <hans.verkuil@cisco.com>
      Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@osg.samsung.com>
      42639f6d
    • Hans Verkuil's avatar
      [media] vb2: fix vb2_thread_stop race conditions · 6cf11ee6
      Hans Verkuil authored
      
      
      The locking scheme inside the vb2 thread is unsafe when stopping the
      thread. In particular kthread_stop was called *after* internal data
      structures were cleaned up instead of doing that before. In addition,
      internal vb2 functions were called after threadio->stop was set to
      true and vb2_internal_streamoff was called. This is also not allowed.
      
      All this led to a variety of race conditions and kernel warnings and/or
      oopses.
      
      Fixed by moving the kthread_stop call up before the cleanup takes
      place, and by checking threadio->stop before calling internal vb2
      queuing operations.
      Signed-off-by: default avatarHans Verkuil <hans.verkuil@cisco.com>
      Cc: <stable@vger.kernel.org>      # for v3.16 and up
      Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@osg.samsung.com>
      6cf11ee6
    • Nobuhiro Iwamatsu's avatar
      [media] rcar_vin: Update device_caps and capabilities in querycap · 42d74e4f
      Nobuhiro Iwamatsu authored
      
      
      The V4L2 API requires both .capabilities and .device_caps fields of
      struct v4l2_capability to be set. Otherwise the compliance checker
      complains and since commit "v4l2-ioctl: WARN_ON if querycap didn't fill
      device_caps" a compile-time warning is issued. Fix this non-compliance
      in the rcar_vin driver.
      Signed-off-by: default avatarNobuhiro Iwamatsu <nobuhiro.iwamatsu.yj@renesas.com>
      Signed-off-by: Guennadi Liakhovetski's avatarGuennadi Liakhovetski <g.liakhovetski@gmx.de>
      Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@osg.samsung.com>
      42d74e4f