Received: by 2002:ac0:a5a7:0:0:0:0:0 with SMTP id m36-v6csp823622imm; Fri, 3 Aug 2018 12:12:19 -0700 (PDT) X-Google-Smtp-Source: AAOMgpeIYIGlSkcUH98lacOI7l2bQg0Pdy9cZkAZ7ohd3lIeuTWPFlHWn4xol13JARdNha4l1Rt5 X-Received: by 2002:a63:2e09:: with SMTP id u9-v6mr4914873pgu.294.1533323539791; Fri, 03 Aug 2018 12:12:19 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1533323539; cv=none; d=google.com; s=arc-20160816; b=uUUEUgFVC/e1rFGxN4qLa5zrba+keiZ/IHCQ6lJn+WRX7sVMBZlOe83ziSPkzM+dWi Vp3PvBMfhZgFHo7peqElsarvLFTEp9FaNyor+xOKBu+KkQ4DO/puJy2hvqPpXzp9at5h QSvWscLa/A35cl89yyVlcFTkzjzrWctviEXVHATXuN/CBmXOtOAvtHKu20iegNDDOmSr B60jPJXtKwfCL3qzvI6CHbFDwm1UNCFfujNoTF+pIZYI3rkcZbvSNOcvP66/DpGNQUie DvB2sRusqxmS47egMm7e35KbcbVuoT+SOfw48sncFVwdS74I3zy4FVqoNx6/NZYIqRNp MMkQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:dkim-signature :arc-authentication-results; bh=nvL5FiU5YXCXcfxUfO20a3zDdWcrcNDrj4X8rTCzbZs=; b=xp13mAQLZ9789iEkM5JRtpeGhAtljLCNpMlhOnreozEw8g8soD5tG8joa+u+vSfv9r Nchystxx7qdSJZYIQqEE2roXWDLVeS2hRZjFof6sIIQRjWZcq5dBNQzy6iyLtMtK1LAg 59cmQtAOwA7tg6Blu1zaZqvnsc2v96UWSZ2U71R7s7zVhEEBkD/h8iwKwWMKAgQWR0Ut Q6uAAtjr//8OXCmWfUB447k1ulbe+A+VMaPBoj7f6Ho23gKr9x5ICe0hd9tt2BWyymaZ 8Lm3/HZeewrdzgSlXnCqC8B46kKj+ZFGHhHF5LANS0f2hzbGIm5Yl1EqOIvX4gZeULSv 6xNg== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linux-foundation.org header.s=google header.b=PT2vxOxn; 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 Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id l26-v6si5557799pfo.325.2018.08.03.12.12.05; Fri, 03 Aug 2018 12:12:19 -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=@linux-foundation.org header.s=google header.b=PT2vxOxn; 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 Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1731952AbeHCVHm (ORCPT + 99 others); Fri, 3 Aug 2018 17:07:42 -0400 Received: from mail-io0-f195.google.com ([209.85.223.195]:36576 "EHLO mail-io0-f195.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1728246AbeHCVHm (ORCPT ); Fri, 3 Aug 2018 17:07:42 -0400 Received: by mail-io0-f195.google.com with SMTP id r15-v6so5880835ioa.3; Fri, 03 Aug 2018 12:10:08 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linux-foundation.org; s=google; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=nvL5FiU5YXCXcfxUfO20a3zDdWcrcNDrj4X8rTCzbZs=; b=PT2vxOxnkAA0cke3iM8WrP0cCya7HflOTUJwFHzUf67Cs/11M5bGPBOwCFysyVmU3B d7P8mXeZwHvjo6nkPyKsTKb8zcgDOZAw3RcGCVC1yRQqbhbQuFbTgDXjecSo4BJBCHZm ThajIF2NDRy1MR+F7JTFj5IN+eMsNr7KWgLEk= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=nvL5FiU5YXCXcfxUfO20a3zDdWcrcNDrj4X8rTCzbZs=; b=GwMYJP0bvrYKo3ro3thPj+NYzOzik9rp7oM877GL35X7rZZfndq3N9boFef2K3bSXF 9R5nWC0rAmwnGZRxyonhRx2DatpfWv5XGlYeJDJLkaaTPhaJaoYIwNPWi367x/jQSxKy POtk8VNPrdCqf9RWXnk/p6KYuoc1FuATjAot2pBvzOzBsmZmUY+KUOZLLs5Iki2K5xil mVI4NqkSCmEfkJ2gsTbF7m34fjQzv0rElCbp5Nn7cWcEPAZouGwaXSVNasgTP6VEKxng Ct6jZ43638FQFhW/yDeWjBBeGSfjt2UxxBz2QzKXsXpkFzo3Hel1gbnyXYEuFHx6reDE 7+SQ== X-Gm-Message-State: AOUpUlH8DcY3nxWFu5bDQAKHGpybKAps3kHdsyCeLIyVJNcVY/njOKnR Y87sCnC30p304sX9khdudOOHqO80hCEfkYcjMRw= X-Received: by 2002:a6b:fc0c:: with SMTP id r12-v6mr7580454ioh.203.1533323407671; Fri, 03 Aug 2018 12:10:07 -0700 (PDT) MIME-Version: 1.0 References: <93bff248-6897-4867-841b-2dace11597de@torlan.ru> <1ec0a220-d5b0-1c27-e63b-c4d3f4ce9d77@torlan.ru> <20180803185431.GB3258@redhat.com> In-Reply-To: <20180803185431.GB3258@redhat.com> From: Linus Torvalds Date: Fri, 3 Aug 2018 12:09:56 -0700 Message-ID: Subject: Re: LVM snapshot broke between 4.14 and 4.16 To: Mike Snitzer Cc: Zdenek Kabelac , wgh@torlan.ru, Ilya Dryomov , Jens Axboe , linux-block , Linux Kernel Mailing List , Sagi Grimberg , dm-devel@redhat.com Content-Type: text/plain; charset="UTF-8" Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Fri, Aug 3, 2018 at 11:54 AM Mike Snitzer wrote: > > > As I explained to Ted in my previous reply to this thread: using an lvm2 > that is of the same vintage of the kernel is generally going to provide > a more robust user experience You said that yes. And it is completely irrelevant. The fact is, if you use an older lvm2, then a newer kernel still needs to work. Your "more robust experience" argument has nothing what-so-ever to do with that. Will you get new features from newer user land tools? Sure, usually. And entirely immaterial to a kernel regression. Will newer user land tools hopefully fix other issues? You'd hope so, but again - immaterial. So why are you bringing up a complete red herring? It's entirely immaterial to the actual issue at hand. I would _hope_ that other projects hjave the same "no regressions" rule that the kernel has, but I know many don't. But whatever other projects are out there, and whatever other rules _they_ have for their development is also entirely immaterial to the kernel. The kernel has a simple rule: no user regressions. Yes, we've had to break that rule very occasionally - when the semantics are a huge honking security issue and cannot possibly be hidden any other way, then we obviously have to break them. So it has happened. It's happily quite rare. But in this case, the issue is that the block layer now enforces the read-only protection more. And it seems to be the case that the lvm tools set the read-only flag even when they then depended on being able to write to them, because we didn't use to. So just judging from that description, I do suspect that "we can't depend on the lvm read-only flag", so a patch like "let's not turn DM_READONLY_FLAG into actually set_disk_ro(dm_disk(md), 1)" makes sense. Obviously, if we can limit that more, that would be lovely. But dammit, NOBODY gets to say "oh, you should just update user land tools". Because when they do, I will explode. And I'm 1000% serious that I will refuse to work with people who continue to say that or continue to make excuses. And user land developers should damn well know about this. The fact that they are apparently not clued in about kernel rules is what allowed this bug to go undiscovered and unreported for much too long. Apparently the lvm2 user land developers *did* notice the breakage, but instead of reporting it as a kernel bug, they worked around it. So user land developers should actually know that if the kernel stops working for them, they should *not* work around it. Sure, fix your program, but let the kernel people know. And kernel people should know that "oh, the user land people already changed their behavior" is *not* a "I don't need to care about it". Unless the user land fix was so long ago that nobody cares any more. Linus