[ENBD] make test failed (nbd-2.2.29)...

Peter T. Breuer ptb@it.uc3m.es
Fri, 9 Mar 2001 00:14:08 +0100 (MET)


"A month of sundays ago Kai Chen wrote:"
> Thank you for your previous reply.  I still couldn't seem to make the 
> program work on my 2.2.18 machine.  Here is the messages I got when I 

Which version of nbd is this? I use 2.2.18 so I can promise you that it
works.

> [root@u577 tmp]# ./nbd-server 1100 1101 1102 1103 /dev/sdn2

This looks like a 2.2.* series nbd. You should be using 2.4.*.
And doesn't one have to provide signatures in the command line? I
forget .. oh well.

> [root@u577 tmp]# nbd-server: manager set signal handlers
> 
> Then
> 
> [root@u577 tmp]# ./nbd-client localhost 1100 1101 1102 1103 /dev/nda
> nbd-client: client says host name 0 is localhost
> nbd-client: client says port 0 is 1100
> nbd-client: client says host name 1 is localhost

> nbd-client: client (1) negotiation begins
> nbd-client: client (1) read passwd ok
> nbd-client: client (1) got cliserv magic ok
> nbd-client: client (1) got size = 5362882560nbd-client: client (1) got 
> signature 0x203940ca.. in bffff324, had 0x0.. in 804e1c0
> nbd-client: Failed sig check

The client thinks the device is already signed. Are you sure that this
is a fresh insertion of the driver? Either provide a signature (so that
it doesn't make up a different session signature every time) or reinsert
the kernel module so that you start fresh.

> nbd-client: negotiate bails out on client socket 4
> nbd-server: Read returned 0 after select predicted read!
> nbd-server: Read failed in readit: Invalid argument

Yeah, well, correct. Dead client. The server notices.

> nbd-server: sighandler relaunches child from manager
> nbd-client: childminder opens subdevice /dev/nda4 for daemon (3)

It tries to try again. New client ...

> nbd-client: Failed sig check
> nbd-client: negotiate bails out on client socket 4

But of course the same thing happens.

My advice is to use a 2.4 nbd, and to use a session signature (the -i
stuff), and to reinsert the kernel module..

Peter