Received: by 2002:a05:6a10:1287:0:0:0:0 with SMTP id d7csp3442383pxv; Sun, 18 Jul 2021 23:31:03 -0700 (PDT) X-Google-Smtp-Source: ABdhPJy+qSV3aeoFENCiXi6Eaz+JpzeEJy8rH5bMDOPmJld7X4KvX+gqIiBLAser6NYbS2nbcKm/ X-Received: by 2002:a17:906:3e08:: with SMTP id k8mr25695611eji.89.1626676263600; Sun, 18 Jul 2021 23:31:03 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1626676263; cv=none; d=google.com; s=arc-20160816; b=WyC1/kAyx+48ozq98P1RgUEmVSVkXsDW6518+JcGFzoghR/zfw6ZOn1w5Eh+9SpkK2 rkd7znlzpUjHdEGRdRNuzFI/KXkbvsa5Ami0YqEx6bZZ2IDMoXsI9V3beEjrBgAHyZ/j WjSI9K8bzK/kEUoDWe0wu4YQGdzRdDklgxQ1lBgorzfG/33TWh7oXEDcVHqgVwF/i8x4 EJEWH0XdDYZA3dXszZJ9r8reYEamlJhsxEv5uK9cS/0kURCE4U/q4ryS63lG7sKIhyJq MAnkyDSiNqYFdn0eGuRDYRwABkjdp8vLscm/Situ43mN07vw8k6jdtkYt83QksLZqyXT eslQ== 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 :user-agent:references:in-reply-to:date:cc:to:from:subject :message-id:dkim-signature; bh=LY5CK1r0/hjsqY17xf0eUdo8D9KcHjidZGqfXP+fN/Y=; b=kr0lrhOmQc1ONVgijYj1bI9aM21lyGXs5W5UVxN0rVfLlbmCz8St5L2LFeda7wSCuX 95zWP7OVyX2kRGvNJvj9ahVWgCpnh2JbgbTqxQR0K2gH2gliQyjv1zmD/ePupEin7mEd GsvAEqEguXAB1aAOZLspQsKn3fRknOlrBiD9hpdD24LZW45BcFjXrOOXbh/nDvI1sG1w vxSPGZXtDHJywiv/IjCm9W+DjuFOIohi2nyiJsM9RYuZgDOhGvI/wJ5HM09kdzD7I2WD LlPebBcdNsEtWUFBLBScPhiHPz5fRIDwDseURYxhk5rXnolkLHp4NIg6POQRmkIVfBSh e5sw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@sipsolutions.net header.s=mail header.b="K6SH53/9"; spf=pass (google.com: domain of linux-wireless-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-wireless-owner@vger.kernel.org; dmarc=pass (p=NONE sp=REJECT dis=NONE) header.from=sipsolutions.net Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id si7si21182206ejb.102.2021.07.18.23.30.36; Sun, 18 Jul 2021 23:31:03 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-wireless-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@sipsolutions.net header.s=mail header.b="K6SH53/9"; spf=pass (google.com: domain of linux-wireless-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-wireless-owner@vger.kernel.org; dmarc=pass (p=NONE sp=REJECT dis=NONE) header.from=sipsolutions.net Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S233580AbhGSGdc (ORCPT + 99 others); Mon, 19 Jul 2021 02:33:32 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:35506 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S233048AbhGSGdc (ORCPT ); Mon, 19 Jul 2021 02:33:32 -0400 Received: from sipsolutions.net (s3.sipsolutions.net [IPv6:2a01:4f8:191:4433::2]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 485C9C061762; Sun, 18 Jul 2021 23:30:33 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=sipsolutions.net; s=mail; h=Content-Transfer-Encoding:MIME-Version: Content-Type:References:In-Reply-To:Date:Cc:To:From:Subject:Message-ID:Sender :Reply-To:Content-ID:Content-Description:Resent-Date:Resent-From:Resent-To: Resent-Cc:Resent-Message-ID; bh=LY5CK1r0/hjsqY17xf0eUdo8D9KcHjidZGqfXP+fN/Y=; t=1626676233; x=1627885833; b=K6SH53/9xDU+0DkCI4/OcTZ/rHSSe7cqFOwfd2q+2cqsRVA vZpHgN5AMo3Knlp2fhqU52RISVdFMwURfcpzmQkycypuHGVUHrJ91M3Mm7VBWnlVBKjWxOHDdSFqS P6fJUPA/bC2TVdoPG1oWDFPg0a7NWKEql73yMKaAsAdMYfiGBlxX7h3lWRum0QyAAwdkUAYx0w3RE KbbO6vyUPTpIsNcd4hmbmRbxju+eRemuBJlUVtp0BQlnZ7pCgNIKgb//SLbv4ZiKO0zSt9pGlXocL YRTnu4tEFZOXGOhc//zfeSINDHTo5EiMKaO3o7YaQJ6P+l91EzM9wl2avi8NEWXQ==; Received: by sipsolutions.net with esmtpsa (TLS1.3:ECDHE_SECP256R1__RSA_PSS_RSAE_SHA256__AES_256_GCM:256) (Exim 4.94.2) (envelope-from ) id 1m5MnM-004Fmu-7W; Mon, 19 Jul 2021 08:30:28 +0200 Message-ID: <5c43c41de4bdfd2412d5f2feadffc309243ed134.camel@sipsolutions.net> Subject: Re: [PATCH RFC v1 1/7] mac80211: Add stations iterator where the iterator function may sleep From: Johannes Berg To: Martin Blumenstingl , linux-wireless@vger.kernel.org Cc: tony0620emma@gmail.com, kvalo@codeaurora.org, netdev@vger.kernel.org, linux-kernel@vger.kernel.org, Neo Jou , Jernej Skrabec Date: Mon, 19 Jul 2021 08:30:26 +0200 In-Reply-To: <20210717204057.67495-2-martin.blumenstingl@googlemail.com> References: <20210717204057.67495-1-martin.blumenstingl@googlemail.com> <20210717204057.67495-2-martin.blumenstingl@googlemail.com> Content-Type: text/plain; charset="UTF-8" User-Agent: Evolution 3.38.4 (3.38.4-1.fc33) MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-malware-bazaar: not-scanned Precedence: bulk List-ID: X-Mailing-List: linux-wireless@vger.kernel.org > > +/** > + * ieee80211_iterate_stations_atomic - iterate stations Copy/paste issue, as PK pointed out too. > + * > + * This function iterates over all stations associated with a given > + * hardware that are currently uploaded to the driver and calls the callback > + * function for them. > + * This function allows the iterator function to sleep, when the iterator > + * function is atomic @ieee80211_iterate_stations_atomic can be used. > I have no real objections to this, but I think you should carefully document something like "the driver must not call this with a lock held that it can also take in response to callbacks from mac80211, and it must not call this within callbacks made by mac80211" or something like that, because both of those things are going to cause deadlocks. johannes