xfs
[Top] [All Lists]

Re: [PATCH] xfs: Do background CIL flushes via a workqueue

To: Christoph Hellwig <hch@xxxxxxxxxxxxx>
Subject: Re: [PATCH] xfs: Do background CIL flushes via a workqueue
From: Vivek Goyal <vgoyal@xxxxxxxxxx>
Date: Tue, 27 Mar 2012 13:23:57 -0400
Cc: Dave Chinner <david@xxxxxxxxxxxxx>, xfs@xxxxxxxxxxx
In-reply-to: <20120327170309.GA6712@xxxxxxxxxxxxx>
References: <1332841605-3538-1-git-send-email-david@xxxxxxxxxxxxx> <20120327143127.GA11434@xxxxxxxxxxxxx> <20120327155759.GB28707@xxxxxxxxxx> <20120327160300.GA22555@xxxxxxxxxxxxx> <20120327161941.GC28707@xxxxxxxxxx> <20120327170309.GA6712@xxxxxxxxxxxxx>
User-agent: Mutt/1.5.21 (2010-09-15)
On Tue, Mar 27, 2012 at 01:03:09PM -0400, Christoph Hellwig wrote:
> On Tue, Mar 27, 2012 at 12:19:41PM -0400, Vivek Goyal wrote:
> > So xfs either need to resort to similar optimizaiton where IO type from
> > both the process context is of same type or try to do all the IO from
> > one process context. 
> 
> All XFS log I/O is marked SYNC and (FUA and/or FLUSH).

Well, if all the requests are marked with FUA/FLUSH, then I think these
requests will not even be given to IO scheduler. And we should not have
the issue of idling.

        if (bio->bi_rw & (REQ_FLUSH | REQ_FUA)) {
                spin_lock_irq(q->queue_lock);
                where = ELEVATOR_INSERT_FLUSH;
                goto get_rq;
        }

Thanks
Vivek

<Prev in Thread] Current Thread [Next in Thread>