lvb.c 1.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849
  1. /*
  2. * Copyright (C) Sistina Software, Inc. 1997-2003 All rights reserved.
  3. * Copyright (C) 2004-2005 Red Hat, Inc. All rights reserved.
  4. *
  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.
  8. */
  9. #include <linux/sched.h>
  10. #include <linux/slab.h>
  11. #include <linux/spinlock.h>
  12. #include <linux/completion.h>
  13. #include <linux/buffer_head.h>
  14. #include <asm/semaphore.h>
  15. #include "gfs2.h"
  16. #define pv(struct, member, fmt) printk(KERN_INFO " "#member" = "fmt"\n", \
  17. struct->member);
  18. void gfs2_quota_lvb_in(struct gfs2_quota_lvb *qb, char *lvb)
  19. {
  20. struct gfs2_quota_lvb *str = (struct gfs2_quota_lvb *)lvb;
  21. qb->qb_magic = be32_to_cpu(str->qb_magic);
  22. qb->qb_limit = be64_to_cpu(str->qb_limit);
  23. qb->qb_warn = be64_to_cpu(str->qb_warn);
  24. qb->qb_value = be64_to_cpu(str->qb_value);
  25. }
  26. void gfs2_quota_lvb_out(struct gfs2_quota_lvb *qb, char *lvb)
  27. {
  28. struct gfs2_quota_lvb *str = (struct gfs2_quota_lvb *)lvb;
  29. str->qb_magic = cpu_to_be32(qb->qb_magic);
  30. str->qb_limit = cpu_to_be64(qb->qb_limit);
  31. str->qb_warn = cpu_to_be64(qb->qb_warn);
  32. str->qb_value = cpu_to_be64(qb->qb_value);
  33. }
  34. void gfs2_quota_lvb_print(struct gfs2_quota_lvb *qb)
  35. {
  36. pv(qb, qb_magic, "%u");
  37. pv(qb, qb_limit, "%llu");
  38. pv(qb, qb_warn, "%llu");
  39. pv(qb, qb_value, "%lld");
  40. }