From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id 667F1A034C; Mon, 28 Mar 2022 08:08:21 +0200 (CEST) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id DE70E41141; Mon, 28 Mar 2022 08:08:20 +0200 (CEST) Received: from mga07.intel.com (mga07.intel.com [134.134.136.100]) by mails.dpdk.org (Postfix) with ESMTP id 492F24068B for ; Mon, 28 Mar 2022 08:08:18 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1648447699; x=1679983699; h=from:to:cc:subject:date:message-id:references: in-reply-to:content-transfer-encoding:mime-version; bh=3IU/N/o2jMkvb/D9uArBcsEEjv/NAXSZarKRCooy6jg=; b=GOCVqQVzhDbiUieqkkQCaxKyOb1n83DG0gu3tTXQNcEiKzpiN0XvuxnJ VlivNAnj7N2MYYT2bAsYI3RVdszAGlKVBc09fhp4Is0I64B57v8M9VD82 V9JFvTlHIsHOqBu3yE3o2iG3yyhUMGa47LnOmRi0oUBJ+cMLbyi/q9UIG 6+LGuc9QJ8vbFaRRtq+GUPRNCushgnJkPCCrd01NRcFB5N0KlaiZaHI9A IO3Sp1z3EfDUo/2INf7uQjRGCf4+IOKu65IBWuf+DwF35PxV97B46vzZ2 ZmX0YDh1xzS0y08PuMP5YCtyTl4PDDNMQ9Pv5/MrI1vvH4bN3RNCOkaYg w==; X-IronPort-AV: E=McAfee;i="6200,9189,10299"; a="322106615" X-IronPort-AV: E=Sophos;i="5.90,216,1643702400"; d="scan'208";a="322106615" Received: from orsmga006.jf.intel.com ([10.7.209.51]) by orsmga105.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 27 Mar 2022 23:08:17 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.90,216,1643702400"; d="scan'208";a="520885512" Received: from orsmsx603.amr.corp.intel.com ([10.22.229.16]) by orsmga006.jf.intel.com with ESMTP; 27 Mar 2022 23:08:17 -0700 Received: from orsmsx608.amr.corp.intel.com (10.22.229.21) by ORSMSX603.amr.corp.intel.com (10.22.229.16) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2308.27; Sun, 27 Mar 2022 23:08:17 -0700 Received: from orsmsx606.amr.corp.intel.com (10.22.229.19) by ORSMSX608.amr.corp.intel.com (10.22.229.21) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2308.27; Sun, 27 Mar 2022 23:08:16 -0700 Received: from ORSEDG602.ED.cps.intel.com (10.7.248.7) by orsmsx606.amr.corp.intel.com (10.22.229.19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2308.27 via Frontend Transport; Sun, 27 Mar 2022 23:08:16 -0700 Received: from NAM11-DM6-obe.outbound.protection.outlook.com (104.47.57.176) by edgegateway.intel.com (134.134.137.103) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.2308.21; Sun, 27 Mar 2022 23:08:16 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Tx5fscNeIkAq070SDUS6/eu195TYurKEaFs3XGsO/ZeTDFTwRLTRSPsG5UWKYp1uTmzIkLV6msuOXNSBvhFzT58YAf2uXUIGGnyKSpb7B6ULacpu5OPr4VaBW10rcfPvrymOPAtW2c642Ms9epBQHW8ps/YbTThmobTEw4u5VoEJq8lTM3lYUV2pQECTJhAaQCnkwwcN9KyLQYHafgdW3drU5S0+c+VBjKhmtDWsE6/qAfnhau/x/i4+grg3AzscQjQs4n/yium+IG/H0aZHVhe9I5il76jyJvvmfRYqBa6H9uqhgSWSL6E7fL0q8UmERImyGPe0G/hEaXy5yUfkMw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=fuMNzyjZcEEkxpWmVpIvq3SkOU7JXscXv2jG0SXdmrQ=; b=n86G4DEejxBwoyqew/X8ji3BT+w34TCMWVcCkjceDdJnTuUBO0bSsE3ZSQzHj5VpsX+IFJS2fq9+djt4xlZU8+cLu83gUq1A0tXuLCqUkahGVjYILdpLjlE2NdyJ4YM8UsJcvujvkop6bWe+k7JkIve+1fN+yorfns7r+PRCZTpoIfiL7XcJz4Yf2p+nhOeWpKCbDk+EGAaOJKfTkIaCUXu0A/rNP18E15YIbs+/8kdwHIOBN/5PP0EeBuygFE1CdO1i4i+YeCAQk73wb9tSa8EoAAe8L0a9Tgjt6AdEZFCqLUYA3ekkUxmcgsmB3cyx/4MyI09l23wAVhF2gCn74w== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=intel.com; dmarc=pass action=none header.from=intel.com; dkim=pass header.d=intel.com; arc=none Received: from DM8PR11MB5605.namprd11.prod.outlook.com (2603:10b6:8:26::11) by CO1PR11MB4993.namprd11.prod.outlook.com (2603:10b6:303:6c::23) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5102.19; Mon, 28 Mar 2022 06:08:13 +0000 Received: from DM8PR11MB5605.namprd11.prod.outlook.com ([fe80::4868:ed44:2d90:55dd]) by DM8PR11MB5605.namprd11.prod.outlook.com ([fe80::4868:ed44:2d90:55dd%6]) with mapi id 15.20.5102.023; Mon, 28 Mar 2022 06:08:13 +0000 From: "Pai G, Sunil" To: "Wang, YuanX" , "maxime.coquelin@redhat.com" , "Xia, Chenbo" CC: "dev@dpdk.org" , "Hu, Jiayu" , "Ding, Xuan" , "Yang, YvonneX" Subject: RE: [RFC v2 1/2] vhost: support clear in-flight packets for async dequeue Thread-Topic: [RFC v2 1/2] vhost: support clear in-flight packets for async dequeue Thread-Index: AQHYNSxAUj2cWd6mi0GmX700SiXEOKzUZ1wQ Date: Mon, 28 Mar 2022 06:08:13 +0000 Message-ID: References: <20220117132847.884998-1-yuanx.wang@intel.com> <20220311173414.93216-1-yuanx.wang@intel.com> <20220311173414.93216-2-yuanx.wang@intel.com> In-Reply-To: <20220311173414.93216-2-yuanx.wang@intel.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: dlp-product: dlpe-windows dlp-reaction: no-action dlp-version: 11.6.401.20 authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=intel.com; x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: 17dd846c-4c5d-4ad2-a249-08da10815798 x-ms-traffictypediagnostic: CO1PR11MB4993:EE_ x-ld-processed: 46c98d88-e344-4ed4-8496-4ed7712e255d,ExtAddr x-microsoft-antispam-prvs: x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: bYNu8ovhcVu44lJlZ5ZVfhWi66g8QFi+DNMBSLf9NB1959tM9VwHfcxC7BuQ+A6FJ8uoHAB/NLSnKtgw94LhyG8SIwjVhfexVKy/0It+JQDLwpFj4dlQ2vRFpnxn3Dh/95RXjgzDk+ie5aOmOF5q0xT4xHocujSfQPmbOFPSiToqIe7ftIcDMVgy65TOCl/eHnLaJ6LwQjPNZqehjtNMOzGP978Y6f20peMWZf3gGjMfTNw+RT9VYQEa0Nxv7PoGXcssh9mW5I3y7Ycur9cXrVO6Ikvknsg8zfJWzzKWMPJimG1UUMTYkbdxn+YgF4V3zwY8aYxlGAM5cuioicCuivOOroMQ8bj5TQjSiRt6S6k9HOCaMuFms/Fi5lvP23B/cTqjCOvWE9HusbegHM81aN0tw2zoLKA1LMhv6T5XUPesGypltsUapKj2fHuyaPbddH/EaEm2rDTqyRcNK+k7LzQIABNTGJu1Oy4cY1oDpSh3h70CBzXq+nwc4ME0i5MPhasXsWwfLfSL3gPu26f+7OK8mK3TYsZAUqribGZUjw24NVgJ52WaJY55/iwvwt2muoOVMoDqwHpoJS5ail2isAQWvdWoC191TXek9+3FSN/wl5d+BoSVW++bAw5SzAbDAaCMd3WumaZhtEhldCyLjiDdT53rLKwphfyVswynhXMZipzMMhahWYbTG76EPepvz9x136DgjwMvWTIC21nDTWLeC7IIFFt1iOeANsLfXfs01lwqvJgXQTDsqVmUbv4VLE+zsArBvbvYkJDtkt19cagWuHgfaiOD6Prf4MCh0lk= x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:DM8PR11MB5605.namprd11.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230001)(366004)(316002)(7696005)(110136005)(6636002)(966005)(83380400001)(82960400001)(26005)(508600001)(38070700005)(186003)(107886003)(122000001)(54906003)(6506007)(71200400001)(86362001)(9686003)(5660300002)(2906002)(38100700002)(8936002)(33656002)(66556008)(52536014)(64756008)(8676002)(55016003)(66946007)(76116006)(66476007)(4326008)(66446008); DIR:OUT; SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?us-ascii?Q?vezmmkD5yNTrUOn9M3aSWlJ5pt0jgvvqjAoxHTM3z3nRnAibnrJ0wm7UI0rb?= =?us-ascii?Q?OjX6tiITerpCJtw65J9DbUhCvEz7Ls2OfayLfocKV08MnBvs1KQuGNtxw6qU?= =?us-ascii?Q?V4MDIIv/4h1S/Zkgqy6mVFKhoT6RArLh7BtlX48cH7J3KVX5YG0xnlp65fOS?= =?us-ascii?Q?eTnUTlOf/TV3Ar9KPRYgbmyl/leQxJ3QDeR4xbstUev17lbATGrxnl3CYZI8?= =?us-ascii?Q?Sf0K0Hiy8/afm/tchAaJ+qAbIbjIWBPfZzLOS90vmbOy2QD86/arhLpm5IjQ?= =?us-ascii?Q?cmQ6JdAfZnLICFFKktBtYolYfDiWkALemT8uylwDmPX7v4rHDqsUiBMkUGiJ?= =?us-ascii?Q?zupojO7m17O1Dl3ujd44NPc820JHq1o0kwaRzrBvoxSoHAnomgN9Vl6yhciN?= =?us-ascii?Q?COdUdI7d6Jp7WlIdHF9xwryYhu2YzimjlTFV/Wj3grPPuTA22aoGBkpfJ84D?= =?us-ascii?Q?c/LNIzYzKKZ2vfk3wcC8lvuRmBoadLDBAKtC+ydS9mfd2LAnqA5s7DfUP4ts?= =?us-ascii?Q?zLKI0fHnXggvxKWCNhi7aJEsulTcVKU35Rl7Hlk0dMQY4lC7jRWXLZi7jaQB?= =?us-ascii?Q?PqQZbXuX8qGNuPT+5Uh9us0d/ss0+IT5zb1CD0SIt3/E7B5nIYI9IlhjCC69?= =?us-ascii?Q?tMBawFQ77IjotB1kRp2kJIIQ+TeDSysDzkk0NsFPneiJ4p+tiYEIMqshfVPq?= =?us-ascii?Q?HYfLuzV+F51/UZQBrBFZaVtTAw0XvpxjkKEDnpf2U/0Y6Xlf10X5v692jTQr?= =?us-ascii?Q?Z18G1p2ok1FGDXdSadRQzTtxtY+8niGodgOxjJWl/aoDmYuQ8qBcd6ZqYlFj?= =?us-ascii?Q?ZBVay20ohrE7n9s6gp3IbLcrlN9eSdNSwjQxUSllMKRGwCky5sBxXdOGHHXE?= =?us-ascii?Q?dEGYZwW1bedbKefK4PMdcBPJbi+A/H6z0Rbz4IDmVrvX9nwosjmp+d90DwLs?= =?us-ascii?Q?JuSjT8otsolFuJ905+8msYZLKtJmKd0mc35vrqHlbplaXnQ/QB9MIdecU3hU?= =?us-ascii?Q?bUekODHabKyOLjZiuy1NqilSrmNWYz9yBjiiAyaWwlWFr7N9Mv7hDOLOQ8hb?= =?us-ascii?Q?d5LJZJZ5atAqUo+brAR9a8AxwA8zEi3abslXWOMD0NDIxhhTUakDeq0AbiJM?= =?us-ascii?Q?TShM7iD3Fy418vcJ1O5hJ+relA4DbX+keedDsFmtekOrALsmo7Eb9Drppg2V?= =?us-ascii?Q?QAwIf6ebdAYijAL2V2ZhgYDHMCUppnYDC8hNE0D+0YPYanBcA4igcv4wQfKA?= =?us-ascii?Q?zWxW4dJGFiCJFwQFW6AyJlWA+YXQlgTl6609ElybK92P85CNiHYSMhfmRJQK?= =?us-ascii?Q?cHdyn09wvjdNMmhCoq5fpmqwa0Z8FE3KcnwfK5WgCL31X+IgF5mw/gSl7bCl?= =?us-ascii?Q?hCR76h5uUEWYnh1Zux1912NxLM18E8ahNJj/xzAevIJ+EAqe2DrNSAdwG49k?= =?us-ascii?Q?eX2GVQdeOM4vl0Wgg4akObU9AUssaOM58pWwmdCglc+fU6FfEyeiw2wdoAsm?= =?us-ascii?Q?3FwO4+rxFTxEfepCz/TR3e5a8+Mq9gVAxiLWV4ZYkY7XsnmCoHuIxmbZhvw6?= =?us-ascii?Q?XOuVYjPoiYz8GcZ1kSoMTHm9s4vh8nZ/I22s3E3a8WffNZoSwKDzK1HPVIPH?= =?us-ascii?Q?gAOi4YUxNl+/K71Y5If1c2f+9JP4puLsHadKykoOQtwuH0K/lejcgmXfK8pC?= =?us-ascii?Q?HdvMKHcrqUxYIGKyuEb3PsUQYnK2fF2OU1swfPbe0eXT7Phj7tRIfxbjpHbL?= =?us-ascii?Q?3qmN6WR0lw=3D=3D?= Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: DM8PR11MB5605.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 17dd846c-4c5d-4ad2-a249-08da10815798 X-MS-Exchange-CrossTenant-originalarrivaltime: 28 Mar 2022 06:08:13.1386 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 46c98d88-e344-4ed4-8496-4ed7712e255d X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: i+6j+P2qVYEf6ZMs3Mw4+ccElta6NuWr1SpA0RKF+2NzQA7cOoYMUvzmj0sG98PQZFwBKsVdnn3gaqe2t7Uxog== X-MS-Exchange-Transport-CrossTenantHeadersStamped: CO1PR11MB4993 X-OriginatorOrg: intel.com X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Hi Yuan, Thanks for the patch, comment inline. > +uint16_t > +rte_vhost_clear_queue(int vid, uint16_t queue_id, struct rte_mbuf **pkts= , > + uint16_t count, int16_t dma_id, uint16_t vchan_id) { > + struct virtio_net *dev =3D get_device(vid); > + struct vhost_virtqueue *vq; > + uint16_t n_pkts_cpl =3D 0; > + > + if (!dev) > + return 0; > + > + VHOST_LOG_DATA(DEBUG, "(%s) %s\n", dev->ifname, __func__); > + if (unlikely(queue_id >=3D dev->nr_vring)) { > + VHOST_LOG_DATA(ERR, "(%s) %s: invalid virtqueue idx %d.\n", > + dev->ifname, __func__, queue_id); > + return 0; > + } > + > + vq =3D dev->virtqueue[queue_id]; > + I think the following checks must be protected by spinlock. Similar to : https://patches.dpdk.org/project/dpdk/patch/20220328020754.115= 5063-1-jiayu.hu@intel.com/=20 > + if (unlikely(!vq->async)) { > + VHOST_LOG_DATA(ERR, "(%s) %s: async not registered for queue > id %d.\n", > + dev->ifname, __func__, queue_id); > + return 0; > + } > + > + if (unlikely(!dma_copy_track[dma_id].vchans || > + > !dma_copy_track[dma_id].vchans[vchan_id].pkts_cmpl_flag_addr)) { > + VHOST_LOG_DATA(ERR, "(%s) %s: invalid channel %d:%u.\n", dev- > >ifname, __func__, > + dma_id, vchan_id); > + return 0; > + } > + > + if (!rte_spinlock_trylock(&vq->access_lock)) { > + VHOST_LOG_DATA(ERR, > + "(%d) %s: failed to clear async queue id %d, virtqueue > busy.\n", > + dev->vid, __func__, queue_id); > + return 0; > + } > + Thanks and regards, Sunil