Re: [PATCH] register_filesystem() must return -EEXIST if the filesystemwith the same name is already registered
From: Hareesh Nagarajan
Date: Wed Nov 02 2005 - 12:38:32 EST
Coywolf Qi Hunt wrote:
On Wed, Nov 02, 2005 at 02:42:12AM -0600, Hareesh Nagarajan wrote:
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 the find_filesystem() function will return
NON-NULL otherwise it will return NULL.
Hence, register_filesystem() should return EEXIST instead of EBUSY.
Returning EBUSY is misleading (unless of course I'm missing something
obvious) to the caller of register_filesystem().
This `slot' is buy, so EBUSY makes sense. Filesytem is not file, hence
EEXIST doesn't apply IMHO.
Earlier this week, my calls to register_filesystem(struct
file_system_type * fs) were failing returning an -EBUSY. Now I didn't
know if it was failing because of:
if (fs->next) return -EBUSY;
Or:
p = find_filesystem(fs->name);
if (*p) res = -EBUSY;
...
return res;
It is for this reason I thought it would make sense to differentiate
between the two points of failure.
Hareesh Nagarajan
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/