LKML Archive on lore.kernel.org
help / color / mirror / Atom feed
* [PATCH v2 1/1] usb: xhci: apply XHCI_AVOID_BEI quirk to all Intel xHCI controllers
@ 2015-03-12 10:15 Lu Baolu
  2015-03-12 19:14 ` Alistair Grant
  2015-03-12 19:36 ` Devin Heitmueller
  0 siblings, 2 replies; 11+ messages in thread
From: Lu Baolu @ 2015-03-12 10:15 UTC (permalink / raw)
  To: Mathias Nyman, Greg Kroah-Hartman
  Cc: dheitmueller, linux-usb, linux-kernel, Lu Baolu, stable

When a device with an isochronous endpoint is plugged into the Intel
xHCI host controller, and the driver submits multiple frames per URB,
the xHCI driver will set the Block Event Interrupt (BEI) flag on all
but the last TD for the URB. This causes the host controller to place
an event on the event ring, but not send an interrupt. When the last
TD for the URB completes, BEI is cleared, and we get an interrupt for
the whole URB.

However, under Intel xHCI host controllers, if the event ring is full
of events from transfers with BEI set,  an "Event Ring is Full" event
will be posted to the last entry of the event ring,  but no interrupt
is generated. Host will cease all transfer and command executions and
wait until software completes handling the pending events in the event
ring.  That means xHC stops, but event of "event ring is full" is not
notified. As the result, the xHC looks like dead to user.

This patch is to apply XHCI_AVOID_BEI quirk to Intel xHC devices. And
it should be backported to kernels as old as 3.0, that contains the
commit 69e848c2090a ("Intel xhci: Support EHCI/xHCI port switching.").

Signed-off-by: Lu Baolu <baolu.lu@linux.intel.com>
Cc: stable@vger.kernel.org
---
 drivers/usb/host/xhci-pci.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/usb/host/xhci-pci.c b/drivers/usb/host/xhci-pci.c
index fd53c9e..2af32e2 100644
--- a/drivers/usb/host/xhci-pci.c
+++ b/drivers/usb/host/xhci-pci.c
@@ -115,6 +115,7 @@ static void xhci_pci_quirks(struct device *dev, struct xhci_hcd *xhci)
 	if (pdev->vendor == PCI_VENDOR_ID_INTEL) {
 		xhci->quirks |= XHCI_LPM_SUPPORT;
 		xhci->quirks |= XHCI_INTEL_HOST;
+		xhci->quirks |= XHCI_AVOID_BEI;
 	}
 	if (pdev->vendor == PCI_VENDOR_ID_INTEL &&
 			pdev->device == PCI_DEVICE_ID_INTEL_PANTHERPOINT_XHCI) {
@@ -130,7 +131,6 @@ static void xhci_pci_quirks(struct device *dev, struct xhci_hcd *xhci)
 		 * PPT chipsets.
 		 */
 		xhci->quirks |= XHCI_SPURIOUS_REBOOT;
-		xhci->quirks |= XHCI_AVOID_BEI;
 	}
 	if (pdev->vendor == PCI_VENDOR_ID_INTEL &&
 		pdev->device == PCI_DEVICE_ID_INTEL_LYNXPOINT_LP_XHCI) {
-- 
2.1.0


^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [PATCH v2 1/1] usb: xhci: apply XHCI_AVOID_BEI quirk to all Intel xHCI controllers
  2015-03-12 10:15 [PATCH v2 1/1] usb: xhci: apply XHCI_AVOID_BEI quirk to all Intel xHCI controllers Lu Baolu
@ 2015-03-12 19:14 ` Alistair Grant
  2015-03-15 14:54   ` Alistair Grant
  2015-03-12 19:36 ` Devin Heitmueller
  1 sibling, 1 reply; 11+ messages in thread
From: Alistair Grant @ 2015-03-12 19:14 UTC (permalink / raw)
  To: Lu Baolu, Mathias Nyman
  Cc: Greg Kroah-Hartman, Devin Heitmueller, linux-usb, linux-kernel, stable

On Thu, Mar 12, 2015 at 11:15 AM, Lu Baolu <baolu.lu@linux.intel.com> wrote:
> When a device with an isochronous endpoint is plugged into the Intel
> xHCI host controller, and the driver submits multiple frames per URB,
> the xHCI driver will set the Block Event Interrupt (BEI) flag on all
> but the last TD for the URB. This causes the host controller to place
> an event on the event ring, but not send an interrupt. When the last
> TD for the URB completes, BEI is cleared, and we get an interrupt for
> the whole URB.
>
> However, under Intel xHCI host controllers, if the event ring is full
> of events from transfers with BEI set,  an "Event Ring is Full" event
> will be posted to the last entry of the event ring,  but no interrupt
> is generated. Host will cease all transfer and command executions and
> wait until software completes handling the pending events in the event
> ring.  That means xHC stops, but event of "event ring is full" is not
> notified. As the result, the xHC looks like dead to user.
>
> This patch is to apply XHCI_AVOID_BEI quirk to Intel xHC devices. And
> it should be backported to kernels as old as 3.0, that contains the
> commit 69e848c2090a ("Intel xhci: Support EHCI/xHCI port switching.").
>
> Signed-off-by: Lu Baolu <baolu.lu@linux.intel.com>
> Cc: stable@vger.kernel.org
> ---
>  drivers/usb/host/xhci-pci.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/usb/host/xhci-pci.c b/drivers/usb/host/xhci-pci.c
> index fd53c9e..2af32e2 100644
> --- a/drivers/usb/host/xhci-pci.c
> +++ b/drivers/usb/host/xhci-pci.c
> @@ -115,6 +115,7 @@ static void xhci_pci_quirks(struct device *dev, struct xhci_hcd *xhci)
>         if (pdev->vendor == PCI_VENDOR_ID_INTEL) {
>                 xhci->quirks |= XHCI_LPM_SUPPORT;
>                 xhci->quirks |= XHCI_INTEL_HOST;
> +               xhci->quirks |= XHCI_AVOID_BEI;
>         }
>         if (pdev->vendor == PCI_VENDOR_ID_INTEL &&
>                         pdev->device == PCI_DEVICE_ID_INTEL_PANTHERPOINT_XHCI) {
> @@ -130,7 +131,6 @@ static void xhci_pci_quirks(struct device *dev, struct xhci_hcd *xhci)
>                  * PPT chipsets.
>                  */
>                 xhci->quirks |= XHCI_SPURIOUS_REBOOT;
> -               xhci->quirks |= XHCI_AVOID_BEI;
>         }
>         if (pdev->vendor == PCI_VENDOR_ID_INTEL &&
>                 pdev->device == PCI_DEVICE_ID_INTEL_LYNXPOINT_LP_XHCI) {
> --
> 2.1.0
>
> --

This works for me...

Computer: Dell XPS13 9333
USB controller: Intel Corporation 8 Series USB xHCI HC (rev 04)
(prog-if 30 [XHCI])
Kernel: 3.19.1
USB Device: Hauppauge USB-Live2

Please let me know if I can help in any other way.

Tested-by: Alistair Grant <akgrant0710@gmail.com>

Thanks!
Alistair

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [PATCH v2 1/1] usb: xhci: apply XHCI_AVOID_BEI quirk to all Intel xHCI controllers
  2015-03-12 10:15 [PATCH v2 1/1] usb: xhci: apply XHCI_AVOID_BEI quirk to all Intel xHCI controllers Lu Baolu
  2015-03-12 19:14 ` Alistair Grant
@ 2015-03-12 19:36 ` Devin Heitmueller
  1 sibling, 0 replies; 11+ messages in thread
From: Devin Heitmueller @ 2015-03-12 19:36 UTC (permalink / raw)
  To: Lu Baolu
  Cc: Mathias Nyman, Greg Kroah-Hartman, linux-usb, Linux Kernel, stable

On Thu, Mar 12, 2015 at 6:15 AM, Lu Baolu <baolu.lu@linux.intel.com> wrote:
> When a device with an isochronous endpoint is plugged into the Intel
> xHCI host controller, and the driver submits multiple frames per URB,
> the xHCI driver will set the Block Event Interrupt (BEI) flag on all
> but the last TD for the URB. This causes the host controller to place
> an event on the event ring, but not send an interrupt. When the last
> TD for the URB completes, BEI is cleared, and we get an interrupt for
> the whole URB.
>
> However, under Intel xHCI host controllers, if the event ring is full
> of events from transfers with BEI set,  an "Event Ring is Full" event
> will be posted to the last entry of the event ring,  but no interrupt
> is generated. Host will cease all transfer and command executions and
> wait until software completes handling the pending events in the event
> ring.  That means xHC stops, but event of "event ring is full" is not
> notified. As the result, the xHC looks like dead to user.
>
> This patch is to apply XHCI_AVOID_BEI quirk to Intel xHC devices. And
> it should be backported to kernels as old as 3.0, that contains the
> commit 69e848c2090a ("Intel xhci: Support EHCI/xHCI port switching.").
>
> Signed-off-by: Lu Baolu <baolu.lu@linux.intel.com>
> Cc: stable@vger.kernel.org
> ---
>  drivers/usb/host/xhci-pci.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/usb/host/xhci-pci.c b/drivers/usb/host/xhci-pci.c
> index fd53c9e..2af32e2 100644
> --- a/drivers/usb/host/xhci-pci.c
> +++ b/drivers/usb/host/xhci-pci.c
> @@ -115,6 +115,7 @@ static void xhci_pci_quirks(struct device *dev, struct xhci_hcd *xhci)
>         if (pdev->vendor == PCI_VENDOR_ID_INTEL) {
>                 xhci->quirks |= XHCI_LPM_SUPPORT;
>                 xhci->quirks |= XHCI_INTEL_HOST;
> +               xhci->quirks |= XHCI_AVOID_BEI;
>         }
>         if (pdev->vendor == PCI_VENDOR_ID_INTEL &&
>                         pdev->device == PCI_DEVICE_ID_INTEL_PANTHERPOINT_XHCI) {
> @@ -130,7 +131,6 @@ static void xhci_pci_quirks(struct device *dev, struct xhci_hcd *xhci)
>                  * PPT chipsets.
>                  */
>                 xhci->quirks |= XHCI_SPURIOUS_REBOOT;
> -               xhci->quirks |= XHCI_AVOID_BEI;
>         }
>         if (pdev->vendor == PCI_VENDOR_ID_INTEL &&
>                 pdev->device == PCI_DEVICE_ID_INTEL_LYNXPOINT_LP_XHCI) {
> --
> 2.1.0
>

Looks good for me to (tested with an HVR-950q on a 2013 Macbook Pro (Haswell).

Tested by: Devin Heitmueller <dheitmueller@kernellabs.com>

Thanks for your help,

Devin

-- 
Devin J. Heitmueller - Kernel Labs
http://www.kernellabs.com

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [PATCH v2 1/1] usb: xhci: apply XHCI_AVOID_BEI quirk to all Intel xHCI controllers
  2015-03-12 19:14 ` Alistair Grant
@ 2015-03-15 14:54   ` Alistair Grant
  2015-03-15 19:18     ` Alistair Grant
  0 siblings, 1 reply; 11+ messages in thread
From: Alistair Grant @ 2015-03-15 14:54 UTC (permalink / raw)
  To: Lu Baolu, Mathias Nyman; +Cc: Devin Heitmueller, linux-usb, linux-kernel

On Thu, Mar 12, 2015 at 8:14 PM, Alistair Grant <akgrant0710@gmail.com> wrote:
> On Thu, Mar 12, 2015 at 11:15 AM, Lu Baolu <baolu.lu@linux.intel.com> wrote:
>> When a device with an isochronous endpoint is plugged into the Intel
>> xHCI host controller, and the driver submits multiple frames per URB,
>> the xHCI driver will set the Block Event Interrupt (BEI) flag on all
>> but the last TD for the URB. This causes the host controller to place
>> an event on the event ring, but not send an interrupt. When the last
>> TD for the URB completes, BEI is cleared, and we get an interrupt for
>> the whole URB.
>>
>> However, under Intel xHCI host controllers, if the event ring is full
>> of events from transfers with BEI set,  an "Event Ring is Full" event
>> will be posted to the last entry of the event ring,  but no interrupt
>> is generated. Host will cease all transfer and command executions and
>> wait until software completes handling the pending events in the event
>> ring.  That means xHC stops, but event of "event ring is full" is not
>> notified. As the result, the xHC looks like dead to user.
>>
>> This patch is to apply XHCI_AVOID_BEI quirk to Intel xHC devices. And
>> it should be backported to kernels as old as 3.0, that contains the
>> commit 69e848c2090a ("Intel xhci: Support EHCI/xHCI port switching.").
>>
>> Signed-off-by: Lu Baolu <baolu.lu@linux.intel.com>
>> Cc: stable@vger.kernel.org
>> ---
>>  drivers/usb/host/xhci-pci.c | 2 +-
>>  1 file changed, 1 insertion(+), 1 deletion(-)
>>
>> diff --git a/drivers/usb/host/xhci-pci.c b/drivers/usb/host/xhci-pci.c
>> index fd53c9e..2af32e2 100644
>> --- a/drivers/usb/host/xhci-pci.c
>> +++ b/drivers/usb/host/xhci-pci.c
>> @@ -115,6 +115,7 @@ static void xhci_pci_quirks(struct device *dev, struct xhci_hcd *xhci)
>>         if (pdev->vendor == PCI_VENDOR_ID_INTEL) {
>>                 xhci->quirks |= XHCI_LPM_SUPPORT;
>>                 xhci->quirks |= XHCI_INTEL_HOST;
>> +               xhci->quirks |= XHCI_AVOID_BEI;
>>         }
>>         if (pdev->vendor == PCI_VENDOR_ID_INTEL &&
>>                         pdev->device == PCI_DEVICE_ID_INTEL_PANTHERPOINT_XHCI) {
>> @@ -130,7 +131,6 @@ static void xhci_pci_quirks(struct device *dev, struct xhci_hcd *xhci)
>>                  * PPT chipsets.
>>                  */
>>                 xhci->quirks |= XHCI_SPURIOUS_REBOOT;
>> -               xhci->quirks |= XHCI_AVOID_BEI;
>>         }
>>         if (pdev->vendor == PCI_VENDOR_ID_INTEL &&
>>                 pdev->device == PCI_DEVICE_ID_INTEL_LYNXPOINT_LP_XHCI) {
>> --
>> 2.1.0
>>
>> --
>
> This works for me...
>
> Computer: Dell XPS13 9333
> USB controller: Intel Corporation 8 Series USB xHCI HC (rev 04)
> (prog-if 30 [XHCI])
> Kernel: 3.19.1
> USB Device: Hauppauge USB-Live2
>
> Please let me know if I can help in any other way.
>
> Tested-by: Alistair Grant <akgrant0710@gmail.com>

Just FYI...

I was able to test this on a slightly older laptop that had both USB2
and USB3 ports and can confirm that it also works there:

00:14.0 USB controller: Intel Corporation 7 Series/C210 Series Chipset
Family USB xHCI Host Controller (rev 04)

Thanks,
Alistair

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [PATCH v2 1/1] usb: xhci: apply XHCI_AVOID_BEI quirk to all Intel xHCI controllers
  2015-03-15 14:54   ` Alistair Grant
@ 2015-03-15 19:18     ` Alistair Grant
  2015-03-16 12:55       ` Mathias Nyman
  0 siblings, 1 reply; 11+ messages in thread
From: Alistair Grant @ 2015-03-15 19:18 UTC (permalink / raw)
  To: Lu Baolu, Mathias Nyman; +Cc: Devin Heitmueller, linux-usb, linux-kernel

On Sun, Mar 15, 2015 at 3:54 PM, Alistair Grant <akgrant0710@gmail.com> wrote:
> On Thu, Mar 12, 2015 at 8:14 PM, Alistair Grant <akgrant0710@gmail.com> wrote:
>> On Thu, Mar 12, 2015 at 11:15 AM, Lu Baolu <baolu.lu@linux.intel.com> wrote:
>>> When a device with an isochronous endpoint is plugged into the Intel
>>> xHCI host controller, and the driver submits multiple frames per URB,
>>> the xHCI driver will set the Block Event Interrupt (BEI) flag on all
>>> but the last TD for the URB. This causes the host controller to place
>>> an event on the event ring, but not send an interrupt. When the last
>>> TD for the URB completes, BEI is cleared, and we get an interrupt for
>>> the whole URB.
>>>
>>> However, under Intel xHCI host controllers, if the event ring is full
>>> of events from transfers with BEI set,  an "Event Ring is Full" event
>>> will be posted to the last entry of the event ring,  but no interrupt
>>> is generated. Host will cease all transfer and command executions and
>>> wait until software completes handling the pending events in the event
>>> ring.  That means xHC stops, but event of "event ring is full" is not
>>> notified. As the result, the xHC looks like dead to user.
>>>
>>> This patch is to apply XHCI_AVOID_BEI quirk to Intel xHC devices. And
>>> it should be backported to kernels as old as 3.0, that contains the
>>> commit 69e848c2090a ("Intel xhci: Support EHCI/xHCI port switching.").
>>>
>>> Signed-off-by: Lu Baolu <baolu.lu@linux.intel.com>
>>> Cc: stable@vger.kernel.org
>>> ---
>>>  drivers/usb/host/xhci-pci.c | 2 +-
>>>  1 file changed, 1 insertion(+), 1 deletion(-)
>>>
>>> diff --git a/drivers/usb/host/xhci-pci.c b/drivers/usb/host/xhci-pci.c
>>> index fd53c9e..2af32e2 100644
>>> --- a/drivers/usb/host/xhci-pci.c
>>> +++ b/drivers/usb/host/xhci-pci.c
>>> @@ -115,6 +115,7 @@ static void xhci_pci_quirks(struct device *dev, struct xhci_hcd *xhci)
>>>         if (pdev->vendor == PCI_VENDOR_ID_INTEL) {
>>>                 xhci->quirks |= XHCI_LPM_SUPPORT;
>>>                 xhci->quirks |= XHCI_INTEL_HOST;
>>> +               xhci->quirks |= XHCI_AVOID_BEI;
>>>         }
>>>         if (pdev->vendor == PCI_VENDOR_ID_INTEL &&
>>>                         pdev->device == PCI_DEVICE_ID_INTEL_PANTHERPOINT_XHCI) {
>>> @@ -130,7 +131,6 @@ static void xhci_pci_quirks(struct device *dev, struct xhci_hcd *xhci)
>>>                  * PPT chipsets.
>>>                  */
>>>                 xhci->quirks |= XHCI_SPURIOUS_REBOOT;
>>> -               xhci->quirks |= XHCI_AVOID_BEI;
>>>         }
>>>         if (pdev->vendor == PCI_VENDOR_ID_INTEL &&
>>>                 pdev->device == PCI_DEVICE_ID_INTEL_LYNXPOINT_LP_XHCI) {
>>> --
>>> 2.1.0
>>>
>>> --
>>
>> This works for me...
>>
>> Computer: Dell XPS13 9333
>> USB controller: Intel Corporation 8 Series USB xHCI HC (rev 04)
>> (prog-if 30 [XHCI])
>> Kernel: 3.19.1
>> USB Device: Hauppauge USB-Live2
>>
>> Please let me know if I can help in any other way.
>>
>> Tested-by: Alistair Grant <akgrant0710@gmail.com>
>
> Just FYI...
>
> I was able to test this on a slightly older laptop that had both USB2
> and USB3 ports and can confirm that it also works there:
>
> 00:14.0 USB controller: Intel Corporation 7 Series/C210 Series Chipset
> Family USB xHCI Host Controller (rev 04)

It looks like I may have signed-off a little too soon.  While the patch is
working correctly if the Hauppauge Live2 is plugged in after the system has
booted and settled down (my normal use case), it fails if the Live2 is
plugged in while the system is booted up.

Unplugging the Live2 after recording (which appears to succeed from the
command line, but had no audio), executing lsusb just hangs.

I've included what I think is the relevant portions of /var/log/syslog
below.  If you'd like the entire log file posted somewhere please let me
know.

Thanks,
Alistair


Mar 15 19:50:42 alistair-XPS13 kernel: [   15.177240] Linux video
capture interface: v2.00
Mar 15 19:50:42 alistair-XPS13 kernel: [   15.221452] AVX2 version of
gcm_enc/dec engaged.
Mar 15 19:50:42 alistair-XPS13 kernel: [   15.221456] AES CTR mode by8
optimization enabled
Mar 15 19:50:42 alistair-XPS13 kernel: [   15.257091] cx231xx 1-2:1.1:
New device Hauppauge Hauppauge Device @ 480 Mbps (2040:c200) with 6
interfaces
Mar 15 19:50:42 alistair-XPS13 kernel: [   15.257790] cx231xx 1-2:1.1:
can't change interface 3 alt no. to 3: Max. Pkt size = 0
Mar 15 19:50:42 alistair-XPS13 kernel: [   15.259281] cx231xx 1-2:1.1:
can't change interface 4 alt no. to 1: Max. Pkt size = 0
Mar 15 19:50:42 alistair-XPS13 kernel: [   15.260533] cx231xx 1-2:1.1:
Identified as Hauppauge USB Live 2 (card=9)
Mar 15 19:50:42 alistair-XPS13 kernel: [   15.260724] i2c i2c-10:
Added multiplexed i2c bus 12
Mar 15 19:50:42 alistair-XPS13 kernel: [   15.260766] i2c i2c-10:
Added multiplexed i2c bus 13

...

Mar 15 19:50:42 alistair-XPS13 kernel: [   15.452042] cx25840 9-0044:
cx23102 A/V decoder found @ 0x88 (cx231xx #0-0)

...

Mar 15 19:50:44 alistair-XPS13 kernel: [   17.447893] cx25840 9-0044:
loaded v4l-cx231xx-avcore-01.fw firmware (16382 bytes)
Mar 15 19:50:44 alistair-XPS13 kernel: [   17.480218] cx231xx 1-2:1.1:
v4l2 driver version 0.0.3
Mar 15 19:50:45 alistair-XPS13 kernel: [   17.569959] cx231xx 1-2:1.1:
Registered video device video1 [v4l2]
Mar 15 19:50:45 alistair-XPS13 kernel: [   17.570035] cx231xx 1-2:1.1:
Registered VBI device vbi0
Mar 15 19:50:45 alistair-XPS13 kernel: [   17.570039] cx231xx 1-2:1.1:
video EndPoint Addr 0x84, Alternate settings: 5
Mar 15 19:50:45 alistair-XPS13 kernel: [   17.570042] cx231xx 1-2:1.1:
VBI EndPoint Addr 0x85, Alternate settings: 2
Mar 15 19:50:45 alistair-XPS13 kernel: [   17.570045] cx231xx 1-2:1.1:
sliced CC EndPoint Addr 0x86, Alternate settings: 2
Mar 15 19:50:45 alistair-XPS13 kernel: [   17.571225] usbcore:
registered new interface driver cx231xx
Mar 15 19:50:45 alistair-XPS13 kernel: [   17.578681] cx231xx 1-2:1.1:
audio EndPoint Addr 0x83, Alternate settings: 3
Mar 15 19:50:45 alistair-XPS13 kernel: [   17.578687] cx231xx 1-2:1.1:
Cx231xx Audio Extension initialized

...

Mar 15 19:53:19 alistair-XPS13 kernel: [  172.350483] xhci_hcd
0000:00:14.0: ERROR Transfer event TRB DMA ptr not part of current TD
ep_index 8 comp_code 1
Mar 15 19:53:19 alistair-XPS13 kernel: [  172.350491] xhci_hcd
0000:00:14.0: Looking for event-dma 0000000035b89400 trb-start
00000001faa39190 trb-end 00000001faa39190 seg-start 00000001faa39000
seg-end 00000001faa393f0
Mar 15 19:53:19 alistair-XPS13 kernel: [  172.350559] xhci_hcd
0000:00:14.0: ERROR Transfer event TRB DMA ptr not part of current TD
ep_index 8 comp_code 1
Mar 15 19:53:19 alistair-XPS13 kernel: [  172.350567] xhci_hcd
0000:00:14.0: Looking for event-dma 0000000035b89410 trb-start
00000001faa39190 trb-end 00000001faa39190 seg-start 00000001faa39000
seg-end 00000001faa393f0
Mar 15 19:53:19 alistair-XPS13 kernel: [  172.350657] xhci_hcd
0000:00:14.0: ERROR Transfer event TRB DMA ptr not part of current TD
ep_index 8 comp_code 13
Mar 15 19:53:19 alistair-XPS13 kernel: [  172.350660] xhci_hcd
0000:00:14.0: Looking for event-dma 0000000035b89420 trb-start
00000001faa39190 trb-end 00000001faa39190 seg-start 00000001faa39000
seg-end 00000001faa393f0
Mar 15 19:53:19 alistair-XPS13 kernel: [  172.350799] xhci_hcd
0000:00:14.0: ERROR Transfer event TRB DMA ptr not part of current TD
ep_index 8 comp_code 1
Mar 15 19:53:19 alistair-XPS13 kernel: [  172.350803] xhci_hcd
0000:00:14.0: Looking for event-dma 0000000035b89430 trb-start
00000001faa39190 trb-end 00000001faa39190 seg-start 00000001faa39000
seg-end 00000001faa393f0
Mar 15 19:53:19 alistair-XPS13 kernel: [  172.350928] xhci_hcd
0000:00:14.0: ERROR Transfer event TRB DMA ptr not part of current TD
ep_index 8 comp_code 1
Mar 15 19:53:19 alistair-XPS13 kernel: [  172.350933] xhci_hcd
0000:00:14.0: Looking for event-dma 0000000035b89440 trb-start
00000001faa39190 trb-end 00000001faa39190 seg-start 00000001faa39000
seg-end 00000001faa393f0
Mar 15 19:53:19 alistair-XPS13 kernel: [  172.351051] xhci_hcd
0000:00:14.0: ERROR Transfer event TRB DMA ptr not part of current TD
ep_index 8 comp_code 1
Mar 15 19:53:19 alistair-XPS13 kernel: [  172.351054] xhci_hcd
0000:00:14.0: Looking for event-dma 0000000035b89450 trb-start
00000001faa39190 trb-end 00000001faa39190 seg-start 00000001faa39000
seg-end 00000001faa393f0
Mar 15 19:53:19 alistair-XPS13 kernel: [  172.351175] xhci_hcd
0000:00:14.0: ERROR Transfer event TRB DMA ptr not part of current TD
ep_index 8 comp_code 1
Mar 15 19:53:19 alistair-XPS13 kernel: [  172.351178] xhci_hcd
0000:00:14.0: Looking for event-dma 0000000035b89460 trb-start
00000001faa39190 trb-end 00000001faa39190 seg-start 00000001faa39000
seg-end 00000001faa393f0
Mar 15 19:53:19 alistair-XPS13 kernel: [  172.351300] xhci_hcd
0000:00:14.0: ERROR Transfer event TRB DMA ptr not part of current TD
ep_index 8 comp_code 1
Mar 15 19:53:19 alistair-XPS13 kernel: [  172.351303] xhci_hcd
0000:00:14.0: Looking for event-dma 0000000035b89470 trb-start
00000001faa39190 trb-end 00000001faa39190 seg-start 00000001faa39000
seg-end 00000001faa393f0
Mar 15 19:53:19 alistair-XPS13 kernel: [  172.351437] xhci_hcd
0000:00:14.0: ERROR Transfer event TRB DMA ptr not part of current TD
ep_index 8 comp_code 1
Mar 15 19:53:19 alistair-XPS13 kernel: [  172.351440] xhci_hcd
0000:00:14.0: Looking for event-dma 0000000035b89480 trb-start
00000001faa39190 trb-end 00000001faa39190 seg-start 00000001faa39000
seg-end 00000001faa393f0
Mar 15 19:53:19 alistair-XPS13 kernel: [  172.351560] xhci_hcd
0000:00:14.0: ERROR Transfer event TRB DMA ptr not part of current TD
ep_index 8 comp_code 1
Mar 15 19:53:19 alistair-XPS13 kernel: [  172.351563] xhci_hcd
0000:00:14.0: Looking for event-dma 0000000035b89490 trb-start
00000001faa39190 trb-end 00000001faa39190 seg-start 00000001faa39000
seg-end 00000001faa393f0
Mar 15 19:53:19 alistair-XPS13 kernel: [  172.351686] xhci_hcd
0000:00:14.0: ERROR Transfer event TRB DMA ptr not part of current TD
ep_index 8 comp_code 1
Mar 15 19:53:19 alistair-XPS13 kernel: [  172.351690] xhci_hcd
0000:00:14.0: Looking for event-dma 0000000035b894a0 trb-start
00000001faa39190 trb-end 00000001faa39190 seg-start 00000001faa39000
seg-end 00000001faa393f0
Mar 15 19:53:19 alistair-XPS13 kernel: [  172.351811] xhci_hcd
0000:00:14.0: ERROR Transfer event TRB DMA ptr not part of current TD
ep_index 8 comp_code 1
Mar 15 19:53:19 alistair-XPS13 kernel: [  172.351814] xhci_hcd
0000:00:14.0: Looking for event-dma 0000000035b894b0 trb-start
00000001faa39190 trb-end 00000001faa39190 seg-start 00000001faa39000
seg-end 00000001faa393f0
Mar 15 19:53:19 alistair-XPS13 kernel: [  172.351955] xhci_hcd
0000:00:14.0: ERROR Transfer event TRB DMA ptr not part of current TD
ep_index 8 comp_code 1
Mar 15 19:53:19 alistair-XPS13 kernel: [  172.351959] xhci_hcd
0000:00:14.0: Looking for event-dma 0000000035b894c0 trb-start
00000001faa39190 trb-end 00000001faa39190 seg-start 00000001faa39000
seg-end 00000001faa393f0
Mar 15 19:53:19 alistair-XPS13 kernel: [  172.352053] xhci_hcd
0000:00:14.0: ERROR Transfer event TRB DMA ptr not part of current TD
ep_index 8 comp_code 1
Mar 15 19:53:19 alistair-XPS13 kernel: [  172.352060] xhci_hcd
0000:00:14.0: Looking for event-dma 0000000035b894e0 trb-start
00000001faa39190 trb-end 00000001faa39190 seg-start 00000001faa39000
seg-end 00000001faa393f0
Mar 15 19:53:19 alistair-XPS13 kernel: [  172.352159] xhci_hcd
0000:00:14.0: ERROR Transfer event TRB DMA ptr not part of current TD
ep_index 8 comp_code 13
Mar 15 19:53:19 alistair-XPS13 kernel: [  172.352165] xhci_hcd
0000:00:14.0: Looking for event-dma 0000000035b894f0 trb-start
00000001faa39190 trb-end 00000001faa39190 seg-start 00000001faa39000
seg-end 00000001faa393f0
Mar 15 19:53:19 alistair-XPS13 kernel: [  172.352301] xhci_hcd
0000:00:14.0: ERROR Transfer event TRB DMA ptr not part of current TD
ep_index 8 comp_code 1
Mar 15 19:53:19 alistair-XPS13 kernel: [  172.352306] xhci_hcd
0000:00:14.0: Looking for event-dma 0000000035b89500 trb-start
00000001faa39190 trb-end 00000001faa39190 seg-start 00000001faa39000
seg-end 00000001faa393f0
Mar 15 19:53:19 alistair-XPS13 kernel: [  172.352426] xhci_hcd
0000:00:14.0: ERROR Transfer event TRB DMA ptr not part of current TD
ep_index 8 comp_code 1
Mar 15 19:53:19 alistair-XPS13 kernel: [  172.352432] xhci_hcd
0000:00:14.0: Looking for event-dma 0000000035b89510 trb-start
00000001faa39190 trb-end 00000001faa39190 seg-start 00000001faa39000
seg-end 00000001faa393f0
Mar 15 19:53:19 alistair-XPS13 kernel: [  172.352551] xhci_hcd
0000:00:14.0: ERROR Transfer event TRB DMA ptr not part of current TD
ep_index 8 comp_code 1
Mar 15 19:53:19 alistair-XPS13 kernel: [  172.352556] xhci_hcd
0000:00:14.0: Looking for event-dma 0000000035b89520 trb-start
00000001faa39190 trb-end 00000001faa39190 seg-start 00000001faa39000
seg-end 00000001faa393f0
Mar 15 19:53:19 alistair-XPS13 kernel: [  172.352676] xhci_hcd
0000:00:14.0: ERROR Transfer event TRB DMA ptr not part of current TD
ep_index 8 comp_code 1
Mar 15 19:53:19 alistair-XPS13 kernel: [  172.352681] xhci_hcd
0000:00:14.0: Looking for event-dma 0000000035b89530 trb-start
00000001faa39190 trb-end 00000001faa39190 seg-start 00000001faa39000
seg-end 00000001faa393f0
Mar 15 19:53:19 alistair-XPS13 kernel: [  172.352801] xhci_hcd
0000:00:14.0: ERROR Transfer event TRB DMA ptr not part of current TD
ep_index 8 comp_code 1
Mar 15 19:53:19 alistair-XPS13 kernel: [  172.352807] xhci_hcd
0000:00:14.0: Looking for event-dma 0000000035b89540 trb-start
00000001faa39190 trb-end 00000001faa39190 seg-start 00000001faa39000
seg-end 00000001faa393f0
Mar 15 19:53:19 alistair-XPS13 kernel: [  172.352926] xhci_hcd
0000:00:14.0: ERROR Transfer event TRB DMA ptr not part of current TD
ep_index 8 comp_code 1
Mar 15 19:53:19 alistair-XPS13 kernel: [  172.352931] xhci_hcd
0000:00:14.0: Looking for event-dma 0000000035b89550 trb-start
00000001faa39190 trb-end 00000001faa39190 seg-start 00000001faa39000
seg-end 00000001faa393f0
Mar 15 19:53:19 alistair-XPS13 kernel: [  172.353051] xhci_hcd
0000:00:14.0: ERROR Transfer event TRB DMA ptr not part of current TD
ep_index 8 comp_code 1
Mar 15 19:53:19 alistair-XPS13 kernel: [  172.353056] xhci_hcd
0000:00:14.0: Looking for event-dma 0000000035b89560 trb-start
00000001faa39190 trb-end 00000001faa39190 seg-start 00000001faa39000
seg-end 00000001faa393f0
Mar 15 19:53:19 alistair-XPS13 kernel: [  172.353176] xhci_hcd
0000:00:14.0: ERROR Transfer event TRB DMA ptr not part of current TD
ep_index 8 comp_code 1
Mar 15 19:53:19 alistair-XPS13 kernel: [  172.353181] xhci_hcd
0000:00:14.0: Looking for event-dma 0000000035b89570 trb-start
00000001faa39190 trb-end 00000001faa39190 seg-start 00000001faa39000
seg-end 00000001faa393f0
Mar 15 19:53:19 alistair-XPS13 kernel: [  172.353301] xhci_hcd
0000:00:14.0: ERROR Transfer event TRB DMA ptr not part of current TD
ep_index 8 comp_code 1
Mar 15 19:53:19 alistair-XPS13 kernel: [  172.353306] xhci_hcd
0000:00:14.0: Looking for event-dma 0000000035b89580 trb-start
00000001faa39190 trb-end 00000001faa39190 seg-start 00000001faa39000
seg-end 00000001faa393f0
Mar 15 19:53:19 alistair-XPS13 kernel: [  172.353426] xhci_hcd
0000:00:14.0: ERROR Transfer event TRB DMA ptr not part of current TD
ep_index 8 comp_code 1
Mar 15 19:53:19 alistair-XPS13 kernel: [  172.353431] xhci_hcd
0000:00:14.0: Looking for event-dma 0000000035b89590 trb-start
00000001faa39190 trb-end 00000001faa39190 seg-start 00000001faa39000
seg-end 00000001faa393f0
Mar 15 19:53:19 alistair-XPS13 kernel: [  172.353551] xhci_hcd
0000:00:14.0: ERROR Transfer event TRB DMA ptr not part of current TD
ep_index 8 comp_code 1
Mar 15 19:53:19 alistair-XPS13 kernel: [  172.353556] xhci_hcd
0000:00:14.0: Looking for event-dma 0000000035b895a0 trb-start
00000001faa39190 trb-end 00000001faa39190 seg-start 00000001faa39000
seg-end 00000001faa393f0
Mar 15 19:53:19 alistair-XPS13 kernel: [  172.353675] xhci_hcd
0000:00:14.0: ERROR Transfer event TRB DMA ptr not part of current TD
ep_index 8 comp_code 1
Mar 15 19:53:19 alistair-XPS13 kernel: [  172.353681] xhci_hcd
0000:00:14.0: Looking for event-dma 0000000035b895b0 trb-start
00000001faa39190 trb-end 00000001faa39190 seg-start 00000001faa39000
seg-end 00000001faa393f0
Mar 15 19:53:19 alistair-XPS13 kernel: [  172.353800] xhci_hcd
0000:00:14.0: ERROR Transfer event TRB DMA ptr not part of current TD
ep_index 8 comp_code 1
Mar 15 19:53:19 alistair-XPS13 kernel: [  172.353803] xhci_hcd
0000:00:14.0: Looking for event-dma 0000000035b895c0 trb-start
00000001faa39190 trb-end 00000001faa39190 seg-start 00000001faa39000
seg-end 00000001faa393f0

...

Mar 15 19:56:05 alistair-XPS13 pulseaudio[3319]: [alsa-source-Cx231xx
Audio] alsa-util.c: Got POLLNVAL from ALSA
Mar 15 19:56:05 alistair-XPS13 pulseaudio[3319]: [alsa-source-Cx231xx
Audio] alsa-util.c: Could not recover from POLLERR|POLLNVAL|POLLHUP
with snd_pcm_prepare(): No such device
Mar 15 19:56:05 alistair-XPS13 kernel: [  337.898530] usb 1-2: USB
disconnect, device number 2
Mar 15 19:56:14 alistair-XPS13 pulseaudio[3319]: [alsa-sink-ALC3661
Analog] asyncq.c: q overrun, queuing locally
Mar 15 19:56:15 alistair-XPS13 pulseaudio[3319]: message repeated 10
times: [ [alsa-sink-ALC3661 Analog] asyncq.c: q overrun, queuing
locally]
Mar 15 19:56:19 alistair-XPS13 pulseaudio[3319]: [alsa-sink-HDMI 1]
asyncq.c: q overrun, queuing locally
Mar 15 19:56:24 alistair-XPS13 pulseaudio[3319]: [alsa-source-ALC3661
Analog] asyncq.c: q overrun, queuing locally
Mar 15 19:56:25 alistair-XPS13 pulseaudio[3319]: [alsa-sink-ALC3661
Analog] asyncq.c: q overrun, queuing locally
Mar 15 19:56:29 alistair-XPS13 pulseaudio[3319]: [alsa-source-ALC3661
Analog] asyncq.c: q overrun, queuing locally
Mar 15 19:56:29 alistair-XPS13 pulseaudio[3319]: [alsa-sink-ALC3661
Analog] asyncq.c: q overrun, queuing locally
Mar 15 19:56:34 alistair-XPS13 pulseaudio[3319]: [alsa-source-ALC3661
Analog] asyncq.c: q overrun, queuing locally
Mar 15 19:56:34 alistair-XPS13 pulseaudio[3319]: [alsa-sink-ALC3661
Analog] asyncq.c: q overrun, queuing locally
Mar 15 19:56:39 alistair-XPS13 pulseaudio[3319]: [alsa-source-ALC3661
Analog] asyncq.c: q overrun, queuing locally
Mar 15 19:56:39 alistair-XPS13 pulseaudio[3319]: [alsa-sink-ALC3661
Analog] asyncq.c: q overrun, queuing locally
Mar 15 19:56:44 alistair-XPS13 pulseaudio[3319]: [alsa-source-ALC3661
Analog] asyncq.c: q overrun, queuing locally
Mar 15 19:56:50 alistair-XPS13 pulseaudio[3319]: [alsa-sink-HDMI 1]
asyncq.c: q overrun, queuing locally
--

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [PATCH v2 1/1] usb: xhci: apply XHCI_AVOID_BEI quirk to all Intel xHCI controllers
  2015-03-15 19:18     ` Alistair Grant
@ 2015-03-16 12:55       ` Mathias Nyman
  2015-03-16 14:31         ` Alistair Grant
  0 siblings, 1 reply; 11+ messages in thread
From: Mathias Nyman @ 2015-03-16 12:55 UTC (permalink / raw)
  To: Alistair Grant, Lu Baolu, Mathias Nyman
  Cc: Devin Heitmueller, linux-usb, linux-kernel

On 15.03.2015 21:18, Alistair Grant wrote:
> On Sun, Mar 15, 2015 at 3:54 PM, Alistair Grant <akgrant0710@gmail.com> wrote:
>> On Thu, Mar 12, 2015 at 8:14 PM, Alistair Grant <akgrant0710@gmail.com> wrote:
>>> On Thu, Mar 12, 2015 at 11:15 AM, Lu Baolu <baolu.lu@linux.intel.com> wrote:
>>>> When a device with an isochronous endpoint is plugged into the Intel
>>>> xHCI host controller, and the driver submits multiple frames per URB,
>>>> the xHCI driver will set the Block Event Interrupt (BEI) flag on all
>>>> but the last TD for the URB. This causes the host controller to place
>>>> an event on the event ring, but not send an interrupt. When the last
>>>> TD for the URB completes, BEI is cleared, and we get an interrupt for
>>>> the whole URB.
>>>>
>>>> However, under Intel xHCI host controllers, if the event ring is full
>>>> of events from transfers with BEI set,  an "Event Ring is Full" event
>>>> will be posted to the last entry of the event ring,  but no interrupt
>>>> is generated. Host will cease all transfer and command executions and
>>>> wait until software completes handling the pending events in the event
>>>> ring.  That means xHC stops, but event of "event ring is full" is not
>>>> notified. As the result, the xHC looks like dead to user.
>>>>
>>>> This patch is to apply XHCI_AVOID_BEI quirk to Intel xHC devices. And
>>>> it should be backported to kernels as old as 3.0, that contains the
>>>> commit 69e848c2090a ("Intel xhci: Support EHCI/xHCI port switching.").
>>>>
>>>> Signed-off-by: Lu Baolu <baolu.lu@linux.intel.com>
>>>> Cc: stable@vger.kernel.org
>>>> ---
>>>>  drivers/usb/host/xhci-pci.c | 2 +-
>>>>  1 file changed, 1 insertion(+), 1 deletion(-)
>>>>
>>>> diff --git a/drivers/usb/host/xhci-pci.c b/drivers/usb/host/xhci-pci.c
>>>> index fd53c9e..2af32e2 100644
>>>> --- a/drivers/usb/host/xhci-pci.c
>>>> +++ b/drivers/usb/host/xhci-pci.c
>>>> @@ -115,6 +115,7 @@ static void xhci_pci_quirks(struct device *dev, struct xhci_hcd *xhci)
>>>>         if (pdev->vendor == PCI_VENDOR_ID_INTEL) {
>>>>                 xhci->quirks |= XHCI_LPM_SUPPORT;
>>>>                 xhci->quirks |= XHCI_INTEL_HOST;
>>>> +               xhci->quirks |= XHCI_AVOID_BEI;
>>>>         }
>>>>         if (pdev->vendor == PCI_VENDOR_ID_INTEL &&
>>>>                         pdev->device == PCI_DEVICE_ID_INTEL_PANTHERPOINT_XHCI) {
>>>> @@ -130,7 +131,6 @@ static void xhci_pci_quirks(struct device *dev, struct xhci_hcd *xhci)
>>>>                  * PPT chipsets.
>>>>                  */
>>>>                 xhci->quirks |= XHCI_SPURIOUS_REBOOT;
>>>> -               xhci->quirks |= XHCI_AVOID_BEI;
>>>>         }
>>>>         if (pdev->vendor == PCI_VENDOR_ID_INTEL &&
>>>>                 pdev->device == PCI_DEVICE_ID_INTEL_LYNXPOINT_LP_XHCI) {
>>>> --
>>>> 2.1.0
>>>>
>>>> --
>>>
>>> This works for me...
>>>
>>> Computer: Dell XPS13 9333
>>> USB controller: Intel Corporation 8 Series USB xHCI HC (rev 04)
>>> (prog-if 30 [XHCI])
>>> Kernel: 3.19.1
>>> USB Device: Hauppauge USB-Live2
>>>
>>> Please let me know if I can help in any other way.
>>>
>>> Tested-by: Alistair Grant <akgrant0710@gmail.com>
>>
>> Just FYI...
>>
>> I was able to test this on a slightly older laptop that had both USB2
>> and USB3 ports and can confirm that it also works there:
>>
>> 00:14.0 USB controller: Intel Corporation 7 Series/C210 Series Chipset
>> Family USB xHCI Host Controller (rev 04)
> 
> It looks like I may have signed-off a little too soon.  While the patch is
> working correctly if the Hauppauge Live2 is plugged in after the system has
> booted and settled down (my normal use case), it fails if the Live2 is
> plugged in while the system is booted up.
> 
> Unplugging the Live2 after recording (which appears to succeed from the
> command line, but had no audio), executing lsusb just hangs.
> 
> I've included what I think is the relevant portions of /var/log/syslog
> below.  If you'd like the entire log file posted somewhere please let me
> know.

Hi

What kernel did you try this patch on?

The output look a bit like the regression in 4.0-rc3 caused by:
commit 27082e2654dc148078b0abdfc3c8e5ccbde0ebfa
    xhci: Clear the host side toggle manually when endpoint is 'soft reset'

which will be reverted (in 4.0-rc5 I hope).

If you boot the same base kernel without the patch does it work then? 

-Mathias


^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [PATCH v2 1/1] usb: xhci: apply XHCI_AVOID_BEI quirk to all Intel xHCI controllers
  2015-03-16 12:55       ` Mathias Nyman
@ 2015-03-16 14:31         ` Alistair Grant
  2015-03-16 14:47           ` Mathias Nyman
  0 siblings, 1 reply; 11+ messages in thread
From: Alistair Grant @ 2015-03-16 14:31 UTC (permalink / raw)
  To: Mathias Nyman
  Cc: Lu Baolu, Mathias Nyman, Devin Heitmueller, linux-usb, linux-kernel

On Mon, Mar 16, 2015 at 1:55 PM, Mathias Nyman
<mathias.nyman@linux.intel.com> wrote:
> On 15.03.2015 21:18, Alistair Grant wrote:
>> On Sun, Mar 15, 2015 at 3:54 PM, Alistair Grant <akgrant0710@gmail.com> wrote:
>>> On Thu, Mar 12, 2015 at 8:14 PM, Alistair Grant <akgrant0710@gmail.com> wrote:
>>>> On Thu, Mar 12, 2015 at 11:15 AM, Lu Baolu <baolu.lu@linux.intel.com> wrote:
>>>>> When a device with an isochronous endpoint is plugged into the Intel
>>>>> xHCI host controller, and the driver submits multiple frames per URB,
>>>>> the xHCI driver will set the Block Event Interrupt (BEI) flag on all
>>>>> but the last TD for the URB. This causes the host controller to place
>>>>> an event on the event ring, but not send an interrupt. When the last
>>>>> TD for the URB completes, BEI is cleared, and we get an interrupt for
>>>>> the whole URB.
>>>>>
>>>>> However, under Intel xHCI host controllers, if the event ring is full
>>>>> of events from transfers with BEI set,  an "Event Ring is Full" event
>>>>> will be posted to the last entry of the event ring,  but no interrupt
>>>>> is generated. Host will cease all transfer and command executions and
>>>>> wait until software completes handling the pending events in the event
>>>>> ring.  That means xHC stops, but event of "event ring is full" is not
>>>>> notified. As the result, the xHC looks like dead to user.
>>>>>
>>>>> This patch is to apply XHCI_AVOID_BEI quirk to Intel xHC devices. And
>>>>> it should be backported to kernels as old as 3.0, that contains the
>>>>> commit 69e848c2090a ("Intel xhci: Support EHCI/xHCI port switching.").
>>>>>
>>>>> Signed-off-by: Lu Baolu <baolu.lu@linux.intel.com>
>>>>> Cc: stable@vger.kernel.org
>>>>> ---
>>>>>  drivers/usb/host/xhci-pci.c | 2 +-
>>>>>  1 file changed, 1 insertion(+), 1 deletion(-)
>>>>>
>>>>> diff --git a/drivers/usb/host/xhci-pci.c b/drivers/usb/host/xhci-pci.c
>>>>> index fd53c9e..2af32e2 100644
>>>>> --- a/drivers/usb/host/xhci-pci.c
>>>>> +++ b/drivers/usb/host/xhci-pci.c
>>>>> @@ -115,6 +115,7 @@ static void xhci_pci_quirks(struct device *dev, struct xhci_hcd *xhci)
>>>>>         if (pdev->vendor == PCI_VENDOR_ID_INTEL) {
>>>>>                 xhci->quirks |= XHCI_LPM_SUPPORT;
>>>>>                 xhci->quirks |= XHCI_INTEL_HOST;
>>>>> +               xhci->quirks |= XHCI_AVOID_BEI;
>>>>>         }
>>>>>         if (pdev->vendor == PCI_VENDOR_ID_INTEL &&
>>>>>                         pdev->device == PCI_DEVICE_ID_INTEL_PANTHERPOINT_XHCI) {
>>>>> @@ -130,7 +131,6 @@ static void xhci_pci_quirks(struct device *dev, struct xhci_hcd *xhci)
>>>>>                  * PPT chipsets.
>>>>>                  */
>>>>>                 xhci->quirks |= XHCI_SPURIOUS_REBOOT;
>>>>> -               xhci->quirks |= XHCI_AVOID_BEI;
>>>>>         }
>>>>>         if (pdev->vendor == PCI_VENDOR_ID_INTEL &&
>>>>>                 pdev->device == PCI_DEVICE_ID_INTEL_LYNXPOINT_LP_XHCI) {
>>>>> --
>>>>> 2.1.0
>>>>>
>>>>> --
>>>>
>>>> This works for me...
>>>>
>>>> Computer: Dell XPS13 9333
>>>> USB controller: Intel Corporation 8 Series USB xHCI HC (rev 04)
>>>> (prog-if 30 [XHCI])
>>>> Kernel: 3.19.1
>>>> USB Device: Hauppauge USB-Live2
>>>>
>>>> Please let me know if I can help in any other way.
>>>>
>>>> Tested-by: Alistair Grant <akgrant0710@gmail.com>
>>>
>>> Just FYI...
>>>
>>> I was able to test this on a slightly older laptop that had both USB2
>>> and USB3 ports and can confirm that it also works there:
>>>
>>> 00:14.0 USB controller: Intel Corporation 7 Series/C210 Series Chipset
>>> Family USB xHCI Host Controller (rev 04)
>>
>> It looks like I may have signed-off a little too soon.  While the patch is
>> working correctly if the Hauppauge Live2 is plugged in after the system has
>> booted and settled down (my normal use case), it fails if the Live2 is
>> plugged in while the system is booted up.
>>
>> Unplugging the Live2 after recording (which appears to succeed from the
>> command line, but had no audio), executing lsusb just hangs.
>>
>> I've included what I think is the relevant portions of /var/log/syslog
>> below.  If you'd like the entire log file posted somewhere please let me
>> know.
>
> Hi
>
> What kernel did you try this patch on?
>
> The output look a bit like the regression in 4.0-rc3 caused by:
> commit 27082e2654dc148078b0abdfc3c8e5ccbde0ebfa
>     xhci: Clear the host side toggle manually when endpoint is 'soft reset'
>
> which will be reverted (in 4.0-rc5 I hope).
>
> If you boot the same base kernel without the patch does it work then?
>
> -Mathias
>

Hi Mathias,

This is on top of 3.19.1 with only the XHCI_AVOID_BEI quirk patch applied.

If you'd like me to try it against 4.0-rc3, 4 or 5, please let me know.

Thanks,
Alistair

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [PATCH v2 1/1] usb: xhci: apply XHCI_AVOID_BEI quirk to all Intel xHCI controllers
  2015-03-16 14:31         ` Alistair Grant
@ 2015-03-16 14:47           ` Mathias Nyman
  2015-03-16 15:21             ` Alistair Grant
  0 siblings, 1 reply; 11+ messages in thread
From: Mathias Nyman @ 2015-03-16 14:47 UTC (permalink / raw)
  To: Alistair Grant, Mathias Nyman
  Cc: Lu Baolu, Devin Heitmueller, linux-usb, linux-kernel

On 16.03.2015 16:31, Alistair Grant wrote:
> On Mon, Mar 16, 2015 at 1:55 PM, Mathias Nyman
> <mathias.nyman@linux.intel.com> wrote:
>> On 15.03.2015 21:18, Alistair Grant wrote:
>>> On Sun, Mar 15, 2015 at 3:54 PM, Alistair Grant <akgrant0710@gmail.com> wrote:
>>>> On Thu, Mar 12, 2015 at 8:14 PM, Alistair Grant <akgrant0710@gmail.com> wrote:
>>>>> On Thu, Mar 12, 2015 at 11:15 AM, Lu Baolu <baolu.lu@linux.intel.com> wrote:
>>>>>> When a device with an isochronous endpoint is plugged into the Intel
>>>>>> xHCI host controller, and the driver submits multiple frames per URB,
>>>>>> the xHCI driver will set the Block Event Interrupt (BEI) flag on all
>>>>>> but the last TD for the URB. This causes the host controller to place
>>>>>> an event on the event ring, but not send an interrupt. When the last
>>>>>> TD for the URB completes, BEI is cleared, and we get an interrupt for
>>>>>> the whole URB.
>>>>>>
>>>>>> However, under Intel xHCI host controllers, if the event ring is full
>>>>>> of events from transfers with BEI set,  an "Event Ring is Full" event
>>>>>> will be posted to the last entry of the event ring,  but no interrupt
>>>>>> is generated. Host will cease all transfer and command executions and
>>>>>> wait until software completes handling the pending events in the event
>>>>>> ring.  That means xHC stops, but event of "event ring is full" is not
>>>>>> notified. As the result, the xHC looks like dead to user.
>>>>>>
>>>>>> This patch is to apply XHCI_AVOID_BEI quirk to Intel xHC devices. And
>>>>>> it should be backported to kernels as old as 3.0, that contains the
>>>>>> commit 69e848c2090a ("Intel xhci: Support EHCI/xHCI port switching.").
>>>>>>
>>>>>> Signed-off-by: Lu Baolu <baolu.lu@linux.intel.com>
>>>>>> Cc: stable@vger.kernel.org
>>>>>> ---
>>>>>>  drivers/usb/host/xhci-pci.c | 2 +-
>>>>>>  1 file changed, 1 insertion(+), 1 deletion(-)
>>>>>>
>>>>>> diff --git a/drivers/usb/host/xhci-pci.c b/drivers/usb/host/xhci-pci.c
>>>>>> index fd53c9e..2af32e2 100644
>>>>>> --- a/drivers/usb/host/xhci-pci.c
>>>>>> +++ b/drivers/usb/host/xhci-pci.c
>>>>>> @@ -115,6 +115,7 @@ static void xhci_pci_quirks(struct device *dev, struct xhci_hcd *xhci)
>>>>>>         if (pdev->vendor == PCI_VENDOR_ID_INTEL) {
>>>>>>                 xhci->quirks |= XHCI_LPM_SUPPORT;
>>>>>>                 xhci->quirks |= XHCI_INTEL_HOST;
>>>>>> +               xhci->quirks |= XHCI_AVOID_BEI;
>>>>>>         }
>>>>>>         if (pdev->vendor == PCI_VENDOR_ID_INTEL &&
>>>>>>                         pdev->device == PCI_DEVICE_ID_INTEL_PANTHERPOINT_XHCI) {
>>>>>> @@ -130,7 +131,6 @@ static void xhci_pci_quirks(struct device *dev, struct xhci_hcd *xhci)
>>>>>>                  * PPT chipsets.
>>>>>>                  */
>>>>>>                 xhci->quirks |= XHCI_SPURIOUS_REBOOT;
>>>>>> -               xhci->quirks |= XHCI_AVOID_BEI;
>>>>>>         }
>>>>>>         if (pdev->vendor == PCI_VENDOR_ID_INTEL &&
>>>>>>                 pdev->device == PCI_DEVICE_ID_INTEL_LYNXPOINT_LP_XHCI) {
>>>>>> --
>>>>>> 2.1.0
>>>>>>
>>>>>> --
>>>>>
>>>>> This works for me...
>>>>>
>>>>> Computer: Dell XPS13 9333
>>>>> USB controller: Intel Corporation 8 Series USB xHCI HC (rev 04)
>>>>> (prog-if 30 [XHCI])
>>>>> Kernel: 3.19.1
>>>>> USB Device: Hauppauge USB-Live2
>>>>>
>>>>> Please let me know if I can help in any other way.
>>>>>
>>>>> Tested-by: Alistair Grant <akgrant0710@gmail.com>
>>>>
>>>> Just FYI...
>>>>
>>>> I was able to test this on a slightly older laptop that had both USB2
>>>> and USB3 ports and can confirm that it also works there:
>>>>
>>>> 00:14.0 USB controller: Intel Corporation 7 Series/C210 Series Chipset
>>>> Family USB xHCI Host Controller (rev 04)
>>>
>>> It looks like I may have signed-off a little too soon.  While the patch is
>>> working correctly if the Hauppauge Live2 is plugged in after the system has
>>> booted and settled down (my normal use case), it fails if the Live2 is
>>> plugged in while the system is booted up.
>>>
>>> Unplugging the Live2 after recording (which appears to succeed from the
>>> command line, but had no audio), executing lsusb just hangs.
>>>
>>> I've included what I think is the relevant portions of /var/log/syslog
>>> below.  If you'd like the entire log file posted somewhere please let me
>>> know.
>>
>> Hi
>>
>> What kernel did you try this patch on?
>>
>> The output look a bit like the regression in 4.0-rc3 caused by:
>> commit 27082e2654dc148078b0abdfc3c8e5ccbde0ebfa
>>     xhci: Clear the host side toggle manually when endpoint is 'soft reset'
>>
>> which will be reverted (in 4.0-rc5 I hope).
>>
>> If you boot the same base kernel without the patch does it work then?
>>
>> -Mathias
>>
> 
> Hi Mathias,
> 
> This is on top of 3.19.1 with only the XHCI_AVOID_BEI quirk patch applied.
> 
> If you'd like me to try it against 4.0-rc3, 4 or 5, please let me know.

Thanks, no that's not needed. 
But did the patch cause regression on top of 3.19.1?
I mean, did it make 3.19.1  worse, better or just different for you, while
booting with the device connected?

-Mathias

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [PATCH v2 1/1] usb: xhci: apply XHCI_AVOID_BEI quirk to all Intel xHCI controllers
  2015-03-16 14:47           ` Mathias Nyman
@ 2015-03-16 15:21             ` Alistair Grant
  2015-03-16 16:29               ` Mathias Nyman
  0 siblings, 1 reply; 11+ messages in thread
From: Alistair Grant @ 2015-03-16 15:21 UTC (permalink / raw)
  To: Mathias Nyman
  Cc: Mathias Nyman, Lu Baolu, Devin Heitmueller, linux-usb, linux-kernel

On Mon, Mar 16, 2015 at 3:47 PM, Mathias Nyman <mathias.nyman@intel.com> wrote:
> On 16.03.2015 16:31, Alistair Grant wrote:
>> On Mon, Mar 16, 2015 at 1:55 PM, Mathias Nyman
>> <mathias.nyman@linux.intel.com> wrote:
>>> On 15.03.2015 21:18, Alistair Grant wrote:
>>>> On Sun, Mar 15, 2015 at 3:54 PM, Alistair Grant <akgrant0710@gmail.com> wrote:
>>>>> On Thu, Mar 12, 2015 at 8:14 PM, Alistair Grant <akgrant0710@gmail.com> wrote:
>>>>>> On Thu, Mar 12, 2015 at 11:15 AM, Lu Baolu <baolu.lu@linux.intel.com> wrote:
>>>>>>> When a device with an isochronous endpoint is plugged into the Intel
>>>>>>> xHCI host controller, and the driver submits multiple frames per URB,
>>>>>>> the xHCI driver will set the Block Event Interrupt (BEI) flag on all
>>>>>>> but the last TD for the URB. This causes the host controller to place
>>>>>>> an event on the event ring, but not send an interrupt. When the last
>>>>>>> TD for the URB completes, BEI is cleared, and we get an interrupt for
>>>>>>> the whole URB.
>>>>>>>
>>>>>>> However, under Intel xHCI host controllers, if the event ring is full
>>>>>>> of events from transfers with BEI set,  an "Event Ring is Full" event
>>>>>>> will be posted to the last entry of the event ring,  but no interrupt
>>>>>>> is generated. Host will cease all transfer and command executions and
>>>>>>> wait until software completes handling the pending events in the event
>>>>>>> ring.  That means xHC stops, but event of "event ring is full" is not
>>>>>>> notified. As the result, the xHC looks like dead to user.
>>>>>>>
>>>>>>> This patch is to apply XHCI_AVOID_BEI quirk to Intel xHC devices. And
>>>>>>> it should be backported to kernels as old as 3.0, that contains the
>>>>>>> commit 69e848c2090a ("Intel xhci: Support EHCI/xHCI port switching.").
>>>>>>>
>>>>>>> Signed-off-by: Lu Baolu <baolu.lu@linux.intel.com>
>>>>>>> Cc: stable@vger.kernel.org
>>>>>>> ---
>>>>>>>  drivers/usb/host/xhci-pci.c | 2 +-
>>>>>>>  1 file changed, 1 insertion(+), 1 deletion(-)
>>>>>>>
>>>>>>> diff --git a/drivers/usb/host/xhci-pci.c b/drivers/usb/host/xhci-pci.c
>>>>>>> index fd53c9e..2af32e2 100644
>>>>>>> --- a/drivers/usb/host/xhci-pci.c
>>>>>>> +++ b/drivers/usb/host/xhci-pci.c
>>>>>>> @@ -115,6 +115,7 @@ static void xhci_pci_quirks(struct device *dev, struct xhci_hcd *xhci)
>>>>>>>         if (pdev->vendor == PCI_VENDOR_ID_INTEL) {
>>>>>>>                 xhci->quirks |= XHCI_LPM_SUPPORT;
>>>>>>>                 xhci->quirks |= XHCI_INTEL_HOST;
>>>>>>> +               xhci->quirks |= XHCI_AVOID_BEI;
>>>>>>>         }
>>>>>>>         if (pdev->vendor == PCI_VENDOR_ID_INTEL &&
>>>>>>>                         pdev->device == PCI_DEVICE_ID_INTEL_PANTHERPOINT_XHCI) {
>>>>>>> @@ -130,7 +131,6 @@ static void xhci_pci_quirks(struct device *dev, struct xhci_hcd *xhci)
>>>>>>>                  * PPT chipsets.
>>>>>>>                  */
>>>>>>>                 xhci->quirks |= XHCI_SPURIOUS_REBOOT;
>>>>>>> -               xhci->quirks |= XHCI_AVOID_BEI;
>>>>>>>         }
>>>>>>>         if (pdev->vendor == PCI_VENDOR_ID_INTEL &&
>>>>>>>                 pdev->device == PCI_DEVICE_ID_INTEL_LYNXPOINT_LP_XHCI) {
>>>>>>> --
>>>>>>> 2.1.0
>>>>>>>
>>>>>>> --
>>>>>>
>>>>>> This works for me...
>>>>>>
>>>>>> Computer: Dell XPS13 9333
>>>>>> USB controller: Intel Corporation 8 Series USB xHCI HC (rev 04)
>>>>>> (prog-if 30 [XHCI])
>>>>>> Kernel: 3.19.1
>>>>>> USB Device: Hauppauge USB-Live2
>>>>>>
>>>>>> Please let me know if I can help in any other way.
>>>>>>
>>>>>> Tested-by: Alistair Grant <akgrant0710@gmail.com>
>>>>>
>>>>> Just FYI...
>>>>>
>>>>> I was able to test this on a slightly older laptop that had both USB2
>>>>> and USB3 ports and can confirm that it also works there:
>>>>>
>>>>> 00:14.0 USB controller: Intel Corporation 7 Series/C210 Series Chipset
>>>>> Family USB xHCI Host Controller (rev 04)
>>>>
>>>> It looks like I may have signed-off a little too soon.  While the patch is
>>>> working correctly if the Hauppauge Live2 is plugged in after the system has
>>>> booted and settled down (my normal use case), it fails if the Live2 is
>>>> plugged in while the system is booted up.
>>>>
>>>> Unplugging the Live2 after recording (which appears to succeed from the
>>>> command line, but had no audio), executing lsusb just hangs.
>>>>
>>>> I've included what I think is the relevant portions of /var/log/syslog
>>>> below.  If you'd like the entire log file posted somewhere please let me
>>>> know.
>>>
>>> Hi
>>>
>>> What kernel did you try this patch on?
>>>
>>> The output look a bit like the regression in 4.0-rc3 caused by:
>>> commit 27082e2654dc148078b0abdfc3c8e5ccbde0ebfa
>>>     xhci: Clear the host side toggle manually when endpoint is 'soft reset'
>>>
>>> which will be reverted (in 4.0-rc5 I hope).
>>>
>>> If you boot the same base kernel without the patch does it work then?
>>>
>>> -Mathias
>>>
>>
>> Hi Mathias,
>>
>> This is on top of 3.19.1 with only the XHCI_AVOID_BEI quirk patch applied.
>>
>> If you'd like me to try it against 4.0-rc3, 4 or 5, please let me know.
>
> Thanks, no that's not needed.
> But did the patch cause regression on top of 3.19.1?
> I mean, did it make 3.19.1  worse, better or just different for you, while
> booting with the device connected?

Recording doesn't work at all with 3.19.1 without the patch.  I've
included an extract from syslog below of attempting to record with a
clean 3.19.1 system (i.e. XHCI_AVOID_BEI quirk patch NOT applied, to
state the obvious).

I did mean to say in my original message that I would still release
this patch even with the current known issue as it still improves the
overall stability of the system.

Thanks again,
Alistair
--

Mar 15 12:06:19 alistair-XPS13 kernel: [    0.000000] Linux version
3.19.1 (alistair@alistair-XPS13) (gcc version 4.9.1 (Ubuntu
4.9.1-16ubuntu6) ) #5 SMP Sun Mar 15 10:28:35 CET 2015
...
Mar 15 12:07:02 alistair-XPS13 kernel: [   61.662479] usb 1-2: new
high-speed USB device number 5 using xhci_hcd
Mar 15 12:07:02 alistair-XPS13 kernel: [   61.792722] usb 1-2: New USB
device found, idVendor=2040, idProduct=c200
Mar 15 12:07:02 alistair-XPS13 kernel: [   61.792729] usb 1-2: New USB
device strings: Mfr=1, Product=2, SerialNumber=3
Mar 15 12:07:02 alistair-XPS13 kernel: [   61.792733] usb 1-2:
Product: Hauppauge Device
Mar 15 12:07:02 alistair-XPS13 kernel: [   61.792736] usb 1-2:
Manufacturer: Hauppauge
Mar 15 12:07:02 alistair-XPS13 kernel: [   61.792739] usb 1-2:
SerialNumber: 0011446325
Mar 15 12:07:02 alistair-XPS13 mtp-probe: checking bus 1, device 5:
"/sys/devices/pci0000:00/0000:00:14.0/usb1/1-2"
Mar 15 12:07:02 alistair-XPS13 mtp-probe: bus: 1, device: 5 was not an
MTP device
Mar 15 12:07:02 alistair-XPS13 kernel: [   61.938430] cx231xx 1-2:1.1:
New device Hauppauge Hauppauge Device @ 480 Mbps (2040:c200) with 6
interfaces
Mar 15 12:07:02 alistair-XPS13 kernel: [   61.938474] cx231xx 1-2:1.1:
can't change interface 3 alt no. to 3: Max. Pkt size = 0
Mar 15 12:07:02 alistair-XPS13 kernel: [   61.939860] cx231xx 1-2:1.1:
can't change interface 4 alt no. to 1: Max. Pkt size = 0
Mar 15 12:07:02 alistair-XPS13 kernel: [   61.941018] cx231xx 1-2:1.1:
Identified as Hauppauge USB Live 2 (card=9)
Mar 15 12:07:02 alistair-XPS13 kernel: [   61.941223] i2c i2c-10:
Added multiplexed i2c bus 12
Mar 15 12:07:02 alistair-XPS13 kernel: [   61.941268] i2c i2c-10:
Added multiplexed i2c bus 13
Mar 15 12:07:02 alistair-XPS13 kernel: [   62.051171] cx25840 9-0044:
cx23102 A/V decoder found @ 0x88 (cx231xx #0-0)
Mar 15 12:07:04 alistair-XPS13 kernel: [   64.035849] cx25840 9-0044:
loaded v4l-cx231xx-avcore-01.fw firmware (16382 bytes)
Mar 15 12:07:04 alistair-XPS13 kernel: [   64.068048] cx231xx 1-2:1.1:
v4l2 driver version 0.0.3
Mar 15 12:07:04 alistair-XPS13 kernel: [   64.158972] cx231xx 1-2:1.1:
Registered video device video1 [v4l2]
Mar 15 12:07:04 alistair-XPS13 kernel: [   64.159120] cx231xx 1-2:1.1:
Registered VBI device vbi0
Mar 15 12:07:04 alistair-XPS13 kernel: [   64.159126] cx231xx 1-2:1.1:
video EndPoint Addr 0x84, Alternate settings: 5
Mar 15 12:07:04 alistair-XPS13 kernel: [   64.159131] cx231xx 1-2:1.1:
VBI EndPoint Addr 0x85, Alternate settings: 2
Mar 15 12:07:04 alistair-XPS13 kernel: [   64.159134] cx231xx 1-2:1.1:
sliced CC EndPoint Addr 0x86, Alternate settings: 2
Mar 15 12:07:04 alistair-XPS13 kernel: [   64.162650] usbcore:
registered new interface driver cx231xx
Mar 15 12:07:04 alistair-XPS13 kernel: [   64.207250] cx231xx 1-2:1.1:
audio EndPoint Addr 0x83, Alternate settings: 3
Mar 15 12:07:04 alistair-XPS13 kernel: [   64.207257] cx231xx 1-2:1.1:
Cx231xx Audio Extension initialized
Mar 15 12:07:04 alistair-XPS13 pulseaudio[3267]: [pulseaudio]
source.c: Default and alternate sample rates are the same.
Mar 15 12:07:04 alistair-XPS13 rtkit-daemon[2122]: Successfully made
thread 3840 of process 3267 (n/a) owned by '1000' RT at priority 5.
Mar 15 12:07:04 alistair-XPS13 rtkit-daemon[2122]: Supervising 5
threads of 1 processes of 1 users.
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.743926] xhci_hcd
0000:00:14.0: xHCI host not responding to stop endpoint command.
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.743935] xhci_hcd
0000:00:14.0: Assuming host is dying, halting host.
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.744038] usb 1-2: Not
enough bandwidth for altsetting 0
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.744045] xhci_hcd
0000:00:14.0: HC died; cleaning up
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.744048] cx231xx 1-2:1.1:
can't change interface 2 alt no. to 0 (err=-19)
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.744051] cx231xx 1-2:1.1:
failed to set alternate setting !
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.744141] cx231xx 1-2:1.1:
cx231xx_send_usb_command: failed with status --19
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.744150] cx231xx 1-2:1.1:
cx231xx_send_usb_command: failed with status --19
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.744181] usb 1-2: USB
disconnect, device number 5
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.744461] cx231xx 1-2:1.1:
device video1 is open! Deregistration and memory deallocation are
deferred on close.
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.773315] usb 1-2:1.1:
V4L2 device vbi0 deregistered
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.773851] ------------[
cut here ]------------
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.773863] WARNING: CPU: 3
PID: 3871 at fs/sysfs/group.c:219 sysfs_remove_group+0xa1/0xb0()
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.773866] sysfs group
ffffffff81cc06a0 not found for kobject 'vbi0'
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.773869] Modules linked
in: cx231xx_alsa cx25840 cx231xx videobuf_vmalloc tveeprom cx2341x
rc_core videobuf_core i2c_mux ctr ccm pci_stub vboxpci(OE)
vboxnetadp(OE) vboxnetflt(OE) vboxdrv(OE) xt_CHECKSUM iptable_mangle
xt_tcpudp bridge stp llc iptable_filter ip_tables x_tables arc4
dm_crypt iwlmvm mac80211 rpcsec_gss_krb5 nfsv4 iwlwifi uvcvideo
intel_rapl iosf_mbi x86_pkg_temp_thermal intel_powerclamp
videobuf2_vmalloc kvm_intel joydev videobuf2_memops videobuf2_core
hid_rmi btusb snd_soc_rt5640 snd_soc_rl6231 snd_hda_codec_realtek
snd_hda_codec_generic hid_multitouch dell_wmi sparse_keymap
v4l2_common snd_hda_codec_hdmi videodev kvm cfg80211 media dell_laptop
snd_soc_core dcdbas snd_hda_intel crct10dif_pclmul snd_hda_controller
crc32_pclmul snd_compress ghash_clmulni_intel aesni_intel aes_x86_64
snd_hda_codec lrw gf128mul glue_helper ablk_helper cryptd
snd_pcm_dmaengine snd_seq_midi snd_hwdep snd_seq_midi_event
snd_rawmidi serio_raw mei_me snd_pcm mei snd_seq shpchp lpc_ich
snd_seq_device snd_timer snd i2c_hid soundcore i2c_designware_platform
dw_dmac snd_soc_sst_acpi i2c_designware_core 8250_dw
spi_pxa2xx_platform dw_dmac_core nfsd intel_rst mac_hid
intel_smartconnect auth_rpcgss rfcomm bnep nfs_acl nfs bluetooth lockd
grace sunrpc parport_pc ppdev coretemp lp parport fscache btrfs xor
raid6_pq i915 i2c_algo_bit drm_kms_helper usbhid ahci drm psmouse
libahci sdhci_acpi hid wmi sdhci video
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.774015] CPU: 3 PID: 3871
Comm: mythffmpeg Tainted: G           OE  3.19.1 #5
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.774018] Hardware name:
Dell Inc. XPS13 9333/099TN4, BIOS A06 11/07/2014
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.774021]
ffffffff81ab926e ffff8800bdadbc78 ffffffff817a2883 0000000000000007
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.774027]
ffff8800bdadbcc8 ffff8800bdadbcb8 ffffffff8107324a ffff8800bdadbcd8
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.774031]
0000000000000000 ffffffff81cc06a0 ffff8800babe8898 ffff8800adaa11a0
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.774036] Call Trace:
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.774045]
[<ffffffff817a2883>] dump_stack+0x45/0x57
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.774051]
[<ffffffff8107324a>] warn_slowpath_common+0x8a/0xc0
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.774058]
[<ffffffff810732c6>] warn_slowpath_fmt+0x46/0x50
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.774065]
[<ffffffff8126539c>] ? kernfs_find_and_get_ns+0x4c/0x60
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.774070]
[<ffffffff81268c81>] sysfs_remove_group+0xa1/0xb0
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.774076]
[<ffffffff814f2ce7>] dpm_sysfs_remove+0x57/0x60
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.774083]
[<ffffffff814e6738>] device_del+0x58/0x270
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.774089]
[<ffffffff814e6972>] device_unregister+0x22/0x80
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.774104]
[<ffffffffc0b80848>] video_unregister_device+0x58/0x60 [videodev]
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.774115]
[<ffffffffc0f210c5>] cx231xx_release_analog_resources+0x125/0x170
[cx231xx]
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.774123]
[<ffffffffc0f23686>] cx231xx_release_resources+0x16/0x60 [cx231xx]
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.774131]
[<ffffffffc0f1f747>] cx231xx_v4l2_close+0x1e7/0x2d0 [cx231xx]
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.774142]
[<ffffffffc0b80498>] v4l2_release+0x38/0x80 [videodev]
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.774149]
[<ffffffff811ee267>] __fput+0xe7/0x250
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.774154]
[<ffffffff811ee41e>] ____fput+0xe/0x10
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.774160]
[<ffffffff81090b77>] task_work_run+0xb7/0xf0
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.774168]
[<ffffffff81014197>] do_notify_resume+0x97/0xb0
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.774175]
[<ffffffff817a9e0f>] int_signal+0x12/0x17
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.774179] ---[ end trace
d59337737e676686 ]---
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.774412] usb 1-3: USB
disconnect, device number 2
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.779434] usb 1-2:1.1:
V4L2 device video1 deregistered
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.779443] ------------[
cut here ]------------
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.779451] WARNING: CPU: 2
PID: 3871 at fs/sysfs/group.c:219 sysfs_remove_group+0xa1/0xb0()
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.779454] sysfs group
ffffffff81cc06a0 not found for kobject 'video1'
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.779456] Modules linked
in: cx231xx_alsa cx25840 cx231xx videobuf_vmalloc tveeprom cx2341x
rc_core videobuf_core i2c_mux ctr ccm pci_stub vboxpci(OE)
vboxnetadp(OE) vboxnetflt(OE) vboxdrv(OE) xt_CHECKSUM iptable_mangle
xt_tcpudp bridge stp llc iptable_filter ip_tables x_tables arc4
dm_crypt iwlmvm mac80211 rpcsec_gss_krb5 nfsv4 iwlwifi uvcvideo
intel_rapl iosf_mbi x86_pkg_temp_thermal intel_powerclamp
videobuf2_vmalloc kvm_intel joydev videobuf2_memops videobuf2_core
hid_rmi btusb snd_soc_rt5640 snd_soc_rl6231 snd_hda_codec_realtek
snd_hda_codec_generic hid_multitouch dell_wmi sparse_keymap
v4l2_common snd_hda_codec_hdmi videodev kvm cfg80211 media dell_laptop
snd_soc_core dcdbas snd_hda_intel crct10dif_pclmul snd_hda_controller
crc32_pclmul snd_compress ghash_clmulni_intel aesni_intel aes_x86_64
snd_hda_codec lrw gf128mul glue_helper ablk_helper cryptd
snd_pcm_dmaengine snd_seq_midi snd_hwdep snd_seq_midi_event
snd_rawmidi serio_raw mei_me snd_pcm mei snd_seq shpchp lpc_ich
snd_seq_device snd_timer snd i2c_hid soundcore i2c_designware_platform
dw_dmac snd_soc_sst_acpi i2c_designware_core 8250_dw
spi_pxa2xx_platform dw_dmac_core nfsd intel_rst mac_hid
intel_smartconnect auth_rpcgss rfcomm bnep nfs_acl nfs bluetooth lockd
grace sunrpc parport_pc ppdev coretemp lp parport fscache btrfs xor
raid6_pq i915 i2c_algo_bit drm_kms_helper usbhid ahci drm psmouse
libahci sdhci_acpi hid wmi sdhci video
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.779583] CPU: 2 PID: 3871
Comm: mythffmpeg Tainted: G        W  OE  3.19.1 #5
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.779585] Hardware name:
Dell Inc. XPS13 9333/099TN4, BIOS A06 11/07/2014
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.779588]
ffffffff81ab926e ffff8800bdadbc78 ffffffff817a2883 0000000000000007
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.779593]
ffff8800bdadbcc8 ffff8800bdadbcb8 ffffffff8107324a ffff8800b0b69708
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.779597]
0000000000000000 ffffffff81cc06a0 ffff8800babe9098 ffff8800adaa11a0
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.779602] Call Trace:
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.779609]
[<ffffffff817a2883>] dump_stack+0x45/0x57
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.779616]
[<ffffffff8107324a>] warn_slowpath_common+0x8a/0xc0
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.779621]
[<ffffffff810732c6>] warn_slowpath_fmt+0x46/0x50
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.779627]
[<ffffffff8126539c>] ? kernfs_find_and_get_ns+0x4c/0x60
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.779631]
[<ffffffff81268c81>] sysfs_remove_group+0xa1/0xb0
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.779636]
[<ffffffff814f2ce7>] dpm_sysfs_remove+0x57/0x60
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.779641]
[<ffffffff814e6738>] device_del+0x58/0x270
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.779646]
[<ffffffff814e6972>] device_unregister+0x22/0x80
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.779658]
[<ffffffffc0b80848>] video_unregister_device+0x58/0x60 [videodev]
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.779666]
[<ffffffffc0f210b5>] cx231xx_release_analog_resources+0x115/0x170
[cx231xx]
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.779673]
[<ffffffffc0f23686>] cx231xx_release_resources+0x16/0x60 [cx231xx]
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.779679]
[<ffffffffc0f1f747>] cx231xx_v4l2_close+0x1e7/0x2d0 [cx231xx]
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.779689]
[<ffffffffc0b80498>] v4l2_release+0x38/0x80 [videodev]
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.779694]
[<ffffffff811ee267>] __fput+0xe7/0x250
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.779698]
[<ffffffff811ee41e>] ____fput+0xe/0x10
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.779702]
[<ffffffff81090b77>] task_work_run+0xb7/0xf0
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.779709]
[<ffffffff81014197>] do_notify_resume+0x97/0xb0
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.779715]
[<ffffffff817a9e0f>] int_signal+0x12/0x17
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.779718] ---[ end trace
d59337737e676687 ]---
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.782196] ------------[
cut here ]------------
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.782206] WARNING: CPU: 2
PID: 3871 at fs/sysfs/group.c:219 sysfs_remove_group+0xa1/0xb0()
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.782208] sysfs group
ffffffff81cc06a0 not found for kobject 'i2c-13'
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.782210] Modules linked
in: cx231xx_alsa cx25840 cx231xx videobuf_vmalloc tveeprom cx2341x
rc_core videobuf_core i2c_mux ctr ccm pci_stub vboxpci(OE)
vboxnetadp(OE) vboxnetflt(OE) vboxdrv(OE) xt_CHECKSUM iptable_mangle
xt_tcpudp bridge stp llc iptable_filter ip_tables x_tables arc4
dm_crypt iwlmvm mac80211 rpcsec_gss_krb5 nfsv4 iwlwifi uvcvideo
intel_rapl iosf_mbi x86_pkg_temp_thermal intel_powerclamp
videobuf2_vmalloc kvm_intel joydev videobuf2_memops videobuf2_core
hid_rmi btusb snd_soc_rt5640 snd_soc_rl6231 snd_hda_codec_realtek
snd_hda_codec_generic hid_multitouch dell_wmi sparse_keymap
v4l2_common snd_hda_codec_hdmi videodev kvm cfg80211 media dell_laptop
snd_soc_core dcdbas snd_hda_intel crct10dif_pclmul snd_hda_controller
crc32_pclmul snd_compress ghash_clmulni_intel aesni_intel aes_x86_64
snd_hda_codec lrw gf128mul glue_helper ablk_helper cryptd
snd_pcm_dmaengine snd_seq_midi snd_hwdep snd_seq_midi_event
snd_rawmidi serio_raw mei_me snd_pcm mei snd_seq shpchp lpc_ich
snd_seq_device snd_timer snd i2c_hid soundcore i2c_designware_platform
dw_dmac snd_soc_sst_acpi i2c_designware_core 8250_dw
spi_pxa2xx_platform dw_dmac_core nfsd intel_rst mac_hid
intel_smartconnect auth_rpcgss rfcomm bnep nfs_acl nfs bluetooth lockd
grace sunrpc parport_pc ppdev coretemp lp parport fscache btrfs xor
raid6_pq i915 i2c_algo_bit drm_kms_helper usbhid ahci drm psmouse
libahci sdhci_acpi hid wmi sdhci video
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.782330] CPU: 2 PID: 3871
Comm: mythffmpeg Tainted: G        W  OE  3.19.1 #5
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.782333] Hardware name:
Dell Inc. XPS13 9333/099TN4, BIOS A06 11/07/2014
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.782335]
ffffffff81ab926e ffff8800bdadbbd8 ffffffff817a2883 0000000000000007
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.782340]
ffff8800bdadbc28 ffff8800bdadbc18 ffffffff8107324a ffff88021231df78
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.782343]
0000000000000000 ffffffff81cc06a0 ffff88020185c458 ffff88020185c448
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.782348] Call Trace:
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.782354]
[<ffffffff817a2883>] dump_stack+0x45/0x57
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.782360]
[<ffffffff8107324a>] warn_slowpath_common+0x8a/0xc0
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.782365]
[<ffffffff810732c6>] warn_slowpath_fmt+0x46/0x50
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.782371]
[<ffffffff8126539c>] ? kernfs_find_and_get_ns+0x4c/0x60
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.782375]
[<ffffffff81264be6>] ? kernfs_put+0x106/0x1e0
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.782379]
[<ffffffff81268c81>] sysfs_remove_group+0xa1/0xb0
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.782384]
[<ffffffff814f2ce7>] dpm_sysfs_remove+0x57/0x60
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.782390]
[<ffffffff814e6738>] device_del+0x58/0x270
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.782395]
[<ffffffff81265f73>] ? kernfs_remove_by_name_ns+0x53/0xa0
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.782400]
[<ffffffff814e6972>] device_unregister+0x22/0x80
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.782405]
[<ffffffff8160d9cf>] i2c_del_adapter+0x28f/0x300
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.782410]
[<ffffffff81265f8c>] ? kernfs_remove_by_name_ns+0x6c/0xa0
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.782415]
[<ffffffffc0c2a1cb>] i2c_del_mux_adapter+0x6b/0x90 [i2c_mux]
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.782423]
[<ffffffffc0f22261>] cx231xx_i2c_mux_unregister+0x21/0x40 [cx231xx]
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.782431]
[<ffffffffc0f2420b>] cx231xx_dev_uninit+0x1b/0x50 [cx231xx]
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.782438]
[<ffffffffc0f2369e>] cx231xx_release_resources+0x2e/0x60 [cx231xx]
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.782444]
[<ffffffffc0f1f747>] cx231xx_v4l2_close+0x1e7/0x2d0 [cx231xx]
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.782455]
[<ffffffffc0b80498>] v4l2_release+0x38/0x80 [videodev]
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.782460]
[<ffffffff811ee267>] __fput+0xe7/0x250
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.782464]
[<ffffffff811ee41e>] ____fput+0xe/0x10
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.782468]
[<ffffffff81090b77>] task_work_run+0xb7/0xf0
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.782474]
[<ffffffff81014197>] do_notify_resume+0x97/0xb0
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.782479]
[<ffffffff817a9e0f>] int_signal+0x12/0x17
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.782482] ---[ end trace
d59337737e676688 ]---
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.782511] ------------[
cut here ]------------
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.782516] WARNING: CPU: 2
PID: 3871 at fs/sysfs/group.c:219 sysfs_remove_group+0xa1/0xb0()
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.782518] sysfs group
ffffffff81cc06a0 not found for kobject 'i2c-12'
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.782520] Modules linked
in: cx231xx_alsa cx25840 cx231xx videobuf_vmalloc tveeprom cx2341x
rc_core videobuf_core i2c_mux ctr ccm pci_stub vboxpci(OE)
vboxnetadp(OE) vboxnetflt(OE) vboxdrv(OE) xt_CHECKSUM iptable_mangle
xt_tcpudp bridge stp llc iptable_filter ip_tables x_tables arc4
dm_crypt iwlmvm mac80211 rpcsec_gss_krb5 nfsv4 iwlwifi uvcvideo
intel_rapl iosf_mbi x86_pkg_temp_thermal intel_powerclamp
videobuf2_vmalloc kvm_intel joydev videobuf2_memops videobuf2_core
hid_rmi btusb snd_soc_rt5640 snd_soc_rl6231 snd_hda_codec_realtek
snd_hda_codec_generic hid_multitouch dell_wmi sparse_keymap
v4l2_common snd_hda_codec_hdmi videodev kvm cfg80211 media dell_laptop
snd_soc_core dcdbas snd_hda_intel crct10dif_pclmul snd_hda_controller
crc32_pclmul snd_compress ghash_clmulni_intel aesni_intel aes_x86_64
snd_hda_codec lrw gf128mul glue_helper ablk_helper cryptd
snd_pcm_dmaengine snd_seq_midi snd_hwdep snd_seq_midi_event
snd_rawmidi serio_raw mei_me snd_pcm mei snd_seq shpchp lpc_ich
snd_seq_device snd_timer snd i2c_hid soundcore i2c_designware_platform
dw_dmac snd_soc_sst_acpi i2c_designware_core 8250_dw
spi_pxa2xx_platform dw_dmac_core nfsd intel_rst mac_hid
intel_smartconnect auth_rpcgss rfcomm bnep nfs_acl nfs bluetooth lockd
grace sunrpc parport_pc ppdev coretemp lp parport fscache btrfs xor
raid6_pq i915 i2c_algo_bit drm_kms_helper usbhid ahci drm psmouse
libahci sdhci_acpi hid wmi sdhci video
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.782618] CPU: 2 PID: 3871
Comm: mythffmpeg Tainted: G        W  OE  3.19.1 #5
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.782620] Hardware name:
Dell Inc. XPS13 9333/099TN4, BIOS A06 11/07/2014
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.782622]
ffffffff81ab926e ffff8800bdadbbd8 ffffffff817a2883 0000000000000007
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.782626]
ffff8800bdadbc28 ffff8800bdadbc18 ffffffff8107324a ffff88021231d5a0
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.782630]
0000000000000000 ffffffff81cc06a0 ffff88020185c058 ffff88020185c048
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.782634] Call Trace:
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.782639]
[<ffffffff817a2883>] dump_stack+0x45/0x57
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.782644]
[<ffffffff8107324a>] warn_slowpath_common+0x8a/0xc0
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.782649]
[<ffffffff810732c6>] warn_slowpath_fmt+0x46/0x50
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.782655]
[<ffffffff8126539c>] ? kernfs_find_and_get_ns+0x4c/0x60
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.782659]
[<ffffffff81268c81>] sysfs_remove_group+0xa1/0xb0
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.782664]
[<ffffffff814f2ce7>] dpm_sysfs_remove+0x57/0x60
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.782669]
[<ffffffff814e6738>] device_del+0x58/0x270
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.782674]
[<ffffffff81265f73>] ? kernfs_remove_by_name_ns+0x53/0xa0
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.782679]
[<ffffffff814e6972>] device_unregister+0x22/0x80
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.782683]
[<ffffffff8160d9cf>] i2c_del_adapter+0x28f/0x300
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.782687]
[<ffffffff81265f8c>] ? kernfs_remove_by_name_ns+0x6c/0xa0
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.782692]
[<ffffffffc0c2a1cb>] i2c_del_mux_adapter+0x6b/0x90 [i2c_mux]
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.782699]
[<ffffffffc0f22261>] cx231xx_i2c_mux_unregister+0x21/0x40 [cx231xx]
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.782706]
[<ffffffffc0f24215>] cx231xx_dev_uninit+0x25/0x50 [cx231xx]
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.782712]
[<ffffffffc0f2369e>] cx231xx_release_resources+0x2e/0x60 [cx231xx]
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.782718]
[<ffffffffc0f1f747>] cx231xx_v4l2_close+0x1e7/0x2d0 [cx231xx]
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.782728]
[<ffffffffc0b80498>] v4l2_release+0x38/0x80 [videodev]
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.782733]
[<ffffffff811ee267>] __fput+0xe7/0x250
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.782737]
[<ffffffff811ee41e>] ____fput+0xe/0x10
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.782741]
[<ffffffff81090b77>] task_work_run+0xb7/0xf0
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.782746]
[<ffffffff81014197>] do_notify_resume+0x97/0xb0
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.782751]
[<ffffffff817a9e0f>] int_signal+0x12/0x17
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.782754] ---[ end trace
d59337737e676689 ]---
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.782778] ------------[
cut here ]------------
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.782783] WARNING: CPU: 2
PID: 3871 at fs/sysfs/group.c:219 sysfs_remove_group+0xa1/0xb0()
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.782785] sysfs group
ffffffff81cc06a0 not found for kobject 'i2c-11'
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.782786] Modules linked
in: cx231xx_alsa cx25840 cx231xx videobuf_vmalloc tveeprom cx2341x
rc_core videobuf_core i2c_mux ctr ccm pci_stub vboxpci(OE)
vboxnetadp(OE) vboxnetflt(OE) vboxdrv(OE) xt_CHECKSUM iptable_mangle
xt_tcpudp bridge stp llc iptable_filter ip_tables x_tables arc4
dm_crypt iwlmvm mac80211 rpcsec_gss_krb5 nfsv4 iwlwifi uvcvideo
intel_rapl iosf_mbi x86_pkg_temp_thermal intel_powerclamp
videobuf2_vmalloc kvm_intel joydev videobuf2_memops videobuf2_core
hid_rmi btusb snd_soc_rt5640 snd_soc_rl6231 snd_hda_codec_realtek
snd_hda_codec_generic hid_multitouch dell_wmi sparse_keymap
v4l2_common snd_hda_codec_hdmi videodev kvm cfg80211 media dell_laptop
snd_soc_core dcdbas snd_hda_intel crct10dif_pclmul snd_hda_controller
crc32_pclmul snd_compress ghash_clmulni_intel aesni_intel aes_x86_64
snd_hda_codec lrw gf128mul glue_helper ablk_helper cryptd
snd_pcm_dmaengine snd_seq_midi snd_hwdep snd_seq_midi_event
snd_rawmidi serio_raw mei_me snd_pcm mei snd_seq shpchp lpc_ich
snd_seq_device snd_timer snd i2c_hid soundcore i2c_designware_platform
dw_dmac snd_soc_sst_acpi i2c_designware_core 8250_dw
spi_pxa2xx_platform dw_dmac_core nfsd intel_rst mac_hid
intel_smartconnect auth_rpcgss rfcomm bnep nfs_acl nfs bluetooth lockd
grace sunrpc parport_pc ppdev coretemp lp parport fscache btrfs xor
raid6_pq i915 i2c_algo_bit drm_kms_helper usbhid ahci drm psmouse
libahci sdhci_acpi hid wmi sdhci video
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.782889] CPU: 2 PID: 3871
Comm: mythffmpeg Tainted: G        W  OE  3.19.1 #5
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.782891] Hardware name:
Dell Inc. XPS13 9333/099TN4, BIOS A06 11/07/2014
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.782894]
ffffffff81ab926e ffff8800bdadbc28 ffffffff817a2883 0000000000000007
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.782898]
ffff8800bdadbc78 ffff8800bdadbc68 ffffffff8107324a ffff880201097ca8
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.782903]
0000000000000000 ffffffff81cc06a0 ffff8800adaa0cc0 ffff8800adaa0cb0
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.782907] Call Trace:
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.782912]
[<ffffffff817a2883>] dump_stack+0x45/0x57
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.782917]
[<ffffffff8107324a>] warn_slowpath_common+0x8a/0xc0
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.782922]
[<ffffffff810732c6>] warn_slowpath_fmt+0x46/0x50
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.782927]
[<ffffffff8126539c>] ? kernfs_find_and_get_ns+0x4c/0x60
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.782931]
[<ffffffff81268c81>] sysfs_remove_group+0xa1/0xb0
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.782936]
[<ffffffff814f2ce7>] dpm_sysfs_remove+0x57/0x60
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.782941]
[<ffffffff814e6738>] device_del+0x58/0x270
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.782946]
[<ffffffff81265f73>] ? kernfs_remove_by_name_ns+0x53/0xa0
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.782951]
[<ffffffff814e6972>] device_unregister+0x22/0x80
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.782955]
[<ffffffff8160d9cf>] i2c_del_adapter+0x28f/0x300
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.782963]
[<ffffffffc0f221b2>] cx231xx_i2c_unregister+0x12/0x20 [cx231xx]
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.782970]
[<ffffffffc0f24221>] cx231xx_dev_uninit+0x31/0x50 [cx231xx]
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.782977]
[<ffffffffc0f2369e>] cx231xx_release_resources+0x2e/0x60 [cx231xx]
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.782983]
[<ffffffffc0f1f747>] cx231xx_v4l2_close+0x1e7/0x2d0 [cx231xx]
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.782993]
[<ffffffffc0b80498>] v4l2_release+0x38/0x80 [videodev]
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.782997]
[<ffffffff811ee267>] __fput+0xe7/0x250
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.783001]
[<ffffffff811ee41e>] ____fput+0xe/0x10
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.783004]
[<ffffffff81090b77>] task_work_run+0xb7/0xf0
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.783009]
[<ffffffff81014197>] do_notify_resume+0x97/0xb0
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.783014]
[<ffffffff817a9e0f>] int_signal+0x12/0x17
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.783017] ---[ end trace
d59337737e67668a ]---
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.783040] ------------[
cut here ]------------
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.783044] WARNING: CPU: 2
PID: 3871 at fs/sysfs/group.c:219 sysfs_remove_group+0xa1/0xb0()
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.783046] sysfs group
ffffffff81cc06a0 not found for kobject 'i2c-10'
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.783048] Modules linked
in: cx231xx_alsa cx25840 cx231xx videobuf_vmalloc tveeprom cx2341x
rc_core videobuf_core i2c_mux ctr ccm pci_stub vboxpci(OE)
vboxnetadp(OE) vboxnetflt(OE) vboxdrv(OE) xt_CHECKSUM iptable_mangle
xt_tcpudp bridge stp llc iptable_filter ip_tables x_tables arc4
dm_crypt iwlmvm mac80211 rpcsec_gss_krb5 nfsv4 iwlwifi uvcvideo
intel_rapl iosf_mbi x86_pkg_temp_thermal intel_powerclamp
videobuf2_vmalloc kvm_intel joydev videobuf2_memops videobuf2_core
hid_rmi btusb snd_soc_rt5640 snd_soc_rl6231 snd_hda_codec_realtek
snd_hda_codec_generic hid_multitouch dell_wmi sparse_keymap
v4l2_common snd_hda_codec_hdmi videodev kvm cfg80211 media dell_laptop
snd_soc_core dcdbas snd_hda_intel crct10dif_pclmul snd_hda_controller
crc32_pclmul snd_compress ghash_clmulni_intel aesni_intel aes_x86_64
snd_hda_codec lrw gf128mul glue_helper ablk_helper cryptd
snd_pcm_dmaengine snd_seq_midi snd_hwdep snd_seq_midi_event
snd_rawmidi serio_raw mei_me snd_pcm mei snd_seq shpchp lpc_ich
snd_seq_device snd_timer snd i2c_hid soundcore i2c_designware_platform
dw_dmac snd_soc_sst_acpi i2c_designware_core 8250_dw
spi_pxa2xx_platform dw_dmac_core nfsd intel_rst mac_hid
intel_smartconnect auth_rpcgss rfcomm bnep nfs_acl nfs bluetooth lockd
grace sunrpc parport_pc ppdev coretemp lp parport fscache btrfs xor
raid6_pq i915 i2c_algo_bit drm_kms_helper usbhid ahci drm psmouse
libahci sdhci_acpi hid wmi sdhci video
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.783147] CPU: 2 PID: 3871
Comm: mythffmpeg Tainted: G        W  OE  3.19.1 #5
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.783150] Hardware name:
Dell Inc. XPS13 9333/099TN4, BIOS A06 11/07/2014
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.783152]
ffffffff81ab926e ffff8800bdadbc28 ffffffff817a2883 0000000000000007
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.783155]
ffff8800bdadbc78 ffff8800bdadbc68 ffffffff8107324a ffff8802010973c0
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.783159]
0000000000000000 ffffffff81cc06a0 ffff8800adaa0910 ffff8800adaa0900
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.783164] Call Trace:
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.783168]
[<ffffffff817a2883>] dump_stack+0x45/0x57
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.783173]
[<ffffffff8107324a>] warn_slowpath_common+0x8a/0xc0
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.783178]
[<ffffffff810732c6>] warn_slowpath_fmt+0x46/0x50
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.783183]
[<ffffffff8126539c>] ? kernfs_find_and_get_ns+0x4c/0x60
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.783186]
[<ffffffff81268c81>] sysfs_remove_group+0xa1/0xb0
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.783190]
[<ffffffff814f2ce7>] dpm_sysfs_remove+0x57/0x60
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.783195]
[<ffffffff814e6738>] device_del+0x58/0x270
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.783200]
[<ffffffff81265f73>] ? kernfs_remove_by_name_ns+0x53/0xa0
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.783205]
[<ffffffff814e6972>] device_unregister+0x22/0x80
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.783208]
[<ffffffff8160d9cf>] i2c_del_adapter+0x28f/0x300
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.783215]
[<ffffffffc0f221b2>] cx231xx_i2c_unregister+0x12/0x20 [cx231xx]
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.783222]
[<ffffffffc0f2422d>] cx231xx_dev_uninit+0x3d/0x50 [cx231xx]
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.783228]
[<ffffffffc0f2369e>] cx231xx_release_resources+0x2e/0x60 [cx231xx]
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.783234]
[<ffffffffc0f1f747>] cx231xx_v4l2_close+0x1e7/0x2d0 [cx231xx]
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.783244]
[<ffffffffc0b80498>] v4l2_release+0x38/0x80 [videodev]
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.783249]
[<ffffffff811ee267>] __fput+0xe7/0x250
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.783253]
[<ffffffff811ee41e>] ____fput+0xe/0x10
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.783257]
[<ffffffff81090b77>] task_work_run+0xb7/0xf0
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.783262]
[<ffffffff81014197>] do_notify_resume+0x97/0xb0
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.783268]
[<ffffffff817a9e0f>] int_signal+0x12/0x17
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.783271] ---[ end trace
d59337737e67668b ]---
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.783293] ------------[
cut here ]------------
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.783298] WARNING: CPU: 2
PID: 3871 at fs/sysfs/group.c:219 sysfs_remove_group+0xa1/0xb0()
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.783300] sysfs group
ffffffff81cc06a0 not found for kobject '9-0044'
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.783302] Modules linked
in: cx231xx_alsa cx25840 cx231xx videobuf_vmalloc tveeprom cx2341x
rc_core videobuf_core i2c_mux ctr ccm pci_stub vboxpci(OE)
vboxnetadp(OE) vboxnetflt(OE) vboxdrv(OE) xt_CHECKSUM iptable_mangle
xt_tcpudp bridge stp llc iptable_filter ip_tables x_tables arc4
dm_crypt iwlmvm mac80211 rpcsec_gss_krb5 nfsv4 iwlwifi uvcvideo
intel_rapl iosf_mbi x86_pkg_temp_thermal intel_powerclamp
videobuf2_vmalloc kvm_intel joydev videobuf2_memops videobuf2_core
hid_rmi btusb snd_soc_rt5640 snd_soc_rl6231 snd_hda_codec_realtek
snd_hda_codec_generic hid_multitouch dell_wmi sparse_keymap
v4l2_common snd_hda_codec_hdmi videodev kvm cfg80211 media dell_laptop
snd_soc_core dcdbas snd_hda_intel crct10dif_pclmul snd_hda_controller
crc32_pclmul snd_compress ghash_clmulni_intel aesni_intel aes_x86_64
snd_hda_codec lrw gf128mul glue_helper ablk_helper cryptd
snd_pcm_dmaengine snd_seq_midi snd_hwdep snd_seq_midi_event
snd_rawmidi serio_raw mei_me snd_pcm mei snd_seq shpchp lpc_ich
snd_seq_device snd_timer snd i2c_hid soundcore i2c_designware_platform
dw_dmac snd_soc_sst_acpi i2c_designware_core 8250_dw
spi_pxa2xx_platform dw_dmac_core nfsd intel_rst mac_hid
intel_smartconnect auth_rpcgss rfcomm bnep nfs_acl nfs bluetooth lockd
grace sunrpc parport_pc ppdev coretemp lp parport fscache btrfs xor
raid6_pq i915 i2c_algo_bit drm_kms_helper usbhid ahci drm psmouse
libahci sdhci_acpi hid wmi sdhci video
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.783408] CPU: 2 PID: 3871
Comm: mythffmpeg Tainted: G        W  OE  3.19.1 #5
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.783410] Hardware name:
Dell Inc. XPS13 9333/099TN4, BIOS A06 11/07/2014
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.783412]
ffffffff81ab926e ffff8800bdadbbd8 ffffffff817a2883 0000000000000007
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.783417]
ffff8800bdadbc28 ffff8800bdadbc18 ffffffff8107324a ffff8800b0b7fe10
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.783421]
0000000000000000 ffffffff81cc06a0 ffff880207467030 ffff8800adaa0550
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.783426] Call Trace:
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.783430]
[<ffffffff817a2883>] dump_stack+0x45/0x57
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.783435]
[<ffffffff8107324a>] warn_slowpath_common+0x8a/0xc0
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.783440]
[<ffffffff810732c6>] warn_slowpath_fmt+0x46/0x50
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.783445]
[<ffffffff8126539c>] ? kernfs_find_and_get_ns+0x4c/0x60
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.783449]
[<ffffffff81268c81>] sysfs_remove_group+0xa1/0xb0
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.783453]
[<ffffffff814f2ce7>] dpm_sysfs_remove+0x57/0x60
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.783458]
[<ffffffff814e6738>] device_del+0x58/0x270
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.783462]
[<ffffffff8160bbf0>] ? __unregister_dummy+0x30/0x30
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.783466]
[<ffffffff814e6972>] device_unregister+0x22/0x80
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.783470]
[<ffffffff8160bc31>] __unregister_client+0x41/0x50
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.783474]
[<ffffffff814e6393>] device_for_each_child+0x43/0x70
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.783478]
[<ffffffff8160d96a>] i2c_del_adapter+0x22a/0x300
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.783485]
[<ffffffffc0f221b2>] cx231xx_i2c_unregister+0x12/0x20 [cx231xx]
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.783491]
[<ffffffffc0f24239>] cx231xx_dev_uninit+0x49/0x50 [cx231xx]
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.783498]
[<ffffffffc0f2369e>] cx231xx_release_resources+0x2e/0x60 [cx231xx]
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.783504]
[<ffffffffc0f1f747>] cx231xx_v4l2_close+0x1e7/0x2d0 [cx231xx]
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.783514]
[<ffffffffc0b80498>] v4l2_release+0x38/0x80 [videodev]
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.783519]
[<ffffffff811ee267>] __fput+0xe7/0x250
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.783523]
[<ffffffff811ee41e>] ____fput+0xe/0x10
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.783527]
[<ffffffff81090b77>] task_work_run+0xb7/0xf0
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.783531]
[<ffffffff81014197>] do_notify_resume+0x97/0xb0
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.783536]
[<ffffffff817a9e0f>] int_signal+0x12/0x17
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.783539] ---[ end trace
d59337737e67668c ]---
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.783569] ------------[
cut here ]------------
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.783573] WARNING: CPU: 2
PID: 3871 at fs/sysfs/group.c:219 sysfs_remove_group+0xa1/0xb0()
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.783576] sysfs group
ffffffff81cc06a0 not found for kobject 'i2c-9'
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.783578] Modules linked
in: cx231xx_alsa cx25840 cx231xx videobuf_vmalloc tveeprom cx2341x
rc_core videobuf_core i2c_mux ctr ccm pci_stub vboxpci(OE)
vboxnetadp(OE) vboxnetflt(OE) vboxdrv(OE) xt_CHECKSUM iptable_mangle
xt_tcpudp bridge stp llc iptable_filter ip_tables x_tables arc4
dm_crypt iwlmvm mac80211 rpcsec_gss_krb5 nfsv4 iwlwifi uvcvideo
intel_rapl iosf_mbi x86_pkg_temp_thermal intel_powerclamp
videobuf2_vmalloc kvm_intel joydev videobuf2_memops videobuf2_core
hid_rmi btusb snd_soc_rt5640 snd_soc_rl6231 snd_hda_codec_realtek
snd_hda_codec_generic hid_multitouch dell_wmi sparse_keymap
v4l2_common snd_hda_codec_hdmi videodev kvm cfg80211 media dell_laptop
snd_soc_core dcdbas snd_hda_intel crct10dif_pclmul snd_hda_controller
crc32_pclmul snd_compress ghash_clmulni_intel aesni_intel aes_x86_64
snd_hda_codec lrw gf128mul glue_helper ablk_helper cryptd
snd_pcm_dmaengine snd_seq_midi snd_hwdep snd_seq_midi_event
snd_rawmidi serio_raw mei_me snd_pcm mei snd_seq shpchp lpc_ich
snd_seq_device snd_timer snd i2c_hid soundcore i2c_designware_platform
dw_dmac snd_soc_sst_acpi i2c_designware_core 8250_dw
spi_pxa2xx_platform dw_dmac_core nfsd intel_rst mac_hid
intel_smartconnect auth_rpcgss rfcomm bnep nfs_acl nfs bluetooth lockd
grace sunrpc parport_pc ppdev coretemp lp parport fscache btrfs xor
raid6_pq i915 i2c_algo_bit drm_kms_helper usbhid ahci drm psmouse
libahci sdhci_acpi hid wmi sdhci video
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.783681] CPU: 2 PID: 3871
Comm: mythffmpeg Tainted: G        W  OE  3.19.1 #5
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.783683] Hardware name:
Dell Inc. XPS13 9333/099TN4, BIOS A06 11/07/2014
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.783685]
ffffffff81ab926e ffff8800bdadbc28 ffffffff817a2883 0000000000000007
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.783689]
ffff8800bdadbc78 ffff8800bdadbc68 ffffffff8107324a ffff88020753a258
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.783693]
0000000000000000 ffffffff81cc06a0 ffff8800adaa0560 ffff8800adaa0550
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.783696] Call Trace:
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.783701]
[<ffffffff817a2883>] dump_stack+0x45/0x57
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.783706]
[<ffffffff8107324a>] warn_slowpath_common+0x8a/0xc0
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.783711]
[<ffffffff810732c6>] warn_slowpath_fmt+0x46/0x50
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.783716]
[<ffffffff8126539c>] ? kernfs_find_and_get_ns+0x4c/0x60
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.783720]
[<ffffffff81268c81>] sysfs_remove_group+0xa1/0xb0
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.783724]
[<ffffffff814f2ce7>] dpm_sysfs_remove+0x57/0x60
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.783729]
[<ffffffff814e6738>] device_del+0x58/0x270
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.783734]
[<ffffffff81265f73>] ? kernfs_remove_by_name_ns+0x53/0xa0
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.783738]
[<ffffffff814e6972>] device_unregister+0x22/0x80
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.783742]
[<ffffffff8160d9cf>] i2c_del_adapter+0x28f/0x300
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.783750]
[<ffffffffc0f221b2>] cx231xx_i2c_unregister+0x12/0x20 [cx231xx]
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.783756]
[<ffffffffc0f24239>] cx231xx_dev_uninit+0x49/0x50 [cx231xx]
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.783762]
[<ffffffffc0f2369e>] cx231xx_release_resources+0x2e/0x60 [cx231xx]
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.783768]
[<ffffffffc0f1f747>] cx231xx_v4l2_close+0x1e7/0x2d0 [cx231xx]
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.783778]
[<ffffffffc0b80498>] v4l2_release+0x38/0x80 [videodev]
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.783783]
[<ffffffff811ee267>] __fput+0xe7/0x250
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.783787]
[<ffffffff811ee41e>] ____fput+0xe/0x10
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.783792]
[<ffffffff81090b77>] task_work_run+0xb7/0xf0
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.783796]
[<ffffffff81014197>] do_notify_resume+0x97/0xb0
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.783802]
[<ffffffff817a9e0f>] int_signal+0x12/0x17
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.783805] ---[ end trace
d59337737e67668d ]---
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.824718] usb 1-5: USB
disconnect, device number 3
Mar 15 12:07:41 alistair-XPS13 bluetoothd[511]: Unregister path:
/org/bluez/511/hci0
Mar 15 12:07:41 alistair-XPS13 bluetoothd[511]: Endpoint unregistered:
sender=:1.79 path=/MediaEndpoint/A2DPSink
Mar 15 12:07:41 alistair-XPS13 bluetoothd[511]: Endpoint unregistered:
sender=:1.79 path=/MediaEndpoint/A2DPSource
Mar 15 12:07:41 alistair-XPS13 bluetoothd[511]: Endpoint unregistered:
sender=:1.79 path=/MediaEndpoint/HFPAG
Mar 15 12:07:41 alistair-XPS13 bluetoothd[511]: Endpoint unregistered:
sender=:1.79 path=/MediaEndpoint/HFPHS
Mar 15 12:07:41 alistair-XPS13 kernel: [  100.860389] usb 1-6: USB
disconnect, device number 4
Mar 15 12:08:12 alistair-XPS13 sudo: pam_ecryptfs:
pam_sm_authenticate: /home/alistair is already mounted
Mar 15 12:08:12 alistair-XPS13 rsyslogd: [origin software="rsyslogd"
swVersion="7.4.4" x-pid="478" x-info="http://www.rsyslog.com"] exiting
on signal 15.
--

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [PATCH v2 1/1] usb: xhci: apply XHCI_AVOID_BEI quirk to all Intel xHCI controllers
  2015-03-16 15:21             ` Alistair Grant
@ 2015-03-16 16:29               ` Mathias Nyman
  2015-03-17 15:21                 ` Alistair Grant
  0 siblings, 1 reply; 11+ messages in thread
From: Mathias Nyman @ 2015-03-16 16:29 UTC (permalink / raw)
  To: Alistair Grant
  Cc: Mathias Nyman, Lu Baolu, Devin Heitmueller, linux-usb, linux-kernel

On 16.03.2015 17:21, Alistair Grant wrote:
> On Mon, Mar 16, 2015 at 3:47 PM, Mathias Nyman <mathias.nyman@intel.com> wrote:
>> On 16.03.2015 16:31, Alistair Grant wrote:
>>> On Mon, Mar 16, 2015 at 1:55 PM, Mathias Nyman
>>> <mathias.nyman@linux.intel.com> wrote:
>>>> On 15.03.2015 21:18, Alistair Grant wrote:
>>>>> On Sun, Mar 15, 2015 at 3:54 PM, Alistair Grant <akgrant0710@gmail.com> wrote:
>>>>>> On Thu, Mar 12, 2015 at 8:14 PM, Alistair Grant <akgrant0710@gmail.com> wrote:
>>>>>>> On Thu, Mar 12, 2015 at 11:15 AM, Lu Baolu <baolu.lu@linux.intel.com> wrote:
>>>>>>>> When a device with an isochronous endpoint is plugged into the Intel
>>>>>>>> xHCI host controller, and the driver submits multiple frames per URB,
>>>>>>>> the xHCI driver will set the Block Event Interrupt (BEI) flag on all
>>>>>>>> but the last TD for the URB. This causes the host controller to place
>>>>>>>> an event on the event ring, but not send an interrupt. When the last
>>>>>>>> TD for the URB completes, BEI is cleared, and we get an interrupt for
>>>>>>>> the whole URB.
>>>>>>>>
>>>>>>>> However, under Intel xHCI host controllers, if the event ring is full
>>>>>>>> of events from transfers with BEI set,  an "Event Ring is Full" event
>>>>>>>> will be posted to the last entry of the event ring,  but no interrupt
>>>>>>>> is generated. Host will cease all transfer and command executions and
>>>>>>>> wait until software completes handling the pending events in the event
>>>>>>>> ring.  That means xHC stops, but event of "event ring is full" is not
>>>>>>>> notified. As the result, the xHC looks like dead to user.
>>>>>>>>
>>>>>>>> This patch is to apply XHCI_AVOID_BEI quirk to Intel xHC devices. And
>>>>>>>> it should be backported to kernels as old as 3.0, that contains the
>>>>>>>> commit 69e848c2090a ("Intel xhci: Support EHCI/xHCI port switching.").
>>>>>>>>
>>>>>>>> Signed-off-by: Lu Baolu <baolu.lu@linux.intel.com>
>>>>>>>> Cc: stable@vger.kernel.org
>>>>>>>> ---
>>>>>>>>  drivers/usb/host/xhci-pci.c | 2 +-
>>>>>>>>  1 file changed, 1 insertion(+), 1 deletion(-)
>>>>>>>>
>>>>>>>> diff --git a/drivers/usb/host/xhci-pci.c b/drivers/usb/host/xhci-pci.c
>>>>>>>> index fd53c9e..2af32e2 100644
>>>>>>>> --- a/drivers/usb/host/xhci-pci.c
>>>>>>>> +++ b/drivers/usb/host/xhci-pci.c
>>>>>>>> @@ -115,6 +115,7 @@ static void xhci_pci_quirks(struct device *dev, struct xhci_hcd *xhci)
>>>>>>>>         if (pdev->vendor == PCI_VENDOR_ID_INTEL) {
>>>>>>>>                 xhci->quirks |= XHCI_LPM_SUPPORT;
>>>>>>>>                 xhci->quirks |= XHCI_INTEL_HOST;
>>>>>>>> +               xhci->quirks |= XHCI_AVOID_BEI;
>>>>>>>>         }
>>>>>>>>         if (pdev->vendor == PCI_VENDOR_ID_INTEL &&
>>>>>>>>                         pdev->device == PCI_DEVICE_ID_INTEL_PANTHERPOINT_XHCI) {
>>>>>>>> @@ -130,7 +131,6 @@ static void xhci_pci_quirks(struct device *dev, struct xhci_hcd *xhci)
>>>>>>>>                  * PPT chipsets.
>>>>>>>>                  */
>>>>>>>>                 xhci->quirks |= XHCI_SPURIOUS_REBOOT;
>>>>>>>> -               xhci->quirks |= XHCI_AVOID_BEI;
>>>>>>>>         }
>>>>>>>>         if (pdev->vendor == PCI_VENDOR_ID_INTEL &&
>>>>>>>>                 pdev->device == PCI_DEVICE_ID_INTEL_LYNXPOINT_LP_XHCI) {
>>>>>>>> --
>>>>>>>> 2.1.0
>>>>>>>>
>>>>>>>> --
>>>>>>>
>>>>>>> This works for me...
>>>>>>>
>>>>>>> Computer: Dell XPS13 9333
>>>>>>> USB controller: Intel Corporation 8 Series USB xHCI HC (rev 04)
>>>>>>> (prog-if 30 [XHCI])
>>>>>>> Kernel: 3.19.1
>>>>>>> USB Device: Hauppauge USB-Live2
>>>>>>>
>>>>>>> Please let me know if I can help in any other way.
>>>>>>>
>>>>>>> Tested-by: Alistair Grant <akgrant0710@gmail.com>
>>>>>>
>>>>>> Just FYI...
>>>>>>
>>>>>> I was able to test this on a slightly older laptop that had both USB2
>>>>>> and USB3 ports and can confirm that it also works there:
>>>>>>
>>>>>> 00:14.0 USB controller: Intel Corporation 7 Series/C210 Series Chipset
>>>>>> Family USB xHCI Host Controller (rev 04)
>>>>>
>>>>> It looks like I may have signed-off a little too soon.  While the patch is
>>>>> working correctly if the Hauppauge Live2 is plugged in after the system has
>>>>> booted and settled down (my normal use case), it fails if the Live2 is
>>>>> plugged in while the system is booted up.
>>>>>
>>>>> Unplugging the Live2 after recording (which appears to succeed from the
>>>>> command line, but had no audio), executing lsusb just hangs.
>>>>>
>>>>> I've included what I think is the relevant portions of /var/log/syslog
>>>>> below.  If you'd like the entire log file posted somewhere please let me
>>>>> know.
>>>>
>>>> Hi
>>>>
>>>> What kernel did you try this patch on?
>>>>
>>>> The output look a bit like the regression in 4.0-rc3 caused by:
>>>> commit 27082e2654dc148078b0abdfc3c8e5ccbde0ebfa
>>>>     xhci: Clear the host side toggle manually when endpoint is 'soft reset'
>>>>
>>>> which will be reverted (in 4.0-rc5 I hope).
>>>>
>>>> If you boot the same base kernel without the patch does it work then?
>>>>
>>>> -Mathias
>>>>
>>>
>>> Hi Mathias,
>>>
>>> This is on top of 3.19.1 with only the XHCI_AVOID_BEI quirk patch applied.
>>>
>>> If you'd like me to try it against 4.0-rc3, 4 or 5, please let me know.
>>
>> Thanks, no that's not needed.
>> But did the patch cause regression on top of 3.19.1?
>> I mean, did it make 3.19.1  worse, better or just different for you, while
>> booting with the device connected?
> 
> Recording doesn't work at all with 3.19.1 without the patch.  I've
> included an extract from syslog below of attempting to record with a
> clean 3.19.1 system (i.e. XHCI_AVOID_BEI quirk patch NOT applied, to
> state the obvious).
> 
> I did mean to say in my original message that I would still release
> this patch even with the current known issue as it still improves the
> overall stability of the system.
> 

Ok, thanks
I'll add it to the queue

-Mathias


^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [PATCH v2 1/1] usb: xhci: apply XHCI_AVOID_BEI quirk to all Intel xHCI controllers
  2015-03-16 16:29               ` Mathias Nyman
@ 2015-03-17 15:21                 ` Alistair Grant
  0 siblings, 0 replies; 11+ messages in thread
From: Alistair Grant @ 2015-03-17 15:21 UTC (permalink / raw)
  To: Mathias Nyman, Lu Baolu, Mathias Nyman
  Cc: Devin Heitmueller, linux-usb, linux-kernel

On Mon, Mar 16, 2015 at 5:29 PM, Mathias Nyman <mathias.nyman@intel.com> wrote:
> On 16.03.2015 17:21, Alistair Grant wrote:
>> On Mon, Mar 16, 2015 at 3:47 PM, Mathias Nyman <mathias.nyman@intel.com> wrote:
>>> On 16.03.2015 16:31, Alistair Grant wrote:
>>>> On Mon, Mar 16, 2015 at 1:55 PM, Mathias Nyman
>>>> <mathias.nyman@linux.intel.com> wrote:
>>>>> On 15.03.2015 21:18, Alistair Grant wrote:
>>>>>> On Sun, Mar 15, 2015 at 3:54 PM, Alistair Grant <akgrant0710@gmail.com> wrote:
>>>>>> ...
>>>>>> It looks like I may have signed-off a little too soon.  While the patch is
>>>>>> working correctly if the Hauppauge Live2 is plugged in after the system has
>>>>>> booted and settled down (my normal use case), it fails if the Live2 is
>>>>>> plugged in while the system is booted up.
>>>>>>
>>>>>> Unplugging the Live2 after recording (which appears to succeed from the
>>>>>> command line, but had no audio), executing lsusb just hangs.
>>>>>>
>>>>>> I've included what I think is the relevant portions of /var/log/syslog
>>>>>> below.  If you'd like the entire log file posted somewhere please let me
>>>>>> know.
>>>>>
>>>>> Hi
>>>>>
>>>>> What kernel did you try this patch on?
>>>>>
>>>>> The output look a bit like the regression in 4.0-rc3 caused by:
>>>>> commit 27082e2654dc148078b0abdfc3c8e5ccbde0ebfa
>>>>>     xhci: Clear the host side toggle manually when endpoint is 'soft reset'
>>>>>
>>>>> which will be reverted (in 4.0-rc5 I hope).
>>>>>
>>>>> If you boot the same base kernel without the patch does it work then?
>>>>>
>>>>> -Mathias
>>>>>
>>>>
>>>> Hi Mathias,
>>>>
>>>> This is on top of 3.19.1 with only the XHCI_AVOID_BEI quirk patch applied.
>>>>
>>>> If you'd like me to try it against 4.0-rc3, 4 or 5, please let me know.
>>>
>>> Thanks, no that's not needed.
>>> But did the patch cause regression on top of 3.19.1?
>>> I mean, did it make 3.19.1  worse, better or just different for you, while
>>> booting with the device connected?
>>
>> Recording doesn't work at all with 3.19.1 without the patch.  I've
>> included an extract from syslog below of attempting to record with a
>> clean 3.19.1 system (i.e. XHCI_AVOID_BEI quirk patch NOT applied, to
>> state the obvious).
>>
>> I did mean to say in my original message that I would still release
>> this patch even with the current known issue as it still improves the
>> overall stability of the system.
>>
>
> Ok, thanks
> I'll add it to the queue

Hi Mathias & Lu,

FYI...  I also tried booting with the Live2 plugged in with the
following kernel:

* 3.19.1
* usb: xhci: apply XHCI_AVOID_BEI quirk to all Intel xHCI controllers
* xhci: Allocate correct amount of scratchpad buffers
* xhci.h: Increase TRBS_PER_SEGMENT from 64 to 256

i.e. add the scratchpad buffers fix and increase TRBS_PER_SEGMENT,
however the problem still occurs if the Live2 is plugged in during
boot up.

Thanks,
Alistair

^ permalink raw reply	[flat|nested] 11+ messages in thread

end of thread, other threads:[~2015-03-17 15:21 UTC | newest]

Thread overview: 11+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2015-03-12 10:15 [PATCH v2 1/1] usb: xhci: apply XHCI_AVOID_BEI quirk to all Intel xHCI controllers Lu Baolu
2015-03-12 19:14 ` Alistair Grant
2015-03-15 14:54   ` Alistair Grant
2015-03-15 19:18     ` Alistair Grant
2015-03-16 12:55       ` Mathias Nyman
2015-03-16 14:31         ` Alistair Grant
2015-03-16 14:47           ` Mathias Nyman
2015-03-16 15:21             ` Alistair Grant
2015-03-16 16:29               ` Mathias Nyman
2015-03-17 15:21                 ` Alistair Grant
2015-03-12 19:36 ` Devin Heitmueller

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).