Skip to contentSkip to conversation

xfsprogs: Don't ever try to set the device blocksize in repair

PATCH In review Eric Sandeen 2 participants 2 messages Feb 21, 2011 – Feb 22, 2011

lore
Share & tools
lore
#0 lore raw

PATCH 1/1 xfsprogs: Don't ever try to set the device blocksize in repair

On 4k devices, we get this warning from repair:

# xfs_repair /dev/sdc2
xfs_repair: warning - cannot set blocksize 512 on block device /dev/sdc2: Invalid argument
Phase 1 - find and verify superblock...
...

but things proceed without trouble after that.

I'm unable to find any history or reason for setting the device blocksize at the beginning of repair, and in any case, things clearly work without doing so. So, let's just remove it.

---

repair/init.c +1 -1
index 654c406..bc10cc4 100644
@@ -143,7 +143,7 @@ xfs_init(libxfs_init_t *args)
 	}
 
 	args->usebuflock = do_prefetch;
-	args->setblksize = !dangerously;
+	args->setblksize = 0;
 	args->isdirect = LIBXFS_DIRECT;
 	if (no_modify)
 		args->isreadonly = (LIBXFS_ISREADONLY | LIBXFS_ISINACTIVE);

_______________________________________________
xfs mailing list
[email protected]
http://oss.sgi.com/mailman/listinfo/xfs

Reviewed-by on v1 1/1
#1 lore raw
Quoted 7 lines · Eric Sandeen

On 4k devices, we get this warning from repair:

# xfs_repair /dev/sdc2
xfs_repair: warning - cannot set blocksize 512 on block device /dev/sdc2: Invalid argument
Phase 1 - find and verify superblock...
...
Quoted 8 lines

but things proceed without trouble after that.

I'm unable to find any history or reason for setting the device blocksize at the beginning of repair, and in any case, things clearly work without doing so. So, let's just remove it.

---

On Linux anyway, the way it's used here is pretty pointless anyway. It passes either 0 or 1, which means either don't set it (if "living dangerously") or do set it, to the minimum XFS sector size, 512 bytes. Hence it'll screw up on > 512-byte sector devices.

If there was a reason for setting it, it should do so by setting it to the device's logical block size rather than assuming 512.

But I don't see a reason to set it either, so the change looks good to me.

_______________________________________________
xfs mailing list
[email protected]
http://oss.sgi.com/mailman/listinfo/xfs