All of lore.kernel.org
 help / color / mirror / Atom feed
From: Mauro Carvalho Chehab <mchehab@s-opensource.com>
To: Alan Stern <stern@rowland.harvard.edu>
Cc: Linus Torvalds <torvalds@linux-foundation.org>,
	Ingo Molnar <mingo@kernel.org>,
	Josef Griebichler <griebichler.josef@gmx.at>,
	Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
	USB list <linux-usb@vger.kernel.org>,
	Eric Dumazet <edumazet@google.com>,
	Rik van Riel <riel@redhat.com>, Paolo Abeni <pabeni@redhat.com>,
	Hannes Frederic Sowa <hannes@redhat.com>,
	Jesper Dangaard Brouer <jbrouer@redhat.com>,
	linux-kernel <linux-kernel@vger.kernel.org>,
	netdev <netdev@vger.kernel.org>, Jonathan Corbet <corbet@lwn.net>,
	LMML <linux-media@vger.kernel.org>,
	Peter Zijlstra <peterz@infradead.org>,
	David Miller <davem@davemloft.net>,
	John Youn <johnyoun@synopsys.com>,
	Felipe Balbi <balbi@kernel.org>,
	Grigor Tovmasyan <Grigor.Tovmasyan@synopsys.com>
Subject: Re: dvb usb issues since kernel 4.9
Date: Fri, 26 Jan 2018 12:17:37 -0200	[thread overview]
Message-ID: <20180126121737.70710f02@vela.lan> (raw)
In-Reply-To: <Pine.LNX.4.44L0.1801081354450.1908-100000@iolanthe.rowland.org>

Hi Alan,

Em Mon, 8 Jan 2018 14:15:35 -0500 (EST)
Alan Stern <stern@rowland.harvard.edu> escreveu:

> On Mon, 8 Jan 2018, Linus Torvalds wrote:
> 
> > Can somebody tell which softirq it is that dvb/usb cares about?  
> 
> I don't know about the DVB part.  The USB part is a little difficult to
> analyze, mostly because the bug reports I've seen are mostly from
> people running non-vanilla kernels. 

I suspect that the main reason for people not using non-vanilla Kernels
is that, among other bugs, the dwc2 upstream driver has serious troubles
handling ISOCH traffic.

Using Kernel 4.15-rc7 from this git tree:
	https://git.linuxtv.org/mchehab/experimental.git/log/?h=softirq_fixup

(e. g. with the softirq bug partially reverted with Linux patch, and
 the DWC2 deferred probe fixed)

With a PCTV 461e device, with uses em28xx driver + Montage frontend
(with is the same used on dvbsky hardware - except for em28xx).

This device doesn't support bulk for DVB, just ISOCH. The drivers work 
fine on x86.

Using a test signal at the bit rate of 56698,4 Kbits/s, that's what
happens, when capturing less than one second of data:

$ dvbv5-zap -c ~/dvb_channel.conf "tv brasil" -l universal -X 100 -m -t2dvbv5-zap -c ~/dvb_channel.conf "tv brasil" -l universal -X 100 -m -t2
Using LNBf UNIVERSAL
	Universal, Europe
	Freqs     : 10800 to 11800 MHz, LO: 9750 MHz
	Freqs     : 11600 to 12700 MHz, LO: 10600 MHz
using demux 'dvb0.demux0'
reading channels from file '/home/mchehab/dvb_channel.conf'
tuning to 11468000 Hz
       (0x00) Signal= -33.90dBm
Lock   (0x1f) Signal= -33.90dBm C/N= 30.28dB postBER= 2.33x10^-6
dvb_dev_set_bufsize: buffer set to 6160384
  dvb_set_pesfilter to 0x2000
354.08s: Starting capture
354.73s: only read 59220 bytes
354.73s: Stopping capture

[  354.000827] dwc2 3f980000.usb: DWC OTG HCD EP DISABLE: bEndpointAddress=0x84, ep->hcpriv=116f41b2
[  354.000859] dwc2 3f980000.usb: DWC OTG HCD EP RESET: bEndpointAddress=0x84
[  354.010744] dwc2 3f980000.usb: --Host Channel 5 Interrupt: Frame Overrun--
... (hundreds of thousands of Frame Overrun messages)
[  354.660857] dwc2 3f980000.usb: --Host Channel 5 Interrupt: Frame Overrun--
[  354.660935] dwc2 3f980000.usb: DWC OTG HCD URB Dequeue
[  354.660959] dwc2 3f980000.usb: Called usb_hcd_giveback_urb()
[  354.660966] dwc2 3f980000.usb:   urb->status = 0
[  354.660992] dwc2 3f980000.usb: DWC OTG HCD URB Dequeue
[  354.661001] dwc2 3f980000.usb: Called usb_hcd_giveback_urb()
[  354.661008] dwc2 3f980000.usb:   urb->status = 0
[  354.661054] dwc2 3f980000.usb: DWC OTG HCD URB Dequeue
[  354.661065] dwc2 3f980000.usb: Called usb_hcd_giveback_urb()
[  354.661072] dwc2 3f980000.usb:   urb->status = 0
[  354.661107] dwc2 3f980000.usb: DWC OTG HCD URB Dequeue
[  354.661120] dwc2 3f980000.usb: Called usb_hcd_giveback_urb()
[  354.661127] dwc2 3f980000.usb:   urb->status = 0
[  354.661146] dwc2 3f980000.usb: DWC OTG HCD URB Dequeue
[  354.661158] dwc2 3f980000.usb: Called usb_hcd_giveback_urb()
[  354.661165] dwc2 3f980000.usb:   urb->status = 0

Kernel was compiled with:

CONFIG_USB_DWC2=y
CONFIG_USB_DWC2_HOST=y
# CONFIG_USB_DWC2_PERIPHERAL is not set
# CONFIG_USB_DWC2_DUAL_ROLE is not set
# CONFIG_USB_DWC2_PCI is not set
CONFIG_USB_DWC2_DEBUG=y
# CONFIG_USB_DWC2_VERBOSE is not set
# CONFIG_USB_DWC2_TRACK_MISSED_SOFS is not set
CONFIG_USB_DWC2_DEBUG_PERIODIC=y

As reference, that's the output of lsusb for the PCTV usb hardware:

$ lsusb -v -d 2013:0258

Bus 001 Device 005: ID 2013:0258 PCTV Systems 
Couldn't open device, some information will be missing
Device Descriptor:
  bLength                18
  bDescriptorType         1
  bcdUSB               2.00
  bDeviceClass            0 (Defined at Interface level)
  bDeviceSubClass         0 
  bDeviceProtocol         0 
  bMaxPacketSize0        64
  idVendor           0x2013 PCTV Systems
  idProduct          0x0258 
  bcdDevice            1.00
  iManufacturer           3 
  iProduct                1 
  iSerial                 2 
  bNumConfigurations      1
  Configuration Descriptor:
    bLength                 9
    bDescriptorType         2
    wTotalLength           41
    bNumInterfaces          1
    bConfigurationValue     1
    iConfiguration          0 
    bmAttributes         0x80
      (Bus Powered)
    MaxPower              500mA
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        0
      bAlternateSetting       0
      bNumEndpoints           1
      bInterfaceClass       255 Vendor Specific Class
      bInterfaceSubClass      0 
      bInterfaceProtocol      0 
      iInterface              0 
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x84  EP 4 IN
        bmAttributes            1
          Transfer Type            Isochronous
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0000  1x 0 bytes
        bInterval               1
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        0
      bAlternateSetting       1
      bNumEndpoints           1
      bInterfaceClass       255 Vendor Specific Class
      bInterfaceSubClass      0 
      bInterfaceProtocol      0 
      iInterface              0 
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x84  EP 4 IN
        bmAttributes            1
          Transfer Type            Isochronous
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x03ac  1x 940 bytes
        bInterval               1

Cheers,
Mauro

  reply	other threads:[~2018-01-26 14:17 UTC|newest]

Thread overview: 82+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <trinity-35b3a044-b548-4a31-9646-ed9bc83e6846-1513505978471@3c-app-gmx-bs03>
     [not found] ` <20171217120634.pmmuhdqyqmbkxrvl@gofer.mess.org>
2017-12-17 13:27   ` dvb usb issues since kernel 4.9 Mauro Carvalho Chehab
     [not found]     ` <trinity-1fa14556-8596-44b1-95cb-b8919d94d2d4-1515251056328@3c-app-gmx-bs15>
2018-01-06 19:54       ` Mauro Carvalho Chehab
2018-01-06 21:07         ` Aw: " Josef Griebichler
2018-01-06 21:44         ` Alan Stern
2018-01-07 11:03           ` Mauro Carvalho Chehab
2018-01-07 15:41             ` Alan Stern
2018-01-07 17:01               ` Aw: " Josef Griebichler
2018-01-07 17:01                 ` Josef Griebichler
2018-01-07 21:23         ` Linus Torvalds
2018-01-08 10:02           ` Mauro Carvalho Chehab
2018-01-08 11:59             ` Jesper Dangaard Brouer
2018-01-08 12:53               ` Mauro Carvalho Chehab
2018-01-08 16:25                 ` Alan Stern
2018-01-08 17:55           ` Ingo Molnar
2018-01-08 18:32             ` Linus Torvalds
2018-01-08 19:15               ` Alan Stern
2018-01-26 14:17                 ` Mauro Carvalho Chehab [this message]
2018-01-26 19:37                   ` Mauro Carvalho Chehab
2018-01-29 13:51                     ` Mauro Carvalho Chehab
2018-01-08  9:43 Mauro Carvalho Chehab
2018-01-08  9:43 ` Mauro Carvalho Chehab
  -- strict thread matches above, loose matches on Subject: below --
2018-01-08 16:10 Alan Stern
2018-01-08 16:10 ` Alan Stern
2018-01-08 16:26 Aw: " Josef Griebichler
2018-01-08 16:26 ` Josef Griebichler
2018-01-08 16:31 Alan Stern
2018-01-08 16:31 ` Alan Stern
2018-01-08 17:15 Josef Griebichler
2018-01-08 17:15 ` Aw: " Josef Griebichler
2018-01-08 17:35 Aw: " Alan Stern
2018-01-08 17:35 ` Aw: " Alan Stern
2018-01-08 19:51 Linus Torvalds
2018-01-08 19:51 ` Linus Torvalds
2018-01-08 20:40 Aw: " Jesper Dangaard Brouer
2018-01-08 20:40 ` Jesper Dangaard Brouer
2018-01-08 21:31 Aw: " Jesper Dangaard Brouer
2018-01-08 21:31 ` Jesper Dangaard Brouer
2018-01-08 21:44 Aw: " Peter Zijlstra
2018-01-08 21:44 ` Peter Zijlstra
2018-01-08 22:16 Aw: " Jesper Dangaard Brouer
2018-01-08 22:16 ` Jesper Dangaard Brouer
2018-01-09 16:51 Aw: " Josef Griebichler
2018-01-09 16:51 ` Josef Griebichler
2018-01-09 17:27 Eric Dumazet
2018-01-09 17:27 ` Eric Dumazet
2018-01-09 17:42 Mauro Carvalho Chehab
2018-01-09 17:42 ` Mauro Carvalho Chehab
2018-01-09 17:48 Aw: " Linus Torvalds
2018-01-09 17:48 ` Linus Torvalds
2018-01-09 17:55 Linus Torvalds
2018-01-09 17:55 ` Linus Torvalds
2018-01-09 17:57 Aw: " Eric Dumazet
2018-01-09 17:57 ` Eric Dumazet
2018-01-09 18:58 Aw: " Linus Torvalds
2018-01-09 18:58 ` Linus Torvalds
2018-01-09 21:26 Jesper Dangaard Brouer
2018-01-09 21:26 ` Jesper Dangaard Brouer
2018-01-09 21:48 Aw: " Eric Dumazet
2018-01-09 21:48 ` Eric Dumazet
2018-01-10  3:02 Mike Galbraith
2018-01-10  3:02 ` Mike Galbraith
2018-01-10  9:45 Aw: " Jesper Dangaard Brouer
2018-01-10  9:45 ` Jesper Dangaard Brouer
2018-01-12 21:13 Aw: " Mauro Carvalho Chehab
2018-01-12 21:13 ` Mauro Carvalho Chehab
2018-01-12 21:48 Aw: " Eric Dumazet
2018-01-12 21:48 ` Eric Dumazet
2018-01-13  9:09 Aw: " Mauro Carvalho Chehab
2018-01-13  9:09 ` Mauro Carvalho Chehab
2018-01-13 10:46 Aw: " Mauro Carvalho Chehab
2018-01-13 10:46 ` Mauro Carvalho Chehab
2018-07-17 11:54 hannah
2018-07-17 11:54 ` Hanna Hawa
2018-07-17 17:09 Linus Torvalds
2018-07-17 17:09 ` Linus Torvalds
2018-07-17 17:09 ` Linus Torvalds
2018-07-17 18:07 hannah
2018-07-17 18:07 ` Hanna Hawa
2018-07-17 18:07 ` Hanna Hawa
2018-07-17 22:21 Mauro Carvalho Chehab
2018-07-17 22:21 ` Mauro Carvalho Chehab
2018-07-17 22:21 ` Mauro Carvalho Chehab

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20180126121737.70710f02@vela.lan \
    --to=mchehab@s-opensource.com \
    --cc=Grigor.Tovmasyan@synopsys.com \
    --cc=balbi@kernel.org \
    --cc=corbet@lwn.net \
    --cc=davem@davemloft.net \
    --cc=edumazet@google.com \
    --cc=gregkh@linuxfoundation.org \
    --cc=griebichler.josef@gmx.at \
    --cc=hannes@redhat.com \
    --cc=jbrouer@redhat.com \
    --cc=johnyoun@synopsys.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-media@vger.kernel.org \
    --cc=linux-usb@vger.kernel.org \
    --cc=mingo@kernel.org \
    --cc=netdev@vger.kernel.org \
    --cc=pabeni@redhat.com \
    --cc=peterz@infradead.org \
    --cc=riel@redhat.com \
    --cc=stern@rowland.harvard.edu \
    --cc=torvalds@linux-foundation.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.