OpenCloudOS-Kernel/fs/partitions
Peter Oberparleiter cffab6bc55 [S390] dasd: use correct label location for diag fba disks
Partition boundary calculation fails for DASD FBA disks under the
following conditions:
- disk is formatted with CMS FORMAT with a blocksize of more than
  512 bytes
- all of the disk is reserved to a single CMS file using CMS RESERVE
- the disk is accessed using the DIAG mode of the DASD driver

Under these circumstances, the partition detection code tries to
read the CMS label block containing partition-relevant information
from logical block offset 1, while it is in fact located at physical
block offset 1.

Fix this problem by using the correct CMS label block location
depending on the device type as determined by the DASD SENSE ID
information.

Signed-off-by: Peter Oberparleiter <peter.oberparleiter@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
2010-07-19 09:22:50 +02:00
..
Kconfig partition: use DEFAULT_SGI_PARTITION for SGI_PARTION default 2008-02-06 10:41:08 -08:00
Makefile partition: add support for sysv68 partitions 2007-05-08 11:15:09 -07:00
acorn.c block: use struct parsed_partitions *state universally in partition check code 2010-05-21 20:01:02 +02:00
acorn.h block: use struct parsed_partitions *state universally in partition check code 2010-05-21 20:01:02 +02:00
amiga.c block: use struct parsed_partitions *state universally in partition check code 2010-05-21 20:01:02 +02:00
amiga.h block: use struct parsed_partitions *state universally in partition check code 2010-05-21 20:01:02 +02:00
atari.c block: use struct parsed_partitions *state universally in partition check code 2010-05-21 20:01:02 +02:00
atari.h block: use struct parsed_partitions *state universally in partition check code 2010-05-21 20:01:02 +02:00
check.c block: improve automatic native capacity unlocking 2010-05-21 20:01:03 +02:00
check.h block: improve automatic native capacity unlocking 2010-05-21 20:01:03 +02:00
efi.c Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs-2.6 2010-05-21 19:37:45 -07:00
efi.h block: use struct parsed_partitions *state universally in partition check code 2010-05-21 20:01:02 +02:00
ibm.c [S390] dasd: use correct label location for diag fba disks 2010-07-19 09:22:50 +02:00
ibm.h block: use struct parsed_partitions *state universally in partition check code 2010-05-21 20:01:02 +02:00
karma.c block: use struct parsed_partitions *state universally in partition check code 2010-05-21 20:01:02 +02:00
karma.h block: use struct parsed_partitions *state universally in partition check code 2010-05-21 20:01:02 +02:00
ldm.c fs: ldm: don't use own implementation of hex_to_bin() 2010-05-25 08:07:06 -07:00
ldm.h block: use struct parsed_partitions *state universally in partition check code 2010-05-21 20:01:02 +02:00
mac.c Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs-2.6 2010-05-21 19:37:45 -07:00
mac.h block: use struct parsed_partitions *state universally in partition check code 2010-05-21 20:01:02 +02:00
msdos.c Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs-2.6 2010-05-21 19:37:45 -07:00
msdos.h block: use struct parsed_partitions *state universally in partition check code 2010-05-21 20:01:02 +02:00
osf.c block: use struct parsed_partitions *state universally in partition check code 2010-05-21 20:01:02 +02:00
osf.h block: use struct parsed_partitions *state universally in partition check code 2010-05-21 20:01:02 +02:00
sgi.c block: use struct parsed_partitions *state universally in partition check code 2010-05-21 20:01:02 +02:00
sgi.h block: use struct parsed_partitions *state universally in partition check code 2010-05-21 20:01:02 +02:00
sun.c block: use struct parsed_partitions *state universally in partition check code 2010-05-21 20:01:02 +02:00
sun.h block: use struct parsed_partitions *state universally in partition check code 2010-05-21 20:01:02 +02:00
sysv68.c block: use struct parsed_partitions *state universally in partition check code 2010-05-21 20:01:02 +02:00
sysv68.h block: use struct parsed_partitions *state universally in partition check code 2010-05-21 20:01:02 +02:00
ultrix.c block: use struct parsed_partitions *state universally in partition check code 2010-05-21 20:01:02 +02:00
ultrix.h block: use struct parsed_partitions *state universally in partition check code 2010-05-21 20:01:02 +02:00