Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S932457AbYBADEf (ORCPT ); Thu, 31 Jan 2008 22:04:35 -0500 Received: (majordomo@vger.kernel.org) by vger.kernel.org id S1754474AbYBADE0 (ORCPT ); Thu, 31 Jan 2008 22:04:26 -0500 Received: from TYO201.gate.nec.co.jp ([202.32.8.193]:46974 "EHLO tyo201.gate.nec.co.jp" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752652AbYBADEZ (ORCPT ); Thu, 31 Jan 2008 22:04:25 -0500 Date: Fri, 01 Feb 2008 12:03:59 +0900 (JST) Message-Id: <20080201.120359.51771100.miyoshi@linux.bs1.fc.nec.co.jp> To: t-sato@yk.jp.nec.com Cc: tytso@MIT.EDU, linux-kernel@vger.kernel.org, linux-fsdevel@vger.kernel.org, linux-ext4@vger.kernel.org Subject: Re: [RFC] ext3 freeze feature From: Kazuto Miyoshi In-Reply-To: <01cb01c861af$8515d230$41a8400a@bsd.tnes.nec.co.jp> References: <20080125121851.GA3361@dmon-lap.sw.ru> <20080125133329.GB8184@mit.edu> <01cb01c861af$8515d230$41a8400a@bsd.tnes.nec.co.jp> X-Mailer: Mew version 5.1.50 on XEmacs 21.4.19 (Constant Variable) Mime-Version: 1.0 Content-Type: Text/Plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1484 Lines: 35 Sato-san, > > What you *could* do is to start putting processes to sleep if they > > attempt to write to the frozen filesystem, and then detect the > > deadlock case where the process holding the file descriptor used to > > freeze the filesystem gets frozen because it attempted to write to the > > filesystem --- at which point it gets some kind of signal (which > > defaults to killing the process), and the filesystem is unfrozen and > > as part of the unfreeze you wake up all of the processes that were put > > to sleep for touching the frozen filesystem. > > I don't think close() usually writes to journal and the deadlock occurs. > Is there the special case which close() writes to journal in case of > getting signal? I am afraid that Ted-san is concerning about the fact that the freeze program can touch the target filesystem by mistake (rather than just close() and its journal behavior) # cd /mnt # freeze /mnt > ./logfile This is more unclear to admins than "rm -rf /" case. So we need to implement some bail-out mechanism as he pointed out, such that if kernel noticed that the freezer is trying to touch the target filesystem, kernel would kill the freezer and automatically unfreeze the filesystem again. Regards, -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/