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

Subversion Repositories or1k

[/] [or1k/] [trunk/] [linux/] [linux-2.4/] [fs/] [befs/] [ChangeLog] - Blame information for rev 1275

Go to most recent revision | Details | Compare with Previous | View Log

Line No. Rev Author Line
1 1275 phoenix
Version 0.92 (2002-03-29)
2
==========
3
* Minor cleanup. Ran Lindent on the sources.
4
 
5
Version 0.92 (2002-03-27)
6
==========
7
* Fixed module makefile problem. It was not compiling all the correct
8
    source files!
9
* Removed duplicated function definition
10
* Fixed potential null pointer dereference when reporting an error
11
 
12
Version 0.91 (2002-03-26)
13
==========
14
* Oy! Fixed stupid bug that would cause an unresolved symbol error.
15
        Thanks to Laszlo Boszormenyi for pointing this out to me.
16
 
17
Version 0.9 (2002-03-14)
18
==========
19
* Added Sergey S. Kostyliov's patch to eliminate memcpy() overhead
20
        from b+tree operations. Changes the befs_read_datastream() interface.
21
 
22
* Segregated the functions that interface directly with the linux  vfs
23
        interface into their own file called linuxvfs.c. [WD]
24
 
25
Version 0.64 (2002-02-07)
26
==========
27
* Did the string comparision really right this time (btree.c) [WD]
28
 
29
* Fixed up some places where I assumed that a long int could hold
30
        a pointer value. (btree.c) [WD]
31
 
32
* Andrew Farnham  pointed out that the module
33
        wouldn't work on older (<2.4.10) kernels due to an unresolved symbol.
34
        This is bad, since 2.4.9 is still the current RedHat kernel. I added
35
        a workaround for this problem (compatability.h) [WD]
36
 
37
* Sergey S. Kostyliov made befs_find_key() use a binary search to find
38
        keys within btree nodes, rather than the linear search we were using
39
        before. (btree.c) [Sergey S. Kostyliov ]
40
 
41
* Made a debian package of the source for use with kernel-package. [WD]
42
 
43
 
44
Version 0.63 (2002-01-31)
45
==========
46
* Fixed bug in befs_find_brun_indirect() that would result in the wrong
47
        block being read. It was introduced when adding byteswapping in
48
        0.61. (datastream.c) [WD]
49
 
50
* Fixed a longstanding bug in befs_find_key() that would result in it
51
        finding the first key that is a substring of the string it is searching
52
        for. For example, this would cause files in the same directory with
53
        names like file1 and file2 to mysteriously be duplicates of each other
54
        (because they have the same inode number). Many thanks to Pavel Roskin
55
        for reporting this serious bug!!!
56
        (btree.c) [WD]
57
 
58
* Added support for long symlinks, after Axel Dorfler explained up how
59
        they work. I had forgotten all about them. (inode.c, symlink.c) [WD]
60
 
61
* Documentation improvements in source. [WD]
62
 
63
* Makefile fix for independant module when CONFIG_MODVERSION is set in
64
        kernel config [Pavel Roskin ]
65
 
66
* Compile warning fix for namei.c. [Sergey S. Kostyliov ]
67
 
68
 
69
Version 0.62
70
==========
71
* Fixed makefile for module install [WD]
72
 
73
 
74
Version 0.61 (2002-01-20)
75
==========
76
* Made functions in endian.h to do the correct byteswapping, no matter
77
        the arch. [WD]
78
 
79
* Abbandoned silly checks for a NULL superblock pointer in debug.c. [WD]
80
 
81
* Misc code cleanups. Also cleanup of this changelog file. [WD]
82
 
83
* Added byteswapping to all metadata reads from disk.
84
        Uses the functions from endian.h [WD]
85
 
86
* Remove the typedef of struct super_block to vfs_sb, as it offended
87
        certain peoples' aesthetic sense. [WD]
88
 
89
* Ditto with the befs_read_block() interface. [WD]
90
 
91
 
92
Version 0.6 (2001-12-15)
93
==========
94
* Cleanup of NLS functions (util.c) [WD]
95
 
96
* Make directory lookup/read use the NLS if an iocharset is provided. [WD]
97
 
98
* Fixed stupid bug where specifying the uid or gid mount options as '0'
99
        would result in the filesystem using the on-disk uid and gid. [WD]
100
 
101
* Added mount option to control debug printing.
102
        The option is, simply enough, 'debug'.
103
        (super.c, debug.c) [WD]
104
 
105
* Removed notion of btree handle from btree.c. It was unessisary, as the
106
        linux VFS doesn't allow us to keep any state between calls. Updated
107
        dir.c, namei.c befs_fs.h to account for it. [WD]
108
 
109
* Improved handleing of overflow nodes when listing directories.
110
        Now works for overflow nodes hanging off of nodes other than the root
111
        node. This is the cleaner solution to Brent Miszalaski's problem. [WD]
112
 
113
* Added new debug/warning/error print functions in debug.c.
114
        More flexible. Will soon be controllable at mount time
115
        (see TODO). [WD]
116
 
117
* Rewrote datastream positon lookups.
118
        (datastream.c) [WD]
119
 
120
* Moved the TODO list to it's own file.
121
 
122
 
123
Version 0.50 (2001-11-13)
124
==========
125
* Added workaround for mis-understanding of the nature of the b+trees used
126
        in directories. A cleaner solution will come after I've thought about it
127
        for a while. Thanks to Brent Miszalaski for finding and reporting this bug.
128
        (btree.c) [WD]
129
 
130
* Minor cleanups
131
 
132
* Added test for "impossible" condition of empty internal nodes in
133
        seekleaf() in btree.c [WD]
134
 
135
* Implemented the abstracted read_block() in io.c [WD]
136
 
137
* Cleaned up the inode validation in inode.c [WD]
138
 
139
* Anton Altaparmakov figured out (by asking Linus :) ) what was causing the
140
        hanging disk io problem. It turns out you need to have the sync_pages
141
        callback defined in your address_space_ops, even if it just uses the
142
        default linux-supplied implementation. Fixed. Works now.
143
        (file.c) [WD]
144
 
145
* Anton Altaparmakov and Christoph Hellwig alerted me to the fact that
146
        filesystem code should be using GFP_NOFS instead of GFP_KERNEL as the
147
        priority parameter to kmalloc(). Fixed.
148
        (datastream.c, btree.c super.c inode.c) [WD]
149
 
150
* Anton also told me that the blocksize is not allowed to be larger than
151
        the page size in linux, which is 4k i386. Oops. Added a test for
152
        (blocksize > PAGE_SIZE), and refuse to mount in that case. What this
153
        practicaly means is that 8k blocksize volumes won't work without a major
154
        restructuring of the driver (or an alpha or other 64bit hardware). [WD]
155
 
156
* Cleaned up the befs_count_blocks() function. Much smarter now.
157
        And somewhat smaller too. [WD]
158
 
159
* Made inode allocations use a slab cache
160
        (super.c inode.c) [WD]
161
 
162
* Moved the freeing of the private inode section from put_inode() to
163
        clear_inode(). This fixes a potential free twice type bug. Put_inode()
164
        can be called multiple times for each inode struct. [WD]
165
 
166
* Converted all non vfs-callback functions to use befs_sb_info as the
167
        superblock type, rather than struct super_block. This is for
168
        portablity. [WD]
169
 
170
* Fixed a couple of compile warnings due to use of malloc.h, when slab.h
171
        is the new way. (inode.c, super.c) [WD]
172
 
173
* Fixed erronous includes of linux/befs_fs_i.h and linux/befs_fs_sb.h
174
        in inode.c [WD]
175
 
176
Version 0.45 (2001-10-29)
177
==========
178
* Added functions to get the private superblock and inode structures from
179
        their enclosing public structures. Switched all references to the
180
        private portions to use them. (many files) [WD]
181
 
182
* Made read_super and read_inode allocate the private portions of those
183
        structures into the generic pointer fields of the public structures
184
        with kmalloc(). put_super and put_inode free them. This allows us not
185
        to have to touch the definitions of the public structures in
186
        include/linux/fs.h. Also, befs_inode_info is huge (becuase of the
187
        symlink string). (super.c, inode.c, befs_fs.h) [WD]
188
 
189
* Fixed a thinko that was corrupting file reads after the first block_run
190
        is done being read. (datastream.c) [WD]
191
 
192
* Removed fsync() hooks, since a read-only filesystem doesn't need them.
193
        [Christoph Hellwig].
194
 
195
* Fixed befs_readlink() (symlink.c) [Christoph Hellwig].
196
 
197
* Removed all the Read-Write stuff. I'll redo it when it is time to add
198
        write support (various files) [WD].
199
 
200
* Removed prototypes for functions who's definitions have been removed
201
        (befs_fs.h) [WD].
202
 
203
 
204
Version 0.4 (2001-10-28)
205
==========
206
* Made it an option to use the old non-pagecache befs_file_read() for
207
        testing purposes. (fs/Config.in)
208
 
209
* Fixed unused variable warnings when compiling without debugging.
210
 
211
* Fixed a bug where the inode and super_block didn't get their blockbits
212
        fields set (inode.c and super.c).
213
 
214
* Release patch version 11. AKA befs-driver version 0.4.
215
 
216
* Thats right. New versioning scheme.
217
        I've done some serious testing on it now (on my box anyhow), and it
218
        seems stable and not outragously slow. Existing features are more-or-less
219
        correct (see TODO list). But it isn't 1.0 yet. I think 0.4 gives me some
220
        headroom before the big 1.0.
221
 
222
 
223
2001-10-26
224
==========
225
* Fixed date format in this file. Was I smoking crack?
226
 
227
* Removed old datastream code from file.c, since it is nolonger used.
228
 
229
* Generic_read_file() is now used to read regular file data.
230
        It doesn't chew up the buffer cache (it does page io instead), and seems
231
        to be about as fast (even though it has to look up each file block
232
        indivdualy). And it knows about doing readahead, which is a major plus.
233
        So it does i/o in much larger chunks. It is the correct linux way. It
234
        uses befs_get_block() by way of befs_readpage() to find the disk offsets
235
        of blocks, which in turn calls befs_fpos2brun() in datastream.c to do
236
        the hard work of finding the disk block number.
237
 
238
* Changed method of checking for a dirty filesystem in befs_read_super
239
        (super.c). Now we check to see if log_start and log_end differ. If so,
240
        the journal needs to be replayed, and the filesystem cannot be mounted.
241
 
242
* Fixed an extra instance of MOD_DEC_USE_COUNT in super.c
243
 
244
* Fixed a problem with reading the superblock on devices with large sector
245
        sizes (such as cdroms) on linux 2.4.10 and up.
246
 
247
2001-10-24
248
==========
249
* Fix nasty bug in converting block numbers to struct befs_inode_addr.
250
        Subtle, because the old version was only sometimes wrong.
251
        Probably responsible for lots of problems. (inode.c)
252
 
253
* Fix bug with reading an empty directory. (btree.c and dir.c)
254
 
255
* This one looks good. Release patch version 10
256
 
257
2001-10-23
258
==========
259
* Added btree searching function.
260
 
261
* Use befs_btree_find in befs_lookup (namei.c)
262
 
263
* Additional comments in btree.c
264
 
265
2001-10-22
266
==========
267
* Added B+tree reading functions (in btree.c).
268
        Made befs_readdir() use them them instead of the cruft in index.c.
269
 
270
2001-09-11
271
==========
272
* Converted befs_read_file() to use the new datastream code.
273
 
274
* Finally updated the README file.
275
 
276
* Added many comments.
277
 
278
* Posted version 6
279
 
280
* Removed byte-order conversion code.
281
        I have no intention of supporting it, and it was very ugly.
282
        Flow control with #ifdef (ugh). Maybe I'll redo it once
283
        native byteorder works 100%.
284
 
285
2001-09-10
286
==========
287
* Finished implementing read_datastream()
288
 
289
* made befs_read_brun() more general
290
        Supports an offset to start at and a max bytes to read
291
        Added a wrapper function to give the old call
292
 
293
2001-09-30
294
==========
295
* Discovered that the datastream handleing code in file.c is quite deficient
296
        in several respects. For one thing, it doesn't deal with indirect blocks
297
 
298
* Rewrote datastream handleing.
299
 
300
* Created io.c, for io related functions.
301
        Previously, the befs_bread() funtions lived in file.c
302
        Created the befs_read_brun() function.
303
 
304
 
305
2001-09-07
306
==========
307
* Made a function to actually count the number of fs blocks used by a file.
308
        And helper functions.
309
        (fs/befs/inode.c)
310
 
311
2001-09-05
312
==========
313
* Fixed a misunderstanding of the inode fields.
314
        This fixed the problmem with wrong file sizes from du and others.
315
        The i_blocks field of the inode struct is not the nuber of blocks for the
316
        inode, it is the number of blocks for the file. Also, i_blksize is not
317
        nessisarily the size of the inode, although in  practice it works out.
318
        Changed to blocksize of filesystem.
319
        (fs/befs/inode.c)
320
 
321
* Permanently removed code that had been provisionally ifdefed out of befs_fs.h
322
 
323
* Since we don't support access time, make that field zero, instead of
324
        copying m_time.
325
        (fs/befs/inode.c)
326
 
327
* Added sanity check for inode reading
328
        Make sure inode we got was the one we asked for.
329
        (fs/befs/inode.c)
330
 
331
* Code cleanup
332
        Local pointers to commonly used structures in inode.c.
333
        Got rid of abominations befs_iaddr2inode() and befs_inode2ino().
334
        Replaced with single function iaddr2blockno().
335
        (fs/befs/super.c) (fs/befs/inode.c)
336
 
337
2001-09-01
338
==========
339
* Fixed the problem with statfs where it would always claim the disk was
340
        half full, due to improper understanding of the statfs fields.
341
        (fs/befs/super.c)
342
 
343
* Posted verion 4 of the patch
344
 
345
2001-09-01
346
==========
347
* Changed the macros in befs_fs.h to inline functions.
348
        More readable. Typesafe. Better
349
        (include/linux/befs_fs.h)
350
 
351
* Moved type definitions from befs_fs.h to a new file, befs_fs_types.h
352
        Because befs_fs_i.h and befs_fs_sb.h were including befs_fs.h for the
353
        typedefs, and they are inlcuded in , which has definitions
354
        that I want the inline functions in befs_fs.h to be able to see. Nasty
355
        circularity.
356
        (include/linux/befs_fs.h)
357
 
358
2001-08-30
359
==========
360
* Cleaned up some wording.
361
 
362
* Added additional consitency checks on mount
363
        Check block_size agrees with block_shift
364
        Check flags == BEFS_CLEAN
365
        (fs/befs/super.c)
366
 
367
* Tell the kernel to only mount befs read-only.
368
        By setting the MS_RDONLY flag in befs_read_super().
369
        Not that it was possible to write before. But now the kernel won't even try.
370
        (fs/befs/super.c)
371
 
372
* Got rid of kernel warning on mount.
373
        The kernel doesn't like it if you call set_blocksize() on a device when
374
        you have some of its blocks open. Moved the second set_blocksize() to the
375
        very end of befs_read_super(), after we are done with the disk superblock.
376
        (fs/befs/super.c)
377
 
378
* Fixed wrong number of args bug in befs_dump_inode
379
        (fs/befs/debug.c)
380
 
381
* Solved lots of type mismatches in kprint()s
382
        (everwhere)
383
 
384
2001-08-27
385
==========
386
* Cleaned up the fs/Config.in entries a bit, now slightly more descriptive.
387
 
388
* BeFS depends on NLS, so I made activating BeFS enable the NLS questions
389
        (fs/nls/Config.in)
390
 
391
* Added Configure.help entries for CONFIG_BEFS_FS and CONFIG_DEBUG_BEFS
392
        (Documentation/Configure.help)
393
 
394
2001-08-??
395
==========
396
* Removed superblock locking calls in befs_read_super(). In 2.4, the VFS
397
        hands us a super_block struct that is already locked.
398
 
399
2001-08-13
400
==========
401
* Will Dyson  is now attempting to maintain this module
402
        Makoto Kato  is original author.Daniel Berlin
403
        also did some work on it (fixing it up for the later 2.3.x kernels, IIRC).
404
 
405
* Fixed compile errors on 2.4.1 kernel (WD)
406
        Resolve rejected patches
407
        Accomodate changed NLS interface (util.h)
408
        Needed to include  in most files
409
        Makefile changes
410
        fs/Config.in changes
411
 
412
* Tried to niceify the code using the ext2 fs as a guide
413
        Declare befs_fs_type using the DECLARE_FSTYPE_DEV() macro
414
 
415
* Made it a configure option to turn on debugging (fs/Config.in)
416
 
417
* Compiles on 2.4.7

powered by: WebSVN 2.1.0

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