Commit 43d81bb6 authored by Willy Tarreau's avatar Willy Tarreau Committed by Denis Efremov

floppy: cleanup: make next_valid_format() not rely on current_drive anymore

Now the drive is passed in argument so that the function does not
use current_drive anymore.

Link: https://lore.kernel.org/r/20200331094054.24441-21-w@1wt.euSigned-off-by: default avatarWilly Tarreau <w@1wt.eu>
Signed-off-by: default avatarDenis Efremov <efremov@linux.com>
parent c7af70b0
......@@ -2058,18 +2058,18 @@ static void success_and_wakeup(void)
* ==========================
*/
static int next_valid_format(void)
static int next_valid_format(int drive)
{
int probed_format;
probed_format = drive_state[current_drive].probed_format;
probed_format = drive_state[drive].probed_format;
while (1) {
if (probed_format >= 8 || !drive_params[current_drive].autodetect[probed_format]) {
drive_state[current_drive].probed_format = 0;
if (probed_format >= 8 || !drive_params[drive].autodetect[probed_format]) {
drive_state[drive].probed_format = 0;
return 1;
}
if (floppy_type[drive_params[current_drive].autodetect[probed_format]].sect) {
drive_state[current_drive].probed_format = probed_format;
if (floppy_type[drive_params[drive].autodetect[probed_format]].sect) {
drive_state[drive].probed_format = probed_format;
return 0;
}
probed_format++;
......@@ -2082,7 +2082,7 @@ static void bad_flp_intr(void)
if (probing) {
drive_state[current_drive].probed_format++;
if (!next_valid_format())
if (!next_valid_format(current_drive))
return;
}
err_count = ++(*errors);
......@@ -2884,7 +2884,7 @@ static void redo_fd_request(void)
if (!_floppy) { /* Autodetection */
if (!probing) {
drive_state[current_drive].probed_format = 0;
if (next_valid_format()) {
if (next_valid_format(current_drive)) {
DPRINT("no autodetectable formats\n");
_floppy = NULL;
request_done(0);
......
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