[DRBD-user] [patch -resend] drbd: fix resync_dump_detail() output

Lars Ellenberg lars.ellenberg at linbit.com
Fri Jun 8 20:50:08 CEST 2012

Note: "permalinks" may not be as permanent as we would like,
direct links of old sources may well be a few messages off.


On Fri, Jun 08, 2012 at 03:31:28PM +0300, Dan Carpenter wrote:
> The tests here aren't correct.  It should be doing a shift before doing
> the bitwise AND.  (bme->flags & BME_NO_WRITES) is always false and
> (bme->flags & BME_LOCKED) checks for BME_NO_WRITES instead of checking
> for locked.
> 
> Signed-off-by: Dan Carpenter <dan.carpenter at oracle.com>

Ack.

> ---
> I sent this to the drbd-user list in March, but never recieved a
> response.

Sorry, seems to have been lost :-(

	Lars

> diff --git a/drivers/block/drbd/drbd_proc.c b/drivers/block/drbd/drbd_proc.c
> index 2959cdf..ffe1ee4 100644
> --- a/drivers/block/drbd/drbd_proc.c
> +++ b/drivers/block/drbd/drbd_proc.c
> @@ -187,8 +187,10 @@ static void resync_dump_detail(struct seq_file *seq, struct lc_element *e)
>  	struct bm_extent *bme = lc_entry(e, struct bm_extent, lce);
>  
>  	seq_printf(seq, "%5d %s %s\n", bme->rs_left,
> -		   bme->flags & BME_NO_WRITES ? "NO_WRITES" : "---------",
> -		   bme->flags & BME_LOCKED ? "LOCKED" : "------"
> +		   test_bit(BME_NO_WRITES, &bme->flags) ?
> +			"NO_WRITES" : "---------",
> +		   test_bit(BME_LOCKED, &bme->flags) ?
> +			"LOCKED" : "------"
>  		   );
>  }

-- 
: Lars Ellenberg
: LINBIT | Your Way to High Availability
: DRBD/HA support and consulting http://www.linbit.com



More information about the drbd-user mailing list