linux/drivers
Johan Hovold aee5da7838 serdev: fix tty-port client deregistration
The port client data must be set when registering the serdev controller
or client deregistration will fail (and the serdev devices are left
registered and allocated) if the port was never opened in between.

Make sure to clear the port client data on any probe errors to avoid a
use-after-free when the client is later deregistered unconditionally
(e.g. in a tty-port deregistration helper).

Also move port client operation initialisation to registration. Note
that the client ops must be restored on failed probe.

Fixes: bed35c6dfa ("serdev: add a tty port controller driver")
Signed-off-by: Johan Hovold <johan@kernel.org>
Reviewed-by: Rob Herring <robh@kernel.org>
Cc: stable <stable@vger.kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
History 2017-05-18 16:41:49 +02:00
..
accessibility printk: move braille console support into separate braille.[ch] files 2013-07-31 14:41:03 -07:00
acpi More ACPI updates for v4.12-rc1 2017-05-10 09:35:42 -07:00
amba ARM: 8596/1: amba: Support clk parents and rates assigned in DT 2016-08-12 16:47:07 +01:00
android binder: Add 'hwbinder' to the default devices 2017-03-17 15:10:49 +09:00
ata ARM: SoC driver updates 2017-05-09 10:01:15 -07:00
atm ambassador: use setup_timer 2017-03-12 23:47:16 -07:00
auxdisplay Merge branch 'for-4.11/libnvdimm' into for-4.12/dax 2017-04-12 21:59:01 -07:00
base More power management updates for v4.12-rc1 2017-05-10 09:12:30 -07:00
bcma bcma: fill core OF info independently of bus type 2017-03-20 19:12:01 +02:00
block virtio: fixes, cleanups, performance 2017-05-10 11:33:08 -07:00
bluetooth Bluetooth: hci_ldisc: Add protocol check to hci_uart_tx_wakeup() 2017-04-30 12:22:14 +02:00
bus ARM: SoC driver updates 2017-02-23 15:57:04 -08:00
cdrom scsi: introduce a result field in struct scsi_request 2017-04-20 12:16:10 -06:00
char Annotation of module parameters that specify device settings 2017-05-10 19:13:03 -07:00
clk Sort of on the quieter side this time, which is probably due more 2017-05-10 13:38:18 -07:00
clocksource Merge branch 'timers-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip 2017-05-12 10:43:25 -07:00
connector connector: make cn_proc explicitly non-modular 2016-07-05 11:40:47 -07:00
cpufreq Merge branch 'upstream' of git://git.linux-mips.org/pub/scm/ralf/upstream-linus 2017-05-12 09:56:30 -07:00
cpuidle Merge branches 'pm-domains', 'pm-cpuidle', 'pm-sleep' and 'powercap' 2017-05-09 23:21:46 +02:00
crypto virtio: fixes, cleanups, performance 2017-05-10 11:33:08 -07:00
dax Merge branch 'libnvdimm-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/nvdimm/nvdimm 2017-05-12 15:43:10 -07:00
dca dmaengine: ioatdma: constify dca_ops structures 2015-11-16 09:27:32 +05:30
devfreq PM / devfreq: Move struct devfreq_governor to devfreq directory 2017-04-12 12:42:14 +09:00
dio Replace <asm/uaccess.h> with <linux/uaccess.h> globally 2016-12-24 11:46:01 -08:00
dma dmaengine updates for 4.12-rc1 2017-05-09 15:40:28 -07:00
dma-buf dma-buf: Rename dma-ops to prevent conflict with kunmap_atomic macro 2017-04-20 13:47:46 +05:30
edac EDAC, ghes: Do not enable it by default 2017-04-27 14:15:38 +02:00
eisa Revert "EISA: Initialize device before its resources" 2014-01-17 14:57:29 -07:00
extcon extcon: Use BIT() macro for the left-shift operation 2017-04-06 11:12:45 +09:00
firewire drivers, firewire: convert fw_node.ref_count from atomic_t to refcount_t 2017-03-23 13:57:19 +01:00
firmware ARM: SoC driver updates 2017-05-09 10:01:15 -07:00
fmc Merge 3.14-rc5 into char-misc-next 2014-03-02 19:53:09 -08:00
fpga fpga fr br: update supported version numbers 2017-04-26 11:38:56 +02:00
fsi drivers/fsi: add driver to device matches 2017-02-10 15:19:48 +01:00
gpio Annotation of module parameters that specify device settings 2017-05-10 19:13:03 -07:00
gpu drm/i915: Make vblank evade warnings optional 2017-05-12 14:28:02 +10:00
hid Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial 2017-05-02 19:09:35 -07:00
hsi HSI: ssi_protocol: double free in ssip_pn_xmit() 2017-04-21 17:58:45 +02:00
hv char/misc patches for 4.12-rc1 2017-05-04 19:15:35 -07:00
hwmon hwmon: (twl4030-madc) drop driver 2017-04-30 11:45:31 -07:00
hwspinlock hwspinlock: qcom_hwspinlock: add missing of_node_put after calling of_parse_phandle 2016-07-06 12:20:34 -07:00
hwtracing drivers/hwtracing/intel_th/msu.c: use set_memory.h header 2017-05-08 17:15:14 -07:00
i2c Annotation of module parameters that specify device settings 2017-05-10 19:13:03 -07:00
ide ide: don't call memcpy with the same source and destination 2017-05-08 17:36:39 -04:00
idle x86/intel_idle: add Gemini Lake support 2017-05-01 23:17:37 +02:00
iio Annotation of module parameters that specify device settings 2017-05-10 19:13:03 -07:00
infiniband Merge branch 'for-next' of git://git.kernel.org/pub/scm/linux/kernel/git/nab/target-pending 2017-05-12 11:44:13 -07:00
input Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input 2017-05-13 10:25:05 -07:00
iommu IOMMU Updates for Linux v4.12 2017-05-09 15:15:47 -07:00
ipack ipack: print a hex number after a 0x prefix 2016-10-27 18:43:43 -07:00
irqchip Merge branch 'upstream' of git://git.linux-mips.org/pub/scm/ralf/upstream-linus 2017-05-12 09:56:30 -07:00
isdn Annotation of module parameters that specify device settings 2017-05-10 19:13:03 -07:00
leds scripts/spelling.txt: add "memory" pattern and fix typos 2017-05-08 17:15:13 -07:00
lguest x86: Remap GDT tables in the fixmap section 2017-03-16 09:06:35 +01:00
lightnvm lightnvm: fix bad back free on error path 2017-05-04 07:53:04 -06:00
macintosh DeviceTree for 4.12: 2017-05-05 19:33:07 -07:00
mailbox mailbox: handle empty message in tx_tick 2017-04-27 16:20:04 +05:30
mcb mcb: fix compiler warning logical-op in mcb-parse.c 2016-11-15 10:52:37 +01:00
md mm, vmalloc: use __GFP_HIGHMEM implicitly 2017-05-08 17:15:13 -07:00
media Annotation of module parameters that specify device settings 2017-05-10 19:13:03 -07:00
memory MTD updates for 4.12-rc1: 2017-05-11 10:44:22 -07:00
memstick Merge branch 'for-4.11/next' into for-4.11/linus-merge 2017-02-17 14:08:19 -07:00
message scsi: mpt: Move scsi_remove_host() out of mptscsih_remove_host() 2017-04-24 18:21:17 -04:00
mfd mfd: axp20x: Support AXP803 variant 2017-04-27 11:54:49 +01:00
misc Annotation of module parameters that specify device settings 2017-05-10 19:13:03 -07:00
mmc Annotation of module parameters that specify device settings 2017-05-10 19:13:03 -07:00
mtd This pull request contains updates for both UBI and UBIFS: 2017-05-13 10:23:12 -07:00
net powerpc updates for 4.12 part 2 2017-05-12 10:04:09 -07:00
nfc nfc: fix get_unaligned_...() misuses 2017-04-17 00:42:22 +02:00
ntb ntb: ntb_hw_intel: link_poll isn't clearing the pending status properly 2017-02-16 23:11:26 -05:00
nubus nubus: Clean up whitespace 2017-04-20 09:54:24 +02:00
nvdimm Merge branch 'libnvdimm-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/nvdimm/nvdimm 2017-05-12 15:43:10 -07:00
nvme Merge branch 'for-linus' of git://git.kernel.dk/linux-block 2017-05-11 11:01:56 -07:00
nvmem ARM: SoC driver updates 2017-05-09 10:01:15 -07:00
of powerpc updates for 4.12 part 2 2017-05-12 10:04:09 -07:00
oprofile sched/headers: Prepare to move the get_task_struct()/put_task_struct() and related APIs from <linux/sched.h> to <linux/sched/task.h> 2017-03-02 08:42:40 +01:00
parisc Merge branch 'parisc-4.11-1' of git://git.kernel.org/pub/scm/linux/kernel/git/deller/parisc-linux 2017-03-03 16:20:06 -08:00
parport Annotate hardware config module parameters in drivers/parport/ 2017-04-20 12:02:32 +01:00
pci Annotation of module parameters that specify device settings 2017-05-10 19:13:03 -07:00
pcmcia Annotation of module parameters that specify device settings 2017-05-10 19:13:03 -07:00
perf drivers/perf: arm_pmu: add ACPI framework 2017-04-11 16:29:54 +01:00
phy phy: qcom-qusb2: add NVMEM dependency 2017-04-10 16:43:41 +05:30
pinctrl Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial 2017-05-02 19:09:35 -07:00
platform char/misc patches for 4.12-rc1 2017-05-04 19:15:35 -07:00
pnp x86: Remap GDT tables in the fixmap section 2017-03-16 09:06:35 +01:00
power power supply and reset changes for the v4.12 series (part 2) 2017-05-12 12:02:21 -07:00
powercap powercap: intel_rapl: Add support for Gemini Lake 2017-04-28 23:56:16 +02:00
pps pps: fix padding issue with PPS_FETCH for ioctl_compat 2017-03-17 15:10:49 +09:00
ps3 sched/headers: Prepare for new header dependencies before moving code to <linux/sched/signal.h> 2017-03-02 08:42:29 +01:00
ptp Merge branch 'timers-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip 2017-05-01 16:15:18 -07:00
pwm Merge branch 'for-4.12/drivers' into for-next 2017-04-13 17:41:50 +02:00
rapidio char/misc patches for 4.12-rc1 2017-05-04 19:15:35 -07:00
ras RAS: Add a Corrected Errors Collector 2017-03-28 08:54:48 +02:00
regulator Merge remote-tracking branch 'regulator/topic/vctrl' into regulator-next 2017-04-30 22:17:44 +09:00
remoteproc virtio: fixes, cleanups, performance 2017-05-10 11:33:08 -07:00
reset ARM: SoC driver updates 2017-05-09 10:01:15 -07:00
rpmsg virtio: fixes, cleanups, performance 2017-05-10 11:33:08 -07:00
rtc RTC for 4.12 2017-05-10 19:37:14 -07:00
s390 virtio: fixes, cleanups, performance 2017-05-10 11:33:08 -07:00
sbus jsflash: stop sharing request queue across multiple gendisks 2017-03-28 15:06:58 -06:00
scsi Merge branch 'for-next' of git://git.kernel.org/pub/scm/linux/kernel/git/nab/target-pending 2017-05-12 11:44:13 -07:00
sfi SFI: fix compiler warnings 2014-12-03 18:49:20 -05:00
sh lib: radix-tree: check accounting of existing slot replacement users 2016-12-12 18:55:08 -08:00
sn Drivers: misc: remove __dev* attributes. 2013-01-03 15:57:16 -08:00
soc powerpc updates for 4.12 part 2 2017-05-12 10:04:09 -07:00
spi Merge remote-tracking branches 'spi/topic/ti-qspi' and 'spi/topic/xlp' into spi-next 2017-04-26 15:58:22 +01:00
spmi spmi: pmic-arb: Return an error code if sanity check fails 2016-09-27 12:43:34 +02:00
ssb ssb: Fix error routine when fallback SPROM fails 2016-11-17 08:49:04 +02:00
staging Annotation of module parameters that specify device settings 2017-05-10 19:13:03 -07:00
target Merge branch 'for-next' of git://git.kernel.org/pub/scm/linux/kernel/git/nab/target-pending 2017-05-12 11:44:13 -07:00
tc TC: Error handling clean-ups 2014-11-24 07:45:25 +01:00
tee TEE driver infrastructure and OP-TEE drivers 2017-05-10 11:20:09 -07:00
thermal Merge branch 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/rzhang/linux 2017-05-12 11:58:45 -07:00
thunderbolt Char/Misc driver patches for 4.10-rc1 2016-12-13 12:11:01 -08:00
tty serdev: fix tty-port client deregistration 2017-05-18 16:41:49 +02:00
uio uio_mf624: Align memory regions to page size and set correct offsets 2017-04-08 18:13:28 +02:00
usb DeviceTree for 4.12: 2017-05-05 19:33:07 -07:00
uwb uwb: i1480-dfu: fix NULL-deref at probe 2017-03-14 17:07:31 +08:00
vfio powerpc updates for 4.12 part 1. 2017-05-05 11:36:44 -07:00
vhost mm: support __GFP_REPEAT in kvmalloc_node for >32kB 2017-05-08 17:15:12 -07:00
video fbdev changes for v4.12: 2017-05-11 11:12:26 -07:00
virt drivers/virt/fsl_hypervisor.c: use get_user_pages_unlocked() 2017-05-08 17:15:10 -07:00
virtio virtio: allow extra context per descriptor 2017-05-02 23:41:43 +03:00
vlynq drivers/vlynq/vlynq.c: fix another resource size off by 1 error 2014-01-23 16:36:55 -08:00
vme docs: Add kernel-doc comments to VME driver API 2017-03-17 15:10:49 +09:00
w1 w1: Remove unneeded use of assert() and remove w1_log.h 2017-04-08 18:20:57 +02:00
watchdog Annotation of module parameters that specify device settings 2017-05-10 19:13:03 -07:00
xen Merge branch 'work.misc' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs 2017-05-09 09:12:53 -07:00
zorro zorro: stop creating attributes by hand 2017-03-17 15:10:49 +09:00
Kconfig tee: generic TEE subsystem 2017-03-09 15:42:33 +01:00
Makefile TEE driver infrastructure and OP-TEE drivers 2017-05-10 11:20:09 -07:00