[99] in arla-drinkers

home help back first fref pref prev next nref lref last post

more problems on freebsd

daemon@ATHENA.MIT.EDU (Alec Wolman)
Tue Jul 14 03:59:43 1998

From arla-drinkers-request@sundance.stacken.kth.se Tue Jul 14 07:59:43 1998
Return-Path: <arla-drinkers-request@sundance.stacken.kth.se>
Delivered-To: arla-drinkers-mtg@bloom-picayune.mit.edu
Received: (qmail 3421 invoked from network); 14 Jul 1998 07:59:42 -0000
Received: from unknown (HELO sundance.stacken.kth.se) (130.237.234.41)
  by bloom-picayune.mit.edu with SMTP; 14 Jul 1998 07:59:42 -0000
Received: from june.cs.washington.edu (june.cs.washington.edu [128.95.1.4])
	by sundance.stacken.kth.se (8.8.8/8.8.8) with ESMTP id JAA26348
	for <arla-drinkers@stacken.kth.se>; Tue, 14 Jul 1998 09:54:08 +0200 (MET DST)
Received: from miles.cs.washington.edu (miles.cs.washington.edu [128.95.4.177]) by june.cs.washington.edu (8.8.7+CS/7.2ju) with ESMTP id AAA26145; Tue, 14 Jul 1998 00:54:02 -0700
Received: from miles.cs.washington.edu (LOCALHOST [127.0.0.1])
	by miles.cs.washington.edu (8.8.8/8.8.8) with ESMTP id AAA04115;
	Tue, 14 Jul 1998 00:53:55 -0700 (PDT)
	(envelope-from wolman@miles.cs.washington.edu)
Message-Id: <199807140753.AAA04115@miles.cs.washington.edu>
X-Mailer: exmh version 2.0.2 2/24/98
To: Assar Westerlund <assar@sics.se>
Cc: arla-drinkers@stacken.kth.se
Subject: more problems on freebsd
In-reply-to: Your message of "13 Jul 1998 16:59:56 +0200."
             <5ld8b9dcer.fsf@assaris.sics.se> 
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Date: Tue, 14 Jul 1998 00:53:54 -0700
From: "Alec Wolman" <wolman@cs.washington.edu>


> > I'm trying to setup arla-0.7.2 with a FreeBSD 2.2.6 system.
> > I can't seem to get through the INSTALL directions.  The first
> > problem I ran into is that when I use the modload command to install
> > the xfs module, it doesn't tell me what the major device number
> > is.  I fixed that problem (I've appended my one-line patch below),
> > but I still get an error when I attempt to mount the afs filesystem.
> 
> You should get that output on your console (and in your
> /var/log/messages), do you?

yes.  but it is strange to see a bunch of output to stdout, none of
which contains the one thing you might be interested in.  perhaps
having both printf and uprintf would do the trick.

> > miles# /usr/arla/bin/mount_xfs /dev/xfs0 /afs
> > mount_xfs: mount: Operation not supported by device
> 
> This can be due to a number of reasons, the most common being using
> the wrong major number for /dev/xfs0.  Have you double-checked that
> it's correct?

yes, it is correct.  I tracked down the problem to mount_xfs.c, and
then created a patch (included at the end of this message) which improves
things significantly.  The hard-coded 17 is what was breaking things.
With this patch, you no longer need to run modload by hand, the call to
vfsload() takes care of everything.  The only limitation is that now the
xfs_mod.o file needs to be in a place where vfsload() can find it, namely
in the /lkm directory.  If you install this patch, you'll have to update
the instructions in the INSTALL file so that they reflect the new reality.


> rcsdiff -C3 mount_xfs.c
===================================================================
RCS file: RCS/mount_xfs.c,v
retrieving revision 1.1
diff -C3 -r1.1 mount_xfs.c
*** mount_xfs.c 1998/07/14 07:01:34     1.1
--- mount_xfs.c 1998/07/14 07:29:06
***************
*** 89,97 ****
        usage();
  
  #if defined(__FreeBSD__)
!     error = mount( /* XXX */ 17, argv[1], 0, argv[0]);
  #else
!     error = mount("xfs", argv[1], 0, argv[0]);
  #endif
  
      if (error != 0)
--- 89,113 ----
        usage();
  
  #if defined(__FreeBSD__)
!     {
!       struct vfsconf *vfc;
!       vfc = getvfsbyname("xfs");
!       /* if getvfsbyname fails the first time, then call vfsload.
!        */
!       if (!vfc && vfsisloadable("xfs")) {
!           if (vfsload("xfs")) {
!               err(1, "vfsload(xfs)");
!           }
!           endvfsent();
!           vfc = getvfsbyname("xfs");
!       }
!       if (!vfc) {
!           err(1,"xfs filesystem not available");
!       }
!       error = mount(vfc->vfc_index, argv[1], mntflags, argv[0]);
!     }
  #else
!     error = mount("xfs", argv[1], mntflags, argv[0]);
  #endif
  
      if (error != 0)



home help back first fref pref prev next nref lref last post