bug-hurd
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[PATCH hurd 1/5] libpager: remove the `seqno' parameters


From: Justus Winter
Subject: [PATCH hurd 1/5] libpager: remove the `seqno' parameters
Date: Wed, 10 Dec 2014 17:21:55 +0100

* libpager/Makefile (MIGSFLAGS): Drop `-DSEQNOS'.
* libpager/priv.h (struct pager): Drop fields `seqno' and `waitingforseqno'.
* libpager/chg-compl.c: Adopt accordingly.
* libpager/data-request.c: Likewise.
* libpager/data-return.c: Likewise.
* libpager/data-unlock.c: Likewise.
* libpager/demuxer.c: Likewise.
* libpager/lock-completed.c: Likewise.
* libpager/no-senders.c: Likewise.
* libpager/notify-stubs.c: Likewise.
* libpager/object-init.c: Likewise.
* libpager/object-terminate.c: Likewise.
* libpager/pager-create.c: Likewise.
* libpager/stubs.c: Likewise.
---
 libpager/Makefile           |  2 +-
 libpager/chg-compl.c        |  3 +--
 libpager/data-request.c     |  3 +--
 libpager/data-return.c      | 13 ++++++-------
 libpager/data-unlock.c      |  3 +--
 libpager/demuxer.c          |  4 ++--
 libpager/lock-completed.c   |  3 +--
 libpager/no-senders.c       |  3 +--
 libpager/notify-stubs.c     | 15 +++++----------
 libpager/object-init.c      |  3 +--
 libpager/object-terminate.c |  3 +--
 libpager/pager-create.c     |  2 --
 libpager/priv.h             |  3 ---
 libpager/stubs.c            |  9 +++------
 14 files changed, 24 insertions(+), 45 deletions(-)

diff --git a/libpager/Makefile b/libpager/Makefile
index a15a899..2bfd845 100644
--- a/libpager/Makefile
+++ b/libpager/Makefile
@@ -31,7 +31,7 @@ HURDLIBS= ports
 LDLIBS += -lpthread
 OBJS = $(SRCS:.c=.o) memory_objectServer.o notifyServer.o
 
-MIGSFLAGS = -DSEQNOS -imacros $(srcdir)/mig-mutate.h
+MIGSFLAGS = -imacros $(srcdir)/mig-mutate.h
 MIGCOMSFLAGS = -prefix _pager_
 
 include ../Makeconf
diff --git a/libpager/chg-compl.c b/libpager/chg-compl.c
index 89ccfc8..3ffe60a 100644
--- a/libpager/chg-compl.c
+++ b/libpager/chg-compl.c
@@ -22,8 +22,7 @@
    when a memory_object_change_attributes call has completed.  Read this
    in combination with pager-attr.c.  */
 kern_return_t
-_pager_seqnos_memory_object_change_completed (struct pager *p,
-                                      mach_port_seqno_t seq,
+_pager_S_memory_object_change_completed (struct pager *p,
                                       boolean_t maycache,
                                       memory_object_copy_strategy_t strat)
 {
diff --git a/libpager/data-request.c b/libpager/data-request.c
index 18f3de6..7069fc8 100644
--- a/libpager/data-request.c
+++ b/libpager/data-request.c
@@ -22,8 +22,7 @@
 
 /* Implement pagein callback as described in <mach/memory_object.defs>. */
 kern_return_t
-_pager_seqnos_memory_object_data_request (struct pager *p,
-                                         mach_port_seqno_t seqno,
+_pager_S_memory_object_data_request (struct pager *p,
                                          mach_port_t control,
                                          vm_offset_t offset,
                                          vm_size_t length,
diff --git a/libpager/data-return.c b/libpager/data-return.c
index f16f323..01f3db2 100644
--- a/libpager/data-return.c
+++ b/libpager/data-return.c
@@ -21,13 +21,12 @@
 #include <string.h>
 #include <assert.h>
 
-/* Worker function used by _pager_seqnos_memory_object_data_return
-   and _pager_seqnos_memory_object_data_initialize.  All args are
-   as for _pager_seqnos_memory_object_data_return; the additional
+/* Worker function used by _pager_S_memory_object_data_return
+   and _pager_S_memory_object_data_initialize.  All args are
+   as for _pager_S_memory_object_data_return; the additional
    INITIALIZING arg identifies which function is calling us. */
 kern_return_t
 _pager_do_write_request (struct pager *p,
-                        mach_port_seqno_t seqno,
                         mach_port_t control,
                         vm_offset_t offset,
                         pointer_t data,
@@ -113,6 +112,7 @@ _pager_do_write_request (struct pager *p,
      than we really have to require (because *all* future writes on
      this object are going to wait for seqno while we wait for the
      previous write), but the case is relatively infrequent.  */
+  /* XXX: Is this still needed?  */
  retry:
   for (i = 0; i < npages; i++)
     if (pm_entries[i] & PM_PAGINGOUT)
@@ -254,8 +254,7 @@ _pager_do_write_request (struct pager *p,
 
 /* Implement pageout call back as described by <mach/memory_object.defs>. */
 kern_return_t
-_pager_seqnos_memory_object_data_return (struct pager *p,
-                                        mach_port_seqno_t seqno,
+_pager_S_memory_object_data_return (struct pager *p,
                                         mach_port_t control,
                                         vm_offset_t offset,
                                         pointer_t data,
@@ -263,6 +262,6 @@ _pager_seqnos_memory_object_data_return (struct pager *p,
                                         int dirty,
                                         int kcopy)
 {
-  return _pager_do_write_request (p, seqno, control, offset, data,
+  return _pager_do_write_request (p, control, offset, data,
                                  length, dirty, kcopy, 0);
 }
diff --git a/libpager/data-unlock.c b/libpager/data-unlock.c
index 8c7c776..8c9680c 100644
--- a/libpager/data-unlock.c
+++ b/libpager/data-unlock.c
@@ -22,8 +22,7 @@
 /* Implement kernel requests for access as described in
    <mach/memory_object.defs>. */
 kern_return_t
-_pager_seqnos_memory_object_data_unlock (struct pager *p,
-                                        mach_port_seqno_t seqno,
+_pager_S_memory_object_data_unlock (struct pager *p,
                                         mach_port_t control,
                                         vm_offset_t offset,
                                         vm_size_t length,
diff --git a/libpager/demuxer.c b/libpager/demuxer.c
index a06c4bf..57a6ccb 100644
--- a/libpager/demuxer.c
+++ b/libpager/demuxer.c
@@ -88,8 +88,8 @@ pager_demuxer (struct requests *requests,
   error_t err = MIG_NO_REPLY;
 
   mig_routine_t routine;
-  if (! ((routine = _pager_seqnos_memory_object_server_routine (inp)) ||
-        (routine = _pager_seqnos_notify_server_routine (inp))))
+  if (! ((routine = _pager_memory_object_server_routine (inp)) ||
+        (routine = _pager_notify_server_routine (inp))))
     return FALSE;
 
 #define MASK   (8u - 1u)
diff --git a/libpager/lock-completed.c b/libpager/lock-completed.c
index 30b1dd3..4b0d87a 100644
--- a/libpager/lock-completed.c
+++ b/libpager/lock-completed.c
@@ -23,8 +23,7 @@
    when a memory_object_lock_request call has completed.  Read this
    in combination with lock-object.c.  */
 kern_return_t
-_pager_seqnos_memory_object_lock_completed (struct pager *p,
-                                           mach_port_seqno_t seqno,
+_pager_S_memory_object_lock_completed (struct pager *p,
                                            mach_port_t control,
                                            vm_offset_t offset,
                                            vm_size_t length)
diff --git a/libpager/no-senders.c b/libpager/no-senders.c
index d0bbe27..b750101 100644
--- a/libpager/no-senders.c
+++ b/libpager/no-senders.c
@@ -21,8 +21,7 @@
 #include "notify_S.h"
 
 error_t
-_pager_do_seqnos_mach_notify_no_senders (struct port_info *pi,
-                                        mach_port_seqno_t seqno,
+_pager_do_mach_notify_no_senders (struct port_info *pi,
                                         mach_port_mscount_t mscount)
 {
   if (!pi ||
diff --git a/libpager/notify-stubs.c b/libpager/notify-stubs.c
index a826420..6440815 100644
--- a/libpager/notify-stubs.c
+++ b/libpager/notify-stubs.c
@@ -23,8 +23,7 @@
 #include <errno.h>
 
 error_t
-_pager_do_seqnos_mach_notify_port_deleted (struct port_info *pi,
-                                          mach_port_seqno_t seqno,
+_pager_do_mach_notify_port_deleted (struct port_info *pi,
                                           mach_port_t name
                                           __attribute__ ((unused)))
 {
@@ -32,8 +31,7 @@ _pager_do_seqnos_mach_notify_port_deleted (struct port_info 
*pi,
 }
 
 error_t
-_pager_do_seqnos_mach_notify_msg_accepted (struct port_info *pi,
-                                          mach_port_seqno_t seqno,
+_pager_do_mach_notify_msg_accepted (struct port_info *pi,
                                           mach_port_t name
                                             __attribute__ ((unused)))
 {
@@ -41,8 +39,7 @@ _pager_do_seqnos_mach_notify_msg_accepted (struct port_info 
*pi,
 }
 
 error_t
-_pager_do_seqnos_mach_notify_port_destroyed (struct port_info *pi,
-                                            mach_port_seqno_t seqno,
+_pager_do_mach_notify_port_destroyed (struct port_info *pi,
                                             mach_port_t name
                                               __attribute__ ((unused)))
 {
@@ -50,15 +47,13 @@ _pager_do_seqnos_mach_notify_port_destroyed (struct 
port_info *pi,
 }
 
 error_t
-_pager_do_seqnos_mach_notify_send_once (struct port_info *pi,
-                                       mach_port_seqno_t seqno)
+_pager_do_mach_notify_send_once (struct port_info *pi)
 {
   return 0;
 }
 
 error_t
-_pager_do_seqnos_mach_notify_dead_name (struct port_info *pi,
-                                       mach_port_seqno_t seqno,
+_pager_do_mach_notify_dead_name (struct port_info *pi,
                                        mach_port_t name
                                          __attribute__ ((unused)))
 {
diff --git a/libpager/object-init.c b/libpager/object-init.c
index eb62c44..619d28f 100644
--- a/libpager/object-init.c
+++ b/libpager/object-init.c
@@ -22,8 +22,7 @@
 /* Implement the object initialiation call as described in
    <mach/memory_object.defs>.  */
 kern_return_t
-_pager_seqnos_memory_object_init (struct pager *p,
-                                 mach_port_seqno_t seqno,
+_pager_S_memory_object_init (struct pager *p,
                                  mach_port_t control,
                                  mach_port_t name,
                                  vm_size_t pagesize)
diff --git a/libpager/object-terminate.c b/libpager/object-terminate.c
index e8c6f38..9529821 100644
--- a/libpager/object-terminate.c
+++ b/libpager/object-terminate.c
@@ -22,8 +22,7 @@
 /* Implement the object termination call from the kernel as described
    in <mach/memory_object.defs>. */
 kern_return_t
-_pager_seqnos_memory_object_terminate (struct pager *p,
-                                      mach_port_seqno_t seqno,
+_pager_S_memory_object_terminate (struct pager *p,
                                       mach_port_t control,
                                       mach_port_t name)
 {
diff --git a/libpager/pager-create.c b/libpager/pager-create.c
index 1fc15b8..b583f02 100644
--- a/libpager/pager-create.c
+++ b/libpager/pager-create.c
@@ -42,10 +42,8 @@ pager_create (struct user_pager_info *upi,
   p->notify_on_evict = notify_on_evict;
   p->memobjcntl = MACH_PORT_NULL;
   p->memobjname = MACH_PORT_NULL;
-  p->seqno = -1;
   p->noterm = 0;
   p->termwaiting = 0;
-  p->waitingforseqno = 0;
   p->pagemap = 0;
   p->pagemapsize = 0;
 
diff --git a/libpager/priv.h b/libpager/priv.h
index 4576e12..a45ae3f 100644
--- a/libpager/priv.h
+++ b/libpager/priv.h
@@ -55,12 +55,9 @@ struct pager
   memory_object_control_t memobjcntl;
   memory_object_name_t memobjname;
 
-  mach_port_seqno_t seqno;
-
   int noterm;                  /* number of threads blocking termination */
 
   int termwaiting:1;
-  int waitingforseqno:1;
 
 #ifdef KERNEL_INIT_RACE
   /* Out of sequence object_init calls waiting for
diff --git a/libpager/stubs.c b/libpager/stubs.c
index c7f1a5a..9a766ec 100644
--- a/libpager/stubs.c
+++ b/libpager/stubs.c
@@ -21,8 +21,7 @@
 #include <stdio.h>
 
 kern_return_t
-_pager_seqnos_memory_object_copy (struct pager *p,
-                          mach_port_seqno_t seq,
+_pager_S_memory_object_copy (struct pager *p,
                           memory_object_control_t obj_ctl,
                           vm_offset_t off,
                           vm_size_t len,
@@ -33,8 +32,7 @@ _pager_seqnos_memory_object_copy (struct pager *p,
 }
 
 kern_return_t
-_pager_seqnos_memory_object_data_write (struct pager *p,
-                                mach_port_seqno_t seq,
+_pager_S_memory_object_data_write (struct pager *p,
                                 mach_port_t ctl,
                                 vm_offset_t off,
                                 pointer_t data,
@@ -45,8 +43,7 @@ _pager_seqnos_memory_object_data_write (struct pager *p,
 }
 
 kern_return_t
-_pager_seqnos_memory_object_supply_completed (struct pager *p,
-                                      mach_port_seqno_t seq,
+_pager_S_memory_object_supply_completed (struct pager *p,
                                       mach_port_t ctl,
                                       vm_offset_t off,
                                       vm_size_t len,
-- 
2.1.3




reply via email to

[Prev in Thread] Current Thread [Next in Thread]