[PATCH 07/12] kern_tc.c: Remove verification of th_generation for pps functions
Sebastian Huber
sebastian.huber at embedded-brains.de
Thu Apr 7 08:42:27 UTC 2022
On 07/04/2022 10:36, Gabriel Moyano wrote:
> ---
> cpukit/score/src/kern_tc.c | 6 ++++++
> 1 file changed, 6 insertions(+)
>
> diff --git a/cpukit/score/src/kern_tc.c b/cpukit/score/src/kern_tc.c
> index a5c7b4b841..a8ba268ea3 100644
> --- a/cpukit/score/src/kern_tc.c
> +++ b/cpukit/score/src/kern_tc.c
> @@ -2109,9 +2109,11 @@ pps_capture(struct pps_state *pps)
> pps->capffth = fftimehands;
> #endif
> pps->capcount = th->th_counter->tc_get_timecount(th->th_counter);
> +#ifndef __rtems__
> atomic_thread_fence_acq();
> if (pps->capgen != th->th_generation)
> pps->capgen = 0;
> +#endif /* __rtems__ */
> }
>
> void
> @@ -2135,10 +2137,12 @@ pps_event(struct pps_state *pps, int event)
> /* Nothing to do if not currently set to capture this event type. */
> if ((event & pps->ppsparam.mode) == 0)
> return;
> +#ifndef __rtems__
> /* If the timecounter was wound up underneath us, bail out. */
> if (pps->capgen == 0 || pps->capgen !=
> atomic_load_acq_int(&pps->capth->th_generation))
> return;
> +#endif /* __rtems__ */
>
> /* Things would be easier with arrays. */
> if (event == PPS_CAPTUREASSERT) {
> @@ -2189,10 +2193,12 @@ pps_event(struct pps_state *pps, int event)
> bintime_addx(&bt, pps->capth->th_scale * tcount);
> bintime2timespec(&bt, &ts);
>
> +#ifndef __rtems__
> /* If the timecounter was wound up underneath us, bail out. */
> atomic_thread_fence_acq();
> if (pps->capgen != pps->capth->th_generation)
> return;
> +#endif /* __rtems__ */
>
> *pcount = pps->capcount;
> (*pseq)++;
Why is this change justified?
--
embedded brains GmbH
Herr Sebastian HUBER
Dornierstr. 4
82178 Puchheim
Germany
email: sebastian.huber at embedded-brains.de
phone: +49-89-18 94 741 - 16
fax: +49-89-18 94 741 - 08
Registergericht: Amtsgericht München
Registernummer: HRB 157899
Vertretungsberechtigte Geschäftsführer: Peter Rasmussen, Thomas Dörfler
Unsere Datenschutzerklärung finden Sie hier:
https://embedded-brains.de/datenschutzerklaerung/
More information about the devel
mailing list