After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 588159 - msftres flag set for any FAT or NTFS partition in a GPT disk
msftres flag set for any FAT or NTFS partition in a GPT disk
Status: RESOLVED DUPLICATE of bug 518439
Product: gparted
Classification: Other
Component: livecd
GIT HEAD
Other All
: Normal normal
: ---
Assigned To: gparted maintainers alias
gparted maintainers alias
Depends on:
Blocks:
 
 
Reported: 2009-07-09 14:27 UTC by Keshav
Modified: 2009-07-10 18:03 UTC
See Also:
GNOME target: ---
GNOME version: ---



Description Keshav 2009-07-09 14:27:21 UTC
Please describe the problem:
The "msftres" flag bug in libparted is caused by the presence of the following
code from (parted-source-dir)/libparted/labels/gpt.c :-

if (strncmp (fs_type->name, "fat", 3) == 0
|| strcmp (fs_type->name, "ntfs") == 0) {
gpt_part_data->type = PARTITION_MSFT_RESERVED_GUID;
return 1;
}

The "Microsoft Reserved" Partition in GPT is needed only for conversion from a
basic disk to dynamic disk in Windows. Otherwise it is not at all needed and
according to Microsoft, any FAT(16,32 etc..) or NTFS partition(s) should be
"Basic Data Partition" if they have to be accessible in Windows and Mac (Linux
allows access even to a msftres partition).

Think of it like the 128 MB gap between partitions imposed by Mac OS X's Disk
Utility in GPT disk for future usage which cannot be anticipated at present.
Microsoft creates this partition for any future usage similar to the 128 MB
gap.

The above mentioned code in libparted assumes that any FAT or NTFS partition
must be marked as Microsoft Reserved (the same way any HFS partition must be
marked Apple_HFS), but this is not correct.

This bug can be corrected by either deleting the above lines or by modifying
them as follows :-

if (strncmp (fs_type->name, "fat", 3) == 0
|| strcmp (fs_type->name, "ntfs") == 0) {
gpt_part_data->type = PARTITION_BASIC_DATA_GUID;
return 1;
}

Please correct this bug in the next version of GParted Live.

Steps to reproduce:


Actual results:


Expected results:


Does this happen every time?
Yes.

Other information:
Comment 1 Keshav 2009-07-10 13:45:06 UTC
What is a Microsoft Reserved Partition?

The Microsoft Reserved Partition reserves space on each disk drive for subsequent use by operating system software. GUID Partition Table disks do not allow hidden sectors. Software components that formerly used hidden sectors now allocate portions of the Microsoft Reserved Partition for component-specific partitions. For example, converting a basic disk to a dynamic disk causes the Microsoft Reserved Partition on that disk to be reduced in size and a newly created partition holds the dynamic disk database.

Retrieved from http://support.microsoft.com/kb/302873 - FAQ about GPT Disk Architecture
Comment 2 Keshav 2009-07-10 13:54:49 UTC
Will end users see the Extensible Firmware Interface System Partition, Microsoft Reserved Partition, and OEM-specific partitions?

The user won't see these partitions exposed in Windows Explorer, nor is any recognized file system exposed to legacy programs such as Context Indexing. The Extensible Firmware Interface System Partition, OEM-specific, and other unrecognized partitions will be visible only in the Disk Management MMC snap-in.

What partitions are mounted by default by Windows?

Windows exposes only basic data partitions. Other partitions with FAT file systems may be mounted, but not exposed (only programmatically). Only basic data partitions are assigned drive letters or mount points.

The Microsoft Reserved Partition (and any partitions that are created from the Microsoft Reserved Partition) could have recognizable file systems; none are exposed.

What happens when a basic disk is converted to dynamic?

For a drive to be eligible for conversion to dynamic, all basic data partitions on the drive must be contiguous. If other unrecognized partitions separate basic data partitions, the disk cannot be converted. This is one of the reasons that the Microsoft Reserved Partition must be created before any basic data partitions.

The first step in conversion is to separate a portion of the Microsoft Reserved Partition to create the configuration database partition. All non-bootable basic partitions are then combined into a single data container partition. Boot partitions are retained as separate data container partitions. This is analogous to conversion of primary partitions. 
Comment 3 Curtis Gedak 2009-07-10 18:03:23 UTC
Thank you Keshav for reporting this information.

To avoid duplicating all the same information, I am marking this bug as a duplicate of bug #518439.


*** This bug has been marked as a duplicate of 518439 ***