From mboxrd@z Thu Jan 1 00:00:00 1970 From: Jani Nikula Subject: Re: [PATCH v2] drm/dp_mst: Fix W=1 warnings Date: Thu, 28 Nov 2019 15:34:21 +0200 Message-ID: <87h82om8f6.fsf@intel.com> References: <20191128110012.23898-1-benjamin.gaignard@st.com> <87sgm8mekf.fsf@intel.com> <8f64b1e7-d7b8-43df-8efe-ca5af91e2cd3@st.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga06.intel.com (mga06.intel.com [134.134.136.31]) by gabe.freedesktop.org (Postfix) with ESMTPS id CF10B6E0EC for ; Thu, 28 Nov 2019 13:34:27 +0000 (UTC) In-Reply-To: <8f64b1e7-d7b8-43df-8efe-ca5af91e2cd3@st.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: Benjamin GAIGNARD , "maarten.lankhorst@linux.intel.com" , "mripard@kernel.org" , "sean@poorly.run" , "airlied@linux.ie" , "daniel@ffwll.ch" Cc: "linux-kernel@vger.kernel.org" , "dri-devel@lists.freedesktop.org" List-Id: dri-devel@lists.freedesktop.org T24gVGh1LCAyOCBOb3YgMjAxOSwgQmVuamFtaW4gR0FJR05BUkQgPGJlbmphbWluLmdhaWduYXJk QHN0LmNvbT4gd3JvdGU6Cj4gT24gMTEvMjgvMTkgMTI6MjEgUE0sIEphbmkgTmlrdWxhIHdyb3Rl Ogo+PiBPbiBUaHUsIDI4IE5vdiAyMDE5LCBCZW5qYW1pbiBHYWlnbmFyZCA8YmVuamFtaW4uZ2Fp Z25hcmRAc3QuY29tPiB3cm90ZToKPj4+IEZpeCB0aGUgd2FybmluZ3MgdGhhdCBzaG93IHVwIHdp dGggVz0xLgo+Pj4gVGhleSBhcmUgYWxsIGFib3V0IHVudXNlZCBidXQgc2V0IHZhcmlhYmxlcy4K Pj4+IElmIGZ1bmN0aW9ucyByZXR1cm5zIGFyZSBub3QgdXNlZCBhbnltb3JlIG1ha2UgdGhlbSB2 b2lkLgo+Pj4KPj4+IFNpZ25lZC1vZmYtYnk6IEJlbmphbWluIEdhaWduYXJkIDxiZW5qYW1pbi5n YWlnbmFyZEBzdC5jb20+Cj4+PiBDQzogSmFuaSBOaWt1bGEgPGphbmkubmlrdWxhQGxpbnV4Lmlu dGVsLmNvbT4KPj4+IC0tLQo+Pj4gY2hhbmdlcyBpbiB2ZXJzaW9uIDI6Cj4+PiAtIGZpeCBpbmRl bnRhdGlvbnMKPj4+IC0gd2hlbiBwb3NzaWJsZSBjaGFuZ2UgZnVuY3Rpb25zIHByb3RvdHlwZSB0 byB2b2lkCj4+Pgo+Pj4gTm90ZTogdGhpcyBwYXRjaCBtYXkgY29uZmxpY3Qgd2l0aCBjNDg1ZTJj OTdkYWUgKCJkcm0vZHBfbXN0OiBSZWZhY3RvciBwZHQKPj4+IHNldHVwL3RlYXJkb3duLCBhZGQg bW9yZSBsb2NraW5nIikgd2hlbiBpdCB3aWxsIGhpdCBkcm0tbWlzYy1uZXh0Cj4+IFdlbGwsIHdo eSBjcmVhdGUgYW4gdW5uZWNlc3NhcnkgY29uZmxpY3Qgd2hlbiB0aGUgcmVmZXJlbmNlZCBjb21t aXQgYWxzbwo+PiBmaXhlcyB0aGUgc2FtZSB3YXJuaW5ncyBhcyBhIHNpZGUtZWZmZWN0Pwo+Cj4g QmVjYXVzZSB0aGlzIGNvbW1pdCBpcyBub3QgbWVyZ2VkICh5ZXQgPykgaW4gZHJtLW1pc2MtbmV4 dCB3aGljaCB3aGVyZSBJIAo+IHN0YXJ0LgoKSSBtZWFuIGp1c3QgbGVhdmUgdGhlIGh1bmsgb3V0 IGFuZCB0aGUgcHJvYmxlbSB3aWxsIGZpeCBpdHNlbGYgb25jZSB0aGUKc3R1ZmYgZ2V0cyBiYWNr bWVyZ2VkIHRvIGRybS1taXNjLW5leHQuCgpCUiwKSmFuaS4KCgo+Cj4gQmVuamFtaW4KPgo+PiBC UiwKPj4gSmFuaS4KPj4KPj4KPj4+ICAgZHJpdmVycy9ncHUvZHJtL2RybV9kcF9tc3RfdG9wb2xv Z3kuYyB8IDgzICsrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tCj4+PiAgIDEgZmls ZSBjaGFuZ2VkLCAzMSBpbnNlcnRpb25zKCspLCA1MiBkZWxldGlvbnMoLSkKPj4+Cj4+PiBkaWZm IC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2RybV9kcF9tc3RfdG9wb2xvZ3kuYyBiL2RyaXZlcnMv Z3B1L2RybS9kcm1fZHBfbXN0X3RvcG9sb2d5LmMKPj4+IGluZGV4IGI4NTRhNDIyYTUyMy4uZmYy ZDgxZGIwNzc4IDEwMDY0NAo+Pj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL2RybV9kcF9tc3RfdG9w b2xvZ3kuYwo+Pj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL2RybV9kcF9tc3RfdG9wb2xvZ3kuYwo+ Pj4gQEAgLTY3Miw3ICs2NzIsNiBAQCBzdGF0aWMgYm9vbCBkcm1fZHBfc2lkZWJhbmRfbXNnX2J1 aWxkKHN0cnVjdCBkcm1fZHBfc2lkZWJhbmRfbXNnX3J4ICptc2csCj4+PiAgIAkJCQkgICAgICB1 OCAqcmVwbHlidWYsIHU4IHJlcGx5YnVmbGVuLCBib29sIGhkcikKPj4+ICAgewo+Pj4gICAJaW50 IHJldDsKPj4+IC0JdTggY3JjNDsKPj4+ICAgCj4+PiAgIAlpZiAoaGRyKSB7Cj4+PiAgIAkJdTgg aGRybGVuOwo+Pj4gQEAgLTcxNCw4ICs3MTMsNiBAQCBzdGF0aWMgYm9vbCBkcm1fZHBfc2lkZWJh bmRfbXNnX2J1aWxkKHN0cnVjdCBkcm1fZHBfc2lkZWJhbmRfbXNnX3J4ICptc2csCj4+PiAgIAl9 Cj4+PiAgIAo+Pj4gICAJaWYgKG1zZy0+Y3VyY2h1bmtfaWR4ID49IG1zZy0+Y3VyY2h1bmtfbGVu KSB7Cj4+PiAtCQkvKiBkbyBDUkMgKi8KPj4+IC0JCWNyYzQgPSBkcm1fZHBfbXNnX2RhdGFfY3Jj NChtc2ctPmNodW5rLCBtc2ctPmN1cmNodW5rX2xlbiAtIDEpOwo+Pj4gICAJCS8qIGNvcHkgY2h1 bmsgaW50byBiaWdnZXIgbXNnICovCj4+PiAgIAkJbWVtY3B5KCZtc2ctPm1zZ1ttc2ctPmN1cmxl bl0sIG1zZy0+Y2h1bmssIG1zZy0+Y3VyY2h1bmtfbGVuIC0gMSk7Cj4+PiAgIAkJbXNnLT5jdXJs ZW4gKz0gbXNnLT5jdXJjaHVua19sZW4gLSAxOwo+Pj4gQEAgLTEwMTIsNyArMTAwOSw3IEBAIHN0 YXRpYyBib29sIGRybV9kcF9zaWRlYmFuZF9wYXJzZV9yZXEoc3RydWN0IGRybV9kcF9zaWRlYmFu ZF9tc2dfcnggKnJhdywKPj4+ICAgCX0KPj4+ICAgfQo+Pj4gICAKPj4+IC1zdGF0aWMgaW50IGJ1 aWxkX2RwY2Rfd3JpdGUoc3RydWN0IGRybV9kcF9zaWRlYmFuZF9tc2dfdHggKm1zZywgdTggcG9y dF9udW0sIHUzMiBvZmZzZXQsIHU4IG51bV9ieXRlcywgdTggKmJ5dGVzKQo+Pj4gK3N0YXRpYyB2 b2lkIGJ1aWxkX2RwY2Rfd3JpdGUoc3RydWN0IGRybV9kcF9zaWRlYmFuZF9tc2dfdHggKm1zZywg dTggcG9ydF9udW0sIHUzMiBvZmZzZXQsIHU4IG51bV9ieXRlcywgdTggKmJ5dGVzKQo+Pj4gICB7 Cj4+PiAgIAlzdHJ1Y3QgZHJtX2RwX3NpZGViYW5kX21zZ19yZXFfYm9keSByZXE7Cj4+PiAgIAo+ Pj4gQEAgLTEwMjIsMTcgKzEwMTksMTQgQEAgc3RhdGljIGludCBidWlsZF9kcGNkX3dyaXRlKHN0 cnVjdCBkcm1fZHBfc2lkZWJhbmRfbXNnX3R4ICptc2csIHU4IHBvcnRfbnVtLCB1MzIKPj4+ICAg CXJlcS51LmRwY2Rfd3JpdGUubnVtX2J5dGVzID0gbnVtX2J5dGVzOwo+Pj4gICAJcmVxLnUuZHBj ZF93cml0ZS5ieXRlcyA9IGJ5dGVzOwo+Pj4gICAJZHJtX2RwX2VuY29kZV9zaWRlYmFuZF9yZXEo JnJlcSwgbXNnKTsKPj4+IC0KPj4+IC0JcmV0dXJuIDA7Cj4+PiAgIH0KPj4+ICAgCj4+PiAtc3Rh dGljIGludCBidWlsZF9saW5rX2FkZHJlc3Moc3RydWN0IGRybV9kcF9zaWRlYmFuZF9tc2dfdHgg Km1zZykKPj4+ICtzdGF0aWMgdm9pZCBidWlsZF9saW5rX2FkZHJlc3Moc3RydWN0IGRybV9kcF9z aWRlYmFuZF9tc2dfdHggKm1zZykKPj4+ICAgewo+Pj4gICAJc3RydWN0IGRybV9kcF9zaWRlYmFu ZF9tc2dfcmVxX2JvZHkgcmVxOwo+Pj4gICAKPj4+ICAgCXJlcS5yZXFfdHlwZSA9IERQX0xJTktf QUREUkVTUzsKPj4+ICAgCWRybV9kcF9lbmNvZGVfc2lkZWJhbmRfcmVxKCZyZXEsIG1zZyk7Cj4+ PiAtCXJldHVybiAwOwo+Pj4gICB9Cj4+PiAgIAo+Pj4gICBzdGF0aWMgaW50IGJ1aWxkX2VudW1f cGF0aF9yZXNvdXJjZXMoc3RydWN0IGRybV9kcF9zaWRlYmFuZF9tc2dfdHggKm1zZywgaW50IHBv cnRfbnVtKQo+Pj4gQEAgLTEwNDYsNyArMTA0MCw3IEBAIHN0YXRpYyBpbnQgYnVpbGRfZW51bV9w YXRoX3Jlc291cmNlcyhzdHJ1Y3QgZHJtX2RwX3NpZGViYW5kX21zZ190eCAqbXNnLCBpbnQgcG9y Cj4+PiAgIAlyZXR1cm4gMDsKPj4+ICAgfQo+Pj4gICAKPj4+IC1zdGF0aWMgaW50IGJ1aWxkX2Fs bG9jYXRlX3BheWxvYWQoc3RydWN0IGRybV9kcF9zaWRlYmFuZF9tc2dfdHggKm1zZywgaW50IHBv cnRfbnVtLAo+Pj4gK3N0YXRpYyB2b2lkIGJ1aWxkX2FsbG9jYXRlX3BheWxvYWQoc3RydWN0IGRy bV9kcF9zaWRlYmFuZF9tc2dfdHggKm1zZywgaW50IHBvcnRfbnVtLAo+Pj4gICAJCQkJICB1OCB2 Y3BpLCB1aW50MTZfdCBwYm4sCj4+PiAgIAkJCQkgIHU4IG51bWJlcl9zZHBfc3RyZWFtcywKPj4+ ICAgCQkJCSAgdTggKnNkcF9zdHJlYW1fc2luaykKPj4+IEBAIC0xMDYyLDEwICsxMDU2LDkgQEAg c3RhdGljIGludCBidWlsZF9hbGxvY2F0ZV9wYXlsb2FkKHN0cnVjdCBkcm1fZHBfc2lkZWJhbmRf bXNnX3R4ICptc2csIGludCBwb3J0X24KPj4+ICAgCQkgICBudW1iZXJfc2RwX3N0cmVhbXMpOwo+ Pj4gICAJZHJtX2RwX2VuY29kZV9zaWRlYmFuZF9yZXEoJnJlcSwgbXNnKTsKPj4+ICAgCW1zZy0+ cGF0aF9tc2cgPSB0cnVlOwo+Pj4gLQlyZXR1cm4gMDsKPj4+ICAgfQo+Pj4gICAKPj4+IC1zdGF0 aWMgaW50IGJ1aWxkX3Bvd2VyX3VwZG93bl9waHkoc3RydWN0IGRybV9kcF9zaWRlYmFuZF9tc2df dHggKm1zZywKPj4+ICtzdGF0aWMgdm9pZCBidWlsZF9wb3dlcl91cGRvd25fcGh5KHN0cnVjdCBk cm1fZHBfc2lkZWJhbmRfbXNnX3R4ICptc2csCj4+PiAgIAkJCQkgIGludCBwb3J0X251bSwgYm9v bCBwb3dlcl91cCkKPj4+ICAgewo+Pj4gICAJc3RydWN0IGRybV9kcF9zaWRlYmFuZF9tc2dfcmVx X2JvZHkgcmVxOwo+Pj4gQEAgLTEwNzgsNyArMTA3MSw2IEBAIHN0YXRpYyBpbnQgYnVpbGRfcG93 ZXJfdXBkb3duX3BoeShzdHJ1Y3QgZHJtX2RwX3NpZGViYW5kX21zZ190eCAqbXNnLAo+Pj4gICAJ cmVxLnUucG9ydF9udW0ucG9ydF9udW1iZXIgPSBwb3J0X251bTsKPj4+ICAgCWRybV9kcF9lbmNv ZGVfc2lkZWJhbmRfcmVxKCZyZXEsIG1zZyk7Cj4+PiAgIAltc2ctPnBhdGhfbXNnID0gdHJ1ZTsK Pj4+IC0JcmV0dXJuIDA7Cj4+PiAgIH0KPj4+ICAgCj4+PiAgIHN0YXRpYyBpbnQgZHJtX2RwX21z dF9hc3NpZ25fcGF5bG9hZF9pZChzdHJ1Y3QgZHJtX2RwX21zdF90b3BvbG9neV9tZ3IgKm1nciwK Pj4+IEBAIC0xNzQ0LDE0ICsxNzM2LDEzIEBAIHN0YXRpYyB1OCBkcm1fZHBfY2FsY3VsYXRlX3Jh ZChzdHJ1Y3QgZHJtX2RwX21zdF9wb3J0ICpwb3J0LAo+Pj4gICAgKi8KPj4+ICAgc3RhdGljIGJv b2wgZHJtX2RwX3BvcnRfc2V0dXBfcGR0KHN0cnVjdCBkcm1fZHBfbXN0X3BvcnQgKnBvcnQpCj4+ PiAgIHsKPj4+IC0JaW50IHJldDsKPj4+ICAgCXU4IHJhZFs2XSwgbGN0Owo+Pj4gICAJYm9vbCBz ZW5kX2xpbmsgPSBmYWxzZTsKPj4+ICAgCXN3aXRjaCAocG9ydC0+cGR0KSB7Cj4+PiAgIAljYXNl IERQX1BFRVJfREVWSUNFX0RQX0xFR0FDWV9DT05WOgo+Pj4gICAJY2FzZSBEUF9QRUVSX0RFVklD RV9TU1RfU0lOSzoKPj4+ICAgCQkvKiBhZGQgaTJjIG92ZXIgc2lkZWJhbmQgKi8KPj4+IC0JCXJl dCA9IGRybV9kcF9tc3RfcmVnaXN0ZXJfaTJjX2J1cygmcG9ydC0+YXV4KTsKPj4+ICsJCWRybV9k cF9tc3RfcmVnaXN0ZXJfaTJjX2J1cygmcG9ydC0+YXV4KTsKPj4+ICAgCQlicmVhazsKPj4+ICAg CWNhc2UgRFBfUEVFUl9ERVZJQ0VfTVNUX0JSQU5DSElORzoKPj4+ICAgCQlsY3QgPSBkcm1fZHBf Y2FsY3VsYXRlX3JhZChwb3J0LCByYWQpOwo+Pj4gQEAgLTE4MjEsMjUgKzE4MTIsMjAgQEAgc3Np emVfdCBkcm1fZHBfbXN0X2RwY2Rfd3JpdGUoc3RydWN0IGRybV9kcF9hdXggKmF1eCwKPj4+ICAg Cj4+PiAgIHN0YXRpYyB2b2lkIGRybV9kcF9jaGVja19tc3RiX2d1aWQoc3RydWN0IGRybV9kcF9t c3RfYnJhbmNoICptc3RiLCB1OCAqZ3VpZCkKPj4+ICAgewo+Pj4gLQlpbnQgcmV0Owo+Pj4gLQo+ Pj4gICAJbWVtY3B5KG1zdGItPmd1aWQsIGd1aWQsIDE2KTsKPj4+ICAgCj4+PiAgIAlpZiAoIWRy bV9kcF92YWxpZGF0ZV9ndWlkKG1zdGItPm1nciwgbXN0Yi0+Z3VpZCkpIHsKPj4+ICAgCQlpZiAo bXN0Yi0+cG9ydF9wYXJlbnQpIHsKPj4+IC0JCQlyZXQgPSBkcm1fZHBfc2VuZF9kcGNkX3dyaXRl KAo+Pj4gLQkJCQkJbXN0Yi0+bWdyLAo+Pj4gLQkJCQkJbXN0Yi0+cG9ydF9wYXJlbnQsCj4+PiAt CQkJCQlEUF9HVUlELAo+Pj4gLQkJCQkJMTYsCj4+PiAtCQkJCQltc3RiLT5ndWlkKTsKPj4+ICsJ CQlkcm1fZHBfc2VuZF9kcGNkX3dyaXRlKG1zdGItPm1nciwKPj4+ICsJCQkJCSAgICAgICBtc3Ri LT5wb3J0X3BhcmVudCwKPj4+ICsJCQkJCSAgICAgICBEUF9HVUlELAo+Pj4gKwkJCQkJICAgICAg IDE2LAo+Pj4gKwkJCQkJICAgICAgIG1zdGItPmd1aWQpOwo+Pj4gICAJCX0gZWxzZSB7Cj4+PiAt Cj4+PiAtCQkJcmV0ID0gZHJtX2RwX2RwY2Rfd3JpdGUoCj4+PiAtCQkJCQltc3RiLT5tZ3ItPmF1 eCwKPj4+IC0JCQkJCURQX0dVSUQsCj4+PiAtCQkJCQltc3RiLT5ndWlkLAo+Pj4gLQkJCQkJMTYp Owo+Pj4gKwkJCWRybV9kcF9kcGNkX3dyaXRlKG1zdGItPm1nci0+YXV4LAo+Pj4gKwkJCQkJICBE UF9HVUlELAo+Pj4gKwkJCQkJICBtc3RiLT5ndWlkLAo+Pj4gKwkJCQkJICAxNik7Cj4+PiAgIAkJ fQo+Pj4gICAJfQo+Pj4gICB9Cj4+PiBAQCAtMjE5NSw3ICsyMTgxLDcgQEAgc3RhdGljIGJvb2wg ZHJtX2RwX3ZhbGlkYXRlX2d1aWQoc3RydWN0IGRybV9kcF9tc3RfdG9wb2xvZ3lfbWdyICptZ3Is Cj4+PiAgIAlyZXR1cm4gZmFsc2U7Cj4+PiAgIH0KPj4+ICAgCj4+PiAtc3RhdGljIGludCBidWls ZF9kcGNkX3JlYWQoc3RydWN0IGRybV9kcF9zaWRlYmFuZF9tc2dfdHggKm1zZywgdTggcG9ydF9u dW0sIHUzMiBvZmZzZXQsIHU4IG51bV9ieXRlcykKPj4+ICtzdGF0aWMgdm9pZCBidWlsZF9kcGNk X3JlYWQoc3RydWN0IGRybV9kcF9zaWRlYmFuZF9tc2dfdHggKm1zZywgdTggcG9ydF9udW0sIHUz MiBvZmZzZXQsIHU4IG51bV9ieXRlcykKPj4+ICAgewo+Pj4gICAJc3RydWN0IGRybV9kcF9zaWRl YmFuZF9tc2dfcmVxX2JvZHkgcmVxOwo+Pj4gICAKPj4+IEBAIC0yMjA0LDggKzIxOTAsNiBAQCBz dGF0aWMgaW50IGJ1aWxkX2RwY2RfcmVhZChzdHJ1Y3QgZHJtX2RwX3NpZGViYW5kX21zZ190eCAq bXNnLCB1OCBwb3J0X251bSwgdTMyCj4+PiAgIAlyZXEudS5kcGNkX3JlYWQuZHBjZF9hZGRyZXNz ID0gb2Zmc2V0Owo+Pj4gICAJcmVxLnUuZHBjZF9yZWFkLm51bV9ieXRlcyA9IG51bV9ieXRlczsK Pj4+ICAgCWRybV9kcF9lbmNvZGVfc2lkZWJhbmRfcmVxKCZyZXEsIG1zZyk7Cj4+PiAtCj4+PiAt CXJldHVybiAwOwo+Pj4gICB9Cj4+PiAgIAo+Pj4gICBzdGF0aWMgaW50IGRybV9kcF9zZW5kX3Np ZGViYW5kX21zZyhzdHJ1Y3QgZHJtX2RwX21zdF90b3BvbG9neV9tZ3IgKm1nciwKPj4+IEBAIC0y NDI3LDE0ICsyNDExLDE0IEBAIHN0YXRpYyB2b2lkIGRybV9kcF9zZW5kX2xpbmtfYWRkcmVzcyhz dHJ1Y3QgZHJtX2RwX21zdF90b3BvbG9neV9tZ3IgKm1nciwKPj4+ICAgewo+Pj4gICAJc3RydWN0 IGRybV9kcF9zaWRlYmFuZF9tc2dfdHggKnR4bXNnOwo+Pj4gICAJc3RydWN0IGRybV9kcF9saW5r X2FkZHJlc3NfYWNrX3JlcGx5ICpyZXBseTsKPj4+IC0JaW50IGksIGxlbiwgcmV0Owo+Pj4gKwlp bnQgaSwgcmV0Owo+Pj4gICAKPj4+ICAgCXR4bXNnID0ga3phbGxvYyhzaXplb2YoKnR4bXNnKSwg R0ZQX0tFUk5FTCk7Cj4+PiAgIAlpZiAoIXR4bXNnKQo+Pj4gICAJCXJldHVybjsKPj4+ICAgCj4+ PiAgIAl0eG1zZy0+ZHN0ID0gbXN0YjsKPj4+IC0JbGVuID0gYnVpbGRfbGlua19hZGRyZXNzKHR4 bXNnKTsKPj4+ICsJYnVpbGRfbGlua19hZGRyZXNzKHR4bXNnKTsKPj4+ICAgCj4+PiAgIAltc3Ri LT5saW5rX2FkZHJlc3Nfc2VudCA9IHRydWU7Cj4+PiAgIAlkcm1fZHBfcXVldWVfZG93bl90eCht Z3IsIHR4bXNnKTsKPj4+IEBAIC0yNDc2LDcgKzI0NjAsNiBAQCBkcm1fZHBfc2VuZF9lbnVtX3Bh dGhfcmVzb3VyY2VzKHN0cnVjdCBkcm1fZHBfbXN0X3RvcG9sb2d5X21nciAqbWdyLAo+Pj4gICB7 Cj4+PiAgIAlzdHJ1Y3QgZHJtX2RwX2VudW1fcGF0aF9yZXNvdXJjZXNfYWNrX3JlcGx5ICpwYXRo X3JlczsKPj4+ICAgCXN0cnVjdCBkcm1fZHBfc2lkZWJhbmRfbXNnX3R4ICp0eG1zZzsKPj4+IC0J aW50IGxlbjsKPj4+ICAgCWludCByZXQ7Cj4+PiAgIAo+Pj4gICAJdHhtc2cgPSBremFsbG9jKHNp emVvZigqdHhtc2cpLCBHRlBfS0VSTkVMKTsKPj4+IEBAIC0yNDg0LDcgKzI0NjcsNyBAQCBkcm1f ZHBfc2VuZF9lbnVtX3BhdGhfcmVzb3VyY2VzKHN0cnVjdCBkcm1fZHBfbXN0X3RvcG9sb2d5X21n ciAqbWdyLAo+Pj4gICAJCXJldHVybiAtRU5PTUVNOwo+Pj4gICAKPj4+ICAgCXR4bXNnLT5kc3Qg PSBtc3RiOwo+Pj4gLQlsZW4gPSBidWlsZF9lbnVtX3BhdGhfcmVzb3VyY2VzKHR4bXNnLCBwb3J0 LT5wb3J0X251bSk7Cj4+PiArCWJ1aWxkX2VudW1fcGF0aF9yZXNvdXJjZXModHhtc2csIHBvcnQt PnBvcnRfbnVtKTsKPj4+ICAgCj4+PiAgIAlkcm1fZHBfcXVldWVfZG93bl90eChtZ3IsIHR4bXNn KTsKPj4+ICAgCj4+PiBAQCAtMjU2Nyw3ICsyNTUwLDcgQEAgc3RhdGljIGludCBkcm1fZHBfcGF5 bG9hZF9zZW5kX21zZyhzdHJ1Y3QgZHJtX2RwX21zdF90b3BvbG9neV9tZ3IgKm1nciwKPj4+ICAg ewo+Pj4gICAJc3RydWN0IGRybV9kcF9zaWRlYmFuZF9tc2dfdHggKnR4bXNnOwo+Pj4gICAJc3Ry dWN0IGRybV9kcF9tc3RfYnJhbmNoICptc3RiOwo+Pj4gLQlpbnQgbGVuLCByZXQsIHBvcnRfbnVt Owo+Pj4gKwlpbnQgcmV0LCBwb3J0X251bTsKPj4+ICAgCXU4IHNpbmtzW0RSTV9EUF9NQVhfU0RQ X1NUUkVBTVNdOwo+Pj4gICAJaW50IGk7Cj4+PiAgIAo+Pj4gQEAgLTI1OTIsOSArMjU3NSw5IEBA IHN0YXRpYyBpbnQgZHJtX2RwX3BheWxvYWRfc2VuZF9tc2coc3RydWN0IGRybV9kcF9tc3RfdG9w b2xvZ3lfbWdyICptZ3IsCj4+PiAgIAkJc2lua3NbaV0gPSBpOwo+Pj4gICAKPj4+ICAgCXR4bXNn LT5kc3QgPSBtc3RiOwo+Pj4gLQlsZW4gPSBidWlsZF9hbGxvY2F0ZV9wYXlsb2FkKHR4bXNnLCBw b3J0X251bSwKPj4+IC0JCQkJICAgICBpZCwKPj4+IC0JCQkJICAgICBwYm4sIHBvcnQtPm51bV9z ZHBfc3RyZWFtcywgc2lua3MpOwo+Pj4gKwlidWlsZF9hbGxvY2F0ZV9wYXlsb2FkKHR4bXNnLCBw b3J0X251bSwKPj4+ICsJCQkgICAgICAgaWQsCj4+PiArCQkJICAgICAgIHBibiwgcG9ydC0+bnVt X3NkcF9zdHJlYW1zLCBzaW5rcyk7Cj4+PiAgIAo+Pj4gICAJZHJtX2RwX3F1ZXVlX2Rvd25fdHgo bWdyLCB0eG1zZyk7Cj4+PiAgIAo+Pj4gQEAgLTI2MjMsNyArMjYwNiw3IEBAIGludCBkcm1fZHBf c2VuZF9wb3dlcl91cGRvd25fcGh5KHN0cnVjdCBkcm1fZHBfbXN0X3RvcG9sb2d5X21nciAqbWdy LAo+Pj4gICAJCQkJIHN0cnVjdCBkcm1fZHBfbXN0X3BvcnQgKnBvcnQsIGJvb2wgcG93ZXJfdXAp Cj4+PiAgIHsKPj4+ICAgCXN0cnVjdCBkcm1fZHBfc2lkZWJhbmRfbXNnX3R4ICp0eG1zZzsKPj4+ IC0JaW50IGxlbiwgcmV0Owo+Pj4gKwlpbnQgcmV0Owo+Pj4gICAKPj4+ICAgCXBvcnQgPSBkcm1f ZHBfbXN0X3RvcG9sb2d5X2dldF9wb3J0X3ZhbGlkYXRlZChtZ3IsIHBvcnQpOwo+Pj4gICAJaWYg KCFwb3J0KQo+Pj4gQEAgLTI2MzYsNyArMjYxOSw3IEBAIGludCBkcm1fZHBfc2VuZF9wb3dlcl91 cGRvd25fcGh5KHN0cnVjdCBkcm1fZHBfbXN0X3RvcG9sb2d5X21nciAqbWdyLAo+Pj4gICAJfQo+ Pj4gICAKPj4+ICAgCXR4bXNnLT5kc3QgPSBwb3J0LT5wYXJlbnQ7Cj4+PiAtCWxlbiA9IGJ1aWxk X3Bvd2VyX3VwZG93bl9waHkodHhtc2csIHBvcnQtPnBvcnRfbnVtLCBwb3dlcl91cCk7Cj4+PiAr CWJ1aWxkX3Bvd2VyX3VwZG93bl9waHkodHhtc2csIHBvcnQtPnBvcnRfbnVtLCBwb3dlcl91cCk7 Cj4+PiAgIAlkcm1fZHBfcXVldWVfZG93bl90eChtZ3IsIHR4bXNnKTsKPj4+ICAgCj4+PiAgIAly ZXQgPSBkcm1fZHBfbXN0X3dhaXRfdHhfcmVwbHkocG9ydC0+cGFyZW50LCB0eG1zZyk7Cj4+PiBA QCAtMjg1Niw3ICsyODM5LDYgQEAgc3RhdGljIGludCBkcm1fZHBfc2VuZF9kcGNkX3JlYWQoc3Ry dWN0IGRybV9kcF9tc3RfdG9wb2xvZ3lfbWdyICptZ3IsCj4+PiAgIAkJCQkgc3RydWN0IGRybV9k cF9tc3RfcG9ydCAqcG9ydCwKPj4+ICAgCQkJCSBpbnQgb2Zmc2V0LCBpbnQgc2l6ZSwgdTggKmJ5 dGVzKQo+Pj4gICB7Cj4+PiAtCWludCBsZW47Cj4+PiAgIAlpbnQgcmV0ID0gMDsKPj4+ICAgCXN0 cnVjdCBkcm1fZHBfc2lkZWJhbmRfbXNnX3R4ICp0eG1zZzsKPj4+ICAgCXN0cnVjdCBkcm1fZHBf bXN0X2JyYW5jaCAqbXN0YjsKPj4+IEBAIC0yODcxLDcgKzI4NTMsNyBAQCBzdGF0aWMgaW50IGRy bV9kcF9zZW5kX2RwY2RfcmVhZChzdHJ1Y3QgZHJtX2RwX21zdF90b3BvbG9neV9tZ3IgKm1nciwK Pj4+ICAgCQlnb3RvIGZhaWxfcHV0Owo+Pj4gICAJfQo+Pj4gICAKPj4+IC0JbGVuID0gYnVpbGRf ZHBjZF9yZWFkKHR4bXNnLCBwb3J0LT5wb3J0X251bSwgb2Zmc2V0LCBzaXplKTsKPj4+ICsJYnVp bGRfZHBjZF9yZWFkKHR4bXNnLCBwb3J0LT5wb3J0X251bSwgb2Zmc2V0LCBzaXplKTsKPj4+ICAg CXR4bXNnLT5kc3QgPSBwb3J0LT5wYXJlbnQ7Cj4+PiAgIAo+Pj4gICAJZHJtX2RwX3F1ZXVlX2Rv d25fdHgobWdyLCB0eG1zZyk7Cj4+PiBAQCAtMjkwOSw3ICsyODkxLDYgQEAgc3RhdGljIGludCBk cm1fZHBfc2VuZF9kcGNkX3dyaXRlKHN0cnVjdCBkcm1fZHBfbXN0X3RvcG9sb2d5X21nciAqbWdy LAo+Pj4gICAJCQkJICBzdHJ1Y3QgZHJtX2RwX21zdF9wb3J0ICpwb3J0LAo+Pj4gICAJCQkJICBp bnQgb2Zmc2V0LCBpbnQgc2l6ZSwgdTggKmJ5dGVzKQo+Pj4gICB7Cj4+PiAtCWludCBsZW47Cj4+ PiAgIAlpbnQgcmV0Owo+Pj4gICAJc3RydWN0IGRybV9kcF9zaWRlYmFuZF9tc2dfdHggKnR4bXNn Owo+Pj4gICAJc3RydWN0IGRybV9kcF9tc3RfYnJhbmNoICptc3RiOwo+Pj4gQEAgLTI5MjQsNyAr MjkwNSw3IEBAIHN0YXRpYyBpbnQgZHJtX2RwX3NlbmRfZHBjZF93cml0ZShzdHJ1Y3QgZHJtX2Rw X21zdF90b3BvbG9neV9tZ3IgKm1nciwKPj4+ICAgCQlnb3RvIGZhaWxfcHV0Owo+Pj4gICAJfQo+ Pj4gICAKPj4+IC0JbGVuID0gYnVpbGRfZHBjZF93cml0ZSh0eG1zZywgcG9ydC0+cG9ydF9udW0s IG9mZnNldCwgc2l6ZSwgYnl0ZXMpOwo+Pj4gKwlidWlsZF9kcGNkX3dyaXRlKHR4bXNnLCBwb3J0 LT5wb3J0X251bSwgb2Zmc2V0LCBzaXplLCBieXRlcyk7Cj4+PiAgIAl0eG1zZy0+ZHN0ID0gbXN0 YjsKPj4+ICAgCj4+PiAgIAlkcm1fZHBfcXVldWVfZG93bl90eChtZ3IsIHR4bXNnKTsKPj4+IEBA IC0zMTQ3LDcgKzMxMjgsNyBAQCBzdGF0aWMgYm9vbCBkcm1fZHBfZ2V0X29uZV9zYl9tc2coc3Ry dWN0IGRybV9kcF9tc3RfdG9wb2xvZ3lfbWdyICptZ3IsIGJvb2wgdXApCj4+PiAgIHsKPj4+ICAg CWludCBsZW47Cj4+PiAgIAl1OCByZXBseWJsb2NrWzMyXTsKPj4+IC0JaW50IHJlcGx5bGVuLCBv cmlnbGVuLCBjdXJyZXBseTsKPj4+ICsJaW50IHJlcGx5bGVuLCBjdXJyZXBseTsKPj4+ICAgCWlu dCByZXQ7Cj4+PiAgIAlzdHJ1Y3QgZHJtX2RwX3NpZGViYW5kX21zZ19yeCAqbXNnOwo+Pj4gICAJ aW50IGJhc2VyZWcgPSB1cCA/IERQX1NJREVCQU5EX01TR19VUF9SRVFfQkFTRSA6IERQX1NJREVC QU5EX01TR19ET1dOX1JFUF9CQVNFOwo+Pj4gQEAgLTMxNjcsNyArMzE0OCw2IEBAIHN0YXRpYyBi b29sIGRybV9kcF9nZXRfb25lX3NiX21zZyhzdHJ1Y3QgZHJtX2RwX21zdF90b3BvbG9neV9tZ3Ig Km1nciwgYm9vbCB1cCkKPj4+ICAgCX0KPj4+ICAgCXJlcGx5bGVuID0gbXNnLT5jdXJjaHVua19s ZW4gKyBtc2ctPmN1cmNodW5rX2hkcmxlbjsKPj4+ICAgCj4+PiAtCW9yaWdsZW4gPSByZXBseWxl bjsKPj4+ICAgCXJlcGx5bGVuIC09IGxlbjsKPj4+ICAgCWN1cnJlcGx5ID0gbGVuOwo+Pj4gICAJ d2hpbGUgKHJlcGx5bGVuID4gMCkgewo+Pj4gQEAgLTM5NTksMTcgKzM5MzksMTYgQEAgdm9pZCBk cm1fZHBfbXN0X2R1bXBfdG9wb2xvZ3koc3RydWN0IHNlcV9maWxlICptLAo+Pj4gICAJbXV0ZXhf bG9jaygmbWdyLT5sb2NrKTsKPj4+ICAgCWlmIChtZ3ItPm1zdF9wcmltYXJ5KSB7Cj4+PiAgIAkJ dTggYnVmW0RQX1BBWUxPQURfVEFCTEVfU0laRV07Cj4+PiAtCQlpbnQgcmV0Owo+Pj4gICAKPj4+ IC0JCXJldCA9IGRybV9kcF9kcGNkX3JlYWQobWdyLT5hdXgsIERQX0RQQ0RfUkVWLCBidWYsIERQ X1JFQ0VJVkVSX0NBUF9TSVpFKTsKPj4+ICsJCWRybV9kcF9kcGNkX3JlYWQobWdyLT5hdXgsIERQ X0RQQ0RfUkVWLCBidWYsIERQX1JFQ0VJVkVSX0NBUF9TSVpFKTsKPj4+ICAgCQlzZXFfcHJpbnRm KG0sICJkcGNkOiAlKnBoXG4iLCBEUF9SRUNFSVZFUl9DQVBfU0laRSwgYnVmKTsKPj4+IC0JCXJl dCA9IGRybV9kcF9kcGNkX3JlYWQobWdyLT5hdXgsIERQX0ZBVVhfQ0FQLCBidWYsIDIpOwo+Pj4g KwkJZHJtX2RwX2RwY2RfcmVhZChtZ3ItPmF1eCwgRFBfRkFVWF9DQVAsIGJ1ZiwgMik7Cj4+PiAg IAkJc2VxX3ByaW50ZihtLCAiZmF1eC9tc3Q6ICUqcGhcbiIsIDIsIGJ1Zik7Cj4+PiAtCQlyZXQg PSBkcm1fZHBfZHBjZF9yZWFkKG1nci0+YXV4LCBEUF9NU1RNX0NUUkwsIGJ1ZiwgMSk7Cj4+PiAr CQlkcm1fZHBfZHBjZF9yZWFkKG1nci0+YXV4LCBEUF9NU1RNX0NUUkwsIGJ1ZiwgMSk7Cj4+PiAg IAkJc2VxX3ByaW50ZihtLCAibXN0IGN0cmw6ICUqcGhcbiIsIDEsIGJ1Zik7Cj4+PiAgIAo+Pj4g ICAJCS8qIGR1bXAgdGhlIHN0YW5kYXJkIE9VSSBicmFuY2ggaGVhZGVyICovCj4+PiAtCQlyZXQg PSBkcm1fZHBfZHBjZF9yZWFkKG1nci0+YXV4LCBEUF9CUkFOQ0hfT1VJLCBidWYsIERQX0JSQU5D SF9PVUlfSEVBREVSX1NJWkUpOwo+Pj4gKwkJZHJtX2RwX2RwY2RfcmVhZChtZ3ItPmF1eCwgRFBf QlJBTkNIX09VSSwgYnVmLCBEUF9CUkFOQ0hfT1VJX0hFQURFUl9TSVpFKTsKPj4+ICAgCQlzZXFf cHJpbnRmKG0sICJicmFuY2ggb3VpOiAlKnBoTiBkZXZpZDogIiwgMywgYnVmKTsKPj4+ICAgCQlm b3IgKGkgPSAweDM7IGkgPCAweDggJiYgYnVmW2ldOyBpKyspCj4+PiAgIAkJCXNlcV9wcmludGYo bSwgIiVjIiwgYnVmW2ldKTsKCi0tIApKYW5pIE5pa3VsYSwgSW50ZWwgT3BlbiBTb3VyY2UgR3Jh cGhpY3MgQ2VudGVyCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fCmRyaS1kZXZlbCBtYWlsaW5nIGxpc3QKZHJpLWRldmVsQGxpc3RzLmZyZWVkZXNrdG9wLm9y ZwpodHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2RyaS1kZXZl bA== 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=-6.8 required=3.0 tests=HEADER_FROM_DIFFERENT_DOMAINS, INCLUDES_PATCH,MAILING_LIST_MULTI,SIGNED_OFF_BY,SPF_HELO_NONE,SPF_PASS 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 7F7FAC432C0 for ; Thu, 28 Nov 2019 13:34:30 +0000 (UTC) Received: from gabe.freedesktop.org (gabe.freedesktop.org [131.252.210.177]) (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 5A91821741 for ; Thu, 28 Nov 2019 13:34:30 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 5A91821741 Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=linux.intel.com Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=dri-devel-bounces@lists.freedesktop.org Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id CCC256E0EC; Thu, 28 Nov 2019 13:34:29 +0000 (UTC) Received: from mga06.intel.com (mga06.intel.com [134.134.136.31]) by gabe.freedesktop.org (Postfix) with ESMTPS id CF10B6E0EC for ; Thu, 28 Nov 2019 13:34:27 +0000 (UTC) X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from orsmga007.jf.intel.com ([10.7.209.58]) by orsmga104.jf.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 28 Nov 2019 05:34:27 -0800 X-IronPort-AV: E=Sophos;i="5.69,253,1571727600"; d="scan'208";a="199529160" Received: from jnikula-mobl3.fi.intel.com (HELO localhost) ([10.237.66.161]) by orsmga007-auth.jf.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 28 Nov 2019 05:34:24 -0800 From: Jani Nikula To: Benjamin GAIGNARD , "maarten.lankhorst\@linux.intel.com" , "mripard\@kernel.org" , "sean\@poorly.run" , "airlied\@linux.ie" , "daniel\@ffwll.ch" Subject: Re: [PATCH v2] drm/dp_mst: Fix W=1 warnings In-Reply-To: <8f64b1e7-d7b8-43df-8efe-ca5af91e2cd3@st.com> Organization: Intel Finland Oy - BIC 0357606-4 - Westendinkatu 7, 02160 Espoo References: <20191128110012.23898-1-benjamin.gaignard@st.com> <87sgm8mekf.fsf@intel.com> <8f64b1e7-d7b8-43df-8efe-ca5af91e2cd3@st.com> Date: Thu, 28 Nov 2019 15:34:21 +0200 Message-ID: <87h82om8f6.fsf@intel.com> MIME-Version: 1.0 X-BeenThere: dri-devel@lists.freedesktop.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: Direct Rendering Infrastructure - Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: "linux-kernel@vger.kernel.org" , "dri-devel@lists.freedesktop.org" Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" Message-ID: <20191128133421.nqEaAWmIcyirdmIFDu296ObpXuNqs-TRO_ZG0ewnGQA@z> T24gVGh1LCAyOCBOb3YgMjAxOSwgQmVuamFtaW4gR0FJR05BUkQgPGJlbmphbWluLmdhaWduYXJk QHN0LmNvbT4gd3JvdGU6Cj4gT24gMTEvMjgvMTkgMTI6MjEgUE0sIEphbmkgTmlrdWxhIHdyb3Rl Ogo+PiBPbiBUaHUsIDI4IE5vdiAyMDE5LCBCZW5qYW1pbiBHYWlnbmFyZCA8YmVuamFtaW4uZ2Fp Z25hcmRAc3QuY29tPiB3cm90ZToKPj4+IEZpeCB0aGUgd2FybmluZ3MgdGhhdCBzaG93IHVwIHdp dGggVz0xLgo+Pj4gVGhleSBhcmUgYWxsIGFib3V0IHVudXNlZCBidXQgc2V0IHZhcmlhYmxlcy4K Pj4+IElmIGZ1bmN0aW9ucyByZXR1cm5zIGFyZSBub3QgdXNlZCBhbnltb3JlIG1ha2UgdGhlbSB2 b2lkLgo+Pj4KPj4+IFNpZ25lZC1vZmYtYnk6IEJlbmphbWluIEdhaWduYXJkIDxiZW5qYW1pbi5n YWlnbmFyZEBzdC5jb20+Cj4+PiBDQzogSmFuaSBOaWt1bGEgPGphbmkubmlrdWxhQGxpbnV4Lmlu dGVsLmNvbT4KPj4+IC0tLQo+Pj4gY2hhbmdlcyBpbiB2ZXJzaW9uIDI6Cj4+PiAtIGZpeCBpbmRl bnRhdGlvbnMKPj4+IC0gd2hlbiBwb3NzaWJsZSBjaGFuZ2UgZnVuY3Rpb25zIHByb3RvdHlwZSB0 byB2b2lkCj4+Pgo+Pj4gTm90ZTogdGhpcyBwYXRjaCBtYXkgY29uZmxpY3Qgd2l0aCBjNDg1ZTJj OTdkYWUgKCJkcm0vZHBfbXN0OiBSZWZhY3RvciBwZHQKPj4+IHNldHVwL3RlYXJkb3duLCBhZGQg bW9yZSBsb2NraW5nIikgd2hlbiBpdCB3aWxsIGhpdCBkcm0tbWlzYy1uZXh0Cj4+IFdlbGwsIHdo eSBjcmVhdGUgYW4gdW5uZWNlc3NhcnkgY29uZmxpY3Qgd2hlbiB0aGUgcmVmZXJlbmNlZCBjb21t aXQgYWxzbwo+PiBmaXhlcyB0aGUgc2FtZSB3YXJuaW5ncyBhcyBhIHNpZGUtZWZmZWN0Pwo+Cj4g QmVjYXVzZSB0aGlzIGNvbW1pdCBpcyBub3QgbWVyZ2VkICh5ZXQgPykgaW4gZHJtLW1pc2MtbmV4 dCB3aGljaCB3aGVyZSBJIAo+IHN0YXJ0LgoKSSBtZWFuIGp1c3QgbGVhdmUgdGhlIGh1bmsgb3V0 IGFuZCB0aGUgcHJvYmxlbSB3aWxsIGZpeCBpdHNlbGYgb25jZSB0aGUKc3R1ZmYgZ2V0cyBiYWNr bWVyZ2VkIHRvIGRybS1taXNjLW5leHQuCgpCUiwKSmFuaS4KCgo+Cj4gQmVuamFtaW4KPgo+PiBC UiwKPj4gSmFuaS4KPj4KPj4KPj4+ICAgZHJpdmVycy9ncHUvZHJtL2RybV9kcF9tc3RfdG9wb2xv Z3kuYyB8IDgzICsrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tCj4+PiAgIDEgZmls ZSBjaGFuZ2VkLCAzMSBpbnNlcnRpb25zKCspLCA1MiBkZWxldGlvbnMoLSkKPj4+Cj4+PiBkaWZm IC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2RybV9kcF9tc3RfdG9wb2xvZ3kuYyBiL2RyaXZlcnMv Z3B1L2RybS9kcm1fZHBfbXN0X3RvcG9sb2d5LmMKPj4+IGluZGV4IGI4NTRhNDIyYTUyMy4uZmYy ZDgxZGIwNzc4IDEwMDY0NAo+Pj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL2RybV9kcF9tc3RfdG9w b2xvZ3kuYwo+Pj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL2RybV9kcF9tc3RfdG9wb2xvZ3kuYwo+ Pj4gQEAgLTY3Miw3ICs2NzIsNiBAQCBzdGF0aWMgYm9vbCBkcm1fZHBfc2lkZWJhbmRfbXNnX2J1 aWxkKHN0cnVjdCBkcm1fZHBfc2lkZWJhbmRfbXNnX3J4ICptc2csCj4+PiAgIAkJCQkgICAgICB1 OCAqcmVwbHlidWYsIHU4IHJlcGx5YnVmbGVuLCBib29sIGhkcikKPj4+ICAgewo+Pj4gICAJaW50 IHJldDsKPj4+IC0JdTggY3JjNDsKPj4+ICAgCj4+PiAgIAlpZiAoaGRyKSB7Cj4+PiAgIAkJdTgg aGRybGVuOwo+Pj4gQEAgLTcxNCw4ICs3MTMsNiBAQCBzdGF0aWMgYm9vbCBkcm1fZHBfc2lkZWJh bmRfbXNnX2J1aWxkKHN0cnVjdCBkcm1fZHBfc2lkZWJhbmRfbXNnX3J4ICptc2csCj4+PiAgIAl9 Cj4+PiAgIAo+Pj4gICAJaWYgKG1zZy0+Y3VyY2h1bmtfaWR4ID49IG1zZy0+Y3VyY2h1bmtfbGVu KSB7Cj4+PiAtCQkvKiBkbyBDUkMgKi8KPj4+IC0JCWNyYzQgPSBkcm1fZHBfbXNnX2RhdGFfY3Jj NChtc2ctPmNodW5rLCBtc2ctPmN1cmNodW5rX2xlbiAtIDEpOwo+Pj4gICAJCS8qIGNvcHkgY2h1 bmsgaW50byBiaWdnZXIgbXNnICovCj4+PiAgIAkJbWVtY3B5KCZtc2ctPm1zZ1ttc2ctPmN1cmxl bl0sIG1zZy0+Y2h1bmssIG1zZy0+Y3VyY2h1bmtfbGVuIC0gMSk7Cj4+PiAgIAkJbXNnLT5jdXJs ZW4gKz0gbXNnLT5jdXJjaHVua19sZW4gLSAxOwo+Pj4gQEAgLTEwMTIsNyArMTAwOSw3IEBAIHN0 YXRpYyBib29sIGRybV9kcF9zaWRlYmFuZF9wYXJzZV9yZXEoc3RydWN0IGRybV9kcF9zaWRlYmFu ZF9tc2dfcnggKnJhdywKPj4+ICAgCX0KPj4+ICAgfQo+Pj4gICAKPj4+IC1zdGF0aWMgaW50IGJ1 aWxkX2RwY2Rfd3JpdGUoc3RydWN0IGRybV9kcF9zaWRlYmFuZF9tc2dfdHggKm1zZywgdTggcG9y dF9udW0sIHUzMiBvZmZzZXQsIHU4IG51bV9ieXRlcywgdTggKmJ5dGVzKQo+Pj4gK3N0YXRpYyB2 b2lkIGJ1aWxkX2RwY2Rfd3JpdGUoc3RydWN0IGRybV9kcF9zaWRlYmFuZF9tc2dfdHggKm1zZywg dTggcG9ydF9udW0sIHUzMiBvZmZzZXQsIHU4IG51bV9ieXRlcywgdTggKmJ5dGVzKQo+Pj4gICB7 Cj4+PiAgIAlzdHJ1Y3QgZHJtX2RwX3NpZGViYW5kX21zZ19yZXFfYm9keSByZXE7Cj4+PiAgIAo+ Pj4gQEAgLTEwMjIsMTcgKzEwMTksMTQgQEAgc3RhdGljIGludCBidWlsZF9kcGNkX3dyaXRlKHN0 cnVjdCBkcm1fZHBfc2lkZWJhbmRfbXNnX3R4ICptc2csIHU4IHBvcnRfbnVtLCB1MzIKPj4+ICAg CXJlcS51LmRwY2Rfd3JpdGUubnVtX2J5dGVzID0gbnVtX2J5dGVzOwo+Pj4gICAJcmVxLnUuZHBj ZF93cml0ZS5ieXRlcyA9IGJ5dGVzOwo+Pj4gICAJZHJtX2RwX2VuY29kZV9zaWRlYmFuZF9yZXEo JnJlcSwgbXNnKTsKPj4+IC0KPj4+IC0JcmV0dXJuIDA7Cj4+PiAgIH0KPj4+ICAgCj4+PiAtc3Rh dGljIGludCBidWlsZF9saW5rX2FkZHJlc3Moc3RydWN0IGRybV9kcF9zaWRlYmFuZF9tc2dfdHgg Km1zZykKPj4+ICtzdGF0aWMgdm9pZCBidWlsZF9saW5rX2FkZHJlc3Moc3RydWN0IGRybV9kcF9z aWRlYmFuZF9tc2dfdHggKm1zZykKPj4+ICAgewo+Pj4gICAJc3RydWN0IGRybV9kcF9zaWRlYmFu ZF9tc2dfcmVxX2JvZHkgcmVxOwo+Pj4gICAKPj4+ICAgCXJlcS5yZXFfdHlwZSA9IERQX0xJTktf QUREUkVTUzsKPj4+ICAgCWRybV9kcF9lbmNvZGVfc2lkZWJhbmRfcmVxKCZyZXEsIG1zZyk7Cj4+ PiAtCXJldHVybiAwOwo+Pj4gICB9Cj4+PiAgIAo+Pj4gICBzdGF0aWMgaW50IGJ1aWxkX2VudW1f cGF0aF9yZXNvdXJjZXMoc3RydWN0IGRybV9kcF9zaWRlYmFuZF9tc2dfdHggKm1zZywgaW50IHBv cnRfbnVtKQo+Pj4gQEAgLTEwNDYsNyArMTA0MCw3IEBAIHN0YXRpYyBpbnQgYnVpbGRfZW51bV9w YXRoX3Jlc291cmNlcyhzdHJ1Y3QgZHJtX2RwX3NpZGViYW5kX21zZ190eCAqbXNnLCBpbnQgcG9y Cj4+PiAgIAlyZXR1cm4gMDsKPj4+ICAgfQo+Pj4gICAKPj4+IC1zdGF0aWMgaW50IGJ1aWxkX2Fs bG9jYXRlX3BheWxvYWQoc3RydWN0IGRybV9kcF9zaWRlYmFuZF9tc2dfdHggKm1zZywgaW50IHBv cnRfbnVtLAo+Pj4gK3N0YXRpYyB2b2lkIGJ1aWxkX2FsbG9jYXRlX3BheWxvYWQoc3RydWN0IGRy bV9kcF9zaWRlYmFuZF9tc2dfdHggKm1zZywgaW50IHBvcnRfbnVtLAo+Pj4gICAJCQkJICB1OCB2 Y3BpLCB1aW50MTZfdCBwYm4sCj4+PiAgIAkJCQkgIHU4IG51bWJlcl9zZHBfc3RyZWFtcywKPj4+ ICAgCQkJCSAgdTggKnNkcF9zdHJlYW1fc2luaykKPj4+IEBAIC0xMDYyLDEwICsxMDU2LDkgQEAg c3RhdGljIGludCBidWlsZF9hbGxvY2F0ZV9wYXlsb2FkKHN0cnVjdCBkcm1fZHBfc2lkZWJhbmRf bXNnX3R4ICptc2csIGludCBwb3J0X24KPj4+ICAgCQkgICBudW1iZXJfc2RwX3N0cmVhbXMpOwo+ Pj4gICAJZHJtX2RwX2VuY29kZV9zaWRlYmFuZF9yZXEoJnJlcSwgbXNnKTsKPj4+ICAgCW1zZy0+ cGF0aF9tc2cgPSB0cnVlOwo+Pj4gLQlyZXR1cm4gMDsKPj4+ICAgfQo+Pj4gICAKPj4+IC1zdGF0 aWMgaW50IGJ1aWxkX3Bvd2VyX3VwZG93bl9waHkoc3RydWN0IGRybV9kcF9zaWRlYmFuZF9tc2df dHggKm1zZywKPj4+ICtzdGF0aWMgdm9pZCBidWlsZF9wb3dlcl91cGRvd25fcGh5KHN0cnVjdCBk cm1fZHBfc2lkZWJhbmRfbXNnX3R4ICptc2csCj4+PiAgIAkJCQkgIGludCBwb3J0X251bSwgYm9v bCBwb3dlcl91cCkKPj4+ICAgewo+Pj4gICAJc3RydWN0IGRybV9kcF9zaWRlYmFuZF9tc2dfcmVx X2JvZHkgcmVxOwo+Pj4gQEAgLTEwNzgsNyArMTA3MSw2IEBAIHN0YXRpYyBpbnQgYnVpbGRfcG93 ZXJfdXBkb3duX3BoeShzdHJ1Y3QgZHJtX2RwX3NpZGViYW5kX21zZ190eCAqbXNnLAo+Pj4gICAJ cmVxLnUucG9ydF9udW0ucG9ydF9udW1iZXIgPSBwb3J0X251bTsKPj4+ICAgCWRybV9kcF9lbmNv ZGVfc2lkZWJhbmRfcmVxKCZyZXEsIG1zZyk7Cj4+PiAgIAltc2ctPnBhdGhfbXNnID0gdHJ1ZTsK Pj4+IC0JcmV0dXJuIDA7Cj4+PiAgIH0KPj4+ICAgCj4+PiAgIHN0YXRpYyBpbnQgZHJtX2RwX21z dF9hc3NpZ25fcGF5bG9hZF9pZChzdHJ1Y3QgZHJtX2RwX21zdF90b3BvbG9neV9tZ3IgKm1nciwK Pj4+IEBAIC0xNzQ0LDE0ICsxNzM2LDEzIEBAIHN0YXRpYyB1OCBkcm1fZHBfY2FsY3VsYXRlX3Jh ZChzdHJ1Y3QgZHJtX2RwX21zdF9wb3J0ICpwb3J0LAo+Pj4gICAgKi8KPj4+ICAgc3RhdGljIGJv b2wgZHJtX2RwX3BvcnRfc2V0dXBfcGR0KHN0cnVjdCBkcm1fZHBfbXN0X3BvcnQgKnBvcnQpCj4+ PiAgIHsKPj4+IC0JaW50IHJldDsKPj4+ICAgCXU4IHJhZFs2XSwgbGN0Owo+Pj4gICAJYm9vbCBz ZW5kX2xpbmsgPSBmYWxzZTsKPj4+ICAgCXN3aXRjaCAocG9ydC0+cGR0KSB7Cj4+PiAgIAljYXNl IERQX1BFRVJfREVWSUNFX0RQX0xFR0FDWV9DT05WOgo+Pj4gICAJY2FzZSBEUF9QRUVSX0RFVklD RV9TU1RfU0lOSzoKPj4+ICAgCQkvKiBhZGQgaTJjIG92ZXIgc2lkZWJhbmQgKi8KPj4+IC0JCXJl dCA9IGRybV9kcF9tc3RfcmVnaXN0ZXJfaTJjX2J1cygmcG9ydC0+YXV4KTsKPj4+ICsJCWRybV9k cF9tc3RfcmVnaXN0ZXJfaTJjX2J1cygmcG9ydC0+YXV4KTsKPj4+ICAgCQlicmVhazsKPj4+ICAg CWNhc2UgRFBfUEVFUl9ERVZJQ0VfTVNUX0JSQU5DSElORzoKPj4+ICAgCQlsY3QgPSBkcm1fZHBf Y2FsY3VsYXRlX3JhZChwb3J0LCByYWQpOwo+Pj4gQEAgLTE4MjEsMjUgKzE4MTIsMjAgQEAgc3Np emVfdCBkcm1fZHBfbXN0X2RwY2Rfd3JpdGUoc3RydWN0IGRybV9kcF9hdXggKmF1eCwKPj4+ICAg Cj4+PiAgIHN0YXRpYyB2b2lkIGRybV9kcF9jaGVja19tc3RiX2d1aWQoc3RydWN0IGRybV9kcF9t c3RfYnJhbmNoICptc3RiLCB1OCAqZ3VpZCkKPj4+ICAgewo+Pj4gLQlpbnQgcmV0Owo+Pj4gLQo+ Pj4gICAJbWVtY3B5KG1zdGItPmd1aWQsIGd1aWQsIDE2KTsKPj4+ICAgCj4+PiAgIAlpZiAoIWRy bV9kcF92YWxpZGF0ZV9ndWlkKG1zdGItPm1nciwgbXN0Yi0+Z3VpZCkpIHsKPj4+ICAgCQlpZiAo bXN0Yi0+cG9ydF9wYXJlbnQpIHsKPj4+IC0JCQlyZXQgPSBkcm1fZHBfc2VuZF9kcGNkX3dyaXRl KAo+Pj4gLQkJCQkJbXN0Yi0+bWdyLAo+Pj4gLQkJCQkJbXN0Yi0+cG9ydF9wYXJlbnQsCj4+PiAt CQkJCQlEUF9HVUlELAo+Pj4gLQkJCQkJMTYsCj4+PiAtCQkJCQltc3RiLT5ndWlkKTsKPj4+ICsJ CQlkcm1fZHBfc2VuZF9kcGNkX3dyaXRlKG1zdGItPm1nciwKPj4+ICsJCQkJCSAgICAgICBtc3Ri LT5wb3J0X3BhcmVudCwKPj4+ICsJCQkJCSAgICAgICBEUF9HVUlELAo+Pj4gKwkJCQkJICAgICAg IDE2LAo+Pj4gKwkJCQkJICAgICAgIG1zdGItPmd1aWQpOwo+Pj4gICAJCX0gZWxzZSB7Cj4+PiAt Cj4+PiAtCQkJcmV0ID0gZHJtX2RwX2RwY2Rfd3JpdGUoCj4+PiAtCQkJCQltc3RiLT5tZ3ItPmF1 eCwKPj4+IC0JCQkJCURQX0dVSUQsCj4+PiAtCQkJCQltc3RiLT5ndWlkLAo+Pj4gLQkJCQkJMTYp Owo+Pj4gKwkJCWRybV9kcF9kcGNkX3dyaXRlKG1zdGItPm1nci0+YXV4LAo+Pj4gKwkJCQkJICBE UF9HVUlELAo+Pj4gKwkJCQkJICBtc3RiLT5ndWlkLAo+Pj4gKwkJCQkJICAxNik7Cj4+PiAgIAkJ fQo+Pj4gICAJfQo+Pj4gICB9Cj4+PiBAQCAtMjE5NSw3ICsyMTgxLDcgQEAgc3RhdGljIGJvb2wg ZHJtX2RwX3ZhbGlkYXRlX2d1aWQoc3RydWN0IGRybV9kcF9tc3RfdG9wb2xvZ3lfbWdyICptZ3Is Cj4+PiAgIAlyZXR1cm4gZmFsc2U7Cj4+PiAgIH0KPj4+ICAgCj4+PiAtc3RhdGljIGludCBidWls ZF9kcGNkX3JlYWQoc3RydWN0IGRybV9kcF9zaWRlYmFuZF9tc2dfdHggKm1zZywgdTggcG9ydF9u dW0sIHUzMiBvZmZzZXQsIHU4IG51bV9ieXRlcykKPj4+ICtzdGF0aWMgdm9pZCBidWlsZF9kcGNk X3JlYWQoc3RydWN0IGRybV9kcF9zaWRlYmFuZF9tc2dfdHggKm1zZywgdTggcG9ydF9udW0sIHUz MiBvZmZzZXQsIHU4IG51bV9ieXRlcykKPj4+ICAgewo+Pj4gICAJc3RydWN0IGRybV9kcF9zaWRl YmFuZF9tc2dfcmVxX2JvZHkgcmVxOwo+Pj4gICAKPj4+IEBAIC0yMjA0LDggKzIxOTAsNiBAQCBz dGF0aWMgaW50IGJ1aWxkX2RwY2RfcmVhZChzdHJ1Y3QgZHJtX2RwX3NpZGViYW5kX21zZ190eCAq bXNnLCB1OCBwb3J0X251bSwgdTMyCj4+PiAgIAlyZXEudS5kcGNkX3JlYWQuZHBjZF9hZGRyZXNz ID0gb2Zmc2V0Owo+Pj4gICAJcmVxLnUuZHBjZF9yZWFkLm51bV9ieXRlcyA9IG51bV9ieXRlczsK Pj4+ICAgCWRybV9kcF9lbmNvZGVfc2lkZWJhbmRfcmVxKCZyZXEsIG1zZyk7Cj4+PiAtCj4+PiAt CXJldHVybiAwOwo+Pj4gICB9Cj4+PiAgIAo+Pj4gICBzdGF0aWMgaW50IGRybV9kcF9zZW5kX3Np ZGViYW5kX21zZyhzdHJ1Y3QgZHJtX2RwX21zdF90b3BvbG9neV9tZ3IgKm1nciwKPj4+IEBAIC0y NDI3LDE0ICsyNDExLDE0IEBAIHN0YXRpYyB2b2lkIGRybV9kcF9zZW5kX2xpbmtfYWRkcmVzcyhz dHJ1Y3QgZHJtX2RwX21zdF90b3BvbG9neV9tZ3IgKm1nciwKPj4+ICAgewo+Pj4gICAJc3RydWN0 IGRybV9kcF9zaWRlYmFuZF9tc2dfdHggKnR4bXNnOwo+Pj4gICAJc3RydWN0IGRybV9kcF9saW5r X2FkZHJlc3NfYWNrX3JlcGx5ICpyZXBseTsKPj4+IC0JaW50IGksIGxlbiwgcmV0Owo+Pj4gKwlp bnQgaSwgcmV0Owo+Pj4gICAKPj4+ICAgCXR4bXNnID0ga3phbGxvYyhzaXplb2YoKnR4bXNnKSwg R0ZQX0tFUk5FTCk7Cj4+PiAgIAlpZiAoIXR4bXNnKQo+Pj4gICAJCXJldHVybjsKPj4+ICAgCj4+ PiAgIAl0eG1zZy0+ZHN0ID0gbXN0YjsKPj4+IC0JbGVuID0gYnVpbGRfbGlua19hZGRyZXNzKHR4 bXNnKTsKPj4+ICsJYnVpbGRfbGlua19hZGRyZXNzKHR4bXNnKTsKPj4+ICAgCj4+PiAgIAltc3Ri LT5saW5rX2FkZHJlc3Nfc2VudCA9IHRydWU7Cj4+PiAgIAlkcm1fZHBfcXVldWVfZG93bl90eCht Z3IsIHR4bXNnKTsKPj4+IEBAIC0yNDc2LDcgKzI0NjAsNiBAQCBkcm1fZHBfc2VuZF9lbnVtX3Bh dGhfcmVzb3VyY2VzKHN0cnVjdCBkcm1fZHBfbXN0X3RvcG9sb2d5X21nciAqbWdyLAo+Pj4gICB7 Cj4+PiAgIAlzdHJ1Y3QgZHJtX2RwX2VudW1fcGF0aF9yZXNvdXJjZXNfYWNrX3JlcGx5ICpwYXRo X3JlczsKPj4+ICAgCXN0cnVjdCBkcm1fZHBfc2lkZWJhbmRfbXNnX3R4ICp0eG1zZzsKPj4+IC0J aW50IGxlbjsKPj4+ICAgCWludCByZXQ7Cj4+PiAgIAo+Pj4gICAJdHhtc2cgPSBremFsbG9jKHNp emVvZigqdHhtc2cpLCBHRlBfS0VSTkVMKTsKPj4+IEBAIC0yNDg0LDcgKzI0NjcsNyBAQCBkcm1f ZHBfc2VuZF9lbnVtX3BhdGhfcmVzb3VyY2VzKHN0cnVjdCBkcm1fZHBfbXN0X3RvcG9sb2d5X21n ciAqbWdyLAo+Pj4gICAJCXJldHVybiAtRU5PTUVNOwo+Pj4gICAKPj4+ICAgCXR4bXNnLT5kc3Qg PSBtc3RiOwo+Pj4gLQlsZW4gPSBidWlsZF9lbnVtX3BhdGhfcmVzb3VyY2VzKHR4bXNnLCBwb3J0 LT5wb3J0X251bSk7Cj4+PiArCWJ1aWxkX2VudW1fcGF0aF9yZXNvdXJjZXModHhtc2csIHBvcnQt PnBvcnRfbnVtKTsKPj4+ICAgCj4+PiAgIAlkcm1fZHBfcXVldWVfZG93bl90eChtZ3IsIHR4bXNn KTsKPj4+ICAgCj4+PiBAQCAtMjU2Nyw3ICsyNTUwLDcgQEAgc3RhdGljIGludCBkcm1fZHBfcGF5 bG9hZF9zZW5kX21zZyhzdHJ1Y3QgZHJtX2RwX21zdF90b3BvbG9neV9tZ3IgKm1nciwKPj4+ICAg ewo+Pj4gICAJc3RydWN0IGRybV9kcF9zaWRlYmFuZF9tc2dfdHggKnR4bXNnOwo+Pj4gICAJc3Ry dWN0IGRybV9kcF9tc3RfYnJhbmNoICptc3RiOwo+Pj4gLQlpbnQgbGVuLCByZXQsIHBvcnRfbnVt Owo+Pj4gKwlpbnQgcmV0LCBwb3J0X251bTsKPj4+ICAgCXU4IHNpbmtzW0RSTV9EUF9NQVhfU0RQ X1NUUkVBTVNdOwo+Pj4gICAJaW50IGk7Cj4+PiAgIAo+Pj4gQEAgLTI1OTIsOSArMjU3NSw5IEBA IHN0YXRpYyBpbnQgZHJtX2RwX3BheWxvYWRfc2VuZF9tc2coc3RydWN0IGRybV9kcF9tc3RfdG9w b2xvZ3lfbWdyICptZ3IsCj4+PiAgIAkJc2lua3NbaV0gPSBpOwo+Pj4gICAKPj4+ICAgCXR4bXNn LT5kc3QgPSBtc3RiOwo+Pj4gLQlsZW4gPSBidWlsZF9hbGxvY2F0ZV9wYXlsb2FkKHR4bXNnLCBw b3J0X251bSwKPj4+IC0JCQkJICAgICBpZCwKPj4+IC0JCQkJICAgICBwYm4sIHBvcnQtPm51bV9z ZHBfc3RyZWFtcywgc2lua3MpOwo+Pj4gKwlidWlsZF9hbGxvY2F0ZV9wYXlsb2FkKHR4bXNnLCBw b3J0X251bSwKPj4+ICsJCQkgICAgICAgaWQsCj4+PiArCQkJICAgICAgIHBibiwgcG9ydC0+bnVt X3NkcF9zdHJlYW1zLCBzaW5rcyk7Cj4+PiAgIAo+Pj4gICAJZHJtX2RwX3F1ZXVlX2Rvd25fdHgo bWdyLCB0eG1zZyk7Cj4+PiAgIAo+Pj4gQEAgLTI2MjMsNyArMjYwNiw3IEBAIGludCBkcm1fZHBf c2VuZF9wb3dlcl91cGRvd25fcGh5KHN0cnVjdCBkcm1fZHBfbXN0X3RvcG9sb2d5X21nciAqbWdy LAo+Pj4gICAJCQkJIHN0cnVjdCBkcm1fZHBfbXN0X3BvcnQgKnBvcnQsIGJvb2wgcG93ZXJfdXAp Cj4+PiAgIHsKPj4+ICAgCXN0cnVjdCBkcm1fZHBfc2lkZWJhbmRfbXNnX3R4ICp0eG1zZzsKPj4+ IC0JaW50IGxlbiwgcmV0Owo+Pj4gKwlpbnQgcmV0Owo+Pj4gICAKPj4+ICAgCXBvcnQgPSBkcm1f ZHBfbXN0X3RvcG9sb2d5X2dldF9wb3J0X3ZhbGlkYXRlZChtZ3IsIHBvcnQpOwo+Pj4gICAJaWYg KCFwb3J0KQo+Pj4gQEAgLTI2MzYsNyArMjYxOSw3IEBAIGludCBkcm1fZHBfc2VuZF9wb3dlcl91 cGRvd25fcGh5KHN0cnVjdCBkcm1fZHBfbXN0X3RvcG9sb2d5X21nciAqbWdyLAo+Pj4gICAJfQo+ Pj4gICAKPj4+ICAgCXR4bXNnLT5kc3QgPSBwb3J0LT5wYXJlbnQ7Cj4+PiAtCWxlbiA9IGJ1aWxk X3Bvd2VyX3VwZG93bl9waHkodHhtc2csIHBvcnQtPnBvcnRfbnVtLCBwb3dlcl91cCk7Cj4+PiAr CWJ1aWxkX3Bvd2VyX3VwZG93bl9waHkodHhtc2csIHBvcnQtPnBvcnRfbnVtLCBwb3dlcl91cCk7 Cj4+PiAgIAlkcm1fZHBfcXVldWVfZG93bl90eChtZ3IsIHR4bXNnKTsKPj4+ICAgCj4+PiAgIAly ZXQgPSBkcm1fZHBfbXN0X3dhaXRfdHhfcmVwbHkocG9ydC0+cGFyZW50LCB0eG1zZyk7Cj4+PiBA QCAtMjg1Niw3ICsyODM5LDYgQEAgc3RhdGljIGludCBkcm1fZHBfc2VuZF9kcGNkX3JlYWQoc3Ry dWN0IGRybV9kcF9tc3RfdG9wb2xvZ3lfbWdyICptZ3IsCj4+PiAgIAkJCQkgc3RydWN0IGRybV9k cF9tc3RfcG9ydCAqcG9ydCwKPj4+ICAgCQkJCSBpbnQgb2Zmc2V0LCBpbnQgc2l6ZSwgdTggKmJ5 dGVzKQo+Pj4gICB7Cj4+PiAtCWludCBsZW47Cj4+PiAgIAlpbnQgcmV0ID0gMDsKPj4+ICAgCXN0 cnVjdCBkcm1fZHBfc2lkZWJhbmRfbXNnX3R4ICp0eG1zZzsKPj4+ICAgCXN0cnVjdCBkcm1fZHBf bXN0X2JyYW5jaCAqbXN0YjsKPj4+IEBAIC0yODcxLDcgKzI4NTMsNyBAQCBzdGF0aWMgaW50IGRy bV9kcF9zZW5kX2RwY2RfcmVhZChzdHJ1Y3QgZHJtX2RwX21zdF90b3BvbG9neV9tZ3IgKm1nciwK Pj4+ICAgCQlnb3RvIGZhaWxfcHV0Owo+Pj4gICAJfQo+Pj4gICAKPj4+IC0JbGVuID0gYnVpbGRf ZHBjZF9yZWFkKHR4bXNnLCBwb3J0LT5wb3J0X251bSwgb2Zmc2V0LCBzaXplKTsKPj4+ICsJYnVp bGRfZHBjZF9yZWFkKHR4bXNnLCBwb3J0LT5wb3J0X251bSwgb2Zmc2V0LCBzaXplKTsKPj4+ICAg CXR4bXNnLT5kc3QgPSBwb3J0LT5wYXJlbnQ7Cj4+PiAgIAo+Pj4gICAJZHJtX2RwX3F1ZXVlX2Rv d25fdHgobWdyLCB0eG1zZyk7Cj4+PiBAQCAtMjkwOSw3ICsyODkxLDYgQEAgc3RhdGljIGludCBk cm1fZHBfc2VuZF9kcGNkX3dyaXRlKHN0cnVjdCBkcm1fZHBfbXN0X3RvcG9sb2d5X21nciAqbWdy LAo+Pj4gICAJCQkJICBzdHJ1Y3QgZHJtX2RwX21zdF9wb3J0ICpwb3J0LAo+Pj4gICAJCQkJICBp bnQgb2Zmc2V0LCBpbnQgc2l6ZSwgdTggKmJ5dGVzKQo+Pj4gICB7Cj4+PiAtCWludCBsZW47Cj4+ PiAgIAlpbnQgcmV0Owo+Pj4gICAJc3RydWN0IGRybV9kcF9zaWRlYmFuZF9tc2dfdHggKnR4bXNn Owo+Pj4gICAJc3RydWN0IGRybV9kcF9tc3RfYnJhbmNoICptc3RiOwo+Pj4gQEAgLTI5MjQsNyAr MjkwNSw3IEBAIHN0YXRpYyBpbnQgZHJtX2RwX3NlbmRfZHBjZF93cml0ZShzdHJ1Y3QgZHJtX2Rw X21zdF90b3BvbG9neV9tZ3IgKm1nciwKPj4+ICAgCQlnb3RvIGZhaWxfcHV0Owo+Pj4gICAJfQo+ Pj4gICAKPj4+IC0JbGVuID0gYnVpbGRfZHBjZF93cml0ZSh0eG1zZywgcG9ydC0+cG9ydF9udW0s IG9mZnNldCwgc2l6ZSwgYnl0ZXMpOwo+Pj4gKwlidWlsZF9kcGNkX3dyaXRlKHR4bXNnLCBwb3J0 LT5wb3J0X251bSwgb2Zmc2V0LCBzaXplLCBieXRlcyk7Cj4+PiAgIAl0eG1zZy0+ZHN0ID0gbXN0 YjsKPj4+ICAgCj4+PiAgIAlkcm1fZHBfcXVldWVfZG93bl90eChtZ3IsIHR4bXNnKTsKPj4+IEBA IC0zMTQ3LDcgKzMxMjgsNyBAQCBzdGF0aWMgYm9vbCBkcm1fZHBfZ2V0X29uZV9zYl9tc2coc3Ry dWN0IGRybV9kcF9tc3RfdG9wb2xvZ3lfbWdyICptZ3IsIGJvb2wgdXApCj4+PiAgIHsKPj4+ICAg CWludCBsZW47Cj4+PiAgIAl1OCByZXBseWJsb2NrWzMyXTsKPj4+IC0JaW50IHJlcGx5bGVuLCBv cmlnbGVuLCBjdXJyZXBseTsKPj4+ICsJaW50IHJlcGx5bGVuLCBjdXJyZXBseTsKPj4+ICAgCWlu dCByZXQ7Cj4+PiAgIAlzdHJ1Y3QgZHJtX2RwX3NpZGViYW5kX21zZ19yeCAqbXNnOwo+Pj4gICAJ aW50IGJhc2VyZWcgPSB1cCA/IERQX1NJREVCQU5EX01TR19VUF9SRVFfQkFTRSA6IERQX1NJREVC QU5EX01TR19ET1dOX1JFUF9CQVNFOwo+Pj4gQEAgLTMxNjcsNyArMzE0OCw2IEBAIHN0YXRpYyBi b29sIGRybV9kcF9nZXRfb25lX3NiX21zZyhzdHJ1Y3QgZHJtX2RwX21zdF90b3BvbG9neV9tZ3Ig Km1nciwgYm9vbCB1cCkKPj4+ICAgCX0KPj4+ICAgCXJlcGx5bGVuID0gbXNnLT5jdXJjaHVua19s ZW4gKyBtc2ctPmN1cmNodW5rX2hkcmxlbjsKPj4+ICAgCj4+PiAtCW9yaWdsZW4gPSByZXBseWxl bjsKPj4+ICAgCXJlcGx5bGVuIC09IGxlbjsKPj4+ICAgCWN1cnJlcGx5ID0gbGVuOwo+Pj4gICAJ d2hpbGUgKHJlcGx5bGVuID4gMCkgewo+Pj4gQEAgLTM5NTksMTcgKzM5MzksMTYgQEAgdm9pZCBk cm1fZHBfbXN0X2R1bXBfdG9wb2xvZ3koc3RydWN0IHNlcV9maWxlICptLAo+Pj4gICAJbXV0ZXhf bG9jaygmbWdyLT5sb2NrKTsKPj4+ICAgCWlmIChtZ3ItPm1zdF9wcmltYXJ5KSB7Cj4+PiAgIAkJ dTggYnVmW0RQX1BBWUxPQURfVEFCTEVfU0laRV07Cj4+PiAtCQlpbnQgcmV0Owo+Pj4gICAKPj4+ IC0JCXJldCA9IGRybV9kcF9kcGNkX3JlYWQobWdyLT5hdXgsIERQX0RQQ0RfUkVWLCBidWYsIERQ X1JFQ0VJVkVSX0NBUF9TSVpFKTsKPj4+ICsJCWRybV9kcF9kcGNkX3JlYWQobWdyLT5hdXgsIERQ X0RQQ0RfUkVWLCBidWYsIERQX1JFQ0VJVkVSX0NBUF9TSVpFKTsKPj4+ICAgCQlzZXFfcHJpbnRm KG0sICJkcGNkOiAlKnBoXG4iLCBEUF9SRUNFSVZFUl9DQVBfU0laRSwgYnVmKTsKPj4+IC0JCXJl dCA9IGRybV9kcF9kcGNkX3JlYWQobWdyLT5hdXgsIERQX0ZBVVhfQ0FQLCBidWYsIDIpOwo+Pj4g KwkJZHJtX2RwX2RwY2RfcmVhZChtZ3ItPmF1eCwgRFBfRkFVWF9DQVAsIGJ1ZiwgMik7Cj4+PiAg IAkJc2VxX3ByaW50ZihtLCAiZmF1eC9tc3Q6ICUqcGhcbiIsIDIsIGJ1Zik7Cj4+PiAtCQlyZXQg PSBkcm1fZHBfZHBjZF9yZWFkKG1nci0+YXV4LCBEUF9NU1RNX0NUUkwsIGJ1ZiwgMSk7Cj4+PiAr CQlkcm1fZHBfZHBjZF9yZWFkKG1nci0+YXV4LCBEUF9NU1RNX0NUUkwsIGJ1ZiwgMSk7Cj4+PiAg IAkJc2VxX3ByaW50ZihtLCAibXN0IGN0cmw6ICUqcGhcbiIsIDEsIGJ1Zik7Cj4+PiAgIAo+Pj4g ICAJCS8qIGR1bXAgdGhlIHN0YW5kYXJkIE9VSSBicmFuY2ggaGVhZGVyICovCj4+PiAtCQlyZXQg PSBkcm1fZHBfZHBjZF9yZWFkKG1nci0+YXV4LCBEUF9CUkFOQ0hfT1VJLCBidWYsIERQX0JSQU5D SF9PVUlfSEVBREVSX1NJWkUpOwo+Pj4gKwkJZHJtX2RwX2RwY2RfcmVhZChtZ3ItPmF1eCwgRFBf QlJBTkNIX09VSSwgYnVmLCBEUF9CUkFOQ0hfT1VJX0hFQURFUl9TSVpFKTsKPj4+ICAgCQlzZXFf cHJpbnRmKG0sICJicmFuY2ggb3VpOiAlKnBoTiBkZXZpZDogIiwgMywgYnVmKTsKPj4+ICAgCQlm b3IgKGkgPSAweDM7IGkgPCAweDggJiYgYnVmW2ldOyBpKyspCj4+PiAgIAkJCXNlcV9wcmludGYo bSwgIiVjIiwgYnVmW2ldKTsKCi0tIApKYW5pIE5pa3VsYSwgSW50ZWwgT3BlbiBTb3VyY2UgR3Jh cGhpY3MgQ2VudGVyCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fCmRyaS1kZXZlbCBtYWlsaW5nIGxpc3QKZHJpLWRldmVsQGxpc3RzLmZyZWVkZXNrdG9wLm9y ZwpodHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2RyaS1kZXZl bA== 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=-6.7 required=3.0 tests=HEADER_FROM_DIFFERENT_DOMAINS, INCLUDES_PATCH,MAILING_LIST_MULTI,SIGNED_OFF_BY,SPF_HELO_NONE,SPF_PASS, URIBL_BLOCKED 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 4919BC432C0 for ; Thu, 28 Nov 2019 13:34:33 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.kernel.org (Postfix) with ESMTP id 19EF621741 for ; Thu, 28 Nov 2019 13:34:33 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726694AbfK1Nec (ORCPT ); Thu, 28 Nov 2019 08:34:32 -0500 Received: from mga17.intel.com ([192.55.52.151]:56394 "EHLO mga17.intel.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726227AbfK1Neb (ORCPT ); Thu, 28 Nov 2019 08:34:31 -0500 X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from orsmga007.jf.intel.com ([10.7.209.58]) by fmsmga107.fm.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 28 Nov 2019 05:34:27 -0800 X-IronPort-AV: E=Sophos;i="5.69,253,1571727600"; d="scan'208";a="199529160" Received: from jnikula-mobl3.fi.intel.com (HELO localhost) ([10.237.66.161]) by orsmga007-auth.jf.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 28 Nov 2019 05:34:24 -0800 From: Jani Nikula To: Benjamin GAIGNARD , "maarten.lankhorst\@linux.intel.com" , "mripard\@kernel.org" , "sean\@poorly.run" , "airlied\@linux.ie" , "daniel\@ffwll.ch" Cc: "dri-devel\@lists.freedesktop.org" , "linux-kernel\@vger.kernel.org" Subject: Re: [PATCH v2] drm/dp_mst: Fix W=1 warnings In-Reply-To: <8f64b1e7-d7b8-43df-8efe-ca5af91e2cd3@st.com> Organization: Intel Finland Oy - BIC 0357606-4 - Westendinkatu 7, 02160 Espoo References: <20191128110012.23898-1-benjamin.gaignard@st.com> <87sgm8mekf.fsf@intel.com> <8f64b1e7-d7b8-43df-8efe-ca5af91e2cd3@st.com> Date: Thu, 28 Nov 2019 15:34:21 +0200 Message-ID: <87h82om8f6.fsf@intel.com> MIME-Version: 1.0 Content-Type: text/plain Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Thu, 28 Nov 2019, Benjamin GAIGNARD wrote: > On 11/28/19 12:21 PM, Jani Nikula wrote: >> On Thu, 28 Nov 2019, Benjamin Gaignard wrote: >>> Fix the warnings that show up with W=1. >>> They are all about unused but set variables. >>> If functions returns are not used anymore make them void. >>> >>> Signed-off-by: Benjamin Gaignard >>> CC: Jani Nikula >>> --- >>> changes in version 2: >>> - fix indentations >>> - when possible change functions prototype to void >>> >>> Note: this patch may conflict with c485e2c97dae ("drm/dp_mst: Refactor pdt >>> setup/teardown, add more locking") when it will hit drm-misc-next >> Well, why create an unnecessary conflict when the referenced commit also >> fixes the same warnings as a side-effect? > > Because this commit is not merged (yet ?) in drm-misc-next which where I > start. I mean just leave the hunk out and the problem will fix itself once the stuff gets backmerged to drm-misc-next. BR, Jani. > > Benjamin > >> BR, >> Jani. >> >> >>> drivers/gpu/drm/drm_dp_mst_topology.c | 83 +++++++++++++---------------------- >>> 1 file changed, 31 insertions(+), 52 deletions(-) >>> >>> diff --git a/drivers/gpu/drm/drm_dp_mst_topology.c b/drivers/gpu/drm/drm_dp_mst_topology.c >>> index b854a422a523..ff2d81db0778 100644 >>> --- a/drivers/gpu/drm/drm_dp_mst_topology.c >>> +++ b/drivers/gpu/drm/drm_dp_mst_topology.c >>> @@ -672,7 +672,6 @@ static bool drm_dp_sideband_msg_build(struct drm_dp_sideband_msg_rx *msg, >>> u8 *replybuf, u8 replybuflen, bool hdr) >>> { >>> int ret; >>> - u8 crc4; >>> >>> if (hdr) { >>> u8 hdrlen; >>> @@ -714,8 +713,6 @@ static bool drm_dp_sideband_msg_build(struct drm_dp_sideband_msg_rx *msg, >>> } >>> >>> if (msg->curchunk_idx >= msg->curchunk_len) { >>> - /* do CRC */ >>> - crc4 = drm_dp_msg_data_crc4(msg->chunk, msg->curchunk_len - 1); >>> /* copy chunk into bigger msg */ >>> memcpy(&msg->msg[msg->curlen], msg->chunk, msg->curchunk_len - 1); >>> msg->curlen += msg->curchunk_len - 1; >>> @@ -1012,7 +1009,7 @@ static bool drm_dp_sideband_parse_req(struct drm_dp_sideband_msg_rx *raw, >>> } >>> } >>> >>> -static int build_dpcd_write(struct drm_dp_sideband_msg_tx *msg, u8 port_num, u32 offset, u8 num_bytes, u8 *bytes) >>> +static void build_dpcd_write(struct drm_dp_sideband_msg_tx *msg, u8 port_num, u32 offset, u8 num_bytes, u8 *bytes) >>> { >>> struct drm_dp_sideband_msg_req_body req; >>> >>> @@ -1022,17 +1019,14 @@ static int build_dpcd_write(struct drm_dp_sideband_msg_tx *msg, u8 port_num, u32 >>> req.u.dpcd_write.num_bytes = num_bytes; >>> req.u.dpcd_write.bytes = bytes; >>> drm_dp_encode_sideband_req(&req, msg); >>> - >>> - return 0; >>> } >>> >>> -static int build_link_address(struct drm_dp_sideband_msg_tx *msg) >>> +static void build_link_address(struct drm_dp_sideband_msg_tx *msg) >>> { >>> struct drm_dp_sideband_msg_req_body req; >>> >>> req.req_type = DP_LINK_ADDRESS; >>> drm_dp_encode_sideband_req(&req, msg); >>> - return 0; >>> } >>> >>> static int build_enum_path_resources(struct drm_dp_sideband_msg_tx *msg, int port_num) >>> @@ -1046,7 +1040,7 @@ static int build_enum_path_resources(struct drm_dp_sideband_msg_tx *msg, int por >>> return 0; >>> } >>> >>> -static int build_allocate_payload(struct drm_dp_sideband_msg_tx *msg, int port_num, >>> +static void build_allocate_payload(struct drm_dp_sideband_msg_tx *msg, int port_num, >>> u8 vcpi, uint16_t pbn, >>> u8 number_sdp_streams, >>> u8 *sdp_stream_sink) >>> @@ -1062,10 +1056,9 @@ static int build_allocate_payload(struct drm_dp_sideband_msg_tx *msg, int port_n >>> number_sdp_streams); >>> drm_dp_encode_sideband_req(&req, msg); >>> msg->path_msg = true; >>> - return 0; >>> } >>> >>> -static int build_power_updown_phy(struct drm_dp_sideband_msg_tx *msg, >>> +static void build_power_updown_phy(struct drm_dp_sideband_msg_tx *msg, >>> int port_num, bool power_up) >>> { >>> struct drm_dp_sideband_msg_req_body req; >>> @@ -1078,7 +1071,6 @@ static int build_power_updown_phy(struct drm_dp_sideband_msg_tx *msg, >>> req.u.port_num.port_number = port_num; >>> drm_dp_encode_sideband_req(&req, msg); >>> msg->path_msg = true; >>> - return 0; >>> } >>> >>> static int drm_dp_mst_assign_payload_id(struct drm_dp_mst_topology_mgr *mgr, >>> @@ -1744,14 +1736,13 @@ static u8 drm_dp_calculate_rad(struct drm_dp_mst_port *port, >>> */ >>> static bool drm_dp_port_setup_pdt(struct drm_dp_mst_port *port) >>> { >>> - int ret; >>> u8 rad[6], lct; >>> bool send_link = false; >>> switch (port->pdt) { >>> case DP_PEER_DEVICE_DP_LEGACY_CONV: >>> case DP_PEER_DEVICE_SST_SINK: >>> /* add i2c over sideband */ >>> - ret = drm_dp_mst_register_i2c_bus(&port->aux); >>> + drm_dp_mst_register_i2c_bus(&port->aux); >>> break; >>> case DP_PEER_DEVICE_MST_BRANCHING: >>> lct = drm_dp_calculate_rad(port, rad); >>> @@ -1821,25 +1812,20 @@ ssize_t drm_dp_mst_dpcd_write(struct drm_dp_aux *aux, >>> >>> static void drm_dp_check_mstb_guid(struct drm_dp_mst_branch *mstb, u8 *guid) >>> { >>> - int ret; >>> - >>> memcpy(mstb->guid, guid, 16); >>> >>> if (!drm_dp_validate_guid(mstb->mgr, mstb->guid)) { >>> if (mstb->port_parent) { >>> - ret = drm_dp_send_dpcd_write( >>> - mstb->mgr, >>> - mstb->port_parent, >>> - DP_GUID, >>> - 16, >>> - mstb->guid); >>> + drm_dp_send_dpcd_write(mstb->mgr, >>> + mstb->port_parent, >>> + DP_GUID, >>> + 16, >>> + mstb->guid); >>> } else { >>> - >>> - ret = drm_dp_dpcd_write( >>> - mstb->mgr->aux, >>> - DP_GUID, >>> - mstb->guid, >>> - 16); >>> + drm_dp_dpcd_write(mstb->mgr->aux, >>> + DP_GUID, >>> + mstb->guid, >>> + 16); >>> } >>> } >>> } >>> @@ -2195,7 +2181,7 @@ static bool drm_dp_validate_guid(struct drm_dp_mst_topology_mgr *mgr, >>> return false; >>> } >>> >>> -static int build_dpcd_read(struct drm_dp_sideband_msg_tx *msg, u8 port_num, u32 offset, u8 num_bytes) >>> +static void build_dpcd_read(struct drm_dp_sideband_msg_tx *msg, u8 port_num, u32 offset, u8 num_bytes) >>> { >>> struct drm_dp_sideband_msg_req_body req; >>> >>> @@ -2204,8 +2190,6 @@ static int build_dpcd_read(struct drm_dp_sideband_msg_tx *msg, u8 port_num, u32 >>> req.u.dpcd_read.dpcd_address = offset; >>> req.u.dpcd_read.num_bytes = num_bytes; >>> drm_dp_encode_sideband_req(&req, msg); >>> - >>> - return 0; >>> } >>> >>> static int drm_dp_send_sideband_msg(struct drm_dp_mst_topology_mgr *mgr, >>> @@ -2427,14 +2411,14 @@ static void drm_dp_send_link_address(struct drm_dp_mst_topology_mgr *mgr, >>> { >>> struct drm_dp_sideband_msg_tx *txmsg; >>> struct drm_dp_link_address_ack_reply *reply; >>> - int i, len, ret; >>> + int i, ret; >>> >>> txmsg = kzalloc(sizeof(*txmsg), GFP_KERNEL); >>> if (!txmsg) >>> return; >>> >>> txmsg->dst = mstb; >>> - len = build_link_address(txmsg); >>> + build_link_address(txmsg); >>> >>> mstb->link_address_sent = true; >>> drm_dp_queue_down_tx(mgr, txmsg); >>> @@ -2476,7 +2460,6 @@ drm_dp_send_enum_path_resources(struct drm_dp_mst_topology_mgr *mgr, >>> { >>> struct drm_dp_enum_path_resources_ack_reply *path_res; >>> struct drm_dp_sideband_msg_tx *txmsg; >>> - int len; >>> int ret; >>> >>> txmsg = kzalloc(sizeof(*txmsg), GFP_KERNEL); >>> @@ -2484,7 +2467,7 @@ drm_dp_send_enum_path_resources(struct drm_dp_mst_topology_mgr *mgr, >>> return -ENOMEM; >>> >>> txmsg->dst = mstb; >>> - len = build_enum_path_resources(txmsg, port->port_num); >>> + build_enum_path_resources(txmsg, port->port_num); >>> >>> drm_dp_queue_down_tx(mgr, txmsg); >>> >>> @@ -2567,7 +2550,7 @@ static int drm_dp_payload_send_msg(struct drm_dp_mst_topology_mgr *mgr, >>> { >>> struct drm_dp_sideband_msg_tx *txmsg; >>> struct drm_dp_mst_branch *mstb; >>> - int len, ret, port_num; >>> + int ret, port_num; >>> u8 sinks[DRM_DP_MAX_SDP_STREAMS]; >>> int i; >>> >>> @@ -2592,9 +2575,9 @@ static int drm_dp_payload_send_msg(struct drm_dp_mst_topology_mgr *mgr, >>> sinks[i] = i; >>> >>> txmsg->dst = mstb; >>> - len = build_allocate_payload(txmsg, port_num, >>> - id, >>> - pbn, port->num_sdp_streams, sinks); >>> + build_allocate_payload(txmsg, port_num, >>> + id, >>> + pbn, port->num_sdp_streams, sinks); >>> >>> drm_dp_queue_down_tx(mgr, txmsg); >>> >>> @@ -2623,7 +2606,7 @@ int drm_dp_send_power_updown_phy(struct drm_dp_mst_topology_mgr *mgr, >>> struct drm_dp_mst_port *port, bool power_up) >>> { >>> struct drm_dp_sideband_msg_tx *txmsg; >>> - int len, ret; >>> + int ret; >>> >>> port = drm_dp_mst_topology_get_port_validated(mgr, port); >>> if (!port) >>> @@ -2636,7 +2619,7 @@ int drm_dp_send_power_updown_phy(struct drm_dp_mst_topology_mgr *mgr, >>> } >>> >>> txmsg->dst = port->parent; >>> - len = build_power_updown_phy(txmsg, port->port_num, power_up); >>> + build_power_updown_phy(txmsg, port->port_num, power_up); >>> drm_dp_queue_down_tx(mgr, txmsg); >>> >>> ret = drm_dp_mst_wait_tx_reply(port->parent, txmsg); >>> @@ -2856,7 +2839,6 @@ static int drm_dp_send_dpcd_read(struct drm_dp_mst_topology_mgr *mgr, >>> struct drm_dp_mst_port *port, >>> int offset, int size, u8 *bytes) >>> { >>> - int len; >>> int ret = 0; >>> struct drm_dp_sideband_msg_tx *txmsg; >>> struct drm_dp_mst_branch *mstb; >>> @@ -2871,7 +2853,7 @@ static int drm_dp_send_dpcd_read(struct drm_dp_mst_topology_mgr *mgr, >>> goto fail_put; >>> } >>> >>> - len = build_dpcd_read(txmsg, port->port_num, offset, size); >>> + build_dpcd_read(txmsg, port->port_num, offset, size); >>> txmsg->dst = port->parent; >>> >>> drm_dp_queue_down_tx(mgr, txmsg); >>> @@ -2909,7 +2891,6 @@ static int drm_dp_send_dpcd_write(struct drm_dp_mst_topology_mgr *mgr, >>> struct drm_dp_mst_port *port, >>> int offset, int size, u8 *bytes) >>> { >>> - int len; >>> int ret; >>> struct drm_dp_sideband_msg_tx *txmsg; >>> struct drm_dp_mst_branch *mstb; >>> @@ -2924,7 +2905,7 @@ static int drm_dp_send_dpcd_write(struct drm_dp_mst_topology_mgr *mgr, >>> goto fail_put; >>> } >>> >>> - len = build_dpcd_write(txmsg, port->port_num, offset, size, bytes); >>> + build_dpcd_write(txmsg, port->port_num, offset, size, bytes); >>> txmsg->dst = mstb; >>> >>> drm_dp_queue_down_tx(mgr, txmsg); >>> @@ -3147,7 +3128,7 @@ static bool drm_dp_get_one_sb_msg(struct drm_dp_mst_topology_mgr *mgr, bool up) >>> { >>> int len; >>> u8 replyblock[32]; >>> - int replylen, origlen, curreply; >>> + int replylen, curreply; >>> int ret; >>> struct drm_dp_sideband_msg_rx *msg; >>> int basereg = up ? DP_SIDEBAND_MSG_UP_REQ_BASE : DP_SIDEBAND_MSG_DOWN_REP_BASE; >>> @@ -3167,7 +3148,6 @@ static bool drm_dp_get_one_sb_msg(struct drm_dp_mst_topology_mgr *mgr, bool up) >>> } >>> replylen = msg->curchunk_len + msg->curchunk_hdrlen; >>> >>> - origlen = replylen; >>> replylen -= len; >>> curreply = len; >>> while (replylen > 0) { >>> @@ -3959,17 +3939,16 @@ void drm_dp_mst_dump_topology(struct seq_file *m, >>> mutex_lock(&mgr->lock); >>> if (mgr->mst_primary) { >>> u8 buf[DP_PAYLOAD_TABLE_SIZE]; >>> - int ret; >>> >>> - ret = drm_dp_dpcd_read(mgr->aux, DP_DPCD_REV, buf, DP_RECEIVER_CAP_SIZE); >>> + drm_dp_dpcd_read(mgr->aux, DP_DPCD_REV, buf, DP_RECEIVER_CAP_SIZE); >>> seq_printf(m, "dpcd: %*ph\n", DP_RECEIVER_CAP_SIZE, buf); >>> - ret = drm_dp_dpcd_read(mgr->aux, DP_FAUX_CAP, buf, 2); >>> + drm_dp_dpcd_read(mgr->aux, DP_FAUX_CAP, buf, 2); >>> seq_printf(m, "faux/mst: %*ph\n", 2, buf); >>> - ret = drm_dp_dpcd_read(mgr->aux, DP_MSTM_CTRL, buf, 1); >>> + drm_dp_dpcd_read(mgr->aux, DP_MSTM_CTRL, buf, 1); >>> seq_printf(m, "mst ctrl: %*ph\n", 1, buf); >>> >>> /* dump the standard OUI branch header */ >>> - ret = drm_dp_dpcd_read(mgr->aux, DP_BRANCH_OUI, buf, DP_BRANCH_OUI_HEADER_SIZE); >>> + drm_dp_dpcd_read(mgr->aux, DP_BRANCH_OUI, buf, DP_BRANCH_OUI_HEADER_SIZE); >>> seq_printf(m, "branch oui: %*phN devid: ", 3, buf); >>> for (i = 0x3; i < 0x8 && buf[i]; i++) >>> seq_printf(m, "%c", buf[i]); -- Jani Nikula, Intel Open Source Graphics Center