HomePage
WikiBlog
RecentChanges
LikePages
BackLinks
FindPage

Blog entries

2010-02-16: RSS-Feeds für ricardo.ch-Suchergebnisse

2010-02-15_spam: Disabling public editing

2010-02-15: Show Processes waiting for I/O in Linux

2010-02-13: Sony Vaio P in der Schweiz...

2009-06-17: Wie man plötzlich zum Mörder wird (weil's einfach besser 'rüberkommt!)

2008-05-18: Recreating SSL keys for stunnel, lighttpd and dovecot following the Debian-OpenSSL debacle

2008-02-12: Patch for aoeserver in Kernel 2.6.24

2008-02-07: Usage of open-iscsi on Linux

2008-02-05: Linux and Windows working in harmony with iSCSI

2008-01-19: Linksys PAP2 FXS Port Impedance

< July, 2010 >
Sun Mon Tue Wed Thu Fri Sat
1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31

Wiki Blog/2008-02-12

Patch for aoeserver in Kernel 2.6.24

While the kernel module aoeserver is very interesting, it seems to be quite dead - there is not even a mailing list for that project.

Get the code from:

http://code.google.com/p/aoeserver/source/checkout

To get it to compile in kernel 2.6.24, I had to make some minor changes. Here's what 'svn diff' spit out:

Index: linux/drivers/block/aoeserver/aoeblock.c
===================================================================
--- linux/drivers/block/aoeserver/aoeblock.c    (revision 4)
+++ linux/drivers/block/aoeserver/aoeblock.c    (working copy)
@@ -387,7 +387,7 @@
                /* reply skb */
                buff = (char *)work->atareply + sizeof(struct aoe_atahdr);

-               generic_file_read(work->abd->fp, buff,
+               do_sync_read(work->abd->fp, buff,
                                  (work->atarequest->nsect * 512), &ppos);

                break;
@@ -398,7 +398,7 @@
                /* request skb */
                buff = (char *)work->atarequest + sizeof(struct aoe_atahdr);

-               generic_file_write(work->abd->fp, buff,
+               do_sync_write(work->abd->fp, buff,
                                   (work->atarequest->nsect * 512), &ppos);

                break;
Index: linux/drivers/block/aoeserver/aoeproc.c
===================================================================
--- linux/drivers/block/aoeserver/aoeproc.c     (revision 4)
+++ linux/drivers/block/aoeserver/aoeproc.c     (working copy)
@@ -58,7 +58,7 @@
                        seq_printf(s, "%-25s %-10d %-10d", abd->name,
                                   abd->shelf, abd->slot);
                        if (abd->ifindex > 0)
-                               if ((dev = dev_get_by_index(abd->ifindex))) {
+                               if ((dev = dev_get_by_index(&init_net, abd->ifindex))) {
                                        seq_printf(s, "%s", dev->name);
                                        dev_put(dev);
                                }
@@ -192,7 +192,7 @@
                        return (-EINVAL);
                }

-               dev = dev_get_by_name(argv[4]);
+               dev = dev_get_by_name(&init_net, argv[4]);
                if (dev == NULL)
                        return (-EINVAL);

@@ -240,7 +240,7 @@
                        return (-EINVAL);
                }

-               dev = dev_get_by_name(argv[4]);
+               dev = dev_get_by_name(&init_net, argv[4]);
                if (dev == NULL)
                        return (-EINVAL);
 
Add a Comment
Summary:
Comment:

Last edited on 12.02.2008 13:45.


View Source | PageHistory | Diff | PageInfo

© Copyright 2004 - 2006 Nicola Fankhauser. All Rights Reserved.