If we have a look at the register_filesystem() function defined in
fs/filesystems.c, we see that if a filesystem with a same name has
already been registered then find_filesystem will return NON-NULL
otherwise it will return NULL. So shouldn't 'res' be set to -EEXIST
instead of -EBUSY? What is the reasoning behind register_filesystem
returning -EBUSY for this particular condition?
int register_filesystem(struct file_system_type * fs) { ...
struct file_system_type ** p;
...
p = find_filesystem(fs->name);
if (*p)
res = -EBUSY; <-- Shouldn't this be -EEXIST?
else
*p = fs;
...
return res;
}
Thanks,
Hareesh Nagarajan