OpenCores
URL https://opencores.org/ocsvn/test_project/test_project/trunk

Subversion Repositories test_project

[/] [test_project/] [trunk/] [linux_sd_driver/] [fs/] [affs/] [Changes] - Blame information for rev 62

Details | Compare with Previous | View Log

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

powered by: WebSVN 2.1.0

© copyright 1999-2025 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.