On Mon, Sep 21, 2009 at 10:11:56AM -0500, Brian Koebbe wrote:
> It looks like aoe-72 isn't quite building against 2.6.31...
...
> Any chance a patch for this is around the corner?

Yes, I'm integrating them into the compatibility system for
73.  You can try them out now.  I'll try attaching them here.
To use them, you do...

make KDIR=/usr/src/kernels/linux-2.6.31
patch -p0 < /tmp/aoe6-72-blk_peek_req.diff 
patch -p1 < conf/23-patches/old-new.diff
patch -p0 < /tmp/aoe6-72-blk_run_queue.diff 
patch -p1 < /tmp/72-no-autoload.diff
patch -p1 < /tmp/72-73pre1.diff
make KDIR=/usr/src/kernels/linux-2.6.31

Notice that one patch is part of the aoe sources already.

-- 
  Ed Cashin <ecas...@coraid.com>
  Find experimental aoe Linux driver patches at
  http://coraid.typepad.com/aoe_linux_proving_grounds/
--- linux/drivers/block/aoe/aoeblk.c.20090916	2009-09-16 14:37:12.657081349 -0400
+++ linux/drivers/block/aoe/aoeblk.c	2009-09-16 14:47:48.886522028 -0400
@@ -252,8 +252,8 @@ aoeblk_request(struct request_queue *q)
 	if ((d->flags & DEVFL_UP) == 0) {
 		printk(KERN_INFO "aoe: device %ld.%d is not up\n",
 			d->aoemajor, d->aoeminor);
-		while ((rq=elv_next_request(q))) {
-			blkdev_dequeue_request(rq);
+		while ((rq=blk_peek_request(q))) {
+			blk_start_request(rq);
 			aoe_end_request(d, rq, 1);
 		}
 		return;
--- linux/drivers/block/aoe/aoecmd.c.20090916	2009-09-16 14:41:04.077831875 -0400
+++ linux/drivers/block/aoe/aoecmd.c	2009-09-16 14:48:09.054627181 -0400
@@ -909,10 +909,10 @@ nextbuf(struct aoedev *d)
 		return d->ip.buf;
 	rq = d->ip.rq;
 	if (rq == NULL) {
-		rq = elv_next_request(q);
+		rq = blk_peek_request(q);
 		if (rq == NULL)
 			return NULL;
-		blkdev_dequeue_request(rq);
+		blk_start_request(rq);
 		d->ip.rq = rq;
 		d->ip.nxbio = rq->bio;
 		rq->special = (void *) rqbiocnt(rq);
--- linux/drivers/block/aoe/aoedev.c.20090916	2009-09-16 14:41:49.004832470 -0400
+++ linux/drivers/block/aoe/aoedev.c	2009-09-16 14:48:24.319456323 -0400
@@ -227,8 +227,8 @@ aoedev_downdev(struct aoedev *d)
 
 	/* fast fail all pending I/O */
 	if (d->blkq) {
-		while ((rq = elv_next_request(d->blkq))) {
-			blkdev_dequeue_request(rq);
+		while ((rq = blk_peek_request(d->blkq))) {
+			blk_start_request(rq);
 			aoe_end_request(d, rq, 1);
 		}
 	}
--- linux/drivers/block/aoe/aoecmd.c.20090916_1	2009-09-16 14:56:32.680832010 -0400
+++ linux/drivers/block/aoe/aoecmd.c	2009-09-16 14:58:18.802354573 -0400
@@ -1118,7 +1118,7 @@ aoe_end_request(struct aoedev *d, struct
 
 	if (!fastfail) {
 		// cf. http://lkml.org/lkml/2006/10/31/28
-		blk_start_queueing(q);
+		__blk_run_queue(q);
 	}
 }
 
commit c4079ca9b521da8e2c4b3fdff9171064962e5fa3
Author: Ed Cashin <ecas...@coraid.com>
Date:   Mon Sep 21 11:14:08 2009 -0400

    do not run autoload.sh on make install
    
    Fedora complains that /etc/modprobe.conf is obsolete, but
    so is autoload.sh, because if a system is using udev, you
    won't have any device nodes to access before aoe had been
    loaded.  If you aren't running udev, you can load aoe to
    use it.

diff --git a/Makefile b/Makefile
index e5f2e5d..1204ca5 100644
--- a/Makefile
+++ b/Makefile
@@ -109,7 +109,6 @@ install_modobj: default
 	/sbin/depmod -a
 
 install_nodev: install_modobj
-	-sh $(SCRIPTS_D)/autoload.sh
 # punt if DEVSUBDIR isn't the default.  probably should have cleaner solution.
 	@if test -r /etc/udev/udev.conf; then \
 	  if test "$(DEVSUBDIR)" != "etherd" || \
diff --git a/NEWS b/NEWS
index f7967b3..34f8c3f 100644
--- a/NEWS
+++ b/NEWS
@@ -1,4 +1,7 @@
 -*- change-log -*-
+2009-09-21 Ed Cashin <ecas...@coraid.com>
+	do not run autoload.sh to configure loading of aoe on dev node access
+
 2009-07-20 Ed Cashin <ecas...@coraid.com>
 	use ATA_CMD_ values from ata.h instead of WIN_ macros in hdreg.h
 	support older kernels where ata.h is incompatible with hdreg.h
diff --git a/linux/drivers/block/aoe/aoe.h b/linux/drivers/block/aoe/aoe.h
index e90d3a6..ec035c2 100644
--- a/linux/drivers/block/aoe/aoe.h
+++ b/linux/drivers/block/aoe/aoe.h
@@ -1,5 +1,5 @@
 /* Copyright (c) 2009 Coraid, Inc.  See COPYING for GPL terms. */
-#define VERSION "72"
+#define VERSION "73pre1"
 #define AOE_MAJOR 152
 #define DEVICE_NAME "aoe"
 
------------------------------------------------------------------------------
Come build with us! The BlackBerry&reg; Developer Conference in SF, CA
is the only developer event you need to attend this year. Jumpstart your
developing skills, take BlackBerry mobile applications to market and stay 
ahead of the curve. Join us from November 9&#45;12, 2009. Register now&#33;
http://p.sf.net/sfu/devconf
_______________________________________________
Aoetools-discuss mailing list
Aoetools-discuss@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/aoetools-discuss

Reply via email to