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

Re: [win-pv-devel] New Dev and issues

Hi Mark,

Although theoretically maintaining/developing Qubes guest tools for
Windows is my primary focus, in practice I need Xen pvdrivers for that.
I've spend the last couple of months working mainly on the driver
interfaces for that reason. Porting our tools to use the new drivers was
a significant effort and I'd very much like to upstream the code to
a) allow others to easily benefit from that work,
b) reduce the maintenance burden on my end.

I expect to be working on the patches in the coming weeks once we
release our new guest tools for public testing (which are almost ready).

Also, if you as a potential user have comments on design of the APIs I
welcome any criticism/suggestions. I know some memory granting/mapping
calls can be improved to have less arguments (the driver can keep track
of requests by just using process/address pair etc). I'm also not really
happy with the driver's cleanup code but that's a topic for another time.

RafaÅ WojdyÅa
Qubes Tools for Windows developer

On 2015-06-24 05:31, Mark Mueller wrote:
> Hi Rafal,
> Your work is very interesting, especially the IOCTL interfaces that you
> have added. If you don't mind a few questions, is this something that
> you are doing as a side project, or is it a primary focus? Do you expect
> to be doing the driver patches soon? I will probably start working from
> your branch, but it would be helpful to know more about its upstream
> prospects.
> Thanks,
> Mark
> On Tue, Jun 23, 2015 at 5:00 PM, RafaÅ WojdyÅa
> <omeg@xxxxxxxxxxxxxxxxxxxxxx <mailto:omeg@xxxxxxxxxxxxxxxxxxxxxx>> wrote:
>     That's correct. I have a fully working libvchan implementation now. It
>     still needs some more testing and smoothing rough edges but once I have
>     finished porting our Qubes Tools I'll work on the driver patches.
>     I've added IOCTL interfaces for every functionality I needed:
>     - xenstore access including watches and setting permissions
>     - event channels
>     - grant tables (granting memory to other domains)
>     - mapping memory from other domains
>     These IOCTLs are accessed through a user-mode DLL (xencontrol) that
>     provides easier to use APIs similar to libxc.
>     The code is on my github: https://github.com/omeg
>     xenbus and xeniface are the two modified pvdriver repos.
>     qubes-vmm-xen-windows-pvdrivers contains the libxenvchan library. It's
>     rather ugly for now since it's pretty much a direct port from the linux
>     version. Hope that helps.
>     RafaÅ WojdyÅa
>     Qubes Tools for Windows developer
>     https://www.qubes-os.org/
>     On 2015-06-23 15:53, Paul Durrant wrote:
>     > Mark,
>     >
>     >   How did you attempt to subscribe? It looks like the buttons on the
>     > main xenproject page donât take you to the mailman URL. Try going
>     > straight to
>     > http://lists.xenproject.org/cgi-bin/mailman/listinfo/win-pv-devel
>     >
>     >   To answer your questions thoughâ
>     >
>     > 1)      I think the WMI interface should probably not stray much beyond
>     > xenstore access. Most other things (unless you have particular reason to
>     > want to implement them in .NET) will probably want an IOCTL interface.
>     > RafaÅ WojdyÅa <omeg@xxxxxxxxxxxxxxxxxxxxxx 
> <mailto:omeg@xxxxxxxxxxxxxxxxxxxxxx>>
>     has been doing work on
>     > adding libvchan support and has been using an IOCTL based interface to
>     > get at things like event channels. I believe he has patches in the 
> pipeline.
>     >
>     > 2)      I believe it is currently safe to use both IOCTL and WMI
>     > xenstore access concurrently. If it isnât the Iâd regard that as a bug.
>     >
>     >   HTH,
>     >     Paul
>     >
>     >
>     > *From:*win-pv-devel-bounces@xxxxxxxxxxxxxxxxxxxx
>     <mailto:win-pv-devel-bounces@xxxxxxxxxxxxxxxxxxxx>
>     > [mailto:win-pv-devel-bounces@xxxxxxxxxxxxxxxxxxxx
>     <mailto:win-pv-devel-bounces@xxxxxxxxxxxxxxxxxxxx>] *On Behalf Of *Mark
>     > Mueller
>     > *Sent:* 23 June 2015 14:35
>     > *To:* win-pv-devel@xxxxxxxxxxxxxxxxxxxx
>     <mailto:win-pv-devel@xxxxxxxxxxxxxxxxxxxx>
>     > *Subject:* [win-pv-devel] New Dev and issues
>     >
>     > Hello,
>     >
>     > I am working on a project for AIS to incorporate the Win PV Driver
>     > Project into OpenXT. I've submitted two requests to subscribe to this
>     > list but have not yet received a response.
>     >
>     > I could use some help relative to the IOCTL and WMI interfaces exposed
>     > by Xeniface. I see examples of the WMI interface usage in the
>     > win32stubagent, but non for the IOCTL interface. These are my
>     questions:
>     >
>     > 1) Is the WMI interface preferred over the IOCTL and is future dev
>     > expected to continue in that direction? For example when I add new
>     > OpenXT drivers, is dominant usage of the WMI interface encouraged?
>     >
>     > 2) Can both IOCTL and WMI xenstore interfaces be used concurrently
>     > without issue?
>     >
>     > Thanks for any help,
>     >
>     > Mark
>     >

win-pv-devel mailing list



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