public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Sasha Levin <sashal@kernel.org>
To: linux-kernel@vger.kernel.org, stable@vger.kernel.org
Cc: Oleg Nesterov <oleg@redhat.com>, Tejun Heo <tj@kernel.org>,
	Sasha Levin <sashal@kernel.org>,
	cgroups@vger.kernel.org
Subject: [PATCH AUTOSEL 4.14 095/123] cgroup/pids: turn cgroup_subsys->free() into cgroup_subsys->release() to fix the accounting
Date: Wed, 27 Mar 2019 14:15:59 -0400	[thread overview]
Message-ID: <20190327181628.15899-95-sashal@kernel.org> (raw)
In-Reply-To: <20190327181628.15899-1-sashal@kernel.org>

From: Oleg Nesterov <oleg@redhat.com>

[ Upstream commit 51bee5abeab2058ea5813c5615d6197a23dbf041 ]

The only user of cgroup_subsys->free() callback is pids_cgrp_subsys which
needs pids_free() to uncharge the pid.

However, ->free() is called from __put_task_struct()->cgroup_free() and this
is too late. Even the trivial program which does

	for (;;) {
		int pid = fork();
		assert(pid >= 0);
		if (pid)
			wait(NULL);
		else
			exit(0);
	}

can run out of limits because release_task()->call_rcu(delayed_put_task_struct)
implies an RCU gp after the task/pid goes away and before the final put().

Test-case:

	mkdir -p /tmp/CG
	mount -t cgroup2 none /tmp/CG
	echo '+pids' > /tmp/CG/cgroup.subtree_control

	mkdir /tmp/CG/PID
	echo 2 > /tmp/CG/PID/pids.max

	perl -e 'while ($p = fork) { wait; } $p // die "fork failed: $!\n"' &
	echo $! > /tmp/CG/PID/cgroup.procs

Without this patch the forking process fails soon after migration.

Rename cgroup_subsys->free() to cgroup_subsys->release() and move the callsite
into the new helper, cgroup_release(), called by release_task() which actually
frees the pid(s).

Reported-by: Herton R. Krzesinski <hkrzesin@redhat.com>
Reported-by: Jan Stancek <jstancek@redhat.com>
Signed-off-by: Oleg Nesterov <oleg@redhat.com>
Signed-off-by: Tejun Heo <tj@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
---
 include/linux/cgroup-defs.h |  2 +-
 include/linux/cgroup.h      |  2 ++
 kernel/cgroup/cgroup.c      | 15 +++++++++------
 kernel/cgroup/pids.c        |  4 ++--
 kernel/exit.c               |  1 +
 5 files changed, 15 insertions(+), 9 deletions(-)

diff --git a/include/linux/cgroup-defs.h b/include/linux/cgroup-defs.h
index e7905d9353e8..93a2469a9130 100644
--- a/include/linux/cgroup-defs.h
+++ b/include/linux/cgroup-defs.h
@@ -523,7 +523,7 @@ struct cgroup_subsys {
 	void (*cancel_fork)(struct task_struct *task);
 	void (*fork)(struct task_struct *task);
 	void (*exit)(struct task_struct *task);
-	void (*free)(struct task_struct *task);
+	void (*release)(struct task_struct *task);
 	void (*bind)(struct cgroup_subsys_state *root_css);
 
 	bool early_init:1;
diff --git a/include/linux/cgroup.h b/include/linux/cgroup.h
index dddbc29e2009..8e83c9055ccb 100644
--- a/include/linux/cgroup.h
+++ b/include/linux/cgroup.h
@@ -118,6 +118,7 @@ extern int cgroup_can_fork(struct task_struct *p);
 extern void cgroup_cancel_fork(struct task_struct *p);
 extern void cgroup_post_fork(struct task_struct *p);
 void cgroup_exit(struct task_struct *p);
+void cgroup_release(struct task_struct *p);
 void cgroup_free(struct task_struct *p);
 
 int cgroup_init_early(void);
@@ -668,6 +669,7 @@ static inline int cgroup_can_fork(struct task_struct *p) { return 0; }
 static inline void cgroup_cancel_fork(struct task_struct *p) {}
 static inline void cgroup_post_fork(struct task_struct *p) {}
 static inline void cgroup_exit(struct task_struct *p) {}
+static inline void cgroup_release(struct task_struct *p) {}
 static inline void cgroup_free(struct task_struct *p) {}
 
 static inline int cgroup_init_early(void) { return 0; }
diff --git a/kernel/cgroup/cgroup.c b/kernel/cgroup/cgroup.c
index 7e79358b4473..694b1cc8d144 100644
--- a/kernel/cgroup/cgroup.c
+++ b/kernel/cgroup/cgroup.c
@@ -187,7 +187,7 @@ static u64 css_serial_nr_next = 1;
  */
 static u16 have_fork_callback __read_mostly;
 static u16 have_exit_callback __read_mostly;
-static u16 have_free_callback __read_mostly;
+static u16 have_release_callback __read_mostly;
 static u16 have_canfork_callback __read_mostly;
 
 /* cgroup namespace for init task */
@@ -5112,7 +5112,7 @@ static void __init cgroup_init_subsys(struct cgroup_subsys *ss, bool early)
 
 	have_fork_callback |= (bool)ss->fork << ss->id;
 	have_exit_callback |= (bool)ss->exit << ss->id;
-	have_free_callback |= (bool)ss->free << ss->id;
+	have_release_callback |= (bool)ss->release << ss->id;
 	have_canfork_callback |= (bool)ss->can_fork << ss->id;
 
 	/* At system boot, before all subsystems have been
@@ -5546,16 +5546,19 @@ void cgroup_exit(struct task_struct *tsk)
 	} while_each_subsys_mask();
 }
 
-void cgroup_free(struct task_struct *task)
+void cgroup_release(struct task_struct *task)
 {
-	struct css_set *cset = task_css_set(task);
 	struct cgroup_subsys *ss;
 	int ssid;
 
-	do_each_subsys_mask(ss, ssid, have_free_callback) {
-		ss->free(task);
+	do_each_subsys_mask(ss, ssid, have_release_callback) {
+		ss->release(task);
 	} while_each_subsys_mask();
+}
 
+void cgroup_free(struct task_struct *task)
+{
+	struct css_set *cset = task_css_set(task);
 	put_css_set(cset);
 }
 
diff --git a/kernel/cgroup/pids.c b/kernel/cgroup/pids.c
index 9829c67ebc0a..c9960baaa14f 100644
--- a/kernel/cgroup/pids.c
+++ b/kernel/cgroup/pids.c
@@ -247,7 +247,7 @@ static void pids_cancel_fork(struct task_struct *task)
 	pids_uncharge(pids, 1);
 }
 
-static void pids_free(struct task_struct *task)
+static void pids_release(struct task_struct *task)
 {
 	struct pids_cgroup *pids = css_pids(task_css(task, pids_cgrp_id));
 
@@ -342,7 +342,7 @@ struct cgroup_subsys pids_cgrp_subsys = {
 	.cancel_attach 	= pids_cancel_attach,
 	.can_fork	= pids_can_fork,
 	.cancel_fork	= pids_cancel_fork,
-	.free		= pids_free,
+	.release	= pids_release,
 	.legacy_cftypes	= pids_files,
 	.dfl_cftypes	= pids_files,
 	.threaded	= true,
diff --git a/kernel/exit.c b/kernel/exit.c
index 5523fb0c20c8..95ce231ff5e2 100644
--- a/kernel/exit.c
+++ b/kernel/exit.c
@@ -218,6 +218,7 @@ void release_task(struct task_struct *p)
 	}
 
 	write_unlock_irq(&tasklist_lock);
+	cgroup_release(p);
 	release_thread(p);
 	call_rcu(&p->rcu, delayed_put_task_struct);
 
-- 
2.19.1


  parent reply	other threads:[~2019-03-27 18:47 UTC|newest]

Thread overview: 123+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-03-27 18:14 [PATCH AUTOSEL 4.14 001/123] CIFS: fix POSIX lock leak and invalid ptr deref Sasha Levin
2019-03-27 18:14 ` [PATCH AUTOSEL 4.14 002/123] h8300: use cc-cross-prefix instead of hardcoding h8300-unknown-linux- Sasha Levin
2019-03-27 18:14 ` [PATCH AUTOSEL 4.14 003/123] f2fs: fix to avoid deadlock in f2fs_read_inline_dir() Sasha Levin
2019-03-27 18:14 ` [PATCH AUTOSEL 4.14 004/123] i2c: sis630: correct format strings Sasha Levin
2019-03-27 18:14 ` [PATCH AUTOSEL 4.14 005/123] tracing: kdb: Fix ftdump to not sleep Sasha Levin
2019-03-27 18:14 ` [PATCH AUTOSEL 4.14 006/123] net/mlx5: Avoid panic when setting vport rate Sasha Levin
2019-03-27 18:14 ` [PATCH AUTOSEL 4.14 007/123] net/mlx5: Avoid panic when setting vport mac, getting vport config Sasha Levin
2019-03-27 18:14 ` [PATCH AUTOSEL 4.14 008/123] gpio: gpio-omap: fix level interrupt idling Sasha Levin
2019-03-27 18:14 ` [PATCH AUTOSEL 4.14 009/123] include/linux/relay.h: fix percpu annotation in struct rchan Sasha Levin
2019-03-27 18:14 ` [PATCH AUTOSEL 4.14 010/123] sysctl: handle overflow for file-max Sasha Levin
2019-03-27 18:14 ` [PATCH AUTOSEL 4.14 011/123] enic: fix build warning without CONFIG_CPUMASK_OFFSTACK Sasha Levin
2019-03-27 18:14 ` [PATCH AUTOSEL 4.14 012/123] scsi: hisi_sas: Set PHY linkrate when disconnected Sasha Levin
2019-03-27 18:14 ` [PATCH AUTOSEL 4.14 013/123] iio: adc: fix warning in Qualcomm PM8xxx HK/XOADC driver Sasha Levin
2019-03-27 18:14 ` [PATCH AUTOSEL 4.14 014/123] perf c2c: Fix c2c report for empty numa node Sasha Levin
2019-03-27 18:14 ` [PATCH AUTOSEL 4.14 015/123] mm/cma.c: cma_declare_contiguous: correct err handling Sasha Levin
2019-03-27 18:14 ` [PATCH AUTOSEL 4.14 016/123] mm/page_ext.c: fix an imbalance with kmemleak Sasha Levin
2019-03-27 18:14 ` [PATCH AUTOSEL 4.14 017/123] mm, mempolicy: fix uninit memory access Sasha Levin
2019-03-27 18:14 ` [PATCH AUTOSEL 4.14 018/123] mm/vmalloc.c: fix kernel BUG at mm/vmalloc.c:512! Sasha Levin
2019-03-27 18:14 ` [PATCH AUTOSEL 4.14 019/123] mm/slab.c: kmemleak no scan alien caches Sasha Levin
2019-03-27 18:14 ` [PATCH AUTOSEL 4.14 020/123] ocfs2: fix a panic problem caused by o2cb_ctl Sasha Levin
2019-03-27 18:14 ` [PATCH AUTOSEL 4.14 021/123] f2fs: do not use mutex lock in atomic context Sasha Levin
2019-03-27 18:14 ` [PATCH AUTOSEL 4.14 022/123] f2fs: fix to data block override node segment by mistake Sasha Levin
2019-03-27 18:14 ` [PATCH AUTOSEL 4.14 023/123] fs/file.c: initialize init_files.resize_wait Sasha Levin
2019-03-27 18:14 ` [PATCH AUTOSEL 4.14 024/123] page_poison: play nicely with KASAN Sasha Levin
2019-03-27 18:14 ` [PATCH AUTOSEL 4.14 025/123] cifs: use correct format characters Sasha Levin
2019-03-27 18:14 ` [PATCH AUTOSEL 4.14 026/123] dm thin: add sanity checks to thin-pool and external snapshot creation Sasha Levin
2019-03-27 18:14 ` [PATCH AUTOSEL 4.14 027/123] cifs: Fix NULL pointer dereference of devname Sasha Levin
2019-03-27 18:14 ` [PATCH AUTOSEL 4.14 028/123] fs: Make splice() and tee() take into account O_NONBLOCK flag on pipes Sasha Levin
2019-03-27 18:14 ` [PATCH AUTOSEL 4.14 029/123] jbd2: fix invalid descriptor block checksum Sasha Levin
2019-03-27 18:14 ` [PATCH AUTOSEL 4.14 030/123] fs: fix guard_bio_eod to check for real EOD errors Sasha Levin
2019-03-27 18:14 ` [PATCH AUTOSEL 4.14 031/123] tools lib traceevent: Fix buffer overflow in arg_eval Sasha Levin
2019-03-27 18:14 ` [PATCH AUTOSEL 4.14 032/123] PCI/PME: Fix hotplug/sysfs remove deadlock in pcie_pme_remove() Sasha Levin
2019-03-27 18:14 ` [PATCH AUTOSEL 4.14 033/123] wil6210: check null pointer in _wil_cfg80211_merge_extra_ies Sasha Levin
2019-03-27 18:14 ` [PATCH AUTOSEL 4.14 034/123] crypto: crypto4xx - add missing of_node_put after of_device_is_available Sasha Levin
2019-03-27 18:14 ` [PATCH AUTOSEL 4.14 035/123] crypto: cavium/zip - fix collision with generic cra_driver_name Sasha Levin
2019-03-27 18:15 ` [PATCH AUTOSEL 4.14 036/123] usb: chipidea: Grab the (legacy) USB PHY by phandle first Sasha Levin
2019-03-27 18:15 ` [PATCH AUTOSEL 4.14 037/123] scsi: core: replace GFP_ATOMIC with GFP_KERNEL in scsi_scan.c Sasha Levin
2019-03-27 18:15 ` [PATCH AUTOSEL 4.14 038/123] powerpc/xmon: Fix opcode being uninitialized in print_insn_powerpc Sasha Levin
2019-03-27 18:15 ` [PATCH AUTOSEL 4.14 039/123] coresight: etm4x: Add support to enable ETMv4.2 Sasha Levin
2019-03-27 18:15 ` [PATCH AUTOSEL 4.14 040/123] serial: 8250_pxa: honor the port number from devicetree Sasha Levin
2019-03-27 18:15 ` [PATCH AUTOSEL 4.14 041/123] ARM: 8840/1: use a raw_spinlock_t in unwind Sasha Levin
2019-03-27 18:15 ` [PATCH AUTOSEL 4.14 042/123] iommu/io-pgtable-arm-v7s: Only kmemleak_ignore L2 tables Sasha Levin
2019-03-27 18:15 ` [PATCH AUTOSEL 4.14 043/123] powerpc/hugetlb: Handle mmap_min_addr correctly in get_unmapped_area callback Sasha Levin
2019-03-27 18:15 ` [PATCH AUTOSEL 4.14 044/123] mmc: omap: fix the maximum timeout setting Sasha Levin
2019-03-27 18:15 ` [PATCH AUTOSEL 4.14 045/123] e1000e: Fix -Wformat-truncation warnings Sasha Levin
2019-03-27 18:15 ` [PATCH AUTOSEL 4.14 046/123] mlxsw: spectrum: Avoid " Sasha Levin
2019-03-27 18:15 ` [PATCH AUTOSEL 4.14 047/123] IB/mlx4: Increase the timeout for CM cache Sasha Levin
2019-03-27 18:15 ` [PATCH AUTOSEL 4.14 048/123] clk: fractional-divider: check parent rate only if flag is set Sasha Levin
2019-03-27 18:15 ` [PATCH AUTOSEL 4.14 049/123] ASoC: qcom: Fix of-node refcount unbalance in apq8016_sbc_parse_of() Sasha Levin
2019-03-27 18:15 ` [PATCH AUTOSEL 4.14 050/123] cpufreq: acpi-cpufreq: Report if CPU doesn't support boost technologies Sasha Levin
2019-03-27 18:15 ` [PATCH AUTOSEL 4.14 051/123] efi: cper: Fix possible out-of-bounds access Sasha Levin
2019-03-27 18:15 ` [PATCH AUTOSEL 4.14 052/123] scsi: megaraid_sas: return error when create DMA pool failed Sasha Levin
2019-03-27 18:15 ` [PATCH AUTOSEL 4.14 053/123] scsi: fcoe: make use of fip_mode enum complete Sasha Levin
2019-03-27 18:15 ` [PATCH AUTOSEL 4.14 054/123] perf test: Fix failure of 'evsel-tp-sched' test on s390 Sasha Levin
2019-03-27 18:15 ` [PATCH AUTOSEL 4.14 055/123] SoC: imx-sgtl5000: add missing put_device() Sasha Levin
2019-03-27 18:15 ` [PATCH AUTOSEL 4.14 056/123] media: sh_veu: Correct return type for mem2mem buffer helpers Sasha Levin
2019-03-27 18:15 ` [PATCH AUTOSEL 4.14 057/123] media: s5p-jpeg: " Sasha Levin
2019-03-27 18:15 ` [PATCH AUTOSEL 4.14 058/123] media: s5p-g2d: " Sasha Levin
2019-03-27 18:15 ` [PATCH AUTOSEL 4.14 059/123] media: mx2_emmaprp: " Sasha Levin
2019-03-27 18:15 ` [PATCH AUTOSEL 4.14 060/123] media: mtk-jpeg: " Sasha Levin
2019-03-27 18:15 ` [PATCH AUTOSEL 4.14 061/123] Bluetooth: hci_ldisc: Initialize hci_dev before open() Sasha Levin
2019-03-27 18:15 ` [PATCH AUTOSEL 4.14 062/123] vfs: fix preadv64v2 and pwritev64v2 compat syscalls with offset == -1 Sasha Levin
2019-03-27 18:15 ` [PATCH AUTOSEL 4.14 063/123] HID: intel-ish-hid: avoid binding wrong ishtp_cl_device Sasha Levin
2019-03-27 18:15 ` [PATCH AUTOSEL 4.14 064/123] jbd2: fix race when writing superblock Sasha Levin
2019-03-27 18:15 ` [PATCH AUTOSEL 4.14 065/123] leds: lp55xx: fix null deref on firmware load failure Sasha Levin
2019-03-27 18:15 ` [PATCH AUTOSEL 4.14 066/123] iwlwifi: pcie: fix emergency path Sasha Levin
2019-03-27 18:15 ` [PATCH AUTOSEL 4.14 067/123] ACPI / video: Refactor and fix dmi_is_desktop() Sasha Levin
2019-03-27 18:15 ` [PATCH AUTOSEL 4.14 068/123] drm: allow render capable master with DRM_AUTH ioctls Sasha Levin
2019-03-27 18:15 ` [PATCH AUTOSEL 4.14 069/123] kprobes: Prohibit probing on bsearch() Sasha Levin
2019-03-27 18:15 ` [PATCH AUTOSEL 4.14 070/123] netfilter: conntrack: fix cloned unconfirmed skb->_nfct race in __nf_conntrack_confirm Sasha Levin
2019-03-27 18:15 ` [PATCH AUTOSEL 4.14 071/123] ARM: 8833/1: Ensure that NEON code always compiles with Clang Sasha Levin
2019-03-27 18:15 ` [PATCH AUTOSEL 4.14 072/123] ALSA: PCM: check if ops are defined before suspending PCM Sasha Levin
2019-03-27 18:15 ` [PATCH AUTOSEL 4.14 073/123] usb: f_fs: Avoid crash due to out-of-scope stack ptr access Sasha Levin
2019-03-27 18:15 ` [PATCH AUTOSEL 4.14 074/123] sched/topology: Fix percpu data types in struct sd_data & struct s_data Sasha Levin
2019-03-27 18:15 ` [PATCH AUTOSEL 4.14 075/123] bcache: fix input overflow to cache set sysfs file io_error_halflife Sasha Levin
2019-03-27 18:15 ` [PATCH AUTOSEL 4.14 076/123] bcache: fix input overflow to sequential_cutoff Sasha Levin
2019-03-27 18:15 ` [PATCH AUTOSEL 4.14 077/123] bcache: improve sysfs_strtoul_clamp() Sasha Levin
2019-03-27 18:15 ` [PATCH AUTOSEL 4.14 078/123] genirq: Avoid summation loops for /proc/stat Sasha Levin
2019-03-27 18:15 ` [PATCH AUTOSEL 4.14 079/123] iw_cxgb4: fix srqidx leak during connection abort Sasha Levin
2019-03-27 18:15 ` [PATCH AUTOSEL 4.14 080/123] fbdev: fbmem: fix memory access if logo is bigger than the screen Sasha Levin
2019-03-27 18:15 ` [PATCH AUTOSEL 4.14 081/123] cdrom: Fix race condition in cdrom_sysctl_register Sasha Levin
2019-03-27 18:15 ` [PATCH AUTOSEL 4.14 082/123] e1000e: fix cyclic resets at link up with active tx Sasha Levin
2019-03-27 18:15 ` [PATCH AUTOSEL 4.14 083/123] platform/x86: intel_pmc_core: Fix PCH IP sts reading Sasha Levin
2019-03-27 18:15 ` [PATCH AUTOSEL 4.14 084/123] ASoC: fsl-asoc-card: fix object reference leaks in fsl_asoc_card_probe Sasha Levin
2019-03-27 18:15 ` [PATCH AUTOSEL 4.14 085/123] sched/debug: Initialize sd_sysctl_cpus if !CONFIG_CPUMASK_OFFSTACK Sasha Levin
2019-03-27 18:15 ` [PATCH AUTOSEL 4.14 086/123] locking/lockdep: Add debug_locks check in __lock_downgrade() Sasha Levin
2019-03-27 18:15 ` [PATCH AUTOSEL 4.14 087/123] efi/memattr: Don't bail on zero VA if it equals the region's PA Sasha Levin
2019-03-27 18:15 ` [PATCH AUTOSEL 4.14 088/123] ARM: dts: lpc32xx: Remove leading 0x and 0s from bindings notation Sasha Levin
2019-03-27 18:15 ` [PATCH AUTOSEL 4.14 089/123] efi/arm/arm64: Allow SetVirtualAddressMap() to be omitted Sasha Levin
2019-03-27 18:15 ` [PATCH AUTOSEL 4.14 090/123] soc: qcom: gsbi: Fix error handling in gsbi_probe() Sasha Levin
2019-03-27 18:15 ` [PATCH AUTOSEL 4.14 091/123] mt7601u: bump supported EEPROM version Sasha Levin
2019-03-27 18:15 ` [PATCH AUTOSEL 4.14 092/123] ARM: 8830/1: NOMMU: Toggle only bits in EXC_RETURN we are really care of Sasha Levin
2019-03-27 18:15 ` [PATCH AUTOSEL 4.14 093/123] ARM: avoid Cortex-A9 livelock on tight dmb loops Sasha Levin
2019-03-27 18:15 ` [PATCH AUTOSEL 4.14 094/123] bpf: fix missing prototype warnings Sasha Levin
2019-03-27 18:15 ` Sasha Levin [this message]
2019-03-27 18:16 ` [PATCH AUTOSEL 4.14 096/123] backlight: pwm_bl: Use gpiod_get_value_cansleep() to get initial state Sasha Levin
2019-03-27 18:16 ` [PATCH AUTOSEL 4.14 097/123] tty: increase the default flip buffer limit to 2*640K Sasha Levin
2019-03-27 18:16 ` [PATCH AUTOSEL 4.14 098/123] powerpc/pseries: Perform full re-add of CPU for topology update post-migration Sasha Levin
2019-03-27 18:16 ` [PATCH AUTOSEL 4.14 099/123] usb: dwc3: gadget: Fix OTG events when gadget driver isn't loaded Sasha Levin
2019-03-27 18:16 ` [PATCH AUTOSEL 4.14 100/123] media: mt9m111: set initial frame size other than 0x0 Sasha Levin
2019-03-27 18:16 ` [PATCH AUTOSEL 4.14 101/123] hwrng: virtio - Avoid repeated init of completion Sasha Levin
2019-03-27 18:16 ` [PATCH AUTOSEL 4.14 102/123] soc/tegra: fuse: Fix illegal free of IO base address Sasha Levin
2019-03-27 18:16 ` [PATCH AUTOSEL 4.14 103/123] HID: intel-ish: ipc: handle PIMR before ish_wakeup also clear PISR busy_clear bit Sasha Levin
2019-03-27 18:16 ` [PATCH AUTOSEL 4.14 104/123] Bluetooth: Verify that l2cap_get_conf_opt provides large enough buffer Sasha Levin
2019-03-27 18:16 ` [PATCH AUTOSEL 4.14 105/123] hpet: Fix missing '=' character in the __setup() code of hpet_mmap_enable Sasha Levin
2019-03-27 18:16 ` [PATCH AUTOSEL 4.14 106/123] cpu/hotplug: Mute hotplug lockdep during init Sasha Levin
2019-03-27 18:16 ` [PATCH AUTOSEL 4.14 107/123] dmaengine: imx-dma: fix warning comparison of distinct pointer types Sasha Levin
2019-03-27 18:16 ` [PATCH AUTOSEL 4.14 108/123] dmaengine: qcom_hidma: assign channel cookie correctly Sasha Levin
2019-03-27 18:16 ` [PATCH AUTOSEL 4.14 109/123] dmaengine: qcom_hidma: initialize tx flags in hidma_prep_dma_* Sasha Levin
2019-03-27 18:16 ` [PATCH AUTOSEL 4.14 110/123] netfilter: physdev: relax br_netfilter dependency Sasha Levin
2019-03-27 18:16 ` [PATCH AUTOSEL 4.14 111/123] media: s5p-jpeg: Check for fmt_ver_flag when doing fmt enumeration Sasha Levin
2019-03-27 18:16 ` [PATCH AUTOSEL 4.14 112/123] regulator: act8865: Fix act8600_sudcdc_voltage_ranges setting Sasha Levin
2019-03-27 18:16 ` [PATCH AUTOSEL 4.14 113/123] drm: Auto-set allow_fb_modifiers when given modifiers at plane init Sasha Levin
2019-03-27 18:16 ` [PATCH AUTOSEL 4.14 114/123] drm/nouveau: Stop using drm_crtc_force_disable Sasha Levin
2019-03-27 18:16 ` [PATCH AUTOSEL 4.14 115/123] x86/build: Specify elf_i386 linker emulation explicitly for i386 objects Sasha Levin
2019-03-27 18:16 ` [PATCH AUTOSEL 4.14 116/123] selinux: do not override context on context mounts Sasha Levin
2019-03-27 18:16 ` [PATCH AUTOSEL 4.14 117/123] wlcore: Fix memory leak in case wl12xx_fetch_firmware failure Sasha Levin
2019-03-27 18:16 ` [PATCH AUTOSEL 4.14 118/123] x86/build: Mark per-CPU symbols as absolute explicitly for LLD Sasha Levin
2019-03-27 18:16 ` [PATCH AUTOSEL 4.14 119/123] clk: rockchip: fix frac settings of GPLL clock for rk3328 Sasha Levin
2019-03-27 18:16 ` [PATCH AUTOSEL 4.14 120/123] dmaengine: tegra: avoid overflow of byte tracking Sasha Levin
2019-03-27 18:16 ` [PATCH AUTOSEL 4.14 121/123] drm: Reorder set_property_atomic to avoid returning with an active ww_ctx Sasha Levin
2019-03-27 18:16 ` [PATCH AUTOSEL 4.14 122/123] drm/dp/mst: Configure no_stop_bit correctly for remote i2c xfers Sasha Levin
2019-03-27 18:16 ` [PATCH AUTOSEL 4.14 123/123] ACPI / video: Extend chassis-type detection with a "Lunch Box" check Sasha Levin

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=20190327181628.15899-95-sashal@kernel.org \
    --to=sashal@kernel.org \
    --cc=cgroups@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=oleg@redhat.com \
    --cc=stable@vger.kernel.org \
    --cc=tj@kernel.org \
    /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