diff options
-rw-r--r-- | ChangeLog | 4 | ||||
-rw-r--r-- | i386/i386at/i386at_ds_routines.c | 3 |
2 files changed, 6 insertions, 1 deletions
@@ -1,5 +1,9 @@ 2007-01-02 Samuel Thibault <samuel.thibault@ens-lyon.org> + Fix translation of port into device in the "no sender" notification. + * i386/i386at/i386at_ds_routines.c (ds_notify): Use dev_port_lookup() + for translating the remote port. + Fix loop indexing. * i386/intel/pmap.c (pmap_change_wiring): Increment pte in the unwiring loop. diff --git a/i386/i386at/i386at_ds_routines.c b/i386/i386at/i386at_ds_routines.c index 53a3773..bd9b08a 100644 --- a/i386/i386at/i386at_ds_routines.c +++ b/i386/i386at/i386at_ds_routines.c @@ -232,7 +232,8 @@ ds_notify (mach_msg_header_t *msg) mach_no_senders_notification_t *ns; ns = (mach_no_senders_notification_t *) msg; - dev = (device_t) ns->not_header.msgh_remote_port; + dev = dev_port_lookup((ipc_port_t) ns->not_header.msgh_remote_port); + assert(dev); if (dev->emul_ops->no_senders) (*dev->emul_ops->no_senders) (ns); return TRUE; |