From: Leon Romanovsky <leonro@xxxxxxxxxxxx> >From Parav, Refactor ib_umad class and device registration code for following items. 1. To make use of more static definitions and utilize class_groups and dev_groups to register class and device specific attributes This is similar to commits b53b1c08a23e and c5c4d92e70f3 for ib_uverbs module. 2. Use kref instead of kobject as its lighter for ib_umad_device reference counting. 3. Avoid accessing undefined dev->name during ioctl() operation for device under destruction. 4. Refactor for minor cosmetics for alignments. 5. Return more appropriate error code instead of -1. Thanks Parav Pandit (6): IB/umad: Define and use macro for infiniband_mad class name IB/umad: Avoid destroying device while it is accessed IB/umad: Simplify and avoid dynamic allocation of class IB/umad: Refactor code to use cdev_device_add() IB/umad: Use class_groups and let core create class file IB/umad: Start using dev_groups of class drivers/infiniband/core/user_mad.c | 257 +++++++++++++++-------------- 1 file changed, 132 insertions(+), 125 deletions(-) -- 2.19.1