From owner-p4-projects@FreeBSD.ORG Sat Mar 21 10:35:39 2009 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 652411065674; Sat, 21 Mar 2009 10:35:38 +0000 (UTC) Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 18EF6106566B for ; Sat, 21 Mar 2009 10:35:38 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id E0CCA8FC08 for ; Sat, 21 Mar 2009 10:35:37 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.3/8.14.3) with ESMTP id n2LAZbER079716 for ; Sat, 21 Mar 2009 10:35:37 GMT (envelope-from hselasky@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.3/8.14.3/Submit) id n2LAZbFF079714 for perforce@freebsd.org; Sat, 21 Mar 2009 10:35:37 GMT (envelope-from hselasky@FreeBSD.org) Date: Sat, 21 Mar 2009 10:35:37 GMT Message-Id: <200903211035.n2LAZbFF079714@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to hselasky@FreeBSD.org using -f From: Hans Petter Selasky To: Perforce Change Reviews Cc: Subject: PERFORCE change 159562 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 21 Mar 2009 10:35:40 -0000 http://perforce.freebsd.org/chv.cgi?CH=159562 Change 159562 by hselasky@hselasky_laptop001 on 2009/03/21 10:34:44 USB storage: - Compile fix for 64-bit target. Affected files ... .. //depot/projects/usb/src/sys/dev/usb/storage/ustorage_fs.c#7 edit Differences ... ==== //depot/projects/usb/src/sys/dev/usb/storage/ustorage_fs.c#7 (text+ko) ==== @@ -1583,6 +1583,7 @@ uint8_t error = 1; uint8_t i; uint32_t temp; + const uint32_t mask9 = (0xFFFFFFFFUL >> 9) << 9; /* set default data transfer pointer */ sc->sc_transfer.data_ptr = sc->sc_qdata; @@ -1686,7 +1687,7 @@ i = sc->sc_transfer.cmd_data[4]; sc->sc_transfer.cmd_dir = DIR_WRITE; temp = ((i == 0) ? 256UL : i); - error = ustorage_fs_min_len(sc, temp << 9, 0 - (1UL << 9)); + error = ustorage_fs_min_len(sc, temp << 9, mask9); if (error) { break; } @@ -1702,7 +1703,7 @@ case SC_READ_10: sc->sc_transfer.cmd_dir = DIR_WRITE; temp = get_be16(&sc->sc_transfer.cmd_data[7]); - error = ustorage_fs_min_len(sc, temp << 9, 0 - (1UL << 9)); + error = ustorage_fs_min_len(sc, temp << 9, mask9); if (error) { break; } @@ -1724,7 +1725,7 @@ error = 1; break; } - error = ustorage_fs_min_len(sc, temp << 9, 0 - (1UL << 9)); + error = ustorage_fs_min_len(sc, temp << 9, mask9); if (error) { break; } @@ -1838,7 +1839,7 @@ i = sc->sc_transfer.cmd_data[4]; sc->sc_transfer.cmd_dir = DIR_READ; temp = ((i == 0) ? 256UL : i); - error = ustorage_fs_min_len(sc, temp << 9, 0 - (1UL << 9)); + error = ustorage_fs_min_len(sc, temp << 9, mask9); if (error) { break; } @@ -1854,7 +1855,7 @@ case SC_WRITE_10: sc->sc_transfer.cmd_dir = DIR_READ; temp = get_be16(&sc->sc_transfer.cmd_data[7]); - error = ustorage_fs_min_len(sc, temp << 9, 0 - (1UL << 9)); + error = ustorage_fs_min_len(sc, temp << 9, mask9); if (error) { break; } @@ -1870,13 +1871,13 @@ case SC_WRITE_12: sc->sc_transfer.cmd_dir = DIR_READ; temp = get_be32(&sc->sc_transfer.cmd_data[6]); - if (temp >= (1UL << (32 - 9))) { + if (temp > (mask9 >> 9)) { /* numerical overflow */ sc->sc_csw.bCSWStatus = CSWSTATUS_FAILED; error = 1; break; } - error = ustorage_fs_min_len(sc, temp << 9, 0 - (1UL << 9)); + error = ustorage_fs_min_len(sc, temp << 9, mask9); if (error) { break; }