📄 changelog
字号:
2003-02-09 Charles P. Wright <cwright@fsl.cs.sunysb.edu> * mmap.c, super.c, subr.c: testing for kmalloc return values. * main.c (wrapfs_read_super): Return value of kmalloc was not checked.2003-01-20 Erez Zadok <ezk@cs.sunysb.edu> * super.c (wrapfs_read_inode): comment out the FS_REQUIRES_DEV dev code because it could cause an oops. Add a new comment that explains how to export a nodev file system: use nfs-utils 1.0 or later, and 2.4.20 or newer with the "fsid=" export parameter. * file.c (wrapfs_write): check if ->write() op exists, not if ->read() exists. Bug report from Jerome de Vivie <jerome.devivie@free.fr>.2002-12-27 Erez Zadok <ezk@cs.sunysb.edu> * super.c (wrapfs_read_inode): To export a file system via NFS, it has to have the FS_REQUIRES_DEV flag, so turn it on. But should we inherit the flag from the lower file system, or can we allow our file system to be exported even if the lower one cannot be natively exported.2002-11-02 Charles P. Wright <cwright@ic.sunysb.edu> * wrapfs.h,file.c: Added per file private data structure (can be accessed through ftopd(file)) and modified appropriate macros.2002-10-07 Charles P. Wright <cwright@ic.sunysb.edu> * super.c (wrapfs_umount_begin): Do not pass umount_begin down to lower file-system when using attach mode.2002-09-21 Charles P. Wright <cwright@ic.sunysb.edu> * main.c (wrapfs_interpose): Run init_special_inode with modes from lower inode rather than uninitialized upper inode.2002-04-07 Kiran-Kumar Muniswamy-Reddy <kiran@a-rh72.fsl.cs.sunysb.edu> * mmap.c (wrapfs_commit_write): SCA code - fixed mtime and ctime of lower layer not being updated2002-04-03 Erez Zadok <ezk@agora.fsl.cs.sunysb.edu> * main.c (wrapfs_interpose): bug fix. Run create_special_inode() on our inode only if the hidden_inode is special.2002-04-02 Kiran-Kumar Muniswamy-Reddy <kiran@t2.fsl.cs.sunysb.edu> * file.c (wrapfs_read): fix for atime not being updated for reads of size zero (wrapfs_write): fix for ctime and mtime of upper layer not being updated2002-04-01 Kiran-Kumar Muniswamy-Reddy <kiran@t2.fsl.cs.sunysb.edu> * mmap.c (wrapfs_commit_write): fix for lower layer's mtime and ctime not being synced with upper layer's mtime and ctime (wrapfs_writepage): fix for lower layer's mtime and ctime not being synced with upper layer's mtime and ctime * file.c (wrapfs_read_update_atime): added function for updating atime of lower level filesystem2002-03-30 Erez Zadok <ezk@cricket.fsl.cs.sunysb.edu> * file.c (wrapfs_llseek): fix fist_print_* call prototypes in SCA code. * main.c (wrapfs_parse_options): advance options pointer to the next comma-delimited option.2002-03-29 Erez Zadok <ezk@agora.fsl.cs.sunysb.edu> * main.c (wrapfs_interpose): for fist-lite, fix our inode's a_ops to that of the hidden inode. Another hack. * super.c (wrapfs_read_inode): for fist-lite, intialize inode's a_ops to wrapfs_empty_aops (essentially all NULL ops). * file.c (wrapfs_main_fops): for fist-lite, define our own read, write, and mmap methods. (wrapfs_read): method for fist-lite. (wrapfs_write): method for fist-lite. (wrapfs_read): method for fist-lite. (wrapfs_mmap): method for fist-lite. A hack to circumvent VFS deficiencies. Force vma's vm_file to be hidden_file, then fix refcounts on file and hidden-file. * main.c (wrapfs_interpose): initialize special inodes (devices, fifos, sockets) properly. Patch from David Chow <davidchow@shaolinmicro.com>.2002-03-29 Charles P. Wright <cwright@ic.sunysb.edu> * attach.c: count number of attachments in vfsmount structure, add return type to delete_entry, permissions checking on detach, detach will d_drop and dput the from point.2002-03-25 Erez Zadok <ezk@agora.fsl.cs.sunysb.edu> * main.c (wrapfs_iunique): include this code only if FIST_DYNAMIC_INODE_NUMBERS is on. Minor code re-indenting to match style. * wrapfs.h: use extern on wrapfs_iunique() and make sure it's defined only if FIST_DYNAMIC_INODE_NUMBERS is on.2002-03-25 Charles P. Wright <cwright@ic.sunysb.edu> * wrapfs.h: changed attached_ent structure to have dentry instead of name and length, changed to use <linux/list.h> list rather than own singly linked implementation. * wrapfs.h: Added fields to private data structure for attach list and lock. It may be appropriate to change this to a special structure just for the root of an attach mode fs. * attach.c: use new attached_ent structure, in readdir will use dynamic inodes instead of numbers 17 and onwards. Fixed oops having to do with putnami'ng invalid name, on error in fist_attach_ioctl. Added minimal detach support. * super.c: will not mntput (stopd(sb)->hidden_mnt) on unmount of MNTSTYLE_ATTACH filesystem (hidden_mnt) does not exist for these mounts) * main.c: wrapper function to iunique that complains if the numbers begin to wrap around on us.2002-03-24 Kiran-Kumar Muniswamy-Reddy <kiran@t3.fsl.cs.sunysb.edu> * mmap.c (wrapfs_fill_zeros): function for handling sparse files. (wrapfs_commit_write): This function was already handling sparse files, but was not zeroing out appropriate regions of new allocated disk blocks. Added code that zeroes out the appropriate portions of new allocated disk blocks. The code for this was enclosed in a #ifndef FIST_ENCODING_TYPE_NONE, removed the #ifndef since the code will be needed for all filesystems. (wrapfs_get1page): was enclosed in #ifndef FIST_ENCODING_NONE, removed the #ifndef since it is called from wrapfs_truncate, which is invoked for truncates that extend the file for non-SCA filesystems * inode.c (wrapfs_truncate): function to handle truncations that extend the size of the file -- for non-SCA filesystems (wrapfs_setattr): added a call to wrapfs_truncate for truncate on non-SCA filesystems. * wrapfs.h: added the declaration for wrapfs_fill_zeros, required by wrapfs_truncate.2002-03-24 Erez Zadok <ezk@cricket.fsl.cs.sunysb.edu> * wrapfs.h: change {en,de}code_block extern to include pagenum. * subr.c (wrapfs_{de,en}code_block): ditto * mmap.c (wrapfs_do_readpage, wrapfs_commit_write, wrapfs_writepage): pass page number to encode/decode_block. * main.c (wrapfs_interpose): call iunique() if dynamic_inode_numbers is on. (wrapfs_read_super): avoid __FUNCTION__ in calls to fist_print_*.2002-03-23 Charles P Wright <cwright@ic.sunysb.edu> * attach.c: do_attach will not Oops if the attach point does not exist. do_attach checks if object to be attached is a directory with read and execute permissions. do_attach checks mount permissions.2002-03-19 Ion Badulescu <ionut@moisil.badula.org> * main.c (wrapfs_parse_options): use simple_strtoul() instead of simple_strtol()2002-03-18 Ion Badulescu <ionut@moisil.badula.org> * print.c (fist_set_debug_value): print the new debug level when changing it; move fist_debug_var outside of FIST_DEBUG * main.c: moved MODULE_PARM(fist_debug_var) from print.c * ALL: use __FUNCTION__ as if it were a function, not a string macro, to appease gcc3.2002-03-16 Charles P Wright <cwright@ic.sunysb.edu> * Move all initialization of declared automatic variables in all functions to after the call to print_entry_location(). This helps debug bugs and problems that result in NULL/bad pointer dereferencing.2002-03-09 Erez Zadok <ezk@agora.fsl.cs.sunysb.edu> * wrapfs.h: add a new field to the wrapfs superblock private information. This is a pointer to the head of the list of attached nodes. Define externs for attach-related functions. * wrapfs.h: define attached_entry data structure, used for a linked list of nodes attached to the mount point. * print.c (fist_print_dentry): print d_op address, to see if we have dentry ops at all. * main.c (wrapfs_interpose): attach code should not check hidden super_block. on the top-level attach node because it doesn't have a hidden super_block. (__wrapfs_hidden_dentry): check for attach's allowed dops and iops * fist_ioctl.c: support calls to new attach ioctls. Some restructuring of the code. * fist.h (FIST_IOCTL_[AD]ETACH): define two new ioctls. One to attach and one to detach. * README.attach: text file explaining motivation and use of attach mode. * attach.c: new file includes the vast majority of attach-mode code. * Beginning of attach-mode code. Just barely working.2002-02-21 Erez Zadok <ezk@agora.fsl.cs.sunysb.edu> * super.c (wrapfs_statfs): don't compile this ->statfs() function when attach mode is used. We have a different version in attach.c. * main.c (wrapfs_interpose): comments how we might handle dynamic inode number generation in wrapfs(). (__wrapfs_hidden_dentry): use ASSERT2(). (wrapfs_parse_options): document parse_options function. (wrapfs_read_super): this version of ->read_super() is not used when attach-mode is on. * wrapfs.h (fist_copy_attr_all): copy i_blkbits as well. * fist.h (ASSERT2): version of ASSERT that prints the info about the caller of the function which triggered the assertion. Useful to track which function caused wrapfs_hidden_*() to fail.2002-02-17 Erez Zadok <ezk@whitestar.dyn.optonline.net> * wrapfs.h (WRAPFS_SUPER_MAGIC): define superblock magic for fist file systems. * print.c (fist_print_inode): print i_mode as well.2002-02-03 Ion Badulescu <ionut@moisil.badula.org> * main.c (wrapfs_parse_options): added mount option "debug=%d" for setting the debug level at mount time added MODULE_DESCRIPTION() * print.c: changed default debug level to 0; added MODULE_PARM(fist_debug_var) * file.c (wrapfs_poll): return DEFAULT_POLLMASK if the underlying fs doesn't have a poll() method [patch from Marc Boucher * fist.h: define DEFAULT_POLLMASK if not already defined2002-02-02 Erez Zadok <ezk@agora.fsl.cs.sunysb.edu> * file.c (wrapfs_ioctl): don't fail ioctls by default, unless we know for sure that they are unknown. Otherwise, cryptfs code returns a failure even after setting the cipher key correctly. Plus, the default behavior for wrapfs_ioctl() for all other OSs (freebsd and solaris) is to succeed by default unless the ioctl is unknown.2001-12-26 Ion Badulescu <ion@guppy.limebrokerage.com> * mmap.c (wrapfs_writepage): disable writepage() for SCA, because It Can Not Possibly Work(TM).2001-12-04 Ion Badulescu <ion@guppy.limebrokerage.com> * fist.h: defined SEEK_{SET,CUR,END} if not defined, this is needed for David's code below to even compile (which makes me wonder if he's ever tested it)2001-11-05 David Chow <davidchow@rcn.com.hk> * file.c (wrapfs_llseek): Added boundary checks for SCA. Fix position problem for SCA llseek. Since SCA doesn't not align with the hidden file. Only equate the hidden fpos to virtual fpos for non-SCA fs. Also fix. This patch was applied by Erez, but untested.2001-10-26 Ion Badulescu <ion@guppy.limebrokerage.com> * main.c: include <linux/module.h> last * fist.h: include <linux/init.h> here * main.c, fist.h: moved the MODULE_LICENSE definition to main.c
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -