Received: by 2002:a05:6602:2086:0:0:0:0 with SMTP id a6csp4695855ioa; Wed, 27 Apr 2022 09:08:49 -0700 (PDT) X-Google-Smtp-Source: ABdhPJwkMIFrRxzXpOCgU3iBuZzF870et3L2qzuPPgM4gLw7sETaGh/W0GDmx1XLoE5ARlJgkYoL X-Received: by 2002:a17:902:8644:b0:153:9f01:2090 with SMTP id y4-20020a170902864400b001539f012090mr28585835plt.101.1651075728979; Wed, 27 Apr 2022 09:08:48 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1651075728; cv=none; d=google.com; s=arc-20160816; b=EYjZirRk5nmldC2F6tENS3fpV//uSYRsHTmPnGEn/jD6W4ASHSvGnlsvEoUikfhWys NGXZ3agiyMD+xAvOEkhm89VBhbJBIHVj6R5RaJIlpx19xPWvVrSNS/SF1AHpbSDnypkA x6kRcB+hclXSF/nt8VKGpH/FkrnJsSHprXwaV7WGu9vWIqad9/VK1CnzWi6QoPQ+JxxY 3FxD2LPVSOe56cRA6G4AoAaLNR3u84q5w/hIbxQEtdCFC/HY6hbw5rgVLv4jGNyDD2xD n/8m6pED8LKj+Eme4EU4NuHNlJrfjXuafLgB4imh+ITsYzh99O0trNEigN9Zfaz/qTAm mzTQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:subject:cc:to:from:date:references:in-reply-to :message-id:mime-version:user-agent:dkim-signature:dkim-signature; bh=lIWz78PXI7EvKN4ruQoCnzZz8BZ4fRFfgiYMqQWccK0=; b=j/Y5y3oLn2lhTgjsvdzDkko2ocarbmT0D8Z4hzh1Up0ZSHzLOvAXwi/BOp28C3S+/B t7fz3AFRiBWjrsFMqwuLd+4ePbcOSyI83NhEIFsFH5C4uGPlY9eG2KtRWRmHHxJH8E1Y rhNtPtEe4BR4A8NmgvLEHchayR+0nMrybrqr0UEucxPSSDraZkLLYc41YV7NZms7RwSr g3eBrvbLKMze1ISMgxo4E+Q2MdY5ygbInBGi8aNis6Ja7bWhMvm4wxCsH3ERb9Djsqeo 6RYD/4WRyOE3XdPhlJ3LTlBe9l24klC2DtPCu/ToFuwFJIpOaIIIbgw3tc2AI0AFRwuh OwZA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@svenpeter.dev header.s=fm1 header.b=RmY9+5eB; dkim=pass header.i=@messagingengine.com header.s=fm1 header.b=nkiS0LOi; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=svenpeter.dev Return-Path: Received: from lindbergh.monkeyblade.net (lindbergh.monkeyblade.net. [2620:137:e000::1:18]) by mx.google.com with ESMTPS id bv19-20020a17090af19300b001cbbd85faa9si4994809pjb.20.2022.04.27.09.08.48 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 27 Apr 2022 09:08:48 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:18 as permitted sender) client-ip=2620:137:e000::1:18; Authentication-Results: mx.google.com; dkim=pass header.i=@svenpeter.dev header.s=fm1 header.b=RmY9+5eB; dkim=pass header.i=@messagingengine.com header.s=fm1 header.b=nkiS0LOi; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=svenpeter.dev Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by lindbergh.monkeyblade.net (Postfix) with ESMTP id A8744E016; Wed, 27 Apr 2022 08:40:49 -0700 (PDT) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S240048AbiD0Pnq (ORCPT + 99 others); Wed, 27 Apr 2022 11:43:46 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:41460 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S240052AbiD0Pnp (ORCPT ); Wed, 27 Apr 2022 11:43:45 -0400 Received: from wout3-smtp.messagingengine.com (wout3-smtp.messagingengine.com [64.147.123.19]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id CBB0EC55; Wed, 27 Apr 2022 08:40:29 -0700 (PDT) Received: from compute2.internal (compute2.nyi.internal [10.202.2.46]) by mailout.west.internal (Postfix) with ESMTP id BB1C332001FC; Wed, 27 Apr 2022 11:40:27 -0400 (EDT) Received: from imap47 ([10.202.2.97]) by compute2.internal (MEProxy); Wed, 27 Apr 2022 11:40:29 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=svenpeter.dev; h=cc:cc:content-type:date:date:from:from:in-reply-to :in-reply-to:message-id:mime-version:references:reply-to:sender :subject:subject:to:to; s=fm1; t=1651074027; x=1651160427; bh=lI Wz78PXI7EvKN4ruQoCnzZz8BZ4fRFfgiYMqQWccK0=; b=RmY9+5eB5Vq++BL8o+ VTpJ/iDtxGEOKbZCVf5L9Dl7J8kDgqcQ5NgDkGeu7PFLnZFTMEqr8Igp5PQoiRCf k/LUhEfpnP6bcWP3Tp7pLS6ZXZrxJpFQkR42672be7Tt0N2FEinFXijbhFB86KAE Pg7UWBpkPTLYYGIKe+GGmV9Vc6H85+Z2cJASz5GydnbIhFn+QnVZdAwjQOOG5FVZ hQ5rQs/f9vS5CllLbUfFoeCiNTHcBHzjlub59x0fYhG0i8ZigbmkxxLHXx78+aWG udpFvkIX0ldB1QGoTAYf3JZh5b/+s0TQt7NMSAGlHgqLtF3FIUt15jbJAdrLYhXc lPUw== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:cc:content-type:date:date:from:from :in-reply-to:in-reply-to:message-id:mime-version:references :reply-to:sender:subject:subject:to:to:x-me-proxy:x-me-proxy :x-me-sender:x-me-sender:x-sasl-enc; s=fm1; t=1651074027; x= 1651160427; bh=lIWz78PXI7EvKN4ruQoCnzZz8BZ4fRFfgiYMqQWccK0=; b=n kiS0LOiIp8Z8bSpVnvLzNjqYZ2HpMZXUwaUluGM810L5cbAdbhgG+scxzStn4q5j XykjtVrdxHj8ICZGNCQblIk9VmJ0g8BAYNMcWRlV9OQa09D1X1FXPxL31+CWSAH/ cz6lZRXxNumweJleksDpQQrhx+iXGXEJbV4jtsDiDpMnYM8zeR/XNknNQmGxp7Nx FyEjH2n98z1jL3NseqzsOX5ALHLUPJWs6G5QMNbEEjsSF5OL2MkVdlTcX8GR136x KkOY7kX6WNvedpDzEemMUw9KePilF1f2AFx7Pw8Cj4ZYjUHCS7PgJuIevNC6J9s0 BASKitzX8JL8ZCCMALTuQ== X-ME-Sender: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvfedrudehgdekkecutefuodetggdotefrodftvf curfhrohhfihhlvgemucfhrghsthforghilhdpqfgfvfdpuffrtefokffrpgfnqfghnecu uegrihhlohhuthemuceftddtnecusecvtfgvtghiphhivghnthhsucdlqddutddtmdenuc fjughrpefofgggkfgjfhffhffvvefutgesthdtredtreertdenucfhrhhomhepfdfuvhgv nhcurfgvthgvrhdfuceoshhvvghnsehsvhgvnhhpvghtvghrrdguvghvqeenucggtffrrg htthgvrhhnpeelvefggeffheevtdeivefhkeehfeettdejteduveeiheevveeilefghfei veeiueenucevlhhushhtvghrufhiiigvpedtnecurfgrrhgrmhepmhgrihhlfhhrohhmpe hsvhgvnhesshhvvghnphgvthgvrhdruggvvh X-ME-Proxy: Received: by mailuser.nyi.internal (Postfix, from userid 501) id E67EC27400F9; Wed, 27 Apr 2022 11:40:26 -0400 (EDT) X-Mailer: MessagingEngine.com Webmail Interface User-Agent: Cyrus-JMAP/3.7.0-alpha0-569-g7622ad95cc-fm-20220421.002-g7622ad95 Mime-Version: 1.0 Message-Id: In-Reply-To: References: <20220426201539.12829-1-sven@svenpeter.dev> <20220426201539.12829-7-sven@svenpeter.dev> Date: Wed, 27 Apr 2022 17:40:06 +0200 From: "Sven Peter" To: "Keith Busch" Cc: "axboe@fb.com" , "hch@lst.de" , "sagi@grimberg.me" , "Hector Martin" , "Alyssa Rosenzweig" , "Rob Herring" , "Krzysztof Kozlowski" , "Arnd Bergmann" , "Marc Zyngier" , "Janne Grunau" , devicetree@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, linux-nvme@lists.infradead.org Subject: Re: [PATCH v3 6/6] nvme-apple: Add initial Apple SoC NVMe driver Content-Type: text/plain X-Spam-Status: No, score=-2.0 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,HEADER_FROM_DIFFERENT_DOMAINS, MAILING_LIST_MULTI,RDNS_NONE,SPF_HELO_NONE autolearn=no 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-kernel@vger.kernel.org On Tue, Apr 26, 2022, at 23:00, Keith Busch wrote: > On Tue, Apr 26, 2022 at 10:15:39PM +0200, Sven Peter wrote: >> +static enum blk_eh_timer_return apple_nvme_timeout(struct request *req, >> + bool reserved) >> +{ >> + struct apple_nvme_iod *iod = blk_mq_rq_to_pdu(req); >> + struct apple_nvme_queue *q = iod->q; >> + struct apple_nvme *anv = queue_to_apple_nvme(q); >> + unsigned long flags; >> + u32 csts = readl(anv->mmio_nvme + NVME_REG_CSTS); >> + >> + if (anv->ctrl.state != NVME_CTRL_LIVE) { >> + /* >> + * From rdma.c: >> + * If we are resetting, connecting or deleting we should >> + * complete immediately because we may block controller >> + * teardown or setup sequence >> + * - ctrl disable/shutdown fabrics requests >> + * - connect requests >> + * - initialization admin requests >> + * - I/O requests that entered after unquiescing and >> + * the controller stopped responding >> + * >> + * All other requests should be cancelled by the error >> + * recovery work, so it's fine that we fail it here. >> + */ >> + dev_warn(anv->dev, >> + "I/O %d(aq:%d) timeout while not in live state\n", >> + req->tag, q->is_adminq); >> + if (blk_mq_request_started(req) && >> + !blk_mq_request_completed(req)) { >> + nvme_req(req)->status = NVME_SC_HOST_ABORTED_CMD; >> + blk_mq_complete_request(req); > > I think you need a 'nvme_req(req)->flags |= NVME_REQ_CANCELLED' here to get the > expected -EINTR for any admin command timeouts during a reset. Without it, the > resetting task is going to think it got a real response from the controller. Makes sense, will add it. Sven