···5136 mddev->thread = NULL;5137 mddev->queue->backing_dev_info.congested_fn = NULL;5138 blk_sync_queue(mddev->queue); /* the unplug fn references 'conf'*/05139 free_conf(conf);5140+ mddev->private = &raid5_attrs_group;5141 return 0;5142}5143···5464 !test_bit(Faulty, &rdev->flags)) {5465 if (raid5_add_disk(mddev, rdev) == 0) {5466 char nm[20];5467+ if (rdev->raid_disk >= conf->previous_raid_disks) {5468 set_bit(In_sync, &rdev->flags);5469+ added_devices++;5470+ } else5471 rdev->recovery_offset = 0;05472 sprintf(nm, "rd%d", rdev->raid_disk);5473 if (sysfs_create_link(&mddev->kobj,5474 &rdev->kobj, nm))···5480 break;5481 }54825483+ /* When a reshape changes the number of devices, ->degraded5484+ * is measured against the large of the pre and post number of5485+ * devices.*/5486 if (mddev->delta_disks > 0) {5487 spin_lock_irqsave(&conf->device_lock, flags);5488+ mddev->degraded += (conf->raid_disks - conf->previous_raid_disks)5489 - added_devices;5490 spin_unlock_irqrestore(&conf->device_lock, flags);5491 }