Received: by 2002:a05:6902:102b:0:0:0:0 with SMTP id x11csp799533ybt; Wed, 17 Jun 2020 14:28:28 -0700 (PDT) X-Google-Smtp-Source: ABdhPJxGVS4PXBii2sAlKDTH6k9yGuTh4l7q0Ad6ZZP7by5xyULgjEfkKNqpazfVkSF4lpxgcK9K X-Received: by 2002:a17:907:b03:: with SMTP id h3mr1099847ejl.367.1592429308689; Wed, 17 Jun 2020 14:28:28 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1592429308; cv=none; d=google.com; s=arc-20160816; b=hXVOKpX4LSiKFrDf9tq83Y+6ygcrnPqgtQV9X5KXWGwTvRK9uQJqEld3KArd/tMJMK fCQXqQlnpJ69M2IIfBbFdZau+h4w5kSeSE5ziNf72cahnaloE1x7S2O6X82MQEYbzDJK Vxj6eEWcWdh/H8lPm9L/kplB0eAtLdZRV9MBVXOwLti1Y9FHwo1wGck5WkWe99qZRr8V XiXXSdq0yNt4sC51A6dv0tr6eyoo0l9Neh8AfzTMKHnpW1b2D4wTR3trUbwvuEWLGW+2 wNSOacpy2+1DueWNU+PzqmK6L6pJH6q42fuf5XYM0BbfQ7sMmrk+6xi2tmzed0pc7GJk SnTg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:user-agent:content-disposition :mime-version:message-id:subject:cc:to:from:date:dkim-signature; bh=AxvALuYg4MX9K/hfG8YOXzeKHSOpqHvECJSFqfi7FJ0=; b=LsuL6KivVBvfmGfbPO1D9UcOS0zvs1b6tHyVkVfFBwZLOs2+Qiu1VJ7u5YPv/lr0Ib geA/S2CBEp+TQCsocULzC6PkkyZgIq++Rf25sics0KnfNBJKmJbUTBjM67UC45+Yc6gN GTnCIkscfLinH72iollDNJ1eFeiP49Pvyvb+MjKNXmLJAUkCcXzaJvTABnDd1PDLamba lK2bfVGA+ihvOjxq4sXhCLSXA8ST+u6UKvRo29olSUEuyhl4zSaO98//ZoEZez+1nVsa UR1fyImFWN5Cmx0YJohyfzW7lGmaB3Gg/39Epea8lGbReE22upxaKstL2Nia+p0LLp1J PsvA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=I0jsAHxs; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id um13si673381ejb.173.2020.06.17.14.28.05; Wed, 17 Jun 2020 14:28:28 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=I0jsAHxs; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726954AbgFQVYK (ORCPT + 99 others); Wed, 17 Jun 2020 17:24:10 -0400 Received: from mail.kernel.org ([198.145.29.99]:51574 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726899AbgFQVYK (ORCPT ); Wed, 17 Jun 2020 17:24:10 -0400 Received: from embeddedor (unknown [189.207.59.248]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPSA id 0C1FC2166E; Wed, 17 Jun 2020 21:24:08 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1592429049; bh=ufGZakvAGLpuhnkgoqj4OGoXB8U1nf2Y0/5ilyOCk2I=; h=Date:From:To:Cc:Subject:From; b=I0jsAHxsAyeB6/UGhTqMiTeONq0QimmMmu5zyZZ9p/wKvckbkNlUIzAtFCJrfwOjV To99KIvnqyyOcjrXHe6wY+wcyg4lPr8G1dKkK21/IANX2uLpmrVCUfIcbs6cqDw5mU aqvveP4DcAOQAgQ4133PgNJ4X0zeMN6vOMgLNXnQ= Date: Wed, 17 Jun 2020 16:29:30 -0500 From: "Gustavo A. R. Silva" To: Heiko Carstens , Vasily Gorbik , Christian Borntraeger Cc: linux-s390@vger.kernel.org, linux-kernel@vger.kernel.org, "Gustavo A. R. Silva" Subject: [PATCH][next] s390: appldata: Use struct_size() helper Message-ID: <20200617212930.GA11728@embeddedor> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline User-Agent: Mutt/1.9.4 (2018-02-28) Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Make use of the struct_size() helper instead of an open-coded version in order to avoid any potential type mistakes. This code was detected with the help of Coccinelle and, audited and fixed manually. Signed-off-by: Gustavo A. R. Silva --- arch/s390/appldata/appldata_os.c | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/arch/s390/appldata/appldata_os.c b/arch/s390/appldata/appldata_os.c index 5503217366ec..a363d30ce739 100644 --- a/arch/s390/appldata/appldata_os.c +++ b/arch/s390/appldata/appldata_os.c @@ -129,8 +129,7 @@ static void appldata_get_os_data(void *data) os_data->nr_cpus = j; - new_size = sizeof(struct appldata_os_data) + - (os_data->nr_cpus * sizeof(struct appldata_os_per_cpu)); + new_size = struct_size(os_data, os_cpu, os_data->nr_cpus); if (ops.size != new_size) { if (ops.active) { rc = appldata_diag(APPLDATA_RECORD_OS_ID, @@ -165,8 +164,7 @@ static int __init appldata_os_init(void) { int rc, max_size; - max_size = sizeof(struct appldata_os_data) + - (num_possible_cpus() * sizeof(struct appldata_os_per_cpu)); + max_size = struct_size(appldata_os_data, os_cpu, num_possible_cpus()); if (max_size > APPLDATA_MAX_REC_SIZE) { pr_err("Maximum OS record size %i exceeds the maximum " "record size %i\n", max_size, APPLDATA_MAX_REC_SIZE); -- 2.27.0