As you might have noticed, Linus just released kernel 2.6.15-rc1.
This is the end of the free-for-all merge window for kernel 2.6.15
and only fixes are supposed to be merged from now on, so it's a good
time to start testing the kernel.

It would be extremely useful if lots of people tested the IB drivers
in the upstream kernel.  In other words, please try 2.6.15-rc1 out
without replacing drivers/infiniband with a subversion tree -- just
build yourself a stock kernel and see how it works.  I'd like to make
sure that the in-tree IB support works well, and that I didn't leave
out a fixes or screw up a merge.

You can report any IB problems to openib-general, and report all the
other problems to [email protected] ;)


On a related note, I just committed the following change to
subversion, which allows the svn tree to be compiled against both
2.6.14 and 2.6.15-rc1 (or later) trees -- now that 2.6.15-rc1 is out,
LINUX_VERSION_CODE has changed from 2.6.14 so this sort of hack is now
possible.

Thanks,
  Roland

--- infiniband/include/rdma/ib_verbs.h  (revision 4024)
+++ infiniband/include/rdma/ib_verbs.h  (working copy)
@@ -48,6 +48,14 @@
 #include <asm/scatterlist.h>
 #include <asm/uaccess.h>
 
+/* XXX remove this compatibility hack when 2.6.15 is released */
+#include <linux/version.h>
+
+#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,15)
+#define class_device_create(cls, parent, devt, device, fmt, arg...) \
+       class_device_create(cls, devt, device, fmt, ## arg)
+#endif /* XXX end of hack */
+
 union ib_gid {
        u8      raw[16];
        struct {
--- infiniband/core/uverbs_main.c       (revision 4024)
+++ infiniband/core/uverbs_main.c       (working copy)
@@ -448,7 +448,6 @@ void ib_uverbs_cq_event_handler(struct i
        ib_uverbs_async_handler(uobj->uverbs_file, uobj->uobject.user_handle,
                                event->event, &uobj->async_list,
                                &uobj->async_events_reported);
-                               
 }
 
 void ib_uverbs_qp_event_handler(struct ib_event *event, void *context_ptr)
@@ -752,7 +751,8 @@ static void ib_uverbs_add_one(struct ib_
        if (cdev_add(uverbs_dev->dev, IB_UVERBS_BASE_DEV + uverbs_dev->devnum, 
1))
                goto err_cdev;
 
-       uverbs_dev->class_dev = class_device_create(uverbs_class, 
uverbs_dev->dev->dev,
+       uverbs_dev->class_dev = class_device_create(uverbs_class, NULL,
+                                                   uverbs_dev->dev->dev,
                                                    device->dma_device,
                                                    "uverbs%d", 
uverbs_dev->devnum);
        if (IS_ERR(uverbs_dev->class_dev))
--- infiniband/core/user_mad.c  (revision 4028)
+++ infiniband/core/user_mad.c  (working copy)
@@ -786,7 +786,7 @@ static int ib_umad_init_port(struct ib_d
        if (cdev_add(port->dev, base_dev + port->dev_num, 1))
                goto err_cdev;
 
-       port->class_dev = class_device_create(umad_class, port->dev->dev,
+       port->class_dev = class_device_create(umad_class, NULL, port->dev->dev,
                                              device->dma_device,
                                              "umad%d", port->dev_num);
        if (IS_ERR(port->class_dev))
@@ -806,7 +806,7 @@ static int ib_umad_init_port(struct ib_d
        if (cdev_add(port->sm_dev, base_dev + port->dev_num + 
IB_UMAD_MAX_PORTS, 1))
                goto err_sm_cdev;
 
-       port->sm_class_dev = class_device_create(umad_class, port->sm_dev->dev,
+       port->sm_class_dev = class_device_create(umad_class, NULL, 
port->sm_dev->dev,
                                                 device->dma_device,
                                                 "issm%d", port->dev_num);
        if (IS_ERR(port->sm_class_dev))
--- infiniband/core/uat.c       (revision 4024)
+++ infiniband/core/uat.c       (working copy)
@@ -831,7 +831,7 @@ static int __init ib_uat_init(void)
                goto err_class;
        }
 
-       class_device_create(ib_uat_class, IB_UAT_DEV, NULL, "uat");
+       class_device_create(ib_uat_class, NULL, IB_UAT_DEV, NULL, "uat");
        
        idr_init(&ctx_id_table);
        init_MUTEX(&ctx_id_mutex);
_______________________________________________
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