X-Git-Url: http://pileus.org/git/?a=blobdiff_plain;f=drivers%2Ftelephony%2Fphonedev.c;h=bcea8d9b718ce782da7f1e3fdb20d4d278d9d00e;hb=80ee5ad23150f1f3fe8d35728e860850ccea44da;hp=e166fffea86ba5b971df5d6fd7e4f2c95240e689;hpb=4e8f10b7ccf1c3c53a818a157962074a7340732e;p=~andy%2Flinux diff --git a/drivers/telephony/phonedev.c b/drivers/telephony/phonedev.c index e166fffea86..bcea8d9b718 100644 --- a/drivers/telephony/phonedev.c +++ b/drivers/telephony/phonedev.c @@ -28,7 +28,6 @@ #include #include -#include #include #define PHONE_NUM_DEVICES 256 @@ -106,8 +105,6 @@ int phone_register_device(struct phone_device *p, int unit) if (phone_device[i] == NULL) { phone_device[i] = p; p->minor = i; - devfs_mk_cdev(MKDEV(PHONE_MAJOR,i), - S_IFCHR|S_IRUSR|S_IWUSR, "phone/%d", i); mutex_unlock(&phone_lock); return 0; } @@ -123,15 +120,13 @@ int phone_register_device(struct phone_device *p, int unit) void phone_unregister_device(struct phone_device *pfd) { mutex_lock(&phone_lock); - if (phone_device[pfd->minor] != pfd) - panic("phone: bad unregister"); - devfs_remove("phone/%d", pfd->minor); - phone_device[pfd->minor] = NULL; + if (likely(phone_device[pfd->minor] == pfd)) + phone_device[pfd->minor] = NULL; mutex_unlock(&phone_lock); } -static struct file_operations phone_fops = +static const struct file_operations phone_fops = { .owner = THIS_MODULE, .open = phone_open,