qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
* [Qemu-devel] checking if linux-user address is mapped (sparc)
@ 2008-09-02 21:01 Vince Weaver
  2008-09-03 16:08 ` Blue Swirl
  0 siblings, 1 reply; 3+ messages in thread
From: Vince Weaver @ 2008-09-02 21:01 UTC (permalink / raw)
  To: qemu-devel

Hello

so now I'm trying to get the vpr spec2k benchmarks going under
sparc32plus-linux-user

In an optimized memory scanning routine the code is doing:

     ldxa  [ %o0 ] #ASI_PNF, %o3

Which is a load from the "no fault" address space.
What this means is that even if you are loading from an invalid address, 
no fault should occur.

qemu of course segfaults when the address is invalid.

Is there some way to check in linux-user if a virtual memory address is 
mapped?  That way it could be checked before the ldl_raw() is run?

hopefully I am not misunderstanding the bug here.

Vince

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [Qemu-devel] checking if linux-user address is mapped (sparc)
  2008-09-02 21:01 [Qemu-devel] checking if linux-user address is mapped (sparc) Vince Weaver
@ 2008-09-03 16:08 ` Blue Swirl
  2008-09-03 17:16   ` Vince Weaver
  0 siblings, 1 reply; 3+ messages in thread
From: Blue Swirl @ 2008-09-03 16:08 UTC (permalink / raw)
  To: qemu-devel

[-- Attachment #1: Type: text/plain, Size: 702 bytes --]

On 9/3/08, Vince Weaver <vince@csl.cornell.edu> wrote:
> Hello
>
>  so now I'm trying to get the vpr spec2k benchmarks going under
>  sparc32plus-linux-user
>
>  In an optimized memory scanning routine the code is doing:
>
>     ldxa  [ %o0 ] #ASI_PNF, %o3
>
>  Which is a load from the "no fault" address space.
>  What this means is that even if you are loading from an invalid address, no
> fault should occur.
>
>  qemu of course segfaults when the address is invalid.
>
>  Is there some way to check in linux-user if a virtual memory address is
> mapped?  That way it could be checked before the ldl_raw() is run?
>
>  hopefully I am not misunderstanding the bug here.

Could you test this patch?

[-- Attachment #2: no_fault_accesses.diff --]
[-- Type: plain/text, Size: 2814 bytes --]

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [Qemu-devel] checking if linux-user address is mapped (sparc)
  2008-09-03 16:08 ` Blue Swirl
@ 2008-09-03 17:16   ` Vince Weaver
  0 siblings, 0 replies; 3+ messages in thread
From: Vince Weaver @ 2008-09-03 17:16 UTC (permalink / raw)
  To: qemu-devel


On Wed, 3 Sep 2008, Blue Swirl wrote:
> Could you test this patch?

The patch works great!  vpr works now, and it also fixes the parser 
benchmark.

Thanks for fixing this, I always get completely mixed up when digging 
through the memory access code trying to figure which parts apply to 
linux-user and which parts don't.

Of the 48 Spec2000 benchmarks, we are down to only 2 that don't work 
(facerec and sixtrack).  The remaining problem is floating point related, 
I'll see if I can track it down.

Thanks!

Vince

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2008-09-03 17:16 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2008-09-02 21:01 [Qemu-devel] checking if linux-user address is mapped (sparc) Vince Weaver
2008-09-03 16:08 ` Blue Swirl
2008-09-03 17:16   ` Vince Weaver

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).