From mboxrd@z Thu Jan 1 00:00:00 1970 From: Brendan Higgins Subject: [PATCH v5 12/18] kunit: test: add tests for KUnit managed resources Date: Mon, 17 Jun 2019 01:26:07 -0700 Message-ID: <20190617082613.109131-13-brendanhiggins@google.com> References: <20190617082613.109131-1-brendanhiggins@google.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <20190617082613.109131-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: devicetree@vger.kernel.org RnJvbTogQXZpbmFzaCBLb25kYXJlZGR5IDxha25kcjQxQGdtYWlsLmNvbT4KCkFkZCB1bml0IHRl c3RzIGZvciBLVW5pdCBtYW5hZ2VkIHJlc291cmNlcy4gS1VuaXQgbWFuYWdlZCByZXNvdXJjZXMK KHN0cnVjdCBrdW5pdF9yZXNvdXJjZSkgYXJlIHJlc291cmNlcyB0aGF0IGFyZSBhdXRvbWF0aWNh bGx5IGNsZWFuZWQgdXAKYXQgdGhlIGVuZCBvZiBhIEtVbml0IHRlc3QsIHNpbWlsYXIgdG8gdGhl IGNvbmNlcHQgb2YgZGV2bV8qIG1hbmFnZWQKcmVzb3VyY2VzLgoKU2lnbmVkLW9mZi1ieTogQXZp bmFzaCBLb25kYXJlZGR5IDxha25kcjQxQGdtYWlsLmNvbT4KU2lnbmVkLW9mZi1ieTogQnJlbmRh biBIaWdnaW5zIDxicmVuZGFuaGlnZ2luc0Bnb29nbGUuY29tPgpSZXZpZXdlZC1ieTogR3JlZyBL cm9haC1IYXJ0bWFuIDxncmVna2hAbGludXhmb3VuZGF0aW9uLm9yZz4KUmV2aWV3ZWQtYnk6IExv Z2FuIEd1bnRob3JwZSA8bG9nYW5nQGRlbHRhdGVlLmNvbT4KLS0tCiBrdW5pdC90ZXN0LXRlc3Qu YyB8IDIxOSArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrCiAx IGZpbGUgY2hhbmdlZCwgMjE5IGluc2VydGlvbnMoKykKCmRpZmYgLS1naXQgYS9rdW5pdC90ZXN0 LXRlc3QuYyBiL2t1bml0L3Rlc3QtdGVzdC5jCmluZGV4IDQzZDFiZWRjZjQ1OTIuLjYwZWY1MDhj ZGExYzYgMTAwNjQ0Ci0tLSBhL2t1bml0L3Rlc3QtdGVzdC5jCisrKyBiL2t1bml0L3Rlc3QtdGVz dC5jCkBAIC0xMDEsMyArMTAxLDIyMiBAQCBzdGF0aWMgc3RydWN0IGt1bml0X21vZHVsZSBrdW5p dF90cnlfY2F0Y2hfdGVzdF9tb2R1bGUgPSB7CiAJLnRlc3RfY2FzZXMgPSBrdW5pdF90cnlfY2F0 Y2hfdGVzdF9jYXNlcywKIH07CiBtb2R1bGVfdGVzdChrdW5pdF90cnlfY2F0Y2hfdGVzdF9tb2R1 bGUpOworCisvKgorICogQ29udGV4dCBmb3IgdGVzdGluZyB0ZXN0IG1hbmFnZWQgcmVzb3VyY2Vz CisgKiBpc19yZXNvdXJjZV9pbml0aWFsaXplZCBpcyB1c2VkIHRvIHRlc3QgYXJiaXRyYXJ5IHJl c291cmNlcworICovCitzdHJ1Y3Qga3VuaXRfdGVzdF9yZXNvdXJjZV9jb250ZXh0IHsKKwlzdHJ1 Y3Qga3VuaXQgdGVzdDsKKwlib29sIGlzX3Jlc291cmNlX2luaXRpYWxpemVkOworCWludCBhbGxv Y2F0ZV9vcmRlclsyXTsKKwlpbnQgZnJlZV9vcmRlclsyXTsKK307CisKK3N0YXRpYyBpbnQgZmFr ZV9yZXNvdXJjZV9pbml0KHN0cnVjdCBrdW5pdF9yZXNvdXJjZSAqcmVzLCB2b2lkICpjb250ZXh0 KQoreworCXN0cnVjdCBrdW5pdF90ZXN0X3Jlc291cmNlX2NvbnRleHQgKmN0eCA9IGNvbnRleHQ7 CisKKwlyZXMtPmFsbG9jYXRpb24gPSAmY3R4LT5pc19yZXNvdXJjZV9pbml0aWFsaXplZDsKKwlj dHgtPmlzX3Jlc291cmNlX2luaXRpYWxpemVkID0gdHJ1ZTsKKwlyZXR1cm4gMDsKK30KKworc3Rh dGljIHZvaWQgZmFrZV9yZXNvdXJjZV9mcmVlKHN0cnVjdCBrdW5pdF9yZXNvdXJjZSAqcmVzKQor eworCWJvb2wgKmlzX3Jlc291cmNlX2luaXRpYWxpemVkID0gcmVzLT5hbGxvY2F0aW9uOworCisJ KmlzX3Jlc291cmNlX2luaXRpYWxpemVkID0gZmFsc2U7Cit9CisKK3N0YXRpYyB2b2lkIGt1bml0 X3Jlc291cmNlX3Rlc3RfaW5pdF9yZXNvdXJjZXMoc3RydWN0IGt1bml0ICp0ZXN0KQoreworCXN0 cnVjdCBrdW5pdF90ZXN0X3Jlc291cmNlX2NvbnRleHQgKmN0eCA9IHRlc3QtPnByaXY7CisKKwlr dW5pdF9pbml0X3Rlc3QoJmN0eC0+dGVzdCwgInRlc3RpbmdfdGVzdF9pbml0X3Rlc3QiKTsKKwor CUtVTklUX0VYUEVDVF9UUlVFKHRlc3QsIGxpc3RfZW1wdHkoJmN0eC0+dGVzdC5yZXNvdXJjZXMp KTsKK30KKworc3RhdGljIHZvaWQga3VuaXRfcmVzb3VyY2VfdGVzdF9hbGxvY19yZXNvdXJjZShz dHJ1Y3Qga3VuaXQgKnRlc3QpCit7CisJc3RydWN0IGt1bml0X3Rlc3RfcmVzb3VyY2VfY29udGV4 dCAqY3R4ID0gdGVzdC0+cHJpdjsKKwlzdHJ1Y3Qga3VuaXRfcmVzb3VyY2UgKnJlczsKKwlrdW5p dF9yZXNvdXJjZV9mcmVlX3QgZnJlZSA9IGZha2VfcmVzb3VyY2VfZnJlZTsKKworCXJlcyA9IGt1 bml0X2FsbG9jX3Jlc291cmNlKCZjdHgtPnRlc3QsCisJCQkJICAgZmFrZV9yZXNvdXJjZV9pbml0 LAorCQkJCSAgIGZha2VfcmVzb3VyY2VfZnJlZSwKKwkJCQkgICBjdHgpOworCisJS1VOSVRfQVNT RVJUX05PVF9FUlJfT1JfTlVMTCh0ZXN0LCByZXMpOworCUtVTklUX0VYUEVDVF9QVFJfRVEodGVz dCwKKwkJCSAgICAmY3R4LT5pc19yZXNvdXJjZV9pbml0aWFsaXplZCwKKwkJCSAgICAoYm9vbCAq KSByZXMtPmFsbG9jYXRpb24pOworCUtVTklUX0VYUEVDVF9UUlVFKHRlc3QsIGxpc3RfaXNfbGFz dCgmcmVzLT5ub2RlLCAmY3R4LT50ZXN0LnJlc291cmNlcykpOworCUtVTklUX0VYUEVDVF9QVFJf RVEodGVzdCwgZnJlZSwgcmVzLT5mcmVlKTsKK30KKworc3RhdGljIHZvaWQga3VuaXRfcmVzb3Vy Y2VfdGVzdF9mcmVlX3Jlc291cmNlKHN0cnVjdCBrdW5pdCAqdGVzdCkKK3sKKwlzdHJ1Y3Qga3Vu aXRfdGVzdF9yZXNvdXJjZV9jb250ZXh0ICpjdHggPSB0ZXN0LT5wcml2OworCXN0cnVjdCBrdW5p dF9yZXNvdXJjZSAqcmVzID0ga3VuaXRfYWxsb2NfcmVzb3VyY2UoJmN0eC0+dGVzdCwKKwkJCQkJ CQkgIGZha2VfcmVzb3VyY2VfaW5pdCwKKwkJCQkJCQkgIGZha2VfcmVzb3VyY2VfZnJlZSwKKwkJ CQkJCQkgIGN0eCk7CisKKwlrdW5pdF9mcmVlX3Jlc291cmNlKCZjdHgtPnRlc3QsIHJlcyk7CisK KwlLVU5JVF9FWFBFQ1RfRkFMU0UodGVzdCwgY3R4LT5pc19yZXNvdXJjZV9pbml0aWFsaXplZCk7 CisJS1VOSVRfRVhQRUNUX1RSVUUodGVzdCwgbGlzdF9lbXB0eSgmY3R4LT50ZXN0LnJlc291cmNl cykpOworfQorCitzdGF0aWMgdm9pZCBrdW5pdF9yZXNvdXJjZV90ZXN0X2NsZWFudXBfcmVzb3Vy Y2VzKHN0cnVjdCBrdW5pdCAqdGVzdCkKK3sKKwlpbnQgaTsKKwlzdHJ1Y3Qga3VuaXRfdGVzdF9y ZXNvdXJjZV9jb250ZXh0ICpjdHggPSB0ZXN0LT5wcml2OworCXN0cnVjdCBrdW5pdF9yZXNvdXJj ZSAqcmVzb3VyY2VzWzVdOworCisJZm9yIChpID0gMDsgaSA8IEFSUkFZX1NJWkUocmVzb3VyY2Vz KTsgaSsrKSB7CisJCXJlc291cmNlc1tpXSA9IGt1bml0X2FsbG9jX3Jlc291cmNlKCZjdHgtPnRl c3QsCisJCQkJCQkgICAgZmFrZV9yZXNvdXJjZV9pbml0LAorCQkJCQkJICAgIGZha2VfcmVzb3Vy Y2VfZnJlZSwKKwkJCQkJCSAgICBjdHgpOworCX0KKworCWt1bml0X2NsZWFudXAoJmN0eC0+dGVz dCk7CisKKwlLVU5JVF9FWFBFQ1RfVFJVRSh0ZXN0LCBsaXN0X2VtcHR5KCZjdHgtPnRlc3QucmVz b3VyY2VzKSk7Cit9CisKK3N0YXRpYyB2b2lkIGt1bml0X3Jlc291cmNlX3Rlc3RfbWFya19vcmRl cihpbnQgb3JkZXJfYXJyYXlbXSwKKwkJCQkJICAgc2l6ZV90IG9yZGVyX3NpemUsCisJCQkJCSAg IGludCBrZXkpCit7CisJaW50IGk7CisKKwlmb3IgKGkgPSAwOyBpIDwgb3JkZXJfc2l6ZSAmJiBv cmRlcl9hcnJheVtpXTsgaSsrKQorCQk7CisKKwlvcmRlcl9hcnJheVtpXSA9IGtleTsKK30KKwor I2RlZmluZSBLVU5JVF9SRVNPVVJDRV9URVNUX01BUktfT1JERVIoY3R4LCBvcmRlcl9maWVsZCwg a2V5KQkJICAgICAgIFwKKwkJa3VuaXRfcmVzb3VyY2VfdGVzdF9tYXJrX29yZGVyKGN0eC0+b3Jk ZXJfZmllbGQsCSAgICAgICBcCisJCQkJCSAgICAgICBBUlJBWV9TSVpFKGN0eC0+b3JkZXJfZmll bGQpLCAgIFwKKwkJCQkJICAgICAgIGtleSkKKworc3RhdGljIGludCBmYWtlX3Jlc291cmNlXzJf aW5pdChzdHJ1Y3Qga3VuaXRfcmVzb3VyY2UgKnJlcywgdm9pZCAqY29udGV4dCkKK3sKKwlzdHJ1 Y3Qga3VuaXRfdGVzdF9yZXNvdXJjZV9jb250ZXh0ICpjdHggPSBjb250ZXh0OworCisJS1VOSVRf UkVTT1VSQ0VfVEVTVF9NQVJLX09SREVSKGN0eCwgYWxsb2NhdGVfb3JkZXIsIDIpOworCisJcmVz LT5hbGxvY2F0aW9uID0gY3R4OworCisJcmV0dXJuIDA7Cit9CisKK3N0YXRpYyB2b2lkIGZha2Vf cmVzb3VyY2VfMl9mcmVlKHN0cnVjdCBrdW5pdF9yZXNvdXJjZSAqcmVzKQoreworCXN0cnVjdCBr dW5pdF90ZXN0X3Jlc291cmNlX2NvbnRleHQgKmN0eCA9IHJlcy0+YWxsb2NhdGlvbjsKKworCUtV TklUX1JFU09VUkNFX1RFU1RfTUFSS19PUkRFUihjdHgsIGZyZWVfb3JkZXIsIDIpOworfQorCitz dGF0aWMgaW50IGZha2VfcmVzb3VyY2VfMV9pbml0KHN0cnVjdCBrdW5pdF9yZXNvdXJjZSAqcmVz LCB2b2lkICpjb250ZXh0KQoreworCXN0cnVjdCBrdW5pdF90ZXN0X3Jlc291cmNlX2NvbnRleHQg KmN0eCA9IGNvbnRleHQ7CisKKwlrdW5pdF9hbGxvY19yZXNvdXJjZSgmY3R4LT50ZXN0LAorCQkJ ICAgICBmYWtlX3Jlc291cmNlXzJfaW5pdCwKKwkJCSAgICAgZmFrZV9yZXNvdXJjZV8yX2ZyZWUs CisJCQkgICAgIGN0eCk7CisKKwlLVU5JVF9SRVNPVVJDRV9URVNUX01BUktfT1JERVIoY3R4LCBh bGxvY2F0ZV9vcmRlciwgMSk7CisKKwlyZXMtPmFsbG9jYXRpb24gPSBjdHg7CisKKwlyZXR1cm4g MDsKK30KKworc3RhdGljIHZvaWQgZmFrZV9yZXNvdXJjZV8xX2ZyZWUoc3RydWN0IGt1bml0X3Jl c291cmNlICpyZXMpCit7CisJc3RydWN0IGt1bml0X3Rlc3RfcmVzb3VyY2VfY29udGV4dCAqY3R4 ID0gcmVzLT5hbGxvY2F0aW9uOworCisJS1VOSVRfUkVTT1VSQ0VfVEVTVF9NQVJLX09SREVSKGN0 eCwgZnJlZV9vcmRlciwgMSk7Cit9CisKKy8qCisgKiBUT0RPKGJyZW5kYW5oaWdnaW5zQGdvb2ds ZS5jb20pOiByZXBsYWNlIHRoZSBhcnJheXMgdGhhdCBrZWVwIHRyYWNrIG9mIHRoZQorICogb3Jk ZXIgb2YgYWxsb2NhdGlvbiBhbmQgZnJlZWluZyB3aXRoIHN0cmljdCBtb2NrcyB1c2luZyB0aGUg SU5fU0VRVUVOQ0UgbWFjcm8KKyAqIHRvIGFzc2VydCBhbGxvY2F0aW9uIGFuZCBmcmVlaW5nIG9y ZGVyIHdoZW4gdGhlIGZlYXR1cmUgYmVjb21lcyBhdmFpbGFibGUuCisgKi8KK3N0YXRpYyB2b2lk IGt1bml0X3Jlc291cmNlX3Rlc3RfcHJvcGVyX2ZyZWVfb3JkZXJpbmcoc3RydWN0IGt1bml0ICp0 ZXN0KQoreworCXN0cnVjdCBrdW5pdF90ZXN0X3Jlc291cmNlX2NvbnRleHQgKmN0eCA9IHRlc3Qt PnByaXY7CisKKwkvKiBmYWtlX3Jlc291cmNlXzEgYWxsb2NhdGVzIGEgZmFrZV9yZXNvdXJjZV8y IGluIGl0cyBpbml0LiAqLworCWt1bml0X2FsbG9jX3Jlc291cmNlKCZjdHgtPnRlc3QsCisJCQkg ICAgIGZha2VfcmVzb3VyY2VfMV9pbml0LAorCQkJICAgICBmYWtlX3Jlc291cmNlXzFfZnJlZSwK KwkJCSAgICAgY3R4KTsKKworCS8qCisJICogU2luY2UgZmFrZV9yZXNvdXJjZV8yX2luaXQgY2Fs bHMgS1VOSVRfUkVTT1VSQ0VfVEVTVF9NQVJLX09SREVSCisJICogYmVmb3JlIHJldHVybmluZyB0 byBmYWtlX3Jlc291cmNlXzFfaW5pdCwgaXQgc2hvdWxkIGJlIHRoZSBmaXJzdCB0bworCSAqIHB1 dCBpdHMga2V5IGluIHRoZSBhbGxvY2F0ZV9vcmRlciBhcnJheS4KKwkgKi8KKwlLVU5JVF9FWFBF Q1RfRVEodGVzdCwgY3R4LT5hbGxvY2F0ZV9vcmRlclswXSwgMik7CisJS1VOSVRfRVhQRUNUX0VR KHRlc3QsIGN0eC0+YWxsb2NhdGVfb3JkZXJbMV0sIDEpOworCisJa3VuaXRfY2xlYW51cCgmY3R4 LT50ZXN0KTsKKworCS8qCisJICogQmVjYXVzZSBmYWtlX3Jlc291cmNlXzIgZmluaXNoZXMgYWxs b2NhdGlvbiBiZWZvcmUgZmFrZV9yZXNvdXJjZV8xLAorCSAqIGZha2VfcmVzb3VyY2VfMSBzaG91 bGQgYmUgZnJlZWQgZmlyc3Qgc2luY2UgaXQgY291bGQgZGVwZW5kIG9uCisJICogZmFrZV9yZXNv dXJjZV8yLgorCSAqLworCUtVTklUX0VYUEVDVF9FUSh0ZXN0LCBjdHgtPmZyZWVfb3JkZXJbMF0s IDEpOworCUtVTklUX0VYUEVDVF9FUSh0ZXN0LCBjdHgtPmZyZWVfb3JkZXJbMV0sIDIpOworfQor CitzdGF0aWMgaW50IGt1bml0X3Jlc291cmNlX3Rlc3RfaW5pdChzdHJ1Y3Qga3VuaXQgKnRlc3Qp Cit7CisJc3RydWN0IGt1bml0X3Rlc3RfcmVzb3VyY2VfY29udGV4dCAqY3R4ID0KKwkJCWt6YWxs b2Moc2l6ZW9mKCpjdHgpLCBHRlBfS0VSTkVMKTsKKworCWlmICghY3R4KQorCQlyZXR1cm4gLUVO T01FTTsKKworCXRlc3QtPnByaXYgPSBjdHg7CisKKwlrdW5pdF9pbml0X3Rlc3QoJmN0eC0+dGVz dCwgInRlc3RfdGVzdF9jb250ZXh0Iik7CisKKwlyZXR1cm4gMDsKK30KKworc3RhdGljIHZvaWQg a3VuaXRfcmVzb3VyY2VfdGVzdF9leGl0KHN0cnVjdCBrdW5pdCAqdGVzdCkKK3sKKwlzdHJ1Y3Qg a3VuaXRfdGVzdF9yZXNvdXJjZV9jb250ZXh0ICpjdHggPSB0ZXN0LT5wcml2OworCisJa3VuaXRf Y2xlYW51cCgmY3R4LT50ZXN0KTsKKwlrZnJlZShjdHgpOworfQorCitzdGF0aWMgc3RydWN0IGt1 bml0X2Nhc2Uga3VuaXRfcmVzb3VyY2VfdGVzdF9jYXNlc1tdID0geworCUtVTklUX0NBU0Uoa3Vu aXRfcmVzb3VyY2VfdGVzdF9pbml0X3Jlc291cmNlcyksCisJS1VOSVRfQ0FTRShrdW5pdF9yZXNv dXJjZV90ZXN0X2FsbG9jX3Jlc291cmNlKSwKKwlLVU5JVF9DQVNFKGt1bml0X3Jlc291cmNlX3Rl c3RfZnJlZV9yZXNvdXJjZSksCisJS1VOSVRfQ0FTRShrdW5pdF9yZXNvdXJjZV90ZXN0X2NsZWFu dXBfcmVzb3VyY2VzKSwKKwlLVU5JVF9DQVNFKGt1bml0X3Jlc291cmNlX3Rlc3RfcHJvcGVyX2Zy ZWVfb3JkZXJpbmcpLAorCXt9Cit9OworCitzdGF0aWMgc3RydWN0IGt1bml0X21vZHVsZSBrdW5p dF9yZXNvdXJjZV90ZXN0X21vZHVsZSA9IHsKKwkubmFtZSA9ICJrdW5pdC1yZXNvdXJjZS10ZXN0 IiwKKwkuaW5pdCA9IGt1bml0X3Jlc291cmNlX3Rlc3RfaW5pdCwKKwkuZXhpdCA9IGt1bml0X3Jl c291cmNlX3Rlc3RfZXhpdCwKKwkudGVzdF9jYXNlcyA9IGt1bml0X3Jlc291cmNlX3Rlc3RfY2Fz ZXMsCit9OworbW9kdWxlX3Rlc3Qoa3VuaXRfcmVzb3VyY2VfdGVzdF9tb2R1bGUpOwotLSAKMi4y Mi4wLjQxMC5nZDhmZGJlMjFiNS1nb29nCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fXwpkcmktZGV2ZWwgbWFpbGluZyBsaXN0CmRyaS1kZXZlbEBsaXN0cy5m cmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0 aW5mby9kcmktZGV2ZWw=