162306a36Sopenharmony_ciVersion 0.92 (2002-03-29) 262306a36Sopenharmony_ci========== 362306a36Sopenharmony_ci* Minor cleanup. Ran Lindent on the sources. 462306a36Sopenharmony_ci 562306a36Sopenharmony_ciVersion 0.92 (2002-03-27) 662306a36Sopenharmony_ci========== 762306a36Sopenharmony_ci* Fixed module makefile problem. It was not compiling all the correct 862306a36Sopenharmony_ci source files! 962306a36Sopenharmony_ci* Removed duplicated function definition 1062306a36Sopenharmony_ci* Fixed potential null pointer dereference when reporting an error 1162306a36Sopenharmony_ci 1262306a36Sopenharmony_ciVersion 0.91 (2002-03-26) 1362306a36Sopenharmony_ci========== 1462306a36Sopenharmony_ci* Oy! Fixed stupid bug that would cause an unresolved symbol error. 1562306a36Sopenharmony_ci Thanks to Laszlo Boszormenyi for pointing this out to me. 1662306a36Sopenharmony_ci 1762306a36Sopenharmony_ciVersion 0.9 (2002-03-14) 1862306a36Sopenharmony_ci========== 1962306a36Sopenharmony_ci* Added Sergey S. Kostyliov's patch to eliminate memcpy() overhead 2062306a36Sopenharmony_ci from b+tree operations. Changes the befs_read_datastream() interface. 2162306a36Sopenharmony_ci 2262306a36Sopenharmony_ci* Segregated the functions that interface directly with the linux vfs 2362306a36Sopenharmony_ci interface into their own file called linuxvfs.c. [WD] 2462306a36Sopenharmony_ci 2562306a36Sopenharmony_ciVersion 0.64 (2002-02-07) 2662306a36Sopenharmony_ci========== 2762306a36Sopenharmony_ci* Did the string comparison really right this time (btree.c) [WD] 2862306a36Sopenharmony_ci 2962306a36Sopenharmony_ci* Fixed up some places where I assumed that a long int could hold 3062306a36Sopenharmony_ci a pointer value. (btree.c) [WD] 3162306a36Sopenharmony_ci 3262306a36Sopenharmony_ci* Andrew Farnham <andrewfarnham@uq.net.au> pointed out that the module 3362306a36Sopenharmony_ci wouldn't work on older (<2.4.10) kernels due to an unresolved symbol. 3462306a36Sopenharmony_ci This is bad, since 2.4.9 is still the current RedHat kernel. I added 3562306a36Sopenharmony_ci a workaround for this problem (compatibility.h) [WD] 3662306a36Sopenharmony_ci 3762306a36Sopenharmony_ci* Sergey S. Kostyliov made befs_find_key() use a binary search to find 3862306a36Sopenharmony_ci keys within btree nodes, rather than the linear search we were using 3962306a36Sopenharmony_ci before. (btree.c) [Sergey S. Kostyliov <rathamahata@php4.ru>] 4062306a36Sopenharmony_ci 4162306a36Sopenharmony_ci* Made a debian package of the source for use with kernel-package. [WD] 4262306a36Sopenharmony_ci 4362306a36Sopenharmony_ci 4462306a36Sopenharmony_ciVersion 0.63 (2002-01-31) 4562306a36Sopenharmony_ci========== 4662306a36Sopenharmony_ci* Fixed bug in befs_find_brun_indirect() that would result in the wrong 4762306a36Sopenharmony_ci block being read. It was introduced when adding byteswapping in 4862306a36Sopenharmony_ci 0.61. (datastream.c) [WD] 4962306a36Sopenharmony_ci 5062306a36Sopenharmony_ci* Fixed a longstanding bug in befs_find_key() that would result in it 5162306a36Sopenharmony_ci finding the first key that is a substring of the string it is searching 5262306a36Sopenharmony_ci for. For example, this would cause files in the same directory with 5362306a36Sopenharmony_ci names like file1 and file2 to mysteriously be duplicates of each other 5462306a36Sopenharmony_ci (because they have the same inode number). Many thanks to Pavel Roskin 5562306a36Sopenharmony_ci for reporting this serious bug!!! 5662306a36Sopenharmony_ci (btree.c) [WD] 5762306a36Sopenharmony_ci 5862306a36Sopenharmony_ci* Added support for long symlinks, after Axel Dorfler explained up how 5962306a36Sopenharmony_ci they work. I had forgotten all about them. (inode.c, symlink.c) [WD] 6062306a36Sopenharmony_ci 6162306a36Sopenharmony_ci* Documentation improvements in source. [WD] 6262306a36Sopenharmony_ci 6362306a36Sopenharmony_ci* Makefile fix for independent module when CONFIG_MODVERSION is set in 6462306a36Sopenharmony_ci kernel config [Pavel Roskin <proski@gnu.org>] 6562306a36Sopenharmony_ci 6662306a36Sopenharmony_ci* Compile warning fix for namei.c. [Sergey S. Kostyliov <rathamahata@php4.ru>] 6762306a36Sopenharmony_ci 6862306a36Sopenharmony_ci 6962306a36Sopenharmony_ciVersion 0.62 7062306a36Sopenharmony_ci========== 7162306a36Sopenharmony_ci* Fixed makefile for module install [WD] 7262306a36Sopenharmony_ci 7362306a36Sopenharmony_ci 7462306a36Sopenharmony_ciVersion 0.61 (2002-01-20) 7562306a36Sopenharmony_ci========== 7662306a36Sopenharmony_ci* Made functions in endian.h to do the correct byteswapping, no matter 7762306a36Sopenharmony_ci the arch. [WD] 7862306a36Sopenharmony_ci 7962306a36Sopenharmony_ci* Abbandoned silly checks for a NULL superblock pointer in debug.c. [WD] 8062306a36Sopenharmony_ci 8162306a36Sopenharmony_ci* Misc code cleanups. Also cleanup of this changelog file. [WD] 8262306a36Sopenharmony_ci 8362306a36Sopenharmony_ci* Added byteswapping to all metadata reads from disk. 8462306a36Sopenharmony_ci Uses the functions from endian.h [WD] 8562306a36Sopenharmony_ci 8662306a36Sopenharmony_ci* Remove the typedef of struct super_block to vfs_sb, as it offended 8762306a36Sopenharmony_ci certain peoples' aesthetic sense. [WD] 8862306a36Sopenharmony_ci 8962306a36Sopenharmony_ci* Ditto with the befs_read_block() interface. [WD] 9062306a36Sopenharmony_ci 9162306a36Sopenharmony_ci 9262306a36Sopenharmony_ciVersion 0.6 (2001-12-15) 9362306a36Sopenharmony_ci========== 9462306a36Sopenharmony_ci* Cleanup of NLS functions (util.c) [WD] 9562306a36Sopenharmony_ci 9662306a36Sopenharmony_ci* Make directory lookup/read use the NLS if an iocharset is provided. [WD] 9762306a36Sopenharmony_ci 9862306a36Sopenharmony_ci* Fixed stupid bug where specifying the uid or gid mount options as '0' 9962306a36Sopenharmony_ci would result in the filesystem using the on-disk uid and gid. [WD] 10062306a36Sopenharmony_ci 10162306a36Sopenharmony_ci* Added mount option to control debug printing. 10262306a36Sopenharmony_ci The option is, simply enough, 'debug'. 10362306a36Sopenharmony_ci (super.c, debug.c) [WD] 10462306a36Sopenharmony_ci 10562306a36Sopenharmony_ci* Removed notion of btree handle from btree.c. It was unnecessary, as the 10662306a36Sopenharmony_ci linux VFS doesn't allow us to keep any state between calls. Updated 10762306a36Sopenharmony_ci dir.c, namei.c befs_fs.h to account for it. [WD] 10862306a36Sopenharmony_ci 10962306a36Sopenharmony_ci* Improved handleing of overflow nodes when listing directories. 11062306a36Sopenharmony_ci Now works for overflow nodes hanging off of nodes other than the root 11162306a36Sopenharmony_ci node. This is the cleaner solution to Brent Miszalaski's problem. [WD] 11262306a36Sopenharmony_ci 11362306a36Sopenharmony_ci* Added new debug/warning/error print functions in debug.c. 11462306a36Sopenharmony_ci More flexible. Will soon be controllable at mount time 11562306a36Sopenharmony_ci (see TODO). [WD] 11662306a36Sopenharmony_ci 11762306a36Sopenharmony_ci* Rewrote datastream position lookups. 11862306a36Sopenharmony_ci (datastream.c) [WD] 11962306a36Sopenharmony_ci 12062306a36Sopenharmony_ci* Moved the TODO list to its own file. 12162306a36Sopenharmony_ci 12262306a36Sopenharmony_ci 12362306a36Sopenharmony_ciVersion 0.50 (2001-11-13) 12462306a36Sopenharmony_ci========== 12562306a36Sopenharmony_ci* Added workaround for mis-understanding of the nature of the b+trees used 12662306a36Sopenharmony_ci in directories. A cleaner solution will come after I've thought about it 12762306a36Sopenharmony_ci for a while. Thanks to Brent Miszalaski for finding and reporting this bug. 12862306a36Sopenharmony_ci (btree.c) [WD] 12962306a36Sopenharmony_ci 13062306a36Sopenharmony_ci* Minor cleanups 13162306a36Sopenharmony_ci 13262306a36Sopenharmony_ci* Added test for "impossible" condition of empty internal nodes in 13362306a36Sopenharmony_ci seekleaf() in btree.c [WD] 13462306a36Sopenharmony_ci 13562306a36Sopenharmony_ci* Implemented the abstracted read_block() in io.c [WD] 13662306a36Sopenharmony_ci 13762306a36Sopenharmony_ci* Cleaned up the inode validation in inode.c [WD] 13862306a36Sopenharmony_ci 13962306a36Sopenharmony_ci* Anton Altaparmakov figured out (by asking Linus :) ) what was causing the 14062306a36Sopenharmony_ci hanging disk io problem. It turns out you need to have the sync_pages 14162306a36Sopenharmony_ci callback defined in your address_space_ops, even if it just uses the 14262306a36Sopenharmony_ci default linux-supplied implementation. Fixed. Works now. 14362306a36Sopenharmony_ci (file.c) [WD] 14462306a36Sopenharmony_ci 14562306a36Sopenharmony_ci* Anton Altaparmakov and Christoph Hellwig alerted me to the fact that 14662306a36Sopenharmony_ci filesystem code should be using GFP_NOFS instead of GFP_KERNEL as the 14762306a36Sopenharmony_ci priority parameter to kmalloc(). Fixed. 14862306a36Sopenharmony_ci (datastream.c, btree.c super.c inode.c) [WD] 14962306a36Sopenharmony_ci 15062306a36Sopenharmony_ci* Anton also told me that the blocksize is not allowed to be larger than 15162306a36Sopenharmony_ci the page size in linux, which is 4k i386. Oops. Added a test for 15262306a36Sopenharmony_ci (blocksize > PAGE_SIZE), and refuse to mount in that case. What this 15362306a36Sopenharmony_ci practically means is that 8k blocksize volumes won't work without a major 15462306a36Sopenharmony_ci restructuring of the driver (or an alpha or other 64bit hardware). [WD] 15562306a36Sopenharmony_ci 15662306a36Sopenharmony_ci* Cleaned up the befs_count_blocks() function. Much smarter now. 15762306a36Sopenharmony_ci And somewhat smaller too. [WD] 15862306a36Sopenharmony_ci 15962306a36Sopenharmony_ci* Made inode allocations use a slab cache 16062306a36Sopenharmony_ci (super.c inode.c) [WD] 16162306a36Sopenharmony_ci 16262306a36Sopenharmony_ci* Moved the freeing of the private inode section from put_inode() to 16362306a36Sopenharmony_ci clear_inode(). This fixes a potential free twice type bug. Put_inode() 16462306a36Sopenharmony_ci can be called multiple times for each inode struct. [WD] 16562306a36Sopenharmony_ci 16662306a36Sopenharmony_ci* Converted all non vfs-callback functions to use befs_sb_info as the 16762306a36Sopenharmony_ci superblock type, rather than struct super_block. This is for 16862306a36Sopenharmony_ci portablity. [WD] 16962306a36Sopenharmony_ci 17062306a36Sopenharmony_ci* Fixed a couple of compile warnings due to use of malloc.h, when slab.h 17162306a36Sopenharmony_ci is the new way. (inode.c, super.c) [WD] 17262306a36Sopenharmony_ci 17362306a36Sopenharmony_ci* Fixed erronous includes of linux/befs_fs_i.h and linux/befs_fs_sb.h 17462306a36Sopenharmony_ci in inode.c [WD] 17562306a36Sopenharmony_ci 17662306a36Sopenharmony_ciVersion 0.45 (2001-10-29) 17762306a36Sopenharmony_ci========== 17862306a36Sopenharmony_ci* Added functions to get the private superblock and inode structures from 17962306a36Sopenharmony_ci their enclosing public structures. Switched all references to the 18062306a36Sopenharmony_ci private portions to use them. (many files) [WD] 18162306a36Sopenharmony_ci 18262306a36Sopenharmony_ci* Made read_super and read_inode allocate the private portions of those 18362306a36Sopenharmony_ci structures into the generic pointer fields of the public structures 18462306a36Sopenharmony_ci with kmalloc(). put_super and put_inode free them. This allows us not 18562306a36Sopenharmony_ci to have to touch the definitions of the public structures in 18662306a36Sopenharmony_ci include/linux/fs.h. Also, befs_inode_info is huge (because of the 18762306a36Sopenharmony_ci symlink string). (super.c, inode.c, befs_fs.h) [WD] 18862306a36Sopenharmony_ci 18962306a36Sopenharmony_ci* Fixed a thinko that was corrupting file reads after the first block_run 19062306a36Sopenharmony_ci is done being read. (datastream.c) [WD] 19162306a36Sopenharmony_ci 19262306a36Sopenharmony_ci* Removed fsync() hooks, since a read-only filesystem doesn't need them. 19362306a36Sopenharmony_ci [Christoph Hellwig]. 19462306a36Sopenharmony_ci 19562306a36Sopenharmony_ci* Fixed befs_readlink() (symlink.c) [Christoph Hellwig]. 19662306a36Sopenharmony_ci 19762306a36Sopenharmony_ci* Removed all the Read-Write stuff. I'll redo it when it is time to add 19862306a36Sopenharmony_ci write support (various files) [WD]. 19962306a36Sopenharmony_ci 20062306a36Sopenharmony_ci* Removed prototypes for functions who's definitions have been removed 20162306a36Sopenharmony_ci (befs_fs.h) [WD]. 20262306a36Sopenharmony_ci 20362306a36Sopenharmony_ci 20462306a36Sopenharmony_ciVersion 0.4 (2001-10-28) 20562306a36Sopenharmony_ci========== 20662306a36Sopenharmony_ci* Made it an option to use the old non-pagecache befs_file_read() for 20762306a36Sopenharmony_ci testing purposes. (fs/Config.in) 20862306a36Sopenharmony_ci 20962306a36Sopenharmony_ci* Fixed unused variable warnings when compiling without debugging. 21062306a36Sopenharmony_ci 21162306a36Sopenharmony_ci* Fixed a bug where the inode and super_block didn't get their blockbits 21262306a36Sopenharmony_ci fields set (inode.c and super.c). 21362306a36Sopenharmony_ci 21462306a36Sopenharmony_ci* Release patch version 11. AKA befs-driver version 0.4. 21562306a36Sopenharmony_ci 21662306a36Sopenharmony_ci* Thats right. New versioning scheme. 21762306a36Sopenharmony_ci I've done some serious testing on it now (on my box anyhow), and it 21862306a36Sopenharmony_ci seems stable and not outragously slow. Existing features are more-or-less 21962306a36Sopenharmony_ci correct (see TODO list). But it isn't 1.0 yet. I think 0.4 gives me some 22062306a36Sopenharmony_ci headroom before the big 1.0. 22162306a36Sopenharmony_ci 22262306a36Sopenharmony_ci 22362306a36Sopenharmony_ci2001-10-26 22462306a36Sopenharmony_ci========== 22562306a36Sopenharmony_ci* Fixed date format in this file. Was I smoking crack? 22662306a36Sopenharmony_ci 22762306a36Sopenharmony_ci* Removed old datastream code from file.c, since it is nolonger used. 22862306a36Sopenharmony_ci 22962306a36Sopenharmony_ci* Generic_read_file() is now used to read regular file data. 23062306a36Sopenharmony_ci It doesn't chew up the buffer cache (it does page io instead), and seems 23162306a36Sopenharmony_ci to be about as fast (even though it has to look up each file block 23262306a36Sopenharmony_ci indivdualy). And it knows about doing readahead, which is a major plus. 23362306a36Sopenharmony_ci So it does i/o in much larger chunks. It is the correct linux way. It 23462306a36Sopenharmony_ci uses befs_get_block() by way of befs_readpage() to find the disk offsets 23562306a36Sopenharmony_ci of blocks, which in turn calls befs_fpos2brun() in datastream.c to do 23662306a36Sopenharmony_ci the hard work of finding the disk block number. 23762306a36Sopenharmony_ci 23862306a36Sopenharmony_ci* Changed method of checking for a dirty filesystem in befs_read_super 23962306a36Sopenharmony_ci (super.c). Now we check to see if log_start and log_end differ. If so, 24062306a36Sopenharmony_ci the journal needs to be replayed, and the filesystem cannot be mounted. 24162306a36Sopenharmony_ci 24262306a36Sopenharmony_ci* Fixed an extra instance of MOD_DEC_USE_COUNT in super.c 24362306a36Sopenharmony_ci 24462306a36Sopenharmony_ci* Fixed a problem with reading the superblock on devices with large sector 24562306a36Sopenharmony_ci sizes (such as cdroms) on linux 2.4.10 and up. 24662306a36Sopenharmony_ci 24762306a36Sopenharmony_ci2001-10-24 24862306a36Sopenharmony_ci========== 24962306a36Sopenharmony_ci* Fix nasty bug in converting block numbers to struct befs_inode_addr. 25062306a36Sopenharmony_ci Subtle, because the old version was only sometimes wrong. 25162306a36Sopenharmony_ci Probably responsible for lots of problems. (inode.c) 25262306a36Sopenharmony_ci 25362306a36Sopenharmony_ci* Fix bug with reading an empty directory. (btree.c and dir.c) 25462306a36Sopenharmony_ci 25562306a36Sopenharmony_ci* This one looks good. Release patch version 10 25662306a36Sopenharmony_ci 25762306a36Sopenharmony_ci2001-10-23 25862306a36Sopenharmony_ci========== 25962306a36Sopenharmony_ci* Added btree searching function. 26062306a36Sopenharmony_ci 26162306a36Sopenharmony_ci* Use befs_btree_find in befs_lookup (namei.c) 26262306a36Sopenharmony_ci 26362306a36Sopenharmony_ci* Additional comments in btree.c 26462306a36Sopenharmony_ci 26562306a36Sopenharmony_ci2001-10-22 26662306a36Sopenharmony_ci========== 26762306a36Sopenharmony_ci* Added B+tree reading functions (in btree.c). 26862306a36Sopenharmony_ci Made befs_readdir() use them them instead of the cruft in index.c. 26962306a36Sopenharmony_ci 27062306a36Sopenharmony_ci2001-09-11 27162306a36Sopenharmony_ci========== 27262306a36Sopenharmony_ci* Converted befs_read_file() to use the new datastream code. 27362306a36Sopenharmony_ci 27462306a36Sopenharmony_ci* Finally updated the README file. 27562306a36Sopenharmony_ci 27662306a36Sopenharmony_ci* Added many comments. 27762306a36Sopenharmony_ci 27862306a36Sopenharmony_ci* Posted version 6 27962306a36Sopenharmony_ci 28062306a36Sopenharmony_ci* Removed byte-order conversion code. 28162306a36Sopenharmony_ci I have no intention of supporting it, and it was very ugly. 28262306a36Sopenharmony_ci Flow control with #ifdef (ugh). Maybe I'll redo it once 28362306a36Sopenharmony_ci native byteorder works 100%. 28462306a36Sopenharmony_ci 28562306a36Sopenharmony_ci2001-09-10 28662306a36Sopenharmony_ci========== 28762306a36Sopenharmony_ci* Finished implementing read_datastream() 28862306a36Sopenharmony_ci 28962306a36Sopenharmony_ci* made befs_read_brun() more general 29062306a36Sopenharmony_ci Supports an offset to start at and a max bytes to read 29162306a36Sopenharmony_ci Added a wrapper function to give the old call 29262306a36Sopenharmony_ci 29362306a36Sopenharmony_ci2001-09-30 29462306a36Sopenharmony_ci========== 29562306a36Sopenharmony_ci* Discovered that the datastream handleing code in file.c is quite deficient 29662306a36Sopenharmony_ci in several respects. For one thing, it doesn't deal with indirect blocks 29762306a36Sopenharmony_ci 29862306a36Sopenharmony_ci* Rewrote datastream handleing. 29962306a36Sopenharmony_ci 30062306a36Sopenharmony_ci* Created io.c, for io related functions. 30162306a36Sopenharmony_ci Previously, the befs_bread() funtions lived in file.c 30262306a36Sopenharmony_ci Created the befs_read_brun() function. 30362306a36Sopenharmony_ci 30462306a36Sopenharmony_ci 30562306a36Sopenharmony_ci2001-09-07 30662306a36Sopenharmony_ci========== 30762306a36Sopenharmony_ci* Made a function to actually count the number of fs blocks used by a file. 30862306a36Sopenharmony_ci And helper functions. 30962306a36Sopenharmony_ci (fs/befs/inode.c) 31062306a36Sopenharmony_ci 31162306a36Sopenharmony_ci2001-09-05 31262306a36Sopenharmony_ci========== 31362306a36Sopenharmony_ci* Fixed a misunderstanding of the inode fields. 31462306a36Sopenharmony_ci This fixed the problmem with wrong file sizes from du and others. 31562306a36Sopenharmony_ci The i_blocks field of the inode struct is not the number of blocks for the 31662306a36Sopenharmony_ci inode, it is the number of blocks for the file. Also, i_blksize is not 31762306a36Sopenharmony_ci necessarily the size of the inode, although in practice it works out. 31862306a36Sopenharmony_ci Changed to blocksize of filesystem. 31962306a36Sopenharmony_ci (fs/befs/inode.c) 32062306a36Sopenharmony_ci 32162306a36Sopenharmony_ci* Permanently removed code that had been provisionally ifdefed out of befs_fs.h 32262306a36Sopenharmony_ci 32362306a36Sopenharmony_ci* Since we don't support access time, make that field zero, instead of 32462306a36Sopenharmony_ci copying m_time. 32562306a36Sopenharmony_ci (fs/befs/inode.c) 32662306a36Sopenharmony_ci 32762306a36Sopenharmony_ci* Added sanity check for inode reading 32862306a36Sopenharmony_ci Make sure inode we got was the one we asked for. 32962306a36Sopenharmony_ci (fs/befs/inode.c) 33062306a36Sopenharmony_ci 33162306a36Sopenharmony_ci* Code cleanup 33262306a36Sopenharmony_ci Local pointers to commonly used structures in inode.c. 33362306a36Sopenharmony_ci Got rid of abominations befs_iaddr2inode() and befs_inode2ino(). 33462306a36Sopenharmony_ci Replaced with single function iaddr2blockno(). 33562306a36Sopenharmony_ci (fs/befs/super.c) (fs/befs/inode.c) 33662306a36Sopenharmony_ci 33762306a36Sopenharmony_ci2001-09-01 33862306a36Sopenharmony_ci========== 33962306a36Sopenharmony_ci* Fixed the problem with statfs where it would always claim the disk was 34062306a36Sopenharmony_ci half full, due to improper understanding of the statfs fields. 34162306a36Sopenharmony_ci (fs/befs/super.c) 34262306a36Sopenharmony_ci 34362306a36Sopenharmony_ci* Posted verion 4 of the patch 34462306a36Sopenharmony_ci 34562306a36Sopenharmony_ci2001-09-01 34662306a36Sopenharmony_ci========== 34762306a36Sopenharmony_ci* Changed the macros in befs_fs.h to inline functions. 34862306a36Sopenharmony_ci More readable. Typesafe. Better 34962306a36Sopenharmony_ci (include/linux/befs_fs.h) 35062306a36Sopenharmony_ci 35162306a36Sopenharmony_ci* Moved type definitions from befs_fs.h to a new file, befs_fs_types.h 35262306a36Sopenharmony_ci Because befs_fs_i.h and befs_fs_sb.h were including befs_fs.h for the 35362306a36Sopenharmony_ci typedefs, and they are inlcuded in <linux/fs.h>, which has definitions 35462306a36Sopenharmony_ci that I want the inline functions in befs_fs.h to be able to see. Nasty 35562306a36Sopenharmony_ci circularity. 35662306a36Sopenharmony_ci (include/linux/befs_fs.h) 35762306a36Sopenharmony_ci 35862306a36Sopenharmony_ci2001-08-30 35962306a36Sopenharmony_ci========== 36062306a36Sopenharmony_ci* Cleaned up some wording. 36162306a36Sopenharmony_ci 36262306a36Sopenharmony_ci* Added additional consitency checks on mount 36362306a36Sopenharmony_ci Check block_size agrees with block_shift 36462306a36Sopenharmony_ci Check flags == BEFS_CLEAN 36562306a36Sopenharmony_ci (fs/befs/super.c) 36662306a36Sopenharmony_ci 36762306a36Sopenharmony_ci* Tell the kernel to only mount befs read-only. 36862306a36Sopenharmony_ci By setting the SB_RDONLY flag in befs_read_super(). 36962306a36Sopenharmony_ci Not that it was possible to write before. But now the kernel won't even try. 37062306a36Sopenharmony_ci (fs/befs/super.c) 37162306a36Sopenharmony_ci 37262306a36Sopenharmony_ci* Got rid of kernel warning on mount. 37362306a36Sopenharmony_ci The kernel doesn't like it if you call set_blocksize() on a device when 37462306a36Sopenharmony_ci you have some of its blocks open. Moved the second set_blocksize() to the 37562306a36Sopenharmony_ci very end of befs_read_super(), after we are done with the disk superblock. 37662306a36Sopenharmony_ci (fs/befs/super.c) 37762306a36Sopenharmony_ci 37862306a36Sopenharmony_ci* Fixed wrong number of args bug in befs_dump_inode 37962306a36Sopenharmony_ci (fs/befs/debug.c) 38062306a36Sopenharmony_ci 38162306a36Sopenharmony_ci* Solved lots of type mismatches in kprint()s 38262306a36Sopenharmony_ci (everwhere) 38362306a36Sopenharmony_ci 38462306a36Sopenharmony_ci2001-08-27 38562306a36Sopenharmony_ci========== 38662306a36Sopenharmony_ci* Cleaned up the fs/Config.in entries a bit, now slightly more descriptive. 38762306a36Sopenharmony_ci 38862306a36Sopenharmony_ci* BeFS depends on NLS, so I made activating BeFS enable the NLS questions 38962306a36Sopenharmony_ci (fs/nls/Config.in) 39062306a36Sopenharmony_ci 39162306a36Sopenharmony_ci* Added Configure.help entries for CONFIG_BEFS_FS and CONFIG_DEBUG_BEFS 39262306a36Sopenharmony_ci (currently at fs/befs/Kconfig) 39362306a36Sopenharmony_ci 39462306a36Sopenharmony_ci2001-08-?? 39562306a36Sopenharmony_ci========== 39662306a36Sopenharmony_ci* Removed superblock locking calls in befs_read_super(). In 2.4, the VFS 39762306a36Sopenharmony_ci hands us a super_block struct that is already locked. 39862306a36Sopenharmony_ci 39962306a36Sopenharmony_ci2001-08-13 40062306a36Sopenharmony_ci========== 40162306a36Sopenharmony_ci* Will Dyson <will_dyson@pobox.com> is now attempting to maintain this module 40262306a36Sopenharmony_ci Makoto Kato <m_kato@ga2.so-net.ne.jp> is original author.Daniel Berlin 40362306a36Sopenharmony_ci also did some work on it (fixing it up for the later 2.3.x kernels, IIRC). 40462306a36Sopenharmony_ci 40562306a36Sopenharmony_ci* Fixed compile errors on 2.4.1 kernel (WD) 40662306a36Sopenharmony_ci Resolve rejected patches 40762306a36Sopenharmony_ci Accommodate changed NLS interface (util.h) 40862306a36Sopenharmony_ci Needed to include <linux/slab.h> in most files 40962306a36Sopenharmony_ci Makefile changes 41062306a36Sopenharmony_ci fs/Config.in changes 41162306a36Sopenharmony_ci 41262306a36Sopenharmony_ci* Tried to niceify the code using the ext2 fs as a guide 41362306a36Sopenharmony_ci Declare befs_fs_type using the DECLARE_FSTYPE_DEV() macro 41462306a36Sopenharmony_ci 41562306a36Sopenharmony_ci* Made it a configure option to turn on debugging (fs/Config.in) 41662306a36Sopenharmony_ci 41762306a36Sopenharmony_ci* Compiles on 2.4.7 418