Commit 110acf38 authored by Steven Whitehouse's avatar Steven Whitehouse

[GFS2] Add consts to various bits of rgrp.c

There are a couple of routines which scan bitmaps where we can
mark the bitmaps const, plus a couple of call sites that can
be updated too.
Signed-off-by: default avatarSteven Whitehouse <swhiteho@redhat.com>
parent dbac6710
...@@ -126,23 +126,24 @@ static unsigned char gfs2_testbit(struct gfs2_rgrpd *rgd, unsigned char *buffer, ...@@ -126,23 +126,24 @@ static unsigned char gfs2_testbit(struct gfs2_rgrpd *rgd, unsigned char *buffer,
* Return: the block number (bitmap buffer scope) that was found * Return: the block number (bitmap buffer scope) that was found
*/ */
static u32 gfs2_bitfit(unsigned char *buffer, unsigned int buflen, u32 goal, static u32 gfs2_bitfit(const u8 *buffer, unsigned int buflen, u32 goal,
unsigned char old_state) u8 old_state)
{ {
unsigned char *byte; const u8 *byte;
u32 blk = goal; u32 blk = goal;
unsigned int bit, bitlong; unsigned int bit, bitlong;
unsigned long *plong, plong55; const unsigned long *plong;
#if BITS_PER_LONG == 32
const unsigned long plong55 = 0x55555555;
#else
const unsigned long plong55 = 0x5555555555555555;
#endif
byte = buffer + (goal / GFS2_NBBY); byte = buffer + (goal / GFS2_NBBY);
plong = (unsigned long *)(buffer + (goal / GFS2_NBBY)); plong = (const unsigned long *)(buffer + (goal / GFS2_NBBY));
bit = (goal % GFS2_NBBY) * GFS2_BIT_SIZE; bit = (goal % GFS2_NBBY) * GFS2_BIT_SIZE;
bitlong = bit; bitlong = bit;
#if BITS_PER_LONG == 32
plong55 = 0x55555555;
#else
plong55 = 0x5555555555555555;
#endif
while (byte < buffer + buflen) { while (byte < buffer + buflen) {
if (bitlong == 0 && old_state == 0 && *plong == plong55) { if (bitlong == 0 && old_state == 0 && *plong == plong55) {
...@@ -179,14 +180,14 @@ static u32 gfs2_bitfit(unsigned char *buffer, unsigned int buflen, u32 goal, ...@@ -179,14 +180,14 @@ static u32 gfs2_bitfit(unsigned char *buffer, unsigned int buflen, u32 goal,
* Returns: The number of bits * Returns: The number of bits
*/ */
static u32 gfs2_bitcount(struct gfs2_rgrpd *rgd, unsigned char *buffer, static u32 gfs2_bitcount(struct gfs2_rgrpd *rgd, const u8 *buffer,
unsigned int buflen, unsigned char state) unsigned int buflen, u8 state)
{ {
unsigned char *byte = buffer; const u8 *byte = buffer;
unsigned char *end = buffer + buflen; const u8 *end = buffer + buflen;
unsigned char state1 = state << 2; const u8 state1 = state << 2;
unsigned char state2 = state << 4; const u8 state2 = state << 4;
unsigned char state3 = state << 6; const u8 state3 = state << 6;
u32 count = 0; u32 count = 0;
for (; byte < end; byte++) { for (; byte < end; byte++) {
...@@ -1327,12 +1328,11 @@ static u32 rgblk_search(struct gfs2_rgrpd *rgd, u32 goal, ...@@ -1327,12 +1328,11 @@ static u32 rgblk_search(struct gfs2_rgrpd *rgd, u32 goal,
for (x = 0; x <= length; x++) { for (x = 0; x <= length; x++) {
/* The GFS2_BLKST_UNLINKED state doesn't apply to the clone /* The GFS2_BLKST_UNLINKED state doesn't apply to the clone
bitmaps, so we must search the originals for that. */ bitmaps, so we must search the originals for that. */
const u8 *buffer = bi->bi_bh->b_data + bi->bi_offset;
if (old_state != GFS2_BLKST_UNLINKED && bi->bi_clone) if (old_state != GFS2_BLKST_UNLINKED && bi->bi_clone)
blk = gfs2_bitfit(bi->bi_clone + bi->bi_offset, buffer = bi->bi_clone + bi->bi_offset;
bi->bi_len, goal, old_state);
else blk = gfs2_bitfit(buffer, bi->bi_len, goal, old_state);
blk = gfs2_bitfit(bi->bi_bh->b_data + bi->bi_offset,
bi->bi_len, goal, old_state);
if (blk != BFITNOENT) if (blk != BFITNOENT)
break; break;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment