Hi, just did a kernel update from 2.6.23.15-137 to 2.6.24.3-12 and no 
longer have a working linux-fusion-3.2.4 build. It looks like the xtime 
structure isn't exported any more, and from what I can tell for good reason.

Here's the output from make:

make
rm -f linux/drivers/char/fusion/Makefile
ln -s Makefile-2.6 linux/drivers/char/fusion/Makefile
make -C /lib/modules/2.6.24.3-12.fc8/build \
CPPFLAGS=" -D__KERNEL__ -I`pwd`/linux/include 
-I/lib/modules/2.6.24.3-12.fc8/build/include 
-I/lib/modules/2.6.24.3-12.fc8/source/include -include 
/lib/modules/2.6.24.3-12.fc8/build/include/linux/autoconf.h" \
SUBDIRS=`pwd`/linux/drivers/char/fusion modules
make[1]: Entering directory `/usr/src/kernels/2.6.24.3-12.fc8-i686'
CC [M] /home/cjohnson/linux-fusion-3.2.4/linux/drivers/char/fusion/call.o
/home/cjohnson/linux-fusion-3.2.4/linux/drivers/char/fusion/call.c:24:26: 
error: linux/fusion.h: No such file or directory
In file included from 
/home/cjohnson/linux-fusion-3.2.4/linux/drivers/char/fusion/fusiondev.h:20,
from /home/cjohnson/linux-fusion-3.2.4/linux/drivers/char/fusion/call.c:26:
/home/cjohnson/linux-fusion-3.2.4/linux/drivers/char/fusion/entries.h:60: 
error: ‘FUSION_ENTRY_INFO_NAME_LENGTH’ undeclared here (not in a function)
/home/cjohnson/linux-fusion-3.2.4/linux/drivers/char/fusion/entries.h:94: 
warning: type defaults to ‘int’ in declaration of ‘FusionEntryInfo’
/home/cjohnson/linux-fusion-3.2.4/linux/drivers/char/fusion/entries.h:94: 
error: expected ‘;’, ‘,’ or ‘)’ before ‘*’ token
/home/cjohnson/linux-fusion-3.2.4/linux/drivers/char/fusion/entries.h:97: 
error: expected declaration specifiers or ‘...’ before ‘FusionEntryInfo’
In file included from 
/home/cjohnson/linux-fusion-3.2.4/linux/drivers/char/fusion/call.c:27:
/home/cjohnson/linux-fusion-3.2.4/linux/drivers/char/fusion/fusionee.h:37: 
error: expected declaration specifiers or ‘...’ before ‘FusionEnter’
/home/cjohnson/linux-fusion-3.2.4/linux/drivers/char/fusion/fusionee.h:41: 
error: expected declaration specifiers or ‘...’ before ‘FusionFork’
/home/cjohnson/linux-fusion-3.2.4/linux/drivers/char/fusion/fusionee.h:46: 
error: expected declaration specifiers or ‘...’ before ‘FusionID’
/home/cjohnson/linux-fusion-3.2.4/linux/drivers/char/fusion/fusionee.h:47: 
error: expected declaration specifiers or ‘...’ before ‘FusionMessageType’
/home/cjohnson/linux-fusion-3.2.4/linux/drivers/char/fusion/fusionee.h:66: 
error: expected declaration specifiers or ‘...’ before ‘FusionID’
/home/cjohnson/linux-fusion-3.2.4/linux/drivers/char/fusion/fusionee.h:73: 
error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before 
‘fusionee_id’
In file included from 
/home/cjohnson/linux-fusion-3.2.4/linux/drivers/char/fusion/call.c:29:
/home/cjohnson/linux-fusion-3.2.4/linux/drivers/char/fusion/call.h:32: 
error: expected declaration specifiers or ‘...’ before ‘FusionCallNew’
/home/cjohnson/linux-fusion-3.2.4/linux/drivers/char/fusion/call.h:36: 
error: expected declaration specifiers or ‘...’ before ‘FusionCallExecute’
/home/cjohnson/linux-fusion-3.2.4/linux/drivers/char/fusion/call.h:40: 
error: expected declaration specifiers or ‘...’ before ‘FusionCallReturn’
/home/cjohnson/linux-fusion-3.2.4/linux/drivers/char/fusion/call.c:70: 
error: expected declaration specifiers or ‘...’ before ‘FusionCallExecute’
/home/cjohnson/linux-fusion-3.2.4/linux/drivers/char/fusion/call.c: In 
function ‘fusion_call_read_proc’:
/home/cjohnson/linux-fusion-3.2.4/linux/drivers/char/fusion/call.c:103: 
error: implicit declaration of function ‘fusionee_id’
/home/cjohnson/linux-fusion-3.2.4/linux/drivers/char/fusion/call.c:103: 
warning: format ‘%08lx’ expects type ‘long unsigned int’, but argument 3 
has type ‘int’
/home/cjohnson/linux-fusion-3.2.4/linux/drivers/char/fusion/call.c: At 
top level:
/home/cjohnson/linux-fusion-3.2.4/linux/drivers/char/fusion/call.c:168: 
error: expected declaration specifiers or ‘...’ before ‘FusionCallNew’
/home/cjohnson/linux-fusion-3.2.4/linux/drivers/char/fusion/call.c: In 
function ‘fusion_call_new’:
/home/cjohnson/linux-fusion-3.2.4/linux/drivers/char/fusion/call.c:186: 
error: ‘call_new’ undeclared (first use in this function)
/home/cjohnson/linux-fusion-3.2.4/linux/drivers/char/fusion/call.c:186: 
error: (Each undeclared identifier is reported only once
/home/cjohnson/linux-fusion-3.2.4/linux/drivers/char/fusion/call.c:186: 
error: for each function it appears in.)
/home/cjohnson/linux-fusion-3.2.4/linux/drivers/char/fusion/call.c: At 
top level:
/home/cjohnson/linux-fusion-3.2.4/linux/drivers/char/fusion/call.c:201: 
error: expected declaration specifiers or ‘...’ before ‘FusionCallExecute’
/home/cjohnson/linux-fusion-3.2.4/linux/drivers/char/fusion/call.c: In 
function ‘fusion_call_execute’:
/home/cjohnson/linux-fusion-3.2.4/linux/drivers/char/fusion/call.c:206: 
error: ‘FusionCallMessage’ undeclared (first use in this function)
/home/cjohnson/linux-fusion-3.2.4/linux/drivers/char/fusion/call.c:206: 
error: expected ‘;’ before ‘message’
/home/cjohnson/linux-fusion-3.2.4/linux/drivers/char/fusion/call.c:208: 
error: ‘execute’ undeclared (first use in this function)
/home/cjohnson/linux-fusion-3.2.4/linux/drivers/char/fusion/call.c:212: 
error: ‘FCEF_ONEWAY’ undeclared (first use in this function)
/home/cjohnson/linux-fusion-3.2.4/linux/drivers/char/fusion/call.c:213: 
error: too many arguments to function ‘add_execution’
/home/cjohnson/linux-fusion-3.2.4/linux/drivers/char/fusion/call.c:221: 
error: ‘message’ undeclared (first use in this function)
/home/cjohnson/linux-fusion-3.2.4/linux/drivers/char/fusion/call.c:229: 
error: ‘FMT_CALL’ undeclared (first use in this function)
/home/cjohnson/linux-fusion-3.2.4/linux/drivers/char/fusion/call.c:230: 
warning: passing argument 5 of ‘fusionee_send_message’ makes pointer 
from integer without a cast
/home/cjohnson/linux-fusion-3.2.4/linux/drivers/char/fusion/call.c:230: 
error: too many arguments to function ‘fusionee_send_message’
/home/cjohnson/linux-fusion-3.2.4/linux/drivers/char/fusion/call.c: At 
top level:
/home/cjohnson/linux-fusion-3.2.4/linux/drivers/char/fusion/call.c:269: 
error: expected declaration specifiers or ‘...’ before ‘FusionCallReturn’
/home/cjohnson/linux-fusion-3.2.4/linux/drivers/char/fusion/call.c: In 
function ‘fusion_call_return’:
/home/cjohnson/linux-fusion-3.2.4/linux/drivers/char/fusion/call.c:275: 
error: ‘call_ret’ undeclared (first use in this function)
/home/cjohnson/linux-fusion-3.2.4/linux/drivers/char/fusion/call.c: At 
top level:
/home/cjohnson/linux-fusion-3.2.4/linux/drivers/char/fusion/call.c:435: 
error: expected declaration specifiers or ‘...’ before ‘FusionCallExecute’
make[2]: *** 
[/home/cjohnson/linux-fusion-3.2.4/linux/drivers/char/fusion/call.o] 
Error 1
make[1]: *** 
[_module_/home/cjohnson/linux-fusion-3.2.4/linux/drivers/char/fusion] 
Error 2
make[1]: Leaving directory `/usr/src/kernels/2.6.24.3-12.fc8-i686'
make: *** [all] Error 2


Copying in the fusion.h into the kernel sources fixes the compile 
problem, but when the module is inserted, it won't load because of:

fusion: Unknown symbol xtime

I see xtime is an issue for some other folks too, and they've swtiched 
to using getnstimeofday. I tried this in entries.c instead of 
referencing the kernel's xtime, and it seems to work. Not sure if I've 
done it cleanly, so I'm not attaching a patch. Would someone like to 
review/check my change? I still don't know why the header file isn't found.

thanks!

_______________________________________________
directfb-dev mailing list
directfb-dev@directfb.org
http://mail.directfb.org/cgi-bin/mailman/listinfo/directfb-dev

Reply via email to