Lines Matching refs:vldb
66 * Allocate a volume record and load it up from a vldb record.
69 struct afs_vldb_entry *vldb,
76 for (i = 0; i < vldb->nr_servers; i++)
77 if (vldb->fs_mask[i] & type_mask)
84 volume->vid = vldb->vid[params->type];
89 volume->name_len = vldb->name_len;
95 memcpy(volume->name, vldb->name, vldb->name_len + 1);
97 slist = afs_alloc_server_list(params->cell, params->key, vldb, type_mask);
119 struct afs_vldb_entry *vldb,
124 candidate = afs_alloc_volume(params, vldb, type_mask);
142 struct afs_vldb_entry *vldb = ERR_PTR(-EDESTADDRREQ);
150 vldb = afs_vl_get_entry_by_name_u(&vc, volname, volnamesz);
154 return ret < 0 ? ERR_PTR(ret) : vldb;
183 struct afs_vldb_entry *vldb;
187 vldb = afs_vl_lookup_vldb(params->cell, params->key,
189 if (IS_ERR(vldb))
190 return ERR_CAST(vldb);
192 if (test_bit(AFS_VLDB_QUERY_ERROR, &vldb->flags)) {
193 volume = ERR_PTR(vldb->error);
200 if (!(vldb->flags & type_mask))
202 } else if (test_bit(AFS_VLDB_HAS_RO, &vldb->flags)) {
204 } else if (test_bit(AFS_VLDB_HAS_RW, &vldb->flags)) {
211 volume = afs_lookup_volume(params, vldb, type_mask);
214 kfree(vldb);
304 struct afs_vldb_entry *vldb;
315 vldb = afs_vl_lookup_vldb(volume->cell, key, idbuf, idsz);
316 if (IS_ERR(vldb)) {
317 ret = PTR_ERR(vldb);
322 if (vldb->name_len != volume->name_len ||
323 memcmp(vldb->name, volume->name, vldb->name_len) != 0) {
325 memcpy(volume->name, vldb->name, AFS_MAXVOLNAME);
326 volume->name_len = vldb->name_len;
331 vldb, (1 << volume->type));
356 kfree(vldb);