Messages in this thread Patch in this message | | | Date | Fri, 8 Jun 2012 15:31:28 +0300 | From | Dan Carpenter <> | Subject | [patch -resend] drbd: fix resync_dump_detail() output |
| |
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@oracle.com> --- I sent this to the drbd-user list in March, but never recieved a response.
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" : "------" ); }
| |