This code review request is withdrawn since the logical drive letter assignment 
problem will be handled later, either by a DOS file 
system bug fix or an installer workaround.
William

AI can presently create fdisk(1m) partitions of several different DOS/FAT types.

Since mkfs(1m) can provide quick formatting, installing DOS/FAT file systems 
can be supported fairly easily.

One method of doing so is almost completely transparent:  if Target 
Instantiation creates a new DOS/FAT partition, it can also 
launch mkfs to lay down the file system.

http://defect.opensolaris.org/bz/show_bug.cgi?id=6854
http://cr.opensolaris.org/~wmsch/bug-6854/

mkfs_pcfs(1m) allows the FAT entry size to be specified, and this value can be 
assumed from the partition type.

fdisk formatting supported here:
ID "DOS16" DOSOS16 "DOSOS16 16-bit FAT"
ID "FAT32" FDISK_WINDOWS "FDISK_WINDOWS 32-bit FAT <2047GB"
ID 12 FDISK_EXT_WIN "FDISK_EXT_WIN 32-bit FAT (extended-int13)"

According to the man page for mkfs_pcfs, DOS drive letters are assigned in the 
order of the DOS partitions in the fdisk format table.

mkfs -F pcfs -o fat=<# bits> /dev/rdsk/ctdp:<drive letter>

Additional code in disk_parts.c was added to handle a bug in the case where:
- a partition is to be deleted
- partitions after that partition are to be preserved

There is still a remaining problem: the determination of the drive letter does 
not seem to be as predictable as indicated in 
mkfs_pcfs(1m).
In particular, if DOS partition types are mixed, the drive letter assignment 
does not occur as documented.  This can be a hazard 
since the wrong partition may be formatted.  This problem is documented further 
in bug 6854

For now, I think that this should be treated as either a problem with Solaris 
logical drive assignment, or should require a bug to 
be filed for AI for this rather unusual case.

Tested:
creating multiple using AI
deleting using AI, then recreating using AI
deleting some (not all) using AI, then recreating using AI
not creating any new to check if formatting is done regardless if partition is 
old or new
creating, varying # FAT bits
testing all supported types

William



Reply via email to