SMB3: Kernel oops mounting a encryptData share with CONFIG_DEBUG_VIRTUAL
[ Upstream commit ee9d661823
]
Fix kernel oops when mounting a encryptData CIFS share with
CONFIG_DEBUG_VIRTUAL
Signed-off-by: Sebastien Tisserant <stisserant@wallix.com>
Reviewed-by: Pavel Shilovsky <pshilov@microsoft.com>
Signed-off-by: Steve French <stfrench@microsoft.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
This commit is contained in:
committed by
Greg Kroah-Hartman
parent
fab5a1fd17
commit
33bdea175d
@ -2545,7 +2545,15 @@ fill_transform_hdr(struct smb2_transform_hdr *tr_hdr, unsigned int orig_len,
|
|||||||
static inline void smb2_sg_set_buf(struct scatterlist *sg, const void *buf,
|
static inline void smb2_sg_set_buf(struct scatterlist *sg, const void *buf,
|
||||||
unsigned int buflen)
|
unsigned int buflen)
|
||||||
{
|
{
|
||||||
sg_set_page(sg, virt_to_page(buf), buflen, offset_in_page(buf));
|
void *addr;
|
||||||
|
/*
|
||||||
|
* VMAP_STACK (at least) puts stack into the vmalloc address space
|
||||||
|
*/
|
||||||
|
if (is_vmalloc_addr(buf))
|
||||||
|
addr = vmalloc_to_page(buf);
|
||||||
|
else
|
||||||
|
addr = virt_to_page(buf);
|
||||||
|
sg_set_page(sg, addr, buflen, offset_in_page(buf));
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Assumes the first rqst has a transform header as the first iov.
|
/* Assumes the first rqst has a transform header as the first iov.
|
||||||
|
Reference in New Issue
Block a user