summary |
shortlog |
log |
commit | commitdiff |
tree
raw |
patch |
inline | side by side (from parent 1:
279595b)
The sg_io_v4 interface passes pointers as u64s. It turns out GCC
disapproves of us casting a u64 straight to a 32 bit pointer.
cc1: warnings being treated as errors
scsi_serial.c: In function ‘sg_err_category4’:
scsi_serial.c:159: warning: cast to pointer from integer of different size
scsi_serial.c: In function ‘scsi_dump_v4’:
scsi_serial.c:303: warning: cast to pointer from integer of different size
{
return sg_err_category_new(udev, hp->device_status, 0,
hp->transport_status, hp->driver_status,
{
return sg_err_category_new(udev, hp->device_status, 0,
hp->transport_status, hp->driver_status,
- (unsigned char *)hp->response,
+ (unsigned char *)(uintptr_t)hp->response,
dev_scsi->kernel, io->driver_status, io->transport_status,
io->device_status);
if (io->device_status == SCSI_CHECK_CONDITION)
dev_scsi->kernel, io->driver_status, io->transport_status,
io->device_status);
if (io->device_status == SCSI_CHECK_CONDITION)
- return scsi_dump_sense(udev, dev_scsi, (unsigned char *)io->response,
+ return scsi_dump_sense(udev, dev_scsi, (unsigned char *)(uintptr_t)io->response,
io->response_len);
else
return -1;
io->response_len);
else
return -1;