* - this function has been shamelessly adapted from the ext3 fs which shamelessly adapted it from
* the msdos fs
*/
-static int afs_super_parse_options(struct afs_super_info *as, char *options, char **devname)
+static int afs_super_parse_options(struct afs_super_info *as, char *options, const char ** devname)
{
char *key, *value;
int ret;
return ret;
} /* end afs_super_parse_options() */
+struct fill_super_options {
+ const char *dev_name;
+ void *options;
+};
+
/*****************************************************************************/
/*
* fill in the superblock
struct dentry *root = NULL;
struct inode *inode = NULL;
afs_fid_t fid;
- void **data = _data;
- char *options, *devname;
+ struct fill_super_options *data = _data;
+ const char *devname;
+ char *options;
int ret;
_enter("");
_leave(" = -EINVAL");
return -EINVAL;
}
- devname = data[0];
- options = data[1];
+ devname = data->dev_name;
+ options = data->options;
if (options)
options[PAGE_SIZE-1] = 0;
const char *dev_name, void *options)
{
struct super_block *sb;
- void *data[2] = { dev_name, options };
+ struct fill_super_options data = { dev_name, options };
int ret;
_enter(",,%s,%p",dev_name,options);
}
/* allocate a deviceless superblock */
- sb = get_sb_nodev(fs_type,flags,data,afs_fill_super);
+ sb = get_sb_nodev(fs_type, flags, &data, afs_fill_super);
if (IS_ERR(sb)) {
afscm_stop();
return sb;
* - Rule 2: If parent volume is R/O, then mount R/O volume by preference, R/W if not available
* - Rule 3: If parent volume is R/W, then only mount R/W volume unless explicitly told otherwise
*/
-int afs_volume_lookup(char *name, int rwparent, afs_volume_t **_volume)
+int afs_volume_lookup(const char *name, int rwparent, afs_volume_t **_volume)
{
afs_vlocation_t *vlocation = NULL;
afs_voltype_t type;
struct rw_semaphore server_sem; /* lock for accessing current server */
};
-extern int afs_volume_lookup(char *name, int ro, afs_volume_t **_volume);
+extern int afs_volume_lookup(const char *name, int ro, afs_volume_t **_volume);
#define afs_get_volume(V) do { atomic_inc(&(V)->usage); } while(0)