lkml.org 
[lkml]   [2020]   [Sep]   [19]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
SubjectRe: [PATCH v2] sched, mm: Optimize current_gfp_context()
From
Date


On 9/18/20 11:18 PM, Waiman Long wrote:
> On 9/18/20 2:44 AM, Xu, Yanfei wrote:
>> Hi Waiman,
>>
>> On 8/12/20 6:29 AM, Andrew Morton wrote:
>>> On Thu, 18 Jun 2020 17:29:36 -0400 Waiman Long <longman@redhat.com>
>>> wrote:
>>>
>>>> The current_gfp_context() converts a number of PF_MEMALLOC_*
>>>> per-process
>>>> flags into the corresponding GFP_* flags for memory allocation. In
>>>> that function, current->flags is accessed 3 times. That may lead to
>>>> duplicated access of the same memory location.
>>>>
>> I have a puzzle about this comment, what's the meaning about "That may
>> lead to duplicated access of the same memory location". After using
>> variable 'pflags', will it not duplicated access the same memory
>> location?
>> Looking forward to your reply :)
>
> That condition usually won't happen on a non-debug kernel. However, if
> certain debugging capability is turned on, access to current will be
> compiled into a bunch of checks and memory accesses. So if current is
> used multiple times, the same set of codes will be duplicated the same
> number of times slowing down the operation and increasing code size. By
> accessing current once, we avoid this overhead in a debug kernel.
>
> Cheers,
> Longman
>
Hah, got it.
Thanks for your detailed explain!

cheers,
Yanfei

\
 
 \ /
  Last update: 2020-09-19 16:56    [W:0.084 / U:0.184 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site