diff options
Diffstat (limited to 'drivers/ide/ide-probe.c')
-rw-r--r-- | drivers/ide/ide-probe.c | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/drivers/ide/ide-probe.c b/drivers/ide/ide-probe.c index 7df85af75371..c1128ae5cd2f 100644 --- a/drivers/ide/ide-probe.c +++ b/drivers/ide/ide-probe.c | |||
@@ -978,8 +978,7 @@ static int ide_init_queue(ide_drive_t *drive) | |||
978 | * do not. | 978 | * do not. |
979 | */ | 979 | */ |
980 | 980 | ||
981 | q = blk_init_queue_node(do_ide_request, &ide_lock, | 981 | q = blk_init_queue_node(do_ide_request, &ide_lock, hwif_to_node(hwif)); |
982 | pcibus_to_node(drive->hwif->pci_dev->bus)); | ||
983 | if (!q) | 982 | if (!q) |
984 | return 1; | 983 | return 1; |
985 | 984 | ||
@@ -1048,6 +1047,8 @@ static int init_irq (ide_hwif_t *hwif) | |||
1048 | 1047 | ||
1049 | BUG_ON(in_interrupt()); | 1048 | BUG_ON(in_interrupt()); |
1050 | BUG_ON(irqs_disabled()); | 1049 | BUG_ON(irqs_disabled()); |
1050 | BUG_ON(hwif == NULL); | ||
1051 | |||
1051 | down(&ide_cfg_sem); | 1052 | down(&ide_cfg_sem); |
1052 | hwif->hwgroup = NULL; | 1053 | hwif->hwgroup = NULL; |
1053 | #if MAX_HWIFS > 1 | 1054 | #if MAX_HWIFS > 1 |
@@ -1097,7 +1098,7 @@ static int init_irq (ide_hwif_t *hwif) | |||
1097 | spin_unlock_irq(&ide_lock); | 1098 | spin_unlock_irq(&ide_lock); |
1098 | } else { | 1099 | } else { |
1099 | hwgroup = kmalloc_node(sizeof(ide_hwgroup_t), GFP_KERNEL, | 1100 | hwgroup = kmalloc_node(sizeof(ide_hwgroup_t), GFP_KERNEL, |
1100 | pcibus_to_node(hwif->drives[0].hwif->pci_dev->bus)); | 1101 | hwif_to_node(hwif->drives[0].hwif)); |
1101 | if (!hwgroup) | 1102 | if (!hwgroup) |
1102 | goto out_up; | 1103 | goto out_up; |
1103 | 1104 | ||