Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 22 May 1999 14:27:37 +0930
From:      Greg Lehey <grog@lemis.com>
To:        "R. Luettgen" <a0074@netcologne.de>
Cc:        freebsd-questions@freebsd.org
Subject:   Re: cannot build a 3.2 kernel wirh VINUM
Message-ID:  <19990522142736.Y14371@freebie.lemis.com>
In-Reply-To: <XFMail.990521225327.a0074@netcologne.de>; from R. Luettgen on Fri, May 21, 1999 at 10:50:31PM %2B0200
References:  <XFMail.990521225327.a0074@netcologne.de>

next in thread | previous in thread | raw e-mail | index | archive | help
On Friday, 21 May 1999 at 22:50:31 +0200, R. Luettgen wrote:
> Hi Greg,
>
> I got the new 3.2-RLEASE and tried to build a kernel with vinum.
> The following messages occured :
> loading kernel
> vinum.o: In function `vinumattach':
> vinum.o(.text+0x7a): undefined reference to `command_fail'
> vinum.o(.text+0xd4): undefined reference to `command_fail'
> vinum.o(.text+0x130): undefined reference to `command_fail'
> vinum.o(.text+0x18c): undefined reference to `command_fail'
> vinumconfig.o: In function `throw_rude_remark':
> vinumconfig.o(.text+0x110): undefined reference to `command_fail'
> vinumconfig.o(.text+0x12ad): more undefined references to `command_fail' follow
> *** Error code 1

Well, to quote vinum(4):

     2.   Kernels with the vinum pseudo-device appear to work, but are not
          supported.  If you have trouble with this configuration, please
          first replace the kernel with a non-Vinum kernel and test with the
          kld module.

Still, I've tested this, and there is a problem that occurs *only*
when you build a kernel with Vinum and without VINUMDEBUG.  Somehow I
missed out the fix in 3.2-RELEASE--sorry about that.  You have three
options:

1.  Build the kernel with VINUMDEBUG.
2.  Upgrade to 3.2-STABLE, where I've fixed the problem.
3.  Apply the following patches:

RCS file: /home/ncvs/src/sys/dev/vinum/vinumioctl.c,v
retrieving revision 1.6.2.3
diff -w -u -r1.6.2.3 vinumioctl.c
--- vinumioctl.c        1999/04/06 09:05:57     1.6.2.3
+++ vinumioctl.c        1999/05/22 04:51:44
@@ -56,6 +56,8 @@
 void renameobject(struct vinum_rename_msg *);
 void replaceobject(struct vinum_ioctl_msg *);
 
+jmp_buf command_fail;
+
 /* ioctl routine */
 int 
 vinumioctl(dev_t dev,
Index: vinummemory.c
===================================================================
RCS file: /home/ncvs/src/sys/dev/vinum/vinummemory.c,v
retrieving revision 1.6.2.3
diff -w -u -r1.6.2.3 vinummemory.c
--- vinummemory.c       1999/05/05 05:20:01     1.6.2.3
+++ vinummemory.c       1999/05/22 04:51:56
@@ -41,7 +41,6 @@
 #include <dev/vinum/vinumhdr.h>
 
 #ifdef VINUMDEBUG
-jmp_buf command_fail;                                      /* return on a failed command */
 #undef longjmp                                             /* this was defined as LongJmp */
 void longjmp(jmp_buf, int);                                /* the kernel doesn't define this */
 
I hope you've read the rest of the warnings in the man pages about
removing VINUMDEBUG.

Greg
--
See complete headers for address, home page and phone numbers
finger grog@lemis.com for PGP public key


To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-questions" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?19990522142736.Y14371>