Lines Matching refs:altroot
249 _be_mount(char *be_name, char **altroot, int flags) in _be_mount() argument
261 if (be_name == NULL || altroot == NULL) in _be_mount()
316 if (*altroot == NULL) { in _be_mount()
326 tmp_altroot = *altroot; in _be_mount()
329 md.altroot = tmp_altroot; in _be_mount()
348 free(md.altroot); in _be_mount()
397 *altroot = tmp_altroot; in _be_mount()
510 ud.altroot = mountpoint; in _be_unmount()
599 if (lstat(md->altroot, &buf) != 0) { in be_mount_zone_root()
600 if (mkdirp(md->altroot, 0755) != 0) { in be_mount_zone_root()
603 "to create mountpoint %s\n"), md->altroot); in be_mount_zone_root()
621 if (mount(zfs_get_name(zhp), md->altroot, MS_OVERLAY, MNTTYPE_ZFS, in be_mount_zone_root()
626 zfs_get_name(zhp), md->altroot); in be_mount_zone_root()
731 if (!zfs_is_mounted(zhp, &fld->altroot)) { in be_get_legacy_fs()
732 if ((ret = _be_mount(be_name, &fld->altroot, in be_get_legacy_fs()
741 } else if (fld->altroot == NULL) { in be_get_legacy_fs()
771 if (!zfs_is_mounted(zhp, &zone_md.altroot)) { in be_get_legacy_fs()
776 "%s%s", fld->altroot, zoneroot); in be_get_legacy_fs()
777 if ((zone_md.altroot = strdup(zone_altroot)) == NULL) { in be_get_legacy_fs()
789 free(zone_md.altroot); in be_get_legacy_fs()
790 zone_md.altroot = NULL; in be_get_legacy_fs()
796 free(fld->altroot); in be_get_legacy_fs()
797 fld->altroot = zone_md.altroot; in be_get_legacy_fs()
804 if (get_mountpoint_from_vfstab(fld->altroot, zfs_get_name(zhp), in be_get_legacy_fs()
831 zone_ud.altroot = fld->altroot; in be_get_legacy_fs()
854 free(fld->altroot); in be_get_legacy_fs()
855 fld->altroot = NULL; in be_get_legacy_fs()
879 free(fld->altroot); in be_free_fs_list()
1150 char *altroot = data; in be_mount_callback() local
1194 if (get_mountpoint_from_vfstab(altroot, fs_name, in be_mount_callback()
1226 "%s%s", altroot, zhp_mountpoint); in be_mount_callback()
1269 altroot)) != 0) { in be_mount_callback()
1360 if ((strncmp(mountpoint, ud->altroot, in be_unmount_callback()
1361 strlen(ud->altroot)) == 0) && in be_unmount_callback()
1362 (mountpoint[strlen(ud->altroot)] == '/')) { in be_unmount_callback()
1365 strlen(ud->altroot); in be_unmount_callback()
1383 "skipping ...\n"), fs_name, ud->altroot); in be_unmount_callback()
1453 if (get_mountpoint_from_vfstab(fld->altroot, fs_name, in be_get_legacy_fs_callback()
1687 md->altroot, zhp_mountpoint); in loopback_mount_shared_fs()
1802 md->altroot, parentmnt); in loopback_mount_zonepath()
1831 md->altroot, zonepath); in loopback_mount_zonepath()
1914 altroot_len = strlen(ud->altroot); in unmount_shared_fs()
1923 if (strncmp(entp->mnt_mountp, ud->altroot, altroot_len) == 0 && in unmount_shared_fs()
1972 get_mountpoint_from_vfstab(char *altroot, const char *fs, char *mountpoint, in get_mountpoint_from_vfstab() argument
1981 altroot); in get_mountpoint_from_vfstab()
1997 (void) snprintf(mountpoint, size_mp, "%s%s", altroot, in get_mountpoint_from_vfstab()
2041 char *altroot = data; in fix_mountpoint_callback() local
2067 if (strncmp(mountpoint, altroot, strlen(altroot)) == 0 && in fix_mountpoint_callback()
2068 mountpoint[strlen(altroot)] == '/') { in fix_mountpoint_callback()
2074 zhp_mountpoint = mountpoint + strlen(altroot); in fix_mountpoint_callback()
2094 altroot)) != 0) { in fix_mountpoint_callback()
2119 be_mount_root(zfs_handle_t *zhp, char *altroot) in be_mount_root() argument
2146 if (zfs_prop_set(zhp, zfs_prop_to_name(ZFS_PROP_MOUNTPOINT), altroot) in be_mount_root()
2150 zfs_get_name(zhp), altroot, in be_mount_root()
2159 altroot, libzfs_error_description(g_zfs)); in be_mount_root()
2199 if (get_mountpoint_from_vfstab(ud->altroot, zfs_get_name(zhp), in be_unmount_root()
2258 char *altroot = NULL; in fix_mountpoint() local
2299 if ((ret = be_make_tmp_mountpoint(&altroot)) != BE_SUCCESS) { in fix_mountpoint()
2306 if ((ret = be_mount_root(zhp, altroot)) != BE_SUCCESS) { in fix_mountpoint()
2311 ud.altroot = altroot; in fix_mountpoint()
2319 free(altroot); in fix_mountpoint()
2352 z_set_zone_root(md->altroot); in be_mount_zones()
2412 "altroot %s\n"), zonename, md->altroot); in be_mount_zones()
2459 z_set_zone_root(ud->altroot); in be_unmount_zones()
2480 "%s%s", ud->altroot, zonepath); in be_unmount_zones()
2510 "altroot %s\n"), zonename, ud->altroot); in be_unmount_zones()
2574 (void) strlcpy(zone_altroot, md->altroot, sizeof (zone_altroot)); in be_mount_one_zone()
2578 zone_md.altroot = zone_altroot; in be_mount_one_zone()
2632 (void) strlcpy(zone_altroot, ud->altroot, sizeof (zone_altroot)); in be_unmount_one_zone()
2636 zone_ud.altroot = zone_altroot; in be_unmount_one_zone()