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® 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-12, 2009. Register now!
http://p.sf.net/sfu/devconf
_______________________________________________
Aoetools-discuss mailing list
Aoetools-discuss@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/aoetools-discuss