]> git.karo-electronics.de Git - karo-tx-linux.git/commitdiff
V4L: wm8775/wm8739: Fix memory leak when unloading module
authorHans Verkuil <hverkuil@xs4all.nl>
Tue, 24 Jul 2007 12:07:43 +0000 (08:07 -0400)
committerGreg Kroah-Hartman <gregkh@suse.de>
Thu, 9 Aug 2007 21:27:32 +0000 (14:27 -0700)
State struct was never freed.

(cherry picked from commit 1b2232ab879993fcf5b9391c3febf6ab5d78201e)

Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
drivers/media/video/wm8739.c
drivers/media/video/wm8775.c

index 8f6741a28a4768455628733013fd41f51cd02895..1bf4cbec6a87a7a738a7334db4dbfd4104d6ac8b 100644 (file)
@@ -321,12 +321,14 @@ static int wm8739_probe(struct i2c_adapter *adapter)
 
 static int wm8739_detach(struct i2c_client *client)
 {
+       struct wm8739_state *state = i2c_get_clientdata(client);
        int err;
 
        err = i2c_detach_client(client);
        if (err)
                return err;
 
+       kfree(state);
        kfree(client);
        return 0;
 }
index 4df5d30d4d09bf7a00a3a795d0a0880e6e511933..9f7e894ef962cdc4d76baec111aacb99fa700261 100644 (file)
@@ -222,12 +222,14 @@ static int wm8775_probe(struct i2c_adapter *adapter)
 
 static int wm8775_detach(struct i2c_client *client)
 {
+       struct wm8775_state *state = i2c_get_clientdata(client);
        int err;
 
        err = i2c_detach_client(client);
        if (err) {
                return err;
        }
+       kfree(state);
        kfree(client);
 
        return 0;