All of lore.kernel.org
 help / color / mirror / Atom feed
From: Aaron Conole <aconole@redhat.com>
To: Thomas Monjalon <thomas@monjalon.net>
Cc: dev@dpdk.org, David Marchand <david.marchand@redhat.com>,
	anatoly.burakov@intel.com,
	Bruce Richardson <bruce.richardson@intel.com>
Subject: Re: [dpdk-dev] [PATCH] test: make hugepage check more robust under Linux
Date: Tue, 06 Apr 2021 08:33:07 -0400	[thread overview]
Message-ID: <f7ta6qbr3ss.fsf@dhcp-25.97.bos.redhat.com> (raw)
In-Reply-To: <2080877.JXBMkDg2Jp@thomas> (Thomas Monjalon's message of "Wed, 17 Mar 2021 15:57:31 +0100")

Thomas Monjalon <thomas@monjalon.net> writes:

> 17/03/2021 15:44, Aaron Conole:
>> The hugepage test really needs to check multiple things on Linux:
>> 
>> 1. Are hugepages reserved in the system?
>> 
>> 2. Is the hugepage mountpoint available so that we can allocate them?
>> 
>> 3. Do we have permissions to write into the hugepage mountpoint?
>> 
>> The existing hugepage check only verifies the first.  On some setups,
>> a non-root user won't have access to the mountpoint for hugepages to
>> be allocated and that needs to be reflected in the test as well.  Add
>> such checks for Linux OS to give a more check when running test suites.
>
> Requirements 2 & 3 are optional.
> You don't need a mount point if using the option --in-memory.

That's true, but it seems to break a few of the unit tests without.
I'll clarify the commit message.

Additionally, I thought it would be simple to just incorporate your
suggestions - but it seems that meson / ninja doesn't have cascading
dependencies the way 'make' does (or, I haven't figured out from the
syntax how to do that) - a 'run_command' gets resolved at configure
time and it doesn't seem that we can make a run_target depend on another
run_target since dependencies are on file outputs.  Maybe we do some
kind of trickery here where we write a file that the build script reads?

I am trying to figure out how best to accomplish this - suggestions
welcome.

> [...]
>> +	perm=""
>
> perm= should do the same.
>
>> +	for mount in `mount | grep hugetlbfs | awk '{ print $3; }'`; do
>
> Please prefer $() syntax.

Okay

> Are spaces in awk required?

I'm not sure - I don't think so.

>> +		test ! -w $mount/. || perm="$mount"
>
> Why /. ?

Habit.  I will remove it.

>> +	done
>> +	if [ "$perm" = "" -o "$nr_hugepages" = "0" ]; then
>
> = "" can be replaced with -z
> "0" can be simply 0

Done.

>> +		echo 0
>> +	else
>> +		echo $nr_hugepages
>> +	fi


  reply	other threads:[~2021-04-06 12:33 UTC|newest]

Thread overview: 13+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-03-17 14:44 [dpdk-dev] [PATCH] test: make hugepage check more robust under Linux Aaron Conole
2021-03-17 14:57 ` Thomas Monjalon
2021-04-06 12:33   ` Aaron Conole [this message]
2021-04-06 12:58     ` Bruce Richardson
2021-04-06 14:20       ` Aaron Conole
2021-04-06 14:50         ` Bruce Richardson
2021-04-09 15:06           ` Aaron Conole
2021-04-09 15:33             ` Thomas Monjalon
2021-04-12 11:33               ` David Marchand
2021-04-09 15:40             ` Bruce Richardson
2021-03-19 13:41 ` David Marchand
2021-03-19 14:34   ` Aaron Conole
2023-06-29 16:30     ` Stephen Hemminger

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=f7ta6qbr3ss.fsf@dhcp-25.97.bos.redhat.com \
    --to=aconole@redhat.com \
    --cc=anatoly.burakov@intel.com \
    --cc=bruce.richardson@intel.com \
    --cc=david.marchand@redhat.com \
    --cc=dev@dpdk.org \
    --cc=thomas@monjalon.net \
    /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.