[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <901c4465be0d37b3b8d8e751dc15607c70fab19b.camel@wdc.com>
Date: Mon, 30 Jul 2018 05:11:58 +0000
From: Bart Van Assche <Bart.VanAssche@....com>
To: "linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>,
"linux-block@...r.kernel.org" <linux-block@...r.kernel.org>,
"jin.xiao@...el.com" <jin.xiao@...el.com>,
"axboe@...nel.dk" <axboe@...nel.dk>
CC: "yanmin.zhang@...el.com" <yanmin.zhang@...el.com>
Subject: Re: [PATCH] blk_init_allocated_queue() set q->fq as NULL in the fail
case
On Mon, 2018-07-30 at 10:03 +0800, xiao jin wrote:
> We find the memory use-after-free issue in __blk_drain_queue()
> on the kernel 4.14. After read the latest kernel 4.18-rc6 we
> think it has the same problem.
>
> Memory is allocated for q->fq in the blk_init_allocated_queue().
> If the elevator init function called with error return, it will
> run into the fail case to free the q->fq.
>
> Then the __blk_drain_queue() uses the same memory after the free
> of the q->fq, it will lead to the unpredictable event.
>
> The patch is to set q->fq as NULL in the fail case of
> blk_init_allocated_queue().
Please add "Fixes:" and "Cc: stable" tags to this patch.
Thanks,
Bart.
Powered by blists - more mailing lists