>> 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