eal/linux: fix log levels for unable to read pagemap
Checks
Commit Message
Commit cdc242f260e7 says:
For Linux kernel 4.0 and newer, the ability to obtain
physical page frame numbers for unprivileged users from
/proc/self/pagemap was removed. Instead, when an IOMMU
is present, simply choose our own DMA addresses instead.
In this case the user still sees error messages, so adjust
the log levels. Later, other checks will ensure that errors
are logged in the appropriate cases.
Fixes: cdc242f260e7 ("eal/linux: support running as unprivileged user")
Cc: stable@dpdk.org
Signed-off-by: Kevin Traynor <ktraynor@redhat.com>
---
lib/librte_eal/linuxapp/eal/eal_memory.c | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
Comments
Kevin Traynor <ktraynor@redhat.com> writes:
> Commit cdc242f260e7 says:
> For Linux kernel 4.0 and newer, the ability to obtain
> physical page frame numbers for unprivileged users from
> /proc/self/pagemap was removed. Instead, when an IOMMU
> is present, simply choose our own DMA addresses instead.
>
> In this case the user still sees error messages, so adjust
> the log levels. Later, other checks will ensure that errors
> are logged in the appropriate cases.
>
> Fixes: cdc242f260e7 ("eal/linux: support running as unprivileged user")
> Cc: stable@dpdk.org
>
> Signed-off-by: Kevin Traynor <ktraynor@redhat.com>
> ---
Acked-by: Aaron Conole <aconole@redhat.com>
Thanks, Kevin!
14/02/2019 20:31, Aaron Conole:
> Kevin Traynor <ktraynor@redhat.com> writes:
>
> > Commit cdc242f260e7 says:
> > For Linux kernel 4.0 and newer, the ability to obtain
> > physical page frame numbers for unprivileged users from
> > /proc/self/pagemap was removed. Instead, when an IOMMU
> > is present, simply choose our own DMA addresses instead.
> >
> > In this case the user still sees error messages, so adjust
> > the log levels. Later, other checks will ensure that errors
> > are logged in the appropriate cases.
> >
> > Fixes: cdc242f260e7 ("eal/linux: support running as unprivileged user")
> > Cc: stable@dpdk.org
> >
> > Signed-off-by: Kevin Traynor <ktraynor@redhat.com>
> > ---
>
> Acked-by: Aaron Conole <aconole@redhat.com>
Applied, thanks
@@ -115,5 +115,5 @@ rte_mem_virt2phy(const void *virtaddr)
fd = open("/proc/self/pagemap", O_RDONLY);
if (fd < 0) {
- RTE_LOG(ERR, EAL, "%s(): cannot open /proc/self/pagemap: %s\n",
+ RTE_LOG(INFO, EAL, "%s(): cannot open /proc/self/pagemap: %s\n",
__func__, strerror(errno));
return RTE_BAD_IOVA;
@@ -123,5 +123,5 @@ rte_mem_virt2phy(const void *virtaddr)
offset = sizeof(uint64_t) * virt_pfn;
if (lseek(fd, offset, SEEK_SET) == (off_t) -1) {
- RTE_LOG(ERR, EAL, "%s(): seek error in /proc/self/pagemap: %s\n",
+ RTE_LOG(INFO, EAL, "%s(): seek error in /proc/self/pagemap: %s\n",
__func__, strerror(errno));
close(fd);
@@ -132,9 +132,9 @@ rte_mem_virt2phy(const void *virtaddr)
close(fd);
if (retval < 0) {
- RTE_LOG(ERR, EAL, "%s(): cannot read /proc/self/pagemap: %s\n",
+ RTE_LOG(INFO, EAL, "%s(): cannot read /proc/self/pagemap: %s\n",
__func__, strerror(errno));
return RTE_BAD_IOVA;
} else if (retval != PFN_MASK_SIZE) {
- RTE_LOG(ERR, EAL, "%s(): read %d bytes from /proc/self/pagemap "
+ RTE_LOG(INFO, EAL, "%s(): read %d bytes from /proc/self/pagemap "
"but expected %d:\n",
__func__, retval, PFN_MASK_SIZE);