From mboxrd@z Thu Jan 1 00:00:00 1970 From: Bob Liu Subject: [RFC PATCH] xen-block: introduces extra request to pass-through SCSI commands Date: Mon, 29 Feb 2016 11:37:10 +0800 Message-ID: <1456717031-13423-1-git-send-email-bob.liu@oracle.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: jgross@suse.com, ian.jackson@eu.citrix.com, Bob Liu , paul.durrant@citrix.com, jbeulich@suse.com, roger.pau@citrix.com List-Id: xen-devel@lists.xenproject.org MSkgV2hhdCBpcyB0aGlzIHBhdGNoIGFib3V0PwpUaGlzIHBhdGNoIGludHJvZHVjZXMgYW4gbmV3 IGJsb2NrIG9wZXJhdGlvbiAoQkxLSUZfT1BfRVhUUkFfRkxBRykuCkEgcmVxdWVzdCB3aXRoIEJM S0lGX09QX0VYVFJBX0ZMQUcgc2V0IG1lYW5zIHRoZSBmb2xsb3dpbmcgcmVxdWVzdCBpcyBhbgpl eHRyYSByZXF1ZXN0IHdoaWNoIGlzIHVzZWQgdG8gcGFzcyB0aHJvdWdoIFNDU0kgY29tbWFuZHMu ClRoaXMgaXMgbGlrZSBhIHNpbXBsaWZpZWQgdmVyc2lvbiBvZiBYRU5fTkVUSUZfRVhUUkFfKiBp biBuZXRpZi5oLgpJdCBjYW4gYmUgZXh0ZW5kZWQgZWFzaWx5IHRvIHRyYW5zbWl0IG90aGVyIHBl ci1yZXF1ZXN0L2JpbyBkYXRhIGZyb20gZnJvbnRlbmQKdG8gYmFja2VuZCBlLmcgRGF0YSBJbnRl Z3JpdHkgRmllbGQgcGVyIGJpby4KCjIpIFdoeSB3ZSBuZWVkIHRoaXM/CkN1cnJlbnRseSBvbmx5 IHJhdyBkYXRhIHNlZ21lbnRzIGFyZSB0cmFuc21pdHRlZCBmcm9tIGJsa2Zyb250IHRvIGJsa2Jh Y2ssIHdoaWNoCm1lYW5zIHNvbWUgYWR2YW5jZWQgZmVhdHVyZXMgYXJlIGxvc3QuCiAqIEd1ZXN0 IGtub3dzIG5vdGhpbmcgYWJvdXQgZmVhdHVyZXMgb2YgdGhlIHJlYWwgYmFja2VuZCBzdG9yYWdl LgoJRm9yIGV4YW1wbGUsIG9uIGJhcmUtbWV0YWwgZW52aXJvbm1lbnQgSU5RVUlSWSBTQ1NJIGNv bW1hbmQgY2FuIGJlIHVzZWQKCXRvIHF1ZXJ5IHN0b3JhZ2UgZGV2aWNlIGluZm9ybWF0aW9uLiBJ ZiBpdCdzIGEgU1NEIG9yIGZsYXNoIGRldmljZSB3ZQoJY2FuIGhhdmUgdGhlIG9wdGlvbiB0byB1 c2UgdGhlIGRldmljZSBhcyBhIGZhc3QgY2FjaGUuCglCdXQgdGhpcyBjYW4ndCBoYXBwZW4gaW4g Y3VycmVudCBkb21VIGd1ZXN0cywgYmVjYXVzZSBibGtmcm9udCBvbmx5Cglrbm93cyBpdCdzIGp1 c3QgYSBub3JtYWwgdmlydHVhbCBkaXNrCgogKiBGYWlsb3ZlciBDbHVzdGVycyBpbiBXaW5kb3dz CglGYWlsb3ZlciBjbHVzdGVycyByZXF1aXJlIFNDU0ktMyBwZXJzaXN0ZW50IHJlc2VydmF0aW9u IHRhcmdldCBkaXNrcywKCWJ1dCBub3cgdGhpcyBjYW4ndCB3b3JrIGluIGRvbVUuCgozKSBLbm93 biBpc3N1ZXM6CiAqIFNlY3VyaXR5IGlzc3VlcywgaG93IHRvICd2YWxpZGF0ZScgdGhpcyBleHRy YSByZXF1ZXN0IHBheWxvYWQuCiAgIEUuZyBTQ1NJIG9wZXJhdGVzIG9uIExVTiBiYXNlcyAodGhl IHdob2xlIGRpc2spIHdoaWxlIHdlIHJlYWxseSBqdXN0IHdhbnQgdG8KICAgb3BlcmF0ZSBvbiBw YXJ0aXRpb25zCgogKiBDYW4ndCBwYXNzIFNDU0kgY29tbWFuZHMgdGhyb3VnaCBpZiB0aGUgYmFj a2VuZCBzdG9yYWdlIGRyaXZlciBpcyBiaW8tYmFzZWQKICAgaW5zdGVhZCBvZiByZXF1ZXN0LWJh c2VkLgoKNCkgQWx0ZXJuYXRpdmUgYXBwcm9hY2g6IFVzaW5nIFBWU0NTSSBpbnN0ZWFkOgogKiBE b3VidCBQVlNDU0kgY2FuIHN1cHBvcnQgYXMgbWFueSB0eXBlIG9mIGJhY2tlbmQgc3RvcmFnZSBk ZXZpY2VzIGFzIFhlbi1ibG9jay4KCiAqIE11Y2ggbG9uZ2VyIHBhdGg6CiAgIGlvY3RsKCkgLT4g U0NTSSB1cHBlciBsYXllciAtPiBNaWRkbGUgbGF5ZXIgLT4gUFZTQ1NJLWZyb250ZW5kIC0+IFBW U0NTSS1iYWNrZW5kIC0+IFRhcmdldCBmcmFtZXdvcmsoTElPPykgLT4KCiAgIFdpdGggeGVuLWJs b2NrIHdlIG9ubHkgbmVlZDoKICAgaW9jdGwoKSAtPiBibGtmcm9udCAtPiBibGtiYWNrIC0+Cgog KiB4ZW4tYmxvY2sgaGFzIGJlZW4gZXhpc3RlZCBmb3IgbWFueSB5ZWFycywgd2lkZWx5IHVzZWQg YW5kIG1vcmUgc3RhYmxlLgoKV2VsY29tZSBhbnkgaW5wdXQsIHRoYW5rIHlvdSEKClNpZ25lZC1v ZmYtYnk6IEJvYiBMaXUgPGJvYi5saXVAb3JhY2xlLmNvbT4KLS0tCiB4ZW4vaW5jbHVkZS9wdWJs aWMvaW8vYmxraWYuaCB8ICAgNzMgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysr KysrKysKIDEgZmlsZSBjaGFuZ2VkLCA3MyBpbnNlcnRpb25zKCspCgpkaWZmIC0tZ2l0IGEveGVu L2luY2x1ZGUvcHVibGljL2lvL2Jsa2lmLmggYi94ZW4vaW5jbHVkZS9wdWJsaWMvaW8vYmxraWYu aAppbmRleCA5OWYwMzI2Li43YzEwYmNlIDEwMDY0NAotLS0gYS94ZW4vaW5jbHVkZS9wdWJsaWMv aW8vYmxraWYuaAorKysgYi94ZW4vaW5jbHVkZS9wdWJsaWMvaW8vYmxraWYuaApAQCAtNjM1LDYg KzYzNSwyOCBAQAogI2RlZmluZSBCTEtJRl9PUF9JTkRJUkVDVCAgICAgICAgICA2CiAKIC8qCisg KiBSZWNvZ25pc2VkIG9ubHkgaWYgImZlYXR1cmUtZXh0cmEtcmVxdWVzdCIgaXMgcHJlc2VudCBp biBiYWNrZW5kIHhlbmJ1cyBpbmZvLgorICogQSByZXF1ZXN0IHdpdGggQkxLSUZfT1BfRVhUUkFf RkxBRyBpbmRpY2F0ZXMgYW4gZXh0cmEgcmVxdWVzdCBpcyBmb2xsb3dlZAorICogaW4gdGhlIHNo YXJlZCByaW5nIGJ1ZmZlci4KKyAqCisgKiBCeSB0aGlzIHdheSwgZXh0cmEgZGF0YSBsaWtlIFND U0kgY29tbWFuZCwgRElGL0RJWCBhbmQgb3RoZXIgcGVyLXJlcXVlc3QvYmlvCisgKiBkYXRhIGNh biBiZSB0cmFuc21pdHRlZCBmcm9tIGZyb250ZW5kIHRvIGJhY2tlbmQuCisgKgorICogVGhlICd3 aXJlJyBmb3JtYXQgaXMgbGlrZToKKyAqICBSZXF1ZXN0IDE6IHhlbl9ibGtpZl9yZXF1ZXN0Cisg KiBbUmVxdWVzdCAyOiB4ZW5fYmxraWZfZXh0cmFfcmVxdWVzdF0gICAgKG9ubHkgaWYgcmVxdWVz dCAxIGhhcyBCTEtJRl9PUF9FWFRSQV9GTEFHKQorICogIFJlcXVlc3QgMzogeGVuX2Jsa2lmX3Jl cXVlc3QKKyAqICBSZXF1ZXN0IDQ6IHhlbl9ibGtpZl9yZXF1ZXN0CisgKiBbUmVxdWVzdCA1OiB4 ZW5fYmxraWZfZXh0cmFfcmVxdWVzdF0gICAgKG9ubHkgaWYgcmVxdWVzdCA0IGhhcyBCTEtJRl9P UF9FWFRSQV9GTEFHKQorICogIC4uLgorICogIFJlcXVlc3QgTjogeGVuX2Jsa2lmX3JlcXVlc3QK KyAqCisgKiBJZiBhIGJhY2tlbmQgZG9lcyBub3QgcmVjb2duaXplIEJMS0lGX09QX0VYVFJBX0ZM QUcsIGl0IHNob3VsZCAqbm90KiBjcmVhdGUgdGhlCisgKiAiZmVhdHVyZS1leHRyYS1yZXF1ZXN0 IiBub2RlIQorICovCisjZGVmaW5lIEJMS0lGX09QX0VYVFJBX0ZMQUcgKDB4ODApCisKKy8qCiAg KiBNYXhpbXVtIHNjYXR0ZXIvZ2F0aGVyIHNlZ21lbnRzIHBlciByZXF1ZXN0LgogICogVGhpcyBp cyBjYXJlZnVsbHkgY2hvc2VuIHNvIHRoYXQgc2l6ZW9mKGJsa2lmX3JpbmdfdCkgPD0gUEFHRV9T SVpFLgogICogTkIuIFRoaXMgY291bGQgYmUgMTIgaWYgdGhlIHJpbmcgaW5kZXhlcyB3ZXJlbid0 IHN0b3JlZCBpbiB0aGUgc2FtZSBwYWdlLgpAQCAtNzAzLDEwICs3MjUsNjEgQEAgc3RydWN0IGJs a2lmX3JlcXVlc3RfaW5kaXJlY3QgewogfTsKIHR5cGVkZWYgc3RydWN0IGJsa2lmX3JlcXVlc3Rf aW5kaXJlY3QgYmxraWZfcmVxdWVzdF9pbmRpcmVjdF90OwogCitlbnVtIGJsa2lmX2V4dHJhX3Jl cXVlc3RfdHlwZSB7CisJQkxLSUZfRVhUUkFfVFlQRV9TQ1NJX0NNRCA9IDEsCQkvKiBUcmFuc21p dCBTQ1NJIGNvbW1hbmQuICAqLworfTsKKworc3RydWN0IHNjc2lfY21kX3JlcSB7CisJLyoKKwkg KiBHcmFudCBtYXBwaW5nIGZvciB0cmFuc21pdGluZyBTQ1NJIGNvbW1hbmQgdG8gYmFja2VuZCwg YW5kCisJICogYWxzbyByZWNlaXZlIHNlbnNlIGRhdGEgZnJvbSBiYWNrZW5kLgorCSAqIE9uZSA0 S0IgcGFnZSBpcyBlbm91Z2guCisJICovCisJZ3JhbnRfcmVmX3QgY21kX2dyZWY7CisJLyogTGVu Z3RoIG9mIFNDU0kgY29tbWFuZCBpbiB0aGUgZ3JhbnQgbWFwcGVkIHBhZ2UuICovCisJdW5zaWdu ZWQgaW50IGNtZF9sZW47CisKKwkvKgorCSAqIFNDU0kgY29tbWFuZCBtYXkgcmVxdWlyZSB0cmFu c21pdGluZyBkYXRhIHNlZ21lbnQgbGVuZ3RoIGxlc3MKKwkgKiB0aGFuIGEgc2VjdG9yKDUxMiBi eXRlcykuCisJICogUmVjb3JkIG51bV9zZyBhbmQgbGFzdCBzZWdtZW50IGxlbmd0aCBpbiBleHRy YSByZXF1ZXN0IHNvIHRoYXQKKwkgKiBiYWNrZW5kIGNhbiBrbm93IGFib3V0IHRoZW0uCisJICov CisJdW5zaWduZWQgaW50IG51bV9zZzsKKwl1bnNpZ25lZCBpbnQgbGFzdF9zZ19sZW47Cit9Owor CisvKgorICogRXh0cmEgcmVxdWVzdCwgbXVzdCBmb2xsb3cgYSBub3JtYWwtcmVxdWVzdCBhbmQg YSBub3JtYWwtcmVxdWVzdCBjYW4KKyAqIG9ubHkgYmUgZm9sbG93ZWQgYnkgb25lIGV4dHJhIHJl cXVlc3QuCisgKi8KK3N0cnVjdCBibGtpZl9yZXF1ZXN0X2V4dHJhIHsKKwl1aW50OF90IHR5cGU7 CQkvKiBCTEtJRl9FWFRSQV9UWVBFXyogKi8KKwl1aW50MTZfdCBfcGFkMTsKKyNpZm5kZWYgQ09O RklHX1g4Nl8zMgorCXVpbnQzMl90IF9wYWQyOwkJLyogb2Zmc2V0b2YoYmxraWZfLi4uLHUuZXh0 cmEuaWQpID09IDggKi8KKyNlbmRpZgorCXVpbnQ2NF90IGlkOworCXN0cnVjdCBzY3NpX2NtZF9y ZXEgc2NzaV9jbWQ7Cit9IF9fYXR0cmlidXRlX18oKF9fcGFja2VkX18pKTsKK3R5cGVkZWYgc3Ry dWN0IGJsa2lmX3JlcXVlc3RfZXh0cmEgYmxraWZfcmVxdWVzdF9leHRyYV90OworCitzdHJ1Y3Qg c2NzaV9jbWRfcmVzIHsKKwl1bnNpZ25lZCBpbnQgcmVzaWRfbGVuOworCS8qIExlbmd0aCBvZiBz ZW5zZSBkYXRhIHJldHVybmVkIGluIGdyYW50IG1hcHBlZCBwYWdlLiAqLworCXVuc2lnbmVkIGlu dCBzZW5zZV9sZW47Cit9OworCitzdHJ1Y3QgYmxraWZfcmVzcG9uc2VfZXh0cmEgeworCXVpbnQ4 X3QgdHlwZTsgIC8qIEJMS0lGX0VYVFJBX1RZUEVfKiAqLworCXN0cnVjdCBzY3NpX2NtZF9yZXMg c2NzaV9jbWQ7Cit9IF9fYXR0cmlidXRlX18oKF9fcGFja2VkX18pKTsKKwogc3RydWN0IGJsa2lm X3Jlc3BvbnNlIHsKICAgICB1aW50NjRfdCAgICAgICAgaWQ7ICAgICAgICAgICAgICAvKiBjb3Bp ZWQgZnJvbSByZXF1ZXN0ICovCiAgICAgdWludDhfdCAgICAgICAgIG9wZXJhdGlvbjsgICAgICAg LyogY29waWVkIGZyb20gcmVxdWVzdCAqLwogICAgIGludDE2X3QgICAgICAgICBzdGF0dXM7ICAg ICAgICAgIC8qIEJMS0lGX1JTUF8/Pz8gICAgICAgKi8KKyAgICBzdHJ1Y3QgYmxraWZfcmVzcG9u c2VfZXh0cmEgZXh0cmE7CiB9OwogdHlwZWRlZiBzdHJ1Y3QgYmxraWZfcmVzcG9uc2UgYmxraWZf cmVzcG9uc2VfdDsKIAotLSAKMS43LjEwLjQKCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fXwpYZW4tZGV2ZWwgbWFpbGluZyBsaXN0Clhlbi1kZXZlbEBsaXN0 cy54ZW4ub3JnCmh0dHA6Ly9saXN0cy54ZW4ub3JnL3hlbi1kZXZlbAo=