From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752245AbdB1VSi (ORCPT ); Tue, 28 Feb 2017 16:18:38 -0500 Received: from mail-wm0-f45.google.com ([74.125.82.45]:37565 "EHLO mail-wm0-f45.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751843AbdB1VQq (ORCPT ); Tue, 28 Feb 2017 16:16:46 -0500 Subject: Re: [PATCH] scsi: lpfc: use proper format string for dma_addr_t To: Arnd Bergmann , Dick Kennedy , "James E.J. Bottomley" , "Martin K. Petersen" References: <20170227203726.3420612-1-arnd@arndb.de> Cc: Hannes Reinecke , linux-scsi@vger.kernel.org, linux-kernel@vger.kernel.org From: James Smart Message-ID: <7b969a50-aced-002d-c7be-7adcc4b317cd@broadcom.com> Date: Tue, 28 Feb 2017 10:05:41 -0800 User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:45.0) Gecko/20100101 Thunderbird/45.7.1 MIME-Version: 1.0 In-Reply-To: <20170227203726.3420612-1-arnd@arndb.de> Content-Type: text/plain; charset=windows-1252; format=flowed Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Arnd, Thank you. Looks good. -- james Signed-off-by: James Smart On 2/27/2017 12:37 PM, Arnd Bergmann wrote: > dma_addr_t may be either u32 or u64, depending on the kernel configuration, > and we get a warning for the 32-bit case: > > drivers/scsi/lpfc/lpfc_nvme.c: In function 'lpfc_nvme_ls_req': > drivers/scsi/lpfc/lpfc_logmsg.h:52:52: error: format '%llu' expects argument of type 'long long unsigned int', but argument 11 has type 'dma_addr_t {aka unsigned int}' [-Werror=format=] > drivers/scsi/lpfc/lpfc_logmsg.h:52:52: error: format '%llu' expects argument of type 'long long unsigned int', but argument 12 has type 'dma_addr_t {aka unsigned int}' [-Werror=format=] > drivers/scsi/lpfc/lpfc_nvme.c: In function 'lpfc_nvme_ls_abort': > drivers/scsi/lpfc/lpfc_logmsg.h:52:52: error: format '%llu' expects argument of type 'long long unsigned int', but argument 11 has type 'dma_addr_t {aka unsigned int}' [-Werror=format=] > drivers/scsi/lpfc/lpfc_logmsg.h:52:52: error: format '%llu' expects argument of type 'long long unsigned int', but argument 12 has type 'dma_addr_t {aka unsigned int}' [-Werror=format=] > > printk has a special "%pad" format string that passes the dma address by > reference to solve this problem. > > Fixes: 01649561a8b4 ("scsi: lpfc: NVME Initiator: bind to nvme_fc api") > Signed-off-by: Arnd Bergmann > --- > drivers/scsi/lpfc/lpfc_nvme.c | 12 ++++++------ > 1 file changed, 6 insertions(+), 6 deletions(-) > > diff --git a/drivers/scsi/lpfc/lpfc_nvme.c b/drivers/scsi/lpfc/lpfc_nvme.c > index 625b6589a34d..609a908ea9db 100644 > --- a/drivers/scsi/lpfc/lpfc_nvme.c > +++ b/drivers/scsi/lpfc/lpfc_nvme.c > @@ -457,11 +457,11 @@ lpfc_nvme_ls_req(struct nvme_fc_local_port *pnvme_lport, > /* Expand print to include key fields. */ > lpfc_printf_vlog(vport, KERN_INFO, LOG_NVME_DISC, > "6051 ENTER. lport %p, rport %p lsreq%p rqstlen:%d " > - "rsplen:%d %llux %llux\n", > + "rsplen:%d %pad %pad\n", > pnvme_lport, pnvme_rport, > pnvme_lsreq, pnvme_lsreq->rqstlen, > - pnvme_lsreq->rsplen, pnvme_lsreq->rqstdma, > - pnvme_lsreq->rspdma); > + pnvme_lsreq->rsplen, &pnvme_lsreq->rqstdma, > + &pnvme_lsreq->rspdma); > > vport->phba->fc4NvmeLsRequests++; > > @@ -527,11 +527,11 @@ lpfc_nvme_ls_abort(struct nvme_fc_local_port *pnvme_lport, > /* Expand print to include key fields. */ > lpfc_printf_vlog(vport, KERN_INFO, LOG_NVME_ABTS, > "6040 ENTER. lport %p, rport %p lsreq %p rqstlen:%d " > - "rsplen:%d %llux %llux\n", > + "rsplen:%d %pad %pad\n", > pnvme_lport, pnvme_rport, > pnvme_lsreq, pnvme_lsreq->rqstlen, > - pnvme_lsreq->rsplen, pnvme_lsreq->rqstdma, > - pnvme_lsreq->rspdma); > + pnvme_lsreq->rsplen, &pnvme_lsreq->rqstdma, > + &pnvme_lsreq->rspdma); > > /* > * Lock the ELS ring txcmplq and build a local list of all ELS IOs