Function cdev_add does set cdev->dev, so there is no point in setting it prior to calling this function. Signed-off-by: Jean Delvare <jdelvare@xxxxxxx> Cc: Martin Schwidefsky <schwidefsky@xxxxxxxxxx> Cc: Heiko Carstens <heiko.carstens@xxxxxxxxxx> --- Untested. Changes since v1 (2016-07-13): * Improved description * Added a few blank lines to make the code more readable drivers/s390/char/tape_class.c | 3 +-- drivers/s390/char/vmlogrdr.c | 4 ++-- drivers/s390/char/vmur.c | 4 ++-- 3 files changed, 5 insertions(+), 6 deletions(-) --- linux-4.14-rc1.orig/drivers/s390/char/tape_class.c 2017-09-18 10:53:53.361665102 +0200 +++ linux-4.14-rc1/drivers/s390/char/tape_class.c 2017-09-18 10:58:10.630332486 +0200 @@ -68,9 +68,8 @@ struct tape_class_device *register_tape_ tcd->char_device->owner = fops->owner; tcd->char_device->ops = fops; - tcd->char_device->dev = dev; - rc = cdev_add(tcd->char_device, tcd->char_device->dev, 1); + rc = cdev_add(tcd->char_device, dev, 1); if (rc) goto fail_with_cdev; --- linux-4.14-rc1.orig/drivers/s390/char/vmlogrdr.c 2017-09-18 10:53:53.361665102 +0200 +++ linux-4.14-rc1/drivers/s390/char/vmlogrdr.c 2017-09-18 11:01:02.044184499 +0200 @@ -812,8 +812,8 @@ static int vmlogrdr_register_cdev(dev_t } vmlogrdr_cdev->owner = THIS_MODULE; vmlogrdr_cdev->ops = &vmlogrdr_fops; - vmlogrdr_cdev->dev = dev; - rc = cdev_add(vmlogrdr_cdev, vmlogrdr_cdev->dev, MAXMINOR); + + rc = cdev_add(vmlogrdr_cdev, dev, MAXMINOR); if (!rc) return 0; --- linux-4.14-rc1.orig/drivers/s390/char/vmur.c 2017-09-18 10:53:53.361665102 +0200 +++ linux-4.14-rc1/drivers/s390/char/vmur.c 2017-09-18 11:09:13.111606357 +0200 @@ -892,12 +892,12 @@ static int ur_set_online(struct ccw_devi } urd->char_device->ops = &ur_fops; - urd->char_device->dev = MKDEV(major, minor); urd->char_device->owner = ur_fops.owner; - rc = cdev_add(urd->char_device, urd->char_device->dev, 1); + rc = cdev_add(urd->char_device, MKDEV(major, minor), 1); if (rc) goto fail_free_cdev; + if (urd->cdev->id.cu_type == READER_PUNCH_DEVTYPE) { if (urd->class == DEV_CLASS_UR_I) sprintf(node_id, "vmrdr-%s", dev_name(&cdev->dev)); -- Jean Delvare SUSE L3 Support -- To unsubscribe from this list: send the line "unsubscribe linux-s390" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html