On Wed, Jul 29, 2020 at 02:35:01PM +0200, Ján Tomko wrote:
On a Wednesday in 2020, Andrea Bolognani wrote:On Wed, 2020-07-29 at 13:43 +0200, Martin Kletzander wrote:+++ b/src/util/virresctrl.c @@ -456,6 +456,8 @@ VIR_ONCE_GLOBAL_INIT(virResctrl); static int virResctrlLockWrite(void) { +#ifndef WIN32 + int fd = open(SYSFS_RESCTRL_PATH, O_RDONLY | O_CLOEXEC); if (fd < 0) { @@ -463,13 +465,20 @@ virResctrlLockWrite(void) return -1; } - if (virFileFlock(fd, true, false) < 0) { + if (flock(fd, LOCK_EX) < 0) { virReportSystemError(errno, "%s", _("Cannot lock resctrl")); VIR_FORCE_CLOSE(fd); return -1; } return fd; + +#else /* WIN32 */ + + virReportSystemError(ENOSYS, "%s", _("Cannot lock resctrl")); + return -1; + +#endif } @@ -484,10 +493,14 @@ virResctrlUnlock(int fd) if (VIR_CLOSE(fd) < 0) { virReportSystemError(errno, "%s", _("Cannot close resctrl")); +#ifndef WIN32 + /* Trying to save the already broken */ - if (virFileFlock(fd, false, false) < 0) + if (flock(fd, LOCK_UN) < 0) virReportSystemError(errno, "%s", _("Cannot unlock resctrl")); +#endif + return -1; }So in the end you decided to go for the nuclear option :D I'm okay with the approach, but I would prefer if you stubbed out the functions completely, eg.Yes, please.
I guess with two functions it's fine to do it like that. I thought it was one, then it became two, you know the drill.
With that, the whole series: Reviewed-by: Ján Tomko <jtomko@xxxxxxxxxx>
Kiitos
Jano
Attachment:
signature.asc
Description: PGP signature