1. 23 2月, 2015 8 次提交
    • A
      usb: gadget: configfs: don't NUL-terminate (sub)compatible ids · a0456399
      Andrzej Pietrasiewicz 提交于
      The "Extended Compat ID OS Feature Descriptor Specification" does not
      require the (sub)compatible ids to be NUL-terminated, because they
      are placed in a fixed-size buffer and only unused parts of it should
      contain NULs. If the buffer is fully utilized, there is no place for NULs.
      
      Consequently, the code which uses desc->ext_compat_id never expects the
      data contained to be NUL terminated.
      
      If the compatible id is stored after sub-compatible id, and the compatible
      id is full length (8 bytes), the (useless) NUL terminator overwrites the
      first byte of the sub-compatible id.
      
      If the sub-compatible id is full length (8 bytes), the (useless) NUL
      terminator ends up out of the buffer. The situation can happen in the RNDIS
      function, where the buffer is a part of struct f_rndis_opts. The next
      member of struct f_rndis_opts is a mutex, so its first byte gets
      overwritten. The said byte is a part of a mutex'es member which contains
      the information on whether the muext is locked or not. This can lead to a
      deadlock, because, in a configfs-composed gadget when a function is linked
      into a configuration with config_usb_cfg_link(), usb_get_function()
      is called, which then calls rndis_alloc(), which tries locking the same
      mutex and (wrongly) finds it already locked.
      
      This patch eliminates NUL terminating of the (sub)compatible id.
      
      Cc: <stable@vger.kernel.org> # v3.16+
      Fixes: da424314: "usb: gadget: configfs: OS Extended Compatibility descriptors support"
      Reported-by: NDan Carpenter <dan.carpenter@oracle.com>
      Signed-off-by: NAndrzej Pietrasiewicz <andrzej.p@samsung.com>
      Signed-off-by: NFelipe Balbi <balbi@ti.com>
      a0456399
    • L
      usb: gadget: function: uvc_v4l2.c: fix sparse warnings · 1f754ef1
      Lad, Prabhakar 提交于
      this patch fixes following sparse warnings:
      
      uvc_v4l2.c:264:29: warning: symbol 'uvc_v4l2_ioctl_ops' was not declared. Should it be static?
      uvc_v4l2.c:355:29: warning: symbol 'uvc_v4l2_fops' was not declared. Should it be static?
      Acked-by: NLaurent Pinchart <laurent.pinchart@ideasonboard.com>
      Signed-off-by: NLad, Prabhakar <prabhakar.csengg@gmail.com>
      Signed-off-by: NFelipe Balbi <balbi@ti.com>
      1f754ef1
    • L
      usb: gadget: gadgetfs: fix sparse warnings · 2b87cd24
      Lad, Prabhakar 提交于
      this patch fixes following sparse warnings:
      
      g_ffs.c:136:3: warning: symbol 'gfs_configurations' was not declared. Should it be static?
      g_ffs.c:281:16: warning: Using plain integer as NULL pointer
      Signed-off-by: NLad, Prabhakar <prabhakar.csengg@gmail.com>
      Signed-off-by: NFelipe Balbi <balbi@ti.com>
      2b87cd24
    • L
      usb: gadget: function: uvc: fix sparse warnings · 70685711
      Lad, Prabhakar 提交于
      this patch fixes following sparse warnings:
      
      uvc_video.c:283:5: warning: symbol 'uvcg_video_pump' was not declared. Should it be static?
      uvc_video.c:342:5: warning: symbol 'uvcg_video_enable' was not declared. Should it be static?
      uvc_video.c:381:5: warning: symbol 'uvcg_video_init' was not declared. Should it be static?
      Signed-off-by: NLad, Prabhakar <prabhakar.csengg@gmail.com>
      Signed-off-by: NFelipe Balbi <balbi@ti.com>
      70685711
    • L
      usb: gadget: function: f_sourcesink: fix sparse warning · fcaddc5d
      Lad, Prabhakar 提交于
      this patch fixes following sparse warnings:
      
      f_sourcesink.c:347:34: warning: symbol 'ss_int_source_comp_desc' was not declared. Should it be static?
      f_sourcesink.c:365:34: warning: symbol 'ss_int_sink_comp_desc' was not declared. Should it be static?
      Signed-off-by: NLad, Prabhakar <prabhakar.csengg@gmail.com>
      Signed-off-by: NFelipe Balbi <balbi@ti.com>
      fcaddc5d
    • L
      usb: gadget: function: f_uac2: fix sparse warnings · ef16e7c8
      Lad, Prabhakar 提交于
      this patch fixes following sparse warnings:
      f_uac2.c:57:12: warning: symbol 'uac2_name' was not declared. Should it be static?
      f_uac2.c:637:36: warning: symbol 'in_clk_src_desc' was not declared. Should it be static?
      f_uac2.c:649:36: warning: symbol 'out_clk_src_desc' was not declared. Should it be static?
      f_uac2.c:661:39: warning: symbol 'usb_out_it_desc' was not declared. Should it be static?
      f_uac2.c:675:39: warning: symbol 'io_in_it_desc' was not declared. Should it be static?
      f_uac2.c:689:40: warning: symbol 'usb_in_ot_desc' was not declared. Should it be static?
      f_uac2.c:703:40: warning: symbol 'io_out_ot_desc' was not declared. Should it be static?
      f_uac2.c:716:34: warning: symbol 'ac_hdr_desc' was not declared. Should it be static?
      f_uac2.c:754:34: warning: symbol 'as_out_hdr_desc' was not declared. Should it be static?
      f_uac2.c:767:38: warning: symbol 'as_out_fmt1_desc' was not declared. Should it be static?
      f_uac2.c:775:32: warning: symbol 'fs_epout_desc' was not declared. Should it be static?
      f_uac2.c:785:32: warning: symbol 'hs_epout_desc' was not declared. Should it be static?
      f_uac2.c:831:34: warning: symbol 'as_in_hdr_desc' was not declared. Should it be static?
      f_uac2.c:844:38: warning: symbol 'as_in_fmt1_desc' was not declared. Should it be static?
      f_uac2.c:852:32: warning: symbol 'fs_epin_desc' was not declared. Should it be static?
      f_uac2.c:862:32: warning: symbol 'hs_epin_desc' was not declared. Should it be static?
      f_uac2.c:1566:21: warning: symbol 'afunc_alloc' was not declared. Should it be static?
      Signed-off-by: NLad, Prabhakar <prabhakar.csengg@gmail.com>
      Signed-off-by: NFelipe Balbi <balbi@ti.com>
      ef16e7c8
    • L
      usb: gadget: function: f_hid: fix sparse warning · 7a3cc461
      Lad, Prabhakar 提交于
      this patch fixes following sparse warning:
      f_hid.c:572:30: warning: symbol 'f_hidg_fops' was not declared. Should it be static?
      Signed-off-by: NLad, Prabhakar <prabhakar.csengg@gmail.com>
      Signed-off-by: NFelipe Balbi <balbi@ti.com>
      7a3cc461
    • F
      usb: gadget: function: phonet: balance usb_ep_disable calls · 9ec36f7f
      Felipe Balbi 提交于
      f_phonet's ->set_alt() method will call usb_ep_disable()
      potentially on an endpoint which is already disabled. That's
      something the gadget/function driver must guarantee that it's
      always balanced.
      
      In order to balance the calls, just make sure the endpoint
      was enabled before by means of checking the validity of
      driver_data.
      Reported-by: NPali Rohár <pali.rohar@gmail.com>
      Signed-off-by: NFelipe Balbi <balbi@ti.com>
      9ec36f7f
  2. 18 2月, 2015 1 次提交
  3. 12 2月, 2015 1 次提交
  4. 03 2月, 2015 1 次提交
  5. 30 1月, 2015 13 次提交
  6. 28 1月, 2015 2 次提交
  7. 27 1月, 2015 6 次提交
  8. 25 1月, 2015 1 次提交
  9. 20 1月, 2015 7 次提交