> Quoting r. Woodruff, Robert J <[EMAIL PROTECTED]>: > Subject: Re: [openfabrics-ewg] new OFED 1.2 package > > I am also still seeing the issue with the rdma_cm abi_version on RedHat > EL4-U3, > bug number, 347. The bug report contains the patch that should fix this.
OK, here's a somewhat cleaned-up patch. However, I have a question: should not the module cleanup function remove ucma_class and class_attr_abi_version that were created at module initialization? ---- diff --git a/drivers/infiniband/core/ucma.c b/drivers/infiniband/core/ucma.c index e2e8d32..e9e024e 100644 --- a/drivers/infiniband/core/ucma.c +++ b/drivers/infiniband/core/ucma.c @@ -847,13 +847,12 @@ static struct miscdevice ucma_misc = { .fops = &ucma_fops, }; -static ssize_t show_abi_version(struct device *dev, - struct device_attribute *attr, - char *buf) +static struct class *ucma_class; +static ssize_t show_abi_version(struct class *class_dev, char *buf) { return sprintf(buf, "%d\n", RDMA_USER_CM_ABI_VERSION); } -static DEVICE_ATTR(abi_version, S_IRUGO, show_abi_version, NULL); +static CLASS_ATTR(abi_version, S_IRUGO, show_abi_version, NULL); static int __init ucma_init(void) { @@ -863,7 +862,13 @@ static int __init ucma_init(void) if (ret) return ret; - ret = device_create_file(ucma_misc.this_device, &dev_attr_abi_version); + ucma_class = class_create(THIS_MODULE, "infiniband_ucma"); + if (IS_ERR(ucma_class)) { + printk(KERN_ERR "rdma_ucm: couldn't create class infiniband_ucma\n"); + goto err; + } + + ret = class_create_file(ucma_class, &class_attr_abi_version); if (ret) { printk(KERN_ERR "rdma_ucm: couldn't create abi_version attr\n"); goto err; @@ -876,7 +881,6 @@ err: static void __exit ucma_cleanup(void) { - device_remove_file(ucma_misc.this_device, &dev_attr_abi_version); misc_deregister(&ucma_misc); idr_destroy(&ctx_idr); } -- MST _______________________________________________ openib-general mailing list openib-general@openib.org http://openib.org/mailman/listinfo/openib-general To unsubscribe, please visit http://openib.org/mailman/listinfo/openib-general