On Tue, 2 Jul 2013 14:23:51 -0700 ecas...@noserose.net wrote: > Some users have a large AoE target while others like to use > many AoE targets at the same time. In the latter case, there > is an opportunity to greatly improve aggregate throughput by > allowing different threads to complete the I/O associated > with each target. For 36 targets, 4 KiB read throughput > roughly doubles, for example, with these changes in place. > > ... > > --- a/drivers/block/aoe/aoecmd.c > +++ b/drivers/block/aoe/aoecmd.c > @@ -35,14 +35,24 @@ module_param(aoe_maxout, int, 0644); > MODULE_PARM_DESC(aoe_maxout, > "Only aoe_maxout outstanding packets for every MAC on eX.Y."); > > -static wait_queue_head_t ktiowq; > -static struct ktstate kts; > +/* The number of online cpus in the system, > + * this dictates the number of ktio threads > + * which will be spawned. > + */ > +static int ncpus;
I can see that doing it this way simplifies the code rather a lot, but of course CPU hotplug can and will make ncpus grossly different from the current num_online_cpus. I suggest it's worth adding a comment here mentioning this, and explaining why and how that's OK. If it indeed is OK ;) Also, these patches were sent as being from ecas...@noserose.net. I rewrote that to ecas...@coraid.com which is what I suspect you intended. You can do this override yourself by putting a From: line right at the top of the changelog. -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/