Orange Pi5 kernel

Deprecated Linux kernel 5.10.110 for OrangePi 5/5B/5+ boards

3 Commits   0 Branches   0 Tags
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300   1) (Note: I consider version numbers as cheap. That means
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300   2) that I do not like numbers like 0.1 and the like for
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300   3) things that can be used since quite some time. But
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300   4) then, 3.1 doesn't mean 'perfectly stable', too.)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300   5) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300   6) Known bugs:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300   7) -----------
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300   8) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300   9) - Doesn't work on the alpha. The only 64/32-bit
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  10)   problem that I'm aware of (pointer/int conversion
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  11)   in readdir()) gives compiler warnings but is
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  12)   apparently not causing the failure, as directory
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  13)   reads basically work (but all files are of size 0).
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  14)   Alas, I've got no alpha to debug. :-(
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  15) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  16) - The partition checker (drivers/block/genhd.c)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  17)   doesn't work with devices which have 256 byte
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  18)   blocks (some very old SCSI drives). 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  19) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  20) - The feature to automatically make the fs clean
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  21)   might leave a trashed file system with the
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  22)   bitmap flag set valid.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  23) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  24) - When a file is truncated to a size that is not
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  25)   a multiple of the blocksize, the rest of the
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  26)   last allocated block is not cleared. Well,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  27)   this fs never claimed to be Posix conformant.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  28) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  29) Please direct bug reports to: zippel@linux-m68k.org
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  30) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  31) Version 3.20
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  32) ------------
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  33) - kill kernel lock
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  34) - fix for a possible bitmap corruption
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  35) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  36) Version 3.19
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  37) ------------
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  38) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  39) - sizeof changes from Kernel Janitor Project
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  40) - several bug fixes found with fsx
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  41) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  42) Version 3.18
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  43) ------------
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  44) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  45) - change to global min macro + warning fixes
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  46) - add module tags
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  47) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  48) Version 3.17
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  49) ------------
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  50) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  51) - locking fixes
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  52) - wrong sign in __affs_hash_dentry
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  53) - remove unnecessary check in affs_new_inode
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  54) - enable international mode for dircache fs
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  55) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  56) Version 3.16
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  57) ------------
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  58) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  59) - use mark_buffer_dirty_inode instead of mark_buffer_dirty.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  60) - introduce affs_lock_{link|dir|ext}.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  61) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  62) Version 3.15
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  63) ------------
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  64) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  65) - disable link to directories until we can properly support them.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  66) - locking fixes for link creation/removal.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  67) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  68) Version 3.14
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  69) ------------
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  70) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  71) - correctly cut off long file names for compares
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  72) - correctly initialize s_last_bmap
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  73) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  74) Version 3.13
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  75) ------------
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  76) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  77) Major cleanup for 2.4 [Roman Zippel]
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  78) - new extended block handling
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  79) - new bitmap allocation functions
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  80) - locking should be safe for the future
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  81) - cleanup of some interfaces
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  82) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  83) Version 3.12
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  84) ------------
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  85) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  86) more 2.4 fixes: [Roman Zippel]
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  87) - s_lock changes
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  88) - increased getblock mess
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  89) - clear meta blocks 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  90) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  91) Version 3.11
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  92) ------------
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  93) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  94) - Converted to use 2.3.x page cache [Dave Jones]
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  95) - Corruption in truncate() bugfix [Ken Tyler <kent@werple.net.au>]
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  96) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  97) Version 3.10
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  98) ------------
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  99) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 100) - Changed partition checker to allow devices
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 101)   with physical blocks != 512 bytes.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 102) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 103) - The partition checker now also ignores the
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 104)   word at 0xd0 that Windows likes to write to.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 105) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 106) Version 3.9
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 107) -----------
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 108) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 109) - Moved cleanup from release_file() to put_inode().
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 110)   This makes the first one obsolete.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 111) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 112) - truncate() zeroes the unused remainder of a
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 113)   partially used last block when a file is truncated.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 114)   It also marks the inode dirty now (which is not
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 115)   really necessary as notify_change() will do
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 116)   it anyway).
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 117) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 118) - Added a few comments, fixed some typos (and
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 119)   introduced some new ones), made the debug messages
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 120)   more consistent. Changed a bad example in the
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 121)   doc file (affs.txt).
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 122) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 123) - Sets the NOEXEC flag in read_super() for old file
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 124)   systems, since you can't run programs on them.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 125) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 126) Version 3.8
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 127) -----------
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 128) Bill Hawes kindly reviewed the affs and sent me the
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 129) patches he did. They're marked (BH). Thanks, Bill!
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 130) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 131) - Cleanup of error handling in read_super().
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 132)   Didn't release all resources in case of an
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 133)   error. (BH)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 134) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 135) - put_inode() releases the ext cache only if it's
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 136)   no longer needed. (BH)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 137) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 138) - One set of dentry callbacks is enough. (BH)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 139) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 140) - Cleanup of error handling in namei.c. (BH)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 141) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 142) - Cleanup of error handling in file.c. (BH)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 143) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 144) - The original blocksize of the device is
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 145)   restored when the fs is unmounted. (BH)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 146) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 147) - getblock() did not invalidate the key cache
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 148)   when it allocated a new block.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 149) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 150) - Removed some unnecessary locks as Bill
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 151)   suggested.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 152) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 153) - Simplified match_name(), changed all hashing
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 154)   and case insensitive name comparisons to use
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 155)   uppercase. This makes the tolower() routines
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 156)   obsolete.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 157) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 158) - Added mount option 'mufs' to force muFS
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 159)   uid/gid interpretation.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 160) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 161) - File mode changes were not updated on disk.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 162)   This was fixed before, but somehow got lost.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 163) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 164) Version 3.7
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 165) -----------
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 166) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 167) - Added dentry callbacks to allow the dcache to
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 168)   operate case insensitive and length ignorant
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 169)   like the affs itself.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 170) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 171) - getblock() didn't update the lastblock field in the
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 172)   inode if the fs was not an OFS. This bug only shows
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 173)   up if a file was enlarged via truncate() and there
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 174)   was not enough space.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 175) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 176) - Remove some more superfluous code left over from
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 177)   the old link days ...
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 178) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 179) - Fixed some oversights which were in patch 2.1.78.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 180) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 181) - Fixed a few typos.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 182) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 183) Version 3.6
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 184) -----------
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 185) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 186) - dentry changes. (Thanks to Jes Sorensen for his help.)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 187) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 188) - Fixed bug in balloc(): Superblock was not set dirty after
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 189)   the bitmap was changed, so the bitmap wasn't sync'd.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 190) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 191) - Fixed nasty bug in find_new_zone(): If the current
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 192)   zone number was zero, the loop didn't terminate,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 193)   causing a solid lock-up.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 194) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 195) - Removed support for old-style directory reads.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 196) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 197) - Fixed bug in add_entry(): When doing a sorted insert,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 198)   the pointer to the next entry in the hash chain wasn't
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 199)   correctly byte-swapped. Since most of the users of the
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 200)   affs use it on a 68k, they didn't notice. But why did
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 201)   I not find this during my tests?
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 202) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 203) - Fixed some oversights (version wasn't updated on some
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 204)   directory changes).
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 205) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 206) - Handling of hard links rewritten. To the VFS
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 207)   they appear now as normal Unix links. They are
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 208)   now resolved only once in lookup(). The backside
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 209)   is that unlink(), rename() and rmdir() have to
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 210)   be smart about them, but the result is worth the
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 211)   effort. This also led to some code cleanup.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 212) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 213) - Changed name type to unsigned char; the test for
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 214)   invalid filenames didn't work correctly.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 215)   (Thanks to Michael Krause for pointing at this.)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 216) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 217) - Changed mapping of executable flag.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 218) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 219) - Changed all network byte-order macros to the
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 220)   recommended ones.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 221) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 222) - Added a remount function, so attempts to remount
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 223)   a dircache filesystem or one with errors read/write
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 224)   can be trapped. Previously, ro remounts didn't
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 225)   flush the super block, and rw remounts didn't
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 226)   create allocation zones ...
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 227) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 228) - Call shrink_dcache_parent() in rmdir().
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 229)   (Thanks to Bill Hawes.)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 230) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 231) - Permission checks in unlink().
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 232) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 233) - Allow mounting of volumes with superfluous
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 234)   bitmap pointers read only, also allows them
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 235)   to be remounted read/write.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 236) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 237) - Owner/Group defaults now to the fs user (i.e.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 238)   the one that mounted it) instead of root. This
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 239)   obsoletes the mount options uid and gid.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 240) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 241) - Argument to volume option could overflow the
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 242)   name buffer. It is now silently truncated to
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 243)   30 characters. (Damn it! This kind of bug
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 244)   is too embarrassing.)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 245) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 246) - Split inode.c into 2 files, the superblock
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 247)   routines desperately wanted their own file.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 248) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 249) - truncate() didn't allocate an extension block
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 250)   cache. If a file was extended by means of
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 251)   truncate(), this led to an Oops.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 252) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 253) - fsuser is now checked last.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 254) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 255) - rename() will not ignore changes in filename
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 256)   casing any more (though mv(1) still won't allow
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 257)   you to do "mv oldname OldName").
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 258) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 259) Version 3.5
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 260) -----------
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 261) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 262) - Extension block caches are now allocated on
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 263)   demand instead of when a file is opened, as
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 264)   files can be read and written without opening
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 265)   them (e. g. the loopback device does this).
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 266) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 267) - Removed an unused function.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 268) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 269) Version 3.4
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 270) -----------
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 271) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 272) - Hash chains are now sorted by block numbers.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 273)   (Thanks to Kars de Jong for finding this.)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 274) - Removed all unnecessary external symbols.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 275) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 276) Version 3.3
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 277) -----------
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 278) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 279) - Tried to make all types 'correct' and consistent.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 280) - Errors and warnings are now reported via a
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 281)   function. They are all prefixed by a severity
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 282)   and have the same appearance:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 283)     "AFFS: <function>: <error message>"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 284)   (There's one exception to this, as in that function
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 285)   is no pointer to the super block available.)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 286) - The filesystem is remounted read-only after an
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 287)   error.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 288) - The names of newly created filesystem objects are
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 289)   now checked for validity.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 290) - Minor cleanups in comments.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 291) - Added this Changes file. At last!
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 292) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 293) Version 3.2
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 294) -----------
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 295) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 296) - Extension block cache: Reading/writing of huge files
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 297)   (several MB) is much faster (of course the added
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 298)   overhead slows down opening, but this is hardly
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 299)   noticeable).
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 300) - The same get_block()-routine can now be used for
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 301)   both OFS and FFS.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 302) - The super block is now searched in the block that
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 303)   was calculated and in the one following. This
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 304)   should remedy the round-off error introduced by
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 305)   the 1-k blocks that Linux uses.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 306) - Minor changes to adhere to the new VFS interface.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 307) - The number of used blocks is now also calculated
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 308)   if the filesystem is mounted read-only.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 309) - Prefixed some constants with AFFS_ to avoid name
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 310)   clashes.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 311) - Removed 'EXPERIMENTAL' status.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 312) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 313) Version 3.1
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 314) -----------
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 315) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 316) - Fixed a nasty bug which didn't allow read-only
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 317)   mounts.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 318) - Allow dir-cache filesystems to be mounted
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 319)   read only.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 320) - OFS support.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 321) - Several other changes I just cannot remember
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 322)   any more.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 323) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 324) Version 3.0
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 325) -----------
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 326) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 327) - Almost complete rewrite for the new VFS
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 328)   interface in Linux 1.3.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 329) - Write support.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 330) - Support for hard and symbolic links.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 331) - Lots of things I remember even less ...
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 332) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 333) Version 2.0
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 334) -----------
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 335) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 336) - Fixed a few things to get it compiled.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 337) - Automatic root block calculation.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 338) - Partition checker for genhd.c
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 339) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 340) ========================================
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 341) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 342) Let's just call Ray Burr's original affs
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 343) 'Version 1.0'.