|
From: Tom H. <to...@co...> - 2006-02-13 09:54:19
|
In message <43F...@wa...>
Eric Pouech <eri...@wa...> wrote:
> 1/ trapno in sigframe (vg-trapno.diff)
> (already posted in the bug database, but enhanced from previous
> post). This patch sets the trapno field in sigframe structure.
I did look at that bug yesterday but I'm not a big fan of your
solution and I'm trying to come up with a better approach.
How accurate is the mapping you provided - given that you are trying
to go backwards from signal number/reason to trap number is that
actually a reversible mapping? or does the kernel map multiple trap
numbers to a single signal+reason combination in some cases?
> 2/ handling ESP change in sig handler (vg-sig.diff)
> This patch tries to fetch the cases where a sig handler changes ESP in
> ucontext, and lets V know about it. Ok, it's a bit black magic, but it
> prevents a tons of warnings. I only wrote it for old signal frame
> signatures, but it's rather straightforward to implement it to RT
> signal handlers.
Can you put this on the bug tracker so we don't lose it please.
> 3/ disabled support for tkill (vg-tkill.diff)
> This patch (partly) reenables tkill syscall under
> x86-linux. Basically, Wine is made to run either under (NPTL) pthread
> support, or old kernel thread support. We use tkill, which is
> transparent whatever the thread system we're running on (pthread or
> kthread).
I think I've got your post in valgrind-users about this marked to
be looked at when I get a chance, but once again putting it on the
bug tracker is a better idea.
I will look at this, but I believe tkill is deprecated as it is
potentially dangerous and that tgkill is the preferred call now
where it is available as it ensures that you can only signal your
own threads.
> 4/ missing opcodes in X86 emulation (vg-vex.diff)
> Wine uses some implemented opcodes (push / pop of cs, ds, es, fs, and
> gs), as well as iret. The first ones were quite simple to
> implement. For iret, I put something together, which is wrong from
> emulation point of view:
> - eflags is not correctly restored, I simply copied the popf stuff
> - it doesn't restore cs
That's one for Julian.
Tom
--
Tom Hughes (to...@co...)
http://www.compton.nu/
|