From mboxrd@z Thu Jan 1 00:00:00 1970 From: Juergen Gross Subject: [PATCH 3/3] libxl: refactor domcreate_attach_dtdev() to use device type framework Date: Tue, 21 Jun 2016 16:24:51 +0200 Message-ID: <1466519091-29348-4-git-send-email-jgross@suse.com> References: <1466519091-29348-1-git-send-email-jgross@suse.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <1466519091-29348-1-git-send-email-jgross@suse.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xen.org Sender: "Xen-devel" To: xen-devel@lists.xen.org Cc: Juergen Gross , wei.liu2@citrix.com, ian.jackson@eu.citrix.com List-Id: xen-devel@lists.xenproject.org U2lnbmVkLW9mZi1ieTogSnVlcmdlbiBHcm9zcyA8amdyb3NzQHN1c2UuY29tPgotLS0KIHRvb2xz L2xpYnhsL2xpYnhsX2NyZWF0ZS5jIHwgNzIgKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLQogMSBmaWxlIGNoYW5nZWQsIDM1IGluc2VydGlvbnMoKyksIDM3IGRl bGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3Rvb2xzL2xpYnhsL2xpYnhsX2NyZWF0ZS5jIGIvdG9v bHMvbGlieGwvbGlieGxfY3JlYXRlLmMKaW5kZXggYzRlODVmMC4uZTkzYjg4MCAxMDA2NDQKLS0t IGEvdG9vbHMvbGlieGwvbGlieGxfY3JlYXRlLmMKKysrIGIvdG9vbHMvbGlieGwvbGlieGxfY3Jl YXRlLmMKQEAgLTc0Miw5ICs3NDIsNiBAQCBzdGF0aWMgdm9pZCBkb21jcmVhdGVfYm9vdGxvYWRl cl9kb25lKGxpYnhsX19lZ2MgKmVnYywKIHN0YXRpYyB2b2lkIGRvbWNyZWF0ZV9sYXVuY2hfZG0o bGlieGxfX2VnYyAqZWdjLCBsaWJ4bF9fbXVsdGlkZXYgKmFvZGV2cywKICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgaW50IHJldCk7CiAKLXN0YXRpYyB2b2lkIGRvbWNyZWF0ZV9hdHRh Y2hfZHRkZXYobGlieGxfX2VnYyAqZWdjLCBsaWJ4bF9fbXVsdGlkZXYgKm11bHRpZGV2LAotICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgcmV0KTsKLQogc3RhdGljIHZvaWQg ZG9tY3JlYXRlX2NvbnNvbGVfYXZhaWxhYmxlKGxpYnhsX19lZ2MgKmVnYywKICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsaWJ4bF9fZG9tYWluX2NyZWF0ZV9zdGF0ZSAq ZGNzKTsKIApAQCAtMTM5OSwxMiArMTM5Niw0MyBAQCBzdGF0aWMgdm9pZCBkb21jcmVhdGVfbGF1 bmNoX2RtKGxpYnhsX19lZ2MgKmVnYywgbGlieGxfX211bHRpZGV2ICptdWx0aWRldiwKICAgICBk b21jcmVhdGVfY29tcGxldGUoZWdjLCBkY3MsIHJldCk7CiB9CiAKK3N0YXRpYyB2b2lkIGxpYnhs X19hZGRfZHRkZXZzKGxpYnhsX19lZ2MgKmVnYywgbGlieGxfX2FvICphbywgdWludDMyX3QgZG9t aWQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsaWJ4bF9kb21haW5fY29uZmlnICpk X2NvbmZpZywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxpYnhsX19tdWx0aWRldiAq bXVsdGlkZXYpCit7CisgICAgQU9fR0M7CisgICAgbGlieGxfX2FvX2RldmljZSAqYW9kZXYgPSBs aWJ4bF9fbXVsdGlkZXZfcHJlcGFyZShtdWx0aWRldik7CisgICAgaW50IGksIHJjID0gMDsKKwor ICAgIGZvciAoaSA9IDA7IGkgPCBkX2NvbmZpZy0+bnVtX2R0ZGV2czsgaSsrKSB7CisgICAgICAg IGNvbnN0IGxpYnhsX2RldmljZV9kdGRldiAqZHRkZXYgPSAmZF9jb25maWctPmR0ZGV2c1tpXTsK KworICAgICAgICBMT0coREVCVUcsICJBc3NpZ24gZGV2aWNlIFwiJXNcIiB0byBkb20ldSIsIGR0 ZGV2LT5wYXRoLCBkb21pZCk7CisgICAgICAgIHJjID0geGNfYXNzaWduX2R0X2RldmljZShDVFgt PnhjaCwgZG9taWQsIGR0ZGV2LT5wYXRoKTsKKyAgICAgICAgaWYgKHJjIDwgMCkgeworICAgICAg ICAgICAgTE9HKEVSUk9SLCAieGNfYXNzaWduX2R0ZGV2aWNlIGZhaWxlZDogJWQiLCByYyk7Cisg ICAgICAgICAgICBnb3RvIG91dDsKKyAgICAgICAgfQorICAgIH0KKworb3V0OgorICAgIGFvZGV2 LT5yYyA9IHJjOworICAgIGFvZGV2LT5jYWxsYmFjayhlZ2MsIGFvZGV2KTsKK30KKworc3RhdGlj IHN0cnVjdCBsaWJ4bF9kZXZpY2VfdHlwZSBsaWJ4bF9fZHRkZXZfZGV2dHlwZSA9IHsKKyAgICAu dHlwZSAgICAgICA9ICJkdGRldiIsCisgICAgLm51bV9vZmZzZXQgPSBvZmZzZXRvZihsaWJ4bF9k b21haW5fY29uZmlnLCBudW1fZHRkZXZzKSwKKyAgICAuYWRkICAgICAgICA9IGxpYnhsX19hZGRf ZHRkZXZzLAorfTsKKwogc3RhdGljIHN0cnVjdCBsaWJ4bF9kZXZpY2VfdHlwZSAqZGV2aWNlX3R5 cGVfdGJsW10gPSB7CiAgICAgJmxpYnhsX19uaWNfZGV2dHlwZSwKICAgICAmbGlieGxfX3Z0cG1f ZGV2dHlwZSwKICAgICAmbGlieGxfX3VzYmN0cmxfZGV2dHlwZSwKICAgICAmbGlieGxfX3VzYmRl dl9kZXZ0eXBlLAogICAgICZsaWJ4bF9fcGNpX2RldnR5cGUsCisgICAgJmxpYnhsX19kdGRldl9k ZXZ0eXBlLAogfTsKIAogc3RhdGljIHZvaWQgZG9tY3JlYXRlX2F0dGFjaF9kZXZpY2VzKGxpYnhs X19lZ2MgKmVnYywKQEAgLTE0MzksNyArMTQ2NywxMCBAQCBzdGF0aWMgdm9pZCBkb21jcmVhdGVf YXR0YWNoX2RldmljZXMobGlieGxfX2VnYyAqZWdjLAogICAgICAgICByZXR1cm47CiAgICAgfQog Ci0gICAgZG9tY3JlYXRlX2F0dGFjaF9kdGRldihlZ2MsIG11bHRpZGV2LCAwKTsKKyAgICBkb21j cmVhdGVfY29uc29sZV9hdmFpbGFibGUoZWdjLCBkY3MpOworCisgICAgZG9tY3JlYXRlX2NvbXBs ZXRlKGVnYywgZGNzLCAwKTsKKwogICAgIHJldHVybjsKIAogZXJyb3Jfb3V0OgpAQCAtMTQ3OSwz OSArMTUxMCw2IEBAIGVycm9yX291dDoKICAgICBkb21jcmVhdGVfY29tcGxldGUoZWdjLCBkY3Ms IHJldCk7CiB9CiAKLXN0YXRpYyB2b2lkIGRvbWNyZWF0ZV9hdHRhY2hfZHRkZXYobGlieGxfX2Vn YyAqZWdjLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsaWJ4bF9fbXVsdGlk ZXYgKm11bHRpZGV2LAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgcmV0 KQotewotICAgIGxpYnhsX19kb21haW5fY3JlYXRlX3N0YXRlICpkY3MgPSBDT05UQUlORVJfT0Yo bXVsdGlkZXYsICpkY3MsIG11bHRpZGV2KTsKLSAgICBTVEFURV9BT19HQyhkY3MtPmFvKTsKLSAg ICBpbnQgaTsKLSAgICBpbnQgZG9taWQgPSBkY3MtPmd1ZXN0X2RvbWlkOwotCi0gICAgLyogY29u dmVuaWVuY2UgYWxpYXNlcyAqLwotICAgIGxpYnhsX2RvbWFpbl9jb25maWcgKmNvbnN0IGRfY29u ZmlnID0gZGNzLT5ndWVzdF9jb25maWc7Ci0KLSAgICBmb3IgKGkgPSAwOyBpIDwgZF9jb25maWct Pm51bV9kdGRldnM7IGkrKykgewotICAgICAgICBjb25zdCBsaWJ4bF9kZXZpY2VfZHRkZXYgKmR0 ZGV2ID0gJmRfY29uZmlnLT5kdGRldnNbaV07Ci0KLSAgICAgICAgTE9HKERFQlVHLCAiQXNzaWdu IGRldmljZSBcIiVzXCIgdG8gZG9tJXUiLCBkdGRldi0+cGF0aCwgZG9taWQpOwotICAgICAgICBy ZXQgPSB4Y19hc3NpZ25fZHRfZGV2aWNlKENUWC0+eGNoLCBkb21pZCwgZHRkZXYtPnBhdGgpOwot ICAgICAgICBpZiAocmV0IDwgMCkgewotICAgICAgICAgICAgTE9HKEVSUk9SLCAieGNfYXNzaWdu X2R0ZGV2aWNlIGZhaWxlZDogJWQiLCByZXQpOwotICAgICAgICAgICAgZ290byBlcnJvcl9vdXQ7 Ci0gICAgICAgIH0KLSAgICB9Ci0KLSAgICBkb21jcmVhdGVfY29uc29sZV9hdmFpbGFibGUoZWdj LCBkY3MpOwotCi0gICAgZG9tY3JlYXRlX2NvbXBsZXRlKGVnYywgZGNzLCAwKTsKLSAgICByZXR1 cm47Ci0KLWVycm9yX291dDoKLSAgICBhc3NlcnQocmV0KTsKLSAgICBkb21jcmVhdGVfY29tcGxl dGUoZWdjLCBkY3MsIHJldCk7Ci19Ci0KIHN0YXRpYyB2b2lkIGRvbWNyZWF0ZV9jb21wbGV0ZShs aWJ4bF9fZWdjICplZ2MsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGlieGxfX2Rv bWFpbl9jcmVhdGVfc3RhdGUgKmRjcywKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBp bnQgcmMpCi0tIAoyLjYuNgoKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fClhlbi1kZXZlbCBtYWlsaW5nIGxpc3QKWGVuLWRldmVsQGxpc3RzLnhlbi5vcmcK aHR0cDovL2xpc3RzLnhlbi5vcmcveGVuLWRldmVsCg==