[tulip] maybe its me, but I can't seem to get tulip.c to compile

Dave Turner dkturner@qwest.net
Sun, 21 Jan 2001 12:15:03 -0800


Hi

I'm trying to compile tulip.c to address the "skbuff" problems I've been
having.  Hopefully I can fix the relative flakiness of this particular card.
Here is the relevant info.

tulip.c version: "tulip.c:v0.92t 1/15/2001  Written by Donald Becker
<becker@scyld.com>\n";

The NIC is a Linksys LNE100TX if it makes a difference.

I believe I have all the necessary files in place:

[root@dave modules]# ls -al
total 256
drwxr-xr-x    2 root     root         4096 Jan 15 11:26 ./
drwxr-x--x    5 root     adm          4096 Jan 13 19:19 ../
-rw-r--r--    1 root     root         6219 Nov  7 23:20 kern_compat.h
-rw-r--r--    1 root     root        14194 Jan 13 19:23 pci-scan.c
-rw-r--r--    1 root     root         2979 Oct  5 03:51 pci-scan.h
-rwxr-xr-x    1 root     root        40004 Jan 13 19:35 tulip-diag*
-rw-r--r--    1 root     root        54555 Jan 13 19:33 tulip-diag.c
-rw-r--r--    1 root     root       117420 Jan 15 11:25 tulip.c
[root@dave modules]#

here is the make command I'm using:
gcc -DMODULE -Wall -Wstrict-prototypes -O6 -c tulip.c

here's the last portion of the compile:

/usr/include/linux/fs.h:1011: parse error before `size_t'
/usr/include/linux/fs.h:1011: warning: data definition has no type or
storage cl
ass
/usr/include/linux/fs.h:1014: parse error before `char_write'
/usr/include/linux/fs.h:1014: parse error before `size_t'
/usr/include/linux/fs.h:1014: warning: data definition has no type or
storage cl
ass
/usr/include/linux/fs.h:1015: parse error before `block_write_Rf47c2311'
/usr/include/linux/fs.h:1015: parse error before `size_t'
/usr/include/linux/fs.h:1015: warning: data definition has no type or
storage cl
ass
/usr/include/linux/fs.h: In function `make_shadow_writable':
/usr/include/linux/fs.h:1028: dereferencing pointer to incomplete type
/usr/include/linux/fs.h:1028: dereferencing pointer to incomplete type
/usr/include/linux/fs.h:1029: dereferencing pointer to incomplete type
/usr/include/linux/fs.h:1030: dereferencing pointer to incomplete type
/usr/include/linux/fs.h:1030: dereferencing pointer to incomplete type
In file included from /usr/include/linux/tty.h:24,
                 from /usr/include/linux/sched.h:21,
                 from /usr/include/linux/mm.h:4,
                 from /usr/include/linux/slab.h:14,
                 from /usr/include/linux/malloc.h:4,
                 from tulip.c:148:
/usr/include/linux/tty_driver.h: At top level:
/usr/include/linux/tty_driver.h:169: parse error before `off_t'
In file included from /usr/include/linux/tty.h:25,
                 from /usr/include/linux/sched.h:21,
                 from /usr/include/linux/mm.h:4,
                 from /usr/include/linux/slab.h:14,
                 from /usr/include/linux/malloc.h:4,
                 from tulip.c:148:
/usr/include/linux/tty_ldisc.h:114: parse error before `ssize_t'
/usr/include/linux/tty_ldisc.h:114: warning: no semicolon at end of struct
or un
ion
/usr/include/linux/tty_ldisc.h:115: parse error before `*'
/usr/include/linux/tty_ldisc.h:116: parse error before `size_t'
/usr/include/linux/tty_ldisc.h:116: `ssize_t' declared as function returning
a f
unction
/usr/include/linux/tty_ldisc.h:116: warning: data definition has no type or
stor
age class
/usr/include/linux/tty_ldisc.h:117: parse error before `*'
/usr/include/linux/tty_ldisc.h:118: parse error before `size_t'
/usr/include/linux/tty_ldisc.h:118: `ssize_t' declared as function returning
a f
unction
/usr/include/linux/tty_ldisc.h:118: warning: data definition has no type or
stor
age class
/usr/include/linux/tty_ldisc.h:120: conflicting types for `ioctl'
/usr/include/linux/fs.h:630: previous declaration of `ioctl'
/usr/include/linux/tty_ldisc.h:123: conflicting types for `poll'
/usr/include/linux/fs.h:629: previous declaration of `poll'
/usr/include/linux/tty_ldisc.h:132: parse error before `}'
In file included from /usr/include/linux/sched.h:21,
                 from /usr/include/linux/mm.h:4,
                 from /usr/include/linux/slab.h:14,
                 from /usr/include/linux/malloc.h:4,
                 from tulip.c:148:
/usr/include/linux/tty.h:262: field `ldisc' has incomplete type
In file included from /usr/include/linux/sched.h:22,
                 from /usr/include/linux/mm.h:4,
                 from /usr/include/linux/slab.h:14,
                 from /usr/include/linux/malloc.h:4,
                 from tulip.c:148:
/usr/include/linux/sem.h:108: parse error before `key'
In file included from /usr/include/linux/signal.h:4,
                 from /usr/include/linux/sched.h:23,
                 from /usr/include/linux/mm.h:4,
                 from /usr/include/linux/slab.h:14,
                 from /usr/include/linux/malloc.h:4,
                 from tulip.c:148:
/usr/include/asm/signal.h:173: parse error before `size_t'
/usr/include/asm/signal.h:173: warning: no semicolon at end of struct or
union
/usr/include/asm/signal.h:174: warning: data definition has no type or
storage c
lass
In file included from /usr/include/linux/signal.h:5,
                 from /usr/include/linux/sched.h:23,
                 from /usr/include/linux/mm.h:4,
                 from /usr/include/linux/slab.h:14,
                 from /usr/include/linux/malloc.h:4,
                 from tulip.c:148:
/usr/include/asm/siginfo.h:26: parse error before `pid_t'
/usr/include/asm/siginfo.h:26: warning: no semicolon at end of struct or
union
/usr/include/asm/siginfo.h:26: warning: no semicolon at end of struct or
union
/usr/include/asm/siginfo.h:27: warning: no semicolon at end of struct or
union
/usr/include/asm/siginfo.h:28: warning: data definition has no type or
storage c
lass
/usr/include/asm/siginfo.h:38: parse error before `pid_t'
/usr/include/asm/siginfo.h:38: warning: no semicolon at end of struct or
union
/usr/include/asm/siginfo.h:39: warning: data definition has no type or
storage c
lass
/usr/include/asm/siginfo.h:41: parse error before `}'
/usr/include/asm/siginfo.h:41: warning: data definition has no type or
storage c
lass
/usr/include/asm/siginfo.h:45: parse error before `pid_t'
/usr/include/asm/siginfo.h:45: warning: no semicolon at end of struct or
union
/usr/include/asm/siginfo.h:46: warning: data definition has no type or
storage c
lass
/usr/include/asm/siginfo.h:48: parse error before `_utime'
/usr/include/asm/siginfo.h:48: warning: data definition has no type or
storage c
lass
/usr/include/asm/siginfo.h:49: parse error before `_stime'
/usr/include/asm/siginfo.h:49: warning: data definition has no type or
storage c
lass
/usr/include/asm/siginfo.h:50: warning: data definition has no type or
storage c
lass
/usr/include/asm/siginfo.h:62: parse error before `}'
/usr/include/asm/siginfo.h:62: warning: data definition has no type or
storage c
lass
/usr/include/asm/siginfo.h:63: parse error before `}'
/usr/include/asm/siginfo.h:63: warning: data definition has no type or
storage c
lass
In file included from /usr/include/linux/sched.h:23,
                 from /usr/include/linux/mm.h:4,
                 from /usr/include/linux/slab.h:14,
                 from /usr/include/linux/malloc.h:4,
                 from tulip.c:148:
/usr/include/linux/signal.h:15: parse error before `siginfo_t'
/usr/include/linux/signal.h:15: warning: no semicolon at end of struct or
union
In file included from /usr/include/linux/sched.h:71,
                 from /usr/include/linux/mm.h:4,
                 from /usr/include/linux/slab.h:14,
                 from /usr/include/linux/malloc.h:4,
                 from tulip.c:148:
/usr/include/linux/resource.h:22: field `ru_utime' has incomplete type
/usr/include/linux/resource.h:23: field `ru_stime' has incomplete type
In file included from /usr/include/linux/mm.h:4,
                 from /usr/include/linux/slab.h:14,
                 from /usr/include/linux/malloc.h:4,
                 from tulip.c:148:
/usr/include/linux/sched.h:137: parse error before `fd_set'
/usr/include/linux/sched.h:137: warning: no semicolon at end of struct or
union
/usr/include/linux/sched.h:138: warning: data definition has no type or
storage
class
/usr/include/linux/sched.h:139: parse error before `close_on_exec_init'
/usr/include/linux/sched.h:139: warning: data definition has no type or
storage
class
/usr/include/linux/sched.h:140: parse error before `open_fds_init'
/usr/include/linux/sched.h:140: warning: data definition has no type or
storage
class
/usr/include/linux/sched.h:142: parse error before `}'
/usr/include/linux/sched.h:262: parse error before `pid_t'
/usr/include/linux/sched.h:262: warning: no semicolon at end of struct or
union
/usr/include/linux/sched.h:263: warning: data definition has no type or
storage
class
/usr/include/linux/sched.h:264: parse error before `tty_old_pgrp'
/usr/include/linux/sched.h:264: warning: data definition has no type or
storage
class
/usr/include/linux/sched.h:265: parse error before `session'
/usr/include/linux/sched.h:265: warning: data definition has no type or
storage
class
/usr/include/linux/sched.h:293: parse error before `:'
/usr/include/linux/sched.h:295: warning: data definition has no type or
storage
class
/usr/include/linux/sched.h:296: parse error before `gid'
/usr/include/linux/sched.h:296: warning: data definition has no type or
storage
class
/usr/include/linux/sched.h:298: parse error before `groups'
/usr/include/linux/sched.h:298: warning: data definition has no type or
storage
class
/usr/include/linux/sched.h:328: parse error before `sas_ss_size'
/usr/include/linux/sched.h:328: warning: data definition has no type or
storage
class
/usr/include/linux/sched.h:336: parse error before `}'
/usr/include/linux/sched.h:408: field `task' has incomplete type
/usr/include/linux/sched.h: In function `hash_pid':
/usr/include/linux/sched.h:448: dereferencing pointer to incomplete type
/usr/include/linux/sched.h:448: dereferencing pointer to incomplete type
/usr/include/linux/sched.h:450: dereferencing pointer to incomplete type
/usr/include/linux/sched.h:451: dereferencing pointer to incomplete type
/usr/include/linux/sched.h:451: dereferencing pointer to incomplete type
/usr/include/linux/sched.h:453: dereferencing pointer to incomplete type
/usr/include/linux/sched.h: In function `unhash_pid':
/usr/include/linux/sched.h:458: dereferencing pointer to incomplete type
/usr/include/linux/sched.h:459: dereferencing pointer to incomplete type
/usr/include/linux/sched.h:459: dereferencing pointer to incomplete type
/usr/include/linux/sched.h:460: dereferencing pointer to incomplete type
/usr/include/linux/sched.h:460: dereferencing pointer to incomplete type
/usr/include/linux/sched.h: In function `find_task_by_pid':
/usr/include/linux/sched.h:467: dereferencing pointer to incomplete type
/usr/include/linux/sched.h:467: dereferencing pointer to incomplete type
In file included from /usr/include/linux/mm.h:4,
                 from /usr/include/linux/slab.h:14,
                 from /usr/include/linux/malloc.h:4,
                 from tulip.c:148:
/usr/include/linux/sched.h: At top level:
/usr/include/linux/sched.h:510: parse error before `grp'
/usr/include/linux/sched.h:511: parse error before `grp'
/usr/include/linux/sched.h:515: parse error before `siginfo_t'
/usr/include/linux/sched.h:518: parse error before `pid_t'
/usr/include/linux/sched.h:519: parse error before `pid_t'
/usr/include/linux/sched.h:520: parse error before `pid_t'
/usr/include/linux/sched.h:525: parse error before `int'
/usr/include/linux/sched.h:526: parse error before `int'
/usr/include/linux/sched.h:527: parse error before `int'
/usr/include/linux/sched.h:530: parse error before `*'
/usr/include/linux/sched.h: In function `signal_pending':
/usr/include/linux/sched.h:534: dereferencing pointer to incomplete type
/usr/include/linux/sched.h:535: warning: control reaches end of non-void
functio
n
/usr/include/linux/sched.h: In function `recalc_sigpending_R57723815':
/usr/include/linux/sched.h:549: dereferencing pointer to incomplete type
/usr/include/linux/sched.h:549: dereferencing pointer to incomplete type
/usr/include/linux/sched.h:552: dereferencing pointer to incomplete type
/usr/include/linux/sched.h:552: dereferencing pointer to incomplete type
/usr/include/linux/sched.h:553: dereferencing pointer to incomplete type
/usr/include/linux/sched.h:553: dereferencing pointer to incomplete type
/usr/include/linux/sched.h:554: dereferencing pointer to incomplete type
/usr/include/linux/sched.h:554: dereferencing pointer to incomplete type
/usr/include/linux/sched.h:555: dereferencing pointer to incomplete type
/usr/include/linux/sched.h:555: dereferencing pointer to incomplete type
/usr/include/linux/sched.h:558: dereferencing pointer to incomplete type
/usr/include/linux/sched.h:558: dereferencing pointer to incomplete type
/usr/include/linux/sched.h:559: dereferencing pointer to incomplete type
/usr/include/linux/sched.h:559: dereferencing pointer to incomplete type
/usr/include/linux/sched.h:562: dereferencing pointer to incomplete type
/usr/include/linux/sched.h:562: dereferencing pointer to incomplete type
/usr/include/linux/sched.h:565: dereferencing pointer to incomplete type
/usr/include/linux/sched.h: In function `on_sig_stack':
/usr/include/linux/sched.h:572: dereferencing pointer to incomplete type
/usr/include/linux/sched.h:573: dereferencing pointer to incomplete type
/usr/include/linux/sched.h:573: dereferencing pointer to incomplete type
/usr/include/linux/sched.h:574: warning: control reaches end of non-void
functio
n
/usr/include/linux/sched.h: In function `sas_ss_flags':
/usr/include/linux/sched.h:578: dereferencing pointer to incomplete type
/usr/include/linux/sched.h:580: warning: control reaches end of non-void
functio
n
/usr/include/linux/sched.h: In function `suser':
/usr/include/linux/sched.h:605: dereferencing pointer to incomplete type
/usr/include/linux/sched.h:606: dereferencing pointer to incomplete type
/usr/include/linux/sched.h: In function `fsuser':
/usr/include/linux/sched.h:614: dereferencing pointer to incomplete type
/usr/include/linux/sched.h:615: dereferencing pointer to incomplete type
/usr/include/linux/sched.h: In function `capable':
/usr/include/linux/sched.h:630: dereferencing pointer to incomplete type
/usr/include/linux/sched.h:635: dereferencing pointer to incomplete type
/usr/include/linux/sched.h: At top level:
/usr/include/linux/sched.h:660: parse error before `*'
/usr/include/linux/sched.h:660: warning: data definition has no type or
storage
class
/usr/include/linux/sched.h:662: parse error before `*'
/usr/include/linux/sched.h: In function `expand_files':
/usr/include/linux/sched.h:673: dereferencing pointer to incomplete type
/usr/include/linux/sched.h:678: dereferencing pointer to incomplete type
In file included from /usr/include/linux/slab.h:14,
                 from /usr/include/linux/malloc.h:4,
                 from tulip.c:148:
/usr/include/linux/mm.h: At top level:
/usr/include/linux/mm.h:101: parse error before `size_t'
/usr/include/linux/mm.h:102: parse error before `size_t'
/usr/include/linux/mm.h:103: parse error before `size_t'
/usr/include/linux/mm.h:104: parse error before `size_t'
/usr/include/linux/mm.h:322: parse error before `size_t'
/usr/include/linux/mm.h: In function `expand_stack':
/usr/include/linux/mm.h:381: dereferencing pointer to incomplete type
/usr/include/linux/mm.h:382: dereferencing pointer to incomplete type
/usr/include/linux/mm.h:384: dereferencing pointer to incomplete type
In file included from /usr/include/linux/malloc.h:4,
                 from tulip.c:148:
/usr/include/linux/slab.h: At top level:
/usr/include/linux/slab.h:50: warning: parameter names (without types) in
functi
on declaration
/usr/include/linux/slab.h:51: parse error before `size_t'
/usr/include/linux/slab.h:52: `kmem_cache_create_Rd1c0b4e6' declared as
function
 returning a function
/usr/include/linux/slab.h:53: parse error before `void'
/usr/include/linux/slab.h:59: parse error before `int'
/usr/include/linux/slab.h:61: parse error before `size_t'
In file included from /usr/include/linux/netdevice.h:133,
                 from tulip.c:151:
/usr/include/linux/skbuff.h:44: field `stamp' has incomplete type
In file included from tulip.c:151:
/usr/include/linux/netdevice.h:371: parse error before `off_t'
/usr/include/linux/netdevice.h: In function `dev_lock_wait':
/usr/include/linux/netdevice.h:413: dereferencing pointer to incomplete type
In file included from /usr/include/linux/vmalloc.h:7,
                 from /usr/include/asm/io.h:102,
                 from tulip.c:156:
/usr/include/asm/pgtable.h: In function `flush_tlb_mm':
/usr/include/asm/pgtable.h:60: dereferencing pointer to incomplete type
/usr/include/asm/pgtable.h: In function `flush_tlb_page':
/usr/include/asm/pgtable.h:67: dereferencing pointer to incomplete type
/usr/include/asm/pgtable.h: In function `flush_tlb_range':
/usr/include/asm/pgtable.h:74: dereferencing pointer to incomplete type
/usr/include/asm/pgtable.h: In function `set_pgdir':
/usr/include/asm/pgtable.h:558: dereferencing pointer to incomplete type
/usr/include/asm/pgtable.h:559: dereferencing pointer to incomplete type
/usr/include/asm/pgtable.h:561: dereferencing pointer to incomplete type
tulip.c: In function `strnlen':
/usr/include/asm/string.h:392: warning: `__res' might be used uninitialized
in t
his function
tulip.c: At top level:
/usr/include/linux/coda.h:261: storage size of `va_atime' isn't known
/usr/include/linux/coda.h:262: storage size of `va_mtime' isn't known
/usr/include/linux/coda.h:263: storage size of `va_ctime' isn't known
/usr/include/linux/coda.h:563: storage size of `attr' isn't known
/usr/include/linux/fs.h:444: storage size of `f_owner' isn't known
/usr/include/linux/reiserfs_fs_sb.h:188: storage size of `j_journal_list'
isn't
known
/usr/include/linux/sched.h:288: storage size of `times' isn't known
[root@dave modules]#


I've gotten the tulip.c to compile before but it was the version written in
April of 2000.  Maybe I'm doing something wrong now . . .  I'm not sure.
Any tips or advice is appreciated.

thanks
Dave