Jump to Navigation


This package is renamed kernel-patch-fat-epoc. The old package, called kernel-patch-fat-old, should not be used anymore. The mount option for  .6 kernels, previously called oldfat is renamed epoc.


In the FAT standard the end of the directory file index is marked by 00. All entries after it should be ignored. The current FAT implementation ignores such marked entries, but continues scanning the directory. This is good enough for most FAT implementations, because they also mark all remaining entries after the last with a 00 byte.

The filesystem implementation of EPOC 5(MX) (and probably of newer versions of EPOC) does not clear old entries after the end of the directory file index. This means that without this patch, Linux will show old previously deleted or even never assigned entries.

This patch will affect FAT-based filesystems. Examples are filesystems of the type msdos or vfat.

The patch for 2.6 kernels is not active, unless you specify the epoc mount option. For example:

mount /dev/sda1 /mnt/psion-epoc -t vfat -o epoc

The patch for 2.4 kernels has some known issues. All FAT-based partitions will use the new policy; there is no mount option. In most cases it should work well enough; if you want to be completely safe, mount FAT-based partitions read-only.

Applying the patches

There are several patches included in this package:

fat-epoc-2.4.20.diffFor any 2.4 kernel
fat-epoc-2.6.0.diffFor 2.6.0 to 2.6.10 kernels
fat-epoc-2.6.11.diffFor 2.6.11 kernels
fat-epoc-2.6.12.diffFor 2.6.12, 2.6.13 and 2.6.14 kernels
fat-epoc-2.6.15.diffFor 2.6.15 to 2.6.18 kernels
fat-epoc-2.6.19.diffFor 2.6.19, 2.6.20 and 2.6.21 kernels
fat-epoc-2.6.22.diffFor 2.6.22 and newer kernels

Choose the patch that fits your kernel.

Now go to the kernel base directory (often called /usr/src/linux) and issue the following command:

patch -p1 -E < PATCHFILE

If you want to see what will happen without applying the patch, try:

patch -p1 -E --dry-run < PATCHFILE

You may get a few messages about offsets; this is normal. But no fuzzy matches should be reported, and certainly no rejects.

After this compile your kernel as usual.

Debian users

There is also a Debian version of this package. If you install it, and compile your kernel "the Debian way", the right patch will be applied automatically. Get it at the same place as this package (see Contact).

Contact and copyright

This package (kernel-package-fat-epoc or fat-epoc) is copyright (c) 2003-2007  Frodo Looijaard <frodo@frodo.looijaard.name>

This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.

The GPL text can be found in the file COPYING.
The latest version of this package can be found on: http://software.frodo.looijaard.name/fat-epoc

Contact the author (Frodo Looijaard) by mailing to: frodo@frodo.looijaard.name

General_article | by Dr. Radut