linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Christian Kellner <ckellner@redhat.com>
To: Mika Westerberg <mika.westerberg@linux.intel.com>
Cc: Andreas Noever <andreas.noever@gmail.com>,
	Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
	Michael Jamet <michael.jamet@intel.com>,
	Yehezkel Bernat <yehezkel.bernat@intel.com>,
	Lukas Wunner <lukas@wunner.de>,
	Amir Levy <amir.jer.levy@intel.com>,
	Andy Lutomirski <luto@kernel.org>,
	Mario.Limonciello@dell.com, Jared.Dominguez@dell.com,
	Andy Shevchenko <andriy.shevchenko@linux.intel.com>,
	linux-kernel@vger.kernel.org,
	Peter FP1 Zhang <zhangfp1@lenovo.com>
Subject: Re: [PATCH v4 00/27] Thunderbolt security levels and NVM firmware upgrade
Date: Thu, 20 Jul 2017 18:11:49 +0200	[thread overview]
Message-ID: <1500567109.13885.9.camel@redhat.com> (raw)
In-Reply-To: <20170606122519.35401-1-mika.westerberg@linux.intel.com>

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

  parent reply	other threads:[~2017-07-20 16:11 UTC|newest]

Thread overview: 37+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-06-06 12:24 [PATCH v4 00/27] Thunderbolt security levels and NVM firmware upgrade Mika Westerberg
2017-06-06 12:24 ` [PATCH v4 01/27] thunderbolt: Use const buffer pointer in write operations Mika Westerberg
2017-06-06 12:24 ` [PATCH v4 02/27] thunderbolt: No need to read UID of the root switch on resume Mika Westerberg
2017-06-06 13:07   ` Andy Shevchenko
2017-06-06 12:24 ` [PATCH v4 03/27] thunderbolt: Do not try to read UID if DROM offset is read as 0 Mika Westerberg
2017-06-06 12:24 ` [PATCH v4 04/27] thunderbolt: Do not warn about newer DROM versions Mika Westerberg
2017-06-06 12:24 ` [PATCH v4 05/27] thunderbolt: Add MSI-X support Mika Westerberg
2017-06-06 12:24 ` [PATCH v4 06/27] thunderbolt: Rework capability handling Mika Westerberg
2017-06-06 12:24 ` [PATCH v4 07/27] thunderbolt: Allow passing NULL to tb_ctl_free() Mika Westerberg
2017-06-06 12:25 ` [PATCH v4 08/27] thunderbolt: Introduce thunderbolt bus and connection manager Mika Westerberg
2017-06-06 12:25 ` [PATCH v4 09/27] thunderbolt: Convert switch to a device Mika Westerberg
2017-06-06 12:25 ` [PATCH v4 10/27] thunderbolt: Fail switch adding operation if reading DROM fails Mika Westerberg
2017-06-06 12:25 ` [PATCH v4 11/27] thunderbolt: Do not fail if DROM data CRC32 is invalid Mika Westerberg
2017-06-06 12:25 ` [PATCH v4 12/27] thunderbolt: Refactor and fix parsing of port drom entries Mika Westerberg
2017-06-06 12:25 ` [PATCH v4 13/27] thunderbolt: Read vendor and device name from DROM Mika Westerberg
2017-06-06 12:25 ` [PATCH v4 14/27] thunderbolt: Move control channel messages to tb_msgs.h Mika Westerberg
2017-06-06 12:25 ` [PATCH v4 15/27] thunderbolt: Expose get_route() to other files Mika Westerberg
2017-06-06 12:25 ` [PATCH v4 16/27] thunderbolt: Expose make_header() " Mika Westerberg
2017-06-06 12:25 ` [PATCH v4 17/27] thunderbolt: Let the connection manager handle all notifications Mika Westerberg
2017-06-06 12:25 ` [PATCH v4 18/27] thunderbolt: Rework control channel to be more reliable Mika Westerberg
2017-06-06 12:25 ` [PATCH v4 19/27] thunderbolt: Add new Thunderbolt PCI IDs Mika Westerberg
2017-06-06 12:25 ` [PATCH v4 20/27] thunderbolt: Add support for NHI mailbox Mika Westerberg
2017-06-06 12:25 ` [PATCH v4 21/27] thunderbolt: Store Thunderbolt generation in the switch structure Mika Westerberg
2017-06-06 12:25 ` [PATCH v4 22/27] thunderbolt: Add support for DMA configuration based mailbox Mika Westerberg
2017-06-06 12:25 ` [PATCH v4 23/27] thunderbolt: Do not touch the hardware if the NHI is gone on resume Mika Westerberg
2017-06-06 12:25 ` [PATCH v4 24/27] thunderbolt: Add support for Internal Connection Manager (ICM) Mika Westerberg
2017-06-06 12:25 ` [PATCH v4 25/27] thunderbolt: Add support for host and device NVM firmware upgrade Mika Westerberg
2017-06-06 12:25 ` [PATCH v4 26/27] thunderbolt: Add documentation how Thunderbolt bus can be used Mika Westerberg
2017-06-06 12:25 ` [PATCH v4 27/27] MAINTAINERS: Add maintainers for Thunderbolt driver Mika Westerberg
2017-06-09  9:44 ` [PATCH v4 00/27] Thunderbolt security levels and NVM firmware upgrade Greg Kroah-Hartman
2017-06-09 12:33   ` Mika Westerberg
2017-07-20 16:11 ` Christian Kellner [this message]
2017-07-20 16:15   ` Mario.Limonciello
2017-07-20 16:47     ` Christian Kellner
2017-07-24  6:52   ` Mika Westerberg
2017-07-25  9:11     ` Christian Kellner
2017-07-25  9:17       ` Mika Westerberg

Reply instructions:

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

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

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

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

  git send-email \
    --in-reply-to=1500567109.13885.9.camel@redhat.com \
    --to=ckellner@redhat.com \
    --cc=Jared.Dominguez@dell.com \
    --cc=Mario.Limonciello@dell.com \
    --cc=amir.jer.levy@intel.com \
    --cc=andreas.noever@gmail.com \
    --cc=andriy.shevchenko@linux.intel.com \
    --cc=gregkh@linuxfoundation.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=lukas@wunner.de \
    --cc=luto@kernel.org \
    --cc=michael.jamet@intel.com \
    --cc=mika.westerberg@linux.intel.com \
    --cc=yehezkel.bernat@intel.com \
    --cc=zhangfp1@lenovo.com \
    /path/to/YOUR_REPLY

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

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is 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).