The command ring and cursor ring use different notify port addresses definition: QXL_IO_NOTIFY_CMD and QXL_IO_NOTIFY_CURSOR. However, in qxl_device_init() we use QXL_IO_NOTIFY_CMD to create both command ring and cursor ring. This doesn't cause any problems now, because QEMU's behaviors on QXL_IO_NOTIFY_CMD and QXL_IO_NOTIFY_CURSOR are the same. However, QEMU's behavior may be change in future, so let's fix it.
P.S.: In the X.org QXL driver, the notify port address of cursor ring is correct.
Cc: stable@vger.kernel.org Signed-off-by: Huacai Chen chenhc@lemote.com --- drivers/gpu/drm/qxl/qxl_kms.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/gpu/drm/qxl/qxl_kms.c b/drivers/gpu/drm/qxl/qxl_kms.c index bfc1631..9bdbe0d 100644 --- a/drivers/gpu/drm/qxl/qxl_kms.c +++ b/drivers/gpu/drm/qxl/qxl_kms.c @@ -218,7 +218,7 @@ int qxl_device_init(struct qxl_device *qdev, &(qdev->ram_header->cursor_ring_hdr), sizeof(struct qxl_command), QXL_CURSOR_RING_SIZE, - qdev->io_base + QXL_IO_NOTIFY_CMD, + qdev->io_base + QXL_IO_NOTIFY_CURSOR, false, &qdev->cursor_event);
On Tue, Mar 31, 2020 at 02:18:08PM +0800, Huacai Chen wrote:
The command ring and cursor ring use different notify port addresses definition: QXL_IO_NOTIFY_CMD and QXL_IO_NOTIFY_CURSOR. However, in qxl_device_init() we use QXL_IO_NOTIFY_CMD to create both command ring and cursor ring. This doesn't cause any problems now, because QEMU's behaviors on QXL_IO_NOTIFY_CMD and QXL_IO_NOTIFY_CURSOR are the same. However, QEMU's behavior may be change in future, so let's fix it.
P.S.: In the X.org QXL driver, the notify port address of cursor ring is correct.
Cc: stable@vger.kernel.org Signed-off-by: Huacai Chen chenhc@lemote.com
Pushed to drm-misc-next.
thanks, Gerd
Hi, Gerd
On Tue, Mar 31, 2020 at 10:53 PM Gerd Hoffmann kraxel@redhat.com wrote:
On Tue, Mar 31, 2020 at 02:18:08PM +0800, Huacai Chen wrote:
The command ring and cursor ring use different notify port addresses definition: QXL_IO_NOTIFY_CMD and QXL_IO_NOTIFY_CURSOR. However, in qxl_device_init() we use QXL_IO_NOTIFY_CMD to create both command ring and cursor ring. This doesn't cause any problems now, because QEMU's behaviors on QXL_IO_NOTIFY_CMD and QXL_IO_NOTIFY_CURSOR are the same. However, QEMU's behavior may be change in future, so let's fix it.
P.S.: In the X.org QXL driver, the notify port address of cursor ring is correct.
Cc: stable@vger.kernel.org Signed-off-by: Huacai Chen chenhc@lemote.com
Pushed to drm-misc-next.
It seems that this patch hasn't appear in upstream.
thanks, Gerd
Thanks, Huacai
On Fri, Apr 24, 2020 at 05:57:37PM +0800, Huacai Chen wrote:
Hi, Gerd
On Tue, Mar 31, 2020 at 10:53 PM Gerd Hoffmann kraxel@redhat.com wrote:
On Tue, Mar 31, 2020 at 02:18:08PM +0800, Huacai Chen wrote:
The command ring and cursor ring use different notify port addresses definition: QXL_IO_NOTIFY_CMD and QXL_IO_NOTIFY_CURSOR. However, in qxl_device_init() we use QXL_IO_NOTIFY_CMD to create both command ring and cursor ring. This doesn't cause any problems now, because QEMU's behaviors on QXL_IO_NOTIFY_CMD and QXL_IO_NOTIFY_CURSOR are the same. However, QEMU's behavior may be change in future, so let's fix it.
P.S.: In the X.org QXL driver, the notify port address of cursor ring is correct.
Cc: stable@vger.kernel.org Signed-off-by: Huacai Chen chenhc@lemote.com
Pushed to drm-misc-next.
It seems that this patch hasn't appear in upstream.
Was probably to late for the 5.7 merge window, should land in 5.8
cheers, Gerd
linux-stable-mirror@lists.linaro.org