--- shuttle_usbat.c.orig Sat Jun 2 06:58:48 2001 +++ shuttle_usbat.c Sat Jun 2 07:28:30 2001 @@ -675,9 +675,15 @@ len = short_pack(data[7+9], data[7+8]); len <<= 16; len |= data[7+7]; + US_DEBUGP("handle_read10: GPCMD_READ_CD: len %d\n", len); srb->transfersize = srb->request_bufflen/len; } + if (!srb->transfersize) { + srb->transfersize = 2048; /* A guess */ + US_DEBUGP("handle_read10: transfersize 0, forcing %d\n", + srb->transfersize); + } len = (65535/srb->transfersize) * srb->transfersize; US_DEBUGP("Max read is %d bytes\n", len);