debug_info_t *debug_register_mode(const char *name, int pages_per_area, int nr_areas, int buf_size, mode_t mode, uid_t uid, gid_t gid) { debug_info_t *rc = NULL; /* Since debugfs currently does not support uid/gid other than root, */ /* we do not allow gid/uid != 0 until we get support for that. */ if ((uid != 0) || (gid != 0)) printk(KERN_WARNING "debug: Warning - Currently only uid/gid " "= 0 are supported. Using root as owner now!"); if (!initialized) BUG(); mutex_lock(&debug_mutex); /* create new debug_info */ rc = debug_info_create(name, pages_per_area, nr_areas, buf_size, mode); if(!rc) goto out; debug_register_view(rc, &debug_level_view); debug_register_view(rc, &debug_flush_view); debug_register_view(rc, &debug_pages_view); out: if (!rc){ printk(KERN_ERR "debug: debug_register failed for %s\n",name); } mutex_unlock(&debug_mutex); return rc; }
debug_info_t* debug_register (char *name, int pages_per_area, int nr_areas, int buf_size) { debug_info_t *rc = NULL; if (!initialized) BUG(); down(&debug_lock); /* create new debug_info */ rc = debug_info_create(name, pages_per_area, nr_areas, buf_size); if(!rc) goto out; debug_register_view(rc, &debug_level_view); debug_register_view(rc, &debug_flush_view); debug_register_view(rc, &debug_pages_view); out: if (!rc){ printk(KERN_ERR "debug: debug_register failed for %s\n",name); } up(&debug_lock); return rc; }