ahci: Fix gcc 4.4 compiler warning
ahci.c: In function 'ata_scsiop_read_capacity10': ahci.c:616: warning: dereferencing type-punned pointer will break strict-aliasing rules Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
This commit is contained in:
parent
51d91e1a25
commit
cb6d0b72c2
|
@ -602,7 +602,7 @@ static int ata_scsiop_read10(ccb * pccb)
|
||||||
*/
|
*/
|
||||||
static int ata_scsiop_read_capacity10(ccb *pccb)
|
static int ata_scsiop_read_capacity10(ccb *pccb)
|
||||||
{
|
{
|
||||||
u8 buf[8];
|
u32 cap;
|
||||||
|
|
||||||
if (!ataid[pccb->target]) {
|
if (!ataid[pccb->target]) {
|
||||||
printf("scsi_ahci: SCSI READ CAPACITY10 command failure. "
|
printf("scsi_ahci: SCSI READ CAPACITY10 command failure. "
|
||||||
|
@ -611,14 +611,12 @@ static int ata_scsiop_read_capacity10(ccb *pccb)
|
||||||
return -EPERM;
|
return -EPERM;
|
||||||
}
|
}
|
||||||
|
|
||||||
memset(buf, 0, 8);
|
cap = le32_to_cpu(ataid[pccb->target]->lba_capacity);
|
||||||
|
memcpy(pccb->pdata, &cap, sizeof(cap));
|
||||||
|
|
||||||
*(u32 *) buf = le32_to_cpu(ataid[pccb->target]->lba_capacity);
|
pccb->pdata[4] = pccb->pdata[5] = 0;
|
||||||
|
pccb->pdata[6] = 512 >> 8;
|
||||||
buf[6] = 512 >> 8;
|
pccb->pdata[7] = 512 & 0xff;
|
||||||
buf[7] = 512 & 0xff;
|
|
||||||
|
|
||||||
memcpy(pccb->pdata, buf, 8);
|
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue