]> git.baikalelectronics.ru Git - kernel.git/commit
blk-mq: fix hctx/ctx kobject use-after-free
authorMing Lei <ming.lei@canonical.com>
Tue, 20 Jan 2015 03:00:56 +0000 (11:00 +0800)
committerJens Axboe <axboe@fb.com>
Tue, 20 Jan 2015 16:28:33 +0000 (09:28 -0700)
commit405d248f7cd03d7d3b682aecc93293a6fc336fcc
treee7d78afb91e9f7ff47f7e1e558f762908c50f49e
parent357ad60ffecbca3d26916a97eb35b3a6d754891f
blk-mq: fix hctx/ctx kobject use-after-free

The kobject memory shouldn't have been freed before the kobject
is released because driver core can access it freely before its
release.

This patch frees hctx in its release callback. For ctx, they
share one single per-cpu variable which is associated with
the request queue, so free ctx in q->mq_kobj's release handler.

Signed-off-by: Sasha Levin <sasha.levin@oracle.com>
(fix ctx kobjects)
Signed-off-by: Ming Lei <ming.lei@canonical.com>
Signed-off-by: Jens Axboe <axboe@fb.com>
block/blk-mq-sysfs.c
block/blk-mq.c