Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
drbd-kernel-8.0.16 failed to compile
View unanswered posts
View posts from last 24 hours

 
Reply to topic    Gentoo Forums Forum Index Portage & Programming
View previous topic :: View next topic  
Author Message
matt2kjones
Tux's lil' helper
Tux's lil' helper


Joined: 03 Mar 2004
Posts: 89

PostPosted: Tue May 18, 2010 8:18 am    Post subject: drbd-kernel-8.0.16 failed to compile Reply with quote

Hello,

Trying to install drbd on one of the high availability clusters in work and it fails to compile on every node (which have identical hardware, kernels and packages).

here are the various logs:

Code:
node01-clst01 ~ # emerge --info =sys-cluster/drbd-kernel-8.0.16
Portage 2.1.8.3 (default/linux/amd64/10.0, gcc-4.3.4, glibc-2.10.1-r1, 2.6.32-gentoo-r7 x86_64)
=================================================================
                        System Settings
=================================================================
System uname: Linux-2.6.32-gentoo-r7-x86_64-Intel-R-_Xeon-R-_CPU_E5410_@_2.33GHz-with-gentoo-1.12.13
Timestamp of tree: Mon, 17 May 2010 07:00:22 +0000
app-shells/bash:     4.0_p37
dev-lang/python:     2.6.4-r1
sys-apps/baselayout: 1.12.13
sys-apps/sandbox:    1.6-r2
sys-devel/autoconf:  2.63-r1
sys-devel/automake:  1.10.3, 1.11.1
sys-devel/binutils:  2.18-r3
sys-devel/gcc:       4.3.4
sys-devel/gcc-config: 1.4.1
sys-devel/libtool:   2.2.6b
virtual/os-headers:  2.6.30-r1
ACCEPT_KEYWORDS="amd64"
ACCEPT_LICENSE="* -@EULA"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-O2 -pipe"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/gconf /etc/php/apache2-php5/ext-active/ /etc/php/cgi-php5/ext-active/ /etc/php/cli-php5/ext-active/ /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo"
CXXFLAGS="-O2 -pipe"
DISTDIR="/usr/portage/distfiles"
FEATURES="assume-digests distlocks fixpackages news parallel-fetch protect-owned sandbox sfperms strict unmerge-logs unmerge-orphans userfetch"
GENTOO_MIRRORS="http://distfiles.gentoo.org"
LDFLAGS="-Wl,-O1"
MAKEOPTS="-j10"
PKGDIR="/usr/portage/packages"
PORTAGE_CONFIGROOT="/"
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"
SYNC="rsync://mattewan.plus.com/gentoo-portage"
USE="amd64 apache2 cracklib mmx multilib pam sse sse2 ssl threads unicode vhosts xml" ALSA_CARDS="ali5451 als4000 atiixp atiixp-modem bt87x ca0106 cmipci emu10k1x ens1370 ens1371 es1938 es1968 fm801 hda-intel intel8x0 intel8x0m maestro3 trident usb-audio via82xx via82xx-modem ymfpci" 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="autoindex alias auth_basic authn_file authn_default authz_host deflate dir filter log_config logio mime rewrite" ELIBC="glibc" INPUT_DEVICES="keyboard mouse evdev" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" RUBY_TARGETS="ruby18" USERLAND="GNU" VIDEO_CARDS="fbdev glint intel mach64 mga neomagic nv r128 radeon savage sis tdfx trident vesa via vmware voodoo" XTABLES_ADDONS="quota2 psd pknock lscan length2 ipv4options ipset ipp2p iface geoip fuzzy condition tee tarpit sysrq steal rawnat logmark ipmark dhcpmac delude chaos account"
Unset:  CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, FFLAGS, INSTALL_MASK, LANG, LC_ALL, LINGUAS, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS, PORTDIR_OVERLAY

node01-clst01 ~ #

node01-clst01 ~ # emerge -pqv =sys-cluster/drbd-kernel-8.0.16
[ebuild  N    ] sys-cluster/drbd-kernel-8.0.16

 * IMPORTANT: 1 news items need reading for repository 'gentoo'.
 * Use eselect news to read news items.

node01-clst01 ~ #

node01-clst01 ~ # cat /var/tmp/portage/sys-cluster/drbd-kernel-8.0.16/temp/build.log                                                                           * CPV:  sys-cluster/drbd-kernel-8.0.16
 * REPO: gentoo
 * USE:  amd64 elibc_glibc kernel_linux multilib userland_GNU
 * Determining the location of the kernel source code
 * Found kernel source directory:
 *     /usr/src/linux
 * Found kernel object directory:
 *     /lib/modules/2.6.32-gentoo-r7/build
 * Found sources for kernel version:
 *     2.6.32-gentoo-r7
 * Checking for suitable kernel configuration options...                  [ ok ]
>>> Unpacking source...
>>> Unpacking drbd-8.0.16.tar.gz to /var/tmp/portage/sys-cluster/drbd-kernel-8.0.16/work
 * Applying drbd-kernel-8.0.0-scripts.adjust_drbd_config_h.sh.patch ...   [ ok ]
 * Applying drbd-8.0.16-kernel-2.6.30-compile-fix.patch ...               [ ok ]
>>> Source unpacked in /var/tmp/portage/sys-cluster/drbd-kernel-8.0.16/work
>>> Compiling source in /var/tmp/portage/sys-cluster/drbd-kernel-8.0.16/work/drbd-8.0.16 ...
 * Preparing drbd module
make -j10 HOSTCC=x86_64-pc-linux-gnu-gcc CROSS_COMPILE=x86_64-pc-linux-gnu- LDFLAGS= -j1 KDIR=/usr/src/linux O= default

    Calling toplevel makefile of kernel source tree, which I believe is in
    KDIR=/usr/src/linux

test -f ../scripts/adjust_drbd_config_h.sh && \
         KDIR=/usr/src/linux O= /bin/bash ../scripts/adjust_drbd_config_h.sh
/usr/src/linux /var/tmp/portage/sys-cluster/drbd-kernel-8.0.16/work/drbd-8.0.16/drbd
/var/tmp/portage/sys-cluster/drbd-kernel-8.0.16/work/drbd-8.0.16/drbd

  Using unmodified drbd_config.h

make -C /usr/src/linux SUBDIRS=/var/tmp/portage/sys-cluster/drbd-kernel-8.0.16/work/drbd-8.0.16/drbd  modules
make[1]: Entering directory `/usr/src/linux-2.6.32-gentoo-r7'
  CC [M]  /var/tmp/portage/sys-cluster/drbd-kernel-8.0.16/work/drbd-8.0.16/drbd/drbd_buildtag.o
  CC [M]  /var/tmp/portage/sys-cluster/drbd-kernel-8.0.16/work/drbd-8.0.16/drbd/drbd_bitmap.o
In file included from /var/tmp/portage/sys-cluster/drbd-kernel-8.0.16/work/drbd-8.0.16/drbd/drbd_int.h:1264,
                 from /var/tmp/portage/sys-cluster/drbd-kernel-8.0.16/work/drbd-8.0.16/drbd/drbd_bitmap.c:31:
/var/tmp/portage/sys-cluster/drbd-kernel-8.0.16/work/drbd-8.0.16/drbd/drbd_wrappers.h: In function 'drbd_get_hardsect':
/var/tmp/portage/sys-cluster/drbd-kernel-8.0.16/work/drbd-8.0.16/drbd/drbd_wrappers.h:21: error: 'struct request_queue' has no member named 'hardsect_size'
make[2]: *** [/var/tmp/portage/sys-cluster/drbd-kernel-8.0.16/work/drbd-8.0.16/drbd/drbd_bitmap.o] Error 1
make[1]: *** [_module_/var/tmp/portage/sys-cluster/drbd-kernel-8.0.16/work/drbd-8.0.16/drbd] Error 2
make[1]: Leaving directory `/usr/src/linux-2.6.32-gentoo-r7'
make: *** [kbuild] Error 2
 * ERROR: sys-cluster/drbd-kernel-8.0.16 failed:
 *   Unable to emake HOSTCC=x86_64-pc-linux-gnu-gcc CROSS_COMPILE=x86_64-pc-linux-gnu- LDFLAGS=  -j1 KDIR=/usr/src/linux O= default
 *
 * Call stack:
 *     ebuild.sh, line   54:  Called src_compile
 *   environment, line 3546:  Called linux-mod_src_compile
 *   environment, line 2736:  Called die
 * The specific snippet of code:
 *               eval "emake HOSTCC=\"$(tc-getBUILD_CC)\"                                               CROSS_COMPILE=${CHOST}-                              LDFLAGS=\"$(get_abi_LDFLAGS)\"                                           ${BUILD_FIXES}                                          ${BUILD_PARAMS}              ${BUILD_TARGETS} " || die "Unable to emake HOSTCC="$(tc-getBUILD_CC)" CROSS_COMPILE=${CHOST}- LDFLAGS="$(get_abi_LDFLAGS)" ${BUILD_FIXES} ${BUILD_PARAMS} ${BUILD_TARGETS}";
 *
 * If you need support, post the output of 'emerge --info =sys-cluster/drbd-kernel-8.0.16',
 * the complete build log and the output of 'emerge -pqv =sys-cluster/drbd-kernel-8.0.16'.
 * The complete build log is located at '/var/tmp/portage/sys-cluster/drbd-kernel-8.0.16/temp/build.log'.
 * The ebuild environment file is located at '/var/tmp/portage/sys-cluster/drbd-kernel-8.0.16/temp/environment'.
 * S: '/var/tmp/portage/sys-cluster/drbd-kernel-8.0.16/work/drbd-8.0.16'


I noticed in a forum post that a patch was released to support newer kernels. Maybe it needs to be patched again to support newer kernels? If so, should i compile an older kernel and try to recompile against that? If it is likely to work, whats the last known working kernel?
_________________
OSST - Formally: The Linux Mirror Project
OSST - Open Source Software Downloads - Torrents for over 80 Distributions
Back to top
View user's profile Send private message
erik258
Advocate
Advocate


Joined: 12 Apr 2005
Posts: 2650
Location: Twin Cities, Minnesota, USA

PostPosted: Tue May 18, 2010 3:26 pm    Post subject: Reply with quote

According to http://packages.gentoo.org/package/sys-cluster/drbd-kernel the newest verion, 8.3.6, has been patched to support 2.6.32. You might want to try ~arch for this package.

If you don't mind me asking, what is the relationship between the in-kernel drdb drivers (which as I recall are a recent addition, as of 2.6.33 or so ), sys-cluster/drbd-kernel, and sys-cluster/drbd packages? I'm almost wondering whether drbd-kernel is a kernel module package, in which case you might want to try the new in-kernel driver instead. I can't really recommend that though, because, as I said, I don't understand how the 2 packages and the kernel come together.

Incidentally, ever hear of glusterfs? It's somewhat like drbd but happens at the filesystem level, outside of the kernel. It might be practical for your purposes ( HPA filestorage) and it might not (mysql High Availability / quick Disaster Recovery). One of the nice things about gluster is that it allows multiple writes at once, can be distributed as well as replicated, and like I said runs atop a POSIX+xattr filesystem (so you don't need gluster itself to access the data, only cluster it). One of the lame things about gluster is its not super fast (although it purports to be, so maybe that's a personal problem) and still seems a little beta-ey.

Well, hope it helps! Good luck!
_________________
Configuring a Firewall? Try my iptables configuration
LinuxCommando.com is my blog for linux-related scraps and tidbits. Stop by for a visit!
Back to top
View user's profile Send private message
matt2kjones
Tux's lil' helper
Tux's lil' helper


Joined: 03 Mar 2004
Posts: 89

PostPosted: Wed May 19, 2010 8:07 am    Post subject: Reply with quote

Hello,

Thank you for your reply, GlusterFS looks interesting.

In regards to DRBD. Yes, I did notice that support for DRBD is now mainline from 2.6.33, the only reason i went for the kernel module approach is because 2.6.33 hasn't hit gentoo-sources yet for my profile. From what i can tell on the drbd site this would be a better solution really, since every time a new kernel is implemented on the servers, there would be no need to compile the matching drbd kernel module from portage.

Whoops:

Just tried emerge drbd --nodeps and it died compiling when it went into /usr/src/linux. I guess i am going to have to download the newest kernel straight from kernel.org and see if it can compile against the sources for that.

// Edit ... Scrap that, it dying when compiling against the kernel headers:

Code:
/lib/modules/2.6.32-gentoo-r7/build/include/asm-generic/int-ll64.h:11:29: error: asm/bitsperlong.h: No such file or directory
make[1]: *** [drbdsetup.o] Error 1
make[1]: Leaving directory `/var/tmp/portage/sys-cluster/drbd-8.0.16/work/drbd-8.0.16/user'
make: *** [tools] Error 2


// Edit 2 .... Me being an idiot.... thought it was bitching about the libs from the kernel headers, but infact its the include files from the /lib/modules folder which are copied there when the kernel is compiled.

Rebooted into the new vanilla kernel from kernel.org, using the built in drbd driver. drbd failed to compile again with the bitsperlong.h doesn't exist error.... Had a look in the kernel includes folder, then noticed that i have to create a link from asm to asm-generic

Needless to say, emerge drbd --nodeps was a success.... so it looks like its only drbd-kernel package that seems broken in portage
_________________
OSST - Formally: The Linux Mirror Project
OSST - Open Source Software Downloads - Torrents for over 80 Distributions
Back to top
View user's profile Send private message
erik258
Advocate
Advocate


Joined: 12 Apr 2005
Posts: 2650
Location: Twin Cities, Minnesota, USA

PostPosted: Wed May 19, 2010 6:56 pm    Post subject: Reply with quote

Cool, that helps me understand what's going on here. So drbd-kernel is just an out-of-tree kernel module.

Personally I hardly ever use gentoo-sources anymore, because they're just too out of date. gentoo-sources would give me 2.6.32-r7 whereas I'm already running 2.6.33.3 - not that it usually makes a huge difference, but there's some really cool developments going on in the kernel these days and I'm tired of waiting to check it out. Besides, keeping up with kernel goings-on in kernel.org - especially the changelogs - is fascinating.

Good luck!
_________________
Configuring a Firewall? Try my iptables configuration
LinuxCommando.com is my blog for linux-related scraps and tidbits. Stop by for a visit!
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Portage & Programming All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum