From mboxrd@z Thu Jan 1 00:00:00 1970 From: =?UTF-8?q?Marek=20Marczykowski-G=C3=B3recki?= Subject: [PATCH] libxl: trigger attach events for devices attached before xl devd startup Date: Sun, 10 Jul 2016 19:35:47 +0200 Message-ID: <1468172147-8702-1-git-send-email-marmarek@invisiblethingslab.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: xen-devel@lists.xen.org Cc: Wei Liu , Ian Jackson , =?UTF-8?q?Marek=20Marczykowski-G=C3=B3recki?= List-Id: xen-devel@lists.xenproject.org V2hlbiB0aGlzIGRhZW1vbiBpcyBzdGFydGVkIGFmdGVyIGNyZWF0aW5nIGJhY2tlbmQgZGV2aWNl LCB0aGF0IGRldmljZQp3aWxsIG5vdCBiZSBjb25maWd1cmVkLgoKUmFjeSBzaXR1YXRpb246CjEu IGRyaXZlciBkb21haW4gaXMgc3RhcnRlZAoyLiBmcm9udGVuZCBkb21haW4gaXMgc3RhcnRlZCAo anVzdCBhZnRlciBraWNraW5nIGRyaXZlciBkb21haW4gb2ZmKQozLiBkZXZpY2UgaW4gZnJvbnRl bmQgZG9tYWluIGlzIGNvbm5lY3RlZCB0byB0aGUgYmFja2VuZCAoYXMgc3BlY2lmaWVkCiAgIGlu IGZyb250ZW5kIGRvbWFpbiBjb25maWd1cmF0aW9uKQo0LiB4bCBkZXZkIGlzIHN0YXJ0ZWQgaW4g ZHJpdmVyIGRvbWFpbgoKRW5kIHJlc3VsdCBpcyB0aGF0IGJhY2tlbmQgZGV2aWNlIGluIGRyaXZl ciBkb21haW4gaXMgbm90IGNvbmZpZ3VyZWQKKGxpa2UgbmV0d29yayBpbnRlcmZhY2UgaXMgbm90 IGVuYWJsZWQpLCBzbyB0aGUgZGV2aWNlIGRvZXNuJ3Qgd29yay4KCkZpeCB0aGlzIGJ5IGFydGlm aWNhbGx5IHRyaWdnZXJpbmcgZXZlbnRzIGZvciBkZXZpY2VzIGFscmVhZHkgcHJlc2VudCBpbgp4 ZW5zdG9yZSBiZWZvcmUgeGwgZGV2ZCBpcyBzdGFydGVkLiBEbyB0aGlzIG9ubHkgYWZ0ZXIgeGVu c3RvcmUgd2F0Y2ggaXMKYWxyZWFkeSByZWdpc3RlcmVkLCBhbmQgb25seSBmb3IgZGV2aWNlcyBu b3QgYWxyZWFkeSBpbml0aWFsaXplZCAoaW4KWGVuYnVzU3RhdGVJbml0V2FpdCBzdGF0ZSkuCgpD YzogSWFuIEphY2tzb24gPGlhbi5qYWNrc29uQGV1LmNpdHJpeC5jb20+CkNjOiBXZWkgTGl1IDx3 ZWkubGl1MkBjaXRyaXguY29tPgpTaWduZWQtb2ZmLWJ5OiBNYXJlayBNYXJjenlrb3dza2ktR8Oz cmVja2kgPG1hcm1hcmVrQGludmlzaWJsZXRoaW5nc2xhYi5jb20+Ci0tLQogdG9vbHMvbGlieGwv bGlieGwuYyB8IDQwICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysKIDEg ZmlsZSBjaGFuZ2VkLCA0MCBpbnNlcnRpb25zKCspCgpkaWZmIC0tZ2l0IGEvdG9vbHMvbGlieGwv bGlieGwuYyBiL3Rvb2xzL2xpYnhsL2xpYnhsLmMKaW5kZXggMWM4MTIzOS4uOTk4MTVhNyAxMDA2 NDQKLS0tIGEvdG9vbHMvbGlieGwvbGlieGwuYworKysgYi90b29scy9saWJ4bC9saWJ4bC5jCkBA IC00NzQzLDggKzQ3NDMsMTYgQEAgaW50IGxpYnhsX2RldmljZV9ldmVudHNfaGFuZGxlcihsaWJ4 bF9jdHggKmN0eCwKICAgICB1aW50MzJfdCBkb21pZDsKICAgICBsaWJ4bF9fZGRvbWFpbiBkZG9t YWluOwogICAgIGNoYXIgKmJlX3BhdGg7CisgICAgY2hhciAqKmtpbmRzID0gTlVMTCwgKipkb21h aW5zID0gTlVMTCwgKipkZXZzID0gTlVMTDsKKyAgICBjb25zdCBjaGFyICpzc3RhdGU7CisgICAg Y2hhciAqc3RhdGVfcGF0aDsKKyAgICBpbnQgc3RhdGU7CisgICAgdW5zaWduZWQgaW50IG5raW5k cywgbmRvbWFpbnMsIG5kZXZzOworICAgIGludCBpLCBqLCBrOworICAgIHhzX3RyYW5zYWN0aW9u X3QgdDsKIAogICAgIGRkb21haW4uYW8gPSBhbzsKKyAgICBGSUxMWkVSTyhkZG9tYWluLndhdGNo KTsKICAgICBMSUJYTF9TTElTVF9JTklUKCZkZG9tYWluLmd1ZXN0cyk7CiAKICAgICByYyA9IGxp YnhsX19nZXRfZG9taWQoZ2MsICZkb21pZCk7CkBAIC00NzYyLDkgKzQ3NzAsNDEgQEAgaW50IGxp YnhsX2RldmljZV9ldmVudHNfaGFuZGxlcihsaWJ4bF9jdHggKmN0eCwKICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIGJlX3BhdGgpOwogICAgIGlmIChyYykgZ290byBvdXQ7CiAK KyAgICByYyA9IGxpYnhsX194c190cmFuc2FjdGlvbl9zdGFydChnYywgJnQpOworICAgIGlmIChy YykgZ290byBvdXQ7CisgICAga2luZHMgPSBsaWJ4bF9feHNfZGlyZWN0b3J5KGdjLCB0LCBiZV9w YXRoLCAmbmtpbmRzKTsKKyAgICBpZiAoa2luZHMpIHsKKyAgICAgICAgZm9yIChpID0gMDsgaSA8 IG5raW5kczsgaSsrKSB7CisgICAgICAgICAgICBkb21haW5zID0gbGlieGxfX3hzX2RpcmVjdG9y eShnYywgdCwKKyAgICAgICAgICAgICAgICAgICAgR0NTUFJJTlRGKCIlcy8lcyIsIGJlX3BhdGgs IGtpbmRzW2ldKSwgJm5kb21haW5zKTsKKyAgICAgICAgICAgIGlmICghZG9tYWlucykKKyAgICAg ICAgICAgICAgICBjb250aW51ZTsKKyAgICAgICAgICAgIGZvciAoaiA9IDA7IGogPCBuZG9tYWlu czsgaisrKSB7CisgICAgICAgICAgICAgICAgZGV2cyA9IGxpYnhsX194c19kaXJlY3RvcnkoZ2Ms IHQsCisgICAgICAgICAgICAgICAgICAgICAgICBHQ1NQUklOVEYoIiVzLyVzLyVzIiwgYmVfcGF0 aCwga2luZHNbaV0sIGRvbWFpbnNbal0pLCAmbmRldnMpOworICAgICAgICAgICAgICAgIGlmICgh ZGV2cykKKyAgICAgICAgICAgICAgICAgICAgY29udGludWU7CisgICAgICAgICAgICAgICAgZm9y IChrID0gMDsgayA8IG5kZXZzOyBrKyspIHsKKyAgICAgICAgICAgICAgICAgICAgc3RhdGVfcGF0 aCA9IEdDU1BSSU5URigiJXMvJXMvJXMvJXMvc3RhdGUiLAorICAgICAgICAgICAgICAgICAgICAg ICAgICAgIGJlX3BhdGgsIGtpbmRzW2ldLCBkb21haW5zW2pdLCBkZXZzW2tdKTsKKyAgICAgICAg ICAgICAgICAgICAgcmMgPSBsaWJ4bF9feHNfcmVhZF9jaGVja2VkKGdjLCB0LCBzdGF0ZV9wYXRo LCAmc3N0YXRlKTsKKyAgICAgICAgICAgICAgICAgICAgaWYgKHJjKQorICAgICAgICAgICAgICAg ICAgICAgICAgY29udGludWU7CisgICAgICAgICAgICAgICAgICAgIHN0YXRlID0gYXRvaShzc3Rh dGUpOworICAgICAgICAgICAgICAgICAgICBpZiAoc3RhdGUgPT0gWGVuYnVzU3RhdGVJbml0V2Fp dCkKKyAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tlbmRfd2F0Y2hfY2FsbGJhY2soZWdjLCAm ZGRvbWFpbi53YXRjaCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYmVfcGF0aCwg c3RhdGVfcGF0aCk7CisgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgfQorICAgICAgICB9 CisgICAgfQorCisgICAgbGlieGxfX3hzX3RyYW5zYWN0aW9uX2Fib3J0KGdjLCAmdCk7CisKICAg ICByZXR1cm4gQU9fSU5QUk9HUkVTUzsKIAogb3V0OgorICAgIGxpYnhsX19ldl94c3dhdGNoX2Rl cmVnaXN0ZXIoZ2MsICZkZG9tYWluLndhdGNoKTsKICAgICByZXR1cm4gQU9fQ1JFQVRFX0ZBSUwo cmMpOwogfQogCi0tIAoyLjUuNQoKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fClhlbi1kZXZlbCBtYWlsaW5nIGxpc3QKWGVuLWRldmVsQGxpc3RzLnhlbi5v cmcKaHR0cHM6Ly9saXN0cy54ZW4ub3JnL3hlbi1kZXZlbAo=