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

Re: [PATCH 1/2] include/public: add possible status values to usbif.h



On 27.09.21 10:13, Jan Beulich wrote:
On 24.09.2021 17:04, Juergen Gross wrote:
The interface definition of PV USB devices is lacking the specification
of possible values of the status filed in a response. Those are

Nit: "field"?

Yes, of course.


negative errno values as used in Linux, so they might differ in other
OS's. Specify them via appropriate defines.

What if new errno values got used by the driver? Would we alter the
public header every time? Or is the likelihood of further values ever
getting used vanishingly small? In how far would it be possible to tie
these to Xen's public/errno.h instead?

Those are the current values returned by the backend. Other ones used
internally in the backend should IMO tried to be mapped to the values
defined in the interface specification.


Signed-off-by: Juergen Gross <jgross@xxxxxxxx>
---
  xen/include/public/io/usbif.h | 7 +++++++
  1 file changed, 7 insertions(+)

diff --git a/xen/include/public/io/usbif.h b/xen/include/public/io/usbif.h
index c6a58639d6..fbd6f953f8 100644
--- a/xen/include/public/io/usbif.h
+++ b/xen/include/public/io/usbif.h
@@ -221,6 +221,13 @@ struct usbif_urb_response {
        uint16_t id; /* request id */
        uint16_t start_frame;  /* start frame (ISO) */
        int32_t status; /* status (non-ISO) */
+#define USBIF_STATUS_OK                0
+#define USBIF_STATUS_NODEV     -19
+#define USBIF_STATUS_INVAL     -22
+#define USBIF_STATUS_STALL     -32
+#define USBIF_STATUS_IOERROR   -71
+#define USBIF_STATUS_BABBLE    -75
+#define USBIF_STATUS_SHUTDOWN  -108

Nit: While probably benign for all practical uses, these negative
values nevertheless would better be parenthesized.

Okay, fine with me.


Juergen

Attachment: OpenPGP_0xB0DE9DD628BF132F.asc
Description: OpenPGP public key

Attachment: OpenPGP_signature
Description: OpenPGP digital signature


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.