Module Name: src
Committed By: jdolecek
Date: Tue Apr 7 16:10:48 UTC 2020
Modified Files:
src/sys/arch/xen/include: xenbus.h
src/sys/arch/xen/xenbus: xenbus_dev.c xenbus_xs.c
Log Message:
add wrapper to free response from xenbus_dev_request_and_reply(), so
that call in xenbus_dev_write() wouldn't need to know how it's allocated
To generate a diff of this commit:
cvs rdiff -u -r1.21 -r1.22 src/sys/arch/xen/include/xenbus.h
cvs rdiff -u -r1.16 -r1.17 src/sys/arch/xen/xenbus/xenbus_dev.c
cvs rdiff -u -r1.25 -r1.26 src/sys/arch/xen/xenbus/xenbus_xs.c
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
Modified files:
Index: src/sys/arch/xen/include/xenbus.h
diff -u src/sys/arch/xen/include/xenbus.h:1.21 src/sys/arch/xen/include/xenbus.h:1.22
--- src/sys/arch/xen/include/xenbus.h:1.21 Tue Apr 7 15:59:57 2020
+++ src/sys/arch/xen/include/xenbus.h Tue Apr 7 16:10:48 2020
@@ -1,4 +1,4 @@
-/* $NetBSD: xenbus.h,v 1.21 2020/04/07 15:59:57 jdolecek Exp $ */
+/* $NetBSD: xenbus.h,v 1.22 2020/04/07 16:10:48 jdolecek Exp $ */
/******************************************************************************
* xenbus.h
*
@@ -153,6 +153,7 @@ void xs_resume(void);
/* Used by xenbus_dev to borrow kernel's store connection. */
int xenbus_dev_request_and_reply(struct xsd_sockmsg *msg, void **);
+void xenbus_dev_reply_free(struct xsd_sockmsg *msg, void *);
void xenbus_probe(void *);
Index: src/sys/arch/xen/xenbus/xenbus_dev.c
diff -u src/sys/arch/xen/xenbus/xenbus_dev.c:1.16 src/sys/arch/xen/xenbus/xenbus_dev.c:1.17
--- src/sys/arch/xen/xenbus/xenbus_dev.c:1.16 Tue Apr 7 15:43:42 2020
+++ src/sys/arch/xen/xenbus/xenbus_dev.c Tue Apr 7 16:10:48 2020
@@ -1,4 +1,4 @@
-/* $NetBSD: xenbus_dev.c,v 1.16 2020/04/07 15:43:42 jdolecek Exp $ */
+/* $NetBSD: xenbus_dev.c,v 1.17 2020/04/07 16:10:48 jdolecek Exp $ */
/*
* xenbus_dev.c
*
@@ -31,7 +31,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: xenbus_dev.c,v 1.16 2020/04/07 15:43:42 jdolecek Exp $");
+__KERNEL_RCSID(0, "$NetBSD: xenbus_dev.c,v 1.17 2020/04/07 16:10:48 jdolecek Exp $");
#include "opt_xen.h"
@@ -40,7 +40,6 @@ __KERNEL_RCSID(0, "$NetBSD: xenbus_dev.c
#include <sys/errno.h>
#include <sys/param.h>
#include <sys/proc.h>
-#include <sys/malloc.h>
#include <sys/systm.h>
#include <sys/dirent.h>
#include <sys/stat.h>
@@ -312,7 +311,8 @@ xenbus_dev_write(void *v)
queue_reply(xlwp, (char *)&xlwp->u.msg,
sizeof(xlwp->u.msg));
queue_reply(xlwp, (char *)reply, xlwp->u.msg.len);
- free(reply, M_DEVBUF);
+
+ xenbus_dev_reply_free(&xlwp->u.msg, reply);
}
break;
Index: src/sys/arch/xen/xenbus/xenbus_xs.c
diff -u src/sys/arch/xen/xenbus/xenbus_xs.c:1.25 src/sys/arch/xen/xenbus/xenbus_xs.c:1.26
--- src/sys/arch/xen/xenbus/xenbus_xs.c:1.25 Tue Apr 7 15:59:57 2020
+++ src/sys/arch/xen/xenbus/xenbus_xs.c Tue Apr 7 16:10:48 2020
@@ -1,4 +1,4 @@
-/* $NetBSD: xenbus_xs.c,v 1.25 2020/04/07 15:59:57 jdolecek Exp $ */
+/* $NetBSD: xenbus_xs.c,v 1.26 2020/04/07 16:10:48 jdolecek Exp $ */
/******************************************************************************
* xenbus_xs.c
*
@@ -30,7 +30,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: xenbus_xs.c,v 1.25 2020/04/07 15:59:57 jdolecek Exp $");
+__KERNEL_RCSID(0, "$NetBSD: xenbus_xs.c,v 1.26 2020/04/07 16:10:48 jdolecek Exp $");
#if 0
#define DPRINTK(fmt, args...) \
@@ -175,6 +175,12 @@ xenbus_dev_request_and_reply(struct xsd_
return err;
}
+void
+xenbus_dev_reply_free(struct xsd_sockmsg *msg, void *reply)
+{
+ free(reply, M_DEVBUF);
+}
+
/* Send message to xs, get kmalloc'ed reply. ERR_PTR() on error. */
static int
xs_talkv(struct xenbus_transaction *t,