summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDenis Vlasenko2007-02-06 00:37:40 +0000
committerDenis Vlasenko2007-02-06 00:37:40 +0000
commitcc24419e98853aede7c652edb3c1c79a9865bdda (patch)
treef7116bb6956d58da976003cfd878f8d762063298
parentdc485c9da66192a705e4d4a1ea0f8301d72906d6 (diff)
downloadbusybox-cc24419e98853aede7c652edb3c1c79a9865bdda.zip
busybox-cc24419e98853aede7c652edb3c1c79a9865bdda.tar.gz
minix utils: de-inline bit ops (saves ~130 bytes)
-rw-r--r--util-linux/fsck_minix.c32
-rw-r--r--util-linux/mkfs_minix.c26
2 files changed, 40 insertions, 18 deletions
diff --git a/util-linux/fsck_minix.c b/util-linux/fsck_minix.c
index 4c486d0..1ed5472 100644
--- a/util-linux/fsck_minix.c
+++ b/util-linux/fsck_minix.c
@@ -174,22 +174,34 @@ static char *zone_map;
static unsigned char *inode_count;
static unsigned char *zone_count;
-static int bit(const char *a, unsigned i)
+/* Before you ask "where they come from?": */
+/* setbit/clrbit are supplied by sys/param.h */
+
+static int minix_bit(const char *a, unsigned i)
{
return (a[i >> 3] & (1<<(i & 7)));
}
-/* setbit/clrbit are supplied by sys/param.h */
+static void minix_setbit(char *a, unsigned i)
+{
+ setbit(a, i);
+ changed = 1;
+}
+static void minix_clrbit(char *a, unsigned i)
+{
+ clrbit(a, i);
+ changed = 1;
+}
/* Note: do not assume 0/1, it is 0/nonzero */
-#define zone_in_use(x) (bit(zone_map,(x)-FIRSTZONE+1))
-#define inode_in_use(x) (bit(inode_map,(x)))
+#define zone_in_use(x) (minix_bit(zone_map,(x)-FIRSTZONE+1))
+#define inode_in_use(x) (minix_bit(inode_map,(x)))
-#define mark_inode(x) (setbit(inode_map,(x)),changed=1)
-#define unmark_inode(x) (clrbit(inode_map,(x)),changed=1)
+#define mark_inode(x) (minix_setbit(inode_map,(x)))
+#define unmark_inode(x) (minix_clrbit(inode_map,(x)))
-#define mark_zone(x) (setbit(zone_map,(x)-FIRSTZONE+1),changed=1)
-#define unmark_zone(x) (clrbit(zone_map,(x)-FIRSTZONE+1),changed=1)
+#define mark_zone(x) (minix_setbit(zone_map,(x)-FIRSTZONE+1))
+#define unmark_zone(x) (minix_clrbit(zone_map,(x)-FIRSTZONE+1))
static void recursive_check(unsigned ino);
@@ -655,8 +667,8 @@ static struct minix1_inode *get_inode(unsigned nr)
if (repair) {
if (ask("Mark as 'in use'", 1))
mark_inode(nr);
- } else {
- errors_uncorrected = 1;
+ else
+ errors_uncorrected = 1;
}
}
if (S_ISDIR(inode->i_mode))
diff --git a/util-linux/mkfs_minix.c b/util-linux/mkfs_minix.c
index e214d28..59a9e17 100644
--- a/util-linux/mkfs_minix.c
+++ b/util-linux/mkfs_minix.c
@@ -142,21 +142,31 @@ static ATTRIBUTE_ALWAYS_INLINE unsigned div_roundup(unsigned size, unsigned n)
#define INODE_BUFFER_SIZE (INODE_BLOCKS * BLOCK_SIZE)
#define NORM_FIRSTZONE (2 + SB_IMAPS + SB_ZMAPS + INODE_BLOCKS)
-static int bit(const char* a, unsigned i)
+/* Before you ask "where they come from?": */
+/* setbit/clrbit are supplied by sys/param.h */
+
+static int minix_bit(const char* a, unsigned i)
{
return a[i >> 3] & (1<<(i & 7));
}
-/* setbit/clrbit are supplied by sys/param.h */
+static void minix_setbit(char *a, unsigned i)
+{
+ setbit(a, i);
+}
+static void minix_clrbit(char *a, unsigned i)
+{
+ clrbit(a, i);
+}
/* Note: do not assume 0/1, it is 0/nonzero */
-#define zone_in_use(x) bit(zone_map,(x)-SB_FIRSTZONE+1)
-/*#define inode_in_use(x) bit(inode_map,(x))*/
+#define zone_in_use(x) minix_bit(zone_map,(x)-SB_FIRSTZONE+1)
+/*#define inode_in_use(x) minix_bit(inode_map,(x))*/
-#define mark_inode(x) setbit(inode_map,(x))
-#define unmark_inode(x) clrbit(inode_map,(x))
-#define mark_zone(x) setbit(zone_map,(x)-SB_FIRSTZONE+1)
-#define unmark_zone(x) clrbit(zone_map,(x)-SB_FIRSTZONE+1)
+#define mark_inode(x) minix_setbit(inode_map,(x))
+#define unmark_inode(x) minix_clrbit(inode_map,(x))
+#define mark_zone(x) minix_setbit(zone_map,(x)-SB_FIRSTZONE+1)
+#define unmark_zone(x) minix_clrbit(zone_map,(x)-SB_FIRSTZONE+1)
#ifndef BLKGETSIZE
# define BLKGETSIZE _IO(0x12,96) /* return device size */