From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-8.1 required=3.0 tests=DKIM_INVALID,DKIM_SIGNED, HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_PATCH,MAILING_LIST_MULTI,SIGNED_OFF_BY, SPF_HELO_NONE,SPF_PASS,USER_AGENT_SANE_1 autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 97047C5DF60 for ; Fri, 8 Nov 2019 07:17:29 +0000 (UTC) Received: from lists.sourceforge.net (lists.sourceforge.net [216.105.38.7]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 5BB022085B; Fri, 8 Nov 2019 07:17:29 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=fail reason="signature verification failed" (1024-bit key) header.d=sourceforge.net header.i=@sourceforge.net header.b="ax8EeOLK"; dkim=fail reason="signature verification failed" (1024-bit key) header.d=sf.net header.i=@sf.net header.b="ilmivHt8" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 5BB022085B Authentication-Results: mail.kernel.org; dmarc=none (p=none dis=none) header.from=suse.de Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=linux-f2fs-devel-bounces@lists.sourceforge.net Received: from [127.0.0.1] (helo=sfs-ml-4.v29.lw.sourceforge.com) by sfs-ml-4.v29.lw.sourceforge.com with esmtp (Exim 4.90_1) (envelope-from ) id 1iSyWP-0003QN-1C; Fri, 08 Nov 2019 07:17:29 +0000 Received: from [172.30.20.202] (helo=mx.sourceforge.net) by sfs-ml-4.v29.lw.sourceforge.com with esmtps (TLSv1.2:ECDHE-RSA-AES256-GCM-SHA384:256) (Exim 4.90_1) (envelope-from ) id 1iSyWN-0003QF-OO for linux-f2fs-devel@lists.sourceforge.net; Fri, 08 Nov 2019 07:17:27 +0000 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=sourceforge.net; s=x; h=Content-Transfer-Encoding:Content-Type:In-Reply-To: MIME-Version:Date:Message-ID:From:References:To:Subject:Sender:Reply-To:Cc: Content-ID:Content-Description:Resent-Date:Resent-From:Resent-Sender: Resent-To:Resent-Cc:Resent-Message-ID:List-Id:List-Help:List-Unsubscribe: List-Subscribe:List-Post:List-Owner:List-Archive; bh=6jScDP6oFYMwMApk5gP4YzEH1DWs8ufuAcxsaaVxMHw=; b=ax8EeOLKHklG0jnina8fOTQo80 nvxf/Aw1SN2sCWDNnfi1sR0sGllR0wyIPoCxYC2fRePTnaT88UuivF2lNIgTkvrSIPuF28PZoLBz0 vVCmq/Tls3yj1CnbdDjEl9T0hu2ujVKjZk/gWNGoMomIWL/Gux8MnqrLXO3OBkoZvoNE=; DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=sf.net; s=x ; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:MIME-Version:Date: Message-ID:From:References:To:Subject:Sender:Reply-To:Cc:Content-ID: Content-Description:Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc :Resent-Message-ID:List-Id:List-Help:List-Unsubscribe:List-Subscribe: List-Post:List-Owner:List-Archive; bh=6jScDP6oFYMwMApk5gP4YzEH1DWs8ufuAcxsaaVxMHw=; b=ilmivHt8Ng/WmvKK2+Q4AwSQyT 75WTa03UHLO5rNTKIGaYFkdKVZUTMIrhwrFq59Ojw+/6vEQDJSID9u+PvZjIBBxuX0Si6pRIRW1Ne JaLn8/Av0ZY0piO49vYV2J72VsYQZ/1JrWrjpXXET2rgV3G2NjpLhCm5vZyuM/5Ds+Vg=; Received: from mx2.suse.de ([195.135.220.15] helo=mx1.suse.de) by sfi-mx-1.v28.lw.sourceforge.com with esmtps (TLSv1.2:ECDHE-RSA-AES256-GCM-SHA384:256) (Exim 4.92.2) id 1iSyWL-0066ya-Qg for linux-f2fs-devel@lists.sourceforge.net; Fri, 08 Nov 2019 07:17:27 +0000 X-Virus-Scanned: by amavisd-new at test-mx.suse.de Received: from relay2.suse.de (unknown [195.135.220.254]) by mx1.suse.de (Postfix) with ESMTP id 64464AF8E; Fri, 8 Nov 2019 07:17:18 +0000 (UTC) To: Damien Le Moal , linux-block@vger.kernel.org, Jens Axboe , linux-scsi@vger.kernel.org, "Martin K . Petersen" , dm-devel@redhat.com, Mike Snitzer , linux-f2fs-devel@lists.sourceforge.net, Jaegeuk Kim , Chao Yu References: <20191108015702.233102-1-damien.lemoal@wdc.com> <20191108015702.233102-5-damien.lemoal@wdc.com> From: Hannes Reinecke Openpgp: preference=signencrypt Autocrypt: addr=hare@suse.de; prefer-encrypt=mutual; keydata= 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 azzYF4VRJsdl+d0MCaSy8mUh Message-ID: <160bfb8f-2793-af74-df2b-5f30ae9383db@suse.de> Date: Fri, 8 Nov 2019 08:17:17 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:60.0) Gecko/20100101 Thunderbird/60.7.2 MIME-Version: 1.0 In-Reply-To: <20191108015702.233102-5-damien.lemoal@wdc.com> Content-Language: en-US X-Headers-End: 1iSyWL-0066ya-Qg Subject: Re: [f2fs-dev] [PATCH 4/9] block: Remove partition support for zoned block devices X-BeenThere: linux-f2fs-devel@lists.sourceforge.net X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Errors-To: linux-f2fs-devel-bounces@lists.sourceforge.net T24gMTEvOC8xOSAyOjU2IEFNLCBEYW1pZW4gTGUgTW9hbCB3cm90ZToKPiBObyBrbm93biBwYXJ0 aXRpb25pbmcgdG9vbCBzdXBwb3J0cyB6b25lZCBibG9jayBkZXZpY2VzLCBlc3BlY2lhbGx5IHRo ZQo+IGhvc3QgbWFuYWdlZCBmbGF2b3Igd2l0aCBzdHJvbmcgc2VxdWVudGlhbCB3cml0ZSBjb25z dHJhaW50cy4KPiBGdXJ0aGVybW9yZSwgdGhlcmUgYXJlIGFsc28gbm8ga25vd24gdXNlciBub3Ig dXNlIGNhc2VzIGZvciBwYXJ0aXRpb25lZAo+IHpvbmVkIGJsb2NrIGRldmljZXMuCj4gCj4gVGhp cyBwYXRjaCByZW1vdmVzIHBhcnRpdGlvbiBkZXZpY2UgY3JlYXRpb24gZm9yIHpvbmVkIGJsb2Nr IGRldmljZXMsCj4gd2hpY2ggYWxsb3dzIHNpbXBsaWZ5aW5nIHRoZSBwcm9jZXNzaW5nIG9mIHpv bmUgY29tbWFuZHMgZm9yIHpvbmVkCj4gYmxvY2sgZGV2aWNlcy4gQSB3YXJuaW5nIGlzIGFkZGVk IGlmIGEgcGFydGl0aW9uIHRhYmxlIGlzIGZvdW5kIG9uIHRoZQo+IGRldmljZS4KPiAKPiBGb3Ig cmVwb3J0IHpvbmVzIG9wZXJhdGlvbnMgbm8gem9uZSBzZWN0b3IgaW5mb3JtYXRpb24gcmVtYXBw aW5nIGlzCj4gbmVjZXNzYXJ5IGFueW1vcmUsIHNpbXBsaWZ5aW5nIHRoZSBjb2RlLiBPZiBub3Rl IGlzIHRoYXQgcmVtYXBwaW5nIG9mCj4gem9uZSByZXBvcnRzIGZvciBETSB0YXJnZXRzIGlzIHN0 aWxsIG5lY2Vzc2FyeSBhcyBkb25lIGJ5Cj4gZG1fcmVtYXBfem9uZV9yZXBvcnQoKS4KPiAKPiBT aW1pbGFybHksIHJlbWFwaW5nIG9mIGEgem9uZSByZXNldCBiaW8gaXMgbm90IG5lY2Vzc2FyeSBh bnltb3JlLgo+IFRlc3RpbmcgZm9yIHRoZSBhcHBsaWNhYmlsaXR5IG9mIHRoZSB6b25lIHJlc2V0 IGFsbCByZXF1ZXN0IGFsc28gYmVjb21lcwo+IHNpbXBsZXIgYW5kIG9ubHkgbmVlZHMgdG8gY2hl Y2sgdGhhdCB0aGUgbnVtYmVyIG9mIHNlY3RvcnMgb2YgdGhlCj4gcmVxdWVzdGVkIHpvbmUgcmFu Z2UgaXMgZXF1YWwgdG8gdGhlIGRpc2sgY2FwYWNpdHkuCj4gCj4gU2lnbmVkLW9mZi1ieTogRGFt aWVuIExlIE1vYWwgPGRhbWllbi5sZW1vYWxAd2RjLmNvbT4KPiAtLS0KPiAgYmxvY2svYmxrLWNv cmUuYyAgICAgICAgICB8ICA2ICstLS0KPiAgYmxvY2svYmxrLXpvbmVkLmMgICAgICAgICB8IDYy ICsrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCj4gIGJsb2NrL3BhcnRpdGlvbi1nZW5l cmljLmMgfCA3NCArKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KPiAgZHJp dmVycy9tZC9kbS5jICAgICAgICAgICB8ICAzIC0tCj4gIDQgZmlsZXMgY2hhbmdlZCwgMjEgaW5z ZXJ0aW9ucygrKSwgMTI0IGRlbGV0aW9ucygtKQo+IAo+IGRpZmYgLS1naXQgYS9ibG9jay9ibGst Y29yZS5jIGIvYmxvY2svYmxrLWNvcmUuYwo+IGluZGV4IDMzMDZhM2M1YmVkNi4uZGY2YjcwNDc2 MTg3IDEwMDY0NAo+IC0tLSBhL2Jsb2NrL2Jsay1jb3JlLmMKPiArKysgYi9ibG9jay9ibGstY29y ZS5jCj4gQEAgLTg1MSwxMSArODUxLDcgQEAgc3RhdGljIGlubGluZSBpbnQgYmxrX3BhcnRpdGlv bl9yZW1hcChzdHJ1Y3QgYmlvICpiaW8pCj4gIAlpZiAodW5saWtlbHkoYmlvX2NoZWNrX3JvKGJp bywgcCkpKQo+ICAJCWdvdG8gb3V0Owo+ICAKPiAtCS8qCj4gLQkgKiBab25lIG1hbmFnZW1lbnQg YmlvcyBkbyBub3QgaGF2ZSBhIHNlY3RvciBjb3VudCBidXQgdGhleSBkbyBoYXZlCj4gLQkgKiBh IHN0YXJ0IHNlY3RvciBmaWxsZWQgb3V0IGFuZCBuZWVkIHRvIGJlIHJlbWFwcGVkLgo+IC0JICov Cj4gLQlpZiAoYmlvX3NlY3RvcnMoYmlvKSB8fCBvcF9pc196b25lX21nbXQoYmlvX29wKGJpbykp KSB7Cj4gKwlpZiAoYmlvX3NlY3RvcnMoYmlvKSkgewo+ICAJCWlmIChiaW9fY2hlY2tfZW9kKGJp bywgcGFydF9ucl9zZWN0c19yZWFkKHApKSkKPiAgCQkJZ290byBvdXQ7Cj4gIAkJYmlvLT5iaV9p dGVyLmJpX3NlY3RvciArPSBwLT5zdGFydF9zZWN0Owo+IGRpZmYgLS1naXQgYS9ibG9jay9ibGst em9uZWQuYyBiL2Jsb2NrL2Jsay16b25lZC5jCj4gaW5kZXggZWE0ZTA4NmJhMDBlLi5hZTY2NWU0 OTA4NTggMTAwNjQ0Cj4gLS0tIGEvYmxvY2svYmxrLXpvbmVkLmMKPiArKysgYi9ibG9jay9ibGst em9uZWQuYwo+IEBAIC05MywzMiArOTMsMTAgQEAgdW5zaWduZWQgaW50IGJsa2Rldl9ucl96b25l cyhzdHJ1Y3QgYmxvY2tfZGV2aWNlICpiZGV2KQo+ICAJaWYgKCFibGtfcXVldWVfaXNfem9uZWQo cSkpCj4gIAkJcmV0dXJuIDA7Cj4gIAo+IC0JcmV0dXJuIF9fYmxrZGV2X25yX3pvbmVzKHEsIGJk ZXYtPmJkX3BhcnQtPm5yX3NlY3RzKTsKPiArCXJldHVybiBfX2Jsa2Rldl9ucl96b25lcyhxLCBn ZXRfY2FwYWNpdHkoYmRldi0+YmRfZGlzaykpOwo+ICB9Cj4gIEVYUE9SVF9TWU1CT0xfR1BMKGJs a2Rldl9ucl96b25lcyk7Cj4gIAo+IC0vKgo+IC0gKiBDaGVjayB0aGF0IGEgem9uZSByZXBvcnQg YmVsb25ncyB0byB0aGlzIHBhcnRpdGlvbiwgYW5kIGlmIHllcywgZml4IGl0cyBzdGFydAo+IC0g KiBzZWN0b3IgYW5kIHdyaXRlIHBvaW50ZXIgYW5kIHJldHVybiB0cnVlLiBSZXR1cm4gZmFsc2Ug b3RoZXJ3aXNlLgo+IC0gKi8KPiAtc3RhdGljIGJvb2wgYmxrZGV2X3JlcG9ydF96b25lKHN0cnVj dCBibG9ja19kZXZpY2UgKmJkZXYsIHN0cnVjdCBibGtfem9uZSAqcmVwKQo+IC17Cj4gLQlzZWN0 b3JfdCBvZmZzZXQgPSBnZXRfc3RhcnRfc2VjdChiZGV2KTsKPiAtCj4gLQlpZiAocmVwLT5zdGFy dCA8IG9mZnNldCkKPiAtCQlyZXR1cm4gZmFsc2U7Cj4gLQo+IC0JcmVwLT5zdGFydCAtPSBvZmZz ZXQ7Cj4gLQlpZiAocmVwLT5zdGFydCArIHJlcC0+bGVuID4gYmRldi0+YmRfcGFydC0+bnJfc2Vj dHMpCj4gLQkJcmV0dXJuIGZhbHNlOwo+IC0KPiAtCWlmIChyZXAtPnR5cGUgPT0gQkxLX1pPTkVf VFlQRV9DT05WRU5USU9OQUwpCj4gLQkJcmVwLT53cCA9IHJlcC0+c3RhcnQgKyByZXAtPmxlbjsK PiAtCWVsc2UKPiAtCQlyZXAtPndwIC09IG9mZnNldDsKPiAtCXJldHVybiB0cnVlOwo+IC19Cj4g LQo+ICAvKioKPiAgICogYmxrZGV2X3JlcG9ydF96b25lcyAtIEdldCB6b25lcyBpbmZvcm1hdGlv bgo+ICAgKiBAYmRldjoJVGFyZ2V0IGJsb2NrIGRldmljZQo+IEBAIC0xNDAsOCArMTE4LDcgQEAg aW50IGJsa2Rldl9yZXBvcnRfem9uZXMoc3RydWN0IGJsb2NrX2RldmljZSAqYmRldiwgc2VjdG9y X3Qgc2VjdG9yLAo+ICB7Cj4gIAlzdHJ1Y3QgcmVxdWVzdF9xdWV1ZSAqcSA9IGJkZXZfZ2V0X3F1 ZXVlKGJkZXYpOwo+ICAJc3RydWN0IGdlbmRpc2sgKmRpc2sgPSBiZGV2LT5iZF9kaXNrOwo+IC0J dW5zaWduZWQgaW50IGksIG5yejsKPiAtCWludCByZXQ7Cj4gKwlzZWN0b3JfdCBjYXBhY2l0eSA9 IGdldF9jYXBhY2l0eShkaXNrKTsKPiAgCj4gIAlpZiAoIWJsa19xdWV1ZV9pc196b25lZChxKSkK PiAgCQlyZXR1cm4gLUVPUE5PVFNVUFA7Cj4gQEAgLTE1NCwyNyArMTMxLDE0IEBAIGludCBibGtk ZXZfcmVwb3J0X3pvbmVzKHN0cnVjdCBibG9ja19kZXZpY2UgKmJkZXYsIHNlY3Rvcl90IHNlY3Rv ciwKPiAgCWlmIChXQVJOX09OX09OQ0UoIWRpc2stPmZvcHMtPnJlcG9ydF96b25lcykpCj4gIAkJ cmV0dXJuIC1FT1BOT1RTVVBQOwo+ICAKPiAtCWlmICghKm5yX3pvbmVzIHx8IHNlY3RvciA+PSBi ZGV2LT5iZF9wYXJ0LT5ucl9zZWN0cykgewo+ICsJaWYgKCEqbnJfem9uZXMgfHwgc2VjdG9yID49 IGNhcGFjaXR5KSB7Cj4gIAkJKm5yX3pvbmVzID0gMDsKPiAgCQlyZXR1cm4gMDsKPiAgCX0KPiAg Cj4gLQlucnogPSBtaW4oKm5yX3pvbmVzLAo+IC0JCSAgX19ibGtkZXZfbnJfem9uZXMocSwgYmRl di0+YmRfcGFydC0+bnJfc2VjdHMgLSBzZWN0b3IpKTsKPiAtCXJldCA9IGRpc2stPmZvcHMtPnJl cG9ydF96b25lcyhkaXNrLCBnZXRfc3RhcnRfc2VjdChiZGV2KSArIHNlY3RvciwKPiAtCQkJCSAg ICAgICB6b25lcywgJm5yeik7Cj4gLQlpZiAocmV0KQo+IC0JCXJldHVybiByZXQ7Cj4gKwkqbnJf em9uZXMgPSBtaW4oKm5yX3pvbmVzLCBfX2Jsa2Rldl9ucl96b25lcyhxLCBjYXBhY2l0eSAtIHNl Y3RvcikpOwo+ICAKPiAtCWZvciAoaSA9IDA7IGkgPCBucno7IGkrKykgewo+IC0JCWlmICghYmxr ZGV2X3JlcG9ydF96b25lKGJkZXYsIHpvbmVzKSkKPiAtCQkJYnJlYWs7Cj4gLQkJem9uZXMrKzsK PiAtCX0KPiAtCj4gLQkqbnJfem9uZXMgPSBpOwo+IC0KPiAtCXJldHVybiAwOwo+ICsJcmV0dXJu IGRpc2stPmZvcHMtPnJlcG9ydF96b25lcyhkaXNrLCBzZWN0b3IsIHpvbmVzLCBucl96b25lcyk7 Cj4gIH0KPiAgRVhQT1JUX1NZTUJPTF9HUEwoYmxrZGV2X3JlcG9ydF96b25lcyk7Cj4gIAo+IEBA IC0xODUsMTUgKzE0OSwxMSBAQCBzdGF0aWMgaW5saW5lIGJvb2wgYmxrZGV2X2FsbG93X3Jlc2V0 X2FsbF96b25lcyhzdHJ1Y3QgYmxvY2tfZGV2aWNlICpiZGV2LAo+ICAJaWYgKCFibGtfcXVldWVf em9uZV9yZXNldGFsbChiZGV2X2dldF9xdWV1ZShiZGV2KSkpCj4gIAkJcmV0dXJuIGZhbHNlOwo+ ICAKPiAtCWlmIChzZWN0b3IgfHwgbnJfc2VjdG9ycyAhPSBwYXJ0X25yX3NlY3RzX3JlYWQoYmRl di0+YmRfcGFydCkpCj4gLQkJcmV0dXJuIGZhbHNlOwo+ICAJLyoKPiAtCSAqIFJFUV9PUF9aT05F X1JFU0VUX0FMTCBjYW4gYmUgZXhlY3V0ZWQgb25seSBpZiB0aGUgYmxvY2sgZGV2aWNlIGlzCj4g LQkgKiB0aGUgZW50aXJlIGRpc2ssIHRoYXQgaXMsIGlmIHRoZSBibG9ja3MgZGV2aWNlIHN0YXJ0 IG9mZnNldCBpcyAwIGFuZAo+IC0JICogaXRzIGNhcGFjaXR5IGlzIHRoZSBzYW1lIGFzIHRoZSBl bnRpcmUgZGlzay4KPiArCSAqIFJFUV9PUF9aT05FX1JFU0VUX0FMTCBjYW4gYmUgZXhlY3V0ZWQg b25seSBpZiB0aGUgbnVtYmVyIG9mIHNlY3RvcnMKPiArCSAqIG9mIHRoZSBhcHBsaWNhYmxlIHpv bmUgcmFuZ2UgaXMgdGhlIGVudGlyZSBkaXNrLgo+ICAJICovCj4gLQlyZXR1cm4gZ2V0X3N0YXJ0 X3NlY3QoYmRldikgPT0gMCAmJgo+IC0JICAgICAgIHBhcnRfbnJfc2VjdHNfcmVhZChiZGV2LT5i ZF9wYXJ0KSA9PSBnZXRfY2FwYWNpdHkoYmRldi0+YmRfZGlzayk7Cj4gKwlyZXR1cm4gIXNlY3Rv ciAmJiBucl9zZWN0b3JzID09IGdldF9jYXBhY2l0eShiZGV2LT5iZF9kaXNrKTsKPiAgfQo+ICAK PiAgLyoqCj4gQEAgLTIxOCw2ICsxNzgsNyBAQCBpbnQgYmxrZGV2X3pvbmVfbWdtdChzdHJ1Y3Qg YmxvY2tfZGV2aWNlICpiZGV2LCBlbnVtIHJlcV9vcGYgb3AsCj4gIHsKPiAgCXN0cnVjdCByZXF1 ZXN0X3F1ZXVlICpxID0gYmRldl9nZXRfcXVldWUoYmRldik7Cj4gIAlzZWN0b3JfdCB6b25lX3Nl Y3RvcnMgPSBibGtfcXVldWVfem9uZV9zZWN0b3JzKHEpOwo+ICsJc2VjdG9yX3QgY2FwYWNpdHkg PSBnZXRfY2FwYWNpdHkoYmRldi0+YmRfZGlzayk7Cj4gIAlzZWN0b3JfdCBlbmRfc2VjdG9yID0g c2VjdG9yICsgbnJfc2VjdG9yczsKPiAgCXN0cnVjdCBiaW8gKmJpbyA9IE5VTEw7Cj4gIAlpbnQg cmV0Owo+IEBAIC0yMzEsNyArMTkyLDcgQEAgaW50IGJsa2Rldl96b25lX21nbXQoc3RydWN0IGJs b2NrX2RldmljZSAqYmRldiwgZW51bSByZXFfb3BmIG9wLAo+ICAJaWYgKCFvcF9pc196b25lX21n bXQob3ApKQo+ICAJCXJldHVybiAtRU9QTk9UU1VQUDsKPiAgCj4gLQlpZiAoIW5yX3NlY3RvcnMg fHwgZW5kX3NlY3RvciA+IGJkZXYtPmJkX3BhcnQtPm5yX3NlY3RzKQo+ICsJaWYgKCFucl9zZWN0 b3JzIHx8IGVuZF9zZWN0b3IgPiBjYXBhY2l0eSkKPiAgCQkvKiBPdXQgb2YgcmFuZ2UgKi8KPiAg CQlyZXR1cm4gLUVJTlZBTDsKPiAgCj4gQEAgLTIzOSw4ICsyMDAsNyBAQCBpbnQgYmxrZGV2X3pv bmVfbWdtdChzdHJ1Y3QgYmxvY2tfZGV2aWNlICpiZGV2LCBlbnVtIHJlcV9vcGYgb3AsCj4gIAlp ZiAoc2VjdG9yICYgKHpvbmVfc2VjdG9ycyAtIDEpKQo+ICAJCXJldHVybiAtRUlOVkFMOwo+ICAK PiAtCWlmICgobnJfc2VjdG9ycyAmICh6b25lX3NlY3RvcnMgLSAxKSkgJiYKPiAtCSAgICBlbmRf c2VjdG9yICE9IGJkZXYtPmJkX3BhcnQtPm5yX3NlY3RzKQo+ICsJaWYgKChucl9zZWN0b3JzICYg KHpvbmVfc2VjdG9ycyAtIDEpKSAmJiBlbmRfc2VjdG9yICE9IGNhcGFjaXR5KQo+ICAJCXJldHVy biAtRUlOVkFMOwo+ICAKPiAgCXdoaWxlIChzZWN0b3IgPCBlbmRfc2VjdG9yKSB7Cj4gZGlmZiAt LWdpdCBhL2Jsb2NrL3BhcnRpdGlvbi1nZW5lcmljLmMgYi9ibG9jay9wYXJ0aXRpb24tZ2VuZXJp Yy5jCj4gaW5kZXggYWVlNjQzY2UxM2QxLi4zMWJmZjNmYjI4YWYgMTAwNjQ0Cj4gLS0tIGEvYmxv Y2svcGFydGl0aW9uLWdlbmVyaWMuYwo+ICsrKyBiL2Jsb2NrL3BhcnRpdGlvbi1nZW5lcmljLmMK PiBAQCAtNDU5LDU2ICs0NTksNiBAQCBzdGF0aWMgaW50IGRyb3BfcGFydGl0aW9ucyhzdHJ1Y3Qg Z2VuZGlzayAqZGlzaywgc3RydWN0IGJsb2NrX2RldmljZSAqYmRldikKPiAgCXJldHVybiAwOwo+ ICB9Cj4gIAo+IC1zdGF0aWMgYm9vbCBwYXJ0X3pvbmVfYWxpZ25lZChzdHJ1Y3QgZ2VuZGlzayAq ZGlzaywKPiAtCQkJICAgICAgc3RydWN0IGJsb2NrX2RldmljZSAqYmRldiwKPiAtCQkJICAgICAg c2VjdG9yX3QgZnJvbSwgc2VjdG9yX3Qgc2l6ZSkKPiAtewo+IC0JdW5zaWduZWQgaW50IHpvbmVf c2VjdG9ycyA9IGJkZXZfem9uZV9zZWN0b3JzKGJkZXYpOwo+IC0KPiAtCS8qCj4gLQkgKiBJZiB0 aGlzIGZ1bmN0aW9uIGlzIGNhbGxlZCwgdGhlbiB0aGUgZGlzayBpcyBhIHpvbmVkIGJsb2NrIGRl dmljZQo+IC0JICogKGhvc3QtYXdhcmUgb3IgaG9zdC1tYW5hZ2VkKS4gVGhpcyBjYW4gYmUgZGV0 ZWN0ZWQgZXZlbiBpZiB0aGUKPiAtCSAqIHpvbmVkIGJsb2NrIGRldmljZSBzdXBwb3J0IGlzIGRp c2FibGVkIChDT05GSUdfQkxLX0RFVl9aT05FRCBub3QKPiAtCSAqIHNldCkuIEluIHRoaXMgY2Fz ZSwgaG93ZXZlciwgb25seSBob3N0LWF3YXJlIGRldmljZXMgd2lsbCBiZSBzZWVuCj4gLQkgKiBh cyBhIGJsb2NrIGRldmljZSBpcyBub3QgY3JlYXRlZCBmb3IgaG9zdC1tYW5hZ2VkIGRldmljZXMu IFdpdGhvdXQKPiAtCSAqIHpvbmVkIGJsb2NrIGRldmljZSBzdXBwb3J0LCBob3N0LWF3YXJlIGRy aXZlcyBjYW4gc3RpbGwgYmUgdXNlZCBhcwo+IC0JICogcmVndWxhciBibG9jayBkZXZpY2VzIChu byB6b25lIG9wZXJhdGlvbikgYW5kIHRoZWlyIHpvbmUgc2l6ZSB3aWxsCj4gLQkgKiBiZSByZXBv cnRlZCBhcyAwLiBBbGxvdyB0aGlzIGNhc2UuCj4gLQkgKi8KPiAtCWlmICghem9uZV9zZWN0b3Jz KQo+IC0JCXJldHVybiB0cnVlOwo+IC0KPiAtCS8qCj4gLQkgKiBDaGVjayBwYXJ0aXRpb24gc3Rh cnQgYW5kIHNpemUgYWxpZ25lbWVudC4gSWYgdGhlIGRyaXZlIGhhcyBhCj4gLQkgKiBzbWFsbGVy IGxhc3QgcnVudCB6b25lLCBpZ25vcmUgaXQgYW5kIGFsbG93IHRoZSBwYXJ0aXRpb24gdG8KPiAt CSAqIHVzZSBpdC4gQ2hlY2sgdGhlIHpvbmUgc2l6ZSB0b286IGl0IHNob3VsZCBiZSBhIHBvd2Vy IG9mIDIgbnVtYmVyCj4gLQkgKiBvZiBzZWN0b3JzLgo+IC0JICovCj4gLQlpZiAoV0FSTl9PTl9P TkNFKCFpc19wb3dlcl9vZl8yKHpvbmVfc2VjdG9ycykpKSB7Cj4gLQkJdTMyIHJlbTsKPiAtCj4g LQkJZGl2X3U2NF9yZW0oZnJvbSwgem9uZV9zZWN0b3JzLCAmcmVtKTsKPiAtCQlpZiAocmVtKQo+ IC0JCQlyZXR1cm4gZmFsc2U7Cj4gLQkJaWYgKChmcm9tICsgc2l6ZSkgPCBnZXRfY2FwYWNpdHko ZGlzaykpIHsKPiAtCQkJZGl2X3U2NF9yZW0oc2l6ZSwgem9uZV9zZWN0b3JzLCAmcmVtKTsKPiAt CQkJaWYgKHJlbSkKPiAtCQkJCXJldHVybiBmYWxzZTsKPiAtCQl9Cj4gLQo+IC0JfSBlbHNlIHsK PiAtCj4gLQkJaWYgKGZyb20gJiAoem9uZV9zZWN0b3JzIC0gMSkpCj4gLQkJCXJldHVybiBmYWxz ZTsKPiAtCQlpZiAoKGZyb20gKyBzaXplKSA8IGdldF9jYXBhY2l0eShkaXNrKSAmJgo+IC0JCSAg ICAoc2l6ZSAmICh6b25lX3NlY3RvcnMgLSAxKSkpCj4gLQkJCXJldHVybiBmYWxzZTsKPiAtCj4g LQl9Cj4gLQo+IC0JcmV0dXJuIHRydWU7Cj4gLX0KPiAtCj4gIGludCByZXNjYW5fcGFydGl0aW9u cyhzdHJ1Y3QgZ2VuZGlzayAqZGlzaywgc3RydWN0IGJsb2NrX2RldmljZSAqYmRldikKPiAgewo+ ICAJc3RydWN0IHBhcnNlZF9wYXJ0aXRpb25zICpzdGF0ZSA9IE5VTEw7Cj4gQEAgLTU0NCw2ICs0 OTQsMTQgQEAgaW50IHJlc2Nhbl9wYXJ0aXRpb25zKHN0cnVjdCBnZW5kaXNrICpkaXNrLCBzdHJ1 Y3QgYmxvY2tfZGV2aWNlICpiZGV2KQo+ICAJCX0KPiAgCQlyZXR1cm4gLUVJTzsKPiAgCX0KPiAr Cj4gKwkvKiBQYXJ0aXRpb25zIGFyZSBub3Qgc3VwcG9ydGVkIG9uIHpvbmVkIGJsb2NrIGRldmlj ZXMgKi8KPiArCWlmIChiZGV2X2lzX3pvbmVkKGJkZXYpKSB7Cj4gKwkJcHJfd2FybigiJXM6IGln bm9yaW5nIHBhcnRpdGlvbiB0YWJsZSBvbiB6b25lZCBibG9jayBkZXZpY2VcbiIsCj4gKwkJCWRp c2stPmRpc2tfbmFtZSk7Cj4gKwkJZ290byBvdXQ7Cj4gKwl9Cj4gKwo+ICAJLyoKPiAgCSAqIElm IGFueSBwYXJ0aXRpb24gY29kZSB0cmllZCB0byByZWFkIGJleW9uZCBFT0QsIHRyeQo+ICAJICog dW5sb2NraW5nIG5hdGl2ZSBjYXBhY2l0eSBldmVuIGlmIHBhcnRpdGlvbiB0YWJsZSBpcwoKV2hp bGUgSSBkbyBhcHBsYXVkIHJlbW92aW5nIHNwZWNpYWwgY2FzZXMgZm9yIHpvbmVkIGRldmljZXMs IHdlIGRvIGhhdmUKdGhlIEdFTkhEX0ZMX05PX1BBUlRfU0NBTiBmb3IgcHJlY2lzZWx5IHRoaXMg dXNlIGNhc2UuCkFueSBwYXJ0aWN1bGFyIHJlYXNvbiB3aHkgdGhpcyBpc24ndCBiZWluZyB1c2Vk LCBub3IgZXZlbiBzZXQ/CgpDaGVlcnMsCgpIYW5uZXMKLS0gCkRyLiBIYW5uZXMgUmVpbmVja2UJ CSAgICAgIFRlYW1sZWFkIFN0b3JhZ2UgJiBOZXR3b3JraW5nCmhhcmVAc3VzZS5kZQkJCSAgICAg ICAgICAgICAgICAgICs0OSA5MTEgNzQwNTMgNjg4ClNVU0UgU29mdHdhcmUgU29sdXRpb25zIEdl cm1hbnkgR21iSCwgTWF4ZmVsZHN0ci4gNSwgOTA0MDkgTsO8cm5iZXJnCkhSQiAyNDcxNjUgKEFH IE3DvG5jaGVuKSwgR0Y6IEZlbGl4IEltZW5kw7ZyZmZlcgoKCl9fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fCkxpbnV4LWYyZnMtZGV2ZWwgbWFpbGluZyBsaXN0 CkxpbnV4LWYyZnMtZGV2ZWxAbGlzdHMuc291cmNlZm9yZ2UubmV0Cmh0dHBzOi8vbGlzdHMuc291 cmNlZm9yZ2UubmV0L2xpc3RzL2xpc3RpbmZvL2xpbnV4LWYyZnMtZGV2ZWwK