Received: by 2002:a6b:fb09:0:0:0:0:0 with SMTP id h9csp6320919iog; Thu, 23 Jun 2022 16:44:59 -0700 (PDT) X-Google-Smtp-Source: AGRyM1vwvcG4ulTN5h1Evp0osl3JvX5YiDuNug2EstKxDjUUdCEO9nohgkG8snVTAGDZNjKFGIE3 X-Received: by 2002:a17:907:7f1c:b0:711:f3b4:da5 with SMTP id qf28-20020a1709077f1c00b00711f3b40da5mr10459098ejc.508.1656027899520; Thu, 23 Jun 2022 16:44:59 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1656027899; cv=none; d=google.com; s=arc-20160816; b=lO8H1hsskXGscRBVuVqyFrI/hze7rB4cvH9E+KWqziz1zIhN4DjDuUYzMlKA7ZxlPs PuWtAB8RH/bLtx96s7pXYIDh4Op+lO857jqUXDO05bwnE3zoo/wJ1TKTwcLVK64FaFFw kOZwY+rL0CMAKaejbbE286UzZFosL/vWk6rX1SslAnfkIc/3PQWEZ/Jur9S1k3lAXvBb 8/XokI3Sdb4TlihjfvtSLEsix9iTmIciHeFZO3nuyRnTrhyLBpjgWZ46WrDijvy9FnnV 1tcaVl1y8+EVnDptOBSdyXhleHKUKp1cfdbI2RuaKrQ/3XCk00vOzLXHVGthgyVOnmi9 N6PQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:cc:to:subject:message-id:date:from:in-reply-to :references:mime-version:dkim-signature; bh=o8mi6O0ZCTeU79Z8kRQFrjrcmgiGj1KF7rtlkbpkwLs=; b=pmw9gJT59LjljrO7SGd9lTPmAsP8GT9g59XhPc1ezxIpvV2UbEQT2X7frZRDhA9Q+p MxLXN2jilOzxV9XA4i1mWuhJE/Dpa9v62zpaOMHI2ZBdQj24bjDzzcNOYzulZef9Xfzb TSizaTa1mYGl4H/mxTL0yiUVmjsvYg1mSt7gDhWu9NI86qLY33kkODLkBPPE+je0tyNp jMINTQIszIqbNN4j2lBmvj7FRuQDSjIEAVDInlcq95anERnbevIcz0vd5KAngeGRTZQx K3CsgCKJFlQUqV/HDpxQ7B3Bx7/wvXufvD/29QdoIJdezWv3objAnuYRxhYvT8kX6QnG 7xsg== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@gmail.com header.s=20210112 header.b=nd5wGjuy; spf=pass (google.com: domain of linux-wireless-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-wireless-owner@vger.kernel.org; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Return-Path: Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id z12-20020a05640240cc00b0042ddd05d4ebsi1224560edb.610.2022.06.23.16.44.38; Thu, 23 Jun 2022 16:44:59 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-wireless-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=@gmail.com header.s=20210112 header.b=nd5wGjuy; spf=pass (google.com: domain of linux-wireless-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-wireless-owner@vger.kernel.org; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S229879AbiFWXgr (ORCPT + 65 others); Thu, 23 Jun 2022 19:36:47 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:45466 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229454AbiFWXgr (ORCPT ); Thu, 23 Jun 2022 19:36:47 -0400 Received: from mail-yb1-xb2e.google.com (mail-yb1-xb2e.google.com [IPv6:2607:f8b0:4864:20::b2e]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 73D0C609E6; Thu, 23 Jun 2022 16:36:46 -0700 (PDT) Received: by mail-yb1-xb2e.google.com with SMTP id l11so1656393ybu.13; Thu, 23 Jun 2022 16:36:46 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=o8mi6O0ZCTeU79Z8kRQFrjrcmgiGj1KF7rtlkbpkwLs=; b=nd5wGjuyLxXcCYDjRPwA2fr6Yi1Yb8ep7tbf1x+g5JF/lO9ndlz0K/WFHWxgu1J4ij J16BQt7hZOVcMzwltdD+BjECVl8KcE2k10hAJ5qN4V3g8+E0bdrEHKAY624TWJP2mc/P d3L5Da5KSW7q4Tbg93ahTRTyj7pwuVyT7i2oYQ3cBOYt7RUBhep9UILZO2FehtBhGrtx jpP/NtfOBS1+klO/D0fjeVzcolab9EYxSXjeC0btYFYllwyoIUWTRVpiM1JTMi8+UasC M0SWQP40WLFMGzkZZ2kZHnYgzGZW1IOeulz59XKuthNGPt+5PDbQAr/a+9Cs1+HpSK3f xJ1g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=o8mi6O0ZCTeU79Z8kRQFrjrcmgiGj1KF7rtlkbpkwLs=; b=6arJleHPZaIofy4j4vEoAL490WpZvNmPxip2ZhduCFTMZcqKSqLO2VxNO0hadcMfVr YDjkNDBOeVE2Cc6l+daTKaWU1X155+gqzGusCPFeO7xY8n1qppczAOH3KOnv5/EATpy2 ZBrRnaRufrZLwEPx02ZWM835OYgaomPwIBbRA9mFowPIHEUpAPlXoah5ngw9AF0Hff/b uxG8tBimASEvOHzlAokR8KxBod5z3ZAGxkABm+5Jm33nqRVfV23qM+m/RyHFXI4J0EA1 46SWyslYbWYXFlEwfvJ8Z2VnAI2cEXiYxJRCWVdb4PlMGdGw30aAjhJS2jJLebDCYjhX X+tg== X-Gm-Message-State: AJIora/98W6xvjXcXVzqjel+LK790cF3X53Slke8mjmdLrXYIotPuE6h c2Ayz4k5a0HfKO8EwyhrneMpdHqPisomo4Rgm/4= X-Received: by 2002:a05:6902:1149:b0:669:16d0:b4c7 with SMTP id p9-20020a056902114900b0066916d0b4c7mr12648378ybu.269.1656027405716; Thu, 23 Jun 2022 16:36:45 -0700 (PDT) MIME-Version: 1.0 References: In-Reply-To: From: Gregory Erwin Date: Thu, 23 Jun 2022 16:36:34 -0700 Message-ID: Subject: Re: ath9k: hwrng blocks for several minutes when phy is un-associated To: "Jason A. Donenfeld" Cc: Rui Salvaterra , linux-crypto@vger.kernel.org, linux-wireless@vger.kernel.org Content-Type: text/plain; charset="UTF-8" X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,FREEMAIL_ENVFROM_END_DIGIT, FREEMAIL_FROM,RCVD_IN_DNSWL_NONE,SPF_HELO_NONE,SPF_PASS, T_SCC_BODY_TEXT_LINE 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-wireless@vger.kernel.org No luck. The first patch caused a warning and oops with ath9k_rng_read() at the top of the call stack when reading from /dev/hwrng: WARNING: CPU: 1 PID: 454 at kernel/kthread.c:75 kthread_should_stop+0x2a/0x30 BUG: kernel NULL pointer dereference, address: 0000000000000000 The second didn't have a noticeable effect, for better or worse. On Thu, Jun 23, 2022 at 5:16 AM Jason A. Donenfeld wrote: > > Or perhaps more simply: > > diff --git a/drivers/net/wireless/ath/ath9k/rng.c b/drivers/net/wireless/ath/ath9k/rng.c > index cb5414265a9b..5b44cd918c2b 100644 > --- a/drivers/net/wireless/ath/ath9k/rng.c > +++ b/drivers/net/wireless/ath/ath9k/rng.c > @@ -83,7 +83,8 @@ static int ath9k_rng_read(struct hwrng *rng, void *buf, size_t max, bool wait) > if (!wait || !max || likely(bytes_read) || fail_stats > 110) > break; > > - msleep_interruptible(ath9k_rng_delay_get(++fail_stats)); > + if (msleep_interruptible(ath9k_rng_delay_get(++fail_stats))) > + break; > } > > if (wait && !bytes_read && max) >