Received: by 2002:a25:8b91:0:0:0:0:0 with SMTP id j17csp3395203ybl; Mon, 27 Jan 2020 03:15:40 -0800 (PST) X-Google-Smtp-Source: APXvYqxbMd7uxP0feyaExxNDyhTCJUahV4xZ5Cup+j7J8eLETc4vfHQpZbd+3p+pQu21BojQbaiY X-Received: by 2002:a05:6830:13da:: with SMTP id e26mr11411206otq.97.1580123740597; Mon, 27 Jan 2020 03:15:40 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1580123740; cv=none; d=google.com; s=arc-20160816; b=OdnUd1TA5lbNApxJiA9riyyHOVsojV4yR3zEs1raFZlraDoqfEnbPCdnWmT0BC9E8r Hf4g/dgD1RwqESe5RFQ+rd0OMAXffJ1hGmW/9MDgDh/g0yCK1R+X3tatEVhAeArpkQ/U 6MrEZnH4CtabPtvM/EkqnF+7bJ5cSAdPyEvgw0J4yl0o5UGyEFMCQck6DI/jYUdBSd3J tAtveexXbkXYhZb8a03ZBKV0BehXU4KK07c5XAbbMw8fEucKPQh72IuitD/qDJNTwDiB nEGQkxwm8xKEQoLFS7GyQQPeeE5D4wAorELu6tQjx7UHk7NevxvlFYlqD4mu9EfI5FTZ 9Kqw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding :content-language:in-reply-to:mime-version:user-agent:date :message-id:from:references:to:subject; bh=wM0raOh8R7ruJxfc7iiBYtsr8ETnpRDNInL5hrQDV5I=; b=y4T7bLMbpPk6CT5NCikwqI1hZWG4HCSTR+cRGSkBtNSvOdbqj91uQPPL7zWOMA70fC 90Gd94ewQZzBQxQ427FLjHrqzwrGAjomBIfeNf3nEItAGkw2OmQCm3PLrNlR7VYLlTQ/ Mi9eio0dWMc0HdYHLRnQhaHOq4eCuaMz3EUzN5s+VK6eux+A5Qs6NVaFZQSFxoAd4lj+ 7NCqOUWboFWRTVASMqRow884almfSWgzS1jCEUMr6T9/QVCWYjQUTeP5rnYhjqX6FECH cTSyceXLBn3f2I4Tf+ad194mhneQo9wrU+AnFbyGMvkhj4fl0nT4GMb0ZHg86jDyGVs/ a/XQ== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=virtuozzo.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id s22si2189286otq.100.2020.01.27.03.15.14; Mon, 27 Jan 2020 03:15:40 -0800 (PST) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=virtuozzo.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1729269AbgA0KKB (ORCPT + 99 others); Mon, 27 Jan 2020 05:10:01 -0500 Received: from relay.sw.ru ([185.231.240.75]:54034 "EHLO relay.sw.ru" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726173AbgA0KKA (ORCPT ); Mon, 27 Jan 2020 05:10:00 -0500 Received: from dhcp-172-16-24-104.sw.ru ([172.16.24.104]) by relay.sw.ru with esmtp (Exim 4.92.3) (envelope-from ) id 1iw1KG-0000ID-Aj; Mon, 27 Jan 2020 13:09:00 +0300 Subject: Re: [PATCH v5 2/6] block: Pass op_flags into blk_queue_get_max_sectors() To: Bob Liu , linux-block@vger.kernel.org, linux-kernel@vger.kernel.org, martin.petersen@oracle.com, axboe@kernel.dk, agk@redhat.com, snitzer@redhat.com, dm-devel@redhat.com, song@kernel.org, tytso@mit.edu, adilger.kernel@dilger.ca, Chaitanya.Kulkarni@wdc.com, darrick.wong@oracle.com, ming.lei@redhat.com, osandov@fb.com, jthumshirn@suse.de, minwoo.im.dev@gmail.com, damien.lemoal@wdc.com, andrea.parri@amarulasolutions.com, hare@suse.com, tj@kernel.org, ajay.joshi@wdc.com, sagi@grimberg.me, dsterba@suse.com, bvanassche@acm.org, dhowells@redhat.com, asml.silence@gmail.com References: <157968992539.174869.7490844754165043549.stgit@localhost.localdomain> <157969068296.174869.13461609442947913096.stgit@localhost.localdomain> <8b77117b-1cc0-a379-2cdf-554a8060206c@oracle.com> From: Kirill Tkhai Message-ID: Date: Mon, 27 Jan 2020 13:08:59 +0300 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.4.2 MIME-Version: 1.0 In-Reply-To: <8b77117b-1cc0-a379-2cdf-554a8060206c@oracle.com> Content-Type: text/plain; charset=utf-8 Content-Language: en-US Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 25.01.2020 05:37, Bob Liu wrote: > On 1/22/20 6:58 PM, Kirill Tkhai wrote: >> This preparation patch changes argument type, and now >> the function takes full op_flags instead of just op code. >> >> Signed-off-by: Kirill Tkhai >> --- >> block/blk-core.c | 4 ++-- >> include/linux/blkdev.h | 8 +++++--- >> 2 files changed, 7 insertions(+), 5 deletions(-) >> >> diff --git a/block/blk-core.c b/block/blk-core.c >> index 50a5de025d5e..ac2634bcda1f 100644 >> --- a/block/blk-core.c >> +++ b/block/blk-core.c >> @@ -1250,10 +1250,10 @@ EXPORT_SYMBOL(submit_bio); >> static int blk_cloned_rq_check_limits(struct request_queue *q, >> struct request *rq) >> { >> - if (blk_rq_sectors(rq) > blk_queue_get_max_sectors(q, req_op(rq))) { >> + if (blk_rq_sectors(rq) > blk_queue_get_max_sectors(q, rq->cmd_flags)) { >> printk(KERN_ERR "%s: over max size limit. (%u > %u)\n", >> __func__, blk_rq_sectors(rq), >> - blk_queue_get_max_sectors(q, req_op(rq))); >> + blk_queue_get_max_sectors(q, rq->cmd_flags)); >> return -EIO; >> } >> >> diff --git a/include/linux/blkdev.h b/include/linux/blkdev.h >> index 0f1127d0b043..23a5850f35f6 100644 >> --- a/include/linux/blkdev.h >> +++ b/include/linux/blkdev.h >> @@ -989,8 +989,10 @@ static inline struct bio_vec req_bvec(struct request *rq) >> } >> >> static inline unsigned int blk_queue_get_max_sectors(struct request_queue *q, >> - int op) >> + unsigned int op_flags) >> { >> + int op = op_flags & REQ_OP_MASK; >> + > > Nitpick. int op = req_op(rq); > > Anyway, looks good to me. > Reviewed-by: Bob Liu Thanks, Bob. I'll merge this nitpick and your "Reviewed-by" at next resend. It will be after merge window is closed, and new patches are welcomed. >> if (unlikely(op == REQ_OP_DISCARD || op == REQ_OP_SECURE_ERASE)) >> return min(q->limits.max_discard_sectors, >> UINT_MAX >> SECTOR_SHIFT); >> @@ -1029,10 +1031,10 @@ static inline unsigned int blk_rq_get_max_sectors(struct request *rq, >> if (!q->limits.chunk_sectors || >> req_op(rq) == REQ_OP_DISCARD || >> req_op(rq) == REQ_OP_SECURE_ERASE) >> - return blk_queue_get_max_sectors(q, req_op(rq)); >> + return blk_queue_get_max_sectors(q, rq->cmd_flags); >> >> return min(blk_max_size_offset(q, offset), >> - blk_queue_get_max_sectors(q, req_op(rq))); >> + blk_queue_get_max_sectors(q, rq->cmd_flags)); >> } >> >> static inline unsigned int blk_rq_count_bios(struct request *rq) >> >> >