From 8688d5a498f8fc27e7a02a92eb3d5eaf0fe31417 Mon Sep 17 00:00:00 2001 From: Greg Kroah-Hartman Date: Sat, 29 Jan 2022 14:29:19 +0100 Subject: [PATCH] 4.19-stable patches added patches: drm-etnaviv-relax-submit-size-limits.patch pm-wakeup-simplify-the-output-logic-of-pm_show_wakelocks.patch --- ...drm-etnaviv-relax-submit-size-limits.patch | 35 +++++++++++++ ...he-output-logic-of-pm_show_wakelocks.patch | 51 +++++++++++++++++++ queue-4.19/series | 2 + 3 files changed, 88 insertions(+) create mode 100644 queue-4.19/drm-etnaviv-relax-submit-size-limits.patch create mode 100644 queue-4.19/pm-wakeup-simplify-the-output-logic-of-pm_show_wakelocks.patch diff --git a/queue-4.19/drm-etnaviv-relax-submit-size-limits.patch b/queue-4.19/drm-etnaviv-relax-submit-size-limits.patch new file mode 100644 index 00000000000..9f1a0a5a895 --- /dev/null +++ b/queue-4.19/drm-etnaviv-relax-submit-size-limits.patch @@ -0,0 +1,35 @@ +From e3d26528e083e612314d4dcd713f3d5a26143ddc Mon Sep 17 00:00:00 2001 +From: Lucas Stach +Date: Thu, 6 Jan 2022 19:10:21 +0100 +Subject: drm/etnaviv: relax submit size limits + +From: Lucas Stach + +commit e3d26528e083e612314d4dcd713f3d5a26143ddc upstream. + +While all userspace tried to limit commandstreams to 64K in size, +a bug in the Mesa driver lead to command streams of up to 128K +being submitted. Allow those to avoid breaking existing userspace. + +Fixes: 6dfa2fab8ddd ("drm/etnaviv: limit submit sizes") +Cc: stable@vger.kernel.org +Signed-off-by: Lucas Stach +Reviewed-by: Christian Gmeiner +Signed-off-by: Greg Kroah-Hartman +--- + drivers/gpu/drm/etnaviv/etnaviv_gem_submit.c | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +--- a/drivers/gpu/drm/etnaviv/etnaviv_gem_submit.c ++++ b/drivers/gpu/drm/etnaviv/etnaviv_gem_submit.c +@@ -444,8 +444,8 @@ int etnaviv_ioctl_gem_submit(struct drm_ + return -EINVAL; + } + +- if (args->stream_size > SZ_64K || args->nr_relocs > SZ_64K || +- args->nr_bos > SZ_64K || args->nr_pmrs > 128) { ++ if (args->stream_size > SZ_128K || args->nr_relocs > SZ_128K || ++ args->nr_bos > SZ_128K || args->nr_pmrs > 128) { + DRM_ERROR("submit arguments out of size limits\n"); + return -EINVAL; + } diff --git a/queue-4.19/pm-wakeup-simplify-the-output-logic-of-pm_show_wakelocks.patch b/queue-4.19/pm-wakeup-simplify-the-output-logic-of-pm_show_wakelocks.patch new file mode 100644 index 00000000000..a645fcea58c --- /dev/null +++ b/queue-4.19/pm-wakeup-simplify-the-output-logic-of-pm_show_wakelocks.patch @@ -0,0 +1,51 @@ +From c9d967b2ce40d71e968eb839f36c936b8a9cf1ea Mon Sep 17 00:00:00 2001 +From: Greg Kroah-Hartman +Date: Thu, 13 Jan 2022 19:44:20 +0100 +Subject: PM: wakeup: simplify the output logic of pm_show_wakelocks() + +From: Greg Kroah-Hartman + +commit c9d967b2ce40d71e968eb839f36c936b8a9cf1ea upstream. + +The buffer handling in pm_show_wakelocks() is tricky, and hopefully +correct. Ensure it really is correct by using sysfs_emit_at() which +handles all of the tricky string handling logic in a PAGE_SIZE buffer +for us automatically as this is a sysfs file being read from. + +Reviewed-by: Lee Jones +Signed-off-by: Rafael J. Wysocki +Signed-off-by: Greg Kroah-Hartman +--- + kernel/power/wakelock.c | 12 ++++-------- + 1 file changed, 4 insertions(+), 8 deletions(-) + +--- a/kernel/power/wakelock.c ++++ b/kernel/power/wakelock.c +@@ -39,23 +39,19 @@ ssize_t pm_show_wakelocks(char *buf, boo + { + struct rb_node *node; + struct wakelock *wl; +- char *str = buf; +- char *end = buf + PAGE_SIZE; ++ int len = 0; + + mutex_lock(&wakelocks_lock); + + for (node = rb_first(&wakelocks_tree); node; node = rb_next(node)) { + wl = rb_entry(node, struct wakelock, node); + if (wl->ws.active == show_active) +- str += scnprintf(str, end - str, "%s ", wl->name); ++ len += sysfs_emit_at(buf, len, "%s ", wl->name); + } +- if (str > buf) +- str--; +- +- str += scnprintf(str, end - str, "\n"); ++ len += sysfs_emit_at(buf, len, "\n"); + + mutex_unlock(&wakelocks_lock); +- return (str - buf); ++ return len; + } + + #if CONFIG_PM_WAKELOCKS_LIMIT > 0 diff --git a/queue-4.19/series b/queue-4.19/series index 89bce359329..a19be899810 100644 --- a/queue-4.19/series +++ b/queue-4.19/series @@ -3,3 +3,5 @@ s390-hypfs-include-z-vm-guests-with-access-control-group-set.patch scsi-zfcp-fix-failed-recovery-on-gone-remote-port-with-non-npiv-fcp-devices.patch udf-restore-i_lenalloc-when-inode-expansion-fails.patch udf-fix-null-ptr-deref-when-converting-from-inline-format.patch +pm-wakeup-simplify-the-output-logic-of-pm_show_wakelocks.patch +drm-etnaviv-relax-submit-size-limits.patch -- 2.47.2