All of lore.kernel.org
 help / color / mirror / Atom feed
From: Oleksandr <olekstysh@gmail.com>
To: Viresh Kumar <viresh.kumar@linaro.org>
Cc: "Stratos Mailing List" <stratos-dev@op-lists.linaro.org>,
	"Alex Bennée" <alex.bennee@linaro.org>,
	"Stefano Stabellini" <stefano.stabellini@xilinx.com>,
	"Mathieu Poirier" <mathieu.poirier@linaro.com>,
	"Vincent Guittot" <vincent.guittot@linaro.org>,
	"Mike Holmes" <mike.holmes@linaro.org>, "Wei Liu" <wl@xen.org>,
	xen-devel <xen-devel@lists.xenproject.org>,
	"Juergen Gross" <jgross@suse.com>,
	"Julien Grall" <julien@xen.org>
Subject: Re: Virtio on Xen with Rust
Date: Fri, 29 Apr 2022 13:44:52 +0300	[thread overview]
Message-ID: <f9aeb25d-ba47-ec1f-d157-fa51ec23fdb5@gmail.com> (raw)
In-Reply-To: <20220429034808.dr647727dphnx6zk@vireshk-i7>


On 29.04.22 06:48, Viresh Kumar wrote:


Hello Viresh

> On 28-04-22, 16:52, Oleksandr Tyshchenko wrote:
>> Great work!
> Thanks Oleksandr.
>
>> I skimmed through your toolstack patches, awesome, you created a completely
>> new virtual device "I2C".
> I have also created GPIO now :)

Awesome!


>
> What should I do about these patches ? Send them to xen list ? I can at least
> send the stuff which doesn't depend on your series ?

Below my understanding, which might be wrong)


I think, the best case scenario - is to try to get these features 
upstreamed. I expect a possible interest to virtulized I2C/GPIO devices 
on Xen,
especially in embedded environment where the passthrough of dedicated 
I2C/GPIO controller to the guest is not possible for some reason 
(clocks, pins, power domains, etc).
But I do understand it most likely takes some time. If upsteaming this 
stuff is not your primary target, then I think, such patch series 
deserves to be sent to the Xen mailing list anyway for someone who is 
interested in the topic to give it a try. For example, you can send RFC 
version saying in cover letter that it depends on non-upsteamed yet 
stuff to start discussion.



>
>> FYI, I have updated "Virtio support for toolstack on Arm" [1] since (to
>> make it more generic), now V7 is available and I have a plan to push V8
>> soon.
> I will surely have a look, thanks.
>
>> FYI, currently we are working on one feature to restrict memory access
>> using Xen grant mappings based on xen-grant DMA-mapping layer for Linux [1].
>> And there is a working PoC on Arm based on an updated virtio-disk. As for
>> libraries, there is a new dependency on "xengnttab" library. In comparison
>> with Xen foreign mappings model (xenforeignmemory),
>> the Xen grant mappings model is a good fit into the Xen security model,
>> this is a safe mechanism to share pages between guests.
> Right, I was aware of this work but didn't dive into it yet. We will surely need
> to do that eventually, lets see when I will be able to get to that. The current
> focus is the get the solution a bit more robust (so it can be used with any
> device) and upstream it to rust-vmm space on github.

ok, I see. I understand your point, your primary target is 
hypervisor-agnostic Rust based backend(s) to be applicable for any device.



>
>> With Xen grant mappings, if I am not mistaken, it is going to be almost the
>> same: mmap() then ioctl(). But the file will be "/dev/xen/gntdev".
> Okay, the problem (for us) still exists then :)

It seems, yes.


>   
>> FYI, new branch "virtio_grant" besides supporting Xen grant mappings also
>> supports virtio-mmio modern transport.
> Somehow the timing of your emails have been spot on.
>
> Last time, when you told me about the "dev" branch, I have already started to
> reinvent the wheel and your branch really helped.
>
> Now, it was just yesterday that I started looking into MMIO modern stuff as the
> GPIO device needs it and you sent me working code to look how to do it as well.
> You saved at least 1-2 days of my time :)

Great, I'm glad to hear it.


>
> Thanks Oleksandr.
>
-- 
Regards,

Oleksandr Tyshchenko



  parent reply	other threads:[~2022-04-29 10:45 UTC|newest]

Thread overview: 20+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <20220414091538.jijj4lbrkjiby6el@vireshk-i7>
2022-04-14  9:23 ` Virtio on Xen with Rust Viresh Kumar
2022-04-14 11:45   ` Wei Liu
2022-04-14 12:07     ` Andrew Cooper
2022-04-14 12:52       ` Wei Liu
2022-04-14 13:36         ` Alex Bennée
2022-04-14 14:10           ` Wei Liu
2022-04-14 15:59             ` Doug Goldstein
2022-04-19  1:10   ` Viresh Kumar
2022-04-28 13:52 ` Oleksandr Tyshchenko
2022-04-29  3:48   ` Viresh Kumar
2022-04-29  3:59     ` Viresh Kumar
2022-04-29 11:14       ` Oleksandr
2022-04-29 10:44     ` Oleksandr [this message]
2022-05-05  7:34       ` Viresh Kumar
2022-06-22 11:49   ` Viresh Kumar
2022-06-22 15:05     ` Oleksandr Tyshchenko
2022-06-23  5:48       ` Viresh Kumar
2022-06-23 12:47         ` Oleksandr Tyshchenko
2022-06-24  5:32           ` Viresh Kumar
2022-05-02 11:23 ` Viresh Kumar

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=f9aeb25d-ba47-ec1f-d157-fa51ec23fdb5@gmail.com \
    --to=olekstysh@gmail.com \
    --cc=alex.bennee@linaro.org \
    --cc=jgross@suse.com \
    --cc=julien@xen.org \
    --cc=mathieu.poirier@linaro.com \
    --cc=mike.holmes@linaro.org \
    --cc=stefano.stabellini@xilinx.com \
    --cc=stratos-dev@op-lists.linaro.org \
    --cc=vincent.guittot@linaro.org \
    --cc=viresh.kumar@linaro.org \
    --cc=wl@xen.org \
    --cc=xen-devel@lists.xenproject.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.