From mboxrd@z Thu Jan 1 00:00:00 1970 From: Brendan Higgins Subject: [PATCH v9 12/18] kunit: test: add tests for KUnit managed resources Date: Fri, 12 Jul 2019 01:17:38 -0700 Message-ID: <20190712081744.87097-13-brendanhiggins@google.com> References: <20190712081744.87097-1-brendanhiggins@google.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <20190712081744.87097-1-brendanhiggins@google.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: frowand.list@gmail.com, gregkh@linuxfoundation.org, jpoimboe@redhat.com, keescook@google.com, kieran.bingham@ideasonboard.com, mcgrof@kernel.org, peterz@infradead.org, robh@kernel.org, sboyd@kernel.org, shuah@kernel.org, tytso@mit.edu, yamada.masahiro@socionext.com Cc: pmladek@suse.com, linux-doc@vger.kernel.org, amir73il@gmail.com, Brendan Higgins , dri-devel@lists.freedesktop.org, Alexander.Levin@microsoft.com, linux-kselftest@vger.kernel.org, linux-nvdimm@lists.01.org, khilman@baylibre.com, knut.omang@oracle.com, wfg@linux.intel.com, joel@jms.id.au, rientjes@google.com, jdike@addtoit.com, dan.carpenter@oracle.com, devicetree@vger.kernel.org, linux-kbuild@vger.kernel.org, Tim.Bird@sony.com, Avinash Kondareddy , linux-um@lists.infradead.org, rostedt@goodmis.org, julia.lawall@lip6.fr, kunit-dev@googlegroups.com, richard@nod.at, rdunlap@infradead.org, linux-kernel@vger.kernel.org, mpe@ellerman.id.au, linux-fsdevel@vger.kernel.org, logang@deltatee.com List-Id: linux-nvdimm@lists.01.org RnJvbTogQXZpbmFzaCBLb25kYXJlZGR5IDxha25kcjQxQGdtYWlsLmNvbT4KCkFkZCB1bml0IHRl c3RzIGZvciBLVW5pdCBtYW5hZ2VkIHJlc291cmNlcy4gS1VuaXQgbWFuYWdlZCByZXNvdXJjZXMK KHN0cnVjdCBrdW5pdF9yZXNvdXJjZSkgYXJlIHJlc291cmNlcyB0aGF0IGFyZSBhdXRvbWF0aWNh bGx5IGNsZWFuZWQgdXAKYXQgdGhlIGVuZCBvZiBhIEtVbml0IHRlc3QsIHNpbWlsYXIgdG8gdGhl IGNvbmNlcHQgb2YgZGV2bV8qIG1hbmFnZWQKcmVzb3VyY2VzLgoKU2lnbmVkLW9mZi1ieTogQXZp bmFzaCBLb25kYXJlZGR5IDxha25kcjQxQGdtYWlsLmNvbT4KU2lnbmVkLW9mZi1ieTogQnJlbmRh biBIaWdnaW5zIDxicmVuZGFuaGlnZ2luc0Bnb29nbGUuY29tPgpSZXZpZXdlZC1ieTogR3JlZyBL cm9haC1IYXJ0bWFuIDxncmVna2hAbGludXhmb3VuZGF0aW9uLm9yZz4KUmV2aWV3ZWQtYnk6IExv Z2FuIEd1bnRob3JwZSA8bG9nYW5nQGRlbHRhdGVlLmNvbT4KLS0tCiBrdW5pdC90ZXN0LXRlc3Qu YyB8IDIxOSArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrCiAx IGZpbGUgY2hhbmdlZCwgMjE5IGluc2VydGlvbnMoKykKCmRpZmYgLS1naXQgYS9rdW5pdC90ZXN0 LXRlc3QuYyBiL2t1bml0L3Rlc3QtdGVzdC5jCmluZGV4IDA1OGYzZmIzNzQ1OGEuLmIwNDQ2NTlm ZTg2OGIgMTAwNjQ0Ci0tLSBhL2t1bml0L3Rlc3QtdGVzdC5jCisrKyBiL2t1bml0L3Rlc3QtdGVz dC5jCkBAIC0xMDEsMyArMTAxLDIyMiBAQCBzdGF0aWMgc3RydWN0IGt1bml0X3N1aXRlIGt1bml0 X3RyeV9jYXRjaF90ZXN0X3N1aXRlID0gewogCS50ZXN0X2Nhc2VzID0ga3VuaXRfdHJ5X2NhdGNo X3Rlc3RfY2FzZXMsCiB9Owoga3VuaXRfdGVzdF9zdWl0ZShrdW5pdF90cnlfY2F0Y2hfdGVzdF9z dWl0ZSk7CisKKy8qCisgKiBDb250ZXh0IGZvciB0ZXN0aW5nIHRlc3QgbWFuYWdlZCByZXNvdXJj ZXMKKyAqIGlzX3Jlc291cmNlX2luaXRpYWxpemVkIGlzIHVzZWQgdG8gdGVzdCBhcmJpdHJhcnkg cmVzb3VyY2VzCisgKi8KK3N0cnVjdCBrdW5pdF90ZXN0X3Jlc291cmNlX2NvbnRleHQgeworCXN0 cnVjdCBrdW5pdCB0ZXN0OworCWJvb2wgaXNfcmVzb3VyY2VfaW5pdGlhbGl6ZWQ7CisJaW50IGFs bG9jYXRlX29yZGVyWzJdOworCWludCBmcmVlX29yZGVyWzJdOworfTsKKworc3RhdGljIGludCBm YWtlX3Jlc291cmNlX2luaXQoc3RydWN0IGt1bml0X3Jlc291cmNlICpyZXMsIHZvaWQgKmNvbnRl eHQpCit7CisJc3RydWN0IGt1bml0X3Rlc3RfcmVzb3VyY2VfY29udGV4dCAqY3R4ID0gY29udGV4 dDsKKworCXJlcy0+YWxsb2NhdGlvbiA9ICZjdHgtPmlzX3Jlc291cmNlX2luaXRpYWxpemVkOwor CWN0eC0+aXNfcmVzb3VyY2VfaW5pdGlhbGl6ZWQgPSB0cnVlOworCXJldHVybiAwOworfQorCitz dGF0aWMgdm9pZCBmYWtlX3Jlc291cmNlX2ZyZWUoc3RydWN0IGt1bml0X3Jlc291cmNlICpyZXMp Cit7CisJYm9vbCAqaXNfcmVzb3VyY2VfaW5pdGlhbGl6ZWQgPSByZXMtPmFsbG9jYXRpb247CisK KwkqaXNfcmVzb3VyY2VfaW5pdGlhbGl6ZWQgPSBmYWxzZTsKK30KKworc3RhdGljIHZvaWQga3Vu aXRfcmVzb3VyY2VfdGVzdF9pbml0X3Jlc291cmNlcyhzdHJ1Y3Qga3VuaXQgKnRlc3QpCit7CisJ c3RydWN0IGt1bml0X3Rlc3RfcmVzb3VyY2VfY29udGV4dCAqY3R4ID0gdGVzdC0+cHJpdjsKKwor CWt1bml0X2luaXRfdGVzdCgmY3R4LT50ZXN0LCAidGVzdGluZ190ZXN0X2luaXRfdGVzdCIpOwor CisJS1VOSVRfRVhQRUNUX1RSVUUodGVzdCwgbGlzdF9lbXB0eSgmY3R4LT50ZXN0LnJlc291cmNl cykpOworfQorCitzdGF0aWMgdm9pZCBrdW5pdF9yZXNvdXJjZV90ZXN0X2FsbG9jX3Jlc291cmNl KHN0cnVjdCBrdW5pdCAqdGVzdCkKK3sKKwlzdHJ1Y3Qga3VuaXRfdGVzdF9yZXNvdXJjZV9jb250 ZXh0ICpjdHggPSB0ZXN0LT5wcml2OworCXN0cnVjdCBrdW5pdF9yZXNvdXJjZSAqcmVzOworCWt1 bml0X3Jlc291cmNlX2ZyZWVfdCBmcmVlID0gZmFrZV9yZXNvdXJjZV9mcmVlOworCisJcmVzID0g a3VuaXRfYWxsb2NfcmVzb3VyY2UoJmN0eC0+dGVzdCwKKwkJCQkgICBmYWtlX3Jlc291cmNlX2lu aXQsCisJCQkJICAgZmFrZV9yZXNvdXJjZV9mcmVlLAorCQkJCSAgIGN0eCk7CisKKwlLVU5JVF9B U1NFUlRfTk9UX0VSUl9PUl9OVUxMKHRlc3QsIHJlcyk7CisJS1VOSVRfRVhQRUNUX1BUUl9FUSh0 ZXN0LAorCQkJICAgICZjdHgtPmlzX3Jlc291cmNlX2luaXRpYWxpemVkLAorCQkJICAgIChib29s ICopIHJlcy0+YWxsb2NhdGlvbik7CisJS1VOSVRfRVhQRUNUX1RSVUUodGVzdCwgbGlzdF9pc19s YXN0KCZyZXMtPm5vZGUsICZjdHgtPnRlc3QucmVzb3VyY2VzKSk7CisJS1VOSVRfRVhQRUNUX1BU Ul9FUSh0ZXN0LCBmcmVlLCByZXMtPmZyZWUpOworfQorCitzdGF0aWMgdm9pZCBrdW5pdF9yZXNv dXJjZV90ZXN0X2ZyZWVfcmVzb3VyY2Uoc3RydWN0IGt1bml0ICp0ZXN0KQoreworCXN0cnVjdCBr dW5pdF90ZXN0X3Jlc291cmNlX2NvbnRleHQgKmN0eCA9IHRlc3QtPnByaXY7CisJc3RydWN0IGt1 bml0X3Jlc291cmNlICpyZXMgPSBrdW5pdF9hbGxvY19yZXNvdXJjZSgmY3R4LT50ZXN0LAorCQkJ CQkJCSAgZmFrZV9yZXNvdXJjZV9pbml0LAorCQkJCQkJCSAgZmFrZV9yZXNvdXJjZV9mcmVlLAor CQkJCQkJCSAgY3R4KTsKKworCWt1bml0X2ZyZWVfcmVzb3VyY2UoJmN0eC0+dGVzdCwgcmVzKTsK KworCUtVTklUX0VYUEVDVF9GQUxTRSh0ZXN0LCBjdHgtPmlzX3Jlc291cmNlX2luaXRpYWxpemVk KTsKKwlLVU5JVF9FWFBFQ1RfVFJVRSh0ZXN0LCBsaXN0X2VtcHR5KCZjdHgtPnRlc3QucmVzb3Vy Y2VzKSk7Cit9CisKK3N0YXRpYyB2b2lkIGt1bml0X3Jlc291cmNlX3Rlc3RfY2xlYW51cF9yZXNv dXJjZXMoc3RydWN0IGt1bml0ICp0ZXN0KQoreworCWludCBpOworCXN0cnVjdCBrdW5pdF90ZXN0 X3Jlc291cmNlX2NvbnRleHQgKmN0eCA9IHRlc3QtPnByaXY7CisJc3RydWN0IGt1bml0X3Jlc291 cmNlICpyZXNvdXJjZXNbNV07CisKKwlmb3IgKGkgPSAwOyBpIDwgQVJSQVlfU0laRShyZXNvdXJj ZXMpOyBpKyspIHsKKwkJcmVzb3VyY2VzW2ldID0ga3VuaXRfYWxsb2NfcmVzb3VyY2UoJmN0eC0+ dGVzdCwKKwkJCQkJCSAgICBmYWtlX3Jlc291cmNlX2luaXQsCisJCQkJCQkgICAgZmFrZV9yZXNv dXJjZV9mcmVlLAorCQkJCQkJICAgIGN0eCk7CisJfQorCisJa3VuaXRfY2xlYW51cCgmY3R4LT50 ZXN0KTsKKworCUtVTklUX0VYUEVDVF9UUlVFKHRlc3QsIGxpc3RfZW1wdHkoJmN0eC0+dGVzdC5y ZXNvdXJjZXMpKTsKK30KKworc3RhdGljIHZvaWQga3VuaXRfcmVzb3VyY2VfdGVzdF9tYXJrX29y ZGVyKGludCBvcmRlcl9hcnJheVtdLAorCQkJCQkgICBzaXplX3Qgb3JkZXJfc2l6ZSwKKwkJCQkJ ICAgaW50IGtleSkKK3sKKwlpbnQgaTsKKworCWZvciAoaSA9IDA7IGkgPCBvcmRlcl9zaXplICYm IG9yZGVyX2FycmF5W2ldOyBpKyspCisJCTsKKworCW9yZGVyX2FycmF5W2ldID0ga2V5OworfQor CisjZGVmaW5lIEtVTklUX1JFU09VUkNFX1RFU1RfTUFSS19PUkRFUihjdHgsIG9yZGVyX2ZpZWxk LCBrZXkpCQkgICAgICAgXAorCQlrdW5pdF9yZXNvdXJjZV90ZXN0X21hcmtfb3JkZXIoY3R4LT5v cmRlcl9maWVsZCwJICAgICAgIFwKKwkJCQkJICAgICAgIEFSUkFZX1NJWkUoY3R4LT5vcmRlcl9m aWVsZCksICAgXAorCQkJCQkgICAgICAga2V5KQorCitzdGF0aWMgaW50IGZha2VfcmVzb3VyY2Vf Ml9pbml0KHN0cnVjdCBrdW5pdF9yZXNvdXJjZSAqcmVzLCB2b2lkICpjb250ZXh0KQoreworCXN0 cnVjdCBrdW5pdF90ZXN0X3Jlc291cmNlX2NvbnRleHQgKmN0eCA9IGNvbnRleHQ7CisKKwlLVU5J VF9SRVNPVVJDRV9URVNUX01BUktfT1JERVIoY3R4LCBhbGxvY2F0ZV9vcmRlciwgMik7CisKKwly ZXMtPmFsbG9jYXRpb24gPSBjdHg7CisKKwlyZXR1cm4gMDsKK30KKworc3RhdGljIHZvaWQgZmFr ZV9yZXNvdXJjZV8yX2ZyZWUoc3RydWN0IGt1bml0X3Jlc291cmNlICpyZXMpCit7CisJc3RydWN0 IGt1bml0X3Rlc3RfcmVzb3VyY2VfY29udGV4dCAqY3R4ID0gcmVzLT5hbGxvY2F0aW9uOworCisJ S1VOSVRfUkVTT1VSQ0VfVEVTVF9NQVJLX09SREVSKGN0eCwgZnJlZV9vcmRlciwgMik7Cit9CisK K3N0YXRpYyBpbnQgZmFrZV9yZXNvdXJjZV8xX2luaXQoc3RydWN0IGt1bml0X3Jlc291cmNlICpy ZXMsIHZvaWQgKmNvbnRleHQpCit7CisJc3RydWN0IGt1bml0X3Rlc3RfcmVzb3VyY2VfY29udGV4 dCAqY3R4ID0gY29udGV4dDsKKworCWt1bml0X2FsbG9jX3Jlc291cmNlKCZjdHgtPnRlc3QsCisJ CQkgICAgIGZha2VfcmVzb3VyY2VfMl9pbml0LAorCQkJICAgICBmYWtlX3Jlc291cmNlXzJfZnJl ZSwKKwkJCSAgICAgY3R4KTsKKworCUtVTklUX1JFU09VUkNFX1RFU1RfTUFSS19PUkRFUihjdHgs IGFsbG9jYXRlX29yZGVyLCAxKTsKKworCXJlcy0+YWxsb2NhdGlvbiA9IGN0eDsKKworCXJldHVy biAwOworfQorCitzdGF0aWMgdm9pZCBmYWtlX3Jlc291cmNlXzFfZnJlZShzdHJ1Y3Qga3VuaXRf cmVzb3VyY2UgKnJlcykKK3sKKwlzdHJ1Y3Qga3VuaXRfdGVzdF9yZXNvdXJjZV9jb250ZXh0ICpj dHggPSByZXMtPmFsbG9jYXRpb247CisKKwlLVU5JVF9SRVNPVVJDRV9URVNUX01BUktfT1JERVIo Y3R4LCBmcmVlX29yZGVyLCAxKTsKK30KKworLyoKKyAqIFRPRE8oYnJlbmRhbmhpZ2dpbnNAZ29v Z2xlLmNvbSk6IHJlcGxhY2UgdGhlIGFycmF5cyB0aGF0IGtlZXAgdHJhY2sgb2YgdGhlCisgKiBv cmRlciBvZiBhbGxvY2F0aW9uIGFuZCBmcmVlaW5nIHdpdGggc3RyaWN0IG1vY2tzIHVzaW5nIHRo ZSBJTl9TRVFVRU5DRSBtYWNybworICogdG8gYXNzZXJ0IGFsbG9jYXRpb24gYW5kIGZyZWVpbmcg b3JkZXIgd2hlbiB0aGUgZmVhdHVyZSBiZWNvbWVzIGF2YWlsYWJsZS4KKyAqLworc3RhdGljIHZv aWQga3VuaXRfcmVzb3VyY2VfdGVzdF9wcm9wZXJfZnJlZV9vcmRlcmluZyhzdHJ1Y3Qga3VuaXQg KnRlc3QpCit7CisJc3RydWN0IGt1bml0X3Rlc3RfcmVzb3VyY2VfY29udGV4dCAqY3R4ID0gdGVz dC0+cHJpdjsKKworCS8qIGZha2VfcmVzb3VyY2VfMSBhbGxvY2F0ZXMgYSBmYWtlX3Jlc291cmNl XzIgaW4gaXRzIGluaXQuICovCisJa3VuaXRfYWxsb2NfcmVzb3VyY2UoJmN0eC0+dGVzdCwKKwkJ CSAgICAgZmFrZV9yZXNvdXJjZV8xX2luaXQsCisJCQkgICAgIGZha2VfcmVzb3VyY2VfMV9mcmVl LAorCQkJICAgICBjdHgpOworCisJLyoKKwkgKiBTaW5jZSBmYWtlX3Jlc291cmNlXzJfaW5pdCBj YWxscyBLVU5JVF9SRVNPVVJDRV9URVNUX01BUktfT1JERVIKKwkgKiBiZWZvcmUgcmV0dXJuaW5n IHRvIGZha2VfcmVzb3VyY2VfMV9pbml0LCBpdCBzaG91bGQgYmUgdGhlIGZpcnN0IHRvCisJICog cHV0IGl0cyBrZXkgaW4gdGhlIGFsbG9jYXRlX29yZGVyIGFycmF5LgorCSAqLworCUtVTklUX0VY UEVDVF9FUSh0ZXN0LCBjdHgtPmFsbG9jYXRlX29yZGVyWzBdLCAyKTsKKwlLVU5JVF9FWFBFQ1Rf RVEodGVzdCwgY3R4LT5hbGxvY2F0ZV9vcmRlclsxXSwgMSk7CisKKwlrdW5pdF9jbGVhbnVwKCZj dHgtPnRlc3QpOworCisJLyoKKwkgKiBCZWNhdXNlIGZha2VfcmVzb3VyY2VfMiBmaW5pc2hlcyBh bGxvY2F0aW9uIGJlZm9yZSBmYWtlX3Jlc291cmNlXzEsCisJICogZmFrZV9yZXNvdXJjZV8xIHNo b3VsZCBiZSBmcmVlZCBmaXJzdCBzaW5jZSBpdCBjb3VsZCBkZXBlbmQgb24KKwkgKiBmYWtlX3Jl c291cmNlXzIuCisJICovCisJS1VOSVRfRVhQRUNUX0VRKHRlc3QsIGN0eC0+ZnJlZV9vcmRlclsw XSwgMSk7CisJS1VOSVRfRVhQRUNUX0VRKHRlc3QsIGN0eC0+ZnJlZV9vcmRlclsxXSwgMik7Cit9 CisKK3N0YXRpYyBpbnQga3VuaXRfcmVzb3VyY2VfdGVzdF9pbml0KHN0cnVjdCBrdW5pdCAqdGVz dCkKK3sKKwlzdHJ1Y3Qga3VuaXRfdGVzdF9yZXNvdXJjZV9jb250ZXh0ICpjdHggPQorCQkJa3ph bGxvYyhzaXplb2YoKmN0eCksIEdGUF9LRVJORUwpOworCisJaWYgKCFjdHgpCisJCXJldHVybiAt RU5PTUVNOworCisJdGVzdC0+cHJpdiA9IGN0eDsKKworCWt1bml0X2luaXRfdGVzdCgmY3R4LT50 ZXN0LCAidGVzdF90ZXN0X2NvbnRleHQiKTsKKworCXJldHVybiAwOworfQorCitzdGF0aWMgdm9p ZCBrdW5pdF9yZXNvdXJjZV90ZXN0X2V4aXQoc3RydWN0IGt1bml0ICp0ZXN0KQoreworCXN0cnVj dCBrdW5pdF90ZXN0X3Jlc291cmNlX2NvbnRleHQgKmN0eCA9IHRlc3QtPnByaXY7CisKKwlrdW5p dF9jbGVhbnVwKCZjdHgtPnRlc3QpOworCWtmcmVlKGN0eCk7Cit9CisKK3N0YXRpYyBzdHJ1Y3Qg a3VuaXRfY2FzZSBrdW5pdF9yZXNvdXJjZV90ZXN0X2Nhc2VzW10gPSB7CisJS1VOSVRfQ0FTRShr dW5pdF9yZXNvdXJjZV90ZXN0X2luaXRfcmVzb3VyY2VzKSwKKwlLVU5JVF9DQVNFKGt1bml0X3Jl c291cmNlX3Rlc3RfYWxsb2NfcmVzb3VyY2UpLAorCUtVTklUX0NBU0Uoa3VuaXRfcmVzb3VyY2Vf dGVzdF9mcmVlX3Jlc291cmNlKSwKKwlLVU5JVF9DQVNFKGt1bml0X3Jlc291cmNlX3Rlc3RfY2xl YW51cF9yZXNvdXJjZXMpLAorCUtVTklUX0NBU0Uoa3VuaXRfcmVzb3VyY2VfdGVzdF9wcm9wZXJf ZnJlZV9vcmRlcmluZyksCisJe30KK307CisKK3N0YXRpYyBzdHJ1Y3Qga3VuaXRfc3VpdGUga3Vu aXRfcmVzb3VyY2VfdGVzdF9zdWl0ZSA9IHsKKwkubmFtZSA9ICJrdW5pdC1yZXNvdXJjZS10ZXN0 IiwKKwkuaW5pdCA9IGt1bml0X3Jlc291cmNlX3Rlc3RfaW5pdCwKKwkuZXhpdCA9IGt1bml0X3Jl c291cmNlX3Rlc3RfZXhpdCwKKwkudGVzdF9jYXNlcyA9IGt1bml0X3Jlc291cmNlX3Rlc3RfY2Fz ZXMsCit9Owora3VuaXRfdGVzdF9zdWl0ZShrdW5pdF9yZXNvdXJjZV90ZXN0X3N1aXRlKTsKLS0g CjIuMjIuMC40MTAuZ2Q4ZmRiZTIxYjUtZ29vZwoKX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX18KZHJpLWRldmVsIG1haWxpbmcgbGlzdApkcmktZGV2ZWxAbGlz dHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4v bGlzdGluZm8vZHJpLWRldmVs