[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Xen-devel] Unable to include xen/sched.h



You need to define __XEN_TOOLS__ before you include any Xen public headers.

 -- Keir

On 14/11/07 12:38, "ashutosh mehra" <ashutosh.xen@xxxxxxxxx> wrote:

Hi,
I tried including sysctl.h using
#ifndef __XEN_TOOLS__
#define __XEN_TOOLS__ 1
#endif
#include <xen/interface/sysctl.h>

 but on compilation I get following errors:

In file included from /usr/local/src/xen- 3.1.0-src/linux-2.6.18-xen/include/xen/interface/sysctl.h:35,
                 from /home/ashu/Desktop/xenmodule/mymodule.c:19:
/usr/local/src/xen-3.1.0-src/linux-2.6.18-xen/include/xen/interface/domctl.h:40: error: expected specifier-qualifier-list before XEN_GUEST_HANDLE_64
/usr/local/src/xen-3.1.0-src/linux-2.6.18-xen/include/xen/interface/domctl.h:95: error: expected specifier-qualifier-list before uint64_aligned_t
/usr/local/src/xen-3.1.0-src/linux-2.6.18-xen/include/xen/interface/domctl.h:112: error: expected specifier-qualifier-list before uint64_aligned_t
/usr/local/src/xen-3.1.0-src/linux-2.6.18-xen/include/xen/interface/domctl.h:138: error: expected specifier-qualifier-list before uint64_aligned_t
/usr/local/src/xen-3.1.0-src/linux-2.6.18-xen/include/xen/interface/domctl.h:150: error: expected specifier-qualifier-list before uint64_aligned_t
/usr/local/src/xen-3.1.0-src/linux-2.6.18-xen/include/xen/interface/domctl.h:226: error: expected specifier-qualifier-list before XEN_GUEST_HANDLE_64
/usr/local/src/xen-3.1.0-src/linux-2.6.18-xen/include/xen/interface/domctl.h:237: error: expected specifier-qualifier-list before uint64_aligned_t
/usr/local/src/xen-3.1.0-src/linux-2.6.18-xen/include/xen/interface/domctl.h:247: error: expected specifier-qualifier-list before XEN_GUEST_HANDLE_64
/usr/local/src/xen-3.1.0-src/linux-2.6.18-xen/include/xen/interface/domctl.h:261: error: expected specifier-qualifier-list before uint64_aligned_t
/usr/local/src/xen-3.1.0-src/linux-2.6.18-xen/include/xen/interface/domctl.h:299: error: expected specifier-qualifier-list before uint64_aligned_t
/usr/local/src/xen-3.1.0-src/linux-2.6.18-xen/include/xen/interface/domctl.h:342: error: expected specifier-qualifier-list before uint64_aligned_t
/usr/local/src/xen-3.1.0-src/linux-2.6.18-xen/include/xen/interface/domctl.h:362: error: expected specifier-qualifier-list before uint64_aligned_t
/usr/local/src/xen-3.1.0-src/linux-2.6.18-xen/include/xen/interface/domctl.h:374: error: expected specifier-qualifier-list before uint64_aligned_t
/usr/local/src/xen-3.1.0-src/linux-2.6.18-xen/include/xen/interface/domctl.h:397: error: expected specifier-qualifier-list before XEN_GUEST_HANDLE_64
In file included from /home/ashu/Desktop/xenmodule/mymodule.c:19:
/usr/local/src/xen-3.1.0-src/linux-2.6.18-xen/include/xen/interface/sysctl.h:46: error: expected specifier-qualifier-list before XEN_GUEST_HANDLE_64
/usr/local/src/xen-3.1.0-src/linux-2.6.18-xen/include/xen/interface/sysctl.h:68: error: expected specifier-qualifier-list before uint64_aligned_t
/usr/local/src/xen-3.1.0-src/linux-2.6.18-xen/include/xen/interface/sysctl.h:84: error: expected specifier-qualifier-list before uint64_aligned_t
/usr/local/src/xen-3.1.0-src/linux-2.6.18-xen/include/xen/interface/sysctl.h:124: error: expected specifier-qualifier-list before XEN_GUEST_HANDLE_64
/usr/local/src/xen-3.1.0-src/linux-2.6.18-xen/include/xen/interface/sysctl.h:136: error: expected specifier-qualifier-list before XEN_GUEST_HANDLE_64
/usr/local/src/xen-3.1.0-src/linux-2.6.18-xen/include/xen/interface/sysctl.h:149: error: expected specifier-qualifier-list before XEN_GUEST_HANDLE_64

Any solutions for this problem?

One more question...
How to add a watch on entire tree? I tried using register_xenbus_watch() to add a watch on "local/domain" but it is not working.
And...
what does this function do?
char **xenbus_directory(struct xenbus_transaction t,
            const char *dir, const char *node, unsigned int *num);

Thanks,
Ashutosh


On Nov 14, 2007 4:54 PM, Keir Fraser < Keir.Fraser@xxxxxxxxxxxx> wrote:



On 14/11/07 11:21, "ashutosh mehra" <ashutosh.xen@xxxxxxxxx> wrote:

I tried #include<xen/interface/sysctl.h> but I get an error: #error "domctl operations are intended for use by node control tools only"

Keir, how do I add a watch on an entire path, e.g. /local/domain/? More importantly, how can I get the list of domains/domainIds of the currently running domains in a module running in dom0 kernel?? Please help, I'm looking for an answer to this since quite a few days!

You can add a watch on that entire path from dom0, no problem. As for getting a list of all domains, you can only do that with sysctl. If you really need it then #define __XEN_TOOLS__ before including sysctl.h.

 -- Keir




_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel

 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.