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.3 required=3.0 tests=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 41A44C11D05 for ; Thu, 20 Feb 2020 13:47:21 +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 200F4207FD for ; Thu, 20 Feb 2020 13:47:21 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 200F4207FD 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=intel-gfx-bounces@lists.freedesktop.org Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id B27EF6ED88; Thu, 20 Feb 2020 13:47:20 +0000 (UTC) Received: from mga11.intel.com (mga11.intel.com [192.55.52.93]) by gabe.freedesktop.org (Postfix) with ESMTPS id B168D6ED88 for ; Thu, 20 Feb 2020 13:47:19 +0000 (UTC) X-Amp-Result: UNKNOWN X-Amp-Original-Verdict: FILE UNKNOWN X-Amp-File-Uploaded: False Received: from orsmga008.jf.intel.com ([10.7.209.65]) by fmsmga102.fm.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 20 Feb 2020 05:47:19 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.70,464,1574150400"; d="scan'208";a="229483538" Received: from stinkbox.fi.intel.com (HELO stinkbox) ([10.237.72.174]) by orsmga008.jf.intel.com with SMTP; 20 Feb 2020 05:47:15 -0800 Received: by stinkbox (sSMTP sendmail emulation); Thu, 20 Feb 2020 15:47:15 +0200 Date: Thu, 20 Feb 2020 15:47:15 +0200 From: Ville =?iso-8859-1?Q?Syrj=E4l=E4?= To: Kees Cook Message-ID: <20200220134715.GY13686@intel.com> References: <20200220062258.68854-1-keescook@chromium.org> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: <20200220062258.68854-1-keescook@chromium.org> X-Patchwork-Hint: comment User-Agent: Mutt/1.10.1 (2018-07-13) Subject: Re: [Intel-gfx] [PATCH] drm/i915: Distribute switch variables for initialization X-BeenThere: intel-gfx@lists.freedesktop.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Intel graphics driver community testing & development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: intel-gfx@lists.freedesktop.org, linux-kernel@vger.kernel.org, Alexander Potapenko Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" T24gV2VkLCBGZWIgMTksIDIwMjAgYXQgMTA6MjI6NThQTSAtMDgwMCwgS2VlcyBDb29rIHdyb3Rl Ogo+IFZhcmlhYmxlcyBkZWNsYXJlZCBpbiBhIHN3aXRjaCBzdGF0ZW1lbnQgYmVmb3JlIGFueSBj YXNlIHN0YXRlbWVudHMKPiBjYW5ub3QgYmUgYXV0b21hdGljYWxseSBpbml0aWFsaXplZCB3aXRo IGNvbXBpbGVyIGluc3RydW1lbnRhdGlvbiAoYXMKPiB0aGV5IGFyZSBub3QgcGFydCBvZiBhbnkg ZXhlY3V0aW9uIGZsb3cpLiBXaXRoIEdDQydzIHByb3Bvc2VkIGF1dG9tYXRpYwo+IHN0YWNrIHZh cmlhYmxlIGluaXRpYWxpemF0aW9uIGZlYXR1cmUsIHRoaXMgdHJpZ2dlcnMgYSB3YXJuaW5nIChh bmQgdGhleQo+IGRvbid0IGdldCBpbml0aWFsaXplZCkuIENsYW5nJ3MgYXV0b21hdGljIHN0YWNr IHZhcmlhYmxlIGluaXRpYWxpemF0aW9uCj4gKHZpYSBDT05GSUdfSU5JVF9TVEFDS19BTEw9eSkg ZG9lc24ndCB0aHJvdyBhIHdhcm5pbmcsIGJ1dCBpdCBhbHNvCj4gZG9lc24ndCBpbml0aWFsaXpl IHN1Y2ggdmFyaWFibGVzWzFdLgoKU2lsbHkgY29tcGlsZXJzLgoKPiBOb3RlIHRoYXQgdGhlc2Ug d2FybmluZ3MgKG9yIHNpbGVudAo+IHNraXBwaW5nKSBoYXBwZW4gYmVmb3JlIHRoZSBkZWFkLXN0 b3JlIGVsaW1pbmF0aW9uIG9wdGltaXphdGlvbiBwaGFzZSwKPiBzbyBldmVuIHdoZW4gdGhlIGF1 dG9tYXRpYyBpbml0aWFsaXphdGlvbnMgYXJlIGxhdGVyIGVsaWRlZCBpbiBmYXZvciBvZgo+IGRp cmVjdCBpbml0aWFsaXphdGlvbnMsIHRoZSB3YXJuaW5ncyByZW1haW4uCj4gCj4gVG8gYXZvaWQg dGhlc2UgcHJvYmxlbXMsIG1vdmUgc3VjaCB2YXJpYWJsZXMgaW50byB0aGUgImNhc2UiIHdoZXJl Cj4gdGhleSdyZSB1c2VkIG9yIGxpZnQgdGhlbSB1cCBpbnRvIHRoZSBtYWluIGZ1bmN0aW9uIGJv ZHkuCj4gCj4gZHJpdmVycy9ncHUvZHJtL2k5MTUvZGlzcGxheS9pbnRlbF9kaXNwbGF5LmM6IElu IGZ1bmN0aW9uIOKAmGNoZWNrX2RpZ2l0YWxfcG9ydF9jb25mbGljdHPigJk6Cj4gZHJpdmVycy9n cHUvZHJtL2k5MTUvZGlzcGxheS9pbnRlbF9kaXNwbGF5LmM6MTI5NjM6MTc6IHdhcm5pbmc6IHN0 YXRlbWVudCB3aWxsIG5ldmVyIGJlIGV4ZWN1dGVkIFstV3N3aXRjaC11bnJlYWNoYWJsZV0KPiAx Mjk2MyB8ICAgIHVuc2lnbmVkIGludCBwb3J0X21hc2s7Cj4gICAgICAgfCAgICAgICAgICAgICAg ICAgXn5+fn5+fn5+Cj4gCj4gZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfcG0uYzogSW4gZnVu Y3Rpb24g4oCYdmx2X2dldF9maWZvX3NpemXigJk6Cj4gZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50 ZWxfcG0uYzo0NzQ6Nzogd2FybmluZzogc3RhdGVtZW50IHdpbGwgbmV2ZXIgYmUgZXhlY3V0ZWQg Wy1Xc3dpdGNoLXVucmVhY2hhYmxlXQo+ICAgNDc0IHwgICB1MzIgZHNwYXJiLCBkc3BhcmIyLCBk c3BhcmIzOwo+ICAgICAgIHwgICAgICAgXn5+fn5+Cj4gZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50 ZWxfcG0uYzogSW4gZnVuY3Rpb24g4oCYdmx2X2F0b21pY191cGRhdGVfZmlmb+KAmToKPiBkcml2 ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9wbS5jOjE5OTc6Nzogd2FybmluZzogc3RhdGVtZW50IHdp bGwgbmV2ZXIgYmUgZXhlY3V0ZWQgWy1Xc3dpdGNoLXVucmVhY2hhYmxlXQo+ICAxOTk3IHwgICB1 MzIgZHNwYXJiLCBkc3BhcmIyLCBkc3BhcmIzOwo+ICAgICAgIHwgICAgICAgXn5+fn5+Cj4gCj4g WzFdIGh0dHBzOi8vYnVncy5sbHZtLm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NDQ5MTYKPiAKPiBTaWdu ZWQtb2ZmLWJ5OiBLZWVzIENvb2sgPGtlZXNjb29rQGNocm9taXVtLm9yZz4KPiAtLS0KPiAgZHJp dmVycy9ncHUvZHJtL2k5MTUvZGlzcGxheS9pbnRlbF9kaXNwbGF5LmMgfCAgICA2ICsrKystLQo+ ICBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9wbS5jICAgICAgICAgICAgICB8ICAgIDQgKyst LQo+ICAyIGZpbGVzIGNoYW5nZWQsIDYgaW5zZXJ0aW9ucygrKSwgNCBkZWxldGlvbnMoLSkKPiAK PiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvZGlzcGxheS9pbnRlbF9kaXNwbGF5 LmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9kaXNwbGF5L2ludGVsX2Rpc3BsYXkuYwo+IGluZGV4 IDA2NGRkOTliYmM0OS4uYzgyOWNkMjZmOTllIDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvZ3B1L2Ry bS9pOTE1L2Rpc3BsYXkvaW50ZWxfZGlzcGxheS5jCj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5 MTUvZGlzcGxheS9pbnRlbF9kaXNwbGF5LmMKPiBAQCAtMTI5NjAsMTQgKzEyOTYwLDE1IEBAIHN0 YXRpYyBib29sIGNoZWNrX2RpZ2l0YWxfcG9ydF9jb25mbGljdHMoc3RydWN0IGludGVsX2F0b21p Y19zdGF0ZSAqc3RhdGUpCj4gIAkJV0FSTl9PTighY29ubmVjdG9yX3N0YXRlLT5jcnRjKTsKPiAg Cj4gIAkJc3dpdGNoIChlbmNvZGVyLT50eXBlKSB7Cj4gLQkJCXVuc2lnbmVkIGludCBwb3J0X21h c2s7Cj4gIAkJY2FzZSBJTlRFTF9PVVRQVVRfRERJOgo+ICAJCQlpZiAoV0FSTl9PTighSEFTX0RE SSh0b19pOTE1KGRldikpKSkKPiAgCQkJCWJyZWFrOwo+ICAJCQkvKiBlbHNlLCBmYWxsIHRocm91 Z2ggKi8KPiAgCQljYXNlIElOVEVMX09VVFBVVF9EUDoKPiAgCQljYXNlIElOVEVMX09VVFBVVF9I RE1JOgo+IC0JCWNhc2UgSU5URUxfT1VUUFVUX0VEUDoKPiArCQljYXNlIElOVEVMX09VVFBVVF9F RFA6IHsKPiArCQkJdW5zaWduZWQgaW50IHBvcnRfbWFzazsKClRoaXMgb25lIEknZCBqdXN0IHJl bW92ZSBhbmQgcy9wb3J0X21hc2svQklUKGVuY29kZXItPnBvcnQpLwpldmVyeXdoZXJlLiBPdGhl cndpc2UgbGd0bS4KCj4gKwo+ICAJCQlwb3J0X21hc2sgPSAxIDw8IGVuY29kZXItPnBvcnQ7Cj4g IAo+ICAJCQkvKiB0aGUgc2FtZSBwb3J0IG11c3RuJ3QgYXBwZWFyIG1vcmUgdGhhbiBvbmNlICov Cj4gQEAgLTEyOTc2LDYgKzEyOTc3LDcgQEAgc3RhdGljIGJvb2wgY2hlY2tfZGlnaXRhbF9wb3J0 X2NvbmZsaWN0cyhzdHJ1Y3QgaW50ZWxfYXRvbWljX3N0YXRlICpzdGF0ZSkKPiAgCj4gIAkJCXVz ZWRfcG9ydHMgfD0gcG9ydF9tYXNrOwo+ICAJCQlicmVhazsKPiArCQl9Cj4gIAkJY2FzZSBJTlRF TF9PVVRQVVRfRFBfTVNUOgo+ICAJCQl1c2VkX21zdF9wb3J0cyB8PQo+ICAJCQkJMSA8PCBlbmNv ZGVyLT5wb3J0Owo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9wbS5j IGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfcG0uYwo+IGluZGV4IGJkMmQzMGVjYzAzMC4u MTdkODgzMzc4N2M0IDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX3Bt LmMKPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9wbS5jCj4gQEAgLTQ2OSw5ICs0 NjksOSBAQCBzdGF0aWMgdm9pZCB2bHZfZ2V0X2ZpZm9fc2l6ZShzdHJ1Y3QgaW50ZWxfY3J0Y19z dGF0ZSAqY3J0Y19zdGF0ZSkKPiAgCXN0cnVjdCB2bHZfZmlmb19zdGF0ZSAqZmlmb19zdGF0ZSA9 ICZjcnRjX3N0YXRlLT53bS52bHYuZmlmb19zdGF0ZTsKPiAgCWVudW0gcGlwZSBwaXBlID0gY3J0 Yy0+cGlwZTsKPiAgCWludCBzcHJpdGUwX3N0YXJ0LCBzcHJpdGUxX3N0YXJ0Owo+ICsJdTMyIGRz cGFyYiwgZHNwYXJiMiwgZHNwYXJiMzsKPiAgCj4gIAlzd2l0Y2ggKHBpcGUpIHsKPiAtCQl1MzIg ZHNwYXJiLCBkc3BhcmIyLCBkc3BhcmIzOwo+ICAJY2FzZSBQSVBFX0E6Cj4gIAkJZHNwYXJiID0g STkxNV9SRUFEKERTUEFSQik7Cj4gIAkJZHNwYXJiMiA9IEk5MTVfUkVBRChEU1BBUkIyKTsKPiBA QCAtMTk2OSw2ICsxOTY5LDcgQEAgc3RhdGljIHZvaWQgdmx2X2F0b21pY191cGRhdGVfZmlmbyhz dHJ1Y3QgaW50ZWxfYXRvbWljX3N0YXRlICpzdGF0ZSwKPiAgCWNvbnN0IHN0cnVjdCB2bHZfZmlm b19zdGF0ZSAqZmlmb19zdGF0ZSA9Cj4gIAkJJmNydGNfc3RhdGUtPndtLnZsdi5maWZvX3N0YXRl Owo+ICAJaW50IHNwcml0ZTBfc3RhcnQsIHNwcml0ZTFfc3RhcnQsIGZpZm9fc2l6ZTsKPiArCXUz MiBkc3BhcmIsIGRzcGFyYjIsIGRzcGFyYjM7Cj4gIAo+ICAJaWYgKCFjcnRjX3N0YXRlLT5maWZv X2NoYW5nZWQpCj4gIAkJcmV0dXJuOwo+IEBAIC0xOTk0LDcgKzE5OTUsNiBAQCBzdGF0aWMgdm9p ZCB2bHZfYXRvbWljX3VwZGF0ZV9maWZvKHN0cnVjdCBpbnRlbF9hdG9taWNfc3RhdGUgKnN0YXRl LAo+ICAJc3Bpbl9sb2NrKCZ1bmNvcmUtPmxvY2spOwo+ICAKPiAgCXN3aXRjaCAoY3J0Yy0+cGlw ZSkgewo+IC0JCXUzMiBkc3BhcmIsIGRzcGFyYjIsIGRzcGFyYjM7Cj4gIAljYXNlIFBJUEVfQToK PiAgCQlkc3BhcmIgPSBpbnRlbF91bmNvcmVfcmVhZF9mdyh1bmNvcmUsIERTUEFSQik7Cj4gIAkJ ZHNwYXJiMiA9IGludGVsX3VuY29yZV9yZWFkX2Z3KHVuY29yZSwgRFNQQVJCMik7Cj4gCj4gX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KPiBJbnRlbC1nZngg bWFpbGluZyBsaXN0Cj4gSW50ZWwtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwo+IGh0dHBzOi8v bGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vaW50ZWwtZ2Z4CgotLSAKVmls bGUgU3lyasOkbMOkCkludGVsCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fCkludGVsLWdmeCBtYWlsaW5nIGxpc3QKSW50ZWwtZ2Z4QGxpc3RzLmZyZWVkZXNr dG9wLm9yZwpodHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2lu dGVsLWdmeAo= 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.3 required=3.0 tests=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 6E4F7C11D09 for ; Thu, 20 Feb 2020 13:47:21 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.kernel.org (Postfix) with ESMTP id 50C6C207FD for ; Thu, 20 Feb 2020 13:47:21 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728231AbgBTNrU (ORCPT ); Thu, 20 Feb 2020 08:47:20 -0500 Received: from mga12.intel.com ([192.55.52.136]:42624 "EHLO mga12.intel.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1728132AbgBTNrU (ORCPT ); Thu, 20 Feb 2020 08:47:20 -0500 X-Amp-Result: UNKNOWN X-Amp-Original-Verdict: FILE UNKNOWN X-Amp-File-Uploaded: False Received: from orsmga008.jf.intel.com ([10.7.209.65]) by fmsmga106.fm.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 20 Feb 2020 05:47:19 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.70,464,1574150400"; d="scan'208";a="229483538" Received: from stinkbox.fi.intel.com (HELO stinkbox) ([10.237.72.174]) by orsmga008.jf.intel.com with SMTP; 20 Feb 2020 05:47:15 -0800 Received: by stinkbox (sSMTP sendmail emulation); Thu, 20 Feb 2020 15:47:15 +0200 Date: Thu, 20 Feb 2020 15:47:15 +0200 From: Ville =?iso-8859-1?Q?Syrj=E4l=E4?= To: Kees Cook Cc: Jani Nikula , Joonas Lahtinen , Rodrigo Vivi , intel-gfx@lists.freedesktop.org, Alexander Potapenko , linux-kernel@vger.kernel.org Subject: Re: [Intel-gfx] [PATCH] drm/i915: Distribute switch variables for initialization Message-ID: <20200220134715.GY13686@intel.com> References: <20200220062258.68854-1-keescook@chromium.org> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: <20200220062258.68854-1-keescook@chromium.org> X-Patchwork-Hint: comment User-Agent: Mutt/1.10.1 (2018-07-13) Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Wed, Feb 19, 2020 at 10:22:58PM -0800, Kees Cook wrote: > Variables declared in a switch statement before any case statements > cannot be automatically initialized with compiler instrumentation (as > they are not part of any execution flow). With GCC's proposed automatic > stack variable initialization feature, this triggers a warning (and they > don't get initialized). Clang's automatic stack variable initialization > (via CONFIG_INIT_STACK_ALL=y) doesn't throw a warning, but it also > doesn't initialize such variables[1]. Silly compilers. > Note that these warnings (or silent > skipping) happen before the dead-store elimination optimization phase, > so even when the automatic initializations are later elided in favor of > direct initializations, the warnings remain. > > To avoid these problems, move such variables into the "case" where > they're used or lift them up into the main function body. > > drivers/gpu/drm/i915/display/intel_display.c: In function ‘check_digital_port_conflicts’: > drivers/gpu/drm/i915/display/intel_display.c:12963:17: warning: statement will never be executed [-Wswitch-unreachable] > 12963 | unsigned int port_mask; > | ^~~~~~~~~ > > drivers/gpu/drm/i915/intel_pm.c: In function ‘vlv_get_fifo_size’: > drivers/gpu/drm/i915/intel_pm.c:474:7: warning: statement will never be executed [-Wswitch-unreachable] > 474 | u32 dsparb, dsparb2, dsparb3; > | ^~~~~~ > drivers/gpu/drm/i915/intel_pm.c: In function ‘vlv_atomic_update_fifo’: > drivers/gpu/drm/i915/intel_pm.c:1997:7: warning: statement will never be executed [-Wswitch-unreachable] > 1997 | u32 dsparb, dsparb2, dsparb3; > | ^~~~~~ > > [1] https://bugs.llvm.org/show_bug.cgi?id=44916 > > Signed-off-by: Kees Cook > --- > drivers/gpu/drm/i915/display/intel_display.c | 6 ++++-- > drivers/gpu/drm/i915/intel_pm.c | 4 ++-- > 2 files changed, 6 insertions(+), 4 deletions(-) > > diff --git a/drivers/gpu/drm/i915/display/intel_display.c b/drivers/gpu/drm/i915/display/intel_display.c > index 064dd99bbc49..c829cd26f99e 100644 > --- a/drivers/gpu/drm/i915/display/intel_display.c > +++ b/drivers/gpu/drm/i915/display/intel_display.c > @@ -12960,14 +12960,15 @@ static bool check_digital_port_conflicts(struct intel_atomic_state *state) > WARN_ON(!connector_state->crtc); > > switch (encoder->type) { > - unsigned int port_mask; > case INTEL_OUTPUT_DDI: > if (WARN_ON(!HAS_DDI(to_i915(dev)))) > break; > /* else, fall through */ > case INTEL_OUTPUT_DP: > case INTEL_OUTPUT_HDMI: > - case INTEL_OUTPUT_EDP: > + case INTEL_OUTPUT_EDP: { > + unsigned int port_mask; This one I'd just remove and s/port_mask/BIT(encoder->port)/ everywhere. Otherwise lgtm. > + > port_mask = 1 << encoder->port; > > /* the same port mustn't appear more than once */ > @@ -12976,6 +12977,7 @@ static bool check_digital_port_conflicts(struct intel_atomic_state *state) > > used_ports |= port_mask; > break; > + } > case INTEL_OUTPUT_DP_MST: > used_mst_ports |= > 1 << encoder->port; > diff --git a/drivers/gpu/drm/i915/intel_pm.c b/drivers/gpu/drm/i915/intel_pm.c > index bd2d30ecc030..17d8833787c4 100644 > --- a/drivers/gpu/drm/i915/intel_pm.c > +++ b/drivers/gpu/drm/i915/intel_pm.c > @@ -469,9 +469,9 @@ static void vlv_get_fifo_size(struct intel_crtc_state *crtc_state) > struct vlv_fifo_state *fifo_state = &crtc_state->wm.vlv.fifo_state; > enum pipe pipe = crtc->pipe; > int sprite0_start, sprite1_start; > + u32 dsparb, dsparb2, dsparb3; > > switch (pipe) { > - u32 dsparb, dsparb2, dsparb3; > case PIPE_A: > dsparb = I915_READ(DSPARB); > dsparb2 = I915_READ(DSPARB2); > @@ -1969,6 +1969,7 @@ static void vlv_atomic_update_fifo(struct intel_atomic_state *state, > const struct vlv_fifo_state *fifo_state = > &crtc_state->wm.vlv.fifo_state; > int sprite0_start, sprite1_start, fifo_size; > + u32 dsparb, dsparb2, dsparb3; > > if (!crtc_state->fifo_changed) > return; > @@ -1994,7 +1995,6 @@ static void vlv_atomic_update_fifo(struct intel_atomic_state *state, > spin_lock(&uncore->lock); > > switch (crtc->pipe) { > - u32 dsparb, dsparb2, dsparb3; > case PIPE_A: > dsparb = intel_uncore_read_fw(uncore, DSPARB); > dsparb2 = intel_uncore_read_fw(uncore, DSPARB2); > > _______________________________________________ > Intel-gfx mailing list > Intel-gfx@lists.freedesktop.org > https://lists.freedesktop.org/mailman/listinfo/intel-gfx -- Ville Syrjälä Intel