]> Zhao Yanbai Git Server - minix.git/commitdiff
Cut PM out of the adddma/deldma/getdma call path
authorDavid van Moolenbroek <david@minix3.org>
Thu, 12 Jan 2012 23:23:04 +0000 (00:23 +0100)
committerDavid van Moolenbroek <david@minix3.org>
Fri, 13 Jan 2012 23:27:06 +0000 (00:27 +0100)
30 files changed:
common/include/minix/callnr.h
common/include/minix/com.h
common/include/minix/vm.h
drivers/amddev/amddev.c
etc/system.conf
include/unistd.h
lib/libc/other/Makefile.inc
lib/libc/other/_adddma.c [deleted file]
lib/libc/other/_deldma.c [deleted file]
lib/libc/other/_getdma.c [deleted file]
lib/libc/other/_vm_dmacalls.c [deleted file]
lib/libc/syscall/Makefile.inc
lib/libc/syscall/adddma.S [deleted file]
lib/libc/syscall/deldma.S [deleted file]
lib/libc/syscall/getdma.S [deleted file]
lib/libc/syscall/vm_dmacalls.S [deleted file]
lib/libsys/Makefile
lib/libsys/vm_dmacalls.c [moved from lib/nbsd_libminlib/vm_dmacalls.c with 70% similarity]
lib/nbsd_libminlib/Makefile
lib/nbsd_libminlib/adddma.c [deleted file]
lib/nbsd_libminlib/deldma.c [deleted file]
lib/nbsd_libminlib/getdma.c [deleted file]
nbsd_include/unistd.h
servers/avfs/table.c
servers/pm/Makefile
servers/pm/dma.c [deleted file]
servers/pm/proto.h
servers/pm/table.c
servers/vfs/table.c
servers/vm/alloc.c

index 70d1b2203064be8b629d7bf86489ef0a342c0e68..2fec5d1d4bc9942492cb7b77baa397ac45692dff 100644 (file)
 #define GETPROCNR      104     /* to PM */
 #define ISSETUGID      106     /* to PM: ask if process is tainted */
 #define GETEPINFO_O    107     /* to PM: get pid/uid/gid of an endpoint */
-#define ADDDMA         108     /* to PM: inform PM about a region of memory
-                                * that is used for bus-master DMA
-                                */
-#define DELDMA         109     /* to PM: inform PM that a region of memory
-                                * that is no longer used for bus-master DMA
-                                */
-#define GETDMA         110     /* to PM: ask PM for a region of memory
-                                * that should not be used for bus-master DMA
-                                * any longer
-                                */
 #define SRV_KILL       111     /* to PM: special kill call for RS */
 
 #define GCOV_FLUSH     112     /* flush gcov data from server to gcov files */
index 7047ff6d0ad940c117681eaba89c00ff5662f40a..1278c6018e7855c959110a9113a0010853099287 100644 (file)
  * bus-master DMA
  */
 #define VM_ADDDMA      (VM_RQ_BASE+12)
-#      define VMAD_REQ                 m2_i2
 #      define VMAD_EP                  m2_i1
 #      define VMAD_START               m2_l1
 #      define VMAD_SIZE                m2_l2
  * used for bus-master DMA
  */
 #define VM_DELDMA       (VM_RQ_BASE+13)
-#      define VMDD_REQ                 m2_i2
 #      define VMDD_EP                  m2_i1
 #      define VMDD_START               m2_l1
 #      define VMDD_SIZE                m2_l2
  * be used for bus-master DMA any longer
  */
 #define VM_GETDMA       (VM_RQ_BASE+14)
-#      define VMGD_REQ                 m2_i2
 #      define VMGD_PROCP               m2_i1
 #      define VMGD_BASEP               m2_l1
 #      define VMGD_SIZEP               m2_l2
index 6ce0d5c7e5654a8ec963eaabdcadcefc2725b4da..c2d639da7979a7ec139180c834229b0526c0ffa0 100644 (file)
@@ -13,12 +13,12 @@ _PROTOTYPE( int vm_exec_newmem, (endpoint_t ep, struct exec_newmem *args,
        int args_bytes, char **ret_stack_top, int *ret_flags));
 _PROTOTYPE( int vm_push_sig, (endpoint_t ep, vir_bytes *old_sp));
 _PROTOTYPE( int vm_willexit, (endpoint_t ep));
-_PROTOTYPE( int vm_adddma, (endpoint_t req_e, endpoint_t proc_e, 
-                                phys_bytes start, phys_bytes size)      );
-_PROTOTYPE( int vm_deldma, (endpoint_t req_e, endpoint_t proc_e, 
-                                phys_bytes start, phys_bytes size)      );
-_PROTOTYPE( int vm_getdma, (endpoint_t req_e, endpoint_t *procp,
-                               phys_bytes *basep, phys_bytes *sizep)   );
+_PROTOTYPE( int vm_adddma, (endpoint_t proc_e, phys_bytes start,
+       phys_bytes size));
+_PROTOTYPE( int vm_deldma, (endpoint_t proc_e, phys_bytes start,
+       phys_bytes size));
+_PROTOTYPE( int vm_getdma, (endpoint_t *procp, phys_bytes *basep,
+       phys_bytes *sizep));
 _PROTOTYPE( void *vm_map_phys, (endpoint_t who, void *physaddr, size_t len));
 _PROTOTYPE( int vm_unmap_phys, (endpoint_t who, void *vaddr, size_t len));
 
index 30fb4b7fe2fd935fde6a1e5fea47584c5a68c1fb..b76053b120b0beaef5588e9c597c106c7891b43a 100644 (file)
@@ -168,13 +168,13 @@ PRIVATE void sef_cb_signal_handler(int signo)
 
        for (;;)
        {
-               r= getdma(&proc_e, &base, &size);
+               r= vm_getdma(&proc_e, &base, &size);
                if (r == -1)
                {
                        if (errno != -EAGAIN)
                        {
                                printf(
-                               "amddev: getdma failed: %d\n",
+                               "amddev: vm_getdma failed: %d\n",
                                        errno);
                        }
                        break;
@@ -184,10 +184,10 @@ PRIVATE void sef_cb_signal_handler(int signo)
                "amddev: deleting 0x%lx@0x%lx for proc %d\n",
                        size, base, proc_e);
                del_range(base, size);
-               r= deldma(proc_e, base, size);
+               r= vm_deldma(proc_e, base, size);
                if (r == -1)
                {
-                       printf("amddev: deldma failed: %d\n",
+                       printf("amddev: vm_deldma failed: %d\n",
                                errno);
                        break;
                }
@@ -411,13 +411,12 @@ static int do_add4pci(const message *m)
                return r;
        }
 
-       r= adddma(proc, start, size);
+       r= vm_adddma(proc, start, size);
        if (r != 0)
        {
                r= -errno;
-               printf(
-               "amddev`do_add4pci: adddma failed for 0x%x@0x%lx, proc %d: %d\n",
-                       size, start, proc, r);
+               printf("amddev`do_add4pci: vm_adddma failed for 0x%x@0x%lx, "
+                       "proc %d: %d\n", size, start, proc, r);
                return r;
        }
 
index e9ebbf49a0a10347e2f63790be341064ced17551..efa65b714068b10cf8b25cc5d34c10ec72d244d9 100644 (file)
@@ -60,9 +60,6 @@ service pm
                EXEC_NEWMEM     # 03
                PUSH_SIG        # 04
                WILLEXIT        # 05
-               ADDDMA          # 12
-               DELDMA          # 13
-               GETDMA          # 14
                NOTIFY_SIG      # 39
                ;
        io      NONE;           # No I/O range allowed
@@ -470,6 +467,11 @@ service amddev
        system
                UMAP_REMOTE     # 17
        ;
+       vm
+               ADDDMA          # 12
+               DELDMA          # 13
+               GETDMA          # 14
+       ;
        uid     0;
 };
 
index 53f59b079facd1dae0d67ec86266f8e7ffd1b8bf..1d1cdc8121be4c60aab95d1b3a55e27de18801e7 100644 (file)
@@ -190,13 +190,6 @@ _PROTOTYPE( int getpprocnr, (void)                                 );
 _PROTOTYPE( int _pm_findproc, (char *proc_name, int *proc_nr)          );
 _PROTOTYPE( int mapdriver, (char *label, int major, int style,
                                                        int flags)      );
-_PROTOTYPE(int adddma, (endpoint_t proc_e,
-                               phys_bytes start, phys_bytes size)      );
-_PROTOTYPE(int deldma, (endpoint_t proc_e,
-                               phys_bytes start, phys_bytes size)      );
-_PROTOTYPE(int getdma, (endpoint_t *procp, phys_bytes *basep, 
-                                               phys_bytes *sizep)      );
-
 _PROTOTYPE( pid_t getnpid, (endpoint_t proc_ep)                                );
 _PROTOTYPE( uid_t getnuid, (endpoint_t proc_ep)                                );
 _PROTOTYPE( gid_t getngid, (endpoint_t proc_ep)                                );
index 199b7845587c45737337b159d1889ba36fd6f9c3..6b9d1c7d34f6a0722cec4fa7c169a557715780d9 100644 (file)
@@ -6,12 +6,9 @@ CPPFLAGS.fsversion.c+=-I${.CURDIR}/../../servers
 
 SRCS+=  \
        __pm_findproc.c \
-       _adddma.c \
        _brk.c \
        _cprofile.c \
-       _deldma.c \
        _getdents.c \
-       _getdma.c \
        _getnpid.c \
        _getnucred.c \
        _getnuid.c \
@@ -30,7 +27,6 @@ SRCS+=  \
        _sprofile.c \
        _svrctl.c \
        _sysuname.c \
-       _vm_dmacalls.c \
        _vm_memctl.c \
        _vm_set_priv.c \
        _vm_update.c \
diff --git a/lib/libc/other/_adddma.c b/lib/libc/other/_adddma.c
deleted file mode 100644 (file)
index 651883e..0000000
+++ /dev/null
@@ -1,21 +0,0 @@
-/* adddma.c 
- */
-
-#include <lib.h>
-#define adddma _adddma
-#include <unistd.h>
-#include <stdarg.h>
-
-int adddma(proc_e, start, size)
-endpoint_t proc_e;
-phys_bytes start;
-phys_bytes size;
-{
-  message m;
-
-  m.m2_i1= proc_e;
-  m.m2_l1= start;
-  m.m2_l2= size;
-
-  return _syscall(PM_PROC_NR, ADDDMA, &m);
-}
diff --git a/lib/libc/other/_deldma.c b/lib/libc/other/_deldma.c
deleted file mode 100644 (file)
index c5eceab..0000000
+++ /dev/null
@@ -1,21 +0,0 @@
-/* deldma.c 
- */
-
-#include <lib.h>
-#define deldma _deldma
-#include <unistd.h>
-#include <stdarg.h>
-
-int deldma(proc_e, start, size)
-endpoint_t proc_e;
-phys_bytes start;
-phys_bytes size;
-{
-  message m;
-
-  m.m2_i1= proc_e;
-  m.m2_l1= start;
-  m.m2_l2= size;
-
-  return _syscall(PM_PROC_NR, DELDMA, &m);
-}
diff --git a/lib/libc/other/_getdma.c b/lib/libc/other/_getdma.c
deleted file mode 100644 (file)
index b0302fe..0000000
+++ /dev/null
@@ -1,25 +0,0 @@
-/* getdma.c 
- */
-
-#include <lib.h>
-#define getdma _getdma
-#include <unistd.h>
-#include <stdarg.h>
-
-int getdma(procp, basep, sizep)
-endpoint_t *procp;
-phys_bytes *basep;
-phys_bytes *sizep;
-{
-  int r;
-  message m;
-
-  r= _syscall(PM_PROC_NR, GETDMA, &m);
-  if (r == 0)
-  {
-       *procp= m.m2_i1;
-       *basep= m.m2_l1;
-       *sizep= m.m2_l2;
-  }
-  return r;
-}
diff --git a/lib/libc/other/_vm_dmacalls.c b/lib/libc/other/_vm_dmacalls.c
deleted file mode 100644 (file)
index 1723408..0000000
+++ /dev/null
@@ -1,62 +0,0 @@
-
-#include <lib.h>
-#define vm_adddma      _vm_adddma
-#define vm_deldma      _vm_deldma
-#define vm_getdma      _vm_getdma
-#include <minix/vm.h>
-#include <unistd.h>
-#include <stdarg.h>
-
-int vm_adddma(req_proc_e, proc_e, start, size)
-endpoint_t req_proc_e;
-endpoint_t proc_e;
-phys_bytes start;
-phys_bytes size;
-{
-  message m;
-
-  m.VMAD_REQ= req_proc_e;
-  m.VMAD_EP= proc_e;
-  m.VMAD_START= start;
-  m.VMAD_SIZE= size;
-
-  return _syscall(VM_PROC_NR, VM_ADDDMA, &m);
-}
-
-int vm_deldma(req_proc_e, proc_e, start, size)
-endpoint_t req_proc_e;
-endpoint_t proc_e;
-phys_bytes start;
-phys_bytes size;
-{
-  message m;
-
-  m.VMDD_REQ= proc_e;
-  m.VMDD_EP= proc_e;
-  m.VMDD_START= start;
-  m.VMDD_SIZE= size;
-
-  return _syscall(VM_PROC_NR, VM_DELDMA, &m);
-}
-
-int vm_getdma(req_proc_e, procp, basep, sizep)
-endpoint_t req_proc_e;
-endpoint_t *procp;
-phys_bytes *basep;
-phys_bytes *sizep;
-{
-  int r;
-  message m;
-
-  m.VMGD_REQ = req_proc_e;
-
-  r= _syscall(VM_PROC_NR, VM_GETDMA, &m);
-  if (r == 0)
-  {
-       *procp= m.VMGD_PROCP;
-       *basep= m.VMGD_BASEP;
-       *sizep= m.VMGD_SIZEP;
-  }
-  return r;
-}
-
index 3852d1e5a654de0b276e7cdc6c03b083695b21aa..48782adf3250f881bde64d4e399f54915f6f289f 100644 (file)
@@ -5,7 +5,6 @@ SRCS+=  \
        _exit.S \
        _pm_findproc.S \
        access.S \
-       adddma.S \
        alarm.S \
        brk.S \
        cfgetispeed.S \
@@ -20,7 +19,6 @@ SRCS+=  \
        closedir.S \
        cprofile.S \
        creat.S \
-       deldma.S \
        dup.S \
        dup2.S \
        execl.S \
@@ -39,7 +37,6 @@ SRCS+=  \
        fstatvfs.S \
        getcwd.S \
        getdents.S \
-       getdma.S \
        getegid.S \
        geteuid.S \
        getgid.S \
@@ -134,7 +131,6 @@ SRCS+=  \
        uname.S \
        unlink.S \
        utime.S \
-       vm_dmacalls.S \
        wait.S \
        waitpid.S \
        write.S
diff --git a/lib/libc/syscall/adddma.S b/lib/libc/syscall/adddma.S
deleted file mode 100644 (file)
index 37af0c9..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-#include <machine/asm.h>
-
-IMPORT(_adddma)
-ENTRY(adddma)
-       jmp     _C_LABEL(_adddma)
-
diff --git a/lib/libc/syscall/deldma.S b/lib/libc/syscall/deldma.S
deleted file mode 100644 (file)
index 98a452e..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-#include <machine/asm.h>
-
-IMPORT(_deldma)
-ENTRY(deldma)
-       jmp     _C_LABEL(_deldma)
-
diff --git a/lib/libc/syscall/getdma.S b/lib/libc/syscall/getdma.S
deleted file mode 100644 (file)
index 2439a5b..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-#include <machine/asm.h>
-
-IMPORT(_getdma)
-ENTRY(getdma)
-       jmp     _C_LABEL(_getdma)
-
diff --git a/lib/libc/syscall/vm_dmacalls.S b/lib/libc/syscall/vm_dmacalls.S
deleted file mode 100644 (file)
index fa3635c..0000000
+++ /dev/null
@@ -1,14 +0,0 @@
-#include <machine/asm.h>
-
-IMPORT(_vm_adddma)
-ENTRY(vm_adddma)
-       jmp     _C_LABEL(_vm_adddma)
-
-IMPORT(_vm_deldma)
-ENTRY(vm_deldma)
-       jmp     _C_LABEL(_vm_deldma)
-
-IMPORT(_vm_getdma)
-ENTRY(vm_getdma)
-       jmp     _C_LABEL(_vm_getdma)
-
index 183359f7ed3e967669eb1c45117b5dd8ca83adff..ea12a174124582d6185f0e74db16ac1d59871f20 100644 (file)
@@ -116,6 +116,7 @@ SRCS=  \
        timing.c \
        tsc_util.c \
        vm_brk.c \
+       vm_dmacalls.c \
        vm_exec_newmem.c \
        vm_exit.c \
        vm_fork.c \
similarity index 70%
rename from lib/nbsd_libminlib/vm_dmacalls.c
rename to lib/libsys/vm_dmacalls.c
index cc3dd5e69ecfa451248d396f4c1f380f8fa77a32..bd7bf2dc3476332942d869f9976321fe61d0cd2f 100644 (file)
@@ -4,15 +4,13 @@
 #include <unistd.h>
 #include <stdarg.h>
 
-int vm_adddma(req_proc_e, proc_e, start, size)
-endpoint_t req_proc_e;
+int vm_adddma(proc_e, start, size)
 endpoint_t proc_e;
 phys_bytes start;
 phys_bytes size;
 {
   message m;
 
-  m.VMAD_REQ= req_proc_e;
   m.VMAD_EP= proc_e;
   m.VMAD_START= start;
   m.VMAD_SIZE= size;
@@ -20,15 +18,13 @@ phys_bytes size;
   return _syscall(VM_PROC_NR, VM_ADDDMA, &m);
 }
 
-int vm_deldma(req_proc_e, proc_e, start, size)
-endpoint_t req_proc_e;
+int vm_deldma(proc_e, start, size)
 endpoint_t proc_e;
 phys_bytes start;
 phys_bytes size;
 {
   message m;
 
-  m.VMDD_REQ= proc_e;
   m.VMDD_EP= proc_e;
   m.VMDD_START= start;
   m.VMDD_SIZE= size;
@@ -36,8 +32,7 @@ phys_bytes size;
   return _syscall(VM_PROC_NR, VM_DELDMA, &m);
 }
 
-int vm_getdma(req_proc_e, procp, basep, sizep)
-endpoint_t req_proc_e;
+int vm_getdma(procp, basep, sizep)
 endpoint_t *procp;
 phys_bytes *basep;
 phys_bytes *sizep;
@@ -45,8 +40,6 @@ phys_bytes *sizep;
   int r;
   message m;
 
-  m.VMGD_REQ = req_proc_e;
-
   r= _syscall(VM_PROC_NR, VM_GETDMA, &m);
   if (r == 0)
   {
index 12bbfc39c8fd36a23ade7d4ae87bd1709f432c3b..e4b7fdeef7b2de7b6e267effc4bc87b7802b5e2c 100644 (file)
@@ -26,10 +26,8 @@ SRCS+= servxcheck.c
 SRCS+= paramvalue.c
 
 # Minix servers/drivers syscall.
-SRCS+=         adddma.c getdma.c deldma.c getngid.c getnpid.c \
-       getnprocnr.c getnucred.c getnuid.c getprocnr.c \
-       mapdriver.c vm_dmacalls.c vm_memctl.c \
-       vm_set_priv.c vm_query_exit.c vm_update.c
+SRCS+=         getngid.c getnpid.c getnprocnr.c getnucred.c getnuid.c getprocnr.c \
+       mapdriver.c vm_memctl.c vm_set_priv.c vm_query_exit.c vm_update.c
 
 INCS+= tools.h
 
diff --git a/lib/nbsd_libminlib/adddma.c b/lib/nbsd_libminlib/adddma.c
deleted file mode 100644 (file)
index 3652626..0000000
+++ /dev/null
@@ -1,20 +0,0 @@
-/* adddma.c 
- */
-
-#include <lib.h>
-#include <unistd.h>
-#include <stdarg.h>
-
-int adddma(proc_e, start, size)
-endpoint_t proc_e;
-phys_bytes start;
-phys_bytes size;
-{
-  message m;
-
-  m.m2_i1= proc_e;
-  m.m2_l1= start;
-  m.m2_l2= size;
-
-  return _syscall(PM_PROC_NR, ADDDMA, &m);
-}
diff --git a/lib/nbsd_libminlib/deldma.c b/lib/nbsd_libminlib/deldma.c
deleted file mode 100644 (file)
index 32301b4..0000000
+++ /dev/null
@@ -1,20 +0,0 @@
-/* deldma.c 
- */
-
-#include <lib.h>
-#include <unistd.h>
-#include <stdarg.h>
-
-int deldma(proc_e, start, size)
-endpoint_t proc_e;
-phys_bytes start;
-phys_bytes size;
-{
-  message m;
-
-  m.m2_i1= proc_e;
-  m.m2_l1= start;
-  m.m2_l2= size;
-
-  return _syscall(PM_PROC_NR, DELDMA, &m);
-}
diff --git a/lib/nbsd_libminlib/getdma.c b/lib/nbsd_libminlib/getdma.c
deleted file mode 100644 (file)
index 6588bab..0000000
+++ /dev/null
@@ -1,24 +0,0 @@
-/* getdma.c 
- */
-
-#include <lib.h>
-#include <unistd.h>
-#include <stdarg.h>
-
-int getdma(procp, basep, sizep)
-endpoint_t *procp;
-phys_bytes *basep;
-phys_bytes *sizep;
-{
-  int r;
-  message m;
-
-  r= _syscall(PM_PROC_NR, GETDMA, &m);
-  if (r == 0)
-  {
-       *procp= m.m2_i1;
-       *basep= m.m2_l1;
-       *sizep= m.m2_l2;
-  }
-  return r;
-}
index 0f16daa73007eb46fffe7cfad9e6de1ea9be0675..505f9ac23055c6c277c2cc444cfbd47a21adb89f 100644 (file)
@@ -315,9 +315,6 @@ int getnprocnr(pid_t pid);
 int getpprocnr(void);
 int _pm_findproc(char *proc_name, int *proc_nr);
 int mapdriver(char *label, int major, int style, int flags);
-int adddma(endpoint_t proc_e, phys_bytes start, phys_bytes size);
-int deldma(endpoint_t proc_e, phys_bytes start, phys_bytes size);
-int getdma(endpoint_t *procp, phys_bytes *basep, phys_bytes *sizep);
 pid_t getnpid(endpoint_t proc_ep);
 uid_t getnuid(endpoint_t proc_ep);
 gid_t getngid(endpoint_t proc_ep);
index 335c7154608735274c9e0f5add4be5147f2d193b..67cd270890724bd48c32e4a426988d02734e610c 100644 (file)
@@ -123,9 +123,9 @@ PUBLIC _PROTOTYPE (int (*call_vec[]), (void) ) = {
        no_sys,         /* 105 = unused */
        no_sys,         /* 106 = unused */
        no_sys,         /* 107 = (getepinfo) */
-       no_sys,         /* 108 = (adddma) */
-       no_sys,         /* 109 = (deldma) */
-       no_sys,         /* 110 = (getdma) */
+       no_sys,         /* 108 = unused */
+       no_sys,         /* 109 = unused */
+       no_sys,         /* 110 = unused */
        no_sys,         /* 111 = (srv_kill) */
        do_gcov_flush,  /* 112 = gcov_flush */
        no_sys,         /* 113 = (getsid) */
index ca9b16d384a9d2f31e3d6682a1fc34c691525313..d4ac7690613edc2b46ff712f42a7dbb4baad061e 100644 (file)
@@ -4,7 +4,7 @@
 PROG=  pm
 SRCS=  main.c forkexit.c break.c exec.c time.c alarm.c \
        signal.c utility.c table.c getset.c misc.c \
-       profile.c dma.c schedule.c
+       profile.c schedule.c
 
 .if ${USE_MCONTEXT} != "no"
 SRCS+= mcontext.c
diff --git a/servers/pm/dma.c b/servers/pm/dma.c
deleted file mode 100644 (file)
index 4760064..0000000
+++ /dev/null
@@ -1,92 +0,0 @@
-
-#include "pm.h"
-
-#include <minix/com.h>
-#include <minix/callnr.h>
-#include <minix/type.h>
-#include <minix/config.h>
-#include <minix/vm.h>
-#include <signal.h>
-#include <stdlib.h>
-#include <string.h>
-
-#include "mproc.h"
-
-/*===========================================================================*
- *                             do_adddma                                    *
- *===========================================================================*/
-PUBLIC int do_adddma()
-{
-       endpoint_t req_proc_e, target_proc_e;
-       int proc_n, r;
-       phys_bytes base, size;
-
-       if (mp->mp_effuid != SUPER_USER)
-               return EPERM;
-
-       req_proc_e= m_in.m_source;
-       target_proc_e= m_in.m2_i1;
-       base= m_in.m2_l1;
-       size= m_in.m2_l2;
-
-       if((r = vm_adddma(req_proc_e, target_proc_e, base, size)) != OK) {
-               printf("pm:do_adddma: vm_adddma failed (%d)\n", r);
-               return r;
-       }
-
-       /* Find target process */
-       if (pm_isokendpt(target_proc_e, &proc_n) != OK)
-       {
-               printf("pm:do_adddma: endpoint %d not found\n", target_proc_e);
-               return EINVAL;
-       }
-
-       return OK;
-}
-
-/*===========================================================================*
- *                             do_deldma                                    *
- *===========================================================================*/
-PUBLIC int do_deldma()
-{
-       endpoint_t req_proc_e, target_proc_e;
-       phys_bytes base, size;
-
-       if (mp->mp_effuid != SUPER_USER)
-               return EPERM;
-
-       req_proc_e= m_in.m_source;
-       target_proc_e= m_in.m2_i1;
-       base= m_in.m2_l1;
-       size= m_in.m2_l2;
-
-       return vm_deldma(req_proc_e, target_proc_e, base, size);
-}
-
-/*===========================================================================*
- *                             do_getdma                                    *
- *===========================================================================*/
-PUBLIC int do_getdma()
-{
-       endpoint_t req_proc_e, proc;
-       int r;
-       phys_bytes base, size;
-
-       if (mp->mp_effuid != SUPER_USER)
-               return EPERM;
-
-       req_proc_e= m_in.m_source;
-
-       if((r=vm_getdma(req_proc_e, &proc, &base, &size)) != OK)
-               return r;
-
-       printf("pm:do_getdma: setting reply to 0x%lx@0x%lx proc %d\n",
-               size, base, proc);
-
-       mp->mp_reply.m2_i1= proc;
-       mp->mp_reply.m2_l1= base;
-       mp->mp_reply.m2_l2= size;
-
-       return OK;
-}
-
index f4c7647d1bd540a7979502729b7ea31a417d8463..ea16cd0299a4193d381fe7ab639bbe3a31832850 100644 (file)
@@ -16,11 +16,6 @@ _PROTOTYPE( void check_vtimer, (int proc_nr, int sig)                        );
 /* break.c */
 _PROTOTYPE( int do_brk, (void)                                         );
 
-/* dma.c */
-_PROTOTYPE( int do_adddma, (void)                                      );
-_PROTOTYPE( int do_deldma, (void)                                      );
-_PROTOTYPE( int do_getdma, (void)                                      );
-
 /* exec.c */
 _PROTOTYPE( int do_exec, (void)                                                );
 _PROTOTYPE( int do_exec_newmem, (void)                                 );
index bb41df2ca827749ba34cfa8bb88b1663ab129d34..5df1015080e90bc288d3574f9e642597c23fcab6 100644 (file)
@@ -119,9 +119,9 @@ _PROTOTYPE (int (*call_vec[]), (void) ) = {
        no_sys,         /* 105 = unused */
        do_get,         /* 106 = issetugid */
        do_getepinfo_o, /* 107 = getepinfo XXX: old implementation*/
-       do_adddma,      /* 108 = adddma */
-       do_deldma,      /* 109 = deldma */
-       do_getdma,      /* 110 = getdma */
+       no_sys,         /* 108 = unused */
+       no_sys,         /* 109 = unused */
+       no_sys,         /* 110 = unused */
        do_srv_kill,    /* 111 = srv_kill */
        no_sys,         /* 112 = gcov_flush */
        do_get,         /* 113 = getsid */
index e47e7111f601749108b7f90486f900a650f15320..629d6501f975fef83698920a961d954e0a9b3b45 100644 (file)
@@ -123,9 +123,9 @@ PUBLIC _PROTOTYPE (int (*call_vec[]), (void) ) = {
        no_sys,         /* 105 = unused */
        no_sys,         /* 106 = unused */
        no_sys,         /* 107 = (getepinfo) */
-       no_sys,         /* 108 = (adddma) */
-       no_sys,         /* 109 = (deldma) */
-       no_sys,         /* 110 = (getdma) */
+       no_sys,         /* 108 = unused */
+       no_sys,         /* 109 = unused */
+       no_sys,         /* 110 = unused */
        no_sys,         /* 111 = (srv_kill) */
        do_gcov_flush,  /* 112 = gcov_flush */
        no_sys,         /* 113 = (getsid) */
index 2aa5f49723e889cb267187f59da6cefd68c718b3..570a389d9522814b0e223d523deaf60b7d2094d0 100644 (file)
@@ -622,12 +622,11 @@ PRIVATE struct dmatab
  *===========================================================================*/
 PUBLIC int do_adddma(message *msg)
 {
-       endpoint_t req_proc_e, target_proc_e;
+       endpoint_t target_proc_e;
        int i, proc_n;
        phys_bytes base, size;
        struct vmproc *vmp;
 
-       req_proc_e= msg->VMAD_REQ;
        target_proc_e= msg->VMAD_EP;
        base= msg->VMAD_START;
        size= msg->VMAD_SIZE;
@@ -675,11 +674,10 @@ PUBLIC int do_adddma(message *msg)
  *===========================================================================*/
 PUBLIC int do_deldma(message *msg)
 {
-       endpoint_t req_proc_e, target_proc_e;
+       endpoint_t target_proc_e;
        int i, j;
        phys_bytes base, size;
 
-       req_proc_e= msg->VMDD_REQ;
        target_proc_e= msg->VMDD_EP;
        base= msg->VMDD_START;
        size= msg->VMDD_SIZE;