SUNRPC: fix ternary sign expansion bug in tracing
stable inclusion from stable-5.10.38 commit 0a9decf2dd4d859bdc791165abc2b646a85dd00f bugzilla: 51875 CVE: NA -------------------------------- [ Upstream commit cb579086 ] This code is supposed to pass negative "err" values for tracing but it passes positive values instead. The problem is that the trace_svcsock_tcp_send() function takes a long but "err" is an int and "sent" is a u32. The negative is first type promoted to u32 so it becomes a high positive then it is promoted to long and it stays positive. Fix this by casting "err" directly to long. Fixes: 998024de ("SUNRPC: Add more svcsock tracepoints") Signed-off-by: NDan Carpenter <dan.carpenter@oracle.com> Signed-off-by: NChuck Lever <chuck.lever@oracle.com> Signed-off-by: NSasha Levin <sashal@kernel.org> Signed-off-by: NChen Jun <chenjun102@huawei.com> Acked-by: NWeilong Chen <chenweilong@huawei.com> Signed-off-by: NZheng Zengkai <zhengzengkai@huawei.com>
Showing
想要评论请 注册 或 登录