/* Allocates and returns a cdev structure, or NULL on failure.  */
struct cdev* cdev_alloc(void)
/* Allocates and returns a cdev structure, or NULL on failure.  */
struct cdev* cdev_alloc(void)
{
	struct cdev *p = kzalloc(sizeof(struct cdev), GFP_KERNEL);
	if (p) {
		INIT_LIST_HEAD(&p->list);
		kobject_init(&p->kobj, &ktype_cdev_dynamic);
	}
	return p;
}