Dan Bar Dov wrote, 

>Woody hi,

>We don't have a backport to 2.6.9. I guess there're some API changes.
>Are there more issues besides the struct proto?
>Could you send the compile output?

>Dan

Here are the changes I made to get it to compile. I took a look
at the SDP backport patch and modeled the changes after those.
I however have no way to test it, so if you could review them
and let me know if they are correct, I will include them in
the next set of backport patches that I push out to SVN.
These are based on SVN3432.


diff -Naurp linux-2.6.9/drivers/infiniband/ulp/iser/iser_conn.c
linux-2.6.9-openib-drivers-svn3432-fixups/drivers/infiniband/ulp/iser/iser_c
onn.c
--- linux-2.6.9/drivers/infiniband/ulp/iser/iser_conn.c 2005-09-14
10:48:20.000000000 -0700
+++
linux-2.6.9-openib-drivers-svn3432-fixups/drivers/infiniband/ulp/iser/iser_c
onn.c   2005-09-14 10:39:47.000000000 -0700
@@ -37,6 +37,7 @@
 #include <linux/delay.h>
 #include <linux/smp_lock.h>
 
+#include <linux/errno.h>
 #include "iser.h"
 #include "iser_initiator.h"
 #include "iser_conn.h"
diff -Naurp linux-2.6.9/drivers/infiniband/ulp/iser/iser_initiator.c
linux-2.6.9-openib-drivers-svn3432-fixups/drivers/infiniband/ulp/iser/iser_i
nitiator.c
--- linux-2.6.9/drivers/infiniband/ulp/iser/iser_initiator.c    2005-09-14
10:48:20.000000000 -0700
+++
linux-2.6.9-openib-drivers-svn3432-fixups/drivers/infiniband/ulp/iser/iser_i
nitiator.c      2005-09-20 09:41:31.835038752 -0700
@@ -31,6 +31,7 @@
  *
  */
 
+#include <linux/errno.h>
 #include "iser.h"
 #include "iser_conn.h"
 #include "iser_task.h"
diff -Naurp linux-2.6.9/drivers/infiniband/ulp/iser/iser_socket.c
linux-2.6.9-openib-drivers-svn3432-fixups/drivers/infiniband/ulp/iser/iser_s
ocket.c
--- linux-2.6.9/drivers/infiniband/ulp/iser/iser_socket.c       2005-09-14
10:48:20.000000000 -0700
+++
linux-2.6.9-openib-drivers-svn3432-fixups/drivers/infiniband/ulp/iser/iser_s
ocket.c 2005-09-20 09:48:24.174353648 -0700
@@ -88,11 +88,6 @@ static struct proto_ops iser_proto_ops =
        sendpage:       sock_no_sendpage,
 };
 
-static struct proto iser_sock_proto = {
-       name: "ib_iser",
-       owner: THIS_MODULE,
-       obj_size: sizeof(struct iser_sock),
-};
 
 struct iser_connection *iser_conn_from_sock(struct socket *sock)
 {
@@ -111,26 +106,21 @@ int iser_register_sockets(void)
 {
        int error = 0;
 
-       error = proto_register(&iser_sock_proto, 1);
-       if (error < 0) {
-               printk(KERN_ERR "proto_register failed (%d)\n", error);
-               goto register_iser_socket_exit;
-       }
        error = sock_register(&iser_proto_family);
        if (error < 0) {
                printk(KERN_ERR "sock_register failed (%d)\n", error);
        }
 
- register_iser_socket_exit:
        return error;
 }                              /* iser_register_sockets */
 
 void iser_unreg_sockets(void)
 {
        sock_unregister(PF_ISER);
-       proto_unregister(&iser_sock_proto);
 }                              /* iser_unreg_sockets */
 
+static kmem_cache_t *sock_cache;
+
 static int iser_sock_create(struct socket *sock, int protocol)
 {
        struct iser_sock *iser_sk = NULL;
@@ -138,8 +128,14 @@ static int iser_sock_create(struct socke
        if (sock->type != SOCK_STREAM)
                return -ESOCKTNOSUPPORT;
 
+        sock_cache = kmem_cache_create("ib_iser",
+                                       sizeof(struct inet_sock),
+                                        0, SLAB_HWCACHE_ALIGN,
+                                        NULL, NULL);
+
        iser_sk = (struct iser_sock *)sk_alloc(PF_INET, GFP_KERNEL,
-                                              &iser_sock_proto, 1);
+                                              sizeof(struct inet_sock), 
+                                               sock_cache);
        if (iser_sk == NULL)
                return -ENOBUFS;
 
diff -Naurp linux-2.6.9/drivers/infiniband/ulp/iser/iser_task.c
linux-2.6.9-openib-drivers-svn3432-fixups/drivers/infiniband/ulp/iser/iser_t
ask.c
--- linux-2.6.9/drivers/infiniband/ulp/iser/iser_task.c 2005-09-14
10:48:20.000000000 -0700
+++
linux-2.6.9-openib-drivers-svn3432-fixups/drivers/infiniband/ulp/iser/iser_t
ask.c   2005-09-20 09:41:43.040335288 -0700
@@ -31,6 +31,7 @@
  *
  */
 
+#include <linux/errno.h>
 #include "iser.h"
 #include "iser_conn.h"
 #include "iser_dto.h"

_______________________________________________
openib-general mailing list
[email protected]
http://openib.org/mailman/listinfo/openib-general

To unsubscribe, please visit http://openib.org/mailman/listinfo/openib-general

Reply via email to