git: bff8730c24b2 - main - umass: make *_transform() return a bool

From: Warner Losh <imp_at_FreeBSD.org>
Date: Wed, 07 May 2025 21:37:10 UTC
The branch main has been updated by imp:

URL: https://cgit.FreeBSD.org/src/commit/?id=bff8730c24b25af4f1d1dc6fee9240c74f60fab5

commit bff8730c24b25af4f1d1dc6fee9240c74f60fab5
Author:     Warner Losh <imp@FreeBSD.org>
AuthorDate: 2025-05-07 16:07:27 +0000
Commit:     Warner Losh <imp@FreeBSD.org>
CommitDate: 2025-05-07 21:36:54 +0000

    umass: make *_transform() return a bool
    
    These are now boolean, so make them return a boolean.
    
    Sponsored by:           Netflix
    Differential Revision:  https://reviews.freebsd.org/D49470
---
 sys/dev/usb/storage/umass.c | 63 ++++++++++++++++++++++-----------------------
 1 file changed, 31 insertions(+), 32 deletions(-)

diff --git a/sys/dev/usb/storage/umass.c b/sys/dev/usb/storage/umass.c
index 9878635f7e59..f7df9f49257e 100644
--- a/sys/dev/usb/storage/umass.c
+++ b/sys/dev/usb/storage/umass.c
@@ -299,7 +299,7 @@ typedef void (umass_callback_t)(struct umass_softc *sc, union ccb *ccb,
 #define	STATUS_CMD_FAILED	2	/* transfer was ok, command failed */
 #define	STATUS_WIRE_FAILED	3	/* couldn't even get command across */
 
-typedef uint8_t (umass_transform_t)(struct umass_softc *sc, uint8_t *cmd_ptr,
+typedef bool (umass_transform_t)(struct umass_softc *sc, uint8_t *cmd_ptr,
     	uint8_t cmd_len);
 
 /* Wire and command protocol */
@@ -490,13 +490,12 @@ static void	umass_cam_sense_cb(struct umass_softc *, union ccb *, uint32_t,
 static void	umass_cam_quirk_cb(struct umass_softc *, union ccb *, uint32_t,
 		    uint8_t);
 static void	umass_cam_illegal_request(union ccb *ccb);
-static uint8_t	umass_scsi_transform(struct umass_softc *, uint8_t *, uint8_t);
-static uint8_t	umass_rbc_transform(struct umass_softc *, uint8_t *, uint8_t);
-static uint8_t	umass_ufi_transform(struct umass_softc *, uint8_t *, uint8_t);
-static uint8_t	umass_atapi_transform(struct umass_softc *, uint8_t *,
-		    uint8_t);
-static uint8_t	umass_no_transform(struct umass_softc *, uint8_t *, uint8_t);
-static uint8_t	umass_std_transform(struct umass_softc *, union ccb *, uint8_t
+static bool	umass_scsi_transform(struct umass_softc *, uint8_t *, uint8_t);
+static bool	umass_rbc_transform(struct umass_softc *, uint8_t *, uint8_t);
+static bool	umass_ufi_transform(struct umass_softc *, uint8_t *, uint8_t);
+static bool	umass_atapi_transform(struct umass_softc *, uint8_t *, uint8_t);
+static bool	umass_no_transform(struct umass_softc *, uint8_t *, uint8_t);
+static bool	umass_std_transform(struct umass_softc *, union ccb *, uint8_t
 		    *, uint8_t);
 
 #ifdef USB_DEBUG
@@ -2677,7 +2676,7 @@ umass_cam_quirk_cb(struct umass_softc *sc, union ccb *ccb, uint32_t residue,
  * SCSI specific functions
  */
 
-static uint8_t
+static bool
 umass_scsi_transform(struct umass_softc *sc, uint8_t *cmd_ptr,
     uint8_t cmd_len)
 {
@@ -2685,7 +2684,7 @@ umass_scsi_transform(struct umass_softc *sc, uint8_t *cmd_ptr,
 	    (cmd_len > sizeof(sc->sc_transfer.cmd_data))) {
 		DPRINTF(sc, UDMASS_SCSI, "Invalid command "
 		    "length: %d bytes\n", cmd_len);
-		return (0);		/* failure */
+		return (false);		/* failure */
 	}
 	sc->sc_transfer.cmd_len = cmd_len;
 
@@ -2697,7 +2696,7 @@ umass_scsi_transform(struct umass_softc *sc, uint8_t *cmd_ptr,
 			memset(sc->sc_transfer.cmd_data, 0, cmd_len);
 			sc->sc_transfer.cmd_data[0] = START_STOP_UNIT;
 			sc->sc_transfer.cmd_data[4] = SSS_START;
-			return (1);
+			return (true);
 		}
 		break;
 
@@ -2709,23 +2708,23 @@ umass_scsi_transform(struct umass_softc *sc, uint8_t *cmd_ptr,
 		if (sc->sc_quirks & FORCE_SHORT_INQUIRY) {
 			memcpy(sc->sc_transfer.cmd_data, cmd_ptr, cmd_len);
 			sc->sc_transfer.cmd_data[4] = SHORT_INQUIRY_LENGTH;
-			return (1);
+			return (true);
 		}
 		break;
 	}
 
 	memcpy(sc->sc_transfer.cmd_data, cmd_ptr, cmd_len);
-	return (1);
+	return (true);
 }
 
-static uint8_t
+static bool
 umass_rbc_transform(struct umass_softc *sc, uint8_t *cmd_ptr, uint8_t cmd_len)
 {
 	if ((cmd_len == 0) ||
 	    (cmd_len > sizeof(sc->sc_transfer.cmd_data))) {
 		DPRINTF(sc, UDMASS_SCSI, "Invalid command "
 		    "length: %d bytes\n", cmd_len);
-		return (0);		/* failure */
+		return (false);		/* failure */
 	}
 	switch (cmd_ptr[0]) {
 		/* these commands are defined in RBC: */
@@ -2756,17 +2755,17 @@ umass_rbc_transform(struct umass_softc *sc, uint8_t *cmd_ptr, uint8_t cmd_len)
 			cmd_len = 12;
 		}
 		sc->sc_transfer.cmd_len = cmd_len;
-		return (1);		/* success */
+		return (true);		/* success */
 
 		/* All other commands are not legal in RBC */
 	default:
 		DPRINTF(sc, UDMASS_SCSI, "Unsupported RBC "
 		    "command 0x%02x\n", cmd_ptr[0]);
-		return (0);		/* failure */
+		return (false);		/* failure */
 	}
 }
 
-static uint8_t
+static bool
 umass_ufi_transform(struct umass_softc *sc, uint8_t *cmd_ptr,
     uint8_t cmd_len)
 {
@@ -2774,7 +2773,7 @@ umass_ufi_transform(struct umass_softc *sc, uint8_t *cmd_ptr,
 	    (cmd_len > sizeof(sc->sc_transfer.cmd_data))) {
 		DPRINTF(sc, UDMASS_SCSI, "Invalid command "
 		    "length: %d bytes\n", cmd_len);
-		return (0);		/* failure */
+		return (false);		/* failure */
 	}
 	/* An UFI command is always 12 bytes in length */
 	sc->sc_transfer.cmd_len = UFI_COMMAND_LENGTH;
@@ -2829,21 +2828,21 @@ umass_ufi_transform(struct umass_softc *sc, uint8_t *cmd_ptr,
 		 * know what to do.
 		 */
 	case SYNCHRONIZE_CACHE:
-		return (0);
+		return (false);
 	default:
 		DPRINTF(sc, UDMASS_SCSI, "Unsupported UFI "
 		    "command 0x%02x\n", cmd_ptr[0]);
-		return (0);		/* failure */
+		return (false);		/* failure */
 	}
 
 	memcpy(sc->sc_transfer.cmd_data, cmd_ptr, cmd_len);
-	return (1);			/* success */
+	return (true);			/* success */
 }
 
 /*
  * 8070i (ATAPI) specific functions
  */
-static uint8_t
+static bool
 umass_atapi_transform(struct umass_softc *sc, uint8_t *cmd_ptr,
     uint8_t cmd_len)
 {
@@ -2851,7 +2850,7 @@ umass_atapi_transform(struct umass_softc *sc, uint8_t *cmd_ptr,
 	    (cmd_len > sizeof(sc->sc_transfer.cmd_data))) {
 		DPRINTF(sc, UDMASS_SCSI, "Invalid command "
 		    "length: %d bytes\n", cmd_len);
-		return (0);		/* failure */
+		return (false);		/* failure */
 	}
 	/* An ATAPI command is always 12 bytes in length. */
 	sc->sc_transfer.cmd_len = ATAPI_COMMAND_LENGTH;
@@ -2874,7 +2873,7 @@ umass_atapi_transform(struct umass_softc *sc, uint8_t *cmd_ptr,
 			memcpy(sc->sc_transfer.cmd_data, cmd_ptr, cmd_len);
 
 			sc->sc_transfer.cmd_data[4] = SHORT_INQUIRY_LENGTH;
-			return (1);
+			return (true);
 		}
 		break;
 
@@ -2884,7 +2883,7 @@ umass_atapi_transform(struct umass_softc *sc, uint8_t *cmd_ptr,
 			    "to START_UNIT\n");
 			sc->sc_transfer.cmd_data[0] = START_STOP_UNIT;
 			sc->sc_transfer.cmd_data[4] = SSS_START;
-			return (1);
+			return (true);
 		}
 		break;
 
@@ -2933,29 +2932,29 @@ umass_atapi_transform(struct umass_softc *sc, uint8_t *cmd_ptr,
 	}
 
 	memcpy(sc->sc_transfer.cmd_data, cmd_ptr, cmd_len);
-	return (1);			/* success */
+	return (true);			/* success */
 }
 
-static uint8_t
+static bool
 umass_no_transform(struct umass_softc *sc, uint8_t *cmd,
     uint8_t cmdlen)
 {
-	return (0);			/* failure */
+	return (false);			/* failure */
 }
 
-static uint8_t
+static bool
 umass_std_transform(struct umass_softc *sc, union ccb *ccb,
     uint8_t *cmd, uint8_t cmdlen)
 {
 	uint8_t retval;
 
 	if (sc->sc_transform(sc, cmd, cmdlen))
-		return (1);	/* Execute command */
+		return (true);	/* Execute command */
 
 	xpt_freeze_devq(ccb->ccb_h.path, 1);
 	ccb->ccb_h.status = CAM_REQ_INVALID | CAM_DEV_QFRZN;
 	xpt_done(ccb);
-	return (0);		/* Already failed */
+	return (false);		/* Already failed -- don't submit */
 }
 
 #ifdef USB_DEBUG