[OpenAFS] Trouble compiling openafs with new FC5 and FC6 kernels

Marcus Watts mdw@umich.edu
Sat, 17 Mar 2007 00:30:32 -0500


"Paul Johnson" <pauljohn32@gmail.com> writes:
> Message-ID: <13e802630703162055v2252b2c3j6f367bf974db860b@mail.gmail.com>
> From: "Paul Johnson" <pauljohn32@gmail.com>
> To: openafs-info@openafs.org
> In-Reply-To: <Pine.GSO.4.61-042.0703162005060.1487@johnstown.andrew.cmu.edu>
> Subject: Re: [OpenAFS] Trouble compiling openafs with new FC5 and FC6 kernels
> Date: Fri, 16 Mar 2007 22:55:40 -0500
> 
> In the website http://www.openafs.org, I do not find any package 1.4.3rc3.
> Where is it??  In there, it looks like 1.4.2 is the end of the line.

You can get 1.4.3rc3 here:
	/afs/grand.central.org/software/openafs/candidate/1.4.3rc3/
	http://dl.openafs.org/dl/openafs/candidate/1.4.3rc3/
I think a few steps of the "release" process got left out when
1.4.3rc3 was made.  At the very least, I saw announcements
posted to openafs-announce for 1.4.3rc1 & 1.4.3rc2, but not 1.4.3rc3.
The "news" at the top level of the web site does advertise 1.4.3rc3, in
an item dated 2 march 2007.
	http://dl.openafs.org/dl/openafs/README-1.3
is definitely misleading.  Best to ignore that.
A README that pointed folks at 1.4, 1.5, snap, candidate,
would be useful.

Possibly we should start creating 1.4.3 directories when
a release candidate is pending, and put just a placeholder
here that says "it's not ready, but you can grab the release
candidate <here> and help us make it ready.

Our web pages claim that "1.4" is the "maintenance release" and "1.5"
is the "features release", and the links to these point directly at the
1.4.2 & 1.5.16 pages.  Perhaps we ought to have a page before that which
says "1.4" is the "stable" relaese for Unix blah blah blah 1.4.2 -
current stable release, 1.4.3rc3 release candidate. -- and "1.5" is the
"testing" release (if we follow debian terms) believed better for
windows, currently at 1.5.16.  There is an actual separate development branch
too, which is unversioned, might be called "unstable" using debian terms,
and for which you can get daily snapshots.

Folks that have an opinion on how this should be organized should
feel free to speak up.  Documentation and web pages don't get better
if people don't complain or better yet, offer improvements.

> 
> I did find a development version 1.5.16 and it does compile and install.
> 
> However, when I try to start the openafs-client service, I get the
> incredibly helpful error message "Some bad or missing file in
> /usr/vice/etc".  Can somebody tell me if there is a configuration
> change in 1.5.X compared to 1.4.2?  I can't find any documentation
> about it in the tarball.

1.5 should work with the same configuration as 1.4.  There were a few
versions in there which were picky about newlines and white space in
ThisCell.  That should be all cleared up now.  As long as you have no
white space in ThisCell other than exactly one newline as the last
character, you should be fine no matter which version you try.  Current
versions of 1.4 & 1.5 are much more forgiving and will ignore leading
and trailing white space, so long as you actually have the cellname on
the first line.  Older versions of 1.4 & previous would have ignored
leading blank lines (or lines containing only white space), but this
was never documented as proper configuration.

afsd: some file missing or bad in %s
means that afsconf_Open failed.  That has a few very simple causes:
	/usr/vice/etc	-no directory?
	/usr/vice/etc/ThisCell
		file missing?
		first line blank or missing?
	/usr/vice/etc/CellServDB
		missing?  no entry for cell?
depending on build options, you might be able to get by
with an empty or missing CellServDB.  Those build options
are conditioned by AFS_AFSDB_ENV in the source, or by configure
--enable-afsdb which defaults on.  I don't think you can get by
without ThisCell.  Before starting afsd, you might want to see
if you can get "pts" to see entries in the local cell.  You won't
be able to authenticate, but you can run strace and see what
it failed to open.

...
> > > Have you seen this? know a fix?
> > >
> > > /home/pauljohn/LinuxDownloads/redhat/BUILD/openafs-1.4.2/src/libafs/MODLOAD-2.6.20-1.2300.fc5-SP/rx_kmutex.c:
> > > In function 'afs_mutex_enter':
> > > /home/pauljohn/LinuxDownloads/redhat/BUILD/openafs-1.4.2/src/libafs/MODLOAD-2.6.20-1.2300.fc5-SP/rx_kmutex.c:48:
> > > warning: format '%x' expects type 'unsigned int', but argument 2 has

That's a warning.  casting to int will shut the compiler up on that.
64-bit platforms still lose, just not as badly.

...
> > > In function 'afs_cv_wait':
> > > /home/pauljohn/LinuxDownloads/redhat/BUILD/openafs-1.4.2/src/libafs/MODLOAD-2.6.20-1.2300.fc5-SP/rx_kmutex.c:122:
> > > error: 'struct task_struct' has no member named 'todo'
> > > /home/pauljohn/LinuxDownloads/redhat/BUILD/openafs-1.4.2/src/libafs/MODLOAD-2.6.20-1.2300.fc5-SP/rx_kmutex.c:128:
> > > error: implicit declaration of function 'refrigerator'

That's a bad thing.  1.5.16 has changes to make this away, and
1.4.3rc3 has the same improvements, which is why Derrick pointed
you at the latter.

...

				-Marcus Watts