[ovs-dev] [PATCH V2] netdev-dpdk: fix mempool_configure error state

Darrell Ball dball at vmware.com
Wed May 3 02:00:31 UTC 2017


Acked-by: Darrell Ball <dlu998 at gmail.com>

On 3/13/17, 4:46 AM, "ovs-dev-bounces at openvswitch.org on behalf of Stokes, Ian" <ovs-dev-bounces at openvswitch.org on behalf of ian.stokes at intel.com> wrote:

    > netdev_dpdk_mempool_configure obtains a handle to a DPDK memory pool via a
    > call to dpdk_mp_get. If dpdk_mp_get fails, the former informs the user
    > that insufficient memory is available, and  returns ENOMEM. However, this
    > is potentially misleading, as there are a number of reasons why creation
    > of a mempool can fail (as per rte_mempool_create),
    > including:
    >    - insufficient memory available
    >    - mempool already exists
    >    - other memory allocation error
    > 
    > Update the error log to reflect this fact, and return rte_errno in the
    > event of error, instead of ENOMEM.
    > 
    > Signed-off-by: Mark Kavanagh <mark.b.kavanagh at intel.com>
    > Fixes: 0072e931 ("netdev-dpdk: add support for jumbo frames")
    > ---
    >  lib/netdev-dpdk.c | 9 +++++----
    >  1 file changed, 5 insertions(+), 4 deletions(-)
    > 
    > diff --git a/lib/netdev-dpdk.c b/lib/netdev-dpdk.c index ddc651b..858d995
    > 100644
    > --- a/lib/netdev-dpdk.c
    > +++ b/lib/netdev-dpdk.c
    > @@ -571,10 +571,11 @@ netdev_dpdk_mempool_configure(struct netdev_dpdk
    > *dev)
    > 
    >      mp = dpdk_mp_get(dev->requested_socket_id,
    > FRAME_LEN_TO_MTU(buf_size));
    >      if (!mp) {
    > -        VLOG_ERR("Insufficient memory to create memory pool for netdev "
    > -                 "%s, with MTU %d on socket %d\n",
    > -                 dev->up.name, dev->requested_mtu, dev-
    > >requested_socket_id);
    > -        return ENOMEM;
    > +        VLOG_ERR("Failed to create memory pool for netdev "
    > +                 "%s, with MTU %d on socket %d: %s\n",
    > +                 dev->up.name, dev->requested_mtu, dev-
    > >requested_socket_id,
    > +                 rte_strerror(rte_errno));
    > +        return rte_errno;
    >      } else {
    >          dpdk_mp_put(dev->dpdk_mp);
    >          dev->dpdk_mp = mp;
    > --
    
    LGTM,
    
    Acked-by: Ian Stokes <ian.stokes at intel.com>
    _______________________________________________
    dev mailing list
    dev at openvswitch.org
    https://urldefense.proofpoint.com/v2/url?u=https-3A__mail.openvswitch.org_mailman_listinfo_ovs-2Ddev&d=DwICAg&c=uilaK90D4TOVoH58JNXRgQ&r=BVhFA09CGX7JQ5Ih-uZnsw&m=rHNfhapnunpdSieFttCrIEo6q9W5-AWLYwHHz2_xGcc&s=XuLt4RImAA0v8RMjewVcw0qEIwbaRN9g5ZUWHgpl1q0&e= 
    



More information about the dev mailing list