From: Johannes Berg <johannes@sipsolutions.net>
To: Benjamin Beichler <benjamin.beichler@uni-rostock.de>,
Richard Weinberger <richard@nod.at>,
Anton Ivanov <anton.ivanov@cambridgegreys.com>
Cc: linux-um@lists.infradead.org
Subject: Re: [PATCH RFC 11/11] um: Remove all TSC flags when using Time Travel Mode
Date: Mon, 06 Nov 2023 21:52:17 +0100 [thread overview]
Message-ID: <75661ee39acb1c59132aae0e4ac20ce20bb3a92f.camel@sipsolutions.net> (raw)
In-Reply-To: <20231103-bb-timetravel-patches-v1-11-e2c68efcf664@uni-rostock.de>
On Fri, 2023-11-03 at 16:41 +0000, Benjamin Beichler wrote:
> In time travel mode, the internal time is only advanced at discrete
> synchronization points, while the TSC register continuously increases.
> Although the TSC registers remain accessible, we remove the TSC flags to
> indicate to programs that properly check the TSC flag before reading
> that the CPU lacks a proper TSC register.
>
> This change is primarily cosmetic but may encourage some programs to use
> gettimeofday and similar calls for time measurement.
>
> Signed-off-by: Benjamin Beichler <benjamin.beichler@uni-rostock.de>
> ---
> arch/um/kernel/um_arch.c | 4 +++-
> 1 file changed, 3 insertions(+), 1 deletion(-)
>
> diff --git a/arch/um/kernel/um_arch.c b/arch/um/kernel/um_arch.c
> index b1bfed0c8528..6bfd531b5f87 100644
> --- a/arch/um/kernel/um_arch.c
> +++ b/arch/um/kernel/um_arch.c
> @@ -30,6 +30,7 @@
> #include <kern_util.h>
> #include <mem_user.h>
> #include <os.h>
> +#include <timetravel.h>
>
> #include "um_arch.h"
>
> @@ -284,7 +285,8 @@ static void parse_host_cpu_flags(char *line)
> {
> int i;
> for (i = 0; i < 32*NCAPINTS; i++) {
> - if ((x86_cap_flags[i] != NULL) && strstr(line, x86_cap_flags[i]))
> + if ((x86_cap_flags[i] != NULL) && strstr(line, x86_cap_flags[i]) &&
> + !(time_travel_mode != TT_MODE_OFF && strstr("tsc", x86_cap_flags[i])))
> set_cpu_cap(&boot_cpu_data, i);
>
Makes sense, but the code formatting is all wrong ;-)
(indentation should only be to the logical level of the parentheses)
johannes
_______________________________________________
linux-um mailing list
linux-um@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-um
prev parent reply other threads:[~2023-11-06 20:52 UTC|newest]
Thread overview: 36+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-11-03 16:41 [PATCH RFC 00/11] Several Time Travel Mode Enhancements Benjamin Beichler
2023-11-03 16:41 ` [PATCH RFC 01/11] um: Make UBD requests synchronous in TT ext/infcpu mode Benjamin Beichler
2023-11-06 20:24 ` Johannes Berg
2023-11-03 16:41 ` [PATCH RFC 02/11] um: add a simple time_travel_handler implementation Benjamin Beichler
2023-11-03 16:41 ` [PATCH RFC 03/11] um: Use a simple time travel handler for line interrupts Benjamin Beichler
2023-11-06 20:26 ` Johannes Berg
2023-11-10 16:53 ` Benjamin Beichler
2023-11-10 17:16 ` Johannes Berg
2023-11-13 11:46 ` Benjamin Beichler
2023-11-13 21:22 ` Johannes Berg
2023-11-13 21:57 ` Johannes Berg
2023-11-20 13:42 ` Benjamin Beichler
2023-11-24 14:53 ` Johannes Berg
2023-11-03 16:41 ` [PATCH RFC 04/11] um: Handle UM_TIMETRAVEL_RUN only in idle loop, signal success in ACK Benjamin Beichler
2023-11-06 20:53 ` Johannes Berg
2023-11-10 18:41 ` Johannes Berg
2023-11-03 16:41 ` [PATCH RFC 05/11] um: Add final request time to TT wait message Benjamin Beichler
2023-11-06 20:29 ` Johannes Berg
2023-11-03 16:41 ` [PATCH RFC 06/11] um: always send UM_TIMETRAVEL_REQUEST from ISRs Benjamin Beichler
2023-11-06 20:32 ` Johannes Berg
2023-11-03 16:41 ` [PATCH RFC 07/11] um: add TIMETRAVEL_REQUEST handler to request latest event Benjamin Beichler
2023-11-06 20:33 ` Johannes Berg
2023-11-10 16:23 ` Benjamin Beichler
2023-11-10 17:19 ` Johannes Berg
2023-11-03 16:41 ` [PATCH RFC 08/11] um: Protect accesses to the timetravel event list Benjamin Beichler
2023-11-06 20:37 ` Johannes Berg
2023-11-03 16:41 ` [PATCH RFC 09/11] um: Delay timer_read in time travel mode only after consecutive reads Benjamin Beichler
2023-11-06 20:40 ` Johannes Berg
2023-11-03 16:41 ` [PATCH RFC 10/11] um: Delay timer_read only in possible busy loops in TT-mode Benjamin Beichler
2023-11-06 20:51 ` Johannes Berg
2023-11-10 15:54 ` Benjamin Beichler
2023-11-10 16:39 ` Benjamin Berg
2023-11-10 17:29 ` Johannes Berg
2023-11-03 16:41 ` [PATCH RFC 11/11] um: Remove all TSC flags when using Time Travel Mode Benjamin Beichler
2023-11-03 18:45 ` Anton Ivanov
2023-11-06 20:52 ` Johannes Berg [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=75661ee39acb1c59132aae0e4ac20ce20bb3a92f.camel@sipsolutions.net \
--to=johannes@sipsolutions.net \
--cc=anton.ivanov@cambridgegreys.com \
--cc=benjamin.beichler@uni-rostock.de \
--cc=linux-um@lists.infradead.org \
--cc=richard@nod.at \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox