LinuxQuestions.org
Visit Jeremy's Blog.
Home Forums Tutorials Articles Register
Go Back   LinuxQuestions.org > Forums > Linux Forums > Linux - Software > Linux - Kernel
User Name
Password
Linux - Kernel This forum is for all discussion relating to the Linux kernel.

Notices


Reply
  Search this Thread
Old 10-03-2007, 03:58 PM   #1
144419855310001
Member
 
Registered: Apr 2006
Distribution: ubuntu 7.04
Posts: 219

Rep: Reputation: 30
dereferencing pointer to incomplete type (just built a new kernel)


Hi

I'm running ubuntu 7.04 and have just compiled a new kernel in order to get the tickless kernel - I didn't really want to upgrade to 7.10 just to get this feature. I now have 2.6.22.9 (formerly 2.6.20-16-generic).

However, I'm now getting problems when I try to make kqemu for my kernel. I'm just wondering, did I forget to compile something in when I built my kernel? (or is this a bug in the kernel?)

Why am I getting:
Quote:
/usr/src/modules/kqemu/kqemu-linux.c:81: error: dereferencing pointer to incomplete type
Full error:

Quote:
dpatch deapply-all
rm -rf patch-stamp patch-stampT debian/patched
dh_testdir
#dh_testroot
# Cleaning package
/usr/bin/make clean
make[1]: Entering directory `/usr/src/modules/kqemu'
make -C common clean
make[2]: Entering directory `/usr/src/modules/kqemu/common'
rm -f *.o *~ monitor-image.h genoffsets genmon monitor_def.h \
monitor-image.bin monitor-image.out \
i386/*.o x86_64/*.o
make[2]: Leaving directory `/usr/src/modules/kqemu/common'
rm -f kqemu.ko *.o *~
make[1]: Leaving directory `/usr/src/modules/kqemu'
dh_clean
/usr/bin/make -f debian/rules clean
make[1]: Entering directory `/usr/src/modules/kqemu'
dpatch deapply-all
rm -rf patch-stamp patch-stampT debian/patched
dh_testdir
#dh_testroot
# Cleaning package
/usr/bin/make clean
make[2]: Entering directory `/usr/src/modules/kqemu'
make -C common clean
make[3]: Entering directory `/usr/src/modules/kqemu/common'
rm -f *.o *~ monitor-image.h genoffsets genmon monitor_def.h \
monitor-image.bin monitor-image.out \
i386/*.o x86_64/*.o
make[3]: Leaving directory `/usr/src/modules/kqemu/common'
rm -f kqemu.ko *.o *~
make[2]: Leaving directory `/usr/src/modules/kqemu'
dh_clean
make[1]: Leaving directory `/usr/src/modules/kqemu'
/usr/bin/make -f debian/rules kdist_clean kdist_config binary-modules
make[1]: Entering directory `/usr/src/modules/kqemu'
dpatch deapply-all
rm -rf patch-stamp patch-stampT debian/patched
dh_testdir
#dh_testroot
# Cleaning package
/usr/bin/make clean
make[2]: Entering directory `/usr/src/modules/kqemu'
make -C common clean
make[3]: Entering directory `/usr/src/modules/kqemu/common'
rm -f *.o *~ monitor-image.h genoffsets genmon monitor_def.h \
monitor-image.bin monitor-image.out \
i386/*.o x86_64/*.o
make[3]: Leaving directory `/usr/src/modules/kqemu/common'
rm -f kqemu.ko *.o *~
make[2]: Leaving directory `/usr/src/modules/kqemu'
dh_clean
/usr/bin/make -w -f debian/rules clean
make[2]: Entering directory `/usr/src/modules/kqemu'
dpatch deapply-all
rm -rf patch-stamp patch-stampT debian/patched
dh_testdir
#dh_testroot
# Cleaning package
/usr/bin/make clean
make[3]: Entering directory `/usr/src/modules/kqemu'
make -C common clean
make[4]: Entering directory `/usr/src/modules/kqemu/common'
rm -f *.o *~ monitor-image.h genoffsets genmon monitor_def.h \
monitor-image.bin monitor-image.out \
i386/*.o x86_64/*.o
make[4]: Leaving directory `/usr/src/modules/kqemu/common'
rm -f kqemu.ko *.o *~
make[3]: Leaving directory `/usr/src/modules/kqemu'
dh_clean
make[2]: Leaving directory `/usr/src/modules/kqemu'
make[1]: Nothing to be done for `kdist_config'.
for templ in ; do \
cp $templ `echo $templ | sed -e 's/_KVERS_/2.6.22.9-homebuild/g'` ; \
done
for templ in `ls debian/*.modules.in` ; do \
test -e ${templ%.modules.in}.backup || cp ${templ%.modules.in} ${templ%.modules.in}.backup 2>/dev/null || true; \
sed -e 's/##KVERS##/2.6.22.9-homebuild/g ;s/#KVERS#/2.6.22.9-homebuild/g ; s/_KVERS_/2.6.22.9-homebuild/g ; s/##KDREV##/2.6.22.9-homebuild-10.00.Custom/g ; s/#KDREV#/2.6.22.9-homebuild-10.00.Custom/g ; s/_KDREV_/2.6.22.9-homebuild-10.00.Custom/g ' < $templ > ${templ%.modules.in}; \
done
dh_testroot
dh_clean -k
# Build the module
./configure --kernel-path=/lib/modules/2.6.22.9-homebuild/source
Source path /usr/src/modules/kqemu
C compiler gcc
Host C compiler gcc
make make
host CPU x86_64

kernel sources /lib/modules/2.6.22.9-homebuild/source
kbuild type 2.6
/usr/bin/make
make[2]: Entering directory `/usr/src/modules/kqemu'
make -C common all
make[3]: Entering directory `/usr/src/modules/kqemu/common'
gcc -Wall -O2 -Werror -g -D__KERNEL__ -I.. -o genoffsets genoffsets.c
./genoffsets > monitor_def.h
gcc -D__KERNEL__ -nostdinc -iwithprefix include -I. -I.. -D__ASSEMBLY__ -c -o x86_64/nexus_asm.o x86_64/nexus_asm.S
gcc -D__KERNEL__ -nostdinc -iwithprefix include -I. -I.. -D__ASSEMBLY__ -c -o x86_64/monitor_asm.o x86_64/monitor_asm.S
gcc -Wall -O2 -fomit-frame-pointer -fno-strict-aliasing -Werror -mno-red-zone -fno-stack-protector -fpic -D__KERNEL__ -nostdinc -iwithprefix include -I. -I.. -c -o monitor.o monitor.c
gcc -Wall -O2 -fomit-frame-pointer -fno-strict-aliasing -Werror -mno-red-zone -fno-stack-protector -fpic -D__KERNEL__ -nostdinc -iwithprefix include -I. -I.. -c -o monitor-utils.o monitor-utils.c
gcc -Wall -O2 -fomit-frame-pointer -fno-strict-aliasing -Werror -mno-red-zone -fno-stack-protector -fpic -D__KERNEL__ -nostdinc -iwithprefix include -I. -I.. -c -o interp.o interp.c
ld -T x86_64/monitor.ld -o monitor-image.out x86_64/nexus_asm.o x86_64/monitor_asm.o monitor.o monitor-utils.o interp.o
objcopy -O binary monitor-image.out monitor-image.bin
gcc -Wall -O2 -Werror -g -o genmon genmon.c
./genmon < monitor-image.bin > monitor-image.h
gcc -Wall -O2 -fomit-frame-pointer -fno-strict-aliasing -Werror -mno-red-zone -mcmodel=kernel -D__KERNEL__ -nostdinc -iwithprefix include -I. -I.. -c -o kernel.o kernel.c
gcc -D__KERNEL__ -nostdinc -iwithprefix include -I. -I.. -D__ASSEMBLY__ -c -o x86_64/kernel_asm.o x86_64/kernel_asm.S
ld -r -o ../kqemu-mod-x86_64.o kernel.o x86_64/kernel_asm.o
make[3]: Leaving directory `/usr/src/modules/kqemu/common'
make -C /lib/modules/2.6.22.9-homebuild/source M=`pwd` modules
make[3]: Entering directory `/usr/src/linux-2.6.22.9'
CC [M] /usr/src/modules/kqemu/kqemu-linux.o
/usr/src/modules/kqemu/kqemu-linux.c: In function ‘kqemu_lock_user_page’:
/usr/src/modules/kqemu/kqemu-linux.c:81: error: dereferencing pointer to incomplete type
/usr/src/modules/kqemu/kqemu-linux.c: In function ‘kqemu_schedule’:
/usr/src/modules/kqemu/kqemu-linux.c:194: warning: implicit declaration of function ‘need_resched’
/usr/src/modules/kqemu/kqemu-linux.c:195: warning: implicit declaration of function ‘schedule’
/usr/src/modules/kqemu/kqemu-linux.c:197: warning: implicit declaration of function ‘signal_pending’
make[4]: *** [/usr/src/modules/kqemu/kqemu-linux.o] Error 1
make[3]: *** [_module_/usr/src/modules/kqemu] Error 2
make[3]: Leaving directory `/usr/src/linux-2.6.22.9'
make[2]: *** [kqemu.ko] Error 2
make[2]: Leaving directory `/usr/src/modules/kqemu'
make[1]: *** [binary-modules] Error 2
make[1]: Leaving directory `/usr/src/modules/kqemu'
make: *** [kdist_build] Error 2
Any ideas? Thanks
 
  


Reply



Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is Off
HTML code is Off



Similar Threads
Thread Thread Starter Forum Replies Last Post
gcc 4.0.0 warning: dereferencing type-punned pointer will break strict-aliasing rules stephenwalter Programming 4 06-10-2009 04:06 AM
tai64nlocal.c:55: error: dereferencing pointer to incomplete type ExCIA Linux - General 1 03-31-2009 09:49 AM
error: dereferencing pointer to incomplete type ChullDouvre Programming 2 05-02-2007 12:16 AM
Error: dereferencing pointer to incomplete type cynthia_thomas Programming 1 05-01-2006 08:10 AM
C error "dereferencing pointer to incomplete type" lucs Slackware 6 02-21-2005 09:33 AM

LinuxQuestions.org > Forums > Linux Forums > Linux - Software > Linux - Kernel

All times are GMT -5. The time now is 02:22 AM.

Main Menu
Advertisement
My LQ
Write for LQ
LinuxQuestions.org is looking for people interested in writing Editorials, Articles, Reviews, and more. If you'd like to contribute content, let us know.
Main Menu
Syndicate
RSS1  Latest Threads
RSS1  LQ News
Twitter: @linuxquestions
Open Source Consulting | Domain Registration