aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/ide/ide-disk.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/ide/ide-disk.c')
-rw-r--r--drivers/ide/ide-disk.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/drivers/ide/ide-disk.c b/drivers/ide/ide-disk.c
index 9176da7a9858..234f5de3e929 100644
--- a/drivers/ide/ide-disk.c
+++ b/drivers/ide/ide-disk.c
@@ -119,6 +119,10 @@ static int lba_capacity_is_ok (struct hd_driveid *id)
119{ 119{
120 unsigned long lba_sects, chs_sects, head, tail; 120 unsigned long lba_sects, chs_sects, head, tail;
121 121
122 /* No non-LBA info .. so valid! */
123 if (id->cyls == 0)
124 return 1;
125
122 /* 126 /*
123 * The ATA spec tells large drives to return 127 * The ATA spec tells large drives to return
124 * C/H/S = 16383/16/63 independent of their size. 128 * C/H/S = 16383/16/63 independent of their size.
@@ -1215,7 +1219,8 @@ static int ide_disk_probe(struct device *dev)
1215 if (!idkp) 1219 if (!idkp)
1216 goto failed; 1220 goto failed;
1217 1221
1218 g = alloc_disk(1 << PARTN_BITS); 1222 g = alloc_disk_node(1 << PARTN_BITS,
1223 hwif_to_node(drive->hwif));
1219 if (!g) 1224 if (!g)
1220 goto out_free_idkp; 1225 goto out_free_idkp;
1221 1226