ALSA: seq: Fix snd_seq_call_port_info_ioctl in compat mode
authorNicolas Boichat <drinkcat@chromium.org>
Mon, 18 Jan 2016 13:35:01 +0000 (21:35 +0800)
committerWilly Tarreau <w@1wt.eu>
Sat, 12 Mar 2016 13:25:44 +0000 (14:25 +0100)
commit99e79f2963d556abc263f2b88adfa41d3022c78a
treeb64c76ceb3c83d5def119f2fcefd99b14d787cd1
parent8c1f2d6307bca9f9e43583497d691ce72cfb7c6c
ALSA: seq: Fix snd_seq_call_port_info_ioctl in compat mode

commit 9586495dc3011a80602329094e746dbce16cb1f1 upstream.

This reverts one hunk of
commit ef44a1ec6eee ("ALSA: sound/core: use memdup_user()"), which
replaced a number of kmalloc followed by memcpy with memdup calls.

In this case, we are copying from a struct snd_seq_port_info32 to a
struct snd_seq_port_info, but the latter is 4 bytes longer than the
32-bit version, so we need to separate kmalloc and copy calls.

Fixes: ef44a1ec6eee ('ALSA: sound/core: use memdup_user()')
Signed-off-by: Nicolas Boichat <drinkcat@chromium.org>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
Signed-off-by: Willy Tarreau <w@1wt.eu>
sound/core/seq/seq_compat.c