Revision 0f0909e242f73c1154272cf04f07fc9afe13e5b8 authored by Eric Biggers on 14 November 2016, 01:41:09 UTC, committed by Theodore Ts'o on 20 November 2016, 01:56:13 UTC
With the new (in 4.9) option to use a virtually-mapped stack
(CONFIG_VMAP_STACK), stack buffers cannot be used as input/output for
the scatterlist crypto API because they may not be directly mappable to
struct page.  get_crypt_info() was using a stack buffer to hold the
output from the encryption operation used to derive the per-file key.
Fix it by using a heap buffer.

This bug could most easily be observed in a CONFIG_DEBUG_SG kernel
because this allowed the BUG in sg_set_buf() to be triggered.

Cc: stable@vger.kernel.org
Signed-off-by: Eric Biggers <ebiggers@google.com>
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
1 parent 3c7018e
History
File Mode Size
Makefile -rw-r--r-- 254 bytes
af_rose.c -rw-r--r-- 37.4 KB
rose_dev.c -rw-r--r-- 3.1 KB
rose_in.c -rw-r--r-- 7.5 KB
rose_link.c -rw-r--r-- 6.7 KB
rose_loopback.c -rw-r--r-- 2.7 KB
rose_out.c -rw-r--r-- 2.8 KB
rose_route.c -rw-r--r-- 31.3 KB
rose_subr.c -rw-r--r-- 12.3 KB
rose_timer.c -rw-r--r-- 4.9 KB
sysctl_net_rose.c -rw-r--r-- 3.3 KB

back to top