Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S936626AbdGTQL5 (ORCPT ); Thu, 20 Jul 2017 12:11:57 -0400 Received: from mail-wr0-f173.google.com ([209.85.128.173]:36921 "EHLO mail-wr0-f173.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S934327AbdGTQLx (ORCPT ); Thu, 20 Jul 2017 12:11:53 -0400 Message-ID: <1500567109.13885.9.camel@redhat.com> Subject: Re: [PATCH v4 00/27] Thunderbolt security levels and NVM firmware upgrade From: Christian Kellner To: Mika Westerberg Cc: Andreas Noever , Greg Kroah-Hartman , Michael Jamet , Yehezkel Bernat , Lukas Wunner , Amir Levy , Andy Lutomirski , Mario.Limonciello@dell.com, Jared.Dominguez@dell.com, Andy Shevchenko , linux-kernel@vger.kernel.org, Peter FP1 Zhang Date: Thu, 20 Jul 2017 18:11:49 +0200 In-Reply-To: <20170606122519.35401-1-mika.westerberg@linux.intel.com> References: <20170606122519.35401-1-mika.westerberg@linux.intel.com> Content-Type: text/plain; charset="UTF-8" X-Mailer: Evolution 3.24.4 Mime-Version: 1.0 Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 8442 Lines: 125 Hi! > This is fourth version of the patch series adding support for Thunderbolt > security levels and NVM firmware upgrade. While prototyping the user-space bits for GNOME, I stumbled upon an oops on the Lenovo T470s (see below) when attaching a Dell TB16 thunderbolt 3 dock. As a result /sys/bus/thunderbolt/devices has only domain0 in it but not the dock itself. Everything works fine on a Dell XPS 13 9630. The oops happens with linux-next and when I backport the patches to 4.11.11. Happy to provide any more information and test future patches. Cheers, Christian --- 8< --- lspci output: pcilib: Cannot open /sys/bus/pci/devices/0000:03:00.0/config lspci: Unable to read the standard configuration space header of device 0000:03:00.0 00:00.0 Host bridge: Intel Corporation Device 5904 (rev 02) 00:02.0 VGA compatible controller: Intel Corporation Device 5916 (rev 02) 00:14.0 USB controller: Intel Corporation Sunrise Point-LP USB 3.0 xHCI Controller (rev 21) 00:14.2 Signal processing controller: Intel Corporation Sunrise Point-LP Thermal subsystem (rev 21) 00:16.0 Communication controller: Intel Corporation Sunrise Point-LP CSME HECI #1 (rev 21) 00:16.3 Serial controller: Intel Corporation Device 9d3d (rev 21) 00:1c.0 PCI bridge: Intel Corporation Device 9d10 (rev f1) 00:1c.2 PCI bridge: Intel Corporation Device 9d12 (rev f1) 00:1d.0 PCI bridge: Intel Corporation Sunrise Point-LP PCI Express Root Port #9 (rev f1) 00:1f.0 ISA bridge: Intel Corporation Device 9d4e (rev 21) 00:1f.2 Memory controller: Intel Corporation Sunrise Point-LP PMC (rev 21) 00:1f.3 Audio device: Intel Corporation Device 9d71 (rev 21) 00:1f.4 SMBus: Intel Corporation Sunrise Point-LP SMBus (rev 21) 00:1f.6 Ethernet controller: Intel Corporation Ethernet Connection (4) I219-LM (rev 21) 01:00.0 PCI bridge: Intel Corporation JHL6240 Thunderbolt 3 Bridge (Low Power) [Alpine Ridge LP 2016] (rev ff) 02:00.0 PCI bridge: Intel Corporation JHL6240 Thunderbolt 3 Bridge (Low Power) [Alpine Ridge LP 2016] (rev ff) 02:01.0 PCI bridge: Intel Corporation JHL6240 Thunderbolt 3 Bridge (Low Power) [Alpine Ridge LP 2016] (rev ff) 02:02.0 PCI bridge: Intel Corporation JHL6240 Thunderbolt 3 Bridge (Low Power) [Alpine Ridge LP 2016] (rev ff) 3a:00.0 Network controller: Intel Corporation Wireless 8265 / 8275 (rev 78) 3c:00.0 Non-Volatile memory controller: Toshiba America Info Systems Device 0115 (rev 01) --- >8 --- Ops: [ 69.886978] thunderbolt 0000:03:00.0: current switch config: [ 69.886983] thunderbolt 0000:03:00.0: Switch: 8086:15c0 (Revision: 1, TB Version: 2) [ 69.886986] thunderbolt 0000:03:00.0: Max Port Number: 5 [ 69.886987] thunderbolt 0000:03:00.0: Config: [ 69.886991] thunderbolt 0000:03:00.0: Upstream Port Number: 3 Depth: 0 Route String: 0x0 Enabled: 1, PlugEventsDelay: 254ms [ 69.886994] thunderbolt 0000:03:00.0: unknown1: 0x0 unknown4: 0x0 [ 69.920748] BUG: unable to handle kernel NULL pointer dereference at 00000000000002ec [ 69.920834] IP: tb_drom_read+0x383/0x890 [thunderbolt] [ 69.920873] PGD 0 [ 69.920874] P4D 0 [ 69.920925] Oops: 0000 [#1] SMP [ 69.920952] Modules linked in: thunderbolt(+) fuse rfcomm ccm xt_CHECKSUM ipt_MASQUERADE nf_nat_masquerade_ipv4 tun nf_conntrack_netbios_ns nf_conntrack_broadcast xt_CT ip6t_rpfilter ip6t_REJECT nf_reject_ipv6 xt_conntrack ip_set nfnetlink ebtable_nat ebtable_broute bridge stp llc ip6table_nat nf_conntrack_ipv6 nf_defrag_ipv6 nf_nat_ipv6 ip6table_mangle ip6table_raw ip6table_security iptable_nat nf_conntrack_ipv4 nf_defrag_ipv4 nf_nat_ipv4 nf_nat nf_conntrack libcrc32c iptable_mangle iptable_raw iptable_security ebtable_filter ebtables ip6table_filter ip6_tables cmac bnep sunrpc arc4 wmi_bmof iTCO_wdt iwlmvm iTCO_vendor_support snd_soc_skl mei_wdt snd_soc_skl_ipc snd_soc_sst_ipc snd_soc_sst_dsp snd_hda_ext_core tpm_crb snd_soc_sst_match intel_rapl x86_pkg_temp_thermal intel_powerclamp mac80211 coretemp [ 69.921479] kvm irqbypass crct10dif_pclmul crc32_pclmul ghash_clmulni_intel snd_hda_codec_hdmi intel_cstate intel_uncore intel_rapl_perf snd_soc_core iwlwifi snd_hda_codec_realtek snd_hda_codec_generic snd_compress snd_pcm_dmaengine ac97_bus snd_hda_intel snd_hda_codec snd_hda_core cfg80211 snd_hwdep snd_seq pcspkr uvcvideo hci_uart joydev snd_seq_device snd_pcm videobuf2_vmalloc videobuf2_memops videobuf2_v4l2 videobuf2_core btusb videodev btrtl btbcm snd_timer i2c_i801 btqca btintel media bluetooth qcserial mei_me usb_wwan mei shpchp thinkpad_acpi intel_pch_thermal snd wmi tpm_tis soundcore tpm_tis_core pinctrl_sunrisepoint intel_lpss_acpi tpm ecdh_generic intel_lpss pinctrl_intel rfkill acpi_pad cdc_mbim cdc_wdm cdc_ncm usbnet mii uas usb_storage i915 i2c_algo_bit drm_kms_helper drm e1000e crc32c_intel [ 69.922013] ptp serio_raw nvme nvme_core pps_core video i2c_hid [ 69.922062] CPU: 3 PID: 12248 Comm: systemd-udevd Not tainted 4.13.0-rc1-next-20170719 #1 [ 69.922116] Hardware name: LENOVO 20HF000YGE/20HF000YGE, BIOS N1WET32W (1.11 ) 05/23/2017 [ 69.922170] task: ffff8a293e4bcd80 task.stack: ffffa698027a8000 [ 69.922218] RIP: 0010:tb_drom_read+0x383/0x890 [thunderbolt] [ 69.922256] RSP: 0018:ffffa698027ab990 EFLAGS: 00010246 [ 69.922292] RAX: 0000000000000000 RBX: ffff8a2940af7800 RCX: 0000000000000000 [ 69.922339] RDX: ffff8a2940ebb400 RSI: 0000000000000000 RDI: ffffa698027ab9a0 [ 69.922385] RBP: ffffa698027ab9d0 R08: 0000000000000001 R09: 0000000000000002 [ 69.922432] R10: ffff8a2940ebb5b0 R11: 0000000000000000 R12: ffff8a293bfa968c [ 69.922478] R13: 000000000000002c R14: 0000000000000056 R15: 0000000000000056 [ 69.922526] FS: 00007f0a945a38c0(0000) GS:ffff8a2961580000(0000) knlGS:0000000000000000 [ 69.922579] CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 [ 69.922617] CR2: 00000000000002ec CR3: 000000043e785000 CR4: 00000000003606e0 [ 69.922665] DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000 [ 69.922712] DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400 [ 69.922760] Call Trace: [ 69.922789] tb_switch_add+0x9d/0x730 [thunderbolt] [ 69.922846] ? tb_switch_alloc+0x3cd/0x4d0 [thunderbolt] [ 69.922893] icm_start+0x5a/0xa0 [thunderbolt] [ 69.922934] tb_domain_add+0xc3/0xf0 [thunderbolt] [ 69.922976] nhi_probe+0x19e/0x310 [thunderbolt] [ 69.923017] local_pci_probe+0x42/0xa0 [ 69.923048] pci_device_probe+0x18d/0x1a0 [ 69.923082] driver_probe_device+0x2ff/0x450 [ 69.923116] __driver_attach+0xa4/0xe0 [ 69.923146] ? driver_probe_device+0x450/0x450 [ 69.923184] bus_for_each_dev+0x6e/0xb0 [ 69.923215] driver_attach+0x1e/0x20 [ 69.923246] bus_add_driver+0x1d0/0x270 [ 69.923277] ? 0xffffffffc0bbb000 [ 69.923304] driver_register+0x60/0xe0 [ 69.923334] ? 0xffffffffc0bbb000 [ 69.923372] __pci_register_driver+0x4c/0x50 [ 69.923411] nhi_init+0x28/0x1000 [thunderbolt] [ 69.923449] do_one_initcall+0x50/0x190 [ 69.923481] ? __vunmap+0x81/0xb0 [ 69.923511] ? _cond_resched+0x1a/0x50 [ 69.923544] ? kmem_cache_alloc_trace+0x15f/0x1c0 [ 69.923581] ? do_init_module+0x27/0x1e9 [ 69.923613] do_init_module+0x5f/0x1e9 [ 69.923643] load_module+0x24e7/0x2a60 [ 69.923677] ? vfs_read+0x115/0x130 [ 69.923707] SYSC_finit_module+0xfc/0x120 [ 69.923738] ? SYSC_finit_module+0xfc/0x120 [ 69.923773] SyS_finit_module+0xe/0x10 [ 69.923805] do_syscall_64+0x67/0x170 [ 69.923850] entry_SYSCALL64_slow_path+0x25/0x25 [ 69.923882] RIP: 0033:0x7f0a93214529 [ 69.923908] RSP: 002b:00007fffddc70308 EFLAGS: 00000246 ORIG_RAX: 0000000000000139 [ 69.923959] RAX: ffffffffffffffda RBX: 000000c52e0e6450 RCX: 00007f0a93214529 [ 69.924005] RDX: 0000000000000000 RSI: 00007f0a93d509c5 RDI: 0000000000000007 [ 69.924052] RBP: 00007f0a93d509c5 R08: 0000000000000000 R09: 00007fffddc70420 [ 69.926454] R10: 0000000000000007 R11: 0000000000000246 R12: 0000000000000000 [ 69.928766] R13: 000000c52e0e5590 R14: 0000000000020000 R15: 000000c52df83f4a [ 69.931055] Code: 8d 0c c9 83 e0 01 84 c0 4c 8d 14 ca 41 88 42 35 75 85 49 8b 42 20 41 0f b6 4a 34 41 b9 02 00 00 00 41 b8 01 00 00 00 4c 89 55 c0 <8b> 90 ec 02 00 00 8b b0 e8 02 00 00 48 8b 80 08 03 00 00 81 e2 [ 69.933380] RIP: tb_drom_read+0x383/0x890 [thunderbolt] RSP: ffffa698027ab990 [ 69.935708] CR2: 00000000000002ec [ 69.950221] ---[ end trace a3f247a8fe7705ab ]--- --- 8< --- -- Dr. Christian J. Kellner Red Hat Desktop Hardware Enablement ckellner@redhat.com