svn commit: r213133 - head/sys/sys

Pawel Jakub Dawidek pjd at FreeBSD.org
Fri Sep 24 19:31:09 UTC 2010


Author: pjd
Date: Fri Sep 24 19:31:08 2010
New Revision: 213133
URL: http://svn.freebsd.org/changeset/base/213133

Log:
  Add three GPT attributes:
  
  GPT_ENT_ATTR_BOOTME - this is bootable partition
  
  GPT_ENT_ATTR_BOOTONCE - try to boot only once from this partition
  
  GPT_ENT_ATTR_BOOTFAILED - set this flag if we cannot boot from partition
  	containing GPT_ENT_ATTR_BOOTONCE flag; note that if we cannot
  	boot from partition that contains only GPT_ENT_ATTR_BOOTME flag,
  	the GPT_ENT_ATTR_BOOTFAILED flag won't be set
  
  According to wikipedia Microsoft TechNet says that attributes are divided into
  two halves: the lower 4 bytes representing partition independent attributes,
  and the upper 4 bytes are partition type dependent. Microsoft is already using
  bits 60 (read-only), 62 (hidden) and 63 (do not automount) and I'd like to not
  collide with those, so we are using bit 59 (bootme), 58 (bootonce) and 57
  (bootfailed).
  
  Reviewed by:	arch (Message-ID: <20100917234542.GE1902 at garage.freebsd.pl>)
  MFC after:	2 weeks

Modified:
  head/sys/sys/gpt.h

Modified: head/sys/sys/gpt.h
==============================================================================
--- head/sys/sys/gpt.h	Fri Sep 24 19:30:34 2010	(r213132)
+++ head/sys/sys/gpt.h	Fri Sep 24 19:31:08 2010	(r213133)
@@ -65,6 +65,9 @@ struct gpt_ent {
 	uint64_t	ent_lba_end;
 	uint64_t	ent_attr;
 #define	GPT_ENT_ATTR_PLATFORM		(1ULL << 0)
+#define	GPT_ENT_ATTR_BOOTME		(1ULL << 59)
+#define	GPT_ENT_ATTR_BOOTONCE		(1ULL << 58)
+#define	GPT_ENT_ATTR_BOOTFAILED		(1ULL << 57)
 	uint16_t	ent_name[36];		/* UTF-16. */
 };
 


More information about the svn-src-head mailing list