diff options
author | Vasiliy Kulikov <segooon@gmail.com> | 2011-01-12 17:01:00 -0800 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2011-01-13 08:03:21 -0800 |
commit | 0193383a5833c1f082c738eaca868e4093a8df39 (patch) | |
tree | 79e2f43e17934b2e1ec015f6d76cd0b96b0d627d /drivers | |
parent | 563558b2c7350371551bf08348ac61be62200505 (diff) |
memstick: core: fix device_register() error handling
If device_register() fails then call put_device(). See comment to
device_register.
Signed-off-by: Vasiliy Kulikov <segooon@gmail.com>
Cc: Maxim Levitsky <maximlevitsky@gmail.com>
Cc: Alex Dubov <oakad@yahoo.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'drivers')
-rw-r--r-- | drivers/memstick/core/memstick.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/memstick/core/memstick.c b/drivers/memstick/core/memstick.c index c00fe8253c51..4303b7ef73e2 100644 --- a/drivers/memstick/core/memstick.c +++ b/drivers/memstick/core/memstick.c @@ -465,6 +465,7 @@ static void memstick_check(struct work_struct *work) if (!host->card) { host->card = card; if (device_register(&card->dev)) { + put_device(&card->dev); kfree(host->card); host->card = NULL; } |