Hi, I am using XEN-ARM for Fast Models (VEXPRESS Platform), and am able to boot dom0 and domU. Can anybody suggest some pointers on where to start on Inter domain communication, which can be used for transferring some data like files, buffers etc across domains. Regards Shubham Khandelwal _______________________________________________ Xen-devel mailing list Xen-devel@lists.xen.org http://lists.xen.org/xen-devel
Hi, I am using XEN-ARM for Fast Models (VEXPRESS Platform), and am able to boot dom0 and domU. Can anybody suggest some pointers on where to start on Inter domain communication, which can be used for transferring some data like files, buffers etc across domains. Regards Shubham Khandelwal _______________________________________________ Xen-devel mailing list Xen-devel@lists.xen.org http://lists.xen.org/xen-devel
On Thu, 2 May 2013, Khandelwal, Shubham wrote:> Hi, > > I am using XEN-ARM for Fast Models (VEXPRESS Platform), and am able to boot dom0 and domU. Can anybody suggest some pointers on > where to start on Inter domain communication, which can be used for transferring some data like files, buffers etc across > domains.The basic mechanism, used by all Xen paravirtualized frontend/backend pairs, is based on shared memory and event channels. Take a look at the following frontends in Linux: drivers/tty/hvc/hvc_xen.c console frontend drivers/input/misc/xen-kbdfront.c mount/keyboard frontend the corresponding backends live in userspace in QEMU (still not ported to Xen on ARM): hw/xen_console.c console backend hw/xenfb.c mouse, keyboard and framebuffer backend Otherwise you can take a look at the network and block frontends and backends that both live in Linux: drivers/net/xen-net* network frontend and backend drivers/block/xen-blk* block frontend and backend Discovery happens via xenstore and pages are shared via grant table (drivers/xen/grant-table.c in Linux). Based on this basic mechanism, we have libvchan, that is meant to provide an easy way to setup a interdomain communication channel, see tools/libvchan in xen-unstable. Cheers, Stefano _______________________________________________ Xen-devel mailing list Xen-devel@lists.xen.org http://lists.xen.org/xen-devel
On Thu, 2013-05-02 at 09:48 +0100, Khandelwal, Shubham wrote:> I am using XEN-ARM for Fast Models (VEXPRESS Platform), and am able to > boot dom0 and domU. Can anybody suggest some pointers on where to > start on Inter domain communication, which can be used for > transferring some data like files, buffers etc across domains.You have a few of options here. You could setup a virtual network (which could be purely internal to the host) using PV network devices and use that to share files etc via ssh, nfs or some other network protocol. Alternatively you could use libvchan (tools/libvchan in the source) to create a simple byte stream connection between two domains and layer a protocol of your own onto that. You could define your own PV shared ring protocol, and implement it from scratch but this doesn''t really offer many advantages over using networking or libvchan. Virtual block devices are likely not what you want, since they don''t really allow for sharing, or at least not shared writes, but they are available. Ian.