Bug 216140

Summary: rtsx_usb causes error: xhci_hcd rejecting DMA map of vmalloc memory
Product: Drivers Reporter: Dimitar Kosev (buboleck)
Component: USBAssignee: Default virtual assignee for Drivers/USB (drivers_usb)
Status: RESOLVED PATCH_ALREADY_AVAILABLE    
Severity: normal CC: kernel
Priority: P1    
Hardware: All   
OS: Linux   
Kernel Version: 5.18, 5.18.1, 5.18.2, 5.18.3, 5.18.4, 5.19 rc3 Subsystem:
Regression: No Bisected commit-id:

Description Dimitar Kosev 2022-06-16 11:20:28 UTC
This is present with all 5.18 kernels I tried, 5.17.x kernels are fine, likely related to https://bugzilla.kernel.org/show_bug.cgi?id=215890

[Thu Jun 16 13:24:58 2022] Modules linked in: rtsx_usb(+) sparse_keymap crct10dif_pclmul crc32_pclmul ghash_clmulni_intel ahci(+) snd_pcm libahci aesni_intel platform_profile hid_generic(+) crypto_simd usbkbd usbmouse input_leds snd_timer k10temp cryptd led_class usbhid pkcs8_key_parser snd ccp rfkill cec wmi_bmof soundcore i2c_amd_mp2_pci libata rapl serio_raw efi_pstore hwmon sp5100_tco i2c_hid_acpi wmi i2c_hid video
[Thu Jun 16 13:24:58 2022] CPU: 4 PID: 803 Comm: systemd-udevd Not tainted 5.18.4-gentoo #2
[Thu Jun 16 13:24:58 2022] Hardware name: ASUSTeK COMPUTER INC. VivoBook_ASUSLaptop X509DA_M509DA/X509DA, BIOS X509DA.309 10/08/2021
[Thu Jun 16 13:24:58 2022] RIP: 0010:usb_hcd_map_urb_for_dma+0x48d/0x4b0
[Thu Jun 16 13:24:58 2022] Code: 50 c6 05 22 a6 ea 00 01 4d 85 f6 75 03 4d 8b 32 4c 89 d7 e8 a5 29 f4 ff 4c 89 f2 48 c7 c7 e8 9f b7 94 48 89 c6 e8 13 1b 21 00 <0f> 0b e9 52 ff ff ff 48 8b 05 25 26 cb 00 e9 d3 fc ff ff 48 8b 05
[Thu Jun 16 13:24:58 2022] RSP: 0018:ffffa6fd898a77c8 EFLAGS: 00010282
[Thu Jun 16 13:24:58 2022] RAX: 0000000000000000 RBX: 000000000000000c RCX: 0000000000000003
[Thu Jun 16 13:24:58 2022] RDX: 0000000000000000 RSI: ffffa6fd898a75c0 RDI: 0000000000000001
[Thu Jun 16 13:24:58 2022] RBP: ffffa6fd898a7800 R08: 0000000000000000 R09: ffffffff94e468c0
[Thu Jun 16 13:24:58 2022] R10: 0000000000000001 R11: 0000000000000001 R12: ffff9657cee1fe40
[Thu Jun 16 13:24:58 2022] R13: ffff9657c0aaa000 R14: ffff9657c0f1ed70 R15: 0000000000000001
[Thu Jun 16 13:24:58 2022] FS:  00007f70f0fff7c0(0000) GS:ffff965bccf00000(0000) knlGS:0000000000000000
[Thu Jun 16 13:24:58 2022] CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
[Thu Jun 16 13:24:58 2022] CR2: 00007f70f12fab0f CR3: 0000000109570000 CR4: 00000000003506e0
[Thu Jun 16 13:24:58 2022] Call Trace:
[Thu Jun 16 13:24:58 2022]  <TASK>
[Thu Jun 16 13:24:58 2022]  xhci_map_urb_for_dma+0x14c/0x2a0
[Thu Jun 16 13:24:58 2022]  usb_hcd_submit_urb+0x9f/0xc70
[Thu Jun 16 13:24:58 2022]  ? del_timer_sync+0x70/0xb0
[Thu Jun 16 13:24:58 2022]  ? schedule_timeout+0x93/0x150
[Thu Jun 16 13:24:58 2022]  ? __bpf_trace_tick_stop+0x20/0x20
[Thu Jun 16 13:24:58 2022]  usb_submit_urb+0x256/0x6a0
[Thu Jun 16 13:24:58 2022]  ? kfree+0xd2/0x2f0
[Thu Jun 16 13:24:58 2022]  usb_start_wait_urb+0x71/0x180
[Thu Jun 16 13:24:58 2022]  usb_bulk_msg+0xbf/0x180
[Thu Jun 16 13:24:58 2022]  rtsx_usb_send_cmd+0x69/0xc0 [rtsx_usb]
[Thu Jun 16 13:24:58 2022]  rtsx_usb_probe+0x149/0x3c0 [rtsx_usb]
[Thu Jun 16 13:24:58 2022]  usb_probe_interface+0xef/0x2a0
[Thu Jun 16 13:24:58 2022]  really_probe+0x1a4/0x380
[Thu Jun 16 13:24:58 2022]  __driver_probe_device+0x10a/0x180
[Thu Jun 16 13:24:58 2022]  driver_probe_device+0x23/0x90
[Thu Jun 16 13:24:58 2022]  __driver_attach+0xb0/0x1b0
[Thu Jun 16 13:24:58 2022]  ? __device_attach_driver+0xe0/0xe0
[Thu Jun 16 13:24:58 2022]  bus_for_each_dev+0x83/0xd0
[Thu Jun 16 13:24:58 2022]  driver_attach+0x22/0x30
[Thu Jun 16 13:24:58 2022]  bus_add_driver+0x166/0x200
[Thu Jun 16 13:24:58 2022]  driver_register+0x99/0xf0
[Thu Jun 16 13:24:58 2022]  usb_register_driver+0x8d/0x130
[Thu Jun 16 13:24:58 2022]  ? 0xffffffffc0113000
[Thu Jun 16 13:24:58 2022]  rtsx_usb_driver_init+0x27/0x1000 [rtsx_usb]
[Thu Jun 16 13:24:58 2022]  do_one_initcall+0x4d/0x200
[Thu Jun 16 13:24:58 2022]  ? kmem_cache_alloc_trace+0x187/0x2e0
[Thu Jun 16 13:24:58 2022]  do_init_module+0x52/0x260
[Thu Jun 16 13:24:58 2022]  load_module+0x235e/0x2550
[Thu Jun 16 13:24:58 2022]  ? 0xffffffffc0113000
[Thu Jun 16 13:24:58 2022]  __do_sys_finit_module+0xcb/0x140
[Thu Jun 16 13:24:58 2022]  ? __do_sys_finit_module+0xcb/0x140
[Thu Jun 16 13:24:58 2022]  __x64_sys_finit_module+0x1c/0x20
[Thu Jun 16 13:24:58 2022]  do_syscall_64+0x3a/0x90
[Thu Jun 16 13:24:58 2022]  entry_SYSCALL_64_after_hwframe+0x44/0xae
[Thu Jun 16 13:24:58 2022] RIP: 0033:0x7f70f114cdb9
[Thu Jun 16 13:24:58 2022] Code: 08 44 89 e0 5b 41 5c c3 66 0f 1f 84 00 00 00 00 00 48 89 f8 48 89 f7 48 89 d6 48 89 ca 4d 89 c2 4d 89 c8 4c 8b 4c 24 08 0f 05 <48> 3d 01 f0 ff ff 73 01 c3 48 8b 0d 37 e0 0e 00 f7 d8 64 89 01 48
[Thu Jun 16 13:24:58 2022] RSP: 002b:00007ffe0e4f8c38 EFLAGS: 00000202 ORIG_RAX: 0000000000000139
[Thu Jun 16 13:24:58 2022] RAX: ffffffffffffffda RBX: 00005594ea8e0eb0 RCX: 00007f70f114cdb9
[Thu Jun 16 13:24:58 2022] RDX: 0000000000000000 RSI: 00007f70f12c6b7d RDI: 0000000000000005
[Thu Jun 16 13:24:58 2022] RBP: 0000000000020000 R08: 0000000000000000 R09: 00005594ea859320
[Thu Jun 16 13:24:58 2022] R10: 0000000000000005 R11: 0000000000000202 R12: 00007f70f12c6b7d
[Thu Jun 16 13:24:58 2022] R13: 0000000000000000 R14: 00005594ea83bf80 R15: 00005594ea8e0eb0
[Thu Jun 16 13:24:58 2022]  </TASK>
[Thu Jun 16 13:24:58 2022] ---[ end trace 0000000000000000 ]---
[Thu Jun 16 13:24:58 2022] rtsx_usb: probe of 3-1:1.0 failed with error -11
[Thu Jun 16 13:24:58 2022] usbcore: registered new interface driver rtsx_usb
Comment 1 Dimitar Kosev 2022-06-20 10:44:09 UTC
I can confirm reverting commit f5ff79fddf0efecca538046b5cc20fb3ded2ec4f resolves the issue.
Comment 2 Mitchell Augustin 2022-06-27 23:02:25 UTC
You may want to try 5.19-rc4. My ASUS Vivobook s510un's trackpad seems to work correctly with that version.
Comment 3 Dimitar Kosev 2022-06-28 11:29:26 UTC
(In reply to Mitchell Augustin from comment #2)
> You may want to try 5.19-rc4. My ASUS Vivobook s510un's trackpad seems to
> work correctly with that version.

I don't have issues with the trackpad. No change, still the same with 5.19-rc4.
Comment 4 Dimitar Kosev 2022-07-13 15:24:39 UTC
Fixed in 5.18.11/5.19-rc6 and later with commit eb7f8e28420372787933eec079735c35034bda7d