On Thu, May 28, 2015 at 10:59:52AM +0000, Antti Kantee wrote:
> On 28/05/15 10:30, Patrick Welche wrote:
> >I'm having an entertaining time trying to debug vnd by running vnconfig
> >against a rump kernel. It seems that my HIJACK incantation of a year ago:
> >
> >   export RUMPHIJACK=path=/rump,blanket=/dev/vnd:/dev/rvnd
> >
> >no longer works. The problem seems to be because vnconfig does
> >
> >opendisk()  want vnd0 -> rump's /dev/rvnd0d
> >open()      want e.g. /tmp/foo.img (works if add /tmp/foo.img to blanket)
> >             in vnconfig vnd0 /tmp/foo.img case
> >ioctl()     usually does run rump's vndioctl if we get that far
> 
> You need to vnconfig /rump/tmp/foo.img, not /tmp/foo.img.

OK, trying again with

export RUMP_SERVER=unix:///tmp/sock
export RUMPHIJACK=path=/rump,blanket=/dev/vnd:/dev/rvnd
export RUMPHIJACK_RETRYCONNECT=inftime
export LD_PRELOAD=/usr/lib/librumphijack.so

$ dd if=/dev/zero of=/rump/tmp/foo.img count=12000
12000+0 records in
12000+0 records out
6144000 bytes transferred in 27.818 secs (220864 bytes/sec)
$ ls -lh /rump/tmp
total 5.9M
-rw-r--r--  1 root  wheel  5.9M May 28 20:47 foo.img
$ vnconfig -l
vnd0: not in use
vnd1: not in use
vnd2: not in use
vnd3: not in use
$ vnconfig vnd0 /rump/tmp/foo.img
vnconfig: /dev/rvnd0d: VNDIOCSET: No such file or directory



> >To try to avoid needing to solve the correct RUMPHIJACK incantation, I just
> >tried building a
> >
> >RUMPPRG=        vnconfig
...
> That looks like a missing prog_init().

Indeed - thanks! And then I get stuck down that avenue as NetBSD gdb
can't cope with pthread_sigmask as per PR bin/49662, so it seems that
HIJACK incantation is the only way forward... (or linux gdb I suppose)

Cheers,

Patrick

Reply via email to