On Wed, Nov 09, 2011 at 08:49:58PM -0800, David Rientjes wrote: > On Thu, 10 Nov 2011, Nai Xia wrote: > > > Did this patch get merged at last, or on this way being merged, or > > just dropped ? > > > > I thought we were waiting to find out if it caused a problem on arm. > Either Russell should be able to clarify that or a couple months in > linux-next. As I said last time, these flags are passed into assembly on ARM. For example, we pass a pointer to the VMA, and the assembly code them loads the vma flags to check whether VM_EXEC is set, so it knows whether it needs to flush the instruction TLB. Making this a 64-bit quantity then means we have to deal with the host endian issues and the position of the VM_EXEC bit inside that 64-bit quantity. Remembering that ARM is 32-bit, that needs additional complexity to sort out, something like: #ifdef __ARMEB__ #define VM_FLAGS_LOWWORD 4 #else #define VM_FLAGS_LOWWORD 0 #endif #if VM_EXEC >= 1<<32 #define VM_FLAG_EXEC (VM_EXEC >> 32) #define VM_FLAG_EXECWORD 4 #else #define VM_FLAG_EXEC VM_EXEC #define VM_FLAG_EXECWORD 0 #endif ldr rd, [rn, #VMA_VM_FLAGS + (VM_FLAGS_LOWWORD ^ VM_FLAG_EXECWORD)] ... tst rd, #VM_FLAG_EXEC which is not only rather horrible, but I also wonder whether VM_EXEC >> 32 will provide the right answer with a binutils targetting 32-bit. -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@xxxxxxxxx. For more info on Linux MM, see: http://www.linux-mm.org/ . Fight unfair telecom internet charges in Canada: sign http://stopthemeter.ca/ Don't email: <a href=mailto:"dont@xxxxxxxxx"> email@xxxxxxxxx </a>