Author: ae
Date: Mon Feb 18 08:24:39 2013
New Revision: 246938
URL: http://svnweb.freebsd.org/changeset/base/246938

Log:
  MFC r246630:
    Add bootcamp support to the loader.

Modified:
  stable/9/sys/boot/common/part.c
  stable/9/sys/sys/diskmbr.h
Directory Properties:
  stable/9/sys/   (props changed)
  stable/9/sys/boot/   (props changed)

Modified: stable/9/sys/boot/common/part.c
==============================================================================
--- stable/9/sys/boot/common/part.c     Mon Feb 18 05:05:01 2013        
(r246937)
+++ stable/9/sys/boot/common/part.c     Mon Feb 18 08:24:39 2013        
(r246938)
@@ -645,9 +645,13 @@ ptable_open(void *dev, off_t sectors, ui
        /* Do we have some invalid values? */
        if (i != NDOSPART ||
            (table->type == PTABLE_GPT && count > 1)) {
-               table->type = PTABLE_NONE;
-               DEBUG("invalid values detected, ignore partition table");
-               goto out;
+               if (dp[1].dp_typ != DOSPTYP_HFS) {
+                       table->type = PTABLE_NONE;
+                       DEBUG("invalid values detected, ignore "
+                           "partition table");
+                       goto out;
+               }
+               DEBUG("Bootcamp detected");
        }
 #ifdef LOADER_GPT_SUPPORT
        if (table->type == PTABLE_GPT) {

Modified: stable/9/sys/sys/diskmbr.h
==============================================================================
--- stable/9/sys/sys/diskmbr.h  Mon Feb 18 05:05:01 2013        (r246937)
+++ stable/9/sys/sys/diskmbr.h  Mon Feb 18 08:24:39 2013        (r246938)
@@ -50,6 +50,7 @@
 #define        DOSPTYP_EXTLBA  0x0f    /* DOS extended partition */
 #define        DOSPTYP_LDM     0x42    /* Win2k dynamic extended partition */
 #define        DOSPTYP_386BSD  0xa5    /* 386BSD partition type */
+#define        DOSPTYP_HFS     0xaf    /* HFS/HFS+ partition type */
 #define        DOSPTYP_LINSWP  0x82    /* Linux swap partition */
 #define        DOSPTYP_LINUX   0x83    /* Linux partition */
 #define        DOSPTYP_LINLVM  0x8e    /* Linux LVM partition */
_______________________________________________
svn-src-all@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"

Reply via email to