Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753895Ab1C2RzO (ORCPT ); Tue, 29 Mar 2011 13:55:14 -0400 Received: from mx1.redhat.com ([209.132.183.28]:52004 "EHLO mx1.redhat.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751782Ab1C2RzN (ORCPT ); Tue, 29 Mar 2011 13:55:13 -0400 Date: Tue, 29 Mar 2011 13:54:58 -0400 From: Vivek Goyal To: Jeff Moyer Cc: Mike Snitzer , Tejun Heo , Jens Axboe , Markus Trippelsdorf , Sergey Senozhatsky , linux-kernel@vger.kernel.org, Chris Mason Subject: Re: [PATCH] block: eliminate ELEVATOR_INSERT_REQUEUE (was: Re: elevator private data for REQ_FLUSH) Message-ID: <20110329175458.GE24485@redhat.com> References: <20110325151530.GA4414@swordfish.minsk.epam.com> <20110325152228.GA1707@gentoo.trippels.de> <20110325154024.GA16029@redhat.com> <4D8CB9C9.5010208@kernel.dk> <20110325185455.GA2969@redhat.com> <4D8CF202.9010809@kernel.dk> <20110326042156.GB28458@redhat.com> <20110328082321.GC16530@htj.dyndns.org> <20110328221547.GA1118@redhat.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.5.21 (2010-09-15) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1546 Lines: 40 On Tue, Mar 29, 2011 at 10:13:05AM -0400, Jeff Moyer wrote: > Mike Snitzer writes: > > > OK, I came up with the following patch. > > > > Jens, this is just a natural cleanup given the code that resulted from > > the flush-merge and onstack plugging changes coming together. > > > > > > From: Mike Snitzer > > Subject: block: eliminate ELEVATOR_INSERT_REQUEUE > > > > elv_insert() no longer has a need to differentiate between > > ELEVATOR_INSERT_REQUEUE and ELEVATOR_INSERT_FRONT. The onstack plugging > > changes eliminated the need to avoid unplugging the queue (via > > ELEVATOR_INSERT_REQUEUE). > > > > Also, in blk_insert_flush(), use elv_insert() with ELEVATOR_INSERT_FRONT > > rather than open-coding the equivalent. > > What you change by doing the call to elv_insert is that now the request > will have REQ_SOFTBARRIER set. I don't think that affects anything, > though (I checked). The rest looks pretty straight-forward. What is the significance of REQ_SOFTBARRIER? Why it should be set for all INSERT_FRONT and requeue requests. With flush logic we got rid of all hardbarriers and hence there is no notion of ordering as such. One has to wait for request to finish to enforce ordering. Should we get rid of softbarriers too? Thanks Vivek -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/