2 * Copyright (C) Sistina Software, Inc. 1997-2003 All rights reserved.
3 * Copyright (C) 2004-2005 Red Hat, Inc. All rights reserved.
5 * This copyrighted material is made available to anyone wishing to use,
6 * modify, copy, or redistribute it subject to the terms and conditions
7 * of the GNU General Public License v.2.
10 #include <linux/sched.h>
11 #include <linux/slab.h>
12 #include <linux/spinlock.h>
13 #include <linux/completion.h>
14 #include <linux/buffer_head.h>
15 #include <linux/gfs2_ondisk.h>
16 #include <asm/semaphore.h>
19 #include "lm_interface.h"
23 #define pv(struct, member, fmt) printk(KERN_INFO " "#member" = "fmt"\n", \
26 void gfs2_quota_lvb_in(struct gfs2_quota_lvb
*qb
, char *lvb
)
28 struct gfs2_quota_lvb
*str
= (struct gfs2_quota_lvb
*)lvb
;
30 qb
->qb_magic
= be32_to_cpu(str
->qb_magic
);
31 qb
->qb_limit
= be64_to_cpu(str
->qb_limit
);
32 qb
->qb_warn
= be64_to_cpu(str
->qb_warn
);
33 qb
->qb_value
= be64_to_cpu(str
->qb_value
);
36 void gfs2_quota_lvb_out(struct gfs2_quota_lvb
*qb
, char *lvb
)
38 struct gfs2_quota_lvb
*str
= (struct gfs2_quota_lvb
*)lvb
;
40 str
->qb_magic
= cpu_to_be32(qb
->qb_magic
);
41 str
->qb_limit
= cpu_to_be64(qb
->qb_limit
);
42 str
->qb_warn
= cpu_to_be64(qb
->qb_warn
);
43 str
->qb_value
= cpu_to_be64(qb
->qb_value
);
46 void gfs2_quota_lvb_print(struct gfs2_quota_lvb
*qb
)
48 pv(qb
, qb_magic
, "%u");
49 pv(qb
, qb_limit
, "%llu");
50 pv(qb
, qb_warn
, "%llu");
51 pv(qb
, qb_value
, "%lld");