summaryrefslogtreecommitdiff
path: root/debian/patches/43_debvice_port_fix.patch
blob: 49460a9d6151490efe9806c1681c50285baa56cb (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
#DPATCHLEVEL=1

2006-01-02  Samuel Thibault <samuel.thibault@ens-lyon.org>

	* i386/i386/iopb.c (i386_io_port_add): Fix getting device parameter.
	(i386_io_port_remove): Same as above.


diff -urp gnumach-mine-2-default_noio/i386/i386/iopb.c gnumach-mine-3-device_port_fix/i386/i386/iopb.c
--- gnumach-mine-2-default_noio/i386/i386/iopb.c	2006-01-02 18:38:31.000000000 +0100
+++ gnumach-mine-3-device_port_fix/i386/i386/iopb.c	2006-01-02 18:42:45.000000000 +0100
@@ -308,12 +308,22 @@
 /*
  * Add an IO mapping to a thread.
  */
+#ifdef i386
+kern_return_t
+i386_io_port_add(
+	thread_t	thread,
+	device_t	d)
+#else
 kern_return_t
 i386_io_port_add(
 	thread_t	thread,
 	mach_device_t	device)
+#endif
 {
 	pcb_t		pcb;
+#ifdef i386
+	mach_device_t	device = d->emul_data;
+#endif
 	iopb_tss_t	io_tss, new_io_tss;
 	io_port_t	io_port;
 	io_use_t	iu, old_iu;
@@ -407,12 +417,22 @@
 /*
  * Remove an IO mapping from a thread.
  */
+#ifdef i386
+kern_return_t
+i386_io_port_remove(thread, d)
+	thread_t	thread;
+	device_t	d;
+#else
 kern_return_t
 i386_io_port_remove(thread, device)
 	thread_t	thread;
 	mach_device_t	device;
+#endif
 {
 	pcb_t		pcb;
+#ifdef i386
+	mach_device_t	device = d->emul_data;
+#endif
 	iopb_tss_t	io_tss;
 	io_port_t	io_port;
 	io_use_t	iu;