This is a note to let you know that I've just added the patch titled ceph: fix type promotion bug on 32bit systems to the 5.10-stable tree which can be found at: http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary The filename of the patch is: ceph-fix-type-promotion-bug-on-32bit-systems.patch and it can be found in the queue-5.10 subdirectory. If you, or anyone else, feels it should not be added to the stable tree, please let <stable@xxxxxxxxxxxxxxx> know about it. >From 07bb00ef00ace88dd6f695fadbba76565756e55c Mon Sep 17 00:00:00 2001 From: Dan Carpenter <dan.carpenter@xxxxxxxxxx> Date: Sat, 7 Oct 2023 11:52:39 +0300 Subject: ceph: fix type promotion bug on 32bit systems From: Dan Carpenter <dan.carpenter@xxxxxxxxxx> commit 07bb00ef00ace88dd6f695fadbba76565756e55c upstream. In this code "ret" is type long and "src_objlen" is unsigned int. The problem is that on 32bit systems, when we do the comparison signed longs are type promoted to unsigned int. So negative error codes from do_splice_direct() are treated as success instead of failure. Cc: stable@xxxxxxxxxxxxxxx Fixes: 1b0c3b9f91f0 ("ceph: re-org copy_file_range and fix some error paths") Signed-off-by: Dan Carpenter <dan.carpenter@xxxxxxxxxx> Reviewed-by: Xiubo Li <xiubli@xxxxxxxxxx> Signed-off-by: Ilya Dryomov <idryomov@xxxxxxxxx> Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx> --- fs/ceph/file.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) --- a/fs/ceph/file.c +++ b/fs/ceph/file.c @@ -2428,7 +2428,7 @@ static ssize_t __ceph_copy_file_range(st ret = do_splice_direct(src_file, &src_off, dst_file, &dst_off, src_objlen, flags); /* Abort on short copies or on error */ - if (ret < src_objlen) { + if (ret < (long)src_objlen) { dout("Failed partial copy (%zd)\n", ret); goto out; } Patches currently in stable-queue which might be from dan.carpenter@xxxxxxxxxx are queue-5.10/ixgbe-fix-crash-with-empty-vf-macvlan-list.patch queue-5.10/mlxsw-fix-mlxsw_sp2_nve_vxlan_learning_set-return-ty.patch queue-5.10/ceph-fix-type-promotion-bug-on-32bit-systems.patch