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 6.5-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-6.5 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 @@ -2559,7 +2559,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-6.5/asoc-simple-card-utils-fixup-simple_util_startup-error-handling.patch queue-6.5/ixgbe-fix-crash-with-empty-vf-macvlan-list.patch queue-6.5/drm-msm-dsi-fix-irq_of_parse_and_map-error-checking.patch queue-6.5/mlxsw-fix-mlxsw_sp2_nve_vxlan_learning_set-return-ty.patch queue-6.5/ceph-fix-type-promotion-bug-on-32bit-systems.patch queue-6.5/alsa-hda-cs35l41-cleanup-and-fix-double-free-in-firmware-request.patch