diff options
Diffstat (limited to 'hurd')
-rw-r--r-- | hurd/debugging.mdwn | 4 | ||||
-rw-r--r-- | hurd/debugging/trap_in_the_kernel.mdwn | 27 | ||||
-rw-r--r-- | hurd/faq/how_to_switch_microkernels.mdwn | 8 | ||||
-rw-r--r-- | hurd/running/debian/package_troubleshooting.mdwn | 3 | ||||
-rw-r--r-- | hurd/translator.mdwn | 2 | ||||
-rw-r--r-- | hurd/translator/procfs.mdwn | 22 | ||||
-rw-r--r-- | hurd/translator/procfs/htop.mdwn | 25 | ||||
-rw-r--r-- | hurd/translator/procfs/jkoenig.mdwn | 76 | ||||
-rw-r--r-- | hurd/translator/procfs/killall.mdwn | 23 | ||||
-rw-r--r-- | hurd/translator/procfs/procps.mdwn | 23 | ||||
-rw-r--r-- | hurd/translator/procfs/top.mdwn | 18 | ||||
-rw-r--r-- | hurd/translator/unionfs.mdwn | 5 |
12 files changed, 120 insertions, 116 deletions
diff --git a/hurd/debugging.mdwn b/hurd/debugging.mdwn index 36ab769a..4085244b 100644 --- a/hurd/debugging.mdwn +++ b/hurd/debugging.mdwn @@ -1,4 +1,5 @@ -[[!meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] +[[!meta copyright="Copyright © 2007, 2008, 2010 Free Software Foundation, +Inc."]] [[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this @@ -20,3 +21,4 @@ is included in the section entitled * [[glibc]] * [[translator]]s + * [[trap_in_the_kernel]] diff --git a/hurd/debugging/trap_in_the_kernel.mdwn b/hurd/debugging/trap_in_the_kernel.mdwn new file mode 100644 index 00000000..11f989e3 --- /dev/null +++ b/hurd/debugging/trap_in_the_kernel.mdwn @@ -0,0 +1,27 @@ +[[!meta copyright="Copyright © 2010 Free Software Foundation, Inc."]] + +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this +document under the terms of the GNU Free Documentation License, Version 1.2 or +any later version published by the Free Software Foundation; with no Invariant +Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license +is included in the section entitled [[GNU Free Documentation +License|/fdl]]."]]"""]] + +[[!tag open_issue_gnumach open_issue_documentation]] + +IRC, #hurd, September 2010 + + <diegonc> when an application executes an out instruction in user mode, how is + kernel mode entered? general protection trap? + <youpi> some sort of trap, yes + <youpi> I'd rather think about illegal instruction, but yes + <diegonc> hm.. so to debug what happens inside that instruction I'll have to + break at the trap handler. Can I instruct kdb to stop only when a given task + caused the trap? + <youpi> applications usually don't trap, so what I usually do is to uncomment + the test at the end of user_trap() before the call to kdb_trap() + <diegonc> "if (debug_all_traps_with_kdb && .. " <- that test? + <youpi> yes + <youpi> so comment the test to make kdb_trap() called all the time + <diegonc> oh, I understand now :) diff --git a/hurd/faq/how_to_switch_microkernels.mdwn b/hurd/faq/how_to_switch_microkernels.mdwn index 468fab54..21f7a371 100644 --- a/hurd/faq/how_to_switch_microkernels.mdwn +++ b/hurd/faq/how_to_switch_microkernels.mdwn @@ -1,4 +1,4 @@ -[[!meta copyright="Copyright © 2009 Free Software Foundation, Inc."]] +[[!meta copyright="Copyright © 2009, 2010 Free Software Foundation, Inc."]] [[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this @@ -10,6 +10,6 @@ License|/fdl]]."]]"""]] [[!meta title="How difficult would it be to switch to another microkernel?"]] -One thing for sure is to rewrite the mach and sysdeps/mach parts of glibc and -libpthread. Quite a few tools also assume a Mach kernel and would have to be -rewritten. +One would have to reimplement the `mach/` and `sysdeps/mach/` parts of +[[glibc]] and [[libpthread]]. Quite a few other Hurd tools also assume a +[[microkernel/Mach]] kernel and would have to be adapted or rewritten. diff --git a/hurd/running/debian/package_troubleshooting.mdwn b/hurd/running/debian/package_troubleshooting.mdwn index 43ecbc77..c6236c2f 100644 --- a/hurd/running/debian/package_troubleshooting.mdwn +++ b/hurd/running/debian/package_troubleshooting.mdwn @@ -17,7 +17,8 @@ You must set up the [[translator/random]] device first. ## <a name="An_X_package_hangs_at_startup_wi"> An X package hangs at startup without error messages </a> -Observed with GTK programs like xchat, synaptic, inkscape. It is an issue with libpthread that (as of 04 Feb 2007) is still unresolved. Sorry. +Observed with GTK programs like xchat, synaptic, inkscape. It is an issue with +[[libpthread]] that (as of 04 Feb 2007) is still unresolved. Sorry. ## <a name="Borked_fonts_on_GTK_app"> </a> Borked fonts on GTK app diff --git a/hurd/translator.mdwn b/hurd/translator.mdwn index dd5c5b4d..c3ca1278 100644 --- a/hurd/translator.mdwn +++ b/hurd/translator.mdwn @@ -116,7 +116,7 @@ Read about translator [[short-circuiting]]. * [[wishlist_1]] * [[wishlist_2]] - + * [[open_issues/network_file_system_by_just_forwarding_RPCs]] # Internally diff --git a/hurd/translator/procfs.mdwn b/hurd/translator/procfs.mdwn index bc22530f..70448e94 100644 --- a/hurd/translator/procfs.mdwn +++ b/hurd/translator/procfs.mdwn @@ -26,28 +26,10 @@ probably no point in trying to duplicate this functionality as well...) *Status*: Madhusudan.C.S has implemented a new, fully functional [[procfs|madhusudancs]] for [[GSoC 2008|community/gsoc/2008]]. -# New Implementation by Jérémie Koenig -In August 2010, Jérémie Koenig [published another, new -version](http://lists.gnu.org/archive/html/bug-hurd/2010-08/msg00165.html). -This can be found in <http://git.savannah.gnu.org/cgit/hurd/procfs.git/>, -branch *jkoenig/master*. +# [[New Implementation by Jérémie Koenig|jkoenig]] -# Internals - - -## Old Implementation from [[open_issues/HurdExtras]] +# Old Implementation from [[open_issues/HurdExtras]] <http://www.nongnu.org/hurdextras/#procfs> - - -## Files opened by various tools - - * [[`ps`|procps]] - * [[`top`|top]] - * [[`htop`|htop]] - * `gtop` - * [[`killall`|killall]] - * `pkill` - * ... diff --git a/hurd/translator/procfs/htop.mdwn b/hurd/translator/procfs/htop.mdwn deleted file mode 100644 index ce38b92c..00000000 --- a/hurd/translator/procfs/htop.mdwn +++ /dev/null @@ -1,25 +0,0 @@ -[[!meta copyright="Copyright © 2008 Free Software Foundation, Inc."]] - -[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable -id="license" text="Permission is granted to copy, distribute and/or modify this -document under the terms of the GNU Free Documentation License, Version 1.2 or -any later version published by the Free Software Foundation; with no Invariant -Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license -is included in the section entitled -[[GNU Free Documentation License|/fdl]]."]]"""]] - - open("/proc/stat", O_RDONLY) = 3 - open("/proc/meminfo", O_RDONLY) = 3 - open("/proc/stat", O_RDONLY) = 3 - open("/proc", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 3 - open("/proc/1/task", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 4 - open("/proc/1/status", O_RDONLY) = 4 - open("/proc/1/statm", O_RDONLY) = 4 - open("/proc/1/stat", O_RDONLY) = 4 - open("/proc/1/cmdline", O_RDONLY) = 4 - open("/proc/2/task", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 4 - open("/proc/2/status", O_RDONLY) = 4 - open("/proc/2/statm", O_RDONLY) = 4 - open("/proc/2/stat", O_RDONLY) = 4 - open("/proc/2/cmdline", O_RDONLY) = 4 - [...] diff --git a/hurd/translator/procfs/jkoenig.mdwn b/hurd/translator/procfs/jkoenig.mdwn new file mode 100644 index 00000000..1275ce52 --- /dev/null +++ b/hurd/translator/procfs/jkoenig.mdwn @@ -0,0 +1,76 @@ +[[!meta copyright="Copyright © 2010 Free Software Foundation, Inc."]] + +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this +document under the terms of the GNU Free Documentation License, Version 1.2 or +any later version published by the Free Software Foundation; with no Invariant +Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license +is included in the section entitled [[GNU Free Documentation +License|/fdl]]."]]"""]] + +In August 2010, Jérémie Koenig [published another, new +version](http://lists.gnu.org/archive/html/bug-hurd/2010-08/msg00165.html). +This can be found in <http://git.savannah.gnu.org/cgit/hurd/procfs.git/>, +branch *jkoenig/master*. + +Testing it is as simple as this: + + $ git clone git://git.savannah.gnu.org/hurd/procfs.git + $ cd procfs/ + $ git checkout jkoenig/master + $ make + $ settrans -ca proc procfs --compatible + $ ls -l proc/ + + +# Open Issues + +[[!tag open_issue_hurd]] + + * IRC, #hurd, around September 2010 + + <youpi> jkoenig: from a quick read, your procfs implementation seems quite + simple, probably much more what I was expecting from Madhusudan (who probably + now hates you :) ) + <youpi> jkoenig: is it not possible to provide a /proc/self which points at the + client's pid? + <pinotree> (also, shouldn't /proc/version say something else than "Linux"?) + <youpi> to make linux tools work, no :/ + <youpi> kfreebsd does that too + <pinotree> really? + <youpi> yes + <youpi> (kfreebsd, not freebsd) + <pinotree> does kbsd's one print just "Linux version x.y.z" too, or something + more eg in a second line? + <pinotree> (as curiosity) + <youpi> % cat /proc/version + <youpi> Linux version 2.6.16 (des@freebsd.org) (gcc version 4.3.5) #4 Sun Dec + 18 04:30:00 CET 1977 + <pinotree> k + <giselher> I had some problems with killall5 to read the pid from /proc, Is + this now more reliable? + <youpi> I haven't tested with jkoenig's implementation + [...] + <pinotree> looks like he did 'self' too, see rootdir_entries[] in rootdir.c + <youpi> but it doesn't point at self + <antrik> youpi: there is no way to provide /proc/self, because the server + doesn't know the identity of the client + <youpi> :/ + <antrik> youpi: using the existing mechanisms, we would need another magic + lookup type + <antrik> an alternative idea I discussed with cfhammer once would be for the + client to voluntarily provide it's identity to the server... but that would + be a rather fundamental change that requires careful consideration + <antrik> also, object migration could be used, so the implementation would be + provided by the server, but the execution would happen in the client... but + that's even more involved :-) + <youpi> but we've seen how much that'd help with a lot of other stuff + <antrik> I'm not sure whether we discussed this on the ML at some point, or + only on IRC + <youpi> it "just" needs to be commited :) + <antrik> in either case, it can't hurt to bring this up again :-) + + * IRC, #hurd, around October 2010 + + <pinotree> the only glitch is that files/dirs have the right user as + owner, but always with root group diff --git a/hurd/translator/procfs/killall.mdwn b/hurd/translator/procfs/killall.mdwn deleted file mode 100644 index 3d31b51a..00000000 --- a/hurd/translator/procfs/killall.mdwn +++ /dev/null @@ -1,23 +0,0 @@ -[[!meta copyright="Copyright © 2008 Free Software Foundation, Inc."]] - -[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable -id="license" text="Permission is granted to copy, distribute and/or modify this -document under the terms of the GNU Free Documentation License, Version 1.2 or -any later version published by the Free Software Foundation; with no Invariant -Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license -is included in the section entitled -[[GNU Free Documentation License|/fdl]]."]]"""]] - - open("/proc/stat", O_RDONLY) = 3 - open("/proc/self/stat", O_RDONLY) = 3 - open("/proc/uptime", O_RDONLY) = 3 - open("/proc/sys/kernel/pid_max", O_RDONLY) = 4 - open("/proc/meminfo", O_RDONLY) = 4 - open("/proc", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 5 - open("/proc/1/stat", O_RDONLY) = 6 - open("/proc/1/status", O_RDONLY) = 6 - open("/proc/1/cmdline", O_RDONLY) = 6 - open("/proc/2/stat", O_RDONLY) = 6 - open("/proc/2/status", O_RDONLY) = 6 - open("/proc/2/cmdline", O_RDONLY) = 6 - [...] diff --git a/hurd/translator/procfs/procps.mdwn b/hurd/translator/procfs/procps.mdwn deleted file mode 100644 index 3d31b51a..00000000 --- a/hurd/translator/procfs/procps.mdwn +++ /dev/null @@ -1,23 +0,0 @@ -[[!meta copyright="Copyright © 2008 Free Software Foundation, Inc."]] - -[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable -id="license" text="Permission is granted to copy, distribute and/or modify this -document under the terms of the GNU Free Documentation License, Version 1.2 or -any later version published by the Free Software Foundation; with no Invariant -Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license -is included in the section entitled -[[GNU Free Documentation License|/fdl]]."]]"""]] - - open("/proc/stat", O_RDONLY) = 3 - open("/proc/self/stat", O_RDONLY) = 3 - open("/proc/uptime", O_RDONLY) = 3 - open("/proc/sys/kernel/pid_max", O_RDONLY) = 4 - open("/proc/meminfo", O_RDONLY) = 4 - open("/proc", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 5 - open("/proc/1/stat", O_RDONLY) = 6 - open("/proc/1/status", O_RDONLY) = 6 - open("/proc/1/cmdline", O_RDONLY) = 6 - open("/proc/2/stat", O_RDONLY) = 6 - open("/proc/2/status", O_RDONLY) = 6 - open("/proc/2/cmdline", O_RDONLY) = 6 - [...] diff --git a/hurd/translator/procfs/top.mdwn b/hurd/translator/procfs/top.mdwn deleted file mode 100644 index 2cba78ad..00000000 --- a/hurd/translator/procfs/top.mdwn +++ /dev/null @@ -1,18 +0,0 @@ -[[!meta copyright="Copyright © 2008 Free Software Foundation, Inc."]] - -[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable -id="license" text="Permission is granted to copy, distribute and/or modify this -document under the terms of the GNU Free Documentation License, Version 1.2 or -any later version published by the Free Software Foundation; with no Invariant -Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license -is included in the section entitled -[[GNU Free Documentation License|/fdl]]."]]"""]] - - open("/proc/stat", O_RDONLY) = 3 - open("/proc/sys/kernel/pid_max", O_RDONLY) = 3 - open("/proc", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 3 - open("/proc/1/stat", O_RDONLY) = 4 - open("/proc/1/statm", O_RDONLY) = 4 - open("/proc/2/stat", O_RDONLY) = 4 - open("/proc/2/statm", O_RDONLY) = 4 - [...] diff --git a/hurd/translator/unionfs.mdwn b/hurd/translator/unionfs.mdwn index d1e3868b..2b692cf9 100644 --- a/hurd/translator/unionfs.mdwn +++ b/hurd/translator/unionfs.mdwn @@ -153,3 +153,8 @@ the *mountee* at 0. * [FUSE page about `unionfs`](http://sourceforge.net/apps/mediawiki/fuse/index.php?title=UnionFileSystems) + + * [Linux' overlay file system proposal, + 2010-09-20](http://thread.gmane.org/gmane.linux.kernel/1038413) + + How is this different? |