drivers/gpu/vga/vgaarb.c: add missing kfree
kbuf is a buffer that is local to this function, so all of the error paths leaving the function should release it. Signed-off-by: Julia Lawall <julia@diku.dk> Cc: Jesper Juhl <jj@chaosbits.net> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Dave Airlie <airlied@redhat.com>
This commit is contained in:
Родитель
21240f9bc1
Коммит
c916874d60
|
@ -991,14 +991,20 @@ static ssize_t vga_arb_write(struct file *file, const char __user * buf,
|
|||
uc = &priv->cards[i];
|
||||
}
|
||||
|
||||
if (!uc)
|
||||
return -EINVAL;
|
||||
if (!uc) {
|
||||
ret_val = -EINVAL;
|
||||
goto done;
|
||||
}
|
||||
|
||||
if (io_state & VGA_RSRC_LEGACY_IO && uc->io_cnt == 0)
|
||||
return -EINVAL;
|
||||
if (io_state & VGA_RSRC_LEGACY_IO && uc->io_cnt == 0) {
|
||||
ret_val = -EINVAL;
|
||||
goto done;
|
||||
}
|
||||
|
||||
if (io_state & VGA_RSRC_LEGACY_MEM && uc->mem_cnt == 0)
|
||||
return -EINVAL;
|
||||
if (io_state & VGA_RSRC_LEGACY_MEM && uc->mem_cnt == 0) {
|
||||
ret_val = -EINVAL;
|
||||
goto done;
|
||||
}
|
||||
|
||||
vga_put(pdev, io_state);
|
||||
|
||||
|
|
Загрузка…
Ссылка в новой задаче