2004-07-06 Miklos Szeredi * Minor fix in read: print debug info even if read size is zero 2004-07-04 Miklos Szeredi * Fix race between truncate and writepage (fsx-linux now runs without error) 2004-07-02 Miklos Szeredi * 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 * 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 * 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 * Fix file offset wrap around at 4G when doing large reads 2004-06-24 Miklos Szeredi * Fix memory leak in open (Valient Gough) 2004-06-24 Miklos Szeredi * 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 * 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 * No request allocation needed on inode and file release 2004-06-21 Miklos Szeredi * Fix possible inode leak in userspace in case of unfinished lookup/mknod/mkdir/symlink/link operation. 2004-06-20 Miklos Szeredi * Fix some races and cleanups in fuse_read_super() 2004-06-19 Miklos Szeredi * Requests are allocated at open time 2004-06-03 Miklos Szeredi * 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 * Added flush() call 2004-05-04 Miklos Szeredi * Extended attributes support for 2.4 (patch by Cody Pisto) 2004-04-20 Miklos Szeredi * Fixed parser with modversions (Mattias Wadman) 2004-04-19 Miklos Szeredi * Added mount option parser to 2.4 build 2004-04-13 Miklos Szeredi * 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 * Check some limits so userspace won't get too big requests 2004-04-05 Miklos Szeredi * Kill compile warning * Upgraded user-mount patch for 2.6.5 2004-04-02 Miklos Szeredi * Add detection of user-mode-linux to configure 2004-03-31 Miklos Szeredi * fixed zero size case for getxattr and listxattr 2004-03-30 Miklos Szeredi * new fusermount flag '-z': lazy unmount, default is not lazy * Extended attributes operations added (getxattr, setxattr, listxattr, removexattr) 2004-03-25 Miklos Szeredi * If filesystem doesn't define a statfs operation, then an all-zero default statfs is returned instead of ENOSYS 2004-03-24 Miklos Szeredi * Add FS_BINARY_MOUNTDATA filesystem flag for kernels > 2.6.4 2004-03-09 Miklos Szeredi * Fix for uClinux (Christian Magnusson) 2004-03-02 Miklos Szeredi * 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 * 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 * 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 * 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 * user-mount upgraded for 2.6.3 kernel 2004-02-17 Miklos Szeredi * 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 * Remove MS_PERMISSION mount flag (that means something else now) 2004-02-10 Miklos Szeredi * Added check for i_size_read/write functions to configure.in (patch by Valient Gough) 2004-02-06 Miklos Szeredi * 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 * Released 1.1 2004-01-29 Miklos Szeredi * Properly check if the inode exists in fuse_invalidate 2004-01-27 Miklos Szeredi * 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 * Released 1.1-pre2 2004-01-26 Miklos Szeredi * Fix typo (thanks Marcos Dione) * Compile fixes for 2.4 kernels 2004-01-23 Miklos Szeredi * Fix CONFIG_MODVERSIONS compile on 2.6 2004-01-22 Miklos Szeredi * 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 * Support for exporting filesystem over NFS (see README.NFS) 2004-01-14 Miklos Szeredi * 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 * Code cleanups 2004-01-07 Miklos Szeredi * Released 1.1-pre1 2004-01-06 Miklos Szeredi * Integrated 2.6 kernel support patch by Michael Grigoriev * Improvements and cleanups for 2.6 kernels 2004-01-05 Miklos Szeredi * Added -d option to fusermount 2003-12-15 Miklos Szeredi * Added major+minor version to library API, and minor version to kernel API 2003-12-13 David McNab * Implemented fsync support in examples/example.py * Implemented 'fsync' and 'statfs' methods in python interface 2003-12-12 Miklos Szeredi * Make it compile on 2.4.19. * Add fsync operation (write file failed on xemacs & vi) 2003-12-12 David McNab * Added distutils support to the python module, as per standard python development practice 2003-12-11 Miklos Szeredi * Add file locking for mount/unmount (based on patch by Valient Gough) 2003-12-11 David McNab * 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 * Fix kernel version detection (again). Bugreport by Peter Levart 2003-11-03 Miklos Szeredi * Applied read combining patch by Michael Grigoriev (tested by Valient Gough and Vincent Wagelaar) 2003-10-22 Miklos Szeredi * Mtab handling fix in fusermount by "Valient Gough" (SF patch #766443) 2003-10-13 Miklos Szeredi * Error code fixes in kernel module 2003-10-04 Miklos Szeredi * kernel version detection fix * fusermount now uses "lazy" umount option * fusermount can use modprobe with module-init-tools 2003-09-08 Miklos Szeredi * 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 * And another spec-file fix by Achim Settelmeier 2003-05-26 Miklos Szeredi * Spec-file fix by Achim Settelmeier 2003-03-10 Miklos Szeredi * Fix umount oops (found by Samuli Kärkkäinen) 2003-03-05 Miklos Szeredi * Merge of fuse_redhat.spec and fuse.spec by Achim Settelmeier 2003-03-04 Miklos Szeredi * Updated fuse.spec file (Achim Settelmeier) 2003-02-19 Miklos Szeredi * Version 1.0 released 2003-02-12 Miklos Szeredi * SuSE compilation fix by Juan-Mariano de Goyeneche 2002-12-10 Miklos Szeredi * The release() VFS call is now exported to the FUSE interface 2002-12-05 Miklos Szeredi * 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 * Added _FILE_OFFSET_BITS=64 define to fuse.h. Note, that this is an incompatible interface change. 2002-10-28 Miklos Szeredi * Portablility fix (bug reported by C. Chris Erway) 2002-10-25 Miklos Szeredi * Use Mark Glines' fd passing method for default operation instead of old reexec 2002-10-22 Miklos Szeredi * fix "Stale NFS file handle" bug caused by changes in 2.4.19 2002-10-22 Miklos Szeredi * fix incompatiblity with Red Hat kernels, with help from Nathan Thompson-Amato. 2002-04-18 Mark Glines * 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 * use struct fuse_statfs everywhere possible to avoid problems with the headerfiles changing struct statfs member sizes 2002-03-01 Miklos Szeredi * Another RPM spec file for RedHat >= 7 by Ian Pilcher 2002-01-14 Miklos Szeredi * RPM support by Achim Settelmeier 2002-01-09 Miklos Szeredi * Version 0.95 released 2002-01-09 Miklos Szeredi * 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 * Update and fix python interface 2002-01-07 Mark Glines * Added statfs() support to kernel, lib, examples, and perl! 2001-12-26 Miklos Szeredi * Better cross compilation support * Ported to Compaq IPAQ 2001-12-20 Miklos Szeredi * 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 * Applied header protection + extern "C" patch by Roland Bauerschmidt 2001-12-02 Miklos Szeredi * Added perl bindings by Mark Glines 2001-11-21 Miklos Szeredi * Cleaned up way of mounting simple filesystems. * fuse_main() helper function added 2001-11-18 Miklos Szeredi * Optimized read/write operations, so that minimal copying of data is done 2001-11-14 Miklos Szeredi * Python bindings by Jeff Epler added 2001-11-13 Miklos Szeredi * 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 * Started ChangeLog