Module Name:    src
Committed By:   martin
Date:           Wed Jan 31 18:01:55 UTC 2018

Modified Files:
        src/sys/dev/usb [netbsd-8]: if_athn_usb.c if_atu.c if_aue.c if_axe.c
            if_axen.c if_cdce.c if_cue.c if_kue.c if_otus.c if_rum.c if_run.c
            if_smsc.c if_udav.c if_upgt.c if_upl.c if_ural.c if_url.c
            if_urndis.c if_urtw.c if_urtwn.c if_zyd.c irmce.c pseye.c ualea.c
            ubt.c ucom.c udsir.c ugen.c uhso.c uirda.c ulpt.c umass.c umidi.c
            uscanner.c usscanner.c ustir.c utoppy.c uvideo.c

Log Message:
Pull up following revision(s) (requested by skrll in ticket #509):
        sys/dev/usb/if_ural.c: revision 1.53
        sys/dev/usb/if_run.c: revision 1.25
        sys/dev/usb/ustir.c: revision 1.39
        sys/dev/usb/irmce.c: revision 1.4
        sys/dev/usb/if_urtwn.c: revision 1.56
        sys/dev/usb/pseye.c: revision 1.24
        sys/dev/usb/if_rum.c: revision 1.59
        sys/dev/usb/if_upl.c: revision 1.61
        sys/dev/usb/ucom.c: revision 1.120
        sys/dev/usb/if_zyd.c: revision 1.45
        sys/dev/usb/if_axen.c: revision 1.12
        sys/dev/usb/umidi.c: revision 1.74
        sys/dev/usb/if_udav.c: revision 1.52
        sys/dev/usb/if_athn_usb.c: revision 1.25
        sys/dev/usb/usscanner.c: revision 1.43
        sys/dev/usb/ualea.c: revision 1.6 - 1.9
        sys/dev/usb/if_upgt.c: revision 1.18
        sys/dev/usb/if_atu.c: revision 1.56
        sys/dev/usb/utoppy.c: revision 1.30
        sys/dev/usb/ubt.c: revision 1.60
        sys/dev/usb/if_urtw.c: revision 1.14
        sys/dev/usb/uirda.c: revision 1.43
        sys/dev/usb/umass.c: revision 1.163
        sys/dev/usb/if_cdce.c: revision 1.45
        sys/dev/usb/if_cue.c: revision 1.77
        sys/dev/usb/if_kue.c: revision 1.91
        sys/dev/usb/uvideo.c: revision 1.46
        sys/dev/usb/uhso.c: revision 1.27
        sys/dev/usb/if_smsc.c: revision 1.33
        sys/dev/usb/ugen.c: revision 1.137
        sys/dev/usb/if_axe.c: revision 1.84
        sys/dev/usb/if_aue.c: revision 1.142
        sys/dev/usb/uscanner.c: revision 1.82
        sys/dev/usb/if_urndis.c: revision 1.17
        sys/dev/usb/udsir.c: revision 1.6
        sys/dev/usb/if_url.c: revision 1.57
        sys/dev/usb/if_otus.c: revision 1.32
        sys/dev/usb/ulpt.c: revision 1.99

PR kern/52931 Kernel panics with Atheros usb wireless interface
Audit the flags to usbd_create_xfer so that USBD_FORCE_SHORT_XFER is
supplied wherever such a transfer is setup.  We can drop
USBD_SHORT_XFER_OK as it has not bearing on number of TDs

ualea: Tidy up a bit.  Fulfil requests completely.
Don't subtract uninitialized pktsize in error path.


To generate a diff of this commit:
cvs rdiff -u -r1.22.2.1 -r1.22.2.2 src/sys/dev/usb/if_athn_usb.c
cvs rdiff -u -r1.55 -r1.55.8.1 src/sys/dev/usb/if_atu.c
cvs rdiff -u -r1.141 -r1.141.8.1 src/sys/dev/usb/if_aue.c
cvs rdiff -u -r1.82.6.1 -r1.82.6.2 src/sys/dev/usb/if_axe.c
cvs rdiff -u -r1.11 -r1.11.8.1 src/sys/dev/usb/if_axen.c
cvs rdiff -u -r1.44 -r1.44.8.1 src/sys/dev/usb/if_cdce.c
cvs rdiff -u -r1.76 -r1.76.8.1 src/sys/dev/usb/if_cue.c
cvs rdiff -u -r1.90 -r1.90.2.1 src/sys/dev/usb/if_kue.c
cvs rdiff -u -r1.31 -r1.31.2.1 src/sys/dev/usb/if_otus.c
cvs rdiff -u -r1.58 -r1.58.2.1 src/sys/dev/usb/if_rum.c
cvs rdiff -u -r1.22 -r1.22.2.1 src/sys/dev/usb/if_run.c
cvs rdiff -u -r1.30 -r1.30.8.1 src/sys/dev/usb/if_smsc.c
cvs rdiff -u -r1.51 -r1.51.8.1 src/sys/dev/usb/if_udav.c
cvs rdiff -u -r1.17 -r1.17.8.1 src/sys/dev/usb/if_upgt.c
cvs rdiff -u -r1.59.8.1 -r1.59.8.2 src/sys/dev/usb/if_upl.c
cvs rdiff -u -r1.51.8.1 -r1.51.8.2 src/sys/dev/usb/if_ural.c
cvs rdiff -u -r1.56 -r1.56.8.1 src/sys/dev/usb/if_url.c
cvs rdiff -u -r1.16 -r1.16.2.1 src/sys/dev/usb/if_urndis.c
cvs rdiff -u -r1.13 -r1.13.8.1 src/sys/dev/usb/if_urtw.c
cvs rdiff -u -r1.53.2.1 -r1.53.2.2 src/sys/dev/usb/if_urtwn.c
cvs rdiff -u -r1.44 -r1.44.2.1 src/sys/dev/usb/if_zyd.c \
    src/sys/dev/usb/uvideo.c
cvs rdiff -u -r1.3 -r1.3.6.1 src/sys/dev/usb/irmce.c
cvs rdiff -u -r1.23 -r1.23.10.1 src/sys/dev/usb/pseye.c
cvs rdiff -u -r1.6 -r1.6.8.1 src/sys/dev/usb/ualea.c
cvs rdiff -u -r1.59 -r1.59.2.1 src/sys/dev/usb/ubt.c
cvs rdiff -u -r1.118.8.1 -r1.118.8.2 src/sys/dev/usb/ucom.c
cvs rdiff -u -r1.4 -r1.4.2.1 src/sys/dev/usb/udsir.c
cvs rdiff -u -r1.134 -r1.134.10.1 src/sys/dev/usb/ugen.c
cvs rdiff -u -r1.25 -r1.25.8.1 src/sys/dev/usb/uhso.c
cvs rdiff -u -r1.41 -r1.41.8.1 src/sys/dev/usb/uirda.c
cvs rdiff -u -r1.98 -r1.98.8.1 src/sys/dev/usb/ulpt.c
cvs rdiff -u -r1.158.4.1 -r1.158.4.2 src/sys/dev/usb/umass.c
cvs rdiff -u -r1.73 -r1.73.2.1 src/sys/dev/usb/umidi.c
cvs rdiff -u -r1.80 -r1.80.8.1 src/sys/dev/usb/uscanner.c
cvs rdiff -u -r1.42 -r1.42.8.1 src/sys/dev/usb/usscanner.c
cvs rdiff -u -r1.37 -r1.37.2.1 src/sys/dev/usb/ustir.c
cvs rdiff -u -r1.29 -r1.29.2.1 src/sys/dev/usb/utoppy.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/dev/usb/if_athn_usb.c
diff -u src/sys/dev/usb/if_athn_usb.c:1.22.2.1 src/sys/dev/usb/if_athn_usb.c:1.22.2.2
--- src/sys/dev/usb/if_athn_usb.c:1.22.2.1	Thu Sep 28 01:18:55 2017
+++ src/sys/dev/usb/if_athn_usb.c	Wed Jan 31 18:01:54 2018
@@ -1,4 +1,4 @@
-/*	$NetBSD: if_athn_usb.c,v 1.22.2.1 2017/09/28 01:18:55 snj Exp $	*/
+/*	$NetBSD: if_athn_usb.c,v 1.22.2.2 2018/01/31 18:01:54 martin Exp $	*/
 /*	$OpenBSD: if_athn_usb.c,v 1.12 2013/01/14 09:50:31 jsing Exp $	*/
 
 /*-
@@ -22,7 +22,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: if_athn_usb.c,v 1.22.2.1 2017/09/28 01:18:55 snj Exp $");
+__KERNEL_RCSID(0, "$NetBSD: if_athn_usb.c,v 1.22.2.2 2018/01/31 18:01:54 martin Exp $");
 
 #ifdef	_KERNEL_OPT
 #include "opt_inet.h"
@@ -670,7 +670,7 @@ athn_usb_alloc_rx_list(struct athn_usb_s
 		data->sc = usc;	/* Backpointer for callbacks. */
 
 		error = usbd_create_xfer(usc->usc_rx_data_pipe,
-		    ATHN_USB_RXBUFSZ, USBD_SHORT_XFER_OK, 0, &data->xfer);
+		    ATHN_USB_RXBUFSZ, 0, 0, &data->xfer);
 		if (error) {
 			aprint_error_dev(usc->usc_dev,
 			    "could not allocate xfer\n");
@@ -717,7 +717,7 @@ athn_usb_alloc_tx_list(struct athn_usb_s
 		data->sc = usc;	/* Backpointer for callbacks. */
 
 		error = usbd_create_xfer(usc->usc_tx_data_pipe,
-		    ATHN_USB_TXBUFSZ, USBD_SHORT_XFER_OK, 0, &data->xfer);
+		    ATHN_USB_TXBUFSZ, USBD_FORCE_SHORT_XFER, 0, &data->xfer);
 		if (error) {
 			aprint_error_dev(usc->usc_dev,
 			    "could not create xfer on TX pipe\n");

Index: src/sys/dev/usb/if_atu.c
diff -u src/sys/dev/usb/if_atu.c:1.55 src/sys/dev/usb/if_atu.c:1.55.8.1
--- src/sys/dev/usb/if_atu.c:1.55	Fri Nov 25 12:56:29 2016
+++ src/sys/dev/usb/if_atu.c	Wed Jan 31 18:01:54 2018
@@ -1,4 +1,4 @@
-/*	$NetBSD: if_atu.c,v 1.55 2016/11/25 12:56:29 skrll Exp $ */
+/*	$NetBSD: if_atu.c,v 1.55.8.1 2018/01/31 18:01:54 martin Exp $ */
 /*	$OpenBSD: if_atu.c,v 1.48 2004/12/30 01:53:21 dlg Exp $ */
 /*
  * Copyright (c) 2003, 2004
@@ -48,7 +48,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: if_atu.c,v 1.55 2016/11/25 12:56:29 skrll Exp $");
+__KERNEL_RCSID(0, "$NetBSD: if_atu.c,v 1.55.8.1 2018/01/31 18:01:54 martin Exp $");
 
 #ifdef _KERNEL_OPT
 #include "opt_usb.h"
@@ -317,7 +317,7 @@ atu_usb_request(struct atu_softc *sc, ui
 	s = splnet();
 
 	struct usbd_pipe *pipe0 = usbd_get_pipe0(sc->atu_udev);
-	int error = usbd_create_xfer(pipe0, length, USBD_SHORT_XFER_OK, 0,
+	int error = usbd_create_xfer(pipe0, length, 0, 0,
 	    &xfer);
 	if (error) {
 		splx(s);
@@ -1560,7 +1560,7 @@ atu_rx_list_init(struct atu_softc *sc)
 		c->atu_idx = i;
 		if (c->atu_xfer == NULL) {
 			int err = usbd_create_xfer(sc->atu_ep[ATU_ENDPT_RX],
-			    ATU_RX_BUFSZ, USBD_SHORT_XFER_OK, 0, &c->atu_xfer);
+			    ATU_RX_BUFSZ, 0, 0, &c->atu_xfer);
 			if (err)
 				return err;
 			c->atu_buf = usbd_get_buffer(c->atu_xfer);

Index: src/sys/dev/usb/if_aue.c
diff -u src/sys/dev/usb/if_aue.c:1.141 src/sys/dev/usb/if_aue.c:1.141.8.1
--- src/sys/dev/usb/if_aue.c:1.141	Thu Jan 12 18:26:08 2017
+++ src/sys/dev/usb/if_aue.c	Wed Jan 31 18:01:55 2018
@@ -1,4 +1,4 @@
-/*	$NetBSD: if_aue.c,v 1.141 2017/01/12 18:26:08 maya Exp $	*/
+/*	$NetBSD: if_aue.c,v 1.141.8.1 2018/01/31 18:01:55 martin Exp $	*/
 
 /*
  * Copyright (c) 1997, 1998, 1999, 2000
@@ -78,7 +78,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: if_aue.c,v 1.141 2017/01/12 18:26:08 maya Exp $");
+__KERNEL_RCSID(0, "$NetBSD: if_aue.c,v 1.141.8.1 2018/01/31 18:01:55 martin Exp $");
 
 #ifdef _KERNEL_OPT
 #include "opt_usb.h"
@@ -1014,7 +1014,7 @@ aue_rx_list_init(struct aue_softc *sc)
 			return ENOBUFS;
 		if (c->aue_xfer == NULL) {
 			int err = usbd_create_xfer(sc->aue_ep[AUE_ENDPT_RX],
-			    AUE_BUFSZ, USBD_SHORT_XFER_OK, 0, &c->aue_xfer);
+			    AUE_BUFSZ, 0, 0, &c->aue_xfer);
 			if (err) {
 				return err;
 			}

Index: src/sys/dev/usb/if_axe.c
diff -u src/sys/dev/usb/if_axe.c:1.82.6.1 src/sys/dev/usb/if_axe.c:1.82.6.2
--- src/sys/dev/usb/if_axe.c:1.82.6.1	Thu Nov  2 21:29:52 2017
+++ src/sys/dev/usb/if_axe.c	Wed Jan 31 18:01:55 2018
@@ -1,4 +1,4 @@
-/*	$NetBSD: if_axe.c,v 1.82.6.1 2017/11/02 21:29:52 snj Exp $	*/
+/*	$NetBSD: if_axe.c,v 1.82.6.2 2018/01/31 18:01:55 martin Exp $	*/
 /*	$OpenBSD: if_axe.c,v 1.137 2016/04/13 11:03:37 mpi Exp $ */
 
 /*
@@ -87,7 +87,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: if_axe.c,v 1.82.6.1 2017/11/02 21:29:52 snj Exp $");
+__KERNEL_RCSID(0, "$NetBSD: if_axe.c,v 1.82.6.2 2018/01/31 18:01:55 martin Exp $");
 
 #ifdef _KERNEL_OPT
 #include "opt_inet.h"
@@ -1159,7 +1159,7 @@ axe_rx_list_init(struct axe_softc *sc)
 		c->axe_idx = i;
 		if (c->axe_xfer == NULL) {
 			int err = usbd_create_xfer(sc->axe_ep[AXE_ENDPT_RX],
-			    sc->axe_bufsz, USBD_SHORT_XFER_OK, 0, &c->axe_xfer);
+			    sc->axe_bufsz, 0, 0, &c->axe_xfer);
 			if (err)
 				return err;
 			c->axe_buf = usbd_get_buffer(c->axe_xfer);

Index: src/sys/dev/usb/if_axen.c
diff -u src/sys/dev/usb/if_axen.c:1.11 src/sys/dev/usb/if_axen.c:1.11.8.1
--- src/sys/dev/usb/if_axen.c:1.11	Thu Dec 15 09:28:06 2016
+++ src/sys/dev/usb/if_axen.c	Wed Jan 31 18:01:54 2018
@@ -1,4 +1,4 @@
-/*	$NetBSD: if_axen.c,v 1.11 2016/12/15 09:28:06 ozaki-r Exp $	*/
+/*	$NetBSD: if_axen.c,v 1.11.8.1 2018/01/31 18:01:54 martin Exp $	*/
 /*	$OpenBSD: if_axen.c,v 1.3 2013/10/21 10:10:22 yuo Exp $	*/
 
 /*
@@ -23,7 +23,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: if_axen.c,v 1.11 2016/12/15 09:28:06 ozaki-r Exp $");
+__KERNEL_RCSID(0, "$NetBSD: if_axen.c,v 1.11.8.1 2018/01/31 18:01:54 martin Exp $");
 
 #ifdef _KERNEL_OPT
 #include "opt_inet.h"
@@ -921,8 +921,7 @@ axen_rx_list_init(struct axen_softc *sc)
 		c->axen_idx = i;
 		if (c->axen_xfer == NULL) {
 			int err = usbd_create_xfer(sc->axen_ep[AXEN_ENDPT_RX],
-			    sc->axen_bufsz, USBD_SHORT_XFER_OK, 0,
-			    &c->axen_xfer);
+			    sc->axen_bufsz, 0, 0, &c->axen_xfer);
 			if (err)
 				return err;
 			c->axen_buf = usbd_get_buffer(c->axen_xfer);

Index: src/sys/dev/usb/if_cdce.c
diff -u src/sys/dev/usb/if_cdce.c:1.44 src/sys/dev/usb/if_cdce.c:1.44.8.1
--- src/sys/dev/usb/if_cdce.c:1.44	Thu Jan 12 18:26:08 2017
+++ src/sys/dev/usb/if_cdce.c	Wed Jan 31 18:01:54 2018
@@ -1,4 +1,4 @@
-/*	$NetBSD: if_cdce.c,v 1.44 2017/01/12 18:26:08 maya Exp $ */
+/*	$NetBSD: if_cdce.c,v 1.44.8.1 2018/01/31 18:01:54 martin Exp $ */
 
 /*
  * Copyright (c) 1997, 1998, 1999, 2000-2003 Bill Paul <[email protected]>
@@ -41,7 +41,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: if_cdce.c,v 1.44 2017/01/12 18:26:08 maya Exp $");
+__KERNEL_RCSID(0, "$NetBSD: if_cdce.c,v 1.44.8.1 2018/01/31 18:01:54 martin Exp $");
 
 #ifdef _KERNEL_OPT
 #include "opt_inet.h"
@@ -634,7 +634,7 @@ cdce_rx_list_init(struct cdce_softc *sc)
 			return ENOBUFS;
 		if (c->cdce_xfer == NULL) {
 			int err = usbd_create_xfer(sc->cdce_bulkin_pipe,
-			    CDCE_BUFSZ, USBD_SHORT_XFER_OK, 0, &c->cdce_xfer);
+			    CDCE_BUFSZ, 0, 0, &c->cdce_xfer);
 			if (err)
 				return err;
 			c->cdce_buf = usbd_get_buffer(c->cdce_xfer);

Index: src/sys/dev/usb/if_cue.c
diff -u src/sys/dev/usb/if_cue.c:1.76 src/sys/dev/usb/if_cue.c:1.76.8.1
--- src/sys/dev/usb/if_cue.c:1.76	Thu Jan 12 18:26:08 2017
+++ src/sys/dev/usb/if_cue.c	Wed Jan 31 18:01:54 2018
@@ -1,4 +1,4 @@
-/*	$NetBSD: if_cue.c,v 1.76 2017/01/12 18:26:08 maya Exp $	*/
+/*	$NetBSD: if_cue.c,v 1.76.8.1 2018/01/31 18:01:54 martin Exp $	*/
 /*
  * Copyright (c) 1997, 1998, 1999, 2000
  *	Bill Paul <[email protected]>.  All rights reserved.
@@ -56,7 +56,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: if_cue.c,v 1.76 2017/01/12 18:26:08 maya Exp $");
+__KERNEL_RCSID(0, "$NetBSD: if_cue.c,v 1.76.8.1 2018/01/31 18:01:54 martin Exp $");
 
 #ifdef _KERNEL_OPT
 #include "opt_inet.h"
@@ -679,7 +679,7 @@ cue_rx_list_init(struct cue_softc *sc)
 			return ENOBUFS;
 		if (c->cue_xfer == NULL) {
 			int error = usbd_create_xfer(sc->cue_ep[CUE_ENDPT_RX],
-			    CUE_BUFSZ, USBD_SHORT_XFER_OK, 0, &c->cue_xfer);
+			    CUE_BUFSZ, 0, 0, &c->cue_xfer);
 			if (error)
 				return error;
 			c->cue_buf = usbd_get_buffer(c->cue_xfer);

Index: src/sys/dev/usb/if_kue.c
diff -u src/sys/dev/usb/if_kue.c:1.90 src/sys/dev/usb/if_kue.c:1.90.2.1
--- src/sys/dev/usb/if_kue.c:1.90	Thu Jun  1 02:45:11 2017
+++ src/sys/dev/usb/if_kue.c	Wed Jan 31 18:01:54 2018
@@ -1,4 +1,4 @@
-/*	$NetBSD: if_kue.c,v 1.90 2017/06/01 02:45:11 chs Exp $	*/
+/*	$NetBSD: if_kue.c,v 1.90.2.1 2018/01/31 18:01:54 martin Exp $	*/
 
 /*
  * Copyright (c) 1997, 1998, 1999, 2000
@@ -71,7 +71,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: if_kue.c,v 1.90 2017/06/01 02:45:11 chs Exp $");
+__KERNEL_RCSID(0, "$NetBSD: if_kue.c,v 1.90.2.1 2018/01/31 18:01:54 martin Exp $");
 
 #ifdef _KERNEL_OPT
 #include "opt_inet.h"
@@ -589,7 +589,7 @@ kue_rx_list_init(struct kue_softc *sc)
 		c->kue_idx = i;
 		if (c->kue_xfer == NULL) {
 			int error = usbd_create_xfer(sc->kue_ep[KUE_ENDPT_RX],
-			    KUE_BUFSZ, USBD_SHORT_XFER_OK, 0, &c->kue_xfer);
+			    KUE_BUFSZ, 0, 0, &c->kue_xfer);
 			if (error)
 				return error;
 			c->kue_buf = usbd_get_buffer(c->kue_xfer);

Index: src/sys/dev/usb/if_otus.c
diff -u src/sys/dev/usb/if_otus.c:1.31 src/sys/dev/usb/if_otus.c:1.31.2.1
--- src/sys/dev/usb/if_otus.c:1.31	Thu Jun  1 02:45:11 2017
+++ src/sys/dev/usb/if_otus.c	Wed Jan 31 18:01:55 2018
@@ -1,4 +1,4 @@
-/*	$NetBSD: if_otus.c,v 1.31 2017/06/01 02:45:11 chs Exp $	*/
+/*	$NetBSD: if_otus.c,v 1.31.2.1 2018/01/31 18:01:55 martin Exp $	*/
 /*	$OpenBSD: if_otus.c,v 1.18 2010/08/27 17:08:00 jsg Exp $	*/
 
 /*-
@@ -23,7 +23,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: if_otus.c,v 1.31 2017/06/01 02:45:11 chs Exp $");
+__KERNEL_RCSID(0, "$NetBSD: if_otus.c,v 1.31.2.1 2018/01/31 18:01:55 martin Exp $");
 
 #ifdef _KERNEL_OPT
 #include "opt_usb.h"
@@ -1181,7 +1181,7 @@ otus_alloc_rx_data_list(struct otus_soft
 		data->sc = sc;	/* Backpointer for callbacks. */
 
 		error = usbd_create_xfer(sc->sc_data_rx_pipe, OTUS_RXBUFSZ,
-		    USBD_SHORT_XFER_OK, 0, &data->xfer);
+		   0, 0, &data->xfer);
 
 		if (error) {
 			aprint_error_dev(sc->sc_dev,

Index: src/sys/dev/usb/if_rum.c
diff -u src/sys/dev/usb/if_rum.c:1.58 src/sys/dev/usb/if_rum.c:1.58.2.1
--- src/sys/dev/usb/if_rum.c:1.58	Tue May 23 00:32:47 2017
+++ src/sys/dev/usb/if_rum.c	Wed Jan 31 18:01:54 2018
@@ -1,5 +1,5 @@
 /*	$OpenBSD: if_rum.c,v 1.40 2006/09/18 16:20:20 damien Exp $	*/
-/*	$NetBSD: if_rum.c,v 1.58 2017/05/23 00:32:47 khorben Exp $	*/
+/*	$NetBSD: if_rum.c,v 1.58.2.1 2018/01/31 18:01:54 martin Exp $	*/
 
 /*-
  * Copyright (c) 2005-2007 Damien Bergamini <[email protected]>
@@ -24,7 +24,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: if_rum.c,v 1.58 2017/05/23 00:32:47 khorben Exp $");
+__KERNEL_RCSID(0, "$NetBSD: if_rum.c,v 1.58.2.1 2018/01/31 18:01:54 martin Exp $");
 
 #ifdef _KERNEL_OPT
 #include "opt_usb.h"
@@ -589,7 +589,7 @@ rum_alloc_rx_list(struct rum_softc *sc)
 		data->sc = sc;
 
 		error = usbd_create_xfer(sc->sc_rx_pipeh, MCLBYTES,
-		    USBD_SHORT_XFER_OK, 0, &data->xfer);
+		    0, 0, &data->xfer);
 		if (error) {
 			printf("%s: could not allocate rx xfer\n",
 			    device_xname(sc->sc_dev));

Index: src/sys/dev/usb/if_run.c
diff -u src/sys/dev/usb/if_run.c:1.22 src/sys/dev/usb/if_run.c:1.22.2.1
--- src/sys/dev/usb/if_run.c:1.22	Thu May  4 14:07:34 2017
+++ src/sys/dev/usb/if_run.c	Wed Jan 31 18:01:54 2018
@@ -1,4 +1,4 @@
-/*	$NetBSD: if_run.c,v 1.22 2017/05/04 14:07:34 hauke Exp $	*/
+/*	$NetBSD: if_run.c,v 1.22.2.1 2018/01/31 18:01:54 martin Exp $	*/
 /*	$OpenBSD: if_run.c,v 1.90 2012/03/24 15:11:04 jsg Exp $	*/
 
 /*-
@@ -23,7 +23,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: if_run.c,v 1.22 2017/05/04 14:07:34 hauke Exp $");
+__KERNEL_RCSID(0, "$NetBSD: if_run.c,v 1.22.2.1 2018/01/31 18:01:54 martin Exp $");
 
 #ifdef _KERNEL_OPT
 #include "opt_usb.h"
@@ -811,7 +811,7 @@ run_alloc_rx_ring(struct run_softc *sc)
 		data->sc = sc;	/* backpointer for callbacks */
 
 		error = usbd_create_xfer(sc->rxq.pipeh, RUN_MAX_RXSZ,
-		    USBD_SHORT_XFER_OK, 0, &data->xfer);
+		    0, 0, &data->xfer);
 		if (error)
 			goto fail;
 

Index: src/sys/dev/usb/if_smsc.c
diff -u src/sys/dev/usb/if_smsc.c:1.30 src/sys/dev/usb/if_smsc.c:1.30.8.1
--- src/sys/dev/usb/if_smsc.c:1.30	Thu Dec 15 09:28:06 2016
+++ src/sys/dev/usb/if_smsc.c	Wed Jan 31 18:01:55 2018
@@ -1,4 +1,4 @@
-/*	$NetBSD: if_smsc.c,v 1.30 2016/12/15 09:28:06 ozaki-r Exp $	*/
+/*	$NetBSD: if_smsc.c,v 1.30.8.1 2018/01/31 18:01:55 martin Exp $	*/
 
 /*	$OpenBSD: if_smsc.c,v 1.4 2012/09/27 12:38:11 jsg Exp $	*/
 /* $FreeBSD: src/sys/dev/usb/net/if_smsc.c,v 1.1 2012/08/15 04:03:55 gonzo Exp $ */
@@ -1513,7 +1513,7 @@ smsc_rx_list_init(struct smsc_softc *sc)
 		c->sc_mbuf = NULL;
 		if (c->sc_xfer == NULL) {
 			int error = usbd_create_xfer(sc->sc_ep[SMSC_ENDPT_RX],
-			    sc->sc_bufsz, USBD_SHORT_XFER_OK, 0, &c->sc_xfer);
+			    sc->sc_bufsz, 0, 0, &c->sc_xfer);
 			if (error)
 				return error;
 			c->sc_buf = usbd_get_buffer(c->sc_xfer);

Index: src/sys/dev/usb/if_udav.c
diff -u src/sys/dev/usb/if_udav.c:1.51 src/sys/dev/usb/if_udav.c:1.51.8.1
--- src/sys/dev/usb/if_udav.c:1.51	Thu Jan 12 18:26:08 2017
+++ src/sys/dev/usb/if_udav.c	Wed Jan 31 18:01:54 2018
@@ -1,4 +1,4 @@
-/*	$NetBSD: if_udav.c,v 1.51 2017/01/12 18:26:08 maya Exp $	*/
+/*	$NetBSD: if_udav.c,v 1.51.8.1 2018/01/31 18:01:54 martin Exp $	*/
 /*	$nabe: if_udav.c,v 1.3 2003/08/21 16:57:19 nabe Exp $	*/
 
 /*
@@ -45,7 +45,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: if_udav.c,v 1.51 2017/01/12 18:26:08 maya Exp $");
+__KERNEL_RCSID(0, "$NetBSD: if_udav.c,v 1.51.8.1 2018/01/31 18:01:54 martin Exp $");
 
 #ifdef _KERNEL_OPT
 #include "opt_inet.h"
@@ -941,7 +941,7 @@ udav_rx_list_init(struct udav_softc *sc)
 			return ENOBUFS;
 		if (c->udav_xfer == NULL) {
 			int error = usbd_create_xfer(sc->sc_pipe_rx,
-			    UDAV_BUFSZ, USBD_SHORT_XFER_OK, 0, &c->udav_xfer);
+			    UDAV_BUFSZ, 0, 0, &c->udav_xfer);
 			if (error)
 				return error;
 			c->udav_buf = usbd_get_buffer(c->udav_xfer);

Index: src/sys/dev/usb/if_upgt.c
diff -u src/sys/dev/usb/if_upgt.c:1.17 src/sys/dev/usb/if_upgt.c:1.17.8.1
--- src/sys/dev/usb/if_upgt.c:1.17	Fri Nov 25 12:56:29 2016
+++ src/sys/dev/usb/if_upgt.c	Wed Jan 31 18:01:54 2018
@@ -1,4 +1,4 @@
-/*	$NetBSD: if_upgt.c,v 1.17 2016/11/25 12:56:29 skrll Exp $	*/
+/*	$NetBSD: if_upgt.c,v 1.17.8.1 2018/01/31 18:01:54 martin Exp $	*/
 /*	$OpenBSD: if_upgt.c,v 1.49 2010/04/20 22:05:43 tedu Exp $ */
 
 /*
@@ -18,7 +18,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: if_upgt.c,v 1.17 2016/11/25 12:56:29 skrll Exp $");
+__KERNEL_RCSID(0, "$NetBSD: if_upgt.c,v 1.17.8.1 2018/01/31 18:01:54 martin Exp $");
 
 #ifdef _KERNEL_OPT
 #include "opt_usb.h"
@@ -2259,8 +2259,8 @@ upgt_alloc_tx(struct upgt_softc *sc)
 
 		data_tx->sc = sc;
 
-		int err = usbd_create_xfer(sc->sc_tx_pipeh, MCLBYTES, 0, 0,
-		    &data_tx->xfer);
+		int err = usbd_create_xfer(sc->sc_tx_pipeh, MCLBYTES,
+		    USBD_FORCE_SHORT_XFER, 0, &data_tx->xfer);
 		if (err) {
 			aprint_error_dev(sc->sc_dev,
 			    "could not allocate TX xfer\n");
@@ -2281,7 +2281,7 @@ upgt_alloc_rx(struct upgt_softc *sc)
 	data_rx->sc = sc;
 
 	int err = usbd_create_xfer(sc->sc_rx_pipeh, MCLBYTES,
-	    USBD_SHORT_XFER_OK, 0, &data_rx->xfer);
+	    0, 0, &data_rx->xfer);
 	if (err) {
 		aprint_error_dev(sc->sc_dev, "could not allocate RX xfer\n");
 		return err;

Index: src/sys/dev/usb/if_upl.c
diff -u src/sys/dev/usb/if_upl.c:1.59.8.1 src/sys/dev/usb/if_upl.c:1.59.8.2
--- src/sys/dev/usb/if_upl.c:1.59.8.1	Sun Dec 10 10:10:24 2017
+++ src/sys/dev/usb/if_upl.c	Wed Jan 31 18:01:54 2018
@@ -1,4 +1,4 @@
-/*	$NetBSD: if_upl.c,v 1.59.8.1 2017/12/10 10:10:24 snj Exp $	*/
+/*	$NetBSD: if_upl.c,v 1.59.8.2 2018/01/31 18:01:54 martin Exp $	*/
 /*
  * Copyright (c) 2000 The NetBSD Foundation, Inc.
  * All rights reserved.
@@ -34,7 +34,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: if_upl.c,v 1.59.8.1 2017/12/10 10:10:24 snj Exp $");
+__KERNEL_RCSID(0, "$NetBSD: if_upl.c,v 1.59.8.2 2018/01/31 18:01:54 martin Exp $");
 
 #ifdef _KERNEL_OPT
 #include "opt_inet.h"
@@ -442,7 +442,7 @@ upl_rx_list_init(struct upl_softc *sc)
 			return ENOBUFS;
 		if (c->upl_xfer == NULL) {
 			int error = usbd_create_xfer(sc->sc_ep[UPL_ENDPT_RX],
-			    UPL_BUFSZ, USBD_SHORT_XFER_OK, 0, &c->upl_xfer);
+			    UPL_BUFSZ, 0, 0, &c->upl_xfer);
 			if (error)
 				return error;
 			c->upl_buf = usbd_get_buffer(c->upl_xfer);

Index: src/sys/dev/usb/if_ural.c
diff -u src/sys/dev/usb/if_ural.c:1.51.8.1 src/sys/dev/usb/if_ural.c:1.51.8.2
--- src/sys/dev/usb/if_ural.c:1.51.8.1	Tue Aug  1 23:28:41 2017
+++ src/sys/dev/usb/if_ural.c	Wed Jan 31 18:01:54 2018
@@ -1,4 +1,4 @@
-/*	$NetBSD: if_ural.c,v 1.51.8.1 2017/08/01 23:28:41 snj Exp $ */
+/*	$NetBSD: if_ural.c,v 1.51.8.2 2018/01/31 18:01:54 martin Exp $ */
 /*	$FreeBSD: /repoman/r/ncvs/src/sys/dev/usb/if_ural.c,v 1.40 2006/06/02 23:14:40 sam Exp $	*/
 
 /*-
@@ -24,7 +24,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: if_ural.c,v 1.51.8.1 2017/08/01 23:28:41 snj Exp $");
+__KERNEL_RCSID(0, "$NetBSD: if_ural.c,v 1.51.8.2 2018/01/31 18:01:54 martin Exp $");
 
 #ifdef _KERNEL_OPT
 #include "opt_usb.h"
@@ -624,7 +624,7 @@ ural_alloc_rx_list(struct ural_softc *sc
 		data->sc = sc;
 
 		error = usbd_create_xfer(sc->sc_rx_pipeh, MCLBYTES,
-		    USBD_SHORT_XFER_OK, 0, &data->xfer);
+		    0, 0, &data->xfer);
 		if (error) {
 			printf("%s: could not allocate rx xfer\n",
 			    device_xname(sc->sc_dev));

Index: src/sys/dev/usb/if_url.c
diff -u src/sys/dev/usb/if_url.c:1.56 src/sys/dev/usb/if_url.c:1.56.8.1
--- src/sys/dev/usb/if_url.c:1.56	Thu Jan 12 18:26:08 2017
+++ src/sys/dev/usb/if_url.c	Wed Jan 31 18:01:55 2018
@@ -1,4 +1,4 @@
-/*	$NetBSD: if_url.c,v 1.56 2017/01/12 18:26:08 maya Exp $	*/
+/*	$NetBSD: if_url.c,v 1.56.8.1 2018/01/31 18:01:55 martin Exp $	*/
 
 /*
  * Copyright (c) 2001, 2002
@@ -44,7 +44,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: if_url.c,v 1.56 2017/01/12 18:26:08 maya Exp $");
+__KERNEL_RCSID(0, "$NetBSD: if_url.c,v 1.56.8.1 2018/01/31 18:01:55 martin Exp $");
 
 #ifdef _KERNEL_OPT
 #include "opt_inet.h"
@@ -808,7 +808,7 @@ url_rx_list_init(struct url_softc *sc)
 			return ENOBUFS;
 		if (c->url_xfer == NULL) {
 			int error = usbd_create_xfer(sc->sc_pipe_rx, URL_BUFSZ,
-			    USBD_SHORT_XFER_OK, 0, &c->url_xfer);
+			    0, 0, &c->url_xfer);
 			if (error)
 				return error;
 			c->url_buf = usbd_get_buffer(c->url_xfer);

Index: src/sys/dev/usb/if_urndis.c
diff -u src/sys/dev/usb/if_urndis.c:1.16 src/sys/dev/usb/if_urndis.c:1.16.2.1
--- src/sys/dev/usb/if_urndis.c:1.16	Thu Jun  1 02:45:12 2017
+++ src/sys/dev/usb/if_urndis.c	Wed Jan 31 18:01:55 2018
@@ -1,4 +1,4 @@
-/*	$NetBSD: if_urndis.c,v 1.16 2017/06/01 02:45:12 chs Exp $ */
+/*	$NetBSD: if_urndis.c,v 1.16.2.1 2018/01/31 18:01:55 martin Exp $ */
 /*	$OpenBSD: if_urndis.c,v 1.31 2011/07/03 15:47:17 matthew Exp $ */
 
 /*
@@ -21,7 +21,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: if_urndis.c,v 1.16 2017/06/01 02:45:12 chs Exp $");
+__KERNEL_RCSID(0, "$NetBSD: if_urndis.c,v 1.16.2.1 2018/01/31 18:01:55 martin Exp $");
 
 #ifdef _KERNEL_OPT
 #include "opt_usb.h"
@@ -883,7 +883,7 @@ urndis_rx_list_init(struct urndis_softc 
 
 		if (c->sc_xfer == NULL) {
 			int err = usbd_create_xfer(sc->sc_bulkin_pipe,
-			    RNDIS_BUFSZ, USBD_SHORT_XFER_OK, 0, &c->sc_xfer);
+			    RNDIS_BUFSZ, 0, 0, &c->sc_xfer);
 			if (err)
 				return err;
 			c->sc_buf = usbd_get_buffer(c->sc_xfer);

Index: src/sys/dev/usb/if_urtw.c
diff -u src/sys/dev/usb/if_urtw.c:1.13 src/sys/dev/usb/if_urtw.c:1.13.8.1
--- src/sys/dev/usb/if_urtw.c:1.13	Sun Dec  4 10:12:35 2016
+++ src/sys/dev/usb/if_urtw.c	Wed Jan 31 18:01:54 2018
@@ -1,4 +1,4 @@
-/*	$NetBSD: if_urtw.c,v 1.13 2016/12/04 10:12:35 skrll Exp $	*/
+/*	$NetBSD: if_urtw.c,v 1.13.8.1 2018/01/31 18:01:54 martin Exp $	*/
 /*	$OpenBSD: if_urtw.c,v 1.39 2011/07/03 15:47:17 matthew Exp $	*/
 
 /*-
@@ -19,7 +19,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: if_urtw.c,v 1.13 2016/12/04 10:12:35 skrll Exp $");
+__KERNEL_RCSID(0, "$NetBSD: if_urtw.c,v 1.13.8.1 2018/01/31 18:01:54 martin Exp $");
 
 #ifdef _KERNEL_OPT
 #include "opt_usb.h"
@@ -901,7 +901,7 @@ urtw_alloc_rx_data_list(struct urtw_soft
 		data->sc = sc;
 
 		error = usbd_create_xfer(sc->sc_rxpipe, MCLBYTES,
-		    USBD_SHORT_XFER_OK, 0, &data->xfer);
+		    0, 0, &data->xfer);
 		if (error) {
 
 			printf("%s: could not allocate rx xfer\n",

Index: src/sys/dev/usb/if_urtwn.c
diff -u src/sys/dev/usb/if_urtwn.c:1.53.2.1 src/sys/dev/usb/if_urtwn.c:1.53.2.2
--- src/sys/dev/usb/if_urtwn.c:1.53.2.1	Thu Nov 23 13:16:21 2017
+++ src/sys/dev/usb/if_urtwn.c	Wed Jan 31 18:01:54 2018
@@ -1,4 +1,4 @@
-/*	$NetBSD: if_urtwn.c,v 1.53.2.1 2017/11/23 13:16:21 martin Exp $	*/
+/*	$NetBSD: if_urtwn.c,v 1.53.2.2 2018/01/31 18:01:54 martin Exp $	*/
 /*	$OpenBSD: if_urtwn.c,v 1.42 2015/02/10 23:25:46 mpi Exp $	*/
 
 /*-
@@ -25,7 +25,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: if_urtwn.c,v 1.53.2.1 2017/11/23 13:16:21 martin Exp $");
+__KERNEL_RCSID(0, "$NetBSD: if_urtwn.c,v 1.53.2.2 2018/01/31 18:01:54 martin Exp $");
 
 #ifdef _KERNEL_OPT
 #include "opt_inet.h"
@@ -710,7 +710,7 @@ urtwn_alloc_rx_list(struct urtwn_softc *
 			data->sc = sc;	/* Backpointer for callbacks. */
 
 			error = usbd_create_xfer(sc->rx_pipe[j], URTWN_RXBUFSZ,
-			    USBD_SHORT_XFER_OK, 0, &data->xfer);
+			    0, 0, &data->xfer);
 			if (error) {
 				aprint_error_dev(sc->sc_dev,
 				    "could not allocate xfer\n");

Index: src/sys/dev/usb/if_zyd.c
diff -u src/sys/dev/usb/if_zyd.c:1.44 src/sys/dev/usb/if_zyd.c:1.44.2.1
--- src/sys/dev/usb/if_zyd.c:1.44	Thu Jun  1 02:45:12 2017
+++ src/sys/dev/usb/if_zyd.c	Wed Jan 31 18:01:54 2018
@@ -1,5 +1,5 @@
 /*	$OpenBSD: if_zyd.c,v 1.52 2007/02/11 00:08:04 jsg Exp $	*/
-/*	$NetBSD: if_zyd.c,v 1.44 2017/06/01 02:45:12 chs Exp $	*/
+/*	$NetBSD: if_zyd.c,v 1.44.2.1 2018/01/31 18:01:54 martin Exp $	*/
 
 /*-
  * Copyright (c) 2006 by Damien Bergamini <[email protected]>
@@ -23,7 +23,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: if_zyd.c,v 1.44 2017/06/01 02:45:12 chs Exp $");
+__KERNEL_RCSID(0, "$NetBSD: if_zyd.c,v 1.44.2.1 2018/01/31 18:01:54 martin Exp $");
 
 #ifdef _KERNEL_OPT
 #include "opt_usb.h"
@@ -630,7 +630,7 @@ zyd_alloc_rx_list(struct zyd_softc *sc)
 		data->sc = sc;	/* backpointer for callbacks */
 
 		error = usbd_create_xfer(sc->zyd_ep[ZYD_ENDPT_BIN],
-		    ZYX_MAX_RXBUFSZ, USBD_SHORT_XFER_OK, 0, &data->xfer);
+		    ZYX_MAX_RXBUFSZ, 0, 0, &data->xfer);
 		if (error) {
 			printf("%s: could not allocate rx xfer\n",
 			    device_xname(sc->sc_dev));
Index: src/sys/dev/usb/uvideo.c
diff -u src/sys/dev/usb/uvideo.c:1.44 src/sys/dev/usb/uvideo.c:1.44.2.1
--- src/sys/dev/usb/uvideo.c:1.44	Thu Jun  1 02:45:12 2017
+++ src/sys/dev/usb/uvideo.c	Wed Jan 31 18:01:54 2018
@@ -1,4 +1,4 @@
-/*	$NetBSD: uvideo.c,v 1.44 2017/06/01 02:45:12 chs Exp $	*/
+/*	$NetBSD: uvideo.c,v 1.44.2.1 2018/01/31 18:01:54 martin Exp $	*/
 
 /*
  * Copyright (c) 2008 Patrick Mahoney
@@ -42,7 +42,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: uvideo.c,v 1.44 2017/06/01 02:45:12 chs Exp $");
+__KERNEL_RCSID(0, "$NetBSD: uvideo.c,v 1.44.2.1 2018/01/31 18:01:54 martin Exp $");
 
 #ifdef _KERNEL_OPT
 #include "opt_usb.h"
@@ -1467,7 +1467,7 @@ uvideo_stream_start_xfer(struct uvideo_s
 		DPRINTF(("uvideo: pipe %p\n", bx->bx_pipe));
 
 		error = usbd_create_xfer(bx->bx_pipe, vs->vs_max_payload_size,
-		    USBD_SHORT_XFER_OK, 0, &bx->bx_xfer);
+		    0, 0, &bx->bx_xfer);
 		if (error) {
 			DPRINTF(("uvideo: couldn't allocate xfer\n"));
 			return error;

Index: src/sys/dev/usb/irmce.c
diff -u src/sys/dev/usb/irmce.c:1.3 src/sys/dev/usb/irmce.c:1.3.6.1
--- src/sys/dev/usb/irmce.c:1.3	Fri Jan 20 12:25:07 2017
+++ src/sys/dev/usb/irmce.c	Wed Jan 31 18:01:54 2018
@@ -1,4 +1,4 @@
-/* $NetBSD: irmce.c,v 1.3 2017/01/20 12:25:07 maya Exp $ */
+/* $NetBSD: irmce.c,v 1.3.6.1 2018/01/31 18:01:54 martin Exp $ */
 
 /*-
  * Copyright (c) 2011 Jared D. McNeill <[email protected]>
@@ -31,7 +31,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: irmce.c,v 1.3 2017/01/20 12:25:07 maya Exp $");
+__KERNEL_RCSID(0, "$NetBSD: irmce.c,v 1.3.6.1 2018/01/31 18:01:54 martin Exp $");
 
 #include <sys/types.h>
 #include <sys/param.h>
@@ -225,7 +225,7 @@ irmce_attach(device_t parent, device_t s
 
 	int error;
 	error = usbd_create_xfer(sc->sc_bulkin_pipe, sc->sc_bulkin_maxpktsize,
-	    USBD_SHORT_XFER_OK, 0, &sc->sc_bulkin_xfer);
+	    0, 0, &sc->sc_bulkin_xfer);
 	if (error) {
 		goto fail;
 	}

Index: src/sys/dev/usb/pseye.c
diff -u src/sys/dev/usb/pseye.c:1.23 src/sys/dev/usb/pseye.c:1.23.10.1
--- src/sys/dev/usb/pseye.c:1.23	Thu Jul  7 06:55:42 2016
+++ src/sys/dev/usb/pseye.c	Wed Jan 31 18:01:54 2018
@@ -1,4 +1,4 @@
-/* $NetBSD: pseye.c,v 1.23 2016/07/07 06:55:42 msaitoh Exp $ */
+/* $NetBSD: pseye.c,v 1.23.10.1 2018/01/31 18:01:54 martin Exp $ */
 
 /*-
  * Copyright (c) 2008 Jared D. McNeill <[email protected]>
@@ -37,7 +37,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: pseye.c,v 1.23 2016/07/07 06:55:42 msaitoh Exp $");
+__KERNEL_RCSID(0, "$NetBSD: pseye.c,v 1.23.10.1 2018/01/31 18:01:54 martin Exp $");
 
 #include <sys/param.h>
 #include <sys/systm.h>
@@ -245,7 +245,7 @@ pseye_attach(device_t parent, device_t s
 	}
 
 	error = usbd_create_xfer(sc->sc_bulkin_pipe, sc->sc_bulkin_bufferlen,
-	    USBD_SHORT_XFER_OK, 0, &sc->sc_bulkin_xfer);
+	    0, 0, &sc->sc_bulkin_xfer);
 	if (error) {
 		aprint_error_dev(self, "couldn't create transfer\n");
 		pseye_close_pipes(sc);

Index: src/sys/dev/usb/ualea.c
diff -u src/sys/dev/usb/ualea.c:1.6 src/sys/dev/usb/ualea.c:1.6.8.1
--- src/sys/dev/usb/ualea.c:1.6	Wed Apr 19 00:01:38 2017
+++ src/sys/dev/usb/ualea.c	Wed Jan 31 18:01:54 2018
@@ -1,4 +1,4 @@
-/*	$NetBSD: ualea.c,v 1.6 2017/04/19 00:01:38 riastradh Exp $	*/
+/*	$NetBSD: ualea.c,v 1.6.8.1 2018/01/31 18:01:54 martin Exp $	*/
 
 /*-
  * Copyright (c) 2017 The NetBSD Foundation, Inc.
@@ -30,7 +30,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: ualea.c,v 1.6 2017/04/19 00:01:38 riastradh Exp $");
+__KERNEL_RCSID(0, "$NetBSD: ualea.c,v 1.6.8.1 2018/01/31 18:01:54 martin Exp $");
 
 #include <sys/types.h>
 #include <sys/atomic.h>
@@ -47,16 +47,21 @@ __KERNEL_RCSID(0, "$NetBSD: ualea.c,v 1.
 
 struct ualea_softc {
 	device_t		sc_dev;
-	struct usbd_device	*sc_udev;
-	struct usbd_interface	*sc_uif;
 	kmutex_t		sc_lock;
 	krndsource_t		sc_rnd;
 	uint16_t		sc_maxpktsize;
 	struct usbd_pipe	*sc_pipe;
+	/*
+	 * Lock covers:
+	 * - sc_needed
+	 * - sc_attached
+	 * - sc_inflight
+	 * - usbd_transfer(sc_xfer)
+	 */
 	struct usbd_xfer	*sc_xfer;
+	size_t			sc_needed;
 	bool			sc_attached:1;
 	bool			sc_inflight:1;
-	/* lock covers sc_attached, sc_inflight, and usbd_transfer(sc_xfer) */
 };
 
 static int	ualea_match(device_t, cfdata_t, void *);
@@ -88,28 +93,26 @@ ualea_attach(device_t parent, device_t s
 {
 	struct usbif_attach_arg *uiaa = aux;
 	struct ualea_softc *sc = device_private(self);
-	struct usbd_device *udev = uiaa->uiaa_device;
-	struct usbd_interface *uif = uiaa->uiaa_iface;
 	const usb_endpoint_descriptor_t *ed;
 	char *devinfop;
 	usbd_status status;
 
+	/* Print the device info.  */
 	aprint_naive("\n");
 	aprint_normal("\n");
-
-	devinfop = usbd_devinfo_alloc(udev, 0);
+	devinfop = usbd_devinfo_alloc(uiaa->uiaa_device, 0);
 	aprint_normal_dev(self, "%s\n", devinfop);
 	usbd_devinfo_free(devinfop);
 
+	/* Initialize the softc.  */
 	sc->sc_dev = self;
-	sc->sc_udev = udev;
-	sc->sc_uif = uif;
 	mutex_init(&sc->sc_lock, MUTEX_DEFAULT, IPL_SOFTUSB);
 	rndsource_setcb(&sc->sc_rnd, ualea_get, sc);
 	rnd_attach_source(&sc->sc_rnd, device_xname(self), RND_TYPE_RNG,
 	    RND_FLAG_COLLECT_VALUE|RND_FLAG_HASCB);
 
-	ed = usbd_interface2endpoint_descriptor(uif, 0);
+	/* Get endpoint descriptor 0.  Make sure it's bulk-in.  */
+	ed = usbd_interface2endpoint_descriptor(uiaa->uiaa_iface, 0);
 	if (ed == NULL) {
 		aprint_error_dev(sc->sc_dev, "failed to read endpoint 0\n");
 		return;
@@ -120,9 +123,11 @@ ualea_attach(device_t parent, device_t s
 		return;
 	}
 
+	/* Remember the maximum packet size.  */
 	sc->sc_maxpktsize = UGETW(ed->wMaxPacketSize);
 
-	status = usbd_open_pipe(uif, ed->bEndpointAddress,
+	/* Open an exclusive MP-safe pipe for endpoint 0.  */
+	status = usbd_open_pipe(uiaa->uiaa_iface, ed->bEndpointAddress,
 	    USBD_EXCLUSIVE_USE|USBD_MPSAFE, &sc->sc_pipe);
 	if (status) {
 		aprint_error_dev(sc->sc_dev, "failed to open pipe: %d\n",
@@ -130,14 +135,16 @@ ualea_attach(device_t parent, device_t s
 		return;
 	}
 
+	/* Create an xfer of maximum packet size on the pipe.  */
 	status = usbd_create_xfer(sc->sc_pipe, sc->sc_maxpktsize,
-	    USBD_SHORT_XFER_OK, 0, &sc->sc_xfer);
+	    0, 0, &sc->sc_xfer);
 	if (status) {
 		aprint_error_dev(sc->sc_dev, "failed to create xfer: %d\n",
 		    status);
 		return;
 	}
 
+	/* Setup the xfer to call ualea_xfer_done with sc.  */
 	usbd_setup_xfer(sc->sc_xfer, sc, usbd_get_buffer(sc->sc_xfer),
 	    sc->sc_maxpktsize, USBD_SHORT_XFER_OK, USBD_NO_TIMEOUT,
 	    ualea_xfer_done);
@@ -178,24 +185,56 @@ ualea_detach(device_t self, int flags)
 }
 
 static void
-ualea_get(size_t nbytes, void *cookie)
+ualea_xfer(struct ualea_softc *sc)
 {
-	struct ualea_softc *sc = cookie;
 	usbd_status status;
 
-	mutex_enter(&sc->sc_lock);
-	if (!sc->sc_attached)
-		goto out;
-	if (sc->sc_inflight)
-		goto out;
-	sc->sc_inflight = true;
+	KASSERT(mutex_owned(&sc->sc_lock));
+	KASSERT(sc->sc_attached);
+	KASSERT(!sc->sc_inflight);
+
+	/* Do nothing if we need nothing.  */
+	if (sc->sc_needed == 0)
+		return;
+
+	/* Issue xfer or complain if we can't.  */
+	/*
+	 * XXX Does USBD_NORMAL_COMPLETION (= 0) make sense here?  The
+	 * xfer can't complete synchronously because of the lock.
+	 */
 	status = usbd_transfer(sc->sc_xfer);
 	if (status && status != USBD_IN_PROGRESS) {
 		aprint_error_dev(sc->sc_dev, "failed to issue xfer: %d\n",
 		    status);
 		/* We failed -- let someone else have a go.  */
-		sc->sc_inflight = false;
+		return;
 	}
+
+	/* Mark xfer in-flight.  */
+	sc->sc_inflight = true;
+}
+
+static void
+ualea_get(size_t nbytes, void *cookie)
+{
+	struct ualea_softc *sc = cookie;
+
+	mutex_enter(&sc->sc_lock);
+
+	/* Do nothing if not yet attached.  */
+	if (!sc->sc_attached)
+		goto out;
+
+	/* Update how many bytes we need.  */
+	sc->sc_needed = MAX(sc->sc_needed, nbytes);
+
+	/* Do nothing if xfer is already in flight.  */
+	if (sc->sc_inflight)
+		goto out;
+
+	/* Issue xfer.  */
+	ualea_xfer(sc);
+
 out:	mutex_exit(&sc->sc_lock);
 }
 
@@ -209,7 +248,7 @@ ualea_xfer_done(struct usbd_xfer *xfer, 
 	/* Check the transfer status.  */
 	if (status) {
 		aprint_error_dev(sc->sc_dev, "xfer failed: %d\n", status);
-		goto out;
+		return;
 	}
 
 	/* Get and sanity-check the transferred size.  */
@@ -226,9 +265,17 @@ ualea_xfer_done(struct usbd_xfer *xfer, 
 	rnd_add_data(&sc->sc_rnd, pkt, pktsize, NBBY*pktsize);
 
 out:
-	/* Allow subsequent transfers.  */
 	mutex_enter(&sc->sc_lock);
+
+	/* Debit what we contributed from what we need.  */
+	sc->sc_needed -= MIN(sc->sc_needed, pktsize);
+
+	/* Mark xfer done.  */
 	sc->sc_inflight = false;
+
+	/* Reissue xfer if we still need more.  */
+	ualea_xfer(sc);
+
 	mutex_exit(&sc->sc_lock);
 }
 

Index: src/sys/dev/usb/ubt.c
diff -u src/sys/dev/usb/ubt.c:1.59 src/sys/dev/usb/ubt.c:1.59.2.1
--- src/sys/dev/usb/ubt.c:1.59	Thu Jun  1 02:45:12 2017
+++ src/sys/dev/usb/ubt.c	Wed Jan 31 18:01:54 2018
@@ -1,4 +1,4 @@
-/*	$NetBSD: ubt.c,v 1.59 2017/06/01 02:45:12 chs Exp $	*/
+/*	$NetBSD: ubt.c,v 1.59.2.1 2018/01/31 18:01:54 martin Exp $	*/
 
 /*-
  * Copyright (c) 2006 Itronix Inc.
@@ -67,7 +67,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: ubt.c,v 1.59 2017/06/01 02:45:12 chs Exp $");
+__KERNEL_RCSID(0, "$NetBSD: ubt.c,v 1.59.2.1 2018/01/31 18:01:54 martin Exp $");
 
 #ifdef _KERNEL_OPT
 #include "opt_usb.h"
@@ -1016,8 +1016,8 @@ ubt_enable(device_t self)
 
 	/* Commands */
 	struct usbd_pipe *pipe0 = usbd_get_pipe0(sc->sc_udev);
-	error = usbd_create_xfer(pipe0, UBT_BUFSIZ_CMD, 0, 0,
-	    &sc->sc_cmd_xfer);
+	error = usbd_create_xfer(pipe0, UBT_BUFSIZ_CMD, USBD_FORCE_SHORT_XFER,
+	    0, &sc->sc_cmd_xfer);
 	if (error)
 		goto bad;
 	sc->sc_cmd_buf = usbd_get_buffer(sc->sc_cmd_xfer);
@@ -1031,7 +1031,7 @@ ubt_enable(device_t self)
 		goto bad;
 	}
 	error = usbd_create_xfer(sc->sc_aclrd_pipe, UBT_BUFSIZ_ACL,
-	    USBD_SHORT_XFER_OK, 0, &sc->sc_aclrd_xfer);
+	    0, 0, &sc->sc_aclrd_xfer);
 	if (error)
 		goto bad;
 	sc->sc_aclrd_buf = usbd_get_buffer(sc->sc_aclrd_xfer);
@@ -1064,7 +1064,7 @@ ubt_enable(device_t self)
 		for (i = 0 ; i < UBT_NXFERS ; i++) {
 		        error = usbd_create_xfer(sc->sc_scord_pipe,
 			    sc->sc_scord_size * UBT_NFRAMES,
-			    USBD_SHORT_XFER_OK, UBT_NFRAMES,
+			    0, UBT_NFRAMES,
 			    &sc->sc_scord[i].xfer);
 			if (error)
 				goto bad;

Index: src/sys/dev/usb/ucom.c
diff -u src/sys/dev/usb/ucom.c:1.118.8.1 src/sys/dev/usb/ucom.c:1.118.8.2
--- src/sys/dev/usb/ucom.c:1.118.8.1	Thu Nov  2 21:29:52 2017
+++ src/sys/dev/usb/ucom.c	Wed Jan 31 18:01:54 2018
@@ -1,4 +1,4 @@
-/*	$NetBSD: ucom.c,v 1.118.8.1 2017/11/02 21:29:52 snj Exp $	*/
+/*	$NetBSD: ucom.c,v 1.118.8.2 2018/01/31 18:01:54 martin Exp $	*/
 
 /*
  * Copyright (c) 1998, 2000 The NetBSD Foundation, Inc.
@@ -34,7 +34,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: ucom.c,v 1.118.8.1 2017/11/02 21:29:52 snj Exp $");
+__KERNEL_RCSID(0, "$NetBSD: ucom.c,v 1.118.8.2 2018/01/31 18:01:54 martin Exp $");
 
 #ifdef _KERNEL_OPT
 #include "opt_usb.h"
@@ -326,7 +326,7 @@ ucom_attach(device_t parent, device_t se
 	for (ub = &sc->sc_ibuff[0]; ub != &sc->sc_ibuff[UCOM_IN_BUFFS];
 	    ub++) {
 		error = usbd_create_xfer(sc->sc_bulkin_pipe,
-		    sc->sc_ibufsizepad, USBD_SHORT_XFER_OK, 0,
+		    sc->sc_ibufsizepad, 0, 0,
 		    &ub->ub_xfer);
 		if (error)
 			goto fail_1;

Index: src/sys/dev/usb/udsir.c
diff -u src/sys/dev/usb/udsir.c:1.4 src/sys/dev/usb/udsir.c:1.4.2.1
--- src/sys/dev/usb/udsir.c:1.4	Thu Jun  1 02:45:12 2017
+++ src/sys/dev/usb/udsir.c	Wed Jan 31 18:01:55 2018
@@ -1,4 +1,4 @@
-/*	$NetBSD: udsir.c,v 1.4 2017/06/01 02:45:12 chs Exp $	*/
+/*	$NetBSD: udsir.c,v 1.4.2.1 2018/01/31 18:01:55 martin Exp $	*/
 
 /*
  * Copyright (c) 2001 The NetBSD Foundation, Inc.
@@ -30,7 +30,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: udsir.c,v 1.4 2017/06/01 02:45:12 chs Exp $");
+__KERNEL_RCSID(0, "$NetBSD: udsir.c,v 1.4.2.1 2018/01/31 18:01:55 martin Exp $");
 
 #include <sys/param.h>
 #include <sys/device.h>
@@ -344,7 +344,7 @@ udsir_open(void *h, int flag, int mode, 
 		goto bad2;
 	}
 	error = usbd_create_xfer(sc->sc_rd_pipe, sc->sc_rd_maxpsz,
-	    USBD_SHORT_XFER_OK, 0, &sc->sc_rd_xfer);
+	    0, 0, &sc->sc_rd_xfer);
 	if (error)
 		 goto bad3;
 

Index: src/sys/dev/usb/ugen.c
diff -u src/sys/dev/usb/ugen.c:1.134 src/sys/dev/usb/ugen.c:1.134.10.1
--- src/sys/dev/usb/ugen.c:1.134	Thu Jul  7 06:55:42 2016
+++ src/sys/dev/usb/ugen.c	Wed Jan 31 18:01:55 2018
@@ -1,4 +1,4 @@
-/*	$NetBSD: ugen.c,v 1.134 2016/07/07 06:55:42 msaitoh Exp $	*/
+/*	$NetBSD: ugen.c,v 1.134.10.1 2018/01/31 18:01:55 martin Exp $	*/
 
 /*
  * Copyright (c) 1998, 2004 The NetBSD Foundation, Inc.
@@ -37,7 +37,7 @@
 
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: ugen.c,v 1.134 2016/07/07 06:55:42 msaitoh Exp $");
+__KERNEL_RCSID(0, "$NetBSD: ugen.c,v 1.134.10.1 2018/01/31 18:01:55 martin Exp $");
 
 #ifdef _KERNEL_OPT
 #include "opt_compat_netbsd.h"
@@ -720,8 +720,7 @@ ugen_do_read(struct ugen_softc *sc, int 
 			break;
 		}
 		error = usbd_create_xfer(sce->pipeh, UGEN_BBSIZE,
-		    sce->state & UGEN_SHORT_OK ? USBD_SHORT_XFER_OK : 0,
-		    0, &xfer);
+		    0, 0, &xfer);
 		if (error)
 			return error;
 		while ((n = min(UGEN_BBSIZE, uio->uio_resid)) != 0) {
@@ -933,8 +932,7 @@ ugen_do_write(struct ugen_softc *sc, int
 			break;
 		}
 		error = usbd_create_xfer(sce->pipeh, UGEN_BBSIZE,
-		    sce->state & UGEN_SHORT_OK ? USBD_SHORT_XFER_OK : 0,
-		    0, &xfer);
+		    0, 0, &xfer);
 		if (error)
 			return error;
 		while ((n = min(UGEN_BBSIZE, uio->uio_resid)) != 0) {

Index: src/sys/dev/usb/uhso.c
diff -u src/sys/dev/usb/uhso.c:1.25 src/sys/dev/usb/uhso.c:1.25.8.1
--- src/sys/dev/usb/uhso.c:1.25	Wed Jan 11 22:09:38 2017
+++ src/sys/dev/usb/uhso.c	Wed Jan 31 18:01:54 2018
@@ -1,4 +1,4 @@
-/*	$NetBSD: uhso.c,v 1.25 2017/01/11 22:09:38 maya Exp $	*/
+/*	$NetBSD: uhso.c,v 1.25.8.1 2018/01/31 18:01:54 martin Exp $	*/
 
 /*-
  * Copyright (c) 2009 Iain Hibbert
@@ -37,7 +37,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: uhso.c,v 1.25 2017/01/11 22:09:38 maya Exp $");
+__KERNEL_RCSID(0, "$NetBSD: uhso.c,v 1.25.8.1 2018/01/31 18:01:54 martin Exp $");
 
 #ifdef _KERNEL_OPT
 #include "opt_inet.h"
@@ -1163,7 +1163,7 @@ uhso_bulk_init(struct uhso_port *hp)
 	}
 
 	int error = usbd_create_xfer(hp->hp_rpipe, hp->hp_rsize,
-	    USBD_SHORT_XFER_OK, 0, &hp->hp_rxfer);
+	    0, 0, &hp->hp_rxfer);
 	if (error)
 		return error;
 

Index: src/sys/dev/usb/uirda.c
diff -u src/sys/dev/usb/uirda.c:1.41 src/sys/dev/usb/uirda.c:1.41.8.1
--- src/sys/dev/usb/uirda.c:1.41	Fri Nov 25 12:56:29 2016
+++ src/sys/dev/usb/uirda.c	Wed Jan 31 18:01:54 2018
@@ -1,4 +1,4 @@
-/*	$NetBSD: uirda.c,v 1.41 2016/11/25 12:56:29 skrll Exp $	*/
+/*	$NetBSD: uirda.c,v 1.41.8.1 2018/01/31 18:01:54 martin Exp $	*/
 
 /*
  * Copyright (c) 2001 The NetBSD Foundation, Inc.
@@ -30,7 +30,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: uirda.c,v 1.41 2016/11/25 12:56:29 skrll Exp $");
+__KERNEL_RCSID(0, "$NetBSD: uirda.c,v 1.41.8.1 2018/01/31 18:01:54 martin Exp $");
 
 #ifdef _KERNEL_OPT
 #include "opt_usb.h"
@@ -395,7 +395,7 @@ uirda_open(void *h, int flag, int mode,
 		goto bad2;
 	}
 	error = usbd_create_xfer(sc->sc_rd_pipe,
-	    IRDA_MAX_FRAME_SIZE + sc->sc_hdszi, USBD_SHORT_XFER_OK, 0,
+	    IRDA_MAX_FRAME_SIZE + sc->sc_hdszi, 0, 0,
 	    &sc->sc_rd_xfer);
 	if (error)
 		goto bad3;

Index: src/sys/dev/usb/ulpt.c
diff -u src/sys/dev/usb/ulpt.c:1.98 src/sys/dev/usb/ulpt.c:1.98.8.1
--- src/sys/dev/usb/ulpt.c:1.98	Fri Nov 25 12:56:29 2016
+++ src/sys/dev/usb/ulpt.c	Wed Jan 31 18:01:55 2018
@@ -1,4 +1,4 @@
-/*	$NetBSD: ulpt.c,v 1.98 2016/11/25 12:56:29 skrll Exp $	*/
+/*	$NetBSD: ulpt.c,v 1.98.8.1 2018/01/31 18:01:55 martin Exp $	*/
 
 /*
  * Copyright (c) 1998, 2003 The NetBSD Foundation, Inc.
@@ -35,7 +35,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: ulpt.c,v 1.98 2016/11/25 12:56:29 skrll Exp $");
+__KERNEL_RCSID(0, "$NetBSD: ulpt.c,v 1.98.8.1 2018/01/31 18:01:55 martin Exp $");
 
 #ifdef _KERNEL_OPT
 #include "opt_usb.h"
@@ -497,7 +497,7 @@ ulptopen(dev_t dev, int flag, int mode, 
 			goto err2;
 		}
 		error = usbd_create_xfer(sc->sc_in_pipe, ULPT_BSIZE,
-		    USBD_SHORT_XFER_OK, 0, &sc->sc_in_xfer);
+		    0, 0, &sc->sc_in_xfer);
 		if (error)
 			goto err3;
 		sc->sc_in_buf = usbd_get_buffer(sc->sc_in_xfer);

Index: src/sys/dev/usb/umass.c
diff -u src/sys/dev/usb/umass.c:1.158.4.1 src/sys/dev/usb/umass.c:1.158.4.2
--- src/sys/dev/usb/umass.c:1.158.4.1	Thu Nov  2 21:29:52 2017
+++ src/sys/dev/usb/umass.c	Wed Jan 31 18:01:54 2018
@@ -1,4 +1,4 @@
-/*	$NetBSD: umass.c,v 1.158.4.1 2017/11/02 21:29:52 snj Exp $	*/
+/*	$NetBSD: umass.c,v 1.158.4.2 2018/01/31 18:01:54 martin Exp $	*/
 
 /*
  * Copyright (c) 2003 The NetBSD Foundation, Inc.
@@ -124,7 +124,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: umass.c,v 1.158.4.1 2017/11/02 21:29:52 snj Exp $");
+__KERNEL_RCSID(0, "$NetBSD: umass.c,v 1.158.4.2 2018/01/31 18:01:54 martin Exp $");
 
 #ifdef _KERNEL_OPT
 #include "opt_usb.h"
@@ -588,27 +588,27 @@ umass_attach(device_t parent, device_t s
 	switch (sc->sc_wire) {
 	case UMASS_WPROTO_BBB:
 		err = usbd_create_xfer(sc->sc_pipe[UMASS_BULKIN],
-		    UMASS_MAX_TRANSFER_SIZE, USBD_SHORT_XFER_OK, 0,
+		    UMASS_MAX_TRANSFER_SIZE, 0, 0,
 		    &sc->transfer_xfer[XFER_BBB_DATAIN]);
 		if (err)
 			goto fail_create;
 		err = usbd_create_xfer(sc->sc_pipe[UMASS_BULKOUT],
-		    UMASS_MAX_TRANSFER_SIZE, USBD_SHORT_XFER_OK, 0,
+		    UMASS_MAX_TRANSFER_SIZE, 0, 0,
 		    &sc->transfer_xfer[XFER_BBB_DATAOUT]);
 		if (err)
 			goto fail_create;
 		err = usbd_create_xfer(sc->sc_pipe[UMASS_BULKOUT],
-		    UMASS_BBB_CBW_SIZE, USBD_SHORT_XFER_OK, 0,
+		    UMASS_BBB_CBW_SIZE, 0, 0,
 		    &sc->transfer_xfer[XFER_BBB_CBW]);
 		if (err)
 			goto fail_create;
 		err = usbd_create_xfer(sc->sc_pipe[UMASS_BULKIN],
-		    UMASS_BBB_CSW_SIZE, USBD_SHORT_XFER_OK, 0,
+		    UMASS_BBB_CSW_SIZE, 0, 0,
 		    &sc->transfer_xfer[XFER_BBB_CSW1]);
 		if (err)
 			goto fail_create;
 		err = usbd_create_xfer(sc->sc_pipe[UMASS_BULKIN],
-		    UMASS_BBB_CSW_SIZE, USBD_SHORT_XFER_OK, 0,
+		    UMASS_BBB_CSW_SIZE, 0, 0,
 		    &sc->transfer_xfer[XFER_BBB_CSW2]);
 		if (err)
 			goto fail_create;
@@ -640,7 +640,7 @@ umass_attach(device_t parent, device_t s
 		if (err)
 			goto fail_create;
 		err = usbd_create_xfer(sc->sc_pipe[UMASS_BULKIN],
-		    UMASS_MAX_TRANSFER_SIZE, USBD_SHORT_XFER_OK, 0,
+		    UMASS_MAX_TRANSFER_SIZE, 0, 0,
 		    &sc->transfer_xfer[XFER_CBI_DATAIN]);
 		if (err)
 			goto fail_create;

Index: src/sys/dev/usb/umidi.c
diff -u src/sys/dev/usb/umidi.c:1.73 src/sys/dev/usb/umidi.c:1.73.2.1
--- src/sys/dev/usb/umidi.c:1.73	Thu Jun  1 02:45:12 2017
+++ src/sys/dev/usb/umidi.c	Wed Jan 31 18:01:54 2018
@@ -1,4 +1,4 @@
-/*	$NetBSD: umidi.c,v 1.73 2017/06/01 02:45:12 chs Exp $	*/
+/*	$NetBSD: umidi.c,v 1.73.2.1 2018/01/31 18:01:54 martin Exp $	*/
 
 /*
  * Copyright (c) 2001, 2012, 2014 The NetBSD Foundation, Inc.
@@ -32,7 +32,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: umidi.c,v 1.73 2017/06/01 02:45:12 chs Exp $");
+__KERNEL_RCSID(0, "$NetBSD: umidi.c,v 1.73.2.1 2018/01/31 18:01:54 martin Exp $");
 
 #ifdef _KERNEL_OPT
 #include "opt_usb.h"
@@ -691,7 +691,7 @@ alloc_pipe(struct umidi_endpoint *ep)
 	if (err)
 		goto quit;
 	int error = usbd_create_xfer(ep->pipe, ep->buffer_size,
-	    USBD_SHORT_XFER_OK, 0, &ep->xfer);
+	    0, 0, &ep->xfer);
 	if (error) {
 		usbd_close_pipe(ep->pipe);
 		return USBD_NOMEM;

Index: src/sys/dev/usb/uscanner.c
diff -u src/sys/dev/usb/uscanner.c:1.80 src/sys/dev/usb/uscanner.c:1.80.8.1
--- src/sys/dev/usb/uscanner.c:1.80	Sun Dec  4 10:12:35 2016
+++ src/sys/dev/usb/uscanner.c	Wed Jan 31 18:01:55 2018
@@ -1,4 +1,4 @@
-/*	$NetBSD: uscanner.c,v 1.80 2016/12/04 10:12:35 skrll Exp $	*/
+/*	$NetBSD: uscanner.c,v 1.80.8.1 2018/01/31 18:01:55 martin Exp $	*/
 
 /*
  * Copyright (c) 2000 The NetBSD Foundation, Inc.
@@ -32,7 +32,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: uscanner.c,v 1.80 2016/12/04 10:12:35 skrll Exp $");
+__KERNEL_RCSID(0, "$NetBSD: uscanner.c,v 1.80.8.1 2018/01/31 18:01:55 martin Exp $");
 
 #ifdef _KERNEL_OPT
 #include "opt_usb.h"
@@ -414,7 +414,7 @@ uscanneropen(dev_t dev, int flag, int mo
 	}
 
 	int error = usbd_create_xfer(sc->sc_bulkin_pipe, USCANNER_BUFFERSIZE,
-	    USBD_SHORT_XFER_OK, 0, &sc->sc_bulkin_xfer);
+	    0, 0, &sc->sc_bulkin_xfer);
 	if (error) {
 		uscanner_do_close(sc);
 		return error;

Index: src/sys/dev/usb/usscanner.c
diff -u src/sys/dev/usb/usscanner.c:1.42 src/sys/dev/usb/usscanner.c:1.42.8.1
--- src/sys/dev/usb/usscanner.c:1.42	Sun Dec  4 10:12:35 2016
+++ src/sys/dev/usb/usscanner.c	Wed Jan 31 18:01:54 2018
@@ -1,4 +1,4 @@
-/*	$NetBSD: usscanner.c,v 1.42 2016/12/04 10:12:35 skrll Exp $	*/
+/*	$NetBSD: usscanner.c,v 1.42.8.1 2018/01/31 18:01:54 martin Exp $	*/
 
 /*
  * Copyright (c) 2001 The NetBSD Foundation, Inc.
@@ -47,7 +47,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: usscanner.c,v 1.42 2016/12/04 10:12:35 skrll Exp $");
+__KERNEL_RCSID(0, "$NetBSD: usscanner.c,v 1.42.8.1 2018/01/31 18:01:54 martin Exp $");
 
 #ifdef _KERNEL_OPT
 #include "opt_usb.h"
@@ -281,8 +281,7 @@ usscanner_attach(device_t parent, device
 
 	sc->sc_cmd_buffer = usbd_get_buffer(sc->sc_cmd_xfer);
 
-	error = usbd_create_xfer(sc->sc_intr_pipe, 1, USBD_SHORT_XFER_OK,
-	    0, &sc->sc_intr_xfer);
+	error = usbd_create_xfer(sc->sc_intr_pipe, 1, 0, 0, &sc->sc_intr_xfer);
 	if (error) {
 		aprint_error_dev(self, "alloc intr xfer failed, error=%d\n",
 		    error);
@@ -291,7 +290,7 @@ usscanner_attach(device_t parent, device
 	}
 
 	error = usbd_create_xfer(sc->sc_in_pipe, USSCANNER_MAX_TRANSFER_SIZE,
-	    USBD_SHORT_XFER_OK, 0, &sc->sc_datain_xfer);
+	    0, 0, &sc->sc_datain_xfer);
 	if (error) {
 		aprint_error_dev(self, "alloc data xfer failed, error=%d\n",
 		    error);
@@ -301,7 +300,7 @@ usscanner_attach(device_t parent, device
 	sc->sc_datain_buffer = usbd_get_buffer(sc->sc_datain_xfer);
 
 	error = usbd_create_xfer(sc->sc_out_pipe, USSCANNER_MAX_TRANSFER_SIZE,
-	    USBD_SHORT_XFER_OK, 0, &sc->sc_dataout_xfer);
+	    0, 0, &sc->sc_dataout_xfer);
 	if (error) {
 		aprint_error_dev(self, "alloc data xfer failed, err=%d\n", err);
 		usscanner_cleanup(sc);

Index: src/sys/dev/usb/ustir.c
diff -u src/sys/dev/usb/ustir.c:1.37 src/sys/dev/usb/ustir.c:1.37.2.1
--- src/sys/dev/usb/ustir.c:1.37	Thu Jun  1 02:45:12 2017
+++ src/sys/dev/usb/ustir.c	Wed Jan 31 18:01:54 2018
@@ -1,4 +1,4 @@
-/*	$NetBSD: ustir.c,v 1.37 2017/06/01 02:45:12 chs Exp $	*/
+/*	$NetBSD: ustir.c,v 1.37.2.1 2018/01/31 18:01:54 martin Exp $	*/
 
 /*
  * Copyright (c) 2001 The NetBSD Foundation, Inc.
@@ -30,7 +30,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: ustir.c,v 1.37 2017/06/01 02:45:12 chs Exp $");
+__KERNEL_RCSID(0, "$NetBSD: ustir.c,v 1.37.2.1 2018/01/31 18:01:54 martin Exp $");
 
 #ifdef _KERNEL_OPT
 #include "opt_usb.h"
@@ -711,7 +711,7 @@ ustir_open(void *h, int flag, int mode,
 		goto bad2;
 	}
 	error = usbd_create_xfer(sc->sc_rd_pipe, IRDA_MAX_FRAME_SIZE,
-	    USBD_SHORT_XFER_OK, 0, &sc->sc_rd_xfer);
+	    0, 0, &sc->sc_rd_xfer);
 	if (error)
 		goto bad3;
 	sc->sc_rd_buf = usbd_get_buffer(sc->sc_rd_xfer);

Index: src/sys/dev/usb/utoppy.c
diff -u src/sys/dev/usb/utoppy.c:1.29 src/sys/dev/usb/utoppy.c:1.29.2.1
--- src/sys/dev/usb/utoppy.c:1.29	Thu Jun  1 02:45:12 2017
+++ src/sys/dev/usb/utoppy.c	Wed Jan 31 18:01:54 2018
@@ -1,4 +1,4 @@
-/*	$NetBSD: utoppy.c,v 1.29 2017/06/01 02:45:12 chs Exp $	*/
+/*	$NetBSD: utoppy.c,v 1.29.2.1 2018/01/31 18:01:54 martin Exp $	*/
 
 /*-
  * Copyright (c) 2006 The NetBSD Foundation, Inc.
@@ -30,7 +30,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: utoppy.c,v 1.29 2017/06/01 02:45:12 chs Exp $");
+__KERNEL_RCSID(0, "$NetBSD: utoppy.c,v 1.29.2.1 2018/01/31 18:01:54 martin Exp $");
 
 #ifdef _KERNEL_OPT
 #include "opt_usb.h"
@@ -319,7 +319,7 @@ utoppy_attach(device_t parent, device_t 
 	}
 
 	error = usbd_create_xfer(sc->sc_in_pipe, UTOPPY_FRAG_SIZE,
-	    USBD_SHORT_XFER_OK, 0, &sc->sc_in_xfer);
+	    0, 0, &sc->sc_in_xfer);
 	if (error) {
 		aprint_error_dev(self, "could not allocate bulk in xfer\n");
 		goto fail1;

Reply via email to