Received: by 2002:ac0:a5a7:0:0:0:0:0 with SMTP id m36-v6csp1676505imm; Sat, 4 Aug 2018 08:21:38 -0700 (PDT) X-Google-Smtp-Source: AAOMgpff8qdp/QgssfSZlufmi48CEUWTIaTanHuzVYZw95lSUZKyWSzhCzmBn83NH22sCzzGQ8gM X-Received: by 2002:a17:902:2e83:: with SMTP id r3-v6mr7743302plb.80.1533396098601; Sat, 04 Aug 2018 08:21:38 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1533396098; cv=none; d=google.com; s=arc-20160816; b=C7Lz2fP4+Yrp49cmYzSzx1o2XLNmRv8v2OzNFOaL93VKVnnH2Qz2oqBPQnhwTvlub5 P3qRlGQShZiUWPMIsYgkl9LjD/Txt+921KyNBVEGnYNZ2cWOAjXiNEo2eWtMNLygLcEs Z0t6ZIpYsDKtEHQSjb7xXXCwxCmJJBODEzZGKG+clwSRjVLKwGw41++LjXd2kSf0SyoW s2qwtAqGwvx98AfYlo+RlTQZeyaxvyFc/hfhRfU7IRMypN5KSTb/HvBj7JB00C1JNgYR laj0gjN7/yCSdUwb7FPRz7dCzdLYmniFSFUOaGdbdsbvYGTfkOx/vy2XGh/LBzAwU62R AeGg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:user-agent:in-reply-to :content-disposition:mime-version:references:message-id:subject:to :from:date:arc-authentication-results; bh=9t2EpaWgtDJIWjQVg6N9wkgHoE1cC7sTexmxikLlHf4=; b=TtE9X3XMu9ahxl6TN9uIswHoIMy0V0KcWufLbDbueGnSrhUb2vkYtOdiEAsjPvhnm+ TuxoiyCz06zBeVWcwbTlY9ghnniOtd8c8gdXx8VfzygEYHHplOme9hRRU5nSkeaFQuDo 4A9jZEStK+oNrXzmnVOuKUvVU1MS2OaEd2GsDZlHu6W2Zo8kdJE6lKDTcI21kzZCaCW1 xepYr52GndkdCqKoeuZx5uMOfR/m8crOcQgD5uWEuQyJjZzZ3NnsGwzqcepydAO727D0 21kpPGjdTLYzy6ZiXjxwqDNuxMnhDZt+fwqFWI735vqrL5Ku2d07Q8kFyAy2//JOv8d6 Qw0w== 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=redhat.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id p11-v6si7900688pgh.274.2018.08.04.08.21.11; Sat, 04 Aug 2018 08:21:38 -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; 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=redhat.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728835AbeHDRUs (ORCPT + 99 others); Sat, 4 Aug 2018 13:20:48 -0400 Received: from mx3-rdu2.redhat.com ([66.187.233.73]:38358 "EHLO mx1.redhat.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1727980AbeHDRUs (ORCPT ); Sat, 4 Aug 2018 13:20:48 -0400 Received: from smtp.corp.redhat.com (int-mx06.intmail.prod.int.rdu2.redhat.com [10.11.54.6]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.redhat.com (Postfix) with ESMTPS id E308140200B3; Sat, 4 Aug 2018 15:19:45 +0000 (UTC) Received: from localhost (unknown [10.18.25.149]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 5945A215670D; Sat, 4 Aug 2018 15:19:45 +0000 (UTC) Date: Sat, 4 Aug 2018 11:19:45 -0400 From: Mike Snitzer To: "Theodore Y. Ts'o" , Linus Torvalds , Jens Axboe , Sagi Grimberg , Linux Kernel Mailing List , linux-block , dm-devel@redhat.com, Zdenek Kabelac , Ilya Dryomov , wgh@torlan.ru Subject: Re: LVM snapshot broke between 4.14 and 4.16 Message-ID: <20180804151944.GA9417@redhat.com> References: <1ec0a220-d5b0-1c27-e63b-c4d3f4ce9d77@torlan.ru> <20180803185431.GB3258@redhat.com> <20180803193037.GA4581@redhat.com> <20180804052033.GA4461@thunk.org> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20180804052033.GA4461@thunk.org> User-Agent: Mutt/1.5.21 (2010-09-15) X-Scanned-By: MIMEDefang 2.78 on 10.11.54.6 X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.5.16 (mx1.redhat.com [10.11.55.6]); Sat, 04 Aug 2018 15:19:45 +0000 (UTC) X-Greylist: inspected by milter-greylist-4.5.16 (mx1.redhat.com [10.11.55.6]); Sat, 04 Aug 2018 15:19:45 +0000 (UTC) for IP:'10.11.54.6' DOMAIN:'int-mx06.intmail.prod.int.rdu2.redhat.com' HELO:'smtp.corp.redhat.com' FROM:'msnitzer@redhat.com' RCPT:'' Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Sat, Aug 04 2018 at 1:20am -0400, Theodore Y. Ts'o wrote: > On Fri, Aug 03, 2018 at 03:30:37PM -0400, Mike Snitzer wrote: > > > > I was trying to give context for the "best to update lvm2 anyway" > > disclaimer that was used. Yeah, it was specious. > > Well, it seemed to indicate a certain attitude that both Linus and I > are concerned about. I tried to use more of a "pursuading" style to > impress why that attitude was not ideal/correct. Linus used a much > more assertive style (e.g., "Hell, no!"). [I debated just ignoring this portion of your reply but it needs to be dealt with directly] I prefer how Linus handled it (at least he was timely with his follow-ups). Your initial reply where you joined a fragment of my initial reply with Zdenek's (we sent simultaneously, each half way around the world) served to merge Zdenek and myself into one fictional straw-man you both could attack. If you have something to say to _me_ address me directly; don't put words in my mouth because you thought I had a complete mind-meld with someone else. And please don't act like this wasn't already beaten to death yesterday; which left me (as DM maintainer) initially _unwarrantedly_ compromised. There was a block regression that I wasn't aware of but someone on my broader team (Zdenek) papered over it in userspace rather than report it as a regression. I did brush off the seriousness of side-effects on readonly dm-snapshot ("Because dm-snapshot"). But that doesn't speak to some systemic "problem" you seem to be concerned about. > > And yeah, that isn't a good excuse to ignore it but: dm-snapshot is a > > steaming pile as compared to dm thin-provisioning... > > On a side note, this is the first that I've heard the assertion that > dm-thin was better than dm-snapshot. You don't follow DM much, that's fine. But thinp is considerably more powerful for modern use-cases. > My impression was that dm-snapshot was a proven code base, that only > did one thing and (as far as I could tell) did it well. In contrast, > dm-thin is much newer code, **far** more complex, with functionality > and corner cases approaching that of a file system --- dm-snapshot's scaling is _awful_. This is due to the N-way copy-out penalty associated with N snapshots. So lots of snapshots perform very very slowly. Even one snapshot is slow compared to dm-thinp. dm-thin (2011) certainly is newer than dm-snapshot (well before 2005), and yes dm-thin is complex, but dm-snapshot's code isn't exactly "simple". The on-disk layout is but that simplicity contributes to why it doesn't scale at all. DM thin is a modern approach to snapshots grounded in the same btree-based concepts and design used by btrfs. Given dm-thinp's requirements and how it has been deployed and pushed _hard_ it really is holding up amazingly well. > and just to be even more exciting, it [dm-thin] doesn't have an > fsck/repair tool to deal with corrupted metadata. That's one definition for "exciting" on your Friday night ... ;) The documentation was outdated, see this thread: https://www.redhat.com/archives/dm-devel/2018-July/msg00200.html Where I shared that this Documentation update was staged for 4.19: https://git.kernel.org/pub/scm/linux/kernel/git/device-mapper/linux-dm.git/commit/?h=dm-4.19&id=6c7413c0f5ab61d2339cf516d25bb44d71f4bad4 That said, thin_repair has shown itself to be hit-or-miss. There are certain corruptions that it doesn't cope with well (leaving the metadata "repaired" but the result is an empty thin-pool). Those cases are more rare but still occur. So repairing thinp corruption can require escalations through "enterprise support" (which results in fixes to thin_repair, etc). > In your opinion, is it because you disagree with the assumption that > dm-thin is scary? Or is the argument that dm-snapshot is even > scarier? Apples and oranges. DM thinp is complex but necessarily so. dm-snapshot is still complex yet only covers legacy and narrow (read: now useless) use-cases. In the same thread I referenced above, see how Drew Hastings is looking to use DM thinp to host VM guest storage, which implies a scaling dm-snapshot has _zero_ hope of providing: https://www.redhat.com/archives/dm-devel/2018-August/msg00088.html > P.S. It could be that my impression is wrong/out-dated, but the > kernel documentation still says that userspace tools for checking and > repairing the metadata are "under development". As a file system > developer, the reaction this inspires is best summed up as: > > https://imgflip.com/memetemplate/50971393/Scared-Face Already addressed this.