Bug 84731 - sata_sil driver fails to access attached devices returns error -16
Summary: sata_sil driver fails to access attached devices returns error -16
Status: NEW
Alias: None
Product: Drivers
Classification: Unclassified
Component: Other (show other bugs)
Hardware: i386 Linux
: P1 blocking
Assignee: drivers_other
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2014-09-17 12:13 UTC by Volumetricsteve@gmail.com
Modified: 2014-12-11 14:27 UTC (History)
2 users (show)

See Also:
Kernel Version: 3.16.1-1-ARCH
Subsystem:
Regression: No
Bisected commit-id:


Attachments

Description Volumetricsteve@gmail.com 2014-09-17 12:13:12 UTC
sata_sil driver returns error -16 when trying to detect attached sata devices at boot.  

Specifically, at boot, I get:

Sep 15 13:25:57 archiso kernel: sata_sil 0000:02:0c.0: version 2.4
Sep 15 13:25:57 archiso kernel: genirq: Flags mismatch irq 6. 00000080 (sata_sil) vs. 00000000 (floppy)
Sep 15 13:25:57 archiso kernel: sata_sil: probe of 0000:02:0c.0 failed with error -16

This happens with all bios versions of the adaptec 1210sa (which is just a fancy Silicon Image sil 3112 chipset)

I suspect this is a kernel issue because I've booted other distros of linux, all of which have different kernel versions, and this device works.

When I looked into the issue on my own, it seems like this driver gets broken from time to time, but then it'll only get fixed for the next release and get broken again.
Comment 1 Alan 2014-12-10 19:34:08 UTC
Does this occur if you don't have floppy support built in ?
Comment 2 Volumetricsteve@gmail.com 2014-12-10 20:05:44 UTC
I can try disabling my on-board floppy adapter, is that what you mean?
Comment 3 Alan 2014-12-10 20:21:03 UTC
Oh you actually have a real floppy adapter - yes that would also be interesting as well as trying a kernel without floppy driver enabled.
Comment 4 Volumetricsteve@gmail.com 2014-12-10 21:05:25 UTC
For what it's worth, the system board(s) I gathered the error on is the Intel D820LP, using the Adaptec 1210sa, which is where the sata_sil driver comes in.  I'll give it a shot with the floppy disabled and let you know what I find.
Comment 5 Volumetricsteve@gmail.com 2014-12-10 22:31:15 UTC
I get the same error if the floppy controller is disabled or not.
Comment 6 Alan 2014-12-11 12:46:21 UTC
Assuming the driver is built into your kernel try booting with floppy.FLOPPY_IRQ=0

if it's not built in then try the boot option

                 floppy.blacklist=y

What seems to be happening is your BIOS is assigning the same interrupt to both the floppy (an ISA non sharable interrupt) and the 1210SA.
Comment 7 Volumetricsteve@gmail.com 2014-12-11 13:30:08 UTC
whoa....well, luckily I don't really need floppy support.  I wonder if I can force an IRQ on the 1210sa?
Comment 8 Alan 2014-12-11 14:17:49 UTC
The BIOS may let you change the PCI IRQ allocations. I assume the floppy controller is on the motherboard ?
Comment 9 Volumetricsteve@gmail.com 2014-12-11 14:27:18 UTC
Correct.  Although it just hit me, I'm able to get older linux kernels (2.6.x) to boot up (specifically the SliTaz distro) and I don't get any IRQ issues there, it all just works, which led me to believe this was a kernel issue.

Note You need to log in before you can comment on or make changes to this bug.