svn commit: r188329 - head/sys/geom/part

Marcel Moolenaar marcel at FreeBSD.org
Sun Feb 8 12:15:09 PST 2009


Author: marcel
Date: Sun Feb  8 20:15:08 2009
New Revision: 188329
URL: http://svn.freebsd.org/changeset/base/188329

Log:
  o  Add the "PART::scheme" attribute that returns the name of the
     underlying partitioning scheme.
  o  Put the start and end of the partition in the XML configuration.
     The start and end are the LBAs of the first and last sector
     (resp.) of the partition. They are currently identical to the
     offset and size attributes, which describe the partition as an
     offset and size in bytes, but may not in the future. The start
     and end will be used for the logical partition boundaries and
     may include metadata. The offset and size will always represent
     the useful storage space within the partition. Typically these
     two notions are the same, but for logical partitions in an
     extended partition, the EBR is more naturally treated as being
     part of the partition.

Modified:
  head/sys/geom/part/g_part.c

Modified: head/sys/geom/part/g_part.c
==============================================================================
--- head/sys/geom/part/g_part.c	Sun Feb  8 20:07:50 2009	(r188328)
+++ head/sys/geom/part/g_part.c	Sun Feb  8 20:15:08 2009	(r188329)
@@ -1579,6 +1579,10 @@ g_part_dumpconf(struct sbuf *sb, const c
 		entry = pp->private;
 		if (entry == NULL)
 			return;
+		sbuf_printf(sb, "%s<start>%ju</start>\n", indent,
+		    (uintmax_t)entry->gpe_start);
+		sbuf_printf(sb, "%s<end>%ju</end>\n", indent,
+		    (uintmax_t)entry->gpe_end);
 		sbuf_printf(sb, "%s<index>%u</index>\n", indent,
 		    entry->gpe_index);
 		sbuf_printf(sb, "%s<type>%s</type>\n", indent,
@@ -1687,6 +1691,9 @@ g_part_start(struct bio *bp)
 		if (g_handleattr_int(bp, "PART::offset",
 		    table->gpt_offset + entry->gpe_start))
 			return;
+		if (g_handleattr_str(bp, "PART::scheme",
+		    table->gpt_scheme->name))
+			return;
 		if (!strcmp("GEOM::kerneldump", bp->bio_attribute)) {
 			/*
 			 * Check that the partition is suitable for kernel


More information about the svn-src-all mailing list