From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 1FB11E81E1F for ; Fri, 6 Oct 2023 18:49:56 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender: Content-Transfer-Encoding:Content-Type:List-Subscribe:List-Help:List-Post: List-Archive:List-Unsubscribe:List-Id:In-Reply-To:MIME-Version:References: Subject:Cc:To:From:Date:Message-ID:Reply-To:Content-ID:Content-Description: Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID: List-Owner; bh=UgvC2mt1F/w53SmkdPGORyUreTWMt3AVvZvJxZHDRL0=; b=FrloyDg6mm04Fp ClTSkcVvJG1nN2iJSD12V1eiNnHD0NoZ7oXtovTE1UADoVnYAVh454v4c+Fo9yxlvNcE/MJwwEP3r F4wXz5l7QTqNs8nFh+l7Kfsb7ag6FWM9rP+53BBaCjFa6AMcNItLvNO4Sq6+OsOBagH96dBnPYuPv UcY9Fr5GUFzuJIum3Tmg7sbcaSV7VfzUxdm9EXyoPBH9ro9ATSo+1MdsH9wzjH2Syfe2D+yeFO1dd YiwOXjDKtpDmKyFfLKAo+39qbwOXK5gLgRoaxRpsUeixZJrEdqSfwAF3m0+gXVsYVJqVFOk6vVQp0 YCAToaCZIAdEPEKILZWw==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.96 #2 (Red Hat Linux)) id 1qoptX-006L5E-2E; Fri, 06 Oct 2023 18:49:51 +0000 Received: from mail-wm1-x333.google.com ([2a00:1450:4864:20::333]) by bombadil.infradead.org with esmtps (Exim 4.96 #2 (Red Hat Linux)) id 1qoptT-006L4D-11; Fri, 06 Oct 2023 18:49:48 +0000 Received: by mail-wm1-x333.google.com with SMTP id 5b1f17b1804b1-405361bb94eso23819055e9.0; Fri, 06 Oct 2023 11:49:44 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1696618183; x=1697222983; darn=lists.infradead.org; h=in-reply-to:content-transfer-encoding:content-disposition :mime-version:references:subject:cc:to:from:date:message-id:from:to :cc:subject:date:message-id:reply-to; bh=J8TnZukIluCCYT6M1BV1r+HvisyoMBi+KKDF01G+Mhg=; b=DUHiT/qMDDbFqIoru6Z33ILpOqWAf2n6eyNww/ILMc2qGhPH1JmMc+6aXW5Z01CJff usuw78kXTthN5eO8u06P57EaDAR6lblgzOcENEkCLTdF91iSK/9SKM9ETulBAzO/PQds IvOQe7N3M5OPU7UmkLUKInFH1wwnMjOHXT5aneZWgtGdSdUyBbfqKwh/AUPuk43CpVWW qZvmGLM1WH4Rqllmtc7rHJHJerT2W7OBqbx0LObqrlYu7Dk28IZmhIMtScoaXHFSiCLO kyLES+yH1TMYnOpk6/KONPrbvg2oVPPfuJ3N3HnsiIXMFEwyBYB9J5e4q/Y3vXz1BZEV RDOw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1696618183; x=1697222983; h=in-reply-to:content-transfer-encoding:content-disposition :mime-version:references:subject:cc:to:from:date:message-id :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=J8TnZukIluCCYT6M1BV1r+HvisyoMBi+KKDF01G+Mhg=; b=JiMQCocpexreftnmsUPyRPSroLRFg3NQnt31Z2YLkumZD9hWZIM1Ajzuv6UK3A3Ob7 gnJdbIVR6182YGEu654hW6L9foDp+rGbEryKEj2FDvhMfeEVmPbJC4JFUdF4SmcZAQXp C+bUirZk1zslTepIXW6GEx0ADcaUQtd+xOGTI6shEACUdFQ473bpcF2K05sIZDsRg4D4 y5YJY52ea55WEwFZS5rH1LoFf3QN4p0TbobByP8eJkWijhaZF9+UAtTcPfQWZ3oIdkTf u2vxghrrlNclIzwEo+fVBi2TSmHIlywYjfAhG3kRWOXzArK94fVt8G1xpEiC6Nplxp0t oupg== X-Gm-Message-State: AOJu0Yy+uPQwO+2SoZucCgQY0+x8wrjhsr9OI1Xsw7c+XzLW5j1Vb6N5 Fk3scPDEo0RtxtKRKqxjay8= X-Google-Smtp-Source: AGHT+IGnyXDNMYk8HFRpUEcTSZlI2oSIFcmKPz3Tef9zJ6V0zvxO56KtfzCWQ2oyr2OO4KuUJibc4g== X-Received: by 2002:a05:6000:48:b0:31f:f8a5:15db with SMTP id k8-20020a056000004800b0031ff8a515dbmr8155280wrx.48.1696618182580; Fri, 06 Oct 2023 11:49:42 -0700 (PDT) Received: from Ansuel-xps. (93-34-89-13.ip49.fastwebnet.it. [93.34.89.13]) by smtp.gmail.com with ESMTPSA id p4-20020a5d68c4000000b003232f167df5sm2217218wrw.108.2023.10.06.11.49.39 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 06 Oct 2023 11:49:41 -0700 (PDT) Message-ID: <652056c5.5d0a0220.2b60d.c5dc@mx.google.com> X-Google-Original-Message-ID: Date: Fri, 6 Oct 2023 20:49:41 +0200 From: Christian Marangi To: Eric Dumazet Cc: Jason Gunthorpe , Leon Romanovsky , Wolfgang Grandegger , Marc Kleine-Budde , "David S. Miller" , Jakub Kicinski , Paolo Abeni , Chris Snook , Raju Rangoju , Jeroen de Borst , Praveen Kaligineedi , Shailend Chand , Douglas Miller , Michael Ellerman , Nicholas Piggin , Christophe Leroy , Nick Child , Haren Myneni , Rick Lindsley , Dany Madden , Thomas Falcon , Tariq Toukan , Alexandre Torgue , Jose Abreu , Maxime Coquelin , Krzysztof Halasa , Kalle Valo , Jeff Johnson , Gregory Greenman , Chandrashekar Devegowda , Intel Corporation , Chiranjeevi Rapolu , Liu Haijun , M Chetan Kumar , Ricardo Martinez , Loic Poulain , Sergey Ryazanov , Johannes Berg , Yuanjun Gong , Simon Horman , Rob Herring , Ziwei Xiao , Rushil Gupta , Coco Li , Thomas Gleixner , Junfeng Guo , Uwe =?iso-8859-1?Q?Kleine-K=F6nig?= , Wei Fang , Krzysztof Kozlowski , Yuri Karpov , Zhengchao Shao , Andrew Lunn , Zheng Zengkai , Lee Jones , Maximilian Luz , "Rafael J. Wysocki" , Dawei Li , Anjaneyulu , Benjamin Berg , linux-rdma@vger.kernel.org, linux-kernel@vger.kernel.org, linux-can@vger.kernel.org, netdev@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-stm32@st-md-mailman.stormreply.com, linux-arm-kernel@lists.infradead.org, ath10k@lists.infradead.org, linux-wireless@vger.kernel.org Subject: Re: [net-next PATCH v2 4/4] netdev: use napi_schedule bool instead of napi_schedule_prep/__napi_schedule References: <20231003145150.2498-1-ansuelsmth@gmail.com> <20231003145150.2498-4-ansuelsmth@gmail.com> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20231006_114947_356432_C31F8B8A X-CRM114-Status: GOOD ( 34.91 ) X-BeenThere: ath10k@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Sender: "ath10k" Errors-To: ath10k-bounces+ath10k=archiver.kernel.org@lists.infradead.org T24gVGh1LCBPY3QgMDUsIDIwMjMgYXQgMDY6MTY6MjZQTSArMDIwMCwgRXJpYyBEdW1hemV0IHdy b3RlOgo+IE9uIFR1ZSwgT2N0IDMsIDIwMjMgYXQgODozNuKAr1BNIENocmlzdGlhbiBNYXJhbmdp IDxhbnN1ZWxzbXRoQGdtYWlsLmNvbT4gd3JvdGU6Cj4gPgo+ID4gUmVwbGFjZSBpZiBjb25kaXRp b24gb2YgbmFwaV9zY2hlZHVsZV9wcmVwL19fbmFwaV9zY2hlZHVsZSBhbmQgdXNlIGJvb2wKPiA+ IGZyb20gbmFwaV9zY2hlZHVsZSBkaXJlY3RseSB3aGVyZSBwb3NzaWJsZS4KPiA+Cj4gPiBTaWdu ZWQtb2ZmLWJ5OiBDaHJpc3RpYW4gTWFyYW5naSA8YW5zdWVsc210aEBnbWFpbC5jb20+Cj4gPiAt LS0KPiA+ICBkcml2ZXJzL25ldC9ldGhlcm5ldC9hdGhlcm9zL2F0bHgvYXRsMS5jICAgICB8IDQg Ky0tLQo+ID4gIGRyaXZlcnMvbmV0L2V0aGVybmV0L3Rvc2hpYmEvdGMzNTgxNS5jICAgICAgIHwg NCArLS0tCj4gPiAgZHJpdmVycy9uZXQvd2lyZWxlc3MvaW50ZWwvaXdsd2lmaS9wY2llL3J4LmMg fCA0ICstLS0KPiA+ICAzIGZpbGVzIGNoYW5nZWQsIDMgaW5zZXJ0aW9ucygrKSwgOSBkZWxldGlv bnMoLSkKPiA+Cj4gPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9uZXQvZXRoZXJuZXQvYXRoZXJvcy9h dGx4L2F0bDEuYyBiL2RyaXZlcnMvbmV0L2V0aGVybmV0L2F0aGVyb3MvYXRseC9hdGwxLmMKPiA+ IGluZGV4IDAyYWE2ZmQ4ZWJjMi4uYTkwMTRkNzkzMmRiIDEwMDY0NAo+ID4gLS0tIGEvZHJpdmVy cy9uZXQvZXRoZXJuZXQvYXRoZXJvcy9hdGx4L2F0bDEuYwo+ID4gKysrIGIvZHJpdmVycy9uZXQv ZXRoZXJuZXQvYXRoZXJvcy9hdGx4L2F0bDEuYwo+ID4gQEAgLTI0NDYsNyArMjQ0Niw3IEBAIHN0 YXRpYyBpbnQgYXRsMV9yaW5nc19jbGVhbihzdHJ1Y3QgbmFwaV9zdHJ1Y3QgKm5hcGksIGludCBi dWRnZXQpCj4gPgo+ID4gIHN0YXRpYyBpbmxpbmUgaW50IGF0bDFfc2NoZWRfcmluZ3NfY2xlYW4o c3RydWN0IGF0bDFfYWRhcHRlciogYWRhcHRlcikKPiA+ICB7Cj4gPiAtICAgICAgIGlmICghbmFw aV9zY2hlZHVsZV9wcmVwKCZhZGFwdGVyLT5uYXBpKSkKPiA+ICsgICAgICAgaWYgKCFuYXBpX3Nj aGVkdWxlKCZhZGFwdGVyLT5uYXBpKSkKPiA+ICAgICAgICAgICAgICAgICAvKiBJdCBpcyBwb3Nz aWJsZSBpbiBjYXNlIGV2ZW4gdGhlIFJYL1RYIGludHMgYXJlIGRpc2FibGVkIHZpYSBJTVIKPiA+ ICAgICAgICAgICAgICAgICAgKiByZWdpc3RlciB0aGUgSVNSIGJpdHMgYXJlIHNldCBhbnl3YXkg KGJ1dCBkbyBub3QgcHJvZHVjZSBJUlEpLgo+ID4gICAgICAgICAgICAgICAgICAqIFRvIGhhbmRs ZSBzdWNoIHNpdHVhdGlvbiB0aGUgbmFwaSBmdW5jdGlvbnMgdXNlZCB0byBjaGVjayBpcwo+ID4g QEAgLTI0NTQsOCArMjQ1NCw2IEBAIHN0YXRpYyBpbmxpbmUgaW50IGF0bDFfc2NoZWRfcmluZ3Nf Y2xlYW4oc3RydWN0IGF0bDFfYWRhcHRlciogYWRhcHRlcikKPiA+ICAgICAgICAgICAgICAgICAg Ki8KPiA+ICAgICAgICAgICAgICAgICByZXR1cm4gMDsKPiA+Cj4gPiAtICAgICAgIF9fbmFwaV9z Y2hlZHVsZSgmYWRhcHRlci0+bmFwaSk7Cj4gPiAtCj4gPiAgICAgICAgIC8qCj4gPiAgICAgICAg ICAqIERpc2FibGUgUlgvVFggaW50cyB2aWEgSU1SIHJlZ2lzdGVyIGlmIGl0IGlzCj4gPiAgICAg ICAgICAqIGFsbG93ZWQuIE5BUEkgaGFuZGxlciBtdXN0IHJlZW5hYmxlIHRoZW0gaW4gc2FtZQo+ ID4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvbmV0L2V0aGVybmV0L3Rvc2hpYmEvdGMzNTgxNS5jIGIv ZHJpdmVycy9uZXQvZXRoZXJuZXQvdG9zaGliYS90YzM1ODE1LmMKPiA+IGluZGV4IDE0Y2Y2ZWNm NmQwZC4uYThiOGEwZTEzZjlhIDEwMDY0NAo+ID4gLS0tIGEvZHJpdmVycy9uZXQvZXRoZXJuZXQv dG9zaGliYS90YzM1ODE1LmMKPiA+ICsrKyBiL2RyaXZlcnMvbmV0L2V0aGVybmV0L3Rvc2hpYmEv dGMzNTgxNS5jCj4gPiBAQCAtMTQzNiw5ICsxNDM2LDcgQEAgc3RhdGljIGlycXJldHVybl90IHRj MzU4MTVfaW50ZXJydXB0KGludCBpcnEsIHZvaWQgKmRldl9pZCkKPiA+ICAgICAgICAgaWYgKCEo ZG1hY3RsICYgRE1BX0ludE1hc2spKSB7Cj4gPiAgICAgICAgICAgICAgICAgLyogZGlzYWJsZSBp bnRlcnJ1cHRzICovCj4gPiAgICAgICAgICAgICAgICAgdGNfd3JpdGVsKGRtYWN0bCB8IERNQV9J bnRNYXNrLCAmdHItPkRNQV9DdGwpOwo+ID4gLSAgICAgICAgICAgICAgIGlmIChuYXBpX3NjaGVk dWxlX3ByZXAoJmxwLT5uYXBpKSkKPiA+IC0gICAgICAgICAgICAgICAgICAgICAgIF9fbmFwaV9z Y2hlZHVsZSgmbHAtPm5hcGkpOwo+ID4gLSAgICAgICAgICAgICAgIGVsc2Ugewo+ID4gKyAgICAg ICAgICAgICAgIGlmICghbmFwaV9zY2hlZHVsZSgmbHAtPm5hcGkpKSB7Cj4gPiAgICAgICAgICAg ICAgICAgICAgICAgICBwcmludGsoS0VSTl9FUlIgIiVzOiBpbnRlcnJ1cHQgdGFrZW4gaW4gcG9s bFxuIiwKPiA+ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZXYtPm5hbWUpOwo+ID4g ICAgICAgICAgICAgICAgICAgICAgICAgQlVHKCk7Cj4gCj4gSG1tbS4uLiBjb3VsZCB5b3UgYWxz byByZW1vdmUgdGhpcyBCVUcoKSA/IEkgdGhpbmsgdGhpcyBjb2RlIHBhdGggY2FuIGJlIHRha2Vu Cj4gaWYgc29tZSBhcHBsaWNhdGlvbnMgYXJlIHVzaW5nIGJ1c3kgcG9sbGluZy4KPiAKPiBPciBz aW1wbHkgcmV3cml0ZSB0aGlzIHdpdGggdGhlIHRyYWRpdGlvbmFsCj4gCj4gaWYgKG5hcGlfc2No ZWR1bGVfcHJlcCgmbHAtPm5hcGkpKSB7Cj4gICAgLyogZGlzYWJsZSBpbnRlcnJ1cHRzICovCj4g ICAgdGNfd3JpdGVsKGRtYWN0bCB8IERNQV9JbnRNYXNrLCAmdHItPkRNQV9DdGwpOwo+ICAgICBf X25hcGlfc2NoZWR1bGUoJmxwLT5uYXBpKTsKPiB9Cj4gCj4KCk1oaGggaXMgaXQgc2FmZSB0byBk byBzbz8gSSBtZWFuIGl0IHNlZW1zIHZlcnkgd3JvbmcgdG8gcHJpbnQgYSB3YXJuaW5nCmFuZCBC VUcoKSBpbnN0ZWFkIG9mIGRpc2FibGluZyB0aGUgaW50ZXJydXB0IG9ubHkgaWYgbmFwaSBjYW4g YmUKc2NoZWR1bGVkLi4uIE1heWJlIGlzIHZlcnkgb2xkIGNvZGU/IFRoZSBtb3JlIEkgc2VlIHRo aXMgdGhlIG1vcmUgSSBzZWUKcHJvYmxlbS4uLiAocmFuZG9tbHkgZGlzYWJsaW5nIHRoZSBpbnRl cnJ1cHQgYW5kIHRoZW4gbWFrZSB0aGUga2VybmVsCmRpZSkKCj4gCj4gPiBkaWZmIC0tZ2l0IGEv ZHJpdmVycy9uZXQvd2lyZWxlc3MvaW50ZWwvaXdsd2lmaS9wY2llL3J4LmMgYi9kcml2ZXJzL25l dC93aXJlbGVzcy9pbnRlbC9pd2x3aWZpL3BjaWUvcnguYwo+ID4gaW5kZXggMjNiNWEwYWRjYmQ2 Li4xNDZiYzdiZDE0ZmIgMTAwNjQ0Cj4gPiAtLS0gYS9kcml2ZXJzL25ldC93aXJlbGVzcy9pbnRl bC9pd2x3aWZpL3BjaWUvcnguYwo+ID4gKysrIGIvZHJpdmVycy9uZXQvd2lyZWxlc3MvaW50ZWwv aXdsd2lmaS9wY2llL3J4LmMKPiA+IEBAIC0xNjYwLDkgKzE2NjAsNyBAQCBpcnFyZXR1cm5fdCBp d2xfcGNpZV9pcnFfcnhfbXNpeF9oYW5kbGVyKGludCBpcnEsIHZvaWQgKmRldl9pZCkKPiA+ICAg ICAgICAgSVdMX0RFQlVHX0lTUih0cmFucywgIlslZF0gR290IGludGVycnVwdFxuIiwgZW50cnkt PmVudHJ5KTsKPiA+Cj4gPiAgICAgICAgIGxvY2FsX2JoX2Rpc2FibGUoKTsKPiA+IC0gICAgICAg aWYgKG5hcGlfc2NoZWR1bGVfcHJlcCgmcnhxLT5uYXBpKSkKPiA+IC0gICAgICAgICAgICAgICBf X25hcGlfc2NoZWR1bGUoJnJ4cS0+bmFwaSk7Cj4gPiAtICAgICAgIGVsc2UKPiA+ICsgICAgICAg aWYgKCFuYXBpX3NjaGVkdWxlKCZyeHEtPm5hcGkpKQo+ID4gICAgICAgICAgICAgICAgIGl3bF9w Y2llX2NsZWFyX2lycSh0cmFucywgZW50cnktPmVudHJ5KTsKPiAKPiBTYW1lIHJlbWFyayBoZXJl IGFib3V0IHR3aXN0ZWQgbG9naWMuCj4gCgpFaGhoIGhlcmUgd2UgbmVlZCB0byBiZSBjYXJlZnVs Li4uIFdlIGNhbiBkbyB0aGUgdXN1YWwgcHJlcC9fX3NjaGVkdWxlCndpdGggdGhlIERNQSBkaXNh YmxlIGluIGJldHdlZW4uLi4KCkZyb20gdGhlIGNvbW1lbnRzIG9mIGl3bF9wY2llX2NsZWFyX2ly cS4KCgkvKgoJICogQmVmb3JlIHNlbmRpbmcgdGhlIGludGVycnVwdCB0aGUgSFcgZGlzYWJsZXMg aXQgdG8gcHJldmVudAoJICogYSBuZXN0ZWQgaW50ZXJydXB0LiBUaGlzIGlzIGRvbmUgYnkgd3Jp dGluZyAxIHRvIHRoZSBjb3JyZXNwb25kaW5nCgkgKiBiaXQgaW4gdGhlIG1hc2sgcmVnaXN0ZXIu IEFmdGVyIGhhbmRsaW5nIHRoZSBpbnRlcnJ1cHQsIGl0IHNob3VsZCBiZQoJICogcmUtZW5hYmxl ZCBieSBjbGVhcmluZyB0aGlzIGJpdC4gVGhpcyByZWdpc3RlciBpcyBkZWZpbmVkIGFzCgkgKiB3 cml0ZSAxIGNsZWFyIChXMUMpIHJlZ2lzdGVyLCBtZWFuaW5nIHRoYXQgaXQncyBiZWluZyBjbGVh cgoJICogYnkgd3JpdGluZyAxIHRvIHRoZSBiaXQuCgkgKi8KClNvIHRoZSBkZXZpY2UgZGlzYWJs ZSB0aGUgaW50ZXJydXB0IGFmdGVyIGJlaW5nIGZpcmVkIGFuZCB0aGUgYml0IG5lZWRzCnRvIHNl dCBhZ2FpbiBmb3IgdGhlIGludGVycnVwdCB0byBiZSByZWVuYWJsZWQuIFNvIHRoZSBmdW5jdGlv bgpjb3JyZWN0bHkgcmVlbmFibGUgdGhlIGlycSBpZiBhIG5hcGkgY2FuJ3QgYmUgc2NoZWR1bGVk Li4uIFRoaW5rIHRoZXJlCmlzbid0IGFub3RoZXIgd2F5IHRvIGhhbmRsZSB0aGlzLgoKPiA+ICAg ICAgICAgbG9jYWxfYmhfZW5hYmxlKCk7Cj4gPgo+ID4gLS0KPiA+IDIuNDAuMQo+ID4KCi0tIAoJ QW5zdWVsCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwph dGgxMGsgbWFpbGluZyBsaXN0CmF0aDEwa0BsaXN0cy5pbmZyYWRlYWQub3JnCmh0dHA6Ly9saXN0 cy5pbmZyYWRlYWQub3JnL21haWxtYW4vbGlzdGluZm8vYXRoMTBrCg== From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id 8772DE92FE0 for ; Fri, 6 Oct 2023 18:49:49 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S232789AbjJFStr (ORCPT ); Fri, 6 Oct 2023 14:49:47 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:33706 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S233122AbjJFStq (ORCPT ); Fri, 6 Oct 2023 14:49:46 -0400 Received: from mail-wm1-x32b.google.com (mail-wm1-x32b.google.com [IPv6:2a00:1450:4864:20::32b]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 96221CE; Fri, 6 Oct 2023 11:49:44 -0700 (PDT) Received: by mail-wm1-x32b.google.com with SMTP id 5b1f17b1804b1-4064867903cso23648685e9.2; Fri, 06 Oct 2023 11:49:44 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1696618183; x=1697222983; darn=vger.kernel.org; h=in-reply-to:content-transfer-encoding:content-disposition :mime-version:references:subject:cc:to:from:date:message-id:from:to :cc:subject:date:message-id:reply-to; bh=J8TnZukIluCCYT6M1BV1r+HvisyoMBi+KKDF01G+Mhg=; b=M+VuO8kI5wZUDXLEV6RujN0d4RyRfRhwuuqxrt5xrHfHfn3YNP6rk+RqNVTtDtyMnj /weoqEDta1TErA2m3SK5LnJPLm9ZOlvk0hNgyb64q7SIIWgGxgG6GMErgFShx3FlOPrR M1vJ6FhqKHQJDOvfK/qkfDFC8gU+RD55LhGYOh8ih6s5Hp7oNfCZAIIpng0ez4XaFTgr 6QQkR2xcLWYA64VcrPG+IQYDtoyCiGrAvQQgdwFxgcqqrv+dK/EhJAJdU2QrcmYMPD/k TYSQ5iz9GIW8BE7Avzxopo+Urxd6kMBrODndeoKBYy4s9+fiSeBZvnBkPozo7/qCsB9w PK4A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1696618183; x=1697222983; h=in-reply-to:content-transfer-encoding:content-disposition :mime-version:references:subject:cc:to:from:date:message-id :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=J8TnZukIluCCYT6M1BV1r+HvisyoMBi+KKDF01G+Mhg=; b=jzvLhBScqiquwVYSN7AK446RuiYk8DgsflAm+dwf2g0zsJ85l+vaOKGusL265wA19a P4SLmFhu3ecwTLFUZPuk7Nc73tKOANWG+bQ8lWiHO6mwGk56f6a7PEvUIVPaJyQz9kV2 EaXmByuGYCJgvdLHWQCkxmf6gB4SpRq+GxD8sQ0oFTWnY/xjKsjsNFLIpxVxZ2rxh6hM vkmCjH3/mdd5TD9gz1YtbmSiRjw0XAI1Ukzob4mFKR+LsyV6NCQihTkyTZN6XcCZ7sfT AnXhCUYn8FWXv+MsFP28/G9q9PYz50SxSRIXeVBvEAiy/i0//Gdh0mofLjNcHypCkyHa MXXw== X-Gm-Message-State: AOJu0YyPuSmyWHivwk1mcMPmeKq5lzFOvs2VjggLWdxZ7+tin8hh9cZs 2ACU3b4S5PkkSy5qDIkrbRA= X-Google-Smtp-Source: AGHT+IGnyXDNMYk8HFRpUEcTSZlI2oSIFcmKPz3Tef9zJ6V0zvxO56KtfzCWQ2oyr2OO4KuUJibc4g== X-Received: by 2002:a05:6000:48:b0:31f:f8a5:15db with SMTP id k8-20020a056000004800b0031ff8a515dbmr8155280wrx.48.1696618182580; Fri, 06 Oct 2023 11:49:42 -0700 (PDT) Received: from Ansuel-xps. (93-34-89-13.ip49.fastwebnet.it. [93.34.89.13]) by smtp.gmail.com with ESMTPSA id p4-20020a5d68c4000000b003232f167df5sm2217218wrw.108.2023.10.06.11.49.39 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 06 Oct 2023 11:49:41 -0700 (PDT) Message-ID: <652056c5.5d0a0220.2b60d.c5dc@mx.google.com> X-Google-Original-Message-ID: Date: Fri, 6 Oct 2023 20:49:41 +0200 From: Christian Marangi To: Eric Dumazet Cc: Jason Gunthorpe , Leon Romanovsky , Wolfgang Grandegger , Marc Kleine-Budde , "David S. Miller" , Jakub Kicinski , Paolo Abeni , Chris Snook , Raju Rangoju , Jeroen de Borst , Praveen Kaligineedi , Shailend Chand , Douglas Miller , Michael Ellerman , Nicholas Piggin , Christophe Leroy , Nick Child , Haren Myneni , Rick Lindsley , Dany Madden , Thomas Falcon , Tariq Toukan , Alexandre Torgue , Jose Abreu , Maxime Coquelin , Krzysztof Halasa , Kalle Valo , Jeff Johnson , Gregory Greenman , Chandrashekar Devegowda , Intel Corporation , Chiranjeevi Rapolu , Liu Haijun , M Chetan Kumar , Ricardo Martinez , Loic Poulain , Sergey Ryazanov , Johannes Berg , Yuanjun Gong , Simon Horman , Rob Herring , Ziwei Xiao , Rushil Gupta , Coco Li , Thomas Gleixner , Junfeng Guo , Uwe =?iso-8859-1?Q?Kleine-K=F6nig?= , Wei Fang , Krzysztof Kozlowski , Yuri Karpov , Zhengchao Shao , Andrew Lunn , Zheng Zengkai , Lee Jones , Maximilian Luz , "Rafael J. Wysocki" , Dawei Li , Anjaneyulu , Benjamin Berg , linux-rdma@vger.kernel.org, linux-kernel@vger.kernel.org, linux-can@vger.kernel.org, netdev@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-stm32@st-md-mailman.stormreply.com, linux-arm-kernel@lists.infradead.org, ath10k@lists.infradead.org, linux-wireless@vger.kernel.org Subject: Re: [net-next PATCH v2 4/4] netdev: use napi_schedule bool instead of napi_schedule_prep/__napi_schedule References: <20231003145150.2498-1-ansuelsmth@gmail.com> <20231003145150.2498-4-ansuelsmth@gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: Precedence: bulk List-ID: X-Mailing-List: linux-can@vger.kernel.org On Thu, Oct 05, 2023 at 06:16:26PM +0200, Eric Dumazet wrote: > On Tue, Oct 3, 2023 at 8:36 PM Christian Marangi wrote: > > > > Replace if condition of napi_schedule_prep/__napi_schedule and use bool > > from napi_schedule directly where possible. > > > > Signed-off-by: Christian Marangi > > --- > > drivers/net/ethernet/atheros/atlx/atl1.c | 4 +--- > > drivers/net/ethernet/toshiba/tc35815.c | 4 +--- > > drivers/net/wireless/intel/iwlwifi/pcie/rx.c | 4 +--- > > 3 files changed, 3 insertions(+), 9 deletions(-) > > > > diff --git a/drivers/net/ethernet/atheros/atlx/atl1.c b/drivers/net/ethernet/atheros/atlx/atl1.c > > index 02aa6fd8ebc2..a9014d7932db 100644 > > --- a/drivers/net/ethernet/atheros/atlx/atl1.c > > +++ b/drivers/net/ethernet/atheros/atlx/atl1.c > > @@ -2446,7 +2446,7 @@ static int atl1_rings_clean(struct napi_struct *napi, int budget) > > > > static inline int atl1_sched_rings_clean(struct atl1_adapter* adapter) > > { > > - if (!napi_schedule_prep(&adapter->napi)) > > + if (!napi_schedule(&adapter->napi)) > > /* It is possible in case even the RX/TX ints are disabled via IMR > > * register the ISR bits are set anyway (but do not produce IRQ). > > * To handle such situation the napi functions used to check is > > @@ -2454,8 +2454,6 @@ static inline int atl1_sched_rings_clean(struct atl1_adapter* adapter) > > */ > > return 0; > > > > - __napi_schedule(&adapter->napi); > > - > > /* > > * Disable RX/TX ints via IMR register if it is > > * allowed. NAPI handler must reenable them in same > > diff --git a/drivers/net/ethernet/toshiba/tc35815.c b/drivers/net/ethernet/toshiba/tc35815.c > > index 14cf6ecf6d0d..a8b8a0e13f9a 100644 > > --- a/drivers/net/ethernet/toshiba/tc35815.c > > +++ b/drivers/net/ethernet/toshiba/tc35815.c > > @@ -1436,9 +1436,7 @@ static irqreturn_t tc35815_interrupt(int irq, void *dev_id) > > if (!(dmactl & DMA_IntMask)) { > > /* disable interrupts */ > > tc_writel(dmactl | DMA_IntMask, &tr->DMA_Ctl); > > - if (napi_schedule_prep(&lp->napi)) > > - __napi_schedule(&lp->napi); > > - else { > > + if (!napi_schedule(&lp->napi)) { > > printk(KERN_ERR "%s: interrupt taken in poll\n", > > dev->name); > > BUG(); > > Hmmm... could you also remove this BUG() ? I think this code path can be taken > if some applications are using busy polling. > > Or simply rewrite this with the traditional > > if (napi_schedule_prep(&lp->napi)) { > /* disable interrupts */ > tc_writel(dmactl | DMA_IntMask, &tr->DMA_Ctl); > __napi_schedule(&lp->napi); > } > > Mhhh is it safe to do so? I mean it seems very wrong to print a warning and BUG() instead of disabling the interrupt only if napi can be scheduled... Maybe is very old code? The more I see this the more I see problem... (randomly disabling the interrupt and then make the kernel die) > > > diff --git a/drivers/net/wireless/intel/iwlwifi/pcie/rx.c b/drivers/net/wireless/intel/iwlwifi/pcie/rx.c > > index 23b5a0adcbd6..146bc7bd14fb 100644 > > --- a/drivers/net/wireless/intel/iwlwifi/pcie/rx.c > > +++ b/drivers/net/wireless/intel/iwlwifi/pcie/rx.c > > @@ -1660,9 +1660,7 @@ irqreturn_t iwl_pcie_irq_rx_msix_handler(int irq, void *dev_id) > > IWL_DEBUG_ISR(trans, "[%d] Got interrupt\n", entry->entry); > > > > local_bh_disable(); > > - if (napi_schedule_prep(&rxq->napi)) > > - __napi_schedule(&rxq->napi); > > - else > > + if (!napi_schedule(&rxq->napi)) > > iwl_pcie_clear_irq(trans, entry->entry); > > Same remark here about twisted logic. > Ehhh here we need to be careful... We can do the usual prep/__schedule with the DMA disable in between... >From the comments of iwl_pcie_clear_irq. /* * Before sending the interrupt the HW disables it to prevent * a nested interrupt. This is done by writing 1 to the corresponding * bit in the mask register. After handling the interrupt, it should be * re-enabled by clearing this bit. This register is defined as * write 1 clear (W1C) register, meaning that it's being clear * by writing 1 to the bit. */ So the device disable the interrupt after being fired and the bit needs to set again for the interrupt to be reenabled. So the function correctly reenable the irq if a napi can't be scheduled... Think there isn't another way to handle this. > > local_bh_enable(); > > > > -- > > 2.40.1 > > -- Ansuel From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from lists.ozlabs.org (lists.ozlabs.org [112.213.38.117]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id B0ADDE95A66 for ; Sat, 7 Oct 2023 23:39:23 +0000 (UTC) Authentication-Results: lists.ozlabs.org; dkim=fail reason="signature verification failed" (2048-bit key; unprotected) header.d=gmail.com header.i=@gmail.com header.a=rsa-sha256 header.s=20230601 header.b=RpiLnLq3; dkim-atps=neutral Received: from boromir.ozlabs.org (localhost [IPv6:::1]) by lists.ozlabs.org (Postfix) with ESMTP id 4S31wV2Hm4z3cCb for ; Sun, 8 Oct 2023 10:39:22 +1100 (AEDT) Authentication-Results: lists.ozlabs.org; dkim=pass (2048-bit key; unprotected) header.d=gmail.com header.i=@gmail.com header.a=rsa-sha256 header.s=20230601 header.b=RpiLnLq3; dkim-atps=neutral Authentication-Results: lists.ozlabs.org; spf=pass (sender SPF authorized) smtp.mailfrom=gmail.com (client-ip=2a00:1450:4864:20::42f; helo=mail-wr1-x42f.google.com; envelope-from=ansuelsmth@gmail.com; receiver=lists.ozlabs.org) Received: from mail-wr1-x42f.google.com (mail-wr1-x42f.google.com [IPv6:2a00:1450:4864:20::42f]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by lists.ozlabs.org (Postfix) with ESMTPS id 4S2HjL2MMDz3bvB for ; Sat, 7 Oct 2023 05:57:08 +1100 (AEDT) Received: by mail-wr1-x42f.google.com with SMTP id ffacd0b85a97d-3231d6504e1so2256701f8f.2 for ; Fri, 06 Oct 2023 11:57:08 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1696618624; x=1697223424; darn=lists.ozlabs.org; h=in-reply-to:content-transfer-encoding:content-disposition :mime-version:references:subject:cc:to:from:date:message-id:from:to :cc:subject:date:message-id:reply-to; bh=J8TnZukIluCCYT6M1BV1r+HvisyoMBi+KKDF01G+Mhg=; b=RpiLnLq3nvonFmOs0E0h4IAkTwnvVMOS3BYtXq2Tl2D9qQAnYt8ZoSk9GRkK9fFb1E 32BvwBgoCwlMEPQyjnHeER8a+m/BypMe3/n3e97lkLgY4rIVcfUZ/sVOeadV1lE7kK5P sncDlPFyikh3AcS1YhF+t37oTd+QEnKR4EcZeSywONn12Zvka5ZaiXafwPvvSsSZBTOU 7hZQaritctBFfmjqbtwR5+W9Y4EImuYXtMoqSVZQZUK1vjNU85alajiut0eJva/SpWju KYPxEGaXnt+DFLEC6upehOexYlnyojNDA/2E9KDR5865UJcdv1/kwfb6EiFBpNp8TC+s 8zmg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1696618624; x=1697223424; h=in-reply-to:content-transfer-encoding:content-disposition :mime-version:references:subject:cc:to:from:date:message-id :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=J8TnZukIluCCYT6M1BV1r+HvisyoMBi+KKDF01G+Mhg=; b=vvgcTEF1cSfjEDCmqZlETSOGAiA+MjVGpFOpa8z+qnhrlgJNTS8K5L3q7uLqHO1c3a Rgnpih9aYrXmS1YjcgStuswANV1C4j68z9T54ySFtTcIf2EE+cIea4yztdffR+USMvUe SbIU0tDCCDewQNo8qdXWtZCxI8C8fo0KtIw60pE+1jzPdzKp+CZEzAJL9PlxpTvgkrEs vLD0guD+nY/bfgKYzzvf09+U3hKsRnoMsfX+3nd+ANaX0sAvSiwzuPwTp+pubRqD330h hcodknwW//vPDLG3QAPBBmttIMhYGVakpeP/k1Bx8MSPRR53CaZ6raba6s2EoSz6Km+T krnw== X-Gm-Message-State: AOJu0YxZIwmBwebbuAmM6m/rxh+fveZKUcsLrsA0qsXBXhgbh7gGuyj1 1K3jFmgbavt+4boczIfJOhhU7JDoEtPBlA== X-Google-Smtp-Source: AGHT+IGnyXDNMYk8HFRpUEcTSZlI2oSIFcmKPz3Tef9zJ6V0zvxO56KtfzCWQ2oyr2OO4KuUJibc4g== X-Received: by 2002:a05:6000:48:b0:31f:f8a5:15db with SMTP id k8-20020a056000004800b0031ff8a515dbmr8155280wrx.48.1696618182580; Fri, 06 Oct 2023 11:49:42 -0700 (PDT) Received: from Ansuel-xps. (93-34-89-13.ip49.fastwebnet.it. [93.34.89.13]) by smtp.gmail.com with ESMTPSA id p4-20020a5d68c4000000b003232f167df5sm2217218wrw.108.2023.10.06.11.49.39 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 06 Oct 2023 11:49:41 -0700 (PDT) Message-ID: <652056c5.5d0a0220.2b60d.c5dc@mx.google.com> X-Google-Original-Message-ID: Date: Fri, 6 Oct 2023 20:49:41 +0200 From: Christian Marangi To: Eric Dumazet Subject: Re: [net-next PATCH v2 4/4] netdev: use napi_schedule bool instead of napi_schedule_prep/__napi_schedule References: <20231003145150.2498-1-ansuelsmth@gmail.com> <20231003145150.2498-4-ansuelsmth@gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: X-Mailman-Approved-At: Sun, 08 Oct 2023 10:36:54 +1100 X-BeenThere: linuxppc-dev@lists.ozlabs.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Linux on PowerPC Developers Mail List List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Andrew Lunn , Sergey Ryazanov , Ziwei Xiao , Chris Snook , Rick Lindsley , Alexandre Torgue , Krzysztof Halasa , Yuri Karpov , netdev@vger.kernel.org, ath10k@lists.infradead.org, Dany Madden , Gregory Greenman , Zhengchao Shao , Chiranjeevi Rapolu , Dawei Li , Intel Corporation , Rob Herring , Jeroen de Borst , Leon Romanovsky , linux-rdma@vger.kernel.org, Lee Jones , Haren Myneni , linux-stm32@st-md-mailman.stormreply.com, Rushil Gupta , Jason Gunthorpe , Thomas Falcon , Jose Abreu , Uwe =?iso-8859-1?Q?Kleine-K=F6nig?= , linux-wireless@vger.kernel.org, Jakub Kicinski , Paolo Abeni , Wei Fang , Wolfgang Grandegger , Nick Child , Simon Horman , Liu Haijun , Kalle Valo , linuxppc-dev@lists.ozlabs.org, Nicholas Piggin , linux-can@vger.kernel.org, Yuanjun Gong , Shailend Chand , Marc Kleine-Budde , Benjamin Berg , M Chetan Kumar , Thomas Gleixner , Coco Li , linux-arm-kernel@lists.infradead.org, Chandrashekar Devegowda , Ricardo Martinez , Loic Poulain , Zheng Zengkai , Maximilian Lu z , Anjaneyulu , "Rafael J. Wysocki" , Douglas Miller , linux-kernel@vger.kernel.org, Tariq Toukan , Krzysztof Kozlowski , Junfeng Guo , Maxime Coquelin , Raju Rangoju , Praveen Kaligineedi , Johannes Berg , Jeff Johnson , "David S. Miller" Errors-To: linuxppc-dev-bounces+linuxppc-dev=archiver.kernel.org@lists.ozlabs.org Sender: "Linuxppc-dev" On Thu, Oct 05, 2023 at 06:16:26PM +0200, Eric Dumazet wrote: > On Tue, Oct 3, 2023 at 8:36 PM Christian Marangi wrote: > > > > Replace if condition of napi_schedule_prep/__napi_schedule and use bool > > from napi_schedule directly where possible. > > > > Signed-off-by: Christian Marangi > > --- > > drivers/net/ethernet/atheros/atlx/atl1.c | 4 +--- > > drivers/net/ethernet/toshiba/tc35815.c | 4 +--- > > drivers/net/wireless/intel/iwlwifi/pcie/rx.c | 4 +--- > > 3 files changed, 3 insertions(+), 9 deletions(-) > > > > diff --git a/drivers/net/ethernet/atheros/atlx/atl1.c b/drivers/net/ethernet/atheros/atlx/atl1.c > > index 02aa6fd8ebc2..a9014d7932db 100644 > > --- a/drivers/net/ethernet/atheros/atlx/atl1.c > > +++ b/drivers/net/ethernet/atheros/atlx/atl1.c > > @@ -2446,7 +2446,7 @@ static int atl1_rings_clean(struct napi_struct *napi, int budget) > > > > static inline int atl1_sched_rings_clean(struct atl1_adapter* adapter) > > { > > - if (!napi_schedule_prep(&adapter->napi)) > > + if (!napi_schedule(&adapter->napi)) > > /* It is possible in case even the RX/TX ints are disabled via IMR > > * register the ISR bits are set anyway (but do not produce IRQ). > > * To handle such situation the napi functions used to check is > > @@ -2454,8 +2454,6 @@ static inline int atl1_sched_rings_clean(struct atl1_adapter* adapter) > > */ > > return 0; > > > > - __napi_schedule(&adapter->napi); > > - > > /* > > * Disable RX/TX ints via IMR register if it is > > * allowed. NAPI handler must reenable them in same > > diff --git a/drivers/net/ethernet/toshiba/tc35815.c b/drivers/net/ethernet/toshiba/tc35815.c > > index 14cf6ecf6d0d..a8b8a0e13f9a 100644 > > --- a/drivers/net/ethernet/toshiba/tc35815.c > > +++ b/drivers/net/ethernet/toshiba/tc35815.c > > @@ -1436,9 +1436,7 @@ static irqreturn_t tc35815_interrupt(int irq, void *dev_id) > > if (!(dmactl & DMA_IntMask)) { > > /* disable interrupts */ > > tc_writel(dmactl | DMA_IntMask, &tr->DMA_Ctl); > > - if (napi_schedule_prep(&lp->napi)) > > - __napi_schedule(&lp->napi); > > - else { > > + if (!napi_schedule(&lp->napi)) { > > printk(KERN_ERR "%s: interrupt taken in poll\n", > > dev->name); > > BUG(); > > Hmmm... could you also remove this BUG() ? I think this code path can be taken > if some applications are using busy polling. > > Or simply rewrite this with the traditional > > if (napi_schedule_prep(&lp->napi)) { > /* disable interrupts */ > tc_writel(dmactl | DMA_IntMask, &tr->DMA_Ctl); > __napi_schedule(&lp->napi); > } > > Mhhh is it safe to do so? I mean it seems very wrong to print a warning and BUG() instead of disabling the interrupt only if napi can be scheduled... Maybe is very old code? The more I see this the more I see problem... (randomly disabling the interrupt and then make the kernel die) > > > diff --git a/drivers/net/wireless/intel/iwlwifi/pcie/rx.c b/drivers/net/wireless/intel/iwlwifi/pcie/rx.c > > index 23b5a0adcbd6..146bc7bd14fb 100644 > > --- a/drivers/net/wireless/intel/iwlwifi/pcie/rx.c > > +++ b/drivers/net/wireless/intel/iwlwifi/pcie/rx.c > > @@ -1660,9 +1660,7 @@ irqreturn_t iwl_pcie_irq_rx_msix_handler(int irq, void *dev_id) > > IWL_DEBUG_ISR(trans, "[%d] Got interrupt\n", entry->entry); > > > > local_bh_disable(); > > - if (napi_schedule_prep(&rxq->napi)) > > - __napi_schedule(&rxq->napi); > > - else > > + if (!napi_schedule(&rxq->napi)) > > iwl_pcie_clear_irq(trans, entry->entry); > > Same remark here about twisted logic. > Ehhh here we need to be careful... We can do the usual prep/__schedule with the DMA disable in between... >From the comments of iwl_pcie_clear_irq. /* * Before sending the interrupt the HW disables it to prevent * a nested interrupt. This is done by writing 1 to the corresponding * bit in the mask register. After handling the interrupt, it should be * re-enabled by clearing this bit. This register is defined as * write 1 clear (W1C) register, meaning that it's being clear * by writing 1 to the bit. */ So the device disable the interrupt after being fired and the bit needs to set again for the interrupt to be reenabled. So the function correctly reenable the irq if a napi can't be scheduled... Think there isn't another way to handle this. > > local_bh_enable(); > > > > -- > > 2.40.1 > > -- Ansuel