diff options
author | Adam Jackson <ajax@redhat.com> | 2012-06-26 13:15:45 -0400 |
---|---|---|
committer | Adam Jackson <ajax@redhat.com> | 2012-09-20 11:07:27 -0400 |
commit | d88fb00d791c2b19cf9dd244276838aba3a6b442 (patch) | |
tree | f21eb052ef2cbdada9bc5287bb8c9e877d3c7d6d /hw/xfree86/os-support/linux/lnx_video.c | |
parent | 048674a6aeb61149a1b5f6b0bc3762ddf57f38ee (diff) |
linux: Make failure to iopl non-fatal
We load the driver list, then enable I/O, then call driver probe based
on whether I/O enable succeeded. That's bad, because the loaded
security policy might forbid port access. We happen to treat that as
fatal for some reason, which means even drivers that don't need I/O
access (like kms and fbdev) don't get the chance to run. Facepalm.
How about we just make that non-fatal instead, that sounds like a much
better plan.
Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
Reviewed-by: Simon Farnsworth <simon.farnsworth@onelan.co.uk>
Signed-off-by: Adam Jackson <ajax@redhat.com>
Diffstat (limited to 'hw/xfree86/os-support/linux/lnx_video.c')
-rw-r--r-- | hw/xfree86/os-support/linux/lnx_video.c | 7 |
1 files changed, 2 insertions, 5 deletions
diff --git a/hw/xfree86/os-support/linux/lnx_video.c b/hw/xfree86/os-support/linux/lnx_video.c index 895a79bbd..d9a5da184 100644 --- a/hw/xfree86/os-support/linux/lnx_video.c +++ b/hw/xfree86/os-support/linux/lnx_video.c @@ -510,11 +510,8 @@ static Bool hwEnableIO(void) { if (ioperm(0, 1024, 1) || iopl(3)) { - if (errno == ENODEV) - ErrorF("xf86EnableIOPorts: no I/O ports found\n"); - else - FatalError("xf86EnableIOPorts: failed to set IOPL" - " for I/O (%s)\n", strerror(errno)); + ErrorF("xf86EnableIOPorts: failed to set IOPL for I/O (%s)\n", + strerror(errno)); return FALSE; } #if !defined(__alpha__) |