qemu-trivial
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH] migration: Remove time_t cast for OpenBSD


From: Brad Smith
Subject: Re: [PATCH] migration: Remove time_t cast for OpenBSD
Date: Sat, 13 Mar 2021 18:33:02 -0500
User-agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:87.0) Gecko/20100101 Thunderbird/87.0

On 3/11/2021 1:39 PM, Daniel P. Berrangé wrote:
On Thu, Mar 11, 2021 at 06:28:57PM +0000, Dr. David Alan Gilbert wrote:
* Laurent Vivier (laurent@vivier.eu) wrote:
Le 08/03/2021 à 12:46, Thomas Huth a écrit :
On 22/02/2021 08.28, Brad Smith wrote:
OpenBSD has supported 64-bit time_t across all archs since 5.5 released in 2014.

Remove a time_t cast that is no longer necessary.


Signed-off-by: Brad Smith <brad@comstyle.com>

diff --git a/migration/savevm.c b/migration/savevm.c
index 52e2d72e4b..9557f85ba9 100644
--- a/migration/savevm.c
+++ b/migration/savevm.c
@@ -2849,8 +2849,7 @@ bool save_snapshot(const char *name, bool overwrite, 
const char *vmstate,
      if (name) {
          pstrcpy(sn->name, sizeof(sn->name), name);
      } else {
-        /* cast below needed for OpenBSD where tv_sec is still 'long' */
-        localtime_r((const time_t *)&tv.tv_sec, &tm);
+        localtime_r(&tv.tv_sec, &tm);
          strftime(sn->name, sizeof(sn->name), "vm-%Y%m%d%H%M%S", &tm);
      }
but the qemu_timeval from "include/sysemu/os-win32.h" still uses a long: is 
this file compiled for
win32?
Yep this fails for me when built with x86_64-w64-mingw32- (it's fine
with i686-w64-mingw32- )
We could just switch the code to use GDateTime from GLib and thus
avoid portability issues. I think this should be equivalent:

      g_autoptr(GDateTime) now = g_date_time_new_now_local();
      g_autofree char *nowstr = g_date_time_format(now, "vm-%Y%m%d%H%M%s");
      strncpy(sn->name, sizeof(sn->name), nowstr);

Which way do you guys want to go? Something like above, remove the comment
or some variation on the comment but not mentioning OpenBSD since it is no
longer relevant?



reply via email to

[Prev in Thread] Current Thread [Next in Thread]