From patchwork Tue Jul 25 19:54:24 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jinjie Ruan X-Patchwork-Id: 125569 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a59:9010:0:b0:3e4:2afc:c1 with SMTP id l16csp2428629vqg; Tue, 25 Jul 2023 05:21:14 -0700 (PDT) X-Google-Smtp-Source: APBJJlHdV6rVYxMWcZlR290+rb+paURuU/tKETavzRgBhkSbNTPnNIr4fOtz05EDryqkr9/Q12TW X-Received: by 2002:a17:907:a043:b0:977:befe:d888 with SMTP id gz3-20020a170907a04300b00977befed888mr12071491ejc.13.1690287673935; Tue, 25 Jul 2023 05:21:13 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1690287673; cv=none; d=google.com; s=arc-20160816; b=UltrLOrMrS1H/k+YvRRYuN+tKKPfjPNjLrINlJV+df2OEP/7ZlVadAsjOUA0fbzgSk pym/3yi60k5xnq+QLpw00WhA1ovwMuLkrDZI1dGZGzhpUC2AncV7n+R0mLwPBBcQHX09 OA0kz0JqIadFq5z0E40W7fO8O8PL6bYqe9LVAMRMVdqZWNQYQvraXDdb8hnKpy2PhEh9 R8XWubFLs3Li+eQ1+s+SA7Pe4tXtdPYzKbDwdnVMk2g7LyBbWfxDAgBcopqCdJehD8Ah /TzAo0/glpQKlSKlaq+7zIqOtSAZ4aFk6E+NXehzWhdBjND7A2Aa9h9k3WeTc+9Bwutb b6AA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :message-id:date:subject:cc:to:from; bh=+sHIFUIga0ieUgoav8ICvA85SMCLrozkjGxE61fuxhE=; fh=kc5X6Y7YUvfYmJr4Ik93ifSiqPIMc44iF8VkqUAn7yU=; b=ehx+/KEdtRXcZ2zlersb9hxBgInDjMhAA9quFp1PS3z9vvBkJs6cR+Fmyz//C5njI1 Hj6EsgaaoWcOH8ntCV7H2RX26Fdkw/ugAYTR8l0vRH27WWrqOrQnvT1D2R47Rz1TcV0R ruDYQpWLVptWbvbSI0nMMFuEntknW9EiDiVeXyTLRomoX1WZmYncQDdNdwejGGkejaOG GQCbGP1nlc831PyRN7Ea/V5wbywDOhdjIJngJq1R7qnBAMy3sNoc7OKDegjmZ/17ele3 a8pmfz2pHqNRnoqikbtlj2f/1IfTw3n+YCXhKptqma4A1isOLe2VETCjpZ8+h1HmLDVr mxjA== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=QUARANTINE sp=QUARANTINE dis=NONE) header.from=huawei.com Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id c24-20020a170906925800b00997bd42d213si8097981ejx.165.2023.07.25.05.20.50; Tue, 25 Jul 2023 05:21:13 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=QUARANTINE sp=QUARANTINE dis=NONE) header.from=huawei.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S232387AbjGYLyM (ORCPT + 99 others); Tue, 25 Jul 2023 07:54:12 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:33204 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S235186AbjGYLxr (ORCPT ); Tue, 25 Jul 2023 07:53:47 -0400 Received: from szxga02-in.huawei.com (szxga02-in.huawei.com [45.249.212.188]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 31B82E7B; Tue, 25 Jul 2023 04:53:46 -0700 (PDT) Received: from kwepemi500008.china.huawei.com (unknown [172.30.72.54]) by szxga02-in.huawei.com (SkyGuard) with ESMTP id 4R9FhX5X33zCrMs; Tue, 25 Jul 2023 19:50:20 +0800 (CST) Received: from huawei.com (10.90.53.73) by kwepemi500008.china.huawei.com (7.221.188.139) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Tue, 25 Jul 2023 19:53:42 +0800 From: Ruan Jinjie To: , , , , , CC: Subject: [PATCH -next] kernel: kprobes: Use struct_size() Date: Tue, 25 Jul 2023 19:54:24 +0000 Message-ID: <20230725195424.3469242-1-ruanjinjie@huawei.com> X-Mailer: git-send-email 2.34.1 MIME-Version: 1.0 X-Originating-IP: [10.90.53.73] X-ClientProxiedBy: dggems705-chm.china.huawei.com (10.3.19.182) To kwepemi500008.china.huawei.com (7.221.188.139) X-CFilter-Loop: Reflected X-Spam-Status: No, score=0.0 required=5.0 tests=BAYES_00,DATE_IN_FUTURE_06_12, RCVD_IN_DNSWL_BLOCKED,RCVD_IN_MSPIKE_H5,RCVD_IN_MSPIKE_WL, SPF_HELO_NONE,SPF_PASS,T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-getmail-retrieved-from-mailbox: INBOX X-GMAIL-THRID: 1772395088282717622 X-GMAIL-MSGID: 1772395088282717622 Use struct_size() instead of hand-writing it, when allocating a structure with a flex array. This is less verbose. Signed-off-by: Ruan Jinjie Acked-by: Masami Hiramatsu (Google) --- kernel/kprobes.c | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/kernel/kprobes.c b/kernel/kprobes.c index 1fc6095d502d..1d749a917b59 100644 --- a/kernel/kprobes.c +++ b/kernel/kprobes.c @@ -2220,8 +2220,7 @@ int register_kretprobe(struct kretprobe *rp) return -ENOMEM; for (i = 0; i < rp->maxactive; i++) { - inst = kzalloc(sizeof(struct kretprobe_instance) + - rp->data_size, GFP_KERNEL); + inst = kzalloc(struct_size(inst, data, rp->data_size), GFP_KERNEL); if (inst == NULL) { rethook_free(rp->rh); rp->rh = NULL; @@ -2244,8 +2243,7 @@ int register_kretprobe(struct kretprobe *rp) rp->rph->rp = rp; for (i = 0; i < rp->maxactive; i++) { - inst = kzalloc(sizeof(struct kretprobe_instance) + - rp->data_size, GFP_KERNEL); + inst = kzalloc(struct_size(inst, data, rp->data_size), GFP_KERNEL); if (inst == NULL) { refcount_set(&rp->rph->ref, i); free_rp_inst(rp);