diff options
| -rw-r--r-- | drivers/scsi/ide-scsi.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/drivers/scsi/ide-scsi.c b/drivers/scsi/ide-scsi.c index 5b8a1931ac9b..c9fdf60c9dcf 100644 --- a/drivers/scsi/ide-scsi.c +++ b/drivers/scsi/ide-scsi.c | |||
| @@ -629,6 +629,8 @@ static void ide_scsi_remove(ide_drive_t *drive) | |||
| 629 | put_disk(g); | 629 | put_disk(g); |
| 630 | 630 | ||
| 631 | ide_scsi_put(scsi); | 631 | ide_scsi_put(scsi); |
| 632 | |||
| 633 | drive->scsi = 0; | ||
| 632 | } | 634 | } |
| 633 | 635 | ||
| 634 | static int ide_scsi_probe(ide_drive_t *); | 636 | static int ide_scsi_probe(ide_drive_t *); |
| @@ -969,6 +971,8 @@ static int ide_scsi_probe(ide_drive_t *drive) | |||
| 969 | !(host = scsi_host_alloc(&idescsi_template,sizeof(idescsi_scsi_t)))) | 971 | !(host = scsi_host_alloc(&idescsi_template,sizeof(idescsi_scsi_t)))) |
| 970 | return -ENODEV; | 972 | return -ENODEV; |
| 971 | 973 | ||
| 974 | drive->scsi = 1; | ||
| 975 | |||
| 972 | g = alloc_disk(1 << PARTN_BITS); | 976 | g = alloc_disk(1 << PARTN_BITS); |
| 973 | if (!g) | 977 | if (!g) |
| 974 | goto out_host_put; | 978 | goto out_host_put; |
| @@ -1009,6 +1013,7 @@ static int ide_scsi_probe(ide_drive_t *drive) | |||
| 1009 | 1013 | ||
| 1010 | put_disk(g); | 1014 | put_disk(g); |
| 1011 | out_host_put: | 1015 | out_host_put: |
| 1016 | drive->scsi = 0; | ||
| 1012 | scsi_host_put(host); | 1017 | scsi_host_put(host); |
| 1013 | return err; | 1018 | return err; |
| 1014 | } | 1019 | } |
