]> git.ipfire.org Git - thirdparty/kernel/stable-queue.git/commitdiff
5.10-stable patches
authorGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Tue, 16 Jun 2026 13:33:04 +0000 (19:03 +0530)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Tue, 16 Jun 2026 13:33:04 +0000 (19:03 +0530)
added patches:
fbdev-vt8500lcdfb-fix-dma_free_coherent-cpu_addr-parameter.patch
revert-selftest-ptp-update-ptp-selftest-to-exercise-the-gettimex-options.patch

queue-5.10/fbdev-vt8500lcdfb-fix-dma_free_coherent-cpu_addr-parameter.patch [new file with mode: 0644]
queue-5.10/revert-selftest-ptp-update-ptp-selftest-to-exercise-the-gettimex-options.patch [new file with mode: 0644]
queue-5.10/series

diff --git a/queue-5.10/fbdev-vt8500lcdfb-fix-dma_free_coherent-cpu_addr-parameter.patch b/queue-5.10/fbdev-vt8500lcdfb-fix-dma_free_coherent-cpu_addr-parameter.patch
new file mode 100644 (file)
index 0000000..9a8cead
--- /dev/null
@@ -0,0 +1,37 @@
+From benh@debian.org  Tue Jun 16 19:00:40 2026
+From: Ben Hutchings <benh@debian.org>
+Date: Thu, 28 May 2026 14:59:37 +0200
+Subject: fbdev: vt8500lcdfb: Fix dma_free_coherent() cpu_addr parameter
+To: Sasha Levin <sashal@kernel.org>, Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+Cc: Thomas Fourier <fourier.thomas@gmail.com>, Helge Deller <deller@gmx.de>, stable@vger.kernel.org
+Message-ID: <ahg8Ocvb3UFV6Vdl@decadent.org.uk>
+Content-Disposition: inline
+
+From: Ben Hutchings <benh@debian.org>
+
+Before commit 63a11adaceb8 "fbdev/vt8500lcdfb: Initialize fb_ops with
+fbdev macros", the virtual address of the screen buffer was stored in
+the fb_info::screen_base field and not fb_info::screen_buffer.  The
+backport of commit 88b3b9924337 ("fbdev: vt8500lcdfb: fix missing
+dma_free_coherent()") did not take that into account.
+
+Change the cpu_addr parameter to dma_free_coherent() accordingly.
+
+Fixes: 9a9bc60ed372 ("fbdev: vt8500lcdfb: fix missing dma_free_coherent()")
+Signed-off-by: Ben Hutchings <benh@debian.org>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+---
+ drivers/video/fbdev/vt8500lcdfb.c |    2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+--- a/drivers/video/fbdev/vt8500lcdfb.c
++++ b/drivers/video/fbdev/vt8500lcdfb.c
+@@ -434,7 +434,7 @@ failed_free_palette:
+                         fbi->palette_cpu, fbi->palette_phys);
+ failed_free_mem_virt:
+       dma_free_coherent(&pdev->dev, fbi->fb.fix.smem_len,
+-                        fbi->fb.screen_buffer, fbi->fb.fix.smem_start);
++                        fbi->fb.screen_base, fbi->fb.fix.smem_start);
+ failed_free_io:
+       iounmap(fbi->regbase);
+ failed_free_res:
diff --git a/queue-5.10/revert-selftest-ptp-update-ptp-selftest-to-exercise-the-gettimex-options.patch b/queue-5.10/revert-selftest-ptp-update-ptp-selftest-to-exercise-the-gettimex-options.patch
new file mode 100644 (file)
index 0000000..54d6b88
--- /dev/null
@@ -0,0 +1,149 @@
+From petrm@nvidia.com  Tue Jun 16 18:57:13 2026
+From: Petr Machata <petrm@nvidia.com>
+Date: Fri, 15 May 2026 15:53:53 +0200
+Subject: Revert "selftest/ptp: update ptp selftest to exercise the gettimex options"
+To: Sasha Levin <sashal@kernel.org>
+Cc: Petr Machata <petrm@nvidia.com>, <stable@vger.kernel.org>, Wojtek Wasko <wwasko@nvidia.com>, Mahesh Bandewar <maheshb@google.com>, Shuah Khan <shuah@kernel.org>, Richard Cochran <richardcochran@gmail.com>, Yong Wang <yongwang@nvidia.com>
+Message-ID: <2e4d2f2b9efa7b0b32476947f63506cfe9568d1d.1778851656.git.petrm@nvidia.com>
+
+From: Petr Machata <petrm@nvidia.com>
+
+This reverts commit 06954f715deb0ed053f8bf85547370db6870225d, which is
+commit 3d07b691ee707c00afaf365440975e81bb96cd9b upstream.
+
+The cited commit allows testptp to set a configurable clock_id. That is
+done via a PTP_SYS_OFFSET_EXTENDED ioctl call, whose argument is struct
+ptp_sys_offset_extended, where the clock_id is set. However, this Linux
+version does not support the ptp_sys_offset_extended.clockid field, and
+the test case cannot be built against this tree's own UAPI headers.
+
+The reverted commit was introduced to resolve a missing dependency of
+commit c6dc458227a3 ("testptp: Add option to open PHC in readonly mode"),
+which is 76868642e427 upstream. My suspicion is that the only conflict
+between the two is the getopt string, and there is otherwise no direct
+dependency between the two.
+
+This patch therefore reverts the cited commit, with hand-resolving the
+getopt string to include 'r' (as introduced by c6dc458227a3), but not
+'y' (introduced by 06954f715deb).
+
+Reported-by: Yong Wang <yongwang@nvidia.com>
+Signed-off-by: Petr Machata <petrm@nvidia.com>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+---
+ tools/testing/selftests/ptp/testptp.c | 62 +++------------------------
+ 1 file changed, 5 insertions(+), 57 deletions(-)
+
+diff --git a/tools/testing/selftests/ptp/testptp.c b/tools/testing/selftests/ptp/testptp.c
+index 532fb6a5d059..7030bae8e5e0 100644
+--- a/tools/testing/selftests/ptp/testptp.c
++++ b/tools/testing/selftests/ptp/testptp.c
+@@ -147,7 +147,6 @@ static void usage(char *progname)
+               " -T val     set the ptp clock time to 'val' seconds\n"
+               " -x val     get an extended ptp clock time with the desired number of samples (up to %d)\n"
+               " -X         get a ptp clock cross timestamp\n"
+-              " -y val     pre/post tstamp timebase to use {realtime|monotonic|monotonic-raw}\n"
+               " -z         test combinations of rising/falling external time stamp flags\n",
+               progname, PTP_MAX_SAMPLES);
+ }
+@@ -192,7 +191,6 @@ int main(int argc, char *argv[])
+       int readonly = 0;
+       int settime = 0;
+       int channel = -1;
+-      clockid_t ext_clockid = CLOCK_REALTIME;
+       int64_t t1, t2, tp;
+       int64_t interval, offset;
+@@ -202,7 +200,7 @@ int main(int argc, char *argv[])
+       progname = strrchr(argv[0], '/');
+       progname = progname ? 1+progname : argv[0];
+-      while (EOF != (c = getopt(argc, argv, "cd:e:f:F:ghH:i:k:lL:n:o:p:P:rsSt:T:w:x:Xy:z"))) {
++      while (EOF != (c = getopt(argc, argv, "cd:e:f:F:ghH:i:k:lL:n:o:p:P:rsSt:T:w:x:Xz"))) {
+               switch (c) {
+               case 'c':
+                       capabilities = 1;
+@@ -285,21 +283,6 @@ int main(int argc, char *argv[])
+               case 'X':
+                       getcross = 1;
+                       break;
+-              case 'y':
+-                      if (!strcasecmp(optarg, "realtime"))
+-                              ext_clockid = CLOCK_REALTIME;
+-                      else if (!strcasecmp(optarg, "monotonic"))
+-                              ext_clockid = CLOCK_MONOTONIC;
+-                      else if (!strcasecmp(optarg, "monotonic-raw"))
+-                              ext_clockid = CLOCK_MONOTONIC_RAW;
+-                      else {
+-                              fprintf(stderr,
+-                                      "type needs to be realtime, monotonic or monotonic-raw; was given %s\n",
+-                                      optarg);
+-                              return -1;
+-                      }
+-                      break;
+-
+               case 'z':
+                       flagtest = 1;
+                       break;
+@@ -590,7 +573,6 @@ int main(int argc, char *argv[])
+               }
+               soe->n_samples = getextended;
+-              soe->clockid = ext_clockid;
+               if (ioctl(fd, PTP_SYS_OFFSET_EXTENDED, soe)) {
+                       perror("PTP_SYS_OFFSET_EXTENDED");
+@@ -599,46 +581,12 @@ int main(int argc, char *argv[])
+                              getextended);
+                       for (i = 0; i < getextended; i++) {
+-                              switch (ext_clockid) {
+-                              case CLOCK_REALTIME:
+-                                      printf("sample #%2d: real time before: %lld.%09u\n",
+-                                             i, soe->ts[i][0].sec,
+-                                             soe->ts[i][0].nsec);
+-                                      break;
+-                              case CLOCK_MONOTONIC:
+-                                      printf("sample #%2d: monotonic time before: %lld.%09u\n",
+-                                             i, soe->ts[i][0].sec,
+-                                             soe->ts[i][0].nsec);
+-                                      break;
+-                              case CLOCK_MONOTONIC_RAW:
+-                                      printf("sample #%2d: monotonic-raw time before: %lld.%09u\n",
+-                                             i, soe->ts[i][0].sec,
+-                                             soe->ts[i][0].nsec);
+-                                      break;
+-                              default:
+-                                      break;
+-                              }
++                              printf("sample #%2d: system time before: %lld.%09u\n",
++                                     i, soe->ts[i][0].sec, soe->ts[i][0].nsec);
+                               printf("            phc time: %lld.%09u\n",
+                                      soe->ts[i][1].sec, soe->ts[i][1].nsec);
+-                              switch (ext_clockid) {
+-                              case CLOCK_REALTIME:
+-                                      printf("            real time after: %lld.%09u\n",
+-                                             soe->ts[i][2].sec,
+-                                             soe->ts[i][2].nsec);
+-                                      break;
+-                              case CLOCK_MONOTONIC:
+-                                      printf("            monotonic time after: %lld.%09u\n",
+-                                             soe->ts[i][2].sec,
+-                                             soe->ts[i][2].nsec);
+-                                      break;
+-                              case CLOCK_MONOTONIC_RAW:
+-                                      printf("            monotonic-raw time after: %lld.%09u\n",
+-                                             soe->ts[i][2].sec,
+-                                             soe->ts[i][2].nsec);
+-                                      break;
+-                              default:
+-                                      break;
+-                              }
++                              printf("            system time after: %lld.%09u\n",
++                                     soe->ts[i][2].sec, soe->ts[i][2].nsec);
+                       }
+               }
+-- 
+2.53.0
+
index 0f93df39aee68a41d466cdbbeab05293e6e98959..8875b849b17ce00ccbbc03077950838c6890db8f 100644 (file)
@@ -337,3 +337,5 @@ arm64-cputype-add-c1-premium-definitions.patch
 arm64-errata-mitigate-tlbi-errata-on-various-arm-cpus.patch
 arm64-errata-mitigate-tlbi-errata-on-nvidia-olympus-cpu.patch
 arm64-errata-mitigate-tlbi-errata-on-microsoft-azure-cobalt-100-cpu.patch
+fbdev-vt8500lcdfb-fix-dma_free_coherent-cpu_addr-parameter.patch
+revert-selftest-ptp-update-ptp-selftest-to-exercise-the-gettimex-options.patch