Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!

Bug 210872

Summary: sys-cluster/drbd-kernel-0.7.25 ebuild fail to compile on linux 2.6.24 and 2.6.23
Product: Gentoo Linux Reporter: hexa <martin>
Component: New packagesAssignee: Gentoo Linux bug wranglers <bug-wranglers>
Status: VERIFIED WORKSFORME    
Severity: normal    
Priority: High    
Version: unspecified   
Hardware: All   
OS: Linux   
Whiteboard:
Package list:
Runtime testing required: ---

Description hexa 2008-02-20 12:39:30 UTC
emerge =drbd-kernel-0.7.25 -av
...
/var/tmp/portage/sys-cluster/drbd-kernel-0.7.25/work/drbd-0.7.25/drbd/drbd_main.c:1650: error: too many arguments to function `kmem_cache_create'
/var/tmp/portage/sys-cluster/drbd-kernel-0.7.25/work/drbd-0.7.25/drbd/drbd_main.c:1656: error: too many arguments to function `kmem_cache_create'
/var/tmp/portage/sys-cluster/drbd-kernel-0.7.25/work/drbd-0.7.25/drbd/drbd_main.c: In function `drbd_cleanup':
/var/tmp/portage/sys-cluster/drbd-kernel-0.7.25/work/drbd-0.7.25/drbd/drbd_main.c:1697: warning: `request_queue_t' is deprecated (declared at include/linux/blkdev.h:40)
/var/tmp/portage/sys-cluster/drbd-kernel-0.7.25/work/drbd-0.7.25/drbd/drbd_main.c:1802: error: void value not ignored as it ought to be
/var/tmp/portage/sys-cluster/drbd-kernel-0.7.25/work/drbd-0.7.25/drbd/drbd_main.c: In function `drbd_init':
/var/tmp/portage/sys-cluster/drbd-kernel-0.7.25/work/drbd-0.7.25/drbd/drbd_main.c:1904: warning: `request_queue_t' is deprecated (declared at include/linux/blkdev.h:40)
make[2]: *** [/var/tmp/portage/sys-cluster/drbd-kernel-0.7.25/work/drbd-0.7.25/drbd/drbd_main.o] Error 1
make[1]: *** [_module_/var/tmp/portage/sys-cluster/drbd-kernel-0.7.25/work/drbd-0.7.25/drbd] Error 2
make[1]: Leaving directory `/usr/src/linux-2.6.23-gentoo-r8'
make: *** [kbuild] Error 2

 * 
 * If you need support, post the topmost build error, and the call stack if relevant.
 * A complete build log is located at '/var/tmp/portage/sys-cluster/drbd-kernel-0.7.25/temp/build.log'.
 * The ebuild environment file is located at '/var/tmp/portage/sys-cluster/drbd-kernel-0.7.25/temp/environment'.
 * 

 * Messages for package sys-cluster/drbd-kernel-0.7.25:

 * 
 * ERROR: sys-cluster/drbd-kernel-0.7.25 failed.
 * Call stack:
 *               ebuild.sh, line   49:  Called src_compile
 *             environment, line 3165:  Called linux-mod_src_compile
 *             environment, line 2426:  Called die
 * The specific snippet of code:
 *               emake HOSTCC="$(tc-getBUILD_CC)" CC="$(get-KERNEL_CC)" LDFLAGS="$(get_abi_LDFLAGS)" ${BUILD_FIXES} ${BUILD_PARAMS} ${BUILD_TARGETS} || die "Unable to make ${BUILD_FIXES} ${BUILD_PARAMS} ${BUILD_TARGETS}.";
 *  The die message:
 *   Unable to make  -j1 KDIR=/usr/src/linux O= default.
 * 
 * If you need support, post the topmost build error, and the call stack if relevant.
 * A complete build log is located at '/var/tmp/portage/sys-cluster/drbd-kernel-0.7.25/temp/build.log'.
 * The ebuild environment file is located at '/var/tmp/portage/sys-cluster/drbd-kernel-0.7.25/temp/environment'.
 * 
lev etc # 

Reproducible: Always

Steps to Reproduce:
1.install a recent kernel (2.6.23)
2.emege =sys-cluster/drbd-0.7.25

Actual Results:  
Failed install with drbd package installed and drbd-kernel not. A completely fucked up system.
Probablt drbd-kernel sould be installed before drbd to avoid this.

Expected Results:  
Installed dbrd

Here is fix for drbd.
http://git.drbd.org/?p=drbd-0.7.git;a=commitdiff;h=fe0c05db16a4dbdc6cfcb20c68b2f61a7793df1a
http://git.drbd.org/?p=drbd-0.7.git;a=snapshot;h=fe0c05db16a4dbdc6cfcb20c68b2f61a7793df1a;sf=tgz
Comment 1 Jakub Moc (RETIRED) gentoo-dev 2008-02-20 12:58:24 UTC
And what's exactly wrong with using 8.0.8 which is stable?
Comment 2 hexa 2008-02-20 14:43:27 UTC
(In reply to comment #1)
> And what's exactly wrong with using 8.0.8 which is stable?
> 

I'm using now 0.8.11. Exactly wrong is, that i have had unscheduled downtime after kernel upgrade, 'cause ebuild packages for 0.7 don't work. There is no way i could have known that 0.7.25 and 0.7.24 don't work with latest kernels.

Anyway this talk is irrelevant. Just fix the bug or make drbd 0.7.24-r1 and 0.7.25 dependent of kernel 2.6.22 or _lower_ which it obviously is.



Also you can end up with half installed drbd since it's been split into two packages. For that reason (not knowing if you'll have broken system after emerge/upgrade) I really don't like how it's been split into two packages. If it was in one, as it was in the beginning, one could not fuck up his system with half emerged drbd (without possibility of downgrade) - It would either work/compile/install or not.

I'm sure someone else will ran into the same problem (reason for my post), while upgrading kernel due to recent security issues.
Comment 3 hexa 2008-02-20 14:44:02 UTC
This is still a bug. If Linbit's preparing a fix, so should gentoo.
Comment 4 Jakub Moc (RETIRED) gentoo-dev 2008-02-20 14:47:09 UTC
Use a current stable version, thanks. 
Comment 5 hexa 2008-02-20 14:53:21 UTC
(In reply to comment #4)
> Use a current stable version, thanks. 
> 
I'll leave it closed altho i don't think this bug is solved.

Don't get mad, but who decides which version is stable?
Judging from recent changes here:
http://git.drbd.org/?p=drbd-8.0.git;a=summary
i would say 0.7 is stable, while Linbit people would say 8.2 is stable.
Comment 6 Jakub Moc (RETIRED) gentoo-dev 2008-02-20 14:58:25 UTC
Keywords for sys-cluster/drbd-kernel:

       | a a a h i m m p p p s s s s x x 
       | l m r p a 6 i p p p 3 h p p 8 8 
       | p d m p 6 8 p c c c 9   a a 6 6 
       | h 6   a 4 k s   6 - 0   r r   - 
       | a 4             4 m     c c   f 
       |                   a       -   b 
       |                   c       f   s 
       |                   o       b   d 
       |                   s       s     
       |                           d     
-------+--------------------------------
0.7.24 |   +           ~             +   
0.7.25 |   ~           ~             ~   
8.0.6  |   ~                         ~   
8.0.7  |   +                         +   
8.0.8  |   +                         +   
8.0.11 |   ~                         ~   

Keywords for sys-cluster/drbd:

          | a a a h i m m p p p s s s s x x 
          | l m r p a 6 i p p p 3 h p p 8 8 
          | p d m p 6 8 p c c c 9   a a 6 6 
          | h 6   a 4 k s   6 - 0   r r   - 
          | a 4             4 m     c c   f 
          |                   a       -   b 
          |                   c       f   s 
          |                   o       b   d 
          |                   s       s     
          |                           d     
----------+--------------------------------
0.7.24-r1 |   +           ~             +   
0.7.25    |   ~           ~             ~   
8.0.6-r1  |   ~                         ~   
8.0.7     |   +                         +   
8.0.8     |   +                         +   
8.0.11    |   ~                         ~   

+ stable
~ testing

That's how it works on Gentoo. 
http://www.gentoo.org/proj/en/devrel/handbook/handbook.xml?part=3&chap=1#doc_chap4

(On a side note, dependencies on kernel versions totally don't work, you can have tons of kernel versions installed so the dependency would solve exactly nothing.)
Comment 7 hexa 2008-02-20 15:08:43 UTC
O.K.
I guess then 0.7.24-r1 should be masked (marked unstable again?) since it doesn't work/compile on recent kernels. Don't you agree?

BTW how did you get this nice graph?