summaryrefslogtreecommitdiff
path: root/hurd/translator
diff options
context:
space:
mode:
authorSamuel Thibault <samuel.thibault@ens-lyon.org>2012-07-23 07:22:13 +0900
committerSamuel Thibault <samuel.thibault@ens-lyon.org>2012-07-23 07:22:13 +0900
commitc0792ffe1f4be354f62ff866cf4c7ebb367e70bb (patch)
treec18ec30ed2c53c0b3feb41a92de2938ee582a764 /hurd/translator
parente9990192bb52a2c6085d4c4d355c6ad9d8bdac67 (diff)
parenta29dec0b89f2961c8af41e6cd851b4ed9c9d28d8 (diff)
Merge branch 'master' of http://git.savannah.gnu.org/cgit/hurd/web
Diffstat (limited to 'hurd/translator')
-rw-r--r--hurd/translator/ext2fs.mdwn44
-rw-r--r--hurd/translator/procfs.mdwn28
-rw-r--r--hurd/translator/procfs/jkoenig.mdwn23
-rw-r--r--hurd/translator/procfs/jkoenig/discussion.mdwn46
-rw-r--r--hurd/translator/short-circuiting.mdwn8
5 files changed, 109 insertions, 40 deletions
diff --git a/hurd/translator/ext2fs.mdwn b/hurd/translator/ext2fs.mdwn
index ad79c7b9..8e15d1c7 100644
--- a/hurd/translator/ext2fs.mdwn
+++ b/hurd/translator/ext2fs.mdwn
@@ -18,6 +18,8 @@ License|/fdl]]."]]"""]]
* [[Page_cache]]
+ * [[metadata_caching]]
+
## Large Stores
@@ -43,6 +45,48 @@ Smaller block sizes are commonly automatically selected by `mke2fs` when using
small backend stores, like floppy devices.
+#### IRC, freenode, #hurd, 2012-06-30
+
+ <braunr> at least having the same api in the debian package and the git
+ source would be great (in reference to the large store patch ofc)
+ <youpi> braunr: the api part could be merged perhaps
+ <youpi> it's very small apparently
+ <antrik> braunr: the large store patch is a sad story. when it was first
+ submitted, one of the maintainers raised some concerns. the other didn't
+ share these (don't remember who is who), but the concerned one never
+ followed up with details. so it has been in limbo ever since. tschwinge
+ once promised to take it up, but didn't get around to it so far. plus,
+ the original author himself mentioned once that he didn't consider it
+ finished...
+ <youpi> antrik: it's clearly not finished
+ <youpi> there are XXXs here and there
+ <braunr> it's called an RC1 and RC2 is mentioned in the release notes
+ <antrik> youpi: well, that doesn't stop most other projects from commiting
+ stuff... including most emphatically the original Hurd code :-)
+ <youpi> what do you refer to my "that" ? :)
+ <braunr> "XXX"
+ <youpi> right
+ <youpi> at the time it made sense to delay applying
+ <youpi> but I guess by nowadays standard we should just as well commit it
+ <youpi> it works enough for Debian, already
+ <youpi> there is just one bug I nkow about
+ <youpi> the apt database file keeps haveing the wrong size, fixed by e2fsck
+ <pinotree> youpi: remember that patch should be fixed in the offset
+ declaration in diskfs.h
+ <youpi> I don't remember about that
+ <youpi> did we fix it in the debian package?
+ <pinotree> nope
+ <youpi> you had issues when fixing it, didn't you?
+ <youpi> (I don't remember where I can find the details about this)
+ <pinotree> i changed it, recompiled hurd and installed it, started a perl
+ rebuild and when running one of the two lfs tests it hard locked the vm
+ after ext2fs was taking 100% cpu for a bit
+ <pinotree> i don't exclude i could have done something stupid on my side
+ though
+ <youpi> or there could just be actual issues, uncovered here
+ <youpi> which can be quite probable
+
+
# Documentation
* <http://e2fsprogs.sourceforge.net/ext2.html>
diff --git a/hurd/translator/procfs.mdwn b/hurd/translator/procfs.mdwn
index 70448e94..cccce0b7 100644
--- a/hurd/translator/procfs.mdwn
+++ b/hurd/translator/procfs.mdwn
@@ -1,13 +1,13 @@
-[[!meta copyright="Copyright © 2008, 2009, 2010 Free Software Foundation,
-Inc."]]
+[[!meta copyright="Copyright © 2008, 2009, 2010, 2011, 2012 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]]."]]"""]]
+is included in the section entitled [[GNU Free Documentation
+License|/fdl]]."]]"""]]
Although there is no standard (POSIX or other) for the layout of the `/proc`
pseudo-filesystem, it turned out a very useful facility in GNU/Linux and other
@@ -23,13 +23,23 @@ management tools to work. (On Linux, the `/proc` filesystem is used also for
debugging purposes; but this is highly system-specific anyways, so there is
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]].
+Ther was an implementation in [[open_issues/HurdExtras]],
+<http://www.nongnu.org/hurdextras/#procfs>.
+Madhusudan.C.S has implemented a new, fully functional [[procfs|madhusudancs]] for
+[[GSoC 2008|community/gsoc/2008]].
-# [[New Implementation by Jérémie Koenig|jkoenig]]
+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/>.
+Testing it is as simple as this:
-# Old Implementation from [[open_issues/HurdExtras]]
+ $ git clone git://git.savannah.gnu.org/hurd/procfs.git
+ $ cd procfs/
+ $ git checkout master
+ $ make
+ $ settrans -ca proc procfs --compatible
+ $ ls -l proc/
-<http://www.nongnu.org/hurdextras/#procfs>
+[[Open issues|jkoenig/discussion]].
diff --git a/hurd/translator/procfs/jkoenig.mdwn b/hurd/translator/procfs/jkoenig.mdwn
deleted file mode 100644
index 9543b658..00000000
--- a/hurd/translator/procfs/jkoenig.mdwn
+++ /dev/null
@@ -1,23 +0,0 @@
-[[!meta copyright="Copyright © 2010, 2011 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/
diff --git a/hurd/translator/procfs/jkoenig/discussion.mdwn b/hurd/translator/procfs/jkoenig/discussion.mdwn
index e7fdf46e..4f6492ed 100644
--- a/hurd/translator/procfs/jkoenig/discussion.mdwn
+++ b/hurd/translator/procfs/jkoenig/discussion.mdwn
@@ -18,9 +18,6 @@ License|/fdl]]."]]"""]]
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"?)
@@ -68,7 +65,7 @@ IRC, #hurd, around October 2010
owner, but always with root group
-# `/proc/$pid/stat` being 400 and not 444, and some more
+# `/proc/[PID]/stat` being 400 and not 444, and some more
IRC, freenode, #hurd, 2011-03-27
@@ -187,7 +184,7 @@ IRC, freenode, #hurd, 2011-07-22
server anyway, I think.
-# `/proc/mounts`, `/proc/$pid/mounts`
+# `/proc/mounts`, `/proc/[PID]/mounts`
IRC, freenode, #hurd, 2011-07-25
@@ -277,3 +274,42 @@ Needed by glibc's `pldd` tool (commit
<antrik> it's very weird for example for fd connected to files that have
been unlinked. it looks like a broken symlink, but when dereferencing
(e.g. with cp), you get the actual file contents...
+
+
+# `/proc/[PID]/maps`
+
+## IRC, OFTC, #debian-hurd, 2012-06-20
+
+ <pinotree> bdefreese: the two elfutils tests fail because there are no
+ /proc/$pid/maps files
+ <pinotree> that code is quite relying on linux features, like locating the
+ linux kernel executables and their modules, etc
+ <pinotree> (see eg libdwfl/linux-kernel-modules.c)
+ <pinotree> refactor elfutils to have the linux parts executed only on linux
+ :D
+ <bdefreese> Oh yeah, the maintainer already seems really thrilled about
+ Hurd.. Did you see
+ http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=662041 ?
+ <pinotree> kurt is generally helpful with us (= hurd)
+ <pinotree> most probably there he is complaining that we let elfutils build
+ with nocheck (ie skipping the test suite run) instead of investigate and
+ report why the test suite failed
+
+
+# IRC, freenode, #hurd, 2011-06-19
+
+ <pinotree> jkoenig: procfs question: in process.c, process_lookup_pid, why
+ is the entries[2].hook line repeated twice?
+ <jkoenig> pinotree, let me check
+ <jkoenig> pinotree, it's probably just a mistake, there's no way the second
+ one has any effect
+ <pinotree> jkoenig: i see, it looked like you c&p'd that code accidentally
+ <jkoenig> pinotree, it's probably what happened, yes.
+
+
+# `/proc/[PID]/cwd`
+
+## IRC, freenode, #hurd, 2012-06-30
+
+ * pinotree has a local work to add the /proc/$pid/cwd symlink, but relying
+ on "internal" (but exported) glibc functions
diff --git a/hurd/translator/short-circuiting.mdwn b/hurd/translator/short-circuiting.mdwn
index 9de9f7b8..6f608fb2 100644
--- a/hurd/translator/short-circuiting.mdwn
+++ b/hurd/translator/short-circuiting.mdwn
@@ -1,12 +1,12 @@
-[[!meta copyright="Copyright © 2009 Free Software Foundation, Inc."]]
+[[!meta copyright="Copyright © 2009, 2012 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]]."]]"""]]
+is included in the section entitled [[GNU Free Documentation
+License|/fdl]]."]]"""]]
In traditional [[Unix]], file systems contain special files. These are:
symbolic links, character devices, block devices, named pipes, and
@@ -60,6 +60,8 @@ To make sure that you use one of these translators, there by bypassing the
short-circuiting mechanism, you can either start it as
an active translator, or use a different path from the one in
`hurd/path.h`, e.g. `settrans bar /hurd/./symlink foo`.
+There is also a `FS_TRANS_FORCE` flag defined for the `file_set_translator`
+RPCs, but it currently isn't set from anywhere.
The best example of how short-circuiting is implemented can be found
in [[`libdiskfs`|libdiskfs]]. Notice how it detects if a translator to store