* [PATCH 2/2] drm/i915/tgl: Restrict availables engines to rcs0 by default
2019-10-01 13:54 [PATCH 1/2] drm/i915: Use a modparam to restrict exposed engines Chris Wilson
@ 2019-10-01 13:54 ` Chris Wilson
2019-10-08 15:17 ` Summers, Stuart
2019-10-01 16:36 ` ✗ Fi.CI.CHECKPATCH: warning for series starting with [1/2] drm/i915: Use a modparam to restrict exposed engines Patchwork
` (8 subsequent siblings)
9 siblings, 1 reply; 15+ messages in thread
From: Chris Wilson @ 2019-10-01 13:54 UTC (permalink / raw)
To: intel-gfx
CI is still unstable whenever we enable more than one engine, and we
have not yet found a better hack than restricting it to using just rcs0.
However, to allow testing to continue on the other engines by
developers, we allow the available set of engines to be overridden on
the command line with just the default set limited to [rcs0].
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Cc: Andi Shyti <andi.shyti@intel.com>
Cc: Mika Kuoppala <mika.kuoppala@linux.intel.com>
---
drivers/gpu/drm/i915/gt/intel_engine_cs.c | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/drivers/gpu/drm/i915/gt/intel_engine_cs.c b/drivers/gpu/drm/i915/gt/intel_engine_cs.c
index 690da64ec256..9c8c7c8af394 100644
--- a/drivers/gpu/drm/i915/gt/intel_engine_cs.c
+++ b/drivers/gpu/drm/i915/gt/intel_engine_cs.c
@@ -406,6 +406,10 @@ static bool engine_available(struct drm_i915_private *i915, int id)
if (!HAS_ENGINE(i915, id))
return false;
+ /* XXX reduced by default for CI stability XXX */
+ if (IS_TIGERLAKE(i915) && i915_modparams.engines == -1u)
+ return id == RCS0;
+
if (!(i915_modparams.engines & param_bit[id]))
return false;
--
2.23.0
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply related [flat|nested] 15+ messages in thread* Re: [PATCH 2/2] drm/i915/tgl: Restrict availables engines to rcs0 by default
2019-10-01 13:54 ` [PATCH 2/2] drm/i915/tgl: Restrict availables engines to rcs0 by default Chris Wilson
@ 2019-10-08 15:17 ` Summers, Stuart
0 siblings, 0 replies; 15+ messages in thread
From: Summers, Stuart @ 2019-10-08 15:17 UTC (permalink / raw)
To: intel-gfx@lists.freedesktop.org, chris@chris-wilson.co.uk
[-- Attachment #1.1: Type: text/plain, Size: 1552 bytes --]
On Tue, 2019-10-01 at 14:54 +0100, Chris Wilson wrote:
> CI is still unstable whenever we enable more than one engine, and we
> have not yet found a better hack than restricting it to using just
> rcs0.
>
> However, to allow testing to continue on the other engines by
> developers, we allow the available set of engines to be overridden on
> the command line with just the default set limited to [rcs0].
>
> Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
> Cc: Andi Shyti <andi.shyti@intel.com>
> Cc: Mika Kuoppala <mika.kuoppala@linux.intel.com>
> ---
> drivers/gpu/drm/i915/gt/intel_engine_cs.c | 4 ++++
> 1 file changed, 4 insertions(+)
>
> diff --git a/drivers/gpu/drm/i915/gt/intel_engine_cs.c
> b/drivers/gpu/drm/i915/gt/intel_engine_cs.c
> index 690da64ec256..9c8c7c8af394 100644
> --- a/drivers/gpu/drm/i915/gt/intel_engine_cs.c
> +++ b/drivers/gpu/drm/i915/gt/intel_engine_cs.c
> @@ -406,6 +406,10 @@ static bool engine_available(struct
> drm_i915_private *i915, int id)
> if (!HAS_ENGINE(i915, id))
> return false;
>
> + /* XXX reduced by default for CI stability XXX */
> + if (IS_TIGERLAKE(i915) && i915_modparams.engines == -1u)
> + return id == RCS0;
> +
So I'm not completely against this, and I generally (from a debug
perspective) like the idea of being able to tweak this kind of thing.
But given our CI, is this really needed on top of just reducing the
engines in i915_pci.c?
Thanks,
Stuart
> if (!(i915_modparams.engines & param_bit[id]))
> return false;
>
[-- Attachment #1.2: smime.p7s --]
[-- Type: application/x-pkcs7-signature, Size: 3270 bytes --]
[-- Attachment #2: Type: text/plain, Size: 159 bytes --]
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply [flat|nested] 15+ messages in thread
* ✗ Fi.CI.CHECKPATCH: warning for series starting with [1/2] drm/i915: Use a modparam to restrict exposed engines
2019-10-01 13:54 [PATCH 1/2] drm/i915: Use a modparam to restrict exposed engines Chris Wilson
2019-10-01 13:54 ` [PATCH 2/2] drm/i915/tgl: Restrict availables engines to rcs0 by default Chris Wilson
@ 2019-10-01 16:36 ` Patchwork
2019-10-01 16:59 ` ✗ Fi.CI.BAT: failure " Patchwork
` (7 subsequent siblings)
9 siblings, 0 replies; 15+ messages in thread
From: Patchwork @ 2019-10-01 16:36 UTC (permalink / raw)
To: Chris Wilson; +Cc: intel-gfx
== Series Details ==
Series: series starting with [1/2] drm/i915: Use a modparam to restrict exposed engines
URL : https://patchwork.freedesktop.org/series/67450/
State : warning
== Summary ==
$ dim checkpatch origin/drm-tip
d9fbdccc5cd1 drm/i915: Use a modparam to restrict exposed engines
-:109: CHECK:PARENTHESIS_ALIGNMENT: Alignment should match open parenthesis
#109: FILE: drivers/gpu/drm/i915/i915_params.c:48:
+i915_param_named(engines, uint, 0400,
+ "Only expose selected command streamers [GPU engines] (0=disable GPU, "
total: 0 errors, 0 warnings, 1 checks, 87 lines checked
e38072e0b2fa drm/i915/tgl: Restrict availables engines to rcs0 by default
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply [flat|nested] 15+ messages in thread* ✗ Fi.CI.BAT: failure for series starting with [1/2] drm/i915: Use a modparam to restrict exposed engines
2019-10-01 13:54 [PATCH 1/2] drm/i915: Use a modparam to restrict exposed engines Chris Wilson
2019-10-01 13:54 ` [PATCH 2/2] drm/i915/tgl: Restrict availables engines to rcs0 by default Chris Wilson
2019-10-01 16:36 ` ✗ Fi.CI.CHECKPATCH: warning for series starting with [1/2] drm/i915: Use a modparam to restrict exposed engines Patchwork
@ 2019-10-01 16:59 ` Patchwork
2019-10-01 17:48 ` [Intel-gfx] " kbuild test robot
` (6 subsequent siblings)
9 siblings, 0 replies; 15+ messages in thread
From: Patchwork @ 2019-10-01 16:59 UTC (permalink / raw)
To: Chris Wilson; +Cc: intel-gfx
== Series Details ==
Series: series starting with [1/2] drm/i915: Use a modparam to restrict exposed engines
URL : https://patchwork.freedesktop.org/series/67450/
State : failure
== Summary ==
CI Bug Log - changes from CI_DRM_6985 -> Patchwork_14610
====================================================
Summary
-------
**FAILURE**
Serious unknown changes coming with Patchwork_14610 absolutely need to be
verified manually.
If you think the reported changes have nothing to do with the changes
introduced in Patchwork_14610, please notify your bug team to allow them
to document this new failure mode, which will reduce false positives in CI.
External URL: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_14610/index.html
Possible new issues
-------------------
Here are the unknown changes that may have been introduced in Patchwork_14610:
### IGT changes ###
#### Possible regressions ####
* igt@runner@aborted:
- fi-bsw-n3050: NOTRUN -> [FAIL][1]
[1]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_14610/fi-bsw-n3050/igt@runner@aborted.html
Known issues
------------
Here are the changes found in Patchwork_14610 that come from known issues:
### IGT changes ###
#### Issues hit ####
* igt@i915_selftest@live_hangcheck:
- fi-bsw-n3050: [PASS][2] -> [INCOMPLETE][3] ([fdo#105876])
[2]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6985/fi-bsw-n3050/igt@i915_selftest@live_hangcheck.html
[3]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_14610/fi-bsw-n3050/igt@i915_selftest@live_hangcheck.html
#### Possible fixes ####
* igt@gem_exec_suspend@basic-s4-devices:
- fi-blb-e6850: [INCOMPLETE][4] ([fdo#107718]) -> [PASS][5]
[4]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6985/fi-blb-e6850/igt@gem_exec_suspend@basic-s4-devices.html
[5]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_14610/fi-blb-e6850/igt@gem_exec_suspend@basic-s4-devices.html
* igt@kms_frontbuffer_tracking@basic:
- fi-hsw-peppy: [DMESG-WARN][6] ([fdo#102614]) -> [PASS][7]
[6]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6985/fi-hsw-peppy/igt@kms_frontbuffer_tracking@basic.html
[7]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_14610/fi-hsw-peppy/igt@kms_frontbuffer_tracking@basic.html
#### Warnings ####
* igt@kms_chamelium@hdmi-hpd-fast:
- fi-kbl-7500u: [FAIL][8] ([fdo#111045] / [fdo#111096]) -> [FAIL][9] ([fdo#111407])
[8]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6985/fi-kbl-7500u/igt@kms_chamelium@hdmi-hpd-fast.html
[9]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_14610/fi-kbl-7500u/igt@kms_chamelium@hdmi-hpd-fast.html
{name}: This element is suppressed. This means it is ignored when computing
the status of the difference (SUCCESS, WARNING, or FAILURE).
[fdo#102614]: https://bugs.freedesktop.org/show_bug.cgi?id=102614
[fdo#105876]: https://bugs.freedesktop.org/show_bug.cgi?id=105876
[fdo#106107]: https://bugs.freedesktop.org/show_bug.cgi?id=106107
[fdo#107713]: https://bugs.freedesktop.org/show_bug.cgi?id=107713
[fdo#107718]: https://bugs.freedesktop.org/show_bug.cgi?id=107718
[fdo#108569]: https://bugs.freedesktop.org/show_bug.cgi?id=108569
[fdo#111045]: https://bugs.freedesktop.org/show_bug.cgi?id=111045
[fdo#111096]: https://bugs.freedesktop.org/show_bug.cgi?id=111096
[fdo#111407]: https://bugs.freedesktop.org/show_bug.cgi?id=111407
[fdo#111604]: https://bugs.freedesktop.org/show_bug.cgi?id=111604
[fdo#111714]: https://bugs.freedesktop.org/show_bug.cgi?id=111714
[fdo#111735]: https://bugs.freedesktop.org/show_bug.cgi?id=111735
Participating hosts (51 -> 45)
------------------------------
Additional (2): fi-cml-h fi-pnv-d510
Missing (8): fi-ilk-m540 fi-hsw-4200u fi-byt-squawks fi-bsw-cyan fi-icl-u3 fi-icl-y fi-byt-clapper fi-bdw-samus
Build changes
-------------
* CI: CI-20190529 -> None
* Linux: CI_DRM_6985 -> Patchwork_14610
CI-20190529: 20190529
CI_DRM_6985: 75d23ba38b952a5f3d0fc42baf1df2d15c5e74b1 @ git://anongit.freedesktop.org/gfx-ci/linux
IGT_5208: c0131b4f132acf287d9d05b0f5078003d3159e1c @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools
Patchwork_14610: e38072e0b2fa7bb6638f58c2d2b1d4c1c6075c87 @ git://anongit.freedesktop.org/gfx-ci/linux
== Linux commits ==
e38072e0b2fa drm/i915/tgl: Restrict availables engines to rcs0 by default
d9fbdccc5cd1 drm/i915: Use a modparam to restrict exposed engines
== Logs ==
For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_14610/index.html
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply [flat|nested] 15+ messages in thread* Re: [PATCH 1/2] drm/i915: Use a modparam to restrict exposed engines
2019-10-01 13:54 [PATCH 1/2] drm/i915: Use a modparam to restrict exposed engines Chris Wilson
@ 2019-10-01 17:48 ` kbuild test robot
2019-10-01 16:36 ` ✗ Fi.CI.CHECKPATCH: warning for series starting with [1/2] drm/i915: Use a modparam to restrict exposed engines Patchwork
` (8 subsequent siblings)
9 siblings, 0 replies; 15+ messages in thread
From: kbuild test robot @ 2019-10-01 17:48 UTC (permalink / raw)
To: Chris Wilson; +Cc: intel-gfx, kbuild-all
[-- Attachment #1: Type: text/plain, Size: 7228 bytes --]
Hi Chris,
Thank you for the patch! Yet something to improve:
[auto build test ERROR on drm-intel/for-linux-next]
[cannot apply to v5.4-rc1 next-20191001]
[if your patch is applied to the wrong git tree, please drop us a note to help
improve the system. BTW, we also suggest to use '--base' option to specify the
base tree in git format-patch, please see https://stackoverflow.com/a/37406982]
url: https://github.com/0day-ci/linux/commits/Chris-Wilson/drm-i915-Use-a-modparam-to-restrict-exposed-engines/20191002-003226
base: git://anongit.freedesktop.org/drm-intel for-linux-next
config: i386-defconfig (attached as .config)
compiler: gcc-7 (Debian 7.4.0-13) 7.4.0
reproduce:
# save the attached .config to linux build tree
make ARCH=i386
If you fix the issue, kindly add following tag
Reported-by: kbuild test robot <lkp@intel.com>
All errors (new ones prefixed by >>):
drivers/gpu/drm/i915/i915_gem.c: In function 'i915_gem_init':
>> drivers/gpu/drm/i915/i915_gem.c:1411:3: error: implicit declaration of function 'intel_gt_set_wedged_on_init'; did you mean 'intel_gt_set_wedged'? [-Werror=implicit-function-declaration]
intel_gt_set_wedged_on_init(&dev_priv->gt);
^~~~~~~~~~~~~~~~~~~~~~~~~~~
intel_gt_set_wedged
cc1: some warnings being treated as errors
vim +1411 drivers/gpu/drm/i915/i915_gem.c
1405
1406 int i915_gem_init(struct drm_i915_private *dev_priv)
1407 {
1408 int ret;
1409
1410 if (!RUNTIME_INFO(dev_priv)->num_engines) {
> 1411 intel_gt_set_wedged_on_init(&dev_priv->gt);
1412 return 0;
1413 }
1414
1415 /* We need to fallback to 4K pages if host doesn't support huge gtt. */
1416 if (intel_vgpu_active(dev_priv) && !intel_vgpu_has_huge_gtt(dev_priv))
1417 mkwrite_device_info(dev_priv)->page_sizes =
1418 I915_GTT_PAGE_SIZE_4K;
1419
1420 intel_timelines_init(dev_priv);
1421
1422 ret = i915_gem_init_userptr(dev_priv);
1423 if (ret)
1424 return ret;
1425
1426 intel_uc_fetch_firmwares(&dev_priv->gt.uc);
1427 intel_wopcm_init(&dev_priv->wopcm);
1428
1429 /* This is just a security blanket to placate dragons.
1430 * On some systems, we very sporadically observe that the first TLBs
1431 * used by the CS may be stale, despite us poking the TLB reset. If
1432 * we hold the forcewake during initialisation these problems
1433 * just magically go away.
1434 */
1435 mutex_lock(&dev_priv->drm.struct_mutex);
1436 intel_uncore_forcewake_get(&dev_priv->uncore, FORCEWAKE_ALL);
1437
1438 ret = i915_init_ggtt(dev_priv);
1439 if (ret) {
1440 GEM_BUG_ON(ret == -EIO);
1441 goto err_unlock;
1442 }
1443
1444 ret = i915_gem_init_scratch(dev_priv,
1445 IS_GEN(dev_priv, 2) ? SZ_256K : PAGE_SIZE);
1446 if (ret) {
1447 GEM_BUG_ON(ret == -EIO);
1448 goto err_ggtt;
1449 }
1450
1451 ret = intel_engines_setup(dev_priv);
1452 if (ret) {
1453 GEM_BUG_ON(ret == -EIO);
1454 goto err_unlock;
1455 }
1456
1457 ret = i915_gem_contexts_init(dev_priv);
1458 if (ret) {
1459 GEM_BUG_ON(ret == -EIO);
1460 goto err_scratch;
1461 }
1462
1463 ret = intel_engines_init(dev_priv);
1464 if (ret) {
1465 GEM_BUG_ON(ret == -EIO);
1466 goto err_context;
1467 }
1468
1469 intel_init_gt_powersave(dev_priv);
1470
1471 intel_uc_init(&dev_priv->gt.uc);
1472
1473 ret = i915_gem_init_hw(dev_priv);
1474 if (ret)
1475 goto err_uc_init;
1476
1477 /* Only when the HW is re-initialised, can we replay the requests */
1478 ret = intel_gt_resume(&dev_priv->gt);
1479 if (ret)
1480 goto err_init_hw;
1481
1482 /*
1483 * Despite its name intel_init_clock_gating applies both display
1484 * clock gating workarounds; GT mmio workarounds and the occasional
1485 * GT power context workaround. Worse, sometimes it includes a context
1486 * register workaround which we need to apply before we record the
1487 * default HW state for all contexts.
1488 *
1489 * FIXME: break up the workarounds and apply them at the right time!
1490 */
1491 intel_init_clock_gating(dev_priv);
1492
1493 ret = intel_engines_verify_workarounds(dev_priv);
1494 if (ret)
1495 goto err_gt;
1496
1497 ret = __intel_engines_record_defaults(dev_priv);
1498 if (ret)
1499 goto err_gt;
1500
1501 ret = i915_inject_load_error(dev_priv, -ENODEV);
1502 if (ret)
1503 goto err_gt;
1504
1505 ret = i915_inject_load_error(dev_priv, -EIO);
1506 if (ret)
1507 goto err_gt;
1508
1509 intel_uncore_forcewake_put(&dev_priv->uncore, FORCEWAKE_ALL);
1510 mutex_unlock(&dev_priv->drm.struct_mutex);
1511
1512 return 0;
1513
1514 /*
1515 * Unwinding is complicated by that we want to handle -EIO to mean
1516 * disable GPU submission but keep KMS alive. We want to mark the
1517 * HW as irrevisibly wedged, but keep enough state around that the
1518 * driver doesn't explode during runtime.
1519 */
1520 err_gt:
1521 mutex_unlock(&dev_priv->drm.struct_mutex);
1522
1523 intel_gt_set_wedged(&dev_priv->gt);
1524 i915_gem_suspend(dev_priv);
1525 i915_gem_suspend_late(dev_priv);
1526
1527 i915_gem_drain_workqueue(dev_priv);
1528
1529 mutex_lock(&dev_priv->drm.struct_mutex);
1530 err_init_hw:
1531 intel_uc_fini_hw(&dev_priv->gt.uc);
1532 err_uc_init:
1533 if (ret != -EIO) {
1534 intel_uc_fini(&dev_priv->gt.uc);
1535 intel_cleanup_gt_powersave(dev_priv);
1536 intel_engines_cleanup(dev_priv);
1537 }
1538 err_context:
1539 if (ret != -EIO)
1540 i915_gem_contexts_fini(dev_priv);
1541 err_scratch:
1542 i915_gem_fini_scratch(dev_priv);
1543 err_ggtt:
1544 err_unlock:
1545 intel_uncore_forcewake_put(&dev_priv->uncore, FORCEWAKE_ALL);
1546 mutex_unlock(&dev_priv->drm.struct_mutex);
1547
1548 if (ret != -EIO) {
1549 intel_uc_cleanup_firmwares(&dev_priv->gt.uc);
1550 i915_gem_cleanup_userptr(dev_priv);
1551 intel_timelines_fini(dev_priv);
1552 }
1553
1554 if (ret == -EIO) {
1555 mutex_lock(&dev_priv->drm.struct_mutex);
1556
1557 /*
1558 * Allow engines or uC initialisation to fail by marking the GPU
1559 * as wedged. But we only want to do this when the GPU is angry,
1560 * for all other failure, such as an allocation failure, bail.
1561 */
1562 if (!intel_gt_is_wedged(&dev_priv->gt)) {
1563 i915_probe_error(dev_priv,
1564 "Failed to initialize GPU, declaring it wedged!\n");
1565 intel_gt_set_wedged(&dev_priv->gt);
1566 }
1567
1568 /* Minimal basic recovery for KMS */
1569 ret = i915_ggtt_enable_hw(dev_priv);
1570 i915_gem_restore_gtt_mappings(dev_priv);
1571 i915_gem_restore_fences(dev_priv);
1572 intel_init_clock_gating(dev_priv);
1573
1574 mutex_unlock(&dev_priv->drm.struct_mutex);
1575 }
1576
1577 i915_gem_drain_freed_objects(dev_priv);
1578 return ret;
1579 }
1580
---
0-DAY kernel test infrastructure Open Source Technology Center
https://lists.01.org/pipermail/kbuild-all Intel Corporation
[-- Attachment #2: .config.gz --]
[-- Type: application/gzip, Size: 28068 bytes --]
[-- Attachment #3: Type: text/plain, Size: 159 bytes --]
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply [flat|nested] 15+ messages in thread* Re: [Intel-gfx] [PATCH 1/2] drm/i915: Use a modparam to restrict exposed engines
@ 2019-10-01 17:48 ` kbuild test robot
0 siblings, 0 replies; 15+ messages in thread
From: kbuild test robot @ 2019-10-01 17:48 UTC (permalink / raw)
To: kbuild-all
[-- Attachment #1: Type: text/plain, Size: 7440 bytes --]
Hi Chris,
Thank you for the patch! Yet something to improve:
[auto build test ERROR on drm-intel/for-linux-next]
[cannot apply to v5.4-rc1 next-20191001]
[if your patch is applied to the wrong git tree, please drop us a note to help
improve the system. BTW, we also suggest to use '--base' option to specify the
base tree in git format-patch, please see https://stackoverflow.com/a/37406982]
url: https://github.com/0day-ci/linux/commits/Chris-Wilson/drm-i915-Use-a-modparam-to-restrict-exposed-engines/20191002-003226
base: git://anongit.freedesktop.org/drm-intel for-linux-next
config: i386-defconfig (attached as .config)
compiler: gcc-7 (Debian 7.4.0-13) 7.4.0
reproduce:
# save the attached .config to linux build tree
make ARCH=i386
If you fix the issue, kindly add following tag
Reported-by: kbuild test robot <lkp@intel.com>
All errors (new ones prefixed by >>):
drivers/gpu/drm/i915/i915_gem.c: In function 'i915_gem_init':
>> drivers/gpu/drm/i915/i915_gem.c:1411:3: error: implicit declaration of function 'intel_gt_set_wedged_on_init'; did you mean 'intel_gt_set_wedged'? [-Werror=implicit-function-declaration]
intel_gt_set_wedged_on_init(&dev_priv->gt);
^~~~~~~~~~~~~~~~~~~~~~~~~~~
intel_gt_set_wedged
cc1: some warnings being treated as errors
vim +1411 drivers/gpu/drm/i915/i915_gem.c
1405
1406 int i915_gem_init(struct drm_i915_private *dev_priv)
1407 {
1408 int ret;
1409
1410 if (!RUNTIME_INFO(dev_priv)->num_engines) {
> 1411 intel_gt_set_wedged_on_init(&dev_priv->gt);
1412 return 0;
1413 }
1414
1415 /* We need to fallback to 4K pages if host doesn't support huge gtt. */
1416 if (intel_vgpu_active(dev_priv) && !intel_vgpu_has_huge_gtt(dev_priv))
1417 mkwrite_device_info(dev_priv)->page_sizes =
1418 I915_GTT_PAGE_SIZE_4K;
1419
1420 intel_timelines_init(dev_priv);
1421
1422 ret = i915_gem_init_userptr(dev_priv);
1423 if (ret)
1424 return ret;
1425
1426 intel_uc_fetch_firmwares(&dev_priv->gt.uc);
1427 intel_wopcm_init(&dev_priv->wopcm);
1428
1429 /* This is just a security blanket to placate dragons.
1430 * On some systems, we very sporadically observe that the first TLBs
1431 * used by the CS may be stale, despite us poking the TLB reset. If
1432 * we hold the forcewake during initialisation these problems
1433 * just magically go away.
1434 */
1435 mutex_lock(&dev_priv->drm.struct_mutex);
1436 intel_uncore_forcewake_get(&dev_priv->uncore, FORCEWAKE_ALL);
1437
1438 ret = i915_init_ggtt(dev_priv);
1439 if (ret) {
1440 GEM_BUG_ON(ret == -EIO);
1441 goto err_unlock;
1442 }
1443
1444 ret = i915_gem_init_scratch(dev_priv,
1445 IS_GEN(dev_priv, 2) ? SZ_256K : PAGE_SIZE);
1446 if (ret) {
1447 GEM_BUG_ON(ret == -EIO);
1448 goto err_ggtt;
1449 }
1450
1451 ret = intel_engines_setup(dev_priv);
1452 if (ret) {
1453 GEM_BUG_ON(ret == -EIO);
1454 goto err_unlock;
1455 }
1456
1457 ret = i915_gem_contexts_init(dev_priv);
1458 if (ret) {
1459 GEM_BUG_ON(ret == -EIO);
1460 goto err_scratch;
1461 }
1462
1463 ret = intel_engines_init(dev_priv);
1464 if (ret) {
1465 GEM_BUG_ON(ret == -EIO);
1466 goto err_context;
1467 }
1468
1469 intel_init_gt_powersave(dev_priv);
1470
1471 intel_uc_init(&dev_priv->gt.uc);
1472
1473 ret = i915_gem_init_hw(dev_priv);
1474 if (ret)
1475 goto err_uc_init;
1476
1477 /* Only when the HW is re-initialised, can we replay the requests */
1478 ret = intel_gt_resume(&dev_priv->gt);
1479 if (ret)
1480 goto err_init_hw;
1481
1482 /*
1483 * Despite its name intel_init_clock_gating applies both display
1484 * clock gating workarounds; GT mmio workarounds and the occasional
1485 * GT power context workaround. Worse, sometimes it includes a context
1486 * register workaround which we need to apply before we record the
1487 * default HW state for all contexts.
1488 *
1489 * FIXME: break up the workarounds and apply them at the right time!
1490 */
1491 intel_init_clock_gating(dev_priv);
1492
1493 ret = intel_engines_verify_workarounds(dev_priv);
1494 if (ret)
1495 goto err_gt;
1496
1497 ret = __intel_engines_record_defaults(dev_priv);
1498 if (ret)
1499 goto err_gt;
1500
1501 ret = i915_inject_load_error(dev_priv, -ENODEV);
1502 if (ret)
1503 goto err_gt;
1504
1505 ret = i915_inject_load_error(dev_priv, -EIO);
1506 if (ret)
1507 goto err_gt;
1508
1509 intel_uncore_forcewake_put(&dev_priv->uncore, FORCEWAKE_ALL);
1510 mutex_unlock(&dev_priv->drm.struct_mutex);
1511
1512 return 0;
1513
1514 /*
1515 * Unwinding is complicated by that we want to handle -EIO to mean
1516 * disable GPU submission but keep KMS alive. We want to mark the
1517 * HW as irrevisibly wedged, but keep enough state around that the
1518 * driver doesn't explode during runtime.
1519 */
1520 err_gt:
1521 mutex_unlock(&dev_priv->drm.struct_mutex);
1522
1523 intel_gt_set_wedged(&dev_priv->gt);
1524 i915_gem_suspend(dev_priv);
1525 i915_gem_suspend_late(dev_priv);
1526
1527 i915_gem_drain_workqueue(dev_priv);
1528
1529 mutex_lock(&dev_priv->drm.struct_mutex);
1530 err_init_hw:
1531 intel_uc_fini_hw(&dev_priv->gt.uc);
1532 err_uc_init:
1533 if (ret != -EIO) {
1534 intel_uc_fini(&dev_priv->gt.uc);
1535 intel_cleanup_gt_powersave(dev_priv);
1536 intel_engines_cleanup(dev_priv);
1537 }
1538 err_context:
1539 if (ret != -EIO)
1540 i915_gem_contexts_fini(dev_priv);
1541 err_scratch:
1542 i915_gem_fini_scratch(dev_priv);
1543 err_ggtt:
1544 err_unlock:
1545 intel_uncore_forcewake_put(&dev_priv->uncore, FORCEWAKE_ALL);
1546 mutex_unlock(&dev_priv->drm.struct_mutex);
1547
1548 if (ret != -EIO) {
1549 intel_uc_cleanup_firmwares(&dev_priv->gt.uc);
1550 i915_gem_cleanup_userptr(dev_priv);
1551 intel_timelines_fini(dev_priv);
1552 }
1553
1554 if (ret == -EIO) {
1555 mutex_lock(&dev_priv->drm.struct_mutex);
1556
1557 /*
1558 * Allow engines or uC initialisation to fail by marking the GPU
1559 * as wedged. But we only want to do this when the GPU is angry,
1560 * for all other failure, such as an allocation failure, bail.
1561 */
1562 if (!intel_gt_is_wedged(&dev_priv->gt)) {
1563 i915_probe_error(dev_priv,
1564 "Failed to initialize GPU, declaring it wedged!\n");
1565 intel_gt_set_wedged(&dev_priv->gt);
1566 }
1567
1568 /* Minimal basic recovery for KMS */
1569 ret = i915_ggtt_enable_hw(dev_priv);
1570 i915_gem_restore_gtt_mappings(dev_priv);
1571 i915_gem_restore_fences(dev_priv);
1572 intel_init_clock_gating(dev_priv);
1573
1574 mutex_unlock(&dev_priv->drm.struct_mutex);
1575 }
1576
1577 i915_gem_drain_freed_objects(dev_priv);
1578 return ret;
1579 }
1580
---
0-DAY kernel test infrastructure Open Source Technology Center
https://lists.01.org/pipermail/kbuild-all Intel Corporation
[-- Attachment #2: config.gz --]
[-- Type: application/gzip, Size: 28068 bytes --]
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [PATCH 1/2] drm/i915: Use a modparam to restrict exposed engines
2019-10-01 13:54 [PATCH 1/2] drm/i915: Use a modparam to restrict exposed engines Chris Wilson
@ 2019-10-01 18:21 ` kbuild test robot
2019-10-01 16:36 ` ✗ Fi.CI.CHECKPATCH: warning for series starting with [1/2] drm/i915: Use a modparam to restrict exposed engines Patchwork
` (8 subsequent siblings)
9 siblings, 0 replies; 15+ messages in thread
From: kbuild test robot @ 2019-10-01 18:21 UTC (permalink / raw)
To: Chris Wilson; +Cc: intel-gfx, kbuild-all
[-- Attachment #1: Type: text/plain, Size: 7198 bytes --]
Hi Chris,
Thank you for the patch! Yet something to improve:
[auto build test ERROR on drm-intel/for-linux-next]
[cannot apply to v5.4-rc1 next-20191001]
[if your patch is applied to the wrong git tree, please drop us a note to help
improve the system. BTW, we also suggest to use '--base' option to specify the
base tree in git format-patch, please see https://stackoverflow.com/a/37406982]
url: https://github.com/0day-ci/linux/commits/Chris-Wilson/drm-i915-Use-a-modparam-to-restrict-exposed-engines/20191002-003226
base: git://anongit.freedesktop.org/drm-intel for-linux-next
config: i386-randconfig-a002-201939 (attached as .config)
compiler: gcc-5 (Ubuntu 5.5.0-12ubuntu1) 5.5.0 20171010
reproduce:
# save the attached .config to linux build tree
make ARCH=i386
If you fix the issue, kindly add following tag
Reported-by: kbuild test robot <lkp@intel.com>
All errors (new ones prefixed by >>):
drivers/gpu/drm/i915/i915_gem.c: In function 'i915_gem_init':
>> drivers/gpu/drm/i915/i915_gem.c:1411:3: error: implicit declaration of function 'intel_gt_set_wedged_on_init' [-Werror=implicit-function-declaration]
intel_gt_set_wedged_on_init(&dev_priv->gt);
^
cc1: some warnings being treated as errors
vim +/intel_gt_set_wedged_on_init +1411 drivers/gpu/drm/i915/i915_gem.c
1405
1406 int i915_gem_init(struct drm_i915_private *dev_priv)
1407 {
1408 int ret;
1409
1410 if (!RUNTIME_INFO(dev_priv)->num_engines) {
> 1411 intel_gt_set_wedged_on_init(&dev_priv->gt);
1412 return 0;
1413 }
1414
1415 /* We need to fallback to 4K pages if host doesn't support huge gtt. */
1416 if (intel_vgpu_active(dev_priv) && !intel_vgpu_has_huge_gtt(dev_priv))
1417 mkwrite_device_info(dev_priv)->page_sizes =
1418 I915_GTT_PAGE_SIZE_4K;
1419
1420 intel_timelines_init(dev_priv);
1421
1422 ret = i915_gem_init_userptr(dev_priv);
1423 if (ret)
1424 return ret;
1425
1426 intel_uc_fetch_firmwares(&dev_priv->gt.uc);
1427 intel_wopcm_init(&dev_priv->wopcm);
1428
1429 /* This is just a security blanket to placate dragons.
1430 * On some systems, we very sporadically observe that the first TLBs
1431 * used by the CS may be stale, despite us poking the TLB reset. If
1432 * we hold the forcewake during initialisation these problems
1433 * just magically go away.
1434 */
1435 mutex_lock(&dev_priv->drm.struct_mutex);
1436 intel_uncore_forcewake_get(&dev_priv->uncore, FORCEWAKE_ALL);
1437
1438 ret = i915_init_ggtt(dev_priv);
1439 if (ret) {
1440 GEM_BUG_ON(ret == -EIO);
1441 goto err_unlock;
1442 }
1443
1444 ret = i915_gem_init_scratch(dev_priv,
1445 IS_GEN(dev_priv, 2) ? SZ_256K : PAGE_SIZE);
1446 if (ret) {
1447 GEM_BUG_ON(ret == -EIO);
1448 goto err_ggtt;
1449 }
1450
1451 ret = intel_engines_setup(dev_priv);
1452 if (ret) {
1453 GEM_BUG_ON(ret == -EIO);
1454 goto err_unlock;
1455 }
1456
1457 ret = i915_gem_contexts_init(dev_priv);
1458 if (ret) {
1459 GEM_BUG_ON(ret == -EIO);
1460 goto err_scratch;
1461 }
1462
1463 ret = intel_engines_init(dev_priv);
1464 if (ret) {
1465 GEM_BUG_ON(ret == -EIO);
1466 goto err_context;
1467 }
1468
1469 intel_init_gt_powersave(dev_priv);
1470
1471 intel_uc_init(&dev_priv->gt.uc);
1472
1473 ret = i915_gem_init_hw(dev_priv);
1474 if (ret)
1475 goto err_uc_init;
1476
1477 /* Only when the HW is re-initialised, can we replay the requests */
1478 ret = intel_gt_resume(&dev_priv->gt);
1479 if (ret)
1480 goto err_init_hw;
1481
1482 /*
1483 * Despite its name intel_init_clock_gating applies both display
1484 * clock gating workarounds; GT mmio workarounds and the occasional
1485 * GT power context workaround. Worse, sometimes it includes a context
1486 * register workaround which we need to apply before we record the
1487 * default HW state for all contexts.
1488 *
1489 * FIXME: break up the workarounds and apply them at the right time!
1490 */
1491 intel_init_clock_gating(dev_priv);
1492
1493 ret = intel_engines_verify_workarounds(dev_priv);
1494 if (ret)
1495 goto err_gt;
1496
1497 ret = __intel_engines_record_defaults(dev_priv);
1498 if (ret)
1499 goto err_gt;
1500
1501 ret = i915_inject_load_error(dev_priv, -ENODEV);
1502 if (ret)
1503 goto err_gt;
1504
1505 ret = i915_inject_load_error(dev_priv, -EIO);
1506 if (ret)
1507 goto err_gt;
1508
1509 intel_uncore_forcewake_put(&dev_priv->uncore, FORCEWAKE_ALL);
1510 mutex_unlock(&dev_priv->drm.struct_mutex);
1511
1512 return 0;
1513
1514 /*
1515 * Unwinding is complicated by that we want to handle -EIO to mean
1516 * disable GPU submission but keep KMS alive. We want to mark the
1517 * HW as irrevisibly wedged, but keep enough state around that the
1518 * driver doesn't explode during runtime.
1519 */
1520 err_gt:
1521 mutex_unlock(&dev_priv->drm.struct_mutex);
1522
1523 intel_gt_set_wedged(&dev_priv->gt);
1524 i915_gem_suspend(dev_priv);
1525 i915_gem_suspend_late(dev_priv);
1526
1527 i915_gem_drain_workqueue(dev_priv);
1528
1529 mutex_lock(&dev_priv->drm.struct_mutex);
1530 err_init_hw:
1531 intel_uc_fini_hw(&dev_priv->gt.uc);
1532 err_uc_init:
1533 if (ret != -EIO) {
1534 intel_uc_fini(&dev_priv->gt.uc);
1535 intel_cleanup_gt_powersave(dev_priv);
1536 intel_engines_cleanup(dev_priv);
1537 }
1538 err_context:
1539 if (ret != -EIO)
1540 i915_gem_contexts_fini(dev_priv);
1541 err_scratch:
1542 i915_gem_fini_scratch(dev_priv);
1543 err_ggtt:
1544 err_unlock:
1545 intel_uncore_forcewake_put(&dev_priv->uncore, FORCEWAKE_ALL);
1546 mutex_unlock(&dev_priv->drm.struct_mutex);
1547
1548 if (ret != -EIO) {
1549 intel_uc_cleanup_firmwares(&dev_priv->gt.uc);
1550 i915_gem_cleanup_userptr(dev_priv);
1551 intel_timelines_fini(dev_priv);
1552 }
1553
1554 if (ret == -EIO) {
1555 mutex_lock(&dev_priv->drm.struct_mutex);
1556
1557 /*
1558 * Allow engines or uC initialisation to fail by marking the GPU
1559 * as wedged. But we only want to do this when the GPU is angry,
1560 * for all other failure, such as an allocation failure, bail.
1561 */
1562 if (!intel_gt_is_wedged(&dev_priv->gt)) {
1563 i915_probe_error(dev_priv,
1564 "Failed to initialize GPU, declaring it wedged!\n");
1565 intel_gt_set_wedged(&dev_priv->gt);
1566 }
1567
1568 /* Minimal basic recovery for KMS */
1569 ret = i915_ggtt_enable_hw(dev_priv);
1570 i915_gem_restore_gtt_mappings(dev_priv);
1571 i915_gem_restore_fences(dev_priv);
1572 intel_init_clock_gating(dev_priv);
1573
1574 mutex_unlock(&dev_priv->drm.struct_mutex);
1575 }
1576
1577 i915_gem_drain_freed_objects(dev_priv);
1578 return ret;
1579 }
1580
---
0-DAY kernel test infrastructure Open Source Technology Center
https://lists.01.org/pipermail/kbuild-all Intel Corporation
[-- Attachment #2: .config.gz --]
[-- Type: application/gzip, Size: 35671 bytes --]
[-- Attachment #3: Type: text/plain, Size: 159 bytes --]
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply [flat|nested] 15+ messages in thread* Re: [Intel-gfx] [PATCH 1/2] drm/i915: Use a modparam to restrict exposed engines
@ 2019-10-01 18:21 ` kbuild test robot
0 siblings, 0 replies; 15+ messages in thread
From: kbuild test robot @ 2019-10-01 18:21 UTC (permalink / raw)
To: kbuild-all
[-- Attachment #1: Type: text/plain, Size: 7409 bytes --]
Hi Chris,
Thank you for the patch! Yet something to improve:
[auto build test ERROR on drm-intel/for-linux-next]
[cannot apply to v5.4-rc1 next-20191001]
[if your patch is applied to the wrong git tree, please drop us a note to help
improve the system. BTW, we also suggest to use '--base' option to specify the
base tree in git format-patch, please see https://stackoverflow.com/a/37406982]
url: https://github.com/0day-ci/linux/commits/Chris-Wilson/drm-i915-Use-a-modparam-to-restrict-exposed-engines/20191002-003226
base: git://anongit.freedesktop.org/drm-intel for-linux-next
config: i386-randconfig-a002-201939 (attached as .config)
compiler: gcc-5 (Ubuntu 5.5.0-12ubuntu1) 5.5.0 20171010
reproduce:
# save the attached .config to linux build tree
make ARCH=i386
If you fix the issue, kindly add following tag
Reported-by: kbuild test robot <lkp@intel.com>
All errors (new ones prefixed by >>):
drivers/gpu/drm/i915/i915_gem.c: In function 'i915_gem_init':
>> drivers/gpu/drm/i915/i915_gem.c:1411:3: error: implicit declaration of function 'intel_gt_set_wedged_on_init' [-Werror=implicit-function-declaration]
intel_gt_set_wedged_on_init(&dev_priv->gt);
^
cc1: some warnings being treated as errors
vim +/intel_gt_set_wedged_on_init +1411 drivers/gpu/drm/i915/i915_gem.c
1405
1406 int i915_gem_init(struct drm_i915_private *dev_priv)
1407 {
1408 int ret;
1409
1410 if (!RUNTIME_INFO(dev_priv)->num_engines) {
> 1411 intel_gt_set_wedged_on_init(&dev_priv->gt);
1412 return 0;
1413 }
1414
1415 /* We need to fallback to 4K pages if host doesn't support huge gtt. */
1416 if (intel_vgpu_active(dev_priv) && !intel_vgpu_has_huge_gtt(dev_priv))
1417 mkwrite_device_info(dev_priv)->page_sizes =
1418 I915_GTT_PAGE_SIZE_4K;
1419
1420 intel_timelines_init(dev_priv);
1421
1422 ret = i915_gem_init_userptr(dev_priv);
1423 if (ret)
1424 return ret;
1425
1426 intel_uc_fetch_firmwares(&dev_priv->gt.uc);
1427 intel_wopcm_init(&dev_priv->wopcm);
1428
1429 /* This is just a security blanket to placate dragons.
1430 * On some systems, we very sporadically observe that the first TLBs
1431 * used by the CS may be stale, despite us poking the TLB reset. If
1432 * we hold the forcewake during initialisation these problems
1433 * just magically go away.
1434 */
1435 mutex_lock(&dev_priv->drm.struct_mutex);
1436 intel_uncore_forcewake_get(&dev_priv->uncore, FORCEWAKE_ALL);
1437
1438 ret = i915_init_ggtt(dev_priv);
1439 if (ret) {
1440 GEM_BUG_ON(ret == -EIO);
1441 goto err_unlock;
1442 }
1443
1444 ret = i915_gem_init_scratch(dev_priv,
1445 IS_GEN(dev_priv, 2) ? SZ_256K : PAGE_SIZE);
1446 if (ret) {
1447 GEM_BUG_ON(ret == -EIO);
1448 goto err_ggtt;
1449 }
1450
1451 ret = intel_engines_setup(dev_priv);
1452 if (ret) {
1453 GEM_BUG_ON(ret == -EIO);
1454 goto err_unlock;
1455 }
1456
1457 ret = i915_gem_contexts_init(dev_priv);
1458 if (ret) {
1459 GEM_BUG_ON(ret == -EIO);
1460 goto err_scratch;
1461 }
1462
1463 ret = intel_engines_init(dev_priv);
1464 if (ret) {
1465 GEM_BUG_ON(ret == -EIO);
1466 goto err_context;
1467 }
1468
1469 intel_init_gt_powersave(dev_priv);
1470
1471 intel_uc_init(&dev_priv->gt.uc);
1472
1473 ret = i915_gem_init_hw(dev_priv);
1474 if (ret)
1475 goto err_uc_init;
1476
1477 /* Only when the HW is re-initialised, can we replay the requests */
1478 ret = intel_gt_resume(&dev_priv->gt);
1479 if (ret)
1480 goto err_init_hw;
1481
1482 /*
1483 * Despite its name intel_init_clock_gating applies both display
1484 * clock gating workarounds; GT mmio workarounds and the occasional
1485 * GT power context workaround. Worse, sometimes it includes a context
1486 * register workaround which we need to apply before we record the
1487 * default HW state for all contexts.
1488 *
1489 * FIXME: break up the workarounds and apply them at the right time!
1490 */
1491 intel_init_clock_gating(dev_priv);
1492
1493 ret = intel_engines_verify_workarounds(dev_priv);
1494 if (ret)
1495 goto err_gt;
1496
1497 ret = __intel_engines_record_defaults(dev_priv);
1498 if (ret)
1499 goto err_gt;
1500
1501 ret = i915_inject_load_error(dev_priv, -ENODEV);
1502 if (ret)
1503 goto err_gt;
1504
1505 ret = i915_inject_load_error(dev_priv, -EIO);
1506 if (ret)
1507 goto err_gt;
1508
1509 intel_uncore_forcewake_put(&dev_priv->uncore, FORCEWAKE_ALL);
1510 mutex_unlock(&dev_priv->drm.struct_mutex);
1511
1512 return 0;
1513
1514 /*
1515 * Unwinding is complicated by that we want to handle -EIO to mean
1516 * disable GPU submission but keep KMS alive. We want to mark the
1517 * HW as irrevisibly wedged, but keep enough state around that the
1518 * driver doesn't explode during runtime.
1519 */
1520 err_gt:
1521 mutex_unlock(&dev_priv->drm.struct_mutex);
1522
1523 intel_gt_set_wedged(&dev_priv->gt);
1524 i915_gem_suspend(dev_priv);
1525 i915_gem_suspend_late(dev_priv);
1526
1527 i915_gem_drain_workqueue(dev_priv);
1528
1529 mutex_lock(&dev_priv->drm.struct_mutex);
1530 err_init_hw:
1531 intel_uc_fini_hw(&dev_priv->gt.uc);
1532 err_uc_init:
1533 if (ret != -EIO) {
1534 intel_uc_fini(&dev_priv->gt.uc);
1535 intel_cleanup_gt_powersave(dev_priv);
1536 intel_engines_cleanup(dev_priv);
1537 }
1538 err_context:
1539 if (ret != -EIO)
1540 i915_gem_contexts_fini(dev_priv);
1541 err_scratch:
1542 i915_gem_fini_scratch(dev_priv);
1543 err_ggtt:
1544 err_unlock:
1545 intel_uncore_forcewake_put(&dev_priv->uncore, FORCEWAKE_ALL);
1546 mutex_unlock(&dev_priv->drm.struct_mutex);
1547
1548 if (ret != -EIO) {
1549 intel_uc_cleanup_firmwares(&dev_priv->gt.uc);
1550 i915_gem_cleanup_userptr(dev_priv);
1551 intel_timelines_fini(dev_priv);
1552 }
1553
1554 if (ret == -EIO) {
1555 mutex_lock(&dev_priv->drm.struct_mutex);
1556
1557 /*
1558 * Allow engines or uC initialisation to fail by marking the GPU
1559 * as wedged. But we only want to do this when the GPU is angry,
1560 * for all other failure, such as an allocation failure, bail.
1561 */
1562 if (!intel_gt_is_wedged(&dev_priv->gt)) {
1563 i915_probe_error(dev_priv,
1564 "Failed to initialize GPU, declaring it wedged!\n");
1565 intel_gt_set_wedged(&dev_priv->gt);
1566 }
1567
1568 /* Minimal basic recovery for KMS */
1569 ret = i915_ggtt_enable_hw(dev_priv);
1570 i915_gem_restore_gtt_mappings(dev_priv);
1571 i915_gem_restore_fences(dev_priv);
1572 intel_init_clock_gating(dev_priv);
1573
1574 mutex_unlock(&dev_priv->drm.struct_mutex);
1575 }
1576
1577 i915_gem_drain_freed_objects(dev_priv);
1578 return ret;
1579 }
1580
---
0-DAY kernel test infrastructure Open Source Technology Center
https://lists.01.org/pipermail/kbuild-all Intel Corporation
[-- Attachment #2: config.gz --]
[-- Type: application/gzip, Size: 35671 bytes --]
^ permalink raw reply [flat|nested] 15+ messages in thread
* ✗ Fi.CI.CHECKPATCH: warning for series starting with [1/2] drm/i915: Use a modparam to restrict exposed engines (rev2)
2019-10-01 13:54 [PATCH 1/2] drm/i915: Use a modparam to restrict exposed engines Chris Wilson
` (4 preceding siblings ...)
2019-10-01 18:21 ` [Intel-gfx] " kbuild test robot
@ 2019-10-01 21:54 ` Patchwork
2019-10-01 22:20 ` ✓ Fi.CI.BAT: success " Patchwork
` (3 subsequent siblings)
9 siblings, 0 replies; 15+ messages in thread
From: Patchwork @ 2019-10-01 21:54 UTC (permalink / raw)
To: Chris Wilson; +Cc: intel-gfx
== Series Details ==
Series: series starting with [1/2] drm/i915: Use a modparam to restrict exposed engines (rev2)
URL : https://patchwork.freedesktop.org/series/67450/
State : warning
== Summary ==
$ dim checkpatch origin/drm-tip
c8be7f867553 drm/i915: Use a modparam to restrict exposed engines
-:109: CHECK:PARENTHESIS_ALIGNMENT: Alignment should match open parenthesis
#109: FILE: drivers/gpu/drm/i915/i915_params.c:48:
+i915_param_named(engines, uint, 0400,
+ "Only expose selected command streamers [GPU engines] (0=disable GPU, "
total: 0 errors, 0 warnings, 1 checks, 87 lines checked
971c66ff56ce drm/i915/tgl: Restrict availables engines to rcs0 by default
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply [flat|nested] 15+ messages in thread* ✓ Fi.CI.BAT: success for series starting with [1/2] drm/i915: Use a modparam to restrict exposed engines (rev2)
2019-10-01 13:54 [PATCH 1/2] drm/i915: Use a modparam to restrict exposed engines Chris Wilson
` (5 preceding siblings ...)
2019-10-01 21:54 ` ✗ Fi.CI.CHECKPATCH: warning for series starting with [1/2] drm/i915: Use a modparam to restrict exposed engines (rev2) Patchwork
@ 2019-10-01 22:20 ` Patchwork
2019-10-02 8:38 ` ✗ Fi.CI.IGT: failure " Patchwork
` (2 subsequent siblings)
9 siblings, 0 replies; 15+ messages in thread
From: Patchwork @ 2019-10-01 22:20 UTC (permalink / raw)
To: Chris Wilson; +Cc: intel-gfx
== Series Details ==
Series: series starting with [1/2] drm/i915: Use a modparam to restrict exposed engines (rev2)
URL : https://patchwork.freedesktop.org/series/67450/
State : success
== Summary ==
CI Bug Log - changes from CI_DRM_6986 -> Patchwork_14618
====================================================
Summary
-------
**SUCCESS**
No regressions found.
External URL: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_14618/index.html
Possible new issues
-------------------
Here are the unknown changes that may have been introduced in Patchwork_14618:
### IGT changes ###
#### Suppressed ####
The following results come from untrusted machines, tests, or statuses.
They do not affect the overall result.
* igt@gem_sync@basic-many-each:
- {fi-cml-h}: [PASS][1] -> [TIMEOUT][2]
[1]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6986/fi-cml-h/igt@gem_sync@basic-many-each.html
[2]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_14618/fi-cml-h/igt@gem_sync@basic-many-each.html
* igt@runner@aborted:
- {fi-cml-h}: NOTRUN -> [FAIL][3]
[3]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_14618/fi-cml-h/igt@runner@aborted.html
Known issues
------------
Here are the changes found in Patchwork_14618 that come from known issues:
### IGT changes ###
#### Issues hit ####
* igt@gem_ctx_switch@rcs0:
- fi-bxt-dsi: [PASS][4] -> [INCOMPLETE][5] ([fdo#103927])
[4]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6986/fi-bxt-dsi/igt@gem_ctx_switch@rcs0.html
[5]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_14618/fi-bxt-dsi/igt@gem_ctx_switch@rcs0.html
* igt@gem_mmap_gtt@basic-read:
- fi-icl-u3: [PASS][6] -> [DMESG-WARN][7] ([fdo#107724]) +1 similar issue
[6]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6986/fi-icl-u3/igt@gem_mmap_gtt@basic-read.html
[7]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_14618/fi-icl-u3/igt@gem_mmap_gtt@basic-read.html
#### Possible fixes ####
* igt@gem_linear_blits@basic:
- fi-icl-u3: [DMESG-WARN][8] ([fdo#107724]) -> [PASS][9]
[8]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6986/fi-icl-u3/igt@gem_linear_blits@basic.html
[9]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_14618/fi-icl-u3/igt@gem_linear_blits@basic.html
* igt@i915_module_load@reload:
- fi-icl-u3: [DMESG-WARN][10] ([fdo#107724] / [fdo#111214]) -> [PASS][11]
[10]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6986/fi-icl-u3/igt@i915_module_load@reload.html
[11]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_14618/fi-icl-u3/igt@i915_module_load@reload.html
{name}: This element is suppressed. This means it is ignored when computing
the status of the difference (SUCCESS, WARNING, or FAILURE).
[fdo#103927]: https://bugs.freedesktop.org/show_bug.cgi?id=103927
[fdo#107724]: https://bugs.freedesktop.org/show_bug.cgi?id=107724
[fdo#111214]: https://bugs.freedesktop.org/show_bug.cgi?id=111214
[fdo#111604]: https://bugs.freedesktop.org/show_bug.cgi?id=111604
[fdo#111714]: https://bugs.freedesktop.org/show_bug.cgi?id=111714
Participating hosts (54 -> 47)
------------------------------
Missing (7): fi-ilk-m540 fi-hsw-4200u fi-byt-squawks fi-bsw-cyan fi-icl-y fi-byt-clapper fi-bdw-samus
Build changes
-------------
* CI: CI-20190529 -> None
* Linux: CI_DRM_6986 -> Patchwork_14618
CI-20190529: 20190529
CI_DRM_6986: 9300459553e8c1032f10ec1953e1a375a99aba13 @ git://anongit.freedesktop.org/gfx-ci/linux
IGT_5208: c0131b4f132acf287d9d05b0f5078003d3159e1c @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools
Patchwork_14618: 971c66ff56ceb82389ee13876716ab9e41cd7252 @ git://anongit.freedesktop.org/gfx-ci/linux
== Linux commits ==
971c66ff56ce drm/i915/tgl: Restrict availables engines to rcs0 by default
c8be7f867553 drm/i915: Use a modparam to restrict exposed engines
== Logs ==
For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_14618/index.html
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply [flat|nested] 15+ messages in thread* ✗ Fi.CI.IGT: failure for series starting with [1/2] drm/i915: Use a modparam to restrict exposed engines (rev2)
2019-10-01 13:54 [PATCH 1/2] drm/i915: Use a modparam to restrict exposed engines Chris Wilson
` (6 preceding siblings ...)
2019-10-01 22:20 ` ✓ Fi.CI.BAT: success " Patchwork
@ 2019-10-02 8:38 ` Patchwork
2019-10-05 10:10 ` [PATCH 1/2] drm/i915: Use a modparam to restrict exposed engines Andi Shyti
2019-10-08 15:21 ` Summers, Stuart
9 siblings, 0 replies; 15+ messages in thread
From: Patchwork @ 2019-10-02 8:38 UTC (permalink / raw)
To: Chris Wilson; +Cc: intel-gfx
== Series Details ==
Series: series starting with [1/2] drm/i915: Use a modparam to restrict exposed engines (rev2)
URL : https://patchwork.freedesktop.org/series/67450/
State : failure
== Summary ==
CI Bug Log - changes from CI_DRM_6986_full -> Patchwork_14618_full
====================================================
Summary
-------
**FAILURE**
Serious unknown changes coming with Patchwork_14618_full absolutely need to be
verified manually.
If you think the reported changes have nothing to do with the changes
introduced in Patchwork_14618_full, please notify your bug team to allow them
to document this new failure mode, which will reduce false positives in CI.
Possible new issues
-------------------
Here are the unknown changes that may have been introduced in Patchwork_14618_full:
### IGT changes ###
#### Possible regressions ####
* igt@syncobj_wait@wait-any-complex:
- shard-kbl: [PASS][1] -> [TIMEOUT][2]
[1]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6986/shard-kbl3/igt@syncobj_wait@wait-any-complex.html
[2]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_14618/shard-kbl7/igt@syncobj_wait@wait-any-complex.html
Known issues
------------
Here are the changes found in Patchwork_14618_full that come from known issues:
### IGT changes ###
#### Issues hit ####
* igt@drm_read@short-buffer-wakeup:
- shard-apl: [PASS][3] -> [INCOMPLETE][4] ([fdo#103927])
[3]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6986/shard-apl4/igt@drm_read@short-buffer-wakeup.html
[4]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_14618/shard-apl4/igt@drm_read@short-buffer-wakeup.html
* igt@gem_ctx_shared@exec-single-timeline-bsd:
- shard-iclb: [PASS][5] -> [SKIP][6] ([fdo#110841])
[5]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6986/shard-iclb5/igt@gem_ctx_shared@exec-single-timeline-bsd.html
[6]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_14618/shard-iclb4/igt@gem_ctx_shared@exec-single-timeline-bsd.html
* igt@gem_exec_balancer@smoke:
- shard-iclb: [PASS][7] -> [SKIP][8] ([fdo#110854])
[7]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6986/shard-iclb4/igt@gem_exec_balancer@smoke.html
[8]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_14618/shard-iclb7/igt@gem_exec_balancer@smoke.html
* igt@gem_exec_schedule@in-order-bsd:
- shard-iclb: [PASS][9] -> [SKIP][10] ([fdo#111325]) +9 similar issues
[9]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6986/shard-iclb6/igt@gem_exec_schedule@in-order-bsd.html
[10]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_14618/shard-iclb2/igt@gem_exec_schedule@in-order-bsd.html
* igt@gem_persistent_relocs@forked-interruptible-faulting-reloc-thrash-inactive:
- shard-snb: [PASS][11] -> [DMESG-WARN][12] ([fdo#110789])
[11]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6986/shard-snb6/igt@gem_persistent_relocs@forked-interruptible-faulting-reloc-thrash-inactive.html
[12]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_14618/shard-snb1/igt@gem_persistent_relocs@forked-interruptible-faulting-reloc-thrash-inactive.html
* igt@gem_userptr_blits@map-fixed-invalidate-busy-gup:
- shard-apl: [PASS][13] -> [DMESG-WARN][14] ([fdo#109385] / [fdo#111870]) +1 similar issue
[13]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6986/shard-apl6/igt@gem_userptr_blits@map-fixed-invalidate-busy-gup.html
[14]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_14618/shard-apl7/igt@gem_userptr_blits@map-fixed-invalidate-busy-gup.html
* igt@gem_userptr_blits@sync-unmap:
- shard-glk: [PASS][15] -> [DMESG-WARN][16] ([fdo#111870])
[15]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6986/shard-glk2/igt@gem_userptr_blits@sync-unmap.html
[16]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_14618/shard-glk9/igt@gem_userptr_blits@sync-unmap.html
* igt@gem_userptr_blits@sync-unmap-after-close:
- shard-snb: [PASS][17] -> [DMESG-WARN][18] ([fdo#111870])
[17]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6986/shard-snb1/igt@gem_userptr_blits@sync-unmap-after-close.html
[18]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_14618/shard-snb6/igt@gem_userptr_blits@sync-unmap-after-close.html
* igt@i915_suspend@fence-restore-untiled:
- shard-skl: [PASS][19] -> [INCOMPLETE][20] ([fdo#104108])
[19]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6986/shard-skl1/igt@i915_suspend@fence-restore-untiled.html
[20]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_14618/shard-skl2/igt@i915_suspend@fence-restore-untiled.html
* igt@kms_cursor_crc@pipe-b-cursor-suspend:
- shard-apl: [PASS][21] -> [DMESG-WARN][22] ([fdo#108566]) +5 similar issues
[21]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6986/shard-apl4/igt@kms_cursor_crc@pipe-b-cursor-suspend.html
[22]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_14618/shard-apl6/igt@kms_cursor_crc@pipe-b-cursor-suspend.html
* igt@kms_flip@flip-vs-suspend-interruptible:
- shard-kbl: [PASS][23] -> [INCOMPLETE][24] ([fdo#103665]) +1 similar issue
[23]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6986/shard-kbl7/igt@kms_flip@flip-vs-suspend-interruptible.html
[24]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_14618/shard-kbl3/igt@kms_flip@flip-vs-suspend-interruptible.html
* igt@kms_frontbuffer_tracking@fbcpsr-1p-primscrn-spr-indfb-draw-render:
- shard-iclb: [PASS][25] -> [FAIL][26] ([fdo#103167])
[25]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6986/shard-iclb5/igt@kms_frontbuffer_tracking@fbcpsr-1p-primscrn-spr-indfb-draw-render.html
[26]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_14618/shard-iclb7/igt@kms_frontbuffer_tracking@fbcpsr-1p-primscrn-spr-indfb-draw-render.html
* igt@kms_plane@plane-panning-bottom-right-pipe-a-planes:
- shard-skl: [PASS][27] -> [FAIL][28] ([fdo#103166])
[27]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6986/shard-skl5/igt@kms_plane@plane-panning-bottom-right-pipe-a-planes.html
[28]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_14618/shard-skl4/igt@kms_plane@plane-panning-bottom-right-pipe-a-planes.html
* igt@kms_plane_lowres@pipe-a-tiling-y:
- shard-iclb: [PASS][29] -> [FAIL][30] ([fdo#103166])
[29]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6986/shard-iclb6/igt@kms_plane_lowres@pipe-a-tiling-y.html
[30]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_14618/shard-iclb1/igt@kms_plane_lowres@pipe-a-tiling-y.html
* igt@kms_psr@psr2_cursor_plane_onoff:
- shard-iclb: [PASS][31] -> [SKIP][32] ([fdo#109441]) +1 similar issue
[31]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6986/shard-iclb2/igt@kms_psr@psr2_cursor_plane_onoff.html
[32]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_14618/shard-iclb3/igt@kms_psr@psr2_cursor_plane_onoff.html
* igt@kms_setmode@basic:
- shard-apl: [PASS][33] -> [FAIL][34] ([fdo#99912])
[33]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6986/shard-apl6/igt@kms_setmode@basic.html
[34]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_14618/shard-apl7/igt@kms_setmode@basic.html
* igt@perf_pmu@cpu-hotplug:
- shard-kbl: [PASS][35] -> [TIMEOUT][36] ([fdo#111546] / [fdo#111800])
[35]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6986/shard-kbl3/igt@perf_pmu@cpu-hotplug.html
[36]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_14618/shard-kbl7/igt@perf_pmu@cpu-hotplug.html
* igt@prime_vgem@fence-wait-bsd2:
- shard-iclb: [PASS][37] -> [SKIP][38] ([fdo#109276]) +7 similar issues
[37]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6986/shard-iclb2/igt@prime_vgem@fence-wait-bsd2.html
[38]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_14618/shard-iclb3/igt@prime_vgem@fence-wait-bsd2.html
#### Possible fixes ####
* igt@gem_exec_schedule@out-order-bsd2:
- shard-iclb: [SKIP][39] ([fdo#109276]) -> [PASS][40] +23 similar issues
[39]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6986/shard-iclb8/igt@gem_exec_schedule@out-order-bsd2.html
[40]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_14618/shard-iclb4/igt@gem_exec_schedule@out-order-bsd2.html
* igt@gem_exec_schedule@preempt-other-chain-bsd:
- shard-iclb: [SKIP][41] ([fdo#111325]) -> [PASS][42] +4 similar issues
[41]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6986/shard-iclb1/igt@gem_exec_schedule@preempt-other-chain-bsd.html
[42]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_14618/shard-iclb8/igt@gem_exec_schedule@preempt-other-chain-bsd.html
* igt@gem_request_retire@retire-vma-not-inactive:
- shard-hsw: [INCOMPLETE][43] ([fdo#103540]) -> [PASS][44]
[43]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6986/shard-hsw4/igt@gem_request_retire@retire-vma-not-inactive.html
[44]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_14618/shard-hsw5/igt@gem_request_retire@retire-vma-not-inactive.html
* igt@gem_softpin@noreloc-s3:
- shard-skl: [INCOMPLETE][45] ([fdo#104108] / [fdo#107773]) -> [PASS][46]
[45]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6986/shard-skl6/igt@gem_softpin@noreloc-s3.html
[46]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_14618/shard-skl6/igt@gem_softpin@noreloc-s3.html
* igt@gem_userptr_blits@dmabuf-unsync:
- shard-skl: [DMESG-WARN][47] ([fdo#111870]) -> [PASS][48] +1 similar issue
[47]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6986/shard-skl4/igt@gem_userptr_blits@dmabuf-unsync.html
[48]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_14618/shard-skl1/igt@gem_userptr_blits@dmabuf-unsync.html
- shard-kbl: [DMESG-WARN][49] ([fdo#111870]) -> [PASS][50]
[49]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6986/shard-kbl3/igt@gem_userptr_blits@dmabuf-unsync.html
[50]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_14618/shard-kbl4/igt@gem_userptr_blits@dmabuf-unsync.html
* igt@gem_userptr_blits@map-fixed-invalidate-overlap-busy:
- shard-snb: [DMESG-WARN][51] ([fdo#110789] / [fdo#111870]) -> [PASS][52]
[51]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6986/shard-snb7/igt@gem_userptr_blits@map-fixed-invalidate-overlap-busy.html
[52]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_14618/shard-snb4/igt@gem_userptr_blits@map-fixed-invalidate-overlap-busy.html
- shard-glk: [DMESG-WARN][53] ([fdo#111870]) -> [PASS][54]
[53]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6986/shard-glk5/igt@gem_userptr_blits@map-fixed-invalidate-overlap-busy.html
[54]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_14618/shard-glk7/igt@gem_userptr_blits@map-fixed-invalidate-overlap-busy.html
* igt@gem_userptr_blits@map-fixed-invalidate-overlap-busy-gup:
- shard-apl: [DMESG-WARN][55] ([fdo#109385] / [fdo#111870]) -> [PASS][56] +1 similar issue
[55]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6986/shard-apl6/igt@gem_userptr_blits@map-fixed-invalidate-overlap-busy-gup.html
[56]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_14618/shard-apl7/igt@gem_userptr_blits@map-fixed-invalidate-overlap-busy-gup.html
* igt@gem_userptr_blits@sync-unmap:
- shard-hsw: [DMESG-WARN][57] ([fdo#111870]) -> [PASS][58]
[57]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6986/shard-hsw1/igt@gem_userptr_blits@sync-unmap.html
[58]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_14618/shard-hsw1/igt@gem_userptr_blits@sync-unmap.html
* igt@gem_userptr_blits@sync-unmap-cycles:
- shard-snb: [DMESG-WARN][59] ([fdo#111870]) -> [PASS][60]
[59]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6986/shard-snb1/igt@gem_userptr_blits@sync-unmap-cycles.html
[60]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_14618/shard-snb1/igt@gem_userptr_blits@sync-unmap-cycles.html
* igt@i915_suspend@fence-restore-tiled2untiled:
- shard-apl: [DMESG-WARN][61] ([fdo#108566]) -> [PASS][62] +3 similar issues
[61]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6986/shard-apl4/igt@i915_suspend@fence-restore-tiled2untiled.html
[62]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_14618/shard-apl3/igt@i915_suspend@fence-restore-tiled2untiled.html
* igt@kms_flip@2x-dpms-vs-vblank-race-interruptible:
- shard-hsw: [DMESG-FAIL][63] ([fdo#102614]) -> [PASS][64]
[63]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6986/shard-hsw5/igt@kms_flip@2x-dpms-vs-vblank-race-interruptible.html
[64]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_14618/shard-hsw6/igt@kms_flip@2x-dpms-vs-vblank-race-interruptible.html
* igt@kms_flip@flip-vs-expired-vblank:
- shard-skl: [FAIL][65] ([fdo#105363]) -> [PASS][66]
[65]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6986/shard-skl7/igt@kms_flip@flip-vs-expired-vblank.html
[66]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_14618/shard-skl9/igt@kms_flip@flip-vs-expired-vblank.html
* igt@kms_flip@plain-flip-fb-recreate:
- shard-skl: [FAIL][67] ([fdo#100368]) -> [PASS][68]
[67]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6986/shard-skl2/igt@kms_flip@plain-flip-fb-recreate.html
[68]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_14618/shard-skl5/igt@kms_flip@plain-flip-fb-recreate.html
* igt@kms_frontbuffer_tracking@fbc-1p-pri-indfb-multidraw:
- shard-iclb: [FAIL][69] ([fdo#103167]) -> [PASS][70] +7 similar issues
[69]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6986/shard-iclb4/igt@kms_frontbuffer_tracking@fbc-1p-pri-indfb-multidraw.html
[70]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_14618/shard-iclb5/igt@kms_frontbuffer_tracking@fbc-1p-pri-indfb-multidraw.html
* igt@kms_frontbuffer_tracking@psr-1p-offscren-pri-shrfb-draw-mmap-gtt:
- shard-skl: [FAIL][71] ([fdo#103167]) -> [PASS][72]
[71]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6986/shard-skl8/igt@kms_frontbuffer_tracking@psr-1p-offscren-pri-shrfb-draw-mmap-gtt.html
[72]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_14618/shard-skl10/igt@kms_frontbuffer_tracking@psr-1p-offscren-pri-shrfb-draw-mmap-gtt.html
* igt@kms_plane_alpha_blend@pipe-a-constant-alpha-min:
- shard-skl: [FAIL][73] ([fdo#108145]) -> [PASS][74]
[73]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6986/shard-skl8/igt@kms_plane_alpha_blend@pipe-a-constant-alpha-min.html
[74]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_14618/shard-skl10/igt@kms_plane_alpha_blend@pipe-a-constant-alpha-min.html
* igt@kms_plane_alpha_blend@pipe-c-coverage-7efc:
- shard-skl: [FAIL][75] ([fdo#108145] / [fdo#110403]) -> [PASS][76]
[75]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6986/shard-skl6/igt@kms_plane_alpha_blend@pipe-c-coverage-7efc.html
[76]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_14618/shard-skl9/igt@kms_plane_alpha_blend@pipe-c-coverage-7efc.html
* igt@kms_psr@psr2_cursor_blt:
- shard-iclb: [SKIP][77] ([fdo#109441]) -> [PASS][78] +1 similar issue
[77]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6986/shard-iclb6/igt@kms_psr@psr2_cursor_blt.html
[78]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_14618/shard-iclb2/igt@kms_psr@psr2_cursor_blt.html
* igt@kms_setmode@basic:
- shard-glk: [FAIL][79] ([fdo#99912]) -> [PASS][80]
[79]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6986/shard-glk3/igt@kms_setmode@basic.html
[80]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_14618/shard-glk3/igt@kms_setmode@basic.html
- shard-kbl: [FAIL][81] ([fdo#99912]) -> [PASS][82]
[81]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6986/shard-kbl6/igt@kms_setmode@basic.html
[82]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_14618/shard-kbl4/igt@kms_setmode@basic.html
* igt@kms_vblank@pipe-a-ts-continuation-suspend:
- shard-kbl: [INCOMPLETE][83] ([fdo#103665]) -> [PASS][84] +1 similar issue
[83]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6986/shard-kbl4/igt@kms_vblank@pipe-a-ts-continuation-suspend.html
[84]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_14618/shard-kbl6/igt@kms_vblank@pipe-a-ts-continuation-suspend.html
#### Warnings ####
* igt@gem_mocs_settings@mocs-isolation-bsd2:
- shard-iclb: [SKIP][85] ([fdo#109276]) -> [FAIL][86] ([fdo#111330])
[85]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6986/shard-iclb7/igt@gem_mocs_settings@mocs-isolation-bsd2.html
[86]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_14618/shard-iclb1/igt@gem_mocs_settings@mocs-isolation-bsd2.html
* igt@gem_mocs_settings@mocs-reset-bsd2:
- shard-iclb: [FAIL][87] ([fdo#111330]) -> [SKIP][88] ([fdo#109276]) +1 similar issue
[87]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6986/shard-iclb4/igt@gem_mocs_settings@mocs-reset-bsd2.html
[88]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_14618/shard-iclb5/igt@gem_mocs_settings@mocs-reset-bsd2.html
* igt@kms_flip@2x-flip-vs-panning-interruptible:
- shard-kbl: [SKIP][89] ([fdo#109271]) -> [INCOMPLETE][90] ([fdo#103665])
[89]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6986/shard-kbl3/igt@kms_flip@2x-flip-vs-panning-interruptible.html
[90]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_14618/shard-kbl7/igt@kms_flip@2x-flip-vs-panning-interruptible.html
{name}: This element is suppressed. This means it is ignored when computing
the status of the difference (SUCCESS, WARNING, or FAILURE).
[fdo#100368]: https://bugs.freedesktop.org/show_bug.cgi?id=100368
[fdo#102614]: https://bugs.freedesktop.org/show_bug.cgi?id=102614
[fdo#103166]: https://bugs.freedesktop.org/show_bug.cgi?id=103166
[fdo#103167]: https://bugs.freedesktop.org/show_bug.cgi?id=103167
[fdo#103540]: https://bugs.freedesktop.org/show_bug.cgi?id=103540
[fdo#103665]: https://bugs.freedesktop.org/show_bug.cgi?id=103665
[fdo#103927]: https://bugs.freedesktop.org/show_bug.cgi?id=103927
[fdo#104108]: https://bugs.freedesktop.org/show_bug.cgi?id=104108
[fdo#105363]: https://bugs.freedesktop.org/show_bug.cgi?id=105363
[fdo#107773]: https://bugs.freedesktop.org/show_bug.cgi?id=107773
[fdo#108145]: https://bugs.freedesktop.org/show_bug.cgi?id=108145
[fdo#108566]: https://bugs.freedesktop.org/show_bug.cgi?id=108566
[fdo#109271]: https://bugs.freedesktop.org/show_bug.cgi?id=109271
[fdo#109276]: https://bugs.freedesktop.org/show_bug.cgi?id=109276
[fdo#109385]: https://bugs.freedesktop.org/show_bug.cgi?id=109385
[fdo#109441]: https://bugs.freedesktop.org/show_bug.cgi?id=109441
[fdo#110403]: https://bugs.freedesktop.org/show_bug.cgi?id=110403
[fdo#110789]: https://bugs.freedesktop.org/show_bug.cgi?id=110789
[fdo#110841]: https://bugs.freedesktop.org/show_bug.cgi?id=110841
[fdo#110854]: https://bugs.freedesktop.org/show_bug.cgi?id=110854
[fdo#111325]: https://bugs.freedesktop.org/show_bug.cgi?id=111325
[fdo#111330]: https://bugs.freedesktop.org/show_bug.cgi?id=111330
[fdo#111546]: https://bugs.freedesktop.org/show_bug.cgi?id=111546
[fdo#111781]: https://bugs.freedesktop.org/show_bug.cgi?id=111781
[fdo#111800]: https://bugs.freedesktop.org/show_bug.cgi?id=111800
[fdo#111870]: https://bugs.freedesktop.org/show_bug.cgi?id=111870
[fdo#99912]: https://bugs.freedesktop.org/show_bug.cgi?id=99912
Participating hosts (16 -> 10)
------------------------------
Missing (6): shard-tglb1 shard-tglb2 shard-tglb3 shard-tglb4 shard-tglb5 shard-tglb6
Build changes
-------------
* CI: CI-20190529 -> None
* Linux: CI_DRM_6986 -> Patchwork_14618
CI-20190529: 20190529
CI_DRM_6986: 9300459553e8c1032f10ec1953e1a375a99aba13 @ git://anongit.freedesktop.org/gfx-ci/linux
IGT_5208: c0131b4f132acf287d9d05b0f5078003d3159e1c @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools
Patchwork_14618: 971c66ff56ceb82389ee13876716ab9e41cd7252 @ git://anongit.freedesktop.org/gfx-ci/linux
piglit_4509: fdc5a4ca11124ab841
== Logs ==
For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_14618/
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply [flat|nested] 15+ messages in thread* Re: [PATCH 1/2] drm/i915: Use a modparam to restrict exposed engines
2019-10-01 13:54 [PATCH 1/2] drm/i915: Use a modparam to restrict exposed engines Chris Wilson
` (7 preceding siblings ...)
2019-10-02 8:38 ` ✗ Fi.CI.IGT: failure " Patchwork
@ 2019-10-05 10:10 ` Andi Shyti
2019-10-05 10:20 ` Chris Wilson
2019-10-08 15:21 ` Summers, Stuart
9 siblings, 1 reply; 15+ messages in thread
From: Andi Shyti @ 2019-10-05 10:10 UTC (permalink / raw)
To: Chris Wilson; +Cc: intel-gfx
Hi Chris,
On Tue, Oct 01, 2019 at 02:54:02PM +0100, Chris Wilson wrote:
> Allow the user to restrict the available set of engines via a module
> parameter.
what is the driving reason for wanting this? Could you explain it
in the commit log?
It feels a bit confusing, though. You are actually making a
difference between engines we don't have and engines we don't
want, and I don't see why.
Wouldn't it make sense to either
- define a new architecture (which could make things more
confusing).
or
- have it specified in kernel configuration
> Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
> Cc: Stuart Summers <stuart.summers@intel.com>
> Cc: Andi Shyti <andi.shyti@intel.com>
> Cc: Mika Kuoppala <mika.kuoppala@linux.intel.com>
> Cc: Tvrtko Ursulin <tvrtko.ursulin@intel.com>
> Cc: Joonas Lahtinen <joonas.lahtinen@linux.intel.com>
> Cc: Martin Peres <martin.peres@linux.intel.com>
> ---
> drivers/gpu/drm/i915/gt/intel_engine_cs.c | 35 ++++++++++++++++-------
> drivers/gpu/drm/i915/i915_gem.c | 5 ++++
> drivers/gpu/drm/i915/i915_params.c | 4 +++
> drivers/gpu/drm/i915/i915_params.h | 1 +
> 4 files changed, 35 insertions(+), 10 deletions(-)
Because this is a module option that is set by the user, I don't
see any documentation about it.
> +static bool engine_available(struct drm_i915_private *i915, int id)
> +{
> + /* uAPI -- modparam bits must be consistent between kernels */
> + static const unsigned int param_bit[] = {
> + [RCS0] = BIT(0),
> + [VCS0] = BIT(1),
> + [BCS0] = BIT(2),
> + [VECS0] = BIT(3),
> + [VCS1] = BIT(4),
> + [VCS2] = BIT(5),
> + [VCS3] = BIT(6),
> + [VECS1] = BIT(7),
> + };
Yet another way to refer to engines... this time inside a static
function, without any visibility outside.
Andi
> +
> + if (!HAS_ENGINE(i915, id))
> + return false;
(engines we don't have...
> + if (!(i915_modparams.engines & param_bit[id]))
> + return false;
... engines we don't want)
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply [flat|nested] 15+ messages in thread* Re: [PATCH 1/2] drm/i915: Use a modparam to restrict exposed engines
2019-10-05 10:10 ` [PATCH 1/2] drm/i915: Use a modparam to restrict exposed engines Andi Shyti
@ 2019-10-05 10:20 ` Chris Wilson
0 siblings, 0 replies; 15+ messages in thread
From: Chris Wilson @ 2019-10-05 10:20 UTC (permalink / raw)
To: Andi Shyti; +Cc: intel-gfx
Quoting Andi Shyti (2019-10-05 11:10:45)
> Hi Chris,
>
> On Tue, Oct 01, 2019 at 02:54:02PM +0100, Chris Wilson wrote:
> > Allow the user to restrict the available set of engines via a module
> > parameter.
>
> what is the driving reason for wanting this? Could you explain it
> in the commit log?
It's to allow the user to restrict the available set of engines, for
whatever reason they may have, presumably because they want to work
around some HW stability (or if that is the case to enable some HW
despite instability, since we should err on the side of caution).
> It feels a bit confusing, though. You are actually making a
> difference between engines we don't have and engines we don't
> want, and I don't see why.
>
> Wouldn't it make sense to either
>
> - define a new architecture (which could make things more
> confusing).
No, it's an optional overlay of an existing under the whim of the user.
> or
>
> - have it specified in kernel configuration
Is how we configure the defaults in reduced configurations.
> > Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
> > Cc: Stuart Summers <stuart.summers@intel.com>
> > Cc: Andi Shyti <andi.shyti@intel.com>
> > Cc: Mika Kuoppala <mika.kuoppala@linux.intel.com>
> > Cc: Tvrtko Ursulin <tvrtko.ursulin@intel.com>
> > Cc: Joonas Lahtinen <joonas.lahtinen@linux.intel.com>
> > Cc: Martin Peres <martin.peres@linux.intel.com>
> > ---
> > drivers/gpu/drm/i915/gt/intel_engine_cs.c | 35 ++++++++++++++++-------
> > drivers/gpu/drm/i915/i915_gem.c | 5 ++++
> > drivers/gpu/drm/i915/i915_params.c | 4 +++
> > drivers/gpu/drm/i915/i915_params.h | 1 +
> > 4 files changed, 35 insertions(+), 10 deletions(-)
>
> Because this is a module option that is set by the user, I don't
> see any documentation about it.
It's in i915_params.c
> > +static bool engine_available(struct drm_i915_private *i915, int id)
> > +{
> > + /* uAPI -- modparam bits must be consistent between kernels */
> > + static const unsigned int param_bit[] = {
> > + [RCS0] = BIT(0),
> > + [VCS0] = BIT(1),
> > + [BCS0] = BIT(2),
> > + [VECS0] = BIT(3),
> > + [VCS1] = BIT(4),
> > + [VCS2] = BIT(5),
> > + [VCS3] = BIT(6),
> > + [VECS1] = BIT(7),
> > + };
>
> Yet another way to refer to engines... this time inside a static
> function, without any visibility outside.
Sure. It's a static mapping table that has to stable for generations to
come because it is described in i915_params as part of the i915.engines
contract.
-Chris
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [PATCH 1/2] drm/i915: Use a modparam to restrict exposed engines
2019-10-01 13:54 [PATCH 1/2] drm/i915: Use a modparam to restrict exposed engines Chris Wilson
` (8 preceding siblings ...)
2019-10-05 10:10 ` [PATCH 1/2] drm/i915: Use a modparam to restrict exposed engines Andi Shyti
@ 2019-10-08 15:21 ` Summers, Stuart
9 siblings, 0 replies; 15+ messages in thread
From: Summers, Stuart @ 2019-10-08 15:21 UTC (permalink / raw)
To: intel-gfx@lists.freedesktop.org, chris@chris-wilson.co.uk
[-- Attachment #1.1: Type: text/plain, Size: 5837 bytes --]
On Tue, 2019-10-01 at 14:54 +0100, Chris Wilson wrote:
> Allow the user to restrict the available set of engines via a module
> parameter.
>
> Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
> Cc: Stuart Summers <stuart.summers@intel.com>
> Cc: Andi Shyti <andi.shyti@intel.com>
> Cc: Mika Kuoppala <mika.kuoppala@linux.intel.com>
> Cc: Tvrtko Ursulin <tvrtko.ursulin@intel.com>
> Cc: Joonas Lahtinen <joonas.lahtinen@linux.intel.com>
> Cc: Martin Peres <martin.peres@linux.intel.com>
> ---
> drivers/gpu/drm/i915/gt/intel_engine_cs.c | 35 ++++++++++++++++-----
> --
> drivers/gpu/drm/i915/i915_gem.c | 5 ++++
> drivers/gpu/drm/i915/i915_params.c | 4 +++
> drivers/gpu/drm/i915/i915_params.h | 1 +
> 4 files changed, 35 insertions(+), 10 deletions(-)
>
> diff --git a/drivers/gpu/drm/i915/gt/intel_engine_cs.c
> b/drivers/gpu/drm/i915/gt/intel_engine_cs.c
> index 80fd072ac719..690da64ec256 100644
> --- a/drivers/gpu/drm/i915/gt/intel_engine_cs.c
> +++ b/drivers/gpu/drm/i915/gt/intel_engine_cs.c
> @@ -389,6 +389,29 @@ void intel_engines_cleanup(struct
> drm_i915_private *i915)
> }
> }
>
> +static bool engine_available(struct drm_i915_private *i915, int id)
> +{
> + /* uAPI -- modparam bits must be consistent between kernels */
> + static const unsigned int param_bit[] = {
> + [RCS0] = BIT(0),
> + [VCS0] = BIT(1),
> + [BCS0] = BIT(2),
> + [VECS0] = BIT(3),
> + [VCS1] = BIT(4),
> + [VCS2] = BIT(5),
> + [VCS3] = BIT(6),
> + [VECS1] = BIT(7),
> + };
To be a little controversial here... I don't see how this is better
than just matching to our currently available engines for the platform.
The user will still need to look in the code to determine what engines
are available. I understand this restricts us to a static module
parameter across kernel revisions, but at the same time, this will add
a maintenance burden for an unsafe feature, something not used
regularly. And it seems like this will be easy to get stale over time.
> +
> + if (!HAS_ENGINE(i915, id))
> + return false;
> +
> + if (!(i915_modparams.engines & param_bit[id]))
> + return false;
> +
> + return true;
> +}
> +
> /**
> * intel_engines_init_mmio() - allocate and prepare the Engine
> Command Streamers
> * @i915: the i915 device
> @@ -397,7 +420,6 @@ void intel_engines_cleanup(struct
> drm_i915_private *i915)
> */
> int intel_engines_init_mmio(struct drm_i915_private *i915)
> {
> - struct intel_device_info *device_info =
> mkwrite_device_info(i915);
> const unsigned int engine_mask = INTEL_INFO(i915)->engine_mask;
> unsigned int mask = 0;
> unsigned int i;
> @@ -411,7 +433,7 @@ int intel_engines_init_mmio(struct
> drm_i915_private *i915)
> return -ENODEV;
>
> for (i = 0; i < ARRAY_SIZE(intel_engines); i++) {
> - if (!HAS_ENGINE(i915, i))
> + if (!engine_available(i915, i))
> continue;
>
> err = intel_engine_setup(&i915->gt, i);
> @@ -421,14 +443,7 @@ int intel_engines_init_mmio(struct
> drm_i915_private *i915)
> mask |= BIT(i);
> }
>
> - /*
> - * Catch failures to update intel_engines table when the new
> engines
> - * are added to the driver by a warning and disabling the
> forgotten
> - * engines.
> - */
> - if (WARN_ON(mask != engine_mask))
> - device_info->engine_mask = mask;
> -
> + mkwrite_device_info(i915)->engine_mask = mask;
> RUNTIME_INFO(i915)->num_engines = hweight32(mask);
>
> intel_gt_check_and_clear_faults(&i915->gt);
> diff --git a/drivers/gpu/drm/i915/i915_gem.c
> b/drivers/gpu/drm/i915/i915_gem.c
> index 3d3fda4cae99..bb25731466a9 100644
> --- a/drivers/gpu/drm/i915/i915_gem.c
> +++ b/drivers/gpu/drm/i915/i915_gem.c
> @@ -1308,6 +1308,11 @@ int i915_gem_init(struct drm_i915_private
> *dev_priv)
> {
> int ret;
>
> + if (!RUNTIME_INFO(dev_priv)->num_engines) {
> + intel_gt_set_wedged_on_init(&dev_priv->gt);
> + return 0;
> + }
Wait, why do we want to force a wedge if no engines are present? This
seems like an intentional limitation if we get to this point, so it
doesn't seem necessary to me to force this.
> +
> /* We need to fallback to 4K pages if host doesn't support huge
> gtt. */
> if (intel_vgpu_active(dev_priv) &&
> !intel_vgpu_has_huge_gtt(dev_priv))
> mkwrite_device_info(dev_priv)->page_sizes =
> diff --git a/drivers/gpu/drm/i915/i915_params.c
> b/drivers/gpu/drm/i915/i915_params.c
> index 296452f9efe4..27813bd79aa8 100644
> --- a/drivers/gpu/drm/i915/i915_params.c
> +++ b/drivers/gpu/drm/i915/i915_params.c
> @@ -44,6 +44,10 @@ i915_param_named(modeset, int, 0400,
> "Use kernel modesetting [KMS] (0=disable, "
> "1=on, -1=force vga console preference [default])");
>
> +i915_param_named(engines, uint, 0400,
> + "Only expose selected command streamers [GPU engines]
> (0=disable GPU, "
> + "-1/0xffffffff enable all [default]). Each bit corresponds to a
> different phyiscal engine: 0=RCS0, 1=VCS0, 2=BCS0, 3=VECS0, 4=VCS1,
> 5=VCS2, 6=VCS3, 7=VECS1");
Shouldn't this be unsafe?
Thanks,
Stuart
> +
> i915_param_named_unsafe(enable_dc, int, 0400,
> "Enable power-saving display C-states. "
> "(-1=auto [default]; 0=disable; 1=up to DC5; 2=up to DC6)");
> diff --git a/drivers/gpu/drm/i915/i915_params.h
> b/drivers/gpu/drm/i915/i915_params.h
> index d29ade3b7de6..f876db78a59a 100644
> --- a/drivers/gpu/drm/i915/i915_params.h
> +++ b/drivers/gpu/drm/i915/i915_params.h
> @@ -45,6 +45,7 @@ struct drm_printer;
> #define I915_PARAMS_FOR_EACH(param) \
> param(char *, vbt_firmware, NULL) \
> param(int, modeset, -1) \
> + param(unsigned int, engines, -1) \
> param(int, lvds_channel_mode, 0) \
> param(int, panel_use_ssc, -1) \
> param(int, vbt_sdvo_panel_type, -1) \
[-- Attachment #1.2: smime.p7s --]
[-- Type: application/x-pkcs7-signature, Size: 3270 bytes --]
[-- Attachment #2: Type: text/plain, Size: 159 bytes --]
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply [flat|nested] 15+ messages in thread