summaryrefslogtreecommitdiff
path: root/fs/ceph/ceph_frag.c
blob: 6f67d5b884a0b8fc8efe7dde153d6bb918bddfbc (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
// SPDX-License-Identifier: GPL-2.0
/*
 * Ceph 'frag' type
 */
#include <linux/module.h>
#include <linux/ceph/types.h>

int ceph_frag_compare(__u32 a, __u32 b)
{
	unsigned va = ceph_frag_value(a);
	unsigned vb = ceph_frag_value(b);
	if (va < vb)
		return -1;
	if (va > vb)
		return 1;
	va = ceph_frag_bits(a);
	vb = ceph_frag_bits(b);
	if (va < vb)
		return -1;
	if (va > vb)
		return 1;
	return 0;
}