Fix the acpi attachment to always start the worker thread.

The previous change to split the worker thread start out of fdc_attach()
did not start the worker thread if the fdc device in the ACPI namespace
did not have an _FDE method.  This fixes hangs when booting with a
floppy controller enabled on certain machines with ACPI.

Tested by:	joel
This commit is contained in:
jhb 2016-05-04 23:00:57 +00:00
parent 09b44517ca
commit 76fb86ddfe

View File

@ -135,14 +135,13 @@ fdc_acpi_attach(device_t dev)
obj = buf.Pointer;
error = fdc_acpi_probe_children(bus, dev, obj->Buffer.Pointer);
if (error == 0)
fdc_start_worker(dev);
out:
if (buf.Pointer)
free(buf.Pointer, M_TEMP);
if (error != 0)
fdc_release_resources(sc);
else
fdc_start_worker(dev);
return (error);
}