On Wed, Jun 28, 2023 at 01:46:44PM +0300, Andy Shevchenko wrote: > On Tue, Jun 27, 2023 at 03:17:24PM +0800, You Kangren wrote: > > Replace the if statement with min_t() to simplify the code > > ... > > > - if (words_num < UWORD_CPYBUF_SIZE) > > - cpylen = words_num; > > - else > > - cpylen = UWORD_CPYBUF_SIZE; > > + cpylen = min_t(unsigned int, words_num, UWORD_CPYBUF_SIZE); > > min_t() can be dangerous some times. > > To make it robust I would suggest to use min() and mark UWORD_CPYBUF_SIZE > with U suffix to make the type the same. Thanks. I reworked it, added a missing include and ordered the includes in the file. ----8<---- From: Giovanni Cabiddu <giovanni.cabiddu@xxxxxxxxx> Date: Wed, 28 Jun 2023 13:32:09 +0100 Subject: [PATCH] crypto: qat - use min() in fw loader Organization: Intel Research and Development Ireland Ltd - Co. Reg. #308263 - Collinstown Industrial Park, Leixlip, County Kildare - Ireland Use min() macro in firmware loaded instead of if statement. While at it, reorder the includes on this file in alphabetical order. Signed-off-by: Giovanni Cabiddu <giovanni.cabiddu@xxxxxxxxx> --- drivers/crypto/intel/qat/qat_common/qat_uclo.c | 17 ++++++++--------- 1 file changed, 8 insertions(+), 9 deletions(-) diff --git a/drivers/crypto/intel/qat/qat_common/qat_uclo.c b/drivers/crypto/intel/qat/qat_common/qat_uclo.c index ce837bcc1cab..6a52a853e2b1 100644 --- a/drivers/crypto/intel/qat/qat_common/qat_uclo.c +++ b/drivers/crypto/intel/qat/qat_common/qat_uclo.c @@ -1,17 +1,19 @@ // SPDX-License-Identifier: (BSD-3-Clause OR GPL-2.0-only) /* Copyright(c) 2014 - 2020 Intel Corporation */ -#include <linux/slab.h> #include <linux/ctype.h> -#include <linux/kernel.h> #include <linux/delay.h> +#include <linux/kernel.h> +#include <linux/minmax.h> #include <linux/pci_ids.h> +#include <linux/slab.h> + #include "adf_accel_devices.h" #include "adf_common_drv.h" -#include "icp_qat_uclo.h" -#include "icp_qat_hal.h" #include "icp_qat_fw_loader_handle.h" +#include "icp_qat_hal.h" +#include "icp_qat_uclo.h" -#define UWORD_CPYBUF_SIZE 1024 +#define UWORD_CPYBUF_SIZE 1024U #define INVLD_UWORD 0xffffffffffull #define PID_MINOR_REV 0xf #define PID_MAJOR_REV (0xf << 4) @@ -1986,10 +1988,7 @@ static void qat_uclo_wr_uimage_raw_page(struct icp_qat_fw_loader_handle *handle, uw_relative_addr = 0; words_num = encap_page->micro_words_num; while (words_num) { - if (words_num < UWORD_CPYBUF_SIZE) - cpylen = words_num; - else - cpylen = UWORD_CPYBUF_SIZE; + cpylen = min(words_num, UWORD_CPYBUF_SIZE); /* load the buffer */ for (i = 0; i < cpylen; i++) -- 2.40.1