From: Libor Vanek <libor@conet.cz>
To: "Jörn Engel" <joern@wohnheim.fh-wedel.de>
Cc: Christoph Hellwig <hch@infradead.org>,
Muli Ben-Yehuda <mulix@mulix.org>,
linux-kernel@vger.kernel.org
Subject: Re: Syscall table AKA hijacking syscalls
Date: Fri, 02 Jan 2004 17:59:22 +0100 [thread overview]
Message-ID: <3FF5A36A.5070501@conet.cz> (raw)
In-Reply-To: <20040102163552.GD31489@wohnheim.fh-wedel.de>
>>>I'm working on my diploma thesis which is adding snapshot capability
>>>into Linux VFS (so you can do directory based snapshots - not complete
>>>device, like in LVM). It'll consist of two separete modules:
>>>Snapshot module:
>>>- will hijack (one or another way) calls to open/move/unlink/mkdir/etc.
>>>syscall
>>>- when will detect change to selected directory (which I want to
>>>snapshot), it'll copy/move old file/directory to some temporary
>>>(selected when creating snapshot) - in fact - copy on write behaviour
>>
>>This should be implemented as a stackable filesystem..
> Does this filesystem stack work with multiple mount points?
I think that stackable filesystem is useless for this. See this:
- I have some BIG (>> 1 TB) filesystem (XFS/ext3/JFS whatever!!!)
mounted in /BIG
- I call something like snapshot --what=/BIG/data --where=/OTHER_FS/snap1
- from now whenever I delete/create/modify file/dir in /BIG/data then
BEFORE the action the original file/dir should be copyied/moved to
/OTHER_FS/snap1
There is no place where can I use stackable filesystem because I'd need
to use it on the very beginning of mounting /BIG so instead:
mount /dev/md0 /BIG -t xfs
I'd need to do something like:
mount /dev/md0 /BIG -t snapfs -o fstype=xfs
Which is something I'm trying to avoid as much as possible for many reasons.
> My guess is that the filesystem change notification would be a better
> solution, either in userspace or in kernelspace, doesn't matter. But
> that is far from finished or even generally accepted.
This is also something (but just a bit) different - I don't need "change
notification" but "pre-change notification" ;)
> For the diploma thesis, feel free to use any hack you like, including
> hijacking syscalls. But remember that it is a hack and nothing else,
> only helping you to remain on schedule and focus more on the real
> subject. And don't plan on kernel acceptance either, as you will fail
> either that or the thesis and I'd choose the thesis.
You're absolutely right but when I'm going to spent several weeks on
something like this I'd like to do something usefull - not something
which will be trashed after exam. So I'm trying to find out some
"politically correct" way.
Right now I'll code it with the very nasty "find sys_call_table" hack
just I can test it without rebooting my machine (attempts to get 2.6.0
running under UML or VMWare failed :-((() and when I'll release some
0.0.1 version and get some good respondce I'll code it as the VFS patch
& module.
--
Libor Vanek
next prev parent reply other threads:[~2004-01-02 17:00 UTC|newest]
Thread overview: 22+ messages / expand[flat|nested] mbox.gz Atom feed top
2004-01-02 12:59 Syscall table AKA hijacking syscalls Libor Vanek
2004-01-02 13:08 ` Matti Aarnio
2004-01-02 13:26 ` Libor Vanek
2004-01-02 13:57 ` Ragnar Kjørstad
2004-01-02 15:39 ` Libor Vanek
2004-01-02 16:42 ` Jörn Engel
2004-01-02 15:12 ` Muli Ben-Yehuda
2004-01-02 15:38 ` Libor Vanek
2004-01-02 16:00 ` Christoph Hellwig
2004-01-02 16:35 ` Jörn Engel
2004-01-02 16:59 ` Libor Vanek [this message]
2004-01-02 18:04 ` Jörn Engel
2004-01-02 18:58 ` Libor Vanek
2004-01-02 19:15 ` Arjan van de Ven
2004-01-02 19:23 ` Libor Vanek
2004-01-02 19:18 ` Jörn Engel
2004-01-02 19:37 ` Libor Vanek
2004-01-02 19:56 ` Jörn Engel
2004-01-07 9:28 ` stefan.eletzhofer
2004-01-02 23:35 ` Anton Blanchard
2004-01-02 23:46 ` Libor Vanek
2004-01-03 15:41 ` Helge Hafting
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=3FF5A36A.5070501@conet.cz \
--to=libor@conet.cz \
--cc=hch@infradead.org \
--cc=joern@wohnheim.fh-wedel.de \
--cc=linux-kernel@vger.kernel.org \
--cc=mulix@mulix.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox