Re: [BUG/PATCH] x86 mmiotrace: dynamically disable non-boot CPUs

!MAILaRCHIVE_VOTE_RePLACE
Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]
To: Ingo Molnar <mingo@...>
Cc: Steven Rostedt <rostedt@...>, <linux-kernel@...>, <vegard.nossum@...>, <nouveau@...>
Date: Wednesday, April 16, 2008 - 1:59 pm

On Wed, 16 Apr 2008 13:46:09 +0200
Ingo Molnar <mingo@elte.hu> wrote:


We're not tracing Xorg at all. Mmiotrace still cannot catch accesses
originating in user space. It is tracing MMIO accesses from within
the kernel, and this means that IRQ services and device syscalls
may be accessing the hardware at the same time. Vblank interrupts
happen quite often, some GPU commands are actually emulated in
kernel via interrupts and whatnot. The nvidia proprietary kernel blob
is many times bigger than my bzImage!

(A simple X startup and quit creates in the order of 1-2 million
MMIO events.)

As do we really need this, I think it might save a lot of head
scratching when someone is reverse engineering a feature and gets
every time a different trace due to some events being missed.
But this is theory. So far everyone has been tracing with UP,
and this has not been a problem. I have no idea if it would make
a real difference.

[Recap for nouveau@ list:
mmiotrace has a race on SMP, where during instruction single stepping
other CPUs can run freely on the page which the faulted instruction
accessed. This causes some of the simultaneous accesses to the same
page of the same iomem-mapping to be missed.]

It does sound very rare. Nouveau people, what do you think, can this
be a problem?


Compared to the out-of-tree mmiotrace, the in-kernel version is already
a lot easier to use. Instructing people to drop to UP before tracing
is simple compared to what it was.


Thanks.

-- 
Pekka Paalanen
http://www.iki.fi/pq/
--
Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]

Messages in current thread:
[BUG] kmalloc_node(GFP_KERNEL) while smp_alt spinlocked, Pekka Paalanen, (Sat Apr 19, 11:41 am)
[PATCH] Fix SMP alternatives : use mutex instead of spinlock..., Mathieu Desnoyers, (Sat Apr 19, 12:19 pm)
Re: [repost PATCH] Fix SMP alternatives : use mutex instead ..., Mathieu Desnoyers, (Tue Apr 22, 4:22 pm)
[PATCH] Check for breakpoint in text_poke to eliminate bug_on, Mathieu Desnoyers, (Sat Apr 19, 5:58 pm)
Re: [PATCH] Check for breakpoint in text_poke to eliminate b..., Mathieu Desnoyers, (Sat Apr 19, 8:05 pm)
Re: [PATCH] Check for breakpoint in text_poke to eliminate b..., Mathieu Desnoyers, (Sun Apr 20, 3:44 pm)
Re: [PATCH] Check for breakpoint in text_poke to eliminate b..., Mathieu Desnoyers, (Sun Apr 20, 4:25 pm)
[PATCH] x86_64: fix kernel rodata NX setting, Pekka Paalanen, (Mon Apr 21, 2:48 pm)
Re: [PATCH] x86_64: fix kernel rodata NX setting, Ingo Molnar, (Mon Apr 21, 3:03 pm)
Re: [PATCH] x86_64: fix kernel rodata NX setting, Steven Rostedt, (Mon Apr 21, 2:57 pm)
Re: [BUG/PATCH] x86 mmiotrace: dynamically disable non-boot ..., Pekka Paalanen, (Wed Apr 16, 1:59 pm)
Re: [Nouveau] [BUG/PATCH] x86 mmiotrace: dynamically disable..., Stephane Marchesin, (Thu Jul 24, 11:34 am)