--- sys/conf/options.orig 2015-02-18 00:16:42.000000000 +0700 +++ sys/conf/options 2015-02-18 00:16:26.000000000 +0700 @@ -93,6 +93,7 @@ GEOM_JOURNAL opt_geom.h GEOM_LABEL opt_geom.h GEOM_LINUX_LVM opt_geom.h +GEOM_MAP opt_geom.h GEOM_MBR opt_geom.h GEOM_MIRROR opt_geom.h GEOM_MULTIPATH opt_geom.h --- sys/conf/NOTES.orig 2014-09-22 13:26:35.000000000 +0700 +++ sys/conf/NOTES 2015-02-18 00:25:42.000000000 +0700 @@ -150,6 +150,7 @@ options GEOM_JOURNAL # Journaling. options GEOM_LABEL # Providers labelization. options GEOM_LINUX_LVM # Linux LVM2 volumes +options GEOM_MAP # Map based partitioning options GEOM_MBR # DOS/MBR partitioning options GEOM_MIRROR # Disk mirroring. options GEOM_MULTIPATH # Disk multipath --- sys/geom/geom_map.c.orig 2013-06-18 14:52:22.000000000 +0700 +++ sys/geom/geom_map.c 2015-02-18 00:14:17.000000000 +0700 @@ -119,13 +119,15 @@ g_map_dumpconf(struct sbuf *sb, const ch g_slice_dumpconf(sb, indent, gp, cp, pp); if (pp != NULL) { if (indent == NULL) { - sbuf_printf(sb, " entry %lld", sc->entry[pp->index]); - sbuf_printf(sb, " dsize %lld", sc->dsize[pp->index]); + sbuf_printf(sb, " entry %jd", + (intmax_t)sc->entry[pp->index]); + sbuf_printf(sb, " dsize %jd", + (intmax_t)sc->dsize[pp->index]); } else { - sbuf_printf(sb, "%s%lld\n", indent, - sc->entry[pp->index]); - sbuf_printf(sb, "%s%lld\n", indent, - sc->dsize[pp->index]); + sbuf_printf(sb, "%s%jd\n", indent, + (intmax_t)sc->entry[pp->index]); + sbuf_printf(sb, "%s%jd\n", indent, + (intmax_t)sc->dsize[pp->index]); } } } @@ -153,8 +155,9 @@ find_marker(struct g_consumer *cp, const return (1); if (bootverbose) { - printf("MAP: search key \"%s\" from 0x%llx, step 0x%llx\n", - search_key, search_start, search_step); + printf("MAP: search key \"%s\" from 0x%jx, step 0x%jx\n", + search_key, + (uintmax_t)search_start, (uintmax_t)search_step); } /* error if search_key is empty */ @@ -321,9 +324,10 @@ g_map_parse_part(struct g_class *mp, str } if (bootverbose) { - printf("MAP: %llxx%llx, data=%llxx%llx " + printf("MAP: %jxx%jx, data=%jxx%jx " "\"/dev/map/%s\"\n", - start, size, offset, dsize, name); + (uintmax_t)start, (uintmax_t)size, + (uintmax_t)offset, (uintmax_t)dsize, name); } sc->offset[i] = start;