svn commit: r250298 - head/sys/cam/ata
Ian Lepore
ian at FreeBSD.org
Mon May 6 16:16:09 UTC 2013
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)?
-- Ian
More information about the svn-src-all
mailing list