[Top][All Lists]

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

Re: [bug #26751] creating memory objects through the proxy defpager can

From: Da Zheng
Subject: Re: [bug #26751] creating memory objects through the proxy defpager can fail
Date: Sun, 07 Jun 2009 12:54:44 +0800
User-agent: Thunderbird (Macintosh/20090302)

Ben Asselstine wrote:

                 Summary: creating memory objects through the proxy defpager
can fail
                 Project: The GNU Hurd
            Submitted by: benasselstine
            Submitted on: Sat 06 Jun 2009 08:55:16 PM EDT
                Category: None
                Severity: 3 - Normal
                Priority: 5 - Normal
              Item Group: None
                  Status: None
                 Privacy: Public
             Assigned to: None
Originator Name: Originator Email: Open/Closed: Open
         Discussion Lock: Any
         Reproducibility: None
              Size (loc): None
         Planned Release: None
                  Effort: 0.00
Wiki-like text discussion box:


When I create a sample program that uses the default_pager_object interface
to create a new memory object it fails.  I'm running the program as root.

1. open the /servers/default-pager file
(this is running /hurd/proxy-defpager)

2. call default_pager_object_create, and try to make an object of 4k.

The call fails with a server died message.

This mail message shows a similar error:

Fixing this bug would help tmpfs run correctly.


Reply to this item at:


  Message sent via/by Savannah


I got an error the first time I used proxy-pager, so I did a little modification. I am not sure whether we got the same problem. I hope the patch below might help.
Let me know if it works.

Thank you,
Zheng Da

2009-06-07  Zheng Da  <zhengda1936@gmail.com>

   * Makefile: Use customized default_pager.defs.

   * proxy-defpager.c: Include customized default_pager header.

Index: Makefile
RCS file: /sources/hurd/hurd/trans/Makefile,v
retrieving revision 1.40
retrieving revision
diff -u -a -r1.40 -r1.40.10.1
--- Makefile    6 Jun 2007 16:08:56 -0000    1.40
+++ Makefile    7 Jun 2009 03:51:49 -0000
@@ -26,13 +26,16 @@
    fakeroot.c proxy-defpager.c
OBJS = $(SRCS:.c=.o) fsysServer.o ifsockServer.o passwordServer.o \
    crashServer.o crash_replyUser.o msgServer.o \
-    default_pagerServer.o default_pagerUser.o \
+    ourdefault_pagerServer.o ourdefault_pagerUser.o \
    device_replyServer.o elfcore.o
HURDLIBS = threads ports netfs trivfs fshelp pipe ihash shouldbeinlibc
password-LDLIBS = $(LIBCRYPT)

include ../Makeconf

+ourdefault_pager.defs: default_pager.defs
+ $(CPP) $(CPPFLAGS) -x c $< | sed -e '/MACH_MSG_TYPE_MAKE_SEND;/s/MAKE/COPY/' | sed -e '/subsystem/iserverprefix S_;' > $@
vpath elfcore.c $(top_srcdir)/exec

symlink: fsysServer.o
@@ -40,7 +43,7 @@
crash: crashServer.o crash_replyUser.o msgServer.o elfcore.o
password: passwordServer.o
streamio: device_replyServer.o
-proxy-defpager: default_pagerServer.o default_pagerUser.o
+proxy-defpager: ourdefault_pagerServer.o ourdefault_pagerUser.o

proxy-defpager crash password streamio: ../libthreads/libthreads.a ../libports/libports.a ../libtrivfs/libtrivfs.a ../libthreads/libthreads.a ../libfshelp/libfshelp.a
fifo new-fifo: ../libpipe/libpipe.a
Index: proxy-defpager.c
RCS file: /sources/hurd/hurd/trans/proxy-defpager.c,v
retrieving revision 1.5
retrieving revision
diff -u -a -r1.5 -r1.5.10.1
--- proxy-defpager.c    6 Jun 2007 16:08:56 -0000    1.5
+++ proxy-defpager.c    7 Jun 2009 03:51:49 -0000
@@ -23,9 +23,10 @@
#include <error.h>
#include <version.h>
#include <hurd/paths.h>
+#include <string.h>

-#include "default_pager_S.h"
-#include "default_pager_U.h"
+#include "ourdefault_pager_S.h"
+#include "ourdefault_pager_U.h"

static mach_port_t real_defpager, dev_master;

reply via email to

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