Message ID | 20210112181242.1570-10-bouyer@antioche.eu.org (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | libs/evtchn: fix build on NetBSD. | expand |
On Tue, Jan 12, 2021 at 07:12:30PM +0100, Manuel Bouyer wrote: > From: Manuel Bouyer <bouyer@netbsd.org> > > use xenio3.h for ioctl definitions > read_exact/write_exact seems to not be available here, which cause > a gcc error. > Use plain read/write, the xenevtchn interface won't do partial read/write > on NetBSD anyway so it should be safe. I would add: This is inline with the rest of the OS specific helpers that also use plain read/write calls. > > Signed-off-by: Manuel Bouyer <bouyer@netbsd.org> Reviewed-by: Roger Pau Monné <roger.pau@citrix.com> Thanks, Roger.
diff --git a/tools/libs/evtchn/netbsd.c b/tools/libs/evtchn/netbsd.c index 8b8545d2f9..6d4ce28011 100644 --- a/tools/libs/evtchn/netbsd.c +++ b/tools/libs/evtchn/netbsd.c @@ -25,10 +25,10 @@ #include <sys/ioctl.h> -#include <xen/sys/evtchn.h> - #include "private.h" +#include <xen/xenio3.h> + #define EVTCHN_DEV_NAME "/dev/xenevt" int osdep_evtchn_open(xenevtchn_handle *xce) @@ -131,7 +131,7 @@ xenevtchn_port_or_error_t xenevtchn_pending(xenevtchn_handle *xce) int fd = xce->fd; evtchn_port_t port; - if ( read_exact(fd, (char *)&port, sizeof(port)) == -1 ) + if ( read(fd, (char *)&port, sizeof(port)) == -1 ) return -1; return port; @@ -140,7 +140,7 @@ xenevtchn_port_or_error_t xenevtchn_pending(xenevtchn_handle *xce) int xenevtchn_unmask(xenevtchn_handle *xce, evtchn_port_t port) { int fd = xce->fd; - return write_exact(fd, (char *)&port, sizeof(port)); + return write(fd, (char *)&port, sizeof(port)); } /*