summaryrefslogtreecommitdiff
path: root/user
diff options
context:
space:
mode:
Diffstat (limited to 'user')
-rw-r--r--user/jkoenig/java.mdwn91
1 files changed, 70 insertions, 21 deletions
diff --git a/user/jkoenig/java.mdwn b/user/jkoenig/java.mdwn
index fad68f58..868dec2b 100644
--- a/user/jkoenig/java.mdwn
+++ b/user/jkoenig/java.mdwn
@@ -23,6 +23,14 @@ For details, see my original [[proposal]].
## Current status
+Feeling slightly behind schedule; but project is very ambitious, which has been
+known from the beginning, and there is great progress, so there is no problem.
+--[[tschwinge]], 2011-06-29.
+
+[[tschwinge]] will be on vacations in China starting July 26th, will have
+Internet access intermittently, but not regularely. We'll have to figure out
+some scheme.
+
### Apt repository
@@ -34,12 +42,9 @@ Modified Debian packages are available in this repository:
### Glibc signal code improvements
-I have submitted
-[preliminary patches](http://lists.gnu.org/archive/html/bug-hurd/2011-05/msg00182.html)
-for global signal dispositions,
-which I'm currently testing.
-I have since fixed a few things and implemented `SA_SIGINFO`
-(which is required by OpenJDK.)
+2011-06-29:
+Patches were submitted to `libc-alpha`
+which implement global signal dispositions and `SA_SIGINFO`.
My latest code is available on
[github](http://github.com/jeremie-koenig/glibc/commits/master-beware-rebase),
and modified Debian packages
@@ -49,9 +54,10 @@ One question is how the new symbols introduced by my patches
should be handled.
Weak symbols turned out to be impractical,
so I'm currently considering using a Debian-specific
-symbol version in the interim period (`GLIBC_2.13_DEBIAN_7` so far).
+symbol version in the interim period (`GLIBC_2.13_DEBIAN_8` so far).
The ultimate symbol version to be used will depend on
-the time at which the patches get integrated upstream,
+the time at which the patches get integrated upstream
+(most likely `GLIBC_2.15`),
at which point we will alias the interim version
to the new one in debian packages.
@@ -72,10 +78,11 @@ see below.
#### Plans
-I will submit revised series for review later this week,
-as well as matching Debian patches.
-I expect only the last patch (implement global dispositions) will change,
-and new ones will be added on top of it.
+The patches are pending review and inclusion upstream.
+As soon as we reach an agreement wrt. the new interfaces
+(in particular wrt. the value of `SA_SIGINFO`),
+the patches will be applied to the Debian libc packages
+for broader testing.
##### Open Items
@@ -83,14 +90,11 @@ and new ones will be added on top of it.
* Test patches: in progress, [[jkoenig]], Svante. More volunteers welcome,
of course.
- > Current status: there's an issue with gdb,
+ > There's an issue with gdb,
> namely signals lose their "untracedness" when they go
> through the global sigstate's pending mask,
> so gdb spins intercepting a signal and trying to deliver it.
- > My current
- > [patch](http://github.com/jeremie-koenig/glibc/commit/3ecb990e9d08d5f75adc40b738b35a1802cc0943)
- > makes the system unstable.
- > --[[jkoenig]] 2011-06-22
+ > [Patch](http://github.com/jeremie-koenig/glibc/commit/3ecb990e9d08d5f75adc40b738b35a1802cc0943).
* If [[jkoenig]] thinks it's mature enough: should ask
[[Samuel|samuelthibault]] to test these patches on the buildds.
@@ -100,19 +104,43 @@ and new ones will be added on top of it.
> (in particular hurd)
> --[[jkoenig]] 2011-06-22
+ * Waiting on ABI finalization ([!] Roland).
+
+ * Which numeric values to use for `SA_SIGINFO` (and `SA_NOCLDWAIT`)?
+
+ > Staying in sync with BSD seems the most logical approach,
+ > so I have defined it to 0x40. --[[jkoenig]] 2011-06-29
+
* Get patches reviewed (Roland?), and integrated into official sources: [!]
[[tschwinge]].
- * Documentations bits (from [[proposal]] and elsewhere) should probably be
+ > In progress. --[[jkoenig]] 2011-06-29
+
+ * Documentations bits (from here, the initial [[proposal]], and elsewhere)
+ should probably be
moved either into the appropriate glibc or Hurd documentation
files/reference manuals, or to [[glibc/signal]].
- * `SA_SIGINFO` patche is based on [[Samuel|samuelthibault]]'s earlier work.
+ * `SA_SIGINFO` patch is based on [[Samuel|samuelthibault]]'s earlier work.
Thus, have him review the new patch?
- * Perhaps have a look at `SA_NOCLDWAIT`.
+ * `SA_SIGINFO` patch has a few TODOs w.r.t. protocol changes for missing
+ information, and for FPU state. Providing even incomplete information is
+ an improvement on the current status. The question is, whether
+ applications rely on this information in any hard way if `SA_SIGINFO` is
+ available?
+
+ * We could possibly rename certain fields in `struct siginfo`, say
+ `si_pid_not_implemented`, to ensure compilation failures for programs
+ which use them. Or perhaps a linker warning is possible.
- * Which numeric values to use for `SA_SIGINFO` (and `SA_NOCLDWAIT`)?
+ * The FPU state is not included in the `ucontext_t` passed to the signal
+ handler. On the other hand, `ucontext_t` is actually being somewhat
+ deprecated: the functions to restore it are no longer in POSIX.
+ `thread_get_state`() should return this information, in case we decide
+ to fill the gap, and there might be existing glibc wrappers, too.
+
+ * Perhaps have a look at `SA_NOCLDWAIT`.
### Port OpenJDK
@@ -157,6 +185,15 @@ although the current toolchain issues
([[toolchain/ELFOSABI_HURD]])
have so far prevented me from testing it.
+> It turns out the build fails later on in `hotspot/agent`
+> because Hurd lack a `libthread_db.so`.
+> Also, a Shark version builds, but the result does not work so far.
+>
+> In other news, Damien Raude-Morvan is
+> [working on a kFreeBSD version](http://lists.debian.org/debian-java/2011/06/msg00124.html),
+> so I intend to merge my current patches with his.
+>
+> --[[jkoenig]] 2011-06-29
##### Open Items
@@ -168,10 +205,22 @@ have so far prevented me from testing it.
* [!] [[Samuel|samuelthibault]]/[[tschwinge]]/[[jkoenig]]:
[[toolchain/ELFOSABI_HURD]].
+ * 2011-06-29: No progress.
+
+ * `libthread_db.so` issue. Likely, the Serviceability Agent is used by jdb
+ and the like only, so for now the goal should be to lose some functionality
+ by removing/avoiding this dependency.
+
* They seem to have a rather heavy-weight process for such projects: confer
<http://mail.openjdk.java.net/pipermail/announce/2011-January/000092.html>,
for example. Do we need this, too?
+ > Probably not.
+ > My current approach (and Damien's wrt. the kFreeBSD patches)
+ > is to add preprocessor directives in the Linux code
+ > to make it more portable.
+ > --[[jkoenig]] 2011-06-29
+
* Eclipse
OK for testing -- but I'd very much hope that it *just works* as soon as we