On Thu, Aug 27 2009 at 9:12am -0400, Alasdair G Kergon <agk@xxxxxxxxxx> wrote: > On Fri, Aug 21, 2009 at 10:17:18AM -0400, Mike Snitzer wrote: > > Add .io_hints to 'struct target_type' to allow the I/O hints portion of > > the 'struct queue_limits' to be set by each target. Expose dm-stripe > > target's topology I/O hints. > > Do you still think this should go into 2.6.31? Yes, it is important. Otherwise DM won't expose the proper I/O hints in /sys for a striped device. This is bad because then higher-level tools won't be able to rely on that information to properly align ther data (e.g. mkfs.extX -E). > If so, please supply a revised patch header that explains the benefits > of having the patch (and reference the new stuff in 2.6.31 that it > uses). > > > + limits->io_opt = chunk_size * sc->stripes; > > blk_queue_io_opt() ? Martin didn't expose such an interface because all existing code (both DM and MD) does not require anything beyond a simple assignment. I worked with Martin to establish the blk_queue_io_min() precisely because DM needed to avoid duplicating the block layer's logic. I think Martin stopped short of adding a symmetric wrapper for setting io_opt because he felt it was unnecessary. But I could be mis-remembering. > > .version = {1, 2, 0}, > > Ought to inc that too when adding a new fn. The version was already bumped during the 2.6.31-rcX cycle when I introduced .iterate_devices (af4874e03ed82f050d5872d8c39ce64bf16b5c38). I should bump it again? > > + /* Set I/O hints portion of queue limits */ > > Where else are these called I/O hints or is this a new term to define > (or avoid)? "I/O hints" isn't formally defined in Linux code but this portion of the I/O topology infrastructure (io_min and io_opt) is commonly referred to as "I/O Hints". Not a new term, it is common jargon associated with the I/O topology support. Martin's Linux Symposium 09 "I/O Topology" slides refer to these as "I/O hints". I latched on to that because it .io_hints gives precise understanding of what portion of the queue_limits are intended to change through this DM interface. Mike -- dm-devel mailing list dm-devel@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/dm-devel