ipc: fix compat msgrcv with negative msgtyp
authorMateusz Guzik <mguzik@redhat.com>
Tue, 28 Jan 2014 01:07:11 +0000 (17:07 -0800)
committerLinus Torvalds <torvalds@linux-foundation.org>
Tue, 28 Jan 2014 05:02:40 +0000 (21:02 -0800)
commite7ca2552369c1dfe0216c626baf82c3d83ec36bb
treedfaa96f46b9c9cf907c41bc6c825d250a8595010
parentffa571dafbaec0c74e374ce0ea7b4212b6cbc94c
ipc: fix compat msgrcv with negative msgtyp

Compat function takes msgtyp argument as u32 and passes it down to
do_msgrcv which results in casting to long, thus the sign is lost and we
get a big positive number instead.

Cast the argument to signed type before passing it down.

Signed-off-by: Mateusz Guzik <mguzik@redhat.com>
Reported-by: Gabriellla Schmidt <gsc@bruker.de>
Cc: Al Viro <viro@zeniv.linux.org.uk>
Cc: Davidlohr Bueso <davidlohr@hp.com>
Cc: Manfred Spraul <manfred@colorfullife.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
ipc/compat.c