Re: [PATCH] scsi: qedi: return via va_end to match corresponding va_start
> "Colin" == Colin Kingwrites: Colin> Although on most systems va_end is a no-op, it is good practice Colin> to use va_end on the function return path, especially since the Colin> va_start documenation states: Colin> "Each invocation of va_start() must be matched by a Colin> corresponding Colin>invocation of va_end() in the same function." Applied to 4.11/scsi-queue. -- Martin K. Petersen Oracle Linux Engineering
Re: [PATCH] scsi: qedi: return via va_end to match corresponding va_start
> "Colin" == Colin King writes: Colin> Although on most systems va_end is a no-op, it is good practice Colin> to use va_end on the function return path, especially since the Colin> va_start documenation states: Colin> "Each invocation of va_start() must be matched by a Colin> corresponding Colin>invocation of va_end() in the same function." Applied to 4.11/scsi-queue. -- Martin K. Petersen Oracle Linux Engineering
Re: [PATCH] scsi: qedi: return via va_end to match corresponding va_start
On 16/12/16 7:40 PM, "Colin King"wrote: >From: Colin Ian King > >Although on most systems va_end is a no-op, it is good practice >to use va_end on the function return path, especially since the >va_start documenation states: > > "Each invocation of va_start() must be matched by a corresponding > invocation of va_end() in the same function." > >Found with static analysis by CoverityScan, CIDs 1389477-1389479 > >Signed-off-by: Colin Ian King >--- > drivers/scsi/qedi/qedi_dbg.c | 9 ++--- > 1 file changed, 6 insertions(+), 3 deletions(-) > >diff --git a/drivers/scsi/qedi/qedi_dbg.c b/drivers/scsi/qedi/qedi_dbg.c >index 2bdedb9..8fd28b0 100644 >--- a/drivers/scsi/qedi/qedi_dbg.c >+++ b/drivers/scsi/qedi/qedi_dbg.c >@@ -52,7 +52,7 @@ qedi_dbg_warn(struct qedi_dbg_ctx *qedi, const char >*func, u32 line, > vaf.va = > > if (!(qedi_dbg_log & QEDI_LOG_WARN)) >- return; >+ goto ret; > > if (likely(qedi) && likely(qedi->pdev)) > pr_warn("[%s]:[%s:%d]:%d: %pV", dev_name(>pdev->dev), >@@ -60,6 +60,7 @@ qedi_dbg_warn(struct qedi_dbg_ctx *qedi, const char >*func, u32 line, > else > pr_warn("[:00:00.0]:[%s:%d]: %pV", nfunc, line, ); > >+ret: > va_end(va); > } > >@@ -80,7 +81,7 @@ qedi_dbg_notice(struct qedi_dbg_ctx *qedi, const char >*func, u32 line, > vaf.va = > > if (!(qedi_dbg_log & QEDI_LOG_NOTICE)) >- return; >+ goto ret; > > if (likely(qedi) && likely(qedi->pdev)) > pr_notice("[%s]:[%s:%d]:%d: %pV", >@@ -89,6 +90,7 @@ qedi_dbg_notice(struct qedi_dbg_ctx *qedi, const char >*func, u32 line, > else > pr_notice("[:00:00.0]:[%s:%d]: %pV", nfunc, line, ); > >+ret: > va_end(va); > } > >@@ -109,7 +111,7 @@ qedi_dbg_info(struct qedi_dbg_ctx *qedi, const char >*func, u32 line, > vaf.va = > > if (!(qedi_dbg_log & level)) >- return; >+ goto ret; > > if (likely(qedi) && likely(qedi->pdev)) > pr_info("[%s]:[%s:%d]:%d: %pV", dev_name(>pdev->dev), >@@ -117,6 +119,7 @@ qedi_dbg_info(struct qedi_dbg_ctx *qedi, const char >*func, u32 line, > else > pr_info("[:00:00.0]:[%s:%d]: %pV", nfunc, line, ); > >+ret: > va_end(va); > } > >-- >2.10.2 Acked-by: Manish Rangankar
Re: [PATCH] scsi: qedi: return via va_end to match corresponding va_start
On 16/12/16 7:40 PM, "Colin King" wrote: >From: Colin Ian King > >Although on most systems va_end is a no-op, it is good practice >to use va_end on the function return path, especially since the >va_start documenation states: > > "Each invocation of va_start() must be matched by a corresponding > invocation of va_end() in the same function." > >Found with static analysis by CoverityScan, CIDs 1389477-1389479 > >Signed-off-by: Colin Ian King >--- > drivers/scsi/qedi/qedi_dbg.c | 9 ++--- > 1 file changed, 6 insertions(+), 3 deletions(-) > >diff --git a/drivers/scsi/qedi/qedi_dbg.c b/drivers/scsi/qedi/qedi_dbg.c >index 2bdedb9..8fd28b0 100644 >--- a/drivers/scsi/qedi/qedi_dbg.c >+++ b/drivers/scsi/qedi/qedi_dbg.c >@@ -52,7 +52,7 @@ qedi_dbg_warn(struct qedi_dbg_ctx *qedi, const char >*func, u32 line, > vaf.va = > > if (!(qedi_dbg_log & QEDI_LOG_WARN)) >- return; >+ goto ret; > > if (likely(qedi) && likely(qedi->pdev)) > pr_warn("[%s]:[%s:%d]:%d: %pV", dev_name(>pdev->dev), >@@ -60,6 +60,7 @@ qedi_dbg_warn(struct qedi_dbg_ctx *qedi, const char >*func, u32 line, > else > pr_warn("[:00:00.0]:[%s:%d]: %pV", nfunc, line, ); > >+ret: > va_end(va); > } > >@@ -80,7 +81,7 @@ qedi_dbg_notice(struct qedi_dbg_ctx *qedi, const char >*func, u32 line, > vaf.va = > > if (!(qedi_dbg_log & QEDI_LOG_NOTICE)) >- return; >+ goto ret; > > if (likely(qedi) && likely(qedi->pdev)) > pr_notice("[%s]:[%s:%d]:%d: %pV", >@@ -89,6 +90,7 @@ qedi_dbg_notice(struct qedi_dbg_ctx *qedi, const char >*func, u32 line, > else > pr_notice("[:00:00.0]:[%s:%d]: %pV", nfunc, line, ); > >+ret: > va_end(va); > } > >@@ -109,7 +111,7 @@ qedi_dbg_info(struct qedi_dbg_ctx *qedi, const char >*func, u32 line, > vaf.va = > > if (!(qedi_dbg_log & level)) >- return; >+ goto ret; > > if (likely(qedi) && likely(qedi->pdev)) > pr_info("[%s]:[%s:%d]:%d: %pV", dev_name(>pdev->dev), >@@ -117,6 +119,7 @@ qedi_dbg_info(struct qedi_dbg_ctx *qedi, const char >*func, u32 line, > else > pr_info("[:00:00.0]:[%s:%d]: %pV", nfunc, line, ); > >+ret: > va_end(va); > } > >-- >2.10.2 Acked-by: Manish Rangankar
[PATCH] scsi: qedi: return via va_end to match corresponding va_start
From: Colin Ian KingAlthough on most systems va_end is a no-op, it is good practice to use va_end on the function return path, especially since the va_start documenation states: "Each invocation of va_start() must be matched by a corresponding invocation of va_end() in the same function." Found with static analysis by CoverityScan, CIDs 1389477-1389479 Signed-off-by: Colin Ian King --- drivers/scsi/qedi/qedi_dbg.c | 9 ++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/drivers/scsi/qedi/qedi_dbg.c b/drivers/scsi/qedi/qedi_dbg.c index 2bdedb9..8fd28b0 100644 --- a/drivers/scsi/qedi/qedi_dbg.c +++ b/drivers/scsi/qedi/qedi_dbg.c @@ -52,7 +52,7 @@ qedi_dbg_warn(struct qedi_dbg_ctx *qedi, const char *func, u32 line, vaf.va = if (!(qedi_dbg_log & QEDI_LOG_WARN)) - return; + goto ret; if (likely(qedi) && likely(qedi->pdev)) pr_warn("[%s]:[%s:%d]:%d: %pV", dev_name(>pdev->dev), @@ -60,6 +60,7 @@ qedi_dbg_warn(struct qedi_dbg_ctx *qedi, const char *func, u32 line, else pr_warn("[:00:00.0]:[%s:%d]: %pV", nfunc, line, ); +ret: va_end(va); } @@ -80,7 +81,7 @@ qedi_dbg_notice(struct qedi_dbg_ctx *qedi, const char *func, u32 line, vaf.va = if (!(qedi_dbg_log & QEDI_LOG_NOTICE)) - return; + goto ret; if (likely(qedi) && likely(qedi->pdev)) pr_notice("[%s]:[%s:%d]:%d: %pV", @@ -89,6 +90,7 @@ qedi_dbg_notice(struct qedi_dbg_ctx *qedi, const char *func, u32 line, else pr_notice("[:00:00.0]:[%s:%d]: %pV", nfunc, line, ); +ret: va_end(va); } @@ -109,7 +111,7 @@ qedi_dbg_info(struct qedi_dbg_ctx *qedi, const char *func, u32 line, vaf.va = if (!(qedi_dbg_log & level)) - return; + goto ret; if (likely(qedi) && likely(qedi->pdev)) pr_info("[%s]:[%s:%d]:%d: %pV", dev_name(>pdev->dev), @@ -117,6 +119,7 @@ qedi_dbg_info(struct qedi_dbg_ctx *qedi, const char *func, u32 line, else pr_info("[:00:00.0]:[%s:%d]: %pV", nfunc, line, ); +ret: va_end(va); } -- 2.10.2
[PATCH] scsi: qedi: return via va_end to match corresponding va_start
From: Colin Ian King Although on most systems va_end is a no-op, it is good practice to use va_end on the function return path, especially since the va_start documenation states: "Each invocation of va_start() must be matched by a corresponding invocation of va_end() in the same function." Found with static analysis by CoverityScan, CIDs 1389477-1389479 Signed-off-by: Colin Ian King --- drivers/scsi/qedi/qedi_dbg.c | 9 ++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/drivers/scsi/qedi/qedi_dbg.c b/drivers/scsi/qedi/qedi_dbg.c index 2bdedb9..8fd28b0 100644 --- a/drivers/scsi/qedi/qedi_dbg.c +++ b/drivers/scsi/qedi/qedi_dbg.c @@ -52,7 +52,7 @@ qedi_dbg_warn(struct qedi_dbg_ctx *qedi, const char *func, u32 line, vaf.va = if (!(qedi_dbg_log & QEDI_LOG_WARN)) - return; + goto ret; if (likely(qedi) && likely(qedi->pdev)) pr_warn("[%s]:[%s:%d]:%d: %pV", dev_name(>pdev->dev), @@ -60,6 +60,7 @@ qedi_dbg_warn(struct qedi_dbg_ctx *qedi, const char *func, u32 line, else pr_warn("[:00:00.0]:[%s:%d]: %pV", nfunc, line, ); +ret: va_end(va); } @@ -80,7 +81,7 @@ qedi_dbg_notice(struct qedi_dbg_ctx *qedi, const char *func, u32 line, vaf.va = if (!(qedi_dbg_log & QEDI_LOG_NOTICE)) - return; + goto ret; if (likely(qedi) && likely(qedi->pdev)) pr_notice("[%s]:[%s:%d]:%d: %pV", @@ -89,6 +90,7 @@ qedi_dbg_notice(struct qedi_dbg_ctx *qedi, const char *func, u32 line, else pr_notice("[:00:00.0]:[%s:%d]: %pV", nfunc, line, ); +ret: va_end(va); } @@ -109,7 +111,7 @@ qedi_dbg_info(struct qedi_dbg_ctx *qedi, const char *func, u32 line, vaf.va = if (!(qedi_dbg_log & level)) - return; + goto ret; if (likely(qedi) && likely(qedi->pdev)) pr_info("[%s]:[%s:%d]:%d: %pV", dev_name(>pdev->dev), @@ -117,6 +119,7 @@ qedi_dbg_info(struct qedi_dbg_ctx *qedi, const char *func, u32 line, else pr_info("[:00:00.0]:[%s:%d]: %pV", nfunc, line, ); +ret: va_end(va); } -- 2.10.2