Mercurial > nomad > old-fuse
changeset 135:2b39a5cf338b
objstore: allow a vg lookup by name
Signed-off-by: Josef 'Jeff' Sipek <jeffpc@josefsipek.net>
author | Josef 'Jeff' Sipek <jeffpc@josefsipek.net> |
---|---|
date | Sun, 18 Oct 2015 10:29:36 -0400 |
parents | b1c7d4b13ce2 |
children | 0687dc17a0f5 |
files | src/objstore/include/nomad/objstore.h src/objstore/vg.c |
diffstat | 2 files changed, 15 insertions(+), 0 deletions(-) [+] |
line wrap: on
line diff
--- a/src/objstore/include/nomad/objstore.h Sun Oct 18 10:26:30 2015 -0400 +++ b/src/objstore/include/nomad/objstore.h Sun Oct 18 10:29:36 2015 -0400 @@ -60,6 +60,7 @@ /* volume group management */ extern struct objstore *objstore_vg_create(const char *name); +extern struct objstore *objstore_vg_lookup(const char *name); /* volume management */ extern struct objstore_vol *objstore_vol_create(struct objstore *vg,
--- a/src/objstore/vg.c Sun Oct 18 10:26:30 2015 -0400 +++ b/src/objstore/vg.c Sun Oct 18 10:29:36 2015 -0400 @@ -23,6 +23,7 @@ #include <stddef.h> #include <nomad/error.h> +#include <nomad/iter.h> #include <nomad/objstore.h> #include <nomad/objstore_impl.h> @@ -77,3 +78,16 @@ list_insert_tail(&vg->vols, vol); mxunlock(&vg->lock); } + +struct objstore *objstore_vg_lookup(const char *name) +{ + struct objstore *vg; + + mxlock(&vgs_lock); + list_for_each(&vgs, vg) + if (!strcmp(name, vg->name)) + break; + mxunlock(&vgs_lock); + + return vg; +}