help: 我的vnet怎么make不行?
:-( 为什么我把vnet(2.0)按说明insmod了等make时还是不行?redhat9.0,按说应该很顺利的亚。
P.S:skyeye和ucosii都装上了。开始时我起的父目录名有一空格,configure和make不了。还好,这个解决了。
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
result of diff two if_vnet.h files: they are same
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
15c15
<*$Id: if_vnet.h,v 1.1 2003/06/06 18:13:05 chenyu Exp $
---
>*$Id: if_vnet.h,v 1.4 2003/06/06 13:50:14 chenyu Exp $
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
result of mknod /dev/net/vnet c 10 201: successful
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
total 0
crw------- 1 root root 10, 200 Jan 302003 tun
crw-rw-rw- 1 root root 10, 201 Mar 25 03:29 vnet
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
result of make: What is the problem ? Help!
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /usr/include/linux/fs.h:23,
from /usr/include/linux/capability.h:17,
from /usr/include/linux/binfmts.h:5,
from /usr/include/linux/sched.h:9,
from vnet.c:33:
/usr/include/linux/string.h:8:2: warning: #warning Using kernel header in userland!
In file included from /usr/include/linux/sched.h:14,
from vnet.c:33:
/usr/include/linux/timex.h:173: field `time' has incomplete type
In file included from /usr/include/linux/bitops.h:69,
from /usr/include/asm/system.h:7,
from /usr/include/linux/sched.h:16,
from vnet.c:33:
/usr/include/asm/bitops.h:327:2: warning: #warning This includefile is not available on all architectures.
/usr/include/asm/bitops.h:328:2: warning: #warning Using kernel headers in userspace: atomicity not guaranteed
In file included from /usr/include/linux/signal.h:4,
from /usr/include/linux/sched.h:25,
from vnet.c:33:
/usr/include/asm/signal.h:107: parse error before "sigset_t"
/usr/include/asm/signal.h:110: parse error before '}' token
In file included from /usr/include/linux/sched.h:81,
from vnet.c:33:
/usr/include/linux/timer.h:45: parse error before "spinlock_t"
/usr/include/linux/timer.h:53: parse error before '}' token
/usr/include/linux/timer.h:67: parse error before "tvec_base_t"
/usr/include/linux/timer.h:101: parse error before "tvec_bases"
/usr/include/linux/timer.h: In function `init_timer':
/usr/include/linux/timer.h:105: dereferencing pointer to incomplete type
/usr/include/linux/timer.h:105: dereferencing pointer to incomplete type
/usr/include/linux/timer.h:106: dereferencing pointer to incomplete type
/usr/include/linux/timer.h: In function `timer_pending':
/usr/include/linux/timer.h:121: dereferencing pointer to incomplete type
In file included from /usr/include/linux/highmem.h:5,
from /usr/include/linux/skbuff.h:26,
from vnet.c:40:
/usr/include/asm/pgalloc.h:6:24: asm/fixmap.h: No such file or directory
In file included from /usr/include/linux/highmem.h:5,
from /usr/include/linux/skbuff.h:26,
from vnet.c:40:
/usr/include/asm/pgalloc.h: At top level:
/usr/include/asm/pgalloc.h:57: parse error before '*' token
/usr/include/asm/pgalloc.h: In function `get_pgd_slow':
/usr/include/asm/pgalloc.h:59: `pgd_t' undeclared (first use in this function)
/usr/include/asm/pgalloc.h:59: (Each undeclared identifier is reported only once
/usr/include/asm/pgalloc.h:59: for each function it appears in.)
/usr/include/asm/pgalloc.h:59: `pgd' undeclared (first use in this function)
/usr/include/asm/pgalloc.h:59: parse error before ')' token
/usr/include/asm/pgalloc.h:62: `USER_PTRS_PER_PGD' undeclared (first use in this function)
/usr/include/asm/pgalloc.h:63: `swapper_pg_dir' undeclared (first use in this function)
/usr/include/asm/pgalloc.h:63: `PTRS_PER_PGD' undeclared (first use in this function)
/usr/include/asm/pgalloc.h: At top level:
/usr/include/asm/pgalloc.h:70: parse error before '*' token
/usr/include/asm/pgalloc.h: In function `get_pgd_fast':
/usr/include/asm/pgalloc.h:80: `pgd_t' undeclared (first use in this function)
/usr/include/asm/pgalloc.h:80: parse error before ')' token
/usr/include/asm/pgalloc.h: At top level:
/usr/include/asm/pgalloc.h:83: parse error before '*' token
/usr/include/asm/pgalloc.h: In function `free_pgd_fast':
/usr/include/asm/pgalloc.h:85: `pgd' undeclared (first use in this function)
/usr/include/asm/pgalloc.h: At top level:
/usr/include/asm/pgalloc.h:90: parse error before '*' token
/usr/include/asm/pgalloc.h: In function `free_pgd_slow':
/usr/include/asm/pgalloc.h:99: `pgd' undeclared (first use in this function)
/usr/include/asm/pgalloc.h: At top level:
/usr/include/asm/pgalloc.h:103: parse error before '*' token
/usr/include/asm/pgalloc.h: In function `pte_alloc_one':
/usr/include/asm/pgalloc.h:105: `pte_t' undeclared (first use in this function)
/usr/include/asm/pgalloc.h:105: `pte' undeclared (first use in this function)
/usr/include/asm/pgalloc.h:109: parse error before ')' token
/usr/include/asm/pgalloc.h: At top level:
/usr/include/asm/pgalloc.h:118: parse error before '*' token
/usr/include/asm/pgalloc.h: In function `pte_alloc_one_fast':
/usr/include/asm/pgalloc.h:127: `pte_t' undeclared (first use in this function)
/usr/include/asm/pgalloc.h:127: parse error before ')' token
/usr/include/asm/pgalloc.h: At top level:
/usr/include/asm/pgalloc.h:130: parse error before '*' token
/usr/include/asm/pgalloc.h: In function `pte_free_fast':
/usr/include/asm/pgalloc.h:132: `pte' undeclared (first use in this function)
/usr/include/asm/pgalloc.h: At top level:
/usr/include/asm/pgalloc.h:137: parse error before '*' token
/usr/include/asm/pgalloc.h: In function `pte_free_slow':
/usr/include/asm/pgalloc.h:139: `pte' undeclared (first use in this function)
/usr/include/asm/pgalloc.h: In function `flush_tlb_mm':
/usr/include/asm/pgalloc.h:183: `current' undeclared (first use in this function)
/usr/include/asm/pgalloc.h: In function `flush_tlb_page':
/usr/include/asm/pgalloc.h:190: dereferencing pointer to incomplete type
/usr/include/asm/pgalloc.h:190: `current' undeclared (first use in this function)
/usr/include/asm/pgalloc.h: In function `flush_tlb_range':
/usr/include/asm/pgalloc.h:197: `current' undeclared (first use in this function)
In file included from vnet.c:40:
/usr/include/linux/skbuff.h: At top level:
/usr/include/linux/skbuff.h:100: parse error before "spinlock_t"
/usr/include/linux/skbuff.h:120: parse error before "atomic_t"
/usr/include/linux/skbuff.h:124: parse error before '}' token
/usr/include/linux/skbuff.h:183: parse error before "atomic_t"
/usr/include/linux/skbuff.h:215: parse error before '}' token
In file included from /usr/include/linux/pagemap.h:15,
from /usr/include/linux/locks.h:8,
from /usr/include/linux/devfs_fs_kernel.h:6,
from /usr/include/linux/miscdevice.h:4,
from vnet.c:43:
/usr/include/asm/pgtable.h:17:24: asm/fixmap.h: No such file or directory
In file included from /usr/include/linux/pagemap.h:15,
from /usr/include/linux/locks.h:8,
from /usr/include/linux/devfs_fs_kernel.h:6,
from /usr/include/linux/miscdevice.h:4,
from vnet.c:43:
/usr/include/asm/pgtable.h:24: parse error before "swapper_pg_dir"
/usr/include/asm/pgtable.h:24: `swapper_pg_dir' used prior to declaration
In file included from /usr/include/asm/pgtable.h:115,
from /usr/include/linux/pagemap.h:15,
from /usr/include/linux/locks.h:8,
from /usr/include/linux/devfs_fs_kernel.h:6,
from /usr/include/linux/miscdevice.h:4,
from vnet.c:43:
/usr/include/asm/pgtable-2level.h:32: parse error before "pgd"
/usr/include/asm/pgtable-2level.h:33: parse error before "pgd"
/usr/include/asm/pgtable-2level.h:34: parse error before "pgd"
/usr/include/asm/pgtable-2level.h:53: parse error before '*' token
/usr/include/asm/pgtable-2level.h:53: parse error before '*' token
/usr/include/asm/pgtable-2level.h: In function `pmd_offset':
/usr/include/asm/pgtable-2level.h:55: `pmd_t' undeclared (first use in this function)
/usr/include/asm/pgtable-2level.h:55: parse error before ')' token
In file included from /usr/include/linux/pagemap.h:15,
from /usr/include/linux/locks.h:8,
from /usr/include/linux/devfs_fs_kernel.h:6,
from /usr/include/linux/miscdevice.h:4,
from vnet.c:43:
/usr/include/asm/pgtable.h: At top level:
/usr/include/asm/pgtable.h:277: parse error before "pte"
/usr/include/asm/pgtable.h: In function `pte_read':
/usr/include/asm/pgtable.h:277: `pte' undeclared (first use in this function)
/usr/include/asm/pgtable.h: At top level:
/usr/include/asm/pgtable.h:278: parse error before "pte"
/usr/include/asm/pgtable.h: In function `pte_exec':
/usr/include/asm/pgtable.h:278: `pte' undeclared (first use in this function)
/usr/include/asm/pgtable.h: At top level:
/usr/include/asm/pgtable.h:279: parse error before "pte"
/usr/include/asm/pgtable.h: In function `pte_dirty':
/usr/include/asm/pgtable.h:279: `pte' undeclared (first use in this function)
/usr/include/asm/pgtable.h: At top level:
/usr/include/asm/pgtable.h:280: parse error before "pte"
/usr/include/asm/pgtable.h: In function `pte_young':
/usr/include/asm/pgtable.h:280: `pte' undeclared (first use in this function)
/usr/include/asm/pgtable.h: At top level:
/usr/include/asm/pgtable.h:281: parse error before "pte"
/usr/include/asm/pgtable.h: In function `pte_write':
/usr/include/asm/pgtable.h:281: `pte' undeclared (first use in this function)
/usr/include/asm/pgtable.h: At top level:
/usr/include/asm/pgtable.h:283: parse error before "pte_rdprotect"
/usr/include/asm/pgtable.h:283: parse error before "pte"
/usr/include/asm/pgtable.h: In function `pte_rdprotect':
/usr/include/asm/pgtable.h:283: `pte' undeclared (first use in this function)
/usr/include/asm/pgtable.h: At top level:
/usr/include/asm/pgtable.h:284: parse error before "pte_exprotect"
/usr/include/asm/pgtable.h:284: parse error before "pte"
/usr/include/asm/pgtable.h: In function `pte_exprotect':
/usr/include/asm/pgtable.h:284: `pte' undeclared (first use in this function)
/usr/include/asm/pgtable.h: At top level:
/usr/include/asm/pgtable.h:285: parse error before "pte_mkclean"
/usr/include/asm/pgtable.h:285: parse error before "pte"
/usr/include/asm/pgtable.h: In function `pte_mkclean':
/usr/include/asm/pgtable.h:285: `pte' undeclared (first use in this function)
/usr/include/asm/pgtable.h: At top level:
/usr/include/asm/pgtable.h:286: parse error before "pte_mkold"
/usr/include/asm/pgtable.h:286: parse error before "pte"
/usr/include/asm/pgtable.h: In function `pte_mkold':
/usr/include/asm/pgtable.h:286: `pte' undeclared (first use in this function)
/usr/include/asm/pgtable.h: At top level:
/usr/include/asm/pgtable.h:287: parse error before "pte_wrprotect"
/usr/include/asm/pgtable.h:287: parse error before "pte"
/usr/include/asm/pgtable.h: In function `pte_wrprotect':
/usr/include/asm/pgtable.h:287: `pte' undeclared (first use in this function)
/usr/include/asm/pgtable.h: At top level:
/usr/include/asm/pgtable.h:288: parse error before "pte_mkread"
/usr/include/asm/pgtable.h:288: parse error before "pte"
/usr/include/asm/pgtable.h: In function `pte_mkread':
/usr/include/asm/pgtable.h:288: `pte' undeclared (first use in this function)
/usr/include/asm/pgtable.h: At top level:
/usr/include/asm/pgtable.h:289: parse error before "pte_mkexec"
/usr/include/asm/pgtable.h:289: parse error before "pte"
/usr/include/asm/pgtable.h: In function `pte_mkexec':
/usr/include/asm/pgtable.h:289: `pte' undeclared (first use in this function)
/usr/include/asm/pgtable.h: At top level:
/usr/include/asm/pgtable.h:290: parse error before "pte_mkdirty"
/usr/include/asm/pgtable.h:290: parse error before "pte"
/usr/include/asm/pgtable.h: In function `pte_mkdirty':
/usr/include/asm/pgtable.h:290: `pte' undeclared (first use in this function)
/usr/include/asm/pgtable.h: At top level:
/usr/include/asm/pgtable.h:291: parse error before "pte_mkyoung"
/usr/include/asm/pgtable.h:291: parse error before "pte"
/usr/include/asm/pgtable.h: In function `pte_mkyoung':
/usr/include/asm/pgtable.h:291: `pte' undeclared (first use in this function)
/usr/include/asm/pgtable.h: At top level:
/usr/include/asm/pgtable.h:292: parse error before "pte_mkwrite"
/usr/include/asm/pgtable.h:292: parse error before "pte"
/usr/include/asm/pgtable.h: In function `pte_mkwrite':
/usr/include/asm/pgtable.h:292: `pte' undeclared (first use in this function)
/usr/include/asm/pgtable.h: At top level:
/usr/include/asm/pgtable.h:294: parse error before '*' token
/usr/include/asm/pgtable.h: In function `ptep_test_and_clear_dirty':
/usr/include/asm/pgtable.h:294: `ptep' undeclared (first use in this function)
/usr/include/asm/pgtable.h: At top level:
/usr/include/asm/pgtable.h:295: parse error before '*' token
/usr/include/asm/pgtable.h: In function `ptep_test_and_clear_young':
/usr/include/asm/pgtable.h:295: `ptep' undeclared (first use in this function)
/usr/include/asm/pgtable.h: At top level:
/usr/include/asm/pgtable.h:296: parse error before '*' token
/usr/include/asm/pgtable.h: In function `ptep_set_wrprotect':
/usr/include/asm/pgtable.h:296: `ptep' undeclared (first use in this function)
/usr/include/asm/pgtable.h: At top level:
/usr/include/asm/pgtable.h:297: parse error before '*' token
/usr/include/asm/pgtable.h: In function `ptep_mkdirty':
/usr/include/asm/pgtable.h:297: `ptep' undeclared (first use in this function)
/usr/include/asm/pgtable.h: At top level:
/usr/include/asm/pgtable.h:309: parse error before "pte_modify"
/usr/include/asm/pgtable.h:309: parse error before "pte"
/usr/include/asm/pgtable.h: In function `pte_modify':
/usr/include/asm/pgtable.h:311: `pte' undeclared (first use in this function)
/usr/include/asm/pgtable.h:311: `PTE_MASK' undeclared (first use in this function)
/usr/include/asm/pgtable.h:312: `newprot' undeclared (first use in this function)
In file included from /usr/include/linux/locks.h:8,
from /usr/include/linux/devfs_fs_kernel.h:6,
from /usr/include/linux/miscdevice.h:4,
from vnet.c:43:
/usr/include/linux/pagemap.h: In function `page_cache_alloc':
/usr/include/linux/pagemap.h:37: dereferencing pointer to incomplete type
/usr/include/linux/pagemap.h: At top level:
/usr/include/linux/pagemap.h:46: parse error before "spinlock_t"
/usr/include/linux/pagemap.h:48: parse error before '}' token
/usr/include/linux/pagemap.h:54: parse error before "page_cache_size"
/usr/include/linux/pagemap.h: In function `_page_hashfn':
/usr/include/linux/pagemap.h:72: sizeof applied to an incomplete type
/usr/include/linux/pagemap.h:72: sizeof applied to an incomplete type
/usr/include/linux/pagemap.h:72: sizeof applied to an incomplete type
/usr/include/linux/pagemap.h:72: sizeof applied to an incomplete type
In file included from /usr/include/linux/devfs_fs_kernel.h:6,
from /usr/include/linux/miscdevice.h:4,
from vnet.c:43:
/usr/include/linux/locks.h: In function `wait_on_buffer':
/usr/include/linux/locks.h:19: `BH_Lock' undeclared (first use in this function)
/usr/include/linux/locks.h:19: dereferencing pointer to incomplete type
/usr/include/linux/locks.h:19: dereferencing pointer to incomplete type
/usr/include/linux/locks.h: In function `lock_buffer':
/usr/include/linux/locks.h:25: `BH_Lock' undeclared (first use in this function)
/usr/include/linux/locks.h:25: dereferencing pointer to incomplete type
/usr/include/linux/locks.h: In function `lock_super':
/usr/include/linux/locks.h:39: dereferencing pointer to incomplete type
/usr/include/linux/locks.h: In function `unlock_super':
/usr/include/linux/locks.h:44: dereferencing pointer to incomplete type
vnet.c:50:25: asm/uaccess.h: No such file or directory
In file included from vnet.c:53:
/usr/include/linux/proc_fs.h: At top level:
/usr/include/linux/proc_fs.h:70: parse error before "atomic_t"
/usr/include/linux/proc_fs.h:73: parse error before '}' token
/usr/include/linux/proc_fs.h:203: parse error before "void"
In file included from vnet.c:54:
/usr/include/linux/file.h:8: parse error before '(' token
/usr/include/linux/file.h:9: parse error before '(' token
/usr/include/linux/file.h: In function `get_close_on_exec':
/usr/include/linux/file.h:13: `current' undeclared (first use in this function)
/usr/include/linux/file.h:15: dereferencing pointer to incomplete type
/usr/include/linux/file.h:16: dereferencing pointer to incomplete type
/usr/include/linux/file.h:17: dereferencing pointer to incomplete type
/usr/include/linux/file.h: In function `set_close_on_exec':
/usr/include/linux/file.h:23: `current' undeclared (first use in this function)
/usr/include/linux/file.h:24: dereferencing pointer to incomplete type
/usr/include/linux/file.h:26: dereferencing pointer to incomplete type
/usr/include/linux/file.h:28: dereferencing pointer to incomplete type
/usr/include/linux/file.h:29: dereferencing pointer to incomplete type
/usr/include/linux/file.h: In function `fcheck_files':
/usr/include/linux/file.h:36: dereferencing pointer to incomplete type
/usr/include/linux/file.h:37: dereferencing pointer to incomplete type
/usr/include/linux/file.h: In function `fcheck':
/usr/include/linux/file.h:47: `current' undeclared (first use in this function)
/usr/include/linux/file.h:49: dereferencing pointer to incomplete type
/usr/include/linux/file.h:50: dereferencing pointer to incomplete type
/usr/include/linux/file.h: In function `__put_unused_fd':
/usr/include/linux/file.h:60: dereferencing pointer to incomplete type
/usr/include/linux/file.h:61: dereferencing pointer to incomplete type
/usr/include/linux/file.h:62: dereferencing pointer to incomplete type
/usr/include/linux/file.h: In function `put_unused_fd':
/usr/include/linux/file.h:67: `current' undeclared (first use in this function)
/usr/include/linux/file.h:69: dereferencing pointer to incomplete type
/usr/include/linux/file.h:71: dereferencing pointer to incomplete type
/usr/include/linux/file.h: In function `fd_install':
/usr/include/linux/file.h:89: `current' undeclared (first use in this function)
/usr/include/linux/file.h:91: dereferencing pointer to incomplete type
/usr/include/linux/file.h:92: dereferencing pointer to incomplete type
/usr/include/linux/file.h:94: dereferencing pointer to incomplete type
/usr/include/linux/file.h:95: dereferencing pointer to incomplete type
In file included from vnet.c:57:
if_vnet.h: At top level:
if_vnet.h:44: parse error before "wait_queue_head_t"
if_vnet.h:44: warning: no semicolon at end of struct or union
if_vnet.h:55: parse error before '}' token
if_vnet.h:148: parse error before "wait_queue_head_t"
if_vnet.h:148: warning: no semicolon at end of struct or union
if_vnet.h:155: parse error before '}' token
if_vnet.h:158: field `nut' has incomplete type
if_vnet.h:168: parse error before "poll_table"
if_vnet.h:168: warning: function declaration isn't a prototype
if_vnet.h:176: field `nut' has incomplete type
if_vnet.h:193: field `packetQueue' has incomplete type
if_vnet.h:198: parse error before "wait_queue_head_t"
if_vnet.h:198: warning: no semicolon at end of struct or union
if_vnet.h:199: conflicting types for `stats'
if_vnet.h:48: previous declaration of `stats'
if_vnet.h:200: parse error before '}' token
if_vnet.h:207: parse error before "wait_queue_head_t"
if_vnet.h:207: warning: no semicolon at end of struct or union
if_vnet.h:211: conflicting types for `stats'
if_vnet.h:199: previous declaration of `stats'
if_vnet.h:213: parse error before '}' token
vnet.c:67: parse error before "vnet_nutLock"
vnet.c:67: warning: type defaults to `int' in declaration of `vnet_nutLock'
vnet.c:67: warning: data definition has no type or storage class
vnet.c:68: parse error before "vnet_boltLock"
vnet.c:68: warning: type defaults to `int' in declaration of `vnet_boltLock'
vnet.c:68: warning: data definition has no type or storage class
vnet.c:78: warning: `struct inode' declared inside parameter list
vnet.c:81: warning: `struct inode' declared inside parameter list
vnet.c:82: warning: `struct inode' declared inside parameter list
vnet.c:83: parse error before "poll_table"
vnet.c:83: warning: function declaration isn't a prototype
vnet.c:100: warning: `struct inode' declared inside parameter list
vnet.c:115: parse error before "poll_table"
vnet.c:115: warning: function declaration isn't a prototype
vnet.c: In function `vnet_procfs_removeentry':
vnet.c:264: dereferencing pointer to incomplete type
vnet.c: In function `vnet_hostif_open':
vnet.c:287: warning: implicit declaration of function `netif_start_queue'
vnet.c: In function `vnet_hostif_close':
vnet.c:294: warning: implicit declaration of function `netif_stop_queue'
vnet.c: In function `vnet_hostif_recv':
vnet.c:300: dereferencing pointer to incomplete type
vnet.c:302: dereferencing pointer to incomplete type
vnet.c:302: dereferencing pointer to incomplete type
vnet.c:303: dereferencing pointer to incomplete type
vnet.c:303: warning: implicit declaration of function `eth_type_trans'
vnet.c:303: dereferencing pointer to incomplete type
vnet.c:304: warning: implicit declaration of function `netif_rx_ni'
vnet.c:305: dereferencing pointer to incomplete type
vnet.c: In function `vnet_hostif_xmit':
vnet.c:313: dereferencing pointer to incomplete type
vnet.c:316: warning: implicit declaration of function `printk'
vnet.c:316: `KERN_INFO' undeclared (first use in this function)
vnet.c:316: parse error before string constant
vnet.c:319: dereferencing pointer to incomplete type
vnet.c:328: dereferencing pointer to incomplete type
vnet.c:329: dereferencing pointer to incomplete type
vnet.c:334: dereferencing pointer to incomplete type
vnet.c:336: dereferencing pointer to incomplete type
vnet.c:337: parse error before string constant
vnet.c:341: dereferencing pointer to incomplete type
vnet.c:342: warning: implicit declaration of function `kfree_skb'
vnet.c: In function `vnet_hostif_mclist':
vnet.c:350: `KERN_INFO' undeclared (first use in this function)
vnet.c:350: parse error before string constant
vnet.c: In function `vnet_hostif_procread':
vnet.c:369: dereferencing pointer to incomplete type
vnet.c:371: warning: implicit declaration of function `sprintf'
vnet.c: In function `vnet_hostif_stats':
vnet.c:381: dereferencing pointer to incomplete type
vnet.c:382: dereferencing pointer to incomplete type
vnet.c: In function `vnet_hostif_init':
vnet.c:388: dereferencing pointer to incomplete type
vnet.c:390: `KERN_INFO' undeclared (first use in this function)
vnet.c:390: parse error before string constant
vnet.c:390: dereferencing pointer to incomplete type
vnet.c:390: warning: left-hand operand of comma expression has no effect
vnet.c:390: parse error before ')' token
vnet.c:393: dereferencing pointer to incomplete type
vnet.c:394: dereferencing pointer to incomplete type
vnet.c:395: dereferencing pointer to incomplete type
vnet.c:396: dereferencing pointer to incomplete type
vnet.c:398: dereferencing pointer to incomplete type
vnet.c:401: dereferencing pointer to incomplete type
vnet.c:403: dereferencing pointer to incomplete type
vnet.c:404: warning: implicit declaration of function `get_random_bytes'
vnet.c:404: dereferencing pointer to incomplete type
vnet.c:405: warning: implicit declaration of function `ether_setup'
vnet.c:406: dereferencing pointer to incomplete type
vnet.c:406: dereferencing pointer to incomplete type
vnet.c:409: parse error before string constant
vnet.c: At top level:
vnet.c:419: parse error before "poll_table"
vnet.c:420: warning: function declaration isn't a prototype
vnet.c: In function `vnet_chr_poll':
vnet.c:421: `file' undeclared (first use in this function)
vnet.c:428: dereferencing pointer to incomplete type
vnet.c:429: `wait' undeclared (first use in this function)
vnet.c: In function `vnet_get_user':
vnet.c:441: dereferencing pointer to incomplete type
vnet.c:445: warning: implicit declaration of function `memcpy_fromiovec'
vnet.c:448: warning: implicit declaration of function `alloc_skb'
vnet.c:448: `GFP_KERNEL' undeclared (first use in this function)
vnet.c:448: warning: assignment makes pointer from integer without a cast
vnet.c:449: dereferencing pointer to incomplete type
vnet.c:453: warning: implicit declaration of function `skb_reserve'
vnet.c:454: warning: implicit declaration of function `skb_put'
vnet.c:456: dereferencing pointer to incomplete type
vnet.c:456: dereferencing pointer to incomplete type
vnet.c:457: dereferencing pointer to incomplete type
vnet.c:459: dereferencing pointer to incomplete type
vnet.c:459: dereferencing pointer to incomplete type
vnet.c:460: dereferencing pointer to incomplete type
vnet.c:463: dereferencing pointer to incomplete type
vnet.c:463: dereferencing pointer to incomplete type
vnet.c:467: dereferencing pointer to incomplete type
vnet.c:468: dereferencing pointer to incomplete type
vnet.c:472: dereferencing pointer to incomplete type
vnet.c:473: dereferencing pointer to incomplete type
vnet.c: In function `vnet_chr_write':
vnet.c:483: dereferencing pointer to incomplete type
vnet.c:486: `KERN_INFO' undeclared (first use in this function)
vnet.c:486: parse error before string constant
vnet.c:489: dereferencing pointer to incomplete type
vnet.c: In function `vnet_put_user':
vnet.c:498: dereferencing pointer to incomplete type
vnet.c:501: dereferencing pointer to incomplete type
vnet.c:505: dereferencing pointer to incomplete type
vnet.c:510: warning: implicit declaration of function `memcpy_toiovec'
vnet.c:514: dereferencing pointer to incomplete type
vnet.c:514: dereferencing pointer to incomplete type
vnet.c:516: warning: implicit declaration of function `skb_copy_datagram_iovec'
vnet.c:519: dereferencing pointer to incomplete type
vnet.c:520: dereferencing pointer to incomplete type
vnet.c: In function `vnet_chr_read':
vnet.c:530: dereferencing pointer to incomplete type
vnet.c:533: `KERN_INFO' undeclared (first use in this function)
vnet.c:533: parse error before string constant
vnet.c:536: dereferencing pointer to incomplete type
vnet.c: In function `vnet_hostif_free':
vnet.c:546: `KERN_INFO' undeclared (first use in this function)
vnet.c:546: parse error before string constant
vnet.c:547: warning: implicit declaration of function `unregister_netdev'
vnet.c:547: dereferencing pointer to incomplete type
vnet.c:548: dereferencing pointer to incomplete type
vnet.c:549: dereferencing pointer to incomplete type
vnet.c:551: warning: implicit declaration of function `kfree'
vnet.c:552: parse error before string constant
vnet.c: At top level:
vnet.c:555: warning: `struct inode' declared inside parameter list
vnet.c:556: conflicting types for `vnet_hostif_create'
vnet.c:100: previous declaration of `vnet_hostif_create'
vnet.c: In function `vnet_hostif_create':
vnet.c:557: dereferencing pointer to incomplete type
vnet.c:567: `KERN_INFO' undeclared (first use in this function)
vnet.c:567: parse error before string constant
vnet.c:569: `KERN_DEBUG' undeclared (first use in this function)
vnet.c:569: parse error before string constant
vnet.c:573: dereferencing pointer to incomplete type
vnet.c:580: parse error before string constant
vnet.c:583: warning: implicit declaration of function `__dev_get_by_name'
vnet.c:583: warning: assignment makes pointer from integer without a cast
vnet.c:586: dereferencing pointer to incomplete type
vnet.c:587: dereferencing pointer to incomplete type
vnet.c:603: warning: implicit declaration of function `kmalloc'
vnet.c:603: sizeof applied to an incomplete type
vnet.c:603: `GFP_KERNEL' undeclared (first use in this function)
vnet.c:603: warning: assignment makes pointer from integer without a cast
vnet.c:605: sizeof applied to an incomplete type
vnet.c:611: dereferencing pointer to incomplete type
vnet.c:612: dereferencing pointer to incomplete type
vnet.c:613: dereferencing pointer to incomplete type
vnet.c:614: dereferencing pointer to incomplete type
vnet.c:615: dereferencing pointer to incomplete type
vnet.c:615: dereferencing pointer to incomplete type
vnet.c:616: dereferencing pointer to incomplete type
vnet.c:617: dereferencing pointer to incomplete type
vnet.c:618: dereferencing pointer to incomplete type
vnet.c:619: dereferencing pointer to incomplete type
vnet.c:620: dereferencing pointer to incomplete type
vnet.c:621: dereferencing pointer to incomplete type
vnet.c:622: warning: implicit declaration of function `init_waitqueue_head'
vnet.c:622: dereferencing pointer to incomplete type
vnet.c:623: dereferencing pointer to incomplete type
vnet.c:624: dereferencing pointer to incomplete type
vnet.c:625: dereferencing pointer to incomplete type
vnet.c:626: dereferencing pointer to incomplete type
vnet.c:632: dereferencing pointer to incomplete type
vnet.c:632: dereferencing pointer to incomplete type
vnet.c:633: dereferencing pointer to incomplete type
vnet.c:633: dereferencing pointer to incomplete type
vnet.c:635: dereferencing pointer to incomplete type
vnet.c:636: dereferencing pointer to incomplete type
vnet.c:637: dereferencing pointer to incomplete type
vnet.c:638: dereferencing pointer to incomplete type
vnet.c:644: dereferencing pointer to incomplete type
vnet.c:652: warning: implicit declaration of function `dev_alloc_name'
vnet.c:652: dereferencing pointer to incomplete type
vnet.c:654: warning: implicit declaration of function `register_netdevice'
vnet.c:654: dereferencing pointer to incomplete type
vnet.c:662: parse error before string constant
vnet.c:662: dereferencing pointer to incomplete type
vnet.c:662: warning: left-hand operand of comma expression has no effect
vnet.c:662: parse error before ')' token
vnet.c:665: dereferencing pointer to incomplete type
vnet.c:666: dereferencing pointer to incomplete type
vnet.c:668: dereferencing pointer to incomplete type
vnet.c:672: warning: implicit declaration of function `minor'
vnet.c:672: dereferencing pointer to incomplete type
vnet.c:675: parse error before string constant
vnet.c:675: warning: left-hand operand of comma expression has no effect
vnet.c:675: parse error before ')' token
vnet.c:679: `KERN_ERR' undeclared (first use in this function)
vnet.c:679: parse error before string constant
vnet.c:687: parse error before string constant
vnet.c:692: parse error before string constant
vnet.c:697: parse error before string constant
vnet.c:701: parse error before string constant
vnet.c:706: dereferencing pointer to incomplete type
vnet.c:708: parse error before string constant
vnet.c:708: warning: left-hand operand of comma expression has no effect
vnet.c:708: parse error before ')' token
vnet.c:711: dereferencing pointer to incomplete type
vnet.c:711: dereferencing pointer to incomplete type
vnet.c:715: dereferencing pointer to incomplete type
vnet.c:716: dereferencing pointer to incomplete type
vnet.c:719: parse error before string constant
vnet.c:724: parse error before string constant
vnet.c: At top level:
vnet.c:729: warning: `struct inode' declared inside parameter list
vnet.c:730: conflicting types for `vnet_chr_ioctl'
vnet.c:81: previous declaration of `vnet_chr_ioctl'
vnet.c: In function `vnet_chr_ioctl':
vnet.c:732: dereferencing pointer to incomplete type
vnet.c:738: `KERN_INFO' undeclared (first use in this function)
vnet.c:738: parse error before string constant
vnet.c:741: parse error before string constant
vnet.c:748: warning: implicit declaration of function `copy_from_user'
vnet.c:751: warning: implicit declaration of function `rtnl_lock'
vnet.c:752: warning: passing arg 1 of `vnet_hostif_create' from incompatible pointer type
vnet.c:753: warning: implicit declaration of function `rtnl_unlock'
vnet.c:755: warning: implicit declaration of function `copy_to_user'
vnet.c:760: warning: implicit declaration of function `verify_area'
vnet.c:760: `VERIFY_WRITE' undeclared (first use in this function)
vnet.c:768: `VERIFY_READ' undeclared (first use in this function)
vnet.c:782: warning: implicit declaration of function `put_user'
vnet.c:786: warning: implicit declaration of function `get_user'
vnet.c:794: parse error before string constant
vnet.c: In function `vnet_chr_fasync':
vnet.c:803: dereferencing pointer to incomplete type
vnet.c:809: `KERN_INFO' undeclared (first use in this function)
vnet.c:809: parse error before string constant
vnet.c:809: dereferencing pointer to incomplete type
vnet.c:809: warning: left-hand operand of comma expression has no effect
vnet.c:809: warning: left-hand operand of comma expression has no effect
vnet.c:809: parse error before ')' token
vnet.c:811: warning: implicit declaration of function `fasync_helper'
vnet.c:811: dereferencing pointer to incomplete type
vnet.c:815: dereferencing pointer to incomplete type
vnet.c:816: dereferencing pointer to incomplete type
vnet.c:817: dereferencing pointer to incomplete type
vnet.c:817: `current' undeclared (first use in this function)
vnet.c:818: dereferencing pointer to incomplete type
vnet.c:819: dereferencing pointer to incomplete type
vnet.c:822: dereferencing pointer to incomplete type
vnet.c: At top level:
vnet.c:827: warning: `struct inode' declared inside parameter list
vnet.c:828: conflicting types for `vnet_chr_open'
vnet.c:82: previous declaration of `vnet_chr_open'
vnet.c: In function `vnet_chr_open':
vnet.c:834: `KERN_INFO' undeclared (first use in this function)
vnet.c:834: parse error before string constant
vnet.c:834: `current' undeclared (first use in this function)
vnet.c:834: warning: left-hand operand of comma expression has no effect
vnet.c:834: warning: left-hand operand of comma expression has no effect
vnet.c:834: parse error before ')' token
vnet.c:835: parse error before string constant
vnet.c:835: warning: implicit declaration of function `atomic_read'
vnet.c:835: dereferencing pointer to incomplete type
vnet.c:835: warning: left-hand operand of comma expression has no effect
vnet.c:835: warning: left-hand operand of comma expression has no effect
vnet.c:835: parse error before ')' token
vnet.c:837: dereferencing pointer to incomplete type
vnet.c:841: parse error before string constant
vnet.c:843: dereferencing pointer to incomplete type
vnet.c:846: parse error before string constant
vnet.c:846: warning: left-hand operand of comma expression has no effect
vnet.c:846: parse error before ')' token
vnet.c:859: parse error before string constant
vnet.c:867: parse error before string constant
vnet.c:872: dereferencing pointer to incomplete type
vnet.c:874: parse error before string constant
vnet.c:874: warning: left-hand operand of comma expression has no effect
vnet.c:874: parse error before ')' token
vnet.c: At top level:
vnet.c:879: warning: `struct inode' declared inside parameter list
vnet.c:880: conflicting types for `vnet_chr_close'
vnet.c:78: previous declaration of `vnet_chr_close'
vnet.c: In function `vnet_chr_close':
vnet.c:882: dereferencing pointer to incomplete type
vnet.c:888: `KERN_INFO' undeclared (first use in this function)
vnet.c:888: parse error before string constant
vnet.c:891: `KERN_DEBUG' undeclared (first use in this function)
vnet.c:891: parse error before string constant
vnet.c:894: dereferencing pointer to incomplete type
vnet.c:896: dereferencing pointer to incomplete type
vnet.c:901: dereferencing pointer to incomplete type
vnet.c:903: dereferencing pointer to incomplete type
vnet.c:912: parse error before string constant
vnet.c: In function `vnet_guestif_recv':
vnet.c:927: dereferencing pointer to incomplete type
vnet.c:928: dereferencing pointer to incomplete type
vnet.c:929: dereferencing pointer to incomplete type
vnet.c:931: `KERN_INFO' undeclared (first use in this function)
vnet.c:931: parse error before string constant
vnet.c:934: dereferencing pointer to incomplete type
vnet.c:935: dereferencing pointer to incomplete type
vnet.c:940: dereferencing pointer to incomplete type
vnet.c:941: dereferencing pointer to incomplete type
vnet.c:942: dereferencing pointer to incomplete type
vnet.c:943: parse error before string constant
vnet.c:944: parse error before string constant
vnet.c:944: warning: left-hand operand of comma expression has no effect
vnet.c:944: warning: left-hand operand of comma expression has no effect
vnet.c:944: warning: left-hand operand of comma expression has no effect
vnet.c:944: warning: left-hand operand of comma expression has no effect
vnet.c:944: warning: left-hand operand of comma expression has no effect
vnet.c:944: warning: left-hand operand of comma expression has no effect
vnet.c:944: parse error before ')' token
vnet.c:945: parse error before string constant
vnet.c:945: warning: left-hand operand of comma expression has no effect
vnet.c:945: warning: left-hand operand of comma expression has no effect
vnet.c:945: warning: left-hand operand of comma expression has no effect
vnet.c:945: warning: left-hand operand of comma expression has no effect
vnet.c:945: warning: left-hand operand of comma expression has no effect
vnet.c:945: warning: left-hand operand of comma expression has no effect
vnet.c:945: parse error before ')' token
vnet.c:946: dereferencing pointer to incomplete type
vnet.c:950: warning: implicit declaration of function `skb_queue_len'
vnet.c:950: dereferencing pointer to incomplete type
vnet.c:951: dereferencing pointer to incomplete type
vnet.c:955: dereferencing pointer to incomplete type
vnet.c:963: warning: implicit declaration of function `skb_queue_tail'
vnet.c:963: dereferencing pointer to incomplete type
vnet.c:981: warning: implicit declaration of function `wake_up'
vnet.c:981: dereferencing pointer to incomplete type
vnet.c:986: warning: implicit declaration of function `dev_kfree_skb'
vnet.c: In function `vnet_guestif_read':
vnet.c:998: warning: implicit declaration of function `DECLARE_WAITQUEUE'
vnet.c:998: `wait' undeclared (first use in this function)
vnet.c:998: `current' undeclared (first use in this function)
vnet.c:1001: `KERN_INFO' undeclared (first use in this function)
vnet.c:1001: parse error before string constant
vnet.c:1004: warning: implicit declaration of function `add_wait_queue'
vnet.c:1004: dereferencing pointer to incomplete type
vnet.c:1008: warning: implicit declaration of function `skb_peek'
vnet.c:1008: dereferencing pointer to incomplete type
vnet.c:1008: warning: assignment makes pointer from integer without a cast
vnet.c:1009: dereferencing pointer to incomplete type
vnet.c:1015: warning: implicit declaration of function `skb_dequeue'
vnet.c:1015: dereferencing pointer to incomplete type
vnet.c:1015: warning: assignment makes pointer from integer without a cast
vnet.c:1025: dereferencing pointer to incomplete type
vnet.c:1030: warning: implicit declaration of function `signal_pending'
vnet.c:1033: warning: implicit declaration of function `schedule'
vnet.c:1036: warning: implicit declaration of function `remove_wait_queue'
vnet.c:1036: dereferencing pointer to incomplete type
vnet.c:1043: dereferencing pointer to incomplete type
vnet.c:1045: dereferencing pointer to incomplete type
vnet.c:1045: dereferencing pointer to incomplete type
vnet.c:1046: dereferencing pointer to incomplete type
vnet.c:1050: parse error before string constant
vnet.c: In function `vnet_guestif_write':
vnet.c:1064: `KERN_INFO' undeclared (first use in this function)
vnet.c:1064: parse error before string constant
vnet.c:1077: warning: implicit declaration of function `dev_alloc_skb'
vnet.c:1077: warning: assignment makes pointer from integer without a cast
vnet.c:1096: dereferencing pointer to incomplete type
vnet.c:1101: dereferencing pointer to incomplete type
vnet.c:1102: dereferencing pointer to incomplete type
vnet.c:1114: dereferencing pointer to incomplete type
vnet.c:1116: parse error before string constant
vnet.c: In function `vnet_nut_recv':
vnet.c:1124: dereferencing pointer to incomplete type
vnet.c:1124: dereferencing pointer to incomplete type
vnet.c:1125: dereferencing pointer to incomplete type
vnet.c:1125: dereferencing pointer to incomplete type
vnet.c: In function `vnet_guestif_ioctl':
vnet.c:1137: `KERN_INFO' undeclared (first use in this function)
vnet.c:1137: parse error before string constant
vnet.c: At top level:
vnet.c:1145: parse error before "poll_table"
vnet.c:1146: warning: function declaration isn't a prototype
vnet.c: In function `vnet_guestif_poll':
vnet.c:1147: `bolt' undeclared (first use in this function)
vnet.c:1149: warning: implicit declaration of function `poll_wait'
vnet.c:1149: `filp' undeclared (first use in this function)
vnet.c:1149: dereferencing pointer to incomplete type
vnet.c:1149: `wait' undeclared (first use in this function)
vnet.c:1150: warning: implicit declaration of function `skb_queue_empty'
vnet.c:1150: dereferencing pointer to incomplete type
vnet.c: In function `vnet_guestif_procread':
vnet.c:1181: dereferencing pointer to incomplete type
vnet.c:1187: dereferencing pointer to incomplete type
vnet.c:1188: dereferencing pointer to incomplete type
vnet.c:1189: dereferencing pointer to incomplete type
vnet.c:1192: dereferencing pointer to incomplete type
vnet.c:1193: dereferencing pointer to incomplete type
vnet.c:1194: dereferencing pointer to incomplete type
vnet.c: In function `vnet_guestif_create':
vnet.c:1211: `KERN_INFO' undeclared (first use in this function)
vnet.c:1211: parse error before string constant
vnet.c:1213: sizeof applied to an incomplete type
vnet.c:1213: `GFP_KERNEL' undeclared (first use in this function)
vnet.c:1222: dereferencing pointer to incomplete type
vnet.c:1223: dereferencing pointer to incomplete type
vnet.c:1224: dereferencing pointer to incomplete type
vnet.c:1225: dereferencing pointer to incomplete type
vnet.c:1226: dereferencing pointer to incomplete type
vnet.c:1226: dereferencing pointer to incomplete type
vnet.c:1227: dereferencing pointer to incomplete type
vnet.c:1228: dereferencing pointer to incomplete type
vnet.c:1229: dereferencing pointer to incomplete type
vnet.c:1230: dereferencing pointer to incomplete type
vnet.c:1231: dereferencing pointer to incomplete type
vnet.c:1232: dereferencing pointer to incomplete type
vnet.c:1233: dereferencing pointer to incomplete type
vnet.c:1235: dereferencing pointer to incomplete type
vnet.c:1236: dereferencing pointer to incomplete type
vnet.c:1237: dereferencing pointer to incomplete type
vnet.c:1238: dereferencing pointer to incomplete type
vnet.c:1239: dereferencing pointer to incomplete type
vnet.c:1240: dereferencing pointer to incomplete type
vnet.c:1241: dereferencing pointer to incomplete type
vnet.c:1247: dereferencing pointer to incomplete type
vnet.c:1248: dereferencing pointer to incomplete type
vnet.c:1253: dereferencing pointer to incomplete type
vnet.c:1254: dereferencing pointer to incomplete type
vnet.c:1261: dereferencing pointer to incomplete type
vnet.c:1264: dereferencing pointer to incomplete type
vnet.c:1264: dereferencing pointer to incomplete type
vnet.c:1265: dereferencing pointer to incomplete type
vnet.c:1265: dereferencing pointer to incomplete type
vnet.c:1267: dereferencing pointer to incomplete type
vnet.c:1268: dereferencing pointer to incomplete type
vnet.c:1269: dereferencing pointer to incomplete type
vnet.c:1270: dereferencing pointer to incomplete type
vnet.c:1272: warning: implicit declaration of function `skb_queue_head_init'
vnet.c:1272: dereferencing pointer to incomplete type
vnet.c:1273: dereferencing pointer to incomplete type
vnet.c:1275: dereferencing pointer to incomplete type
vnet.c:1279: parse error before string constant
vnet.c: In function `vnet_guestif_free':
vnet.c:1304: `KERN_INFO' undeclared (first use in this function)
vnet.c:1304: parse error before string constant
vnet.c:1307: dereferencing pointer to incomplete type
vnet.c:1307: warning: assignment makes pointer from integer without a cast
vnet.c:1321: dereferencing pointer to incomplete type
vnet.c:1322: dereferencing pointer to incomplete type
vnet.c:1327: parse error before string constant
vnet.c: In function `vnet_nut_release':
vnet.c:1335: warning: implicit declaration of function `spin_lock_bh'
vnet.c:1337: dereferencing pointer to incomplete type
vnet.c:1338: dereferencing pointer to incomplete type
vnet.c:1340: dereferencing pointer to incomplete type
vnet.c:1341: dereferencing pointer to incomplete type
vnet.c:1343: dereferencing pointer to incomplete type
vnet.c:1344: dereferencing pointer to incomplete type
vnet.c:1347: warning: implicit declaration of function `spin_unlock_bh'
vnet.c: In function `vnet_bolt_addtolist':
vnet.c:1353: warning: implicit declaration of function `spin_lock'
vnet.c:1358: warning: implicit declaration of function `spin_unlock'
vnet.c: In function `vnet_bolt_free':
vnet.c:1379: `KERN_INFO' undeclared (first use in this function)
vnet.c:1379: parse error before string constant
vnet.c: In function `vnet_nut_print':
vnet.c:1391: dereferencing pointer to incomplete type
vnet.c:1394: dereferencing pointer to incomplete type
vnet.c: In function `vnet_hub_grabnuts':
vnet.c:1459: dereferencing pointer to incomplete type
vnet.c:1460: dereferencing pointer to incomplete type
vnet.c:1461: dereferencing pointer to incomplete type
vnet.c:1471: dereferencing pointer to incomplete type
vnet.c:1471: dereferencing pointer to incomplete type
vnet.c:1476: dereferencing pointer to incomplete type
vnet.c:1477: dereferencing pointer to incomplete type
vnet.c: In function `vnet_hub_getattachednuts':
vnet.c:1494: dereferencing pointer to incomplete type
vnet.c:1498: dereferencing pointer to incomplete type
vnet.c: In function `vnet_hub_isbridged':
vnet.c:1503: `KERN_INFO' undeclared (first use in this function)
vnet.c:1503: parse error before string constant
vnet.c: In function `vnet_isbridged':
vnet.c:1510: dereferencing pointer to incomplete type
vnet.c:1510: dereferencing pointer to incomplete type
vnet.c:1511: dereferencing pointer to incomplete type
vnet.c:1511: dereferencing pointer to incomplete type
vnet.c: In function `vnet_hub_boltschanged':
vnet.c:1520: `KERN_INFO' undeclared (first use in this function)
vnet.c:1520: parse error before string constant
vnet.c: In function `vnet_boltschanged':
vnet.c:1526: dereferencing pointer to incomplete type
vnet.c:1527: dereferencing pointer to incomplete type
vnet.c: In function `vnet_nut_free':
vnet.c:1533: dereferencing pointer to incomplete type
vnet.c:1534: dereferencing pointer to incomplete type
vnet.c: In function `vnet_hub_free_nut':
vnet.c:1539: dereferencing pointer to incomplete type
vnet.c:1541: `KERN_INFO' undeclared (first use in this function)
vnet.c:1541: parse error before string constant
vnet.c:1543: dereferencing pointer to incomplete type
vnet.c:1544: `KERN_DEBUG' undeclared (first use in this function)
vnet.c:1544: parse error before string constant
vnet.c:1555: dereferencing pointer to incomplete type
vnet.c: In function `vnet_hub_cycledetect':
vnet.c:1561: `KERN_INFO' undeclared (first use in this function)
vnet.c:1561: parse error before string constant
vnet.c: In function `vnet_hub_disconnect':
vnet.c:1584: `KERN_INFO' undeclared (first use in this function)
vnet.c:1584: parse error before string constant
vnet.c:1588: dereferencing pointer to incomplete type
vnet.c:1594: dereferencing pointer to incomplete type
vnet.c:1595: dereferencing pointer to incomplete type
vnet.c:1597: dereferencing pointer to incomplete type
vnet.c:1598: dereferencing pointer to incomplete type
vnet.c:1604: dereferencing pointer to incomplete type
vnet.c:1605: parse error before string constant
vnet.c:1607: warning: implicit declaration of function `wait_event'
vnet.c:1607: dereferencing pointer to incomplete type
vnet.c:1607: dereferencing pointer to incomplete type
vnet.c:1612: dereferencing pointer to incomplete type
vnet.c:1614: parse error before string constant
vnet.c:1619: dereferencing pointer to incomplete type
vnet.c:1620: dereferencing pointer to incomplete type
vnet.c:1636: parse error before string constant
vnet.c: In function `vnet_hub_connect':
vnet.c:1647: `KERN_INFO' undeclared (first use in this function)
vnet.c:1647: parse error before string constant
vnet.c:1647: warning: left-hand operand of comma expression has no effect
vnet.c:1647: warning: left-hand operand of comma expression has no effect
vnet.c:1647: parse error before ')' token
vnet.c:1656: dereferencing pointer to incomplete type
vnet.c:1656: dereferencing pointer to incomplete type
vnet.c:1678: dereferencing pointer to incomplete type
vnet.c:1679: dereferencing pointer to incomplete type
vnet.c:1682: dereferencing pointer to incomplete type
vnet.c:1683: dereferencing pointer to incomplete type
vnet.c:1685: dereferencing pointer to incomplete type
vnet.c:1686: dereferencing pointer to incomplete type
vnet.c:1704: parse error before string constant
vnet.c:1704: warning: left-hand operand of comma expression has no effect
vnet.c:1704: parse error before ')' token
vnet.c: In function `vnet_hub_recv':
vnet.c:1713: dereferencing pointer to incomplete type
vnet.c:1719: `KERN_INFO' undeclared (first use in this function)
vnet.c:1719: parse error before string constant
vnet.c:1721: dereferencing pointer to incomplete type
vnet.c:1726: dereferencing pointer to incomplete type
vnet.c:1727: dereferencing pointer to incomplete type
vnet.c:1729: warning: implicit declaration of function `skb_clone'
vnet.c:1729: `GFP_ATOMIC' undeclared (first use in this function)
vnet.c:1729: warning: assignment makes pointer from integer without a cast
vnet.c:1731: dereferencing pointer to incomplete type
vnet.c:1732: dereferencing pointer to incomplete type
vnet.c:1732: dereferencing pointer to incomplete type
vnet.c:1738: parse error before string constant
vnet.c:1748: parse error before string constant
vnet.c: In function `vnet_hub_alloc_nut':
vnet.c:1760: `KERN_INFO' undeclared (first use in this function)
vnet.c:1760: parse error before string constant
vnet.c:1760: warning: left-hand operand of comma expression has no effect
vnet.c:1760: parse error before ')' token
vnet.c:1763: parse error before string constant
vnet.c:1764: warning: left-hand operand of comma expression has no effect
vnet.c:1764: parse error before ')' token
vnet.c:1766: `GFP_KERNEL' undeclared (first use in this function)
vnet.c:1768: parse error before string constant
vnet.c:1771: parse error before string constant
vnet.c:1780: dereferencing pointer to incomplete type
vnet.c:1781: dereferencing pointer to incomplete type
vnet.c:1782: dereferencing pointer to incomplete type
vnet.c:1783: dereferencing pointer to incomplete type
vnet.c:1784: dereferencing pointer to incomplete type
vnet.c:1785: dereferencing pointer to incomplete type
vnet.c:1786: dereferencing pointer to incomplete type
vnet.c:1787: dereferencing pointer to incomplete type
vnet.c:1790: dereferencing pointer to incomplete type
vnet.c:1792: dereferencing pointer to incomplete type
vnet.c:1793: dereferencing pointer to incomplete type
vnet.c:1794: dereferencing pointer to incomplete type
vnet.c:1795: dereferencing pointer to incomplete type
vnet.c:1796: dereferencing pointer to incomplete type
vnet.c:1809: parse error before string constant
vnet.c:1813: parse error before string constant
vnet.c:1813: warning: left-hand operand of comma expression has no effect
vnet.c:1813: parse error before ')' token
vnet.c:1814: dereferencing pointer to incomplete type
vnet.c:1836: dereferencing pointer to incomplete type
vnet.c:1837: dereferencing pointer to incomplete type
vnet.c:1838: dereferencing pointer to incomplete type
vnet.c:1839: parse error before string constant
vnet.c:1843: parse error before string constant
vnet.c: In function `vnet_hub_init':
vnet.c:1850: `KERN_INFO' undeclared (first use in this function)
vnet.c:1850: parse error before string constant
vnet.c:1855: parse error before string constant
vnet.c: In function `vnet_hub_free':
vnet.c:1861: `KERN_INFO' undeclared (first use in this function)
vnet.c:1861: parse error before string constant
vnet.c:1865: parse error before string constant
vnet.c:1865: warning: left-hand operand of comma expression has no effect
vnet.c:1865: parse error before ')' token
vnet.c:1869: parse error before string constant
vnet.c:1869: warning: left-hand operand of comma expression has no effect
vnet.c:1869: parse error before ')' token
vnet.c: At top level:
vnet.c:1872: variable `vnet_fops' has initializer but incomplete type
vnet.c:1873: unknown field `owner' specified in initializer
vnet.c:1873: warning: excess elements in struct initializer
vnet.c:1873: warning: (near initialization for `vnet_fops')
vnet.c:1874: unknown field `read' specified in initializer
vnet.c:1874: warning: excess elements in struct initializer
vnet.c:1874: warning: (near initialization for `vnet_fops')
vnet.c:1875: unknown field `write' specified in initializer
vnet.c:1875: warning: excess elements in struct initializer
vnet.c:1875: warning: (near initialization for `vnet_fops')
vnet.c:1876: unknown field `poll' specified in initializer
vnet.c:1876: warning: excess elements in struct initializer
vnet.c:1876: warning: (near initialization for `vnet_fops')
vnet.c:1877: unknown field `ioctl' specified in initializer
vnet.c:1877: warning: excess elements in struct initializer
vnet.c:1877: warning: (near initialization for `vnet_fops')
vnet.c:1878: unknown field `open' specified in initializer
vnet.c:1878: warning: excess elements in struct initializer
vnet.c:1878: warning: (near initialization for `vnet_fops')
vnet.c:1879: unknown field `release' specified in initializer
vnet.c:1879: warning: excess elements in struct initializer
vnet.c:1879: warning: (near initialization for `vnet_fops')
vnet.c:1880: unknown field `fasync' specified in initializer
vnet.c:1881: warning: excess elements in struct initializer
vnet.c:1881: warning: (near initialization for `vnet_fops')
vnet.c: In function `vnet_init':
vnet.c:1892: `KERN_INFO' undeclared (first use in this function)
vnet.c:1892: parse error before string constant
vnet.c:1896: warning: implicit declaration of function `spin_lock_init'
vnet.c:1900: `KERN_ERR' undeclared (first use in this function)
vnet.c:1900: parse error before string constant
vnet.c:1903: parse error before string constant
vnet.c:1906: parse error before string constant
vnet.c:1909: parse error before string constant
vnet.c:1910: parse error before string constant
vnet.c: In function `vnet_cleanup':
vnet.c:1919: `KERN_INFO' undeclared (first use in this function)
vnet.c:1919: parse error before string constant
vnet.c:1921: parse error before string constant
vnet.c:1922: parse error before string constant
vnet.c: At top level:
if_vnet.h:208: storage size of `readq' isn't known
if_vnet.h:209: storage size of `dev' isn't known
vnet.c:1872: storage size of `vnet_fops' isn't known
vnet.c:1334: warning: `vnet_nut_release' defined but not used
vnet.c:1488: warning: `vnet_hub_getattachednuts' defined but not used
vnet.c:1452: warning: `vnet_hub_grabnuts' defined but not used
vnet.c:1509: warning: `vnet_isbridged' defined but not used
vnet.c:1525: warning: `vnet_boltschanged' defined but not used
vnet.c:1532: warning: `vnet_nut_free' defined but not used
make: *** Error 1 请用标准的linux内核源码2.4.x,不要用redhat提供的内核源码。
修改一下Makefile文件就可以了
将原来的Makefile文件中的HEADER_DIR = #/usr/src/linux/include
改为
HEADER_DIR = /usr/src/linux-2.4.20-8/include
就可以了 Thank you! 同谢.
看来调试的问题一定要细心.Makefile一定要看仔细. linux-2.4.20-8是一个目录名称么 是 redhat9自己的linux内核源码目录
页:
[1]