Commit 6aa7e2b9 authored by Andries E. Brouwer's avatar Andries E. Brouwer Committed by Linus Torvalds

[PATCH] revert partition nonsense

Updating my source to 2.6.7 I see that you applied some
nonsense garbage patch. Please undo.

[ Note by Linus: the fact that DOS_EXTENDED_PARTITION is 5, and we're
  iterating over slots 1-4 in the partition table, are two totally
  unrelated things. Using the symbolic constant does indeed not make
  any sense at all here, as Andries so eloquently points out. ]
parent cd23adad
...@@ -422,8 +422,8 @@ int msdos_partition(struct parsed_partitions *state, struct block_device *bdev) ...@@ -422,8 +422,8 @@ int msdos_partition(struct parsed_partitions *state, struct block_device *bdev)
* On the second pass look inside *BSD, Unixware and Solaris partitions. * On the second pass look inside *BSD, Unixware and Solaris partitions.
*/ */
state->next = DOS_EXTENDED_PARTITION; state->next = 5;
for (slot = 1 ; slot < DOS_EXTENDED_PARTITION ; slot++, p++) { for (slot = 1 ; slot <= 4 ; slot++, p++) {
u32 start = START_SECT(p)*sector_size; u32 start = START_SECT(p)*sector_size;
u32 size = NR_SECTS(p)*sector_size; u32 size = NR_SECTS(p)*sector_size;
if (!size) if (!size)
...@@ -450,7 +450,7 @@ int msdos_partition(struct parsed_partitions *state, struct block_device *bdev) ...@@ -450,7 +450,7 @@ int msdos_partition(struct parsed_partitions *state, struct block_device *bdev)
/* second pass - output for each on a separate line */ /* second pass - output for each on a separate line */
p = (struct partition *) (0x1be + data); p = (struct partition *) (0x1be + data);
for (slot = 1 ; slot < DOS_EXTENDED_PARTITION ; slot++, p++) { for (slot = 1 ; slot <= 4 ; slot++, p++) {
unsigned char id = SYS_IND(p); unsigned char id = SYS_IND(p);
int n; int n;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment