On 06.05.2013 19:16, Ian Lepore wrote:
On Mon, 2013-05-06 at 15:58 +0000, Alexander Motin wrote:
Author: mav
Date: Mon May 6 15:58:53 2013
New Revision: 250298
URL: http://svnweb.freebsd.org/changeset/base/250298
Log:
Fix byte order of ATA WWN when converting it to SCSI LUN ID.
Modified:
head/sys/cam/ata/ata_xpt.c
Modified: head/sys/cam/ata/ata_xpt.c
==============================================================================
--- head/sys/cam/ata/ata_xpt.c Mon May 6 15:30:34 2013 (r250297)
+++ head/sys/cam/ata/ata_xpt.c Mon May 6 15:58:53 2013 (r250298)
@@ -834,6 +834,7 @@ noerror:
{
struct ccb_pathinq cpi;
int16_t *ptr;
+ int i;
ident_buf = &softc->ident_data;
for (ptr = (int16_t *)ident_buf;
@@ -913,8 +914,10 @@ noerror:
path->device->device_id_len = 16;
bcopy(&fake_device_id_hdr,
path->device->device_id, 8);
- bcopy(ident_buf->wwn,
- path->device->device_id + 8, 8);
+ for (i = 0; i < 4; i++) {
+ ptr = (int16_t
*)(path->device->device_id + 8);
+ ptr[i] =
bswap16(ident_buf->wwn[i]);
+ }
}
}
Shouldn't this use ata_bswap()? If not that, then shouldn't it be one
of the conditional swap routines (be16dec() or similar)?
You are right. Thank you. Remade.
--
Alexander Motin
_______________________________________________
svn-src-head@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"