Commit 85ba2733 authored by Bartlomiej Zolnierkiewicz's avatar Bartlomiej Zolnierkiewicz Committed by Linus Torvalds

[PATCH] ide: remove redundant hwgroup->handler checks from ide-taskfile.c

Remove checks for hwgroup->handler == NULL from task_[in,mulin,out]_intr()
(CONFIG_IDE_TASKFILE_IO=n versions).  These functions can be called only from
ide_intr() or ide_timer_expiry() and both set hwgroup->handler to NULL first.
Signed-off-by: default avatarBartlomiej Zolnierkiewicz <bzolnier@elka.pw.edu.pl>
Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
parent 37dfe554
...@@ -317,8 +317,7 @@ ide_startstop_t task_in_intr (ide_drive_t *drive) ...@@ -317,8 +317,7 @@ ide_startstop_t task_in_intr (ide_drive_t *drive)
} }
if (!(stat & BUSY_STAT)) { if (!(stat & BUSY_STAT)) {
DTF("task_in_intr to Soon wait for next interrupt\n"); DTF("task_in_intr to Soon wait for next interrupt\n");
if (HWGROUP(drive)->handler == NULL) ide_set_handler(drive, &task_in_intr, WAIT_WORSTCASE, NULL);
ide_set_handler(drive, &task_in_intr, WAIT_WORSTCASE, NULL);
return ide_started; return ide_started;
} }
} }
...@@ -332,12 +331,7 @@ ide_startstop_t task_in_intr (ide_drive_t *drive) ...@@ -332,12 +331,7 @@ ide_startstop_t task_in_intr (ide_drive_t *drive)
if (--rq->current_nr_sectors <= 0) if (--rq->current_nr_sectors <= 0)
if (!DRIVER(drive)->end_request(drive, 1, 0)) if (!DRIVER(drive)->end_request(drive, 1, 0))
return ide_stopped; return ide_stopped;
/* ide_set_handler(drive, &task_in_intr, WAIT_WORSTCASE, NULL);
* ERM, it is techincally legal to leave/exit here but it makes
* a mess of the code ...
*/
if (HWGROUP(drive)->handler == NULL)
ide_set_handler(drive, &task_in_intr, WAIT_WORSTCASE, NULL);
return ide_started; return ide_started;
} }
...@@ -360,8 +354,7 @@ ide_startstop_t task_mulin_intr (ide_drive_t *drive) ...@@ -360,8 +354,7 @@ ide_startstop_t task_mulin_intr (ide_drive_t *drive)
return DRIVER(drive)->error(drive, "task_mulin_intr", stat); return DRIVER(drive)->error(drive, "task_mulin_intr", stat);
} }
/* no data yet, so wait for another interrupt */ /* no data yet, so wait for another interrupt */
if (HWGROUP(drive)->handler == NULL) ide_set_handler(drive, &task_mulin_intr, WAIT_WORSTCASE, NULL);
ide_set_handler(drive, &task_mulin_intr, WAIT_WORSTCASE, NULL);
return ide_started; return ide_started;
} }
...@@ -384,8 +377,7 @@ ide_startstop_t task_mulin_intr (ide_drive_t *drive) ...@@ -384,8 +377,7 @@ ide_startstop_t task_mulin_intr (ide_drive_t *drive)
return ide_stopped; return ide_stopped;
} }
} while (msect); } while (msect);
if (HWGROUP(drive)->handler == NULL) ide_set_handler(drive, &task_mulin_intr, WAIT_WORSTCASE, NULL);
ide_set_handler(drive, &task_mulin_intr, WAIT_WORSTCASE, NULL);
return ide_started; return ide_started;
} }
...@@ -445,8 +437,7 @@ ide_startstop_t task_out_intr (ide_drive_t *drive) ...@@ -445,8 +437,7 @@ ide_startstop_t task_out_intr (ide_drive_t *drive)
rq->errors = 0; rq->errors = 0;
rq->current_nr_sectors--; rq->current_nr_sectors--;
} }
if (HWGROUP(drive)->handler == NULL) ide_set_handler(drive, &task_out_intr, WAIT_WORSTCASE, NULL);
ide_set_handler(drive, &task_out_intr, WAIT_WORSTCASE, NULL);
return ide_started; return ide_started;
} }
......
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