diff options
-rw-r--r-- | community/gsoc/project_ideas.mdwn | 1 | ||||
-rw-r--r-- | community/gsoc/project_ideas/gdb.mdwn | 32 | ||||
-rw-r--r-- | contributing/web_pages/news/qoth_next.mdwn | 26 | ||||
-rw-r--r-- | gdb.mdwn | 6 | ||||
-rw-r--r-- | hurd/running/live_cd.mdwn | 14 | ||||
-rw-r--r-- | open_issues/libpthread_cancellation_points.mdwn | 41 | ||||
-rw-r--r-- | user/musial.mdwn | 2 |
7 files changed, 105 insertions, 17 deletions
diff --git a/community/gsoc/project_ideas.mdwn b/community/gsoc/project_ideas.mdwn index dba6dc46..c7b5ab1a 100644 --- a/community/gsoc/project_ideas.mdwn +++ b/community/gsoc/project_ideas.mdwn @@ -85,6 +85,7 @@ other: language_bindings, gnat, gccgo, perl_python. --> [[!inline pages="community/gsoc/project_ideas/file_locking" show=0 feeds=no actions=yes]] [[!inline pages="community/gsoc/project_ideas/object_lookups" show=0 feeds=no actions=yes]] [[!inline pages="community/gsoc/project_ideas/server_overriding" show=0 feeds=no actions=yes]] +[[!inline pages="community/gsoc/project_ideas/gdb" show=0 feeds=no actions=yes]] [[!inline pages="community/gsoc/project_ideas/tcp_ip_stack" show=0 feeds=no actions=yes]] [[!inline pages="community/gsoc/project_ideas/nfs" show=0 feeds=no actions=yes]] <!-- Richard, This task actually looks too big for a GSoC project. diff --git a/community/gsoc/project_ideas/gdb.mdwn b/community/gsoc/project_ideas/gdb.mdwn new file mode 100644 index 00000000..255ac239 --- /dev/null +++ b/community/gsoc/project_ideas/gdb.mdwn @@ -0,0 +1,32 @@ +[[!meta copyright="Copyright © 2013 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]]."]]"""]] + +[[!meta title="Improve the GDB Port for GNU Hurd"]] + +[[!tag open_issue_gdb]] + +[[/GDB]] is available and working on GNU Hurd. However, there are some bugs +and there is missing functionality compared to a port targeting the Linux +kernel ([[tag/Open_Issue_GDB]], [diff of +testresults](http://git.savannah.gnu.org/cgit/hurd/web.git/tree/gdb/test.diff?h=toolchain/logs/master)). +For example, there is no port of [[open_issues/gdb/gdbserver]] available yet. +Identifying (together with the mentors), and then addressing one or a few of +these items is the goal of this project. + +Required knowledge: Have an understanding about how GDB works generally, how it +interacts with an operating system. Some GNU Mach and Hurd knowledge will have +to be acquired while working on the project. + +Possible mentors: [[Thomas Schwinge (tschwinge)|tschwinge]]. + +Exercise: Begin writing a document to describe how the GNU Hurd port of GDB +works internally, how it interacts with the Hurd system, and compare it to a +port targeting the Linux kernel. Fix one of the Open Issues or testsuite +failures. diff --git a/contributing/web_pages/news/qoth_next.mdwn b/contributing/web_pages/news/qoth_next.mdwn index efce525c..96efacbc 100644 --- a/contributing/web_pages/news/qoth_next.mdwn +++ b/contributing/web_pages/news/qoth_next.mdwn @@ -15,7 +15,7 @@ Will be set by tschwinge when publishing. <!-- This is just a skeleton. Use it to create a new QotH. --> -A quarter of the Hurd, Q2 of 2012: *TODO*, *TODo* and *TODo*. +A quarter of the Hurd, Q2 of 2012: *TODO*, *TODO* and *TODo*. [[!if test="included()" then="""[[!toggle id=full_news text="Details."]][[!toggleable id=full_news text="[[!paste id=full_news]]"]]""" else=" @@ -25,8 +25,30 @@ else=" <!--basic structure of a QotH entry. Adapt, reduce and add points as needed. At the end, try to make the text flow as a unified whole.--> -For details, see Richards report about running +News items: + +- For details, see Richards report about running [Hurd without dependency on cthreads](http://lists.gnu.org/archive/html/bug-hurd/2012-08/msg00062.html). +- new cd images with keyboard layout configuration http://lists.gnu.org/archive/html/bug-hurd/2012-07/msg00048.html +- Pino Toscano: FIFO sockets with mknod (test passes now) http://lists.gnu.org/archive/html/bug-hurd/2012-09/msg00053.html +- Pino Toscano added a size parameter to tmpfs for easier usage in scripts: http://lists.gnu.org/archive/html/bug-hurd/2012-09/msg00005.html and a [version suffix option](http://lists.gnu.org/archive/html/bug-hurd/2012-10/msg00009.html) for gnumach configure. +- Pino Toscano added patches for [procfs](http://lists.gnu.org/archive/html/bug-hurd/2012-09/msg00004.html), [ptrace](http://lists.gnu.org/archive/html/bug-hurd/2012-10/msg00035.html), [fsync on stdout](http://lists.gnu.org/archive/html/bug-hurd/2012-10/msg00046.html), [muntrace](http://lists.gnu.org/archive/html/bug-hurd/2012-11/msg00033.html), [ulimit](http://lists.gnu.org/archive/html/bug-hurd/2012-11/msg00034.html), [glibc](http://lists.gnu.org/archive/html/bug-hurd/2012-11/msg00029.html) which among others improve POSIX conformance, making it easier to write programs which work on the Hurd and GNU/Linux. +- Cyril Roeland fixed a documentation typo [in ps](http://lists.gnu.org/archive/html/bug-hurd/2012-10/msg00032.html) and a missing linker flag [in procfs](http://lists.gnu.org/archive/html/bug-hurd/2012-10/msg00025.html). + +- Samuel Thibault pushed the [pthread patches](http://lists.gnu.org/archive/html/bug-hurd/2012-11/msg00088.html) from Vincente, Barry, Thomas, Richard and Samuel and others to the different upstream packages, finally enabling modern pthreads for the Hurd, which makes it possible to implement full Hurd bindings for languages which require pthreads, so for example [PyHurd](http://savannah.nongnu.org/projects/pyhurd/) can profit from the Hurd libraries instead of having to rely on low-level Mach bindings to implement Hurd features. +- Thomas Schwinge fixed [some errors](http://lists.gnu.org/archive/html/bug-hurd/2012-11/msg00077.html) which caused a miscalculation of the size of medium sized disks reporting 15 heads instead of 16. +- Svante Signell [improved](http://lists.gnu.org/archive/html/bug-hurd/2012-11/msg00062.html) the error handling in pflocal, +- Pino Toscano [implemented syncfs](http://lists.gnu.org/archive/html/bug-hurd/2012-11/msg00046.html) which ensures that all data in the filesystem gets written to disk, as well as [statfs](http://lists.gnu.org/archive/html/bug-hurd/2012-12/msg00005.html), which adds some additional statistics to procfs. +- Matthew Leach [fixed](http://lists.gnu.org/archive/html/bug-hurd/2012-11/msg00037.html) a compilation error with older GCC versions due to duplicate type definition. +- Samuel Thibault [provided](http://lists.gnu.org/archive/html/bug-hurd/2012-12/msg00052.html) new [installation CDs](http://people.debian.org/~sthibault/hurd-i386/installer/cdimage/current) and a new [qemu image](http://people.debian.org/~sthibault/hurd-i386/). +- Thomas Schwinge [debugged and fixed](http://lists.gnu.org/archive/html/bug-hurd/2012-12/msg00044.html) a deadlock with child threads resulting from a regression due to earlier fixes. +- Cyril Roelandt shared a [patch series](http://lists.gnu.org/archive/html/bug-hurd/2012-12/msg00018.html) to fix double mutex unlocking with pthreads. We will likely see more fixes like these, given that the whole threading interface changed. +- Cyril Roelandt fixed a [ps](http://lists.gnu.org/archive/html/bug-hurd/2012-12/msg00012.html) bug. + +- + +Still to do: everything starting from http://lists.debian.org/debian-hurd/2012/07/threads.html + This quarter [hurd hacker] [item] @@ -1,5 +1,5 @@ -[[!meta copyright="Copyright © 2007, 2008, 2009, 2011 Free Software Foundation, -Inc."]] +[[!meta copyright="Copyright © 2007, 2008, 2009, 2011, 2013 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,7 +22,7 @@ License|/fdl]]."]]"""]] work](http://lists.gnu.org/archive/html/bug-hurd/2007-02/msg00039.html) -# [[Maintenance|open_issues/binutils]] +# [[Maintenance|open_issues/gdb]] # Open Issues diff --git a/hurd/running/live_cd.mdwn b/hurd/running/live_cd.mdwn index 1eb9b8e0..7c5f0a8e 100644 --- a/hurd/running/live_cd.mdwn +++ b/hurd/running/live_cd.mdwn @@ -1,16 +1,6 @@ -[[Arch Hurd|hurd/running/arch_hurd/]] offers Hurd LiveCDs at <http://www.archhurd.org/gethurd.php>. +[[Arch Hurd|hurd/running/arch_hurd/]] offers Hurd LiveCDs at <http://www.archhurd.org/download/>. -Also you can download a gzipped iso of a Hurd Live CD at -<http://www.superunprivileged.org/hurd/live-cd/>. - -The Superunpriveleged crew also offers a tiny Hurd Live CD that is under 10 -MiB: <http://www.superunprivileged.org/hurd/tiny-cd/> - -Use it like this: - - $ qemu -m 512 -cdrom hurd-tiny-cd-20060722.iso - -A more recent Live CD can be found at <http://teythoon.cryptobitch.de/hurd/livecd/hurd-live-install-1273300101.iso.xz>. +A less recent Live CD can be found at <http://teythoon.cryptobitch.de/hurd/livecd/hurd-live-install-1273300101.iso.xz>. It can be run with qemu via diff --git a/open_issues/libpthread_cancellation_points.mdwn b/open_issues/libpthread_cancellation_points.mdwn new file mode 100644 index 00000000..af0efa9d --- /dev/null +++ b/open_issues/libpthread_cancellation_points.mdwn @@ -0,0 +1,41 @@ +[[!meta copyright="Copyright © 2013 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]]."]]"""]] + +[[!meta title="cancellation points are not cancelling threads"]] + +[[!tag open_issue_libpthread]] + + #include <pthread.h> + #include <stdio.h> + #include <sys/select.h> + #include <unistd.h> + + void *f (void*foo) + { + char buf[128]; + //pthread_setcanceltype (PTHREAD_CANCEL_ASYNCHRONOUS, NULL); + while (1) { + read (0, buf, sizeof(buf)); + } + } + int main (void) { + pthread_t t; + pthread_create (&t, NULL, f, NULL); + sleep (1); + pthread_cancel (t); + pthread_join (t, NULL); + exit(0); + } + +read() is not behaving as a cancellation point, only setting the cancel +type to asynchronous permits this testcase to terminate. We do have the +pthread_setcanceltype glibc/libpthread hook in the forward structure, but we are +not using it: the LIBC_CANCEL_ASYNC macros are void, and we're not using them in +the mig msg call either. diff --git a/user/musial.mdwn b/user/musial.mdwn index bcdaea2c..7ea58564 100644 --- a/user/musial.mdwn +++ b/user/musial.mdwn @@ -10,6 +10,8 @@ License|/fdl]]."]]"""]] ~musial (Robert Musial) - Cleveland, OH +http://musial.in/.musial/ + email: musial@gnu.org Join the FSF! - http://www.fsf.org/register_form?referrer=9143 |