xref: /openbmc/linux/fs/ceph/ceph_frag.c (revision 498495dba268b20e8eadd7fe93c140c68b6cc9d2)
1*b2441318SGreg Kroah-Hartman // SPDX-License-Identifier: GPL-2.0
2de57606cSSage Weil /*
3de57606cSSage Weil  * Ceph 'frag' type
4de57606cSSage Weil  */
53d14c5d2SYehuda Sadeh #include <linux/module.h>
63d14c5d2SYehuda Sadeh #include <linux/ceph/types.h>
7de57606cSSage Weil 
ceph_frag_compare(__u32 a,__u32 b)8de57606cSSage Weil int ceph_frag_compare(__u32 a, __u32 b)
9de57606cSSage Weil {
10de57606cSSage Weil 	unsigned va = ceph_frag_value(a);
11de57606cSSage Weil 	unsigned vb = ceph_frag_value(b);
12de57606cSSage Weil 	if (va < vb)
13de57606cSSage Weil 		return -1;
14de57606cSSage Weil 	if (va > vb)
15de57606cSSage Weil 		return 1;
16de57606cSSage Weil 	va = ceph_frag_bits(a);
17de57606cSSage Weil 	vb = ceph_frag_bits(b);
18de57606cSSage Weil 	if (va < vb)
19de57606cSSage Weil 		return -1;
20de57606cSSage Weil 	if (va > vb)
21de57606cSSage Weil 		return 1;
22de57606cSSage Weil 	return 0;
23de57606cSSage Weil }
24