From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ian Campbell Subject: Re: [PATCH RFC 5/5] libxl/FreeBSD: add support for disk hotplug scripts Date: Wed, 17 Jun 2015 14:23:38 +0100 Message-ID: <1434547418.13744.380.camel@citrix.com> References: <1432286338-56077-1-git-send-email-roger.pau@citrix.com> <1432286338-56077-6-git-send-email-roger.pau@citrix.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mail6.bemta14.messagelabs.com ([193.109.254.103]) by lists.xen.org with esmtp (Exim 4.72) (envelope-from ) id 1Z5DJf-0000oe-3V for xen-devel@lists.xenproject.org; Wed, 17 Jun 2015 13:23:43 +0000 In-Reply-To: <1432286338-56077-6-git-send-email-roger.pau@citrix.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Sender: xen-devel-bounces@lists.xen.org Errors-To: xen-devel-bounces@lists.xen.org To: Roger Pau Monne Cc: xen-devel@lists.xenproject.org, Ian Jackson , Wei Liu List-Id: xen-devel@lists.xenproject.org T24gRnJpLCAyMDE1LTA1LTIyIGF0IDExOjE4ICswMjAwLCBSb2dlciBQYXUgTW9ubmUgd3JvdGU6 Cj4gQWxsb3cgRnJlZUJTRCB0byBleGVjdXRlIGhvdHBsdWcgc2NyaXB0cyB3aGVuIGF0dGFjaGlu ZyBkaXNrIGRldmljZXMuCj4gCj4gU2lnbmVkLW9mZi1ieTogUm9nZXIgUGF1IE1vbm7DqSA8cm9n ZXIucGF1QGNpdHJpeC5jb20+CgpUaGlzIGxvb2tzIHJhdGhlciBzaW1pbGFyIHRvIHRoZSBjb2Rl IGZvciBMaW51eCwgaXMgdGhlcmUgYW55IGNoYW5jZQp0aGV5IGNvdWxkIGJlIGNvbWJpbmVkIGlu dG8gb25lIG9yIG1vcmUgY29tbW9uIGhvdHBsdWdnZXIgcnVubmluZwp0aGluZ3M/Cgo+IENjOiBJ YW4gSmFja3NvbiA8aWFuLmphY2tzb25AZXUuY2l0cml4LmNvbT4KPiBDYzogSWFuIENhbXBiZWxs IDxpYW4uY2FtcGJlbGxAY2l0cml4LmNvbT4KPiBDYzogV2VpIExpdSA8d2VpLmxpdTJAY2l0cml4 LmNvbT4KPiAtLS0KPiAgdG9vbHMvbGlieGwvbGlieGxfZnJlZWJzZC5jIHwgMTE0ICsrKysrKysr KysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tCj4gIDEgZmlsZSBjaGFuZ2VkLCA4 MyBpbnNlcnRpb25zKCspLCAzMSBkZWxldGlvbnMoLSkKPiAKPiBkaWZmIC0tZ2l0IGEvdG9vbHMv bGlieGwvbGlieGxfZnJlZWJzZC5jIGIvdG9vbHMvbGlieGwvbGlieGxfZnJlZWJzZC5jCj4gaW5k ZXggNDdjMzM5MS4uNWZmMzM4OCAxMDA2NDQKPiAtLS0gYS90b29scy9saWJ4bC9saWJ4bF9mcmVl YnNkLmMKPiArKysgYi90b29scy9saWJ4bC9saWJ4bF9mcmVlYnNkLmMKPiBAQCAtNTksMTQgKzU5 LDM2IEBAIHN0YXRpYyBpbnQgbGlieGxfX2hvdHBsdWdfZW52X25pYyhsaWJ4bF9fZ2MgKmdjLCBs aWJ4bF9fZGV2aWNlICpkZXYsIGNoYXIgKioqZW52Cj4gICAgICByZXR1cm4gMDsKPiAgfQo+ICAK PiAtc3RhdGljIGludCBsaWJ4bF9faG90cGx1Z19uaWMobGlieGxfX2djICpnYywgbGlieGxfX2Rl dmljZSAqZGV2LCBjaGFyICoqKmFyZ3MsCj4gLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IGxpYnhsX19kZXZpY2VfYWN0aW9uIGFjdGlvbikKPiArc3RhdGljIGludCBsaWJ4bF9faG90cGx1 Z19uaWMobGlieGxfX2djICpnYywgbGlieGxfX2RldmljZSAqZGV2LAo+ICsgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICBjaGFyICoqKmFyZ3MsIGNoYXIgKioqZW52LAo+ICsgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICBsaWJ4bF9fZGV2aWNlX2FjdGlvbiBhY3Rpb24sCj4gKyAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIGludCBudW1fZXhlYykKPiAgewo+ICsgICAgbGlieGxf bmljX3R5cGUgbmljdHlwZTsKPiAgICAgIGNoYXIgKmJlX3BhdGggPSBsaWJ4bF9fZGV2aWNlX2Jh Y2tlbmRfcGF0aChnYywgZGV2KTsKPiAgICAgIGNoYXIgKnNjcmlwdDsKPiAtICAgIGludCBuciA9 IDAsIHJjID0gMCwgYXJyYXlzaXplID0gNDsKPiArICAgIGludCBuciA9IDAsIHJjOwo+ICAKPiAt ICAgIGFzc2VydChkZXYtPmJhY2tlbmRfa2luZCA9PSBMSUJYTF9fREVWSUNFX0tJTkRfVklGKTsK PiArICAgIHJjID0gbGlieGxfX25pY190eXBlKGdjLCBkZXYsICZuaWN0eXBlKTsKPiArICAgIGlm IChyYykgewo+ICsgICAgICAgIExPRyhFUlJPUiwgImVycm9yIHdoZW4gZmV0Y2hpbmcgbmljIHR5 cGUiKTsKPiArICAgICAgICByYyA9IEVSUk9SX0ZBSUw7Cj4gKyAgICAgICAgZ290byBvdXQ7Cj4g KyAgICB9Cj4gKwo+ICsgICAgLyoKPiArICAgICAqIEZvciBQViBkb21haW5zIG9ubHkgb25lIHBh c3MgaXMgbmVlZGVkIChiZWNhdXNlIHRoZXJlJ3Mgbm8gZW11bGF0ZWQKPiArICAgICAqIGludGVy ZmFjZSkuIEZvciBIVk0gZG9tYWlucyB0d28gcGFzc2VzIGFyZSBuZWVkZWQgaW4gb3JkZXIgdG8g YWRkCj4gKyAgICAgKiBib3RoIHRoZSBQViBhbmQgdGhlIHRhcCBpbnRlcmZhY2VzIHRvIHRoZSBi cmlkZ2UuCj4gKyAgICAgKi8KPiArICAgIGlmIChuaWN0eXBlID09IExJQlhMX05JQ19UWVBFX1ZJ RiAmJiBudW1fZXhlYyAhPSAwKSB7Cj4gKyAgICAgICAgcmMgPSAwOwo+ICsgICAgICAgIGdvdG8g b3V0Owo+ICsgICAgfQo+ICsKPiArICAgIHJjID0gbGlieGxfX2hvdHBsdWdfZW52X25pYyhnYywg ZGV2LCBlbnYsIG51bV9leGVjKTsKPiArICAgIGlmIChyYykKPiArICAgICAgICBnb3RvIG91dDsK PiAgCj4gICAgICBzY3JpcHQgPSBsaWJ4bF9feHNfcmVhZChnYywgWEJUX05VTEwsCj4gICAgICAg ICAgICAgICAgICAgICAgICAgICAgICBHQ1NQUklOVEYoIiVzLyVzIiwgYmVfcGF0aCwgInNjcmlw dCIpKTsKPiBAQCAtNzYsNTMgKzk4LDgzIEBAIHN0YXRpYyBpbnQgbGlieGxfX2hvdHBsdWdfbmlj KGxpYnhsX19nYyAqZ2MsIGxpYnhsX19kZXZpY2UgKmRldiwgY2hhciAqKiphcmdzLAo+ICAgICAg ICAgIGdvdG8gb3V0Owo+ICAgICAgfQo+ICAKPiArICAgIGNvbnN0IGludCBhcnJheXNpemUgPSA0 Owo+ICAgICAgR0NORVdfQVJSQVkoKmFyZ3MsIGFycmF5c2l6ZSk7Cj4gICAgICAoKmFyZ3MpW25y KytdID0gc2NyaXB0Owo+ICAgICAgKCphcmdzKVtucisrXSA9IGJlX3BhdGg7Cj4gLSAgICAoKmFy Z3MpW25yKytdID0gR0NTUFJJTlRGKCIlcyIsIGFjdGlvbiA9PSBMSUJYTF9fREVWSUNFX0FDVElP Tl9BREQgPwo+IC0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiYWRkIiA6ICJy ZW1vdmUiKTsKPiArICAgICgqYXJncylbbnIrK10gPSAoY2hhciAqKSBsaWJ4bF9fZGV2aWNlX2Fj dGlvbl90b19zdHJpbmcoYWN0aW9uKTsKPiAgICAgICgqYXJncylbbnIrK10gPSBOVUxMOwo+ICAg ICAgYXNzZXJ0KG5yID09IGFycmF5c2l6ZSk7Cj4gIAo+ICsgICAgcmMgPSAxOwo+ICsKPiAgb3V0 Ogo+ICAgICAgcmV0dXJuIHJjOwo+ICB9Cj4gIAo+ICtzdGF0aWMgaW50IGxpYnhsX19ob3RwbHVn X2Rpc2sobGlieGxfX2djICpnYywgbGlieGxfX2RldmljZSAqZGV2LAo+ICsgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgY2hhciAqKiphcmdzLCBjaGFyICoqKmVudiwKPiArICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIGxpYnhsX19kZXZpY2VfYWN0aW9uIGFjdGlvbikKPiArewo+ ICsgICAgY2hhciAqYmVfcGF0aCA9IGxpYnhsX19kZXZpY2VfYmFja2VuZF9wYXRoKGdjLCBkZXYp Owo+ICsgICAgY2hhciAqc2NyaXB0Owo+ICsgICAgaW50IG5yID0gMCwgcmM7Cj4gKwo+ICsgICAg c2NyaXB0ID0gbGlieGxfX3hzX3JlYWQoZ2MsIFhCVF9OVUxMLAo+ICsgICAgICAgICAgICAgICAg ICAgICAgICAgICAgR0NTUFJJTlRGKCIlcy8lcyIsIGJlX3BhdGgsICJzY3JpcHQiKSk7Cj4gKyAg ICBpZiAoIXNjcmlwdCkgewo+ICsgICAgICAgIExPR0VWKEVSUk9SLCBlcnJubywgInVuYWJsZSB0 byByZWFkIHNjcmlwdCBmcm9tICVzIiwgYmVfcGF0aCk7Cj4gKyAgICAgICAgcmMgPSBFUlJPUl9G QUlMOwo+ICsgICAgICAgIGdvdG8gZXJyb3I7Cj4gKyAgICB9Cj4gKwo+ICsgICAgY29uc3QgaW50 IGFycmF5c2l6ZSA9IDQ7Cj4gKyAgICBHQ05FV19BUlJBWSgqYXJncywgYXJyYXlzaXplKTsKPiAr ICAgICgqYXJncylbbnIrK10gPSBzY3JpcHQ7Cj4gKyAgICAoKmFyZ3MpW25yKytdID0gYmVfcGF0 aDsKPiArICAgICgqYXJncylbbnIrK10gPSAoY2hhciAqKSBsaWJ4bF9fZGV2aWNlX2FjdGlvbl90 b19zdHJpbmcoYWN0aW9uKTsKPiArICAgICgqYXJncylbbnIrK10gPSBOVUxMOwo+ICsgICAgYXNz ZXJ0KG5yID09IGFycmF5c2l6ZSk7Cj4gKwo+ICsgICAgcmMgPSAxOwo+ICsKPiArZXJyb3I6Cj4g KyAgICByZXR1cm4gcmM7Cj4gK30KPiArCj4gIGludCBsaWJ4bF9fZ2V0X2hvdHBsdWdfc2NyaXB0 X2luZm8obGlieGxfX2djICpnYywgbGlieGxfX2RldmljZSAqZGV2LAo+ICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIGNoYXIgKioqYXJncywgY2hhciAqKiplbnYsCj4gICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGlieGxfX2RldmljZV9hY3Rpb24gYWN0aW9u LAo+ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGludCBudW1fZXhlYykKPiAg ewo+IC0gICAgbGlieGxfbmljX3R5cGUgbmljdHlwZTsKPiAgICAgIGludCByYzsKPiAgCj4gLSAg ICBpZiAoZGV2LT5iYWNrZW5kX2tpbmQgIT0gTElCWExfX0RFVklDRV9LSU5EX1ZJRiB8fCBudW1f ZXhlYyA9PSAyKQo+IC0gICAgICAgIHJldHVybiAwOwo+IC0KPiAtICAgIHJjID0gbGlieGxfX25p Y190eXBlKGdjLCBkZXYsICZuaWN0eXBlKTsKPiAtICAgIGlmIChyYykgewo+IC0gICAgICAgIExP RyhFUlJPUiwgImVycm9yIHdoZW4gZmV0Y2hpbmcgbmljIHR5cGUiKTsKPiAtICAgICAgICByYyA9 IEVSUk9SX0ZBSUw7Cj4gLSAgICAgICAgZ290byBvdXQ7Cj4gLSAgICB9Cj4gLQo+IC0gICAgLyoK PiAtICAgICAqIEZvciBQViBkb21haW5zIG9ubHkgb25lIHBhc3MgaXMgbmVlZGVkIChiZWNhdXNl IHRoZXJlJ3Mgbm8gZW11bGF0ZWQKPiAtICAgICAqIGludGVyZmFjZSkuIEZvciBIVk0gZG9tYWlu cyB0d28gcGFzc2VzIGFyZSBuZWVkZWQgaW4gb3JkZXIgdG8gYWRkCj4gLSAgICAgKiBib3RoIHRo ZSBQViBhbmQgdGhlIHRhcCBpbnRlcmZhY2VzIHRvIHRoZSBicmlkZ2UuCj4gLSAgICAgKi8KPiAt ICAgIGlmIChuaWN0eXBlID09IExJQlhMX05JQ19UWVBFX1ZJRiAmJiBudW1fZXhlYyAhPSAwKSB7 Cj4gKyAgICBzd2l0Y2ggKGRldi0+YmFja2VuZF9raW5kKSB7Cj4gKyAgICBjYXNlIExJQlhMX19E RVZJQ0VfS0lORF9WQkQ6Cj4gKyAgICAgICAgaWYgKG51bV9leGVjICE9IDApIHsKPiArICAgICAg ICAgICAgcmMgPSAwOwo+ICsgICAgICAgICAgICBnb3RvIG91dDsKPiArICAgICAgICB9Cj4gKyAg ICAgICAgcmMgPSBsaWJ4bF9faG90cGx1Z19kaXNrKGdjLCBkZXYsIGFyZ3MsIGVudiwgYWN0aW9u KTsKPiArICAgICAgICBicmVhazsKPiArICAgIGNhc2UgTElCWExfX0RFVklDRV9LSU5EX1ZJRjoK PiArICAgICAgICAvKgo+ICsgICAgICAgICAqIElmIGRvbWFpbiBoYXMgYSBzdHViZG9tIHdlIGRv bid0IGhhdmUgdG8gZXhlY3V0ZSBob3RwbHVnIHNjcmlwdHMKPiArICAgICAgICAgKiBmb3IgZW11 bGF0ZWQgaW50ZXJmYWNlcwo+ICsgICAgICAgICAqLwo+ICsgICAgICAgIGlmICgobnVtX2V4ZWMg PiAxKSB8fAo+ICsgICAgICAgICAgICAobGlieGxfZ2V0X3N0dWJkb21faWQoQ1RYLCBkZXYtPmRv bWlkKSAmJiBudW1fZXhlYykpIHsKPiArICAgICAgICAgICAgcmMgPSAwOwo+ICsgICAgICAgICAg ICBnb3RvIG91dDsKPiArICAgICAgICB9Cj4gKyAgICAgICAgcmMgPSBsaWJ4bF9faG90cGx1Z19u aWMoZ2MsIGRldiwgYXJncywgZW52LCBhY3Rpb24sIG51bV9leGVjKTsKPiArICAgICAgICBicmVh azsKPiArICAgIGRlZmF1bHQ6Cj4gKyAgICAgICAgLyogTm8gbmVlZCB0byBleGVjdXRlIGFueSBo b3RwbHVnIHNjcmlwdHMgKi8KPiAgICAgICAgICByYyA9IDA7Cj4gLSAgICAgICAgZ290byBvdXQ7 Cj4gKyAgICAgICAgYnJlYWs7Cj4gICAgICB9Cj4gIAo+IC0gICAgcmMgPSBsaWJ4bF9faG90cGx1 Z19lbnZfbmljKGdjLCBkZXYsIGVudiwgbnVtX2V4ZWMpOwo+IC0gICAgaWYgKHJjKQo+IC0gICAg ICAgIGdvdG8gb3V0Owo+IC0KPiAtICAgIHJjID0gbGlieGxfX2hvdHBsdWdfbmljKGdjLCBkZXYs IGFyZ3MsIGFjdGlvbik7Cj4gLSAgICBpZiAoIXJjKSByYyA9IDE7Cj4gLQo+ICBvdXQ6Cj4gICAg ICByZXR1cm4gcmM7Cj4gIH0KCgoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX18KWGVuLWRldmVsIG1haWxpbmcgbGlzdApYZW4tZGV2ZWxAbGlzdHMueGVuLm9y ZwpodHRwOi8vbGlzdHMueGVuLm9yZy94ZW4tZGV2ZWwK