lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite for Android: free password hash cracker in your pocket
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <4836FB0B.9020906@web.de>
Date:	Fri, 23 May 2008 19:12:43 +0200
From:	Jan Kiszka <jan.kiszka@....de>
To:	Vegard Nossum <vegard.nossum@...il.com>
CC:	Jeremy Fitzhardinge <jeremy@...p.org>, Ingo Molnar <mingo@...e.hu>,
	Pekka Enberg <penberg@...helsinki.fi>,
	linux-kernel@...r.kernel.org
Subject: Re: [PATCH] kmemcheck: SMP support

Vegard Nossum wrote:
> On Fri, May 23, 2008 at 5:40 PM, Jeremy Fitzhardinge <jeremy@...p.org> wrote:
>> Vegard Nossum wrote:
>>> This works on real hw, but not on qemu. It seems to get stuck waiting for
>>> one
>>> of the atomic values to change. Don't know why yet, it might just be yet
>>> another bug in qemu... (we've hit at least two of them so far. And they
>>> were
>>> real bugs too.)
>>>
>> I've noticed that qemu mis-reports the eip of cmpxchg if it faults (it
>> reports the eip of the start of the basic block, I think).  Does that match
>> what you're seeing?
> 
> You mean the EIP that gets pushed on the stack for the page fault?
> (That would be bad news for kmemcheck. I suppose the rest of the
> kernel never page faults on cmpxchg addresses?)
> 
> Or do you mean the EIP that shows up in gdb?
> 
> But no, it seems to be unrelated. What I hit so far were (in 0.9.0):
> 
> 1. qemu doesn't set the single-stepping flag of DR6 on single-step
> debug exceptions.
> 2. qemu triggers int 0 (divide error) instead of int 2 on NMI IPIs.
> 
> But both of these were fixed in the latest 0.9.1.

I guess you mean trunk - NMI IPIs didn't came with "old" 0.9.1.

> 
> I don't yet know if what I'm hitting now is really an error with qemu.
> But I usually trust the real hardware more :-)

Try KVM as well. It is, of course, must faster than QEMU, and it comes
with true SMP (given you have a SMP host). With in-kernel irqchip
(that's default), KVM now also supports NMI IPIs. And debug registers
should be fine with my latest patch.

I'm currently trying to get debug support straight for upstream KVM and,
where also required, QEMU. SMP debugging is a common issue, but already
usable with KVM. So testers are welcome, an overview on required patches
can be provided.

Jan

PS: Some cmpxchg changes where committed to qemu-trunk recently, maybe
only related to the restructuring of the code generator, but maybe also
fixing an older bug.


Download attachment "signature.asc" of type "application/pgp-signature" (255 bytes)

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ