lkml.org 
[lkml]   [2008]   [Jun]   [24]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH 0/3] freeze feature ver 1.6
On Tue, 24 Jun 2008 15:59:19 +0900
Takashi Sato <t-sato@yk.jp.nec.com> wrote:

> Hi Andrew and Alexander,
>
> I have implemented the ioctls for the filesystem freeze feature
> and discussed its implementation on the ML (linux-ext4, xfs,
> linux-fsdevel, linux-kernel) for five months. All of the comments are
> addressed in my patch-set.
> Could you consider merging it into Linux?
>
> The filesystem freeze feature can suspend accesses to the filesystem
> keeping the filesystem's consistency. We can take the consistent backup
> with it cooperating with the backup software.
>
> The patches are re-based from linux-2.6.26-rc3 to linux-2.6.26-rc7
> There is no functional change from the previous version.
> The patch-set consists of the following three patches.
>
> [PATCH 1/3] Implement generic freeze feature
> I have modified to set the suitable error number (EOPNOTSUPP)
> in case the filesystem doesn't support the freeze feature.
>
> The ioctls for the generic freeze feature are below.
> o Freeze the filesystem
> int ioctl(int fd, int FIFREEZE, arg)
> fd: The file descriptor of the mountpoint
> FIFREEZE: request code for the freeze
> arg: Ignored
> Return value: 0 if the operation succeeds. Otherwise, -1
>
> o Unfreeze the filesystem
> int ioctl(int fd, int FITHAW, arg)
> fd: The file descriptor of the mountpoint
> FITHAW: request code for unfreeze
> arg: Ignored
> Return value: 0 if the operation succeeds. Otherwise, -1
>
> [PATCH 2/3] Remove XFS specific ioctl interfaces for freeze feature
> It removes XFS specific ioctl interfaces and request codes
> for freeze feature.
> This patch has been supplied by David Chinner.
>
> [PATCH 3/3] Add timeout feature
> The timeout feature is added to freeze ioctl. And new ioctl
> to reset the timeout period is added.
> o Freeze the filesystem
> int ioctl(int fd, int FIFREEZE, long *timeval)
> fd: The file descriptor of the mountpoint
> FIFREEZE: request code for the freeze
> timeval: the timeout period in seconds
> If it's 0 or 1, the timeout isn't set.
> This special case of "1" is implemented to keep
> the compatibility with XFS applications.
> Return value: 0 if the operation succeeds. Otherwise, -1
>
> o Reset the timeout period
> This is useful for the application to set the timeval more accurately.
> For example, the freezer resets the timeval to 10 seconds every 5
> seconds. In this approach, even if the freezer causes a deadlock
> by accessing the frozen filesystem, it will be solved by the timeout
> in 10 seconds and the freezer can recognize that at the next reset
> of timeval.
> int ioctl(int fd, int FIFREEZE_RESET_TIMEOUT, long *timeval)
> fd:file descriptor of mountpoint
> FIFREEZE_RESET_TIMEOUT: request code for reset of timeout period
> timeval: new timeout period in seconds
> Return value: 0 if the operation succeeds. Otherwise, -1
> Error number: If the filesystem has already been unfrozen,
> errno is set to EINVAL.
>
> Any comments are very welcome.

umm, OK, but nowhere in this patch series can I find a justification or
reason for making these changes to Linux. Why do we want to do this?
What is the benefit? What is the motivation. What are the use-cases,
etc?

Thanks.


\
 
 \ /
  Last update: 2008-06-24 23:41    [W:0.034 / U:0.056 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site