[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20110330114953.GA4080@swordfish.minsk.epam.com>
Date: Wed, 30 Mar 2011 14:49:53 +0300
From: Sergey Senozhatsky <sergey.senozhatsky@...il.com>
To: Jens Axboe <axboe@...nel.dk>
Cc: Tejun Heo <tj@...nel.org>, Vivek Goyal <vgoyal@...hat.com>,
Jeff Moyer <jmoyer@...hat.com>,
Mike Snitzer <snitzer@...hat.com>,
Markus Trippelsdorf <markus@...ppelsdorf.de>,
linux-kernel@...r.kernel.org, Chris Mason <chris.mason@...cle.com>
Subject: Re: [PATCH] block: eliminate ELEVATOR_INSERT_REQUEUE
On (03/30/11 13:22), Jens Axboe wrote:
> > Nope, doesn't work for me. fsck.ext4 crashed the system.
> >
> > __elv_add_request
> > blk_flush_complete_seq
> > blk_insert_flush
> > __elv_add_request
> > __make_request
> > generic_make_request
> > ?bio_alloc_bioset
> > blkdev_issue_flush
> > blkdev_fsync
> > vfs_fsync
> > [..]
>
> Ah, this addon should behave better.
>
Seems to work fine for me.
Sergey
> diff --git a/block/blk-flush.c b/block/blk-flush.c
> index 6a16fea..eba4a27 100644
> --- a/block/blk-flush.c
> +++ b/block/blk-flush.c
> @@ -261,7 +261,7 @@ static bool blk_kick_flush(struct request_queue *q)
> q->flush_rq.end_io = flush_end_io;
>
> q->flush_pending_idx ^= 1;
> - __elv_add_request(q, &q->flush_rq, ELEVATOR_INSERT_FLUSH);
> + list_add_tail(&q->flush_rq.queuelist, &q->queue_head);
> return true;
> }
>
>
> --
> Jens Axboe
>
Content of type "application/pgp-signature" skipped
Powered by blists - more mailing lists