On Sat, Jun 15, 2019 at 11:05 AM Almudena Garcia
wrote:
> Great job!! I'm reading the paper, looks very good.
>
> I'm working in SMP support, using xAPIC (32 bit yet). Your work makes more
> sense to my project :-)
> You can find my work here: https://github.com/AlmuHS/GNUMach_SMP
>
I haven't
On Mon, Jun 17, 2019 at 4:12 AM Joan Lledó wrote:
> Hi Brent,
>
> I've only read the introduction sections for now, but I found a little
> typo: the title of the paper says: "Building an SSI *Cluter* with
> GNU/Hurd", shouldn't it be "Cluster"?, it lacks the 's'.
>
Perhaps a Freudian slip?
FYI -
I had a request to write a paper documenting my work on Hurd, so I did.
It's called "Building an SSI Cluster with GNU/Hurd" and it's available here:
https://www.freesoft.org/software/hurd/building.pdf
The LaTeX source is also in the github repository (link in the paper).
Feedback is
On Thu, Apr 5, 2018 at 7:27 PM, Samuel Thibault <samuel.thiba...@gnu.org>
wrote:
> Brent W. Baccala, le jeu. 05 avril 2018 19:06:23 -0400, a ecrit:
>
> Yes, Mach is
> sort of an exception, because it was merely the ground for the whole
> kernel. But being BSD-licenced, it wa
On Thu, Apr 5, 2018 at 6:53 PM, Samuel Thibault <samuel.thiba...@gnu.org>
wrote:
> Brent W. Baccala, le jeu. 05 avril 2018 18:42:24 -0400, a ecrit:
>
> > that the Debian maintainers have threatened to drop us completely unless
> we get
> > our code upstreamed in
On Thu, Apr 5, 2018 at 11:20 AM, Charlie Sale
wrote:
> Hey Brent
>
> I would be willing to help with that project. I'll see what I can do to
> contribute.
>
> You said that you had some code written. Where can I find it? Is it in a
> branch on the main tree?
>
No,
Charlie -
Welcome to Hurd!
I'm not sure what you consider a small task. Perhaps you could look at my
March 9th email to this list, entitled "RFC: kernel trace facility".
Briefly, I want to instrument the kernel so that we can trace the messages
going to and from a particular task. Our current
I've had so many problems with rpctrace that I'm starting work on a kernel
trace facility, and I think the consensus on this list is that we need
something like this.
Here's the idea.
Add a trace port as a new task special port. The same RPCs that get/set
task ports and exception ports will be
Hi -
I'm confused by rpctrace's behavior on a statically linked test program.
Here's the program:
#include
int main(int argc, char *argv[])
{
printf("Hello world!\n");
}
Perhaps you've seen it before :-)
When I compile the program with -static, I get an executable that works
fine, but
On Sun, Feb 11, 2018 at 4:42 AM, Samuel Thibault <samuel.thiba...@gnu.org>
wrote:
> Brent W. Baccala, on dim. 11 févr. 2018 01:23:10 -0500, wrote:
> > So how can I figure out where in processor_set_tasks() (or its
> subroutines)
> > that the kernel has blocked?
>
>
Hi -
Can anybody advice me how to use the gnumach debugger for a particular case?
I've got a subhurd's proc server that is blocked in the kernel RPC
processor_set_tasks(). That thread is holding a global lock in the proc
server and locking up the program while waiting for the RPC to return,
Hi -
I've modified rpctrace to attach to running processes and trace them. I've
added a new set of patches (the 0200 series) to my github repository with
these changes. I'm still chasing bugs, and it can't detach from processes
without killing them, but it's basically working.
The only big
On Mon, Feb 5, 2018 at 2:42 PM, Brent W. Baccala <cos...@freesoft.org>
wrote:
> On Mon, Feb 5, 2018 at 1:51 AM, Samuel Thibault <samuel.thiba...@gnu.org>
> wrote:
>
>> Hello,
>>
>> Brent W. Baccala, on lun. 05 févr. 2018 00:35:17 -0500, wrote:
>> >
Hi -
I'm writing to update the list on my current work and possibly get some
useful suggestions.
I'm trying to test the multi-client libpager in a subhurd, but I'm having
problems even getting the old libpager code to work cleanly in a subhurd,
so I know I've got problems that aren't just in my
On Fri, Jan 19, 2018 at 7:35 AM, Ricardo Wurmus wrote:
>
> Hi Brent,
>
> > I put a screencast of the lecture on youtube:
> >
> > https://www.youtube.com/watch?v=JwsuAEF2FYE
>
> thank you. This was very interesting. The introduction to Mach IPC and
> memory management was
On Fri, Jan 19, 2018 at 4:47 AM, Thomas Schwinge
wrote:
> > Could we add that to the collection of presentations that we've got on
> the
> > documentation page?
>
> If you'd like to, you can add it yourself using the wiki interface at
>
Hi -
FYI, I gave an hour and a half Hurd lecture yesterday at Catholic
University in Washington, D.C.
I put a screencast of the lecture on youtube:
https://www.youtube.com/watch?v=JwsuAEF2FYE
The first part of the video is a general discussion of high performance
computing, leading into my own
On Fri, Jan 5, 2018 at 7:24 PM, Samuel Thibault <samuel.thiba...@gnu.org>
wrote:
> Hello,
>
> Brent W. Baccala, on ven. 05 janv. 2018 17:45:57 -0500, wrote:
> > I've "fixed" this by making sure we don't remove the hash table entry
> unless
> > there are
On Sun, Dec 17, 2017 at 11:41 PM, Brent W. Baccala <cos...@freesoft.org>
wrote:
> On Sun, Dec 17, 2017 at 8:02 AM, Samuel Thibault <samuel.thiba...@gnu.org>
> wrote:
>
>> Hello,
>>
>> Brent W. Baccala, on sam. 16 déc. 2017 21:37:05 -0500, wrote:
>>
On Wed, Dec 27, 2017 at 2:31 PM, Samuel Thibault <samuel.thiba...@gnu.org>
wrote:
> Hello,
>
> Brent W. Baccala, on mar. 26 déc. 2017 23:06:13 -0500, wrote:
> > Also, the Linux source code in nptl/ includes the following comment:
> >
> > /* If there are waiters
Well, I've tried both Samuel's (swap space) and Svante's (nocheck)
suggestions and have found that both allow me to successfully build the
glibc packages!
The problem that I've got now is that I've changed the size of the
condition variables by adding an extra field, an integer that tracks the
Well, I've got a patch that might work, but I'm having a lot of trouble
testing it.
I can't dpkg-buildpackage the Debian glibc package.
It gets into the test routines, then a bunch of the math tests crash with
SIGSEGVs and SIGILLs, then I get a bunch of kernel errors:
no more room in ee26a908
On Tue, Dec 19, 2017 at 3:25 AM, Samuel Thibault <samuel.thiba...@gnu.org>
wrote:
> Brent W. Baccala, on mar. 19 déc. 2017 00:08:44 -0500, wrote:
> > Looks like there's a race condition when we destroy a condition
> variable. My
> > understanding of the expected b
Hi -
Looks like there's a race condition when we destroy a condition variable.
My understanding of the expected behavior is that once all the threads have
been signaled (i.e, pthread_cond_broadcast is called), the condition
variable can be safely destroyed with pthread_cond_destroy.
The problem
On Sun, Dec 17, 2017 at 8:02 AM, Samuel Thibault <samuel.thiba...@gnu.org>
wrote:
> Hello,
>
> Brent W. Baccala, on sam. 16 déc. 2017 21:37:05 -0500, wrote:
> > basically, we're storing ports in a inode-to-port hash, looking them
> > up when io_identity() gets cal
Hi -
I'm making good progress on the multi-client libpager. I've been running
it on my root filesystem for about a month now, with few problems recently.
However, there are still some bugs. One seems to be in libports. It
manifests like this:
/hurd/ext2fs.static:
On Wed, Dec 13, 2017 at 3:39 AM, Samuel Thibault <samuel.thiba...@gnu.org>
wrote:
> Hello,
>
> Brent W. Baccala, on mar. 12 déc. 2017 20:53:05 -0500, wrote:
> > qemu-system-i386 -enable-kvm -m 1024 -nographic -drive file=
> > debian-hurd-20171101.img,format=raw
>
Hi -
I've downloaded Hurd images from these two locations:
http://cdimage.debian.org/cdimage/ports/current/hurd-i386/debian-hurd.img.tar.gz
http://people.debian.org/~sthibault/hurd-i386/debian-hurd.img.tar.gz
and I've had the same problem with both. I can't get the grub boot menu to
load with
On Mon, Nov 20, 2017 at 3:33 AM, Samuel Thibault <samuel.thiba...@gnu.org>
wrote:
> Brent W. Baccala, on dim. 19 nov. 2017 20:04:35 -0500, wrote:
> > The assignment of par. 1(a) above applies to all
> > past and future w
On Fri, Nov 17, 2017 at 3:14 PM, Svante Signell
wrote:
>
> Thanks a lot for your patches for rpctrace. Now more failing programs
> can be traced, where the standard version fails. There are still some
> examples hanging hard on gsync_wait or entering an infinite loop.
>
On Thu, Nov 16, 2017 at 5:55 PM, Svante Signell
wrote:
>
> > Perhaps you could try those patches and see if they fix your problem?
> If not,
> > then it's something else that should be investigated further.
>
> Thanks, I will try to apply them: Do I need all 0001 to
On Thu, Nov 16, 2017 at 12:39 PM, Samuel Thibault <samuel.thiba...@gnu.org>
wrote:
> Hello,
>
> Brent W. Baccala, on jeu. 16 nov. 2017 12:25:23 -0500, wrote:
> > This isn't in the main Hurd repository because I wouldn't sign the FSF
> > copyright assignment. They insis
On Wed, Nov 15, 2017 at 11:53 AM, Svante Signell
wrote:
>
> Additionally the rpctrace output hangs hard at gsync_wait() both for the
> ./index0-out-reduced_OK.x and ./index0-out-reduced_nOK.x files.
> Has rpctrace been thoroughly tested on multi-thread applications?
>
>
Hi -
I recently updated my Debian Hurd system for the first time in a few
months, and it started showing an annoying behavior running emacs over ssh,
from an Ubuntu host to Hurd on a qemu VM. The editor would freeze for
about a second, then suddenly catch up with the key strokes I had typed in
Hi -
My work on a multi-client libpager has progressed to the point where I have
pseudo code for the logic and am considering how to implement the pagemap.
I'm trying to achieve three goals with the pagemap:
1. keep pagemap entries as small as possible
2. support arbitrary numbers of clients,
On Sun, Aug 6, 2017 at 2:34 PM, Justus Winter <jus...@gnupg.org> wrote:
> "Brent W. Baccala" <cos...@freesoft.org> writes:
>
> >> Are you aware of the pager rework in [0]? I'm considering to review and
> >> merge these changes. It may make sense t
On Sun, Aug 6, 2017 at 12:40 PM, Justus Winter <jus...@gnupg.org> wrote:
> "Brent W. Baccala" <cos...@freesoft.org> writes:
>
> > but it's obviously got some issues
>
> What kind of issues?
>
I was thinking of a multi-client environment where a disk
Hi -
I've learned some interesting things about libpager that I'd like to share
with the list.
I've found two bugs in the existing code that were "fixed" by the new
demuxer that sequentially services requests on each pager object.
For example, the data return code sets a flag PAGINGOUT in the
On Mon, Jul 31, 2017 at 5:21 AM, Richard Braun <rbr...@sceen.net> wrote:
> On Sun, Jul 30, 2017 at 10:20:55PM -0400, Brent W. Baccala wrote:
>
> > Does anybody know the history of multi page requests? Was it ever
> > implemented in the kernel?
>
> Maksym Planeta wo
Hi -
I've found something puzzling while working on the libpager code.
It seems that the current libpager's data-request and data-unlock routines
only handle single page requests, while the Mach documentation suggests
that the kernel can make multi page requests using these routines.
Looking at
Hi -
Just a quick FYI to let you all know that I'm working on a multi-client
libpager. This will allow execution of binaries on remote nodes in a Hurd
cluster. I'm well into pseudo coding the logic; you can follow my work in
the netmsg github repository:
On Thu, Jun 29, 2017 at 7:13 AM, Joan Lledó
wrote:
> Hello Brent,
>
> Thanks for your interest in my GSoC. I didn't know the tools you
> propose and think that everything that moves us towards using
> standards is good. What I believe is that probably such a development
Joan -
Thank you for your work on this. I haven't commented on it until now,
partly because of some email problems, and partly because I haven't been
working on Hurd for the last six months or so.
On Mon, Jun 26, 2017 at 7:28 AM, Joan Lledó
wrote:
> I've advanced in
On Wed, Nov 30, 2016 at 11:12 PM, Samuel Thibault
wrote:
>
> Err, I'm sorry, did you perhaps miss the fix I made after:
>
> commit 406b031c996ec4cd8c76d251de8b7bf462d8b975
> Author: Samuel Thibault
> Date: Sun Nov 20 16:16:24 2016 +0100
>
On Wed, Nov 16, 2016 at 9:05 AM, Samuel Thibault
wrote:
> Samuel Thibault, on Wed 16 Nov 2016 19:50:07 +0100, wrote:
> > Samuel Thibault, on Wed 16 Nov 2016 19:46:52 +0100, wrote:
> > > The attached testcase does get the faulting address.
> >
> > And the attached
Coming back to the subject of signal preemptors...
Why do we need them at all? Why not just use the existing POSIX signal
facilities?
We install a signal handler, saving the old signal handler, check the
faulting memory address inside the new signal handler, and relay the signal
on to the saved
On Wed, Nov 23, 2016 at 10:03 PM, Brent W. Baccala <cos...@freesoft.org>
wrote:
>
> Any comments?
>
Well, yes, actually. :-)
gdb's hurd target has a poorly documented command "set noninvasive". I
don't completely understand it, but...
I'm starting to see the
On Fri, Nov 25, 2016 at 1:46 AM, Thomas Schwinge
wrote:
> Hi!
>
> Motivation for bringing this up again: GDB has recently switched from
> using a C to a C++ compiler. GDB, for obvious reasons, needs to access
> low-level Hurd/Mach interfaces.
>
>
I've also had problems
On Fri, Nov 11, 2016 at 7:17 AM, Samuel Thibault
wrote:
> Hello,
>
> Debian is pushing more and more PIE builds, so that address
> randomization can be done. However, on GNU/Hurd, gdb can't work with
> core files from processes running PIE programs, so one has to pass
>
Hi -
I've been trying to use gdb on ext2fs when it runs out of disk space and
starts generating memory access exceptions.
It doesn't behave right. The memory faults get reported as unknown signals
and the program can't be restarted:
Program received signal ?, Unknown signal.
[Switching to
On Sun, Nov 20, 2016 at 5:37 AM, Samuel Thibault
wrote:
> Samuel Thibault, on Sun 20 Nov 2016 14:50:50 +0100, wrote:
> > Samuel Thibault, on Wed 16 Nov 2016 20:05:49 +0100, wrote:
> > > Samuel Thibault, on Wed 16 Nov 2016 19:50:07 +0100, wrote:
>
> > > And is fixed by
Hi -
Just a status update about what I'm working on. My primary goal right now
is to get ext2fs working right when a ramdisk fills up. dd hangs and/or
crashes ext2fs instead of cleanly erroring out.
First, there's a problem in libpager
--- a/libpager/data-unlock.c
+++ b/libpager/data-unlock.c
Hi -
My recent foray into gsync left me thinking a bit about its hash function:
#define MIX2_LL(x, y) x) << 5) | ((x) >> 27)) ^ (y))
which seems a bit weak. The result of gsync_key_hash is then taken modulo
GSYNC_NBUCKETS, which is currently 512.
libihash has a similar issue. It seems
On Fri, Nov 4, 2016 at 12:00 AM, Samuel Thibault <samuel.thiba...@gnu.org>
wrote:
> Brent W. Baccala, on Thu 03 Nov 2016 15:51:04 -1000, wrote:
> > I see... so there must be fallback code (option 2 on my list); I just
> haven't
> > found it.
> >
> > Where i
On Thu, Nov 3, 2016 at 2:18 PM, Samuel Thibault <samuel.thiba...@gnu.org>
wrote:
> Brent W. Baccala, on Thu 03 Nov 2016 14:12:41 -1000, wrote:
> > I suspect that this ultimately affects just about every program on a
> > Hurd system.
>
> Sure, it's used internally by
locking primitives directly, they're used by the C library, right?
On Sun, Oct 30, 2016 at 10:16 PM, Kalle Olavi Niemitalo <k...@iki.fi> wrote:
> "Brent W. Baccala" <cos...@freesoft.org> writes:
>
> > Even if I'm right about the nature of this bug, I don't un
On Wed, Nov 2, 2016 at 2:39 PM, Brent W. Baccala <cos...@freesoft.org>
wrote:
> On Wed, Nov 2, 2016 at 2:26 PM, Kalle Olavi Niemitalo <k...@iki.fi> wrote:
>
>>
>> Look at how the commit messages in hurd.git at Savannah (not at
>> Debian) are formatted.
On Wed, Nov 2, 2016 at 2:26 PM, Kalle Olavi Niemitalo wrote:
>
> Look at how the commit messages in hurd.git at Savannah (not at
> Debian) are formatted. "make dist" runs gitlog-to-changelog,
> which generates a ChangeLog file from those.
>
OK, I think I see what you want.
On Wed, Nov 2, 2016 at 3:10 AM, Justus Winter wrote:
>
> Cool. Two nitpicks: 1/ Instead of attaching patches, why don't you use
> git send-email. That is easier for everyone. 2/ The summary line of
> your patches is too long, try to keep it at ~60 chars or so, and we
>
On Tue, Nov 1, 2016 at 5:15 AM, Samuel Thibault
wrote:
>
> GNU projects usually don't have man pages, but info pages. The
> doc/hurd.texi indeed doesn't have any part for rpctrace. It should :)
>
>
What an embarrassing *faux pas*! It's like fumbling to put the Metro
Aloha -
I'm attaching two more patches to rpctrace that close bug 48863.
agape
brent
From 10a2a49e370ca55b6cea4cdc4a54ae106b243817 Mon Sep 17 00:00:00 2001
From: Brent Baccala
Date: Tue, 1 Nov 2016 01:07:52 -1000
Subject: [PATCH 1/2] rpctrace: don't wrap send-once
Hmm... maybe somebody on the list will fix the gsync bug, since I don't
know how...
...what can I do in the meantime...
How about writing a man page?
agape
brent
rpctrace.1
Description: Binary data
Hi -
My new and improved rpctrace is generating kernel panics when run on
ext2fs. This happens when rpctrace calls gsync_wait, with ext2fs as the
'task' argument.
Could you guys look at gnumach's kern/gsync.c, at line 212? It looks to me
like that code tacitly assumes that the 'addr' it's
Hi -
I'm using my newly enhanced rpctrace to hunt down a few bugs.
Here's a minor one in glibc that shows up like this on "rpctrace /bin/true":
task337(pid1240)->mach_port_deallocate (pn{ 0}) = 0xf ((os/kern) invalid
name)
The trick is to get rpctrace to halt the process when it encounters
On Sat, Oct 29, 2016 at 1:48 PM, Brent W. Baccala <cos...@freesoft.org>
wrote:
> Yes, patch7 without patch8 can reorder messages as they're being resent,
> but patch8 uses the mutex introduced in patch7, so the ordering can't be
> reversed.
>
> They could be combined into a
On Sat, Oct 29, 2016 at 1:40 PM, Brent W. Baccala <cos...@freesoft.org>
wrote:
> On Oct 29, 2016 2:53 AM, "Samuel Thibault" <samuel.thiba...@gnu.org>
> wrote:
> >
> > Hello,
> >
> > > #define easprintf(args...)assert(asprintf (
On Oct 29, 2016 2:55 AM, "Samuel Thibault" wrote:
>
> Hello,
>
> Better apply this patch before patch7, shouldn't we? Otherwise there's
> a little git interval during which rpctrace is unreliable.
>
> Samuel
I had thought of the entire patch set being applied
On Oct 29, 2016 2:53 AM, "Samuel Thibault" wrote:
>
> Hello,
>
> > #define easprintf(args...)assert(asprintf (args) != -1)
>
> That will be removed when building with -DNDEBUG, not a good thing :)
An excellent point. I'll revise PATCH 1 tomorrow.
> Also, I
Hi -
I've made some decent progress with rpctrace this week. I think I pretty
much understand this program now!
In particular, I've gotten it working on ext2fs. I had to fix the problem
I described earlier with send-once rights, and then deal with a deadlock
situation caused when ext2fs called
hi -
What is the best way to fork() a child and have a Mach receive right on the
parent connected to a send right on the child? Or vice versa?
agape
brent
On Mon, Oct 24, 2016 at 1:12 AM, Justus Winter <jus...@gnupg.org> wrote:
>
> "Brent W. Baccala" <cos...@freesoft.org> writes:
> > I read on the website's hurd/debugging/rpctrace page that somebody
> (zhenga)
> > had come with a new version o
Aloha -
I've been trying to debug a problem in rpctrace which causes rpctrace to
crash when I use it to wrap /hurd/ext2fs.
The bug is triggered by a memory_object_lock_request /
memory_object_lock_completed sequence. Specifically, ext2fs sends a lock
request to the kernel with a send-once
Dear Justus,
What are the symptoms of this bug?
I've been seeing sporadic behavior where my boot hangs right after "exec"
prints in the "Hurd server bootstrap" line. Is this patch related to that?
agape
brent
On Tue, Oct 18, 2016 at 2:37 AM, Richard Braun wrote:
>
> From my fifteen years or so experience working in various projects with
> C++ and other languages, my opinion is that C++ is never the best
> choice. It makes you trade lines of code for increased complexity in
>
Aloha -
I've been thinking more about the data structures involved with the new
libpager code, and they're complex enough that I'd like to write them in
C++11. The pagemap has to contain a list of all clients with copies of a
page, and a queue of clients waiting to access the page. To keep the
On Sat, Oct 15, 2016 at 11:17 PM, Kalle Olavi Niemitalo wrote:
>
> I also have a "hurd-debian" working tree. I extracted that from
> the Debian source package, so that I got a .pc directory with the
> correct state information. I then added a .git directory cloned
> from
aloha -
I've started looking at adding multi-client support to libpager.
My first question is for advice on managing my workflow. I'm using the
Debian hurd package, which adds patches on top of a snapshot taken from
savannah's git tree. I think I want to work on the Debian-ized code, since
On Fri, Sep 30, 2016 at 9:17 AM, Kalle Olavi Niemitalo wrote:
>
> A future version of rpctrace might want to move receive rights
> if it were able to attach to a preexisting task.
>
That's an important and interesting application that I hadn't thought of.
Now I'm wondering - how
On Mon, Sep 19, 2016 at 9:52 AM, Olaf Buddenhagen
wrote:
> I'm a bit confused here: my understanding was that you essentially
> wanted to implement a "single system instance" cluster. I would have
> thought that would imply only a single instance of most servers --
>
On Thu, Sep 22, 2016 at 12:21 PM, Justus Winter wrote:
>
> % ~/build/machometer/machometer
> N: 33554432 (1<<25), qlimit: 5
> mach_print: 5s75us171.363354ns5835553.391 (1/s)
>nullmsg: 6s33us188.648701ns5300858.136 (1/s)
> producer:
On Wed, Sep 7, 2016 at 11:49 AM, Richard Braun wrote:
>
> We really, really don't want to make standard Unix tools aware of
> Hurd-specific stuff, because that allows us to completely reuse the
> work of others. With a trend towards systemd, it's even more likely
> that our
On Tue, Sep 6, 2016 at 2:05 AM, Richard Braun <rbr...@sceen.net> wrote:
> On Mon, Sep 05, 2016 at 09:55:44PM -1000, Brent W. Baccala wrote:
> > I haven't been able to find any other places on my system where find uses
> > -xdev; just bootclean.sh, but my search ha
On Thu, Sep 1, 2016 at 12:38 PM, Richard Braun wrote:
> This was famously shown with the example of the
> firmlink translator used in /tmp, which would cause the removal of
> any file targeted by the firmlink on /tmp cleanup during system
> startup.
>
I see that. It seems to
Aloha -
For those of you who have followed my netmsg threads, you may remember that
there were two major issues when I first got it running. One was
libpager's lack of multi-client support, which has been discussed at
length, and the other was authentication, which we haven't discussed at all.
On Thu, Sep 1, 2016 at 12:38 PM, Richard Braun wrote:
> > > Most modern microkernels use synchronous IPC
> > > that just block, and many operations on top of them do block. The
> > > overall system on the other hand must be careful to avoid such
> > > deadlocks.
> >
> > OK, I
On Thu, Sep 1, 2016 at 10:28 AM, Richard Braun wrote:
>
> I completely disagree.
Thank you, Richard. Really! Thank you for disagreeing. Now we can have a
good discussion about this!
> Most modern microkernels use synchronous IPC
> that just block, and many operations on
Aloha -
I've run into a real kernel-level problem with 'netmsg'.
It's related to the libpager issue. The problem arises when a process gets
an unworkable memory object and tries to vm_map it. This causes the
mach_msg() that sent the vm_map to block indefinitely, even though I've
specified
Aloha -
While testing the exec server, I setup a very minimalist subhurd using just
the most essential files, as opposed to copying the entire filesystem, and
uncovered a number of bugs.
I've refined the process into a shell script (attached) which creates the
subhurd on a ramdisk and then boots
On Sun, Aug 28, 2016 at 11:15 PM, Richard Braun <rbr...@sceen.net> wrote:
> On Sun, Aug 28, 2016 at 05:12:35PM -1000, Brent W. Baccala wrote:
>
> > The obvious additional client would be a remote kernel, but as the
> exploit
> > program that I posted sho
I've figured out why the patched exec server didn't work with mmap, and
just opened a bug on it, with a fix attached.
So now I've got a working, mmap-less exec server that burns a lot of extra
RAM (each process gets its own private copy of the C library), but lets me
execute files across a netmsg
On Sun, Aug 28, 2016 at 12:49 PM, Richard Braun wrote:
>
> I'm really not seeing the relation between "multiple clients" and
> "multiple threads". Libpager must be able to handle multiple clients
> with a single thread, otherwise we don't control scalability and we're
> back to
Aloha -
I've written a short program (attached) that demonstrates how libpager's
support for only a single client can be used to mount a denial of service
attack against the kernel.
It works by opening a file, grabbing its associated memory object (if it
can), and holding it until you hit
Aloha -
I've gotten 'netmsg' to the point where files in the mounted, remote
filesystem can be executed on the local machine. This isn't remote
execution - it's just copying the files to the local machine and executing
them there. Nothing more than what you'd expect from NFS or Samba, but it
Aloha -
My recent experiments with 'netmsg' have lead me to investigate the
operation of Hurd's exec server, and I've got a few questions.
First off, the current obstacle to exec'ing files over netmsg is the need
to operate the memory_object protocol over the TCP/IP connection. libpager
has a
On Tue, Aug 23, 2016 at 11:45 PM, Brent W. Baccala <cos...@freesoft.org>
wrote:
>
> Any ideas why this basic sequence wouldn't work?
>
>node = file_name_lookup("/lib/ld.so", O_RDONLY, 0)
>io_map(node, , )
>/* create control and objnam
On Tue, Aug 23, 2016 at 2:12 AM, Richard Braun wrote:
>
> > It's got a lot of problems. No authentication handoff; everything the
> > client requests happens with the permissions of the server. exec'ing a
> > file doesn't work; the last RPC before the hang is
Aloha -
I've gotten a basic netmsg server/translator running that relays Mach
messages across a TCP/IP connection.
The code is available at g...@github.com:BrentBaccala/netmsg.git
Basic usage:
netmsg -s (server)
settrans -a node netmsg localhost (client)
It's got a lot of problems. No
Aloha -
OK, I seem to have gotten a handle on this thing now.
First, there's a missing mutex unlock in mach_defpager. I'm attaching two
patches. One fixes the debug printfs in mach_defpager/default_pager.c,
which obviously haven't been compiled for a while. Use %p and %lx instead
of %x to
Aloha -
I've updated to the latest Debian kernel package, which includes Samuel's
patch. (thank you)
This fixes the symbol table problem, but my VM still locks up after a
failed swapoff.
I do, however, get symbolic names displayed correctly from the kernel
debugger at that point.
Obviously,
On Wed, Aug 10, 2016 at 4:33 AM, Richard Braun wrote:
> On Wed, Aug 10, 2016 at 04:26:35PM +0200, Richard Braun wrote:
> > the boot loader (see MULTIBOOT_FLAGS in boothdr.S), and at
> > some point, late during the boot process, module data are freed
> > using (see
1 - 100 of 106 matches
Mail list logo