aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/block/floppy.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/block/floppy.c')
-rw-r--r--drivers/block/floppy.c22
1 files changed, 12 insertions, 10 deletions
diff --git a/drivers/block/floppy.c b/drivers/block/floppy.c
index 8e24aa3a4e24..4de027deffb9 100644
--- a/drivers/block/floppy.c
+++ b/drivers/block/floppy.c
@@ -668,7 +668,7 @@ static int output_log_pos;
668#define current_reqD -1 668#define current_reqD -1
669#define MAXTIMEOUT -2 669#define MAXTIMEOUT -2
670 670
671static void __reschedule_timeout(int drive, const char *message, int marg) 671static void __reschedule_timeout(int drive, const char *message)
672{ 672{
673 if (drive == current_reqD) 673 if (drive == current_reqD)
674 drive = current_drive; 674 drive = current_drive;
@@ -680,16 +680,16 @@ static void __reschedule_timeout(int drive, const char *message, int marg)
680 fd_timeout.expires = jiffies + UDP->timeout; 680 fd_timeout.expires = jiffies + UDP->timeout;
681 add_timer(&fd_timeout); 681 add_timer(&fd_timeout);
682 if (UDP->flags & FD_DEBUG) 682 if (UDP->flags & FD_DEBUG)
683 DPRINT("reschedule timeout %s %d\n", message, marg); 683 DPRINT("reschedule timeout %s\n", message);
684 timeout_message = message; 684 timeout_message = message;
685} 685}
686 686
687static void reschedule_timeout(int drive, const char *message, int marg) 687static void reschedule_timeout(int drive, const char *message)
688{ 688{
689 unsigned long flags; 689 unsigned long flags;
690 690
691 spin_lock_irqsave(&floppy_lock, flags); 691 spin_lock_irqsave(&floppy_lock, flags);
692 __reschedule_timeout(drive, message, marg); 692 __reschedule_timeout(drive, message);
693 spin_unlock_irqrestore(&floppy_lock, flags); 693 spin_unlock_irqrestore(&floppy_lock, flags);
694} 694}
695 695
@@ -900,7 +900,7 @@ static int _lock_fdc(int drive, bool interruptible, int line)
900 } 900 }
901 command_status = FD_COMMAND_NONE; 901 command_status = FD_COMMAND_NONE;
902 902
903 __reschedule_timeout(drive, "lock fdc", 0); 903 __reschedule_timeout(drive, "lock fdc");
904 set_fdc(drive); 904 set_fdc(drive);
905 return 0; 905 return 0;
906} 906}
@@ -1983,7 +1983,7 @@ static void floppy_ready(void)
1983 1983
1984static void floppy_start(void) 1984static void floppy_start(void)
1985{ 1985{
1986 reschedule_timeout(current_reqD, "floppy start", 0); 1986 reschedule_timeout(current_reqD, "floppy start");
1987 1987
1988 scandrives(); 1988 scandrives();
1989 debug_dcl(DP->flags, "setting NEWCHANGE in floppy_start\n"); 1989 debug_dcl(DP->flags, "setting NEWCHANGE in floppy_start\n");
@@ -2007,7 +2007,7 @@ static void floppy_start(void)
2007 2007
2008static void do_wakeup(void) 2008static void do_wakeup(void)
2009{ 2009{
2010 reschedule_timeout(MAXTIMEOUT, "do wakeup", 0); 2010 reschedule_timeout(MAXTIMEOUT, "do wakeup");
2011 cont = NULL; 2011 cont = NULL;
2012 command_status += 2; 2012 command_status += 2;
2013 wake_up(&command_done); 2013 wake_up(&command_done);
@@ -2306,9 +2306,11 @@ static void request_done(int uptodate)
2306 struct request *req = current_req; 2306 struct request *req = current_req;
2307 unsigned long flags; 2307 unsigned long flags;
2308 int block; 2308 int block;
2309 char msg[sizeof("request done ") + sizeof(int) * 3];
2309 2310
2310 probing = 0; 2311 probing = 0;
2311 reschedule_timeout(MAXTIMEOUT, "request done", uptodate); 2312 snprintf(msg, sizeof(msg), "request done %d", uptodate);
2313 reschedule_timeout(MAXTIMEOUT, msg);
2312 2314
2313 if (!req) { 2315 if (!req) {
2314 pr_info("floppy.c: no request in request_done\n"); 2316 pr_info("floppy.c: no request in request_done\n");
@@ -2908,7 +2910,7 @@ do_request:
2908 } 2910 }
2909 drive = (long)current_req->rq_disk->private_data; 2911 drive = (long)current_req->rq_disk->private_data;
2910 set_fdc(drive); 2912 set_fdc(drive);
2911 reschedule_timeout(current_reqD, "redo fd request", 0); 2913 reschedule_timeout(current_reqD, "redo fd request");
2912 2914
2913 set_floppy(drive); 2915 set_floppy(drive);
2914 raw_cmd = &default_raw_cmd; 2916 raw_cmd = &default_raw_cmd;
@@ -4254,7 +4256,7 @@ static int __init floppy_init(void)
4254 else 4256 else
4255 floppy_sizes[i] = MAX_DISK_SIZE << 1; 4257 floppy_sizes[i] = MAX_DISK_SIZE << 1;
4256 4258
4257 reschedule_timeout(MAXTIMEOUT, "floppy init", MAXTIMEOUT); 4259 reschedule_timeout(MAXTIMEOUT, "floppy init");
4258 config_types(); 4260 config_types();
4259 4261
4260 for (i = 0; i < N_FDC; i++) { 4262 for (i = 0; i < N_FDC; i++) {