-----------------------------------------------------------------------
static int
create_procfs_dir(struct proc_dir_entry *entry, const char *name,
struct proc_dir_entry *parent)
{
entry = proc_mkdir(name, parent);
if (entry == NULL) {
/*Failed when creating file */
printk(KERN_ALERT "Error while creating %s directory\n",
name);
return -1;
}
Print the value of variable entry in create_procfs_dir() in the beginning and before return. You would understand. It is a problem with your understanding of C pointers. If you did not, change the create_procfs_dir() first param to struct proc_dir_entry ** and pass the address of the variable.
All the best, Om.
-- Kernelnewbies: Help each other learn about the Linux kernel. Archive: http://mail.nl.linux.org/kernelnewbies/ FAQ: http://kernelnewbies.org/faq/