]> 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)
commit8bf86484f89f49ec775afe0b5b1e0908646dbf61
treee7d78afb91e9f7ff47f7e1e558f762908c50f49e
parentf957a9cd46dbfb7ea1532c4b32bb349dbd3cbcd5
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