[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] xenoprof passive profiling and "mode" setting
On 5 Jul 2006, at 19:27, Ray Bryant wrote: So, how is that possibly true for the kernel in an HVM guest? (Wouldn't guest_kernel_mode(regs) be false in that case since it is not running ring_3()?) guest_kernel_mode() does not work for HVM guests. It may need to be fixed -- it had previously only been used in paravirtual-only contexts. It might make sense to invert[*] the predicate and rename to user_mode(). Then definition is simply ring_3(regs) for x86/32 and (ring_3(regs) && !((v)->arch.flags & TF_kernel_mode)) for x86/64. Also, wouldn't ring_0(regs) be true if we are running in kernel mode in an HVM guest? This code appears to assign such a sample to being part of xen,right? ring_0(regs) should be replaced by !guest_mode(regs). So maybe: int mode = 2; if (guest_mode(regs)) mode = user_mode(current, regs) ? 0 : 1; -- Keir[*] Not really inversion, as neither guest_kernel_mode() nor user_mode() are true for hypervisor mode. _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |