Checking through all the per-arch disk drivers to see which are missing
DIOCGPDINFO:
/sys/arch/hp300/dev/hd.c: case DIOCGPDINFO:
/sys/arch/hp300/dev/hd.c: case DIOCGDINFO:
no problem.
/sys/arch/sparc/dev/fd.c: case DIOCGPDINFO:
/sys/arch/sparc/dev/fd.c: case DIOCGDINFO:
no problem.
/sys/arch/sparc/dev/presto.c: case DIOCGDINFO:
missing
/sys/arch/sparc/dev/xd.c: case DIOCGDINFO: /* get disk label */
missing
/sys/arch/sparc/dev/xy.c: case DIOCGDINFO: /* get disk label */
missing
/sys/arch/sparc64/dev/fd.c: case DIOCGPDINFO:
/sys/arch/sparc64/dev/fd.c: case DIOCGDINFO:
ok
/sys/arch/vax/mba/hp.c: case DIOCGDINFO:
missing
/sys/arch/vax/mscp/mscp_disk.c: case DIOCGDINFO:
/sys/arch/vax/mscp/mscp_disk.c: case DIOCGDINFO:
missing
/sys/arch/vax/vsa/hdc9224.c: case DIOCGDINFO:
missing
Basically all of those drivers fetch their labels at the start and
keep them, and have not moved to the new mode of having an
xxgetdisklabel() function with a 4th argument which indicates
spoofing or not. As a result, they also cannot clear their disklabel,
I think.