tools/libxc/xc_private.h
the start line is 88.
88 static inline int do_xen_version(int xc_handle, int cmd, void *dest)
89 {
90 DECLARE_HYPERCALL;
91
92 hypercall.op = __HYPERVISOR_xen_version;
93 hypercall.arg[0] = (unsigned long) cmd;
94 hypercall.arg[1] = (unsigned long) dest;
95
96 return do_xen_hypercall(xc_handle, &hypercall);
97 }
Ctags can help you find the definition a function.
Just run the following commands.
cd xen-src-dir
ctags -R
vim -t do_xen_version
then you got it.
--
Best Regards
Shaohui
________________________________________
From: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx [mailto:xen-devel-bounces@xxxxxxxxxxxxxxxxxxx] On Behalf Of 房海峰
Sent: 2008年3月7日 17:46
To: xen-devel
Subject: [Xen-devel] where is the location of definition of "do_xen_version"?
hi, my friends:
Currently, i am studying the way of hypercall's implementation.
i have already known the flow of hypercall's execuation, and i decided to add a new hypercall into the Xen.
first, i want to know the detail of one hypercall function, for example, "do_xen_version", but i can not find
the location of definition of "do_xen_version". who can help me?
i have get some resualts as follows:
[root@vt-0 xen-3.1.0-src]# find ./ -name "*.*" | xargs grep "do_xen_version"
./xen/include/xen/hypercall.h:do_xen_version(
Binary file ./xen/common/built_in.o matches
Binary file ./xen/common/kernel.o matches
./xen/arch/x86/x86_32/entry.S: .long do_xen_version
./xen/arch/x86/x86_32/entry.S: .byte 2 /* do_xen_version */
Binary file ./xen/arch/x86/x86_32/built_in.o matches
Binary file ./xen/arch/x86/x86_32/entry.o matches
./xen/arch/x86/x86_64/entry.S: .quad do_xen_version
./xen/arch/x86/x86_64/entry.S: .byte 2 /* do_xen_version */
Binary file ./xen/arch/x86/built_in.o matches
Binary file ./xen/arch/x86/hvm/hvm.o matches
Binary file ./xen/arch/x86/hvm/built_in.o matches
./xen/arch/ia64/linux-xen/entry.S: data8 do_xen_version
./xen/arch/powerpc/powerpc64/hypercall_table.S: .quad do_xen_version
Binary file ./dist/install/boot/xen-syms-3.1.0 matches
./tools/libxc/xc_private.c: rc = do_xen_version(xc_handle, cmd, arg);
./tools/libxc/xc_private.h:static inline int do_xen_version(int xc_handle, int cmd, void *dest)
but the "do_xen_version" is not in those above.
thanks a lots.
www.ict.ac.cn
2008-03-07
________________________________________
房海峰
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel