sexed up chardev.c, got it nice and ready for some waitqueue action