Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 301515 - openafs-kernel-1.4.11 will not build with vanilla-sources-2.6.33-rc4
Summary: openafs-kernel-1.4.11 will not build with vanilla-sources-2.6.33-rc4
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: High major with 1 vote (vote)
Assignee: Stefaan De Roeck (RETIRED)
URL:
Whiteboard:
Keywords:
Depends on:
Blocks: 302457
  Show dependency tree
 
Reported: 2010-01-19 14:04 UTC by Dale Pontius
Modified: 2011-01-25 04:36 UTC (History)
3 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
Logfile from configure step (config.log,70.51 KB, text/plain)
2010-01-19 14:06 UTC, Dale Pontius
Details
Patches the missing header check, deletes the obsoloete ctl_name field in ctl_table (kernel-2.6.33.patch,3.93 KB, patch)
2010-03-23 17:24 UTC, reno reckling
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Dale Pontius 2010-01-19 14:04:27 UTC
Attempting to build openafs-kernel-1.4.11 against vanilla-sources-2.6.33-rc4 fails with this message:
"checking your OS... configure: error: Linux headers lack version definition"
Looks to me as if something in the header definitions changed in 2.6.33, and the configure step of openafs-kernel doesn't like it.

Reproducible: Always

Steps to Reproduce:
1.Build vanilla-sources-2.6.33-rc4
2.Boot the new kernel
3.Rejoice that the nouveau drivers "just work" (having put firmware in-place first)
4.login, "emerge -a1v openafs-kernel"

Actual Results:  
Fails during configure step with previously mentioned message

Expected Results:  
Should have configured, built, loaded, etc.

Obviously Gentoo doesn't support vanilla-sources, especially not "-rc4".  But I would expect this change to move it's way into gentoo-sources eventually.  This looks like it will be fixed upstream at some point, so the fix will likely be openafs(-kernel)-1.4.12 or some such.

Incidentally, as hinted above, I'm playing with 2.6.33-rc4 in order to get newer nouveau support, because I'm having problems with 2.6.31.8.  There is no level of nouveau support available for gentoo-sources - there are only patches against vanilla-sources or the new 2.6.33 staging drivers.

emerge --info
localhost ~ # emerge --info
Portage 2.2_rc33 (default/linux/amd64/10.0/desktop, gcc-4.3.4, glibc-2.10.1-r1, 2.6.33-rc4 x86_64)
=================================================================
System uname: Linux-2.6.33-rc4-x86_64-Intel-R-_Core-TM-2_Duo_CPU_T7700_@_2.40GHz-with-gentoo-1.12.13
Timestamp of tree: Tue, 19 Jan 2010 08:30:19 +0000
app-shells/bash:     4.0_p35
dev-java/java-config: 2.1.9-r2
dev-lang/python:     2.6.4
dev-python/pycrypto: 2.0.1-r8
dev-util/cmake:      2.6.4-r3
sys-apps/baselayout: 1.12.13
sys-apps/sandbox:    1.6-r2
sys-devel/autoconf:  2.13, 2.63-r1
sys-devel/automake:  1.5, 1.6.3, 1.7.9-r1, 1.9.6-r2, 1.10.2
sys-devel/binutils:  2.18-r3
sys-devel/gcc-config: 1.4.1
sys-devel/libtool:   2.2.6b
virtual/os-headers:  2.6.27-r2
ACCEPT_KEYWORDS="amd64"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-O2 -pipe -march=native"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/share/X11/xkb"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/env.d/java/ /etc/fonts/fonts.conf /etc/gconf /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo /etc/udev/rules.d"
CXXFLAGS="-O2 -pipe -march=native"
DISTDIR="/usr/portage/distfiles"
EMERGE_DEFAULT_OPTS="--with-bdeps y"
FEATURES="distlocks fixpackages parallel-fetch preserve-libs protect-owned sandbox sfperms strict unmerge-orphans userfetch"
GENTOO_MIRRORS="http://distfiles.gentoo.org http://distro.ibiblio.org/pub/linux/distributions/gentoo"
LDFLAGS="-Wl,-O1"
LINGUAS="en en_US"
MAKEOPTS="-j3"
PKGDIR="/usr/portage/packages"
PORTAGE_CONFIGROOT="/"
PORTAGE_RSYNC_EXTRA_OPTS="--timeout=180"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --stats --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/usr/local/portage/layman/sunrise /usr/local/portage/layman/enlightenment /usr/local/portage/layman/ibm-internal /usr/local/portage/layman/x11 /usr/local/portage/mine"
SYNC="rsync://127.0.0.1/gentoo-portage"
USE="X Xaw3d a52 aac acl acpi alsa amd64 berkdb branding bzip2 cairo caps cddb cdr cli consolekit cracklib crypt cups curl cxx dbus dirac dnotify dri drm dts dvd dvdr dvdread emboss encode expat fam flac fortran gd gdbm gif glib gnutls gpm graphviz gstreamer gtk hal iconv idn imagemagick imlib inotify java jpeg jpeg2k lcms ldap libnotify libsamplerate lm_sensors logrotate mad matroska mikmod mmx mng modules motif mozilla mp3 mp4 mpeg mudflap multilib ncurses nls nptl nptlonly nsplugin ogg opengl openmp pam pango pcre pdf perl plotutils png posix ppds python qt3 qt3support qt4 quicktime readline reflection schroedinger sdl session smp spell spl sqlite sse sse2 ssl startup-notification svg sysfs tcl tcpd theora threads thunar tiff tk truetype unicode usb vcd verbose vorbis wifi wma wxwindows x264 xattr xcb xml xorg xsettings xulrunner xv xvid zlib" ALSA_CARDS="intel_hda" ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dshare dsnoop empty extplug file hooks iec958 ioplug ladspa lfloat linear meter mmap_emul mulaw multi null plug rate route share shm softvol" APACHE2_MODULES="actions alias auth_basic authn_alias authn_anon authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache dav dav_fs dav_lock deflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio mem_cache mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias" ELIBC="glibc" INPUT_DEVICES="synaptics keyboard mouse evdev" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LINGUAS="en en_US" RUBY_TARGETS="ruby18" USERLAND="GNU" VIDEO_CARDS="nv vesa nvidia nouveau"
Unset:  CPPFLAGS, CTARGET, FFLAGS, INSTALL_MASK, LANG, LC_ALL, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS

localhost ~ #
Comment 1 Dale Pontius 2010-01-19 14:06:05 UTC
Created attachment 216901 [details]
Logfile from configure step

Error message from ebuild said to attach this file to the bug report.
Comment 2 Dale Pontius 2010-01-27 15:02:01 UTC
I've faked up a local ebuild for openafs/openafs-kernel-1.4.12_pre1 and am running that successfully, for an hour or two today, so far.  I found one other build problem with 2.6.33-rc4:  The file "/usr/src/linux/include/linux/autoconf.h", which is apparently needed by openafs-kernel, has been moved to "/usr/src/linux/include/generated/autoconf.h".  As-is, openafs-kernel fails the configure step because it can't find the right headers.  To work around this problem, I have symlinked "../generated/autoconf.h ->autoconf.h" so it also appears in the spot where openafs-kernel expects to find it.
Comment 3 Martin Vala 2010-03-15 10:32:51 UTC
i am using gentoo-sources-2.6.33 and even after linkinh of autoconf.h i have problem in configure part

checking for pid_t... yes
checking for size_t... yes
checking return type of signal handlers... void
checking for __FUNCTION__ and __LINE__ macros... yes
checking whether ln -s works... yes
checking for x86_64-pc-linux-gnu-ranlib... x86_64-pc-linux-gnu-ranlib
checking for bison... bison -y
checking whether byte order is known at compile time... yes
checking whether byte ordering is bigendian... no
checking your OS... configure: error: Linux headers lack version definition

!!! Please attach the following file when seeking support:
!!! /var/tmp/portage/net-fs/openafs-kernel-1.4.11/work/openafs-1.4.11/config.log
 * ERROR: net-fs/openafs-kernel-1.4.11 failed:
 *   econf failed
 * 
 * Call stack:
 *     ebuild.sh, line   48:  Called src_compile
 *   environment, line 3563:  Called econf '--with-linux-kernel-headers=/usr/src/linux' '--with-linux-kernel-build=/lib/modules/2.6.33-gentoo/build'
 *     ebuild.sh, line  538:  Called die
 * The specific snippet of code:
 *                      die "econf failed"
 * 
 * If you need support, post the output of 'emerge --info =net-fs/openafs-kernel-1.4.11',
 * the complete build log and the output of 'emerge -pqv =net-fs/openafs-kernel-1.4.11'.
 * The complete build log is located at '/var/log/portage/net-fs:openafs-kernel-1.4.11:20100315-103312.log'.
 * The ebuild environment file is located at '/var/tmp/portage/net-fs/openafs-kernel-1.4.11/temp/environment'.
 * S: '/var/tmp/portage/net-fs/openafs-kernel-1.4.11/work/openafs-1.4.11'
Comment 4 reno reckling 2010-03-18 09:58:45 UTC
As mentioned before, i also had to symlink autoconf.h .
After that the version check fails because the vanilla kernel stores the file utsrelease.h in /usr/src/linux/include/generated/utsrelease.h but the openafs configure stript is only searching it in /usr/src/linux/include/linux/
if you link the files, you'll pass the check:
ln -s /usr/src/linux/include/generated/utsrelease.h /usr/src/linux/include/linux/utsrelease.h

after that, the configure script finishes properly, but openafs-kernel then fails while compiling with:

/var/tmp/paludis/net-fs-openafs-kernel-1.4.11/work/openafs-1.4.11/src/libafs/MODLOAD-2.6.33-gentoo-MP/osi_sysctl.c:32: error: unknown field 'ctl_name' specified in initializer
/var/tmp/paludis/net-fs-openafs-kernel-1.4.11/work/openafs-1.4.11/src/libafs/MODLOAD-2.6.33-gentoo-MP/osi_sysctl.c:32: error: 'CTL_UNNUMBERED' undeclared here (not in a function)
/var/tmp/paludis/net-fs-openafs-kernel-1.4.11/work/openafs-1.4.11/src/libafs/MODLOAD-2.6.33-gentoo-MP/osi_sysctl.c:44: error: unknown field 'ctl_name' specified in initializer
/var/tmp/paludis/net-fs-openafs-kernel-1.4.11/work/openafs-1.4.11/src/libafs/MODLOAD-2.6.33-gentoo-MP/osi_sysctl.c:56: error: unknown field 'ctl_name' specified in initializer
/var/tmp/paludis/net-fs-openafs-kernel-1.4.11/work/openafs-1.4.11/src/libafs/MODLOAD-2.6.33-gentoo-MP/osi_sysctl.c:68: error: unknown field 'ctl_name' specified in initializer
/var/tmp/paludis/net-fs-openafs-kernel-1.4.11/work/openafs-1.4.11/src/libafs/MODLOAD-2.6.33-gentoo-MP/osi_sysctl.c:80: error: unknown field 'ctl_name' specified in initializer
/var/tmp/paludis/net-fs-openafs-kernel-1.4.11/work/openafs-1.4.11/src/libafs/MODLOAD-2.6.33-gentoo-MP/osi_sysctl.c:92: error: unknown field 'ctl_name' specified in initializer
/var/tmp/paludis/net-fs-openafs-kernel-1.4.11/work/openafs-1.4.11/src/libafs/MODLOAD-2.6.33-gentoo-MP/osi_sysctl.c:108: error: unknown field 'ctl_name' specified in initializer
/var/tmp/paludis/net-fs-openafs-kernel-1.4.11/work/openafs-1.4.11/src/libafs/MODLOAD-2.6.33-gentoo-MP/osi_sysctl.c:108: error: initializer element is not constant
/var/tmp/paludis/net-fs-openafs-kernel-1.4.11/work/openafs-1.4.11/src/libafs/MODLOAD-2.6.33-gentoo-MP/osi_sysctl.c:108: error: (near initialization for 'fs_sysctl_table[0].procname')

It's trying to use the field ctl_name from ctl_table, which doesn't exist (anymore?) in linux/sysctl.h.
Comment 5 reno reckling 2010-03-23 17:24:27 UTC
Created attachment 224919 [details, diff]
Patches the missing header check, deletes the obsoloete ctl_name field in ctl_table

This patch WILL BREAK all builds against a kernel < 2.6.33 !
Comment 6 reno reckling 2010-03-23 17:25:53 UTC
I wrote a small patch, deleting the unused parts from osi_sysctl and fixed the missing line to check the headers in the right place.
I attached a patchfile, but can't guarantee that there are no side effects, i haven't seen any though.
But i have to place this warning:
!!!!
This patch WILL BREAK all builds against a kernel < 2.6.33, so use it with caution!
!!!!
The new version could also be optained from my overlay:
git://wthack.de/exi-paludis.git
Comment 7 Martin Vala 2010-05-20 10:46:59 UTC
(In reply to comment #6)
> I wrote a small patch, deleting the unused parts from osi_sysctl and fixed the
> missing line to check the headers in the right place.
> I attached a patchfile, but can't guarantee that there are no side effects, i
> haven't seen any though.
> But i have to place this warning:
> !!!!
> This patch WILL BREAK all builds against a kernel < 2.6.33, so use it with
> caution!
> !!!!
> The new version could also be optained from my overlay:
> git://wthack.de/exi-paludis.git
> 


thisone is not working with 2.6.34. 
Comment 8 SpanKY gentoo-dev 2010-06-21 23:12:19 UTC
openafs-kernel-1.4.12.1 should fix things
Comment 9 Elliott Rezny 2011-01-25 04:36:03 UTC
According to bug 302457 (depends on this bug) this shouldn't be marked as fixed until the fix is in the stable tree. Version 1.4.12.1 either has similar or different issues with gentoo-sources-2.6.36-r5, which is stable on amd64 while this is the only stable openafs-kernel and doesn't work with the most current gentoo-sources package. Can we get the fix backported to openafs-1.4.12.1?