Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

Kobject: convert drivers/* from kobject_unregister() to kobject_put()

There is no need for kobject_unregister() anymore, thanks to Kay's
kobject cleanup changes, so replace all instances of it with
kobject_put().


Cc: Kay Sievers <kay.sievers@vrfy.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>

+40 -42
+2 -2
drivers/base/bus.c
··· 681 681 kobject_uevent(&priv->kobj, KOBJ_ADD); 682 682 return error; 683 683 out_unregister: 684 - kobject_unregister(&priv->kobj); 684 + kobject_put(&priv->kobj); 685 685 out_put_bus: 686 686 bus_put(bus); 687 687 return error; ··· 708 708 pr_debug("bus: '%s': remove driver %s\n", drv->bus->name, drv->name); 709 709 driver_detach(drv); 710 710 module_remove_driver(drv); 711 - kobject_unregister(&drv->p->kobj); 711 + kobject_put(&drv->p->kobj); 712 712 bus_put(drv->bus); 713 713 } 714 714
+1 -1
drivers/base/sys.c
··· 264 264 } 265 265 mutex_unlock(&sysdev_drivers_lock); 266 266 267 - kobject_unregister(&sysdev->kobj); 267 + kobject_put(&sysdev->kobj); 268 268 } 269 269 270 270
+1 -1
drivers/block/pktcdvd.c
··· 130 130 static void pkt_kobj_remove(struct pktcdvd_kobj *p) 131 131 { 132 132 if (p) 133 - kobject_unregister(&p->kobj); 133 + kobject_put(&p->kobj); 134 134 } 135 135 /* 136 136 * default release function for pktcdvd kernel objects.
+1 -3
drivers/cpufreq/cpufreq.c
··· 913 913 cpufreq_cpu_data[j] = NULL; 914 914 spin_unlock_irqrestore(&cpufreq_driver_lock, flags); 915 915 916 - kobject_unregister(&policy->kobj); 916 + kobject_put(&policy->kobj); 917 917 wait_for_completion(&policy->kobj_unregister); 918 918 919 919 err_out_driver_exit: ··· 1029 1029 __cpufreq_governor(data, CPUFREQ_GOV_STOP); 1030 1030 1031 1031 unlock_policy_rwsem_write(cpu); 1032 - 1033 - kobject_unregister(&data->kobj); 1034 1032 1035 1033 kobject_put(&data->kobj); 1036 1034
+2 -2
drivers/cpuidle/sysfs.c
··· 277 277 278 278 static void inline cpuidle_free_state_kobj(struct cpuidle_device *device, int i) 279 279 { 280 - kobject_unregister(&device->kobjs[i]->kobj); 280 + kobject_put(&device->kobjs[i]->kobj); 281 281 wait_for_completion(&device->kobjs[i]->kobj_unregister); 282 282 kfree(device->kobjs[i]); 283 283 device->kobjs[i] = NULL; ··· 358 358 struct cpuidle_device *dev; 359 359 360 360 dev = per_cpu(cpuidle_devices, cpu); 361 - kobject_unregister(&dev->kobj); 361 + kobject_put(&dev->kobj); 362 362 }
+5 -5
drivers/edac/edac_device_sysfs.c
··· 303 303 * a) module_put() this module 304 304 * b) 'kfree' the memory 305 305 */ 306 - kobject_unregister(&edac_dev->kobj); 306 + kobject_put(&edac_dev->kobj); 307 307 } 308 308 309 309 /* edac_dev -> instance information */ ··· 574 574 575 575 /* Error unwind stack */ 576 576 err_on_attrib: 577 - kobject_unregister(&block->kobj); 577 + kobject_put(&block->kobj); 578 578 579 579 err_out: 580 580 return err; ··· 605 605 /* unregister this block's kobject, SEE: 606 606 * edac_device_ctrl_block_release() callback operation 607 607 */ 608 - kobject_unregister(&block->kobj); 608 + kobject_put(&block->kobj); 609 609 } 610 610 611 611 /* instance ctor/dtor code */ ··· 672 672 673 673 /* error unwind stack */ 674 674 err_release_instance_kobj: 675 - kobject_unregister(&instance->kobj); 675 + kobject_put(&instance->kobj); 676 676 677 677 err_out: 678 678 return err; ··· 697 697 /* unregister this instance's kobject, SEE: 698 698 * edac_device_ctrl_instance_release() for callback operation 699 699 */ 700 - kobject_unregister(&instance->kobj); 700 + kobject_put(&instance->kobj); 701 701 } 702 702 703 703 /*
+6 -6
drivers/edac/edac_mc_sysfs.c
··· 395 395 goto err_release_top_kobj; 396 396 397 397 /* At this point, to release a csrow kobj, one must 398 - * call the kobject_unregister and allow that tear down 398 + * call the kobject_put and allow that tear down 399 399 * to work the releasing 400 400 */ 401 401 ··· 406 406 err = edac_create_channel_files(&csrow->kobj, chan); 407 407 if (err) { 408 408 /* special case the unregister here */ 409 - kobject_unregister(&csrow->kobj); 409 + kobject_put(&csrow->kobj); 410 410 goto err_out; 411 411 } 412 412 } ··· 808 808 void edac_mc_unregister_sysfs_main_kobj(struct mem_ctl_info *mci) 809 809 { 810 810 /* delete the kobj from the mc_kset */ 811 - kobject_unregister(&mci->edac_mci_kobj); 811 + kobject_put(&mci->edac_mci_kobj); 812 812 } 813 813 814 814 #define EDAC_DEVICE_SYMLINK "device" ··· 923 923 fail1: 924 924 for (i--; i >= 0; i--) { 925 925 if (csrow->nr_pages > 0) { 926 - kobject_unregister(&mci->csrows[i].kobj); 926 + kobject_put(&mci->csrows[i].kobj); 927 927 } 928 928 } 929 929 ··· 950 950 for (i = 0; i < mci->nr_csrows; i++) { 951 951 if (mci->csrows[i].nr_pages > 0) { 952 952 debugf0("%s() unreg csrow-%d\n", __func__, i); 953 - kobject_unregister(&mci->csrows[i].kobj); 953 + kobject_put(&mci->csrows[i].kobj); 954 954 } 955 955 } 956 956 ··· 967 967 debugf0("%s() unregister this mci kobj\n", __func__); 968 968 969 969 /* unregister this instance's kobject */ 970 - kobject_unregister(&mci->edac_mci_kobj); 970 + kobject_put(&mci->edac_mci_kobj); 971 971 } 972 972 973 973
+3 -3
drivers/edac/edac_pci_sysfs.c
··· 205 205 * function release the main reference count and then 206 206 * kfree the memory 207 207 */ 208 - kobject_unregister(&pci->kobj); 208 + kobject_put(&pci->kobj); 209 209 } 210 210 211 211 /***************************** EDAC PCI sysfs root **********************/ ··· 411 411 * main kobj 412 412 */ 413 413 if (atomic_dec_return(&edac_pci_sysfs_refcount) == 0) { 414 - debugf0("%s() called kobject_unregister on main kobj\n", 414 + debugf0("%s() called kobject_put on main kobj\n", 415 415 __func__); 416 - kobject_unregister(&edac_pci_top_main_kobj); 416 + kobject_put(&edac_pci_top_main_kobj); 417 417 } 418 418 } 419 419
+1 -1
drivers/firmware/edd.c
··· 693 693 static inline void 694 694 edd_device_unregister(struct edd_device *edev) 695 695 { 696 - kobject_unregister(&edev->kobj); 696 + kobject_put(&edev->kobj); 697 697 } 698 698 699 699 static void edd_populate_dir(struct edd_device * edev)
+3 -3
drivers/firmware/efivars.c
··· 397 397 static inline void 398 398 efivar_unregister(struct efivar_entry *var) 399 399 { 400 - kobject_unregister(&var->kobj); 400 + kobject_put(&var->kobj); 401 401 } 402 402 403 403 ··· 732 732 kset_unregister(vars_kset); 733 733 734 734 out_firmware_unregister: 735 - kobject_unregister(efi_kobj); 735 + kobject_put(efi_kobj); 736 736 737 737 out_free: 738 738 kfree(variable_name); ··· 753 753 } 754 754 755 755 kset_unregister(vars_kset); 756 - kobject_unregister(efi_kobj); 756 + kobject_put(efi_kobj); 757 757 } 758 758 759 759 module_init(efivars_init);
+3 -3
drivers/infiniband/core/sysfs.c
··· 714 714 sysfs_remove_group(p, &pma_group); 715 715 sysfs_remove_group(p, &port->pkey_group); 716 716 sysfs_remove_group(p, &port->gid_group); 717 - kobject_unregister(p); 717 + kobject_put(p); 718 718 } 719 719 } 720 720 ··· 738 738 sysfs_remove_group(p, &pma_group); 739 739 sysfs_remove_group(p, &port->pkey_group); 740 740 sysfs_remove_group(p, &port->gid_group); 741 - kobject_unregister(p); 741 + kobject_put(p); 742 742 } 743 743 744 - kobject_unregister(device->ports_parent); 744 + kobject_put(device->ports_parent); 745 745 class_device_unregister(&device->class_dev); 746 746 } 747 747
+1 -1
drivers/md/md.c
··· 231 231 list_del(&mddev->all_mddevs); 232 232 spin_unlock(&all_mddevs_lock); 233 233 blk_cleanup_queue(mddev->queue); 234 - kobject_unregister(&mddev->kobj); 234 + kobject_put(&mddev->kobj); 235 235 } else 236 236 spin_unlock(&all_mddevs_lock); 237 237 }
+1 -1
drivers/net/ibmveth.c
··· 1236 1236 int i; 1237 1237 1238 1238 for(i = 0; i<IbmVethNumBufferPools; i++) 1239 - kobject_unregister(&adapter->rx_buff_pool[i].kobj); 1239 + kobject_put(&adapter->rx_buff_pool[i].kobj); 1240 1240 1241 1241 unregister_netdev(netdev); 1242 1242
+3 -3
drivers/parisc/pdc_stable.c
··· 1026 1026 for (i = 0; (entry = pdcspath_entries[i]); i++) { 1027 1027 read_lock(&entry->rw_lock); 1028 1028 if (entry->ready >= 2) 1029 - kobject_unregister(&entry->kobj); 1029 + kobject_put(&entry->kobj); 1030 1030 read_unlock(&entry->rw_lock); 1031 1031 } 1032 1032 } ··· 1086 1086 kset_unregister(paths_kset); 1087 1087 1088 1088 fail_ksetreg: 1089 - kobject_unregister(stable_kobj); 1089 + kobject_put(stable_kobj); 1090 1090 1091 1091 fail_firmreg: 1092 1092 printk(KERN_INFO PDCS_PREFIX " bailing out\n"); ··· 1098 1098 { 1099 1099 pdcs_unregister_pathentries(); 1100 1100 kset_unregister(paths_kset); 1101 - kobject_unregister(stable_kobj); 1101 + kobject_put(stable_kobj); 1102 1102 } 1103 1103 1104 1104
+1 -1
drivers/pci/hotplug/pci_hotplug_core.c
··· 671 671 672 672 fs_remove_slot (slot); 673 673 dbg ("Removed slot %s from the list\n", slot->name); 674 - kobject_unregister(&slot->kobj); 674 + kobject_put(&slot->kobj); 675 675 return 0; 676 676 } 677 677
+2 -2
drivers/pci/hotplug/rpadlpar_sysfs.c
··· 114 114 115 115 error = sysfs_create_group(dlpar_kobj, &dlpar_attr_group); 116 116 if (error) 117 - kobject_unregister(dlpar_kobj); 117 + kobject_put(dlpar_kobj); 118 118 return error; 119 119 } 120 120 121 121 void dlpar_sysfs_exit(void) 122 122 { 123 123 sysfs_remove_group(dlpar_kobj, &dlpar_attr_group); 124 - kobject_unregister(dlpar_kobj); 124 + kobject_put(dlpar_kobj); 125 125 }
+4 -4
drivers/uio/uio.c
··· 186 186 for (mi--; mi>=0; mi--) { 187 187 mem = &idev->info->mem[mi]; 188 188 map = mem->map; 189 - kobject_unregister(&map->kobj); 189 + kobject_put(&map->kobj); 190 190 } 191 - kobject_unregister(idev->map_dir); 191 + kobject_put(idev->map_dir); 192 192 sysfs_remove_group(&idev->dev->kobj, &uio_attr_grp); 193 193 err_group: 194 194 dev_err(idev->dev, "error creating sysfs files (%d)\n", ret); ··· 203 203 mem = &idev->info->mem[mi]; 204 204 if (mem->size == 0) 205 205 break; 206 - kobject_unregister(&mem->map->kobj); 206 + kobject_put(&mem->map->kobj); 207 207 } 208 - kobject_unregister(idev->map_dir); 208 + kobject_put(idev->map_dir); 209 209 sysfs_remove_group(&idev->dev->kobj, &uio_attr_grp); 210 210 } 211 211