summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorArjan van de Ven <arjan@infradead.org>2004-11-10 21:50:41 -0800
committerLinus Torvalds <torvalds@ppc970.osdl.org>2004-11-10 21:50:41 -0800
commit2ea6f6859bc53fcbc200c9fd5fb036fda02ee519 (patch)
tree6c0a97bbfb4e251a775593acde7ae234c0aebd45
parent35752097c2fe607c41cdb984d645de67907d7b7c (diff)
[PATCH] make cdev_get static, unexport
- cdev_get is only used in fs/char_dev.c; move it up, make it static and unexport it. - cdev_put is used in one more place (fs/file_table.c) but never in modules; unexport it. Signed-off-by: Arjan van de Ven <arjan@infradead.org> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-rw-r--r--fs/char_dev.c44
-rw-r--r--include/linux/cdev.h2
2 files changed, 22 insertions, 24 deletions
diff --git a/fs/char_dev.c b/fs/char_dev.c
index 00993daec453..51e6461854ab 100644
--- a/fs/char_dev.c
+++ b/fs/char_dev.c
@@ -249,6 +249,28 @@ int unregister_chrdev(unsigned int major, const char *name)
}
static spinlock_t cdev_lock = SPIN_LOCK_UNLOCKED;
+
+static struct kobject *cdev_get(struct cdev *p)
+{
+ struct module *owner = p->owner;
+ struct kobject *kobj;
+
+ if (owner && !try_module_get(owner))
+ return NULL;
+ kobj = kobject_get(&p->kobj);
+ if (!kobj)
+ module_put(owner);
+ return kobj;
+}
+
+void cdev_put(struct cdev *p)
+{
+ if (p) {
+ kobject_put(&p->kobj);
+ module_put(p->owner);
+ }
+}
+
/*
* Called every time a character special file is opened
*/
@@ -357,26 +379,6 @@ void cdev_del(struct cdev *p)
kobject_put(&p->kobj);
}
-struct kobject *cdev_get(struct cdev *p)
-{
- struct module *owner = p->owner;
- struct kobject *kobj;
-
- if (owner && !try_module_get(owner))
- return NULL;
- kobj = kobject_get(&p->kobj);
- if (!kobj)
- module_put(owner);
- return kobj;
-}
-
-void cdev_put(struct cdev *p)
-{
- if (p) {
- kobject_put(&p->kobj);
- module_put(p->owner);
- }
-}
static decl_subsys(cdev, NULL, NULL);
@@ -447,8 +449,6 @@ EXPORT_SYMBOL(unregister_chrdev_region);
EXPORT_SYMBOL(alloc_chrdev_region);
EXPORT_SYMBOL(cdev_init);
EXPORT_SYMBOL(cdev_alloc);
-EXPORT_SYMBOL(cdev_get);
-EXPORT_SYMBOL(cdev_put);
EXPORT_SYMBOL(cdev_del);
EXPORT_SYMBOL(cdev_add);
EXPORT_SYMBOL(register_chrdev);
diff --git a/include/linux/cdev.h b/include/linux/cdev.h
index f1996ec09e96..8da37e29cb87 100644
--- a/include/linux/cdev.h
+++ b/include/linux/cdev.h
@@ -17,8 +17,6 @@ struct cdev *cdev_alloc(void);
void cdev_put(struct cdev *p);
-struct kobject *cdev_get(struct cdev *);
-
int cdev_add(struct cdev *, dev_t, unsigned);
void cdev_del(struct cdev *);