Never directly free @dev after calling device_register(), even if it returned an error! Always use put_device() to give up the reference initialized.
Arvind Yadav (2): [PATCH 1/2] sh: maple: use put_device() instead of kfree() [PATCH 2/2] sh: superhyway: use put_device() if device_register fail drivers/sh/maple/maple.c | 3 ++- drivers/sh/superhyway/superhyway.c | 11 +++++++++-- 2 files changed, 11 insertions(+), 3 deletions(-) -- 1.9.1