From mboxrd@z Thu Jan 1 00:00:00 1970 From: Eric Auger Subject: Re: [PATCH v15 00/10] KVM platform device passthrough Date: Mon, 18 May 2015 11:41:41 +0200 Message-ID: <5559B3D5.1010805@linaro.org> References: <5549B3A0.3090205@linaro.org> <5549B69B.2050702@linaro.org> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from localhost (localhost [127.0.0.1]) by mm01.cs.columbia.edu (Postfix) with ESMTP id 2D21D51757 for ; Mon, 18 May 2015 05:32:34 -0400 (EDT) Received: from mm01.cs.columbia.edu ([127.0.0.1]) by localhost (mm01.cs.columbia.edu [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id Qht7c1QC06iL for ; Mon, 18 May 2015 05:32:32 -0400 (EDT) Received: from mail-wg0-f52.google.com (mail-wg0-f52.google.com [74.125.82.52]) by mm01.cs.columbia.edu (Postfix) with ESMTPS id C1D7751750 for ; Mon, 18 May 2015 05:32:31 -0400 (EDT) Received: by wgfl8 with SMTP id l8so29096161wgf.2 for ; Mon, 18 May 2015 02:41:49 -0700 (PDT) In-Reply-To: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: kvmarm-bounces@lists.cs.columbia.edu Sender: kvmarm-bounces@lists.cs.columbia.edu To: Baptiste Reynal Cc: Peter Crosthwaite , "eric.auger@st.com" , "patches@linaro.org" , qemu list , Alex Williamson , Paolo Bonzini , "kvmarm@lists.cs.columbia.edu" List-Id: kvmarm@lists.cs.columbia.edu SGkgQmFwdGlzdGUsIGFsbCwKClRoYW5rcyBCYXB0aXN0ZSBmb3IgeW91ciByZXBseS4KCklzIHRo ZXJlIGFueXRoaW5nIGxlZnQgYmxvY2tpbmcgdGhpcyBzZXJpZXMgYW5kIGZlbGxvdyBNYWNodmly dCBEeW5hbWljClN5c2J1cyBpbnN0YW50aWF0aW9uPyBIb3BlIHRoZXJlIGlzIG5vIGN5Y2xpYyBk ZXBlbmRlbmN5IGJldHdlZW4gYm90aD8KClRoYW5rcyBpbiBhZHZhbmNlCgpCZXN0IFJlZ2FyZHMK CkVyaWMKCgpPbiAwNS8xMS8yMDE1IDAyOjM3IFBNLCBCYXB0aXN0ZSBSZXluYWwgd3JvdGU6Cj4g SGkgRXJpYywKPiAKPiBJIHJlYmFzZWQgYW1iYSBwYXRjaGVzIG9uIHRoaXMgc2VyaWUuIEV2ZXJ5 dGhpbmcgaXMgd29ya2luZyBmaW5lIHdpdGgKPiB0aGUgUEwzMzAgZGV2aWNlLgo+IAo+IFJlZ2Fy ZHMsCj4gQmFwdGlzdGUKPiAKPiBPbiBXZWQsIE1heSA2LCAyMDE1IGF0IDg6MzcgQU0sIEVyaWMg QXVnZXIgPGVyaWMuYXVnZXJAbGluYXJvLm9yZz4gd3JvdGU6Cj4+IERlYXIgQWxsLAo+Pgo+PiBQ bGVhc2UgaWdub3JlIHRoZSBwcmV2aW91cyB2b2lkIG1lc3NhZ2UuIEZvciB1bmtub3duIHJlYXNv biB0aGUgcmVwbHkKPj4gc3lzdGVtYXRpY2FsbHkgaWdub3JlcyB0aGUgY29udGVudCBvZiB0aGUg bWVzc2FnZT8gUmV0cnlpbmcgYnJlYWtpbmcgdGhlCj4+IGhpc3RvcnkuLi4gQ29udGVudCB3YXM6 Cj4+Cj4+IEkgYW0gbG9va2luZyBmb3IgIlRlc3RlZC1ieSIgZm9yIHRoaXMgc2VyaWVzIGFuZCBy ZWxhdGVkIE1hY2h2aXJ0Cj4+IGR5bmFtaWMgc3lzYnVzIGRldmljZSBpbnN0YW50aWF0aW9uLiBE aWQgYW55b25lIHRyeSB0aGUgbGFzdCB2ZXJzaW9ucz8KPj4KPj4gSSBrbm93IHRob3NlIHNlcmll cyBhcmUgbm90IHBsdWcgJiBwbGF5IHNpbmNlIGFkZGl0aW9ucyBhcmUgbmVlZGVkIGZvcgo+PiB5 b3VyIGRldmljZToKPj4gLSBkZXZpY2UgdHJlZSBub2RlIGFkZGl0aW9uIGluIHN5c2J1cyBkZXZp Y2UKPj4gLSBjcmVhdGlvbiBvZiBhIHNwZWNpYWxpemVkIFFFTVUgVkZJTyBwbGF0Zm9ybSBkZXZp Y2Ugc2luY2UgYmFzZSBjbGFzcwo+PiBpcyBhYnN0cmFjdAo+Pgo+PiBGb3IgdGhvc2Ugd2lsbGlu ZyB0byB0cnkgYW5kIGFzc2VzcyB0aGF0IGNvZGUsIHBsZWFzZSBkbyBub3QgaGVzaXRhdGUgdG8K Pj4gY29udGFjdCBtZS4gSSBjYW4gYW5kIEkgYW0gd2lsbGluZyB0byBoZWxwLiBJZiB5b3UgYWxy ZWFkeSBkaWQsIHdpdGgKPj4gc3VjY2VzcyBvciBmYWNpbmcgaXNzdWVzLCBwbGVhc2Ugc2VuZCB5 b3VyIFRlc3RlZC1ieSBvciByZXBvcnQgYW55IGlzc3VlCj4+IGZvciBxdWljayBmaXguIFRoaXMg d2lsbCBkZWZpbml0aXZlbHkgaGVscCBpbiB0aGUgdXBzdHJlYW0gb2YgdGhpcyBjb2RlLgo+Pgo+ PiBUaGFua3MKPj4KPj4gQmVzdCBSZWdhcmRzCj4+Cj4+IEVyaWMKPj4KPj4KPj4KPj4gVGhpcyBz ZXJpZXMgYWltcyBhdCBlbmFibGluZyBLVk0gcGxhdGZvcm0gZGV2aWNlIHBhc3N0aHJvdWdoLgo+ Pgo+PiBPbiBrZXJuZWwgc2lkZSwgdGhlIHZmaW8gcGxhdGZvcm0gZHJpdmVyIGlzIG5lZWRlZCwg YXZhaWxhYmxlIGZyb20KPj4gNC4xLXJjMSBvbndhcmRzLgo+Pgo+PiBUaGlzIHNlcmllcyBub3cg b25seSByZWxpZXMgb24gdGhlIGZvbGxvd2luZyBRRU1VIHNlcmllcywgZm9yCj4+IGR5bmFtaWMg aW5zdGFudGlhdGlvbiBvZiB0aGUgVkZJTyBwbGF0Zm9ybSBkZXZpY2UgZnJvbSBxZW11IGNvbW1h bmQKPj4gbGluZToKPj4KPj4gWzFdIFtQQVRDSCB2MTIgMC80XSBtYWNodmlydCBkeW5hbWljIHN5 c2J1cyBkZXZpY2UgaW5zdGFudGlhdGlvbgo+PiBodHRwOi8vY29tbWVudHMuZ21hbmUub3JnL2dt YW5lLmNvbXAuZW11bGF0b3JzLmt2bS5hcm0uZGV2ZWwvODg2Cj4+Cj4+IEJvdGggc2VyaWVzIGFy ZSBjYW5kaWRhdGUgZm9yIFFFTVUgMi40IGFuZCBhdmFpbGFibGUgYXQKPj4KPj4gaHR0cDovL2dp dC5saW5hcm8ub3JnL3Blb3BsZS9lcmljLmF1Z2VyL3FlbXUuZ2l0Cj4+IChicmFuY2ggdmZpb19p bnRlZ192MTUpCj4+Cj4+IFRoZSBzZXJpZXMgd2FzIHRlc3RlZCBvbiBDYWx4ZWRhIE1pZHdheSAo QVJNdjcpIHdoZXJlIG9uZSB4Z21hYwo+PiBpcyBhc3NpZ25lZCB0byBLVk0gaG9zdCB3aGlsZSB0 aGUgc2Vjb25kIG9uZSBpcyBhc3NpZ25lZCB0byB0aGUgZ3Vlc3QuCj4+Cj4+IFdpa2kgZm9yIENh bHhlZGEgTWlkd2F5IHNldHVwOgo+PiBodHRwczovL3dpa2kubGluYXJvLm9yZy9MRUcvRW5naW5l ZXJpbmcvVmlydHVhbGl6YXRpb24vUGxhdGZvcm1fRGV2aWNlX1Bhc3N0aHJvdWdoX29uX01pZHdh eQo+Pgo+PiBIaXN0b3J5Ogo+Pgo+PiB2MTQgLT4gdjE1Ogo+PiAtIGFkZCBQZXRlciBSLWIgb24g c3lzYnVzOiBhZGQgaXJxX3JvdXRpbmdfbm90aWZpZXIKPj4gLSBjb3JyZWN0IGdfbWFsbG9jMF9u IHVzYWdlIGluIHNrZWxldG9uCj4+IC0gY29ycmVjdCByZXR1cm4gdmFsdWVzIG9mIHJlc2V0IHJl bGF0ZWQgZnVuY3Rpb25zCj4+IC0gaW5jbHVkZSBDb3JuZWxpYSdzIHBhdGNoIGZvciBoZWFkZXIg dXBkYXRlCj4+Cj4+IHYxMyAtPiB2MTQ6Cj4+IC0gcmVtb3ZlIHYxMyA5LCAxMCwgMTEgcGF0Y2gg ZmlsZXMgYW5kIHJlcGxhY2UgdGhlbSBieSBhIHNpbmdsZSBwYXRjaCBmaWxlCj4+ICAgInN5c2J1 czogYWRkIGlycV9yb3V0aW5nX25vdGlmaWVyIi4KPj4gLSBpbiBza2VsZXRvbiwgZml4IEVOQU1F VE9PTE9ORyBzaWduCj4+IC0gcmVtb3ZlIFZGSU9JTlRwIHZpcnR1YWxJRCBpbiAiYWRkIGlycSBh c3NpZ25tZW50IiBwYXRjaCBmaWxlCj4+IC0gcmVtb3ZlZCB0cmFjZV92ZmlvX3BsYXRmb3JtX3N0 YXJ0X2V2ZW50ZmQKPj4KPj4gdjEyIC0+IHYxMzoKPj4gLSBoZWFkZXIgdXBkYXRlIGJ1dCBzYW1l IHVwZGF0ZSB3YXMgYWxyZWFkeSBzZW50IGJ5IENvcm5lbGlhCj4+IC0gUmV3b3JrIFZGSU8gc2ln bmFsaW5nICYgaXJxZmQgc2V0dXA6IHJlc3RvcmVkIDItc3RlcCBzZXR1cCBmZWF0dXJpbmcKPj4g ICBldmVudGZkIHNldHVwIG9uIHJlYWxpemUgYW5kIHRoZW4gaXJxZmQgc2V0dXAgb24gaXJxIGJp bmRpbmcuCj4+IC0gaXJxZmQgc2V0dXAgbm93IHVzZXMga3ZtX2lycWNoaXBfYWRkX2lycWZkX25v dGlmaWVyIGFuZAo+PiAgIHN5c2J1cyBpcnFfc2V0X2hvb2sgb3ZlcnJpZGUuIFRoaXMgbGVhZHMg dG8gdGhlIGludHJvZHVjdGlvbiBvZiA2IHBhdGNoCj4+ICAgZmlsZXMgZW5hYmxpbmcgdGhvc2Ug MiBmZWF0dXJlcy4gUGFvbG8gYWR2aXNlZCB0byBpbnRyb2R1Y2UKPj4gICBrdm1faXJxY2hpcF9h ZGRfaXJxZmRfbm90aWZpZXIgc2VyaWVzIGluIHRoZSBWRklPIG9uZS4gSSBkaWQgdGhlCj4+ICAg c2FtZSBmb3IgaXJxX3NldF9ob29rIHNlcmllcyBidXQgaWYgaXQgaXMgYmV0dGVyIEkgY2FuIHN1 Ym1pdCBpdCBhc2lkZS4KPj4gLSBhYm92ZSBjaGFuZ2VzIG1hZGUgcG9zc2libGUgdG8gcmVtb3Zl Cj4+ICAgeCBody92ZmlvL3BsYXRmb3JtOiBhZGQgY2FwYWJpbGl0eSB0byBzdGFydCBJUlEgcHJv cGFnYXRpb24iCj4+ICAgeCBody9hcm0vdmlydDogc3RhcnQgVkZJTyBJUlEgcHJvcGFnYXRpb24K Pj4gLSBpbiBzeXNidXMtZmR0LmMsIHVzZSBwbGF0Zm9ybV9idXNfZ2V0X21taW9fYWRkciBpbnN0 ZWFkIG9mIGRlcHJlY2F0ZWQKPj4gICBtbWlvWzBdIHByb3BlcnR5LiBUaGFua3MgdG8gQmhhcmF0 IHdobyBwb2ludGVkIHRoaXMgaXNzdWUgb3V0LiBhbHNvCj4+ICAgY3B1X3RvX2JlMzIgd2FzIHVz ZWQgZm9yIHNpemUgYW5kIGJhc2UgKFZpa3JhbSBpbnB1dCkgLgo+PiAtIGluIHNrZWxldG9uIG1p c2MgY29ycmVjdGlvbnMgZm9sbG93aW5nIEFsZXggcmV2aWV3Lgo+Pgo+PiB2MTEtPnYxMjoKPj4g LSBhZGQgeC1tbWFwIHByb3BlcnR5IGRlZmluaXRpb24sIHdpdGhvdXQgd2hpY2ggdGhlIGRlZmF1 bHQgdmFsdWUgb2YKPj4gICB2YmFzZWRldi5hbGxvd19tbWFwIGlzIGZhbHNlLCBoZW5jZSBwcmV2 ZW50aW5nIHRoZSByZWcgc3BhY2UgZnJvbQo+PiAgIGJlaW5nIG1tYXBwZWQuCj4+Cj4+IHYxMC0+ djExOgo+PiAtIHJlYmFzZSBvbnRvIHYyLjMuMC1yYzAgKG1haW5seSByZWxhdGVkIHRvIFBDSWUg c3VwcG9ydCBpbiB2aXJ0KQo+PiAtIGFkZCBkbWEtY29oZXJlbnQgcHJvcGVydHkgZm9yIGNhbHhl ZGEgbWlkd2F5IChmaXggcmV2ZWFsZWQgYnkgcmVtb3ZhbAo+PiAgIG9mIGtlcm5lbC1zaWRlICJ2 ZmlvOiB0eXBlMTogc3VwcG9ydCBmb3IgQVJNIFNNTVVTIHdpdGggVkZJT19JT01NVV9UWVBFMSIp Cj4+IC0gdmlydCBtb2RpZmljYXRpb25zIHRvIHN0YXJ0IFZGSU8gSVJRIGZvcndhcmRpbmcgYXJl IG5vdyBpbiBhIHNlcGFyYXRlCj4+ICAgcGF0Y2gKPj4gLSByZWFycmFuZ2UgbGludXggaGVhZGVy IGV4cG9ydHMgKHRob3NlIGFyZSBzdGlsbCBwYXJ0aWFsIGV4cG9ydHMKPj4gICB3YWl0aW5nIGZv ciBkZWZpbml0aXZlIDQuMS1yYzApCj4+IC0gdGFrZSBpbnRvIGFjY291bnQgQWxleCBCZW5uw6ll IGNvbW1lbnRzOgo+PiAgIC0gdXNlIGdfbWFsbG9jMF9uIGluc3RlYWQgb2YgZ19tYWxsb2MwCj4+ ICAgLSB1c2UgYmxvY2sgZGVjbGFyYXRpb25zIHdoZW4gcG9zc2libGUKPj4gICAtIHJld29yayBy ZWFkbGluayByZXR1cm5lZCB2YWx1ZSB0cmVhdG1lbnQKPj4gICAtIHVzZSBnX3N0cmxjYXQgaW4g cGxhY2Ugc3RybmNhdAo+PiAgIC0gcmUtYXJyYW5nZSBtdXRleCBsb2NraW5nIGZvciBtdWx0aXBs ZSBJUlEgc3VwcG9ydCAodXNlci1zaWRlIGhhbmRsZWQKPj4gICAgIGV2ZW50ZmRzKQo+PiAtIHVz ZSBnX3NucHJpbnRmIGluc3RlYWQgb2Ygc25wcmludGYKPj4gLSBjaGFuZ2UgdGhlIG9yZGVyIG9m IGZ1bmN0aW9ucyB0byBhdm9pZCBwcmUtZGVjbGFyYXRpb24gaW4gcGxhdGZvcm0uYwo+PiAtIGFk ZCBmbGFncyBpbiBWRklPSU5UcCBzdHJ1Y3QgdG8gZGV0ZWN0IHdoZXRoZXIgdGhlIElSUSBpcyBh dXRvbWFza2VkCj4+IC0gc29tZSBjb21tZW50IHJld3JpdGluZwo+Pgo+PiB2OS0+djEwOgo+PiAt IHJlYmFzZSBvbiAidmZpbzogY2xlYW51cCB2ZmlvX2dldF9kZXZpY2UgZXJyb3IgcGF0aCwgcmVt b3ZlCj4+ICAgdmZpb19wb3B1bGF0ZV9kZXZpY2UiOiB2ZmlvX3BvcHVsYXRlX2RldmljZSBubyBt b3JlIGNhbGxlZCBpbgo+PiAgIHZmaW9fZ2V0X2RldmljZSBidXQgaW4gdmZpb19iYXNlX2Rldmlj ZV9pbml0Cj4+IC0gdXBkYXRlIFZGSU8gaGVhZGVyIGFjY29yZGluZyB0byB2ZmlvIHBsYXRmb3Jt IGRyaXZlciB2MTMgKG5vIEFNQkEpCj4+Cj4+IHY4LT52OToKPj4gLSByZWJhc2Ugb24gMi4yLjAg YW5kIG1hY2h2aXJ0IGR5bmFtaWMgc3lzYnVzIGluc3RhbnRpYXRpb24gdjEwCj4+IC0gdjggMS0x MSB3ZXJlIHB1bGxlZAo+PiAtIHBhdGNoIGZpbGVzIHJlbGF0ZWQgdG8gZm9yd2FyZGluZyBhcmUg bW92ZWQgaW4gYSBzZXBlcmF0ZSBzZXJpZXMgc2luY2UKPj4gICBpdCBkZXBlbmRzIG9uIGtlcm5l bCBzZXJpZXMgc3RpbGwgaW4gUkZDLgo+PiAtIGludHJvZHVjdGlvbiBvZiBiYXNpYyBWRklPIHBs YXRmb3JtIGRldmljZSBzcGxpdCBpbnRvIDMgcGF0Y2ggZmlsZXMgdG8KPj4gICBlYXNlIHRoZSBy ZXZpZXcgKGhvcGUgaXQgd2lsbCBoZWxwKS4KPj4gLSBhZGQgYW4gYXV0aG9yIGluIHBsYXRmb3Jt LmMKPj4gLSBhZGQgZGVhbGxvY2F0aW9uIGluIHZmaW9fcG9wdWxhdGVfZGV2aWNlIGVycm9yIGNh c2UKPj4gLSBhZGQgcGF0Y2ggZmlsZSBkb2luZyB0aGUgVkZJTyBoZWFkZXIgc3luYwo+PiAtIHVz ZSBWRklPX0RFVklDRV9GTEFHU19QTEFURk9STSBpbiB2ZmlvX3BvcHVsYXRlX2RldmljZQo+PiAt IHJlbmFtZSBjYWx4ZWRhX3hnbWFjLmMgaW50byBjYWx4ZWRhLXhnbWFjLmMKPj4gLSBzeXNidXMt ZmR0OiBhZGRfY2FseGVkYV9taWR3YXlfeGdtYWNfZmR0X25vZGUgZ19mcmVlIGluIGNhc2Ugb2Yg ZXJyb3JzCj4+IC0gcmV3b3JkIG9mIGxpbnV4LWhlYWRlcnMgcGF0Y2ggZmlsZXMKPj4KPj4gdjct PnY4Ogo+PiAtIHJlYmFzZSBvbiB2Mi4yLjAtcmMzIGFuZCBpbnRlZ3JhdGUKPj4gICAiQWRkIHNr aXBfZHVtcCBmbGFnIHRvIGlnbm9yZSBtZW1vcnkgcmVnaW9uIGR1cmluZyBkdW1wIgo+PiAtIEtW TSBoZWFkZXIgZXZvbHV0aW9uIHdpdGggc3ViaW5kZXggYWRkaXRpb24gaW4ga3ZtX2FyY2hfZm9y d2FyZGVkX2lycQo+PiAtIHNwbGl0IFtQQVRDSCB2NyAwMy8xNl0gaHcvdmZpby9wY2k6IGludHJv ZHVjZSBWRklPRGV2aWNlIGludG8gNCBwYXRjaGVzCj4+IC0gdmZpb19jb21wdXRlX25lZWRzX3Jl c2V0IGRvZXMgbm90IHJldHVybiBib29sIGFueW1vcmUKPj4gLSBhZGQgc29tZSBjb21tZW50cyBh Ym91dCBleHBvc2VkIE1NSU8gcmVnaW9uIGFuZCBJUlEgaW4gY2FseGVkYSB4Z21hYwo+PiAgIGRl dmljZQo+PiAtIHZmaW9fW3VuXW1hc2tfaXJxaW5kZXggcmVuYW1lZCBpbnRvIHZmaW9fW3VuXW1h c2tfc2luZ2xlX2lycWluZGV4Cj4+IC0gcmV3b3JrIElSUSBzdGFydHVwOiBmb3JtZXIgbWFjaGlu ZSBpbml0IGRvbmUgbm90aWZpZXIgaXMgcmVwbGFjZWQgYnkgYQo+PiAgIHJlc2V0IG5vdGlmaWVy LiBtYWNoaW5lIGZpbGUgcGFzc2VzIHRoZSBpbnRlcnJ1cHQgY29udHJvbGxlcgo+PiAgIERldmlj ZVN0YXRlIGhhbmRsZSAobm90IHRoZSBwbGF0Zm9ybSBidXMgZmlyc3QgaXJxIHBhcmFtZXRlciku Cj4+IC0gc3lzYnVzLWZkdDoKPj4gICAtIG1vdmUgdGhlIGFkZF9mZHRfbm9kZV9mdW5jdGlvbnMg YXJyYXkgZGVjbGFyYXRpb24gYmV0d2VlbiB0aGUgZGV2aWNlCj4+ICAgICBzcGVjaWZpYyBjb2Rl IGFuZCB0aGUgZ2VuZXJpYyBjb2RlIHRvIGF2b2lkIGZvcndhcmQgZGVjbGFyYXRpb25zIG9mCj4+ ICAgICBkZWNpY2Ugc3BlY2lmaWMgZnVuY3Rpb25zCj4+ICAgLSByZW5hbWUgYWRkX2Jhc2ljX3Zm aW9fZmR0X25vZGUgaW50byBhZGRfY2FseGVkYV9taWR3YXlfeGdtYWNfZmR0X25vZGUKPj4gICAg IGVtcGhhc2l6aW5nIHRoZSBmYWN0IGl0IGlzIHhnbWFjIHNwZWNpZmljCj4+Cj4+IHY2LT52NzoK Pj4gLSBmYWtlIGluamVjdGlvbiB0ZXN0IG1vZGFsaXR5IHJlbW92ZWQKPj4gLSBWRklPX0RFVklD RV9UWVBFX1BMQVRGT1JNIG9ubHkgaW50cm9kdWNlZCB3aXRoIFZGSU8gcGxhdGZvcm0KPj4gLSBu ZXcgaGVscGVyIGZ1bmN0aW9ucyB0byBzdGFydCBWRklPIElSUSBvbiBtYWNoaW5lIGluaXQgZG9u ZSBub3RpZmllcgo+PiAgIChpbnRyb2R1Y2VkIGluIGh3L3ZmaW8vcGxhdGZvcm06IGFkZCB2Zmlv LXBsYXRmb3JtIHN1cHBvcnQgYW5kIG5vdGlmaWVyCj4+ICAgcmVnaXN0cmF0aW9uIGludm9rZWQg aW4gaHcvYXJtL3ZpcnQ6IGFkZCBzdXBwb3J0IGZvciBWRklPIGRldmljZXMpLgo+PiAgIHZmaW9f c3RhcnRfaXJxX2luamVjdGlvbiBpcyByZXBsYWNlZCBieSB2ZmlvX3JlZ2lzdGVyX2lycV9zdGFy dGVyLgo+Pgo+PiB2NS0+djY6Cj4+IC0gcmViYXNlIG9uIDIuMXJjNSBQQ0kgY29kZQo+PiAtIGZv cndhcmRlZCBJUlEgZmlyc3QgaW50ZWdyYXRvbgo+PiAtIHZmaW9fZGV2aWNlIHByb3BlcnR5IHJl bmFtZWQgaW50byBob3N0IHByb3BlcnR5Cj4+IC0gc3BsaXQgSVJRIHNldHVwIGluIGRpZmZlcmVu dCBmdW5jdGlvbnMgdGhhdCBtYXRjaCB0aGUgMyBzdXBwb3J0ZWQKPj4gICBpbmplY3Rpb24gdGVj aG5pcXVlcyAodXNlciBoYW5kbGVkIGV2ZW50ZmQsIGlycWZkLCBmb3J3YXJkZWQgSVJRKToKPj4g ICByZW1vdmVzIGR5bmFtaWMgc3dpdGNoIGJldHdlZW4gaW5qZWN0aW9uIG1ldGhvZHMKPj4gLSBp bnRyb2R1Y2UgZmFrZSBpbnRlcnJ1cHRzIGFzIGEgdGVzdCBtb2RhbGl0eToKPj4gICB4IG1ha2Vz IHBvc3NpYmxlIHRvIHRlc3QgbXVsdGlwbGUgSVJRIHVzZXItc2lkZSBoYW5kbGluZy4KPj4gICB4 IHRoaXMgaXMgYSB0ZXN0IGZlYXR1cmUgb25seTogZW5hYmxlIHRvIHRyaWdnZXIgYSBmZCBhcyBp ZiB0aGUKPj4gICAgIHJlYWwgcGh5c2ljYWwgSVJRIGhpdC4gTm8gdmlydHVhbCBJUlEgaXMgaW5q ZWN0ZWQgaW50byB0aGUgZ3Vlc3QKPj4gICAgIGJ1dCBoYW5kbGluZyBpcyBzaW11bGF0ZWQgc28g dGhhdCB0aGUgc3RhdGUgbWFjaGluZSBjYW4gYmUgdGVzdGVkCj4+IC0gdXNlciBoYW5kbGVkIGV2 ZW50ZmQ6Cj4+ICAgeCBhZGQgbXV0ZXggdG8gcHJvdGVjdCBJUlEgc3RhdGUgJiBsaXN0IG1hbmlw dWxhdGlvbiwKPj4gICB4IGNvcnJlY3QgbWlzbGVhZGluZyBjb21tZW50IGluIHZmaW9faW50cF9p bnRlcnJ1cHQuCj4+ICAgeCBGaXggYnVncyB1c2luZyBmYWtlIGludGVycnVwdCBtb2RhbGl0eQo+ PiAtIGlycWZkIG5vIG1vcmUgYWR2ZXJ0aXNlZCBpbiB0aGlzIHBhdGNoc2V0IChoYW5kbGVkIGlu IFszXSkKPj4gLSBWRklPUGxhdGZvcm1EZXZpY2VDbGFzcyBiZWNvbWVzIGFic3RyYWN0IGFuZCBD YWx4ZWRhIHhnbWFjIGRldmljZQo+PiAgIGFuZCBjbGFzcyBpcyByZS1pbnRyb2R1Y2VkIChhcyBw ZXIgdjQpCj4+IC0gYWxsIERQUklOVEYgcmVtb3ZlZCBpbiBwbGF0Zm9ybSBhbmQgcmVwbGFjZWQg YnkgdHJhY2UtcG9pbnRzCj4+IC0gY29ycmVjdHMgY29tcGlsYXRpb24gd2l0aCBjb25maWd1cmUg LS1kaXNhYmxlLWt2bQo+PiAtIHNpbXBsaWZpZXMgdGhlIHNwbGl0IGZvciB2ZmlvX2dldF9kZXZp Y2UgYW5kIGludHJvZHVjZSBhIHVuaXF1ZQo+PiAgIHNwZWNpYWxpemVkIGZ1bmN0aW9uIG5hbWVk IHZmaW9fcG9wdWxhdGVfZGV2aWNlCj4+IC0gZ3JvdXBfbGlzdCByZW5hbWVkIGludG8gdmZpb19n cm91cF9saXN0Cj4+IC0gaHcvYXJtL2R5bl9zeXNidXNfZGV2dHJlZS5jIGN1cnJlbnRseSBvbmx5 IHN1cHBvcnQgdmZpby1jYWx4ZWRhLXhnbWFjCj4+ICAgaW5zdGFudGlhdGlvbi4gTmVlZHMgdG8g YmUgc3BlY2lhbGl6ZWQgZm9yIG90aGVyIFZGSU8gZGV2aWNlcwo+PiAtIGZpeCAyIGJ1Z3MgaW4g ZHluX3N5c2J1c19kZXZ0cmVlKHJlZ19hdHRyIGluZGV4IGFuZCBjb21wYXQpCj4+Cj4+IHY0LT52 NToKPj4gLSByZWJhc2Ugb24gdjIuMS4wIFBDSSBjb2RlCj4+IC0gdGFrZSBpbnRvIGFjY291bnQg QWxleCBXaWxsaWFtc29uIGNvbW1lbnRzIG9uIFBDSSBjb2RlIHJld29yawo+PiAgIC0gdHJhY2Ug dXBkYXRlcyBpbiB2ZmlvX3JlZ2lvbl93cml0ZS9yZWFkCj4+ICAgLSByZW1vdmUgZmQgZnJvbSBW RklPUmVnaW9uCj4+ICAgLSBnZXQvcHV0IGNrZWFudXAKPj4gLSBidWcgZml4OiBiYXIgcmVnaW9u J3MgdmJhc2VkZXYgZmllbGQgZHVseSBpbml0aWFsaXphdGlvbgo+PiAtIG1pc2MgY2xlYW51cHMg aW4gcGxhdGZvcm0gZGV2aWNlCj4+IC0gZGV2aWNlIHRyZWUgbm9kZSBnZW5lcmF0aW9uIHJlbW92 ZWQgZnJvbSBkZXZpY2UgYW5kIGhhbmRsZWQgaW4KPj4gICBody9hcm0vZHluX3N5c2J1c19kZXZ0 cmVlLmMKPj4gLSByZW1vdmUgImh3L3ZmaW86IGFkZCBhbiBleGFtcGxlIGNhbHhlZGFfeGdtYWMi OiB3aXRoIHJlbW92YWwgb2YKPj4gICBkZXZpY2UgdHJlZSBub2RlIGdlbmVyYXRpb24gd2UgZG8g bm90IGhhdmUgc28gbWFueSB0aGluZ3MgdG8KPj4gICBpbXBsZW1lbnQgaW4gdGhhdCBkZXJpdmVk IGRldmljZSB5ZXQuIE1heSBiZSByZS1pbnRyb2R1Y2VkIGxhdGVyCj4+ICAgb24gaWYgbmVlZGVk IHR5cGljYWxseSBmb3IgcmVzZXQvbWlncmF0aW9uLgo+PiAtIG5vIEdTSSByb3V0aW5nIHRhYmxl IGFueW1vcmUKPj4KPj4gdjMtPnY0IGNoYW5nZXMgKEVyaWMgQXVnZXIsIEFsdmlzZSBSaWdvKQo+ PiAtIHJlYmFzZSBvbiBsYXN0IFZGSU8gUENJIGNvZGUgKHYyLjEuMC1yYzApCj4+IC0gZnVsbCBn aXQgaGlzdG9yeSByZXdvcmsgdG8gZWFzZSBQQ0kgY29kZSBjaGFuZ2UgcmV2aWV3Cj4+IC0gbXYg aW5jbHVkZSBmaWxlcyBpbiBody92ZmlvCj4+IC0gRFBSSU5URiByZWZvcm1hdHRpbmcgdGVtcG9y YXJpbHkgbW92ZWQgb3V0Cj4+IC0gc3VwcG9ydCBvZiBWRklPIHZpcnEgKHJlbW92YWwgb2YgcmVz YW1wbGVmZCBoYW5kbGVyIG9uIHVzZXItc2lkZSkKPj4gLSBpbnRlZ3JhdGlvbiB3aXRoIHN5c2J1 cyBkeW5hbWljIGluc3RhbnRpYXRpb24gZnJhbXdvcmsKPj4gLSByZW1vdmFsIG9mIHVucmVhbGl6 ZSBhbmQgY2xlYW51cCByb3V0aW5lcyB1bnRpbCBpdCBpcyBiZXR0ZXIKPj4gICB1bmRlcnN0b29k IHdoYXQgaXMgcmVhbGx5IG5lZWRlZAo+PiAtIFN1cHBvcnQgb2YgVkZJTyBmb3IgQW1iYSBkZXZp Y2VzIHNob3VsZCBiZSBoYW5kbGVkIGluIGFuIGluaGVyaXRlZAo+PiAgIGRldmljZSB0byBzcGVj aWFsaXplIHRoZSBkZXZpY2UgdHJlZSBnZW5lcmF0aW9uIChjbG9jayBoYW5kbGUgY3VycmVudGx5 Cj4+ICAgbWlzc2luZyBpbiBmcmFtZXdvcmsgaG93ZXZlcikKPj4gLSAiQWx3YXlzIHVzZSBldmVu dGZkIGFzIG5vdGlmeWluZyBtZWNoYW5pc20iIHRlbXBvcmFyaWx5IG1vdmVkIG91dAo+PiAtIHN0 YXRpYyBpbnN0YW50aWF0aW9uIGlzIG5vdCBtYWluc3RyZWFtIChhbHRob3VnaCBpdCByZW1haW5z IHBvc3NpYmxlKQo+PiAgIG5vdGUgaWYgc3RhdGljIGluc3RhbnRpYXRpb24gaXMgdXNlZCwgaXJx ZmQgbXVzdCBiZSBzZXR1cCBpbiBtYWNoaW5lIGZpbGUKPj4gICB3aGVuIHZpcnR1YWwgSVJRIGlz IGtub3duCj4+IC0gY3JlYXRlIHRoZSBHU0kgcm91dGluZyB0YWJsZSBvbiBxZW11IHNpZGUKPj4K Pj4gdjItPnYzIGNoYW5nZXMgKEFsdmlzZSBSaWdvLCBFcmljIEF1Z2VyKToKPj4gLSBGb2xsb3dp bmcgQWxleCBXIHJlY29tbWFuZGF0aW9ucywgZnVydGhlciBlZmZvcnRzIHRvIGZhY3Rvcml6ZSB0 aGUKPj4gICBjb2RlIGJldHdlZW4gUENJOmludHJvZHVjdGlvbiBvZiBWRklPRGV2aWNlIGFuZCBW RklPUmVnaW9uCj4+ICAgYXMgYmFzZSBjbGFzc2VzCj4+IC0gdW5pcXVlIHJlc2V0IGhhbmRsZXIg Zm9yIHBsYXRmb3JtIGFuZCBQQ0kKPj4gLSBjbGVhbnVwIGZvbGxvd2luZyBLaW0ncyBjb21tZW50 cwo+PiAtIG11bHRpcGxlIElSUSBzdXBwb3J0IG1lY2hhbmljcyBzaG91bGQgYmUgaW4gcGxhY2Ug YWx0aG91Z2ggbm90Cj4+ICAgdGVzdGVkCj4+IC0gQmV0dGVyIGhhbmRsaW5nIG9mIE1NSU8gbXVs dGlwbGUgcmVnaW9ucwo+PiAtIE5ldyBmZWF0dXJlcyBhbmQgZml4ZXMgYnkgQWx2aXNlIChtdWx0 aXBsZSBjb21wYXQgc3RyaW5nLCBleGVjCj4+ICAgZmxhZywgZm9yY2UgZXZlbnRmZCB1c2FnZSwg YW1iYSBkZXZpY2UgdHJlZSBzdXBwb3J0KQo+PiAtIGlycWZkIHN1cHBvcnQKPj4KPj4gdjEtPnYy IGNoYW5nZXMgKEtpbSBQaGlsbGlwcywgRXJpYyBBdWdlcik6Cj4+IC0gSVJRIGluaXRpYWwgc3Vw cG9ydCAobGVnYWN5IG1vZGUgd2hlcmUgZXZlbnRmZHMgYXJlIGhhbmRsZWQgb24KPj4gICB1c2Vy IHNpZGUpCj4+IC0gaGFja2VkIGR5bmFtaWMgaW5zdGFudGlhdGlvbgo+Pgo+PiB2MSAoS2ltIFBo aWxsaXBzKToKPj4gLSBpbml0aWFsIHNwbGl0IGJldHdlZW4gUENJIGFuZCBwbGF0Zm9ybQo+PiAt IE1NSU8gc3VwcG9ydCBvbmx5Cj4+IC0gc3RhdGljIGluc3RhbnRpYXRpb24KPj4KPj4gQmVzdCBS ZWdhcmRzCj4+Cj4+IEVyaWMKPj4KPj4KPj4gQ29ybmVsaWEgSHVjayAoMSk6Cj4+ICAgbGludXgt aGVhZGVyczogdXBkYXRlCj4+Cj4+IEVyaWMgQXVnZXIgKDkpOgo+PiAgIGh3L3ZmaW8vcGxhdGZv cm06IHZmaW8tcGxhdGZvcm0gc2tlbGV0b24KPj4gICBody92ZmlvL3BsYXRmb3JtOiBhZGQgaXJx IGFzc2lnbm1lbnQKPj4gICBody92ZmlvL3BsYXRmb3JtOiBjYWx4ZWRhIHhnbWFjIGRldmljZQo+ PiAgIGh3L2FybS9zeXNidXMtZmR0OiBlbmFibGUgdmZpby1jYWx4ZWRhLXhnbWFjIGR5bmFtaWMg aW5zdGFudGlhdGlvbgo+PiAgIGt2bTogcmVuYW1lIGt2bV9pcnFjaGlwX1thZGQscmVtb3ZlXV9p cnFmZF9ub3RpZmllciB3aXRoIGdzaSBzdWZmaXgKPj4gICBrdm0tYWxsLmM6IGFkZCBxZW11X2ly cS9nc2kgaGFzaCB0YWJsZSBhbmQgdXRpbGl0eSByb3V0aW5lcwo+PiAgIGludGM6IGFybV9naWNf a3ZtOiBzZXQgdGhlIHFlbXVfaXJxL2dzaSBtYXBwaW5nCj4+ICAgc3lzYnVzOiBhZGQgaXJxX3Jv dXRpbmdfbm90aWZpZXIKPj4gICBody92ZmlvL3BsYXRmb3JtOiBhZGQgaXJxZmQgc3VwcG9ydAo+ Pgo+PiAgaHcvYXJtL3N5c2J1cy1mZHQuYyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAg NzIgKysrCj4+ICBody9jb3JlL3N5c2J1cy5jICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICB8ICAgNiArCj4+ICBody9pbnRjL2FybV9naWNfa3ZtLmMgICAgICAgICAgICAgICAgICAgICAg ICAgICB8ICAgNSArCj4+ICBody9zMzkweC92aXJ0aW8tY2N3LmMgICAgICAgICAgICAgICAgICAg ICAgICAgICB8ICAgOCArLQo+PiAgaHcvdmZpby9NYWtlZmlsZS5vYmpzICAgICAgICAgICAgICAg ICAgICAgICAgICAgfCAgIDIgKwo+PiAgaHcvdmZpby9jYWx4ZWRhLXhnbWFjLmMgICAgICAgICAg ICAgICAgICAgICAgICAgfCAgNTQgKysKPj4gIGh3L3ZmaW8vcGNpLmMgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIHwgICA2ICstCj4+ICBody92ZmlvL3BsYXRmb3JtLmMgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICB8IDcyMwo+PiArKysrKysrKysrKysrKysrKysrKysrKysK Pj4gIGh3L3ZpcnRpby92aXJ0aW8tcGNpLmMgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICA0 ICstCj4+ICBpbmNsdWRlL2h3L3N5c2J1cy5oICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8 ICAgMSArCj4+ICBpbmNsdWRlL2h3L3ZmaW8vdmZpby1jYWx4ZWRhLXhnbWFjLmggICAgICAgICAg ICB8ICA0NiArKwo+PiAgaW5jbHVkZS9ody92ZmlvL3ZmaW8tY29tbW9uLmggICAgICAgICAgICAg ICAgICAgfCAgIDEgKwo+PiAgaW5jbHVkZS9ody92ZmlvL3ZmaW8tcGxhdGZvcm0uaCAgICAgICAg ICAgICAgICAgfCAgNzcgKysrCj4+ICBpbmNsdWRlL3N0YW5kYXJkLWhlYWRlcnMvbGludXgvdmly dGlvX2JhbGxvb24uaCB8ICAyOCArLQo+PiAgaW5jbHVkZS9zdGFuZGFyZC1oZWFkZXJzL2xpbnV4 L3ZpcnRpb19ibGsuaCAgICAgfCAgIDggKy0KPj4gIGluY2x1ZGUvc3RhbmRhcmQtaGVhZGVycy9s aW51eC92aXJ0aW9faWRzLmggICAgIHwgICAxICsKPj4gIGluY2x1ZGUvc3RhbmRhcmQtaGVhZGVy cy9saW51eC92aXJ0aW9faW5wdXQuaCAgIHwgIDc2ICsrKwo+PiAgaW5jbHVkZS9zeXNlbXUva3Zt LmggICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgMTEgKy0KPj4gIGt2bS1hbGwuYyAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgIDQ0ICstCj4+ICBrdm0tc3R1Yi5j ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgNyArLQo+PiAgbGludXgt aGVhZGVycy9hc20tYXJtL2t2bS5oICAgICAgICAgICAgICAgICAgICAgfCAgIDkgKy0KPj4gIGxp bnV4LWhlYWRlcnMvYXNtLWFybTY0L2t2bS5oICAgICAgICAgICAgICAgICAgIHwgICA5ICstCj4+ ICBsaW51eC1oZWFkZXJzL2FzbS1taXBzL2t2bS5oICAgICAgICAgICAgICAgICAgICB8IDE2NCAr KystLS0KPj4gIGxpbnV4LWhlYWRlcnMvYXNtLXMzOTAva3ZtLmggICAgICAgICAgICAgICAgICAg IHwgICA0ICsKPj4gIGxpbnV4LWhlYWRlcnMvYXNtLXg4Ni9oeXBlcnYuaCAgICAgICAgICAgICAg ICAgIHwgICAyICsKPj4gIGxpbnV4LWhlYWRlcnMvbGludXgva3ZtLmggICAgICAgICAgICAgICAg ICAgICAgIHwgIDY2ICsrLQo+PiAgbGludXgtaGVhZGVycy9saW51eC92ZmlvLmggICAgICAgICAg ICAgICAgICAgICAgfCAgIDIgKwo+PiAgdHJhY2UtZXZlbnRzICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgfCAgMTMgKwo+PiAgMjggZmlsZXMgY2hhbmdlZCwgMTM2MiBpbnNlcnRp b25zKCspLCA4NyBkZWxldGlvbnMoLSkKPj4gIGNyZWF0ZSBtb2RlIDEwMDY0NCBody92ZmlvL2Nh bHhlZGEteGdtYWMuYwo+PiAgY3JlYXRlIG1vZGUgMTAwNjQ0IGh3L3ZmaW8vcGxhdGZvcm0uYwo+ PiAgY3JlYXRlIG1vZGUgMTAwNjQ0IGluY2x1ZGUvaHcvdmZpby92ZmlvLWNhbHhlZGEteGdtYWMu aAo+PiAgY3JlYXRlIG1vZGUgMTAwNjQ0IGluY2x1ZGUvaHcvdmZpby92ZmlvLXBsYXRmb3JtLmgK Pj4gIGNyZWF0ZSBtb2RlIDEwMDY0NCBpbmNsdWRlL3N0YW5kYXJkLWhlYWRlcnMvbGludXgvdmly dGlvX2lucHV0LmgKPj4KPj4gLS0gMS44LjMuMgo+Pgo+PgoKX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX18Ka3ZtYXJtIG1haWxpbmcgbGlzdAprdm1hcm1AbGlz dHMuY3MuY29sdW1iaWEuZWR1Cmh0dHBzOi8vbGlzdHMuY3MuY29sdW1iaWEuZWR1L21haWxtYW4v bGlzdGluZm8va3ZtYXJtCg== From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:49949) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1YuHYY-00024u-Vz for qemu-devel@nongnu.org; Mon, 18 May 2015 05:41:57 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1YuHYU-0004gv-Q4 for qemu-devel@nongnu.org; Mon, 18 May 2015 05:41:54 -0400 Received: from mail-wg0-f44.google.com ([74.125.82.44]:34790) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1YuHYU-0004fz-Ga for qemu-devel@nongnu.org; Mon, 18 May 2015 05:41:50 -0400 Received: by wguv19 with SMTP id v19so120157170wgu.1 for ; Mon, 18 May 2015 02:41:49 -0700 (PDT) Message-ID: <5559B3D5.1010805@linaro.org> Date: Mon, 18 May 2015 11:41:41 +0200 From: Eric Auger MIME-Version: 1.0 References: <5549B3A0.3090205@linaro.org> <5549B69B.2050702@linaro.org> In-Reply-To: Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit Subject: Re: [Qemu-devel] [PATCH v15 00/10] KVM platform device passthrough List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Baptiste Reynal Cc: Peter Maydell , Peter Crosthwaite , "eric.auger@st.com" , Vikram Sethi , "patches@linaro.org" , qemu list , Alexander Graf , "Bharat.Bhushan@freescale.com" , Alex Williamson , Paolo Bonzini , "kvmarm@lists.cs.columbia.edu" , Christoffer Dall Hi Baptiste, all, Thanks Baptiste for your reply. Is there anything left blocking this series and fellow Machvirt Dynamic Sysbus instantiation? Hope there is no cyclic dependency between both? Thanks in advance Best Regards Eric On 05/11/2015 02:37 PM, Baptiste Reynal wrote: > Hi Eric, > > I rebased amba patches on this serie. Everything is working fine with > the PL330 device. > > Regards, > Baptiste > > On Wed, May 6, 2015 at 8:37 AM, Eric Auger wrote: >> Dear All, >> >> Please ignore the previous void message. For unknown reason the reply >> systematically ignores the content of the message? Retrying breaking the >> history... Content was: >> >> I am looking for "Tested-by" for this series and related Machvirt >> dynamic sysbus device instantiation. Did anyone try the last versions? >> >> I know those series are not plug & play since additions are needed for >> your device: >> - device tree node addition in sysbus device >> - creation of a specialized QEMU VFIO platform device since base class >> is abstract >> >> For those willing to try and assess that code, please do not hesitate to >> contact me. I can and I am willing to help. If you already did, with >> success or facing issues, please send your Tested-by or report any issue >> for quick fix. This will definitively help in the upstream of this code. >> >> Thanks >> >> Best Regards >> >> Eric >> >> >> >> This series aims at enabling KVM platform device passthrough. >> >> On kernel side, the vfio platform driver is needed, available from >> 4.1-rc1 onwards. >> >> This series now only relies on the following QEMU series, for >> dynamic instantiation of the VFIO platform device from qemu command >> line: >> >> [1] [PATCH v12 0/4] machvirt dynamic sysbus device instantiation >> http://comments.gmane.org/gmane.comp.emulators.kvm.arm.devel/886 >> >> Both series are candidate for QEMU 2.4 and available at >> >> http://git.linaro.org/people/eric.auger/qemu.git >> (branch vfio_integ_v15) >> >> The series was tested on Calxeda Midway (ARMv7) where one xgmac >> is assigned to KVM host while the second one is assigned to the guest. >> >> Wiki for Calxeda Midway setup: >> https://wiki.linaro.org/LEG/Engineering/Virtualization/Platform_Device_Passthrough_on_Midway >> >> History: >> >> v14 -> v15: >> - add Peter R-b on sysbus: add irq_routing_notifier >> - correct g_malloc0_n usage in skeleton >> - correct return values of reset related functions >> - include Cornelia's patch for header update >> >> v13 -> v14: >> - remove v13 9, 10, 11 patch files and replace them by a single patch file >> "sysbus: add irq_routing_notifier". >> - in skeleton, fix ENAMETOOLONG sign >> - remove VFIOINTp virtualID in "add irq assignment" patch file >> - removed trace_vfio_platform_start_eventfd >> >> v12 -> v13: >> - header update but same update was already sent by Cornelia >> - Rework VFIO signaling & irqfd setup: restored 2-step setup featuring >> eventfd setup on realize and then irqfd setup on irq binding. >> - irqfd setup now uses kvm_irqchip_add_irqfd_notifier and >> sysbus irq_set_hook override. This leads to the introduction of 6 patch >> files enabling those 2 features. Paolo advised to introduce >> kvm_irqchip_add_irqfd_notifier series in the VFIO one. I did the >> same for irq_set_hook series but if it is better I can submit it aside. >> - above changes made possible to remove >> x hw/vfio/platform: add capability to start IRQ propagation" >> x hw/arm/virt: start VFIO IRQ propagation >> - in sysbus-fdt.c, use platform_bus_get_mmio_addr instead of deprecated >> mmio[0] property. Thanks to Bharat who pointed this issue out. also >> cpu_to_be32 was used for size and base (Vikram input) . >> - in skeleton misc corrections following Alex review. >> >> v11->v12: >> - add x-mmap property definition, without which the default value of >> vbasedev.allow_mmap is false, hence preventing the reg space from >> being mmapped. >> >> v10->v11: >> - rebase onto v2.3.0-rc0 (mainly related to PCIe support in virt) >> - add dma-coherent property for calxeda midway (fix revealed by removal >> of kernel-side "vfio: type1: support for ARM SMMUS with VFIO_IOMMU_TYPE1") >> - virt modifications to start VFIO IRQ forwarding are now in a separate >> patch >> - rearrange linux header exports (those are still partial exports >> waiting for definitive 4.1-rc0) >> - take into account Alex Bennée comments: >> - use g_malloc0_n instead of g_malloc0 >> - use block declarations when possible >> - rework readlink returned value treatment >> - use g_strlcat in place strncat >> - re-arrange mutex locking for multiple IRQ support (user-side handled >> eventfds) >> - use g_snprintf instead of snprintf >> - change the order of functions to avoid pre-declaration in platform.c >> - add flags in VFIOINTp struct to detect whether the IRQ is automasked >> - some comment rewriting >> >> v9->v10: >> - rebase on "vfio: cleanup vfio_get_device error path, remove >> vfio_populate_device": vfio_populate_device no more called in >> vfio_get_device but in vfio_base_device_init >> - update VFIO header according to vfio platform driver v13 (no AMBA) >> >> v8->v9: >> - rebase on 2.2.0 and machvirt dynamic sysbus instantiation v10 >> - v8 1-11 were pulled >> - patch files related to forwarding are moved in a seperate series since >> it depends on kernel series still in RFC. >> - introduction of basic VFIO platform device split into 3 patch files to >> ease the review (hope it will help). >> - add an author in platform.c >> - add deallocation in vfio_populate_device error case >> - add patch file doing the VFIO header sync >> - use VFIO_DEVICE_FLAGS_PLATFORM in vfio_populate_device >> - rename calxeda_xgmac.c into calxeda-xgmac.c >> - sysbus-fdt: add_calxeda_midway_xgmac_fdt_node g_free in case of errors >> - reword of linux-headers patch files >> >> v7->v8: >> - rebase on v2.2.0-rc3 and integrate >> "Add skip_dump flag to ignore memory region during dump" >> - KVM header evolution with subindex addition in kvm_arch_forwarded_irq >> - split [PATCH v7 03/16] hw/vfio/pci: introduce VFIODevice into 4 patches >> - vfio_compute_needs_reset does not return bool anymore >> - add some comments about exposed MMIO region and IRQ in calxeda xgmac >> device >> - vfio_[un]mask_irqindex renamed into vfio_[un]mask_single_irqindex >> - rework IRQ startup: former machine init done notifier is replaced by a >> reset notifier. machine file passes the interrupt controller >> DeviceState handle (not the platform bus first irq parameter). >> - sysbus-fdt: >> - move the add_fdt_node_functions array declaration between the device >> specific code and the generic code to avoid forward declarations of >> decice specific functions >> - rename add_basic_vfio_fdt_node into add_calxeda_midway_xgmac_fdt_node >> emphasizing the fact it is xgmac specific >> >> v6->v7: >> - fake injection test modality removed >> - VFIO_DEVICE_TYPE_PLATFORM only introduced with VFIO platform >> - new helper functions to start VFIO IRQ on machine init done notifier >> (introduced in hw/vfio/platform: add vfio-platform support and notifier >> registration invoked in hw/arm/virt: add support for VFIO devices). >> vfio_start_irq_injection is replaced by vfio_register_irq_starter. >> >> v5->v6: >> - rebase on 2.1rc5 PCI code >> - forwarded IRQ first integraton >> - vfio_device property renamed into host property >> - split IRQ setup in different functions that match the 3 supported >> injection techniques (user handled eventfd, irqfd, forwarded IRQ): >> removes dynamic switch between injection methods >> - introduce fake interrupts as a test modality: >> x makes possible to test multiple IRQ user-side handling. >> x this is a test feature only: enable to trigger a fd as if the >> real physical IRQ hit. No virtual IRQ is injected into the guest >> but handling is simulated so that the state machine can be tested >> - user handled eventfd: >> x add mutex to protect IRQ state & list manipulation, >> x correct misleading comment in vfio_intp_interrupt. >> x Fix bugs using fake interrupt modality >> - irqfd no more advertised in this patchset (handled in [3]) >> - VFIOPlatformDeviceClass becomes abstract and Calxeda xgmac device >> and class is re-introduced (as per v4) >> - all DPRINTF removed in platform and replaced by trace-points >> - corrects compilation with configure --disable-kvm >> - simplifies the split for vfio_get_device and introduce a unique >> specialized function named vfio_populate_device >> - group_list renamed into vfio_group_list >> - hw/arm/dyn_sysbus_devtree.c currently only support vfio-calxeda-xgmac >> instantiation. Needs to be specialized for other VFIO devices >> - fix 2 bugs in dyn_sysbus_devtree(reg_attr index and compat) >> >> v4->v5: >> - rebase on v2.1.0 PCI code >> - take into account Alex Williamson comments on PCI code rework >> - trace updates in vfio_region_write/read >> - remove fd from VFIORegion >> - get/put ckeanup >> - bug fix: bar region's vbasedev field duly initialization >> - misc cleanups in platform device >> - device tree node generation removed from device and handled in >> hw/arm/dyn_sysbus_devtree.c >> - remove "hw/vfio: add an example calxeda_xgmac": with removal of >> device tree node generation we do not have so many things to >> implement in that derived device yet. May be re-introduced later >> on if needed typically for reset/migration. >> - no GSI routing table anymore >> >> v3->v4 changes (Eric Auger, Alvise Rigo) >> - rebase on last VFIO PCI code (v2.1.0-rc0) >> - full git history rework to ease PCI code change review >> - mv include files in hw/vfio >> - DPRINTF reformatting temporarily moved out >> - support of VFIO virq (removal of resamplefd handler on user-side) >> - integration with sysbus dynamic instantiation framwork >> - removal of unrealize and cleanup routines until it is better >> understood what is really needed >> - Support of VFIO for Amba devices should be handled in an inherited >> device to specialize the device tree generation (clock handle currently >> missing in framework however) >> - "Always use eventfd as notifying mechanism" temporarily moved out >> - static instantiation is not mainstream (although it remains possible) >> note if static instantiation is used, irqfd must be setup in machine file >> when virtual IRQ is known >> - create the GSI routing table on qemu side >> >> v2->v3 changes (Alvise Rigo, Eric Auger): >> - Following Alex W recommandations, further efforts to factorize the >> code between PCI:introduction of VFIODevice and VFIORegion >> as base classes >> - unique reset handler for platform and PCI >> - cleanup following Kim's comments >> - multiple IRQ support mechanics should be in place although not >> tested >> - Better handling of MMIO multiple regions >> - New features and fixes by Alvise (multiple compat string, exec >> flag, force eventfd usage, amba device tree support) >> - irqfd support >> >> v1->v2 changes (Kim Phillips, Eric Auger): >> - IRQ initial support (legacy mode where eventfds are handled on >> user side) >> - hacked dynamic instantiation >> >> v1 (Kim Phillips): >> - initial split between PCI and platform >> - MMIO support only >> - static instantiation >> >> Best Regards >> >> Eric >> >> >> Cornelia Huck (1): >> linux-headers: update >> >> Eric Auger (9): >> hw/vfio/platform: vfio-platform skeleton >> hw/vfio/platform: add irq assignment >> hw/vfio/platform: calxeda xgmac device >> hw/arm/sysbus-fdt: enable vfio-calxeda-xgmac dynamic instantiation >> kvm: rename kvm_irqchip_[add,remove]_irqfd_notifier with gsi suffix >> kvm-all.c: add qemu_irq/gsi hash table and utility routines >> intc: arm_gic_kvm: set the qemu_irq/gsi mapping >> sysbus: add irq_routing_notifier >> hw/vfio/platform: add irqfd support >> >> hw/arm/sysbus-fdt.c | 72 +++ >> hw/core/sysbus.c | 6 + >> hw/intc/arm_gic_kvm.c | 5 + >> hw/s390x/virtio-ccw.c | 8 +- >> hw/vfio/Makefile.objs | 2 + >> hw/vfio/calxeda-xgmac.c | 54 ++ >> hw/vfio/pci.c | 6 +- >> hw/vfio/platform.c | 723 >> ++++++++++++++++++++++++ >> hw/virtio/virtio-pci.c | 4 +- >> include/hw/sysbus.h | 1 + >> include/hw/vfio/vfio-calxeda-xgmac.h | 46 ++ >> include/hw/vfio/vfio-common.h | 1 + >> include/hw/vfio/vfio-platform.h | 77 +++ >> include/standard-headers/linux/virtio_balloon.h | 28 +- >> include/standard-headers/linux/virtio_blk.h | 8 +- >> include/standard-headers/linux/virtio_ids.h | 1 + >> include/standard-headers/linux/virtio_input.h | 76 +++ >> include/sysemu/kvm.h | 11 +- >> kvm-all.c | 44 +- >> kvm-stub.c | 7 +- >> linux-headers/asm-arm/kvm.h | 9 +- >> linux-headers/asm-arm64/kvm.h | 9 +- >> linux-headers/asm-mips/kvm.h | 164 +++--- >> linux-headers/asm-s390/kvm.h | 4 + >> linux-headers/asm-x86/hyperv.h | 2 + >> linux-headers/linux/kvm.h | 66 ++- >> linux-headers/linux/vfio.h | 2 + >> trace-events | 13 + >> 28 files changed, 1362 insertions(+), 87 deletions(-) >> create mode 100644 hw/vfio/calxeda-xgmac.c >> create mode 100644 hw/vfio/platform.c >> create mode 100644 include/hw/vfio/vfio-calxeda-xgmac.h >> create mode 100644 include/hw/vfio/vfio-platform.h >> create mode 100644 include/standard-headers/linux/virtio_input.h >> >> -- 1.8.3.2 >> >>