Re: Data toggles not reset on "set configuration" for ports handled by "xhci_hcd" driver

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



> Can you try the code below? It should force dropping and adding the endpoints
> for the intrface(s) of that configuration, and xhci should reset the toggles.
>
> Completely untested, it compiles :)

Sorry, no, that doesn't work:

xhci_hcd 0000:00:14.0: Trying to add endpoint 0x83 without dropping it.
BUG: kernel NULL pointer dereference, address: 0000000000000010
#PF: supervisor read access in kernel mode
#PF: error_code(0x0000) - not-present page
PGD 0 P4D 0
Oops: 0000 [#1] PREEMPT SMP NOPTI
CPU: 6 PID: 1192 Comm: python Tainted: P           OE
5.8.3-arch1-1-custom #2
Hardware name: Gigabyte Technology Co., Ltd. To be filled by
O.E.M./Z77-DS3H, BIOS F11a 11/13/2013
RIP: 0010:usb_altnum_to_altsetting+0x5/0x40
Code: 00 eb 09 48 83 c0 08 48 39 c8 74 12 4c 8b 00 49 8b 10 0f b6 52
02 39 f2 75 e9 4c 89 c0 c3 45 31 c0 4c 89 c0 c3 0f 1f 44 00 00 <8b> 4f
10 85 c9 74 26 48 8b 3f 31 c0 eb 07 83 c0 01 39 c8 74 18 48
RSP: 0018:ffffa0a0c0733e00 EFLAGS: 00010246
RAX: ffff97086414a000 RBX: ffff97086414a110 RCX: 0000000000000000
RDX: 0000000000000020 RSI: 0000000000000000 RDI: 0000000000000000
RBP: ffff97086e0ed000 R08: 0000000000000001 R09: ffffffffc0360290
R10: 0000000000000000 R11: 0000000000000001 R12: ffff97088c95c000
R13: ffff97086414a090 R14: 00000000ffffffea R15: 0000000000000000
FS:  00007ff728371740(0000) GS:ffff97088ed80000(0000) knlGS:0000000000000000
CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 0000000000000010 CR3: 00000003d9666001 CR4: 00000000001606e0
Call Trace:
 usb_reset_configuration+0x1da/0x240
 usbdev_ioctl+0x1276/0x1300
 ? do_sys_openat2+0xa6/0x170
 ? kmem_cache_free+0xa4/0x1d0
 ksys_ioctl+0x82/0xc0
 __x64_sys_ioctl+0x16/0x20
 do_syscall_64+0x44/0x70
 entry_SYSCALL_64_after_hwframe+0x44/0xa9
RIP: 0033:0x7ff72896ef6b
Code: 89 d8 49 8d 3c 1c 48 f7 d8 49 39 c4 72 b5 e8 1c ff ff ff 85 c0
78 ba 4c 89 e0 5b 5d 41 5c c3 f3 0f 1e fa b8 10 00 00 00 0f 05 <48> 3d
01 f0 ff ff 73 01 c3 48 8b 0d d5 ae 0c 00 f7 d8 64 89 01 48
RSP: 002b:00007fff7efdce08 EFLAGS: 00000202 ORIG_RAX: 0000000000000010
RAX: ffffffffffffffda RBX: 000055bf1081bab0 RCX: 00007ff72896ef6b
RDX: 00007fff7efdce1c RSI: 0000000080045505 RDI: 0000000000000009
RBP: 000055bf10827040 R08: 00007fff7efdcd40 R09: 00007ff727e96470
R10: 00007fff7efdcd40 R11: 0000000000000202 R12: 0000000000000000
R13: 00007fff7efdcef0 R14: 00007fff7efdcf60 R15: 00007fff7efdceec
Modules linked in: rpcsec_gss_krb5 auth_rpcgss nfsv4 dns_resolver nfs
lockd grace sunrpc fscache fuse ip6table_filter ip6_tables xt_nat
iptable_nat nf_nat nf_log_ipv4 nf_log_common xt_set xt_multiport
xt_state xt_conntrac>
 snd_hda_codec ghash_clmulni_intel aesni_intel snd_hda_core
crypto_simd uas cryptd snd_hwdep iTCO_wdt glue_helper mei_hdcp
intel_pmc_bxt rapl usb_storage at24 drm_kms_helper iTCO_vendor_support
snd_pcm intel_cstate cec in>
CR2: 0000000000000010
---[ end trace 86a221d52d129373 ]---
RIP: 0010:usb_altnum_to_altsetting+0x5/0x40
Code: 00 eb 09 48 83 c0 08 48 39 c8 74 12 4c 8b 00 49 8b 10 0f b6 52
02 39 f2 75 e9 4c 89 c0 c3 45 31 c0 4c 89 c0 c3 0f 1f 44 00 00 <8b> 4f
10 85 c9 74 26 48 8b 3f 31 c0 eb 07 83 c0 01 39 c8 74 18 48
RSP: 0018:ffffa0a0c0733e00 EFLAGS: 00010246
RAX: ffff97086414a000 RBX: ffff97086414a110 RCX: 0000000000000000
RDX: 0000000000000020 RSI: 0000000000000000 RDI: 0000000000000000
RBP: ffff97086e0ed000 R08: 0000000000000001 R09: ffffffffc0360290
R10: 0000000000000000 R11: 0000000000000001 R12: ffff97088c95c000
R13: ffff97086414a090 R14: 00000000ffffffea R15: 0000000000000000
FS:  00007ff728371740(0000) GS:ffff97088ed80000(0000) knlGS:0000000000000000
CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 0000000000000010 CR3: 00000003d9666001 CR4: 00000000001606e0



[Index of Archives]     [Linux Media]     [Linux Input]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Old Linux USB Devel Archive]

  Powered by Linux