From: Antonino A. D. <ad...@ho...> - 2004-12-21 21:37:20
|
Do a symbol_put() for each symbol_get() in savagefb. Signed-off-by: Antonino Daplas <ad...@po...> --- savagefb-i2c.c | 10 +++++++++- 1 files changed, 9 insertions(+), 1 deletion(-) diff -Nru a/drivers/video/savage/savagefb-i2c.c b/drivers/video/savage/savagefb-i2c.c --- a/drivers/video/savage/savagefb-i2c.c 2004-11-17 18:15:21 +08:00 +++ b/drivers/video/savage/savagefb-i2c.c 2004-11-29 20:26:19 +08:00 @@ -163,12 +163,15 @@ udelay(20); rc = add_bus(&chan->adapter); + if (rc == 0) dev_dbg(&chan->par->pcidev->dev, "I2C bus %s registered.\n", name); else dev_warn(&chan->par->pcidev->dev, "Failed to register I2C bus %s.\n", name); + + symbol_put(i2c_bit_add_bus); } else chan->par = NULL; @@ -212,8 +215,10 @@ int (*del_bus)(struct i2c_adapter *) = symbol_get(i2c_bit_del_bus); - if (del_bus && par->chan.par) + if (del_bus && par->chan.par) { del_bus(&par->chan.adapter); + symbol_put(i2c_bit_del_bus); + } par->chan.par = NULL; } @@ -239,6 +244,7 @@ if (transfer && chan->par) { buf = kmalloc(EDID_LENGTH, GFP_KERNEL); + if (buf) { msgs[1].buf = buf; @@ -249,6 +255,8 @@ buf = NULL; } } + + symbol_put(i2c_transfer); } return buf; |