memleak in fs/char_dev.c : alloc_chrdev_region?

Submitted by Anonymous
on December 7, 2009 - 5:50am

snippet:

int alloc_chrdev_region(dev_t *dev, unsigned baseminor, unsigned count,
const char *name)
{
struct char_device_struct *cd;
cd = __register_chrdev_region(0, baseminor, count, name);
if (IS_ERR(cd))
return PTR_ERR(cd);
*dev = MKDEV(cd->major, cd->baseminor);
return 0;
}

The 'cd' struct is allocated in __register_chrdev_region, but never freed?