Re: Weird __put_user_asm behavior

From: Manfred Spraul (manfred@colorfullife.com)
Date: Wed Dec 26 2001 - 07:21:39 EST


The old code evaluates addr once, your new code evaluates it twice.
Have you tried an inline function instead of a macro?
linux/fs/binfmt_elf.c contains a few lines that probably break if 'addr' is evaluated twice:
<<<<<<<
        argv = (elf_caddr_t *) sp;
        if (!ibcs) {
                __put_user((elf_addr_t)(unsigned long) envp,--sp);
                __put_user((elf_addr_t)(unsigned long) argv,--sp);
        }
<<<<<<<<<

--
    Manfred

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



This archive was generated by hypermail 2b29 : Mon Dec 31 2001 - 21:00:11 EST