• Home
  • History
  • Annotate
  • Raw
  • Download
  • only in /freebsd-13-stable/sys/geom/linux_lvm/

Lines Matching defs:vg

97 	struct g_llvm_vg *vg;
104 vg = gp->softc;
106 if (vg == NULL) {
196 struct g_llvm_vg *vg;
209 vg = pp->geom->softc;
228 chunk_size = vg->vg_extentsize;
316 g_llvm_remove_disk(struct g_llvm_vg *vg, struct g_consumer *cp)
329 LIST_FOREACH(lv, &vg->vg_lvs, lv_next) {
357 struct g_llvm_vg *vg;
362 vg = gp->softc;
363 if (vg == NULL)
366 g_llvm_remove_disk(vg, cp);
367 g_llvm_destroy(vg, 1);
371 g_llvm_activate_lv(struct g_llvm_vg *vg, struct g_llvm_lv *lv)
380 gp = vg->vg_geom;
381 pp = g_new_providerf(gp, "linux_lvm/%s-%s", vg->vg_name, lv->lv_name);
382 pp->mediasize = vg->vg_extentsize * (off_t)lv->lv_extentcount;
383 pp->sectorsize = vg->vg_sectorsize;
395 g_llvm_add_disk(struct g_llvm_vg *vg, struct g_provider *pp, char *uuid)
406 LIST_FOREACH(pv, &vg->vg_pvs, pv_next) {
416 pv->pv_name, vg->vg_name);
420 pv->pv_start *= vg->vg_sectorsize;
421 gp = vg->vg_geom;
431 pp->name, vg->vg_name);
439 "sector size (%d)", pp->name, vg->vg_name,
459 LIST_FOREACH(lv, &vg->vg_lvs, lv_next) {
467 (off_t)sg->sg_pvstart * vg->vg_extentsize
477 sg->sg_pvoffset / vg->vg_sectorsize);
482 error = g_llvm_activate_lv(vg, lv);
497 g_llvm_free_vg(struct g_llvm_vg *vg)
504 while ((pv = LIST_FIRST(&vg->vg_pvs)) != NULL) {
508 while ((lv = LIST_FIRST(&vg->vg_lvs)) != NULL) {
516 LIST_REMOVE(vg, vg_next);
517 free(vg, M_GLLVM);
535 struct g_llvm_vg *vg;
558 vg = md.md_vg;
559 if (vg->vg_geom == NULL) {
561 gp = g_new_geomf(mp, "%s", vg->vg_name);
566 vg->vg_sectorsize = pp->sectorsize;
567 vg->vg_extentsize *= vg->vg_sectorsize;
568 vg->vg_geom = gp;
569 gp->softc = vg;
571 vg->vg_name, vg->vg_extentsize / 1024);
575 g_llvm_add_disk(vg, pp, ll.ll_uuid);
576 return (vg->vg_geom);
580 g_llvm_destroy(struct g_llvm_vg *vg, int force)
586 if (vg == NULL)
588 gp = vg->vg_geom;
609 struct g_llvm_vg *vg;
611 vg = gp->softc;
612 return (g_llvm_destroy(vg, 0));
893 struct g_llvm_vg *vg;
910 /* check too see if the vg has already been loaded off another disk */
911 LIST_FOREACH(vg, &vg_list, vg_next) {
912 if (strcmp(vg->vg_name, name) == 0) {
924 if (strcmp(vg->vg_uuid, uuid) == 0) {
925 /* existing vg */
926 md->md_vg = vg;
936 vg = malloc(sizeof(*vg), M_GLLVM, M_NOWAIT|M_ZERO);
937 if (vg == NULL)
940 strncpy(vg->vg_name, name, sizeof(vg->vg_name));
941 LIST_INIT(&vg->vg_pvs);
942 LIST_INIT(&vg->vg_lvs);
956 VOL_FOREACH(llvm_textconf_decode_pv, tok, &buf, vg);
960 VOL_FOREACH(llvm_textconf_decode_lv, tok, &buf, vg);
971 GRAB_STR("id", v, tok, vg->vg_uuid, sizeof(vg->vg_uuid));
972 GRAB_INT("extent_size", v, tok, vg->vg_extentsize);
977 if (vg->vg_extentsize == 0)
980 md->md_vg = vg;
981 LIST_INSERT_HEAD(&vg_list, vg, vg_next);
982 G_LLVM_DEBUG(3, "vg: name=%s uuid=%s", vg->vg_name, vg->vg_uuid);
986 g_llvm_free_vg(vg);
992 llvm_textconf_decode_pv(char **buf, char *tok, struct g_llvm_vg *vg)
1005 pv->pv_vg = vg;
1035 LIST_INSERT_HEAD(&vg->vg_pvs, pv, pv_next);
1045 llvm_textconf_decode_lv(char **buf, char *tok, struct g_llvm_vg *vg)
1059 lv->lv_vg = vg;
1097 LIST_INSERT_HEAD(&vg->vg_lvs, lv, lv_next);