From mboxrd@z Thu Jan 1 00:00:00 1970 From: Werner Almesberger Subject: Re: elevator priorities vs. full request queues Date: Wed, 23 Jun 2004 20:02:02 -0300 Sender: linux-fsdevel-owner@vger.kernel.org Message-ID: <20040623200201.N1325@almesberger.net> References: <20040622012502.B1325@almesberger.net> <20040622074852.GW12881@suse.de> <20040622052644.D1325@almesberger.net> <20040622101434.GB12881@suse.de> <20040622160859.I1325@almesberger.net> <20040623101430.GI1120@suse.de> <20040623094632.L1325@almesberger.net> <20040623164659.GN1120@suse.de> <20040623135759.M1325@almesberger.net> <20040623170024.GP1120@suse.de> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Cc: linux-fsdevel@vger.kernel.org Return-path: Received: from almesberger.net ([63.105.73.238]:41745 "EHLO host.almesberger.net") by vger.kernel.org with ESMTP id S262060AbUFWXCJ (ORCPT ); Wed, 23 Jun 2004 19:02:09 -0400 To: Jens Axboe Content-Disposition: inline In-Reply-To: <20040623170024.GP1120@suse.de>; from axboe@suse.de on Wed, Jun 23, 2004 at 07:00:25PM +0200 List-Id: linux-fsdevel.vger.kernel.org Jens Axboe wrote: > Don't like that approach. I don't see why you'd need more than the > priority passed in anyways? I don't need more, but my priorities originally sit on open files, and may then propagate to pages, from where the elevator picks them up. Your bio-centric approach breaks this. Well, maybe that's just an opportinity to do something better :-) How do you think the priorities should get into the bio, i.e. who calls bio_set_prio ? The properties I'm looking for are: - priorities are per open file (whether a process is allowed to raise the priority of a file may depend on a number of factors, so this would be compatible with your "io priorities", except that the process has to ask explicitly before an open file gets a non-default priority) - the kernel can grant priorities either a) for the entire file, or b) depending on whether the data rate is below a certain limit. (The latter if for really high priorities. I'm combining this with a special readahead mechanism, so I'm simply boosting the priority of pages that will be read ahead. The read ahead is done by yet another kernel thread.) b) is actually the easy part, because there all action is initiated by my code. a) is harder, because there, the open file just has a priority that somehow needs to propagate to the bio. - Werner -- _________________________________________________________________________ / Werner Almesberger, Buenos Aires, Argentina wa@almesberger.net / /_http://www.almesberger.net/____________________________________________/