* [md PATCH] md/raid1: round up to bdev_logical_block_size in narrow_write_error
@ 2015-02-12 17:02 Nate Dailey
2015-02-16 3:54 ` NeilBrown
0 siblings, 1 reply; 2+ messages in thread
From: Nate Dailey @ 2015-02-12 17:02 UTC (permalink / raw)
To: linux-raid
This modifies raid1's narrow_write_error to round up block_sectors to the
device's logical block size.
This prevents sd complaining about "Bad block number requested" for non-512-byte
sector disks.
Signed-off-by: Nate Dailey <nate.dailey@stratus.com>
---
diff -Nupr a/drivers/md/raid1.c b/drivers/md/raid1.c
--- a/drivers/md/raid1.c 2015-02-10 15:29:02.000000000 -0500
+++ b/drivers/md/raid1.c 2015-02-10 15:29:45.000000000 -0500
@@ -2206,7 +2206,8 @@ static int narrow_write_error(struct r1b
if (rdev->badblocks.shift < 0)
return 0;
- block_sectors = 1 << rdev->badblocks.shift;
+ block_sectors = roundup(1 << rdev->badblocks.shift,
+ bdev_logical_block_size(rdev->bdev) >> 9);
sector = r1_bio->sector;
sectors = ((sector + block_sectors)
& ~(sector_t)(block_sectors - 1))
^ permalink raw reply [flat|nested] 2+ messages in thread
* Re: [md PATCH] md/raid1: round up to bdev_logical_block_size in narrow_write_error
2015-02-12 17:02 [md PATCH] md/raid1: round up to bdev_logical_block_size in narrow_write_error Nate Dailey
@ 2015-02-16 3:54 ` NeilBrown
0 siblings, 0 replies; 2+ messages in thread
From: NeilBrown @ 2015-02-16 3:54 UTC (permalink / raw)
To: Nate Dailey; +Cc: linux-raid
[-- Attachment #1: Type: text/plain, Size: 1668 bytes --]
On Thu, 12 Feb 2015 12:02:09 -0500 Nate Dailey <nate.dailey@stratus.com>
wrote:
> This modifies raid1's narrow_write_error to round up block_sectors to the
> device's logical block size.
>
> This prevents sd complaining about "Bad block number requested" for non-512-byte
> sector disks.
>
> Signed-off-by: Nate Dailey <nate.dailey@stratus.com>
> ---
>
> diff -Nupr a/drivers/md/raid1.c b/drivers/md/raid1.c
> --- a/drivers/md/raid1.c 2015-02-10 15:29:02.000000000 -0500
> +++ b/drivers/md/raid1.c 2015-02-10 15:29:45.000000000 -0500
> @@ -2206,7 +2206,8 @@ static int narrow_write_error(struct r1b
> if (rdev->badblocks.shift < 0)
> return 0;
>
> - block_sectors = 1 << rdev->badblocks.shift;
> + block_sectors = roundup(1 << rdev->badblocks.shift,
> + bdev_logical_block_size(rdev->bdev) >> 9);
> sector = r1_bio->sector;
> sectors = ((sector + block_sectors)
> & ~(sector_t)(block_sectors - 1))
> --
> To unsubscribe from this list: send the line "unsubscribe linux-raid" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at http://vger.kernel.org/majordomo-info.html
Thanks. I've applied this patch and a similar one for RAID10.
This patch had spaces where it should have had tabs (and had no space at all
on one line which should have had a space).
I've fixed all that up, but if you find yourself submitting more patches in
future it would be worth working out how to convince your mailer to send the
patches cleanly with no TAB->space conversions.
Thanks,
NeilBrown
[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 811 bytes --]
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2015-02-16 3:54 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2015-02-12 17:02 [md PATCH] md/raid1: round up to bdev_logical_block_size in narrow_write_error Nate Dailey
2015-02-16 3:54 ` NeilBrown
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).