[Xen-devel] How do I print all hypercalls as they come in?

2015-02-05 Thread D';Mita Levy
Hello,

I am trying to compile a xen build that will simply print all the
hypercalls as they come into the hypervisor. Specifically, I'm looking for
the hypercall handler function so that I can insert a simple printk
statement. I'm having trouble because I can't find a doc that describes
what most of the modules found in xen/arch/x86 and x86_64 do...am I right
in thinking that the do_platform_op function in platform_hypercall.c serves
as the entry point for all hypercalls?

Thank You,

-- 
D'Mita Levy
Cyber Fellow, Applied Research Center
Florida International University
___
Xen-devel mailing list
Xen-devel@lists.xen.org
http://lists.xen.org/xen-devel


Re: [Xen-devel] How do I print all hypercalls as they come in?

2015-02-06 Thread D';Mita Levy
Andrew,

Thanks for your help. I am trying to log the following hypercalls to dmesg
as they come in:

 -HYPERVISOR_grant_table_op()

- HYPERVISOR_mmu_update()

- HYPERVISOR_set_trap_table()

Are there single handlers for these as well?

Thanks,

On Thu, Feb 5, 2015 at 4:20 PM, Andrew Cooper 
wrote:

>  On 05/02/15 21:16, D'Mita Levy wrote:
>
> Hello,
>
>  I am trying to compile a xen build that will simply print all the
> hypercalls as they come into the hypervisor. Specifically, I'm looking for
> the hypercall handler function so that I can insert a simple printk
> statement.
>
>
> The logging rate will easily overwhelm your serial connection.  What is
> the actual piece of information you are after?
>
>  I'm having trouble because I can't find a doc that describes what most
> of the modules found in xen/arch/x86 and x86_64 do...am I right in thinking
> that the do_platform_op function in platform_hypercall.c serves as the
> entry point for all hypercalls?
>
>
> do_platform_op() is the handler for __HYPERCALL_platform_op which is one
> single hypercall.
>
> The actual hypercall root handler is the 'hypercall' symbol in
> arch/x86/x86_64/entry.S
>
> ~Andrew
>



-- 
D'Mita Levy
Cyber Fellow, Applied Research Center
Florida International University
___
Xen-devel mailing list
Xen-devel@lists.xen.org
http://lists.xen.org/xen-devel


Re: [Xen-devel] How do I print all hypercalls as they come in?

2015-02-12 Thread D';Mita Levy
Andrew,

My apologies if my logic is flawed or what I am describing is convoluted -
I am a student doing research into Xen and trying my best to grasp what is
going on, also my ASM is subpar. I have read a paper on system call
interception (
https://hal.inria.fr/inria-00431031/PDF/Technical_Report_Syscall_Interception.pdf
) - page 10 describes disabling fast system calls by commenting out some
code in the do_set_trap_table() function and logging the calls along with
other guest info. My concern is that this may be a dated methodology as the
paper was written in 2009 but also that this will only work for x86 and not
x86_64 systems; including possible loss of performance since fast calls
tend to run better on x86 series processor systems. My goal is to identify
when a guest makes a hypercall requesting HYPERVISOR_..grant_table_op(),
 mmu_update(), set_trap_table(), essentially I would love to be able to
say...if trapcode = xxx printk("Hypercall xxx\n") has occurred but I am
unsure what would be a good route to do something like that.

Thanks,
D'Mita

On Fri, Feb 6, 2015 at 10:23 AM, Andrew Cooper 
wrote:

>  On 06/02/15 15:17, D'Mita Levy wrote:
>
> Andrew,
>
>  Thanks for your help. I am trying to log the following hypercalls to
> dmesg as they come in:
>
>   -HYPERVISOR_grant_table_op()
>
> - HYPERVISOR_mmu_update()
>
> - HYPERVISOR_set_trap_table()
>
> Are there single handlers for these as well?
>
>
> The hypercall_table in arch/x86/x86_64/entry.S is the function pointer
> dispatch table, and is indexed by hypercall number.
>
> ~Andrew
>



-- 
D'Mita Levy
Cyber Fellow, Applied Research Center
Florida International University
___
Xen-devel mailing list
Xen-devel@lists.xen.org
http://lists.xen.org/xen-devel


[Xen-devel] How can I modify and test Xentrace

2015-02-25 Thread D';Mita Levy
Hello,

I have made a naive attempt at compiling a modified version of Xentrace
using RELEASE-4.5.0. After executing #make tools successfully, I retrieved
the binary found in the /xen/dist/install/usr/local/bin/xentrace and
attempted to run that on Xenserver. I get the error:

libxenctrl.so.4.5 cannot open shared object file: No such file or
directory.

I am obviously going about this the wrong way... what am I doing wrong?
-- 
D'Mita Levy
Cyber Fellow, Applied Research Center
Florida International University
___
Xen-devel mailing list
Xen-devel@lists.xen.org
http://lists.xen.org/xen-devel


[Xen-devel] Can Xen Project Hypervisor work in Xenserver?

2015-02-26 Thread D';Mita Levy
Hello,

Assuming one builds the Xen hypervisor avaialable from the
http://www.xenproject.org/ respository and then uses it to replace the
hypervisor in the Citrix Xenserver /boot directory - will this work.
Rather, is it possible to build and mondify the xenproject hypervisor and
use it to replace the Citrix Xenserver or would one have to get the code
for Xenserver and compile that instead?

Thanks,
D'Mita

-- 
D'Mita Levy
Cyber Fellow, Applied Research Center
Florida International University
___
Xen-devel mailing list
Xen-devel@lists.xen.org
http://lists.xen.org/xen-devel


[Xen-devel] What is the difference between XenAPI and XenAPI-Extensions

2015-09-04 Thread D';Mita Levy
Hello,

I am a student at FIU working on a school project so I am a not very
experienced. Right now I am trying to use the Xen API code I found at
https://github.com/xenserver/xenadmin to Snapshot a VM. The project I have
so far uses the XenAPI.VM functions and I have been successful in starting
and stopping a VM. As an example I perform those actions like this:

 XenRef vmRef = VM.get_by_uuid(_session, vmUUID);
 VM.start(_session, vmRef.opaque_ref, false, true);

My mentors would like me to try and clone a VM. I have copied the Run()
function from VMSnapshotCreateAction.cs and I tried to make a snapshot with
the following code:

   XenRef vmRef = VM.get_by_uuid(_session, GetUUIDByName(vmName));
   SnapshotType m_Type = SnapshotType.DISK; //hardcoded snapshot type
   string snapshot_name = "Testing_Snapshot";

   XenAPI.VM.async_snapshot(_session, vmRef.opaque_ref, snapshot_name);

I have two VM's. A Windows XP SP3 VM (No actual OS installed, just the base
VM) and an Ubuntu 14.04 Trusty Tahr VM (installed OS and running). The
Windows XP SP3 Snapshot gets created successfully but the Ubuntu snapshot
does not.

Upon furthure inspection I notice that XenAPI.VM works for start/stop but
XenAPI-Extensions.VM is needed to make snapshots - based on
VMSnapshotCreateAction.cs

Why is it that I need XenAPI-Extensions.VM to createa  vm reference to make
snapshots and cannot use XenAPI.VM? What is the difference between XenAPI
and Extensions? Finally, is it possible just to pull out the code so that I
can have the core functionality; it seems adding it to my simple WPF
project requires a ton of dependencies and references

Thanks,
D'Mita
___
Xen-devel mailing list
Xen-devel@lists.xen.org
http://lists.xen.org/xen-devel


[Xen-devel] Adding Xen development headers to XenServer

2015-10-23 Thread D';Mita Levy
Is it possible to add Xen development headers to XenServer? I would like to
do a little bit of VM introspection with LibVMI on XenServer. I have all
the other dependencies installed (glib, flex, etc.) just missing the ones
for Xen...Any help is greatly appreciated.

Thanks,
D'Mita

-- 
D'Mita Levy
Cyber Fellow, Applied Research Center
Florida International University
___
Xen-devel mailing list
Xen-devel@lists.xen.org
http://lists.xen.org/xen-devel


[Xen-devel] What is the correct way to enable the Base repositories on XenServer Dundee?

2015-10-27 Thread D';Mita Levy
Im trying to enable the yum repos on XenServer Dundee so I can install a
few packages (git, make, dev stuff etc) and do some experimental
development.

I have enabled the base repository as such

CentOS-7.0.1406.el7.centos.2.5 Base enabled:   0
CentOS-7 - Debuginfodisabled

[base]
name=CentOS-$releasever - Base
#baseurl=
http://www.uk.xensource.com/linux/distros/CentOS/7.0.1406/os/x86_64/
mirrorlist=
http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=os&infra=$infra
#baseurl=http://mirror.centos.org/centos/$releasever/os/$basearch/
exclude=kernel kernel-abi-whitelists kernel-debug kernel-debug-devel
kernel-devel kernel-doc kernel-tools kernel-tools-libs
kernel-tools-libs-devel linux-firmware biosdevname centos-release systemd*
stunnel kexec-tools
gpgcheck=1
enabled=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7

But I get the following error:

#yum update
Cannot find a valid baseurl for repo: base/7.0.1406.el7.centos.2.5/x86_64

My linux is mediocre at best...does anyone know how to enable the base
repository correctly?

Thanks,
D'Mita

-- 
D'Mita Levy
Cyber Fellow, Applied Research Center
Florida International University
___
Xen-devel mailing list
Xen-devel@lists.xen.org
http://lists.xen.org/xen-devel


Re: [Xen-devel] What is the correct way to enable the Base repositories on XenServer Dundee?

2015-10-27 Thread D';Mita Levy
On Tue, Oct 27, 2015 at 11:02 AM, D'Mita Levy  wrote:

> Im trying to enable the yum repos on XenServer Dundee so I can install a
> few packages (git, make, dev stuff etc) and do some experimental
> development.
>
> I have enabled the base repository as such
>
> CentOS-7.0.1406.el7.centos.2.5 Base enabled:   0
> CentOS-7 - Debuginfodisabled
>
> [base]
> name=CentOS-$releasever - Base
> #baseurl=
> http://www.uk.xensource.com/linux/distros/CentOS/7.0.1406/os/x86_64/
> mirrorlist=
> http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=os&infra=$infra
> #baseurl=http://mirror.centos.org/centos/$releasever/os/$basearch/
> exclude=kernel kernel-abi-whitelists kernel-debug kernel-debug-devel
> kernel-devel kernel-doc kernel-tools kernel-tools-libs
> kernel-tools-libs-devel linux-firmware biosdevname centos-release systemd*
> stunnel kexec-tools
> gpgcheck=1
> enabled=1
> gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7
>
> But I get the following error:
>
> #yum update
> Cannot find a valid baseurl for repo: base/7.0.1406.el7.centos.2.5/x86_64
>
> My linux is mediocre at best...does anyone know how to enable the base
> repository correctly?
>
> Thanks,
> D'Mita
>
> --
> D'Mita Levy
> Cyber Fellow, Applied Research Center
> Florida International University
>
>

Please remove this...I sent it to the wrong mailing list...


-- 
D'Mita Levy
Cyber Fellow, Applied Research Center
Florida International University
___
Xen-devel mailing list
Xen-devel@lists.xen.org
http://lists.xen.org/xen-devel


[Xen-devel] Is it possible to create a domain with privileges similar to dom0

2015-10-28 Thread D';Mita Levy
Is it possible to create a domain that has increased privilege levels that
are similar to dom0? I am interested in installing a VM and have it perform
certain tasks that will require it to have a higher privilege level than
domU guests.

-- 
D'Mita Levy
Cyber Fellow, Applied Research Center
Florida International University
___
Xen-devel mailing list
Xen-devel@lists.xen.org
http://lists.xen.org/xen-devel


[Xen-devel] Is there a way to get a VM base (starting) address?

2015-11-30 Thread D';Mita Levy
I am interested in locating a VM's base (starting) address in memory in
relation to other VM's running on the same host - is there a way to do this
through Xen or the XenAPI?

Thanks,
D'Mita

-- 
D'Mita Levy
Cyber Fellow, Applied Research Center
Florida International University
___
Xen-devel mailing list
Xen-devel@lists.xen.org
http://lists.xen.org/xen-devel