From patchwork Thu Jul 30 16:26:52 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Joonas Lahtinen X-Patchwork-Id: 11693423 Return-Path: Received: from mail.kernel.org (pdx-korg-mail-1.web.codeaurora.org [172.30.200.123]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id D923C1392 for ; Thu, 30 Jul 2020 16:27:04 +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 C0A212082E for ; Thu, 30 Jul 2020 16:27:04 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org C0A212082E 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 D9F856E924; Thu, 30 Jul 2020 16:27:00 +0000 (UTC) X-Original-To: dri-devel@lists.freedesktop.org Delivered-To: dri-devel@lists.freedesktop.org Received: from mga09.intel.com (mga09.intel.com [134.134.136.24]) by gabe.freedesktop.org (Postfix) with ESMTPS id 3B55C6E920; Thu, 30 Jul 2020 16:26:59 +0000 (UTC) IronPort-SDR: DjpAQdQWsZ0C1/X20uPb7nSrybjfDF5EB3bXtNuoEAh6S49g5bONEQpctBySCWftbGy0Go0xoq JnvOkD+1vsog== X-IronPort-AV: E=McAfee;i="6000,8403,9698"; a="152855303" X-IronPort-AV: E=Sophos;i="5.75,415,1589266800"; d="scan'208";a="152855303" X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from orsmga005.jf.intel.com ([10.7.209.41]) by orsmga102.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 30 Jul 2020 09:26:58 -0700 IronPort-SDR: M2LYnSOujHHkk3EGsXW84PCA/73saquJQAhJqpld7Zg3mIzpWlIYFh52OZQkc+hmweZ6VtIHsD IbED4yS59DEQ== X-IronPort-AV: E=Sophos;i="5.75,415,1589266800"; d="scan'208";a="465316369" Received: from jlahtine-desk.ger.corp.intel.com (HELO localhost) ([10.252.26.222]) by orsmga005-auth.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 30 Jul 2020 09:26:55 -0700 Date: Thu, 30 Jul 2020 19:26:52 +0300 From: Joonas Lahtinen To: Dave Airlie , Daniel Vetter Subject: [PULL] drm-intel-next-fixes Message-ID: <20200730162652.GA90813@jlahtine-desk.ger.corp.intel.com> MIME-Version: 1.0 Content-Disposition: inline X-BeenThere: dri-devel@lists.freedesktop.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Direct Rendering Infrastructure - Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: dim-tools@lists.freedesktop.org, dri-devel@lists.freedesktop.org, Rodrigo Vivi , Sean Paul , intel-gfx@lists.freedesktop.org Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" Hi Dave & Daniel, (Covering for Jani here for drm-intel-next-fixes) 5 new commits over drm-intel-next here. Fix for KASAN detected race condition and linux-next scheduler WARNs. Patch to avoid IRQ spinlock and Cc: stable PMU refcount update. CI machinery needed some kicking, so results didn't appear at first. BAT now passed, shards should shortly be availabl CI_DINF_202 at https://intel-gfx-ci.01.org/tree/drm-intel-next-fixes/combined-alt.html? Regards, Joonas *** drm-intel-next-fixes-2020-07-30-1: - Fixes for linux-next introduced scheduler races - Fix for KASAN race in active execlists - Fix for previous breadcrumb breadcrumb code to avoid IRQ spinlock - Cc: stable patch for PMU refcount The following changes since commit d524b87f77364db096855d7eb714ffacec974ddf: drm/i915: Update DRIVER_DATE to 20200702 (2020-07-02 21:25:28 +0300) are available in the Git repository at: git://anongit.freedesktop.org/drm/drm-intel tags/drm-intel-next-fixes-2020-07-30-1 for you to fetch changes up to 6bd0b413618ffb50f900ec770283d8c2217d069f: drm/i915: Filter wake_flags passed to default_wake_function (2020-07-30 15:33:37 +0300) ---------------------------------------------------------------- - Fixes for linux-next introduced scheduler races - Fix for KASAN race in active execlists - Fix for previous breadcrumb breadcrumb code to avoid IRQ spinlock - Cc: stable patch for PMU refcount ---------------------------------------------------------------- Abdiel Janulgue (2): drm/i915/dg1: add initial DG-1 definitions drm/i915/dg1: Add DG1 PCI IDs Anshuman Gupta (1): drm/i915/hdcp: Update CP as per the kernel internal state Anusha Srivatsa (1): drm/i915/dg1: Remove SHPD_FILTER_CNT register programming Chris Wilson (27): drm/i915/gem: Only revoke the GGTT mmappings on aperture detiling changes drm/i915/gem: Only revoke mmap handlers if active drm/i915/gem: Drop forced struct_mutex from shrinker_taints_mutex drm/i915: Also drop vm.ref along error paths for vma construction drm/i915/gem: Split the context's obj:vma lut into its own mutex drm/i915: Export ppgtt_bind_vma drm/i915/gt: Pin the rings before marking active drm/i915: Update dma-attributes for our sg DMA drm/i915/gem: Unpin idle contexts from kswapd reclaim drm/i915/gt: Replace opencoded i915_gem_object_pin_map() drm/i915: Release shortlived maps of longlived objects drm/i915: Remove i915_gem_object_get_dirty_page() drm/i915/gt: Optimise aliasing-ppgtt allocations drm/i915/selftest: Check that GPR are restored across noa_wait drm/i915/gt: Be defensive in the face of false CS events drm/i915: Pull printing GT capabilities on error to err_print_gt drm/i915/gt: Always reset the engine, even if inactive, on execlists failure drm/i915/gt: Ignore irq enabling on the virtual engines drm/i915/gt: Only swap to a random sibling once upon creation drm/i915: Skip signaling a signaled request drm/i915/gt: Trace placement of timeline HWSP drm/i915/gt: Assert the kernel context is using the HWSP drm/i915: Provide the perf pmu.module drm/i915: Be wary of data races when reading the active execlists drm/i915: Remove i915_request.lock requirement for execution callbacks drm/i915: Copy default modparams to mock i915_device drm/i915: Filter wake_flags passed to default_wake_function Colin Ian King (1): drm/i915/selftest: fix an error return path where err is not being set Dan Carpenter (1): drm/i915/selftest: Fix an error code in live_noa_gpr() Daniele Ceraolo Spurio (8): drm/i915: Convert device_info to uncore/de_read drm/i915: Use the gt in HAS_ENGINE drm/i915: Move engine-related mmio init to engines_init_mmio drm/i915: Move the engine mask to intel_gt_info drm/i915: Introduce gt_init_mmio drm/i915/sseu: Move sseu detection and dump to intel_sseu drm/i915: gt-fy sseu debugfs drm/i915: Move sseu debugfs under gt/ Flavio Suligoi (1): drm/i915: Fix spelling mistake in i915_reg.h Jani Nikula (1): drm/i915: Update DRIVER_DATE to 20200715 José Roberto de Souza (6): drm/i915/display: Implement new combo phy initialization step drm/i915/ehl: Add new PCI ids drm/i915/tgl: Implement WAs 18011464164 and 22010931296 drm/i915/display: Replace drm_i915_private in voltage swing functions by intel_encoder drm/i915/display: Remove port and phy from voltage swing functions drm/i915/bios: Parse HOBL parameter Lee Shawn C (1): drm/i915/mst: filter out the display mode exceed sink's capability Lucas De Marchi (4): drm/i915/display: prefer dig_port to reference intel_digital_port drm/i915: do not read swizzle info if unavailable drm/i915/dg1: add support for the master unit interrupt drm/i915/dg1: Add fake PCH Lyude Paul (1): drm/probe_helper: Add drm_connector_helper_funcs.mode_valid_ctx Maarten Lankhorst (1): drm/i915: Move cec_notifier to intel_hdmi_connector_unregister, v2. Manasi Navare (2): drm/i915/dp: Helper for checking DDI_BUF_CTL Idle status drm/i915/dp: Helper to check for DDI BUF status to get active Matt Atwood (1): Revert "drm/i915/dp: Correctly advertise HBR3 for GEN11+" Michał Winiarski (6): drm/i915/guc: Expand guc_info debugfs with more information drm/i915: Reboot CI if we get wedged during driver init drm/i915: Print caller when tainting for CI drm/i915: Don't taint when using fault injection drm/i915/uc: Extract uc usage details into separate debugfs drm/i915/huc: Adjust HuC state accordingly after GuC fetch error Ramalingam C (1): drm/i915/hdcp: Fix the return handling of drm_hdcp_check_ksvs_revoked Stanislav Lisovskiy (1): drm/i915/tgl: Clamp min_cdclk to max_cdclk_freq to unblock 8K Stuart Summers (1): drm/i915: Add has_master_unit_irq flag Sudeep Holla (1): drm/i915/selftests: Fix compare functions provided for sorting Umesh Nerlige Ramappa (1): drm/i915/perf: Use GTT when saving/restoring engine GPR Venkata Sandeep Dhanalakota (1): drm/i915/sseu: Move sseu_info under gt_info Ville Syrjälä (16): drm/i915/fbc: Use the correct plane stride drm/i915/fbc: Fix nuke for pre-snb platforms drm/i915/fbc: Enable fbc on i865 drm/i915/fbc: Allow FBC to recompress after a 3D workload on i85x/i865 drm/i915/sdvo: Fix SDVO colorimetry bit defines drm/i915/sdvo: Implement limited color range for SDVO HDMI properly drm/i915: Reject DRM_MODE_FLAG_DBLCLK with DVI sinks drm/i915/sdvo: Make SDVO deal with HDMI pixel repeat drm/i915/sdvo: Make .get_modes() return the number of modes drm/i915/dvo: Make .get_modes() return the number of modes drm/i915: Move all FBC w/as to .init_clock_gating() drm/i915: Don't do WaFbcTurnOffFbcWatermark for glk drm/i915: Limit WaFbcHighMemBwCorruptionAvoidance to skl and bxt drm/i915: Document FBC related w/as more thoroughly drm/i915: WARN if max vswing/pre-emphasis violates the DP spec drm/i915: Recalculate FBC w/a stride when needed YueHaibing (1): drm/i915: Remove unused inline function drain_delayed_work() drivers/gpu/drm/drm_crtc_helper_internal.h | 7 +- drivers/gpu/drm/drm_probe_helper.c | 97 +-- drivers/gpu/drm/i915/Makefile | 1 + drivers/gpu/drm/i915/display/intel_bios.c | 3 + drivers/gpu/drm/i915/display/intel_cdclk.c | 11 +- drivers/gpu/drm/i915/display/intel_combo_phy.c | 25 + drivers/gpu/drm/i915/display/intel_ddi.c | 348 ++++++----- drivers/gpu/drm/i915/display/intel_display.c | 12 +- drivers/gpu/drm/i915/display/intel_display.h | 2 +- .../gpu/drm/i915/display/intel_display_debugfs.c | 12 +- drivers/gpu/drm/i915/display/intel_display_power.c | 4 +- drivers/gpu/drm/i915/display/intel_display_types.h | 40 +- drivers/gpu/drm/i915/display/intel_dp.c | 366 ++++++------ drivers/gpu/drm/i915/display/intel_dp.h | 4 +- .../gpu/drm/i915/display/intel_dp_link_training.c | 9 + drivers/gpu/drm/i915/display/intel_dp_mst.c | 129 ++-- drivers/gpu/drm/i915/display/intel_dp_mst.h | 6 +- drivers/gpu/drm/i915/display/intel_dpio_phy.c | 38 +- drivers/gpu/drm/i915/display/intel_dvo.c | 14 +- drivers/gpu/drm/i915/display/intel_fbc.c | 98 +++- drivers/gpu/drm/i915/display/intel_hdcp.c | 153 ++--- drivers/gpu/drm/i915/display/intel_hdmi.c | 277 +++++---- drivers/gpu/drm/i915/display/intel_hdmi.h | 6 +- drivers/gpu/drm/i915/display/intel_lspcon.c | 8 +- drivers/gpu/drm/i915/display/intel_lspcon.h | 2 +- drivers/gpu/drm/i915/display/intel_psr.c | 4 +- drivers/gpu/drm/i915/display/intel_sdvo.c | 145 +++-- drivers/gpu/drm/i915/display/intel_sdvo_regs.h | 8 +- drivers/gpu/drm/i915/display/intel_vbt_defs.h | 1 + drivers/gpu/drm/i915/display/intel_vdsc.c | 8 +- drivers/gpu/drm/i915/gem/i915_gem_client_blt.c | 9 +- drivers/gpu/drm/i915/gem/i915_gem_context.c | 18 +- drivers/gpu/drm/i915/gem/i915_gem_context.h | 2 +- drivers/gpu/drm/i915/gem/i915_gem_context_types.h | 1 + drivers/gpu/drm/i915/gem/i915_gem_execbuffer.c | 22 +- drivers/gpu/drm/i915/gem/i915_gem_mman.c | 15 +- drivers/gpu/drm/i915/gem/i915_gem_mman.h | 3 +- drivers/gpu/drm/i915/gem/i915_gem_object.c | 41 +- drivers/gpu/drm/i915/gem/i915_gem_object.h | 6 +- drivers/gpu/drm/i915/gem/i915_gem_pages.c | 29 +- drivers/gpu/drm/i915/gem/i915_gem_shrinker.c | 36 +- drivers/gpu/drm/i915/gem/i915_gem_tiling.c | 2 +- .../gpu/drm/i915/gem/selftests/i915_gem_context.c | 5 +- drivers/gpu/drm/i915/gem/selftests/mock_context.c | 4 +- drivers/gpu/drm/i915/gt/debugfs_gt.c | 2 + drivers/gpu/drm/i915/gt/gen6_ppgtt.c | 22 +- drivers/gpu/drm/i915/gt/gen7_renderclear.c | 2 +- drivers/gpu/drm/i915/gt/intel_breadcrumbs.c | 7 +- drivers/gpu/drm/i915/gt/intel_context.c | 12 +- drivers/gpu/drm/i915/gt/intel_context_sseu.c | 2 +- drivers/gpu/drm/i915/gt/intel_engine_cs.c | 91 ++- drivers/gpu/drm/i915/gt/intel_engine_pm.c | 1 + drivers/gpu/drm/i915/gt/intel_engine_types.h | 4 + drivers/gpu/drm/i915/gt/intel_engine_user.c | 2 +- drivers/gpu/drm/i915/gt/intel_ggtt.c | 49 +- drivers/gpu/drm/i915/gt/intel_gt.c | 18 +- drivers/gpu/drm/i915/gt/intel_gt.h | 17 +- drivers/gpu/drm/i915/gt/intel_gt_irq.c | 5 +- drivers/gpu/drm/i915/gt/intel_gt_pm.c | 2 +- drivers/gpu/drm/i915/gt/intel_gt_requests.c | 9 +- drivers/gpu/drm/i915/gt/intel_gt_types.h | 11 + drivers/gpu/drm/i915/gt/intel_gtt.h | 13 +- drivers/gpu/drm/i915/gt/intel_lrc.c | 107 ++-- drivers/gpu/drm/i915/gt/intel_ppgtt.c | 19 +- drivers/gpu/drm/i915/gt/intel_renderstate.c | 2 +- drivers/gpu/drm/i915/gt/intel_reset.c | 23 +- drivers/gpu/drm/i915/gt/intel_reset.h | 10 +- drivers/gpu/drm/i915/gt/intel_reset_types.h | 7 +- drivers/gpu/drm/i915/gt/intel_ring_submission.c | 4 +- drivers/gpu/drm/i915/gt/intel_rps.c | 3 +- drivers/gpu/drm/i915/gt/intel_sseu.c | 591 ++++++++++++++++++- drivers/gpu/drm/i915/gt/intel_sseu.h | 10 +- drivers/gpu/drm/i915/gt/intel_sseu_debugfs.c | 306 ++++++++++ drivers/gpu/drm/i915/gt/intel_sseu_debugfs.h | 17 + drivers/gpu/drm/i915/gt/intel_timeline.c | 7 + drivers/gpu/drm/i915/gt/intel_workarounds.c | 21 +- drivers/gpu/drm/i915/gt/selftest_lrc.c | 8 +- drivers/gpu/drm/i915/gt/selftest_rc6.c | 2 +- drivers/gpu/drm/i915/gt/selftest_rps.c | 8 +- drivers/gpu/drm/i915/gt/selftest_timeline.c | 13 +- drivers/gpu/drm/i915/gt/uc/intel_guc_ads.c | 10 +- drivers/gpu/drm/i915/gt/uc/intel_uc.c | 11 +- drivers/gpu/drm/i915/gt/uc/intel_uc_debugfs.c | 29 + drivers/gpu/drm/i915/gvt/handlers.c | 4 +- drivers/gpu/drm/i915/gvt/interrupt.c | 2 +- drivers/gpu/drm/i915/gvt/mmio_context.c | 2 +- drivers/gpu/drm/i915/i915_debugfs.c | 286 +-------- drivers/gpu/drm/i915/i915_drv.c | 9 +- drivers/gpu/drm/i915/i915_drv.h | 32 +- drivers/gpu/drm/i915/i915_gem.h | 2 +- drivers/gpu/drm/i915/i915_gem_gtt.c | 2 + drivers/gpu/drm/i915/i915_getparam.c | 2 +- drivers/gpu/drm/i915/i915_gpu_error.c | 34 +- drivers/gpu/drm/i915/i915_gpu_error.h | 3 + drivers/gpu/drm/i915/i915_irq.c | 59 +- drivers/gpu/drm/i915/i915_pci.c | 55 +- drivers/gpu/drm/i915/i915_perf.c | 14 +- drivers/gpu/drm/i915/i915_pmu.c | 7 +- drivers/gpu/drm/i915/i915_query.c | 2 +- drivers/gpu/drm/i915/i915_reg.h | 18 +- drivers/gpu/drm/i915/i915_request.c | 165 ++++-- drivers/gpu/drm/i915/i915_sw_fence.c | 10 +- drivers/gpu/drm/i915/i915_utils.c | 10 + drivers/gpu/drm/i915/i915_utils.h | 16 +- drivers/gpu/drm/i915/i915_vma.c | 24 +- drivers/gpu/drm/i915/i915_vma_types.h | 1 - drivers/gpu/drm/i915/intel_device_info.c | 653 +-------------------- drivers/gpu/drm/i915/intel_device_info.h | 16 +- drivers/gpu/drm/i915/intel_pch.c | 6 + drivers/gpu/drm/i915/intel_pch.h | 4 + drivers/gpu/drm/i915/intel_pm.c | 108 +++- drivers/gpu/drm/i915/intel_uncore.c | 20 +- drivers/gpu/drm/i915/intel_uncore.h | 4 +- drivers/gpu/drm/i915/selftests/i915_perf.c | 133 +++++ drivers/gpu/drm/i915/selftests/i915_request.c | 2 +- drivers/gpu/drm/i915/selftests/mock_gem_device.c | 6 +- drivers/gpu/drm/i915/selftests/mock_gtt.c | 12 +- include/drm/drm_modeset_helper_vtables.h | 42 ++ include/drm/i915_pciids.h | 8 + 119 files changed, 3104 insertions(+), 2177 deletions(-) create mode 100644 drivers/gpu/drm/i915/gt/intel_sseu_debugfs.c create mode 100644 drivers/gpu/drm/i915/gt/intel_sseu_debugfs.h