From patchwork Mon Nov 14 11:28:39 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andy Shevchenko X-Patchwork-Id: 19723 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a5d:6687:0:0:0:0:0 with SMTP id l7csp2092628wru; Mon, 14 Nov 2022 03:32:45 -0800 (PST) X-Google-Smtp-Source: AA0mqf5yvsA7FJEFLdZj20cqODP0n7IJbNPJrZHofKAAwJgzFXRscFkrAYfuJBL5TeGFQSG7gdmd X-Received: by 2002:a17:902:bd4b:b0:186:6a1d:331d with SMTP id b11-20020a170902bd4b00b001866a1d331dmr13557365plx.168.1668425564941; Mon, 14 Nov 2022 03:32:44 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1668425564; cv=none; d=google.com; s=arc-20160816; b=z4f43vB/pGb0jAZOnrdwEPI/GcVHfUxghWU8zKMGP7iKt8iXm6YKTasmFWNQpBH4Mb jNXwRQ5WtwSXmx9ox8PiWxjz/5UjI/t3O7eaHOs1LipxUwdOu0O1Pk2Bfmq/bhb6KgNN 6H5jmVUlw9+Dqf/lqjPXqFh9ykohBSlKHqgr7gV3JQ/sQfQkm8CsJkXSblZ4fp71XbYf 3tAA4c7HpTM4fBq4PQsUW8stBgfqkF0fdfWOHb+0IhIoLqj5Zp3UhhJZrdXunRmyGruj SO78VdhhMEc3dG1CH9Vo36/A2IhUzrziam2UZGrGL3mCjxqhnnI7bAReQYK9xuiV9HuS 3TiA== 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:dkim-signature; bh=a1n6yPjYY9GXcWxV7wZi4cWhkU8/d9dvV9i/uU4OuEs=; b=vM4xeevYI+7whGxmPUkviqc7ouJcANMNTt6ReigfV7k1n6ii8xUEeuSem054kNnQRT CmJKEfVrIwFo1oBYL8tmg4eHac+oO3Wa17K4theLhDqyGEe5POt1cbXNQjJo29A90W/a kJsa4P6bXj8choD9rAaWWGMunqxVa1KWKCI6KovQWd+gjl3dMVIi/9CqqERzqsWm8Rm9 I2U/2P3W82j4AQq8szH4LU3JHQKgX1JC2SDH87iIAcLz8lDAde3jyGW7zV4vnJBQ6cjy 3hApIdWCWwrSHU5Sg318Uxt9V9MQrBitbMUoC2vGmr4UlKUNURTjoCdqOOXgAVp4GUvs lBZQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@intel.com header.s=Intel header.b=IU24lA4i; 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=pass (p=NONE sp=NONE dis=NONE) header.from=intel.com Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id x32-20020a17090a6c2300b00212ca8e7457si8956181pjj.133.2022.11.14.03.32.31; Mon, 14 Nov 2022 03:32:44 -0800 (PST) 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; dkim=pass header.i=@intel.com header.s=Intel header.b=IU24lA4i; 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=pass (p=NONE sp=NONE dis=NONE) header.from=intel.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S236043AbiKNL3Q (ORCPT + 99 others); Mon, 14 Nov 2022 06:29:16 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:54668 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S235709AbiKNL2p (ORCPT ); Mon, 14 Nov 2022 06:28:45 -0500 Received: from mga17.intel.com (mga17.intel.com [192.55.52.151]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 099E922F; Mon, 14 Nov 2022 03:28:22 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1668425303; x=1699961303; h=from:to:cc:subject:date:message-id:mime-version: content-transfer-encoding; bh=gR6BZJ2tZuQtMsb7/ERq8PsqpuT7Uc3t1sGvFFJF/U0=; b=IU24lA4i6wHniVfKS1NCOlv0T6fw25/avpuwt+CYLSfS6czNFQFTyeIL aQqM1l8dhVGCgZ/LMC9JrHVirIsjs2ZLMSpHT9fGyxGxWqDAX/36wup2X UXP4rLylsR4fpVhh4mDjaEYAJezLPmcDHx8TeN+6OdKFB775AAuQBBZe1 FlgoKAEgciQmU6+lBYcAE7trLi/PxH+vJpP6VKpC3i6cY6kqWtNe8NOH/ 6eS+Jt7LudF60cJqj/cOv1abJuQNYU0S7edSCDc2ufM2KpLYkle82MeK5 FpLU1oZGhyI1n1OgfwqZe+8KDJQulgcW7Xw0S8U3oPSxFwHfoph14v/Cp g==; X-IronPort-AV: E=McAfee;i="6500,9779,10530"; a="292344098" X-IronPort-AV: E=Sophos;i="5.96,161,1665471600"; d="scan'208";a="292344098" Received: from orsmga003.jf.intel.com ([10.7.209.27]) by fmsmga107.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 14 Nov 2022 03:28:22 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6500,9779,10530"; a="589332578" X-IronPort-AV: E=Sophos;i="5.96,161,1665471600"; d="scan'208";a="589332578" Received: from black.fi.intel.com ([10.237.72.28]) by orsmga003.jf.intel.com with ESMTP; 14 Nov 2022 03:28:19 -0800 Received: by black.fi.intel.com (Postfix, from userid 1003) id 2587D32E; Mon, 14 Nov 2022 13:28:43 +0200 (EET) From: Andy Shevchenko To: Jakob Koschel , Andy Shevchenko , Greg Kroah-Hartman , Mathias Nyman , linux-usb@vger.kernel.org, linux-kernel@vger.kernel.org Cc: Kevin Cernekee , Mathias Nyman , Andrew Morton Subject: [PATCH v1 1/4] list: Introduce list_count() to count existing nodes Date: Mon, 14 Nov 2022 13:28:39 +0200 Message-Id: <20221114112842.38565-1-andriy.shevchenko@linux.intel.com> X-Mailer: git-send-email 2.35.1 MIME-Version: 1.0 X-Spam-Status: No, score=-4.3 required=5.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_EF,RCVD_IN_DNSWL_MED,SPF_HELO_NONE, SPF_NONE 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: =?utf-8?q?INBOX?= X-GMAIL-THRID: =?utf-8?q?1749471005174602060?= X-GMAIL-MSGID: =?utf-8?q?1749471005174602060?= Some of the existing users, and definitely will be new ones, want to count existing nodes in the list. Provide a generic API for that. Signed-off-by: Andy Shevchenko --- include/linux/list.h | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/include/linux/list.h b/include/linux/list.h index 61762054b4be..098eccf8c1b6 100644 --- a/include/linux/list.h +++ b/include/linux/list.h @@ -655,6 +655,19 @@ static inline void list_splice_tail_init(struct list_head *list, !list_is_head(pos, (head)); \ pos = n, n = pos->prev) +/** + * list_count - count nodes in the list + * @head: the head for your list. + */ +#define list_count(head) \ +({ \ + struct list_head *__tmp; \ + size_t __i = 0; \ + list_for_each(__tmp, head) \ + __i++; \ + __i; \ +}) + /** * list_entry_is_head - test if the entry points to the head of the list * @pos: the type * to cursor From patchwork Mon Nov 14 11:28:40 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andy Shevchenko X-Patchwork-Id: 19721 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a5d:6687:0:0:0:0:0 with SMTP id l7csp2092259wru; Mon, 14 Nov 2022 03:31:52 -0800 (PST) X-Google-Smtp-Source: AA0mqf5sRBRnpwWR3jzv6RePYTzSlsi6CYf3Pezw7//fBX9enTbNloLogaI04fw985PASA+Dfv1B X-Received: by 2002:a63:e50c:0:b0:461:fdcd:a8d3 with SMTP id r12-20020a63e50c000000b00461fdcda8d3mr11672648pgh.257.1668425512216; Mon, 14 Nov 2022 03:31:52 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1668425512; cv=none; d=google.com; s=arc-20160816; b=ovH/x8L3tBj45WeFJs5rY8As/Pv2sOeXtmLdl0fFRv86UuMZ+LQBvt84T9Fw1yafbr hBIbxi2DWqV1BaDWeoeYNb69wUP/+5DuH7RvTUiTJzHpa+tfdFp1XxRmILTBVtHarjbE FdqMT4x4RsZqob6ZdBB0UqGjwoqW0wq74Wju1O168mCma5uJozCrAE6Pa32FrAnSnbdz N6E6Gh+mcOyOipFUxE3kuI8P7QAzqyD0xkqbgHYIc6HgwtRTHvFofK7NrAQYQiS/XHb5 FAsYl6m39gOiCbZvCBodaU8dXd/p3hEvTmogjS8weBFAQT1ZExzsjTNwtYBIYaYfFrpV C23Q== 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 :references:in-reply-to:message-id:date:subject:cc:to:from :dkim-signature; bh=pVPzlq10SaG39Qx/4vkKUmK7JNLurY7OggDlIiOyspc=; b=Mxlm6kaJ3WATf/Cm33OPaKKRyCsfmklJZLmjv+mUhylxXteQkPuSxRPnnTbk+fLEKB RbbyXA4dMsjiz7ADq71o8NvyXg/l1H2Xda1KBtx+zKt64wIL+bcse7L2ZfZ5caML2E8O KqjbA99Gy/oHDfKkV7mk33fCXpcMz8rPE2kYoKy1wt4INLpMhzCC8bd0Rc4U9RwGu9FF XFg9b1ahh+D9y3w6D0eGZ7qrF2m/z8LySkUv2ZGA9aiHMdQgEBU7EugfCn2FHhVU6bFb 8Jcg0WtDoy85tDrrVbH3C6jUcj7sOmEoJFjeukkJQaR+QmlDc1+LPvhukL9z7OxnLpny K8Yw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@intel.com header.s=Intel header.b=YrAvqf21; 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=pass (p=NONE sp=NONE dis=NONE) header.from=intel.com Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id 19-20020a631753000000b004561c1f132csi9146445pgx.346.2022.11.14.03.31.38; Mon, 14 Nov 2022 03:31:52 -0800 (PST) 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; dkim=pass header.i=@intel.com header.s=Intel header.b=YrAvqf21; 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=pass (p=NONE sp=NONE dis=NONE) header.from=intel.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S230391AbiKNL3W (ORCPT + 99 others); Mon, 14 Nov 2022 06:29:22 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:52978 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S235984AbiKNL2q (ORCPT ); Mon, 14 Nov 2022 06:28:46 -0500 Received: from mga06.intel.com (mga06b.intel.com [134.134.136.31]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 0A43420B; Mon, 14 Nov 2022 03:28:22 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1668425303; x=1699961303; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=2tt0pXqyf+X16xT+uW1YvPBZjN8jaC7fs9UiviM7Ozw=; b=YrAvqf21nYGAffNIN1j6ibDaOHHeR0tEztOGrAkQBJ/CmfVyy569pbav 44gSXkysv7z5gaULjsQFFZAB+0exrmGmHRkrP9UXpERcXYdFSYeWqUMgF 2CthT4Ac/OKwXwfuA8cU3PK7gfW20oEPV81VtZLv/muYAf5pniUZCugX+ CQUQ7Q3BX1p94Ba4XkB/8MnUWQUy969qQ8Q/nlzXUc86QL7vrTZe/VTyb oEn+TwpSghp8TfF9e1HZNt3+28W8QGti+tPeazCVWBmRbRMlqI4O35sZR ifPuhooedRjPklAfk1+bJPgrX57I5FdyWzy3OM7bCWsjJQjJzF7nlColM A==; X-IronPort-AV: E=McAfee;i="6500,9779,10530"; a="374074728" X-IronPort-AV: E=Sophos;i="5.96,161,1665471600"; d="scan'208";a="374074728" Received: from orsmga006.jf.intel.com ([10.7.209.51]) by orsmga104.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 14 Nov 2022 03:28:22 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6500,9779,10530"; a="616278550" X-IronPort-AV: E=Sophos;i="5.96,161,1665471600"; d="scan'208";a="616278550" Received: from black.fi.intel.com ([10.237.72.28]) by orsmga006.jf.intel.com with ESMTP; 14 Nov 2022 03:28:19 -0800 Received: by black.fi.intel.com (Postfix, from userid 1003) id 3FAC8346; Mon, 14 Nov 2022 13:28:44 +0200 (EET) From: Andy Shevchenko To: Jakob Koschel , Andy Shevchenko , Greg Kroah-Hartman , Mathias Nyman , linux-usb@vger.kernel.org, linux-kernel@vger.kernel.org Cc: Kevin Cernekee , Mathias Nyman , Andrew Morton Subject: [PATCH v1 2/4] usb: gadget: hid: Convert to use list_count() Date: Mon, 14 Nov 2022 13:28:40 +0200 Message-Id: <20221114112842.38565-2-andriy.shevchenko@linux.intel.com> X-Mailer: git-send-email 2.35.1 In-Reply-To: <20221114112842.38565-1-andriy.shevchenko@linux.intel.com> References: <20221114112842.38565-1-andriy.shevchenko@linux.intel.com> MIME-Version: 1.0 X-Spam-Status: No, score=-4.3 required=5.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_EF,RCVD_IN_DNSWL_MED,SPF_HELO_NONE, SPF_NONE 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: =?utf-8?q?INBOX?= X-GMAIL-THRID: =?utf-8?q?1749470949661751522?= X-GMAIL-MSGID: =?utf-8?q?1749470949661751522?= The list API now provides the list_count() to help with counting existing nodes in the list. Uilise it. Signed-off-by: Andy Shevchenko --- drivers/usb/gadget/legacy/hid.c | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/drivers/usb/gadget/legacy/hid.c b/drivers/usb/gadget/legacy/hid.c index 1187ee4f316a..6196c3456e0b 100644 --- a/drivers/usb/gadget/legacy/hid.c +++ b/drivers/usb/gadget/legacy/hid.c @@ -133,14 +133,11 @@ static struct usb_configuration config_driver = { static int hid_bind(struct usb_composite_dev *cdev) { struct usb_gadget *gadget = cdev->gadget; - struct list_head *tmp; struct hidg_func_node *n = NULL, *m, *iter_n; struct f_hid_opts *hid_opts; - int status, funcs = 0; - - list_for_each(tmp, &hidg_func_list) - funcs++; + int status, funcs; + funcs = list_count(&hidg_func_list); if (!funcs) return -ENODEV; From patchwork Mon Nov 14 11:28:41 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andy Shevchenko X-Patchwork-Id: 19724 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a5d:6687:0:0:0:0:0 with SMTP id l7csp2092942wru; Mon, 14 Nov 2022 03:33:29 -0800 (PST) X-Google-Smtp-Source: AA0mqf7oL4RvfbdPP6nFcmdj7KVCjBLXfYrO7B4lrpQlT0NVwKXuphBWBaUi/KBnTmcn3KZ+w+Ly X-Received: by 2002:a63:550b:0:b0:46a:f665:ed96 with SMTP id j11-20020a63550b000000b0046af665ed96mr11357722pgb.486.1668425609316; Mon, 14 Nov 2022 03:33:29 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1668425609; cv=none; d=google.com; s=arc-20160816; b=c0GOeGRGYFqJ1Xg5UU0yERdPxiB4LDI1Mmx1GdbXRVkgB6vbeoVn9jwUeTbWpiglzN 0BlOQYFXbTr52IktSMr8ICZramy4l6XQMff10tAlroGG/IoKNETME6bTaQfjetbku3bv ZM4LNPEiftlw+JIIPHVx1j3bTmLCTMwbQ02AyzkDN3vMvmzGdWvQCsMF1KKq8ujZJH0V 1huzVitZ6sdLmqnScy2+aYTmt9tFoGiUjEPjnOvZXuFMiB2mD8HU1GehMeUO8zesrAOd P0JsOTGn0/w8pMklwh2qmQUIpXyzE9wlI2W+rN2QXy/LV5VtBIwIONtj5WLZB9Zxm2qi kqlA== 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 :references:in-reply-to:message-id:date:subject:cc:to:from :dkim-signature; bh=JVbHZ+NGYOcNKuuEY6hFbHPVfLGYNv2Ube2WCII3QNw=; b=DwBsqQwMSDv0JJFdKBnCeiYU4CGGNaywq/oTA6S0eeT0/6KCVLYx2Hn7Ih6B6l6wrb I6Wr+KbS0pAnvngf4bfYOa0t7EyKemwm5LkshiMAV1rsgs1gSC9s/PHtMlck5tqHnX+8 HCLMMS//meK2JXzl9fDIzveI/UVv7R2LGK4LMh1Lh0yImb3k7vaDCRQfPTh6zbvS3RE4 N2gVTm7Twwe8eyGFbFPhaJboiUdeD8y0rTs0LpunoJ4lKshVXbuOLmXt1bc3vY2cak8o gmtoCeZh3jWn6AUdyDXDuy3OJOhXyYDgcwY8OaLgNczy/QDcvIV32vJF3tZj+2VVu5xg /xWg== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@intel.com header.s=Intel header.b=cYOZiq3G; 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=pass (p=NONE sp=NONE dis=NONE) header.from=intel.com Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id r66-20020a632b45000000b00476a190f972si280875pgr.852.2022.11.14.03.33.16; Mon, 14 Nov 2022 03:33:29 -0800 (PST) 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; dkim=pass header.i=@intel.com header.s=Intel header.b=cYOZiq3G; 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=pass (p=NONE sp=NONE dis=NONE) header.from=intel.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S236375AbiKNL3d (ORCPT + 99 others); Mon, 14 Nov 2022 06:29:33 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:54772 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S236119AbiKNL2v (ORCPT ); Mon, 14 Nov 2022 06:28:51 -0500 Received: from mga06.intel.com (mga06b.intel.com [134.134.136.31]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id AA49EB40; Mon, 14 Nov 2022 03:28:25 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1668425305; x=1699961305; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=cbHRKiBhBcfb/glMiq5EVCvPmL/FExuknALj1+3+vrE=; b=cYOZiq3GNj6IK/9GV/Slolw47SRvKzDvdwsN2J91Lw7WaIt30QhNgKqT 1u7UslYArshZRUr4dHR1rX2AWNEK2nMC9lq4bqObq7ZSdJtY7UsREkbDB 7hC7+Bi3ftM2a1ftHQj2H+Ag3nQSLwgvwcZHbyWz/9lr/jZLuBm3NXQTC WnY0qcBAKdoZ4SJgoHe7ZCPurbkoOc7QmxbxqaPtD3CQ3WEg/7prEwnyi KYaOz9CHypDSQmeGQ31iYqAu3FM7h98MsGl7VMBcS5PNlCmN69ApZZ4z8 EcRlCvRBUgdZyzkDp98JDrN2657M4/yNRWbwdVK1TsWlrmkawejie2b+O g==; X-IronPort-AV: E=McAfee;i="6500,9779,10530"; a="374074730" X-IronPort-AV: E=Sophos;i="5.96,161,1665471600"; d="scan'208";a="374074730" Received: from orsmga006.jf.intel.com ([10.7.209.51]) by orsmga104.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 14 Nov 2022 03:28:22 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6500,9779,10530"; a="616278554" X-IronPort-AV: E=Sophos;i="5.96,161,1665471600"; d="scan'208";a="616278554" Received: from black.fi.intel.com ([10.237.72.28]) by orsmga006.jf.intel.com with ESMTP; 14 Nov 2022 03:28:19 -0800 Received: by black.fi.intel.com (Postfix, from userid 1003) id 35D382F3; Mon, 14 Nov 2022 13:28:44 +0200 (EET) From: Andy Shevchenko To: Jakob Koschel , Andy Shevchenko , Greg Kroah-Hartman , Mathias Nyman , linux-usb@vger.kernel.org, linux-kernel@vger.kernel.org Cc: Kevin Cernekee , Mathias Nyman , Andrew Morton Subject: [PATCH v1 3/4] usb: gadget: udc: bcm63xx: Convert to use list_count() Date: Mon, 14 Nov 2022 13:28:41 +0200 Message-Id: <20221114112842.38565-3-andriy.shevchenko@linux.intel.com> X-Mailer: git-send-email 2.35.1 In-Reply-To: <20221114112842.38565-1-andriy.shevchenko@linux.intel.com> References: <20221114112842.38565-1-andriy.shevchenko@linux.intel.com> MIME-Version: 1.0 X-Spam-Status: No, score=-4.3 required=5.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_EF,RCVD_IN_DNSWL_MED,SPF_HELO_NONE, SPF_NONE 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: =?utf-8?q?INBOX?= X-GMAIL-THRID: =?utf-8?q?1749471051952312972?= X-GMAIL-MSGID: =?utf-8?q?1749471051952312972?= The list API now provides the list_count() to help with counting existing nodes in the list. Uilise it. Signed-off-by: Andy Shevchenko --- drivers/usb/gadget/udc/bcm63xx_udc.c | 11 +++-------- 1 file changed, 3 insertions(+), 8 deletions(-) diff --git a/drivers/usb/gadget/udc/bcm63xx_udc.c b/drivers/usb/gadget/udc/bcm63xx_udc.c index 2cdb07905bde..0762e49e85f8 100644 --- a/drivers/usb/gadget/udc/bcm63xx_udc.c +++ b/drivers/usb/gadget/udc/bcm63xx_udc.c @@ -2172,7 +2172,6 @@ static int bcm63xx_iudma_dbg_show(struct seq_file *s, void *p) for (ch_idx = 0; ch_idx < BCM63XX_NUM_IUDMA; ch_idx++) { struct iudma_ch *iudma = &udc->iudma[ch_idx]; - struct list_head *pos; seq_printf(s, "IUDMA channel %d -- ", ch_idx); switch (iudma_defaults[ch_idx].ep_type) { @@ -2205,14 +2204,10 @@ static int bcm63xx_iudma_dbg_show(struct seq_file *s, void *p) seq_printf(s, " desc: %d/%d used", iudma->n_bds_used, iudma->n_bds); - if (iudma->bep) { - i = 0; - list_for_each(pos, &iudma->bep->queue) - i++; - seq_printf(s, "; %d queued\n", i); - } else { + if (iudma->bep) + seq_printf(s, "; %zu queued\n", list_count(&iudma->bep->queue)); + else seq_printf(s, "\n"); - } for (i = 0; i < iudma->n_bds; i++) { struct bcm_enet_desc *d = &iudma->bd_ring[i]; From patchwork Mon Nov 14 11:28:42 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andy Shevchenko X-Patchwork-Id: 19722 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a5d:6687:0:0:0:0:0 with SMTP id l7csp2092491wru; Mon, 14 Nov 2022 03:32:24 -0800 (PST) X-Google-Smtp-Source: AA0mqf4aOOg/WAXnZQrQH+8mRumdCuoSjAtMR/yqSGzMdymFH2HFwmzyqwly3gPVAtXwzwz++7Y1 X-Received: by 2002:a17:902:bd43:b0:17c:892e:7c8e with SMTP id b3-20020a170902bd4300b0017c892e7c8emr13221069plx.92.1668425544555; Mon, 14 Nov 2022 03:32:24 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1668425544; cv=none; d=google.com; s=arc-20160816; b=St7yfGupfCsrUEEzG78fQQVkXwaVjU46yllHIPuyoiku2O3H8juNiwjz63UmF3tz4Q /c+CLKLSC7SiOc5uxv/VuSwFX0SIWcP3bcH8FWvioaStOMyFE3xHEcwx2RanGBCi/E4W Bx/NMpNT+zwtV0Eb72Zaqi0XJA3XlK/eO1i1VMOIKj0PcGSF9EfkLBlTuWp4MN/bKpuA NIbSBCuTovr7exEhHJKh917Dz0wnXfwm9j5aEamxTIfPAiygVkwjG5jvd+PX9j0STPm1 qI0mOqgNYTq9chWmaj6EjQykVEh6/5rXWSmOAX+U5TyiZKQcim4CN4WLcEmWsSvbBGa1 E1Uw== 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 :references:in-reply-to:message-id:date:subject:cc:to:from :dkim-signature; bh=WQ6UMzIQnMhloVyQblTj904j0UWCg94jOt9f/T4z+zA=; b=L0a7GeANv2TFBH5Jsff6W2byI9XGEiBnNAQO8n2uQSH/yML+a0BdlzmgkfgzIqcyiA Dqf30OwUYbtj2DpBwhTjof2E8Pax8O9ZrJ2WkCOoBbebe95eCtD7+c9D9sZu+R85xMKc m4TBvzMFBn0E8oxbMwEBN9lLSg+Rzlg43ifIzquMejE7j2hOwIMU4uxrnJB28V5lopDe Q+Y6Uq/Sv596tWfLqhcCOUZWvZaDT0768IAxAIEoZynXJCtJOifefBjo9HS1WFrVz+hK SwdxNiNAQpwAazcJYF0E3umCNOdt+dqw/9a8cT9fBuqNZ8hUS5Z7+1qlxmDKAcq1WckX ylsA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@intel.com header.s=Intel header.b=CdI13GfW; 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=pass (p=NONE sp=NONE dis=NONE) header.from=intel.com Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id p10-20020a63e64a000000b0046fed3af370si9536063pgj.335.2022.11.14.03.32.11; Mon, 14 Nov 2022 03:32:24 -0800 (PST) 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; dkim=pass header.i=@intel.com header.s=Intel header.b=CdI13GfW; 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=pass (p=NONE sp=NONE dis=NONE) header.from=intel.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S236330AbiKNL32 (ORCPT + 99 others); Mon, 14 Nov 2022 06:29:28 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:52530 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S236479AbiKNL2s (ORCPT ); Mon, 14 Nov 2022 06:28:48 -0500 Received: from mga06.intel.com (mga06b.intel.com [134.134.136.31]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id AA43DB20; Mon, 14 Nov 2022 03:28:25 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1668425305; x=1699961305; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=CqSmXEq7rTgzGo2eyXNCXdiASe9v+/RyQA11rBsovD0=; b=CdI13GfWjfQQufzb6yMfsxLpUUzBGJfQ/jo5r4Dfy1lBBXAWRezYMoXv bNC4dFZBUPmxU/TVz1WrAizZYa8rwHO4iB69CJO4fTZZYV5gz5GNvK7FC zkbdkDDSappICXhsJ1ojWUeAYz7sniRhTBA3DGaVyA1X8Tja+phml7sGa YYAtb9zVremT12VR1T0RinxZbLcSRrXZmIu29P/f3N8udoJjkqW0SNCnD 5C7aJVafaLUoANmQkEC7ofF3rBDzUFDgrf9JCG3g8nyM2JwL6UXvpJbct fbOUtUOTdgPnWptKuQJ/L+iYWTS/WUl/aHHF4/NwTozoggZ2PSrOaj5SL w==; X-IronPort-AV: E=McAfee;i="6500,9779,10530"; a="374074729" X-IronPort-AV: E=Sophos;i="5.96,161,1665471600"; d="scan'208";a="374074729" Received: from orsmga006.jf.intel.com ([10.7.209.51]) by orsmga104.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 14 Nov 2022 03:28:22 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6500,9779,10530"; a="616278552" X-IronPort-AV: E=Sophos;i="5.96,161,1665471600"; d="scan'208";a="616278552" Received: from black.fi.intel.com ([10.237.72.28]) by orsmga006.jf.intel.com with ESMTP; 14 Nov 2022 03:28:19 -0800 Received: by black.fi.intel.com (Postfix, from userid 1003) id 48FA6339; Mon, 14 Nov 2022 13:28:44 +0200 (EET) From: Andy Shevchenko To: Jakob Koschel , Andy Shevchenko , Greg Kroah-Hartman , Mathias Nyman , linux-usb@vger.kernel.org, linux-kernel@vger.kernel.org Cc: Kevin Cernekee , Mathias Nyman , Andrew Morton Subject: [PATCH v1 4/4] xhci: Convert to use list_count() Date: Mon, 14 Nov 2022 13:28:42 +0200 Message-Id: <20221114112842.38565-4-andriy.shevchenko@linux.intel.com> X-Mailer: git-send-email 2.35.1 In-Reply-To: <20221114112842.38565-1-andriy.shevchenko@linux.intel.com> References: <20221114112842.38565-1-andriy.shevchenko@linux.intel.com> MIME-Version: 1.0 X-Spam-Status: No, score=-4.3 required=5.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_EF,RCVD_IN_DNSWL_MED,SPF_HELO_NONE, SPF_NONE 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: =?utf-8?q?INBOX?= X-GMAIL-THRID: =?utf-8?q?1749470983575377747?= X-GMAIL-MSGID: =?utf-8?q?1749470983575377747?= The list API now provides the list_count() to help with counting existing nodes in the list. Uilise it. Signed-off-by: Andy Shevchenko --- drivers/usb/host/xhci-ring.c | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/drivers/usb/host/xhci-ring.c b/drivers/usb/host/xhci-ring.c index ad81e9a508b1..817c31e3b0c8 100644 --- a/drivers/usb/host/xhci-ring.c +++ b/drivers/usb/host/xhci-ring.c @@ -2532,7 +2532,6 @@ static int handle_tx_event(struct xhci_hcd *xhci, union xhci_trb *ep_trb; int status = -EINPROGRESS; struct xhci_ep_ctx *ep_ctx; - struct list_head *tmp; u32 trb_comp_code; int td_num = 0; bool handling_skipped_tds = false; @@ -2580,10 +2579,8 @@ static int handle_tx_event(struct xhci_hcd *xhci, } /* Count current td numbers if ep->skip is set */ - if (ep->skip) { - list_for_each(tmp, &ep_ring->td_list) - td_num++; - } + if (ep->skip) + td_num += list_count(&ep_ring->td_list); /* Look for common error cases */ switch (trb_comp_code) {