Received: by 2002:a05:6512:2355:0:0:0:0 with SMTP id p21csp211971lfu; Wed, 30 Mar 2022 21:11:23 -0700 (PDT) X-Google-Smtp-Source: ABdhPJzAIpD7UvQ4ikS5fouFBGV+0eRG41na4Tc61H0k+6SJ2gANt1xT9Vas588irG7m7aE0uaUc X-Received: by 2002:a63:1554:0:b0:363:794c:9e31 with SMTP id 20-20020a631554000000b00363794c9e31mr9026374pgv.66.1648699883159; Wed, 30 Mar 2022 21:11:23 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1648699883; cv=none; d=google.com; s=arc-20160816; b=PV66l5JrTel8PV6zJJEQ59ZoIWsFCLTo/M8abPf8W0MDpTEvOL+NU/NfGxuluBnsrz zrRQsPdX4zOCD39ZFtk91NV3pqbPOxLje6f2pg7k/qmnMiRI3q+UZHow7nta9uy94Khp +OaF2cqikJu28tqD/ioQ+EISeD9O8T5BXOKQVZKaRahWQKAZIPAsUBF58X+Jb9pr2uzI BAXFR2fB2W/0h02Do1cqR52oQYmSkmJh9satdNqqvvHbcOA1K73ofWTc49LXK1OkKZ0n WI5HRGLTrx6Bb+7fjRI6j3ggjju2xprXszEnqT5adVLKNUCV+umR1fLvZeBc6jNtI1h3 G4xA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:in-reply-to:from :references:cc:to:content-language:subject:user-agent:mime-version :date:message-id:dkim-signature; bh=lTgajV11zNpM7mAdZ1h28DYUbBkTePOXWgji2CQAO54=; b=gkcyjtBLDHN+5ygxPYu/9fDDoNg7bhLl0oEzCnMgNc4Tq1PaPyy3jPUDsF+fy8fTkz 3LpCmpbovi2wf4FXln4778qHWzvUwqOPpqNQ5u4RPa5IiYWjznyuxiSSR+akQ9kRHCmz wyxgWmVZx3UshsFZuCTqWOqhGp6zLeJfde0GKX8MYgnxzcMAEaYKadX+iAT87RdXpyVZ 6Hh+CLhtwTAsA9rUSQlkSIwb6Lj9y03eYzsjdKxeUefWgqx2fHq7TRsk1AHQyvwhVbqV eDnPC6uLtOplAgwqHXYFBz+rqD2HAqhllI8ClY2e5AUp+6mVr86OvhOPs50VrE1LmQuL I2mA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@foxmail.com header.s=s201512 header.b=DjKyToN9; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=foxmail.com Return-Path: Received: from lindbergh.monkeyblade.net (lindbergh.monkeyblade.net. [2620:137:e000::1:18]) by mx.google.com with ESMTPS id b14-20020a65668e000000b0038216f93fadsi23658396pgw.326.2022.03.30.21.11.22 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 30 Mar 2022 21:11:23 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:18 as permitted sender) client-ip=2620:137:e000::1:18; Authentication-Results: mx.google.com; dkim=pass header.i=@foxmail.com header.s=s201512 header.b=DjKyToN9; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=foxmail.com Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by lindbergh.monkeyblade.net (Postfix) with ESMTP id B5F201A8455; Wed, 30 Mar 2022 20:18:25 -0700 (PDT) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1343898AbiC3Oqv (ORCPT + 99 others); Wed, 30 Mar 2022 10:46:51 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:60890 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1347135AbiC3Oqq (ORCPT ); Wed, 30 Mar 2022 10:46:46 -0400 Received: from out203-205-221-210.mail.qq.com (out203-205-221-210.mail.qq.com [203.205.221.210]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 456A02261DB for ; Wed, 30 Mar 2022 07:44:54 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=foxmail.com; s=s201512; t=1648651492; bh=lTgajV11zNpM7mAdZ1h28DYUbBkTePOXWgji2CQAO54=; h=Date:Subject:To:Cc:References:From:In-Reply-To; b=DjKyToN9tSHkgyfG4Z3OYrIAUNYU4ECzw5wTmgjWZcW0HCWqRUvNQB7cl8KnPOh99 53YCEwl+3LhWkcEGEvgPTSWBVFQBNIyNcg5uTWGlNgrwYJhgA3K3BhzkbxsP0mOmxo YpVBI8c1sggO7buueVtFUEurMWeJaP25vnGnikgo= Received: from [192.168.31.6] ([120.245.132.52]) by newxmesmtplogicsvrszb7.qq.com (NewEsmtp) with SMTP id B3296492; Wed, 30 Mar 2022 22:44:50 +0800 X-QQ-mid: xmsmtpt1648651490tjisbgjpr Message-ID: X-QQ-XMAILINFO: NKv2G1wnhDBnP95dw+5kBstDP0nV5i/NtDG7Z4JJhAuzH/sjD+aYjQgMRzFY+S Hhtv51RgLTojdgDD+gPhDyvSoPCtG0+NluQ/Lc+/BXGkdGHENL3ksnfBwRGCVZc3Wb1FnaFC+hPn fC4MAl0+UGdHFC0oUIWo4IyJkygyHl0ZDSyqaZprWVw4/e5RCpZYSUkZ5Tm57BewTYTtNhH2Zgf8 Mh340U6eAjqaHl8N9FR0K2brOILGxTjR/jc0xeMWzfZw28mV7RCcrjsgcx79y6aAkEAJc3D1134c xXx60RVclkQ7mdCJecUTkE3LRTIQ7zkIa92XegT/P7uY9xvfSs9qNSbYabGNqlVmeCTkzisiL7eh WjCH49ixXZnNRz7M6dMHPJH0cjdX3CruTSydnGOnkatZlULyeSwPaIdRiKSZcyG0so1YzQ8Hzrug q75Bx/nUJtPll8ZzVrESJnmo2Lbxo2j+hnGQNz+naHrr7R8zL+ldiYXvq6TW6lwDu4/37zBup97J mOzFG2L8A0G5zYSpGnMLl5h1dYYfor9AojvHzl2dxDhL0xzEn8Qv1s2utwHp6xo3IOnALbfMBGjl fdxBqKjZFJjXLh+Z8UnyKRSuVjBkDNVuYvOARuYd2MAJih6L+nobGVRpECiHP3gquqmRV0an6Bd2 pM9BsHoRlC5djX37EOQK8lgFhZ0b079oGrNdOcESRsYGBDGVBFuUUv+jv8Sf2H2FIh0YiNZelPst nKlyEofVOR1TiVnVXEDRgsfpO0mOTAiS8xUCqV4herV/lPaOirfzN82tCifmpyVbVc39QOWUV9Ow 5L4dvJJnJN1fQeASPaApnk4boeGQGzeEfa91dhhfREcElG1+N5JDDp2p8+gxHlQ+vQSPFZwXejLe 5g9Q3/BL+LaCGAXK2TI6M4ZmT+7ZU5p8YnMvD+lZFxvcOXTx/8Rzq0Dsehbnje3mVQMq3bj69d X-OQ-MSGID: <261ebec9-bb27-1ab0-b2d7-d2a26274cd95@foxmail.com> Date: Wed, 30 Mar 2022 22:44:50 +0800 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:91.0) Gecko/20100101 Thunderbird/91.7.0 Subject: Re: [PATCH 2/4] ipmi: Limit the number of message a user may have outstanding Content-Language: en-US To: minyard@acm.org Cc: openipmi-developer@lists.sourceforge.net, linux-kernel@vger.kernel.org, Corey Minyard References: <20220329183340.471474-1-minyard@acm.org> <20220329183340.471474-3-minyard@acm.org> From: chenchacha In-Reply-To: <20220329183340.471474-3-minyard@acm.org> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Spam-Status: No, score=0.6 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,FORGED_MUA_MOZILLA,FREEMAIL_FORGED_FROMDOMAIN, FREEMAIL_FROM,HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI, NICE_REPLY_A,RDNS_NONE,SPF_HELO_NONE,T_SCC_BODY_TEXT_LINE autolearn=no 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 > @@ -2298,6 +2309,14 @@ static int i_ipmi_request(struct ipmi_user *user, > struct ipmi_recv_msg *recv_msg; > int rv = 0; > > + if (user) { > + if (atomic_add_return(1, &user->nr_msgs) > max_msgs_per_user) { > + atomic_dec(&user->nr_msgs); > + rv = -EBUSY; > + goto out; > + } > + } > + > @@ -2369,6 +2388,8 @@ static int i_ipmi_request(struct ipmi_user *user, > rcu_read_unlock(); > > out: > + if (rv && user) > + atomic_dec(&user->nr_msgs); > return rv; > } If the number of msg is greater than the limit, the nr_msgs will be decrease twice. Should it be returned directory? -- Chen Guanqiao