diff options
author | NeilBrown <neilb@suse.de> | 2010-03-16 15:14:51 +1100 |
---|---|---|
committer | Stephen Rothwell <sfr@canb.auug.org.au> | 2010-03-30 10:59:26 +1100 |
commit | 35e30c170c95e88fef387254d9ab97442626d5a1 (patch) | |
tree | 8067e3ead9f9cf0c7519daa227b8eb8906d6e22c /lib | |
parent | 220bf991b0366cc50a94feede3d7341fa5710ee4 (diff) |
kref: remove kref_set
Of the three uses of kref_set in the kernel:
One really should be kref_put as the code is letting go of a
reference,
Two really should be kref_init because the kref is being
initialised.
This suggests that making kref_set available encourages bad code.
So fix the three uses and remove kref_set completely.
Signed-off-by: NeilBrown <neilb@suse.de>
Acked-by: Mimi Zohar <zohar@us.ibm.com>
Acked-by: Serge Hallyn <serue@us.ibm.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Diffstat (limited to 'lib')
-rw-r--r-- | lib/kref.c | 15 |
1 files changed, 2 insertions, 13 deletions
diff --git a/lib/kref.c b/lib/kref.c index 9ecd6e865610..69761d3de203 100644 --- a/lib/kref.c +++ b/lib/kref.c @@ -15,23 +15,13 @@ #include <linux/module.h> /** - * kref_set - initialize object and set refcount to requested number. - * @kref: object in question. - * @num: initial reference counter - */ -void kref_set(struct kref *kref, int num) -{ - atomic_set(&kref->refcount, num); - smp_mb(); -} - -/** * kref_init - initialize object. * @kref: object in question. */ void kref_init(struct kref *kref) { - kref_set(kref, 1); + atomic_set(&kref->refcount, 1); + smp_mb(); } /** @@ -71,7 +61,6 @@ int kref_put(struct kref *kref, void (*release)(struct kref *kref)) return 0; } -EXPORT_SYMBOL(kref_set); EXPORT_SYMBOL(kref_init); EXPORT_SYMBOL(kref_get); EXPORT_SYMBOL(kref_put); |