Author: delphij
Date: Tue Feb  7 21:56:58 2012
New Revision: 231162
URL: http://svn.freebsd.org/changeset/base/231162

Log:
  MFC r227454:
  
  Use __packed to prevent alignment from taking place, which otherwise may
  change the on-disk format in an incompatible way. Without this change,
  msdosfs created on FreeBSD/arm would not be mountable.
  
  PR:           bin/162486
  Submitted by: Ian Lepore <freebsd damnhippie dyndns org>
  Reported by:  Mattia Rossi <mrossi at swin.edu.au>

Modified:
  stable/8/sbin/newfs_msdos/newfs_msdos.c
Directory Properties:
  stable/8/sbin/newfs_msdos/   (props changed)

Changes in other areas also in this revision:
Modified:
  stable/9/sbin/newfs_msdos/newfs_msdos.c
Directory Properties:
  stable/9/sbin/newfs_msdos/   (props changed)

Modified: stable/8/sbin/newfs_msdos/newfs_msdos.c
==============================================================================
--- stable/8/sbin/newfs_msdos/newfs_msdos.c     Tue Feb  7 20:54:44 2012        
(r231161)
+++ stable/8/sbin/newfs_msdos/newfs_msdos.c     Tue Feb  7 21:56:58 2012        
(r231162)
@@ -99,7 +99,7 @@ static const char rcsid[] =
 struct bs {
     u_int8_t bsJump[3];                        /* bootstrap entry point */
     u_int8_t bsOemName[8];             /* OEM name and version */
-};
+} __packed;
 
 struct bsbpb {
     u_int8_t bpbBytesPerSec[2];                /* bytes per sector */
@@ -114,7 +114,7 @@ struct bsbpb {
     u_int8_t bpbHeads[2];              /* drive heads */
     u_int8_t bpbHiddenSecs[4];         /* hidden sectors */
     u_int8_t bpbHugeSectors[4];                /* big total sectors */
-};
+} __packed;
 
 struct bsxbpb {
     u_int8_t bpbBigFATsecs[4];         /* big sectors per FAT */
@@ -124,7 +124,7 @@ struct bsxbpb {
     u_int8_t bpbFSInfo[2];             /* file system info sector */
     u_int8_t bpbBackup[2];             /* backup boot sector */
     u_int8_t bpbReserved[12];          /* reserved */
-};
+} __packed;
 
 struct bsx {
     u_int8_t exDriveNumber;            /* drive number */
@@ -133,7 +133,7 @@ struct bsx {
     u_int8_t exVolumeID[4];            /* volume ID number */
     u_int8_t exVolumeLabel[11];        /* volume label */
     u_int8_t exFileSysType[8];         /* file system type */
-};
+} __packed;
 
 struct de {
     u_int8_t deName[11];               /* name and extension */
@@ -143,7 +143,7 @@ struct de {
     u_int8_t deMDate[2];               /* creation date */
     u_int8_t deStartCluster[2];                /* starting cluster */
     u_int8_t deFileSize[4];            /* size */
-};
+} __packed;
 
 struct bpb {
     u_int bpbBytesPerSec;              /* bytes per sector */
_______________________________________________
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