All of lore.kernel.org
 help / color / mirror / Atom feed
From: David Marchand <david.marchand@redhat.com>
To: "Burakov, Anatoly" <anatoly.burakov@intel.com>
Cc: dev <dev@dpdk.org>, Maxime Coquelin <maxime.coquelin@redhat.com>,
	 Sebastian Scheinkman <sscheink@redhat.com>,
	dpdk stable <stable@dpdk.org>, Aaron Conole <aconole@redhat.com>
Subject: Re: [dpdk-dev] [PATCH] eal/linux: fix memory allocations in containers+SELinux
Date: Fri, 2 Oct 2020 11:36:43 +0200	[thread overview]
Message-ID: <CAJFAV8zRG7UYu7jbwcJoWF5YQWzcpRjGDyfw0dgZdKno2fZ5Mw@mail.gmail.com> (raw)
In-Reply-To: <CAJFAV8waAge4oJwbZ1Co_5iYym9h5u1xKMam=JNtE_vJ0hedPw@mail.gmail.com>

On Thu, Sep 17, 2020 at 4:47 PM David Marchand
<david.marchand@redhat.com> wrote:
>
> On Thu, Sep 17, 2020 at 4:17 PM Burakov, Anatoly
> <anatoly.burakov@intel.com> wrote:
> > Anonymous hugepages shouldn't matter, yes, but single-file segments mode
> > does fallocate() and remove - you have the remove part covered, but i'm
> > just curious if fallocate() would also cause any issues with SELinux.
>
> I found no hook in the kernel for fallocate + selinux...
> Looked into fallocate itself and it ends up validating lsm write
> access on the file.
>
> I don't have the full setup atm but since I could truncate and write
> to it, I'd say we are good.

I could not gain access to the same setup again.

FWIW, I tried with my reproducer:
- no issue with --in-memory option (with or without patch)

- error correctly detected (with this patch) in normal mode after restarting:

# \rm /dev/hugepages/rtemap_*
# LD_PRELOAD=libwrap.so dpdk-testpmd -w 0000:01:00.0 -- -i
[... working fine ...]
# LD_PRELOAD=libwrap.so dpdk-testpmd -w 0000:01:00.0 -- -i
EAL: Detected 28 lcore(s)
EAL: Detected 1 NUMA nodes
### called unlink for /var/run/dpdk/rte/mp_socket
EAL: Multi-process socket /var/run/dpdk/rte/mp_socket
EAL: Selected IOVA mode 'VA'
### refused unlinkat for rtemap_0
EAL: Probing VFIO support...
EAL: VFIO support initialized
### refused unlink for /dev/hugepages/rtemap_0
EAL: Couldn't get fd on hugepage file
EAL: error allocating rte services array
EAL: FATAL: rte_service_init() failed
EAL: rte_service_init() failed
EAL: Error - exiting with code: 1
  Cause: Cannot init EAL: Exec format error
### called unlink for /var/run/dpdk/rte/mp_socket

- error detected with legacy mode from first try (with or without
patch), since the memory allocator tries to remove unneeded hugepage
files in this mode, and reports failures for this:

# \rm /dev/hugepages/rtemap_*
# LD_PRELOAD=libwrap.so dpdk-testpmd -w 0000:01:00.0 --legacy-mem -m 2048 -- -i
EAL: Detected 28 lcore(s)
EAL: Detected 1 NUMA nodes
### called unlink for /var/run/dpdk/rte/mp_socket
EAL: Multi-process socket /var/run/dpdk/rte/mp_socket
EAL: Selected IOVA mode 'VA'
EAL: Probing VFIO support...
EAL: VFIO support initialized
### refused unlink for /dev/hugepages/rtemap_2
EAL: unmap_unneeded_hugepages(): Removing /dev/hugepages/rtemap_2
failed: Permission denied
EAL: Unmapping and locking hugepages failed!
EAL: FATAL: Cannot init memory
EAL: Cannot init memory
EAL: Error - exiting with code: 1
  Cause: Cannot init EAL: Cannot allocate memory
### called unlink for /var/run/dpdk/rte/mp_socket


-- 
David Marchand


  reply	other threads:[~2020-10-02  9:37 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-09-10 16:24 [dpdk-dev] [PATCH] eal/linux: fix memory allocations in containers+SELinux David Marchand
2020-09-11 12:46 ` Burakov, Anatoly
2020-09-17 13:47   ` David Marchand
2020-09-17 14:17     ` Burakov, Anatoly
2020-09-17 14:44       ` Aaron Conole
2020-09-17 14:47       ` David Marchand
2020-10-02  9:36         ` David Marchand [this message]
2020-10-02 12:12           ` Burakov, Anatoly
2020-10-05 23:13             ` Thomas Monjalon

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=CAJFAV8zRG7UYu7jbwcJoWF5YQWzcpRjGDyfw0dgZdKno2fZ5Mw@mail.gmail.com \
    --to=david.marchand@redhat.com \
    --cc=aconole@redhat.com \
    --cc=anatoly.burakov@intel.com \
    --cc=dev@dpdk.org \
    --cc=maxime.coquelin@redhat.com \
    --cc=sscheink@redhat.com \
    --cc=stable@dpdk.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.