lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <2ab5a918-529e-405d-57c0-68d5406269fc@infradead.org>
Date:   Thu, 19 Sep 2019 14:09:40 -0700
From:   Randy Dunlap <rdunlap@...radead.org>
To:     Josh Poimboeuf <jpoimboe@...hat.com>
Cc:     Mark Brown <broonie@...nel.org>,
        Linux Next Mailing List <linux-next@...r.kernel.org>,
        Linux Kernel Mailing List <linux-kernel@...r.kernel.org>,
        Peter Zijlstra <peterz@...radead.org>
Subject: Re: linux-next: Tree for Sep 18 (objtool)

On 9/19/19 12:40 PM, Josh Poimboeuf wrote:
> On Thu, Sep 19, 2019 at 12:21:46PM -0700, Randy Dunlap wrote:
>> On 9/19/19 9:51 AM, Josh Poimboeuf wrote:
>>> On Wed, Sep 18, 2019 at 09:04:21PM -0700, Randy Dunlap wrote:
>>>> On 9/18/19 3:10 PM, Mark Brown wrote:
>>>>> Hi all,
>>>>>
>>>>> Changes since 20190917:
>>>>>
>>>>
>>>> on x86_64:
>>>>
>>>> drivers/gpu/drm/i915/gem/i915_gem_execbuffer.o: warning: objtool: i915_gem_execbuffer2_ioctl()+0x2fb: call to gen8_canonical_addr() with UACCESS enabled
>>>>
>>>> using
>>>>> gcc --version
>>>> gcc (SUSE Linux) 7.4.1 20190424 [gcc-7-branch revision 270538]
>>>>
>>>> .o and .config files are attached.
>>>
>>> Does this fix it?
>>
>> This patch produces this message:
>>
>> drivers/gpu/drm/i915/gem/i915_gem_execbuffer.o: warning: objtool: i915_gem_execbuffer2_ioctl()+0x2fb: call to sign_extend64.constprop.20() with UACCESS enabled
> 
> Ha, ok.  I guess we have to __always_inline that one too...

Yes, that takes care of the objtool warning.  Thanks.

Acked-by: Randy Dunlap <rdunlap@...radead.org> # build-tested

> diff --git a/drivers/gpu/drm/i915/gem/i915_gem_execbuffer.c b/drivers/gpu/drm/i915/gem/i915_gem_execbuffer.c
> index b5f6937369ea..7e111cb5b14b 100644
> --- a/drivers/gpu/drm/i915/gem/i915_gem_execbuffer.c
> +++ b/drivers/gpu/drm/i915/gem/i915_gem_execbuffer.c
> @@ -284,7 +284,7 @@ struct i915_execbuffer {
>   * canonical form [63:48] == [47]."
>   */
>  #define GEN8_HIGH_ADDRESS_BIT 47
> -static inline u64 gen8_canonical_addr(u64 address)
> +static __always_inline u64 gen8_canonical_addr(u64 address)
>  {
>  	return sign_extend64(address, GEN8_HIGH_ADDRESS_BIT);
>  }
> diff --git a/include/linux/bitops.h b/include/linux/bitops.h
> index cf074bce3eb3..fae10792b198 100644
> --- a/include/linux/bitops.h
> +++ b/include/linux/bitops.h
> @@ -151,7 +151,7 @@ static inline __s32 sign_extend32(__u32 value, int index)
>   * @value: value to sign extend
>   * @index: 0 based bit index (0<=index<64) to sign bit
>   */
> -static inline __s64 sign_extend64(__u64 value, int index)
> +static __always_inline __s64 sign_extend64(__u64 value, int index)
>  {
>  	__u8 shift = 63 - index;
>  	return (__s64)(value << shift) >> shift;
> 


-- 
~Randy

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ