>> Looked into sources of kernel 2.3.39 - has to be 
>> 
>>     if (!create_proc_info_entry("freemware", 0, NULL, (get_info_t 
>*)fmw_read_procmem))
>> 
>> in host-linux.c.
>
>No!  The argument types really changed -- this is a *bug*, and it is just
>due to luck (and the peculiarities of the function calling convention used
>by Linux on Intel) that this doesn't crash.  Do *not* silence the compiler
>warning that points out the bug, *fix* the bug ;-)
>
>Note the function argument types 
>  Linux 2.0.36:   int (*get_info)(char *, char **, off_t, int, int);
>  Linux 2.3.29:   typedef int (get_info_t)(char *, char **, off_t, int);
>
>2.3.29 has one argument less.
May be. I'm referring to Kernel 2.3.39. In linux/include/linux/proc_fs.h is
written:

extern inline struct proc_dir_entry *create_proc_info_entry(const char *name,
        mode_t mode, struct proc_dir_entry *base, get_info_t *get_info)

Means: four parameters, last is get_info_t *. My failure was that I sayed nothing
about Linux version - thought it was in 2.3.39 like in 2.3.29... ash on my head.. :(
Perhaps several of you do have several linux versions, please have a look into
sources and tell me about create_proc_info_entry...

jens

Reply via email to