Index: sys/geom/part/g_part.h =================================================================== --- sys/geom/part/g_part.h +++ sys/geom/part/g_part.h @@ -228,6 +228,8 @@ int g_part_modevent(module_t, int, struct g_part_scheme *); +extern char g_part_separator[]; + #define G_PART_SCHEME_DECLARE(name) \ static int name##_modevent(module_t mod, int tp, void *d) \ { \ Index: sys/geom/part/g_part.c =================================================================== --- sys/geom/part/g_part.c +++ sys/geom/part/g_part.c @@ -147,6 +147,10 @@ SYSCTL_UINT(_kern_geom_part, OID_AUTO, allow_nesting, CTLFLAG_RWTUN, &allow_nesting, 0, "Allow additional levels of nesting"); +char g_part_separator[MAXPATHLEN] = ""; +SYSCTL_STRING(_kern_geom_part, OID_AUTO, separator, + CTLFLAG_RDTUN, &g_part_separator, sizeof(g_part_separator), + "Partition name separator"); /* * The GEOM partitioning class. Index: sys/geom/part/g_part_if.m =================================================================== --- sys/geom/part/g_part_if.m +++ sys/geom/part/g_part_if.m @@ -48,7 +48,7 @@ { char buf[32]; - sbuf_printf(sb, "%s%s", pfx, + sbuf_printf(sb, "%s%s%s", pfx, g_part_separator, G_PART_NAME(table, entry, buf, sizeof(buf))); }