diff options
-rw-r--r-- | hurd/porting/guidelines.mdwn | 28 | ||||
-rw-r--r-- | hurd/porting/system_api_limitations.mdwn | 2 | ||||
-rw-r--r-- | hurd/running/debian/dhcp.mdwn | 7 | ||||
-rw-r--r-- | hurd/running/debian/patch_submission.mdwn | 7 | ||||
-rw-r--r-- | hurd/translator/pfinet/dhcp.mdwn | 37 | ||||
-rw-r--r-- | microkernel/mach/gnumach/building.mdwn | 11 | ||||
-rw-r--r-- | microkernel/mach/gnumach/debugging.mdwn | 34 | ||||
-rw-r--r-- | microkernel/mach/mig/gnu_mig/building.mdwn | 11 | ||||
-rw-r--r-- | microkernel/mach/mig/gnu_mig/building/discussion.mdwn | 16 | ||||
-rw-r--r-- | microkernel/mach/mig/gnu_mig/discussion.mdwn | 6 | ||||
-rw-r--r-- | open_issues/e2fsck_i_file_acl_hi.mdwn | 5 | ||||
-rw-r--r-- | open_issues/libpthread_dlopen.mdwn | 14 | ||||
-rw-r--r-- | open_issues/perl.mdwn | 13 | ||||
-rw-r--r-- | open_issues/runit.mdwn | 57 | ||||
-rw-r--r-- | open_issues/sync_but_still_unclean_filesystem.mdwn | 5 | ||||
-rw-r--r-- | open_issues/virtualbox.mdwn | 30 | ||||
-rw-r--r-- | source_repositories.mdwn | 17 |
17 files changed, 181 insertions, 119 deletions
diff --git a/hurd/porting/guidelines.mdwn b/hurd/porting/guidelines.mdwn index c6ed62ed..e3da1e42 100644 --- a/hurd/porting/guidelines.mdwn +++ b/hurd/porting/guidelines.mdwn @@ -22,8 +22,30 @@ There is a separate page about [[System_API_Limitations]]. You may ask on the [[mailing lists/bug-hurd]] mailing list for details or questions about fixing bugs. +## <a name="GNU build system"> GNU build system </a> -## <a name="autoconf"> Fixing configure.ac/in </a> +For a good overview of the components in the GNU build system, see +<http://en.wikipedia.org/wiki/GNU_build_system> and +<http://www.gnu.org/s/hello/manual/autoconf/index.html>. + +The GNU build system distinguishes between 'build', 'host' and 'target' machines. +The 'build' machine is where compilers are run, the 'host' machine where the package +being built will run, and for cross compiling the 'target' machine, on which the compiler +built will generate code for. + +When using GNU autotools to configure a package config.guess and config.sub from autotools-dev +are used to find out the build machine identity: CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM. +For GNU/Hurd config.guess gives 'i686-unknown-gnu0.3'. Sometimes a quadruple is used +adding KERNEL, e.g. for Linux on an amd64: 'x86_64-unknown-linux-gnu'. config.sub is used to +canonicalize on these triplets, e.g. config.sub i686-gnu gives 'i686-pc-gnu'. + +On Debian systems the build Makefile is debian/rules and some Debian packages will set $host to +'i486-pc-gnu'. This is accomplished with the 'dpkg-architecture -qDEB_HOST_GNU_TYPE' construct +forwarded to configure in debian/rules, e.g. configure --host=$DEB_HOST_GNU_TYPE. +Another way to set $build, $host etc is via the Debian dh_auto_configure script from the debhelper +package which uses the Perl code autoconf.pm to find out these variables. + +## <a name="autoconf"> Fixing configure.{ac,in} </a> The GNU/Hurd (and GNU/kFreeBSD) toolchain is extremely close to the GNU/Linux toolchain. configure.ac thus very often just needs to be fixed by using the same cases as Linux, that is, turn @@ -230,6 +252,10 @@ then be found. Implemented by Jeremie Koenig, pending upload in Debian eglibc 2.13-19. +## <a name="SA_NOCLDWAIT"> `SA_NOCLDWAIT` </a> + +Not implemented yet. + ## <a name="SOL_IP"> `SOL_IP` </a> Not implemented yet. diff --git a/hurd/porting/system_api_limitations.mdwn b/hurd/porting/system_api_limitations.mdwn index 82327dde..1615ccc0 100644 --- a/hurd/porting/system_api_limitations.mdwn +++ b/hurd/porting/system_api_limitations.mdwn @@ -1,4 +1,4 @@ -[[!meta copyright="Copyright © 2003, 2004, 2005, 2009, 2010 Free Software +[[!meta copyright="Copyright © 2003, 2004, 2005, 2009, 2010, 2011 Free Software Foundation, Inc."]] [[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable diff --git a/hurd/running/debian/dhcp.mdwn b/hurd/running/debian/dhcp.mdwn index f316981d..8d351aae 100644 --- a/hurd/running/debian/dhcp.mdwn +++ b/hurd/running/debian/dhcp.mdwn @@ -22,3 +22,10 @@ fatal. Debian GNU/Hurd doesn't currently execute's Debian standard `/etc/rcS.d/*` boot scripts, but has its own `/libexec/rc` script -- which integrates scripts from `/etc/rc.boot/` instead. + + +# Open Issues + + * [[!debbug 616290]] + + * [[Proper Hurdy DHCP support|hurd/translator/pfinet/dhcp]] diff --git a/hurd/running/debian/patch_submission.mdwn b/hurd/running/debian/patch_submission.mdwn index d2d10747..d2b7b776 100644 --- a/hurd/running/debian/patch_submission.mdwn +++ b/hurd/running/debian/patch_submission.mdwn @@ -1,12 +1,13 @@ -[[!meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] +[[!meta copyright="Copyright © 2007, 2008, 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]]."]]"""]] +is included in the section entitled [[GNU Free Documentation +License|/fdl]]."]]"""]] If you fixed a Debian package which *FTBFS* (fails to build from source), you should submit the patch so that all users can profit from your work. diff --git a/hurd/translator/pfinet/dhcp.mdwn b/hurd/translator/pfinet/dhcp.mdwn index 79ed8966..456d0c84 100644 --- a/hurd/translator/pfinet/dhcp.mdwn +++ b/hurd/translator/pfinet/dhcp.mdwn @@ -1,31 +1,33 @@ -[[!tag open_issue_hurd]] +[[!meta copyright="Copyright © 2002, 2003, 2005, 2011 Free Software Foundation, +Inc."]] -According to the following thread, no port should be needed since all the patches that have been applied, including the one concerning the thread. In fact, the thread finishes without concluding whether the patch has been applied or not. You can grab it in the thread, anyway. +[[!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]]."]]"""]] -[Link to thread](http://lists.gnu.org/archive/html/bug-hurd/2005-01/msg00025.html) +[[!tag open_issue_hurd]] -The thread starts at Jan 4th 2005 until Jan 6th and is only retaken at April 14th in [this thread](http://lists.gnu.org/archive/html/bug-hurd/2005-01/msg00025.html). +[[Debian GNU/Hurd|running/debian]] has some script hackery to get +[[running/debian/DHCP]] going. --- 2011 +--- -The ISC dhcp client was ported, available in the isc-dhcp-client Debian package, [[http://bugs.debian.org/616290]]. +According to the following thread, no port should be needed since all the patches that have been applied, including the one concerning the thread. In fact, the thread finishes without concluding whether the patch has been applied or not. You can grab it in the thread, anyway. --- [[Main/ThadeuCascardo]] - 29 Sep 2005 +[Link to thread](http://lists.gnu.org/archive/html/bug-hurd/2005-01/msg00025.html) -No DHCP client has been ported to the Hurd yet. +The thread starts at Jan 4th 2005 until Jan 6th and is only retaken at April 14th in [this thread](http://lists.gnu.org/archive/html/bug-hurd/2005-01/msg00025.html). [This](http://mail.gnu.org/archive/html/help-hurd/2003-10/msg00016.html) thread on help-hurd has a little more info on what's still needed for DHCP. --- [[Main/GregBuchholz]] - 09 Oct 2003 - Found this [message](http://mail.gnu.org/archive/html/bug-hurd/2003-08/msg00045.html) about DHCP capabilities in the Hurd encouraging. --- [[Main/GregBuchholz]] - 03 Sep 2003 - * Tom Hart began a [discussion ](http://mail.gnu.org/pipermail/help-hurd/2002-October/006643.html) of 14 posts in Oct 2002. --- [[Main/GrantBow]] - 20 Oct 2002 - The beginnings of a DHCP translator is available in the Hurd sources on Savannah: [hurd/trans/pump.c](http://savannah.gnu.org/cgi-bin/viewcvs/hurd/hurd/trans/pump.c?rev=1.3&content-type=text/vnd.viewcvs-markup) Unfortunately our current TCP/IP stack, the pfinet translator, lacks support for the AF\_PACKET interface as well as sending packets with an IP address of 0.0.0.0. @@ -42,10 +44,3 @@ Neal Walfield on bug-hurd replies: > Anyone else know the status of getting these compiled and functional? We need to be able to send to the DHCP server with ip address 0.0.0.0. - --- [[Main/JoachimNilsson]] - 12 Nov 2002 - ---- - -[[Debian GNU/Hurd|running/debian]] has some script hackery to get -[[running/debian/DHCP]] going. diff --git a/microkernel/mach/gnumach/building.mdwn b/microkernel/mach/gnumach/building.mdwn index 24a73608..afcfac74 100644 --- a/microkernel/mach/gnumach/building.mdwn +++ b/microkernel/mach/gnumach/building.mdwn @@ -1,3 +1,14 @@ +[[!meta copyright="Copyright © 2006, 2007, 2008, 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]]."]]"""]] + # Building [[GNU_Mach|gnumach]] from Source If you want to build the [[GNU_Mach|gnumach]] kernel yourself instead of just using a diff --git a/microkernel/mach/gnumach/debugging.mdwn b/microkernel/mach/gnumach/debugging.mdwn index 596e4da0..f657e7cc 100644 --- a/microkernel/mach/gnumach/debugging.mdwn +++ b/microkernel/mach/gnumach/debugging.mdwn @@ -9,7 +9,12 @@ 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]]."]]"""]] -Here are some hints to debug with GNU Mach +Here are some hints to debug with GNU Mach. + +[[!toc levels=2]] + + +# Kernel Debugger Mach has a built-in kernel debugger. [Manual](http://www.gnu.org/software/hurd/gnumach-doc/Kernel-Debugger.html). @@ -20,27 +25,25 @@ Then, reproduce the issue again. If something like a kernel trap happens, you wi If you are running in kvm or qemu, it is convenient to use the curses frontend to be able to copy/paste. -The debugger has an extensive documentation on http://www.gnu.org/software/hurd/gnumach-doc/Kernel-Debugger.html , but a quick start is the following. - To get the register values, type -show registers + show registers To get a backtrace, type trace, which will print both function return addresses and function parameters, such as -0x107cf1(8088488,5e,40000008,2aa008,0) -0x1071bc(0,0,0,0,0) -0x106831(24fe00,2000,b,800,0) + 0x107cf1(8088488,5e,40000008,2aa008,0) + 0x1071bc(0,0,0,0,0) + 0x106831(24fe00,2000,b,800,0) Run the addr2line tool on the return addresses: -addr2line -i -f -e /boot/gnumach 0x107cf1 0x1071bc 0x106831 + $ addr2line -i -f -e /boot/gnumach 0x107cf1 0x1071bc 0x106831 This will print the source code lines of the backtrace. To examine the backtrace of some given thread, use -show all thread/u + show all thread/u to get the whole listing of all tasks and threads. You can then use trace/t to trace a specific thread. @@ -48,25 +51,28 @@ Unfortunately, userland and kernelland use the same range of addresses, so one c To examine a variable, use nm /boot/gnumach to get the address of the variable (e.g. 0x123400), and use -x 0x123400 + x 0x123400 to read it. One can also write to it by using -w 0x123400 + w 0x123400 Another interesting feature is watching a variable, by using -watch 0x123400 + watch 0x123400 and then type continue, to let Mach continue execution. The debugger will be entered again on any change in that variable. The watch is implemented in hardware, so it does not disturb or slow down execution at all. +# GDB in QEMU When you're [[running_a_system_in_QEMU|hurd/running/qemu]] you can directly [use GDB on the running kernel](http://www.nongnu.org/qemu/qemu-doc.html#SEC48). +# Code Inside the Kernel + Alternatively you can use an approach like this one: add the following code snippet to `device/ds_routines.c`'s `ds_device_open` function, right at the top of the function, and modify the code as needed. @@ -105,6 +111,8 @@ This is especially useful if you need to manually trigger some stuff inside the running kernel, as with the *D1* example. +## Writing to the Screen Buffer + If you're doing real low level debugging, you might want to put variations of the following snipped into the code, this code will write a `#` character at line `[LINE]`, column `[COLUMN]` on the screen: @@ -118,6 +126,8 @@ some place when running the kernel inside QEMU, as QEMU somehow decides not to update its display buffer anymore under certain conditions. +# Halting the CPU and Examining Registers + IRC, freenode, #hurd, 2011-07-14: <braunr> one ugly trick i use when printf isn't available is to halt the diff --git a/microkernel/mach/mig/gnu_mig/building.mdwn b/microkernel/mach/mig/gnu_mig/building.mdwn index 759c1a84..cd588341 100644 --- a/microkernel/mach/mig/gnu_mig/building.mdwn +++ b/microkernel/mach/mig/gnu_mig/building.mdwn @@ -1,3 +1,14 @@ +[[!meta copyright="Copyright © 2006, 2007, 2008, 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]]."]]"""]] + # <a name="Building_the_Mach_Interface_Gene"> Building the Mach Interface Generator from Source </a> If you want to build the Mach Interface Generator yourself instead of just diff --git a/microkernel/mach/mig/gnu_mig/building/discussion.mdwn b/microkernel/mach/mig/gnu_mig/building/discussion.mdwn new file mode 100644 index 00000000..d7636158 --- /dev/null +++ b/microkernel/mach/mig/gnu_mig/building/discussion.mdwn @@ -0,0 +1,16 @@ +[[!meta copyright="Copyright © 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]]."]]"""]] + +# Non-cross-compiling + +[[!tag open_issue_mig]] + +[[samuelthibault]] mentioned that I should make clear what compiler options, etc. are only needed if compiling on a 64 bit computer. However, I don't know if the --host=i686... option is needed, here and when making gnumach, in case there may be some other default on 32 bit computers? --[[sudoman]] + diff --git a/microkernel/mach/mig/gnu_mig/discussion.mdwn b/microkernel/mach/mig/gnu_mig/discussion.mdwn deleted file mode 100644 index e5a4dea3..00000000 --- a/microkernel/mach/mig/gnu_mig/discussion.mdwn +++ /dev/null @@ -1,6 +0,0 @@ -# Builing MIG - -## Non-cross-compiling - -[[samuelthibault]] mentioned that I should make clear what compiler options, etc. are only needed if compiling on a 64 bit computer. However, I don't know if the --host=i686... option is needed, here and when making gnumach, in case there may be some other default on 32 bit computers? --[[sudoman]] - diff --git a/open_issues/e2fsck_i_file_acl_hi.mdwn b/open_issues/e2fsck_i_file_acl_hi.mdwn index f055babe..d03b733c 100644 --- a/open_issues/e2fsck_i_file_acl_hi.mdwn +++ b/open_issues/e2fsck_i_file_acl_hi.mdwn @@ -1,4 +1,4 @@ -[[!meta copyright="Copyright © 2010 Free Software Foundation, Inc."]] +[[!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 @@ -34,4 +34,5 @@ IRC, unknown channel, unknown date. <youpi> k <antrik> but it's always passive translator nodes -This is due to an erroneous read/write from e2fsck, see http://sourceforge.net/tracker/?func=detail&aid=3379227&group_id=2406&atid=102406 +This is due to an erroneous read/write from e2fsck, see +<http://sourceforge.net/tracker/?func=detail&aid=3379227&group_id=2406&atid=102406>. diff --git a/open_issues/libpthread_dlopen.mdwn b/open_issues/libpthread_dlopen.mdwn index 0cd761f2..0d3628ec 100644 --- a/open_issues/libpthread_dlopen.mdwn +++ b/open_issues/libpthread_dlopen.mdwn @@ -15,7 +15,7 @@ IRC, OFTC, #debian-hurd, 2011-07-21. <youpi> there's one known issue with pthreads <youpi> you can't dlopen() it -[ if the main application is not already linked against it ] +... if the main application is not already linked against it. <youpi> which also means you can't dlopen() a module which depends on it if the main application hasn't used -lpthread already @@ -43,12 +43,12 @@ The fix thus being: link the main application with -lpthread. The same symptom appears in an odd case, for instance: -buildd@hurd:~$ ldd /usr/bin/openjade - libthreads.so.0.3 => /lib/libthreads.so.0.3 (0x0103d000) - libosp.so.5 => /usr/lib/libosp.so.5 (0x01044000) - libpthread.so.0.3 => /lib/libpthread.so.0.3 (0x01221000) - libnsl.so.1 => /lib/i386-gnu/libnsl.so.1 (0x01232000) -... + buildd@hurd:~$ ldd /usr/bin/openjade + libthreads.so.0.3 => /lib/libthreads.so.0.3 (0x0103d000) + libosp.so.5 => /usr/lib/libosp.so.5 (0x01044000) + libpthread.so.0.3 => /lib/libpthread.so.0.3 (0x01221000) + libnsl.so.1 => /lib/i386-gnu/libnsl.so.1 (0x01232000) + [...] openjade links against *both* libthreads and libpthread. The result is that libc early-initializes libthreads only, and thus libpthread is not early-initialized, diff --git a/open_issues/perl.mdwn b/open_issues/perl.mdwn index c7428cb5..45680328 100644 --- a/open_issues/perl.mdwn +++ b/open_issues/perl.mdwn @@ -10,16 +10,13 @@ License|/fdl]]."]]"""]] [[!meta title="Foster Perl programming"]] -A dependency loop in Debian GNU/Hurd currently leads to +[[!template id=note text="""**2011-08**. A dependency loop in Debian GNU/Hurd +currently leads to: *Could not perform immediate configuration on 'perl'*. +Easy workaround: -`Could not perform immediate configuration on 'perl'` - -Simply use - -`apt-get install perl perl-base -o APT::Immediate-Configure=false` - -to break the loop. + # apt-get install perl perl-base -o APT::Immediate-Configure=false +"""]] Resolve issues uncovered by Perl's test suite, and enable Hurd-specific diff --git a/open_issues/runit.mdwn b/open_issues/runit.mdwn index 6b336ef7..659b81ea 100644 --- a/open_issues/runit.mdwn +++ b/open_issues/runit.mdwn @@ -1,12 +1,13 @@ -[[!meta copyright="Copyright © 2008, 2009 Free Software Foundation, Inc."]] +[[!meta copyright="Copyright © 2008, 2009, 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]]."]]"""]] +is included in the section entitled [[GNU Free Documentation +License|/fdl]]."]]"""]] [[!tag open_issue_porting]] @@ -26,36 +27,24 @@ Originally answered by Samuel Thibault: Usual issue with rpctrace: it does not support fork(). -I've checked a backtrace in gdb, got this: - - 0x0105af6c in mach_msg_trap () - at /build/eglibc-jWVnRE/eglibc-2.13/build-tree/hurd-i386-libc/mach/mach_msg_trap.S:2 - -1 0x0105b769 in __mach_msg (msg=0x1024af8, option=258, send_size=0, rcv_size=40, rcv_name=140, - timeout=1000020, notify=0) at msg.c:110 - -2 0x01062251 in _hurd_select (nfds=2, pollfds=0x1024dc0, readfds=0x0, writefds=0x0, exceptfds=0x0, - timeout=0x1024bbc, sigmask=0x0) at hurdselect.c:324 - -3 0x0114427b in __poll (fds=0x1024dc0, nfds=2, timeout=1000020) at ../sysdeps/mach/hurd/poll.c:48 - -4 0x0804b770 in iopause (x=0x1024dc0, len=2, deadline=0x1024dd8, stamp=0x1024de8) at iopause.c:29 - -5 0x08048efc in main (argc=2, argv=0x1024e94) at runsv.c:543 - - -and main() shows up as: - - sig_unblock(sig_term); - - sig_unblock(sig_child); - - -> iopause(x, 2 +haslog, &deadline, &now); - - sig_block(sig_term); - - sig_block(sig_child); - + I've checked a backtrace in gdb, got this: + + 0x0105af6c in mach_msg_trap () + at /build/eglibc-jWVnRE/eglibc-2.13/build-tree/hurd-i386-libc/mach/mach_msg_trap.S:2 + 1 0x0105b769 in __mach_msg (msg=0x1024af8, option=258, send_size=0, rcv_size=40, rcv_name=140, + timeout=1000020, notify=0) at msg.c:110 + 2 0x01062251 in _hurd_select (nfds=2, pollfds=0x1024dc0, readfds=0x0, writefds=0x0, exceptfds=0x0, + timeout=0x1024bbc, sigmask=0x0) at hurdselect.c:324 + 3 0x0114427b in __poll (fds=0x1024dc0, nfds=2, timeout=1000020) at ../sysdeps/mach/hurd/poll.c:48 + 4 0x0804b770 in iopause (x=0x1024dc0, len=2, deadline=0x1024dd8, stamp=0x1024de8) at iopause.c:29 + 5 0x08048efc in main (argc=2, argv=0x1024e94) at runsv.c:543 + + and main() shows up as: + + sig_unblock(sig_term); + sig_unblock(sig_child); + -> iopause(x, 2 +haslog, &deadline, &now); + sig_block(sig_term); + sig_block(sig_child); So it simply looks like the known "signals don't interrupt select" bug. - diff --git a/open_issues/sync_but_still_unclean_filesystem.mdwn b/open_issues/sync_but_still_unclean_filesystem.mdwn index 8a0b1d49..c8a37169 100644 --- a/open_issues/sync_but_still_unclean_filesystem.mdwn +++ b/open_issues/sync_but_still_unclean_filesystem.mdwn @@ -33,6 +33,5 @@ Of course, [[hurd/translator/ext2fs]] is meant to be doing this to-disk synchronization internally upon translator shutdown, but evidently it doesn't in all cases. - Apparently diskfs simply does not set filesystem as readonly: - - http://lists.gnu.org/archive/html/bug-hurd/2011-08/msg00024.html +Apparently diskfs simply does not set filesystems as read-only: +<http://lists.gnu.org/archive/html/bug-hurd/2011-08/msg00024.html>. diff --git a/open_issues/virtualbox.mdwn b/open_issues/virtualbox.mdwn index 246313ff..9440284f 100644 --- a/open_issues/virtualbox.mdwn +++ b/open_issues/virtualbox.mdwn @@ -8,15 +8,16 @@ 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]]."]]"""]] -[[!meta title="xattr: extended attributes"]] - [[!tag open_issue_gnumach]] Running GNU Mach in VirtualBox crashes during initialization. IRC, freenode, #hurd, 2011-08-15 - <BlueT_> HowTo Reproduce: 1) Use `reboot` to reboot the system. 2) Once you see the Grub menu, turn off the debian hurd box. 3) Let the box boot normally, and wait for the error/crash/reboot. 4) The error/crash will happen twice and it's reboot automatically. The 3rd boot will success. + <BlueT_> HowTo Reproduce: 1) Use `reboot` to reboot the system. 2) Once + you see the Grub menu, turn off the debian hurd box. 3) Let the box boot + normally, and wait for the error/crash/reboot. 4) The error/crash will + happen twice and it's reboot automatically. The 3rd boot will success. <BlueT_> root@dhurd:/boot# addr2line -f -e gnumach-1.3.99-486-dbg-copy 0x106c93 0x1556a5 0x152c54 <BlueT_> copyoutmsg @@ -28,8 +29,8 @@ IRC, freenode, #hurd, 2011-08-15 i386/i386/locore.S:1289 is - movl $USER_DS,%eax /* use user data segment for accesses */ -=> mov %ax,%es + movl $USER_DS,%eax /* use user data segment for accesses */ + => mov %ax,%es State is @@ -66,14 +67,14 @@ IRC, freenode, #hurd, 2011-08-15 i386/i386/locore.S:527 is: -_return_from_kernel: -_kret_popl_gs: - popl %gs /* restore segment registers */ -_kret_popl_fs: - popl %fs -_kret_popl_es: -=> popl %es -_kret_popl_ds: + _return_from_kernel: + _kret_popl_gs: + popl %gs /* restore segment registers */ + _kret_popl_fs: + popl %fs + _kret_popl_es: + => popl %es + _kret_popl_ds: cs: 0x8 ds: 0x10 @@ -93,5 +94,6 @@ _kret_popl_ds: efl: 0x10216 <youpi> looks again like a $USER_DS issue - <youpi> what's interesting is that that one means that $USER_DS did load in %es fine at least once + <youpi> what's interesting is that that one means that $USER_DS did load in + %es fine at least once <youpi> and it's the reload that fails diff --git a/source_repositories.mdwn b/source_repositories.mdwn index df0242f0..5ac90b5e 100644 --- a/source_repositories.mdwn +++ b/source_repositories.mdwn @@ -1,5 +1,5 @@ -[[!meta copyright="Copyright © 2007, 2008, 2009, 2010 Free Software Foundation, -Inc."]] +[[!meta copyright="Copyright © 2007, 2008, 2009, 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 @@ -22,14 +22,17 @@ This page is meant to give some guidelines. Please use good sense or ask on * hurd.git -- Hurd meta package; no real content yet * [[hurd/glibc.git|glibc]] -- [[/glibc]] maintenance - * hurd/gnumach.git -- [[GNU Mach|microkernel/mach/gnumach]] ([[building|microkernel/mach/gnumach/building]]) - * hurd/hurd.git -- [[/Hurd]] ([[building|hurd/building]]) + * hurd/gnumach.git -- [[GNU Mach|microkernel/mach/gnumach]] + ([[microkernel/mach/gnumach/building]]) + * hurd/hurd.git -- [[/Hurd]] ([[hurd/building]]) * [[hurd/incubator.git|incubator]] -- the great next stuff * hurd/libpthread.git -- [[POSIX threading library|libpthread]] - * hurd/mig.git -- [[microkernel/mach/MIG]] ([[building|microkernel/mach/mig/gnu_mig/building]]) + * hurd/mig.git -- [[microkernel/mach/MIG]] + ([[microkernel/mach/mig/gnu_mig/building]]) * hurd/procfs.git -- [[hurd/translator/procfs]] - * hurd/unionfs.git -- -- [[hurd/translator/unionfs]] - * hurd/viengoos.git -- [[microkernel/Viengoos]] ([[building|microkernel/viengoos/building]]) + * hurd/unionfs.git -- [[hurd/translator/unionfs]] + * hurd/viengoos.git -- [[microkernel/Viengoos]] + ([[microkernel/viengoos/building]]) * hurd/web.git -- [[contributing/Web_pages]] |