Linux-2.3.3 and a short hiatus..
[davej-history.git] / fs / umsdos / README-WIP.txt
blobf53426a13264976987f2eebdf24d45c882ec60ea
1 Changes by Matija Nalis (mnalis@jagor.srce.hr) on umsdos dentry fixing
2 (started by Peter T. Waltenberg <peterw@karaka.chch.cri.nz>)
3 (Final conversion to dentries Bill Hawes <whawes@star.net>)
5 There is no warning any more.
6 Both read-only and read-write stuff is fixed, both in
7 msdos-compatibile mode, and in umsdos EMD mode, and it seems stable.
8 There are still few hardlink nuisances, but those are not fatal.
10 I'd call it pre-release, and ask for as many people as possible to
11 come and test it! See notes below for some more information, or if
12 you are trying to use UMSDOS as root partition.
14 Legend: those lines marked with '+' on the beggining of line indicates it
15 passed all of my tests, and performed perfect in all of them.
17 Current status (990202) - UMSDOS 0.85:
19 (1) pure MSDOS (no --linux-.--- EMD file):
21 READ:
22 + readdir                       - works
23 + lookup                        - works
24 + read file                     - works
26 WRITE:
27 + creat file                    - works
28 + delete file                   - works
29 + write file                    - works
30 + rename file (same dir)        - works
31 + rename file (dif. dir)        - works
32 + rename dir (same dir)         - works
33 + rename dir (dif. dir)         - works
34 + mkdir                         - works
35 + rmdir                         - works
38 (2) umsdos (with --linux-.--- EMD file):
40 READ:
41 + readdir                       - works
42 + lookup                        - works
43 + permissions/owners stuff      - works
44 + long file names               - works
45 + read file                     - works
46 + switching MSDOS/UMSDOS        - works
47 + switching UMSDOS/MSDOS        - works
48 - pseudo root things            - works mostly. See notes below.
49 + resolve symlink               - works
50 + dereference symlink           - works
51 + dangling symlink              - works
52 + hard links                    - works
53 + special files (block/char devices, FIFOs, sockets...) - works
54 + various umsdos ioctls         - works
57 WRITE:
58 + create symlink                - works
59 - create hardlink               - works
60 + create file                   - works
61 + create special file           - works
62 + write to file                 - works
63 + rename file (same dir)        - works
64 + rename file (dif. dir)        - works
65 - rename hardlink (same dir)    -
66 - rename hardlink (dif. dir)    -
67 + rename symlink (same dir)     - works
68 + rename symlink (dif. dir)     - works
69 + rename dir (same dir)         - works
70 + rename dir (dif. dir)         - works
71 + delete file                   - works
72 + notify_change (chown,perms)   - works
73 + delete hardlink               - works
74 + mkdir                         - works
75 + rmdir                         - works
76 + umssyncing (many ioctls)      - works
79 - CVF-FAT stuff (compressed DOS filesystem) - there is some support from Frank
80   Gockel <gockel@sent13.uni-duisburg.de> to use it even under umsdosfs, but I
81   have no way of testing it -- please let me know if there are problems specific
82   to umsdos (for instance, it works under msdosfs, but not under umsdosfs).
85 Some current notes:
87 Note: creating and using pseudo-hardlinks is always non-perfect, especially
88 in filesystems that might be externally modified like umsdos. There is
89 example is specs file about it. Specifically, moving directory which
90 contains hardlinks will break them.
92 Note: (about pseudoroot) If you are currently trying to use UMSDOS as root
93 partition (with linux installed in c:\linux) it will boot, but there may be
94 some problems. Volunteers ready to test pseudoroot are needed (preferably
95 ones with working backups or unimportant data).  For example, '/DOS' pseudo
96 directory is only partially re-implemented and buggy. It works most of the
97 time, though. Update: should work ok in 0.84, although it still does not
98 work correctly in combination with initrd featere. Working on this!
100 Note: (about creating hardlinks in pseudoroot mode) - hardlinks created in
101 pseudoroot mode are now again compatibile with 'normal' hardlinks, and vice
102 versa. Thanks to Sorin Iordachescu <sorin@rodae.ro> for providing fix.
104 Warning: (about hardlinks) - modifying hardlinks (esp. if they are in
105 different directories) are currently somewhat broken, I'm working on it.
106 Problem seems to be that code uses and updates EMD of directory where 'real
107 hardlink' is stored, not EMD of directory where our pseudo-hardlink is
108 located! I'm looking for ideas how to work around this in clean way, since
109 without it modifying hardlinks in any but most simple ways is broken!
111 ------------------------------------------------------------------------------
113 Some general notes:
115 Good idea when running development kernels is to have SysRq support compiled
116 in kernel, and use Sync/Emergency-remount-RO if you bump into problems (like
117 not being able to umount(2) umsdosfs, and because of it root partition also,
118 or panics which force you to reboot etc.)
120 I'm unfortunately somewhat out of time to read linux-kernel@vger, but I do
121 check for messages having "UMSDOS" in the subject, and read them.  I might
122 miss some in all that volume, though.  I should reply to any direct e-mail
123 in few days.  If I don't, probably I never got your message.  You can try
124 mnalis-umsdos@voyager.hr; however mnalis@jagor.srce.hr is preferable.