All of lore.kernel.org
 help / color / mirror / Atom feed
From: Luis Henriques <lhenriques@suse.com>
To: Tejun Heo <tj@kernel.org>
Cc: Dennis Zhou <dennisszhou@gmail.com>,
	Christoph Lameter <cl@linux.com>,
	linux-mm@kvack.org, linux-kernel@vger.kernel.org
Subject: Re: [PATCH 2/2] percpu: fix iteration to prevent skipping over block
Date: Thu, 28 Sep 2017 09:31:00 +0100	[thread overview]
Message-ID: <87lgkzkywr.fsf@hermes> (raw)
In-Reply-To: <20170927215125.GB15129@devbig577.frc2.facebook.com> (Tejun Heo's message of "Wed, 27 Sep 2017 14:51:25 -0700")

Tejun Heo <tj@kernel.org> writes:

> On Wed, Sep 27, 2017 at 04:35:00PM -0500, Dennis Zhou wrote:
>> The iterator functions pcpu_next_md_free_region and
>> pcpu_next_fit_region use the block offset to determine if they have
>> checked the area in the prior iteration. However, this causes an issue
>> when the block offset is greater than subsequent block contig hints. If
>> within the iterator it moves to check subsequent blocks, it may fail in
>> the second predicate due to the block offset not being cleared. Thus,
>> this causes the allocator to skip over blocks leading to false failures
>> when allocating from the reserved chunk. While this happens in the
>> general case as well, it will only fail if it cannot allocate a new
>> chunk.
>> 
>> This patch resets the block offset to 0 to pass the second predicate
>> when checking subseqent blocks within the iterator function.
>> 
>> Signed-off-by: Dennis Zhou <dennisszhou@gmail.com>
>> Reported-by: Luis Henriques <lhenriques@suse.com>
>
> Luis, can you please verify that this fixes the allocaiton failure you
> were seeing?

I can confirm that I'm no longer seeing the allocation failure after
applying these patches.  Feel free to add my:

Tested-by: Luis Henriques <lhenriques@suse.com>

Cheers,
-- 
Luis

--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@kvack.org.  For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>

WARNING: multiple messages have this Message-ID (diff)
From: Luis Henriques <lhenriques@suse.com>
To: Tejun Heo <tj@kernel.org>
Cc: Dennis Zhou <dennisszhou@gmail.com>,
	Christoph Lameter <cl@linux.com>,
	linux-mm@kvack.org, linux-kernel@vger.kernel.org
Subject: Re: [PATCH 2/2] percpu: fix iteration to prevent skipping over block
Date: Thu, 28 Sep 2017 09:31:00 +0100	[thread overview]
Message-ID: <87lgkzkywr.fsf@hermes> (raw)
In-Reply-To: <20170927215125.GB15129@devbig577.frc2.facebook.com> (Tejun Heo's message of "Wed, 27 Sep 2017 14:51:25 -0700")

Tejun Heo <tj@kernel.org> writes:

> On Wed, Sep 27, 2017 at 04:35:00PM -0500, Dennis Zhou wrote:
>> The iterator functions pcpu_next_md_free_region and
>> pcpu_next_fit_region use the block offset to determine if they have
>> checked the area in the prior iteration. However, this causes an issue
>> when the block offset is greater than subsequent block contig hints. If
>> within the iterator it moves to check subsequent blocks, it may fail in
>> the second predicate due to the block offset not being cleared. Thus,
>> this causes the allocator to skip over blocks leading to false failures
>> when allocating from the reserved chunk. While this happens in the
>> general case as well, it will only fail if it cannot allocate a new
>> chunk.
>> 
>> This patch resets the block offset to 0 to pass the second predicate
>> when checking subseqent blocks within the iterator function.
>> 
>> Signed-off-by: Dennis Zhou <dennisszhou@gmail.com>
>> Reported-by: Luis Henriques <lhenriques@suse.com>
>
> Luis, can you please verify that this fixes the allocaiton failure you
> were seeing?

I can confirm that I'm no longer seeing the allocation failure after
applying these patches.  Feel free to add my:

Tested-by: Luis Henriques <lhenriques@suse.com>

Cheers,
-- 
Luis

  reply	other threads:[~2017-09-28  8:31 UTC|newest]

Thread overview: 14+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-09-27 21:34 [PATCH 0/2] percpu: fix block iterators and reserved chunk stats Dennis Zhou
2017-09-27 21:34 ` Dennis Zhou
2017-09-27 21:34 ` [PATCH 1/2] percpu: fix starting offset for chunk statistics traversal Dennis Zhou
2017-09-27 21:34   ` Dennis Zhou
2017-09-27 21:46   ` Tejun Heo
2017-09-27 21:46     ` Tejun Heo
2017-09-27 21:35 ` [PATCH 2/2] percpu: fix iteration to prevent skipping over block Dennis Zhou
2017-09-27 21:35   ` Dennis Zhou
2017-09-27 21:51   ` Tejun Heo
2017-09-27 21:51     ` Tejun Heo
2017-09-28  8:31     ` Luis Henriques [this message]
2017-09-28  8:31       ` Luis Henriques
2017-09-28 14:40   ` Tejun Heo
2017-09-28 14:40     ` Tejun Heo

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=87lgkzkywr.fsf@hermes \
    --to=lhenriques@suse.com \
    --cc=cl@linux.com \
    --cc=dennisszhou@gmail.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-mm@kvack.org \
    --cc=tj@kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.