free(nodev);
}
+void add_nodev(unsigned long minor, const char *filesystem)
+{
+ struct nodev *nodev = new_nodev(minor, filesystem);
+ unsigned long slot = nodev->minor % NODEV_TABLE_SIZE;
+
+ list_add_tail(&nodev->nodevs, &nodev_table.tables[slot]);
+}
+
static void initialize_nodevs(void)
{
int i;
while (fgets(line, sizeof(line), mnt)) {
unsigned long major, minor;
char filesystem[256];
- struct nodev *nodev;
- int slot;
-
/* 23 61 0:22 / /sys rw,nosuid,nodev,noexec,relatime shared:2 - sysfs sysfs rw,seclabel */
if(sscanf(line, "%*d %*d %lu:%lu %*s %*s %*s %*[^-] - %s %*[^\n]",
if (get_nodev_filesystem(minor))
continue;
- nodev = new_nodev(minor, filesystem);
- slot = minor % NODEV_TABLE_SIZE;
-
- list_add_tail(&nodev->nodevs, &nodev_table.tables[slot]);
+ add_nodev(minor, filesystem);
}
}
const char *get_chrdrv(unsigned long major);
const char *get_miscdev(unsigned long minor);
const char *get_nodev_filesystem(unsigned long minor);
+void add_nodev(unsigned long minor, const char *filesystem);
static inline void xstrappend(char **a, const char *b)
{