[Intel-gfx] [PATCH] drm/i915: Check for fused or unused pipes

2017-12-14 Thread Mika Kahola
In case of fused or unused pipes, return early with a warning when reading 
information
for encoder.

Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=103206
Reported-by: Thomas Gleixner 
Signed-off-by: Jani Nikula 
Signed-off-by: Mika Kahola 
---
 drivers/gpu/drm/i915/intel_audio.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/gpu/drm/i915/intel_audio.c 
b/drivers/gpu/drm/i915/intel_audio.c
index f1502a0..522d54f 100644
--- a/drivers/gpu/drm/i915/intel_audio.c
+++ b/drivers/gpu/drm/i915/intel_audio.c
@@ -779,7 +779,7 @@ static struct intel_encoder *get_saved_enc(struct 
drm_i915_private *dev_priv,
 {
struct intel_encoder *encoder;
 
-   if (WARN_ON(pipe >= INTEL_INFO(dev_priv)->num_pipes))
+   if (WARN_ON(pipe >= ARRAY_SIZE(dev_priv->av_enc_map)))
return NULL;
 
/* MST */
-- 
2.7.4

___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


Re: [Intel-gfx] [PATCH i-g-t] test/kms_sysfs_edid_timing : Increase THRESHOLD_PER_CONNECTOR and THRESHOLD_TOTAL

2017-12-14 Thread Lofstedt, Marta
https://patchwork.freedesktop.org/series/35365/
Judging from PW results, THRESHOLD_TOTAL 95 is still not enough for KBL-shards. 
 That is interesting.

/Marta

> -Original Message-
> From: Lofstedt, Marta
> Sent: Thursday, December 14, 2017 5:44 PM
> To: intel-gfx@lists.freedesktop.org
> Cc: Latvala, Petri ; Taylor, Clinton A
> ; Lofstedt, Marta 
> Subject: [PATCH i-g-t] test/kms_sysfs_edid_timing : Increase
> THRESHOLD_PER_CONNECTOR and THRESHOLD_TOTAL
> 
> The discussion on how to fix the issues has been stagnant for a long time, see
> the Bugzilla below and:
> https://patchwork.freedesktop.org/patch/170429/
> 
> After only changing display cable the result of my machine went from always
> failing to hit a WARN. This is also illustrated on CI-shards, where the 
> shard-apl
> flip-flop between pass and WARN and the shard-kbl always fail. This made
> me realize that the THRESHOLD_PER_CONNECTOR also needed to be
> updated, while previous discussion only touched the THRESHOLD_TOTAL. As
> discussed in provided links the motivation for this test is to discover big
> anomalies in edid timings, but with the current tight thresholds we are 
> hitting
> the issues too often.
> 
> Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=100047
> Signed-off-by: Marta Lofstedt 
> ---
>  tests/kms_sysfs_edid_timing.c | 4 ++--
>  1 file changed, 2 insertions(+), 2 deletions(-)
> 
> diff --git a/tests/kms_sysfs_edid_timing.c b/tests/kms_sysfs_edid_timing.c
> index 12013881..7dbd3fe6 100644
> --- a/tests/kms_sysfs_edid_timing.c
> +++ b/tests/kms_sysfs_edid_timing.c
> @@ -26,8 +26,8 @@
>  #include 
>  #include 
> 
> -#define THRESHOLD_PER_CONNECTOR  10
> -#define THRESHOLD_TOTAL  50
> +#define THRESHOLD_PER_CONNECTOR  15
> +#define THRESHOLD_TOTAL  95
>  #define CHECK_TIMES  15
> 
>  IGT_TEST_DESCRIPTION("This check the time we take to read the content of
> all "
> --
> 2.11.0

___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


Re: [Intel-gfx] [PATCH] drm/i915/glk: Disable Guc and HuC on GLK

2017-12-14 Thread Michal Wajdeczko
On Thu, 14 Dec 2017 23:30:56 +0100, Srivatsa, Anusha  
 wrote:






-Original Message-
From: Wajdeczko, Michal
Sent: Thursday, December 14, 2017 2:18 PM
To: intel-gfx@lists.freedesktop.org; Srivatsa, Anusha

Cc: Vivi, Rodrigo 
Subject: Re: [Intel-gfx] [PATCH] drm/i915/glk: Disable Guc and HuC on  
GLK


On Thu, 14 Dec 2017 22:58:37 +0100, Anusha Srivatsa
 wrote:


Since the firmwares are released yet to public repo, disable them on
Geminilake.

Cc: Rodrigo Vivi 
Signed-off-by: Anusha Srivatsa 
---
 drivers/gpu/drm/i915/i915_pci.c | 5 +
 1 file changed, 5 insertions(+)

diff --git a/drivers/gpu/drm/i915/i915_pci.c
b/drivers/gpu/drm/i915/i915_pci.c index fa67d3d..ddf7530 100644
--- a/drivers/gpu/drm/i915/i915_pci.c
+++ b/drivers/gpu/drm/i915/i915_pci.c
@@ -521,6 +521,11 @@ static const struct intel_device_info
intel_geminilake_info __initconst = {
GEN9_LP_FEATURES,
.platform = INTEL_GEMINILAKE,
.ddb_size = 1024,
+   /* FIXME Geminilake supports GuC but currently firmwares
+* have not made it to public repo. Lets disable the support
+* as a temporary fix.
+*/
+   .has_guc = 0,


Maybe better place to put this fix is __get_platform_enable_guc() like  
in [1] [1]

https://patchwork.freedesktop.org/patch/192006/


Michal,
 Hmm the reference patch  is controlling guc/huc through  a module  
parameter but wont the above approach be neater platform wise?


With your patch it would be impossible to check even preliminary
firmwares from non-public repo without recompilation of the driver.

While with variant below it would just require changing modparams like:
enable_guc=1
guc_firmware_path=preliminary/glk.bin

Note that auto mode (enable_guc=-1) will still keep GuC disabled for GLK.

Michal



Anusha
diff --git a/drivers/gpu/drm/i915/intel_uc.c  
b/drivers/gpu/drm/i915/intel_uc.c

index 49bccc9..22b0afe 100644
--- a/drivers/gpu/drm/i915/intel_uc.c
+++ b/drivers/gpu/drm/i915/intel_uc.c
@@ -60,6 +60,8 @@ static int __get_platform_enable_guc(struct
drm_i915_private *dev_priv)
enable_guc |= ENABLE_GUC_LOAD_HUC;

/* Any platform specific fine-tuning can be done here */
+   if (IS_GEMINILAKE(dev_priv))
+   enable_guc = 0; /* no firmware on CI machines */

return enable_guc;
 }



GLK_COLORS,
 };

___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


Re: [Intel-gfx] [PATCH v4 3/5] drm/i915/guc: Implement dynamic WOPCM partitioning

2017-12-14 Thread Yaodong Li

On 12/14/2017 03:43 AM, Joonas Lahtinen wrote:

On Wed, 2017-12-13 at 14:59 -0800, Yaodong Li wrote:

On 12/13/2017 01:34 PM, Michal Wajdeczko wrote:

On Wed, 13 Dec 2017 19:19:06 +0100, Yaodong Li 
wrote:


On 12/13/2017 01:11 AM, Joonas Lahtinen wrote:

On Tue, 2017-12-12 at 14:56 -0800, Jackie Li wrote:

Hardware may have specific restrictions on GuC WOPCM partition
size versus HuC firmware size. With static WOPCM partitioning,
there's no way to adjust the GuC WOPCM partition size based on
the actual HuC firmware size, so that GuC/HuC loading failure
would occur even if there was enough WOPCM space for both
GuC and HuC firmware.

WOPCM being a shared feature of the hardware, it should not go under
intel_guc_ prefix.

There should be a clear division of what is specific to GuC feature
only and what is just a feature that happens to be used by GuC (and
equally can be used by HuC too).

the intel_guc_wopcm here only refers to the wopcm used by
GuC, this structure only defines the GuC related wopcm info.
(wopcm partition for GuC). We only need to set these values
(defined in this structure) to GuC registers. And this structure
should never be touched if GuC was disabled. so it should be
a part of GuC.


But note that yours intel_guc_wopcm is just one of many wopcm partitions.
I think it would be a good idea to create "intel_wopcm.c|h" and keep
all related code and data there (including verification of early setup
done by bios, wopcpm reporting, partitioning).

Then we can do rest of the programming right there or just take values
that
will be programmed individually by interested components (but former is
preferred to avoid spreading single feature code over too many places)


The KMD only needs to take care of the setup of the GuC WOPCM partition.
Other
HW WOPCM (e.g HuC) usages are all transparent to kernel driver. Plus,
the GuC WOPM
partitioning is needed only when GuC is enabled and uc firmwares are
loaded correctly.
The only reason for us to have an intel_wopcm is to maintain the overall
WOPCM info
such as WOPCM size and base. However, it's not necessary since we can
reuse existing
driver code to get these info.

I'd go with Michal here, the WOPCM is its own entity in existence.
Partitioning defintely sounds like it should be intel_wopcm stuff,
which may yield intel_wopcm_partition under "guc", so then you are
still able to reference "guc->wopcm.base" where it makes sense.

And how that partition is programmed to GuC registers for it to be
used, is then stuff to go under intel_guc. And then you have another
intel_wopcm_partition for "huc".

We should avoid incorrect abstractions, just to avoid a few lines of
code. That's how the hardware features seem to exist, that's how we
should map them in the code.

Thanks for your comments. but I have some different opinions.

Agreed that wopcm exists no matter GuC is enabled or not. And we
can reuse existing code to get/verify related info we need for driver level
description of wopcm. that one reason I don't think we need intel_wopcm.

Regarding the partitioning - We need it only when GuC was enabled. In this
case, it makes sense to do it at least in uc level. Plus, from HW point 
of view,

HW only relies on GuC wopcm offset and size to determine the layout
(or say partitions) of the wopcm. In this case, a good abstraction of 
the HW

interface would be:
  struct guc_wopcm {
    u32 offset;
    u32 size;
  };
  guc_wopcm_setup() - which does actual HW status check and GuC wopcm 
setup.
  guc_wopcm_init() - which init/verify the offset and size values 
required by HW.

That's the second reason I think use of intel_guc_wopcm.c is more accurate
since it reflected the actual HW interface and could be enabled/disabled
along with GuC code.

Regarding the generic abstraction of intel_wopcm_partition for both GuC 
& HuC.

I am not sure what's the benefit of such an abstraction. For two reasons:
a) HW is only aware of the GuC WOPCM boundaries and doesn't provide any 
interface
    to configure the partition for HuC, which means we even won't use 
these info in

    the rest of the driver code.
b) For debugging and tracking propose, we can easily get overall layout 
of WOPCM

    by just using overall wopcm description and GuC wopcm usage.

Please do let me know if anything was wrong :-)

Regards,
-Jackie

Regards, Joonas


___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


Re: [Intel-gfx] [PATCH 4/5] drm/atomic: document how to handle driver private objects

2017-12-14 Thread Pandiyan, Dhinakaran

On Thu, 2017-12-14 at 21:30 +0100, Daniel Vetter wrote:
> DK put some nice docs into the commit introducing driver private
> state, but in the git history alone it'll be lost.
> 
> Also, since Ville remove the void* usage it's a good opportunity to
> give the driver private stuff some tlc on the doc front.
> 
> Finally try to explain why the "let's just subclass drm_atomic_state"
> approach wasn't the greatest, and annotate all those functions as
> deprecated in favour of more standardized driver private states. Also
> note where we could/should extend driver private states going forward
> (atm neither locking nor synchronization is handled in core/helpers,
> which isn't really all that great).
> 

I have pointed out a couple of typos below, other than lgtm
Reviewed-by: Dhinakaran Pandiyan 

> Cc: Harry Wentland 
> Cc: Dhinakaran Pandiyan 
> Cc: Maarten Lankhorst 
> Cc: Ville Syrjälä 
> Cc: Laurent Pinchart 
> Cc: Rob Clark 
> Cc: Alex Deucher 
> Cc: Ben Skeggs 
> Signed-off-by: Daniel Vetter 
> ---
>  Documentation/gpu/drm-kms.rst |  6 ++
>  drivers/gpu/drm/drm_atomic.c  | 45 
> ---
>  include/drm/drm_atomic.h  | 28 +++
>  include/drm/drm_mode_config.h |  9 +
>  4 files changed, 85 insertions(+), 3 deletions(-)
> 
> diff --git a/Documentation/gpu/drm-kms.rst b/Documentation/gpu/drm-kms.rst
> index 307284125d7a..420025bd6a9b 100644
> --- a/Documentation/gpu/drm-kms.rst
> +++ b/Documentation/gpu/drm-kms.rst
> @@ -271,6 +271,12 @@ Taken all together there's two consequences for the 
> atomic design:
>  Read on in this chapter, and also in :ref:`drm_atomic_helper` for more 
> detailed
>  coverage of specific topics.
>  
> +Handling Driver Private State
> +-
> +
> +.. kernel-doc:: drivers/gpu/drm/drm_atomic.c
> +   :doc: handling driver private state
> +
>  Atomic Mode Setting Function Reference
>  --
>  
> diff --git a/drivers/gpu/drm/drm_atomic.c b/drivers/gpu/drm/drm_atomic.c
> index 37445d50816a..15e1a35c74a8 100644
> --- a/drivers/gpu/drm/drm_atomic.c
> +++ b/drivers/gpu/drm/drm_atomic.c
> @@ -50,7 +50,8 @@ EXPORT_SYMBOL(__drm_crtc_commit_free);
>   * @state: atomic state
>   *
>   * Free all the memory allocated by drm_atomic_state_init.
> - * This is useful for drivers that subclass the atomic state.
> + * This should only be used by drivers which are still subclassing
> + * _atomic_state and haven't switched to _private_state yet.
>   */
>  void drm_atomic_state_default_release(struct drm_atomic_state *state)
>  {
> @@ -67,7 +68,8 @@ EXPORT_SYMBOL(drm_atomic_state_default_release);
>   * @state: atomic state
>   *
>   * Default implementation for filling in a new atomic state.
> - * This is useful for drivers that subclass the atomic state.
> + * This should only be used by drivers which are still subclassing
> + * _atomic_state and haven't switched to _private_state yet.
>   */
>  int
>  drm_atomic_state_init(struct drm_device *dev, struct drm_atomic_state *state)
> @@ -132,7 +134,8 @@ EXPORT_SYMBOL(drm_atomic_state_alloc);
>   * @state: atomic state
>   *
>   * Default implementation for clearing atomic state.
> - * This is useful for drivers that subclass the atomic state.
> + * This should only be used by drivers which are still subclassing
> + * _atomic_state and haven't switched to _private_state yet.
>   */
>  void drm_atomic_state_default_clear(struct drm_atomic_state *state)
>  {
> @@ -946,6 +949,42 @@ static void drm_atomic_plane_print_state(struct 
> drm_printer *p,
>   plane->funcs->atomic_print_state(p, state);
>  }
>  
> +/**
> + * DOC: handling driver private state
> + *
> + * Very often the DRM objects exposed to userspace in the atomic modeset api
> + * (_connector, _crtc and _plane) do not map neatly to the
> + * underlying hardware. Especially for any kind of shared resources (e.g. 
> shared
> + * clocks, scaler units, bandwidth and fifo limits shared among a group of
> + * planes or CRTCs, and so on) it makes sense to model these as independent
> + * objects. Drivers then need to similar state tracking and commit ordering 
> for
> + * such private (since not exposed to userpace) objects as the atomic core 
> and
> + * helpers already provide for connectors, planes and CRTCs.
> + *
> + * To make this easier on drivers the atomic core provides some support to 
> track
> + * driver private state objects using struct _private_obj, with the
> + * associated state struct _private_state.
> + *
> + * Similar to userspace-exposed objects, state structures can be acquired by
  ^private

> + * calling 

Re: [Intel-gfx] [PATCH 5/5] drm/doc: Move legacy kms helpers to the very end

2017-12-14 Thread Alex Deucher
On Thu, Dec 14, 2017 at 3:30 PM, Daniel Vetter  wrote:
> We don't want people to accidentally stumble over there.
>
> Also rename the plane helpers to legacy plane helpers. After Ville's
> patch to make the clipping helper atomic and move it to
> drm_atomic_helper.c there's nothing left in there that should be
> useful for modern drivers.
>
> v2: Laurent had a few questions around how state is added to
> drm_atomic_state, tried to clarify that. And spotted another sentence
> where the docs suggested subclassing.
>
> Signed-off-by: Daniel Vetter 
> ---
>  Documentation/gpu/drm-kms-helpers.rst | 36 
> +--
>  Documentation/gpu/drm-kms.rst |  8 
>  include/drm/drm_atomic.h  |  4 
>  3 files changed, 26 insertions(+), 22 deletions(-)
>
> diff --git a/Documentation/gpu/drm-kms-helpers.rst 
> b/Documentation/gpu/drm-kms-helpers.rst
> index 3ea622876b67..e37557b30f62 100644
> --- a/Documentation/gpu/drm-kms-helpers.rst
> +++ b/Documentation/gpu/drm-kms-helpers.rst
> @@ -74,15 +74,6 @@ Helper Functions Reference
>  .. kernel-doc:: drivers/gpu/drm/drm_atomic_helper.c
> :export:
>
> -Legacy CRTC/Modeset Helper Functions Reference
> -==
> -
> -.. kernel-doc:: drivers/gpu/drm/drm_crtc_helper.c
> -   :doc: overview
> -
> -.. kernel-doc:: drivers/gpu/drm/drm_crtc_helper.c
> -   :export:
> -
>  Simple KMS Helper Reference
>  ===
>
> @@ -282,15 +273,6 @@ Flip-work Helper Reference
>  .. kernel-doc:: drivers/gpu/drm/drm_flip_work.c
> :export:
>
> -Plane Helper Reference
> -==
> -
> -.. kernel-doc:: drivers/gpu/drm/drm_plane_helper.c
> -   :doc: overview
> -
> -.. kernel-doc:: drivers/gpu/drm/drm_plane_helper.c
> -   :export:
> -
>  Auxiliary Modeset Helpers
>  =
>
> @@ -308,3 +290,21 @@ Framebuffer GEM Helper Reference
>
>  .. kernel-doc:: drivers/gpu/drm/drm_gem_framebuffer_helper.c
> :export:
> +
> +Legacy Plane Helper Reference
> +=
> +
> +.. kernel-doc:: drivers/gpu/drm/drm_plane_helper.c
> +   :doc: overview
> +
> +.. kernel-doc:: drivers/gpu/drm/drm_plane_helper.c
> +   :export:
> +
> +Legacy CRTC/Modeset Helper Functions Reference
> +==
> +
> +.. kernel-doc:: drivers/gpu/drm/drm_crtc_helper.c
> +   :doc: overview
> +
> +.. kernel-doc:: drivers/gpu/drm/drm_crtc_helper.c
> +   :export:
> diff --git a/Documentation/gpu/drm-kms.rst b/Documentation/gpu/drm-kms.rst
> index 420025bd6a9b..cbba93483aec 100644
> --- a/Documentation/gpu/drm-kms.rst
> +++ b/Documentation/gpu/drm-kms.rst
> @@ -263,10 +263,10 @@ Taken all together there's two consequences for the 
> atomic design:
>
>  - An atomic update is assembled and validated as an entirely free-standing 
> pile
>of structures within the :c:type:`drm_atomic_state `
> -  container. Again drivers can subclass that container for their own state
> -  structure tracking needs. Only when a state is committed is it applied to 
> the
> -  driver and modeset objects. This way rolling back an update boils down to
> -  releasing memory and unreferencing objects like framebuffers.
> +  container. Driver private state structures are also tracked in the same
> +  structure, see the next chapter.  Only when a state is committed is it 
> applied

I think it would be clearer as:
structure (see the next chapter).
or
structure; see the next chapter.

Either way:
Reviewed-by: Alex Deucher 

> +  to the driver and modeset objects. This way rolling back an update boils 
> down
> +  to releasing memory and unreferencing objects like framebuffers.
>
>  Read on in this chapter, and also in :ref:`drm_atomic_helper` for more 
> detailed
>  coverage of specific topics.
> diff --git a/include/drm/drm_atomic.h b/include/drm/drm_atomic.h
> index 8e4829a25c1b..e7f25e342cc8 100644
> --- a/include/drm/drm_atomic.h
> +++ b/include/drm/drm_atomic.h
> @@ -246,6 +246,10 @@ struct __drm_private_objs_state {
>   * @num_private_objs: size of the @private_objs array
>   * @private_objs: pointer to array of private object pointers
>   * @acquire_ctx: acquire context for this atomic modeset state update
> + *
> + * States are added to an atomic update by calling 
> drm_atomic_get_crtc_state(),
> + * drm_atomic_get_plane_state(), drm_atomic_get_connector_state(), or for
> + * private state structures, drm_atomic_get_private_obj_state().
>   */
>  struct drm_atomic_state {
> struct kref ref;
> --
> 2.15.1
>
> ___
> dri-devel mailing list
> dri-de...@lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/dri-devel
___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


Re: [Intel-gfx] [PATCH 3/5] drm/syncobj: some kerneldoc polish

2017-12-14 Thread Alex Deucher
On Thu, Dec 14, 2017 at 3:30 PM, Daniel Vetter  wrote:
> Complete a few missing bits, fix up the existing xcross-references and
> add a bunch more.
>
> Cc: Dave Airlie  via lists.freedesktop.org
> Signed-off-by: Daniel Vetter 
> ---
>  drivers/gpu/drm/drm_syncobj.c | 45 
> +++
>  include/drm/drm_syncobj.h | 32 +-
>  2 files changed, 60 insertions(+), 17 deletions(-)
>
> diff --git a/drivers/gpu/drm/drm_syncobj.c b/drivers/gpu/drm/drm_syncobj.c
> index 9b733c510cbf..b6d0c2c400ec 100644
> --- a/drivers/gpu/drm/drm_syncobj.c
> +++ b/drivers/gpu/drm/drm_syncobj.c
> @@ -29,9 +29,9 @@
>  /**
>   * DOC: Overview
>   *
> - * DRM synchronisation objects (syncobj) are a persistent objects,
> - * that contain an optional fence. The fence can be updated with a new
> - * fence, or be NULL.
> + * DRM synchronisation objects (syncobj, see struct _syncobj) are a
> + * persistent objects, that contain an optional fence. The fence can be 
> updated

grammer:
are persistent objects that contain an optional fence


> + * with a new fence, or be NULL.
>   *
>   * syncobj's can be waited upon, where it will wait for the underlying
>   * fence.
> @@ -61,7 +61,8 @@
>   * @file_private: drm file private pointer
>   * @handle: sync object handle to lookup.
>   *
> - * Returns a reference to the syncobj pointed to by handle or NULL.
> + * Returns a reference to the syncobj pointed to by handle or NULL. The
> + * reference must be released by calling drm_syncobj_put().
>   */
>  struct drm_syncobj *drm_syncobj_find(struct drm_file *file_private,
>  u32 handle)
> @@ -229,6 +230,19 @@ static int drm_syncobj_assign_null_handle(struct 
> drm_syncobj *syncobj)
> return 0;
>  }
>
> +/**
> + * drm_syncobj_find_fence - lookup and reference the fence in a sync object
> + * @file_private: drm file private pointer
> + * @handle: sync object handle to lookup.
> + * @fence: out parameter for the fence
> + *
> + * This is just a convenience function that combines drm_syncobj_find() and
> + * drm_syncobj_fence_get().
> + *
> + * Returns 0 on success or a negative error value on failure. On success 
> @fence
> + * contains a reference to the fence, which mus be released by calling

typo: must

> + * dma_fence_put().
> + */
>  int drm_syncobj_find_fence(struct drm_file *file_private,
>u32 handle,
>struct dma_fence **fence)
> @@ -269,6 +283,12 @@ EXPORT_SYMBOL(drm_syncobj_free);
>   * @out_syncobj: returned syncobj
>   * @flags: DRM_SYNCOBJ_* flags
>   * @fence: if non-NULL, the syncobj will represent this fence
> + *
> + * This is the first function to create a sync object. After creating drivers
> + * probably want to make it available to userspace, either through
> + * drm_syncobj_get_handle() or drm_syncobj_get_fd().

grammer:
After creating, drivers probably want to make it available to userspace

> + *
> + * Returns 0 on success or a negative error value on failure.
>   */
>  int drm_syncobj_create(struct drm_syncobj **out_syncobj, uint32_t flags,
>struct dma_fence *fence)
> @@ -302,6 +322,14 @@ EXPORT_SYMBOL(drm_syncobj_create);
>
>  /**
>   * drm_syncobj_get_handle - get a handle from a syncobj
> + * @file_private: drm file private pointer
> + * @syncobj: Sync object to export
> + * @handle: out parameter with the new handle
> + *
> + * Exports a sync object created with drm_syncobj_create() as a handle on
> + * @file_private to userspace.
> + *
> + * Returns 0 on success or a negative error value on failure.
>   */
>  int drm_syncobj_get_handle(struct drm_file *file_private,
>struct drm_syncobj *syncobj, u32 *handle)
> @@ -388,6 +416,15 @@ static int drm_syncobj_alloc_file(struct drm_syncobj 
> *syncobj)
> return 0;
>  }
>
> +/**
> + * drm_syncobj_get_fd - get a file descriptor from a syncobj
> + * @syncobj: Sync object to export
> + * @p_fd: out parameter with the new file descriptor
> + *
> + * Exports a sync object created with drm_syncobj_create() as a file 
> descriptor.
> + *
> + * Returns 0 on success or a negative error value on failure.
> + */
>  int drm_syncobj_get_fd(struct drm_syncobj *syncobj, int *p_fd)
>  {
> int ret;
> diff --git a/include/drm/drm_syncobj.h b/include/drm/drm_syncobj.h
> index 9e8ba90c6784..87865774bdaa 100644
> --- a/include/drm/drm_syncobj.h
> +++ b/include/drm/drm_syncobj.h
> @@ -33,36 +33,31 @@ struct drm_syncobj_cb;
>  /**
>   * struct drm_syncobj - sync object.
>   *
> - * This structure defines a generic sync object which wraps a dma fence.
> + * This structure defines a generic sync object which wraps a _fence.
>   */
>  struct drm_syncobj {
> /**
> -* @refcount:
> -*
> -* Reference count of this object.
> +* @refcount: Reference count of this object.
> 

Re: [Intel-gfx] [PATCH 2/5] drm/print: Unconfuse kerneldoc

2017-12-14 Thread Alex Deucher
On Thu, Dec 14, 2017 at 3:30 PM, Daniel Vetter  wrote:
> It thinks we want to document the __printf(2,0) annotion. Not sure we
> want to teach it about all possible gcc-only flags, hence why I opted
> for the cheap trick of just moving it ahead of the kerneldoc.
>
> This is only a problem for static inline functions, since for
> non-inline function the kerneldoc is in the .c file, but the special
> annotations are all in the header.
>
> Cc'ing kernel-doc maintainers as fyi.
>
> Cc: linux-...@vger.kernel.org
> Cc: Jonathan Corbet 
> Signed-off-by: Daniel Vetter 

Acked-by: Alex Deucher 

> ---
>  include/drm/drm_print.h | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/include/drm/drm_print.h b/include/drm/drm_print.h
> index 5f9932e2246e..2a4a42e59a47 100644
> --- a/include/drm/drm_print.h
> +++ b/include/drm/drm_print.h
> @@ -80,13 +80,13 @@ void __drm_printfn_debug(struct drm_printer *p, struct 
> va_format *vaf);
>  __printf(2, 3)
>  void drm_printf(struct drm_printer *p, const char *f, ...);
>
> +__printf(2, 0)
>  /**
>   * drm_vprintf - print to a _printer stream
>   * @p: the _printer
>   * @fmt: format string
>   * @va: the va_list
>   */
> -__printf(2, 0)
>  static inline void
>  drm_vprintf(struct drm_printer *p, const char *fmt, va_list *va)
>  {
> --
> 2.15.1
>
> ___
> dri-devel mailing list
> dri-de...@lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/dri-devel
___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


Re: [Intel-gfx] [PATCH 1/5] drm/edid: kerneldoc for is_hdmi2_sink

2017-12-14 Thread Alex Deucher
On Thu, Dec 14, 2017 at 3:30 PM, Daniel Vetter  wrote:
> Also some breadcrumbs for how exactly to find this. Probably should
> pass drm_connector * or at least drm_display_info * to that function
> instead. But drm_hdmi_avi_infoframe_quant_range probably also wants
> drm_connector_state (and the hdmi stuff moved into that), so this is a
> bit more work.
>
> Cc: Ville Syrjälä 
> Fixes: 9271c0ca573e ("drm/edid: Don't send non-zero YQ in AVI infoframe for 
> HDMI 1.x sinks")
> Signed-off-by: Daniel Vetter 
> ---
>  drivers/gpu/drm/drm_edid.c | 5 +
>  1 file changed, 5 insertions(+)
>
> diff --git a/drivers/gpu/drm/drm_edid.c b/drivers/gpu/drm/drm_edid.c
> index 365901c1c33c..56ebef0c5fad 100644
> --- a/drivers/gpu/drm/drm_edid.c
> +++ b/drivers/gpu/drm/drm_edid.c
> @@ -4871,6 +4871,11 @@ 
> EXPORT_SYMBOL(drm_hdmi_avi_infoframe_from_display_mode);
>   * @mode: DRM display mode
>   * @rgb_quant_range: RGB quantization range (Q)
>   * @rgb_quant_range_selectable: Sink support selectable RGB quantization 
> range (QS)
> + * @is_hdmi2_sink: HDMI 2.0 sink, which has different default recommendations
> + *
> + * Note that @is_hdmi2_sink can be derrived by looking at the

typo : derived
With that fixed:
Acked-by: Alex Deucher 

> + * _scdc.supported flag stored in _hdmi_info.scdc,
> + * _display_info.hdmi, which can be found in _connector.display_info.
>   */
>  void
>  drm_hdmi_avi_infoframe_quant_range(struct hdmi_avi_infoframe *frame,
> --
> 2.15.1
>
> ___
> dri-devel mailing list
> dri-de...@lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/dri-devel
___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


Re: [Intel-gfx] [PATCH 4/5] drm/atomic: document how to handle driver private objects

2017-12-14 Thread Alex Deucher
On Thu, Dec 14, 2017 at 3:30 PM, Daniel Vetter  wrote:
> DK put some nice docs into the commit introducing driver private
> state, but in the git history alone it'll be lost.
>
> Also, since Ville remove the void* usage it's a good opportunity to
> give the driver private stuff some tlc on the doc front.
>
> Finally try to explain why the "let's just subclass drm_atomic_state"
> approach wasn't the greatest, and annotate all those functions as
> deprecated in favour of more standardized driver private states. Also
> note where we could/should extend driver private states going forward
> (atm neither locking nor synchronization is handled in core/helpers,
> which isn't really all that great).
>
> Cc: Harry Wentland 
> Cc: Dhinakaran Pandiyan 
> Cc: Maarten Lankhorst 
> Cc: Ville Syrjälä 
> Cc: Laurent Pinchart 
> Cc: Rob Clark 
> Cc: Alex Deucher 
> Cc: Ben Skeggs 
> Signed-off-by: Daniel Vetter 
> ---
>  Documentation/gpu/drm-kms.rst |  6 ++
>  drivers/gpu/drm/drm_atomic.c  | 45 
> ---
>  include/drm/drm_atomic.h  | 28 +++
>  include/drm/drm_mode_config.h |  9 +
>  4 files changed, 85 insertions(+), 3 deletions(-)
>
> diff --git a/Documentation/gpu/drm-kms.rst b/Documentation/gpu/drm-kms.rst
> index 307284125d7a..420025bd6a9b 100644
> --- a/Documentation/gpu/drm-kms.rst
> +++ b/Documentation/gpu/drm-kms.rst
> @@ -271,6 +271,12 @@ Taken all together there's two consequences for the 
> atomic design:
>  Read on in this chapter, and also in :ref:`drm_atomic_helper` for more 
> detailed
>  coverage of specific topics.
>
> +Handling Driver Private State
> +-
> +
> +.. kernel-doc:: drivers/gpu/drm/drm_atomic.c
> +   :doc: handling driver private state
> +
>  Atomic Mode Setting Function Reference
>  --
>
> diff --git a/drivers/gpu/drm/drm_atomic.c b/drivers/gpu/drm/drm_atomic.c
> index 37445d50816a..15e1a35c74a8 100644
> --- a/drivers/gpu/drm/drm_atomic.c
> +++ b/drivers/gpu/drm/drm_atomic.c
> @@ -50,7 +50,8 @@ EXPORT_SYMBOL(__drm_crtc_commit_free);
>   * @state: atomic state
>   *
>   * Free all the memory allocated by drm_atomic_state_init.
> - * This is useful for drivers that subclass the atomic state.
> + * This should only be used by drivers which are still subclassing
> + * _atomic_state and haven't switched to _private_state yet.
>   */
>  void drm_atomic_state_default_release(struct drm_atomic_state *state)
>  {
> @@ -67,7 +68,8 @@ EXPORT_SYMBOL(drm_atomic_state_default_release);
>   * @state: atomic state
>   *
>   * Default implementation for filling in a new atomic state.
> - * This is useful for drivers that subclass the atomic state.
> + * This should only be used by drivers which are still subclassing
> + * _atomic_state and haven't switched to _private_state yet.
>   */
>  int
>  drm_atomic_state_init(struct drm_device *dev, struct drm_atomic_state *state)
> @@ -132,7 +134,8 @@ EXPORT_SYMBOL(drm_atomic_state_alloc);
>   * @state: atomic state
>   *
>   * Default implementation for clearing atomic state.
> - * This is useful for drivers that subclass the atomic state.
> + * This should only be used by drivers which are still subclassing
> + * _atomic_state and haven't switched to _private_state yet.
>   */
>  void drm_atomic_state_default_clear(struct drm_atomic_state *state)
>  {
> @@ -946,6 +949,42 @@ static void drm_atomic_plane_print_state(struct 
> drm_printer *p,
> plane->funcs->atomic_print_state(p, state);
>  }
>
> +/**
> + * DOC: handling driver private state
> + *
> + * Very often the DRM objects exposed to userspace in the atomic modeset api
> + * (_connector, _crtc and _plane) do not map neatly to the
> + * underlying hardware. Especially for any kind of shared resources (e.g. 
> shared
> + * clocks, scaler units, bandwidth and fifo limits shared among a group of
> + * planes or CRTCs, and so on) it makes sense to model these as independent
> + * objects. Drivers then need to similar state tracking and commit ordering 
> for
> + * such private (since not exposed to userpace) objects as the atomic core 
> and
> + * helpers already provide for connectors, planes and CRTCs.

This last sentence doesn't quite parse.  I think it should be as follows:

Drivers then need to do similar state tracking and commit ordering for
such private (since not exposed to userpace) objects as the atomic core that
helpers already provide for DRM objects (connectors, planes and CRTCs).

Feel free to adjust as you see fit.  With that fixed up:
Reviewed-by: Alex Deucher 

> + *
> + * To make this easier on drivers the atomic core provides some support to 
> 

[Intel-gfx] ✗ Fi.CI.IGT: warning for lib: Provide a library function to test nop execution

2017-12-14 Thread Patchwork
== Series Details ==

Series: lib: Provide a library function to test nop execution
URL   : https://patchwork.freedesktop.org/series/35383/
State : warning

== Summary ==

Test kms_flip:
Subgroup vblank-vs-suspend:
incomplete -> PASS   (shard-hsw) fdo#103375 +2
Test kms_frontbuffer_tracking:
Subgroup fbc-1p-offscren-pri-shrfb-draw-render:
fail   -> PASS   (shard-snb) fdo#101623
Test gem_tiled_swapping:
Subgroup non-threaded:
dmesg-warn -> PASS   (shard-hsw) fdo#104218 +1
Test kms_draw_crc:
Subgroup draw-method-xrgb2101010-mmap-wc-untiled:
pass   -> SKIP   (shard-hsw)
Subgroup draw-method-xrgb2101010-mmap-gtt-xtiled:
pass   -> SKIP   (shard-snb)

fdo#103375 https://bugs.freedesktop.org/show_bug.cgi?id=103375
fdo#101623 https://bugs.freedesktop.org/show_bug.cgi?id=101623
fdo#104218 https://bugs.freedesktop.org/show_bug.cgi?id=104218

shard-hswtotal:2578 pass:1461 dwarn:1   dfail:0   fail:10  skip:1104 
time:8817s
shard-snbtotal:2712 pass:1308 dwarn:1   dfail:0   fail:11  skip:1392 
time:8033s
Blacklisted hosts:
shard-apltotal:2712 pass:1684 dwarn:1   dfail:0   fail:25  skip:1002 
time:13899s

== Logs ==

For more details see: 
https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_677/shards.html
___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


[Intel-gfx] ✗ Fi.CI.IGT: failure for tests/gem_eio: Fix usage of gem_quiescent_gpu

2017-12-14 Thread Patchwork
== Series Details ==

Series: tests/gem_eio: Fix usage of gem_quiescent_gpu
URL   : https://patchwork.freedesktop.org/series/35382/
State : failure

== Summary ==

Test gem_tiled_swapping:
Subgroup non-threaded:
dmesg-warn -> PASS   (shard-hsw) fdo#104218 +1
Test kms_flip:
Subgroup flip-vs-expired-vblank-interruptible:
pass   -> INCOMPLETE (shard-snb)
Subgroup vblank-vs-suspend:
incomplete -> PASS   (shard-hsw) fdo#103375
Test kms_frontbuffer_tracking:
Subgroup fbc-1p-offscren-pri-shrfb-draw-render:
fail   -> PASS   (shard-snb) fdo#101623
Test gem_eio:
Subgroup suspend:
pass   -> INCOMPLETE (shard-hsw) fdo#103990

fdo#104218 https://bugs.freedesktop.org/show_bug.cgi?id=104218
fdo#103375 https://bugs.freedesktop.org/show_bug.cgi?id=103375
fdo#101623 https://bugs.freedesktop.org/show_bug.cgi?id=101623
fdo#103990 https://bugs.freedesktop.org/show_bug.cgi?id=103990

shard-hswtotal:2681 pass:1517 dwarn:1   dfail:0   fail:10  skip:1152 
time:9252s
shard-snbtotal:2663 pass:1282 dwarn:1   dfail:0   fail:11  skip:1368 
time:7791s
Blacklisted hosts:
shard-apltotal:2690 pass:1642 dwarn:3   dfail:0   fail:25  skip:1019 
time:13115s
shard-kbltotal:2669 pass:1759 dwarn:14  dfail:1   fail:30  skip:864 
time:10559s

== Logs ==

For more details see: 
https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_676/shards.html
___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


[Intel-gfx] ✗ Fi.CI.IGT: failure for igt/tools_test: Check the tools exist before executing (rev3)

2017-12-14 Thread Patchwork
== Series Details ==

Series: igt/tools_test: Check the tools exist before executing (rev3)
URL   : https://patchwork.freedesktop.org/series/35237/
State : failure

== Summary ==

Test kms_cursor_legacy:
Subgroup flip-vs-cursor-toggle:
pass   -> FAIL   (shard-hsw) fdo#102670
Test gem_wait:
Subgroup await-render:
pass   -> FAIL   (shard-hsw)
Test kms_flip:
Subgroup plain-flip-ts-check-interruptible:
pass   -> FAIL   (shard-hsw) fdo#100368
Subgroup vblank-vs-suspend:
incomplete -> PASS   (shard-hsw) fdo#103375
Test drv_module_reload:
Subgroup basic-reload-inject:
pass   -> DMESG-WARN (shard-snb) fdo#102707
Test gvt_basic:
Subgroup invalid-placeholder-test:
skip   -> DMESG-FAIL (shard-snb)
Test kms_frontbuffer_tracking:
Subgroup fbcpsr-1p-primscrn-spr-indfb-move:
skip   -> INCOMPLETE (shard-snb)
Subgroup fbc-1p-offscren-pri-shrfb-draw-render:
fail   -> PASS   (shard-snb) fdo#101623
Test gem_tiled_swapping:
Subgroup non-threaded:
dmesg-warn -> PASS   (shard-hsw) fdo#104218 +1

fdo#102670 https://bugs.freedesktop.org/show_bug.cgi?id=102670
fdo#100368 https://bugs.freedesktop.org/show_bug.cgi?id=100368
fdo#103375 https://bugs.freedesktop.org/show_bug.cgi?id=103375
fdo#102707 https://bugs.freedesktop.org/show_bug.cgi?id=102707
fdo#101623 https://bugs.freedesktop.org/show_bug.cgi?id=101623
fdo#104218 https://bugs.freedesktop.org/show_bug.cgi?id=104218

shard-hswtotal:2712 pass:1534 dwarn:1   dfail:0   fail:13  skip:1164 
time:9445s
shard-snbtotal:2700 pass:1302 dwarn:2   dfail:1   fail:11  skip:1383 
time:7738s
Blacklisted hosts:
shard-apltotal:2712 pass:1671 dwarn:1   dfail:0   fail:23  skip:1017 
time:13793s
shard-kbltotal:2712 pass:1757 dwarn:47  dfail:2   fail:29  skip:877 
time:11273s

== Logs ==

For more details see: 
https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_674/shards.html
___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


[Intel-gfx] ✓ Fi.CI.BAT: success for lib: Provide a library function to test nop execution

2017-12-14 Thread Patchwork
== Series Details ==

Series: lib: Provide a library function to test nop execution
URL   : https://patchwork.freedesktop.org/series/35383/
State : success

== Summary ==

IGT patchset tested on top of latest successful build
103af7286e2d1014e3d7126691fe046ab2c9f73e lib: Ask the kernel to quiesce the GPU

with latest DRM-Tip kernel build CI_DRM_3521
ad43db157c69 drm-tip: 2017y-12m-14d-20h-09m-53s UTC integration manifest

No testlist changes.

Test debugfs_test:
Subgroup read_all_entries:
dmesg-fail -> PASS   (fi-elk-e7500) fdo#103989 +2
incomplete -> PASS   (fi-snb-2520m) fdo#103713
Test gem_sync:
Subgroup basic-all:
dmesg-fail -> SKIP   (fi-blb-e6850) fdo#104259
Test kms_pipe_crc_basic:
Subgroup suspend-read-crc-pipe-a:
pass   -> DMESG-WARN (fi-kbl-r) fdo#104172 +1

fdo#103989 https://bugs.freedesktop.org/show_bug.cgi?id=103989
fdo#103713 https://bugs.freedesktop.org/show_bug.cgi?id=103713
fdo#104259 https://bugs.freedesktop.org/show_bug.cgi?id=104259
fdo#104172 https://bugs.freedesktop.org/show_bug.cgi?id=104172

fi-bdw-5557u total:288  pass:267  dwarn:0   dfail:0   fail:0   skip:21  
time:437s
fi-bdw-gvtdvmtotal:288  pass:264  dwarn:0   dfail:0   fail:0   skip:24  
time:437s
fi-blb-e6850 total:288  pass:210  dwarn:1   dfail:0   fail:0   skip:77  
time:355s
fi-bsw-n3050 total:288  pass:242  dwarn:0   dfail:0   fail:0   skip:46  
time:510s
fi-bwr-2160  total:288  pass:183  dwarn:0   dfail:0   fail:0   skip:105 
time:279s
fi-bxt-dsi   total:288  pass:258  dwarn:0   dfail:0   fail:0   skip:30  
time:505s
fi-bxt-j4205 total:288  pass:259  dwarn:0   dfail:0   fail:0   skip:29  
time:497s
fi-byt-j1900 total:288  pass:253  dwarn:0   dfail:0   fail:0   skip:35  
time:490s
fi-byt-n2820 total:288  pass:249  dwarn:0   dfail:0   fail:0   skip:39  
time:472s
fi-elk-e7500 total:224  pass:163  dwarn:15  dfail:0   fail:0   skip:45 
fi-gdg-551   total:288  pass:178  dwarn:1   dfail:0   fail:1   skip:108 
time:266s
fi-glk-1 total:288  pass:260  dwarn:0   dfail:0   fail:0   skip:28  
time:538s
fi-hsw-4770  total:288  pass:261  dwarn:0   dfail:0   fail:0   skip:27  
time:410s
fi-hsw-4770r total:288  pass:261  dwarn:0   dfail:0   fail:0   skip:27  
time:415s
fi-ilk-650   total:288  pass:228  dwarn:0   dfail:0   fail:0   skip:60  
time:388s
fi-ivb-3520m total:288  pass:259  dwarn:0   dfail:0   fail:0   skip:29  
time:474s
fi-ivb-3770  total:288  pass:255  dwarn:0   dfail:0   fail:0   skip:33  
time:435s
fi-kbl-7500u total:288  pass:263  dwarn:1   dfail:0   fail:0   skip:24  
time:480s
fi-kbl-7560u total:288  pass:268  dwarn:1   dfail:0   fail:0   skip:19  
time:520s
fi-kbl-7567u total:288  pass:268  dwarn:0   dfail:0   fail:0   skip:20  
time:469s
fi-kbl-r total:288  pass:260  dwarn:1   dfail:0   fail:0   skip:27  
time:524s
fi-pnv-d510  total:288  pass:221  dwarn:1   dfail:0   fail:1   skip:65  
time:596s
fi-skl-6260u total:288  pass:268  dwarn:0   dfail:0   fail:0   skip:20  
time:449s
fi-skl-6600u total:288  pass:260  dwarn:1   dfail:0   fail:0   skip:27  
time:541s
fi-skl-6700hqtotal:288  pass:261  dwarn:1   dfail:0   fail:0   skip:26  
time:557s
fi-skl-6770hqtotal:288  pass:268  dwarn:0   dfail:0   fail:0   skip:20  
time:493s
fi-skl-gvtdvmtotal:288  pass:265  dwarn:0   dfail:0   fail:0   skip:23  
time:445s
fi-snb-2520m total:288  pass:248  dwarn:0   dfail:0   fail:0   skip:40  
time:559s
fi-snb-2600  total:288  pass:248  dwarn:0   dfail:0   fail:0   skip:40  
time:415s
Blacklisted hosts:
fi-cfl-s2total:288  pass:262  dwarn:0   dfail:0   fail:0   skip:26  
time:594s
fi-cnl-y total:288  pass:262  dwarn:0   dfail:0   fail:0   skip:26  
time:619s
fi-glk-dsi   total:15   pass:14   dwarn:0   dfail:0   fail:0   skip:0  

== Logs ==

For more details see: 
https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_677/issues.html
___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


[Intel-gfx] ✓ Fi.CI.BAT: success for tests/gem_eio: Fix usage of gem_quiescent_gpu

2017-12-14 Thread Patchwork
== Series Details ==

Series: tests/gem_eio: Fix usage of gem_quiescent_gpu
URL   : https://patchwork.freedesktop.org/series/35382/
State : success

== Summary ==

IGT patchset tested on top of latest successful build
103af7286e2d1014e3d7126691fe046ab2c9f73e lib: Ask the kernel to quiesce the GPU

with latest DRM-Tip kernel build CI_DRM_3521
ad43db157c69 drm-tip: 2017y-12m-14d-20h-09m-53s UTC integration manifest

No testlist changes.

Test debugfs_test:
Subgroup read_all_entries:
dmesg-fail -> DMESG-WARN (fi-elk-e7500) fdo#103989 +1
incomplete -> PASS   (fi-snb-2520m) fdo#103713
Test gem_mmap_gtt:
Subgroup basic-small-bo-tiledx:
fail   -> PASS   (fi-gdg-551) fdo#102575
Test gem_sync:
Subgroup basic-each:
skip   -> PASS   (fi-blb-e6850)
Subgroup basic-many-each:
skip   -> PASS   (fi-blb-e6850)
Subgroup basic-store-all:
skip   -> PASS   (fi-blb-e6850)
Subgroup basic-store-each:
skip   -> PASS   (fi-blb-e6850)
Test gem_tiled_blits:
Subgroup basic:
skip   -> PASS   (fi-blb-e6850)
Test gem_tiled_fence_blits:
Subgroup basic:
skip   -> PASS   (fi-blb-e6850)
Test gem_wait:
Subgroup basic-busy-all:
skip   -> PASS   (fi-blb-e6850)
Subgroup basic-wait-all:
skip   -> PASS   (fi-blb-e6850)
Subgroup basic-await-all:
skip   -> PASS   (fi-blb-e6850)
Test kms_busy:
Subgroup basic-flip-a:
skip   -> PASS   (fi-blb-e6850)
Subgroup basic-flip-b:
skip   -> PASS   (fi-blb-e6850)
Test kms_cursor_legacy:
Subgroup basic-busy-flip-before-cursor-legacy:
skip   -> PASS   (fi-blb-e6850)
Test kms_psr_sink_crc:
Subgroup psr_basic:
dmesg-warn -> PASS   (fi-skl-6700hq) fdo#101144

fdo#103989 https://bugs.freedesktop.org/show_bug.cgi?id=103989
fdo#103713 https://bugs.freedesktop.org/show_bug.cgi?id=103713
fdo#102575 https://bugs.freedesktop.org/show_bug.cgi?id=102575
fdo#101144 https://bugs.freedesktop.org/show_bug.cgi?id=101144

fi-bdw-5557u total:288  pass:267  dwarn:0   dfail:0   fail:0   skip:21  
time:440s
fi-bdw-gvtdvmtotal:288  pass:264  dwarn:0   dfail:0   fail:0   skip:24  
time:438s
fi-blb-e6850 total:288  pass:222  dwarn:1   dfail:1   fail:0   skip:64  
time:395s
fi-bsw-n3050 total:288  pass:242  dwarn:0   dfail:0   fail:0   skip:46  
time:502s
fi-bwr-2160  total:288  pass:183  dwarn:0   dfail:0   fail:0   skip:105 
time:278s
fi-bxt-dsi   total:288  pass:258  dwarn:0   dfail:0   fail:0   skip:30  
time:497s
fi-bxt-j4205 total:288  pass:259  dwarn:0   dfail:0   fail:0   skip:29  
time:503s
fi-byt-j1900 total:288  pass:253  dwarn:0   dfail:0   fail:0   skip:35  
time:487s
fi-byt-n2820 total:288  pass:249  dwarn:0   dfail:0   fail:0   skip:39  
time:478s
fi-elk-e7500 total:224  pass:163  dwarn:15  dfail:0   fail:0   skip:45 
fi-gdg-551   total:288  pass:179  dwarn:1   dfail:0   fail:0   skip:108 
time:263s
fi-glk-1 total:288  pass:260  dwarn:0   dfail:0   fail:0   skip:28  
time:535s
fi-hsw-4770  total:288  pass:261  dwarn:0   dfail:0   fail:0   skip:27  
time:410s
fi-hsw-4770r total:288  pass:261  dwarn:0   dfail:0   fail:0   skip:27  
time:416s
fi-ilk-650   total:288  pass:228  dwarn:0   dfail:0   fail:0   skip:60  
time:396s
fi-ivb-3520m total:288  pass:259  dwarn:0   dfail:0   fail:0   skip:29  
time:467s
fi-ivb-3770  total:288  pass:255  dwarn:0   dfail:0   fail:0   skip:33  
time:427s
fi-kbl-7500u total:288  pass:263  dwarn:1   dfail:0   fail:0   skip:24  
time:481s
fi-kbl-7560u total:288  pass:268  dwarn:1   dfail:0   fail:0   skip:19  
time:522s
fi-kbl-7567u total:288  pass:268  dwarn:0   dfail:0   fail:0   skip:20  
time:470s
fi-kbl-r total:288  pass:260  dwarn:1   dfail:0   fail:0   skip:27  
time:529s
fi-pnv-d510  total:288  pass:221  dwarn:1   dfail:0   fail:1   skip:65  
time:597s
fi-skl-6260u total:288  pass:268  dwarn:0   dfail:0   fail:0   skip:20  
time:449s
fi-skl-6600u total:288  pass:260  dwarn:1   dfail:0   fail:0   skip:27  
time:535s
fi-skl-6700hqtotal:288  pass:262  dwarn:0   dfail:0   fail:0   skip:26  
time:559s
fi-skl-6770hqtotal:288  pass:268  dwarn:0   dfail:0   fail:0   skip:20  
time:494s
fi-skl-gvtdvmtotal:288  pass:265  dwarn:0   dfail:0   fail:0   skip:23  
time:445s
fi-snb-2520m total:288  pass:248  dwarn:0   dfail:0   fail:0   skip:40  
time:549s
fi-snb-2600  total:288  pass:248  dwarn:0   dfail:0   fail:0   skip:40  
time:417s
Blacklisted hosts:
fi-cfl-s2total:288  pass:262  dwarn:0   dfail:0   fail:0   skip:26  
time:601s
fi-glk-dsi   total:288  pass:176  dwarn:1   dfail:4   fail:0 

[Intel-gfx] ✗ Fi.CI.IGT: failure for lib/sysfs: Handle EINTR from vfprintf()

2017-12-14 Thread Patchwork
== Series Details ==

Series: lib/sysfs: Handle EINTR from vfprintf()
URL   : https://patchwork.freedesktop.org/series/35378/
State : failure

== Summary ==

Test gem_exec_reloc:
Subgroup basic-wc-active:
pass   -> FAIL   (shard-hsw)
Test kms_plane:
Subgroup plane-panning-bottom-right-pipe-b-planes:
pass   -> INCOMPLETE (shard-hsw)
Test drv_module_reload:
Subgroup basic-reload-inject:
pass   -> DMESG-WARN (shard-snb) fdo#102707
Test kms_cursor_crc:
Subgroup cursor-128x128-suspend:
pass   -> INCOMPLETE (shard-hsw) fdo#103375 +1
Test gem_tiled_pread_basic:
incomplete -> PASS   (shard-hsw) fdo#104218 +1

fdo#102707 https://bugs.freedesktop.org/show_bug.cgi?id=102707
fdo#103375 https://bugs.freedesktop.org/show_bug.cgi?id=103375
fdo#104218 https://bugs.freedesktop.org/show_bug.cgi?id=104218

shard-hswtotal:2567 pass:1449 dwarn:1   dfail:0   fail:10  skip:1105 
time:8981s
shard-snbtotal:2712 pass:1307 dwarn:2   dfail:0   fail:12  skip:1391 
time:8054s
Blacklisted hosts:
shard-apltotal:2690 pass:1658 dwarn:2   dfail:0   fail:27  skip:1002 
time:13485s
shard-kbltotal:2712 pass:1799 dwarn:3   dfail:0   fail:31  skip:879 
time:10978s

== Logs ==

For more details see: 
https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_673/shards.html
___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


Re: [Intel-gfx] [PATCH igt] lib: Provide a library function to test nop execution

2017-12-14 Thread Antonio Argenziano



On 14/12/17 14:24, Chris Wilson wrote:

Sometimes a test wants to verify that an engine, or all of them, are
functional by executing a nop batch. Provide a common routine to submit
an empty batch then test whether the driver is wedged.

Reported-by: Antonio Argenziano 
Signed-off-by: Chris Wilson 
Cc: Antonio Argenziano 


LGTM.

Reviewed-by: Antonio Argenziano 

-Antonio
___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


Re: [Intel-gfx] [PATCH i-g-t] tests/gem_eio: Fix usage of gem_quiescent_gpu

2017-12-14 Thread Chris Wilson
Quoting Antonio Argenziano (2017-12-14 22:01:31)
> After change "lib: Ask the kernel to quiesce the GPU" was merged,
> gem_quiescent_gpu() would not submit noop batches to all engines
> therefore the test should submit the workload and use the library
> function to wait for the workload to complete.
> 
> Cc: Chris Wilson 
> Cc: Mika Kuoppala 
> Cc: Joonas Lahtinen 
> Signed-off-by: Antonio Argenziano 
> ---
>  tests/gem_eio.c | 30 +-
>  1 file changed, 29 insertions(+), 1 deletion(-)
> 
> diff --git a/tests/gem_eio.c b/tests/gem_eio.c
> index 2ac9f0a9..868f2236 100644
> --- a/tests/gem_eio.c
> +++ b/tests/gem_eio.c
> @@ -60,13 +60,41 @@ static bool i915_reset_control(bool enable)
> return ret;
>  }
>  
> +static void noop(int fd, unsigned flags)
> +{
> +   const uint32_t bbe = MI_BATCH_BUFFER_END;
> +   struct drm_i915_gem_execbuffer2 eb;
> +   struct drm_i915_gem_exec_object2 exec;
> +
> +   memset(, 0, sizeof(exec));
> +   exec.handle = gem_create(fd, 4096);
> +   igt_assert((int)exec.handle > 0);

gem_create() provides the checks.
exec.handle is u32, with 0 being the only special invalid value. It just
happens that in the linux implementation it is limited internally by the
idr (but that limit may well be removed). Other implementations may use
a psuedo-random handle generator.
-Chris
___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


[Intel-gfx] ✓ Fi.CI.BAT: success for drm/i915/glk: Disable Guc and HuC on GLK

2017-12-14 Thread Patchwork
== Series Details ==

Series: drm/i915/glk: Disable Guc and HuC on GLK
URL   : https://patchwork.freedesktop.org/series/35381/
State : success

== Summary ==

Series 35381v1 drm/i915/glk: Disable Guc and HuC on GLK
https://patchwork.freedesktop.org/api/1.0/series/35381/revisions/1/mbox/

Test debugfs_test:
Subgroup read_all_entries:
incomplete -> PASS   (fi-snb-2520m) fdo#103713
Test gem_mmap_gtt:
Subgroup basic-small-bo-tiledx:
fail   -> PASS   (fi-gdg-551) fdo#102575
Test gem_sync:
Subgroup basic-each:
skip   -> PASS   (fi-blb-e6850)
Subgroup basic-many-each:
skip   -> PASS   (fi-blb-e6850)
Subgroup basic-store-all:
skip   -> PASS   (fi-blb-e6850)
Subgroup basic-store-each:
skip   -> PASS   (fi-blb-e6850)
Test gem_tiled_blits:
Subgroup basic:
skip   -> PASS   (fi-blb-e6850)
Test gem_tiled_fence_blits:
Subgroup basic:
skip   -> PASS   (fi-blb-e6850)
Test gem_wait:
Subgroup basic-busy-all:
skip   -> PASS   (fi-blb-e6850)
Subgroup basic-wait-all:
skip   -> PASS   (fi-blb-e6850)
Subgroup basic-await-all:
skip   -> PASS   (fi-blb-e6850)
Test kms_busy:
Subgroup basic-flip-a:
skip   -> PASS   (fi-blb-e6850)
pass   -> DMESG-WARN (fi-elk-e7500) fdo#103989
Subgroup basic-flip-b:
skip   -> PASS   (fi-blb-e6850)
Test kms_cursor_legacy:
Subgroup basic-busy-flip-before-cursor-legacy:
skip   -> PASS   (fi-blb-e6850)
Test kms_pipe_crc_basic:
Subgroup suspend-read-crc-pipe-a:
pass   -> DMESG-WARN (fi-kbl-r) fdo#104172 +1

fdo#103713 https://bugs.freedesktop.org/show_bug.cgi?id=103713
fdo#102575 https://bugs.freedesktop.org/show_bug.cgi?id=102575
fdo#103989 https://bugs.freedesktop.org/show_bug.cgi?id=103989
fdo#104172 https://bugs.freedesktop.org/show_bug.cgi?id=104172

fi-bdw-5557u total:288  pass:267  dwarn:0   dfail:0   fail:0   skip:21  
time:435s
fi-bdw-gvtdvmtotal:288  pass:264  dwarn:0   dfail:0   fail:0   skip:24  
time:445s
fi-blb-e6850 total:288  pass:222  dwarn:1   dfail:1   fail:0   skip:64  
time:393s
fi-bsw-n3050 total:288  pass:242  dwarn:0   dfail:0   fail:0   skip:46  
time:505s
fi-bwr-2160  total:288  pass:183  dwarn:0   dfail:0   fail:0   skip:105 
time:278s
fi-bxt-dsi   total:288  pass:258  dwarn:0   dfail:0   fail:0   skip:30  
time:495s
fi-bxt-j4205 total:288  pass:259  dwarn:0   dfail:0   fail:0   skip:29  
time:496s
fi-byt-j1900 total:288  pass:253  dwarn:0   dfail:0   fail:0   skip:35  
time:488s
fi-byt-n2820 total:288  pass:249  dwarn:0   dfail:0   fail:0   skip:39  
time:475s
fi-elk-e7500 total:224  pass:163  dwarn:14  dfail:1   fail:0   skip:45 
fi-gdg-551   total:288  pass:179  dwarn:1   dfail:0   fail:0   skip:108 
time:264s
fi-glk-1 total:288  pass:260  dwarn:0   dfail:0   fail:0   skip:28  
time:530s
fi-hsw-4770  total:288  pass:261  dwarn:0   dfail:0   fail:0   skip:27  
time:417s
fi-hsw-4770r total:288  pass:261  dwarn:0   dfail:0   fail:0   skip:27  
time:414s
fi-ilk-650   total:288  pass:228  dwarn:0   dfail:0   fail:0   skip:60  
time:393s
fi-ivb-3520m total:288  pass:259  dwarn:0   dfail:0   fail:0   skip:29  
time:478s
fi-ivb-3770  total:288  pass:255  dwarn:0   dfail:0   fail:0   skip:33  
time:428s
fi-kbl-7500u total:288  pass:263  dwarn:1   dfail:0   fail:0   skip:24  
time:479s
fi-kbl-7560u total:288  pass:268  dwarn:1   dfail:0   fail:0   skip:19  
time:519s
fi-kbl-7567u total:288  pass:268  dwarn:0   dfail:0   fail:0   skip:20  
time:473s
fi-kbl-r total:288  pass:260  dwarn:1   dfail:0   fail:0   skip:27  
time:526s
fi-pnv-d510  total:288  pass:221  dwarn:1   dfail:0   fail:1   skip:65  
time:590s
fi-skl-6260u total:288  pass:268  dwarn:0   dfail:0   fail:0   skip:20  
time:453s
fi-skl-6600u total:288  pass:260  dwarn:1   dfail:0   fail:0   skip:27  
time:538s
fi-skl-6700hqtotal:288  pass:261  dwarn:1   dfail:0   fail:0   skip:26  
time:558s
fi-skl-6770hqtotal:288  pass:268  dwarn:0   dfail:0   fail:0   skip:20  
time:492s
fi-skl-gvtdvmtotal:288  pass:265  dwarn:0   dfail:0   fail:0   skip:23  
time:450s
fi-snb-2520m total:288  pass:248  dwarn:0   dfail:0   fail:0   skip:40  
time:547s
fi-snb-2600  total:288  pass:248  dwarn:0   dfail:0   fail:0   skip:40  
time:422s
Blacklisted hosts:
fi-cfl-s2total:288  pass:262  dwarn:0   dfail:0   fail:0   skip:26  
time:591s
fi-glk-dsi   total:288  pass:257  dwarn:0   dfail:0   fail:1   skip:30  
time:490s
fi-cnl-y failed to connect after reboot

ad43db157c69bf7311ba5a0278f282796242f34a drm-tip: 2017y-12m-14d-20h-09m-53s 

Re: [Intel-gfx] [PATCH] drm/i915/glk: Disable Guc and HuC on GLK

2017-12-14 Thread Srivatsa, Anusha


>-Original Message-
>From: Wajdeczko, Michal
>Sent: Thursday, December 14, 2017 2:18 PM
>To: intel-gfx@lists.freedesktop.org; Srivatsa, Anusha
>
>Cc: Vivi, Rodrigo 
>Subject: Re: [Intel-gfx] [PATCH] drm/i915/glk: Disable Guc and HuC on GLK
>
>On Thu, 14 Dec 2017 22:58:37 +0100, Anusha Srivatsa
> wrote:
>
>> Since the firmwares are released yet to public repo, disable them on
>> Geminilake.
>>
>> Cc: Rodrigo Vivi 
>> Signed-off-by: Anusha Srivatsa 
>> ---
>>  drivers/gpu/drm/i915/i915_pci.c | 5 +
>>  1 file changed, 5 insertions(+)
>>
>> diff --git a/drivers/gpu/drm/i915/i915_pci.c
>> b/drivers/gpu/drm/i915/i915_pci.c index fa67d3d..ddf7530 100644
>> --- a/drivers/gpu/drm/i915/i915_pci.c
>> +++ b/drivers/gpu/drm/i915/i915_pci.c
>> @@ -521,6 +521,11 @@ static const struct intel_device_info
>> intel_geminilake_info __initconst = {
>>  GEN9_LP_FEATURES,
>>  .platform = INTEL_GEMINILAKE,
>>  .ddb_size = 1024,
>> +/* FIXME Geminilake supports GuC but currently firmwares
>> + * have not made it to public repo. Lets disable the support
>> + * as a temporary fix.
>> + */
>> +.has_guc = 0,
>
>Maybe better place to put this fix is __get_platform_enable_guc() like in [1] 
>[1]
>https://patchwork.freedesktop.org/patch/192006/

Michal,
 Hmm the reference patch  is controlling guc/huc through  a module parameter 
but wont the above approach be neater platform wise? 

Anusha 
>diff --git a/drivers/gpu/drm/i915/intel_uc.c b/drivers/gpu/drm/i915/intel_uc.c
>index 49bccc9..22b0afe 100644
>--- a/drivers/gpu/drm/i915/intel_uc.c
>+++ b/drivers/gpu/drm/i915/intel_uc.c
>@@ -60,6 +60,8 @@ static int __get_platform_enable_guc(struct
>drm_i915_private *dev_priv)
>   enable_guc |= ENABLE_GUC_LOAD_HUC;
>
>   /* Any platform specific fine-tuning can be done here */
>+  if (IS_GEMINILAKE(dev_priv))
>+  enable_guc = 0; /* no firmware on CI machines */
>
>   return enable_guc;
>  }
>
>
>>  GLK_COLORS,
>>  };
___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


[Intel-gfx] [PATCH igt] lib: Provide a library function to test nop execution

2017-12-14 Thread Chris Wilson
Sometimes a test wants to verify that an engine, or all of them, are
functional by executing a nop batch. Provide a common routine to submit
an empty batch then test whether the driver is wedged.

Reported-by: Antonio Argenziano 
Signed-off-by: Chris Wilson 
Cc: Antonio Argenziano 
---
 lib/i915/gem_submission.c | 49 +++
 lib/i915/gem_submission.h |  2 ++
 tests/gem_eio.c   |  2 +-
 tests/pm_rpm.c|  2 +-
 4 files changed, 53 insertions(+), 2 deletions(-)

diff --git a/lib/i915/gem_submission.c b/lib/i915/gem_submission.c
index 1414c7138..e27ea9ec3 100644
--- a/lib/i915/gem_submission.c
+++ b/lib/i915/gem_submission.c
@@ -21,14 +21,18 @@
  * IN THE SOFTWARE.
  */
 
+#include 
 #include 
 #include 
 
 #include 
 
 #include "igt_core.h"
+#include "igt_gt.h"
 #include "igt_sysfs.h"
 #include "intel_chipset.h"
+#include "intel_reg.h"
+#include "ioctl_wrappers.h"
 
 #include "i915/gem_submission.h"
 
@@ -159,3 +163,48 @@ bool gem_has_guc_submission(int fd)
 {
return gem_submission_method(fd) & GEM_SUBMISSION_GUC;
 }
+
+static bool is_wedged(int i915)
+{
+   int err = 0;
+   if (ioctl(i915, DRM_IOCTL_I915_GEM_THROTTLE))
+   err = -errno;
+   return err == -EIO;
+}
+
+/**
+ * gem_test_engine:
+ * @i915: open i915 drm file descriptor
+ * @engine: the engine (I915_EXEC_RING id) to exercise
+ *
+ * Execute a nop batch on the specified, or -1 for all, and check it
+ * executes.
+ */
+void gem_test_engine(int i915, unsigned int engine)
+{
+   const uint32_t bbe = MI_BATCH_BUFFER_END;
+   struct drm_i915_gem_exec_object2 obj = {
+   .handle = gem_create(i915, 4096)
+   };
+   struct drm_i915_gem_execbuffer2 execbuf = {
+   .buffers_ptr = to_user_pointer(),
+   .buffer_count = 1,
+   };
+
+   igt_assert(!is_wedged(i915));
+   gem_write(i915, obj.handle, 0, , sizeof(bbe));
+
+   if (engine == -1u) {
+   for_each_engine(i915, engine) {
+   execbuf.flags = engine;
+   gem_execbuf(i915, );
+   }
+   } else {
+   execbuf.flags = engine;
+   gem_execbuf(i915, );
+   }
+   gem_sync(i915, obj.handle);
+   gem_close(i915, obj.handle);
+
+   igt_assert(!is_wedged(i915));
+}
diff --git a/lib/i915/gem_submission.h b/lib/i915/gem_submission.h
index 4f588aec7..6b39a0532 100644
--- a/lib/i915/gem_submission.h
+++ b/lib/i915/gem_submission.h
@@ -33,4 +33,6 @@ bool gem_has_semaphores(int fd);
 bool gem_has_execlists(int fd);
 bool gem_has_guc_submission(int fd);
 
+void gem_test_engine(int fd, unsigned int engine);
+
 #endif /* GEM_SUBMISSION_H */
diff --git a/tests/gem_eio.c b/tests/gem_eio.c
index 2ac9f0a96..6d5a10f26 100644
--- a/tests/gem_eio.c
+++ b/tests/gem_eio.c
@@ -66,7 +66,7 @@ static void trigger_reset(int fd)
 
/* And just check the gpu is indeed running again */
igt_debug("Checking that the GPU recovered\n");
-   gem_quiescent_gpu(fd);
+   gem_test_engine(fd, -1);
 }
 
 static void wedge_gpu(int fd)
diff --git a/tests/pm_rpm.c b/tests/pm_rpm.c
index fb26e384e..d2a6705e1 100644
--- a/tests/pm_rpm.c
+++ b/tests/pm_rpm.c
@@ -1277,7 +1277,7 @@ static void gem_idle_subtest(void)
 
sleep(5);
 
-   gem_quiescent_gpu(drm_fd);
+   gem_test_engine(drm_fd, -1);
 }
 
 static void gem_evict_pwrite_subtest(void)
-- 
2.15.1

___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


[Intel-gfx] ✗ Fi.CI.BAT: failure for HAX (rev2)

2017-12-14 Thread Patchwork
== Series Details ==

Series: HAX (rev2)
URL   : https://patchwork.freedesktop.org/series/35377/
State : failure

== Summary ==

IGT patchset tested on top of latest successful build
103af7286e2d1014e3d7126691fe046ab2c9f73e lib: Ask the kernel to quiesce the GPU

with latest DRM-Tip kernel build CI_DRM_3521
ad43db157c69 drm-tip: 2017y-12m-14d-20h-09m-53s UTC integration manifest

No testlist changes.

Test debugfs_test:
Subgroup read_all_entries:
dmesg-fail -> DMESG-WARN (fi-elk-e7500) fdo#103989 +1
incomplete -> PASS   (fi-snb-2520m) fdo#103713
Test gem_sync:
Subgroup basic-each:
skip   -> PASS   (fi-blb-e6850)
Subgroup basic-many-each:
skip   -> PASS   (fi-blb-e6850)
Subgroup basic-store-all:
skip   -> PASS   (fi-blb-e6850)
Subgroup basic-store-each:
skip   -> PASS   (fi-blb-e6850)
Test gem_tiled_blits:
Subgroup basic:
skip   -> PASS   (fi-blb-e6850)
Test gem_tiled_fence_blits:
Subgroup basic:
skip   -> PASS   (fi-blb-e6850)
Test gem_wait:
Subgroup basic-busy-all:
skip   -> PASS   (fi-blb-e6850)
Subgroup basic-wait-all:
skip   -> PASS   (fi-blb-e6850)
Subgroup basic-await-all:
skip   -> PASS   (fi-blb-e6850)
Test kms_busy:
Subgroup basic-flip-a:
skip   -> PASS   (fi-blb-e6850)
Subgroup basic-flip-b:
skip   -> PASS   (fi-blb-e6850)
Test kms_cursor_legacy:
Subgroup basic-busy-flip-before-cursor-legacy:
skip   -> PASS   (fi-blb-e6850)
Test kms_pipe_crc_basic:
Subgroup bad-pipe:
pass   -> INCOMPLETE (fi-bxt-dsi)
Subgroup bad-source:
pass   -> INCOMPLETE (fi-bsw-n3050)
Subgroup hang-read-crc-pipe-a:
pass   -> INCOMPLETE (fi-skl-6260u)
pass   -> INCOMPLETE (fi-skl-6770hq)
Subgroup hang-read-crc-pipe-b:
pass   -> INCOMPLETE (fi-bxt-j4205)
Subgroup nonblocking-crc-pipe-b:
pass   -> INCOMPLETE (fi-kbl-7560u)
Subgroup nonblocking-crc-pipe-c:
pass   -> INCOMPLETE (fi-skl-gvtdvm)
Subgroup nonblocking-crc-pipe-c-frame-sequence:
pass   -> INCOMPLETE (fi-skl-6600u)
pass   -> INCOMPLETE (fi-skl-6700hq) fdo#101144
pass   -> INCOMPLETE (fi-kbl-7567u)
Subgroup read-crc-pipe-a:
notrun -> INCOMPLETE (fi-snb-2520m)
Subgroup read-crc-pipe-a-frame-sequence:
pass   -> INCOMPLETE (fi-bdw-gvtdvm)
Subgroup read-crc-pipe-b:
pass   -> INCOMPLETE (fi-bdw-5557u)
pass   -> INCOMPLETE (fi-glk-1)
Subgroup read-crc-pipe-c-frame-sequence:
skip   -> INCOMPLETE (fi-byt-j1900)
pass   -> INCOMPLETE (fi-kbl-7500u)
Subgroup suspend-read-crc-pipe-a:
pass   -> INCOMPLETE (fi-byt-n2820)
pass   -> INCOMPLETE (fi-kbl-r) fdo#104172
Test pm_rpm:
Subgroup basic-pci-d3-state:
skip   -> INCOMPLETE (fi-ivb-3520m)
Subgroup basic-rte:
skip   -> INCOMPLETE (fi-snb-2600)
Test pm_rps:
Subgroup basic-api:
pass   -> INCOMPLETE (fi-hsw-4770r)
Test prime_busy:
Subgroup basic-before-default:
pass   -> INCOMPLETE (fi-hsw-4770)
Subgroup basic-wait-before-default:
pass   -> INCOMPLETE (fi-ilk-650)
Test prime_self_import:
Subgroup basic-llseek-bad:
pass   -> INCOMPLETE (fi-ivb-3770)
Test prime_vgem:
Subgroup basic-wait-default:
pass   -> INCOMPLETE (fi-blb-e6850)

fdo#103989 https://bugs.freedesktop.org/show_bug.cgi?id=103989
fdo#103713 https://bugs.freedesktop.org/show_bug.cgi?id=103713
fdo#101144 https://bugs.freedesktop.org/show_bug.cgi?id=101144
fdo#104172 https://bugs.freedesktop.org/show_bug.cgi?id=104172

fi-bdw-5557u total:240  pass:222  dwarn:0   dfail:0   fail:0   skip:17 
fi-bdw-gvtdvmtotal:239  pass:220  dwarn:0   dfail:0   fail:0   skip:18 
fi-blb-e6850 total:272  pass:206  dwarn:1   dfail:1   fail:0   skip:63 
fi-bsw-n3050 total:228  pass:198  dwarn:0   dfail:0   fail:0   skip:29 
fi-bwr-2160  total:288  pass:183  dwarn:0   dfail:0   fail:0   skip:105 
time:847s
fi-bxt-dsi   total:227  pass:200  dwarn:0   dfail:0   fail:0   skip:26 
fi-bxt-j4205 total:230  pass:204  dwarn:0   dfail:0   fail:0   skip:25 
fi-byt-j1900 total:243  pass:213  dwarn:0   dfail:0   fail:0   skip:29 
fi-byt-n2820 total:244  pass:209  dwarn:0   dfail:0   fail:0   skip:34 
fi-elk-e7500 

[Intel-gfx] ✓ Fi.CI.IGT: success for bunch of drm kernel-doc patches

2017-12-14 Thread Patchwork
== Series Details ==

Series: bunch of drm kernel-doc patches
URL   : https://patchwork.freedesktop.org/series/35375/
State : success

== Summary ==

Test kms_flip:
Subgroup vblank-vs-suspend:
incomplete -> PASS   (shard-hsw) fdo#103375
Test kms_setmode:
Subgroup basic:
fail   -> PASS   (shard-hsw) fdo#99912
Test gem_tiled_swapping:
Subgroup non-threaded:
dmesg-warn -> INCOMPLETE (shard-hsw) fdo#104218
Test kms_frontbuffer_tracking:
Subgroup fbc-1p-offscren-pri-shrfb-draw-render:
fail   -> PASS   (shard-snb) fdo#101623

fdo#103375 https://bugs.freedesktop.org/show_bug.cgi?id=103375
fdo#99912 https://bugs.freedesktop.org/show_bug.cgi?id=99912
fdo#104218 https://bugs.freedesktop.org/show_bug.cgi?id=104218
fdo#101623 https://bugs.freedesktop.org/show_bug.cgi?id=101623

shard-hswtotal:2645 pass:1495 dwarn:1   dfail:0   fail:9   skip:1139 
time:9165s
shard-snbtotal:2712 pass:1309 dwarn:1   dfail:0   fail:11  skip:1391 
time:8035s
Blacklisted hosts:
shard-apltotal:2712 pass:1682 dwarn:1   dfail:0   fail:27  skip:1001 
time:13939s
shard-kbltotal:2712 pass:1801 dwarn:1   dfail:0   fail:32  skip:878 
time:10997s

== Logs ==

For more details see: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_7497/shards.html
___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


Re: [Intel-gfx] [PATCH] drm/i915/glk: Disable Guc and HuC on GLK

2017-12-14 Thread Michal Wajdeczko
On Thu, 14 Dec 2017 22:58:37 +0100, Anusha Srivatsa  
 wrote:



Since the firmwares are released yet to public repo,
disable them on Geminilake.

Cc: Rodrigo Vivi 
Signed-off-by: Anusha Srivatsa 
---
 drivers/gpu/drm/i915/i915_pci.c | 5 +
 1 file changed, 5 insertions(+)

diff --git a/drivers/gpu/drm/i915/i915_pci.c  
b/drivers/gpu/drm/i915/i915_pci.c

index fa67d3d..ddf7530 100644
--- a/drivers/gpu/drm/i915/i915_pci.c
+++ b/drivers/gpu/drm/i915/i915_pci.c
@@ -521,6 +521,11 @@ static const struct intel_device_info  
intel_geminilake_info __initconst = {

GEN9_LP_FEATURES,
.platform = INTEL_GEMINILAKE,
.ddb_size = 1024,
+   /* FIXME Geminilake supports GuC but currently firmwares
+* have not made it to public repo. Lets disable the support
+* as a temporary fix.
+*/
+   .has_guc = 0,


Maybe better place to put this fix is __get_platform_enable_guc() like in  
[1]

[1] https://patchwork.freedesktop.org/patch/192006/

diff --git a/drivers/gpu/drm/i915/intel_uc.c  
b/drivers/gpu/drm/i915/intel_uc.c

index 49bccc9..22b0afe 100644
--- a/drivers/gpu/drm/i915/intel_uc.c
+++ b/drivers/gpu/drm/i915/intel_uc.c
@@ -60,6 +60,8 @@ static int __get_platform_enable_guc(struct  
drm_i915_private *dev_priv)

enable_guc |= ENABLE_GUC_LOAD_HUC;

/* Any platform specific fine-tuning can be done here */
+   if (IS_GEMINILAKE(dev_priv))
+   enable_guc = 0; /* no firmware on CI machines */

return enable_guc;
 }



GLK_COLORS,
 };

___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


Re: [Intel-gfx] [PATCH] drm/i915/lpe: Remove double-encapsulation of info string

2017-12-14 Thread Pandiyan, Dhinakaran
On Wed, 2017-12-13 at 18:28 +, Chris Wilson wrote:
> Just printk the string, or at least do not double up on the newlines!
> 

Reviewed-by: Dhinakaran Pandiyan 

> Fixes: eef57324d926 ("drm/i915: setup bridge for HDMI LPE audio driver")
> Signed-off-by: Chris Wilson 
> Cc: Pierre-Louis Bossart 
> Cc: Jerome Anand 
> Cc: Jani Nikula 
> Cc: Takashi Iwai 
> ---
>  drivers/gpu/drm/i915/intel_lpe_audio.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/drivers/gpu/drm/i915/intel_lpe_audio.c 
> b/drivers/gpu/drm/i915/intel_lpe_audio.c
> index 3bf65288..5809b29044fc 100644
> --- a/drivers/gpu/drm/i915/intel_lpe_audio.c
> +++ b/drivers/gpu/drm/i915/intel_lpe_audio.c
> @@ -193,7 +193,7 @@ static bool lpe_audio_detect(struct drm_i915_private 
> *dev_priv)
>   };
>  
>   if (!pci_dev_present(atom_hdaudio_ids)) {
> - DRM_INFO("%s\n", "HDaudio controller not detected, 
> using LPE audio instead\n");
> + DRM_INFO("HDaudio controller not detected, using LPE 
> audio instead\n");
>   lpe_present = true;
>   }
>   }
___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


[Intel-gfx] [PATCH i-g-t] tests/gem_eio: Fix usage of gem_quiescent_gpu

2017-12-14 Thread Antonio Argenziano
After change "lib: Ask the kernel to quiesce the GPU" was merged,
gem_quiescent_gpu() would not submit noop batches to all engines
therefore the test should submit the workload and use the library
function to wait for the workload to complete.

Cc: Chris Wilson 
Cc: Mika Kuoppala 
Cc: Joonas Lahtinen 
Signed-off-by: Antonio Argenziano 
---
 tests/gem_eio.c | 30 +-
 1 file changed, 29 insertions(+), 1 deletion(-)

diff --git a/tests/gem_eio.c b/tests/gem_eio.c
index 2ac9f0a9..868f2236 100644
--- a/tests/gem_eio.c
+++ b/tests/gem_eio.c
@@ -60,13 +60,41 @@ static bool i915_reset_control(bool enable)
return ret;
 }
 
+static void noop(int fd, unsigned flags)
+{
+   const uint32_t bbe = MI_BATCH_BUFFER_END;
+   struct drm_i915_gem_execbuffer2 eb;
+   struct drm_i915_gem_exec_object2 exec;
+
+   memset(, 0, sizeof(exec));
+   exec.handle = gem_create(fd, 4096);
+   igt_assert((int)exec.handle > 0);
+   gem_write(fd, exec.handle, 0, , sizeof(bbe));
+
+   memset(, 0, sizeof(eb));
+   eb.buffers_ptr = to_user_pointer();
+   eb.buffer_count = 1;
+   eb.flags = flags;
+
+   gem_execbuf(fd, );
+}
+
+static voidnoop_all_engines(int fd)
+{
+   unsigned engine;
+   for_each_engine(fd, engine)
+   noop(fd, engine);
+
+   gem_quiescent_gpu(fd);
+}
+
 static void trigger_reset(int fd)
 {
igt_force_gpu_reset(fd);
 
/* And just check the gpu is indeed running again */
igt_debug("Checking that the GPU recovered\n");
-   gem_quiescent_gpu(fd);
+   noop_all_engines(fd);
 }
 
 static void wedge_gpu(int fd)
-- 
2.14.2

___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


[Intel-gfx] ✓ Fi.CI.BAT: success for igt/tools_test: Check the tools exist before executing (rev3)

2017-12-14 Thread Patchwork
== Series Details ==

Series: igt/tools_test: Check the tools exist before executing (rev3)
URL   : https://patchwork.freedesktop.org/series/35237/
State : success

== Summary ==

IGT patchset tested on top of latest successful build
103af7286e2d1014e3d7126691fe046ab2c9f73e lib: Ask the kernel to quiesce the GPU

with latest DRM-Tip kernel build CI_DRM_3521
ad43db157c69 drm-tip: 2017y-12m-14d-20h-09m-53s UTC integration manifest

No testlist changes.

Test debugfs_test:
Subgroup read_all_entries:
dmesg-fail -> DMESG-WARN (fi-elk-e7500) fdo#103989 +1
incomplete -> PASS   (fi-snb-2520m) fdo#103713
Test gem_sync:
Subgroup basic-each:
skip   -> PASS   (fi-blb-e6850)
Subgroup basic-many-each:
skip   -> PASS   (fi-blb-e6850)
Subgroup basic-store-all:
skip   -> PASS   (fi-blb-e6850)
Subgroup basic-store-each:
skip   -> PASS   (fi-blb-e6850)
Test gem_tiled_blits:
Subgroup basic:
skip   -> PASS   (fi-blb-e6850)
Test gem_tiled_fence_blits:
Subgroup basic:
skip   -> PASS   (fi-blb-e6850)
Test gem_wait:
Subgroup basic-busy-all:
skip   -> PASS   (fi-blb-e6850)
Subgroup basic-wait-all:
skip   -> PASS   (fi-blb-e6850)
Subgroup basic-await-all:
skip   -> PASS   (fi-blb-e6850)
Test kms_busy:
Subgroup basic-flip-a:
skip   -> PASS   (fi-blb-e6850)
Subgroup basic-flip-b:
skip   -> PASS   (fi-blb-e6850)
Test kms_cursor_legacy:
Subgroup basic-busy-flip-before-cursor-legacy:
skip   -> PASS   (fi-blb-e6850)
Test kms_psr_sink_crc:
Subgroup psr_basic:
dmesg-warn -> PASS   (fi-skl-6700hq) fdo#101144

fdo#103989 https://bugs.freedesktop.org/show_bug.cgi?id=103989
fdo#103713 https://bugs.freedesktop.org/show_bug.cgi?id=103713
fdo#101144 https://bugs.freedesktop.org/show_bug.cgi?id=101144

fi-bdw-5557u total:288  pass:267  dwarn:0   dfail:0   fail:0   skip:21  
time:437s
fi-bdw-gvtdvmtotal:288  pass:264  dwarn:0   dfail:0   fail:0   skip:24  
time:440s
fi-blb-e6850 total:288  pass:222  dwarn:1   dfail:1   fail:0   skip:64  
time:395s
fi-bsw-n3050 total:288  pass:242  dwarn:0   dfail:0   fail:0   skip:46  
time:518s
fi-bwr-2160  total:288  pass:183  dwarn:0   dfail:0   fail:0   skip:105 
time:281s
fi-bxt-dsi   total:288  pass:258  dwarn:0   dfail:0   fail:0   skip:30  
time:500s
fi-bxt-j4205 total:288  pass:259  dwarn:0   dfail:0   fail:0   skip:29  
time:502s
fi-byt-j1900 total:288  pass:253  dwarn:0   dfail:0   fail:0   skip:35  
time:486s
fi-byt-n2820 total:288  pass:249  dwarn:0   dfail:0   fail:0   skip:39  
time:469s
fi-elk-e7500 total:224  pass:163  dwarn:15  dfail:0   fail:0   skip:45 
fi-gdg-551   total:288  pass:178  dwarn:1   dfail:0   fail:1   skip:108 
time:266s
fi-glk-1 total:288  pass:260  dwarn:0   dfail:0   fail:0   skip:28  
time:533s
fi-hsw-4770  total:288  pass:261  dwarn:0   dfail:0   fail:0   skip:27  
time:408s
fi-hsw-4770r total:288  pass:261  dwarn:0   dfail:0   fail:0   skip:27  
time:415s
fi-ilk-650   total:288  pass:228  dwarn:0   dfail:0   fail:0   skip:60  
time:394s
fi-ivb-3520m total:288  pass:259  dwarn:0   dfail:0   fail:0   skip:29  
time:477s
fi-ivb-3770  total:288  pass:255  dwarn:0   dfail:0   fail:0   skip:33  
time:428s
fi-kbl-7500u total:288  pass:263  dwarn:1   dfail:0   fail:0   skip:24  
time:481s
fi-kbl-7560u total:288  pass:268  dwarn:1   dfail:0   fail:0   skip:19  
time:524s
fi-kbl-7567u total:288  pass:268  dwarn:0   dfail:0   fail:0   skip:20  
time:467s
fi-kbl-r total:288  pass:260  dwarn:1   dfail:0   fail:0   skip:27  
time:521s
fi-pnv-d510  total:288  pass:221  dwarn:1   dfail:0   fail:1   skip:65  
time:602s
fi-skl-6260u total:288  pass:268  dwarn:0   dfail:0   fail:0   skip:20  
time:443s
fi-skl-6600u total:288  pass:260  dwarn:1   dfail:0   fail:0   skip:27  
time:532s
fi-skl-6700hqtotal:288  pass:262  dwarn:0   dfail:0   fail:0   skip:26  
time:556s
fi-skl-6770hqtotal:288  pass:268  dwarn:0   dfail:0   fail:0   skip:20  
time:491s
fi-skl-gvtdvmtotal:288  pass:265  dwarn:0   dfail:0   fail:0   skip:23  
time:451s
fi-snb-2520m total:288  pass:248  dwarn:0   dfail:0   fail:0   skip:40  
time:554s
fi-snb-2600  total:288  pass:248  dwarn:0   dfail:0   fail:0   skip:40  
time:416s
Blacklisted hosts:
fi-cfl-s2total:288  pass:262  dwarn:0   dfail:0   fail:0   skip:26  
time:604s
fi-glk-dsi   total:288  pass:258  dwarn:0   dfail:0   fail:0   skip:30  
time:480s

== Logs ==

For more details see: 
https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_674/issues.html
___

[Intel-gfx] [PATCH] drm/i915/glk: Disable Guc and HuC on GLK

2017-12-14 Thread Anusha Srivatsa
Since the firmwares are released yet to public repo,
disable them on Geminilake.

Cc: Rodrigo Vivi 
Signed-off-by: Anusha Srivatsa 
---
 drivers/gpu/drm/i915/i915_pci.c | 5 +
 1 file changed, 5 insertions(+)

diff --git a/drivers/gpu/drm/i915/i915_pci.c b/drivers/gpu/drm/i915/i915_pci.c
index fa67d3d..ddf7530 100644
--- a/drivers/gpu/drm/i915/i915_pci.c
+++ b/drivers/gpu/drm/i915/i915_pci.c
@@ -521,6 +521,11 @@ static const struct intel_device_info 
intel_geminilake_info __initconst = {
GEN9_LP_FEATURES,
.platform = INTEL_GEMINILAKE,
.ddb_size = 1024,
+   /* FIXME Geminilake supports GuC but currently firmwares
+* have not made it to public repo. Lets disable the support
+* as a temporary fix.
+*/
+   .has_guc = 0,
GLK_COLORS,
 };
 
-- 
2.7.4

___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


[Intel-gfx] ✓ Fi.CI.BAT: success for lib/sysfs: Handle EINTR from vfprintf()

2017-12-14 Thread Patchwork
== Series Details ==

Series: lib/sysfs: Handle EINTR from vfprintf()
URL   : https://patchwork.freedesktop.org/series/35378/
State : success

== Summary ==

IGT patchset tested on top of latest successful build
103af7286e2d1014e3d7126691fe046ab2c9f73e lib: Ask the kernel to quiesce the GPU

with latest DRM-Tip kernel build CI_DRM_3521
ad43db157c69 drm-tip: 2017y-12m-14d-20h-09m-53s UTC integration manifest

No testlist changes.

Test debugfs_test:
Subgroup read_all_entries:
dmesg-fail -> PASS   (fi-elk-e7500) fdo#103989 +2
incomplete -> PASS   (fi-snb-2520m) fdo#103713
Test gem_sync:
Subgroup basic-all:
dmesg-fail -> FAIL   (fi-blb-e6850) fdo#104259
Subgroup basic-each:
skip   -> PASS   (fi-blb-e6850)
Subgroup basic-many-each:
skip   -> PASS   (fi-blb-e6850)
Subgroup basic-store-all:
skip   -> PASS   (fi-blb-e6850)
Subgroup basic-store-each:
skip   -> PASS   (fi-blb-e6850)
Test gem_tiled_blits:
Subgroup basic:
skip   -> PASS   (fi-blb-e6850)
Test gem_tiled_fence_blits:
Subgroup basic:
skip   -> PASS   (fi-blb-e6850)
Test gem_wait:
Subgroup basic-busy-all:
skip   -> PASS   (fi-blb-e6850)
Subgroup basic-wait-all:
skip   -> PASS   (fi-blb-e6850)
Subgroup basic-await-all:
skip   -> PASS   (fi-blb-e6850)
Test kms_busy:
Subgroup basic-flip-a:
skip   -> PASS   (fi-blb-e6850)
Subgroup basic-flip-b:
skip   -> PASS   (fi-blb-e6850)
Test kms_cursor_legacy:
Subgroup basic-busy-flip-before-cursor-legacy:
skip   -> PASS   (fi-blb-e6850)
Test kms_pipe_crc_basic:
Subgroup suspend-read-crc-pipe-a:
pass   -> DMESG-WARN (fi-kbl-r) fdo#104172 +1

fdo#103989 https://bugs.freedesktop.org/show_bug.cgi?id=103989
fdo#103713 https://bugs.freedesktop.org/show_bug.cgi?id=103713
fdo#104259 https://bugs.freedesktop.org/show_bug.cgi?id=104259
fdo#104172 https://bugs.freedesktop.org/show_bug.cgi?id=104172

fi-bdw-5557u total:288  pass:267  dwarn:0   dfail:0   fail:0   skip:21  
time:437s
fi-bdw-gvtdvmtotal:288  pass:264  dwarn:0   dfail:0   fail:0   skip:24  
time:443s
fi-blb-e6850 total:288  pass:222  dwarn:1   dfail:0   fail:1   skip:64  
time:387s
fi-bsw-n3050 total:288  pass:242  dwarn:0   dfail:0   fail:0   skip:46  
time:508s
fi-bwr-2160  total:288  pass:183  dwarn:0   dfail:0   fail:0   skip:105 
time:280s
fi-bxt-dsi   total:288  pass:258  dwarn:0   dfail:0   fail:0   skip:30  
time:497s
fi-bxt-j4205 total:288  pass:259  dwarn:0   dfail:0   fail:0   skip:29  
time:497s
fi-byt-j1900 total:288  pass:253  dwarn:0   dfail:0   fail:0   skip:35  
time:484s
fi-byt-n2820 total:288  pass:249  dwarn:0   dfail:0   fail:0   skip:39  
time:476s
fi-elk-e7500 total:224  pass:163  dwarn:15  dfail:0   fail:0   skip:45 
fi-gdg-551   total:288  pass:178  dwarn:1   dfail:0   fail:1   skip:108 
time:264s
fi-glk-1 total:288  pass:260  dwarn:0   dfail:0   fail:0   skip:28  
time:530s
fi-hsw-4770  total:288  pass:261  dwarn:0   dfail:0   fail:0   skip:27  
time:414s
fi-hsw-4770r total:288  pass:261  dwarn:0   dfail:0   fail:0   skip:27  
time:416s
fi-ilk-650   total:288  pass:228  dwarn:0   dfail:0   fail:0   skip:60  
time:398s
fi-ivb-3520m total:288  pass:259  dwarn:0   dfail:0   fail:0   skip:29  
time:481s
fi-ivb-3770  total:288  pass:255  dwarn:0   dfail:0   fail:0   skip:33  
time:425s
fi-kbl-7500u total:288  pass:263  dwarn:1   dfail:0   fail:0   skip:24  
time:478s
fi-kbl-7560u total:288  pass:268  dwarn:1   dfail:0   fail:0   skip:19  
time:520s
fi-kbl-7567u total:288  pass:268  dwarn:0   dfail:0   fail:0   skip:20  
time:470s
fi-kbl-r total:288  pass:260  dwarn:1   dfail:0   fail:0   skip:27  
time:522s
fi-pnv-d510  total:288  pass:221  dwarn:1   dfail:0   fail:1   skip:65  
time:595s
fi-skl-6260u total:288  pass:268  dwarn:0   dfail:0   fail:0   skip:20  
time:446s
fi-skl-6600u total:288  pass:260  dwarn:1   dfail:0   fail:0   skip:27  
time:537s
fi-skl-6700hqtotal:288  pass:261  dwarn:1   dfail:0   fail:0   skip:26  
time:556s
fi-skl-6770hqtotal:288  pass:268  dwarn:0   dfail:0   fail:0   skip:20  
time:496s
fi-skl-gvtdvmtotal:288  pass:265  dwarn:0   dfail:0   fail:0   skip:23  
time:444s
fi-snb-2520m total:288  pass:248  dwarn:0   dfail:0   fail:0   skip:40  
time:554s
fi-snb-2600  total:288  pass:248  dwarn:0   dfail:0   fail:0   skip:40  
time:419s
Blacklisted hosts:
fi-cfl-s2total:288  pass:262  dwarn:0   dfail:0   fail:0   skip:26  
time:588s
fi-cnl-y total:218  pass:197  dwarn:0   dfail:0   fail:0   skip:20 

[Intel-gfx] [PATCH igt] HAX

2017-12-14 Thread Chris Wilson
---
 lib/drmtest.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/lib/drmtest.c b/lib/drmtest.c
index fd11f5f58..567d8d9b4 100644
--- a/lib/drmtest.c
+++ b/lib/drmtest.c
@@ -165,6 +165,7 @@ void gem_quiescent_gpu(int fd)
 
igt_drop_caches_set(fd,
DROP_ACTIVE | DROP_RETIRE | DROP_IDLE | DROP_FREED);
+   sleep(1);
 }
 
 /**
-- 
2.15.1

___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


[Intel-gfx] ✗ Fi.CI.BAT: failure for HAX

2017-12-14 Thread Patchwork
== Series Details ==

Series: HAX
URL   : https://patchwork.freedesktop.org/series/35377/
State : failure

== Summary ==

IGT patchset tested on top of latest successful build
103af7286e2d1014e3d7126691fe046ab2c9f73e lib: Ask the kernel to quiesce the GPU

with latest DRM-Tip kernel build CI_DRM_3521
ad43db157c69 drm-tip: 2017y-12m-14d-20h-09m-53s UTC integration manifest

No testlist changes.

Test debugfs_test:
Subgroup read_all_entries:
dmesg-fail -> DMESG-WARN (fi-elk-e7500) fdo#103989 +1
incomplete -> PASS   (fi-snb-2520m) fdo#103713
Test gem_sync:
Subgroup basic-all:
dmesg-fail -> FAIL   (fi-blb-e6850) fdo#104259
Subgroup basic-each:
skip   -> PASS   (fi-blb-e6850)
Subgroup basic-many-each:
skip   -> PASS   (fi-blb-e6850)
Subgroup basic-store-all:
skip   -> PASS   (fi-blb-e6850)
Subgroup basic-store-each:
skip   -> PASS   (fi-blb-e6850)
Test gem_tiled_blits:
Subgroup basic:
skip   -> PASS   (fi-blb-e6850)
Test gem_tiled_fence_blits:
Subgroup basic:
skip   -> PASS   (fi-blb-e6850)
Test gem_wait:
Subgroup basic-busy-all:
skip   -> PASS   (fi-blb-e6850)
Subgroup basic-wait-all:
skip   -> PASS   (fi-blb-e6850)
Subgroup basic-await-all:
skip   -> PASS   (fi-blb-e6850)
Test kms_busy:
Subgroup basic-flip-a:
skip   -> PASS   (fi-blb-e6850)
Subgroup basic-flip-b:
skip   -> PASS   (fi-blb-e6850)
Test kms_cursor_legacy:
Subgroup basic-busy-flip-before-cursor-legacy:
skip   -> PASS   (fi-blb-e6850)
Test kms_pipe_crc_basic:
Subgroup hang-read-crc-pipe-a:
skip   -> INCOMPLETE (fi-bsw-n3050)
pass   -> INCOMPLETE (fi-bxt-j4205)
Subgroup hang-read-crc-pipe-c:
pass   -> INCOMPLETE (fi-skl-6770hq)
pass   -> INCOMPLETE (fi-bxt-dsi)
Subgroup nonblocking-crc-pipe-a-frame-sequence:
pass   -> INCOMPLETE (fi-skl-6260u)
Subgroup nonblocking-crc-pipe-b-frame-sequence:
pass   -> INCOMPLETE (fi-kbl-7560u)
Subgroup nonblocking-crc-pipe-c-frame-sequence:
pass   -> INCOMPLETE (fi-skl-gvtdvm)
pass   -> INCOMPLETE (fi-kbl-7567u)
Subgroup read-crc-pipe-a-frame-sequence:
pass   -> INCOMPLETE (fi-bdw-gvtdvm)
pass   -> INCOMPLETE (fi-skl-6600u)
Subgroup read-crc-pipe-b:
notrun -> INCOMPLETE (fi-snb-2520m)
pass   -> INCOMPLETE (fi-skl-6700hq) fdo#101144
pass   -> INCOMPLETE (fi-glk-1)
Subgroup suspend-read-crc-pipe-a:
pass   -> INCOMPLETE (fi-byt-j1900)
pass   -> INCOMPLETE (fi-bdw-5557u) fdo#104057
pass   -> DMESG-WARN (fi-kbl-r) fdo#104172 +1
Test pm_backlight:
Subgroup basic-brightness:
pass   -> INCOMPLETE (fi-kbl-r)
Test pm_rpm:
Subgroup basic-pci-d3-state:
skip   -> INCOMPLETE (fi-ivb-3520m)
skip   -> INCOMPLETE (fi-ivb-3770)
Subgroup basic-rte:
pass   -> INCOMPLETE (fi-kbl-7500u)
Test prime_busy:
Subgroup basic-before-default:
pass   -> INCOMPLETE (fi-snb-2600)
Test prime_self_import:
Subgroup basic-llseek-bad:
pass   -> INCOMPLETE (fi-hsw-4770)
Test prime_vgem:
Subgroup basic-busy-default:
pass   -> INCOMPLETE (fi-ilk-650)
Test drv_module_reload:
Subgroup basic-no-display:
pass   -> INCOMPLETE (fi-blb-e6850)

fdo#103989 https://bugs.freedesktop.org/show_bug.cgi?id=103989
fdo#103713 https://bugs.freedesktop.org/show_bug.cgi?id=103713
fdo#104259 https://bugs.freedesktop.org/show_bug.cgi?id=104259
fdo#101144 https://bugs.freedesktop.org/show_bug.cgi?id=101144
fdo#104057 https://bugs.freedesktop.org/show_bug.cgi?id=104057
fdo#104172 https://bugs.freedesktop.org/show_bug.cgi?id=104172

fi-bdw-5557u total:244  pass:226  dwarn:0   dfail:0   fail:0   skip:17 
fi-bdw-gvtdvmtotal:239  pass:220  dwarn:0   dfail:0   fail:0   skip:18 
fi-blb-e6850 total:286  pass:220  dwarn:1   dfail:0   fail:1   skip:63 
fi-bsw-n3050 total:229  pass:199  dwarn:0   dfail:0   fail:0   skip:29 
fi-bwr-2160  total:288  pass:183  dwarn:0   dfail:0   fail:0   skip:105 
time:845s
fi-bxt-dsi   total:231  pass:204  dwarn:0   dfail:0   fail:0   skip:26 
fi-bxt-j4205 total:229  pass:203  dwarn:0   dfail:0   fail:0   skip:25 
fi-byt-j1900 total:244  pass:213  dwarn:0   dfail:0   fail:0   skip:30 

[Intel-gfx] ✗ Fi.CI.IGT: warning for lib/debug: Convert igt_drop_caches_set() to use common file writers

2017-12-14 Thread Patchwork
== Series Details ==

Series: lib/debug: Convert igt_drop_caches_set() to use common file writers
URL   : https://patchwork.freedesktop.org/series/35374/
State : warning

== Summary ==

Test kms_frontbuffer_tracking:
Subgroup fbc-1p-offscren-pri-shrfb-draw-render:
pass   -> FAIL   (shard-snb) fdo#101623
Test gem_tiled_swapping:
Subgroup non-threaded:
pass   -> INCOMPLETE (shard-hsw) fdo#104218
Test kms_cursor_crc:
Subgroup cursor-128x128-rapid-movement:
pass   -> SKIP   (shard-hsw)
Subgroup cursor-64x64-onscreen:
pass   -> SKIP   (shard-hsw)
Test kms_draw_crc:
Subgroup draw-method-xrgb-mmap-cpu-untiled:
pass   -> SKIP   (shard-hsw)
Test kms_atomic_interruptible:
Subgroup legacy-cursor:
pass   -> SKIP   (shard-hsw)
Test kms_flip:
Subgroup flip-vs-panning-vs-hang-interruptible:
dmesg-warn -> PASS   (shard-snb) fdo#103821
Subgroup plain-flip-fb-recreate:
fail   -> PASS   (shard-snb) fdo#100368 +1
Subgroup modeset-vs-vblank-race:
fail   -> PASS   (shard-hsw) fdo#103060
Test kms_plane_lowres:
Subgroup pipe-b-tiling-none:
incomplete -> PASS   (shard-snb)
Test pm_rpm:
Subgroup cursor-dpms:
skip   -> PASS   (shard-hsw)

fdo#101623 https://bugs.freedesktop.org/show_bug.cgi?id=101623
fdo#104218 https://bugs.freedesktop.org/show_bug.cgi?id=104218
fdo#103821 https://bugs.freedesktop.org/show_bug.cgi?id=103821
fdo#100368 https://bugs.freedesktop.org/show_bug.cgi?id=100368
fdo#103060 https://bugs.freedesktop.org/show_bug.cgi?id=103060

shard-hswtotal:2661 pass:1501 dwarn:1   dfail:0   fail:11  skip:1147 
time:8925s
shard-snbtotal:2712 pass:1308 dwarn:1   dfail:0   fail:12  skip:1391 
time:8096s
Blacklisted hosts:
shard-apltotal:2712 pass:1686 dwarn:1   dfail:0   fail:24  skip:1001 
time:13793s
shard-kbltotal:2686 pass:1792 dwarn:1   dfail:0   fail:26  skip:866 
time:10519s

== Logs ==

For more details see: 
https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_671/shards.html
___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


[Intel-gfx] [PATCH igt] lib/sysfs: Handle EINTR from vfprintf()

2017-12-14 Thread Chris Wilson
Some write operations into sysfs may be slow and potentially interrupted
by a signal. So handle EINTR by repeating the vfprintf(). A partial is
reported back to the caller, as is any other error.

Signed-off-by: Chris Wilson 
---
 lib/igt_sysfs.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/lib/igt_sysfs.c b/lib/igt_sysfs.c
index e7c67dae3..030d1c6a5 100644
--- a/lib/igt_sysfs.c
+++ b/lib/igt_sysfs.c
@@ -399,7 +399,9 @@ int igt_sysfs_vprintf(int dir, const char *attr, const char 
*fmt, va_list ap)
 
file = fdopen(fd, "w");
if (file) {
-   ret = vfprintf(file, fmt, ap);
+   do {
+   ret = vfprintf(file, fmt, ap);
+   } while (ret == -1 && errno == EINTR);
fclose(file);
}
close(fd);
-- 
2.15.1

___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


[Intel-gfx] ✓ Fi.CI.BAT: success for bunch of drm kernel-doc patches

2017-12-14 Thread Patchwork
== Series Details ==

Series: bunch of drm kernel-doc patches
URL   : https://patchwork.freedesktop.org/series/35375/
State : success

== Summary ==

Series 35375v1 bunch of drm kernel-doc patches
https://patchwork.freedesktop.org/api/1.0/series/35375/revisions/1/mbox/

Test debugfs_test:
Subgroup read_all_entries:
dmesg-fail -> DMESG-WARN (fi-elk-e7500) fdo#103989
incomplete -> PASS   (fi-snb-2520m) fdo#103713 +1
Test gem_mmap_gtt:
Subgroup basic-small-bo-tiledx:
fail   -> PASS   (fi-gdg-551) fdo#102575
Test gem_sync:
Subgroup basic-each:
skip   -> PASS   (fi-blb-e6850)
Subgroup basic-many-each:
skip   -> PASS   (fi-blb-e6850)
Subgroup basic-store-all:
skip   -> PASS   (fi-blb-e6850)
Subgroup basic-store-each:
skip   -> PASS   (fi-blb-e6850)
Test gem_tiled_blits:
Subgroup basic:
skip   -> PASS   (fi-blb-e6850)
Test gem_tiled_fence_blits:
Subgroup basic:
skip   -> PASS   (fi-blb-e6850)
Test gem_wait:
Subgroup basic-busy-all:
skip   -> PASS   (fi-blb-e6850)
Subgroup basic-wait-all:
skip   -> PASS   (fi-blb-e6850)
Subgroup basic-await-all:
skip   -> PASS   (fi-blb-e6850)
Test kms_busy:
Subgroup basic-flip-a:
skip   -> PASS   (fi-blb-e6850)
Subgroup basic-flip-b:
skip   -> PASS   (fi-blb-e6850)
Test kms_cursor_legacy:
Subgroup basic-busy-flip-before-cursor-legacy:
skip   -> PASS   (fi-blb-e6850)
Test kms_pipe_crc_basic:
Subgroup suspend-read-crc-pipe-a:
pass   -> DMESG-WARN (fi-kbl-r) fdo#104172 +1

fdo#103989 https://bugs.freedesktop.org/show_bug.cgi?id=103989
fdo#103713 https://bugs.freedesktop.org/show_bug.cgi?id=103713
fdo#102575 https://bugs.freedesktop.org/show_bug.cgi?id=102575
fdo#104172 https://bugs.freedesktop.org/show_bug.cgi?id=104172

fi-bdw-5557u total:288  pass:267  dwarn:0   dfail:0   fail:0   skip:21  
time:431s
fi-bdw-gvtdvmtotal:288  pass:264  dwarn:0   dfail:0   fail:0   skip:24  
time:436s
fi-blb-e6850 total:288  pass:222  dwarn:1   dfail:1   fail:0   skip:64  
time:395s
fi-bsw-n3050 total:288  pass:242  dwarn:0   dfail:0   fail:0   skip:46  
time:499s
fi-bwr-2160  total:288  pass:183  dwarn:0   dfail:0   fail:0   skip:105 
time:277s
fi-bxt-dsi   total:288  pass:258  dwarn:0   dfail:0   fail:0   skip:30  
time:497s
fi-bxt-j4205 total:288  pass:259  dwarn:0   dfail:0   fail:0   skip:29  
time:496s
fi-byt-j1900 total:288  pass:253  dwarn:0   dfail:0   fail:0   skip:35  
time:477s
fi-byt-n2820 total:288  pass:249  dwarn:0   dfail:0   fail:0   skip:39  
time:466s
fi-elk-e7500 total:224  pass:164  dwarn:14  dfail:0   fail:0   skip:45 
fi-gdg-551   total:288  pass:179  dwarn:1   dfail:0   fail:0   skip:108 
time:264s
fi-glk-1 total:288  pass:260  dwarn:0   dfail:0   fail:0   skip:28  
time:533s
fi-hsw-4770  total:288  pass:261  dwarn:0   dfail:0   fail:0   skip:27  
time:408s
fi-hsw-4770r total:288  pass:261  dwarn:0   dfail:0   fail:0   skip:27  
time:412s
fi-ilk-650   total:288  pass:228  dwarn:0   dfail:0   fail:0   skip:60  
time:396s
fi-ivb-3520m total:288  pass:259  dwarn:0   dfail:0   fail:0   skip:29  
time:473s
fi-ivb-3770  total:288  pass:255  dwarn:0   dfail:0   fail:0   skip:33  
time:419s
fi-kbl-7500u total:288  pass:263  dwarn:1   dfail:0   fail:0   skip:24  
time:480s
fi-kbl-7560u total:288  pass:268  dwarn:1   dfail:0   fail:0   skip:19  
time:519s
fi-kbl-7567u total:288  pass:268  dwarn:0   dfail:0   fail:0   skip:20  
time:465s
fi-kbl-r total:288  pass:260  dwarn:1   dfail:0   fail:0   skip:27  
time:522s
fi-pnv-d510  total:288  pass:221  dwarn:1   dfail:0   fail:1   skip:65  
time:594s
fi-skl-6260u total:288  pass:268  dwarn:0   dfail:0   fail:0   skip:20  
time:442s
fi-skl-6600u total:288  pass:260  dwarn:1   dfail:0   fail:0   skip:27  
time:532s
fi-skl-6700hqtotal:288  pass:261  dwarn:1   dfail:0   fail:0   skip:26  
time:556s
fi-skl-6770hqtotal:288  pass:268  dwarn:0   dfail:0   fail:0   skip:20  
time:489s
fi-skl-gvtdvmtotal:288  pass:265  dwarn:0   dfail:0   fail:0   skip:23  
time:446s
fi-snb-2520m total:245  pass:211  dwarn:0   dfail:0   fail:0   skip:33 
fi-snb-2600  total:288  pass:248  dwarn:0   dfail:0   fail:0   skip:40  
time:411s
Blacklisted hosts:
fi-cfl-s2total:288  pass:262  dwarn:0   dfail:0   fail:0   skip:26  
time:583s
fi-cnl-y total:288  pass:262  dwarn:0   dfail:0   fail:0   skip:26  
time:614s
fi-glk-dsi   total:288  pass:257  dwarn:0   dfail:0   fail:1   skip:30  
time:495s

ad43db157c69bf7311ba5a0278f282796242f34a drm-tip: 

[Intel-gfx] [PATCH igt] HAX

2017-12-14 Thread Chris Wilson
---
 lib/drmtest.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/lib/drmtest.c b/lib/drmtest.c
index fd11f5f58..016493f84 100644
--- a/lib/drmtest.c
+++ b/lib/drmtest.c
@@ -163,6 +163,7 @@ void gem_quiescent_gpu(int fd)
 {
igt_terminate_spin_batches();
 
+   sleep(1);
igt_drop_caches_set(fd,
DROP_ACTIVE | DROP_RETIRE | DROP_IDLE | DROP_FREED);
 }
-- 
2.15.1

___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


[Intel-gfx] [PATCH 5/5] drm/doc: Move legacy kms helpers to the very end

2017-12-14 Thread Daniel Vetter
We don't want people to accidentally stumble over there.

Also rename the plane helpers to legacy plane helpers. After Ville's
patch to make the clipping helper atomic and move it to
drm_atomic_helper.c there's nothing left in there that should be
useful for modern drivers.

v2: Laurent had a few questions around how state is added to
drm_atomic_state, tried to clarify that. And spotted another sentence
where the docs suggested subclassing.

Signed-off-by: Daniel Vetter 
---
 Documentation/gpu/drm-kms-helpers.rst | 36 +--
 Documentation/gpu/drm-kms.rst |  8 
 include/drm/drm_atomic.h  |  4 
 3 files changed, 26 insertions(+), 22 deletions(-)

diff --git a/Documentation/gpu/drm-kms-helpers.rst 
b/Documentation/gpu/drm-kms-helpers.rst
index 3ea622876b67..e37557b30f62 100644
--- a/Documentation/gpu/drm-kms-helpers.rst
+++ b/Documentation/gpu/drm-kms-helpers.rst
@@ -74,15 +74,6 @@ Helper Functions Reference
 .. kernel-doc:: drivers/gpu/drm/drm_atomic_helper.c
:export:
 
-Legacy CRTC/Modeset Helper Functions Reference
-==
-
-.. kernel-doc:: drivers/gpu/drm/drm_crtc_helper.c
-   :doc: overview
-
-.. kernel-doc:: drivers/gpu/drm/drm_crtc_helper.c
-   :export:
-
 Simple KMS Helper Reference
 ===
 
@@ -282,15 +273,6 @@ Flip-work Helper Reference
 .. kernel-doc:: drivers/gpu/drm/drm_flip_work.c
:export:
 
-Plane Helper Reference
-==
-
-.. kernel-doc:: drivers/gpu/drm/drm_plane_helper.c
-   :doc: overview
-
-.. kernel-doc:: drivers/gpu/drm/drm_plane_helper.c
-   :export:
-
 Auxiliary Modeset Helpers
 =
 
@@ -308,3 +290,21 @@ Framebuffer GEM Helper Reference
 
 .. kernel-doc:: drivers/gpu/drm/drm_gem_framebuffer_helper.c
:export:
+
+Legacy Plane Helper Reference
+=
+
+.. kernel-doc:: drivers/gpu/drm/drm_plane_helper.c
+   :doc: overview
+
+.. kernel-doc:: drivers/gpu/drm/drm_plane_helper.c
+   :export:
+
+Legacy CRTC/Modeset Helper Functions Reference
+==
+
+.. kernel-doc:: drivers/gpu/drm/drm_crtc_helper.c
+   :doc: overview
+
+.. kernel-doc:: drivers/gpu/drm/drm_crtc_helper.c
+   :export:
diff --git a/Documentation/gpu/drm-kms.rst b/Documentation/gpu/drm-kms.rst
index 420025bd6a9b..cbba93483aec 100644
--- a/Documentation/gpu/drm-kms.rst
+++ b/Documentation/gpu/drm-kms.rst
@@ -263,10 +263,10 @@ Taken all together there's two consequences for the 
atomic design:
 
 - An atomic update is assembled and validated as an entirely free-standing pile
   of structures within the :c:type:`drm_atomic_state `
-  container. Again drivers can subclass that container for their own state
-  structure tracking needs. Only when a state is committed is it applied to the
-  driver and modeset objects. This way rolling back an update boils down to
-  releasing memory and unreferencing objects like framebuffers.
+  container. Driver private state structures are also tracked in the same
+  structure, see the next chapter.  Only when a state is committed is it 
applied
+  to the driver and modeset objects. This way rolling back an update boils down
+  to releasing memory and unreferencing objects like framebuffers.
 
 Read on in this chapter, and also in :ref:`drm_atomic_helper` for more detailed
 coverage of specific topics.
diff --git a/include/drm/drm_atomic.h b/include/drm/drm_atomic.h
index 8e4829a25c1b..e7f25e342cc8 100644
--- a/include/drm/drm_atomic.h
+++ b/include/drm/drm_atomic.h
@@ -246,6 +246,10 @@ struct __drm_private_objs_state {
  * @num_private_objs: size of the @private_objs array
  * @private_objs: pointer to array of private object pointers
  * @acquire_ctx: acquire context for this atomic modeset state update
+ *
+ * States are added to an atomic update by calling drm_atomic_get_crtc_state(),
+ * drm_atomic_get_plane_state(), drm_atomic_get_connector_state(), or for
+ * private state structures, drm_atomic_get_private_obj_state().
  */
 struct drm_atomic_state {
struct kref ref;
-- 
2.15.1

___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


[Intel-gfx] [PATCH 3/5] drm/syncobj: some kerneldoc polish

2017-12-14 Thread Daniel Vetter
Complete a few missing bits, fix up the existing xcross-references and
add a bunch more.

Cc: Dave Airlie  via lists.freedesktop.org
Signed-off-by: Daniel Vetter 
---
 drivers/gpu/drm/drm_syncobj.c | 45 +++
 include/drm/drm_syncobj.h | 32 +-
 2 files changed, 60 insertions(+), 17 deletions(-)

diff --git a/drivers/gpu/drm/drm_syncobj.c b/drivers/gpu/drm/drm_syncobj.c
index 9b733c510cbf..b6d0c2c400ec 100644
--- a/drivers/gpu/drm/drm_syncobj.c
+++ b/drivers/gpu/drm/drm_syncobj.c
@@ -29,9 +29,9 @@
 /**
  * DOC: Overview
  *
- * DRM synchronisation objects (syncobj) are a persistent objects,
- * that contain an optional fence. The fence can be updated with a new
- * fence, or be NULL.
+ * DRM synchronisation objects (syncobj, see struct _syncobj) are a
+ * persistent objects, that contain an optional fence. The fence can be updated
+ * with a new fence, or be NULL.
  *
  * syncobj's can be waited upon, where it will wait for the underlying
  * fence.
@@ -61,7 +61,8 @@
  * @file_private: drm file private pointer
  * @handle: sync object handle to lookup.
  *
- * Returns a reference to the syncobj pointed to by handle or NULL.
+ * Returns a reference to the syncobj pointed to by handle or NULL. The
+ * reference must be released by calling drm_syncobj_put().
  */
 struct drm_syncobj *drm_syncobj_find(struct drm_file *file_private,
 u32 handle)
@@ -229,6 +230,19 @@ static int drm_syncobj_assign_null_handle(struct 
drm_syncobj *syncobj)
return 0;
 }
 
+/**
+ * drm_syncobj_find_fence - lookup and reference the fence in a sync object
+ * @file_private: drm file private pointer
+ * @handle: sync object handle to lookup.
+ * @fence: out parameter for the fence
+ *
+ * This is just a convenience function that combines drm_syncobj_find() and
+ * drm_syncobj_fence_get().
+ *
+ * Returns 0 on success or a negative error value on failure. On success @fence
+ * contains a reference to the fence, which mus be released by calling
+ * dma_fence_put().
+ */
 int drm_syncobj_find_fence(struct drm_file *file_private,
   u32 handle,
   struct dma_fence **fence)
@@ -269,6 +283,12 @@ EXPORT_SYMBOL(drm_syncobj_free);
  * @out_syncobj: returned syncobj
  * @flags: DRM_SYNCOBJ_* flags
  * @fence: if non-NULL, the syncobj will represent this fence
+ *
+ * This is the first function to create a sync object. After creating drivers
+ * probably want to make it available to userspace, either through
+ * drm_syncobj_get_handle() or drm_syncobj_get_fd().
+ *
+ * Returns 0 on success or a negative error value on failure.
  */
 int drm_syncobj_create(struct drm_syncobj **out_syncobj, uint32_t flags,
   struct dma_fence *fence)
@@ -302,6 +322,14 @@ EXPORT_SYMBOL(drm_syncobj_create);
 
 /**
  * drm_syncobj_get_handle - get a handle from a syncobj
+ * @file_private: drm file private pointer
+ * @syncobj: Sync object to export
+ * @handle: out parameter with the new handle
+ *
+ * Exports a sync object created with drm_syncobj_create() as a handle on
+ * @file_private to userspace.
+ *
+ * Returns 0 on success or a negative error value on failure.
  */
 int drm_syncobj_get_handle(struct drm_file *file_private,
   struct drm_syncobj *syncobj, u32 *handle)
@@ -388,6 +416,15 @@ static int drm_syncobj_alloc_file(struct drm_syncobj 
*syncobj)
return 0;
 }
 
+/**
+ * drm_syncobj_get_fd - get a file descriptor from a syncobj
+ * @syncobj: Sync object to export
+ * @p_fd: out parameter with the new file descriptor
+ *
+ * Exports a sync object created with drm_syncobj_create() as a file 
descriptor.
+ *
+ * Returns 0 on success or a negative error value on failure.
+ */
 int drm_syncobj_get_fd(struct drm_syncobj *syncobj, int *p_fd)
 {
int ret;
diff --git a/include/drm/drm_syncobj.h b/include/drm/drm_syncobj.h
index 9e8ba90c6784..87865774bdaa 100644
--- a/include/drm/drm_syncobj.h
+++ b/include/drm/drm_syncobj.h
@@ -33,36 +33,31 @@ struct drm_syncobj_cb;
 /**
  * struct drm_syncobj - sync object.
  *
- * This structure defines a generic sync object which wraps a dma fence.
+ * This structure defines a generic sync object which wraps a _fence.
  */
 struct drm_syncobj {
/**
-* @refcount:
-*
-* Reference count of this object.
+* @refcount: Reference count of this object.
 */
struct kref refcount;
/**
 * @fence:
 * NULL or a pointer to the fence bound to this object.
 *
-* This field should not be used directly.  Use drm_syncobj_fence_get
-* and drm_syncobj_replace_fence instead.
+* This field should not be used directly. Use drm_syncobj_fence_get()
+* and drm_syncobj_replace_fence() instead.
 */
struct dma_fence __rcu *fence;
/**
-* @cb_list:
-  

[Intel-gfx] [PATCH 2/5] drm/print: Unconfuse kerneldoc

2017-12-14 Thread Daniel Vetter
It thinks we want to document the __printf(2,0) annotion. Not sure we
want to teach it about all possible gcc-only flags, hence why I opted
for the cheap trick of just moving it ahead of the kerneldoc.

This is only a problem for static inline functions, since for
non-inline function the kerneldoc is in the .c file, but the special
annotations are all in the header.

Cc'ing kernel-doc maintainers as fyi.

Cc: linux-...@vger.kernel.org
Cc: Jonathan Corbet 
Signed-off-by: Daniel Vetter 
---
 include/drm/drm_print.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/include/drm/drm_print.h b/include/drm/drm_print.h
index 5f9932e2246e..2a4a42e59a47 100644
--- a/include/drm/drm_print.h
+++ b/include/drm/drm_print.h
@@ -80,13 +80,13 @@ void __drm_printfn_debug(struct drm_printer *p, struct 
va_format *vaf);
 __printf(2, 3)
 void drm_printf(struct drm_printer *p, const char *f, ...);
 
+__printf(2, 0)
 /**
  * drm_vprintf - print to a _printer stream
  * @p: the _printer
  * @fmt: format string
  * @va: the va_list
  */
-__printf(2, 0)
 static inline void
 drm_vprintf(struct drm_printer *p, const char *fmt, va_list *va)
 {
-- 
2.15.1

___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


[Intel-gfx] [PATCH 1/5] drm/edid: kerneldoc for is_hdmi2_sink

2017-12-14 Thread Daniel Vetter
Also some breadcrumbs for how exactly to find this. Probably should
pass drm_connector * or at least drm_display_info * to that function
instead. But drm_hdmi_avi_infoframe_quant_range probably also wants
drm_connector_state (and the hdmi stuff moved into that), so this is a
bit more work.

Cc: Ville Syrjälä 
Fixes: 9271c0ca573e ("drm/edid: Don't send non-zero YQ in AVI infoframe for 
HDMI 1.x sinks")
Signed-off-by: Daniel Vetter 
---
 drivers/gpu/drm/drm_edid.c | 5 +
 1 file changed, 5 insertions(+)

diff --git a/drivers/gpu/drm/drm_edid.c b/drivers/gpu/drm/drm_edid.c
index 365901c1c33c..56ebef0c5fad 100644
--- a/drivers/gpu/drm/drm_edid.c
+++ b/drivers/gpu/drm/drm_edid.c
@@ -4871,6 +4871,11 @@ EXPORT_SYMBOL(drm_hdmi_avi_infoframe_from_display_mode);
  * @mode: DRM display mode
  * @rgb_quant_range: RGB quantization range (Q)
  * @rgb_quant_range_selectable: Sink support selectable RGB quantization range 
(QS)
+ * @is_hdmi2_sink: HDMI 2.0 sink, which has different default recommendations
+ *
+ * Note that @is_hdmi2_sink can be derrived by looking at the
+ * _scdc.supported flag stored in _hdmi_info.scdc,
+ * _display_info.hdmi, which can be found in _connector.display_info.
  */
 void
 drm_hdmi_avi_infoframe_quant_range(struct hdmi_avi_infoframe *frame,
-- 
2.15.1

___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


[Intel-gfx] [PATCH 0/5] bunch of drm kernel-doc patches

2017-12-14 Thread Daniel Vetter
Hi all,

Originally I wanted to include the atomic helper split-up here, but once
more I failed to get that done. So just a few patches to clean up
accumlated kernel-doc warnings, plus some real docs for the new best
practices for handling driver private objects. That was motivated by a
recent discussion.

Cheers, Daniel

Daniel Vetter (5):
  drm/edid: kerneldoc for is_hdmi2_sink
  drm/print: Unconfuse kerneldoc
  drm/syncobj: some kerneldoc polish
  drm/atomic: document how to handle driver private objects
  drm/doc: Move legacy kms helpers to the very end

 Documentation/gpu/drm-kms-helpers.rst | 36 ++--
 Documentation/gpu/drm-kms.rst | 14 +++
 drivers/gpu/drm/drm_atomic.c  | 45 ---
 drivers/gpu/drm/drm_edid.c|  5 
 drivers/gpu/drm/drm_syncobj.c | 45 +++
 include/drm/drm_atomic.h  | 32 +
 include/drm/drm_mode_config.h |  9 +++
 include/drm/drm_print.h   |  2 +-
 include/drm/drm_syncobj.h | 32 +++--
 9 files changed, 177 insertions(+), 43 deletions(-)

-- 
2.15.1

___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


[Intel-gfx] [PATCH 4/5] drm/atomic: document how to handle driver private objects

2017-12-14 Thread Daniel Vetter
DK put some nice docs into the commit introducing driver private
state, but in the git history alone it'll be lost.

Also, since Ville remove the void* usage it's a good opportunity to
give the driver private stuff some tlc on the doc front.

Finally try to explain why the "let's just subclass drm_atomic_state"
approach wasn't the greatest, and annotate all those functions as
deprecated in favour of more standardized driver private states. Also
note where we could/should extend driver private states going forward
(atm neither locking nor synchronization is handled in core/helpers,
which isn't really all that great).

Cc: Harry Wentland 
Cc: Dhinakaran Pandiyan 
Cc: Maarten Lankhorst 
Cc: Ville Syrjälä 
Cc: Laurent Pinchart 
Cc: Rob Clark 
Cc: Alex Deucher 
Cc: Ben Skeggs 
Signed-off-by: Daniel Vetter 
---
 Documentation/gpu/drm-kms.rst |  6 ++
 drivers/gpu/drm/drm_atomic.c  | 45 ---
 include/drm/drm_atomic.h  | 28 +++
 include/drm/drm_mode_config.h |  9 +
 4 files changed, 85 insertions(+), 3 deletions(-)

diff --git a/Documentation/gpu/drm-kms.rst b/Documentation/gpu/drm-kms.rst
index 307284125d7a..420025bd6a9b 100644
--- a/Documentation/gpu/drm-kms.rst
+++ b/Documentation/gpu/drm-kms.rst
@@ -271,6 +271,12 @@ Taken all together there's two consequences for the atomic 
design:
 Read on in this chapter, and also in :ref:`drm_atomic_helper` for more detailed
 coverage of specific topics.
 
+Handling Driver Private State
+-
+
+.. kernel-doc:: drivers/gpu/drm/drm_atomic.c
+   :doc: handling driver private state
+
 Atomic Mode Setting Function Reference
 --
 
diff --git a/drivers/gpu/drm/drm_atomic.c b/drivers/gpu/drm/drm_atomic.c
index 37445d50816a..15e1a35c74a8 100644
--- a/drivers/gpu/drm/drm_atomic.c
+++ b/drivers/gpu/drm/drm_atomic.c
@@ -50,7 +50,8 @@ EXPORT_SYMBOL(__drm_crtc_commit_free);
  * @state: atomic state
  *
  * Free all the memory allocated by drm_atomic_state_init.
- * This is useful for drivers that subclass the atomic state.
+ * This should only be used by drivers which are still subclassing
+ * _atomic_state and haven't switched to _private_state yet.
  */
 void drm_atomic_state_default_release(struct drm_atomic_state *state)
 {
@@ -67,7 +68,8 @@ EXPORT_SYMBOL(drm_atomic_state_default_release);
  * @state: atomic state
  *
  * Default implementation for filling in a new atomic state.
- * This is useful for drivers that subclass the atomic state.
+ * This should only be used by drivers which are still subclassing
+ * _atomic_state and haven't switched to _private_state yet.
  */
 int
 drm_atomic_state_init(struct drm_device *dev, struct drm_atomic_state *state)
@@ -132,7 +134,8 @@ EXPORT_SYMBOL(drm_atomic_state_alloc);
  * @state: atomic state
  *
  * Default implementation for clearing atomic state.
- * This is useful for drivers that subclass the atomic state.
+ * This should only be used by drivers which are still subclassing
+ * _atomic_state and haven't switched to _private_state yet.
  */
 void drm_atomic_state_default_clear(struct drm_atomic_state *state)
 {
@@ -946,6 +949,42 @@ static void drm_atomic_plane_print_state(struct 
drm_printer *p,
plane->funcs->atomic_print_state(p, state);
 }
 
+/**
+ * DOC: handling driver private state
+ *
+ * Very often the DRM objects exposed to userspace in the atomic modeset api
+ * (_connector, _crtc and _plane) do not map neatly to the
+ * underlying hardware. Especially for any kind of shared resources (e.g. 
shared
+ * clocks, scaler units, bandwidth and fifo limits shared among a group of
+ * planes or CRTCs, and so on) it makes sense to model these as independent
+ * objects. Drivers then need to similar state tracking and commit ordering for
+ * such private (since not exposed to userpace) objects as the atomic core and
+ * helpers already provide for connectors, planes and CRTCs.
+ *
+ * To make this easier on drivers the atomic core provides some support to 
track
+ * driver private state objects using struct _private_obj, with the
+ * associated state struct _private_state.
+ *
+ * Similar to userspace-exposed objects, state structures can be acquired by
+ * calling drm_atomic_get_private_obj_state(). Since this function does not 
take
+ * care of locking, drivers should wrap it for each type of private state 
object
+ * they have with the required call to drm_modeset_lock() for the corresponding
+ * _modeset_lock.
+ *
+ * All private state structures contained in a _atomic_state update can be
+ * iterated using for_each_oldnew_private_obj_in_state(),
+ * for_each_old_private_obj_in_state() and for_each_old_private_obj_in_state().
+ * 

[Intel-gfx] ✓ Fi.CI.BAT: success for lib/debug: Convert igt_drop_caches_set() to use common file writers

2017-12-14 Thread Patchwork
== Series Details ==

Series: lib/debug: Convert igt_drop_caches_set() to use common file writers
URL   : https://patchwork.freedesktop.org/series/35374/
State : success

== Summary ==

IGT patchset tested on top of latest successful build
103af7286e2d1014e3d7126691fe046ab2c9f73e lib: Ask the kernel to quiesce the GPU

with latest DRM-Tip kernel build CI_DRM_3520
048a4c890dc7 drm-tip: 2017y-12m-14d-19h-09m-41s UTC integration manifest

No testlist changes.

Test debugfs_test:
Subgroup read_all_entries:
pass   -> DMESG-WARN (fi-elk-e7500) fdo#103989 +1
Test gem_sync:
Subgroup basic-all:
fail   -> DMESG-FAIL (fi-blb-e6850) fdo#104259

fdo#103989 https://bugs.freedesktop.org/show_bug.cgi?id=103989
fdo#104259 https://bugs.freedesktop.org/show_bug.cgi?id=104259

fi-bdw-5557u total:288  pass:267  dwarn:0   dfail:0   fail:0   skip:21  
time:445s
fi-bdw-gvtdvmtotal:288  pass:264  dwarn:0   dfail:0   fail:0   skip:24  
time:438s
fi-blb-e6850 total:288  pass:222  dwarn:1   dfail:1   fail:0   skip:64  
time:398s
fi-bsw-n3050 total:288  pass:242  dwarn:0   dfail:0   fail:0   skip:46  
time:498s
fi-bwr-2160  total:288  pass:183  dwarn:0   dfail:0   fail:0   skip:105 
time:279s
fi-bxt-dsi   total:288  pass:258  dwarn:0   dfail:0   fail:0   skip:30  
time:495s
fi-bxt-j4205 total:288  pass:259  dwarn:0   dfail:0   fail:0   skip:29  
time:502s
fi-byt-j1900 total:288  pass:253  dwarn:0   dfail:0   fail:0   skip:35  
time:487s
fi-elk-e7500 total:224  pass:163  dwarn:15  dfail:0   fail:0   skip:45 
fi-gdg-551   total:288  pass:178  dwarn:1   dfail:0   fail:1   skip:108 
time:267s
fi-glk-1 total:288  pass:260  dwarn:0   dfail:0   fail:0   skip:28  
time:534s
fi-hsw-4770  total:288  pass:261  dwarn:0   dfail:0   fail:0   skip:27  
time:410s
fi-hsw-4770r total:288  pass:261  dwarn:0   dfail:0   fail:0   skip:27  
time:416s
fi-ilk-650   total:288  pass:228  dwarn:0   dfail:0   fail:0   skip:60  
time:391s
fi-ivb-3520m total:288  pass:259  dwarn:0   dfail:0   fail:0   skip:29  
time:475s
fi-ivb-3770  total:288  pass:255  dwarn:0   dfail:0   fail:0   skip:33  
time:426s
fi-kbl-7500u total:288  pass:263  dwarn:1   dfail:0   fail:0   skip:24  
time:479s
fi-kbl-7560u total:288  pass:268  dwarn:1   dfail:0   fail:0   skip:19  
time:525s
fi-kbl-7567u total:288  pass:268  dwarn:0   dfail:0   fail:0   skip:20  
time:470s
fi-kbl-r total:288  pass:260  dwarn:1   dfail:0   fail:0   skip:27  
time:521s
fi-pnv-d510  total:288  pass:221  dwarn:1   dfail:0   fail:1   skip:65  
time:596s
fi-skl-6260u total:288  pass:268  dwarn:0   dfail:0   fail:0   skip:20  
time:447s
fi-skl-6600u total:288  pass:260  dwarn:1   dfail:0   fail:0   skip:27  
time:534s
fi-skl-6700hqtotal:288  pass:262  dwarn:0   dfail:0   fail:0   skip:26  
time:556s
fi-skl-6770hqtotal:288  pass:268  dwarn:0   dfail:0   fail:0   skip:20  
time:491s
fi-skl-gvtdvmtotal:288  pass:265  dwarn:0   dfail:0   fail:0   skip:23  
time:447s
fi-snb-2520m total:288  pass:248  dwarn:0   dfail:0   fail:0   skip:40  
time:554s
fi-snb-2600  total:288  pass:248  dwarn:0   dfail:0   fail:0   skip:40  
time:419s
Blacklisted hosts:
fi-cfl-s2total:288  pass:262  dwarn:0   dfail:0   fail:0   skip:26  
time:595s
fi-cnl-y total:288  pass:262  dwarn:0   dfail:0   fail:0   skip:26  
time:624s
fi-glk-dsi   total:288  pass:258  dwarn:0   dfail:0   fail:0   skip:30  
time:477s

== Logs ==

For more details see: 
https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_671/issues.html
___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


[Intel-gfx] Updated drm-intel-testing

2017-12-14 Thread Rodrigo Vivi
Hi all,

The following changes tagged drm-intel-testing-2017-12-14:

drm-intel-next-2017-12-14:

- Fix documentation build issues (Randy, Markus)
- Fix timestamp frequency calculation for perf on CNL (Lionel)
- New DMC firmware for Skylake (Anusha)
- GTT flush fixes and other GGTT write track and refactors (Chris)
- Taint kernel when GPU reset fails (Chris)
- Display workarounds organization (Lucas)
- GuC and HuC initialization clean-up and fixes (Michal)
- Other fixes around GuC submission (Michal)
- Execlist clean-ups like caching ELSP reg offset and improving log readability 
(Chri\
s)
- Many other improvements on our logs and dumps (Chris)
- Restore GT performance in headless mode with DMC loaded (Tvrtko)
- Stop updating legacy fb parameters since FBC is not using anymore (Daniel)
- More selftest improvements (Chris)
- Preemption fixes and improvements (Chris)
- x86/early-quirks improvements for Intel graphics stolen memory. (Joonas, 
Matthew)
- Other improvements on Stolen Memory code to be resource centric. (Matthew)
- Improvements and fixes on fence allocation/release (Chris).

GVT:

- fixes for two coverity scan errors (Colin)
- mmio switch code refine (Changbin)
- more virtual display dmabuf fixes (Tina/Gustavo)
- misc cleanups (Pei)
- VFIO mdev display dmabuf interface and gvt support (Tina)
- VFIO mdev opregion support/fixes (Tina/Xiong/Chris)
- workload scheduling optimization (Changbin)
- preemption fix and temporal workaround (Zhenyu)
- and misc fixes after refactor (Chris)

Thanks,
Rodrigo.
___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


Re: [Intel-gfx] [PATCH igt 2/2] igt/kms_frontbuffer_tracking: Access via GGTT is not guaranteed to be tracked

2017-12-14 Thread Chris Wilson
Quoting Chris Wilson (2017-12-07 09:41:26)
> As the system may use a partial vma for a GGTT mmap, access via the GGTT
> mmap is not guaranteed to be tracked by FBC's fence. The rule expressed has
> been that any access to the frontbuffer should be followed by a fb-dirty
> ioctl, so always apply and expect the driver to ellide no-ops.
> 
> Signed-off-by: Chris Wilson 

Ping?

> ---
>  tests/kms_frontbuffer_tracking.c | 13 +++--
>  1 file changed, 3 insertions(+), 10 deletions(-)
> 
> diff --git a/tests/kms_frontbuffer_tracking.c 
> b/tests/kms_frontbuffer_tracking.c
> index a068c8afb..1fcca87c9 100644
> --- a/tests/kms_frontbuffer_tracking.c
> +++ b/tests/kms_frontbuffer_tracking.c
> @@ -1127,8 +1127,7 @@ static void draw_rect(struct draw_pattern_info 
> *pattern, struct fb_region *fb,
>  fb->x + rect.x, fb->y + rect.y,
>  rect.w, rect.h, rect.color);
>  
> -   if (method == IGT_DRAW_MMAP_WC)
> -   fb_dirty_ioctl(fb, );
> +   fb_dirty_ioctl(fb, );
>  }
>  
>  static void draw_rect_igt_fb(struct draw_pattern_info *pattern,
> @@ -2132,16 +2131,10 @@ static void multidraw_subtest(const struct test_mode 
> *t)
>  
> draw_rect(pattern, target, used_method, r);
>  
> -   if (used_method == IGT_DRAW_MMAP_WC)
> +   if (used_method == IGT_DRAW_MMAP_WC ||
> +   used_method == IGT_DRAW_MMAP_GTT)
> wc_used = true;
>  
> -   if (used_method == IGT_DRAW_MMAP_GTT &&
> -   wc_used) {
> -   struct rect rect =
> -   pattern->get_rect(target, r);
> -   fb_dirty_ioctl(target, );
> -   }
> -
> update_wanted_crc(t,
>   
> >crcs[t->format][r]);
>  
> -- 
> 2.15.1
> 
___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


[Intel-gfx] [PATCH igt] lib/debug: Convert igt_drop_caches_set() to use common file writers

2017-12-14 Thread Chris Wilson
Why open code a printf/write loop, when we already have a function
providing it?

Signed-off-by: Chris Wilson 
Cc: Joonas Lahtinen 
---
 lib/igt_debugfs.c | 18 +-
 1 file changed, 5 insertions(+), 13 deletions(-)

diff --git a/lib/igt_debugfs.c b/lib/igt_debugfs.c
index 49b68dfed..1aec079c5 100644
--- a/lib/igt_debugfs.c
+++ b/lib/igt_debugfs.c
@@ -887,20 +887,12 @@ bool igt_drop_caches_has(int drm_fd, uint64_t val)
  */
 void igt_drop_caches_set(int drm_fd, uint64_t val)
 {
-   int fd;
-   char data[19];
-   size_t nbytes;
-
-   sprintf(data, "0x%" PRIx64, val);
-
-   fd = igt_debugfs_open(drm_fd, "i915_gem_drop_caches", O_WRONLY);
+   int dir;
 
-   igt_assert(fd >= 0);
-   do {
-   nbytes = write(fd, data, strlen(data) + 1);
-   } while (nbytes == -1 && (errno == EINTR || errno == EAGAIN));
-   igt_assert(nbytes == strlen(data) + 1);
-   close(fd);
+   dir = igt_debugfs_dir(drm_fd);
+   igt_assert(igt_sysfs_printf(dir, "i915_gem_drop_caches",
+   "0x%" PRIx64, val) > 0);
+   close(dir);
 }
 
 /*
-- 
2.15.1

___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


Re: [Intel-gfx] [PATCH] drm/915/psr: Set psr.source_ok during atomic_check

2017-12-14 Thread Pandiyan, Dhinakaran

On Thu, 2017-12-14 at 17:06 +0200, Ville Syrjälä wrote:
> On Tue, Dec 12, 2017 at 04:59:34PM -0800, Dhinakaran Pandiyan wrote:
> > Since commit 4d90f2d507ab ("drm/i915: Start tracking PSR state in crtc
> > state"), we check whether PSR can be enabled or not in
> > psr_compute_config(). Given that the psr.source_ok field is supposed to
> > track this check, set the field in psr_compute_config() as well.
> 
> NAK. compute_config() isn't allowed to change global state since the
> modeset can still fail later, or this might in fact be a
> TEST_ONLY operation.

I thought of it, but the only purpose of this flag is in debugfs to
indicate PSR requirements were met. It is not checked anywhere in the
driver. Setting this flag during commit (in intel_psr_enable) is
redundant because psr.enabled, exposed via debugfs, already provides
that information. By moving this flag to where PSR conditions are
checked, this could give a hint that something went wrong if PSR was not
enabled when PSR conditions were met.


Basically, I don't see any use for this flag the way it is set now. The
other idea I was considering is killing this flag and exposing a
no_fbc_reason type string.


> 
> > 
> > Now tests can distinguish between PSR not enabled due to unmet mode
> > requirements and something going wrong during commit.
> > 
> > Cc: Rodrigo Vivi 
> > Cc: Ville Syrjälä 
> > Signed-off-by: Dhinakaran Pandiyan 
> > ---
> >  drivers/gpu/drm/i915/intel_psr.c | 10 +-
> >  1 file changed, 5 insertions(+), 5 deletions(-)
> > 
> > diff --git a/drivers/gpu/drm/i915/intel_psr.c 
> > b/drivers/gpu/drm/i915/intel_psr.c
> > index a1ad85fa5c1a..b59a956047ff 100644
> > --- a/drivers/gpu/drm/i915/intel_psr.c
> > +++ b/drivers/gpu/drm/i915/intel_psr.c
> > @@ -358,6 +358,8 @@ void intel_psr_compute_config(struct intel_dp *intel_dp,
> > _state->base.adjusted_mode;
> > int psr_setup_time;
> >  
> > +   dev_priv->psr.source_ok = false;
> > +
> > if (!HAS_PSR(dev_priv))
> > return;
> >  
> > @@ -420,7 +422,7 @@ void intel_psr_compute_config(struct intel_dp *intel_dp,
> >  * caps during eDP detection.
> >  */
> > if (!dev_priv->psr.psr2_support) {
> > -   crtc_state->has_psr = true;
> > +   dev_priv->psr.source_ok = (crtc_state->has_psr = true);
> > return;
> > }
> >  
> > @@ -440,7 +442,7 @@ void intel_psr_compute_config(struct intel_dp *intel_dp,
> > return;
> > }
> >  
> > -   crtc_state->has_psr = true;
> > +   dev_priv->psr.source_ok = (crtc_state->has_psr = true);
> > crtc_state->has_psr2 = true;
> >  }
> >  
> > @@ -522,8 +524,6 @@ void intel_psr_enable(struct intel_dp *intel_dp,
> > }
> >  
> > dev_priv->psr.psr2_support = crtc_state->has_psr2;
> > -   dev_priv->psr.source_ok = true;
> > -
> > dev_priv->psr.busy_frontbuffer_bits = 0;
> >  
> > dev_priv->psr.setup_vsc(intel_dp, crtc_state);
> > @@ -657,7 +657,7 @@ void intel_psr_disable(struct intel_dp *intel_dp,
> > /* Disable PSR on Sink */
> > drm_dp_dpcd_writeb(_dp->aux, DP_PSR_EN_CFG, 0);
> >  
> > -   dev_priv->psr.enabled = NULL;
> > +   dev_priv->psr.source_ok = (dev_priv->psr.enabled = NULL);
> > mutex_unlock(_priv->psr.lock);
> >  
> > cancel_delayed_work_sync(_priv->psr.work);
> > -- 
> > 2.11.0
> 
___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


Re: [Intel-gfx] [PULL] drm-misc-fixes

2017-12-14 Thread Linus Torvalds
On Thu, Dec 14, 2017 at 6:50 AM, Daniel Vetter  wrote:
>
> Imo that's enough that I figured better not delay until Dave is back.
> Linus, can you pls apply?

Pulled.

Linus
___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


[Intel-gfx] [PULL] drm-intel-fixes

2017-12-14 Thread Jani Nikula

Hi Dave, I'm back, resuming with fixes for v4.15.

BR,
Jani.

The following changes since commit 50c4c4e268a2d7a3e58ebb698ac74da0de40ae36:

  Linux 4.15-rc3 (2017-12-10 17:56:26 -0800)

are available in the git repository at:

  git://anongit.freedesktop.org/drm/drm-intel tags/drm-intel-fixes-2017-12-14

for you to fetch changes up to 2cf654db8d7eafb973d28eb3cddf043d353e1345:

  drm/i915/fence: Use rcu to defer freeing of irq_work (2017-12-14 10:58:59 
+0200)


drm/i915 fixes for v4.15-rc4


Chris Wilson (4):
  drm/i915: Flush pending GTT writes before unbinding
  drm/i915: Drop fb reference on load_detect_pipe failure path
  drm/i915: Stop listening to request resubmission from the signaler kthread
  drm/i915/fence: Use rcu to defer freeing of irq_work

 drivers/gpu/drm/i915/i915_gem.c  |  9 +
 drivers/gpu/drm/i915/i915_sw_fence.c |  3 ++-
 drivers/gpu/drm/i915/intel_breadcrumbs.c | 22 +++---
 drivers/gpu/drm/i915/intel_display.c |  3 +--
 4 files changed, 15 insertions(+), 22 deletions(-)

-- 
Jani Nikula, Intel Open Source Technology Center
___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


Re: [Intel-gfx] [PULL] more gvt-next for 4.16

2017-12-14 Thread Rodrigo Vivi
Hi Zhenyu,

Applied to dinq. Thanks for sending this sooner.

So, regarding your question about vacations on previous email,
I will be out only coupe days... probably 26 and 27.

My next proper vacation is only in May.

Thanks,
Rodrigo.

On Thu, Dec 14, 2017 at 03:34:34AM +, Zhenyu Wang wrote:
> 
> Hi,
> 
> Please pull more gvt-next updates for 4.16. Mostly on code and
> regression fixes for last two gvt-next pulls and more refinement.
> Details below.
> 
> thanks
> --
> The following changes since commit 1603660b3342269c95fcafee1945790342a8c28e:
> 
>   drm/i915/gvt: set max priority for gvt context (2017-12-04 11:24:35 +0800)
> 
> are available in the Git repository at:
> 
>   https://github.com/intel/gvt-linux.git tags/gvt-next-2017-12-14
> 
> for you to fetch changes up to 461bd6227ede277138bf33c2156b6ebd1fba04c2:
> 
>   drm/i915/gvt/fb_decoder: Fix out-of-bounds read (2017-12-11 17:18:39 +0800)
> 
> 
> gvt-next-2017-12-14:
> 
> - fixes for two coverity scan errors (Colin)
> - mmio switch code refine (Changbin)
> - more virtual display dmabuf fixes (Tina/Gustavo)
> - misc cleanups (Pei)
> 
> 
> Changbin Du (4):
>   drm/i915/gvt: Refine the ring mmio list definition
>   drm/i915/gvt: Select appropriate mmio list at initialization time
>   drm/i915/gvt: Remove MMIO barrier in MMIO switch
>   drm/i915/gvt: Rename file render.{c, h} to mmio_context.{c, h}
> 
> Colin Ian King (2):
>   drm/i915/gvt: Add missing breaks in switch statement
>   drm/i915/gvt: fix off-by-one comparison of ring_id
> 
> Gustavo A. R. Silva (1):
>   drm/i915/gvt/fb_decoder: Fix out-of-bounds read
> 
> Pei Zhang (2):
>   drm/i915/gvt/kvmgt: fill info for ROM/VGA region
>   drm/i915/gvt: refine function emulate_mmio_read/write
> 
> Tina Zhang (1):
>   drm/i915/gvt: Refine dmabuf_obj cleanup process
> 
>  drivers/gpu/drm/i915/gvt/Makefile  |   2 +-
>  drivers/gpu/drm/i915/gvt/dmabuf.c  |  15 +-
>  drivers/gpu/drm/i915/gvt/fb_decoder.c  |   6 +
>  drivers/gpu/drm/i915/gvt/gvt.c |   2 +
>  drivers/gpu/drm/i915/gvt/gvt.h |   4 +-
>  drivers/gpu/drm/i915/gvt/handlers.c|   6 +-
>  drivers/gpu/drm/i915/gvt/kvmgt.c   |   6 +-
>  drivers/gpu/drm/i915/gvt/mmio.c|  36 ++-
>  .../gpu/drm/i915/gvt/{render.c => mmio_context.c}  | 262 
> ++---
>  .../gpu/drm/i915/gvt/{render.h => mmio_context.h}  |   9 +
>  10 files changed, 181 insertions(+), 167 deletions(-)
>  rename drivers/gpu/drm/i915/gvt/{render.c => mmio_context.c} (53%)
>  rename drivers/gpu/drm/i915/gvt/{render.h => mmio_context.h} (91%)
> 
> -- 
> Open Source Technology Center, Intel ltd.
> 
> $gpg --keyserver wwwkeys.pgp.net --recv-keys 4D781827



> ___
> Intel-gfx mailing list
> Intel-gfx@lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/intel-gfx

___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


Re: [Intel-gfx] ✓ Fi.CI.IGT: success for drm/i915: properly init lockdep class (rev2)

2017-12-14 Thread Joonas Lahtinen
On Thu, 2017-12-14 at 16:37 +, Patchwork wrote:
> == Series Details ==
> 
> Series: drm/i915: properly init lockdep class (rev2)
> URL   : https://patchwork.freedesktop.org/series/34693/
> State : success

Passed the CI and merged, thanks for the patch!

Regards, Joonas

> 
> == Summary ==
> 
> Test gem_eio:
> Subgroup suspend:
> fail   -> PASS   (shard-hsw) fdo#103990
> Test gem_softpin:
> Subgroup noreloc-s3:
> incomplete -> PASS   (shard-hsw) fdo#103540
> Test kms_cursor_crc:
> Subgroup cursor-128x128-suspend:
> skip   -> PASS   (shard-snb) fdo#103375 +1
> Test perf:
> Subgroup polling:
> fail   -> PASS   (shard-hsw) fdo#102252
> Test gem_tiled_swapping:
> Subgroup non-threaded:
> dmesg-warn -> PASS   (shard-hsw) fdo#104218 +1
> Test kms_flip:
> Subgroup modeset-vs-vblank-race:
> fail   -> PASS   (shard-hsw) fdo#103060
> 
> fdo#103990 https://bugs.freedesktop.org/show_bug.cgi?id=103990
> fdo#103540 https://bugs.freedesktop.org/show_bug.cgi?id=103540
> fdo#103375 https://bugs.freedesktop.org/show_bug.cgi?id=103375
> fdo#102252 https://bugs.freedesktop.org/show_bug.cgi?id=102252
> fdo#104218 https://bugs.freedesktop.org/show_bug.cgi?id=104218
> fdo#103060 https://bugs.freedesktop.org/show_bug.cgi?id=103060
> 
> shard-hswtotal:2712 pass:1536 dwarn:1   dfail:0   fail:10  skip:1165 
> time:9359s
> shard-snbtotal:2712 pass:1309 dwarn:1   dfail:0   fail:11  skip:1391 
> time:8017s
> Blacklisted hosts:
> shard-apltotal:2712 pass:1683 dwarn:1   dfail:0   fail:27  skip:1001 
> time:13864s
> 
> == Logs ==
> 
> For more details see: 
> https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_7496/shards.html
> ___
> Intel-gfx mailing list
> Intel-gfx@lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/intel-gfx
-- 
Joonas Lahtinen
Open Source Technology Center
Intel Corporation
___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


[Intel-gfx] ✗ Fi.CI.IGT: failure for test/kms_sysfs_edid_timing : Increase THRESHOLD_PER_CONNECTOR and THRESHOLD_TOTAL

2017-12-14 Thread Patchwork
== Series Details ==

Series: test/kms_sysfs_edid_timing : Increase THRESHOLD_PER_CONNECTOR and 
THRESHOLD_TOTAL
URL   : https://patchwork.freedesktop.org/series/35365/
State : failure

== Summary ==

Test drv_suspend:
Subgroup fence-restore-tiled2untiled-hibernate:
skip   -> FAIL   (shard-hsw) fdo#103375
Test kms_cursor_crc:
Subgroup cursor-256x256-offscreen:
pass   -> SKIP   (shard-hsw)
Test kms_flip:
Subgroup wf_vblank-vs-dpms:
pass   -> SKIP   (shard-hsw) fdo#102614
Subgroup modeset-vs-vblank-race:
fail   -> PASS   (shard-hsw) fdo#103060
Test kms_frontbuffer_tracking:
Subgroup fbc-1p-offscren-pri-shrfb-draw-render:
pass   -> FAIL   (shard-snb) fdo#101623 +1
Test kms_plane:
Subgroup plane-panning-bottom-right-suspend-pipe-b-planes:
pass   -> SKIP   (shard-snb)
Test gem_tiled_swapping:
Subgroup non-threaded:
dmesg-warn -> PASS   (shard-hsw) fdo#104218 +1
Test perf_pmu:
Subgroup semaphore-wait-bcs0:
skip   -> INCOMPLETE (shard-hsw)

fdo#103375 https://bugs.freedesktop.org/show_bug.cgi?id=103375
fdo#102614 https://bugs.freedesktop.org/show_bug.cgi?id=102614
fdo#103060 https://bugs.freedesktop.org/show_bug.cgi?id=103060
fdo#101623 https://bugs.freedesktop.org/show_bug.cgi?id=101623
fdo#104218 https://bugs.freedesktop.org/show_bug.cgi?id=104218

shard-hswtotal:2644 pass:1502 dwarn:1   dfail:0   fail:9   skip:1131 
time:9171s
shard-snbtotal:2712 pass:1306 dwarn:1   dfail:0   fail:13  skip:1392 
time:8004s
Blacklisted hosts:
shard-apltotal:2712 pass:1684 dwarn:1   dfail:0   fail:26  skip:1001 
time:13788s
shard-kbltotal:2635 pass:1746 dwarn:1   dfail:0   fail:31  skip:855 
time:10583s

== Logs ==

For more details see: 
https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_670/shards.html
___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


[Intel-gfx] [PULL] drm-misc-next

2017-12-14 Thread Gustavo Padovan
Hi Dave,

More of the same. A lot of improvements from Noralf on this one. Nothing
really big here.

Regards,

Gustavo

drm-misc-next-2017-12-14:
drm-misc-next for 4.16:

Cross-subsystem Changes:

 - Documentation for amlogic dt dt-bindings

Core Changes:

 - Update edid-derived drm_display_info fields at edid property set

Driver Changes:

 - A bunch of clean up from Noralf, including the last patches to reduce
 fbdev emulation footprint.
The following changes since commit bc29489f712079378081e43d5b1b7470ed70184d:

  drm/sun4i: Fix uninitialized variables in vi layer (2017-12-07 09:51:41 +0100)

are available in the git repository at:

  git://anongit.freedesktop.org/drm/drm-misc tags/drm-misc-next-2017-12-14

for you to fetch changes up to ca40cfc85e548424e39dc3aebe61873535ddf7b6:

  drm/atomic-helper: Make zpos property kerneldoc less misleading (2017-12-14 
14:20:35 +0100)


drm-misc-next for 4.16:

Cross-subsystem Changes:

 - Documentation for amlogic dt dt-bindings

Core Changes:

 - Update edid-derived drm_display_info fields at edid property set

Driver Changes:

 - A bunch of clean up from Noralf, including the last patches to reduce
 fbdev emulation footprint.


Daniel Vetter (1):
  drm: More debug info for fb leaks in mode_config_cleanup

Jani Nikula (1):
  MAINTAINERS: Remove Jani as drm-misc co-maintainer

Keith Packard (1):
  drm: Update edid-derived drm_display_info fields at edid property set [v2]

Neil Armstrong (4):
  dt-bindings: display: amlogic, meson-vpu: Add optional power domain 
property
  dt-bindings: display: amlogic, meson-dw-hdmi: Add optional HDMI 5V 
regulator
  drm/meson: dw_hdmi: Add support for an optional external 5V regulator
  drm/meson: Add missing VPU init

Noralf Trønnes (22):
  drm/armada: Use drm_fb_helper_lastclose() and _poll_changed()
  drm/exynos: Use drm_fb_helper_lastclose() and _poll_changed()
  drm/gma500: Use drm_fb_helper_lastclose() and _poll_changed()
  drm/msm: Use drm_fb_helper_lastclose() and _poll_changed()
  drm/nouveau: Use drm_fb_helper_output_poll_changed()
  drm/omap: Use drm_fb_helper_lastclose() and _poll_changed()
  drm/rockchip: Use drm_fb_helper_lastclose() and _poll_changed()
  drm/tegra: Use drm_fb_helper_lastclose() and _poll_changed()
  drm/gem-fb-helper: drm_gem_fbdev_fb_create() make funcs optional
  drm/cma-helper: Add drm_fb_cma_fbdev_init/fini()
  drm/atmel-hlcdc: Use drm_fb_cma_fbdev_init/fini()
  drm/imx: Use drm_fb_cma_fbdev_init/fini()
  drm/pl111: Use drm_fb_cma_fbdev_init/fini()
  drm/sti: Use drm_fb_cma_fbdev_init/fini()
  drm/stm: Use drm_fb_cma_fbdev_init/fini()
  drm/sun4i: Use drm_fb_cma_fbdev_init/fini()
  drm/tilcdc: Use drm_fb_cma_fbdev_init/fini()
  drm/tve200: Use drm_fb_cma_fbdev_init/fini()
  drm/vc4: Use drm_fb_cma_fbdev_init/fini()
  drm/zte: Use drm_fb_cma_fbdev_init/fini()
  drm/arm/mali: Use drm_fb_cma_fbdev_init/fini()
  drm/tinydrm: Use drm_fb_cma_fbdev_init_with_funcs/fini()

Thierry Reding (1):
  drm/atomic-helper: Make zpos property kerneldoc less misleading

 .../bindings/display/amlogic,meson-dw-hdmi.txt |   4 +
 .../bindings/display/amlogic,meson-vpu.txt |   4 +
 Documentation/gpu/todo.rst |   5 -
 MAINTAINERS|   1 -
 drivers/gpu/drm/arm/malidp_drv.c   |  39 ++-
 drivers/gpu/drm/arm/malidp_drv.h   |   1 -
 drivers/gpu/drm/armada/armada_drm.h|   1 -
 drivers/gpu/drm/armada/armada_drv.c|   8 +-
 drivers/gpu/drm/armada/armada_fb.c |  11 +-
 drivers/gpu/drm/armada/armada_fbdev.c  |   8 --
 drivers/gpu/drm/atmel-hlcdc/atmel_hlcdc_dc.c   |  26 +
 drivers/gpu/drm/atmel-hlcdc/atmel_hlcdc_dc.h   |   2 +-
 drivers/gpu/drm/drm_blend.c|   8 +-
 drivers/gpu/drm/drm_connector.c|  13 +++
 drivers/gpu/drm/drm_edid.c |  53 ++---
 drivers/gpu/drm/drm_fb_cma_helper.c| 119 -
 drivers/gpu/drm/drm_gem_framebuffer_helper.c   |   6 +-
 drivers/gpu/drm/drm_mode_config.c  |   3 +
 drivers/gpu/drm/exynos/exynos_drm_drv.c|   8 +-
 drivers/gpu/drm/exynos/exynos_drm_fb.c |   2 +-
 drivers/gpu/drm/exynos/exynos_drm_fbdev.c  |  18 
 drivers/gpu/drm/exynos/exynos_drm_fbdev.h  |   2 -
 drivers/gpu/drm/gma500/framebuffer.c   |   9 +-
 drivers/gpu/drm/gma500/psb_drv.c   |  15 +--
 drivers/gpu/drm/imx/imx-drm-core.c |  33 ++
 drivers/gpu/drm/imx/imx-drm.h  |   1 -
 drivers/gpu/drm/meson/meson_drv.c  |   9 ++
 drivers/gpu/drm/meson/meson_dw_hdmi.c  

Re: [Intel-gfx] [PATCH i-g-t 4/6] i-g-t kms_plane_scaling: test scaling with tiling rotation and pixel formats

2017-12-14 Thread Srinivas, Vidya


> -Original Message-
> From: Daniel Vetter [mailto:daniel.vet...@ffwll.ch] On Behalf Of Daniel
> Vetter
> Sent: Thursday, December 14, 2017 4:25 PM
> To: Srinivas, Vidya 
> Cc: intel-gfx@lists.freedesktop.org; Vetter, Daniel 
> Subject: Re: [Intel-gfx] [PATCH i-g-t 4/6] i-g-t kms_plane_scaling: test
> scaling with tiling rotation and pixel formats
> 
> Just a quick comment at the bottom.
> 
> On Wed, Dec 13, 2017 at 03:20:50PM +0530, Vidya Srinivas wrote:
> > @@ -312,23 +480,40 @@ static void test_plane_scaling(data_t *d, enum
> pipe pipe)
> > igt_require_f(valid_tests, "no valid crtc/connector combinations
> > found\n");  }
> >
> > -igt_simple_main
> > +igt_main
> >  {
> > data_t data = {};
> > enum pipe pipe;
> >
> > igt_skip_on_simulation();
> >
> > -
> > -   data.drm_fd = drm_open_driver(DRIVER_INTEL);
> > -   igt_require_pipe_crc(data.drm_fd);
> > -   igt_display_init(, data.drm_fd);
> > -   data.devid = intel_get_drm_devid(data.drm_fd);
> > +   igt_fixture {
> > +   data.drm_fd = drm_open_driver(DRIVER_INTEL);
> > +   kmstest_set_vt_graphics_mode();
> > +   igt_require_pipe_crc(data.drm_fd);
> > +   igt_display_init(, data.drm_fd);
> > +   data.devid = intel_get_drm_devid(data.drm_fd);
> > +   igt_require_gem(data.drm_fd);
> > +   }
> >
> > data.num_scalers = intel_gen(data.devid) >= 9 ? 2 : 0;
> 
> Hm, would be nice if we could get rid of this hard-coded platform
> knowledge and autodiscover. But atm the kernel doesn't expose a
> "can_scale" property unfortunately. Maybe add a FIXME comment?
> 
> Real reason I'm commenting here: You probably need to put this into the
> igt_fixture too, since otherwise you're test won't run correctly when just
> enumerating tests.
> 
> >
> > -   for_each_pipe_static(pipe)
> > -   test_plane_scaling(, pipe);
> > +   for_each_pipe_static(pipe) {
> > +
> > +   igt_subtest_f("scaler_basic_test") {
> > +   test_plane_scaling(, pipe);
> > +   }
> > +
> > +   igt_subtest_f("scaler_with_pixel_format") {
> > +   test_scaler_with_pixel_format(, pipe);
> > +   }
> >
> > -   igt_display_fini();
> > +   igt_subtest_f("scaler_with_rotation") {
> > +   test_scaler_with_rotation(, pipe);
> > +   }
> > +
> > +   igt_fixture {
> > +   igt_display_fini();
> > +   }
> > +   }
> 
> Just a quick drive-by: You probably want to convert to subtest-based testing
> as the very first patch (without any functional tests). In your current series
> you add more subtests while still using igt_simple_main, which will blow
> up.
> 
> The goal of a split up patch series isn't just to make review easier, but also
> testing: Every single step in your series is supposed to be a fully functional
> codebase. When you're not much experienced with building up such a patch
> series, it's good practice to double-check that before sending. I tend to use
> git rebase -x $test-script to automate that if possible. That way you can
> make sure that every single step in your patch series builds (cleanly!) and
> results in a working testcases (which should only change results if your patch
> aims to do that, not as some side-effect).

Thank you. Sorry if there is any mistake here. But when we have added subtests 
we have changed it to igt_main and not simple.
Before that we have not added subtests. We followed whatever you suggested - as 
in, first patch would correct just whatever is
Not working as of now. Then in the later tests we added new subtests with 
enhancements. We ran all the tests once (I am sorry,
Not the way you mentioned) fully and it ran on our APL board.

Regards
Vidya

> 
> Cheers, Daniel
> --
> Daniel Vetter
> Software Engineer, Intel Corporation
> http://blog.ffwll.ch
___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


[Intel-gfx] ✓ Fi.CI.IGT: success for drm/i915: properly init lockdep class (rev2)

2017-12-14 Thread Patchwork
== Series Details ==

Series: drm/i915: properly init lockdep class (rev2)
URL   : https://patchwork.freedesktop.org/series/34693/
State : success

== Summary ==

Test gem_eio:
Subgroup suspend:
fail   -> PASS   (shard-hsw) fdo#103990
Test gem_softpin:
Subgroup noreloc-s3:
incomplete -> PASS   (shard-hsw) fdo#103540
Test kms_cursor_crc:
Subgroup cursor-128x128-suspend:
skip   -> PASS   (shard-snb) fdo#103375 +1
Test perf:
Subgroup polling:
fail   -> PASS   (shard-hsw) fdo#102252
Test gem_tiled_swapping:
Subgroup non-threaded:
dmesg-warn -> PASS   (shard-hsw) fdo#104218 +1
Test kms_flip:
Subgroup modeset-vs-vblank-race:
fail   -> PASS   (shard-hsw) fdo#103060

fdo#103990 https://bugs.freedesktop.org/show_bug.cgi?id=103990
fdo#103540 https://bugs.freedesktop.org/show_bug.cgi?id=103540
fdo#103375 https://bugs.freedesktop.org/show_bug.cgi?id=103375
fdo#102252 https://bugs.freedesktop.org/show_bug.cgi?id=102252
fdo#104218 https://bugs.freedesktop.org/show_bug.cgi?id=104218
fdo#103060 https://bugs.freedesktop.org/show_bug.cgi?id=103060

shard-hswtotal:2712 pass:1536 dwarn:1   dfail:0   fail:10  skip:1165 
time:9359s
shard-snbtotal:2712 pass:1309 dwarn:1   dfail:0   fail:11  skip:1391 
time:8017s
Blacklisted hosts:
shard-apltotal:2712 pass:1683 dwarn:1   dfail:0   fail:27  skip:1001 
time:13864s

== Logs ==

For more details see: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_7496/shards.html
___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


[Intel-gfx] ✓ Fi.CI.BAT: success for test/kms_sysfs_edid_timing : Increase THRESHOLD_PER_CONNECTOR and THRESHOLD_TOTAL

2017-12-14 Thread Patchwork
== Series Details ==

Series: test/kms_sysfs_edid_timing : Increase THRESHOLD_PER_CONNECTOR and 
THRESHOLD_TOTAL
URL   : https://patchwork.freedesktop.org/series/35365/
State : success

== Summary ==

IGT patchset tested on top of latest successful build
103af7286e2d1014e3d7126691fe046ab2c9f73e lib: Ask the kernel to quiesce the GPU

with latest DRM-Tip kernel build CI_DRM_3518
b00330d88cf3 drm-tip: 2017y-12m-14d-14h-56m-59s UTC integration manifest

No testlist changes.

Test debugfs_test:
Subgroup read_all_entries:
incomplete -> PASS   (fi-snb-2520m) fdo#103713 +1
Test gem_sync:
Subgroup basic-all:
fail   -> DMESG-FAIL (fi-blb-e6850) fdo#104259
Test kms_chamelium:
Subgroup dp-crc-fast:
pass   -> DMESG-FAIL (fi-kbl-7500u) fdo#103841
Test kms_pipe_crc_basic:
Subgroup suspend-read-crc-pipe-c:
dmesg-warn -> PASS   (fi-kbl-r) fdo#104172

fdo#103713 https://bugs.freedesktop.org/show_bug.cgi?id=103713
fdo#104259 https://bugs.freedesktop.org/show_bug.cgi?id=104259
fdo#103841 https://bugs.freedesktop.org/show_bug.cgi?id=103841
fdo#104172 https://bugs.freedesktop.org/show_bug.cgi?id=104172

fi-bdw-5557u total:288  pass:267  dwarn:0   dfail:0   fail:0   skip:21  
time:439s
fi-bdw-gvtdvmtotal:288  pass:264  dwarn:0   dfail:0   fail:0   skip:24  
time:445s
fi-blb-e6850 total:288  pass:222  dwarn:1   dfail:1   fail:0   skip:64  
time:395s
fi-bsw-n3050 total:288  pass:242  dwarn:0   dfail:0   fail:0   skip:46  
time:517s
fi-bwr-2160  total:288  pass:183  dwarn:0   dfail:0   fail:0   skip:105 
time:280s
fi-bxt-dsi   total:288  pass:258  dwarn:0   dfail:0   fail:0   skip:30  
time:500s
fi-bxt-j4205 total:288  pass:259  dwarn:0   dfail:0   fail:0   skip:29  
time:501s
fi-byt-j1900 total:288  pass:253  dwarn:0   dfail:0   fail:0   skip:35  
time:483s
fi-byt-n2820 total:288  pass:249  dwarn:0   dfail:0   fail:0   skip:39  
time:473s
fi-elk-e7500 total:224  pass:163  dwarn:15  dfail:0   fail:0   skip:45 
fi-gdg-551   total:288  pass:178  dwarn:1   dfail:0   fail:1   skip:108 
time:267s
fi-glk-1 total:288  pass:260  dwarn:0   dfail:0   fail:0   skip:28  
time:533s
fi-hsw-4770  total:288  pass:261  dwarn:0   dfail:0   fail:0   skip:27  
time:409s
fi-hsw-4770r total:288  pass:261  dwarn:0   dfail:0   fail:0   skip:27  
time:416s
fi-ilk-650   total:288  pass:228  dwarn:0   dfail:0   fail:0   skip:60  
time:390s
fi-ivb-3520m total:288  pass:259  dwarn:0   dfail:0   fail:0   skip:29  
time:484s
fi-ivb-3770  total:288  pass:255  dwarn:0   dfail:0   fail:0   skip:33  
time:427s
fi-kbl-7500u total:288  pass:262  dwarn:1   dfail:1   fail:0   skip:24  
time:488s
fi-kbl-7560u total:288  pass:268  dwarn:1   dfail:0   fail:0   skip:19  
time:528s
fi-kbl-7567u total:288  pass:268  dwarn:0   dfail:0   fail:0   skip:20  
time:464s
fi-kbl-r total:288  pass:261  dwarn:0   dfail:0   fail:0   skip:27  
time:522s
fi-pnv-d510  total:288  pass:221  dwarn:1   dfail:0   fail:1   skip:65  
time:596s
fi-skl-6260u total:288  pass:268  dwarn:0   dfail:0   fail:0   skip:20  
time:447s
fi-skl-6600u total:288  pass:260  dwarn:1   dfail:0   fail:0   skip:27  
time:534s
fi-skl-6700hqtotal:288  pass:261  dwarn:1   dfail:0   fail:0   skip:26  
time:561s
fi-skl-6770hqtotal:288  pass:268  dwarn:0   dfail:0   fail:0   skip:20  
time:493s
fi-skl-gvtdvmtotal:288  pass:265  dwarn:0   dfail:0   fail:0   skip:23  
time:451s
fi-snb-2520m total:245  pass:211  dwarn:0   dfail:0   fail:0   skip:33 
fi-snb-2600  total:288  pass:248  dwarn:0   dfail:0   fail:0   skip:40  
time:416s
Blacklisted hosts:
fi-cfl-s2total:288  pass:262  dwarn:0   dfail:0   fail:0   skip:26  
time:597s
fi-cnl-y total:288  pass:262  dwarn:0   dfail:0   fail:0   skip:26  
time:619s

== Logs ==

For more details see: 
https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_670/issues.html
___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


[Intel-gfx] [PATCH i-g-t] test/kms_sysfs_edid_timing : Increase THRESHOLD_PER_CONNECTOR and THRESHOLD_TOTAL

2017-12-14 Thread Marta Lofstedt
The discussion on how to fix the issues has been stagnant for a
long time, see the Bugzilla below and:
https://patchwork.freedesktop.org/patch/170429/

After only changing display cable the result of my machine went
from always failing to hit a WARN. This is also illustrated on
CI-shards, where the shard-apl flip-flop between pass and WARN
and the shard-kbl always fail. This made me realize that the
THRESHOLD_PER_CONNECTOR also needed to be updated, while previous
discussion only touched the THRESHOLD_TOTAL. As discussed in
provided links the motivation for this test is to discover big
anomalies in edid timings, but with the current tight thresholds
we are hitting the issues too often.

Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=100047
Signed-off-by: Marta Lofstedt 
---
 tests/kms_sysfs_edid_timing.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/tests/kms_sysfs_edid_timing.c b/tests/kms_sysfs_edid_timing.c
index 12013881..7dbd3fe6 100644
--- a/tests/kms_sysfs_edid_timing.c
+++ b/tests/kms_sysfs_edid_timing.c
@@ -26,8 +26,8 @@
 #include 
 #include 
 
-#define THRESHOLD_PER_CONNECTOR10
-#define THRESHOLD_TOTAL50
+#define THRESHOLD_PER_CONNECTOR15
+#define THRESHOLD_TOTAL95
 #define CHECK_TIMES15
 
 IGT_TEST_DESCRIPTION("This check the time we take to read the content of all "
-- 
2.11.0

___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


[Intel-gfx] ✓ Fi.CI.IGT: success for drm/i915: properly init lockdep class (rev2)

2017-12-14 Thread Patchwork
== Series Details ==

Series: drm/i915: properly init lockdep class (rev2)
URL   : https://patchwork.freedesktop.org/series/34693/
State : success

== Summary ==

Test gem_tiled_swapping:
Subgroup non-threaded:
dmesg-warn -> PASS   (shard-hsw) fdo#104218 +1
Test kms_cursor_crc:
Subgroup cursor-128x128-suspend:
pass   -> SKIP   (shard-hsw) fdo#103375
Subgroup cursor-64x64-suspend:
incomplete -> PASS   (shard-hsw) fdo#103540
Test kms_setmode:
Subgroup basic:
fail   -> PASS   (shard-hsw) fdo#99912

fdo#104218 https://bugs.freedesktop.org/show_bug.cgi?id=104218
fdo#103375 https://bugs.freedesktop.org/show_bug.cgi?id=103375
fdo#103540 https://bugs.freedesktop.org/show_bug.cgi?id=103540
fdo#99912 https://bugs.freedesktop.org/show_bug.cgi?id=99912

shard-hswtotal:2712 pass:1536 dwarn:1   dfail:0   fail:10  skip:1165 
time:9415s
shard-snbtotal:2712 pass:1309 dwarn:1   dfail:0   fail:11  skip:1391 
time:8031s
Blacklisted hosts:
shard-apltotal:2712 pass:1683 dwarn:1   dfail:0   fail:27  skip:1001 
time:13819s
shard-kbltotal:2712 pass:1799 dwarn:1   dfail:0   fail:30  skip:882 
time:11050s

== Logs ==

For more details see: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_7495/shards.html
___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


Re: [Intel-gfx] [PATCH] drm/915/psr: Set psr.source_ok during atomic_check

2017-12-14 Thread Ville Syrjälä
On Tue, Dec 12, 2017 at 04:59:34PM -0800, Dhinakaran Pandiyan wrote:
> Since commit 4d90f2d507ab ("drm/i915: Start tracking PSR state in crtc
> state"), we check whether PSR can be enabled or not in
> psr_compute_config(). Given that the psr.source_ok field is supposed to
> track this check, set the field in psr_compute_config() as well.

NAK. compute_config() isn't allowed to change global state since the
modeset can still fail later, or this might in fact be a
TEST_ONLY operation.

> 
> Now tests can distinguish between PSR not enabled due to unmet mode
> requirements and something going wrong during commit.
> 
> Cc: Rodrigo Vivi 
> Cc: Ville Syrjälä 
> Signed-off-by: Dhinakaran Pandiyan 
> ---
>  drivers/gpu/drm/i915/intel_psr.c | 10 +-
>  1 file changed, 5 insertions(+), 5 deletions(-)
> 
> diff --git a/drivers/gpu/drm/i915/intel_psr.c 
> b/drivers/gpu/drm/i915/intel_psr.c
> index a1ad85fa5c1a..b59a956047ff 100644
> --- a/drivers/gpu/drm/i915/intel_psr.c
> +++ b/drivers/gpu/drm/i915/intel_psr.c
> @@ -358,6 +358,8 @@ void intel_psr_compute_config(struct intel_dp *intel_dp,
>   _state->base.adjusted_mode;
>   int psr_setup_time;
>  
> + dev_priv->psr.source_ok = false;
> +
>   if (!HAS_PSR(dev_priv))
>   return;
>  
> @@ -420,7 +422,7 @@ void intel_psr_compute_config(struct intel_dp *intel_dp,
>* caps during eDP detection.
>*/
>   if (!dev_priv->psr.psr2_support) {
> - crtc_state->has_psr = true;
> + dev_priv->psr.source_ok = (crtc_state->has_psr = true);
>   return;
>   }
>  
> @@ -440,7 +442,7 @@ void intel_psr_compute_config(struct intel_dp *intel_dp,
>   return;
>   }
>  
> - crtc_state->has_psr = true;
> + dev_priv->psr.source_ok = (crtc_state->has_psr = true);
>   crtc_state->has_psr2 = true;
>  }
>  
> @@ -522,8 +524,6 @@ void intel_psr_enable(struct intel_dp *intel_dp,
>   }
>  
>   dev_priv->psr.psr2_support = crtc_state->has_psr2;
> - dev_priv->psr.source_ok = true;
> -
>   dev_priv->psr.busy_frontbuffer_bits = 0;
>  
>   dev_priv->psr.setup_vsc(intel_dp, crtc_state);
> @@ -657,7 +657,7 @@ void intel_psr_disable(struct intel_dp *intel_dp,
>   /* Disable PSR on Sink */
>   drm_dp_dpcd_writeb(_dp->aux, DP_PSR_EN_CFG, 0);
>  
> - dev_priv->psr.enabled = NULL;
> + dev_priv->psr.source_ok = (dev_priv->psr.enabled = NULL);
>   mutex_unlock(_priv->psr.lock);
>  
>   cancel_delayed_work_sync(_priv->psr.work);
> -- 
> 2.11.0

-- 
Ville Syrjälä
Intel OTC
___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


[Intel-gfx] [PULL] drm-misc-fixes

2017-12-14 Thread Daniel Vetter
Hi Linus,

drm-misc-fixes-2017-12-14:

drm-misc-fixes for 4.15-rc4

2 fixes for new core features, a corner case fix for the connnector_iter
fix from last week (that one is cc: stable) and 1 vc4 fix.

Imo that's enough that I figured better not delay until Dave is back.
Linus, can you pls apply? i915 CI is happy, but then the connector_iter
patch from last week blew up on some arm driver on probe-defer, so who
knows :-)

Cheers, Daniel

The following changes since commit 90eeb3aa34831ff3d031589c0c24892eb8a07e51:

  Merge tag 'drm-misc-fixes-2017-12-07' of 
git://anongit.freedesktop.org/drm/drm-misc into drm-fixes (2017-12-08 08:17:53 
+1000)

are available in the Git repository at:

  git://anongit.freedesktop.org/drm/drm-misc tags/drm-misc-fixes-2017-12-14

for you to fetch changes up to bd36d3bab2e3d08f80766c86487090dbceed4651:

  drm/drm_lease: Prevent deadlock in case drm_lease_create() fails (2017-12-14 
08:25:37 +0100)


drm-misc-fixes for 4.15-rc4


Daniel Vetter (1):
  drm: rework delayed connector cleanup in connector_iter

Keith Packard (1):
  drm: Update edid-derived drm_display_info fields at edid property set [v2]

Marius Vlad (1):
  drm/drm_lease: Prevent deadlock in case drm_lease_create() fails

Stefan Schake (1):
  drm/vc4: Release fence after signalling

 drivers/gpu/drm/drm_connector.c | 63 -
 drivers/gpu/drm/drm_crtc_internal.h |  1 +
 drivers/gpu/drm/drm_edid.c  | 52 +-
 drivers/gpu/drm/drm_lease.c |  4 +--
 drivers/gpu/drm/drm_mode_config.c   |  5 ++-
 drivers/gpu/drm/vc4/vc4_gem.c   |  4 ++-
 drivers/gpu/drm/vc4/vc4_irq.c   |  1 +
 include/drm/drm_connector.h | 10 +++---
 include/drm/drm_edid.h  |  2 ++
 include/drm/drm_mode_config.h   | 18 ++-
 10 files changed, 122 insertions(+), 38 deletions(-)

-- 
Daniel Vetter
Software Engineer, Intel Corporation
http://blog.ffwll.ch
___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


[Intel-gfx] ✓ Fi.CI.IGT: success for drm/i915: Show engine state when hangcheck detects a stall

2017-12-14 Thread Patchwork
== Series Details ==

Series: drm/i915: Show engine state when hangcheck detects a stall
URL   : https://patchwork.freedesktop.org/series/35354/
State : success

== Summary ==

Test gem_tiled_swapping:
Subgroup non-threaded:
dmesg-warn -> PASS   (shard-hsw) fdo#104218 +1
Test kms_frontbuffer_tracking:
Subgroup fbc-1p-offscren-pri-shrfb-draw-blt:
pass   -> FAIL   (shard-snb) fdo#101623
Test kms_cursor_crc:
Subgroup cursor-64x64-suspend:
incomplete -> PASS   (shard-hsw) fdo#103540
Test drv_suspend:
Subgroup fence-restore-tiled2untiled-hibernate:
fail   -> SKIP   (shard-hsw) fdo#103375

fdo#104218 https://bugs.freedesktop.org/show_bug.cgi?id=104218
fdo#101623 https://bugs.freedesktop.org/show_bug.cgi?id=101623
fdo#103540 https://bugs.freedesktop.org/show_bug.cgi?id=103540
fdo#103375 https://bugs.freedesktop.org/show_bug.cgi?id=103375

shard-hswtotal:2636 pass:1493 dwarn:1   dfail:0   fail:9   skip:1133 
time:9263s
shard-snbtotal:2712 pass:1308 dwarn:1   dfail:0   fail:12  skip:1391 
time:8042s
Blacklisted hosts:
shard-apltotal:2712 pass:1679 dwarn:2   dfail:0   fail:29  skip:1001 
time:13774s
shard-kbltotal:2712 pass:1771 dwarn:3   dfail:0   fail:31  skip:907 
time:10558s

== Logs ==

For more details see: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_7494/shards.html
___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


Re: [Intel-gfx] Non-blocking commits on -ERESTARTSYS

2017-12-14 Thread Leo Li



On 2017-12-13 02:24 PM, Leo Li wrote:



On 2017-12-13 12:23 PM, Maarten Lankhorst wrote:

Op 13-12-17 om 17:19 schreef Leo Li:

Hi Daniel, Maarten,

Just digging an old thread out of the grave:
https://lists.freedesktop.org/archives/dri-devel/2017-August/150495.html

It's suppose to fix a memory leak on the drm_commit object during
non-blocking commits. Within drm_atomic_helper_setup_commit, a reference
to the commit object is obtained by the new_crtc_state. This reference
is suppose to be 'put' once flip_done is signaled (via the
release_crtc_commit callback), but never happens if .prepare_fb returns
-ERESTARTSYS: drm_atomic_helper_commit early returns before the
commit_tail work is queued.

We're starting to bump into this issue again. Regarding Daniel's
suggestion for an IGT test, has there been any work done on it? I'd be
interested in taking a look otherwise. As a side note, I can also
reproduce this on i915.

Thanks,
Leo


I'm curious, isn't it better to handle this in 
__drm_atomic_helper_crtc_destroy_state with the attached patch?


Good point, it seems sane to me. I gave it a spin and it fixes the issue.

I was concerned that it'll contend with the worker thread, possibly
freeing the crtc_commit before the flip is done. It seems the
atomic_state_get before the work is queued will prevent that.

Leo



No idea if sane though, but drivers are supposed to clear 
crtc_state->event on success..


Hi Maarten,

If there are no objections, can I submit a patch with your change below?

Thanks,
Leo



diff --git a/drivers/gpu/drm/drm_atomic_helper.c 
b/drivers/gpu/drm/drm_atomic_helper.c

index 593b30d38ce0..e71233b4c651 100644
--- a/drivers/gpu/drm/drm_atomic_helper.c
+++ b/drivers/gpu/drm/drm_atomic_helper.c
@@ -3435,6 +3435,8 @@ 
EXPORT_SYMBOL(drm_atomic_helper_crtc_duplicate_state);
 void __drm_atomic_helper_crtc_destroy_state(struct drm_crtc_state 
*state)

 {
 if (state->commit) {
+    if (state->event)
+    drm_crtc_commit_put(state->commit);
 kfree(state->commit->event);
 state->commit->event = NULL;
 drm_crtc_commit_put(state->commit);

___
dri-devel mailing list
dri-de...@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


[Intel-gfx] ✗ Fi.CI.IGT: failure for HAX: fast feedback irq affinity..

2017-12-14 Thread Patchwork
== Series Details ==

Series: HAX: fast feedback irq affinity..
URL   : https://patchwork.freedesktop.org/series/35349/
State : failure

== Summary ==

Test gem_tiled_pread_basic:
incomplete -> PASS   (shard-hsw) fdo#104218 +1
Test kms_cursor_crc:
Subgroup cursor-64x64-suspend:
incomplete -> PASS   (shard-hsw) fdo#103540 +1
Test gem_userptr_blits:
Subgroup coherency-unsync:
pass   -> INCOMPLETE (shard-snb)
pass   -> INCOMPLETE (shard-hsw)
Test kms_busy:
Subgroup extended-modeset-hang-newfb-with-reset-render-b:
pass   -> SKIP   (shard-snb)
Subgroup extended-modeset-hang-newfb-with-reset-render-a:
pass   -> SKIP   (shard-snb)
Test kms_frontbuffer_tracking:
Subgroup fbc-rgb101010-draw-render:
pass   -> SKIP   (shard-snb) fdo#103167
Test gem_eio:
Subgroup suspend:
pass   -> INCOMPLETE (shard-hsw) fdo#103990
Test drv_suspend:
Subgroup fence-restore-tiled2untiled-hibernate:
fail   -> SKIP   (shard-hsw) fdo#103375
Test kms_plane:
Subgroup plane-panning-bottom-right-suspend-pipe-b-planes:
pass   -> FAIL   (shard-hsw)
Test gem_exec_await:
Subgroup wide-all:
pass   -> INCOMPLETE (shard-hsw)

fdo#104218 https://bugs.freedesktop.org/show_bug.cgi?id=104218
fdo#103540 https://bugs.freedesktop.org/show_bug.cgi?id=103540
fdo#103167 https://bugs.freedesktop.org/show_bug.cgi?id=103167
fdo#103990 https://bugs.freedesktop.org/show_bug.cgi?id=103990
fdo#103375 https://bugs.freedesktop.org/show_bug.cgi?id=103375

shard-hswtotal:2524 pass:1428 dwarn:1   dfail:0   fail:8   skip:1083 
time:8371s
shard-snbtotal:2685 pass:1293 dwarn:1   dfail:0   fail:11  skip:1379 
time:7894s

== Logs ==

For more details see: 
https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_669/shards.html
___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


[Intel-gfx] ✓ Fi.CI.BAT: success for drm/i915: properly init lockdep class (rev2)

2017-12-14 Thread Patchwork
== Series Details ==

Series: drm/i915: properly init lockdep class (rev2)
URL   : https://patchwork.freedesktop.org/series/34693/
State : success

== Summary ==

Series 34693v2 drm/i915: properly init lockdep class
https://patchwork.freedesktop.org/api/1.0/series/34693/revisions/2/mbox/

Test gem_exec_suspend:
Subgroup basic-s4-devices:
dmesg-warn -> PASS   (fi-elk-e7500) fdo#103989
Test gem_mmap_gtt:
Subgroup basic-small-bo-tiledx:
pass   -> FAIL   (fi-gdg-551) fdo#102575
Test kms_pipe_crc_basic:
Subgroup suspend-read-crc-pipe-b:
pass   -> INCOMPLETE (fi-snb-2520m) fdo#103713
Test kms_psr_sink_crc:
Subgroup psr_basic:
pass   -> DMESG-WARN (fi-skl-6700hq) fdo#101144

fdo#103989 https://bugs.freedesktop.org/show_bug.cgi?id=103989
fdo#102575 https://bugs.freedesktop.org/show_bug.cgi?id=102575
fdo#103713 https://bugs.freedesktop.org/show_bug.cgi?id=103713
fdo#101144 https://bugs.freedesktop.org/show_bug.cgi?id=101144

fi-bdw-5557u total:288  pass:267  dwarn:0   dfail:0   fail:0   skip:21  
time:438s
fi-bdw-gvtdvmtotal:288  pass:264  dwarn:0   dfail:0   fail:0   skip:24  
time:436s
fi-blb-e6850 total:288  pass:222  dwarn:1   dfail:0   fail:1   skip:64  
time:386s
fi-bsw-n3050 total:288  pass:242  dwarn:0   dfail:0   fail:0   skip:46  
time:503s
fi-bwr-2160  total:288  pass:183  dwarn:0   dfail:0   fail:0   skip:105 
time:279s
fi-bxt-dsi   total:288  pass:258  dwarn:0   dfail:0   fail:0   skip:30  
time:495s
fi-bxt-j4205 total:288  pass:259  dwarn:0   dfail:0   fail:0   skip:29  
time:497s
fi-byt-j1900 total:288  pass:253  dwarn:0   dfail:0   fail:0   skip:35  
time:477s
fi-byt-n2820 total:288  pass:249  dwarn:0   dfail:0   fail:0   skip:39  
time:475s
fi-elk-e7500 total:224  pass:164  dwarn:14  dfail:0   fail:0   skip:45 
fi-gdg-551   total:288  pass:178  dwarn:1   dfail:0   fail:1   skip:108 
time:264s
fi-glk-1 total:288  pass:260  dwarn:0   dfail:0   fail:0   skip:28  
time:524s
fi-hsw-4770  total:288  pass:261  dwarn:0   dfail:0   fail:0   skip:27  
time:404s
fi-hsw-4770r total:288  pass:261  dwarn:0   dfail:0   fail:0   skip:27  
time:414s
fi-ilk-650   total:288  pass:228  dwarn:0   dfail:0   fail:0   skip:60  
time:393s
fi-ivb-3520m total:288  pass:259  dwarn:0   dfail:0   fail:0   skip:29  
time:477s
fi-ivb-3770  total:288  pass:255  dwarn:0   dfail:0   fail:0   skip:33  
time:424s
fi-kbl-7500u total:288  pass:263  dwarn:1   dfail:0   fail:0   skip:24  
time:475s
fi-kbl-7560u total:288  pass:268  dwarn:1   dfail:0   fail:0   skip:19  
time:522s
fi-kbl-7567u total:288  pass:268  dwarn:0   dfail:0   fail:0   skip:20  
time:470s
fi-kbl-r total:288  pass:260  dwarn:1   dfail:0   fail:0   skip:27  
time:534s
fi-pnv-d510  total:288  pass:221  dwarn:1   dfail:0   fail:1   skip:65  
time:585s
fi-skl-6260u total:288  pass:268  dwarn:0   dfail:0   fail:0   skip:20  
time:450s
fi-skl-6600u total:288  pass:260  dwarn:1   dfail:0   fail:0   skip:27  
time:536s
fi-skl-6700hqtotal:288  pass:261  dwarn:1   dfail:0   fail:0   skip:26  
time:556s
fi-skl-6770hqtotal:288  pass:268  dwarn:0   dfail:0   fail:0   skip:20  
time:485s
fi-skl-gvtdvmtotal:288  pass:265  dwarn:0   dfail:0   fail:0   skip:23  
time:442s
fi-snb-2520m total:245  pass:211  dwarn:0   dfail:0   fail:0   skip:33 
fi-snb-2600  total:288  pass:248  dwarn:0   dfail:0   fail:0   skip:40  
time:411s
Blacklisted hosts:
fi-cfl-s2total:288  pass:262  dwarn:0   dfail:0   fail:0   skip:26  
time:598s
fi-cnl-y total:288  pass:262  dwarn:0   dfail:0   fail:0   skip:26  
time:636s

3fae32baa4a02cfed78dc9e1f8da9b6374b24215 drm-tip: 2017y-12m-14d-13h-25m-22s UTC 
integration manifest
dfd682032ecd drm/i915: properly init lockdep class

== Logs ==

For more details see: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_7496/issues.html
___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


Re: [Intel-gfx] ✗ Fi.CI.BAT: failure for drm/i915: properly init lockdep class (rev2)

2017-12-14 Thread Joonas Lahtinen
On Thu, 2017-12-14 at 13:29 +, Patchwork wrote:
> == Series Details ==
> 
> Series: drm/i915: properly init lockdep class (rev2)
> URL   : https://patchwork.freedesktop.org/series/34693/
> State : failure
> 
> == Summary ==
> 
> Series 34693v2 drm/i915: properly init lockdep class
> https://patchwork.freedesktop.org/api/1.0/series/34693/revisions/2/mbox/
> 
> Test debugfs_test:
> Subgroup read_all_entries:
> dmesg-warn -> PASS   (fi-elk-e7500) fdo#103989 +2
> Test gem_mmap_gtt:
> Subgroup basic-small-bo-tiledx:
> pass   -> FAIL   (fi-gdg-551) fdo#102575
> Test kms_pipe_crc_basic:
> Subgroup read-crc-pipe-c-frame-sequence:
> pass   -> FAIL   (fi-hsw-4770r)

This doesn't seem like a related error, I'll queue a rerun for the
patch to get it to the full run.

Regards, Joonas

> 
> fdo#103989 https://bugs.freedesktop.org/show_bug.cgi?id=103989
> fdo#102575 https://bugs.freedesktop.org/show_bug.cgi?id=102575
> 
> fi-bdw-5557u total:288  pass:267  dwarn:0   dfail:0   fail:0   skip:21  
> time:434s
> fi-blb-e6850 total:288  pass:222  dwarn:1   dfail:1   fail:0   skip:64  
> time:389s
> fi-bsw-n3050 total:288  pass:242  dwarn:0   dfail:0   fail:0   skip:46  
> time:499s
> fi-bwr-2160  total:288  pass:183  dwarn:0   dfail:0   fail:0   skip:105 
> time:277s
> fi-bxt-dsi   total:288  pass:258  dwarn:0   dfail:0   fail:0   skip:30  
> time:496s
> fi-bxt-j4205 total:288  pass:259  dwarn:0   dfail:0   fail:0   skip:29  
> time:500s
> fi-byt-j1900 total:288  pass:253  dwarn:0   dfail:0   fail:0   skip:35  
> time:478s
> fi-byt-n2820 total:288  pass:249  dwarn:0   dfail:0   fail:0   skip:39  
> time:470s
> fi-elk-e7500 total:224  pass:163  dwarn:15  dfail:0   fail:0   skip:45 
> fi-gdg-551   total:288  pass:178  dwarn:1   dfail:0   fail:1   skip:108 
> time:263s
> fi-glk-1 total:288  pass:260  dwarn:0   dfail:0   fail:0   skip:28  
> time:526s
> fi-hsw-4770  total:288  pass:261  dwarn:0   dfail:0   fail:0   skip:27  
> time:403s
> fi-hsw-4770r total:288  pass:260  dwarn:0   dfail:0   fail:1   skip:27  
> time:414s
> fi-ilk-650   total:288  pass:228  dwarn:0   dfail:0   fail:0   skip:60  
> time:388s
> fi-ivb-3520m total:288  pass:259  dwarn:0   dfail:0   fail:0   skip:29  
> time:468s
> fi-ivb-3770  total:288  pass:255  dwarn:0   dfail:0   fail:0   skip:33  
> time:422s
> fi-kbl-7500u total:288  pass:263  dwarn:1   dfail:0   fail:0   skip:24  
> time:479s
> fi-kbl-7560u total:288  pass:268  dwarn:1   dfail:0   fail:0   skip:19  
> time:520s
> fi-kbl-7567u total:288  pass:268  dwarn:0   dfail:0   fail:0   skip:20  
> time:467s
> fi-kbl-r total:288  pass:260  dwarn:1   dfail:0   fail:0   skip:27  
> time:522s
> fi-pnv-d510  total:288  pass:221  dwarn:1   dfail:0   fail:1   skip:65  
> time:585s
> fi-skl-6260u total:288  pass:268  dwarn:0   dfail:0   fail:0   skip:20  
> time:452s
> fi-skl-6600u total:288  pass:260  dwarn:1   dfail:0   fail:0   skip:27  
> time:536s
> fi-skl-6700hqtotal:288  pass:261  dwarn:1   dfail:0   fail:0   skip:26  
> time:555s
> fi-skl-6770hqtotal:288  pass:268  dwarn:0   dfail:0   fail:0   skip:20  
> time:489s
> fi-skl-gvtdvmtotal:288  pass:265  dwarn:0   dfail:0   fail:0   skip:23  
> time:445s
> fi-snb-2520m total:288  pass:248  dwarn:0   dfail:0   fail:0   skip:40  
> time:546s
> fi-snb-2600  total:288  pass:248  dwarn:0   dfail:0   fail:0   skip:40  
> time:410s
> Blacklisted hosts:
> fi-cfl-s2total:288  pass:261  dwarn:1   dfail:0   fail:0   skip:26  
> time:594s
> fi-cnl-y total:288  pass:262  dwarn:0   dfail:0   fail:0   skip:26  
> time:619s
> 
> 91d06d0bbd1a91f430350dbc24e05c37303b25b9 drm-tip: 2017y-12m-14d-09h-49m-51s 
> UTC integration manifest
> bea6424fd138 drm/i915: properly init lockdep class
> 
> == Logs ==
> 
> For more details see: 
> https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_7495/issues.html
> ___
> Intel-gfx mailing list
> Intel-gfx@lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/intel-gfx
-- 
Joonas Lahtinen
Open Source Technology Center
Intel Corporation
___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


[Intel-gfx] ✗ Fi.CI.BAT: failure for drm/i915: properly init lockdep class (rev2)

2017-12-14 Thread Patchwork
== Series Details ==

Series: drm/i915: properly init lockdep class (rev2)
URL   : https://patchwork.freedesktop.org/series/34693/
State : failure

== Summary ==

Series 34693v2 drm/i915: properly init lockdep class
https://patchwork.freedesktop.org/api/1.0/series/34693/revisions/2/mbox/

Test debugfs_test:
Subgroup read_all_entries:
dmesg-warn -> PASS   (fi-elk-e7500) fdo#103989 +2
Test gem_mmap_gtt:
Subgroup basic-small-bo-tiledx:
pass   -> FAIL   (fi-gdg-551) fdo#102575
Test kms_pipe_crc_basic:
Subgroup read-crc-pipe-c-frame-sequence:
pass   -> FAIL   (fi-hsw-4770r)

fdo#103989 https://bugs.freedesktop.org/show_bug.cgi?id=103989
fdo#102575 https://bugs.freedesktop.org/show_bug.cgi?id=102575

fi-bdw-5557u total:288  pass:267  dwarn:0   dfail:0   fail:0   skip:21  
time:434s
fi-blb-e6850 total:288  pass:222  dwarn:1   dfail:1   fail:0   skip:64  
time:389s
fi-bsw-n3050 total:288  pass:242  dwarn:0   dfail:0   fail:0   skip:46  
time:499s
fi-bwr-2160  total:288  pass:183  dwarn:0   dfail:0   fail:0   skip:105 
time:277s
fi-bxt-dsi   total:288  pass:258  dwarn:0   dfail:0   fail:0   skip:30  
time:496s
fi-bxt-j4205 total:288  pass:259  dwarn:0   dfail:0   fail:0   skip:29  
time:500s
fi-byt-j1900 total:288  pass:253  dwarn:0   dfail:0   fail:0   skip:35  
time:478s
fi-byt-n2820 total:288  pass:249  dwarn:0   dfail:0   fail:0   skip:39  
time:470s
fi-elk-e7500 total:224  pass:163  dwarn:15  dfail:0   fail:0   skip:45 
fi-gdg-551   total:288  pass:178  dwarn:1   dfail:0   fail:1   skip:108 
time:263s
fi-glk-1 total:288  pass:260  dwarn:0   dfail:0   fail:0   skip:28  
time:526s
fi-hsw-4770  total:288  pass:261  dwarn:0   dfail:0   fail:0   skip:27  
time:403s
fi-hsw-4770r total:288  pass:260  dwarn:0   dfail:0   fail:1   skip:27  
time:414s
fi-ilk-650   total:288  pass:228  dwarn:0   dfail:0   fail:0   skip:60  
time:388s
fi-ivb-3520m total:288  pass:259  dwarn:0   dfail:0   fail:0   skip:29  
time:468s
fi-ivb-3770  total:288  pass:255  dwarn:0   dfail:0   fail:0   skip:33  
time:422s
fi-kbl-7500u total:288  pass:263  dwarn:1   dfail:0   fail:0   skip:24  
time:479s
fi-kbl-7560u total:288  pass:268  dwarn:1   dfail:0   fail:0   skip:19  
time:520s
fi-kbl-7567u total:288  pass:268  dwarn:0   dfail:0   fail:0   skip:20  
time:467s
fi-kbl-r total:288  pass:260  dwarn:1   dfail:0   fail:0   skip:27  
time:522s
fi-pnv-d510  total:288  pass:221  dwarn:1   dfail:0   fail:1   skip:65  
time:585s
fi-skl-6260u total:288  pass:268  dwarn:0   dfail:0   fail:0   skip:20  
time:452s
fi-skl-6600u total:288  pass:260  dwarn:1   dfail:0   fail:0   skip:27  
time:536s
fi-skl-6700hqtotal:288  pass:261  dwarn:1   dfail:0   fail:0   skip:26  
time:555s
fi-skl-6770hqtotal:288  pass:268  dwarn:0   dfail:0   fail:0   skip:20  
time:489s
fi-skl-gvtdvmtotal:288  pass:265  dwarn:0   dfail:0   fail:0   skip:23  
time:445s
fi-snb-2520m total:288  pass:248  dwarn:0   dfail:0   fail:0   skip:40  
time:546s
fi-snb-2600  total:288  pass:248  dwarn:0   dfail:0   fail:0   skip:40  
time:410s
Blacklisted hosts:
fi-cfl-s2total:288  pass:261  dwarn:1   dfail:0   fail:0   skip:26  
time:594s
fi-cnl-y total:288  pass:262  dwarn:0   dfail:0   fail:0   skip:26  
time:619s

91d06d0bbd1a91f430350dbc24e05c37303b25b9 drm-tip: 2017y-12m-14d-09h-49m-51s UTC 
integration manifest
bea6424fd138 drm/i915: properly init lockdep class

== Logs ==

For more details see: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_7495/issues.html
___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


Re: [Intel-gfx] [PATCH] drm/i915: Show engine state when hangcheck detects a stall

2017-12-14 Thread Joonas Lahtinen
On Thu, 2017-12-14 at 12:26 +, Chris Wilson wrote:
> Knowing the state of the engine when hangcheck thinks it is stalling is
> useful for both debugging hangcheck itself and the potential cause of an
> unwanted stall.
> 
> Signed-off-by: Chris Wilson 
> Cc: Joonas Lahtinen 
> Cc: Mika Kuoppala 

Reviewed-by: Joonas Lahtinen 

Regards, Joonas
-- 
Joonas Lahtinen
Open Source Technology Center
Intel Corporation
___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


[Intel-gfx] [CI] drm/i915: properly init lockdep class

2017-12-14 Thread Joonas Lahtinen
From: Sebastian Andrzej Siewior 

The code has an ifdef and uses two functions to either init the bare
spinlock or init it and set a lock-class. It is possible to do the same
thing without an ifdef.
With this patch (in debug case) we first use the "default" lock class
which is later overwritten to the supplied one. Without lockdep the set
name/class function vanishes.

Reported-by: kbuild test robot 
Signed-off-by: Sebastian Andrzej Siewior 
Reviewed-by: Joonas Lahtinen 
---
 drivers/gpu/drm/i915/i915_gem_timeline.c | 5 +
 1 file changed, 1 insertion(+), 4 deletions(-)

diff --git a/drivers/gpu/drm/i915/i915_gem_timeline.c 
b/drivers/gpu/drm/i915/i915_gem_timeline.c
index c01905d6450c..e9fd87604067 100644
--- a/drivers/gpu/drm/i915/i915_gem_timeline.c
+++ b/drivers/gpu/drm/i915/i915_gem_timeline.c
@@ -33,11 +33,8 @@ static void __intel_timeline_init(struct intel_timeline *tl,
 {
tl->fence_context = context;
tl->common = parent;
-#ifdef CONFIG_DEBUG_SPINLOCK
-   __raw_spin_lock_init(>lock.rlock, lockname, lockclass);
-#else
spin_lock_init(>lock);
-#endif
+   lockdep_set_class_and_name(>lock, lockclass, lockname);
init_request_active(>last_request, NULL);
INIT_LIST_HEAD(>requests);
i915_syncmap_init(>sync);
-- 
2.14.3

___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


[Intel-gfx] ✓ Fi.CI.BAT: success for drm/i915: Show engine state when hangcheck detects a stall

2017-12-14 Thread Patchwork
== Series Details ==

Series: drm/i915: Show engine state when hangcheck detects a stall
URL   : https://patchwork.freedesktop.org/series/35354/
State : success

== Summary ==

Series 35354v1 drm/i915: Show engine state when hangcheck detects a stall
https://patchwork.freedesktop.org/api/1.0/series/35354/revisions/1/mbox/

Test debugfs_test:
Subgroup read_all_entries:
dmesg-warn -> DMESG-FAIL (fi-elk-e7500) fdo#103989 +1
Test gem_mmap_gtt:
Subgroup basic-small-bo-tiledx:
pass   -> FAIL   (fi-gdg-551) fdo#102575
Test kms_psr_sink_crc:
Subgroup psr_basic:
dmesg-warn -> PASS   (fi-skl-6700hq) fdo#101144

fdo#103989 https://bugs.freedesktop.org/show_bug.cgi?id=103989
fdo#102575 https://bugs.freedesktop.org/show_bug.cgi?id=102575
fdo#101144 https://bugs.freedesktop.org/show_bug.cgi?id=101144

fi-bdw-5557u total:288  pass:267  dwarn:0   dfail:0   fail:0   skip:21  
time:436s
fi-blb-e6850 total:288  pass:222  dwarn:1   dfail:1   fail:0   skip:64  
time:392s
fi-bsw-n3050 total:288  pass:242  dwarn:0   dfail:0   fail:0   skip:46  
time:507s
fi-bwr-2160  total:288  pass:183  dwarn:0   dfail:0   fail:0   skip:105 
time:281s
fi-bxt-dsi   total:288  pass:258  dwarn:0   dfail:0   fail:0   skip:30  
time:498s
fi-bxt-j4205 total:288  pass:259  dwarn:0   dfail:0   fail:0   skip:29  
time:504s
fi-byt-j1900 total:288  pass:253  dwarn:0   dfail:0   fail:0   skip:35  
time:482s
fi-byt-n2820 total:288  pass:249  dwarn:0   dfail:0   fail:0   skip:39  
time:474s
fi-elk-e7500 total:224  pass:163  dwarn:14  dfail:1   fail:0   skip:45 
fi-gdg-551   total:288  pass:178  dwarn:1   dfail:0   fail:1   skip:108 
time:266s
fi-glk-1 total:288  pass:260  dwarn:0   dfail:0   fail:0   skip:28  
time:537s
fi-hsw-4770  total:288  pass:261  dwarn:0   dfail:0   fail:0   skip:27  
time:406s
fi-hsw-4770r total:288  pass:261  dwarn:0   dfail:0   fail:0   skip:27  
time:413s
fi-ilk-650   total:288  pass:228  dwarn:0   dfail:0   fail:0   skip:60  
time:390s
fi-ivb-3520m total:288  pass:259  dwarn:0   dfail:0   fail:0   skip:29  
time:474s
fi-ivb-3770  total:288  pass:255  dwarn:0   dfail:0   fail:0   skip:33  
time:436s
fi-kbl-7500u total:288  pass:263  dwarn:1   dfail:0   fail:0   skip:24  
time:484s
fi-kbl-7560u total:288  pass:268  dwarn:1   dfail:0   fail:0   skip:19  
time:519s
fi-kbl-7567u total:288  pass:268  dwarn:0   dfail:0   fail:0   skip:20  
time:470s
fi-kbl-r total:288  pass:260  dwarn:1   dfail:0   fail:0   skip:27  
time:526s
fi-pnv-d510  total:288  pass:221  dwarn:1   dfail:0   fail:1   skip:65  
time:595s
fi-skl-6260u total:288  pass:268  dwarn:0   dfail:0   fail:0   skip:20  
time:467s
fi-skl-6600u total:288  pass:260  dwarn:1   dfail:0   fail:0   skip:27  
time:544s
fi-skl-6700hqtotal:288  pass:262  dwarn:0   dfail:0   fail:0   skip:26  
time:555s
fi-skl-6770hqtotal:288  pass:268  dwarn:0   dfail:0   fail:0   skip:20  
time:493s
fi-skl-gvtdvmtotal:288  pass:265  dwarn:0   dfail:0   fail:0   skip:23  
time:443s
fi-snb-2520m total:288  pass:248  dwarn:0   dfail:0   fail:0   skip:40  
time:553s
fi-snb-2600  total:288  pass:248  dwarn:0   dfail:0   fail:0   skip:40  
time:412s
Blacklisted hosts:
fi-cfl-s2total:288  pass:262  dwarn:0   dfail:0   fail:0   skip:26  
time:591s
fi-cnl-y total:288  pass:262  dwarn:0   dfail:0   fail:0   skip:26  
time:625s

91d06d0bbd1a91f430350dbc24e05c37303b25b9 drm-tip: 2017y-12m-14d-09h-49m-51s UTC 
integration manifest
a10bab2ae23e drm/i915: Show engine state when hangcheck detects a stall

== Logs ==

For more details see: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_7494/issues.html
___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


Re: [Intel-gfx] [PATCH igt v2] igt/tools_test: Check the tools exist before executing

2017-12-14 Thread Petri Latvala



On 12/14/2017 01:24 PM, Chris Wilson wrote:

Quoting Petri Latvala (2017-12-14 11:20:18)

On Thu, Dec 14, 2017 at 11:14:35AM +, Chris Wilson wrote:

Why the chdir?

For me, I was trying to standardise the test, since "../tools" bakes in
so many assumptions that simply aren't true when one invokes
$path/tools_test. Back to the igt_data_dir() request.

Aye, the assumption is bad and should get changed to support both run
methods (within build dir, with installed). Currently it works by
carefully setting up the CI deployment so paths match. =(

  

CI runs tests with IGT installed (make install). The test's directory
is $libexecdir/intel-gpu-tools/, ../tools is $libexecdir/tools and
that doesn't exist.

So where was it expecting to find the tools?


CI deploys the tools next to piglit. $cwd is piglit's directory when
running through piglit, tools are deployed to $piglit/../tools.

How about

if (access("../tools/", F_OK)) {
chdir();
}



Should be fine that way. Add a TODO comment somewhere about finding the 
directory for real.



--
Petri Latvala

___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


[Intel-gfx] [PATCH] drm/i915: Show engine state when hangcheck detects a stall

2017-12-14 Thread Chris Wilson
Knowing the state of the engine when hangcheck thinks it is stalling is
useful for both debugging hangcheck itself and the potential cause of an
unwanted stall.

Signed-off-by: Chris Wilson 
Cc: Joonas Lahtinen 
Cc: Mika Kuoppala 
---
 drivers/gpu/drm/i915/intel_hangcheck.c | 7 ++-
 1 file changed, 6 insertions(+), 1 deletion(-)

diff --git a/drivers/gpu/drm/i915/intel_hangcheck.c 
b/drivers/gpu/drm/i915/intel_hangcheck.c
index 95bbb5a79c4f..0acd9dd3ed5c 100644
--- a/drivers/gpu/drm/i915/intel_hangcheck.c
+++ b/drivers/gpu/drm/i915/intel_hangcheck.c
@@ -349,13 +349,18 @@ static void hangcheck_accumulate_sample(struct 
intel_engine_cs *engine,
 
case ENGINE_ACTIVE_HEAD:
case ENGINE_ACTIVE_SUBUNITS:
-   /* Seqno stuck with still active engine gets leeway,
+   /*
+* Seqno stuck with still active engine gets leeway,
 * in hopes that it is just a long shader.
 */
timeout = I915_SEQNO_DEAD_TIMEOUT;
break;
 
case ENGINE_DEAD:
+   if (drm_debug & DRM_UT_DRIVER) {
+   struct drm_printer p = drm_debug_printer("hangcheck");
+   intel_engine_dump(engine, , "%s", engine->name);
+   }
break;
 
default:
-- 
2.15.1

___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


[Intel-gfx] ✓ Fi.CI.BAT: success for HAX: fast feedback irq affinity..

2017-12-14 Thread Patchwork
== Series Details ==

Series: HAX: fast feedback irq affinity..
URL   : https://patchwork.freedesktop.org/series/35349/
State : success

== Summary ==

IGT patchset tested on top of latest successful build
103af7286e2d1014e3d7126691fe046ab2c9f73e lib: Ask the kernel to quiesce the GPU

with latest DRM-Tip kernel build CI_DRM_3516
91d06d0bbd1a drm-tip: 2017y-12m-14d-09h-49m-51s UTC integration manifest

Testlist changes:
+igt@pm_rpm@irq-affinity

Test gem_mmap_gtt:
Subgroup basic-small-bo-tiledx:
pass   -> FAIL   (fi-gdg-551) fdo#102575
Test kms_busy:
Subgroup basic-flip-a:
pass   -> DMESG-WARN (fi-elk-e7500) fdo#103989
Test kms_pipe_crc_basic:
Subgroup suspend-read-crc-pipe-b:
pass   -> INCOMPLETE (fi-snb-2520m) fdo#103713

fdo#102575 https://bugs.freedesktop.org/show_bug.cgi?id=102575
fdo#103989 https://bugs.freedesktop.org/show_bug.cgi?id=103989
fdo#103713 https://bugs.freedesktop.org/show_bug.cgi?id=103713

fi-bdw-5557u total:290  pass:269  dwarn:0   dfail:0   fail:0   skip:21  
time:439s
fi-blb-e6850 total:290  pass:223  dwarn:1   dfail:1   fail:0   skip:65  
time:394s
fi-bsw-n3050 total:290  pass:243  dwarn:0   dfail:0   fail:0   skip:47  
time:511s
fi-bwr-2160  total:290  pass:184  dwarn:0   dfail:0   fail:0   skip:106 
time:281s
fi-bxt-dsi   total:290  pass:260  dwarn:0   dfail:0   fail:0   skip:30  
time:487s
fi-bxt-j4205 total:290  pass:261  dwarn:0   dfail:0   fail:0   skip:29  
time:506s
fi-byt-j1900 total:290  pass:255  dwarn:0   dfail:0   fail:0   skip:35  
time:488s
fi-elk-e7500 total:224  pass:163  dwarn:15  dfail:0   fail:0   skip:45 
fi-gdg-551   total:290  pass:179  dwarn:1   dfail:0   fail:1   skip:109 
time:268s
fi-glk-1 total:290  pass:262  dwarn:0   dfail:0   fail:0   skip:28  
time:538s
fi-hsw-4770  total:290  pass:263  dwarn:0   dfail:0   fail:0   skip:27  
time:408s
fi-hsw-4770r total:290  pass:263  dwarn:0   dfail:0   fail:0   skip:27  
time:416s
fi-ilk-650   total:290  pass:229  dwarn:0   dfail:0   fail:0   skip:61  
time:391s
fi-ivb-3520m total:290  pass:260  dwarn:0   dfail:0   fail:0   skip:30  
time:482s
fi-ivb-3770  total:290  pass:256  dwarn:0   dfail:0   fail:0   skip:34  
time:431s
fi-kbl-7500u total:290  pass:265  dwarn:1   dfail:0   fail:0   skip:24  
time:483s
fi-kbl-7560u total:290  pass:270  dwarn:1   dfail:0   fail:0   skip:19  
time:533s
fi-kbl-7567u total:290  pass:270  dwarn:0   dfail:0   fail:0   skip:20  
time:470s
fi-kbl-r total:290  pass:262  dwarn:1   dfail:0   fail:0   skip:27  
time:536s
fi-skl-6260u total:290  pass:270  dwarn:0   dfail:0   fail:0   skip:20  
time:449s
fi-skl-6600u total:290  pass:262  dwarn:1   dfail:0   fail:0   skip:27  
time:541s
fi-skl-6700hqtotal:290  pass:263  dwarn:1   dfail:0   fail:0   skip:26  
time:566s
fi-skl-6770hqtotal:290  pass:270  dwarn:0   dfail:0   fail:0   skip:20  
time:493s
fi-skl-gvtdvmtotal:290  pass:266  dwarn:0   dfail:0   fail:0   skip:24  
time:449s
fi-snb-2520m total:245  pass:211  dwarn:0   dfail:0   fail:0   skip:33 
fi-snb-2600  total:290  pass:249  dwarn:0   dfail:0   fail:0   skip:41  
time:417s
Blacklisted hosts:
fi-cfl-s2total:290  pass:264  dwarn:0   dfail:0   fail:0   skip:26  
time:606s
fi-cnl-y total:290  pass:264  dwarn:0   dfail:0   fail:0   skip:26  
time:640s

== Logs ==

For more details see: 
https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_669/issues.html
___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


[Intel-gfx] ✗ Fi.CI.BAT: warning for igt/tools_test: Check the tools exist before executing (rev3)

2017-12-14 Thread Patchwork
== Series Details ==

Series: igt/tools_test: Check the tools exist before executing (rev3)
URL   : https://patchwork.freedesktop.org/series/35237/
State : warning

== Summary ==

IGT patchset tested on top of latest successful build
103af7286e2d1014e3d7126691fe046ab2c9f73e lib: Ask the kernel to quiesce the GPU

with latest DRM-Tip kernel build CI_DRM_3516
91d06d0bbd1a drm-tip: 2017y-12m-14d-09h-49m-51s UTC integration manifest

No testlist changes.

Test gem_mmap_gtt:
Subgroup basic-small-bo-tiledx:
pass   -> FAIL   (fi-gdg-551) fdo#102575
Test kms_busy:
Subgroup basic-flip-a:
pass   -> DMESG-WARN (fi-elk-e7500) fdo#103989
Test kms_psr_sink_crc:
Subgroup psr_basic:
dmesg-warn -> PASS   (fi-skl-6700hq) fdo#101144
Test drv_module_reload:
Subgroup basic-reload-inject:
pass   -> DMESG-WARN (fi-bsw-n3050)

fdo#102575 https://bugs.freedesktop.org/show_bug.cgi?id=102575
fdo#103989 https://bugs.freedesktop.org/show_bug.cgi?id=103989
fdo#101144 https://bugs.freedesktop.org/show_bug.cgi?id=101144

fi-bdw-5557u total:288  pass:267  dwarn:0   dfail:0   fail:0   skip:21  
time:435s
fi-blb-e6850 total:288  pass:222  dwarn:1   dfail:1   fail:0   skip:64  
time:394s
fi-bsw-n3050 total:288  pass:241  dwarn:1   dfail:0   fail:0   skip:46  
time:508s
fi-bwr-2160  total:288  pass:183  dwarn:0   dfail:0   fail:0   skip:105 
time:279s
fi-bxt-dsi   total:288  pass:258  dwarn:0   dfail:0   fail:0   skip:30  
time:501s
fi-bxt-j4205 total:288  pass:259  dwarn:0   dfail:0   fail:0   skip:29  
time:499s
fi-byt-j1900 total:288  pass:253  dwarn:0   dfail:0   fail:0   skip:35  
time:484s
fi-byt-n2820 total:288  pass:249  dwarn:0   dfail:0   fail:0   skip:39  
time:477s
fi-elk-e7500 total:224  pass:163  dwarn:15  dfail:0   fail:0   skip:45 
fi-gdg-551   total:288  pass:178  dwarn:1   dfail:0   fail:1   skip:108 
time:266s
fi-glk-1 total:288  pass:260  dwarn:0   dfail:0   fail:0   skip:28  
time:531s
fi-hsw-4770  total:288  pass:261  dwarn:0   dfail:0   fail:0   skip:27  
time:416s
fi-hsw-4770r total:288  pass:261  dwarn:0   dfail:0   fail:0   skip:27  
time:413s
fi-ilk-650   total:288  pass:228  dwarn:0   dfail:0   fail:0   skip:60  
time:390s
fi-ivb-3520m total:288  pass:259  dwarn:0   dfail:0   fail:0   skip:29  
time:468s
fi-ivb-3770  total:288  pass:255  dwarn:0   dfail:0   fail:0   skip:33  
time:426s
fi-kbl-7500u total:288  pass:263  dwarn:1   dfail:0   fail:0   skip:24  
time:482s
fi-kbl-7560u total:288  pass:268  dwarn:1   dfail:0   fail:0   skip:19  
time:523s
fi-kbl-7567u total:288  pass:268  dwarn:0   dfail:0   fail:0   skip:20  
time:468s
fi-kbl-r total:288  pass:260  dwarn:1   dfail:0   fail:0   skip:27  
time:523s
fi-pnv-d510  total:288  pass:221  dwarn:1   dfail:0   fail:1   skip:65  
time:593s
fi-skl-6260u total:288  pass:268  dwarn:0   dfail:0   fail:0   skip:20  
time:440s
fi-skl-6600u total:288  pass:260  dwarn:1   dfail:0   fail:0   skip:27  
time:538s
fi-skl-6700hqtotal:288  pass:262  dwarn:0   dfail:0   fail:0   skip:26  
time:560s
fi-skl-6770hqtotal:288  pass:268  dwarn:0   dfail:0   fail:0   skip:20  
time:489s
fi-skl-gvtdvmtotal:288  pass:265  dwarn:0   dfail:0   fail:0   skip:23  
time:450s
fi-snb-2520m total:288  pass:248  dwarn:0   dfail:0   fail:0   skip:40  
time:558s
fi-snb-2600  total:288  pass:248  dwarn:0   dfail:0   fail:0   skip:40  
time:419s
Blacklisted hosts:
fi-cfl-s2total:288  pass:262  dwarn:0   dfail:0   fail:0   skip:26  
time:597s
fi-cnl-y total:288  pass:262  dwarn:0   dfail:0   fail:0   skip:26  
time:619s

== Logs ==

For more details see: 
https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_668/issues.html
___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


[Intel-gfx] [PATCH i-g-t] HAX: fast feedback irq affinity..

2017-12-14 Thread Maarten Lankhorst
---
 tests/intel-ci/fast-feedback.testlist |  2 ++
 tests/pm_rpm.c| 62 +++
 2 files changed, 64 insertions(+)

diff --git a/tests/intel-ci/fast-feedback.testlist 
b/tests/intel-ci/fast-feedback.testlist
index f71a16bcd191..e9322249dd73 100644
--- a/tests/intel-ci/fast-feedback.testlist
+++ b/tests/intel-ci/fast-feedback.testlist
@@ -293,3 +293,5 @@ igt@drv_module_reload@basic-reload
 igt@drv_module_reload@basic-no-display
 igt@drv_module_reload@basic-reload-inject
 igt@gvt_basic@invalid-placeholder-test
+igt@pm_rpm@irq-affinity
+igt@kms_vblank@crtc-id
diff --git a/tests/pm_rpm.c b/tests/pm_rpm.c
index fb26e384e236..943476dce3ef 100644
--- a/tests/pm_rpm.c
+++ b/tests/pm_rpm.c
@@ -1860,6 +1860,65 @@ static int opt_handler(int opt, int opt_index, void 
*data)
return 0;
 }
 
+static void irq_affinity_subtest(void)
+{
+   int fd, sysfs_fd;
+   char irq[6], irq_path[40];
+   ssize_t ret;
+
+   /* Disable irqbalance, we want to juggle this manually.. */
+   system("killall -STOP irqbalance");
+
+#define CPU "3"
+   
+   fd = open("/sys/devices/system/cpu/cpu" CPU "/online", O_WRONLY);
+   igt_require(fd >= 0);
+   igt_assert_eq(write(fd, "1\n", 2), 2);
+   close(fd);
+
+   /* Read irq number.. */
+   sysfs_fd = igt_sysfs_open(drm_fd, NULL);
+   fd = openat(sysfs_fd, "device/irq", O_RDONLY);
+   close(sysfs_fd);
+   ret = read(fd, irq, sizeof(irq));
+   igt_assert(ret > 0);
+   irq[ret - 1] = 0;
+   close(fd);
+
+   sprintf(irq_path, "/proc/irq/%s/smp_affinity_list", irq);
+   fd = open(irq_path, O_WRONLY);
+   igt_assert(fd >= 0);
+   igt_assert_eq(write(fd, CPU "\n", 2), 2);
+   close(fd);
+
+   disable_all_screens_and_wait(_data);
+
+   igt_assert(igt_wait(device_in_pci_d3(), 2000, 100));
+
+   fd = open("/sys/devices/system/cpu/cpu" CPU "/online", O_WRONLY);
+   igt_assert(fd >= 0);
+   igt_assert_eq(write(fd, "0\n", 2), 2);
+   close(fd);
+
+   sprintf(irq_path, "/proc/irq/%s/smp_affinity_list", irq);
+   fd = open(irq_path, O_WRONLY);
+   igt_assert(fd >= 0);
+   igt_assert_eq(write(fd, "0\n", 2), 2);
+   close(fd);
+
+   igt_debug_wait_for_keypress("asdf");
+
+   enable_one_screen_and_wait(_data);
+
+   fd = open("/sys/devices/system/cpu/cpu" CPU "/online", O_WRONLY);
+   igt_assert(fd >= 0);
+   igt_assert_eq(write(fd, "1\n", 2), 2);
+   close(fd);
+
+   system("killall -CONT irqbalance");
+}
+
+
 int main(int argc, char *argv[])
 {
const char *help_str =
@@ -1989,6 +2048,9 @@ int main(int argc, char *argv[])
igt_subtest("pm-caching")
pm_test_caching();
 
+   igt_subtest("irq-affinity")
+   irq_affinity_subtest();
+
igt_fixture
teardown_environment();
 
-- 
2.15.1

___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


Re: [Intel-gfx] [PATCH v4 3/5] drm/i915/guc: Implement dynamic WOPCM partitioning

2017-12-14 Thread Joonas Lahtinen
On Wed, 2017-12-13 at 14:59 -0800, Yaodong Li wrote:
> On 12/13/2017 01:34 PM, Michal Wajdeczko wrote:
> > On Wed, 13 Dec 2017 19:19:06 +0100, Yaodong Li  
> > wrote:
> > 
> > > On 12/13/2017 01:11 AM, Joonas Lahtinen wrote:
> > > > On Tue, 2017-12-12 at 14:56 -0800, Jackie Li wrote:
> > > > > Hardware may have specific restrictions on GuC WOPCM partition
> > > > > size versus HuC firmware size. With static WOPCM partitioning,
> > > > > there's no way to adjust the GuC WOPCM partition size based on
> > > > > the actual HuC firmware size, so that GuC/HuC loading failure
> > > > > would occur even if there was enough WOPCM space for both
> > > > > GuC and HuC firmware.
> > > > 
> > > > WOPCM being a shared feature of the hardware, it should not go under
> > > > intel_guc_ prefix.
> > > > 
> > > > There should be a clear division of what is specific to GuC feature
> > > > only and what is just a feature that happens to be used by GuC (and
> > > > equally can be used by HuC too).
> > > 
> > > the intel_guc_wopcm here only refers to the wopcm used by
> > > GuC, this structure only defines the GuC related wopcm info.
> > > (wopcm partition for GuC). We only need to set these values
> > > (defined in this structure) to GuC registers. And this structure
> > > should never be touched if GuC was disabled. so it should be
> > > a part of GuC.
> > > 
> > 
> > But note that yours intel_guc_wopcm is just one of many wopcm partitions.
> > I think it would be a good idea to create "intel_wopcm.c|h" and keep
> > all related code and data there (including verification of early setup
> > done by bios, wopcpm reporting, partitioning).
> > 
> > Then we can do rest of the programming right there or just take values 
> > that
> > will be programmed individually by interested components (but former is
> > preferred to avoid spreading single feature code over too many places)
> > 
> 
> The KMD only needs to take care of the setup of the GuC WOPCM partition. 
> Other
> HW WOPCM (e.g HuC) usages are all transparent to kernel driver. Plus, 
> the GuC WOPM
> partitioning is needed only when GuC is enabled and uc firmwares are 
> loaded correctly.
> The only reason for us to have an intel_wopcm is to maintain the overall 
> WOPCM info
> such as WOPCM size and base. However, it's not necessary since we can 
> reuse existing
> driver code to get these info.

I'd go with Michal here, the WOPCM is its own entity in existence.
Partitioning defintely sounds like it should be intel_wopcm stuff,
which may yield intel_wopcm_partition under "guc", so then you are
still able to reference "guc->wopcm.base" where it makes sense.

And how that partition is programmed to GuC registers for it to be
used, is then stuff to go under intel_guc. And then you have another
intel_wopcm_partition for "huc".

We should avoid incorrect abstractions, just to avoid a few lines of
code. That's how the hardware features seem to exist, that's how we
should map them in the code.

Regards, Joonas
-- 
Joonas Lahtinen
Open Source Technology Center
Intel Corporation
___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


[Intel-gfx] [PATCH igt v3] igt/tools_test: Check the tools exist before executing

2017-12-14 Thread Chris Wilson
As a simple fail-safe against a bad installation, check the tools exist
before testing whether they work.

v2: Check intel_l3_parity as well
v3: Hunt for tools/

Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=102935
Signed-off-by: Chris Wilson 
Reviewed-by: Petri Latvala  #v1
Reviewed-by: Joonas Lahtinen  #v1
---
 tests/tools_test.c | 53 ++---
 1 file changed, 34 insertions(+), 19 deletions(-)

diff --git a/tests/tools_test.c b/tests/tools_test.c
index 6aea7a8a4..a0025bedf 100644
--- a/tests/tools_test.c
+++ b/tests/tools_test.c
@@ -26,6 +26,10 @@
 #include 
 #include 
 #include 
+#include 
+#include 
+
+#define TOOLS "../tools/"
 
 struct line_check {
int found;
@@ -59,10 +63,24 @@ igt_main
 {
igt_skip_on_simulation();
 
+   igt_fixture {
+   char path[4096];
+
+   /* Try to guess where the TOOLS are! */
+   if (access(TOOLS, F_OK) &&
+   readlink("/proc/self/exe", path, sizeof(path)) > 0)
+   chdir(dirname(path));
+
+   igt_require_f(chdir(TOOLS) == 0,
+ "Unable to determine the tools directory, 
expecting them in $cwd/" TOOLS " or $path/" TOOLS "\n");
+   }
+
igt_subtest("sysfs_l3_parity") {
int exec_return;
struct line_check line;
 
+   igt_require(access("intel_l3_parity", X_OK) == 0);
+
/* Sanity check that l3 parity tool is usable: Enable
 * row,bank,subbank 0,0,0.
 *
@@ -71,27 +89,28 @@ igt_main
 * piglit.
 */
igt_system_cmd(exec_return,
-  "../tools/intel_l3_parity -r 0 -b 0 "
+  "./intel_l3_parity -r 0 -b 0 "
   "-s 0 -e");
assert_cmd_success(exec_return);
 
/* Disable row,bank,subbank 0,0,0. */
-   igt_system_cmd(exec_return, "../tools/intel_l3_parity -r 0 -b 0 
"
+   igt_system_cmd(exec_return,
+  "./intel_l3_parity -r 0 -b 0 "
   "-s 0 -d");
assert_cmd_success(exec_return);
 
/* Check that disabling was successful */
-   igt_system_cmd(exec_return, "../tools/intel_l3_parity -l");
+   igt_system_cmd(exec_return,
+  "./intel_l3_parity -l");
assert_cmd_success(exec_return);
line.substr = "Row 0, Bank 0, Subbank 0 is disabled";
line.found = 0;
-   igt_log_buffer_inspect(check_cmd_output,
-  );
+   igt_log_buffer_inspect(check_cmd_output, );
igt_assert_eq(line.found, 1);
 
/* Re-enable row,bank,subbank 0,0,0 */
igt_system_cmd(exec_return,
-  "../tools/intel_l3_parity -r 0 -b 0 "
+  "./intel_l3_parity -r 0 -b 0 "
   "-s 0 -e");
assert_cmd_success(exec_return);
 
@@ -102,7 +121,8 @@ igt_main
 * The previously printed line is already in the log
 * buffer so we check for count 1.
 */
-   igt_system_cmd(exec_return, "../tools/intel_l3_parity -l");
+   igt_system_cmd(exec_return,
+  "./intel_l3_parity -l");
assert_cmd_success(exec_return);
line.substr = "Row 0, Bank 0, Subbank 0 is disabled";
line.found = 0;
@@ -112,17 +132,12 @@ igt_main
}
 
igt_subtest("tools_test") {
-   char *cmd;
-
-   igt_assert(asprintf(,
-   "../tools/intel_reg read 0x4030")
-  != -1);
-   igt_assert(igt_system_quiet(cmd) == IGT_EXIT_SUCCESS);
-   free(cmd);
-
-   igt_assert(asprintf(, "../tools/intel_reg dump")
-  != -1);
-   igt_assert(igt_system_quiet(cmd) == IGT_EXIT_SUCCESS);
-   free(cmd);
+   igt_require(access("intel_reg", X_OK) == 0);
+
+   igt_assert_eq(igt_system_quiet("./intel_reg read 0x4030"),
+ IGT_EXIT_SUCCESS);
+
+   igt_assert_eq(igt_system_quiet("./intel_reg dump"),
+ IGT_EXIT_SUCCESS);
}
 }
-- 
2.15.1

___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


Re: [Intel-gfx] [PATCH igt v2] igt/tools_test: Check the tools exist before executing

2017-12-14 Thread Chris Wilson
Quoting Petri Latvala (2017-12-14 11:20:18)
> On Thu, Dec 14, 2017 at 11:14:35AM +, Chris Wilson wrote:
> > > 
> > > Why the chdir?
> > 
> > For me, I was trying to standardise the test, since "../tools" bakes in
> > so many assumptions that simply aren't true when one invokes
> > $path/tools_test. Back to the igt_data_dir() request.
> 
> Aye, the assumption is bad and should get changed to support both run
> methods (within build dir, with installed). Currently it works by
> carefully setting up the CI deployment so paths match. =(
> 
> >  
> > > CI runs tests with IGT installed (make install). The test's directory
> > > is $libexecdir/intel-gpu-tools/, ../tools is $libexecdir/tools and
> > > that doesn't exist.
> > 
> > So where was it expecting to find the tools?
> 
> 
> CI deploys the tools next to piglit. $cwd is piglit's directory when
> running through piglit, tools are deployed to $piglit/../tools.

How about

if (access("../tools/", F_OK)) {
chdir();
}

Got to love temporary hacks.
-Chris
___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


Re: [Intel-gfx] [PATCH igt v2] igt/tools_test: Check the tools exist before executing

2017-12-14 Thread Petri Latvala
On Thu, Dec 14, 2017 at 11:14:35AM +, Chris Wilson wrote:
> > 
> > Why the chdir?
> 
> For me, I was trying to standardise the test, since "../tools" bakes in
> so many assumptions that simply aren't true when one invokes
> $path/tools_test. Back to the igt_data_dir() request.

Aye, the assumption is bad and should get changed to support both run
methods (within build dir, with installed). Currently it works by
carefully setting up the CI deployment so paths match. =(

>  
> > CI runs tests with IGT installed (make install). The test's directory
> > is $libexecdir/intel-gpu-tools/, ../tools is $libexecdir/tools and
> > that doesn't exist.
> 
> So where was it expecting to find the tools?


CI deploys the tools next to piglit. $cwd is piglit's directory when
running through piglit, tools are deployed to $piglit/../tools.



-- 
Petri Latvala
___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


[Intel-gfx] ✓ Fi.CI.IGT: success for drm/i915: Ignore TMDS clock limit for DP++ when EDID override is set

2017-12-14 Thread Patchwork
== Series Details ==

Series: drm/i915: Ignore TMDS clock limit for DP++ when EDID override is set
URL   : https://patchwork.freedesktop.org/series/35338/
State : success

== Summary ==

Test drv_suspend:
Subgroup fence-restore-tiled2untiled-hibernate:
skip   -> FAIL   (shard-hsw) fdo#103375
Test kms_frontbuffer_tracking:
Subgroup fbc-1p-primscrn-cur-indfb-move:
skip   -> PASS   (shard-hsw) fdo#101623 +2
Test gem_tiled_swapping:
Subgroup non-threaded:
pass   -> INCOMPLETE (shard-hsw) fdo#104218
Test kms_setmode:
Subgroup basic:
pass   -> FAIL   (shard-hsw) fdo#99912
Test kms_flip:
Subgroup modeset-vs-vblank-race:
fail   -> PASS   (shard-hsw) fdo#103060

fdo#103375 https://bugs.freedesktop.org/show_bug.cgi?id=103375
fdo#101623 https://bugs.freedesktop.org/show_bug.cgi?id=101623
fdo#104218 https://bugs.freedesktop.org/show_bug.cgi?id=104218
fdo#99912 https://bugs.freedesktop.org/show_bug.cgi?id=99912
fdo#103060 https://bugs.freedesktop.org/show_bug.cgi?id=103060

shard-hswtotal:2645 pass:1494 dwarn:1   dfail:0   fail:10  skip:1139 
time:9158s
shard-snbtotal:2712 pass:1308 dwarn:1   dfail:0   fail:12  skip:1391 
time:8038s
Blacklisted hosts:
shard-apltotal:2636 pass:1632 dwarn:1   dfail:0   fail:27  skip:975 
time:13534s
shard-kbltotal:2712 pass:1803 dwarn:1   dfail:0   fail:30  skip:878 
time:11087s

== Logs ==

For more details see: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_7493/shards.html
___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


Re: [Intel-gfx] [PATCH igt v2] igt/tools_test: Check the tools exist before executing

2017-12-14 Thread Chris Wilson
Quoting Petri Latvala (2017-12-14 11:11:47)
> On Wed, Dec 13, 2017 at 02:56:10PM +, Chris Wilson wrote:
> > As a simple fail-safe against a bad installation, check the tools exist
> > before testing whether they work.
> > 
> > v2: Check intel_l3_parity as well
> > 
> > Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=102935
> > Signed-off-by: Chris Wilson 
> > Reviewed-by: Petri Latvala 
> > Reviewed-by: Joonas Lahtinen 
> > ---
> >  tests/tools_test.c | 48 +---
> >  1 file changed, 29 insertions(+), 19 deletions(-)
> > 
> > diff --git a/tests/tools_test.c b/tests/tools_test.c
> > index 6aea7a8a4..4183456e2 100644
> > --- a/tests/tools_test.c
> > +++ b/tests/tools_test.c
> > @@ -26,6 +26,10 @@
> >  #include 
> >  #include 
> >  #include 
> > +#include 
> > +#include 
> > +
> > +#define TOOLS "../tools/"
> >  
> >  struct line_check {
> >   int found;
> > @@ -59,10 +63,19 @@ igt_main
> >  {
> >   igt_skip_on_simulation();
> >  
> > + igt_fixture {
> > + char path[4096];
> > +
> > + if (readlink("/proc/self/exe", path, sizeof(path)) > 0)
> > + chdir(dirname(path));
> > + }
> 
> 
> Why the chdir?

For me, I was trying to standardise the test, since "../tools" bakes in
so many assumptions that simply aren't true when one invokes
$path/tools_test. Back to the igt_data_dir() request.
 
> CI runs tests with IGT installed (make install). The test's directory
> is $libexecdir/intel-gpu-tools/, ../tools is $libexecdir/tools and
> that doesn't exist.

So where was it expecting to find the tools?
-Chris
___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


Re: [Intel-gfx] [PATCH igt v2] igt/tools_test: Check the tools exist before executing

2017-12-14 Thread Petri Latvala
On Wed, Dec 13, 2017 at 02:56:10PM +, Chris Wilson wrote:
> As a simple fail-safe against a bad installation, check the tools exist
> before testing whether they work.
> 
> v2: Check intel_l3_parity as well
> 
> Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=102935
> Signed-off-by: Chris Wilson 
> Reviewed-by: Petri Latvala 
> Reviewed-by: Joonas Lahtinen 
> ---
>  tests/tools_test.c | 48 +---
>  1 file changed, 29 insertions(+), 19 deletions(-)
> 
> diff --git a/tests/tools_test.c b/tests/tools_test.c
> index 6aea7a8a4..4183456e2 100644
> --- a/tests/tools_test.c
> +++ b/tests/tools_test.c
> @@ -26,6 +26,10 @@
>  #include 
>  #include 
>  #include 
> +#include 
> +#include 
> +
> +#define TOOLS "../tools/"
>  
>  struct line_check {
>   int found;
> @@ -59,10 +63,19 @@ igt_main
>  {
>   igt_skip_on_simulation();
>  
> + igt_fixture {
> + char path[4096];
> +
> + if (readlink("/proc/self/exe", path, sizeof(path)) > 0)
> + chdir(dirname(path));
> + }


Why the chdir?

CI runs tests with IGT installed (make install). The test's directory
is $libexecdir/intel-gpu-tools/, ../tools is $libexecdir/tools and
that doesn't exist.


-- 
Petri Latvala
___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


Re: [Intel-gfx] [PATCH i-g-t 4/6] i-g-t kms_plane_scaling: test scaling with tiling rotation and pixel formats

2017-12-14 Thread Daniel Vetter
Just a quick comment at the bottom.

On Wed, Dec 13, 2017 at 03:20:50PM +0530, Vidya Srinivas wrote:
> @@ -312,23 +480,40 @@ static void test_plane_scaling(data_t *d, enum pipe 
> pipe)
>   igt_require_f(valid_tests, "no valid crtc/connector combinations 
> found\n");
>  }
>  
> -igt_simple_main
> +igt_main
>  {
>   data_t data = {};
>   enum pipe pipe;
>  
>   igt_skip_on_simulation();
>  
> -
> - data.drm_fd = drm_open_driver(DRIVER_INTEL);
> - igt_require_pipe_crc(data.drm_fd);
> - igt_display_init(, data.drm_fd);
> - data.devid = intel_get_drm_devid(data.drm_fd);
> + igt_fixture {
> + data.drm_fd = drm_open_driver(DRIVER_INTEL);
> + kmstest_set_vt_graphics_mode();
> + igt_require_pipe_crc(data.drm_fd);
> + igt_display_init(, data.drm_fd);
> + data.devid = intel_get_drm_devid(data.drm_fd);
> + igt_require_gem(data.drm_fd);
> + }
>  
>   data.num_scalers = intel_gen(data.devid) >= 9 ? 2 : 0;

Hm, would be nice if we could get rid of this hard-coded platform
knowledge and autodiscover. But atm the kernel doesn't expose a
"can_scale" property unfortunately. Maybe add a FIXME comment?

Real reason I'm commenting here: You probably need to put this into the
igt_fixture too, since otherwise you're test won't run correctly when just
enumerating tests.

>  
> - for_each_pipe_static(pipe)
> - test_plane_scaling(, pipe);
> + for_each_pipe_static(pipe) {
> +
> + igt_subtest_f("scaler_basic_test") {
> + test_plane_scaling(, pipe);
> + }
> +
> + igt_subtest_f("scaler_with_pixel_format") {
> + test_scaler_with_pixel_format(, pipe);
> + }
>  
> - igt_display_fini();
> + igt_subtest_f("scaler_with_rotation") {
> + test_scaler_with_rotation(, pipe);
> + }
> +
> + igt_fixture {
> + igt_display_fini();
> + }
> + }

Just a quick drive-by: You probably want to convert to subtest-based
testing as the very first patch (without any functional tests). In your
current series you add more subtests while still using igt_simple_main,
which will blow up.

The goal of a split up patch series isn't just to make review easier, but
also testing: Every single step in your series is supposed to be a fully
functional codebase. When you're not much experienced with building up
such a patch series, it's good practice to double-check that before
sending. I tend to use git rebase -x $test-script to automate that if
possible. That way you can make sure that every single step in your patch
series builds (cleanly!) and results in a working testcases (which should
only change results if your patch aims to do that, not as some
side-effect).

Cheers, Daniel
-- 
Daniel Vetter
Software Engineer, Intel Corporation
http://blog.ffwll.ch
___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


Re: [Intel-gfx] [PATCH v2] x86/gpu: add CFL to early quirks

2017-12-14 Thread Jani Nikula
On Wed, 13 Dec 2017, Lucas De Marchi  wrote:
> CFL was missing from intel_early_ids[]. The PCI ID needs to be there to
> allow the memory region to be stolen, otherwise we could have RAM being
> arbitrarily overwritten if for example we keep using the UEFI framebuffer,
> depending on how BIOS has set up the e820 map.
>
> Fixes: b056f8f3d6b9 ("drm/i915/cfl: Add Coffee Lake PCI IDs for S Skus.")
> Signed-off-by: Lucas De Marchi 
> Cc: Rodrigo Vivi 
> Cc: Anusha Srivatsa 
> Cc: Jani Nikula 
> Cc: Joonas Lahtinen 
> Cc: David Airlie 
> Cc: intel-gfx@lists.freedesktop.org
> Cc: dri-de...@lists.freedesktop.org
> Cc: Ingo Molnar 
> Cc: H. Peter Anvin 
> Cc: Thomas Gleixner 
> Cc: x...@kernel.org
> Cc:  # v4.13+ 0890540e21cf drm/i915: add GT number to 
> intel_device_info
> Cc:  # v4.13+ 41693fd52373 drm/i915/kbl: Change a KBL 
> pci id to GT2 from GT1.5
> Cc:  # v4.13+

Agreed on the Fixes: and Cc: stable here.

Acked-by: Jani Nikula 

> Reviewed-by: Rodrigo Vivi 
> ---
>
> v2: improve commit message, add Fixes tag and CC stable
>
>  arch/x86/kernel/early-quirks.c | 1 +
>  include/drm/i915_pciids.h  | 6 ++
>  2 files changed, 7 insertions(+)
>
> diff --git a/arch/x86/kernel/early-quirks.c b/arch/x86/kernel/early-quirks.c
> index 3cbb2c78a9df..bae0d32e327b 100644
> --- a/arch/x86/kernel/early-quirks.c
> +++ b/arch/x86/kernel/early-quirks.c
> @@ -528,6 +528,7 @@ static const struct pci_device_id intel_early_ids[] 
> __initconst = {
>   INTEL_SKL_IDS(_early_ops),
>   INTEL_BXT_IDS(_early_ops),
>   INTEL_KBL_IDS(_early_ops),
> + INTEL_CFL_IDS(_early_ops),
>   INTEL_GLK_IDS(_early_ops),
>   INTEL_CNL_IDS(_early_ops),
>  };
> diff --git a/include/drm/i915_pciids.h b/include/drm/i915_pciids.h
> index 972a25633525..c65e4489006d 100644
> --- a/include/drm/i915_pciids.h
> +++ b/include/drm/i915_pciids.h
> @@ -392,6 +392,12 @@
>   INTEL_VGA_DEVICE(0x3EA8, info), /* ULT GT3 */ \
>   INTEL_VGA_DEVICE(0x3EA5, info)  /* ULT GT3 */
>  
> +#define INTEL_CFL_IDS(info) \
> + INTEL_CFL_S_GT1_IDS(info), \
> + INTEL_CFL_S_GT2_IDS(info), \
> + INTEL_CFL_H_GT2_IDS(info), \
> + INTEL_CFL_U_GT3_IDS(info)
> +
>  /* CNL U 2+2 */
>  #define INTEL_CNL_U_GT2_IDS(info) \
>   INTEL_VGA_DEVICE(0x5A52, info), \

-- 
Jani Nikula, Intel Open Source Technology Center
___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


Re: [Intel-gfx] [PATCH i-g-t] igt/kms_rotation_crc: Add horizontal flip subtest.

2017-12-14 Thread Daniel Vetter
On Thu, Nov 23, 2017 at 12:05 AM, Anusha Srivatsa
 wrote:
> From: Joseph Garvey 
>
> Test that horizontal flip works with supported rotations. Includes
> a fix for the unrotated fb which was not being positioned correctly
> with portrait and landscape rectangles.
>
> v2:(from Anusha)
> - Change 180 degree rotation to follow the rest, use
> igt_swap(), make flip variable a bool. Format the
> patch correctly (Ville, Petri Latvala)
>
> v3: (From Anusha)
> - Correct the name of subtests in order to avoid duplication
> of names (Arek)
>
> Signed-off-by: Anusha Srivatsa 
> Signed-off-by: Joseph Garvey 
> Cc: Ville Syrjälä 
> Cc: Petri Latvala 
> Cc: Arkadiusz Hiler 

I didn't see this patch fly by originally, but now Marta pointed out
that this skips everywhere. We need to rework it.

General principle is that in kms tests we should _not_ have any
platform/feature checks encoded in the test. Instead, the testcase
should check properties to figure out whether something should work or
not.


> ---
>  lib/igt_kms.c|   2 +-
>  lib/igt_kms.h|   5 ++
>  tests/kms_rotation_crc.c | 198 
> +--
>  3 files changed, 164 insertions(+), 41 deletions(-)
>
> diff --git a/lib/igt_kms.c b/lib/igt_kms.c
> index a572fc6..3034e44 100644
> --- a/lib/igt_kms.c
> +++ b/lib/igt_kms.c
> @@ -3050,7 +3050,7 @@ void igt_fb_set_size(struct igt_fb *fb, igt_plane_t 
> *plane,
>
>  static const char *rotation_name(igt_rotation_t rotation)
>  {
> -   switch (rotation) {
> +   switch (rotation & IGT_ROTATION_MASK) {
> case IGT_ROTATION_0:
> return "0°";
> case IGT_ROTATION_90:
> diff --git a/lib/igt_kms.h b/lib/igt_kms.h
> index 8dc118c..b83a828 100644
> --- a/lib/igt_kms.h
> +++ b/lib/igt_kms.h
> @@ -281,8 +281,13 @@ typedef enum {
> IGT_ROTATION_90  = 1 << 1,
> IGT_ROTATION_180 = 1 << 2,
> IGT_ROTATION_270 = 1 << 3,
> +   IGT_REFLECT_X= 1 << 4,
> +   IGT_REFLECT_Y= 1 << 5,
>  } igt_rotation_t;
>
> +#define IGT_ROTATION_MASK \
> +   (IGT_ROTATION_0 | IGT_ROTATION_90 | IGT_ROTATION_180 | 
> IGT_ROTATION_270)
> +
>  typedef struct {
> /*< private >*/
> igt_pipe_t *pipe;
> diff --git a/tests/kms_rotation_crc.c b/tests/kms_rotation_crc.c
> index 5aec8fa..9e13667 100644
> --- a/tests/kms_rotation_crc.c
> +++ b/tests/kms_rotation_crc.c
> @@ -32,6 +32,7 @@ typedef struct {
> igt_display_t display;
> struct igt_fb fb;
> struct igt_fb fb_reference;
> +   struct igt_fb fb_unrotated;
> struct igt_fb fb_modeset;
> struct igt_fb fb_flip;
> igt_crc_t ref_crc;
> @@ -43,8 +44,59 @@ typedef struct {
> uint32_t override_fmt;
> uint64_t override_tiling;
> bool flips;
> +   int devid;
>  } data_t;
>
> +typedef struct {
> +   float r;
> +   float g;
> +   float b;
> +} rgb_color_t;
> +
> +static void set_color(rgb_color_t *color, float r, float g, float b)
> +{
> +   color->r = r;
> +   color->g = g;
> +   color->b = b;
> +}
> +
> +static void rotate_colors(rgb_color_t *tl, rgb_color_t *tr, rgb_color_t *br,
> + rgb_color_t *bl, igt_rotation_t rotation)
> +{
> +   rgb_color_t bl_tmp, br_tmp, tl_tmp, tr_tmp;
> +
> +   if (rotation & IGT_REFLECT_X) {
> +   igt_swap(*tl, *tr);
> +   igt_swap(*bl, *br);
> +   }
> +
> +   if (rotation & IGT_ROTATION_90) {
> +   bl_tmp = *bl;
> +   br_tmp = *br;
> +   tl_tmp = *tl;
> +   tr_tmp = *tr;
> +   *tl = tr_tmp;
> +   *bl = tl_tmp;
> +   *tr = br_tmp;
> +   *br = bl_tmp;
> +   } else if (rotation & IGT_ROTATION_180) {
> +   igt_swap(*tl, *br);
> +   igt_swap(*tr, *bl);
> +   } else if (rotation & IGT_ROTATION_270) {
> +   bl_tmp = *bl;
> +   br_tmp = *br;
> +   tl_tmp = *tl;
> +   tr_tmp = *tr;
> +   *tl = bl_tmp;
> +   *bl = br_tmp;
> +   *tr = tl_tmp;
> +   *br = tr_tmp;
> +   }
> +}
> +
> +#define RGB_COLOR(color) \
> +   color.r, color.g, color.b
> +
>  static void
>  paint_squares(data_t *data, igt_rotation_t rotation,
>   struct igt_fb *fb, float o)
> @@ -52,35 +104,21 @@ paint_squares(data_t *data, igt_rotation_t rotation,
> cairo_t *cr;
> unsigned int w = fb->width;
> unsigned int h = fb->height;
> +   rgb_color_t tl, tr, bl, br;
>
> cr = igt_get_cairo_ctx(data->gfx_fd, fb);
>
> -   if (rotation == IGT_ROTATION_180) {
> -   cairo_translate(cr, w, h);
> -   cairo_rotate(cr, M_PI);
> -   }
> +   

Re: [Intel-gfx] [PATCH] drm/i915: Ignore TMDS clock limit for DP++ when EDID override is set

2017-12-14 Thread Jani Nikula
On Thu, 14 Dec 2017, Abdiel Janulgue  wrote:
> 4K modes testing by using dummy EDID data has never been working
> properly on boxes with DP++ (dual-mode) adaptors. The reason for
> this is that  those modes got pruned during hdmi mode validation.
> intel_hdmi_mode_valid returns CLOCK_HIGH  because the pixel clock
> reported by the 4k mode is higher than dual port TMDS clock limit.
>
> However 4k injection does work properly on machines that don't have
> DP++ adapters because the mode is never validated against the DP++
> TMDS clock limit.
>
> Ignore the limits when we're testing using overriden EDIDs.

What you're actually doing is *not* detecting dual mode adaptors when
you're using an override EDID. Which means, with this patch, you can't
use override EDID with dual mode adaptors, at all. (By proxy this means
you of course ignore the limits too...)

Slightly less damage would be changing the has_edid check above your
change to (has_edid && !connector->override_edid). Still not great, but
better than this. Oh, and deserves a comment in code.

The question is, how do you decide which ports to use for override EDID
testing? Why does the VBT on these machines say those ports presumably
have a dual mode adaptor?

BR,
Jani.

>
> Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=101649
> Cc: Ville Syrjälä 
> Cc: Jani Nikula 
> Cc: Daniel Vetter 
> Signed-off-by: Abdiel Janulgue 
> ---
>  drivers/gpu/drm/i915/intel_hdmi.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/gpu/drm/i915/intel_hdmi.c 
> b/drivers/gpu/drm/i915/intel_hdmi.c
> index bced7b9..d133353 100644
> --- a/drivers/gpu/drm/i915/intel_hdmi.c
> +++ b/drivers/gpu/drm/i915/intel_hdmi.c
> @@ -1576,7 +1576,7 @@ intel_hdmi_dp_dual_mode_detect(struct drm_connector 
> *connector, bool has_edid)
>   }
>   }
>  
> - if (type == DRM_DP_DUAL_MODE_NONE)
> + if (type == DRM_DP_DUAL_MODE_NONE || connector->override_edid)
>   return;
>  
>   hdmi->dp_dual_mode.type = type;

-- 
Jani Nikula, Intel Open Source Technology Center
___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


[Intel-gfx] ✓ Fi.CI.BAT: success for drm/i915: Ignore TMDS clock limit for DP++ when EDID override is set

2017-12-14 Thread Patchwork
== Series Details ==

Series: drm/i915: Ignore TMDS clock limit for DP++ when EDID override is set
URL   : https://patchwork.freedesktop.org/series/35338/
State : success

== Summary ==

Series 35338v1 drm/i915: Ignore TMDS clock limit for DP++ when EDID override is 
set
https://patchwork.freedesktop.org/api/1.0/series/35338/revisions/1/mbox/

Test gem_exec_suspend:
Subgroup basic-s4-devices:
pass   -> DMESG-WARN (fi-elk-e7500) fdo#103989
Test gem_mmap_gtt:
Subgroup basic-small-bo-tiledx:
fail   -> PASS   (fi-gdg-551) fdo#102575
Test kms_pipe_crc_basic:
Subgroup suspend-read-crc-pipe-a:
dmesg-warn -> PASS   (fi-kbl-r) fdo#104172

fdo#103989 https://bugs.freedesktop.org/show_bug.cgi?id=103989
fdo#102575 https://bugs.freedesktop.org/show_bug.cgi?id=102575
fdo#104172 https://bugs.freedesktop.org/show_bug.cgi?id=104172

fi-bdw-5557u total:288  pass:267  dwarn:0   dfail:0   fail:0   skip:21  
time:430s
fi-bdw-gvtdvmtotal:288  pass:264  dwarn:0   dfail:0   fail:0   skip:24  
time:444s
fi-blb-e6850 total:288  pass:222  dwarn:1   dfail:0   fail:1   skip:64  
time:386s
fi-bsw-n3050 total:288  pass:242  dwarn:0   dfail:0   fail:0   skip:46  
time:503s
fi-bwr-2160  total:288  pass:183  dwarn:0   dfail:0   fail:0   skip:105 
time:278s
fi-bxt-dsi   total:288  pass:258  dwarn:0   dfail:0   fail:0   skip:30  
time:497s
fi-bxt-j4205 total:288  pass:259  dwarn:0   dfail:0   fail:0   skip:29  
time:497s
fi-byt-j1900 total:288  pass:253  dwarn:0   dfail:0   fail:0   skip:35  
time:480s
fi-byt-n2820 total:288  pass:249  dwarn:0   dfail:0   fail:0   skip:39  
time:475s
fi-elk-e7500 total:224  pass:163  dwarn:15  dfail:0   fail:0   skip:45 
fi-gdg-551   total:288  pass:179  dwarn:1   dfail:0   fail:0   skip:108 
time:264s
fi-glk-1 total:288  pass:260  dwarn:0   dfail:0   fail:0   skip:28  
time:539s
fi-hsw-4770  total:288  pass:261  dwarn:0   dfail:0   fail:0   skip:27  
time:404s
fi-hsw-4770r total:288  pass:261  dwarn:0   dfail:0   fail:0   skip:27  
time:416s
fi-ilk-650   total:288  pass:228  dwarn:0   dfail:0   fail:0   skip:60  
time:388s
fi-ivb-3520m total:288  pass:259  dwarn:0   dfail:0   fail:0   skip:29  
time:476s
fi-ivb-3770  total:288  pass:255  dwarn:0   dfail:0   fail:0   skip:33  
time:426s
fi-kbl-7500u total:288  pass:263  dwarn:1   dfail:0   fail:0   skip:24  
time:479s
fi-kbl-7560u total:288  pass:268  dwarn:1   dfail:0   fail:0   skip:19  
time:523s
fi-kbl-7567u total:288  pass:268  dwarn:0   dfail:0   fail:0   skip:20  
time:462s
fi-kbl-r total:288  pass:261  dwarn:0   dfail:0   fail:0   skip:27  
time:523s
fi-pnv-d510  total:288  pass:221  dwarn:1   dfail:0   fail:1   skip:65  
time:588s
fi-skl-6260u total:288  pass:268  dwarn:0   dfail:0   fail:0   skip:20  
time:443s
fi-skl-6600u total:288  pass:260  dwarn:1   dfail:0   fail:0   skip:27  
time:536s
fi-skl-6700hqtotal:288  pass:262  dwarn:0   dfail:0   fail:0   skip:26  
time:558s
fi-skl-6770hqtotal:288  pass:268  dwarn:0   dfail:0   fail:0   skip:20  
time:479s
fi-skl-gvtdvmtotal:288  pass:265  dwarn:0   dfail:0   fail:0   skip:23  
time:447s
fi-snb-2520m total:288  pass:248  dwarn:0   dfail:0   fail:0   skip:40  
time:541s
fi-snb-2600  total:288  pass:248  dwarn:0   dfail:0   fail:0   skip:40  
time:413s
Blacklisted hosts:
fi-cfl-s2total:288  pass:262  dwarn:0   dfail:0   fail:0   skip:26  
time:598s
fi-cnl-y total:288  pass:262  dwarn:0   dfail:0   fail:0   skip:26  
time:620s
fi-glk-dsi   total:288  pass:258  dwarn:0   dfail:0   fail:0   skip:30  
time:484s

612ecaaadb8722dc42cfebcc862fee41e5896dd3 drm-tip: 2017y-12m-14d-08h-09m-42s UTC 
integration manifest
d1bd7e573c06 drm/i915: Ignore TMDS clock limit for DP++ when EDID override is 
set

== Logs ==

For more details see: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_7493/issues.html
___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


[Intel-gfx] [PATCH] drm/i915: Ignore TMDS clock limit for DP++ when EDID override is set

2017-12-14 Thread Abdiel Janulgue
4K modes testing by using dummy EDID data has never been working
properly on boxes with DP++ (dual-mode) adaptors. The reason for
this is that  those modes got pruned during hdmi mode validation.
intel_hdmi_mode_valid returns CLOCK_HIGH  because the pixel clock
reported by the 4k mode is higher than dual port TMDS clock limit.

However 4k injection does work properly on machines that don't have
DP++ adapters because the mode is never validated against the DP++
TMDS clock limit.

Ignore the limits when we're testing using overriden EDIDs.

Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=101649
Cc: Ville Syrjälä 
Cc: Jani Nikula 
Cc: Daniel Vetter 
Signed-off-by: Abdiel Janulgue 
---
 drivers/gpu/drm/i915/intel_hdmi.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/gpu/drm/i915/intel_hdmi.c 
b/drivers/gpu/drm/i915/intel_hdmi.c
index bced7b9..d133353 100644
--- a/drivers/gpu/drm/i915/intel_hdmi.c
+++ b/drivers/gpu/drm/i915/intel_hdmi.c
@@ -1576,7 +1576,7 @@ intel_hdmi_dp_dual_mode_detect(struct drm_connector 
*connector, bool has_edid)
}
}
 
-   if (type == DRM_DP_DUAL_MODE_NONE)
+   if (type == DRM_DP_DUAL_MODE_NONE || connector->override_edid)
return;
 
hdmi->dp_dual_mode.type = type;
-- 
2.7.4

___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


Re: [Intel-gfx] ✗ Fi.CI.IGT: warning for series starting with [CI,1/7] drm/i915/guc: Move shared data allocation away from submission path

2017-12-14 Thread Chris Wilson
Quoting Patchwork (2017-12-14 00:03:46)
> == Series Details ==
> 
> Series: series starting with [CI,1/7] drm/i915/guc: Move shared data 
> allocation away from submission path
> URL   : https://patchwork.freedesktop.org/series/35321/
> State : warning

And pushed, thanks for the fixups and review,
-Chris
___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx