Received: by 2002:a05:6a10:17d3:0:0:0:0 with SMTP id hz19csp3256116pxb; Tue, 20 Apr 2021 04:22:48 -0700 (PDT) X-Google-Smtp-Source: ABdhPJyAfE1kQN+Ynag2u0nRRrlYOci2RN9asa2Tl+lR3+agrVc2gL8/OiNtwPyXzOtShfaHGAXS X-Received: by 2002:aa7:dbd3:: with SMTP id v19mr31439929edt.314.1618917767829; Tue, 20 Apr 2021 04:22:47 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1618917767; cv=none; d=google.com; s=arc-20160816; b=c56YJfpnyNgAHoar5UfhMP9+4fofNdl3LN3Xg6zpmBtKm5+MJdDFp+OI3bZx6Nkx3C DgUfJGO3a96gKbJxhiW0WyigDchrLJPzqr5n63ul0FjykKEBPA+LMU31NlHj324vUqOX y98gwBIwAAd+04hP/DT+UGleYmO0TqRrUZPMHVI9RgxNFnN7gRp1+WPxO9ZtkZ48K/LY kyNXa/d18iGXEI07eq4FQJyZB3bI9GSAYTG/YdnriUe3K96WnTZQsrWVoi81CiZZQOHD rckzb4xuaNrSaMFFE13he9xUTdWFRqez/bGCgS8IUyL4ye5hwH07cSXGbM9xsPvpYqbF su3g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:references:in-reply-to:references:in-reply-to :message-id:date:subject:cc:to:from:dkim-signature; bh=kfQ3tysIoxsatHCHD/2ZhyT8LCxPccS8PgExkIm8Ohw=; b=L9Idnpfa+vlyeyFgyyD6XTHRsnsFw8Q0Mu5IAiD7KrqwugQx+RUieNDOmUsdsGI0ir 2Vi95/JUDk3T8gW7mUTMajqeiIf8jg4crmuhucEzMuKb1927c8o9M+5pGRESeHmildz8 dUKBl1PnUq2ENmOzbQnKfBlhqKgSUxwUMWacf49XK243XsxkoVE648bRopZFikrVW0TI taaaylPzSW7RF7glgnCFnhGnbxk826WCvWlxSB9DgUlPtCzmOwPrce3M6W6mA/8W6d9s N6m6Ce3Kn3bhrgWK0EtRuaPcmM6Xf0cv905xbqY94q2ImqIM2MeIWIq/woWbLiDm0agp 9hnQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@gmail.com header.s=20161025 header.b=hXAE7fxz; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id q23si14897452ejm.194.2021.04.20.04.22.24; Tue, 20 Apr 2021 04:22:47 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-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=@gmail.com header.s=20161025 header.b=hXAE7fxz; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-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 S231976AbhDTLVR (ORCPT + 99 others); Tue, 20 Apr 2021 07:21:17 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:37796 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S231805AbhDTLVI (ORCPT ); Tue, 20 Apr 2021 07:21:08 -0400 Received: from mail-pl1-x636.google.com (mail-pl1-x636.google.com [IPv6:2607:f8b0:4864:20::636]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 02832C06138C; Tue, 20 Apr 2021 04:20:37 -0700 (PDT) Received: by mail-pl1-x636.google.com with SMTP id y1so3847937plg.11; Tue, 20 Apr 2021 04:20:36 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id:in-reply-to:references :in-reply-to:references; bh=kfQ3tysIoxsatHCHD/2ZhyT8LCxPccS8PgExkIm8Ohw=; b=hXAE7fxzva1kCWVxkakrCakKQrPcHFhibFXiK+vF0uaHxUy5jfzQv6a97DjxPsJUKA AGCBJUZM7WuW5ysoVTFV7tz6fEs8fiByWd/TxegyE9xnU3jQcL6VETm1LYJ+ZnmVdmcO JPSt0cqR0rg2MGe6QkxWfpwOr20e3rsi1YP7llKF4YKe3k9IHETbxOwPo3vv/8nzzRM0 I/GcgiBRMbg9yA/roUSivUIlLa4CM0kuYEcT1dilIPmpZ2DbHAJdMTjI8trDWRp4henP EEIKj9pHwsdxmse7l+/IvDq8IlGkt48NXZZPCPYJOlbvIJ16xv9CaRsg/MG4jEVdSwx5 L4Hw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:in-reply-to:references; bh=kfQ3tysIoxsatHCHD/2ZhyT8LCxPccS8PgExkIm8Ohw=; b=f+MgIji45xQEyQNuCYI9XbPKOGr/RiXCWgF/qM3o/dznOAuK/RKBUhxm0ukDBdMJVJ CUG+TNnwRbsiJU2X+70gDvjnWt7c1qQ01AXEN0W3cp96sFO+VLohUDqAQ1UyU6CNxmGF emxtI6JmNnlxq9ZBbthMNwB1bzyVZGfT3C52RvJzpNczzrW4VdCmhr3JifDCm2PEn+Yd c+57GeCegab1rQcc7Lb3pI8guk8s+AcRi5SvLcOGwCFU+agO40cD10FKD7N6HJqn80PQ TNZXMy8IHoJwBDZwACwthZUhX9OZTAEaX1fbgR/QwbXxfMP38g67ZFW94030jP6Eyj/s VAWw== X-Gm-Message-State: AOAM533pjZXmLXDWyjf0B1fEyYIT0HsmOjduwko021KXdY86lFpVTnw7 A+w5fEOCxBQfcknvduNgrgiKoNkversBGA== X-Received: by 2002:a17:90b:1118:: with SMTP id gi24mr4344521pjb.30.1618917636634; Tue, 20 Apr 2021 04:20:36 -0700 (PDT) Received: from VM-0-3-centos.localdomain ([101.32.213.191]) by smtp.gmail.com with ESMTPSA id s40sm14187367pfw.100.2021.04.20.04.20.35 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Tue, 20 Apr 2021 04:20:36 -0700 (PDT) From: brookxu To: paolo.valente@linaro.org, axboe@kernel.dk, tj@kernel.org Cc: linux-block@vger.kernel.org, linux-kernel@vger.kernel.org Subject: [PATCH 6/8] bfq: optimize the calculation of bfq_weight_to_ioprio() Date: Tue, 20 Apr 2021 19:20:23 +0800 Message-Id: X-Mailer: git-send-email 1.8.3.1 In-Reply-To: References: In-Reply-To: References: Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Chunguang Xu The value range of ioprio is [0, 7], but the result of bfq_weight_to_ioprio() may exceed this range, so simple optimization is required. Signed-off-by: Chunguang Xu --- block/bfq-wf2q.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/block/bfq-wf2q.c b/block/bfq-wf2q.c index 619ed21..ea5b90d 100644 --- a/block/bfq-wf2q.c +++ b/block/bfq-wf2q.c @@ -527,8 +527,9 @@ unsigned short bfq_ioprio_to_weight(int ioprio) */ static unsigned short bfq_weight_to_ioprio(int weight) { - return max_t(int, 0, - IOPRIO_BE_NR * BFQ_WEIGHT_CONVERSION_COEFF - weight); + int ioprio = IOPRIO_BE_NR - weight / BFQ_WEIGHT_CONVERSION_COEFF; + + return ioprio < 0 ? 0 : min_t(int, ioprio, IOPRIO_BE_NR - 1); } static void bfq_get_entity(struct bfq_entity *entity) -- 1.8.3.1