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-all@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"

Reply via email to