blob: 085a01fe22170439a85e1c3324ae1009fe8d09ea [file] [log] [blame]
2004-07-29 Miklos Szeredi <miklos@szeredi.hu>
* Add fuse_invalidate() to library API
2004-07-26 Miklos Szeredi <miklos@szeredi.hu>
* Check permissions in setattr if 'default_permissions' flag is
set. Bug spotted by Damjan Lango
2004-07-24 Miklos Szeredi <miklos@szeredi.hu>
* 'large_read' mount option removed for 2.6 kernels, since the
default (dynamic read size) is better
* Extend kernel API with file handles. A file handle is returned
by open, and passed to read, write, flush, fsync and release.
This is currently only used for debug output in the library.
* Security changes:
* Change the current directory to the mountpoint before checking
the permissions and mount filesystem on "."
* By default don't modprobe the fuse module for non-root. The old
behavior can be restored with the '--enable-auto-modprobe' flag of
./configure
* By default don't allow shared writable mappings for non-root.
The old behavior can be restored with the 'user_mmap=1' module
parameter
2004-07-23 Miklos Szeredi <miklos@szeredi.hu>
* Clean up mount option passing to fusermount and to fuse_new()
BEWARE: this changes the userspace API slightly, and the command
line usage of programs using fuse_main()
2004-07-20 Miklos Szeredi <miklos@szeredi.hu>
* Optimize reading under 2.6 kernels by issuing multiple page
asynchronous read requests
2004-07-18 Miklos Szeredi <miklos@szeredi.hu>
* Only use redirty_page_for_writepage() for kernels >= 2.6.6
2004-07-16 Miklos Szeredi <miklos@szeredi.hu>
* Separate directory entry and inode attribute validity timer
* New write semaphore to stop page writeback during truncate
* Fsync now waits for all writes to complete before sending the
request
* Optimization: if a page is completely written by
fuse_commit_write(), clear the dirty flag and set the uptodate
flag for that page
* Some memory cleanup at exit
2004-07-13 Miklos Szeredi <miklos@szeredi.hu>
* Add FUSE_HARD_REMOVE flag, and '-i' option to fuse main, which
disable the "hide if open" behavior of unlink/rename.
* If temporary buffer allocation fails in raw read, fall back to a
smaller buffer
2004-07-12 Miklos Szeredi <miklos@szeredi.hu>
* Fix bug in do_open() in libfuse: open count was incremented
after the reply is sent so it could race with unlink/forget and
cause an abort.
2004-07-08 Miklos Szeredi <miklos@szeredi.hu>
* When performing create or remove operation, refresh the parent's
attributes on next revalidate, as i_nlink (and maybe size/time)
could be inacurate.
* Use redirty_page_for_writepage() in fuse_writepage() for skipped
pages (2.6 only)
* Set set_page_dirty address space operation (2.6 only)
2004-07-06 Miklos Szeredi <miklos@szeredi.hu>
* Minor fix in read: print debug info even if read size is zero
2004-07-04 Miklos Szeredi <miklos@szeredi.hu>
* Fix race between truncate and writepage (fsx-linux now runs
without error)
2004-07-02 Miklos Szeredi <miklos@szeredi.hu>
* Fix kernel hang on mkfifo under 2.4 kernels (spotted and patch
by Mattias Wadman)
* Added option for direct read/write (-r)
* Fix revalidate time setting for newly created inodes
* Remove uid==0 check for '-x' option in fusermount (kernel checks
this)
* fuse_main() only installs handlers for signals (out of INT, HUP,
TERM, PIPE), for which no handler has yet been installed
* Add module option 'user_allow_other' which if set to non-zero
will allow non root user to specify the 'allow_other' mount option
('-x' option of fusermount)
* Fix deadlock between page writeback completion and truncate
(bug found by Valient Gough with the fsx-linux utility)
2004-07-01 Miklos Szeredi <miklos@szeredi.hu>
* Change passing fuse include dir to 2.6 kernel make system more
robust (fixes compile problems seen on SuSE 9.1 with updated 2.6
kernel)
2004-06-30 Miklos Szeredi <miklos@szeredi.hu>
* Acquire inode->i_sem before open and release methods to prevent
concurrent rename or unlink operations.
* Make __fuse_read_cmd() read only one command. This allows
multiplexing the fuse file descriptor with other event sources
using select() or poll() (patch by Jeff Harris)
* Export 'exited' flag with __fuse_exited() (patch by Jeff Harris)
2004-06-27 Miklos Szeredi <miklos@szeredi.hu>
* Fix file offset wrap around at 4G when doing large reads
2004-06-24 Miklos Szeredi <miklos@szeredi.hu>
* Fix memory leak in open (Valient Gough)
2004-06-24 Miklos Szeredi <miklos@szeredi.hu>
* Add "close after delete" support to libfuse (patch by Valient
Gough)
* Cancel all worker threads before exit in multithreaded mode
2004-06-23 Miklos Szeredi <miklos@szeredi.hu>
* Fix locking bugs
* Don't send reply to RELEASE
* Work with newer libtool (1.5a)
* Check for st_atim member of struct stat
2004-06-22 Miklos Szeredi <miklos@szeredi.hu>
* No request allocation needed on inode and file release
2004-06-21 Miklos Szeredi <miklos@szeredi.hu>
* Fix possible inode leak in userspace in case of unfinished
lookup/mknod/mkdir/symlink/link operation.
2004-06-20 Miklos Szeredi <miklos@szeredi.hu>
* Fix some races and cleanups in fuse_read_super()
2004-06-19 Miklos Szeredi <miklos@szeredi.hu>
* Requests are allocated at open time
2004-06-03 Miklos Szeredi <miklos@szeredi.hu>
* Build shared library as well as static (using libtool)
* Change FUSE_MINOR_VERSION from 1 to 0. I know it's illegal but
there has not been a release with the previous minor number, and I
hope nobody is using it for anything.
* Change fuse_main(), so that default behavior is to go into
background if mount is successful. '-f' and '-d' options disable
backgrounding. This fixes the "Why does my FUSE daemon hang?"
newbie complaint.
* Cache ENOSYS (function not implemented) errors on *xattr, flush
and fsync
* Don't call getdir method from open() only from first readdir().
Open is sometimes just used to store the current directory
(e.g. find)
2004-05-18 Miklos Szeredi <miklos@szeredi.hu>
* Added flush() call
2004-05-04 Miklos Szeredi <miklos@szeredi.hu>
* Extended attributes support for 2.4 (patch by Cody Pisto)
2004-04-20 Miklos Szeredi <miklos@szeredi.hu>
* Fixed parser with modversions (Mattias Wadman)
2004-04-19 Miklos Szeredi <miklos@szeredi.hu>
* Added mount option parser to 2.4 build
2004-04-13 Miklos Szeredi <miklos@szeredi.hu>
* Replaced binary mount data with text options
* Show FUSE specific mount options in /proc/mounts
* Check in fuse.h whether _FILE_OFFSET_BITS is set to 64
2004-04-09 Miklos Szeredi <miklos@szeredi.hu>
* Check some limits so userspace won't get too big requests
2004-04-05 Miklos Szeredi <miklos@szeredi.hu>
* Kill compile warning
* Upgraded user-mount patch for 2.6.5
2004-04-02 Miklos Szeredi <miklos@szeredi.hu>
* Add detection of user-mode-linux to configure
2004-03-31 Miklos Szeredi <miklos@szeredi.hu>
* fixed zero size case for getxattr and listxattr
2004-03-30 Miklos Szeredi <miklos@szeredi.hu>
* new fusermount flag '-z': lazy unmount, default is not lazy
* Extended attributes operations added (getxattr, setxattr,
listxattr, removexattr)
2004-03-25 Miklos Szeredi <miklos@szeredi.hu>
* If filesystem doesn't define a statfs operation, then an
all-zero default statfs is returned instead of ENOSYS
2004-03-24 Miklos Szeredi <miklos@szeredi.hu>
* Add FS_BINARY_MOUNTDATA filesystem flag for kernels > 2.6.4
2004-03-09 Miklos Szeredi <miklos@szeredi.hu>
* Fix for uClinux (Christian Magnusson)
2004-03-02 Miklos Szeredi <miklos@szeredi.hu>
* fuse_main() adds "-n progname" to the fusermount command line
* More kernel interface changes:
* Lookup/getattr return cache timeout values
2004-02-25 Miklos Szeredi <miklos@szeredi.hu>
* Clean up option parsing in fuse_main()
* Added fuse_get() function which returns the fuse object created
by fuse_main()
2004-02-20 Miklos Szeredi <miklos@szeredi.hu>
* removed old way of mounting (fusermount mountpoint program)
* more kernel interface changes:
* added nanosecond precision to file times
* removed interface version from mount data
* added /proc/fs/fuse/version which contains MAJOR.MINOR
2004-02-19 Miklos Szeredi <miklos@szeredi.hu>
* statfs library API changed to match other methods. Since this
is not backward compatible FUSE_MAJOR_VERSION is changed to 2
* kernel interface changes follow:
* statfs changed to 64 bits, added 'bavail' field
* add generation number to lookup result
* optimized mknod/mkdir/symlink/link (no separate lookup is
needed)
* rdev size increased to 32 bits for mknod
* kernel interface version changed to 3.1
2004-02-18 Miklos Szeredi <miklos@szeredi.hu>
* user-mount upgraded for 2.6.3 kernel
2004-02-17 Miklos Szeredi <miklos@szeredi.hu>
* Added user-mount.2.6.2-rc3.patch
* Add FS_SAFE flag to fuse filesystem
* fusermount should allow (un)mounting for non-root even if not
suid-root
2004-02-12 Miklos Szeredi <miklos@szeredi.hu>
* Remove MS_PERMISSION mount flag (that means something else now)
2004-02-10 Miklos Szeredi <miklos@szeredi.hu>
* Added check for i_size_read/write functions to configure.in
(patch by Valient Gough)
2004-02-06 Miklos Szeredi <miklos@szeredi.hu>
* Fixed writing >= 2G files
* Check file size on open (with generic_file_open())
* Readpage calls flush_dcache_page() after storing data
* Use i_size_read/write for accessing inode->i_size
* Make loopback mount of a fuse file work
2004-02-04 Miklos Szeredi <miklos@szeredi.hu>
* Released 1.1
2004-01-29 Miklos Szeredi <miklos@szeredi.hu>
* Properly check if the inode exists in fuse_invalidate
2004-01-27 Miklos Szeredi <miklos@szeredi.hu>
* Added -q option for fusermount
* fuse_unmount() now uses -q option of fusermount, so no error is
printed if the cause of the program exit is that the filesystem
has already been unmounted
* Fix i_nlink correctness after rmdir/unlink
2004-01-26 Miklos Szeredi <miklos@szeredi.hu>
* Released 1.1-pre2
2004-01-26 Miklos Szeredi <miklos@szeredi.hu>
* Fix typo (thanks Marcos Dione)
* Compile fixes for 2.4 kernels
2004-01-23 Miklos Szeredi <miklos@szeredi.hu>
* Fix CONFIG_MODVERSIONS compile on 2.6
2004-01-22 Miklos Szeredi <miklos@szeredi.hu>
* Write all pending data before a RELEASE operation
* Suppress 'Bad file descriptor' warning on exit
* Replaced fusermount option '-d xxx' with '-n xxx' so it doesn't
get confused with '-d' of fuse_main() (sorry about this change)
* New fusermount option '-l' which enables big reads. Big reads
are now disabled by default.
* fuse_main() can accept fusermount arguments after a '--'
2004-01-19 Miklos Szeredi <miklos@szeredi.hu>
* Support for exporting filesystem over NFS (see README.NFS)
2004-01-14 Miklos Szeredi <miklos@szeredi.hu>
* Support non-blocking writepage on 2.6. This makes FUSE behave
much more nicely in low-memory situations
* Fix 32-bit dev handling in getattr and mknod for 2.6 kernels.
(Note: the mknod method does not yet use 32bit device number)
2004-01-13 Miklos Szeredi <miklos@szeredi.hu>
* Code cleanups
2004-01-07 Miklos Szeredi <miklos@szeredi.hu>
* Released 1.1-pre1
2004-01-06 Miklos Szeredi <miklos@szeredi.hu>
* Integrated 2.6 kernel support patch by Michael Grigoriev
* Improvements and cleanups for 2.6 kernels
2004-01-05 Miklos Szeredi <miklos@szeredi.hu>
* Added -d option to fusermount
2003-12-15 Miklos Szeredi <miklos@szeredi.hu>
* Added major+minor version to library API, and minor version to
kernel API
2003-12-13 David McNab <david@rebirthing.co.nz>
* Implemented fsync support in examples/example.py
* Implemented 'fsync' and 'statfs' methods in python
interface
2003-12-12 Miklos Szeredi <miklos@szeredi.hu>
* Make it compile on 2.4.19.
* Add fsync operation (write file failed on xemacs & vi)
2003-12-12 David McNab <david@rebirthing.co.nz>
* Added distutils support to the python module, as per standard
python development practice
2003-12-11 Miklos Szeredi <miklos@szeredi.hu>
* Add file locking for mount/unmount (based on patch by Valient
Gough)
2003-12-11 David McNab <david@rebirthing.co.nz>
* Python filesystem - was broken with python2.3, now fixed:
- changed PyTuple_* calls to PySequence_*, because os.lstat
is no longer returning a pure tuple
- changed PyInt_Check() calls to also call PyLong_Check,
to cover for cases (eg os.lstat) where longs are returned
- Added support for file 'release' handling, which IMO is
essential since this signals to a FS that writes to a file
are complete (and therefore the file can now be disposed of
meaningfully at the python filesystem's discretion)
- Added '__init__' handler to base Fuse class, which allows
your Python class to know the mountpoint and mount args,
as attributes myfs.mountpoint, myfs.optlist, myfs.optdict
* General:
- added 'mount.fuse' script (in util/ dir), which is meant to be
symlinked from /sbin, and which allows FUSE filesystems to
be mounted with the 'mount' command, and listed in fstab;
also, mount arguments get passed to your filesystem
2003-11-04 Miklos Szeredi <miklos@szeredi.hu>
* Fix kernel version detection (again). Bugreport by Peter Levart
2003-11-03 Miklos Szeredi <miklos@szeredi.hu>
* Applied read combining patch by Michael Grigoriev (tested by
Valient Gough and Vincent Wagelaar)
2003-10-22 Miklos Szeredi <miklos@szeredi.hu>
* Mtab handling fix in fusermount by "Valient Gough" (SF patch
#766443)
2003-10-13 Miklos Szeredi <miklos@szeredi.hu>
* Error code fixes in kernel module
2003-10-04 Miklos Szeredi <miklos@szeredi.hu>
* kernel version detection fix
* fusermount now uses "lazy" umount option
* fusermount can use modprobe with module-init-tools
2003-09-08 Miklos Szeredi <miklos@szeredi.hu>
* Integrated caching patch by Michael Grigoriev
* Added "Filesystems" file with descriptions of projects using
FUSE
* Added patch by Michael Grigoriev to allow compliation of FUSE
kernel module for 2.6 kernels
2003-06-02 Miklos Szeredi <miklos@szeredi.hu>
* And another spec-file fix by Achim Settelmeier
2003-05-26 Miklos Szeredi <miklos@szeredi.hu>
* Spec-file fix by Achim Settelmeier
2003-03-10 Miklos Szeredi <miklos@szeredi.hu>
* Fix umount oops (found by Samuli Kärkkäinen)
2003-03-05 Miklos Szeredi <miklos@szeredi.hu>
* Merge of fuse_redhat.spec and fuse.spec by Achim Settelmeier
2003-03-04 Miklos Szeredi <miklos@szeredi.hu>
* Updated fuse.spec file (Achim Settelmeier)
2003-02-19 Miklos Szeredi <miklos@szeredi.hu>
* Version 1.0 released
2003-02-12 Miklos Szeredi <miklos@szeredi.hu>
* SuSE compilation fix by Juan-Mariano de Goyeneche
2002-12-10 Miklos Szeredi <miklos@szeredi.hu>
* The release() VFS call is now exported to the FUSE interface
2002-12-05 Miklos Szeredi <miklos@szeredi.hu>
* 64 bit file offset fixes in the fuse kernel module
* Added function 'fuse_exit()' which can be used to exit the main
loop
2002-12-03 Miklos Szeredi <miklos@szeredi.hu>
* Added _FILE_OFFSET_BITS=64 define to fuse.h. Note, that this is
an incompatible interface change.
2002-10-28 Miklos Szeredi <miklos@szeredi.hu>
* Portablility fix (bug reported by C. Chris Erway)
2002-10-25 Miklos Szeredi <miklos@szeredi.hu>
* Use Mark Glines' fd passing method for default operation instead
of old reexec
2002-10-22 Miklos Szeredi <miklos@szeredi.hu>
* fix "Stale NFS file handle" bug caused by changes in 2.4.19
2002-10-22 Miklos Szeredi <miklos@szeredi.hu>
* fix incompatiblity with Red Hat kernels, with help from Nathan
Thompson-Amato.
2002-04-18 Mark Glines <mark@glines.org>
* added an alternative to fuse_mount(), called
fuse_mount_ioslave(), which does not need to reexec the
FUSE program.
* added a small helper util needed by fuse_mount_ioslave().
2002-03-16 Mark Glines <mark@glines.org>
* use struct fuse_statfs everywhere possible to avoid problems
with the headerfiles changing struct statfs member sizes
2002-03-01 Miklos Szeredi <miklos@szeredi.hu>
* Another RPM spec file for RedHat >= 7 by Ian Pilcher
2002-01-14 Miklos Szeredi <miklos@szeredi.hu>
* RPM support by Achim Settelmeier
2002-01-09 Miklos Szeredi <miklos@szeredi.hu>
* Version 0.95 released
2002-01-09 Miklos Szeredi <miklos@szeredi.hu>
* Revaidate all path components not just the last, this means a
very small performance penalty for being more up-to-date.
2002-01-08 Miklos Szeredi <miklos@szeredi.hu>
* Update and fix python interface
2002-01-07 Mark Glines <mark@glines.org>
* Added statfs() support to kernel, lib, examples, and perl!
2001-12-26 Miklos Szeredi <miklos@szeredi.hu>
* Better cross compilation support
* Ported to Compaq IPAQ
2001-12-20 Miklos Szeredi <miklos@szeredi.hu>
* Added function fuse_get_context() to library API (inspired by
patch from Matt Ryan)
* Added flags to fusermount and to kernel interface to control
permission checking
* Integrated fuse_set_operations() into fuse_new()
2001-12-08 Miklos Szeredi <miklos@szeredi.hu>
* Applied header protection + extern "C" patch by Roland
Bauerschmidt
2001-12-02 Miklos Szeredi <miklos@szeredi.hu>
* Added perl bindings by Mark Glines
2001-11-21 Miklos Szeredi <miklos@szeredi.hu>
* Cleaned up way of mounting simple filesystems.
* fuse_main() helper function added
2001-11-18 Miklos Szeredi <miklos@szeredi.hu>
* Optimized read/write operations, so that minimal copying of data
is done
2001-11-14 Miklos Szeredi <miklos@szeredi.hu>
* Python bindings by Jeff Epler added
2001-11-13 Miklos Szeredi <miklos@szeredi.hu>
* Fixed vfsmount reference leak in fuse_follow_link
* FS blocksize is set to PAGE_CACHE_SIZE, blksize attribute from
userspace is ignored
2001-11-09 Miklos Szeredi <miklos@szeredi.hu>
* Started ChangeLog