Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 91819
b: refs/heads/master
c: 01b954a
h: refs/heads/master
i:
  91817: 53a827e
  91815: c547838
v: v3
  • Loading branch information
Marcin Slusarz authored and Jan Kara committed Apr 17, 2008
1 parent bfa7a02 commit 22ed296
Show file tree
Hide file tree
Showing 2 changed files with 6 additions and 13 deletions.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: d652eefb70142c64495f4188883f9dfc0430a96b
refs/heads/master: 01b954a36a03d90a66c9dd1fc13e4cb51269caf7
17 changes: 5 additions & 12 deletions trunk/fs/udf/super.c
Original file line number Diff line number Diff line change
Expand Up @@ -55,6 +55,7 @@
#include <linux/errno.h>
#include <linux/mount.h>
#include <linux/seq_file.h>
#include <linux/bitmap.h>
#include <asm/byteorder.h>

#include "udf_sb.h"
Expand Down Expand Up @@ -1958,10 +1959,6 @@ static int udf_statfs(struct dentry *dentry, struct kstatfs *buf)
return 0;
}

static unsigned char udf_bitmap_lookup[16] = {
0, 1, 1, 2, 1, 2, 2, 3, 1, 2, 2, 3, 2, 3, 3, 4
};

static unsigned int udf_count_free_bitmap(struct super_block *sb,
struct udf_bitmap *bitmap)
{
Expand All @@ -1971,7 +1968,6 @@ static unsigned int udf_count_free_bitmap(struct super_block *sb,
int block = 0, newblock;
kernel_lb_addr loc;
uint32_t bytes;
uint8_t value;
uint8_t *ptr;
uint16_t ident;
struct spaceBitmapDesc *bm;
Expand All @@ -1997,13 +1993,10 @@ static unsigned int udf_count_free_bitmap(struct super_block *sb,
ptr = (uint8_t *)bh->b_data;

while (bytes > 0) {
while ((bytes > 0) && (index < sb->s_blocksize)) {
value = ptr[index];
accum += udf_bitmap_lookup[value & 0x0f];
accum += udf_bitmap_lookup[value >> 4];
index++;
bytes--;
}
u32 cur_bytes = min_t(u32, bytes, sb->s_blocksize - index);
accum += bitmap_weight((const unsigned long *)(ptr + index),
cur_bytes * 8);
bytes -= cur_bytes;
if (bytes) {
brelse(bh);
newblock = udf_get_lb_pblock(sb, loc, ++block);
Expand Down

0 comments on commit 22ed296

Please sign in to comment.