diff options
author | Jaegeuk Kim <jaegeuk@kernel.org> | 2015-12-15 11:13:25 -0800 |
---|---|---|
committer | Greg Wallace <greg@gregtwallace.com> | 2016-01-19 22:02:21 -0500 |
commit | 837208e09866e08cdd41e5c353257fa36fa88bce (patch) | |
tree | 6190702d36e479abfa1143d1bce14da0f2784e31 | |
parent | b54e4b5b59ba7aa242e672fd86ffa9ac4d311193 (diff) | |
download | android_external_f2fs-tools-837208e09866e08cdd41e5c353257fa36fa88bce.tar.gz android_external_f2fs-tools-837208e09866e08cdd41e5c353257fa36fa88bce.tar.bz2 android_external_f2fs-tools-837208e09866e08cdd41e5c353257fa36fa88bce.zip |
lib: use u8/u32/u64 for bit operations
This cleans up the bit operations.
Change-Id: Ie2b303cc6eddc4ef5315f8f55616dbe182664ddc
Signed-off-by: Jaegeuk Kim <jaegeuk@kernel.org>
-rw-r--r-- | fsck/fsck.c | 6 | ||||
-rw-r--r-- | include/f2fs_fs.h | 12 | ||||
-rw-r--r-- | lib/libf2fs.c | 19 |
3 files changed, 15 insertions, 22 deletions
diff --git a/fsck/fsck.c b/fsck/fsck.c index 38391a9..3e67ffc 100644 --- a/fsck/fsck.c +++ b/fsck/fsck.c @@ -869,8 +869,7 @@ static void convert_encrypted_name(unsigned char *name, int len, } static void print_dentry(__u32 depth, __u8 *name, - unsigned char *bitmap, - struct f2fs_dir_entry *dentry, + u8 *bitmap, struct f2fs_dir_entry *dentry, int max, int idx, int last_blk, int encrypted) { int last_de = 0; @@ -937,8 +936,7 @@ static int f2fs_check_hash_code(struct f2fs_dir_entry *dentry, } static int __chk_dentries(struct f2fs_sb_info *sbi, struct child_info *child, - unsigned char *bitmap, - struct f2fs_dir_entry *dentry, + u8 *bitmap, struct f2fs_dir_entry *dentry, __u8 (*filenames)[F2FS_SLOT_LEN], int max, int last_blk, int encrypted) { diff --git a/include/f2fs_fs.h b/include/f2fs_fs.h index a7df654..993edf2 100644 --- a/include/f2fs_fs.h +++ b/include/f2fs_fs.h @@ -880,16 +880,14 @@ extern int log_base_2(u_int32_t); extern unsigned int addrs_per_inode(struct f2fs_inode *); extern int get_bits_in_byte(unsigned char n); -extern int test_and_set_bit_le(unsigned int, unsigned char *); -extern int test_and_clear_bit_le(unsigned int, unsigned char*); -extern int test_bit_le(unsigned int, const unsigned char *); +extern int test_and_set_bit_le(u32, u8 *); +extern int test_and_clear_bit_le(u32, u8 *); +extern int test_bit_le(u32, const u8 *); extern int f2fs_test_bit(unsigned int, const char *); extern int f2fs_set_bit(unsigned int, char *); extern int f2fs_clear_bit(unsigned int, char *); -extern unsigned long find_next_bit_le(const unsigned char *, unsigned long, - unsigned long); -extern unsigned long find_next_zero_bit_le(const unsigned char *, unsigned long, - unsigned long); +extern unsigned long find_next_bit_le(const u8 *, u64, u64); +extern unsigned long find_next_zero_bit_le(const u8 *, u64, u64); extern u_int32_t f2fs_cal_crc32(u_int32_t, void *, int); extern int f2fs_crc_valid(u_int32_t blk_crc, void *buf, int len); diff --git a/lib/libf2fs.c b/lib/libf2fs.c index b90e729..8158514 100644 --- a/lib/libf2fs.c +++ b/lib/libf2fs.c @@ -236,7 +236,7 @@ int get_bits_in_byte(unsigned char n) return bits_in_byte[n]; } -int test_and_set_bit_le(unsigned int nr, unsigned char *addr) +int test_and_set_bit_le(u32 nr, u8 *addr) { int mask, retval; @@ -247,7 +247,7 @@ int test_and_set_bit_le(unsigned int nr, unsigned char *addr) return retval; } -int test_and_clear_bit_le(unsigned int nr, unsigned char *addr) +int test_and_clear_bit_le(u32 nr, u8 *addr) { int mask, retval; @@ -258,7 +258,7 @@ int test_and_clear_bit_le(unsigned int nr, unsigned char *addr) return retval; } -int test_bit_le(unsigned int nr, const unsigned char *addr) +int test_bit_le(u32 nr, const u8 *addr) { return ((1 << (nr & 7)) & (addr[nr >> 3])); } @@ -297,7 +297,7 @@ int f2fs_clear_bit(unsigned int nr, char *addr) return ret; } -static inline unsigned long __ffs(unsigned char word) +static inline u64 __ffs(u8 word) { int num = 0; @@ -317,10 +317,9 @@ static inline unsigned long __ffs(unsigned char word) /* Copied from linux/lib/find_bit.c */ #define BITMAP_FIRST_BYTE_MASK(start) (0xff << ((start) & (BITS_PER_BYTE - 1))) -static unsigned long _find_next_bit_le(const unsigned char *addr, - unsigned long nbits, unsigned long start, char invert) +static u64 _find_next_bit_le(const u8 *addr, u64 nbits, u64 start, char invert) { - unsigned char tmp; + u8 tmp; if (!nbits || start >= nbits) return nbits; @@ -342,15 +341,13 @@ static unsigned long _find_next_bit_le(const unsigned char *addr, return min(start + __ffs(tmp), nbits); } -unsigned long find_next_bit_le(const unsigned char *addr, unsigned long size, - unsigned long offset) +u64 find_next_bit_le(const u8 *addr, u64 size, u64 offset) { return _find_next_bit_le(addr, size, offset, 0); } -unsigned long find_next_zero_bit_le(const unsigned char *addr, - unsigned long size, unsigned long offset) +u64 find_next_zero_bit_le(const u8 *addr, u64 size, u64 offset) { return _find_next_bit_le(addr, size, offset, 0xff); } |