X-Git-Url: https://git.openpandora.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=fs%2Fchar_dev.c;h=3b1b1eefdbb01686f127df582143f922bf87c193;hb=8410a546765c10d929b82d1e8237398904a79283;hp=e82aac9cc2f5b9d39101e372cdab81dd971725a0;hpb=24665cd00dd06c741ef6268515ca9e6d3cda5c57;p=pandora-kernel.git diff --git a/fs/char_dev.c b/fs/char_dev.c index e82aac9cc2f5..3b1b1eefdbb0 100644 --- a/fs/char_dev.c +++ b/fs/char_dev.c @@ -150,7 +150,7 @@ __unregister_chrdev_region(unsigned major, unsigned baseminor, int minorct) struct char_device_struct *cd = NULL, **cp; int i = major_to_index(major); - up(&chrdevs_lock); + down(&chrdevs_lock); for (cp = &chrdevs[i]; *cp; cp = &(*cp)->next) if ((*cp)->major == major && (*cp)->baseminor == baseminor && @@ -277,8 +277,9 @@ static struct kobject *cdev_get(struct cdev *p) void cdev_put(struct cdev *p) { if (p) { + struct module *owner = p->owner; kobject_put(&p->kobj); - module_put(p->owner); + module_put(owner); } }