Received: by 2002:a5d:9c59:0:0:0:0:0 with SMTP id 25csp2172566iof; Tue, 7 Jun 2022 22:08:09 -0700 (PDT) X-Google-Smtp-Source: ABdhPJzC5QpcRWUA1dRXmzWeqqc/HObmg8BKLpjHv4fwlthIyUlnGMk4Ozg2HLWMdPGerrTUmilF X-Received: by 2002:a63:6849:0:b0:3fa:f4fe:d9dc with SMTP id d70-20020a636849000000b003faf4fed9dcmr28895112pgc.589.1654664889185; Tue, 07 Jun 2022 22:08:09 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1654664889; cv=none; d=google.com; s=arc-20160816; b=mfcr6AESHVtiM4pVWhKo5P+wn+sJDggU4tjxf04WwF5qH+yefMbg/XL7c2SGcXvGOd GfO3edqR2zuGm+baO9KmSuXpurp0S9ds0ExQohi6LCREQ4vJ7aB5QF96PwROg9sjlB2Z LoC2ShRuF06I7ciRniZ4Tvv+CV34IVSbbMyPunM/MTDHLJnNh4jFFj7DtyHW+5HgTCNQ yVNZZ78BQPhjHiIWY1VG5lZ7uND9wm1URgv5L+MwFovgwcj++/ysrg23XKVhnPlP1r/0 2jlAofjl8Nfj57e4zI9cotaWkoF//NcjXaptF+2SOHBnPWxmlf3Y6XSz1bfxVV4ZoTlZ 8cMw== 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:message-id:date:subject:cc:to :from:dkim-signature; bh=5q1dKiSG9hZhzx3cnFDQxxhlF4q7TjK/yaLdNNSWi9g=; b=ZE8/frXbHWfOC7677xCLB9Q1SkfzDVTIRZ6nXl43/qsZVihVK3wAWIkDUl1h9mli98 Zdk/JGdzeTrzx3DeZ9q3jEL6QRXA2IN4wCO6qqItm+yNHtV5hYDVEWnguIrxcrAdYn62 WUhHHdZDa1eehY5eJoP96JfGPZLNEzHQ4unZ7mwug97tY3xDRXCM76Lfz40kWrZ7XHjr i3OwsoqMPVHnlXzkzhaFfZS2Do1U7R2WyJ7IMzgS69DgWbLQ8xpBy7jbqUUnbYrREu45 1GcDtcxplpTJ6ToLY/GYZUI+ocXIEOTeGBwSFdUWUDVrxWGQlbnHQyHDwDOoTP30XIjK 3MPQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linuxfoundation.org header.s=korg header.b=XLdy9iRS; spf=softfail (google.com: domain of transitioning linux-kernel-owner@vger.kernel.org does not designate 23.128.96.19 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linuxfoundation.org Return-Path: Received: from lindbergh.monkeyblade.net (lindbergh.monkeyblade.net. [23.128.96.19]) by mx.google.com with ESMTPS id cm18-20020a056a00339200b0051bc3f8dd1fsi23573956pfb.38.2022.06.07.22.08.08 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 07 Jun 2022 22:08:09 -0700 (PDT) Received-SPF: softfail (google.com: domain of transitioning linux-kernel-owner@vger.kernel.org does not designate 23.128.96.19 as permitted sender) client-ip=23.128.96.19; Authentication-Results: mx.google.com; dkim=pass header.i=@linuxfoundation.org header.s=korg header.b=XLdy9iRS; spf=softfail (google.com: domain of transitioning linux-kernel-owner@vger.kernel.org does not designate 23.128.96.19 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linuxfoundation.org Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by lindbergh.monkeyblade.net (Postfix) with ESMTP id 6AC493B1724; Tue, 7 Jun 2022 21:35:23 -0700 (PDT) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1380022AbiFGVOL (ORCPT + 99 others); Tue, 7 Jun 2022 17:14:11 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:37262 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1376660AbiFGURA (ORCPT ); Tue, 7 Jun 2022 16:17:00 -0400 Received: from ams.source.kernel.org (ams.source.kernel.org [IPv6:2604:1380:4601:e00::1]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 6ABB01742BC; Tue, 7 Jun 2022 11:29:44 -0700 (PDT) Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ams.source.kernel.org (Postfix) with ESMTPS id EA263B822C0; Tue, 7 Jun 2022 18:29:43 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 474F6C385A5; Tue, 7 Jun 2022 18:29:42 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=linuxfoundation.org; s=korg; t=1654626582; bh=M9t8chD2hNq77zz35xqq4gXAk7I4iMh0mKRYZwsuwFI=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=XLdy9iRSk/tn2Jj0Y7dokVhEPcmx2jr8Cd3k/tcPmmJCkFZf/v0gqREVsm/cIZpSK xBmJ+vCNYjM0uYOEEYZiVOGTwr3ScRlBjgmSMUY7GA1UMUQBs+KNkTgOK4vxp4dsHm WqVNGS3I5JxRGNcwdFwYG9UfKqdfHf31ZD8eDboI= From: Greg Kroah-Hartman To: linux-kernel@vger.kernel.org Cc: Greg Kroah-Hartman , stable@vger.kernel.org, Pavel Begunkov , Jens Axboe , Sasha Levin Subject: [PATCH 5.17 389/772] io_uring: avoid io-wq -EAGAIN looping for !IOPOLL Date: Tue, 7 Jun 2022 18:59:41 +0200 Message-Id: <20220607165000.476361122@linuxfoundation.org> X-Mailer: git-send-email 2.36.1 In-Reply-To: <20220607164948.980838585@linuxfoundation.org> References: <20220607164948.980838585@linuxfoundation.org> User-Agent: quilt/0.66 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Spam-Status: No, score=-3.1 required=5.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,HEADER_FROM_DIFFERENT_DOMAINS, MAILING_LIST_MULTI,RDNS_NONE,SPF_HELO_NONE,T_SCC_BODY_TEXT_LINE autolearn=unavailable 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 From: Pavel Begunkov [ Upstream commit e0deb6a025ae8c850dc8685be39fb27b06c88736 ] If an opcode handler semi-reliably returns -EAGAIN, io_wq_submit_work() might continue busily hammer the same handler over and over again, which is not ideal. The -EAGAIN handling in question was put there only for IOPOLL, so restrict it to IOPOLL mode only where there is no other recourse than to retry as we cannot wait. Fixes: def596e9557c9 ("io_uring: support for IO polling") Signed-off-by: Pavel Begunkov Link: https://lore.kernel.org/r/f168b4f24181942f3614dd8ff648221736f572e6.1652433740.git.asml.silence@gmail.com Signed-off-by: Jens Axboe Signed-off-by: Sasha Levin --- fs/io_uring.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/fs/io_uring.c b/fs/io_uring.c index a0680046ff3c..26bf488096b2 100644 --- a/fs/io_uring.c +++ b/fs/io_uring.c @@ -6939,6 +6939,8 @@ static void io_wq_submit_work(struct io_wq_work *work) * wait for request slots on the block side. */ if (!needs_poll) { + if (!(req->ctx->flags & IORING_SETUP_IOPOLL)) + break; cond_resched(); continue; } -- 2.35.1