From owner-freebsd-wireless@freebsd.org Sun Jan 24 20:22:45 2016 Return-Path: Delivered-To: freebsd-wireless@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 566C7A1D9DE for ; Sun, 24 Jan 2016 20:22:45 +0000 (UTC) (envelope-from adrian.chadd@gmail.com) Received: from mail-io0-x231.google.com (mail-io0-x231.google.com [IPv6:2607:f8b0:4001:c06::231]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G2" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 2C8B88D7 for ; Sun, 24 Jan 2016 20:22:45 +0000 (UTC) (envelope-from adrian.chadd@gmail.com) Received: by mail-io0-x231.google.com with SMTP id 1so133581986ion.1 for ; Sun, 24 Jan 2016 12:22:45 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:sender:date:message-id:subject:from:to:content-type; bh=t1K7CKVthHjkBbWjtDXTjd83Rakah4ZBEF2SbQXiolY=; b=rX5ukQ197U2YFZrMmfrp7waT5EurdkUMQh2EoEbqpJlHOjnV8xJDzGpY6rFkSygfdB 2P1j3zYr0j1is5eTnbxRRTxsbqAP1mAonxcMpm9MqQPJFr4hXrvhmb53WOJHL18IClfp 7avsbFOB95IhsbUJrAFYuuiesvU8lo1G7UwTm9ISIhcju0Po7sl5PdyHCzD4oWBPUD5c mG4S1N6X7IgmHFz+HxDdLDZizpNISpJFLAQqucUyFWtVkcJNyxHADya2rTc8wEVCbJO/ /FBMrMQX5nPfXIQeOFq0GCjSMm5MVQN9I76thIr+DhAtkeHcQS+N/ySVIIyijbiwCGZO wlwA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:sender:date:message-id:subject:from :to:content-type; bh=t1K7CKVthHjkBbWjtDXTjd83Rakah4ZBEF2SbQXiolY=; b=TS8pHrxA6Ds4TjJ/LNz557MXOLwzo0PznEj2Xl77EDas+RVQg9AvGYqmvqxAl30mmg De307+8HL1vNEQi5SQ5F+IaMHDRXo4LNW49dAEHVG73wEB8XRama4VP51LrRS7WWsjZL ljPbHSLbjvzRDRXH6iCiZiSXVQD1kwkP6ol/pL7HSQ0ZuIhvpY9tELmYfsUMtxJIGAED GMOjAoEn1IN0kLeJI+clysUyIffl1stjHXodOKHHPZD0QH9ZfPEliVvM3SgCYv6/eRPQ JZ3csOyjBK5kiZc0rRxSeiSYcrR1T7EFZD7IOXCikjQ571FEE9bsCDga/r9RnltellXZ 7asg== X-Gm-Message-State: AG10YOQBXsHXKvS720ZGsNkqPjKt/iwVi4n5dp8Y5OoT/H9qIGZwBVGQusBE1TSF7jeJu8XsBZl5bOvH0ossOQ== MIME-Version: 1.0 X-Received: by 10.107.11.162 with SMTP id 34mr13180147iol.165.1453666964616; Sun, 24 Jan 2016 12:22:44 -0800 (PST) Sender: adrian.chadd@gmail.com Received: by 10.36.121.16 with HTTP; Sun, 24 Jan 2016 12:22:44 -0800 (PST) Date: Sun, 24 Jan 2016 12:22:44 -0800 X-Google-Sender-Auth: G0LspyarM5b-MSDbVZhlvII3RsU Message-ID: Subject: net80211: why we ca'nt use the net80211 taskqueue for everything From: Adrian Chadd To: Andriy Voskoboinyk , "freebsd-wireless@freebsd.org" Content-Type: text/plain; charset=UTF-8 X-BeenThere: freebsd-wireless@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: "Discussions of 802.11 stack, tools device driver development." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 24 Jan 2016 20:22:45 -0000 hi, andriy has a few reviews out that tidy up some things, which I'd reply to, but .. reviews is offline. So, here's the 30 second version: * the net80211 taskqueue runs the software scan engine, and the software scan engine currently sleeps whilst it's running. This means that if you put newstate, deferred transmit, etc into the net80211 taskqueue, then it just won't run during scan. The net80211 software scan thing should be modified to not sleep whilst it's waiting for scan results and instead just kick off another timer event to finish that part of the loop. Then yes, we can just migrate * to the net80211 task queue and use it for all serialisation of a wifi driver. (And yes, I'd like to see that done ASAP..) Thanks, -adrian