Thanks - I'll try that.It's moved on. The problem is described here.
You could just continue until it works. Or, if you don't mind using the maintenance mode shell, this might sort it in one go (based on the link above, untested).
At the maintenance mode command line (cli), run
mount[Enter] to check whether partition 3 (probably /dev/sda3) is mounted. If not,
mount /dev/sda3 /mnt/hd3[Enter]. Create a cache directory on that partition for e2fsck
mkdir -p /mnt/hd3/e2fscache[Enter].
Create a configuration file for e2fsck:
Check that the new file in fact contains lines 2 and 3 above as it shouldCode:
cat <<EOM >/var/lib/humaxtv_backup/mod/e2fsck.conf [scratch_files] directory = /mnt/hd3/e2fscache EOM
Now, go to an environment where this configuration should be used
E2FSCK_OPTS=/var/lib/humaxtv_backup/mod/e2fsck.conf tmenu[Enter]. This should bring up the familiar maintenance mode menu (after PIN entry). When you run fix-disk from this menu, e2fsck should find out about the cache directory, fill it with data needed to fix a giant inode, and not run out of memory.
If this works it would be a candidate for updating fix-disk in the next CF. fix-disk uses a swap file to gain memory headroom for scanning the large partition, but it's obviously not enough. The [scratch_files] option might not have been available when fix-disk was created, but we have
/sbin/e2fsckv1.42.13 in the CF now (as well as the same version that uses the 1.40 EXT2FS library in
/usr/lib/ext2/bin, and as well as two versions in the repository, which wouldn't be accessible to fix-disk as their installations would be on the filesystem being fixed)
In the meantime it reported a loss of the TV signal again - "The receiver is not receiving a signal or the signal is too weak". Signal strength and signal quality were both reported as 0%. The signal returned when I did a hard reboot.