From mboxrd@z Thu Jan 1 00:00:00 1970 From: "Jianzhong,Chang" Subject: [PATCH v3] xen_pt: fix failure of attaching & detaching a PCI device to VM repeatedly. Date: Wed, 9 Mar 2016 18:24:35 +0800 Message-ID: <1457519075-10658-1-git-send-email-jianzhongx.chang__9026.52594163573$1457519608$gmane$org@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xen.org Sender: "Xen-devel" To: stefano.stabellini@eu.citrix.com, qemu-devel@nongnu.org, pbonzini@redhat.com, xen-devel@lists.xen.org, konrad.wilk@oracle.com Cc: "Jianzhong,Chang" List-Id: xen-devel@lists.xenproject.org IEFkZCBwY2kgPSBbICckVkZfQkRGMScsICckVkZfQkRGMicsICckVkZfQkRGMyddIGluIGh2bSBn dWVzdCBjb25maWd1cmF0aW9uIGZpbGUuCiBBZnRlciB0aGUgZ3Vlc3QgYm9vdCB1cCwgZGV0YWNo IHRoZSBWRnMgaW4gc2VxdWVuY2UgYnkKICAieGwgcGNpLWRldGFjaCAkRE9NSUQgJFZGX0JERjEi CiAgInhsIHBjaS1kZXRhY2ggJERPTUlEICRWRl9CREYyIgogICJ4bCBwY2ktZGV0YWNoICRET01J RCAkVkZfQkRGMyIKIGFuZCByZWF0dGFjaCB0aGUgVkZzIGluIHNlcXVlbmNlIGJ5CiAgInhsIHBj aS1hdHRhY2ggJERPTUlEICRWRl9CREYxIgogICJ4bCBwY2ktYXR0YWNoICRET01JRCAkVkZfQkRG MiIKICAieGwgcGNpLWF0dGFjaCAkRE9NSUQgJFZGX0JERjMiCiBBbiBlcnJvciBtZXNzYWdlIHdp bGwgYmUgcmVwb3J0ZWQgbGlrZSB0aGlzOgogImxpYnhsOiBlcnJvcjogbGlieGxfcW1wLmM6Mjg3 OnFtcF9oYW5kbGVfZXJyb3JfcmVzcG9uc2U6CiByZWNlaXZlZCBhbiBlcnJvciBtZXNzYWdlIGZy b20gUU1QIHNlcnZlcjoKIER1cGxpY2F0ZSBJRCAncGNpLXB0LTA3XzEwLjEnIGZvciBkZXZpY2Ui CgpXaGVuIHhlbl9wdF9yZWdpb25fYWRkL2RlbCgpIGlzIGNhbGxlZCwKTWVtb3J5UmVnaW9uIG1h eSBub3QgYmVsb25nIHRvIHRoZSBYZW5QQ0lQYXNzdGhyb3VnaFN0YXRlLgp4ZW5fcHRfcmVnaW9u X3VwZGF0ZSgpIGNoZWNrcyBpdCBidXQgbWVtb3J5X3JlZ2lvbl9yZWYvdW5yZWYoKSBkb2VzIG5v dC4KVGhpcyBjYXNlIGNhdXNlcyBvYmotPnJlZiBpc3N1ZSBhbmQgYWZmZWN0cyB0aGUgcmVsZWFz ZSBvZiByZWxhdGVkIG9iamVjdHMuClNvLCBtZW1vcnlfcmVnaW9uX3JlZi91bnJlZigpIGlzIG1v dmVkIGYKcm9tIHhlbl9wdF9yZWdpb25fYWRkL2RlbCB0byB4ZW5fcHRfcmVnaW9uX3VwZGF0ZS4K ClNpZ25lZC1vZmYtYnk6IEppYW56aG9uZyxDaGFuZyA8amlhbnpob25neC5jaGFuZ0BpbnRlbC5j b20+Ci0tLQogaHcveGVuL3hlbl9wdC5jIHwgICAxNiArKysrKysrKysrKy0tLS0tCiAxIGZpbGVz IGNoYW5nZWQsIDExIGluc2VydGlvbnMoKyksIDUgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEv aHcveGVuL3hlbl9wdC5jIGIvaHcveGVuL3hlbl9wdC5jCmluZGV4IGFhOTYyODguLjZiNzJlZGUg MTAwNjQ0Ci0tLSBhL2h3L3hlbi94ZW5fcHQuYworKysgYi9ody94ZW4veGVuX3B0LmMKQEAgLTU5 MSwxMiArNTkxLDE2IEBAIHN0YXRpYyB2b2lkIHhlbl9wdF9yZWdpb25fdXBkYXRlKFhlblBDSVBh c3N0aHJvdWdoU3RhdGUgKnMsCiAgICAgICAgIHJldHVybjsKICAgICB9CiAKKyAgICBpZiAoYWRk aW5nKSB7CisgICAgICAgIG1lbW9yeV9yZWdpb25fcmVmKHNlYy0+bXIpOworICAgIH0KKwogICAg IGlmIChzLT5tc2l4ICYmICZzLT5tc2l4LT5tbWlvID09IG1yKSB7CiAgICAgICAgIGlmIChhZGRp bmcpIHsKICAgICAgICAgICAgIHMtPm1zaXgtPm1taW9fYmFzZV9hZGRyID0gc2VjLT5vZmZzZXRf d2l0aGluX2FkZHJlc3Nfc3BhY2U7CiAgICAgICAgICAgICByYyA9IHhlbl9wdF9tc2l4X3VwZGF0 ZV9yZW1hcChzLCBzLT5tc2l4LT5iYXJfaW5kZXgpOwogICAgICAgICB9Ci0gICAgICAgIHJldHVy bjsKKyAgICAgICAgZ290byBvdXQ7CiAgICAgfQogCiAgICAgYXJncy50eXBlID0gZC0+aW9fcmVn aW9uc1tiYXJdLnR5cGU7CkBAIC02MzUsNiArNjM5LDEyIEBAIHN0YXRpYyB2b2lkIHhlbl9wdF9y ZWdpb25fdXBkYXRlKFhlblBDSVBhc3N0aHJvdWdoU3RhdGUgKnMsCiAgICAgICAgICAgICAgICAg ICAgICAgIGFkZGluZyA/ICJjcmVhdGUgbmV3IiA6ICJyZW1vdmUgb2xkIiwgZXJybm8pOwogICAg ICAgICB9CiAgICAgfQorCitvdXQ6CisgICAgaWYgKCFhZGRpbmcpIHsKKyAgICAgICAgbWVtb3J5 X3JlZ2lvbl91bnJlZihtcik7CisgICAgfQorCiB9CiAKIHN0YXRpYyB2b2lkIHhlbl9wdF9yZWdp b25fYWRkKE1lbW9yeUxpc3RlbmVyICpsLCBNZW1vcnlSZWdpb25TZWN0aW9uICpzZWMpCkBAIC02 NDIsNyArNjUyLDYgQEAgc3RhdGljIHZvaWQgeGVuX3B0X3JlZ2lvbl9hZGQoTWVtb3J5TGlzdGVu ZXIgKmwsIE1lbW9yeVJlZ2lvblNlY3Rpb24gKnNlYykKICAgICBYZW5QQ0lQYXNzdGhyb3VnaFN0 YXRlICpzID0gY29udGFpbmVyX29mKGwsIFhlblBDSVBhc3N0aHJvdWdoU3RhdGUsCiAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtZW1vcnlfbGlzdGVuZXIpOwog Ci0gICAgbWVtb3J5X3JlZ2lvbl9yZWYoc2VjLT5tcik7CiAgICAgeGVuX3B0X3JlZ2lvbl91cGRh dGUocywgc2VjLCB0cnVlKTsKIH0KIApAQCAtNjUyLDcgKzY2MSw2IEBAIHN0YXRpYyB2b2lkIHhl bl9wdF9yZWdpb25fZGVsKE1lbW9yeUxpc3RlbmVyICpsLCBNZW1vcnlSZWdpb25TZWN0aW9uICpz ZWMpCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtZW1vcnlf bGlzdGVuZXIpOwogCiAgICAgeGVuX3B0X3JlZ2lvbl91cGRhdGUocywgc2VjLCBmYWxzZSk7Ci0g ICAgbWVtb3J5X3JlZ2lvbl91bnJlZihzZWMtPm1yKTsKIH0KIAogc3RhdGljIHZvaWQgeGVuX3B0 X2lvX3JlZ2lvbl9hZGQoTWVtb3J5TGlzdGVuZXIgKmwsIE1lbW9yeVJlZ2lvblNlY3Rpb24gKnNl YykKQEAgLTY2MCw3ICs2NjgsNiBAQCBzdGF0aWMgdm9pZCB4ZW5fcHRfaW9fcmVnaW9uX2FkZChN ZW1vcnlMaXN0ZW5lciAqbCwgTWVtb3J5UmVnaW9uU2VjdGlvbiAqc2VjKQogICAgIFhlblBDSVBh c3N0aHJvdWdoU3RhdGUgKnMgPSBjb250YWluZXJfb2YobCwgWGVuUENJUGFzc3Rocm91Z2hTdGF0 ZSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlvX2xpc3Rl bmVyKTsKIAotICAgIG1lbW9yeV9yZWdpb25fcmVmKHNlYy0+bXIpOwogICAgIHhlbl9wdF9yZWdp b25fdXBkYXRlKHMsIHNlYywgdHJ1ZSk7CiB9CiAKQEAgLTY3MCw3ICs2NzcsNiBAQCBzdGF0aWMg dm9pZCB4ZW5fcHRfaW9fcmVnaW9uX2RlbChNZW1vcnlMaXN0ZW5lciAqbCwgTWVtb3J5UmVnaW9u U2VjdGlvbiAqc2VjKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgaW9fbGlzdGVuZXIpOwogCiAgICAgeGVuX3B0X3JlZ2lvbl91cGRhdGUocywgc2VjLCBmYWxz ZSk7Ci0gICAgbWVtb3J5X3JlZ2lvbl91bnJlZihzZWMtPm1yKTsKIH0KIAogc3RhdGljIGNvbnN0 IE1lbW9yeUxpc3RlbmVyIHhlbl9wdF9tZW1vcnlfbGlzdGVuZXIgPSB7Ci0tIAoxLjcuMQoKCl9f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fClhlbi1kZXZlbCBt YWlsaW5nIGxpc3QKWGVuLWRldmVsQGxpc3RzLnhlbi5vcmcKaHR0cDovL2xpc3RzLnhlbi5vcmcv eGVuLWRldmVsCg==