Messages in this thread | | | Date | Wed, 28 Sep 2011 02:47:23 +0200 | From | Jens Axboe <> | Subject | Re: [PATCH] block: Free queue resources at blk_release_queue() |
| |
On Thu, Sep 22 2011, Hannes Reinecke wrote: > > A kernel crash is observed when a mounted ext3/ext4 filesystem > is physically removed. > The problem is that blk_cleanup_queue() frees up some resources > eg by calling elevator_exit(), which are not checked for in > normal operation. > So we should rather move these calls to the destructor function > blk_release_queue() as at that point all remaining references > are gone. > However, in doing so we have to ensure that any externally > supplied queue_lock is disconnected as the driver might > free up the lock after the call of blk_cleanup_queue(),
Do we have acks from the people who saw this oops, that this really does fix it for them? I ask since this fix is vastly cleaner than the other patch floating around, so I'd much rather pull this one in.
-- Jens Axboe
| |