Hello! On Wed, Jun 20, 2007 at 08:08:09PM +0200, Martin Mares wrote: > > GNU Mach / GNU Hurd has changed the method by which access to i/o ports > > is granted, so please apply the attached patch to your pciutils > > repository. > > Which patch? (There was no attachment in your mail.)
Indeed. Let me try this again. :-) Regards, Thomas
2007-06-20 Thomas Schwinge <[EMAIL PROTECTED]>
* lib/i386-io-hurd.h: Rewritten.
diff --git a/lib/i386-io-hurd.h b/lib/i386-io-hurd.h
index 334ce0a..b61d656 100644
--- a/lib/i386-io-hurd.h
+++ b/lib/i386-io-hurd.h
@@ -5,46 +5,23 @@
* Copyright (c) 2003 Martin Mares <[EMAIL PROTECTED]>
* Copyright (c) 2006 Samuel Thibault <[EMAIL PROTECTED]> and
* Thomas Schwinge <[EMAIL PROTECTED]>
+ * Copyright (c) 2007 Thomas Schwinge <[EMAIL PROTECTED]>
*
* Can be freely distributed and used under the terms of the GNU GPL.
*/
#include <sys/io.h>
-#include <mach/machine/mach_i386.h>
-#include <device/device.h>
-#include <hurd.h>
-
-#include <stdio.h>
-
-static mach_port_t io_port;
-
static inline int
-intel_setup_io(struct pci_access *a)
+intel_setup_io(struct pci_access *a UNUSED)
{
- mach_port_t device;
-
- if ((errno = get_privileged_ports(NULL, &device)))
- a->warning("i386-io-hurd: Can't get_privileged_ports(): %m");
-
- if (!errno && (errno = device_open(device, D_READ | D_WRITE, "io",
&io_port)))
- a->warning("i386-io-hurd: Can't device_open(): %m");
-
- mach_port_deallocate(mach_task_self(), device);
-
- if (!errno && (errno = i386_io_port_add(mach_thread_self(), io_port)))
- a->warning("i386-io-hurd: Can't i386_io_port_add(): %m");
-
- return errno ? 0 : 1;
+ return (ioperm (0, 65535, 1) == -1) ? 0 : 1;
}
static inline int
-intel_cleanup_io(struct pci_access *a)
+intel_cleanup_io(struct pci_access *a UNUSED)
{
- if ((errno = i386_io_port_remove(mach_thread_self(), io_port)))
- a->warning("i386-io-hurd: Can't i386_io_port_remove(): %m");
-
- mach_port_deallocate(mach_task_self(), io_port);
+ ioperm (0, 65535, 0);
return -1;
}
signature.asc
Description: Digital signature
_______________________________________________ Bug-hurd mailing list [email protected] http://lists.gnu.org/mailman/listinfo/bug-hurd
