Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752430AbdC1PyP (ORCPT ); Tue, 28 Mar 2017 11:54:15 -0400 Received: from auth-4.ukservers.net ([217.10.138.158]:43936 "EHLO auth-4.ukservers.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751386AbdC1PyN (ORCPT ); Tue, 28 Mar 2017 11:54:13 -0400 X-Greylist: delayed 621 seconds by postgrey-1.27 at vger.kernel.org; Tue, 28 Mar 2017 11:54:13 EDT Subject: Re: [PATCH] Revert "md: raid1: use bio helper in process_checks()" To: Ming Lei , Arnd Bergmann References: <20170328095029.3500369-1-arnd@arndb.de> Cc: Shaohua Li , NeilBrown , Jens Axboe , "colyli@suse.de" , Guoqing Jiang , Mike Christie , "open list:SOFTWARE RAID (Multiple Disks) SUPPORT" , Linux Kernel Mailing List From: Wols Lists X-Enigmail-Draft-Status: N1110 Message-ID: <58DA848B.7030308@youngman.org.uk> Date: Tue, 28 Mar 2017 16:43:07 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:38.0) Gecko/20100101 Thunderbird/38.7.0 MIME-Version: 1.0 In-Reply-To: Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1083 Lines: 27 On 28/03/17 16:02, Ming Lei wrote: >> What I meant is that a future change to the function might cause >> > another bug to go unnoticed later. > What is the future change? And what is another bug? Please don't suppose or > assume anything in future. What was that about some American General demanding a list of "unknown unknowns"? > > BTW, I don't think it is a problem, and anyone who want to change the code > much should understand it first, right? > I'm very sorry, but I think you are assuming facts not in evidence (or rather, facts that the evidence says are wrong). In real life, it is normal for people to change things without understanding them. Are you saying that *you* - a couple of years down the line - will remember this bit of code, and will block a mistaken patch? What Arnd is doing is commonly called "defensive programming", and unfortunately reality shows us that it is usually worth its weight in gold. That's why you put ASSERTs in code - so that if somebody does something stupid by accident, it blows up. This is just more of the same. Cheers, Wol