Re: [PATCH]: Don't force O_LARGEFILE for 32 bit processes on ia64 - 2.6.12-rc3

From: Anton Blanchard
Date: Tue May 10 2005 - 01:52:22 EST



Hi,

> In ia64 kernel, the O_LARGEFILE flag is forced when
> opening a file. This is problematic for execution of
> 32 bit processes, which are not largefile aware, either
> by SW emulation or by HW execution.
> For such processes, the problem is two-fold:
> 1) When trying to open a file that is larger than 4G
> the operation should fail, but it's not
> 2) Writing to offset larger than 4G should fail, but
> it's not
>
> The proposed patch takes advantage of the way 32 bit
> processes are identified in ia64 systems. Such
> processes have PER_LINUX32 for their personality. With
> the patch, the ia64 kernel will not enforce the O_LARGEFILE
> flag if the current process has PER_LINUX32 set.
> The behavior for all other architectures remains unchanged.

A 32 bit application should not be using the native open routine.

Sounds like you have a 64bit emulator running 32bit applications. The
other 64bit architectures need to be audited to make sure the
PER_LINUX32 flag is safe to use here.

Anton
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/