From mboxrd@z Thu Jan 1 00:00:00 1970 From: "Yang, Xiaowei" Subject: Re: [PATCH] VT-d: IOTLB flush fixups Date: Thu, 29 May 2008 12:13:31 +0800 Message-ID: <1212034412.4871.6.camel@ip6-localhost> References: <1211950777.17461.0.camel@ip6-localhost> <1211965013.16052.16.camel@ip6-localhost> <18493.29570.845303.113043@gargle.gargle.HOWL> Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="=-jpUC2F+AYIqMLwbFLeC2" Return-path: In-Reply-To: <18493.29570.845303.113043@gargle.gargle.HOWL> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Sender: xen-devel-bounces@lists.xensource.com Errors-To: xen-devel-bounces@lists.xensource.com To: Espen Skoglund Cc: xen-devel@lists.xensource.com List-Id: xen-devel@lists.xenproject.org --=-jpUC2F+AYIqMLwbFLeC2 Content-Type: text/plain Content-Transfer-Encoding: 7bit On Wed, 2008-05-28 at 23:00 +0800, Espen Skoglund wrote: > Oh, right. When flushing a non-present cached entry domid 0 must be > used. Here's a modification of your patch: > > - Made the non-present flush testing a bit simpler. > - Removed dma_addr_level_page_maddr(). Use a modified > addr_to_dma_page_maddr() instead. Yes, it's simpler. Thanks! However, you forgot spin_unlock before return. so it leads to deadlock. Here's a small fix. > - Upon mapping new context entry: flush old entry using domid 0 and > always flush iotlb. Actually, you may find before/after your modification, the code are the same functionally. We can pass domid=0 or non_present_entry_flush=1 to flush non present tlb. Thanks, Xiaowei > --=-jpUC2F+AYIqMLwbFLeC2 Content-Disposition: attachment; filename=spin.patch Content-Type: text/x-patch; name=spin.patch; charset=UTF-8 Content-Transfer-Encoding: base64 ZGlmZiAtciBmNjgxYzRkZTkxZmMgeGVuL2RyaXZlcnMvcGFzc3Rocm91Z2gvdnRkL2lvbW11LmMN Ci0tLSBhL3hlbi9kcml2ZXJzL3Bhc3N0aHJvdWdoL3Z0ZC9pb21tdS5jCVdlZCBNYXkgMjggMTY6 MTQ6MTAgMjAwOCArMDEwMA0KKysrIGIveGVuL2RyaXZlcnMvcGFzc3Rocm91Z2gvdnRkL2lvbW11 LmMJVGh1IE1heSAyOSAwMzo0ODozMyAyMDA4ICswODAwDQpAQCAtMjEyLDEwICsyMTIsMTAgQEAg c3RhdGljIHU2NCBhZGRyX3RvX2RtYV9wYWdlX21hZGRyKHN0cnVjdA0KICAgICBpZiAoIGhkLT5w Z2RfbWFkZHIgPT0gMCApDQogICAgIHsNCiAgICAgICAgIGlmICggIWFsbG9jICkNCi0gICAgICAg ICAgICByZXR1cm4gMDsNCisgICAgICAgICAgICBnb3RvIG91dDsNCiAgICAgICAgIGhkLT5wZ2Rf bWFkZHIgPSBhbGxvY19wZ3RhYmxlX21hZGRyKCk7DQogICAgICAgICBpZiAoIGhkLT5wZ2RfbWFk ZHIgPT0gMCApDQotICAgICAgICAgICAgcmV0dXJuIDA7DQorICAgICAgICAgICAgZ290byBvdXQ7 DQogICAgIH0NCiANCiAgICAgcGFyZW50ID0gKHN0cnVjdCBkbWFfcHRlICopbWFwX3Z0ZF9kb21h aW5fcGFnZShoZC0+cGdkX21hZGRyKTsNCkBAIC0yNjMsNiArMjYzLDcgQEAgc3RhdGljIHU2NCBh ZGRyX3RvX2RtYV9wYWdlX21hZGRyKHN0cnVjdA0KICAgICB9DQogDQogICAgIHVubWFwX3Z0ZF9k b21haW5fcGFnZShwYXJlbnQpOw0KKyBvdXQ6DQogICAgIHNwaW5fdW5sb2NrX2lycXJlc3RvcmUo JmhkLT5tYXBwaW5nX2xvY2ssIGZsYWdzKTsNCiAgICAgcmV0dXJuIHB0ZV9tYWRkcjsNCiB9DQo= --=-jpUC2F+AYIqMLwbFLeC2 Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Disposition: inline _______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel --=-jpUC2F+AYIqMLwbFLeC2--