]> git.baikalelectronics.ru Git - kernel.git/commit
ceph: fix endianness bug in frag_tree_split_cmp
authorJeff Layton <jlayton@redhat.com>
Thu, 12 Jan 2017 19:42:39 +0000 (14:42 -0500)
committerIlya Dryomov <idryomov@gmail.com>
Wed, 18 Jan 2017 16:58:45 +0000 (17:58 +0100)
commit9579fbb42206c8d117307100dafa57a3ae970d8b
tree152b818c980317a00c08634f246dd1e4b51ba56e
parent5c271d6ff106779f0ceeb626efe297296cfe026c
ceph: fix endianness bug in frag_tree_split_cmp

sparse says:

    fs/ceph/inode.c:308:36: warning: incorrect type in argument 1 (different base types)
    fs/ceph/inode.c:308:36:    expected unsigned int [unsigned] [usertype] a
    fs/ceph/inode.c:308:36:    got restricted __le32 [usertype] frag
    fs/ceph/inode.c:308:46: warning: incorrect type in argument 2 (different base types)
    fs/ceph/inode.c:308:46:    expected unsigned int [unsigned] [usertype] b
    fs/ceph/inode.c:308:46:    got restricted __le32 [usertype] frag

We need to convert these values to host-endian before calling the
comparator.

Fixes: 291605aa6bea ("ceph: don't assume frag tree splits in mds reply are sorted")
Signed-off-by: Jeff Layton <jlayton@redhat.com>
Reviewed-by: Sage Weil <sage@redhat.com>
Signed-off-by: Ilya Dryomov <idryomov@gmail.com>
fs/ceph/inode.c