From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id DFFE1A034F; Wed, 31 Mar 2021 09:12:52 +0200 (CEST) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id CBBF2406A3; Wed, 31 Mar 2021 09:12:52 +0200 (CEST) Received: from mail-io1-f42.google.com (mail-io1-f42.google.com [209.85.166.42]) by mails.dpdk.org (Postfix) with ESMTP id 69E8940141 for ; Wed, 31 Mar 2021 09:12:51 +0200 (CEST) Received: by mail-io1-f42.google.com with SMTP id z136so19062414iof.10 for ; Wed, 31 Mar 2021 00:12:51 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=S7/7f2zjqi6/KNMprpeVUGkM0b5ymkIrCobOa5BzsQE=; b=PlCc5SbzAWY2VFS4Qd82HKApO4pByAvLC2lNLdTWSS//t21TqDTLtf6qmlmfRhmGRJ D3TPSo5hixQE4FYwLXMRyCbGTgcogJDrZRzyMonlrlGhjaac5SL6G5rDCcnmWs4ZClgy PyESNxfPfhOgLqggA9PfMrfdpbDwFVNZhT0Q8uw4Uhzm5jucXW/8LoySNcYkqpPVJw49 Pe/+cs9RBBhqVPg7HGJjHB+kaCHcdvzLMt397sI8vmeAu6YvLEVjilijuqyJE2S1/n2T E7090PDXRBhsoqFjdvkeAqYOY149o49sP8FAs153BQvGGmfcOqFDbnaHp00TGNmeu3Yj wtYg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=S7/7f2zjqi6/KNMprpeVUGkM0b5ymkIrCobOa5BzsQE=; b=SEnsqJhCFDPGIXoJMmg0Ab6zx3Ve1G4EkyoRNNcxzjP+Br0njK0vVZOpHLwitawoN0 PqN0SpHXE/4M4pc8TTQIUubN0NL7PPY7dfBFcCEU3WeCQI9tddQ6OvX1ACRIPIXef9Cf NCPAXUrpHjMfZWkWrylWyA3mqJetsQmfGwBsWGiCDL03/mivdIAk1AaA+IhQJmMO1aZH YGQ9xKpMPpuhDO/dbTG2bqtO9kskKQpcPEATbhGyIq5unDeZg7Dh3q14qAEqVaris1Ia FA5eJWf8dA+w4Keg2Yf66I6PVgIC/KIofreP/dJpttysq4mTFJSH8uPLWCACLixYhivS MMBA== X-Gm-Message-State: AOAM532YZf4c9mvQomZeM6mhM8I0SFudGqGAFx5PnqdMgwP99B6H5D2M xuJRFS1lcfpMF9SdGG7g5ZNYdhNHCPzArVTfgLI= X-Google-Smtp-Source: ABdhPJwMZH6SGsDk0YY2spsqvsjHHr5fRKbGc5VMaENGxdATWQcBTKE+zhYwwB2Us0wAqkCK78aJYhP5aJhKmTUM2zA= X-Received: by 2002:a6b:b7cd:: with SMTP id h196mr1317887iof.59.1617174770769; Wed, 31 Mar 2021 00:12:50 -0700 (PDT) MIME-Version: 1.0 References: <20210331134319.3035-1-wenwux.ma@intel.com> In-Reply-To: <20210331134319.3035-1-wenwux.ma@intel.com> From: Jerin Jacob Date: Wed, 31 Mar 2021 12:42:34 +0530 Message-ID: To: Wenwu Ma Cc: Olivier Matz , dpdk-dev Content-Type: text/plain; charset="UTF-8" Subject: Re: [dpdk-dev] [PATCH] mbuf: Fix illegal pointer access to mempool members X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" On Wed, Mar 31, 2021 at 7:19 AM Wenwu Ma wrote: > > Before accessing the private data of mempool in > function rte_pktmbuf_priv_size() and rte_pktmbuf_data_room_size(), > it is necessary to determine whether the private data exists, > otherwise it will cause null pointer access. > > Signed-off-by: Wenwu Ma > --- > lib/librte_mbuf/rte_mbuf.h | 6 ++++++ > 1 file changed, 6 insertions(+) > > diff --git a/lib/librte_mbuf/rte_mbuf.h b/lib/librte_mbuf/rte_mbuf.h > index c4c9ebfaa..6c2559550 100644 > --- a/lib/librte_mbuf/rte_mbuf.h > +++ b/lib/librte_mbuf/rte_mbuf.h > @@ -811,6 +811,9 @@ rte_pktmbuf_data_room_size(struct rte_mempool *mp) > { > struct rte_pktmbuf_pool_private *mbp_priv; > > + if (mp->private_data_size < sizeof(struct rte_pktmbuf_pool_private)) > + return 0; If mp->private_data_size updated in the slow path at mempool create time, why not have this sanity check in the slow path? > + > mbp_priv = (struct rte_pktmbuf_pool_private *)rte_mempool_get_priv(mp); > return mbp_priv->mbuf_data_room_size; > } > @@ -832,6 +835,9 @@ rte_pktmbuf_priv_size(struct rte_mempool *mp) > { > struct rte_pktmbuf_pool_private *mbp_priv; > > + if (mp->private_data_size < sizeof(struct rte_pktmbuf_pool_private)) > + return 0; > + > mbp_priv = (struct rte_pktmbuf_pool_private *)rte_mempool_get_priv(mp); > return mbp_priv->mbuf_priv_size; > } > -- > 2.25.1 >