* [Intel-gfx] [PATCH v2] mei: add timeout to send
@ 2022-11-15 11:14 Alexander Usyskin
2022-11-15 13:45 ` Greg Kroah-Hartman
` (2 more replies)
0 siblings, 3 replies; 6+ messages in thread
From: Alexander Usyskin @ 2022-11-15 11:14 UTC (permalink / raw)
To: Greg Kroah-Hartman, Jani Nikula, Joonas Lahtinen, Rodrigo Vivi,
David Airlie, Daniel Vetter, Tvrtko Ursulin
Cc: linux-kernel, Tomas Winkler, Alexander Usyskin, Vitaly Lubart, intel-gfx
When driver wakes up the firmware from the low power state, it is sending
a memory ready message.
The send is done via synchronous/blocking function to ensure that firmware
is in ready state. However, in case of firmware undergoing reset send
might be block forever.
To address this issue a timeout is added to blocking write command on
the internal bus.
Introduce the __mei_cl_send_timeout function to use instead of
__mei_cl_send in cases where timeout is required.
The mei_cl_write has only two callers and there is no need to split
it into two functions.
Signed-off-by: Alexander Usyskin <alexander.usyskin@intel.com>
---
V2: address review comments:
- split __mei_cl_send and __mei_cl_send_timeout
- add units to timeout KDoc
- use MAX_SCHEDULE_TIMEOUT to squash wait to one macro
drivers/misc/mei/bus-fixup.c | 14 +++++++++-----
drivers/misc/mei/bus.c | 22 ++++++++++++++++++++--
drivers/misc/mei/client.c | 18 ++++++++++++++----
drivers/misc/mei/client.h | 2 +-
drivers/misc/mei/main.c | 2 +-
drivers/misc/mei/mei_dev.h | 2 ++
6 files changed, 47 insertions(+), 13 deletions(-)
diff --git a/drivers/misc/mei/bus-fixup.c b/drivers/misc/mei/bus-fixup.c
index 71fbf0bc8453..9959b8e8e91d 100644
--- a/drivers/misc/mei/bus-fixup.c
+++ b/drivers/misc/mei/bus-fixup.c
@@ -188,17 +188,20 @@ static int mei_fwver(struct mei_cl_device *cldev)
return ret;
}
+#define GFX_MEMORY_READY_TIMEOUT 200
+
static int mei_gfx_memory_ready(struct mei_cl_device *cldev)
{
struct mkhi_gfx_mem_ready req = {0};
- unsigned int mode = MEI_CL_IO_TX_INTERNAL;
+ unsigned int mode = MEI_CL_IO_TX_INTERNAL | MEI_CL_IO_TX_BLOCKING;
req.hdr.group_id = MKHI_GROUP_ID_GFX;
req.hdr.command = MKHI_GFX_MEMORY_READY_CMD_REQ;
req.flags = MKHI_GFX_MEM_READY_PXP_ALLOWED;
dev_dbg(&cldev->dev, "Sending memory ready command\n");
- return __mei_cl_send(cldev->cl, (u8 *)&req, sizeof(req), 0, mode);
+ return __mei_cl_send_timeout(cldev->cl, (u8 *)&req, sizeof(req), 0,
+ mode, GFX_MEMORY_READY_TIMEOUT);
}
static void mei_mkhi_fix(struct mei_cl_device *cldev)
@@ -263,12 +266,13 @@ static void mei_gsc_mkhi_fix_ver(struct mei_cl_device *cldev)
if (cldev->bus->pxp_mode == MEI_DEV_PXP_INIT) {
ret = mei_gfx_memory_ready(cldev);
- if (ret < 0)
+ if (ret < 0) {
dev_err(&cldev->dev, "memory ready command failed %d\n", ret);
- else
+ } else {
dev_dbg(&cldev->dev, "memory ready command sent\n");
+ cldev->bus->pxp_mode = MEI_DEV_PXP_SETUP;
+ }
/* we go to reset after that */
- cldev->bus->pxp_mode = MEI_DEV_PXP_SETUP;
goto out;
}
diff --git a/drivers/misc/mei/bus.c b/drivers/misc/mei/bus.c
index 1fbe127ff633..63043e8df980 100644
--- a/drivers/misc/mei/bus.c
+++ b/drivers/misc/mei/bus.c
@@ -32,8 +32,26 @@
*
* Return: written size bytes or < 0 on error
*/
-ssize_t __mei_cl_send(struct mei_cl *cl, const u8 *buf, size_t length, u8 vtag,
+inline ssize_t __mei_cl_send(struct mei_cl *cl, const u8 *buf, size_t length, u8 vtag,
unsigned int mode)
+{
+ return __mei_cl_send_timeout(cl, buf, length, vtag, mode, MAX_SCHEDULE_TIMEOUT);
+}
+
+/**
+ * __mei_cl_send_timeout - internal client send (write)
+ *
+ * @cl: host client
+ * @buf: buffer to send
+ * @length: buffer length
+ * @vtag: virtual tag
+ * @mode: sending mode
+ * @timeout: send timeout in milliseconds for blocking writes
+ *
+ * Return: written size bytes or < 0 on error
+ */
+ssize_t __mei_cl_send_timeout(struct mei_cl *cl, const u8 *buf, size_t length, u8 vtag,
+ unsigned int mode, unsigned long timeout)
{
struct mei_device *bus;
struct mei_cl_cb *cb;
@@ -108,7 +126,7 @@ ssize_t __mei_cl_send(struct mei_cl *cl, const u8 *buf, size_t length, u8 vtag,
cb->buf.size = 0;
}
- rets = mei_cl_write(cl, cb);
+ rets = mei_cl_write(cl, cb, timeout);
if (mode & MEI_CL_IO_SGL && rets == 0)
rets = length;
diff --git a/drivers/misc/mei/client.c b/drivers/misc/mei/client.c
index 6c8b71ae32c8..02c278202ad7 100644
--- a/drivers/misc/mei/client.c
+++ b/drivers/misc/mei/client.c
@@ -1954,10 +1954,11 @@ int mei_cl_irq_write(struct mei_cl *cl, struct mei_cl_cb *cb,
*
* @cl: host client
* @cb: write callback with filled data
+ * @timeout: send timeout in milliseconds for blocking writes
*
* Return: number of bytes sent on success, <0 on failure.
*/
-ssize_t mei_cl_write(struct mei_cl *cl, struct mei_cl_cb *cb)
+ssize_t mei_cl_write(struct mei_cl *cl, struct mei_cl_cb *cb, unsigned long timeout)
{
struct mei_device *dev;
struct mei_msg_data *buf;
@@ -2081,11 +2082,20 @@ ssize_t mei_cl_write(struct mei_cl *cl, struct mei_cl_cb *cb)
if (blocking && cl->writing_state != MEI_WRITE_COMPLETE) {
mutex_unlock(&dev->device_lock);
- rets = wait_event_interruptible(cl->tx_wait,
- cl->writing_state == MEI_WRITE_COMPLETE ||
- (!mei_cl_is_connected(cl)));
+ rets = wait_event_interruptible_timeout(cl->tx_wait,
+ cl->writing_state == MEI_WRITE_COMPLETE ||
+ (!mei_cl_is_connected(cl)),
+ msecs_to_jiffies(timeout));
mutex_lock(&dev->device_lock);
+ /* clean all queue on timeout as something fatal happened */
+ if (rets == 0) {
+ rets = -ETIME;
+ mei_io_tx_list_free_cl(&dev->write_list, cl, NULL);
+ mei_io_tx_list_free_cl(&dev->write_waiting_list, cl, NULL);
+ }
/* wait_event_interruptible returns -ERESTARTSYS */
+ if (rets > 0)
+ rets = 0;
if (rets) {
if (signal_pending(current))
rets = -EINTR;
diff --git a/drivers/misc/mei/client.h b/drivers/misc/mei/client.h
index 418056fb1489..9052860bcfe0 100644
--- a/drivers/misc/mei/client.h
+++ b/drivers/misc/mei/client.h
@@ -246,7 +246,7 @@ int mei_cl_connect(struct mei_cl *cl, struct mei_me_client *me_cl,
int mei_cl_irq_connect(struct mei_cl *cl, struct mei_cl_cb *cb,
struct list_head *cmpl_list);
int mei_cl_read_start(struct mei_cl *cl, size_t length, const struct file *fp);
-ssize_t mei_cl_write(struct mei_cl *cl, struct mei_cl_cb *cb);
+ssize_t mei_cl_write(struct mei_cl *cl, struct mei_cl_cb *cb, unsigned long timeout);
int mei_cl_irq_write(struct mei_cl *cl, struct mei_cl_cb *cb,
struct list_head *cmpl_list);
diff --git a/drivers/misc/mei/main.c b/drivers/misc/mei/main.c
index 930887e7e38d..632d4ae21e46 100644
--- a/drivers/misc/mei/main.c
+++ b/drivers/misc/mei/main.c
@@ -383,7 +383,7 @@ static ssize_t mei_write(struct file *file, const char __user *ubuf,
goto out;
}
- rets = mei_cl_write(cl, cb);
+ rets = mei_cl_write(cl, cb, MAX_SCHEDULE_TIMEOUT);
out:
mutex_unlock(&dev->device_lock);
return rets;
diff --git a/drivers/misc/mei/mei_dev.h b/drivers/misc/mei/mei_dev.h
index 8d8018428d9d..996b70a988be 100644
--- a/drivers/misc/mei/mei_dev.h
+++ b/drivers/misc/mei/mei_dev.h
@@ -379,6 +379,8 @@ void mei_cl_bus_rescan_work(struct work_struct *work);
void mei_cl_bus_dev_fixup(struct mei_cl_device *dev);
ssize_t __mei_cl_send(struct mei_cl *cl, const u8 *buf, size_t length, u8 vtag,
unsigned int mode);
+ssize_t __mei_cl_send_timeout(struct mei_cl *cl, const u8 *buf, size_t length, u8 vtag,
+ unsigned int mode, unsigned long timeout);
ssize_t __mei_cl_recv(struct mei_cl *cl, u8 *buf, size_t length, u8 *vtag,
unsigned int mode, unsigned long timeout);
bool mei_cl_bus_rx_event(struct mei_cl *cl);
--
2.34.1
^ permalink raw reply related [flat|nested] 6+ messages in thread
* Re: [Intel-gfx] [PATCH v2] mei: add timeout to send
2022-11-15 11:14 [Intel-gfx] [PATCH v2] mei: add timeout to send Alexander Usyskin
@ 2022-11-15 13:45 ` Greg Kroah-Hartman
2022-11-15 14:27 ` Usyskin, Alexander
2022-11-15 22:41 ` [Intel-gfx] ✓ Fi.CI.BAT: success for mei: add timeout to send (rev2) Patchwork
2022-11-16 5:37 ` [Intel-gfx] ✗ Fi.CI.IGT: failure " Patchwork
2 siblings, 1 reply; 6+ messages in thread
From: Greg Kroah-Hartman @ 2022-11-15 13:45 UTC (permalink / raw)
To: Alexander Usyskin
Cc: intel-gfx, linux-kernel, Daniel Vetter, Rodrigo Vivi,
David Airlie, Tomas Winkler, Vitaly Lubart
On Tue, Nov 15, 2022 at 01:14:38PM +0200, Alexander Usyskin wrote:
> When driver wakes up the firmware from the low power state, it is sending
> a memory ready message.
> The send is done via synchronous/blocking function to ensure that firmware
> is in ready state. However, in case of firmware undergoing reset send
> might be block forever.
> To address this issue a timeout is added to blocking write command on
> the internal bus.
Odd formatting of the text :(
>
> Introduce the __mei_cl_send_timeout function to use instead of
> __mei_cl_send in cases where timeout is required.
> The mei_cl_write has only two callers and there is no need to split
> it into two functions.
>
> Signed-off-by: Alexander Usyskin <alexander.usyskin@intel.com>
> ---
> V2: address review comments:
> - split __mei_cl_send and __mei_cl_send_timeout
> - add units to timeout KDoc
> - use MAX_SCHEDULE_TIMEOUT to squash wait to one macro
>
> drivers/misc/mei/bus-fixup.c | 14 +++++++++-----
> drivers/misc/mei/bus.c | 22 ++++++++++++++++++++--
> drivers/misc/mei/client.c | 18 ++++++++++++++----
> drivers/misc/mei/client.h | 2 +-
> drivers/misc/mei/main.c | 2 +-
> drivers/misc/mei/mei_dev.h | 2 ++
> 6 files changed, 47 insertions(+), 13 deletions(-)
>
> diff --git a/drivers/misc/mei/bus-fixup.c b/drivers/misc/mei/bus-fixup.c
> index 71fbf0bc8453..9959b8e8e91d 100644
> --- a/drivers/misc/mei/bus-fixup.c
> +++ b/drivers/misc/mei/bus-fixup.c
> @@ -188,17 +188,20 @@ static int mei_fwver(struct mei_cl_device *cldev)
> return ret;
> }
>
> +#define GFX_MEMORY_READY_TIMEOUT 200
units?
> +
> static int mei_gfx_memory_ready(struct mei_cl_device *cldev)
> {
> struct mkhi_gfx_mem_ready req = {0};
> - unsigned int mode = MEI_CL_IO_TX_INTERNAL;
> + unsigned int mode = MEI_CL_IO_TX_INTERNAL | MEI_CL_IO_TX_BLOCKING;
>
> req.hdr.group_id = MKHI_GROUP_ID_GFX;
> req.hdr.command = MKHI_GFX_MEMORY_READY_CMD_REQ;
> req.flags = MKHI_GFX_MEM_READY_PXP_ALLOWED;
>
> dev_dbg(&cldev->dev, "Sending memory ready command\n");
> - return __mei_cl_send(cldev->cl, (u8 *)&req, sizeof(req), 0, mode);
> + return __mei_cl_send_timeout(cldev->cl, (u8 *)&req, sizeof(req), 0,
> + mode, GFX_MEMORY_READY_TIMEOUT);
> }
>
> static void mei_mkhi_fix(struct mei_cl_device *cldev)
> @@ -263,12 +266,13 @@ static void mei_gsc_mkhi_fix_ver(struct mei_cl_device *cldev)
>
> if (cldev->bus->pxp_mode == MEI_DEV_PXP_INIT) {
> ret = mei_gfx_memory_ready(cldev);
> - if (ret < 0)
> + if (ret < 0) {
> dev_err(&cldev->dev, "memory ready command failed %d\n", ret);
> - else
> + } else {
> dev_dbg(&cldev->dev, "memory ready command sent\n");
> + cldev->bus->pxp_mode = MEI_DEV_PXP_SETUP;
What does the mode change have to do with a timeout?
> + }
> /* we go to reset after that */
> - cldev->bus->pxp_mode = MEI_DEV_PXP_SETUP;
> goto out;
> }
>
> diff --git a/drivers/misc/mei/bus.c b/drivers/misc/mei/bus.c
> index 1fbe127ff633..63043e8df980 100644
> --- a/drivers/misc/mei/bus.c
> +++ b/drivers/misc/mei/bus.c
> @@ -32,8 +32,26 @@
> *
> * Return: written size bytes or < 0 on error
> */
> -ssize_t __mei_cl_send(struct mei_cl *cl, const u8 *buf, size_t length, u8 vtag,
> +inline ssize_t __mei_cl_send(struct mei_cl *cl, const u8 *buf, size_t length, u8 vtag,
> unsigned int mode)
Why inline? The compiler is smart enough.
> +{
> + return __mei_cl_send_timeout(cl, buf, length, vtag, mode, MAX_SCHEDULE_TIMEOUT);
So this will block for how long? Please document this.
> +}
> +
> +/**
> + * __mei_cl_send_timeout - internal client send (write)
> + *
> + * @cl: host client
> + * @buf: buffer to send
> + * @length: buffer length
> + * @vtag: virtual tag
> + * @mode: sending mode
> + * @timeout: send timeout in milliseconds for blocking writes
What do you mean "for blocking writes"?
And what do you use here to wait "for forever"?
> + *
> + * Return: written size bytes or < 0 on error
> + */
> +ssize_t __mei_cl_send_timeout(struct mei_cl *cl, const u8 *buf, size_t length, u8 vtag,
> + unsigned int mode, unsigned long timeout)
> {
> struct mei_device *bus;
> struct mei_cl_cb *cb;
> @@ -108,7 +126,7 @@ ssize_t __mei_cl_send(struct mei_cl *cl, const u8 *buf, size_t length, u8 vtag,
> cb->buf.size = 0;
> }
>
> - rets = mei_cl_write(cl, cb);
> + rets = mei_cl_write(cl, cb, timeout);
>
> if (mode & MEI_CL_IO_SGL && rets == 0)
> rets = length;
> diff --git a/drivers/misc/mei/client.c b/drivers/misc/mei/client.c
> index 6c8b71ae32c8..02c278202ad7 100644
> --- a/drivers/misc/mei/client.c
> +++ b/drivers/misc/mei/client.c
> @@ -1954,10 +1954,11 @@ int mei_cl_irq_write(struct mei_cl *cl, struct mei_cl_cb *cb,
> *
> * @cl: host client
> * @cb: write callback with filled data
> + * @timeout: send timeout in milliseconds for blocking writes
Again, what is the max, and what do you mean "for blocking writes"?
> *
> * Return: number of bytes sent on success, <0 on failure.
> */
> -ssize_t mei_cl_write(struct mei_cl *cl, struct mei_cl_cb *cb)
> +ssize_t mei_cl_write(struct mei_cl *cl, struct mei_cl_cb *cb, unsigned long timeout)
Why not have mei_cl_write() and mei_cl_write_timeout() like you do for
"send"?
> {
> struct mei_device *dev;
> struct mei_msg_data *buf;
> @@ -2081,11 +2082,20 @@ ssize_t mei_cl_write(struct mei_cl *cl, struct mei_cl_cb *cb)
> if (blocking && cl->writing_state != MEI_WRITE_COMPLETE) {
>
> mutex_unlock(&dev->device_lock);
> - rets = wait_event_interruptible(cl->tx_wait,
> - cl->writing_state == MEI_WRITE_COMPLETE ||
> - (!mei_cl_is_connected(cl)));
> + rets = wait_event_interruptible_timeout(cl->tx_wait,
> + cl->writing_state == MEI_WRITE_COMPLETE ||
> + (!mei_cl_is_connected(cl)),
> + msecs_to_jiffies(timeout));
> mutex_lock(&dev->device_lock);
> + /* clean all queue on timeout as something fatal happened */
> + if (rets == 0) {
> + rets = -ETIME;
> + mei_io_tx_list_free_cl(&dev->write_list, cl, NULL);
> + mei_io_tx_list_free_cl(&dev->write_waiting_list, cl, NULL);
> + }
> /* wait_event_interruptible returns -ERESTARTSYS */
> + if (rets > 0)
> + rets = 0;
> if (rets) {
> if (signal_pending(current))
> rets = -EINTR;
> diff --git a/drivers/misc/mei/client.h b/drivers/misc/mei/client.h
> index 418056fb1489..9052860bcfe0 100644
> --- a/drivers/misc/mei/client.h
> +++ b/drivers/misc/mei/client.h
> @@ -246,7 +246,7 @@ int mei_cl_connect(struct mei_cl *cl, struct mei_me_client *me_cl,
> int mei_cl_irq_connect(struct mei_cl *cl, struct mei_cl_cb *cb,
> struct list_head *cmpl_list);
> int mei_cl_read_start(struct mei_cl *cl, size_t length, const struct file *fp);
> -ssize_t mei_cl_write(struct mei_cl *cl, struct mei_cl_cb *cb);
> +ssize_t mei_cl_write(struct mei_cl *cl, struct mei_cl_cb *cb, unsigned long timeout);
> int mei_cl_irq_write(struct mei_cl *cl, struct mei_cl_cb *cb,
> struct list_head *cmpl_list);
>
> diff --git a/drivers/misc/mei/main.c b/drivers/misc/mei/main.c
> index 930887e7e38d..632d4ae21e46 100644
> --- a/drivers/misc/mei/main.c
> +++ b/drivers/misc/mei/main.c
> @@ -383,7 +383,7 @@ static ssize_t mei_write(struct file *file, const char __user *ubuf,
> goto out;
> }
>
> - rets = mei_cl_write(cl, cb);
> + rets = mei_cl_write(cl, cb, MAX_SCHEDULE_TIMEOUT);
Why this specific value?
thanks,
greg k-h
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [Intel-gfx] [PATCH v2] mei: add timeout to send
2022-11-15 13:45 ` Greg Kroah-Hartman
@ 2022-11-15 14:27 ` Usyskin, Alexander
2022-11-15 14:59 ` Greg Kroah-Hartman
0 siblings, 1 reply; 6+ messages in thread
From: Usyskin, Alexander @ 2022-11-15 14:27 UTC (permalink / raw)
To: Greg Kroah-Hartman
Cc: intel-gfx, linux-kernel, Daniel Vetter, Vivi, Rodrigo,
David Airlie, Winkler, Tomas, Lubart, Vitaly
> > When driver wakes up the firmware from the low power state, it is sending
> > a memory ready message.
> > The send is done via synchronous/blocking function to ensure that
> firmware
> > is in ready state. However, in case of firmware undergoing reset send
> > might be block forever.
> > To address this issue a timeout is added to blocking write command on
> > the internal bus.
>
> Odd formatting of the text :(
Odd == not balanced? Will try to do better in V3
>
> >
> > Introduce the __mei_cl_send_timeout function to use instead of
> > __mei_cl_send in cases where timeout is required.
> > The mei_cl_write has only two callers and there is no need to split
> > it into two functions.
> >
> > Signed-off-by: Alexander Usyskin <alexander.usyskin@intel.com>
> > ---
> > V2: address review comments:
> > - split __mei_cl_send and __mei_cl_send_timeout
> > - add units to timeout KDoc
> > - use MAX_SCHEDULE_TIMEOUT to squash wait to one macro
> >
> > drivers/misc/mei/bus-fixup.c | 14 +++++++++-----
> > drivers/misc/mei/bus.c | 22 ++++++++++++++++++++--
> > drivers/misc/mei/client.c | 18 ++++++++++++++----
> > drivers/misc/mei/client.h | 2 +-
> > drivers/misc/mei/main.c | 2 +-
> > drivers/misc/mei/mei_dev.h | 2 ++
> > 6 files changed, 47 insertions(+), 13 deletions(-)
> >
> > diff --git a/drivers/misc/mei/bus-fixup.c b/drivers/misc/mei/bus-fixup.c
> > index 71fbf0bc8453..9959b8e8e91d 100644
> > --- a/drivers/misc/mei/bus-fixup.c
> > +++ b/drivers/misc/mei/bus-fixup.c
> > @@ -188,17 +188,20 @@ static int mei_fwver(struct mei_cl_device *cldev)
> > return ret;
> > }
> >
> > +#define GFX_MEMORY_READY_TIMEOUT 200
>
> units?
Will add here too, sure.
>
> > +
> > static int mei_gfx_memory_ready(struct mei_cl_device *cldev)
> > {
> > struct mkhi_gfx_mem_ready req = {0};
> > - unsigned int mode = MEI_CL_IO_TX_INTERNAL;
> > + unsigned int mode = MEI_CL_IO_TX_INTERNAL |
> MEI_CL_IO_TX_BLOCKING;
> >
> > req.hdr.group_id = MKHI_GROUP_ID_GFX;
> > req.hdr.command = MKHI_GFX_MEMORY_READY_CMD_REQ;
> > req.flags = MKHI_GFX_MEM_READY_PXP_ALLOWED;
> >
> > dev_dbg(&cldev->dev, "Sending memory ready command\n");
> > - return __mei_cl_send(cldev->cl, (u8 *)&req, sizeof(req), 0, mode);
> > + return __mei_cl_send_timeout(cldev->cl, (u8 *)&req, sizeof(req), 0,
> > + mode, GFX_MEMORY_READY_TIMEOUT);
> > }
> >
> > static void mei_mkhi_fix(struct mei_cl_device *cldev)
> > @@ -263,12 +266,13 @@ static void mei_gsc_mkhi_fix_ver(struct
> mei_cl_device *cldev)
> >
> > if (cldev->bus->pxp_mode == MEI_DEV_PXP_INIT) {
> > ret = mei_gfx_memory_ready(cldev);
> > - if (ret < 0)
> > + if (ret < 0) {
> > dev_err(&cldev->dev, "memory ready command
> failed %d\n", ret);
> > - else
> > + } else {
> > dev_dbg(&cldev->dev, "memory ready command
> sent\n");
> > + cldev->bus->pxp_mode = MEI_DEV_PXP_SETUP;
>
> What does the mode change have to do with a timeout?
With timeout the mei_gfx_memory_ready may now fail gracefully
and we should not move state if message is not sent.
Should I split this fix into another patch or document in this one?
>
> > + }
> > /* we go to reset after that */
> > - cldev->bus->pxp_mode = MEI_DEV_PXP_SETUP;
> > goto out;
> > }
> >
> > diff --git a/drivers/misc/mei/bus.c b/drivers/misc/mei/bus.c
> > index 1fbe127ff633..63043e8df980 100644
> > --- a/drivers/misc/mei/bus.c
> > +++ b/drivers/misc/mei/bus.c
> > @@ -32,8 +32,26 @@
> > *
> > * Return: written size bytes or < 0 on error
> > */
> > -ssize_t __mei_cl_send(struct mei_cl *cl, const u8 *buf, size_t length, u8
> vtag,
> > +inline ssize_t __mei_cl_send(struct mei_cl *cl, const u8 *buf, size_t
> length, u8 vtag,
> > unsigned int mode)
>
> Why inline? The compiler is smart enough.
Will drop
>
> > +{
> > + return __mei_cl_send_timeout(cl, buf, length, vtag, mode,
> MAX_SCHEDULE_TIMEOUT);
>
> So this will block for how long? Please document this.
>
> > +}
> > +
> > +/**
> > + * __mei_cl_send_timeout - internal client send (write)
> > + *
> > + * @cl: host client
> > + * @buf: buffer to send
> > + * @length: buffer length
> > + * @vtag: virtual tag
> > + * @mode: sending mode
> > + * @timeout: send timeout in milliseconds for blocking writes
>
> What do you mean "for blocking writes"?
The timeout has no effect for non-blocking writes (bit in mode parameter),
as they are returning immediately and are not waiting at all.
>
> And what do you use here to wait "for forever"?
The MAX_SCHEDULE_TIMEOUT indicates 'forever' - will add it in KDoc
This is implementation of Rodrigo's suggestion to use only wait with timeout but with
maximum one if 'forever' is required.
>
> > + *
> > + * Return: written size bytes or < 0 on error
> > + */
> > +ssize_t __mei_cl_send_timeout(struct mei_cl *cl, const u8 *buf, size_t
> length, u8 vtag,
> > + unsigned int mode, unsigned long timeout)
> > {
> > struct mei_device *bus;
> > struct mei_cl_cb *cb;
> > @@ -108,7 +126,7 @@ ssize_t __mei_cl_send(struct mei_cl *cl, const u8
> *buf, size_t length, u8 vtag,
> > cb->buf.size = 0;
> > }
> >
> > - rets = mei_cl_write(cl, cb);
> > + rets = mei_cl_write(cl, cb, timeout);
> >
> > if (mode & MEI_CL_IO_SGL && rets == 0)
> > rets = length;
> > diff --git a/drivers/misc/mei/client.c b/drivers/misc/mei/client.c
> > index 6c8b71ae32c8..02c278202ad7 100644
> > --- a/drivers/misc/mei/client.c
> > +++ b/drivers/misc/mei/client.c
> > @@ -1954,10 +1954,11 @@ int mei_cl_irq_write(struct mei_cl *cl, struct
> mei_cl_cb *cb,
> > *
> > * @cl: host client
> > * @cb: write callback with filled data
> > + * @timeout: send timeout in milliseconds for blocking writes
>
> Again, what is the max, and what do you mean "for blocking writes"?
>
> > *
> > * Return: number of bytes sent on success, <0 on failure.
> > */
> > -ssize_t mei_cl_write(struct mei_cl *cl, struct mei_cl_cb *cb)
> > +ssize_t mei_cl_write(struct mei_cl *cl, struct mei_cl_cb *cb, unsigned
> long timeout)
>
> Why not have mei_cl_write() and mei_cl_write_timeout() like you do for
> "send"?
There are only two callers for mei_cl_write now, one with timeout and another without.
Don't think that we need wrapper that has one caller, and no additions are planned.
The __mei_cl_write_timeout may be called by more than one user.
This patch converts one caller, but it is open for other callers in future.
>
> > {
> > struct mei_device *dev;
> > struct mei_msg_data *buf;
> > @@ -2081,11 +2082,20 @@ ssize_t mei_cl_write(struct mei_cl *cl, struct
> mei_cl_cb *cb)
> > if (blocking && cl->writing_state != MEI_WRITE_COMPLETE) {
> >
> > mutex_unlock(&dev->device_lock);
> > - rets = wait_event_interruptible(cl->tx_wait,
> > - cl->writing_state == MEI_WRITE_COMPLETE
> ||
> > - (!mei_cl_is_connected(cl)));
> > + rets = wait_event_interruptible_timeout(cl->tx_wait,
> > + cl->writing_state ==
> MEI_WRITE_COMPLETE ||
> > +
> (!mei_cl_is_connected(cl)),
> > +
> msecs_to_jiffies(timeout));
> > mutex_lock(&dev->device_lock);
> > + /* clean all queue on timeout as something fatal happened
> */
> > + if (rets == 0) {
> > + rets = -ETIME;
> > + mei_io_tx_list_free_cl(&dev->write_list, cl, NULL);
> > + mei_io_tx_list_free_cl(&dev->write_waiting_list, cl,
> NULL);
> > + }
> > /* wait_event_interruptible returns -ERESTARTSYS */
> > + if (rets > 0)
> > + rets = 0;
> > if (rets) {
> > if (signal_pending(current))
> > rets = -EINTR;
> > diff --git a/drivers/misc/mei/client.h b/drivers/misc/mei/client.h
> > index 418056fb1489..9052860bcfe0 100644
> > --- a/drivers/misc/mei/client.h
> > +++ b/drivers/misc/mei/client.h
> > @@ -246,7 +246,7 @@ int mei_cl_connect(struct mei_cl *cl, struct
> mei_me_client *me_cl,
> > int mei_cl_irq_connect(struct mei_cl *cl, struct mei_cl_cb *cb,
> > struct list_head *cmpl_list);
> > int mei_cl_read_start(struct mei_cl *cl, size_t length, const struct file *fp);
> > -ssize_t mei_cl_write(struct mei_cl *cl, struct mei_cl_cb *cb);
> > +ssize_t mei_cl_write(struct mei_cl *cl, struct mei_cl_cb *cb, unsigned
> long timeout);
> > int mei_cl_irq_write(struct mei_cl *cl, struct mei_cl_cb *cb,
> > struct list_head *cmpl_list);
> >
> > diff --git a/drivers/misc/mei/main.c b/drivers/misc/mei/main.c
> > index 930887e7e38d..632d4ae21e46 100644
> > --- a/drivers/misc/mei/main.c
> > +++ b/drivers/misc/mei/main.c
> > @@ -383,7 +383,7 @@ static ssize_t mei_write(struct file *file, const char
> __user *ubuf,
> > goto out;
> > }
> >
> > - rets = mei_cl_write(cl, cb);
> > + rets = mei_cl_write(cl, cb, MAX_SCHEDULE_TIMEOUT);
>
> Why this specific value?
Very big one, rouge equivalent for 'forever'
>
> thanks,
>
> greg k-h
--
Thanks,
Sasha
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [Intel-gfx] [PATCH v2] mei: add timeout to send
2022-11-15 14:27 ` Usyskin, Alexander
@ 2022-11-15 14:59 ` Greg Kroah-Hartman
0 siblings, 0 replies; 6+ messages in thread
From: Greg Kroah-Hartman @ 2022-11-15 14:59 UTC (permalink / raw)
To: Usyskin, Alexander
Cc: intel-gfx, linux-kernel, Daniel Vetter, Vivi, Rodrigo,
David Airlie, Winkler, Tomas, Lubart, Vitaly
On Tue, Nov 15, 2022 at 02:27:02PM +0000, Usyskin, Alexander wrote:
> > > - else
> > > + } else {
> > > dev_dbg(&cldev->dev, "memory ready command
> > sent\n");
> > > + cldev->bus->pxp_mode = MEI_DEV_PXP_SETUP;
> >
> > What does the mode change have to do with a timeout?
> With timeout the mei_gfx_memory_ready may now fail gracefully
> and we should not move state if message is not sent.
>
> Should I split this fix into another patch or document in this one?
Split it into a different patch please.
> > > +/**
> > > + * __mei_cl_send_timeout - internal client send (write)
> > > + *
> > > + * @cl: host client
> > > + * @buf: buffer to send
> > > + * @length: buffer length
> > > + * @vtag: virtual tag
> > > + * @mode: sending mode
> > > + * @timeout: send timeout in milliseconds for blocking writes
> >
> > What do you mean "for blocking writes"?
>
> The timeout has no effect for non-blocking writes (bit in mode parameter),
> as they are returning immediately and are not waiting at all.
That's not obvious, please say that the timeout is affected by the mode
and how it is affected.
thanks,
greg k-h
^ permalink raw reply [flat|nested] 6+ messages in thread
* [Intel-gfx] ✓ Fi.CI.BAT: success for mei: add timeout to send (rev2)
2022-11-15 11:14 [Intel-gfx] [PATCH v2] mei: add timeout to send Alexander Usyskin
2022-11-15 13:45 ` Greg Kroah-Hartman
@ 2022-11-15 22:41 ` Patchwork
2022-11-16 5:37 ` [Intel-gfx] ✗ Fi.CI.IGT: failure " Patchwork
2 siblings, 0 replies; 6+ messages in thread
From: Patchwork @ 2022-11-15 22:41 UTC (permalink / raw)
To: Usyskin, Alexander; +Cc: intel-gfx
[-- Attachment #1: Type: text/plain, Size: 4758 bytes --]
== Series Details ==
Series: mei: add timeout to send (rev2)
URL : https://patchwork.freedesktop.org/series/110495/
State : success
== Summary ==
CI Bug Log - changes from CI_DRM_12382 -> Patchwork_110495v2
====================================================
Summary
-------
**SUCCESS**
No regressions found.
External URL: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_110495v2/index.html
Participating hosts (40 -> 39)
------------------------------
Additional (1): fi-hsw-4770
Missing (2): bat-rpls-1 bat-dg2-11
Known issues
------------
Here are the changes found in Patchwork_110495v2 that come from known issues:
### IGT changes ###
#### Issues hit ####
* igt@gem_softpin@allocator-basic-reserve:
- fi-hsw-4770: NOTRUN -> [SKIP][1] ([fdo#109271]) +9 similar issues
[1]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_110495v2/fi-hsw-4770/igt@gem_softpin@allocator-basic-reserve.html
* igt@i915_pm_backlight@basic-brightness:
- fi-hsw-4770: NOTRUN -> [SKIP][2] ([fdo#109271] / [i915#3012])
[2]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_110495v2/fi-hsw-4770/igt@i915_pm_backlight@basic-brightness.html
* igt@kms_chamelium@common-hpd-after-suspend:
- fi-rkl-11600: NOTRUN -> [SKIP][3] ([fdo#111827])
[3]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_110495v2/fi-rkl-11600/igt@kms_chamelium@common-hpd-after-suspend.html
* igt@kms_chamelium@dp-crc-fast:
- fi-hsw-4770: NOTRUN -> [SKIP][4] ([fdo#109271] / [fdo#111827]) +8 similar issues
[4]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_110495v2/fi-hsw-4770/igt@kms_chamelium@dp-crc-fast.html
* igt@kms_psr@sprite_plane_onoff:
- fi-hsw-4770: NOTRUN -> [SKIP][5] ([fdo#109271] / [i915#1072]) +3 similar issues
[5]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_110495v2/fi-hsw-4770/igt@kms_psr@sprite_plane_onoff.html
#### Possible fixes ####
* igt@gem_exec_suspend@basic-s0@smem:
- {bat-rpls-2}: [DMESG-WARN][6] ([i915#6434]) -> [PASS][7]
[6]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12382/bat-rpls-2/igt@gem_exec_suspend@basic-s0@smem.html
[7]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_110495v2/bat-rpls-2/igt@gem_exec_suspend@basic-s0@smem.html
* igt@gem_huc_copy@huc-copy:
- {bat-dg2-8}: [FAIL][8] ([i915#7029]) -> [PASS][9]
[8]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12382/bat-dg2-8/igt@gem_huc_copy@huc-copy.html
[9]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_110495v2/bat-dg2-8/igt@gem_huc_copy@huc-copy.html
#### Warnings ####
* igt@i915_suspend@basic-s3-without-i915:
- fi-rkl-11600: [INCOMPLETE][10] ([i915#4817]) -> [FAIL][11] ([fdo#103375])
[10]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12382/fi-rkl-11600/igt@i915_suspend@basic-s3-without-i915.html
[11]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_110495v2/fi-rkl-11600/igt@i915_suspend@basic-s3-without-i915.html
{name}: This element is suppressed. This means it is ignored when computing
the status of the difference (SUCCESS, WARNING, or FAILURE).
[fdo#103375]: https://bugs.freedesktop.org/show_bug.cgi?id=103375
[fdo#109271]: https://bugs.freedesktop.org/show_bug.cgi?id=109271
[fdo#109295]: https://bugs.freedesktop.org/show_bug.cgi?id=109295
[fdo#111827]: https://bugs.freedesktop.org/show_bug.cgi?id=111827
[i915#1072]: https://gitlab.freedesktop.org/drm/intel/issues/1072
[i915#1845]: https://gitlab.freedesktop.org/drm/intel/issues/1845
[i915#1849]: https://gitlab.freedesktop.org/drm/intel/issues/1849
[i915#3012]: https://gitlab.freedesktop.org/drm/intel/issues/3012
[i915#3637]: https://gitlab.freedesktop.org/drm/intel/issues/3637
[i915#3708]: https://gitlab.freedesktop.org/drm/intel/issues/3708
[i915#4103]: https://gitlab.freedesktop.org/drm/intel/issues/4103
[i915#4817]: https://gitlab.freedesktop.org/drm/intel/issues/4817
[i915#6434]: https://gitlab.freedesktop.org/drm/intel/issues/6434
[i915#7029]: https://gitlab.freedesktop.org/drm/intel/issues/7029
[i915#7346]: https://gitlab.freedesktop.org/drm/intel/issues/7346
Build changes
-------------
* Linux: CI_DRM_12382 -> Patchwork_110495v2
CI-20190529: 20190529
CI_DRM_12382: cb74864693414b221b3601572e75449558126e8b @ git://anongit.freedesktop.org/gfx-ci/linux
IGT_7057: e2138d48c2c506816868c16cf3ba64f81bdead41 @ https://gitlab.freedesktop.org/drm/igt-gpu-tools.git
Patchwork_110495v2: cb74864693414b221b3601572e75449558126e8b @ git://anongit.freedesktop.org/gfx-ci/linux
### Linux commits
282c22ad7906 mei: add timeout to send
== Logs ==
For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_110495v2/index.html
[-- Attachment #2: Type: text/html, Size: 5352 bytes --]
^ permalink raw reply [flat|nested] 6+ messages in thread
* [Intel-gfx] ✗ Fi.CI.IGT: failure for mei: add timeout to send (rev2)
2022-11-15 11:14 [Intel-gfx] [PATCH v2] mei: add timeout to send Alexander Usyskin
2022-11-15 13:45 ` Greg Kroah-Hartman
2022-11-15 22:41 ` [Intel-gfx] ✓ Fi.CI.BAT: success for mei: add timeout to send (rev2) Patchwork
@ 2022-11-16 5:37 ` Patchwork
2 siblings, 0 replies; 6+ messages in thread
From: Patchwork @ 2022-11-16 5:37 UTC (permalink / raw)
To: Usyskin, Alexander; +Cc: intel-gfx
[-- Attachment #1: Type: text/plain, Size: 30293 bytes --]
== Series Details ==
Series: mei: add timeout to send (rev2)
URL : https://patchwork.freedesktop.org/series/110495/
State : failure
== Summary ==
CI Bug Log - changes from CI_DRM_12382_full -> Patchwork_110495v2_full
====================================================
Summary
-------
**FAILURE**
Serious unknown changes coming with Patchwork_110495v2_full absolutely need to be
verified manually.
If you think the reported changes have nothing to do with the changes
introduced in Patchwork_110495v2_full, please notify your bug team to allow them
to document this new failure mode, which will reduce false positives in CI.
Participating hosts (11 -> 11)
------------------------------
No changes in participating hosts
Possible new issues
-------------------
Here are the unknown changes that may have been introduced in Patchwork_110495v2_full:
### IGT changes ###
#### Possible regressions ####
* igt@gem_exec_schedule@preempt-other-chain:
- shard-skl: NOTRUN -> [INCOMPLETE][1]
[1]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_110495v2/shard-skl2/igt@gem_exec_schedule@preempt-other-chain.html
Known issues
------------
Here are the changes found in Patchwork_110495v2_full that come from known issues:
### IGT changes ###
#### Issues hit ####
* igt@gem_ctx_persistence@legacy-engines-hang:
- shard-snb: NOTRUN -> [SKIP][2] ([fdo#109271] / [i915#1099])
[2]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_110495v2/shard-snb7/igt@gem_ctx_persistence@legacy-engines-hang.html
* igt@gem_eio@unwedge-stress:
- shard-snb: NOTRUN -> [FAIL][3] ([i915#3354])
[3]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_110495v2/shard-snb7/igt@gem_eio@unwedge-stress.html
* igt@gem_exec_fair@basic-deadline:
- shard-glk: [PASS][4] -> [FAIL][5] ([i915#2846])
[4]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12382/shard-glk2/igt@gem_exec_fair@basic-deadline.html
[5]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_110495v2/shard-glk9/igt@gem_exec_fair@basic-deadline.html
* igt@gem_exec_fair@basic-pace-share@rcs0:
- shard-glk: [PASS][6] -> [FAIL][7] ([i915#2842])
[6]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12382/shard-glk8/igt@gem_exec_fair@basic-pace-share@rcs0.html
[7]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_110495v2/shard-glk7/igt@gem_exec_fair@basic-pace-share@rcs0.html
- shard-tglb: [PASS][8] -> [FAIL][9] ([i915#2842])
[8]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12382/shard-tglb8/igt@gem_exec_fair@basic-pace-share@rcs0.html
[9]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_110495v2/shard-tglb3/igt@gem_exec_fair@basic-pace-share@rcs0.html
* igt@gem_huc_copy@huc-copy:
- shard-tglb: [PASS][10] -> [SKIP][11] ([i915#2190])
[10]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12382/shard-tglb1/igt@gem_huc_copy@huc-copy.html
[11]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_110495v2/shard-tglb7/igt@gem_huc_copy@huc-copy.html
* igt@gem_lmem_swapping@verify-random-ccs:
- shard-skl: NOTRUN -> [SKIP][12] ([fdo#109271] / [i915#4613])
[12]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_110495v2/shard-skl7/igt@gem_lmem_swapping@verify-random-ccs.html
* igt@gem_ppgtt@flink-and-close-vma-leak:
- shard-glk: [PASS][13] -> [FAIL][14] ([i915#7409])
[13]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12382/shard-glk5/igt@gem_ppgtt@flink-and-close-vma-leak.html
[14]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_110495v2/shard-glk1/igt@gem_ppgtt@flink-and-close-vma-leak.html
* igt@gem_pread@exhaustion:
- shard-skl: NOTRUN -> [INCOMPLETE][15] ([i915#7248])
[15]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_110495v2/shard-skl9/igt@gem_pread@exhaustion.html
* igt@gem_workarounds@suspend-resume:
- shard-apl: [PASS][16] -> [DMESG-WARN][17] ([i915#180])
[16]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12382/shard-apl3/igt@gem_workarounds@suspend-resume.html
[17]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_110495v2/shard-apl8/igt@gem_workarounds@suspend-resume.html
* igt@kms_ccs@pipe-b-random-ccs-data-y_tiled_gen12_mc_ccs:
- shard-skl: NOTRUN -> [SKIP][18] ([fdo#109271] / [i915#3886]) +2 similar issues
[18]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_110495v2/shard-skl9/igt@kms_ccs@pipe-b-random-ccs-data-y_tiled_gen12_mc_ccs.html
* igt@kms_chamelium@dp-hpd-for-each-pipe:
- shard-skl: NOTRUN -> [SKIP][19] ([fdo#109271] / [fdo#111827]) +3 similar issues
[19]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_110495v2/shard-skl7/igt@kms_chamelium@dp-hpd-for-each-pipe.html
* igt@kms_chamelium@vga-hpd-with-enabled-mode:
- shard-snb: NOTRUN -> [SKIP][20] ([fdo#109271] / [fdo#111827])
[20]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_110495v2/shard-snb7/igt@kms_chamelium@vga-hpd-with-enabled-mode.html
* igt@kms_cursor_crc@cursor-offscreen-32x10:
- shard-skl: NOTRUN -> [SKIP][21] ([fdo#109271]) +59 similar issues
[21]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_110495v2/shard-skl7/igt@kms_cursor_crc@cursor-offscreen-32x10.html
* igt@kms_cursor_crc@cursor-suspend@pipe-c-edp-1:
- shard-skl: [PASS][22] -> [INCOMPLETE][23] ([i915#6951])
[22]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12382/shard-skl7/igt@kms_cursor_crc@cursor-suspend@pipe-c-edp-1.html
[23]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_110495v2/shard-skl9/igt@kms_cursor_crc@cursor-suspend@pipe-c-edp-1.html
* igt@kms_flip@flip-vs-expired-vblank-interruptible@c-edp1:
- shard-skl: [PASS][24] -> [FAIL][25] ([i915#79])
[24]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12382/shard-skl7/igt@kms_flip@flip-vs-expired-vblank-interruptible@c-edp1.html
[25]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_110495v2/shard-skl9/igt@kms_flip@flip-vs-expired-vblank-interruptible@c-edp1.html
* igt@kms_flip@plain-flip-ts-check-interruptible@c-edp1:
- shard-skl: [PASS][26] -> [FAIL][27] ([i915#2122]) +1 similar issue
[26]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12382/shard-skl6/igt@kms_flip@plain-flip-ts-check-interruptible@c-edp1.html
[27]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_110495v2/shard-skl4/igt@kms_flip@plain-flip-ts-check-interruptible@c-edp1.html
* igt@kms_flip_scaled_crc@flip-32bpp-xtile-to-64bpp-xtile-downscaling@pipe-a-default-mode:
- shard-iclb: [PASS][28] -> [SKIP][29] ([i915#3555])
[28]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12382/shard-iclb3/igt@kms_flip_scaled_crc@flip-32bpp-xtile-to-64bpp-xtile-downscaling@pipe-a-default-mode.html
[29]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_110495v2/shard-iclb2/igt@kms_flip_scaled_crc@flip-32bpp-xtile-to-64bpp-xtile-downscaling@pipe-a-default-mode.html
* igt@kms_flip_scaled_crc@flip-32bpp-yftile-to-64bpp-yftile-downscaling@pipe-a-default-mode:
- shard-iclb: NOTRUN -> [SKIP][30] ([i915#2672]) +4 similar issues
[30]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_110495v2/shard-iclb2/igt@kms_flip_scaled_crc@flip-32bpp-yftile-to-64bpp-yftile-downscaling@pipe-a-default-mode.html
* igt@kms_flip_scaled_crc@flip-64bpp-yftile-to-16bpp-yftile-upscaling@pipe-a-valid-mode:
- shard-iclb: NOTRUN -> [SKIP][31] ([i915#2587] / [i915#2672]) +2 similar issues
[31]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_110495v2/shard-iclb5/igt@kms_flip_scaled_crc@flip-64bpp-yftile-to-16bpp-yftile-upscaling@pipe-a-valid-mode.html
* igt@kms_frontbuffer_tracking@psr-2p-primscrn-pri-shrfb-draw-mmap-cpu:
- shard-snb: NOTRUN -> [SKIP][32] ([fdo#109271]) +53 similar issues
[32]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_110495v2/shard-snb7/igt@kms_frontbuffer_tracking@psr-2p-primscrn-pri-shrfb-draw-mmap-cpu.html
* igt@kms_frontbuffer_tracking@psr-suspend:
- shard-skl: [PASS][33] -> [INCOMPLETE][34] ([i915#7255])
[33]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12382/shard-skl2/igt@kms_frontbuffer_tracking@psr-suspend.html
[34]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_110495v2/shard-skl6/igt@kms_frontbuffer_tracking@psr-suspend.html
* igt@kms_plane_alpha_blend@alpha-transparent-fb@pipe-c-edp-1:
- shard-skl: NOTRUN -> [FAIL][35] ([i915#4573]) +5 similar issues
[35]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_110495v2/shard-skl6/igt@kms_plane_alpha_blend@alpha-transparent-fb@pipe-c-edp-1.html
* igt@kms_plane_lowres@tiling-yf@pipe-b-hdmi-a-1:
- shard-glk: [PASS][36] -> [FAIL][37] ([i915#7307])
[36]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12382/shard-glk1/igt@kms_plane_lowres@tiling-yf@pipe-b-hdmi-a-1.html
[37]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_110495v2/shard-glk6/igt@kms_plane_lowres@tiling-yf@pipe-b-hdmi-a-1.html
* igt@kms_plane_scaling@planes-downscale-factor-0-5@pipe-a-edp-1:
- shard-iclb: [PASS][38] -> [SKIP][39] ([i915#5235]) +2 similar issues
[38]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12382/shard-iclb5/igt@kms_plane_scaling@planes-downscale-factor-0-5@pipe-a-edp-1.html
[39]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_110495v2/shard-iclb2/igt@kms_plane_scaling@planes-downscale-factor-0-5@pipe-a-edp-1.html
* igt@kms_psr2_su@frontbuffer-xrgb8888:
- shard-skl: NOTRUN -> [SKIP][40] ([fdo#109271] / [i915#658]) +1 similar issue
[40]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_110495v2/shard-skl9/igt@kms_psr2_su@frontbuffer-xrgb8888.html
* igt@kms_psr2_su@page_flip-p010@pipe-b-edp-1:
- shard-iclb: NOTRUN -> [FAIL][41] ([i915#5939]) +2 similar issues
[41]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_110495v2/shard-iclb2/igt@kms_psr2_su@page_flip-p010@pipe-b-edp-1.html
* igt@kms_psr2_su@page_flip-xrgb8888:
- shard-iclb: NOTRUN -> [SKIP][42] ([fdo#109642] / [fdo#111068] / [i915#658])
[42]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_110495v2/shard-iclb5/igt@kms_psr2_su@page_flip-xrgb8888.html
* igt@kms_psr@psr2_sprite_plane_move:
- shard-iclb: [PASS][43] -> [SKIP][44] ([fdo#109441]) +3 similar issues
[43]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12382/shard-iclb2/igt@kms_psr@psr2_sprite_plane_move.html
[44]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_110495v2/shard-iclb5/igt@kms_psr@psr2_sprite_plane_move.html
* igt@kms_psr_stress_test@invalidate-primary-flip-overlay:
- shard-iclb: [PASS][45] -> [SKIP][46] ([i915#5519])
[45]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12382/shard-iclb3/igt@kms_psr_stress_test@invalidate-primary-flip-overlay.html
[46]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_110495v2/shard-iclb8/igt@kms_psr_stress_test@invalidate-primary-flip-overlay.html
* igt@sysfs_clients@fair-1:
- shard-skl: NOTRUN -> [SKIP][47] ([fdo#109271] / [i915#2994])
[47]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_110495v2/shard-skl7/igt@sysfs_clients@fair-1.html
#### Possible fixes ####
* igt@core_hotunplug@unbind-rebind:
- shard-snb: [DMESG-WARN][48] ([i915#4528]) -> [PASS][49]
[48]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12382/shard-snb6/igt@core_hotunplug@unbind-rebind.html
[49]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_110495v2/shard-snb7/igt@core_hotunplug@unbind-rebind.html
* igt@gem_ctx_exec@basic-nohangcheck:
- shard-tglb: [FAIL][50] ([i915#6268]) -> [PASS][51]
[50]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12382/shard-tglb5/igt@gem_ctx_exec@basic-nohangcheck.html
[51]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_110495v2/shard-tglb5/igt@gem_ctx_exec@basic-nohangcheck.html
* igt@gem_eio@in-flight-suspend:
- {shard-rkl}: [FAIL][52] ([fdo#103375]) -> [PASS][53]
[52]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12382/shard-rkl-4/igt@gem_eio@in-flight-suspend.html
[53]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_110495v2/shard-rkl-1/igt@gem_eio@in-flight-suspend.html
* igt@gem_exec_balancer@parallel-keep-in-fence:
- shard-iclb: [SKIP][54] ([i915#4525]) -> [PASS][55] +2 similar issues
[54]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12382/shard-iclb3/igt@gem_exec_balancer@parallel-keep-in-fence.html
[55]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_110495v2/shard-iclb2/igt@gem_exec_balancer@parallel-keep-in-fence.html
* igt@gem_exec_fair@basic-none-solo@rcs0:
- shard-apl: [FAIL][56] ([i915#2842]) -> [PASS][57]
[56]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12382/shard-apl2/igt@gem_exec_fair@basic-none-solo@rcs0.html
[57]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_110495v2/shard-apl2/igt@gem_exec_fair@basic-none-solo@rcs0.html
* igt@gem_exec_fence@basic-busy@bcs0:
- {shard-rkl}: [SKIP][58] ([i915#6251]) -> [PASS][59]
[58]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12382/shard-rkl-5/igt@gem_exec_fence@basic-busy@bcs0.html
[59]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_110495v2/shard-rkl-4/igt@gem_exec_fence@basic-busy@bcs0.html
* igt@gem_exec_reloc@basic-gtt-read:
- {shard-rkl}: [SKIP][60] ([i915#3281]) -> [PASS][61]
[60]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12382/shard-rkl-2/igt@gem_exec_reloc@basic-gtt-read.html
[61]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_110495v2/shard-rkl-5/igt@gem_exec_reloc@basic-gtt-read.html
* igt@gem_pread@uncached:
- {shard-rkl}: [SKIP][62] ([i915#3282]) -> [PASS][63] +1 similar issue
[62]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12382/shard-rkl-2/igt@gem_pread@uncached.html
[63]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_110495v2/shard-rkl-5/igt@gem_pread@uncached.html
* igt@i915_pm_rc6_residency@rc6-idle@vcs0:
- {shard-dg1}: [FAIL][64] ([i915#3591]) -> [PASS][65] +1 similar issue
[64]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12382/shard-dg1-19/igt@i915_pm_rc6_residency@rc6-idle@vcs0.html
[65]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_110495v2/shard-dg1-13/igt@i915_pm_rc6_residency@rc6-idle@vcs0.html
* igt@i915_suspend@fence-restore-tiled2untiled:
- shard-iclb: [SKIP][66] -> [PASS][67]
[66]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12382/shard-iclb5/igt@i915_suspend@fence-restore-tiled2untiled.html
[67]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_110495v2/shard-iclb8/igt@i915_suspend@fence-restore-tiled2untiled.html
* igt@kms_cursor_legacy@flip-vs-cursor@atomic-transitions:
- shard-glk: [FAIL][68] ([i915#2346]) -> [PASS][69]
[68]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12382/shard-glk2/igt@kms_cursor_legacy@flip-vs-cursor@atomic-transitions.html
[69]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_110495v2/shard-glk9/igt@kms_cursor_legacy@flip-vs-cursor@atomic-transitions.html
* igt@kms_cursor_legacy@single-move@all-pipes:
- {shard-rkl}: [INCOMPLETE][70] -> [PASS][71]
[70]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12382/shard-rkl-4/igt@kms_cursor_legacy@single-move@all-pipes.html
[71]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_110495v2/shard-rkl-1/igt@kms_cursor_legacy@single-move@all-pipes.html
* igt@kms_flip@flip-vs-expired-vblank-interruptible@b-edp1:
- shard-skl: [FAIL][72] ([i915#79]) -> [PASS][73]
[72]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12382/shard-skl7/igt@kms_flip@flip-vs-expired-vblank-interruptible@b-edp1.html
[73]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_110495v2/shard-skl9/igt@kms_flip@flip-vs-expired-vblank-interruptible@b-edp1.html
* igt@kms_plane_lowres@tiling-yf@pipe-c-hdmi-a-1:
- shard-glk: [FAIL][74] ([i915#7307]) -> [PASS][75]
[74]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12382/shard-glk1/igt@kms_plane_lowres@tiling-yf@pipe-c-hdmi-a-1.html
[75]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_110495v2/shard-glk6/igt@kms_plane_lowres@tiling-yf@pipe-c-hdmi-a-1.html
* igt@kms_plane_scaling@planes-upscale-factor-0-25-downscale-factor-0-5@pipe-a-edp-1:
- shard-iclb: [SKIP][76] ([i915#5235]) -> [PASS][77] +2 similar issues
[76]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12382/shard-iclb2/igt@kms_plane_scaling@planes-upscale-factor-0-25-downscale-factor-0-5@pipe-a-edp-1.html
[77]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_110495v2/shard-iclb5/igt@kms_plane_scaling@planes-upscale-factor-0-25-downscale-factor-0-5@pipe-a-edp-1.html
* igt@kms_psr@psr2_sprite_plane_onoff:
- shard-iclb: [SKIP][78] ([fdo#109441]) -> [PASS][79] +2 similar issues
[78]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12382/shard-iclb5/igt@kms_psr@psr2_sprite_plane_onoff.html
[79]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_110495v2/shard-iclb2/igt@kms_psr@psr2_sprite_plane_onoff.html
* igt@kms_psr_stress_test@flip-primary-invalidate-overlay:
- shard-tglb: [SKIP][80] ([i915#5519]) -> [PASS][81]
[80]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12382/shard-tglb2/igt@kms_psr_stress_test@flip-primary-invalidate-overlay.html
[81]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_110495v2/shard-tglb7/igt@kms_psr_stress_test@flip-primary-invalidate-overlay.html
* igt@prime_vgem@basic-write:
- {shard-rkl}: [SKIP][82] ([fdo#109295] / [i915#3291] / [i915#3708]) -> [PASS][83]
[82]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12382/shard-rkl-2/igt@prime_vgem@basic-write.html
[83]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_110495v2/shard-rkl-5/igt@prime_vgem@basic-write.html
#### Warnings ####
* igt@gem_exec_balancer@parallel-ordering:
- shard-iclb: [FAIL][84] ([i915#6117]) -> [SKIP][85] ([i915#4525])
[84]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12382/shard-iclb2/igt@gem_exec_balancer@parallel-ordering.html
[85]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_110495v2/shard-iclb5/igt@gem_exec_balancer@parallel-ordering.html
* igt@gem_pread@exhaustion:
- shard-apl: [INCOMPLETE][86] ([i915#7248]) -> [WARN][87] ([i915#2658])
[86]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12382/shard-apl6/igt@gem_pread@exhaustion.html
[87]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_110495v2/shard-apl7/igt@gem_pread@exhaustion.html
* igt@gem_pwrite@basic-exhaustion:
- shard-glk: [WARN][88] ([i915#2658]) -> [INCOMPLETE][89] ([i915#7248])
[88]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12382/shard-glk2/igt@gem_pwrite@basic-exhaustion.html
[89]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_110495v2/shard-glk9/igt@gem_pwrite@basic-exhaustion.html
* igt@i915_pm_sseu@full-enable:
- shard-skl: [FAIL][90] ([i915#6991]) -> [FAIL][91] ([i915#7084])
[90]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12382/shard-skl10/igt@i915_pm_sseu@full-enable.html
[91]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_110495v2/shard-skl7/igt@i915_pm_sseu@full-enable.html
* igt@kms_plane_alpha_blend@alpha-basic@pipe-c-dp-1:
- shard-apl: [DMESG-FAIL][92] ([IGT#6]) -> [FAIL][93] ([i915#4573]) +1 similar issue
[92]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12382/shard-apl8/igt@kms_plane_alpha_blend@alpha-basic@pipe-c-dp-1.html
[93]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_110495v2/shard-apl7/igt@kms_plane_alpha_blend@alpha-basic@pipe-c-dp-1.html
* igt@kms_psr2_sf@cursor-plane-update-sf:
- shard-iclb: [SKIP][94] ([i915#2920]) -> [SKIP][95] ([fdo#111068] / [i915#658])
[94]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12382/shard-iclb2/igt@kms_psr2_sf@cursor-plane-update-sf.html
[95]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_110495v2/shard-iclb1/igt@kms_psr2_sf@cursor-plane-update-sf.html
* igt@kms_psr2_sf@overlay-plane-move-continuous-exceed-fully-sf:
- shard-iclb: [SKIP][96] ([i915#658]) -> [SKIP][97] ([i915#2920])
[96]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12382/shard-iclb3/igt@kms_psr2_sf@overlay-plane-move-continuous-exceed-fully-sf.html
[97]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_110495v2/shard-iclb2/igt@kms_psr2_sf@overlay-plane-move-continuous-exceed-fully-sf.html
* igt@kms_psr2_sf@overlay-plane-move-continuous-sf:
- shard-iclb: [SKIP][98] ([i915#2920]) -> [SKIP][99] ([i915#658])
[98]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12382/shard-iclb2/igt@kms_psr2_sf@overlay-plane-move-continuous-sf.html
[99]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_110495v2/shard-iclb5/igt@kms_psr2_sf@overlay-plane-move-continuous-sf.html
* igt@kms_psr2_sf@overlay-plane-update-continuous-sf:
- shard-iclb: [SKIP][100] ([fdo#111068] / [i915#658]) -> [SKIP][101] ([i915#2920])
[100]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12382/shard-iclb5/igt@kms_psr2_sf@overlay-plane-update-continuous-sf.html
[101]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_110495v2/shard-iclb2/igt@kms_psr2_sf@overlay-plane-update-continuous-sf.html
* igt@runner@aborted:
- shard-apl: ([FAIL][102], [FAIL][103]) ([i915#3002] / [i915#4312]) -> ([FAIL][104], [FAIL][105], [FAIL][106]) ([fdo#109271] / [i915#180] / [i915#3002] / [i915#4312])
[102]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12382/shard-apl8/igt@runner@aborted.html
[103]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12382/shard-apl1/igt@runner@aborted.html
[104]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_110495v2/shard-apl8/igt@runner@aborted.html
[105]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_110495v2/shard-apl8/igt@runner@aborted.html
[106]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_110495v2/shard-apl6/igt@runner@aborted.html
{name}: This element is suppressed. This means it is ignored when computing
the status of the difference (SUCCESS, WARNING, or FAILURE).
[IGT#6]: https://gitlab.freedesktop.org/drm/igt-gpu-tools/issues/6
[fdo#103375]: https://bugs.freedesktop.org/show_bug.cgi?id=103375
[fdo#109271]: https://bugs.freedesktop.org/show_bug.cgi?id=109271
[fdo#109289]: https://bugs.freedesktop.org/show_bug.cgi?id=109289
[fdo#109295]: https://bugs.freedesktop.org/show_bug.cgi?id=109295
[fdo#109303]: https://bugs.freedesktop.org/show_bug.cgi?id=109303
[fdo#109312]: https://bugs.freedesktop.org/show_bug.cgi?id=109312
[fdo#109313]: https://bugs.freedesktop.org/show_bug.cgi?id=109313
[fdo#109441]: https://bugs.freedesktop.org/show_bug.cgi?id=109441
[fdo#109642]: https://bugs.freedesktop.org/show_bug.cgi?id=109642
[fdo#110189]: https://bugs.freedesktop.org/show_bug.cgi?id=110189
[fdo#111068]: https://bugs.freedesktop.org/show_bug.cgi?id=111068
[fdo#111825]: https://bugs.freedesktop.org/show_bug.cgi?id=111825
[fdo#111827]: https://bugs.freedesktop.org/show_bug.cgi?id=111827
[fdo#112283]: https://bugs.freedesktop.org/show_bug.cgi?id=112283
[i915#1072]: https://gitlab.freedesktop.org/drm/intel/issues/1072
[i915#1099]: https://gitlab.freedesktop.org/drm/intel/issues/1099
[i915#1397]: https://gitlab.freedesktop.org/drm/intel/issues/1397
[i915#1755]: https://gitlab.freedesktop.org/drm/intel/issues/1755
[i915#180]: https://gitlab.freedesktop.org/drm/intel/issues/180
[i915#1839]: https://gitlab.freedesktop.org/drm/intel/issues/1839
[i915#1845]: https://gitlab.freedesktop.org/drm/intel/issues/1845
[i915#1849]: https://gitlab.freedesktop.org/drm/intel/issues/1849
[i915#1937]: https://gitlab.freedesktop.org/drm/intel/issues/1937
[i915#2122]: https://gitlab.freedesktop.org/drm/intel/issues/2122
[i915#2190]: https://gitlab.freedesktop.org/drm/intel/issues/2190
[i915#2346]: https://gitlab.freedesktop.org/drm/intel/issues/2346
[i915#2436]: https://gitlab.freedesktop.org/drm/intel/issues/2436
[i915#2527]: https://gitlab.freedesktop.org/drm/intel/issues/2527
[i915#2532]: https://gitlab.freedesktop.org/drm/intel/issues/2532
[i915#2587]: https://gitlab.freedesktop.org/drm/intel/issues/2587
[i915#2658]: https://gitlab.freedesktop.org/drm/intel/issues/2658
[i915#2672]: https://gitlab.freedesktop.org/drm/intel/issues/2672
[i915#280]: https://gitlab.freedesktop.org/drm/intel/issues/280
[i915#284]: https://gitlab.freedesktop.org/drm/intel/issues/284
[i915#2842]: https://gitlab.freedesktop.org/drm/intel/issues/2842
[i915#2846]: https://gitlab.freedesktop.org/drm/intel/issues/2846
[i915#2920]: https://gitlab.freedesktop.org/drm/intel/issues/2920
[i915#2994]: https://gitlab.freedesktop.org/drm/intel/issues/2994
[i915#3002]: https://gitlab.freedesktop.org/drm/intel/issues/3002
[i915#3281]: https://gitlab.freedesktop.org/drm/intel/issues/3281
[i915#3282]: https://gitlab.freedesktop.org/drm/intel/issues/3282
[i915#3291]: https://gitlab.freedesktop.org/drm/intel/issues/3291
[i915#3297]: https://gitlab.freedesktop.org/drm/intel/issues/3297
[i915#3318]: https://gitlab.freedesktop.org/drm/intel/issues/3318
[i915#3354]: https://gitlab.freedesktop.org/drm/intel/issues/3354
[i915#3359]: https://gitlab.freedesktop.org/drm/intel/issues/3359
[i915#3361]: https://gitlab.freedesktop.org/drm/intel/issues/3361
[i915#3458]: https://gitlab.freedesktop.org/drm/intel/issues/3458
[i915#3469]: https://gitlab.freedesktop.org/drm/intel/issues/3469
[i915#3539]: https://gitlab.freedesktop.org/drm/intel/issues/3539
[i915#3555]: https://gitlab.freedesktop.org/drm/intel/issues/3555
[i915#3558]: https://gitlab.freedesktop.org/drm/intel/issues/3558
[i915#3591]: https://gitlab.freedesktop.org/drm/intel/issues/3591
[i915#3637]: https://gitlab.freedesktop.org/drm/intel/issues/3637
[i915#3638]: https://gitlab.freedesktop.org/drm/intel/issues/3638
[i915#3689]: https://gitlab.freedesktop.org/drm/intel/issues/3689
[i915#3708]: https://gitlab.freedesktop.org/drm/intel/issues/3708
[i915#3742]: https://gitlab.freedesktop.org/drm/intel/issues/3742
[i915#3886]: https://gitlab.freedesktop.org/drm/intel/issues/3886
[i915#3955]: https://gitlab.freedesktop.org/drm/intel/issues/3955
[i915#4070]: https://gitlab.freedesktop.org/drm/intel/issues/4070
[i915#4077]: https://gitlab.freedesktop.org/drm/intel/issues/4077
[i915#4078]: https://gitlab.freedesktop.org/drm/intel/issues/4078
[i915#4083]: https://gitlab.freedesktop.org/drm/intel/issues/4083
[i915#4098]: https://gitlab.freedesktop.org/drm/intel/issues/4098
[i915#4103]: https://gitlab.freedesktop.org/drm/intel/issues/4103
[i915#4213]: https://gitlab.freedesktop.org/drm/intel/issues/4213
[i915#4270]: https://gitlab.freedesktop.org/drm/intel/issues/4270
[i915#4312]: https://gitlab.freedesktop.org/drm/intel/issues/4312
[i915#4525]: https://gitlab.freedesktop.org/drm/intel/issues/4525
[i915#4528]: https://gitlab.freedesktop.org/drm/intel/issues/4528
[i915#4538]: https://gitlab.freedesktop.org/drm/intel/issues/4538
[i915#4573]: https://gitlab.freedesktop.org/drm/intel/issues/4573
[i915#4613]: https://gitlab.freedesktop.org/drm/intel/issues/4613
[i915#4812]: https://gitlab.freedesktop.org/drm/intel/issues/4812
[i915#4833]: https://gitlab.freedesktop.org/drm/intel/issues/4833
[i915#4852]: https://gitlab.freedesktop.org/drm/intel/issues/4852
[i915#4859]: https://gitlab.freedesktop.org/drm/intel/issues/4859
[i915#4860]: https://gitlab.freedesktop.org/drm/intel/issues/4860
[i915#4880]: https://gitlab.freedesktop.org/drm/intel/issues/4880
[i915#4881]: https://gitlab.freedesktop.org/drm/intel/issues/4881
[i915#5176]: https://gitlab.freedesktop.org/drm/intel/issues/5176
[i915#5235]: https://gitlab.freedesktop.org/drm/intel/issues/5235
[i915#5286]: https://gitlab.freedesktop.org/drm/intel/issues/5286
[i915#5327]: https://gitlab.freedesktop.org/drm/intel/issues/5327
[i915#533]: https://gitlab.freedesktop.org/drm/intel/issues/533
[i915#5519]: https://gitlab.freedesktop.org/drm/intel/issues/5519
[i915#5563]: https://gitlab.freedesktop.org/drm/intel/issues/5563
[i915#5939]: https://gitlab.freedesktop.org/drm/intel/issues/5939
[i915#6095]: https://gitlab.freedesktop.org/drm/intel/issues/6095
[i915#6117]: https://gitlab.freedesktop.org/drm/intel/issues/6117
[i915#6248]: https://gitlab.freedesktop.org/drm/intel/issues/6248
[i915#6251]: https://gitlab.freedesktop.org/drm/intel/issues/6251
[i915#6268]: https://gitlab.freedesktop.org/drm/intel/issues/6268
[i915#6344]: https://gitlab.freedesktop.org/drm/intel/issues/6344
[i915#6524]: https://gitlab.freedesktop.org/drm/intel/issues/6524
[i915#658]: https://gitlab.freedesktop.org/drm/intel/issues/658
[i915#6621]: https://gitlab.freedesktop.org/drm/intel/issues/6621
[i915#6768]: https://gitlab.freedesktop.org/drm/intel/issues/6768
[i915#6946]: https://gitlab.freedesktop.org/drm/intel/issues/6946
[i915#6951]: https://gitlab.freedesktop.org/drm/intel/issues/6951
[i915#6991]: https://gitlab.freedesktop.org/drm/intel/issues/6991
[i915#7084]: https://gitlab.freedesktop.org/drm/intel/issues/7084
[i915#7248]: https://gitlab.freedesktop.org/drm/intel/issues/7248
[i915#7255]: https://gitlab.freedesktop.org/drm/intel/issues/7255
[i915#7307]: https://gitlab.freedesktop.org/drm/intel/issues/7307
[i915#7409]: https://gitlab.freedesktop.org/drm/intel/issues/7409
[i915#79]: https://gitlab.freedesktop.org/drm/intel/issues/79
Build changes
-------------
* Linux: CI_DRM_12382 -> Patchwork_110495v2
CI-20190529: 20190529
CI_DRM_12382: cb74864693414b221b3601572e75449558126e8b @ git://anongit.freedesktop.org/gfx-ci/linux
IGT_7057: e2138d48c2c506816868c16cf3ba64f81bdead41 @ https://gitlab.freedesktop.org/drm/igt-gpu-tools.git
Patchwork_110495v2: cb74864693414b221b3601572e75449558126e8b @ git://anongit.freedesktop.org/gfx-ci/linux
piglit_4509: fdc5a4ca11124ab8413c7988896eec4c97336694 @ git://anongit.freedesktop.org/piglit
== Logs ==
For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_110495v2/index.html
[-- Attachment #2: Type: text/html, Size: 31102 bytes --]
^ permalink raw reply [flat|nested] 6+ messages in thread
end of thread, other threads:[~2022-11-16 5:37 UTC | newest]
Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-11-15 11:14 [Intel-gfx] [PATCH v2] mei: add timeout to send Alexander Usyskin
2022-11-15 13:45 ` Greg Kroah-Hartman
2022-11-15 14:27 ` Usyskin, Alexander
2022-11-15 14:59 ` Greg Kroah-Hartman
2022-11-15 22:41 ` [Intel-gfx] ✓ Fi.CI.BAT: success for mei: add timeout to send (rev2) Patchwork
2022-11-16 5:37 ` [Intel-gfx] ✗ Fi.CI.IGT: failure " Patchwork
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).