1. 24 9月, 2018 1 次提交
  2. 11 9月, 2018 3 次提交
    • O
      Revert "cdc-acm: implement put_char() and flush_chars()" · df3aa13c
      Oliver Neukum 提交于
      This reverts commit a81cf979.
      
      The patch causes a regression, which I cannot find the reason for.
      So let's revert for now, as a revert hurts only performance.
      
      Original report:
      I was trying to resolve the problem with Oliver but we don't get any conclusion
      for 5 months, so I am now sending this to mail list and cdc_acm authors.
      
      I am using simple request-response protocol to obtain the boiller parameters
      in constant intervals.
      
      A simple one transaction is:
      1. opening the /dev/ttyACM0
      2. sending the following 10-bytes request to the device:
         unsigned char req[] = {0x02, 0xfe, 0x01, 0x05, 0x08, 0x02, 0x01, 0x69, 0xab, 0x03};
      3. reading response (frame of 74 bytes length).
      4. closing the descriptor
      I am doing this transaction with 5 seconds intervals.
      
      Before the bad commit everything was working correctly: I've got a requests and
      a responses in a timely manner.
      
      After the bad commit more time I am using the kernel module, more problems I have.
      The graph [2] is showing the problem.
      
      As you can see after module load all seems fine but after about 30 minutes I've got
      a plenty of EAGAINs when doing read()'s and trying to read back the data.
      
      When I rmmod and insmod the cdc_acm module again, then the situation is starting
      over again: running ok shortly after load, and more time it is running, more EAGAINs
      I have when calling read().
      
      As a bonus I can see the problem on the device itself:
      The device is configured as you can see here on this screen [3].
      It has two transmision LEDs: TX and RX. Blink duration is set for 100ms.
      This is a recording before the bad commit when all is working fine: [4]
      And this is with the bad commit: [5]
      As you can see the TX led is blinking wrongly long (indicating transmission?)
      and I have problems doing read() calls (EAGAIN).
      Reported-by: NMariusz Bialonczyk <manio@skyboo.net>
      Signed-off-by: NOliver Neukum <oneukum@suse.com>
      Fixes: a81cf979 ("cdc-acm: implement put_char() and flush_chars()")
      Cc: stable <stable@vger.kernel.org>
      Signed-off-by: NGreg Kroah-Hartman <gregkh@linuxfoundation.org>
      df3aa13c
    • Y
      usb: Change usb_of_get_companion_dev() place to usb/common · fa827966
      Yoshihiro Shimoda 提交于
      Since renesas_usb3 udc driver calls usb_of_get_companion_dev()
      which is on usb/core/of.c, build error like below happens if we
      disable CONFIG_USB because the usb/core/ needs CONFIG_USB:
      
      ERROR: "usb_of_get_companion_dev" [drivers/usb/gadget/udc/renesas_usb3.ko] undefined!
      
      According to the usb/gadget/Kconfig, "NOTE:  Gadget support
      ** DOES NOT ** depend on host-side CONFIG_USB !!".
      So, to fix the issue, this patch changes the usb_of_get_companion_dev()
      place from usb/core/of.c to usb/common/common.c to be called by both
      host and gadget.
      Reported-by: NJohn Garry <john.garry@huawei.com>
      Fixes: 39facfa0 ("usb: gadget: udc: renesas_usb3: Add register of usb role switch")
      Signed-off-by: NYoshihiro Shimoda <yoshihiro.shimoda.uh@renesas.com>
      Acked-by: NArnd Bergmann <arnd@arndb.de>
      Signed-off-by: NGreg Kroah-Hartman <gregkh@linuxfoundation.org>
      fa827966
    • C
      usb: xhci: fix interrupt transfer error happened on MTK platforms · 0a3b5330
      Chunfeng Yun 提交于
      The MTK xHCI controller use some reserved bytes in endpoint context for
      bandwidth scheduling, so need keep them in xhci_endpoint_copy();
      
      The issue is introduced by:
      commit f5249461 ("xhci: Clear the host side toggle manually when
      endpoint is soft reset")
      It resets endpoints and will drop bandwidth scheduling parameters used
      by interrupt or isochronous endpoints on MTK xHCI controller.
      Fixes: f5249461 ("xhci: Clear the host side toggle manually when
      endpoint is soft reset")
      
      Cc: stable@vger.kernel.org
      Signed-off-by: NChunfeng Yun <chunfeng.yun@mediatek.com>
      Tested-by: NSean Wang <sean.wang@mediatek.com>
      Signed-off-by: NGreg Kroah-Hartman <gregkh@linuxfoundation.org>
      0a3b5330
  3. 05 9月, 2018 17 次提交
  4. 29 8月, 2018 5 次提交
  5. 27 8月, 2018 2 次提交
  6. 03 8月, 2018 2 次提交
    • M
      scsi: target: loop, usb, vhost, xen: use target_remove_session · 25b88550
      Mike Christie 提交于
      This converts drivers that were only calling transport_deregister_session
      to use target_remove_session. The calling of
      transport_deregister_session_configfs via target_remove_session for these
      types of drivers is ok, because they were not exporting info from fields
      like sess_acl_list, sess->se_tpg and sess->fabric_sess_ptr from configfs
      accessible functions, so they will see no difference.
      Signed-off-by: NMike Christie <mchristi@redhat.com>
      Reviewed-by: NBart Van Assche <bart.vanassche@wdc.com>
      Reviewed-by: NChristoph Hellwig <hch@lst.de>
      Cc: Felipe Balbi <balbi@kernel.org>
      Cc: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
      Cc: Andrzej Pietrasiewicz <andrzej.p@samsung.com>
      Cc: Michael S. Tsirkin <mst@redhat.com>
      Cc: Juergen Gross <jgross@suse.com>
      Signed-off-by: NMartin K. Petersen <martin.petersen@oracle.com>
      25b88550
    • M
      scsi: target: rename target_alloc_session · fa834287
      Mike Christie 提交于
      Rename target_alloc_session to target_setup_session to avoid confusion with
      the other transport session allocation function that only allocates the
      session and because the target_alloc_session does so much more. It
      allocates the session, sets up the nacl and registers the session.
      
      The next patch will then add a remove function to match the setup in this
      one, so it should make sense for all drivers, except iscsi, to just call
      those 2 functions to setup and remove a session.
      
      iscsi will continue to be the odd driver.
      Signed-off-by: NMike Christie <mchristi@redhat.com>
      Reviewed-by: NBart Van Assche <bart.vanassche@wdc.com>
      Reviewed-by: NChristoph Hellwig <hch@lst.de>
      Cc: Chris Boot <bootc@bootc.net>
      Cc: Bryant G. Ly <bryantly@linux.vnet.ibm.com>
      Cc: Michael Cyr <mikecyr@linux.vnet.ibm.com>
      Cc: <qla2xxx-upstream@qlogic.com>
      Cc: Johannes Thumshirn <jth@kernel.org>
      Cc: Felipe Balbi <balbi@kernel.org>
      Cc: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
      Cc: Andrzej Pietrasiewicz <andrzej.p@samsung.com>
      Cc: Michael S. Tsirkin <mst@redhat.com>
      Cc: Juergen Gross <jgross@suse.com>
      Signed-off-by: NMartin K. Petersen <martin.petersen@oracle.com>
      fa834287
  7. 02 8月, 2018 1 次提交
  8. 30 7月, 2018 9 次提交