mbox series

[v4,0/2] Ensure that a request queue is dissociated from the cgroup controller

Message ID 20180730211056.18570-1-bart.vanassche@wdc.com (mailing list archive)
Headers show
Series Ensure that a request queue is dissociated from the cgroup controller | expand

Message

Bart Van Assche July 30, 2018, 9:10 p.m. UTC
Hello Jens,

Several block drivers call alloc_disk() followed by put_disk() if something
fails before device_add_disk() is called without calling blk_cleanup_queue().
Make sure that also for this scenario a request queue is dissociated from the
cgroup controller. This patch avoids that loading the parport_pc, paride and
pf drivers trigger a kernel crash. Since this patch series fixes a regression,
please consider these patches for kernel v4.19.

Thanks,

Bart.

Changes between v3 and v4:
- Added "Cc: stable" tags.

Changes between v2 and v3:
- Avoid code duplication by introducing a new helper function.

Changes between v1 and v2:
- Fixed the build for CONFIG_BLK_CGROUP=n.

Bart Van Assche (2):
  block: Introduce blk_exit_queue()
  block: Ensure that a request queue is dissociated from the cgroup
    controller

 block/blk-core.c  | 54 ++++++++++++++++++++++++++---------------------
 block/blk-sysfs.c | 25 ++++++++++++++++++++++
 block/blk.h       |  1 +
 3 files changed, 56 insertions(+), 24 deletions(-)

Comments

Bart Van Assche Aug. 7, 2018, 9:50 p.m. UTC | #1
On Mon, 2018-07-30 at 14:10 -0700, Bart Van Assche wrote:
> Several block drivers call alloc_disk() followed by put_disk() if something
> fails before device_add_disk() is called without calling blk_cleanup_queue().
> Make sure that also for this scenario a request queue is dissociated from the
> cgroup controller. This patch avoids that loading the parport_pc, paride and
> pf drivers trigger a kernel crash. Since this patch series fixes a regression,
> please consider these patches for kernel v4.19.

[ ... ]

Can anyone help with reviewing this patch series? This patch series is several
months old and fixes a regression that was reported by a Linux user.

Thanks,

Bart.