Bluetooth: Add SCO fallback for eSCO connection attempts
[pandora-kernel.git] / fs / quota_v1.c
index 5ae15b1..b4af1c6 100644 (file)
@@ -3,25 +3,39 @@
 #include <linux/quota.h>
 #include <linux/quotaops.h>
 #include <linux/dqblk_v1.h>
-#include <linux/quotaio_v1.h>
 #include <linux/kernel.h>
 #include <linux/init.h>
 #include <linux/module.h>
 
 #include <asm/byteorder.h>
 
+#include "quotaio_v1.h"
+
 MODULE_AUTHOR("Jan Kara");
 MODULE_DESCRIPTION("Old quota format support");
 MODULE_LICENSE("GPL");
 
+#define QUOTABLOCK_BITS 10
+#define QUOTABLOCK_SIZE (1 << QUOTABLOCK_BITS)
+
+static inline qsize_t v1_stoqb(qsize_t space)
+{
+       return (space + QUOTABLOCK_SIZE - 1) >> QUOTABLOCK_BITS;
+}
+
+static inline qsize_t v1_qbtos(qsize_t blocks)
+{
+       return blocks << QUOTABLOCK_BITS;
+}
+
 static void v1_disk2mem_dqblk(struct mem_dqblk *m, struct v1_disk_dqblk *d)
 {
        m->dqb_ihardlimit = d->dqb_ihardlimit;
        m->dqb_isoftlimit = d->dqb_isoftlimit;
        m->dqb_curinodes = d->dqb_curinodes;
-       m->dqb_bhardlimit = d->dqb_bhardlimit;
-       m->dqb_bsoftlimit = d->dqb_bsoftlimit;
-       m->dqb_curspace = ((qsize_t)d->dqb_curblocks) << QUOTABLOCK_BITS;
+       m->dqb_bhardlimit = v1_qbtos(d->dqb_bhardlimit);
+       m->dqb_bsoftlimit = v1_qbtos(d->dqb_bsoftlimit);
+       m->dqb_curspace = v1_qbtos(d->dqb_curblocks);
        m->dqb_itime = d->dqb_itime;
        m->dqb_btime = d->dqb_btime;
 }
@@ -31,9 +45,9 @@ static void v1_mem2disk_dqblk(struct v1_disk_dqblk *d, struct mem_dqblk *m)
        d->dqb_ihardlimit = m->dqb_ihardlimit;
        d->dqb_isoftlimit = m->dqb_isoftlimit;
        d->dqb_curinodes = m->dqb_curinodes;
-       d->dqb_bhardlimit = m->dqb_bhardlimit;
-       d->dqb_bsoftlimit = m->dqb_bsoftlimit;
-       d->dqb_curblocks = toqb(m->dqb_curspace);
+       d->dqb_bhardlimit = v1_stoqb(m->dqb_bhardlimit);
+       d->dqb_bsoftlimit = v1_stoqb(m->dqb_bsoftlimit);
+       d->dqb_curblocks = v1_stoqb(m->dqb_curspace);
        d->dqb_itime = m->dqb_itime;
        d->dqb_btime = m->dqb_btime;
 }