Received: by 2002:ac0:a5a6:0:0:0:0:0 with SMTP id m35-v6csp3291922imm; Fri, 24 Aug 2018 14:17:00 -0700 (PDT) X-Google-Smtp-Source: ANB0Vdb5S5MsQX5/Wly5JLI9PzHOEuh0To4j7NWMLWYBpMJ3bCkNLk8ltEIn3TNxJYFIks+JA/UY X-Received: by 2002:a63:d56:: with SMTP id 22-v6mr3220956pgn.107.1535145420415; Fri, 24 Aug 2018 14:17:00 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1535145420; cv=none; d=google.com; s=arc-20160816; b=e3ZoTpEezF8WNgRftzl+TSPjws5iBHY4bNRGKtvHhJFS/8zGCjPAnvbbBGK4l6RJ5M DombCw1ioJgyq3mfn06YR1iPCcmL0l+jgD2BZi5pi46eyAOjEXeT9A9YbOmYknQy+X3a ta57TanFuKkdSrcEEV8ggAdpaKP50nbxxZU8/xcQzKGm7cTqrzlc64pyDwZNzQ+CHKVk fdJqDIp/58bI6764LIXe5dYA8ES4B5A3j96tD56LsyKKtL7p5++mV1F8q7m9SsYDantr I5ZKzFCRRlNLrGAbVzGlX2pJXpVTqMaM4793aePel1tcy7sutU5nzT4fHMoDlu2OwvfF 7jtw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-disposition:mime-version :message-id:subject:cc:to:from:date:dkim-signature :arc-authentication-results; bh=mh2KZDxgLOR5rF7CDKH71tMjDPkgT4/FlTyA6n+EiYc=; b=EvnpjETfCvmJZST4d/AQUh0EWP7VhdSRCiDSLP4+daXY3lyMGxXLZcjwN5RMfTNkol /OyySlkfn/oJMKwGOQ8yRpaSQ9rX2jmsJpICLFlqnFqpwKWkhlA4mRZ7/wZfEDw0dBjw nwqXg+nXveU79l2YPj5swkvoCKh3TJKhOKDhAvvfYtS5GT5PhWhlWHUZvZfb+Er8+eR5 IodF9hu2ogLmFrkYBaBoRdP9IP3/EeIwX1k2oFRPFztOYLCwdMWqxdLMhxKHBLFusv4e gCE8JVyIQQOU+P9bpafVGhNk7Ky4w+ULT0RGYQ8F6EfXyZXukoNAvTn8F5SKNLiNucpc 1Q8g== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@chromium.org header.s=google header.b=jZ51C+XC; 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=pass (p=NONE sp=NONE dis=NONE) header.from=chromium.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id s13-v6si7384930plq.140.2018.08.24.14.16.43; Fri, 24 Aug 2018 14:17:00 -0700 (PDT) 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; dkim=pass header.i=@chromium.org header.s=google header.b=jZ51C+XC; 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=pass (p=NONE sp=NONE dis=NONE) header.from=chromium.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1727513AbeHYAv5 (ORCPT + 99 others); Fri, 24 Aug 2018 20:51:57 -0400 Received: from mail-pf1-f195.google.com ([209.85.210.195]:37784 "EHLO mail-pf1-f195.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726861AbeHYAv5 (ORCPT ); Fri, 24 Aug 2018 20:51:57 -0400 Received: by mail-pf1-f195.google.com with SMTP id h69-v6so5081566pfd.4 for ; Fri, 24 Aug 2018 14:15:38 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=chromium.org; s=google; h=date:from:to:cc:subject:message-id:mime-version:content-disposition; bh=mh2KZDxgLOR5rF7CDKH71tMjDPkgT4/FlTyA6n+EiYc=; b=jZ51C+XCTTDYofziMtss28BT0xMMUgYBWA1wXOCBGVu6KJqYJTCd72oKnYSJ7oe2Kb 8ODFqrD5ssVX18tIIoRAdCoeFt1n9qImmpRZiDg7UJWgzAxxd7RAzMUjvDS7ELyNn66n l0+RQQQlmH+BzyCF83rjUteVG0Xt4eQyfNFM0= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:date:from:to:cc:subject:message-id:mime-version :content-disposition; bh=mh2KZDxgLOR5rF7CDKH71tMjDPkgT4/FlTyA6n+EiYc=; b=pl5GZMz7AjzMEnIGcskto0IWBuM/Sh882NH2tjdpFcVCZy8BaQGPsBgSiV3QFkMCEG SkQoProAr7Go2B0JkXacUS0qX0OBfZNisMZRV8xV8+a8ijDkgEVsLuoyW4N9BvznSi8a OJU4dH1Wr9HtRr5gIElYeQn9ydOjXiVgKTkxOcp+S4GlvV9VKhT3mvLgNZkCN4AQMqgS fpvyhjL3KbzI9jFbp7v/FAaI23BqIT7mQeN3UwaC3C370jov2neIwUPz/PfXzR3YGngE BPXwB1tzvhnxCX3emzI2tJnKozYDnq0TKpVwfHaX8AxpmHFuVMvWz6Rr6jc0C/VV60Kj OP4Q== X-Gm-Message-State: APzg51DB+mQCmivk65IZr2vpyctNtgsQQLplsRVE4cD5MWYU9KcZzP8V 9v1dJ3y/csmGv6IXN8y7D/2Rxw== X-Received: by 2002:a65:5004:: with SMTP id f4-v6mr3155005pgo.54.1535145338285; Fri, 24 Aug 2018 14:15:38 -0700 (PDT) Received: from www.outflux.net (173-164-112-133-Oregon.hfc.comcastbusiness.net. [173.164.112.133]) by smtp.gmail.com with ESMTPSA id v8-v6sm11092901pff.120.2018.08.24.14.15.36 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Fri, 24 Aug 2018 14:15:37 -0700 (PDT) Date: Fri, 24 Aug 2018 14:15:35 -0700 From: Kees Cook To: Jens Axboe Cc: syzbot+21cfe1f803e0e158acf1@syzkaller.appspotmail.com, linux-block@vger.kernel.org, linux-kernel@vger.kernel.org Subject: [PATCH] block: Replace bio_check_ro()'s WARN_ON() Message-ID: <20180824211535.GA22251@beast> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org As described in commit 96c6a32ccb55a ("include/asm-generic/bug.h: clarify valid uses of WARN()"), this replaces a userspace-reachable WARN_ON() with pr_warn_once(). The reachability is even noted in the existing comment. This appears to be an "expected by unlikely" condition, so getting rid of the WARN_ON() means kernel fuzzers will stop reporting the problem. Additionally un-breaks the error string so it can more easily be found with grep. Reported-by: syzbot+21cfe1f803e0e158acf1@syzkaller.appspotmail.com Cc: Jens Axboe Cc: linux-block@vger.kernel.org Signed-off-by: Kees Cook --- block/blk-core.c | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/block/blk-core.c b/block/blk-core.c index dee56c282efb..470c3cea8cb0 100644 --- a/block/blk-core.c +++ b/block/blk-core.c @@ -2166,11 +2166,9 @@ static inline bool bio_check_ro(struct bio *bio, struct hd_struct *part) if (part->policy && (op_is_write(op) && !op_is_flush(op))) { char b[BDEVNAME_SIZE]; - WARN_ONCE(1, - "generic_make_request: Trying to write " - "to read-only block-device %s (partno %d)\n", + /* Older lvm-tools actually triggers this. */ + pr_warn_once("Trying to write to read-only block-device %s (partno %d)\n", bio_devname(bio, b), part->partno); - /* Older lvm-tools actually trigger this */ return false; } -- 2.17.1 -- Kees Cook Pixel Security