Commit cb04e8b1 authored by Linus Torvalds's avatar Linus Torvalds
Browse files

minmax: don't use max() in situations that want a C constant expression



We only had a couple of array[] declarations, and changing them to just
use 'MAX()' instead of 'max()' fixes the issue.

This will allow us to simplify our min/max macros enormously, since they
can now unconditionally use temporary variables to avoid using the
argument values multiple times.

Cc: David Laight <David.Laight@aculab.com>
Cc: Lorenzo Stoakes <lorenzo.stoakes@oracle.com>
Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
parent 9f499b8c
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -794,7 +794,7 @@ static const char *smu_get_feature_name(struct smu_context *smu,
size_t smu_cmn_get_pp_feature_mask(struct smu_context *smu,
				   char *buf)
{
	int8_t sort_feature[max(SMU_FEATURE_COUNT, SMU_FEATURE_MAX)];
	int8_t sort_feature[MAX(SMU_FEATURE_COUNT, SMU_FEATURE_MAX)];
	uint64_t feature_mask;
	int i, feature_index;
	uint32_t count = 0;
+1 −1
Original line number Diff line number Diff line
@@ -871,7 +871,7 @@ static void cyttsp4_get_mt_touches(struct cyttsp4_mt_data *md, int num_cur_tch)
	struct cyttsp4_touch tch;
	int sig;
	int i, j, t = 0;
	int ids[max(CY_TMA1036_MAX_TCH, CY_TMA4XX_MAX_TCH)];
	int ids[MAX(CY_TMA1036_MAX_TCH, CY_TMA4XX_MAX_TCH)];

	memset(ids, 0, si->si_ofs.tch_abs[CY_TCH_T].max * sizeof(int));
	for (i = 0; i < num_cur_tch; i++) {
+1 −1
Original line number Diff line number Diff line
@@ -270,7 +270,7 @@ static const struct irq_domain_ops sun6i_r_intc_domain_ops = {

static int sun6i_r_intc_suspend(void)
{
	u32 buf[BITS_TO_U32(max(SUN6I_NR_TOP_LEVEL_IRQS, SUN6I_NR_MUX_BITS))];
	u32 buf[BITS_TO_U32(MAX(SUN6I_NR_TOP_LEVEL_IRQS, SUN6I_NR_MUX_BITS))];
	int i;

	/* Wake IRQs are enabled during system sleep and shutdown. */
+1 −1
Original line number Diff line number Diff line
@@ -215,7 +215,7 @@ static int es58x_devlink_info_get(struct devlink *devlink,
	struct es58x_sw_version *fw_ver = &es58x_dev->firmware_version;
	struct es58x_sw_version *bl_ver = &es58x_dev->bootloader_version;
	struct es58x_hw_revision *hw_rev = &es58x_dev->hardware_revision;
	char buf[max(sizeof("xx.xx.xx"), sizeof("axxx/xxx"))];
	char buf[MAX(sizeof("xx.xx.xx"), sizeof("axxx/xxx"))];
	int ret = 0;

	if (es58x_sw_version_is_valid(fw_ver)) {
+1 −1
Original line number Diff line number Diff line
@@ -634,7 +634,7 @@ static int check_dir_item(struct extent_buffer *leaf,
		 */
		if (key->type == BTRFS_DIR_ITEM_KEY ||
		    key->type == BTRFS_XATTR_ITEM_KEY) {
			char namebuf[max(BTRFS_NAME_LEN, XATTR_NAME_MAX)];
			char namebuf[MAX(BTRFS_NAME_LEN, XATTR_NAME_MAX)];

			read_extent_buffer(leaf, namebuf,
					(unsigned long)(di + 1), name_len);
Loading