diff mbox series

[v1,1/1] scsi: lpfc: Do not abuse UUID APIs

Message ID 20230807095823.33902-1-andriy.shevchenko@linux.intel.com (mailing list archive)
State Superseded
Headers show
Series [v1,1/1] scsi: lpfc: Do not abuse UUID APIs | expand

Commit Message

Andy Shevchenko Aug. 7, 2023, 9:58 a.m. UTC
The lpfc_vmid_host_uuid is not defined as uuid_t and its usage is not
the same as for uuid_t operations (like exporting or importing).
Hence replace call to uuid_is_null() by respective memchr_inv() without
abusing casting.

Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
---
 drivers/scsi/lpfc/lpfc_els.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

Comments

Andy Shevchenko Aug. 7, 2023, 3:45 p.m. UTC | #1
On Mon, Aug 07, 2023 at 12:58:23PM +0300, Andy Shevchenko wrote:
> The lpfc_vmid_host_uuid is not defined as uuid_t and its usage is not
> the same as for uuid_t operations (like exporting or importing).
> Hence replace call to uuid_is_null() by respective memchr_inv() without
> abusing casting.

The v2 had been issued, this patch is wrong, sorry.
Justin Tee Aug. 7, 2023, 5:45 p.m. UTC | #2
On Mon, Aug 7, 2023 at 8:45 AM Andy Shevchenko
<andriy.shevchenko@linux.intel.com> wrote:
>
> On Mon, Aug 07, 2023 at 12:58:23PM +0300, Andy Shevchenko wrote:
> > The lpfc_vmid_host_uuid is not defined as uuid_t and its usage is not
> > the same as for uuid_t operations (like exporting or importing).
> > Hence replace call to uuid_is_null() by respective memchr_inv() without
> > abusing casting.
>
> The v2 had been issued, this patch is wrong, sorry.
>
> --
> With Best Regards,
> Andy Shevchenko

Hi Andy,

Thanks I would prefer to use sizeof instead of
LPFC_COMPRESS_VMID_SIZE.  Otherwise, the change looks fine to me.

diff --git a/drivers/scsi/lpfc/lpfc_els.c b/drivers/scsi/lpfc/lpfc_els.c
index b5cd6d1c0a5a..3515ec819037 100644
--- a/drivers/scsi/lpfc/lpfc_els.c
+++ b/drivers/scsi/lpfc/lpfc_els.c
@@ -1331,7 +1331,8 @@ lpfc_issue_els_flogi(struct lpfc_vport *vport,
struct lpfc_nodelist *ndlp,
        if (phba->cfg_vmid_priority_tagging) {
                sp->cmn.priority_tagging = 1;
                /* lpfc_vmid_host_uuid is combination of wwpn and wwnn */
-               if (uuid_is_null((uuid_t *)vport->lpfc_vmid_host_uuid)) {
+               if (!memchr_inv(vport->lpfc_vmid_host_uuid, 0,
+                               sizeof(vport->lpfc_vmid_host_uuid))) {
                        memcpy(vport->lpfc_vmid_host_uuid, phba->wwpn,
                               sizeof(phba->wwpn));
                        memcpy(&vport->lpfc_vmid_host_uuid[8], phba->wwnn,
@@ -12357,7 +12358,8 @@ lpfc_vmid_uvem(struct lpfc_vport *vport,
        elsiocb->vmid_tag.vmid_context = vmid_context;
        pcmd = (u8 *)elsiocb->cmd_dmabuf->virt;

-       if (uuid_is_null((uuid_t *)vport->lpfc_vmid_host_uuid))
+       if (!memchr_inv(vport->lpfc_vmid_host_uuid, 0,
+                       sizeof(vport->lpfc_vmid_host_uuid))
                memcpy(vport->lpfc_vmid_host_uuid, vmid->host_vmid,
                       LPFC_COMPRESS_VMID_SIZE);

Regards,
Justin
Andy Shevchenko Aug. 8, 2023, 1:07 p.m. UTC | #3
On Mon, Aug 07, 2023 at 10:45:03AM -0700, Justin Tee wrote:

> -- 
> This electronic communication and the information and any files transmitted 
> with it, or attached to it, are confidential and are intended solely for 
> the use of the individual or entity to whom it is addressed and may contain 
> information that is confidential, legally privileged, protected by privacy 
> laws, or otherwise restricted from disclosure to anyone else. If you are 
> not the intended recipient or the person responsible for delivering the 
> e-mail to the intended recipient, you are hereby notified that any use, 
> copying, distributing, dissemination, forwarding, printing, or copying of 
> this e-mail is strictly prohibited. If you received this e-mail in error, 
> please return the e-mail to the sender, delete it from your computer, and 
> destroy any printed copy of it.

Removed from mailbox.
Justin Tee Aug. 8, 2023, 6:25 p.m. UTC | #4
On Tue, Aug 8, 2023 at 6:07 AM Andy Shevchenko
<andriy.shevchenko@linux.intel.com> wrote:
>
> On Mon, Aug 07, 2023 at 10:45:03AM -0700, Justin Tee wrote:
>
> > --
> > This electronic communication and the information and any files transmitted
> > with it, or attached to it, are confidential and are intended solely for
> > the use of the individual or entity to whom it is addressed and may contain
> > information that is confidential, legally privileged, protected by privacy
> > laws, or otherwise restricted from disclosure to anyone else. If you are
> > not the intended recipient or the person responsible for delivering the
> > e-mail to the intended recipient, you are hereby notified that any use,
> > copying, distributing, dissemination, forwarding, printing, or copying of
> > this e-mail is strictly prohibited. If you received this e-mail in error,
> > please return the e-mail to the sender, delete it from your computer, and
> > destroy any printed copy of it.
>
> Removed from mailbox.
>
> --
> With Best Regards,
> Andy Shevchenko

Hi Andy,

There is no need to remove from mailbox because you were the intended
recipient of my previous email as well as everyone subscribed to the
linux-scsi and linux-kernel mailing list  (:

I still prefer sizeof(vport->lpfc_vmid_host_uuid) instead of
LPFC_COMPRESS_VMID_SIZE.

Thanks,
Justin
diff mbox series

Patch

diff --git a/drivers/scsi/lpfc/lpfc_els.c b/drivers/scsi/lpfc/lpfc_els.c
index 2bad9954c355..14aece44cf43 100644
--- a/drivers/scsi/lpfc/lpfc_els.c
+++ b/drivers/scsi/lpfc/lpfc_els.c
@@ -1332,7 +1332,7 @@  lpfc_issue_els_flogi(struct lpfc_vport *vport, struct lpfc_nodelist *ndlp,
 	if (phba->cfg_vmid_priority_tagging) {
 		sp->cmn.priority_tagging = 1;
 		/* lpfc_vmid_host_uuid is combination of wwpn and wwnn */
-		if (uuid_is_null((uuid_t *)vport->lpfc_vmid_host_uuid)) {
+		if (memchr_inv(vport->lpfc_vmid_host_uuid, 0, LPFC_COMPRESS_VMID_SIZE)) {
 			memcpy(vport->lpfc_vmid_host_uuid, phba->wwpn,
 			       sizeof(phba->wwpn));
 			memcpy(&vport->lpfc_vmid_host_uuid[8], phba->wwnn,
@@ -12331,7 +12331,7 @@  lpfc_vmid_uvem(struct lpfc_vport *vport,
 	elsiocb->vmid_tag.vmid_context = vmid_context;
 	pcmd = (u8 *)elsiocb->cmd_dmabuf->virt;
 
-	if (uuid_is_null((uuid_t *)vport->lpfc_vmid_host_uuid))
+	if (memchr_inv(vport->lpfc_vmid_host_uuid, 0, LPFC_COMPRESS_VMID_SIZE))
 		memcpy(vport->lpfc_vmid_host_uuid, vmid->host_vmid,
 		       LPFC_COMPRESS_VMID_SIZE);