linux/block/partitions
Davidlohr Bueso c2ebdc2439 partitions/efi: use lba-aware partition records
The kernel's GPT implementation currently uses the generic 'struct
partition' type for dealing with legacy MBR partition records.  While this
is is useful for disklabels that we designed for CHS addressing, such as
msdos, it doesn't adapt well to newer standards that use LBA instead, such
as GUID partition tables.  Furthermore, these generic partition structures
do not have all the required fields to properly follow the UEFI specs.

While a CHS address can be translated to LBA, it's much simpler and
cleaner to just replace the partition type.  This patch adds a new
'gpt_record' type that is fully compliant with EFI and will allow, in the
next patches, to add more checks to properly verify a protective MBR,
which is paramount to probing a device that makes use of GPT.

[akpm@linux-foundation.org: coding-style fixes]
Signed-off-by: Davidlohr Bueso <davidlohr@hp.com>
Reviewed-by: Karel Zak <kzak@redhat.com>
Acked-by: Matt Fleming <matt.fleming@intel.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2013-09-11 15:59:15 -07:00
..
acorn.c move fs/partitions to block/ 2012-01-03 22:54:06 -05:00
acorn.h move fs/partitions to block/ 2012-01-03 22:54:06 -05:00
aix.c partitions: add aix lvm partition support files 2013-07-09 10:33:28 -07:00
aix.h partitions: add aix lvm partition support files 2013-07-09 10:33:28 -07:00
amiga.c move fs/partitions to block/ 2012-01-03 22:54:06 -05:00
amiga.h move fs/partitions to block/ 2012-01-03 22:54:06 -05:00
atari.c move fs/partitions to block/ 2012-01-03 22:54:06 -05:00
atari.h move fs/partitions to block/ 2012-01-03 22:54:06 -05:00
check.c block: support embedded device command line partition 2013-09-11 15:56:57 -07:00
check.h block/partitions: optimize memory allocation in check_partition() 2013-02-27 19:10:21 -08:00
cmdline.c block: support embedded device command line partition 2013-09-11 15:56:57 -07:00
cmdline.h block: support embedded device command line partition 2013-09-11 15:56:57 -07:00
efi.c partitions/efi: use lba-aware partition records 2013-09-11 15:59:15 -07:00
efi.h partitions/efi: use lba-aware partition records 2013-09-11 15:59:15 -07:00
ibm.c s390/partitions: make partition detection independent from DASD ioctls 2012-09-26 15:45:05 +02:00
ibm.h move fs/partitions to block/ 2012-01-03 22:54:06 -05:00
karma.c move fs/partitions to block/ 2012-01-03 22:54:06 -05:00
karma.h move fs/partitions to block/ 2012-01-03 22:54:06 -05:00
Kconfig block: support embedded device command line partition 2013-09-11 15:56:57 -07:00
ldm.c LDM: Fix reassembly of extended VBLKs. 2012-02-24 09:37:42 +00:00
ldm.h move fs/partitions to block/ 2012-01-03 22:54:06 -05:00
mac.c block/partitions/mac.c: obey the state->limit constraint 2013-02-27 19:10:21 -08:00
mac.h move fs/partitions to block/ 2012-01-03 22:54:06 -05:00
Makefile block: support embedded device command line partition 2013-09-11 15:56:57 -07:00
msdos.c partitions/msdos: enumerate also AIX LVM partitions 2013-07-09 10:33:28 -07:00
msdos.h move fs/partitions to block/ 2012-01-03 22:54:06 -05:00
osf.c move fs/partitions to block/ 2012-01-03 22:54:06 -05:00
osf.h move fs/partitions to block/ 2012-01-03 22:54:06 -05:00
sgi.c move fs/partitions to block/ 2012-01-03 22:54:06 -05:00
sgi.h move fs/partitions to block/ 2012-01-03 22:54:06 -05:00
sun.c move fs/partitions to block/ 2012-01-03 22:54:06 -05:00
sun.h move fs/partitions to block/ 2012-01-03 22:54:06 -05:00
sysv68.c move fs/partitions to block/ 2012-01-03 22:54:06 -05:00
sysv68.h move fs/partitions to block/ 2012-01-03 22:54:06 -05:00
ultrix.c move fs/partitions to block/ 2012-01-03 22:54:06 -05:00
ultrix.h move fs/partitions to block/ 2012-01-03 22:54:06 -05:00