[DRBD-user] Compilation Problems on xen host

Lars Ellenberg lars.ellenberg at linbit.com
Sat May 8 22:53:30 CEST 2010

Note: "permalinks" may not be as permanent as we would like,
direct links of old sources may well be a few messages off.


On Fri, May 07, 2010 at 09:30:27PM +0200, Katharina Haselhorst wrote:
> Hello,
> 
> When compiling the drbd kernel modules on a xen host, I get the
> following error:
> 
> /home2/ag-ds/Download/drbd-8.3.7/drbd/drbd_req.c: In function '_drbd_start_io_acct':
> /home2/ag-ds/Download/drbd-8.3.7/drbd/drbd_req.c:63: error: too few arguments to function 'part_inc_in_flight'
> /home2/ag-ds/Download/drbd-8.3.7/drbd/drbd_req.c: In function '_drbd_end_io_acct':
> /home2/ag-ds/Download/drbd-8.3.7/drbd/drbd_req.c:85: error: too few arguments to function 'part_dec_in_flight'
> make[4]: *** [/home2/ag-ds/Download/drbd-8.3.7/drbd/drbd_req.o] Error 1
> make[3]: *** [_module_/home2/ag-ds/Download/drbd-8.3.7/drbd] Error 2
> make[2]: *** [sub-make] Error 2
> make[2]: Leaving directory `/usr/src/linux-2.6.31.12-0.2'
> make[1]: *** [kbuild] Error 2
> make[1]: Leaving directory `/home2/ag-ds/Download/drbd-8.3.7/drbd'
> make: *** [module] Error 2
> 
> I am running a 32-bit 2.6.31 xen kernel.
> 
> Did anyone have a similar error and could solve the issue? The problem
> seems to be related to the macro definitions in drbd_wrapper.h:

quick hack:

- #if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,32)
+ #if 0
> #define part_inc_in_flight(A, B) part_inc_in_flight(A)
> #define part_dec_in_flight(A, B) part_dec_in_flight(A)
> #endif
> 
> So, the error message above make sense from the point of view of these
> definitions, since my kernel version is < 2.6.32 and the functions are
> called with two (instead of only one) parameter...

Xen (or redhat, or wherever the base kernel is coming from)
apparently backported that functionality from 2.6.32.
unfortunately there is no "feature test macro" for it ;-)

-- 
: Lars Ellenberg
: LINBIT | Your Way to High Availability
: DRBD/HA support and consulting http://www.linbit.com

DRBD® and LINBIT® are registered trademarks of LINBIT, Austria.
__
please don't Cc me, but send to list   --   I'm subscribed



More information about the drbd-user mailing list