mirror of
https://github.com/GOSTSec/sgminer
synced 2025-01-26 22:44:21 +00:00
usbutils use a heap buffer for bulk read rather than stack
This commit is contained in:
parent
8b43e79f42
commit
4cb7cfb226
@ -2292,9 +2292,7 @@ int _usb_read(struct cgpu_info *cgpu, int ep, char *buf, size_t bufsiz, int *pro
|
||||
bool first = true;
|
||||
char *search;
|
||||
int endlen;
|
||||
|
||||
// We add 4: 1 for null, 2 for FTDI status and 1 to round to 4 bytes
|
||||
unsigned char usbbuf[USB_MAX_READ+4], *ptr;
|
||||
unsigned char *ptr, *usbbuf = cgpu->usbinfo.bulkbuf;
|
||||
size_t usbbufread;
|
||||
|
||||
DEVLOCK(cgpu, pstate);
|
||||
|
@ -184,6 +184,8 @@ struct cg_usb_device {
|
||||
|
||||
#define USB_NOSTAT 0
|
||||
|
||||
#define USB_MAX_READ 8192
|
||||
|
||||
struct cg_usb_info {
|
||||
uint8_t bus_number;
|
||||
uint8_t device_address;
|
||||
@ -215,6 +217,13 @@ struct cg_usb_info {
|
||||
double total_read_delay;
|
||||
uint64_t write_delay_count;
|
||||
double total_write_delay;
|
||||
|
||||
/*
|
||||
* We add 4: 1 for null, 2 for FTDI status and 1 to round to 4 bytes
|
||||
* If a single device ever has multiple end points then it will need
|
||||
* multiple of these
|
||||
*/
|
||||
unsigned char bulkbuf[USB_MAX_READ+4];
|
||||
};
|
||||
|
||||
enum usb_cmds {
|
||||
|
Loading…
x
Reference in New Issue
Block a user