[PATCH] fix open flag decoding on 32-bit Android

Christopher Covington cov at codeaurora.org
Thu Oct 9 18:16:24 UTC 2014

On 10/03/2014 07:16 PM, enh wrote:
> On Fri, Oct 3, 2014 at 4:09 PM, Dmitry V. Levin <ldv at altlinux.org> wrote:
>> On Tue, Sep 23, 2014 at 07:09:50PM -0700, enh wrote:
>>> commit d2bed27b663096f8771df824a85f3815a0c7d7da
>>> Author: Elliott Hughes <enh at google.com>
>>> Date:   Tue Sep 23 18:49:19 2014 -0700
>>>     Don't risk truncating open flags by using mode_t.
>>>     On Android, 32-bit arm and x86 use __kernel_mode_t (an unsigned short)
>>>     as their mode_t. The open(2) flags are actually an int, so high ones
>>>     like O_CLOEXEC get truncated if you coerce them to mode_t.
>>>     Signed-off-by: Elliott Hughes <enh at google.com>
>>> diff --git a/defs.h b/defs.h
>>> index cd9817b..5bfeb6b 100644
>>> --- a/defs.h
>>> +++ b/defs.h
>>> @@ -708,8 +708,8 @@ extern void print_sigset_addr_len(struct tcb *, long, long);
>>>  extern void printsignal(int);
>>>  extern void tprint_iov(struct tcb *, unsigned long, unsigned long,
>>> int decode_iov);
>>>  extern void tprint_iov_upto(struct tcb *, unsigned long, unsigned
>>> long, int decode_iov, unsigned long);
>> Your patch failed to apply because of these two wrapped lines,
>> and I forgot about it afterwards.
> sorry. given my employer i'm kind of stuck with gmail, and afaik
> there's no way to make gmail not do that (and aiui you don't like
> patches as attachments).

`git send-email` may be worth a look. I half expect that it was written
because of gmail.


Employee of Qualcomm Innovation Center, Inc.
Qualcomm Innovation Center, Inc. is a member of Code Aurora Forum,
hosted by the Linux Foundation.

More information about the Strace-devel mailing list