[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH 2/2] libports: fix receiver lookup
From: |
Justus Winter |
Subject: |
[PATCH 2/2] libports: fix receiver lookup |
Date: |
Wed, 9 Apr 2014 23:17:28 +0200 |
* libports/interrupt-operation.c (ports_S_interrupt_operation): Fix
receiver lookup.
* libports/mig-mutate.h: Add mutators.
* libports/ports.h: Remove superfluous declarations.
---
libports/interrupt-operation.c | 4 +---
libports/mig-mutate.h | 7 +++++++
libports/ports.h | 5 -----
3 files changed, 8 insertions(+), 8 deletions(-)
diff --git a/libports/interrupt-operation.c b/libports/interrupt-operation.c
index 19c0edf..943bd4f 100644
--- a/libports/interrupt-operation.c
+++ b/libports/interrupt-operation.c
@@ -24,10 +24,9 @@
/* Cause a pending request on this object to immediately return. The
exact semantics are dependent on the specific object. */
kern_return_t
-ports_S_interrupt_operation (mach_port_t port,
+ports_S_interrupt_operation (struct port_info *pi,
mach_port_seqno_t seqno)
{
- struct port_info *pi = ports_lookup_port (0, port, 0);
if (!pi)
return EOPNOTSUPP;
pthread_mutex_lock (&_ports_lock);
@@ -35,6 +34,5 @@ ports_S_interrupt_operation (mach_port_t port,
pi->cancel_threshold = seqno;
pthread_mutex_unlock (&_ports_lock);
ports_interrupt_rpcs (pi);
- ports_port_deref (pi);
return 0;
}
diff --git a/libports/mig-mutate.h b/libports/mig-mutate.h
index f692236..4c011b6 100644
--- a/libports/mig-mutate.h
+++ b/libports/mig-mutate.h
@@ -23,3 +23,10 @@
end_using_port_info (port_info_t)
#define NOTIFY_IMPORTS \
import "libports/mig-decls.h";
+
+#define INTERRUPT_INTRAN \
+ port_info_t begin_using_port_info_port (mach_port_t)
+#define INTERRUPT_DESTRUCTOR \
+ end_using_port_info (port_info_t)
+#define INTERRUPT_IMPORTS \
+ import "libports/mig-decls.h";
diff --git a/libports/ports.h b/libports/ports.h
index 47d4607..7f13124 100644
--- a/libports/ports.h
+++ b/libports/ports.h
@@ -398,11 +398,6 @@ extern kern_return_t
ports_do_mach_notify_port_destroyed (struct port_info *pi, mach_port_t name);
extern kern_return_t
ports_do_mach_notify_send_once (struct port_info *pi);
-
-/* A default interrupt server */
-int ports_interrupt_server (mach_msg_header_t *, mach_msg_header_t *);
-extern kern_return_t ports_S_interrupt_operation (mach_port_t,
- mach_port_seqno_t);
/* Private data */
extern pthread_mutex_t _ports_lock;
--
1.9.1