percpu_ref: don't refer to ref->data if it isn't allocated
authorMing Lei <ming.lei@redhat.com>
Fri, 9 Oct 2020 04:03:56 +0000 (12:03 +0800)
committerJens Axboe <axboe@kernel.dk>
Fri, 9 Oct 2020 18:32:06 +0000 (12:32 -0600)
commit7ea6bf2e6c409e245a31b9ac6a4ba24949ad442f
tree709047965688b8a10260522de051e5fe23afbbb9
parentf4ac712e4fe009635344b9af5d890fe25fcc8c0d
percpu_ref: don't refer to ref->data if it isn't allocated

We can't check ref->data->confirm_switch directly in __percpu_ref_exit(), since
ref->data may not be allocated in one not-initialized refcount.

Fixes: 2b0d3d3e4fcf ("percpu_ref: reduce memory footprint of percpu_ref in fast path")
Reported-by: syzbot+fd15ff734dace9e16437@syzkaller.appspotmail.com
Signed-off-by: Ming Lei <ming.lei@redhat.com>
Signed-off-by: Jens Axboe <axboe@kernel.dk>
lib/percpu-refcount.c