linux/drivers/hwtracing/intel_th
Alexander Shishkin 9ed3f22223 intel_th: Don't reference unassigned outputs
When an output port driver is removed, also remove references to it from
any masters. Failing to do this causes a NULL ptr dereference when
configuring another output port:

> BUG: unable to handle kernel NULL pointer dereference at 000000000000000d
> RIP: 0010:master_attr_store+0x9d/0x160 [intel_th_gth]
> Call Trace:
> dev_attr_store+0x1b/0x30
> sysfs_kf_write+0x3c/0x50
> kernfs_fop_write+0x125/0x1a0
> __vfs_write+0x3a/0x190
> ? __vfs_write+0x5/0x190
> ? _cond_resched+0x1a/0x50
> ? rcu_all_qs+0x5/0xb0
> ? __vfs_write+0x5/0x190
> vfs_write+0xb8/0x1b0
> ksys_write+0x55/0xc0
> __x64_sys_write+0x1a/0x20
> do_syscall_64+0x5a/0x140
> entry_SYSCALL_64_after_hwframe+0x44/0xa9

Signed-off-by: Alexander Shishkin <alexander.shishkin@linux.intel.com>
Fixes: b27a6a3f97 ("intel_th: Add Global Trace Hub driver")
CC: stable@vger.kernel.org # v4.4+
Reported-by: Ammy Yi <ammy.yi@intel.com>
2019-02-21 17:43:14 +02:00
..
acpi.c intel_th: Add ACPI glue layer 2018-03-28 18:47:23 +03:00
core.c intel_th: Only create useful device nodes 2019-02-21 15:04:36 +02:00
debug.c intel_th: Add SPDX GPL-2.0 header to replace GPLv2 boilerplate 2018-03-28 18:47:19 +03:00
debug.h intel_th: Add SPDX GPL-2.0 header to replace GPLv2 boilerplate 2018-03-28 18:47:19 +03:00
gth.c intel_th: Don't reference unassigned outputs 2019-02-21 17:43:14 +02:00
gth.h intel_th: Add SPDX GPL-2.0 header to replace GPLv2 boilerplate 2018-03-28 18:47:19 +03:00
intel_th.h intel_th: Allow forcing host mode through drvdata 2018-03-28 18:47:21 +03:00
Kconfig intel_th: Add ACPI glue layer 2018-03-28 18:47:23 +03:00
Makefile intel_th: Add ACPI glue layer 2018-03-28 18:47:23 +03:00
msu.c intel_th: msu: Fix an off-by-one in attribute store 2018-12-19 20:21:06 +01:00
msu.h intel_th: Add SPDX GPL-2.0 header to replace GPLv2 boilerplate 2018-03-28 18:47:19 +03:00
pci.c intel_th: pci: Add Ice Lake PCH support 2018-09-18 16:08:38 +02:00
pti.c intel_th: pti: Use sysfs_match_string() helper 2019-02-21 15:04:36 +02:00
pti.h intel_th: Add SPDX GPL-2.0 header to replace GPLv2 boilerplate 2018-03-28 18:47:19 +03:00
sth.c intel_th: Mark expected switch fall-throughs 2019-02-21 15:04:36 +02:00
sth.h intel_th: Add SPDX GPL-2.0 header to replace GPLv2 boilerplate 2018-03-28 18:47:19 +03:00