From mboxrd@z Thu Jan 1 00:00:00 1970 From: Yu Zhang Subject: Re: [PATCH v6 3/4] x86/ioreq server: Handle read-modify-write cases for p2m_ioreq_server pages. Date: Fri, 9 Sep 2016 14:21:29 +0800 Message-ID: <57D254E9.9000807@linux.intel.com> References: <1472813240-11011-1-git-send-email-yu.c.zhang@linux.intel.com> <1472813240-11011-4-git-send-email-yu.c.zhang@linux.intel.com> <57D247F6.9010503@linux.intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8"; Format="flowed" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <57D247F6.9010503@linux.intel.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xen.org Sender: "Xen-devel" To: Jan Beulich Cc: Paul Durrant , "Xen-devel@lists.xen.org" , George Dunlap , "Lv, Zhiyuan" List-Id: xen-devel@lists.xenproject.org CgpPbiA5LzkvMjAxNiAxOjI2IFBNLCBZdSBaaGFuZyB3cm90ZToKPgo+ID4+PiBPbiAwMi4wOS4x NiBhdCAxMjo0NywgPHl1LmMuemhhbmdAeHh4eHh4eHh4eHh4eHh4PiB3cm90ZToKPiA+IC0tLSBh L3hlbi9hcmNoL3g4Ni9odm0vZW11bGF0ZS5jCj4gPiArKysgYi94ZW4vYXJjaC94ODYvaHZtL2Vt dWxhdGUuYwo+ID4gQEAgLTk1LDYgKzk1LDQxIEBAIHN0YXRpYyBjb25zdCBzdHJ1Y3QgaHZtX2lv X2hhbmRsZXIgbnVsbF9oYW5kbGVyID0gewo+ID4gICAgICAub3BzID0gJm51bGxfb3BzCj4gPiAg fTsKPiA+Cj4gPiArc3RhdGljIGludCBtZW1fcmVhZChjb25zdCBzdHJ1Y3QgaHZtX2lvX2hhbmRs ZXIgKmlvX2hhbmRsZXIsCj4gPiArICAgICAgICAgICAgICAgICAgICB1aW50NjRfdCBhZGRyLAo+ ID4gKyAgICAgICAgICAgICAgICAgICAgdWludDMyX3Qgc2l6ZSwKPiA+ICsgICAgICAgICAgICAg ICAgICAgIHVpbnQ2NF90ICpkYXRhKQo+ID4gK3sKPiA+ICsgICAgc3RydWN0IGRvbWFpbiAqY3Vy cmQgPSBjdXJyZW50LT5kb21haW47Cj4gPiArICAgIHVuc2lnbmVkIGxvbmcgZ21mbiA9IHBhZGRy X3RvX3BmbihhZGRyKTsKPiA+ICsgICAgdW5zaWduZWQgbG9uZyBvZmZzZXQgPSBhZGRyICYgflBB R0VfTUFTSzsKPiA+ICsgICAgc3RydWN0IHBhZ2VfaW5mbyAqcGFnZSA9IGdldF9wYWdlX2Zyb21f Z2ZuKGN1cnJkLCBnbWZuLCBOVUxMLAo+ID4gUDJNX1VOU0hBUkUpOwo+ID4gKyAgICB1aW50OF90 ICpwOwo+Cj4gY29uc3QgKGFuZCBwcmVmZXJhYmx5IGFsc28gdm9pZCkKPgoKVGhhbmtzLCBJIHRo aW5rIHdlIGRvIG5vdCBuZWVkIHRoaXMgdmFyaWFibGUgd2l0aCAKaHZtX2NvcHlfZnJvbV9ndWVz dF9waHlzKCkuCgo+ID4gKyAgICBBU1NFUlQob2Zmc2V0ICsgc2l6ZSA8IFBBR0VfU0laRSk7Cj4K PiBTdXJlbHkgPD0gPwo+CgpZZXMuIFRoYW5rcy4KCj4gPiArICAgIGlmICggIXBhZ2UgKQo+ID4g KyAgICAgICAgcmV0dXJuIFg4NkVNVUxfVU5IQU5ETEVBQkxFOwo+ID4gKwo+ID4gKyAgICBwID0g X19tYXBfZG9tYWluX3BhZ2UocGFnZSk7Cj4gPiArICAgIHAgKz0gb2Zmc2V0Owo+ID4gKyAgICBt ZW1jcHkoZGF0YSwgcCwgc2l6ZSk7Cj4gPiArCj4gPiArICAgIHVubWFwX2RvbWFpbl9wYWdlKHAp Owo+ID4gKyAgICBwdXRfcGFnZShwYWdlKTsKPgo+IEJ1dCBhbnl3YXkgLSBJIHRoaW5rIHJhdGhl ciB0aGFuIGFsbCB0aGlzIG9wZW4gY29kaW5nIHlvdSB3b3VsZAo+IGJldHRlciBjYWxsIGh2bV9j b3B5X2Zyb21fZ3Vlc3RfcGh5cygpLgo+CgpBZ3JlZS4KCj4gPiArc3RhdGljIGNvbnN0IHN0cnVj dCBodm1faW9fb3BzIG1lbV9vcHMgPSB7Cj4gPiArICAgIC5yZWFkID0gbWVtX3JlYWQsCj4gPiAr ICAgIC53cml0ZSA9IG51bGxfd3JpdGUKPiA+ICt9Owo+ID4gKwo+ID4gK3N0YXRpYyBjb25zdCBz dHJ1Y3QgaHZtX2lvX2hhbmRsZXIgbWVtX2hhbmRsZXIgPSB7Cj4gPiArICAgIC5vcHMgPSAmbWVt X29wcwo+ID4gK307Cj4KPiBJIHRoaW5rIHRoZSBtZW1fIHByZWZpeCBmb3IgYm90aCBvYmplY3Rz IGlzIGEgYmFkIG9uZSwgY29uc2lkZXJpbmcKPiB0aGF0IHRoaXMgaXNuJ3Qgc3VpdGFibGUgZm9y IGdlbmVyYWwgbWVtb3J5IGhhbmRsaW5nLgoKSG93IGFib3V0IGlvcmVxX3NlcnZlcl9yZWFkL29w cz8gSXQgaXMgb25seSBmb3IgdGhpcyBzcGVjaWFsIHAybSB0eXBlLgoKPgo+ID4gQEAgLTIwNCw3 ICsyMzksMTUgQEAgc3RhdGljIGludCBodm1lbXVsX2RvX2lvKAo+ID4gICAgICAgICAgLyogSWYg dGhlcmUgaXMgbm8gc3VpdGFibGUgYmFja2luZyBETSwganVzdCBpZ25vcmUgYWNjZXNzZXMgKi8K PiA+ICAgICAgICAgIGlmICggIXMgKQo+ID4gICAgICAgICAgewo+ID4gLSAgICAgICAgICAgIHJj ID0gaHZtX3Byb2Nlc3NfaW9faW50ZXJjZXB0KCZudWxsX2hhbmRsZXIsICZwKTsKPiA+ICsgICAg ICAgICAgICAvKgo+ID4gKyAgICAgICAgICAgICAqIEZvciBwMm1faW9yZXFfc2VydmVyIHBhZ2Vz IGFjY2Vzc2VkIHdpdGggCj4gcmVhZC1tb2RpZnktd3JpdGUKPiA+ICsgICAgICAgICAgICAgKiBp bnN0cnVjdGlvbnMsIHdlIHByb3ZpZGUgYSByZWFkIGhhbmRsZXIgdG8gY29weSB0aGUgCj4gZGF0 YSB0bwo+ID4gKyAgICAgICAgICAgICAqIHRoZSBidWZmZXIuCj4gPiArICAgICAgICAgICAgICov Cj4gPiArICAgICAgICAgICAgaWYgKCBwMm10ID09IHAybV9pb3JlcV9zZXJ2ZXIgKQo+Cj4gUGxl YXNlIGFkZCB1bmxpa2VseSgpIGhlcmUsIG9yIGFpZCB0aGUgY29tcGlsZXIgaW4gYXZvaWRpbmcg YW55Cj4gYnJhbmNoIGJ5IC4uLgo+Cj4gPiArICAgICAgICAgICAgICAgIHJjID0gaHZtX3Byb2Nl c3NfaW9faW50ZXJjZXB0KCZtZW1faGFuZGxlciwgJnApOwo+ID4gKyAgICAgICAgICAgIGVsc2UK PiA+ICsgICAgICAgICAgICAgICAgcmMgPSBodm1fcHJvY2Vzc19pb19pbnRlcmNlcHQoJm51bGxf aGFuZGxlciwgJnApOwo+Cj4gLi4uIHVzaW5nIGEgY29uZGl0aW9uYWwgZXhwcmVzc2lvbiBmb3Ig dGhlIGZpcnN0IGZ1bmN0aW9uIGFyZ3VtZW50Lgo+Ck9LLiBJIHByZWZlciB0byBhZGQgdGhlIHVu bGlrZWx5KCkuCgo+IEFuZCB0aGUgY29tbWVudCBhaGVhZCBvZiB0aGUgaWYoKSBub3cgYWxzbyBu ZWVkcyBhZGp1c3RtZW50Cj4gKHBlcmhhcHMgeW91IHdhbnQgdG8gbWVyZ2UgdGhlIG9uZSB5b3Ug YWRkIGludG8gdGhhdCBvbmUpLgo+CgpPSy4gQW5kIElJVUMsIHlvdSBtZWFuIG1lcmdlIHRvIHRo ZSBvcmlnaW5hbCBjb21tZW50cyBhYm92ZSB0aGUgImlmICghcykiPwpMaWtlIHRoaXM6CiAgICAg ICAgIC8qCiAgICAgICAgICAqIEZvciBwMm1faW9yZXFfc2VydmVyIHBhZ2VzIGFjY2Vzc2VkIHdp dGggcmVhZC1tb2RpZnktd3JpdGUKICAgICAgICAgICogaW5zdHJ1Y3Rpb25zLCB3ZSBwcm92aWRl IGEgcmVhZCBoYW5kbGVyIHRvIGNvcHkgdGhlIGRhdGEgdG8KICAgICAgICAgICogdGhlIGJ1ZmZl ci4gRm9yIG90aGVyIGNhc2VzLCBpZiB0aGVyZSBpcyBubyBzdWl0YWJsZSBiYWNraW5nCiAgICAg ICAgICAqIERNLCB3ZSBqdXN0IGlnbm9yZSBhY2Nlc3Nlcy4KICAgICAgICAgICovCiAgICAgICAg IGlmICggIXMgKQoKPiBKYW4KPgoKVGhhbmtzCll1CgpfX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fXwpYZW4tZGV2ZWwgbWFpbGluZyBsaXN0Clhlbi1kZXZlbEBs aXN0cy54ZW4ub3JnCmh0dHBzOi8vbGlzdHMueGVuLm9yZy94ZW4tZGV2ZWwK