See bug #38733 ... --- 2.4.23aa2/fs/binfmt_elf.c.~1~ 2004-02-23 04:18:28.000000000 +0100 +++ 2.4.23aa2/fs/binfmt_elf.c 2004-04-15 16:31:20.929333192 +0200 @@ -941,7 +941,7 @@ out: * These are the only things you should do on a core-file: use only these * functions to write out all the necessary info. */ -static int dump_write(struct file *file, const void *addr, int nr) +static int dump_write(struct file *file, const void *addr, size_t nr) { return file->f_op->write(file, addr, nr, &file->f_pos) == nr; } --- 2.4.23aa2/fs/exec.c.~1~ 2004-02-23 04:19:46.000000000 +0100 +++ 2.4.23aa2/fs/exec.c 2004-04-26 20:12:14.448730608 +0200 @@ -1130,7 +1130,7 @@ int do_coredump(long signr, struct pt_re goto fail; format_corename(corename, core_pattern, signr); - file = filp_open(corename, O_CREAT | 2 | O_NOFOLLOW, 0600); + file = filp_open(corename, O_LARGEFILE | O_CREAT | 2 | O_NOFOLLOW, 0600); if (IS_ERR(file)) goto fail; inode = file->f_dentry->d_inode;