/* NEVER try to get away with just a "blank" release function to try to be smarter than the kernel. Turns out, no one ever is...  */
static void foo_release(struct kobject *kobj)
/* NEVER try to get away with just a "blank" release function to try to be smarter than the kernel. Turns out, no one ever is...  */
static void foo_release(struct kobject *kobj)
{
	struct foo_obj *foo;
	foo = to_foo_obj(kobj);
	kfree(foo);
}