In Linux 2.6 the BLKRASET ioctl has the desired effect for mounted
file-systems. In Linux 2.4 it appears to set the number of blocks to
read-ahead on the *device* as opposed to within a *file*, and the
maximum value of this number is 255. As a result the invocation of
blockdev will fail on Linux 2.4 for any usefully large value of
READAHEAD, and will not in any case have the desired affect for
fragmented files.
(Based on the blockdev-getfra-setfra.patch Debian patch.)