X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=drivers%2Finput%2Fevdev.c;h=39c497e5fafafc283988c7bcf6fd34ef81b86342;hb=6a77f38946aaee1cd85eeec6cf4229b204c15071;hp=3737e5abc286cb6e6d1d3b0ace9d327ae0aa1398;hpb=87fc8d1bb10cd459024a742c6a10961fefcef18f;p=linux-2.6.git diff --git a/drivers/input/evdev.c b/drivers/input/evdev.c index 3737e5abc..39c497e5f 100644 --- a/drivers/input/evdev.c +++ b/drivers/input/evdev.c @@ -91,8 +91,6 @@ static int evdev_flush(struct file * file) static void evdev_free(struct evdev *evdev) { - devfs_remove("input/event%d", evdev->minor); - class_simple_device_remove(MKDEV(INPUT_MAJOR, EVDEV_MINOR_BASE + evdev->minor)); evdev_table[evdev->minor] = NULL; kfree(evdev); } @@ -441,6 +439,8 @@ static void evdev_disconnect(struct input_handle *handle) { struct evdev *evdev = handle->private; + class_simple_device_remove(MKDEV(INPUT_MAJOR, EVDEV_MINOR_BASE + evdev->minor)); + devfs_remove("input/event%d", evdev->minor); evdev->exist = 0; if (evdev->open) {