From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1755397AbaEOWWQ (ORCPT ); Thu, 15 May 2014 18:22:16 -0400 Received: from ipmail07.adl2.internode.on.net ([150.101.137.131]:30225 "EHLO ipmail07.adl2.internode.on.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751076AbaEOWWO (ORCPT ); Thu, 15 May 2014 18:22:14 -0400 X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: AiAJAO48dVN5LL1s/2dsb2JhbABZgwaDPlGoDgEBAQEBAQaWWINFAYERF3SCJQEBBSMPASMjEAgBAg4DAwECAQICBSECAg8FJQMKCQ4TiECQSpwgpHAXFoEUhCqIegcGgm+BSwSZUJMVg0gr Date: Fri, 16 May 2014 08:21:35 +1000 From: Dave Chinner To: Mateusz Guzik Cc: =?utf-8?B?THVrw6HFoQ==?= Czerner , sandeen@redhat.com, Jan Kara , linux-kernel@vger.kernel.org, linux-fsdevel@vger.kernel.org, Josef Bacik , Al Viro , Joe Perches Subject: Re: [PATCH V2 2/2] fs: print a message when freezing/unfreezing filesystems Message-ID: <20140515222135.GZ26353@dastard> References: <1400018683-5565-1-git-send-email-mguzik@redhat.com> <1400018683-5565-2-git-send-email-mguzik@redhat.com> <20140514111449.GB5824@quack.suse.cz> <20140514112619.GA10637@mguzik.redhat.com> <20140514113945.GC5824@quack.suse.cz> <20140514220052.GD5421@dastard> <20140514223745.GF5421@dastard> <5373F0D6.4090600@redhat.com> <20140515104746.GF10637@mguzik.redhat.com> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: <20140515104746.GF10637@mguzik.redhat.com> User-Agent: Mutt/1.5.21 (2010-09-15) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Thu, May 15, 2014 at 12:47:48PM +0200, Mateusz Guzik wrote: > On Thu, May 15, 2014 at 12:40:19PM +0200, Lukáš Czerner wrote: > > On Wed, 14 May 2014, Eric Sandeen wrote: > > > > > Date: Wed, 14 May 2014 17:40:22 -0500 > > > From: Eric Sandeen > > > Reply-To: sandeen@redhat.com > > > To: Dave Chinner , Jan Kara > > > Cc: Mateusz Guzik , linux-kernel@vger.kernel.org, > > > linux-fsdevel@vger.kernel.org, Josef Bacik , > > > Al Viro , Joe Perches > > > Subject: Re: [PATCH V2 2/2] fs: print a message when freezing/unfreezing > > > filesystems > > > > > > On 5/14/14, 5:37 PM, Dave Chinner wrote: > > > > On Thu, May 15, 2014 at 08:00:52AM +1000, Dave Chinner wrote: > > > >> On Wed, May 14, 2014 at 01:39:45PM +0200, Jan Kara wrote: > > > >>> On Wed 14-05-14 13:26:21, Mateusz Guzik wrote: > > > >>>> On Wed, May 14, 2014 at 01:14:49PM +0200, Jan Kara wrote: > > > >>>>> On Wed 14-05-14 00:04:43, Mateusz Guzik wrote: > > > >>>>>> This helps hang troubleshooting efforts when only dmesg is available. > > > >>>>>> > > > >>>>>> While here remove code duplication with MS_RDONLY case and fix a > > > >>>>>> whitespace nit. > > > >>>>> I'm somewhat undecided here I have to say. On one hand I don't like > > > >>>>> printing to kernel log when everything is fine and kernel is operating > > > >>>>> normally. On the other hand I've seen quite a few cases where people have > > > >>>>> shot themselves in the foot with filesystem freezing so having some trace > > > >>>>> of this in the log doesn't seem like a completely bad thing either. What do > > > >>>>> other people think? > > > >>>>> > > > >>>> > > > >>>> I would like to note that the kernel already prints messages when e.g. > > > >>>> filesystems get mounted. > > > >>> Yeah, that's a fair point. > > > >> > > > >> But filesystems choose to output that info, not the VFS. When you do > > > >> a remount,ro there is no output in syslog, because filesystems don't > > > >> need to dump any output - the state change is reflected in > > > >> /proc/self/mounts. IMO frozen should state should be communicated > > > >> the same way so that it is silent when it just works, and the state > > > >> can easily be determined when something goes wrong. > > > > > > > > Say, like this: > > > > > > > > $ grep /mnt/test /proc/mounts > > > > /dev/vda /mnt/test xfs rw,relatime,attr2,inode64,noquota 0 0 > > > > $ sudo xfs_freeze -f /mnt/test > > > > $ grep /mnt/test /proc/mounts > > > > /dev/vda /mnt/test xfs rw,frozen,relatime,attr2,inode64,noquota 0 0 > > > > $ sudo xfs_freeze -u /mnt/test > > > > $ grep /mnt/test /proc/mounts > > > > /dev/vda /mnt/test xfs rw,relatime,attr2,inode64,noquota 0 0 > > > > $ > > > > > > I'm not totally convinced that including a non-mount option in what > > > has always (?) been a list of mount options is a great idea. > > > > I do not like it either. Mixing this together with other mount > > options does not seem like a great idea, however we really need a > > way to report this and I guess we can not just change the > > /proc/self/mounts, or /proc/self/mountinfo format. > > > > So what about crating a new file /proc/self/frozen with the list of > > frozen file systems in the same format what mounts, or mountinfo has > > ? > > > > As the time goes on there will be more data to present about given > mountpoint. So either mountinfo should be extendable to support this > (can't see why not) or new generic file with that property should be > provided. I vote for the former. > > IOW, a new column in mountinfo. For frozen filesystems it would contain > 'frozen_by=[%s]:[%d]' (escaped comm, pid). I really don't see that the process that froze the filesystem is particularly useful - it many cases that process is long gone (e.g. fsfreeze is being used to allow a HW array to take a snapshot). Just the fact it is in the process of freezing (if stuck, stack trace in sysrq-w should be present) or frozen (freezing process may be long gone, and is mostly irrelevant because you're now tracking down why a thaw hasn't happened)... Cheers, Dave. -- Dave Chinner david@fromorbit.com