Re: remove ->rq_disk

Ming Lei
2021-09-29T08:05:35Z

On Wed, Sep 29, 2021 at 09:07:33AM +0200, Christoph Hellwig wrote:
> On Tue, Sep 28, 2021 at 10:32:51PM +0800, Ming Lei wrote:
> > Hello Christoph,
> >
> > On Tue, Sep 28, 2021 at 07:22:06AM +0200, Christoph Hellwig wrote:
> > > Hi Jens,
> > >
> > > this series removes the rq_disk field in struct request, which isn't
> > > needed now that we can get the disk from the request_queue.
> >
> > Can we hold on this series until q->disk becomes really reliable[1][2]?
>
> It's not like q->disk isn't reliable. It is that we don't kill all bios

q->disk will be cleaned in gendisk's release handler, which may happen before
or after blk_cleanup_queue().

> when tearing down the gendisk, which is an old problem that got worse.

It is fine to not kill all bios when tearing down gendisk if BDI isn't
retrieved from q->disk->bdi since gendisk has same lifetime with bdev.

So what is the old problem?

> That being said I'm resending this again.

No, either your patch or mine can't fix the issue, and I will comment on
your resending.

Thanks,
Ming