On 2020-02-14 12:21:01, Aditya Pakki wrote: > In crypt_scatterlist, if the crypt_stat argument is not set up > correctly, the kernel crashes. Instead, by returning an error code > upstream, the error is handled safely. > > The issue is detected via a static analysis tool written by us. > > Fixes: 237fead619984 (ecryptfs: fs/Makefile and fs/Kconfig) > Signed-off-by: Aditya Pakki <pakki001@xxxxxxx> Thanks! This looks good to me and passes the eCryptfs regression tests. I've queued it up in my tree. Tyler > --- > v1: Add missing fixes tag suggested by Markus and Tyler. > --- > fs/ecryptfs/crypto.c | 6 ++++-- > 1 file changed, 4 insertions(+), 2 deletions(-) > > diff --git a/fs/ecryptfs/crypto.c b/fs/ecryptfs/crypto.c > index db1ef144c63a..2c449aed1b92 100644 > --- a/fs/ecryptfs/crypto.c > +++ b/fs/ecryptfs/crypto.c > @@ -311,8 +311,10 @@ static int crypt_scatterlist(struct ecryptfs_crypt_stat *crypt_stat, > struct extent_crypt_result ecr; > int rc = 0; > > - BUG_ON(!crypt_stat || !crypt_stat->tfm > - || !(crypt_stat->flags & ECRYPTFS_STRUCT_INITIALIZED)); > + if (!crypt_stat || !crypt_stat->tfm > + || !(crypt_stat->flags & ECRYPTFS_STRUCT_INITIALIZED)) > + return -EINVAL; > + > if (unlikely(ecryptfs_verbosity > 0)) { > ecryptfs_printk(KERN_DEBUG, "Key size [%zd]; key:\n", > crypt_stat->key_size); > -- > 2.20.1 >