From: Greg Kroah-Hartman Date: Tue, 16 Jun 2026 13:34:38 +0000 (+0530) Subject: 6.6-stable patches X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=290b0cb89e5e692c124c471e77616f25f4249bad;p=thirdparty%2Fkernel%2Fstable-queue.git 6.6-stable patches added patches: revert-selftest-ptp-update-ptp-selftest-to-exercise-the-gettimex-options.patch --- diff --git a/queue-6.6/revert-selftest-ptp-update-ptp-selftest-to-exercise-the-gettimex-options.patch b/queue-6.6/revert-selftest-ptp-update-ptp-selftest-to-exercise-the-gettimex-options.patch new file mode 100644 index 0000000000..7688eaa12a --- /dev/null +++ b/queue-6.6/revert-selftest-ptp-update-ptp-selftest-to-exercise-the-gettimex-options.patch @@ -0,0 +1,144 @@ +From petrm@nvidia.com Tue Jun 16 18:57:13 2026 +From: Petr Machata +Date: Fri, 15 May 2026 15:53:53 +0200 +Subject: Revert "selftest/ptp: update ptp selftest to exercise the gettimex options" +To: Sasha Levin +Cc: Petr Machata , , Wojtek Wasko , Mahesh Bandewar , Shuah Khan , Richard Cochran , Yong Wang +Message-ID: <2e4d2f2b9efa7b0b32476947f63506cfe9568d1d.1778851656.git.petrm@nvidia.com> + +From: Petr Machata + +This reverts commit 4f3c8c7f4e1bda9c802873f3b937427dfb61301d, 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 +Signed-off-by: Petr Machata +Signed-off-by: Greg Kroah-Hartman +--- + tools/testing/selftests/ptp/testptp.c | 62 ++-------------------------------- + 1 file changed, 5 insertions(+), 57 deletions(-) + +--- 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; +@@ -592,7 +575,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"); +@@ -601,46 +583,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); + } + } + diff --git a/queue-6.6/series b/queue-6.6/series index 719d8dc3fd..d5d48a9265 100644 --- a/queue-6.6/series +++ b/queue-6.6/series @@ -446,3 +446,4 @@ arm64-errata-mitigate-tlbi-errata-on-nvidia-olympus-cpu.patch arm64-errata-mitigate-tlbi-errata-on-microsoft-azure-cobalt-100-cpu.patch mptcp-add-addr-always-drop-other-suboptions.patch mptcp-fix-missing-wakeups-in-edge-scenarios.patch +revert-selftest-ptp-update-ptp-selftest-to-exercise-the-gettimex-options.patch