The convenience function
static inline *create_proc_info_entry( const char *name, mode_t mode, get_info_t *get_info);
is a wrapper to proc_create_entry again:
static 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)
{
struct proc_dir_entry *res = create_proc_entry(
name, mode, base);
if (res) res->get_info=get_info;
return res;
}
The get_info method itself is a special read method that is not a part of the fops (file operations), it is special in that it is bounded at create time to a defined length; this is visible in the get_info_t type.