All of lore.kernel.org
 help / color / mirror / Atom feed
From: Bart Van Assche <bvanassche@acm.org>
To: target-devel@vger.kernel.org
Subject: Re: [PATCH 02/10] target/core: Use kvcalloc() instead of open-coding it
Date: Fri, 16 Nov 2018 15:58:41 +0000	[thread overview]
Message-ID: <1542383921.100259.48.camel@acm.org> (raw)
In-Reply-To: <20181106171718.89594-3-bvanassche@acm.org>

On Fri, 2018-11-16 at 14:10 +-0100, David Disseldorp wrote:
+AD4 On Thu, 08 Nov 2018 15:17:45 -0800, Bart Van Assche wrote:
+AD4 +AD4 What makes you think that I dropped any of the +AF8AXw-GFP flags? The only purpose
+AD4 +AD4 of the +AF8AXw-GFP+AF8-NOWARN and +AF8AXw-GFP+AF8-RETRY+AF8-MAYFAIL flags is to make kcalloc() fail
+AD4 +AD4 quickly and silently.
+AD4 
+AD4 Are you confusing +AF8AXw-GFP+AF8-RETRY+AF8-MAYFAIL with +AF8AXw-GFP+AF8-NORETRY here?

No. Passing +AF8AXw-GFP+AF8-RETRY+AF8-MAYFAIL to a memory allocation function makes the memory
allocator try less hard than without that flag. From should+AF8-continue+AF8-reclaim():

	/+ACo
	 +ACo For +AF8AXw-GFP+AF8-RETRY+AF8-MAYFAIL allocations, stop reclaiming if the
	 +ACo full LRU list has been scanned and we are still failing
	 +ACo to reclaim pages. This full LRU scan is potentially
	 +ACo expensive but a +AF8AXw-GFP+AF8-RETRY+AF8-MAYFAIL caller really wants to succeed
	 +ACo-/

+AD4 +AD4 I'm not dropping these flags: as one can see in the
+AD4 +AD4 kvmalloc+AF8-node() implementation that function passes these flags to
+AD4 +AD4 kmalloc+AF8-node(). The source code I'm referring to is available in mm/util.c.
+AD4 
+AD4 I see that (given tag+AF8-num +ACo tag+AF8-size +AD4 PAGE+AF8-SIZE) +AF8AXw-GFP+AF8-NOWARN is added
+AD4 by kvmalloc+AF8-node(), but +AF8AXw-GFP+AF8-RETRY+AF8-MAYFAIL is dropped with your change,
+AD4 which sees +AF8AXw-GFP+AF8-NORETRY added in the +AD4-PAGE+AF8-SIZE path.

That's right. If you want I can mention this in the patch description.

Bart.

  parent reply	other threads:[~2018-11-16 15:58 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-11-06 17:17 [PATCH 02/10] target/core: Use kvcalloc() instead of open-coding it Bart Van Assche
2018-11-08 12:54 ` David Disseldorp
2018-11-08 23:17 ` Bart Van Assche
2018-11-16 13:10 ` David Disseldorp
2018-11-16 15:58 ` Bart Van Assche [this message]
2018-11-16 17:02 ` David Disseldorp

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=1542383921.100259.48.camel@acm.org \
    --to=bvanassche@acm.org \
    --cc=target-devel@vger.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.