From: "BERTRAND Joël" <joel.bertrand@systella.fr>
To: linux-kernel@vger.kernel.org
Cc: nbd-general@lists.sourceforge.net, sparclinux@vger.kernel.org
Subject: Blockdev API returns erroneous size on /dev/nbd
Date: Fri, 12 Oct 2007 14:19:15 +0000 [thread overview]
Message-ID: <470F8263.4020107@systella.fr> (raw)
Hello,
I'm trying to build a Raid1 volume over TCP/IP. I use net block device
on a 2.6.23 linux kernel on a T1000 server (sparc64).
NBD server exports /dev/md7 (raid5 volume):
Root poulenc:[~] > blockdev --getsize64 /dev/md7
1499879178240
Root poulenc:[/] > nbd-server 2000 /dev/md7 1464725760 -l 192.168.0.0/24
-C /etc/nbd-server/empty
On NDB client side:
Root gershwin:[~] > blockdev --getsize64 /dev/nbd0
1464725504
Root gershwin:[~] > blockdev --getsize64 /dev/md7
1499879178240
When NDB client tries to connect to its server, I obtain :
Root gershwin:[/usr/scripts] > nbd-client bs@96 192.168.0.2 2000 /dev/nbd0
Negotiation: ..size = 1430396KB
bs@96, sz57599
Root gershwin:[/usr/scripts] >
Thus, nbd seems to work. Please note that size is correctly returned.
Now, I would build a raid1 array on this server with /dev/nbd0 and
/dev/md7. But mdadm return
Root gershwin:[/usr/scripts] > mdadm -C /dev/md8 -l1 -n2 /dev/md7 /dev/nbd0
mdadm: /dev/md7 appears to contain an ext2fs file system
size\x1464725760K mtime=Thu Jan 1 01:00:00 1970
mdadm: /dev/md7 appears to be part of a raid array:
level=raid0 devices=2 ctime=Fri Oct 12 14:22:27 2007
mdadm: /dev/nbd0 appears to contain an ext2fs file system
size\x1464725760K mtime=Thu Jan 1 01:00:00 1970
mdadm: /dev/nbd0 appears to be part of a raid array:
level=raid0 devices=2 ctime=Fri Oct 12 14:22:27 2007
mdadm: largest drive (/dev/md7) exceed size (1430272K) by more than 1%
I have seen that it is possible to use nbd to build raid. But how can I
fix the size of exported device ? Indeed, /dev/md7 appears to be 1024
times greater than the _same_ block device exported by nbd !
Other question : I have tried to write large files on /dev/nbd0 and
kernel returns :
nbd0: rw=1, want(77616, limit(60792
attempt to access beyond end of device
nbd0: rw=1, want(77624, limit(60792
attempt to access beyond end of device
nbd0: rw=1, want(77632, limit(60792
attempt to access beyond end of device
nbd0: rw=1, want(77640, limit(60792
attempt to access beyond end of device
nbd0: rw=1, want(77648, limit(60792
attempt to access beyond end of device
nbd0: rw=1, want(77656, limit(60792
attempt to access beyond end of device
nbd0: rw=1, want(77664, limit(60792
attempt to access beyond end of device
nbd0: rw=1, want(77672, limit(60792
attempt to access beyond end of device
nbd0: rw=1, want(77680, limit(60792
attempt to access beyond end of device
nbd0: rw=1, want(77688, limit(60792
attempt to access beyond end of device
nbd0: rw=1, want(77696, limit(60792
attempt to access beyond end of device
I suspect a bug, but I haven't find any fix or workaround...
Regards,
JKB
WARNING: multiple messages have this Message-ID (diff)
From: "BERTRAND Joël" <joel.bertrand@systella.fr>
To: linux-kernel@vger.kernel.org
Cc: nbd-general@lists.sourceforge.net, sparclinux@vger.kernel.org
Subject: Blockdev API returns erroneous size on /dev/nbd
Date: Fri, 12 Oct 2007 16:19:15 +0200 [thread overview]
Message-ID: <470F8263.4020107@systella.fr> (raw)
Hello,
I'm trying to build a Raid1 volume over TCP/IP. I use net block device
on a 2.6.23 linux kernel on a T1000 server (sparc64).
NBD server exports /dev/md7 (raid5 volume):
Root poulenc:[~] > blockdev --getsize64 /dev/md7
1499879178240
Root poulenc:[/] > nbd-server 2000 /dev/md7 1464725760 -l 192.168.0.0/24
-C /etc/nbd-server/empty
On NDB client side:
Root gershwin:[~] > blockdev --getsize64 /dev/nbd0
1464725504
Root gershwin:[~] > blockdev --getsize64 /dev/md7
1499879178240
When NDB client tries to connect to its server, I obtain :
Root gershwin:[/usr/scripts] > nbd-client bs=4096 192.168.0.2 2000 /dev/nbd0
Negotiation: ..size = 1430396KB
bs=4096, sz=357599
Root gershwin:[/usr/scripts] >
Thus, nbd seems to work. Please note that size is correctly returned.
Now, I would build a raid1 array on this server with /dev/nbd0 and
/dev/md7. But mdadm return
Root gershwin:[/usr/scripts] > mdadm -C /dev/md8 -l1 -n2 /dev/md7 /dev/nbd0
mdadm: /dev/md7 appears to contain an ext2fs file system
size=1464725760K mtime=Thu Jan 1 01:00:00 1970
mdadm: /dev/md7 appears to be part of a raid array:
level=raid0 devices=2 ctime=Fri Oct 12 14:22:27 2007
mdadm: /dev/nbd0 appears to contain an ext2fs file system
size=1464725760K mtime=Thu Jan 1 01:00:00 1970
mdadm: /dev/nbd0 appears to be part of a raid array:
level=raid0 devices=2 ctime=Fri Oct 12 14:22:27 2007
mdadm: largest drive (/dev/md7) exceed size (1430272K) by more than 1%
I have seen that it is possible to use nbd to build raid. But how can I
fix the size of exported device ? Indeed, /dev/md7 appears to be 1024
times greater than the _same_ block device exported by nbd !
Other question : I have tried to write large files on /dev/nbd0 and
kernel returns :
nbd0: rw=1, want=2877616, limit=2860792
attempt to access beyond end of device
nbd0: rw=1, want=2877624, limit=2860792
attempt to access beyond end of device
nbd0: rw=1, want=2877632, limit=2860792
attempt to access beyond end of device
nbd0: rw=1, want=2877640, limit=2860792
attempt to access beyond end of device
nbd0: rw=1, want=2877648, limit=2860792
attempt to access beyond end of device
nbd0: rw=1, want=2877656, limit=2860792
attempt to access beyond end of device
nbd0: rw=1, want=2877664, limit=2860792
attempt to access beyond end of device
nbd0: rw=1, want=2877672, limit=2860792
attempt to access beyond end of device
nbd0: rw=1, want=2877680, limit=2860792
attempt to access beyond end of device
nbd0: rw=1, want=2877688, limit=2860792
attempt to access beyond end of device
nbd0: rw=1, want=2877696, limit=2860792
attempt to access beyond end of device
I suspect a bug, but I haven't find any fix or workaround...
Regards,
JKB
next reply other threads:[~2007-10-12 14:19 UTC|newest]
Thread overview: 2+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-10-12 14:19 BERTRAND Joël [this message]
2007-10-12 14:19 ` Blockdev API returns erroneous size on /dev/nbd BERTRAND Joël
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=470F8263.4020107@systella.fr \
--to=joel.bertrand@systella.fr \
--cc=linux-kernel@vger.kernel.org \
--cc=nbd-general@lists.sourceforge.net \
--cc=sparclinux@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.