From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mailout1.w1.samsung.com (mailout1.w1.samsung.com [210.118.77.11]) by dpdk.org (Postfix) with ESMTP id 6F3F15F65 for ; Tue, 2 Oct 2018 16:13:17 +0200 (CEST) Received: from eucas1p1.samsung.com (unknown [182.198.249.206]) by mailout1.w1.samsung.com (KnoxPortal) with ESMTP id 20181002141316euoutp01467bd8146ed5684d0f6e64fbd2420aaf~Z0CMfgad33020430204euoutp01t for ; Tue, 2 Oct 2018 14:13:16 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 mailout1.w1.samsung.com 20181002141316euoutp01467bd8146ed5684d0f6e64fbd2420aaf~Z0CMfgad33020430204euoutp01t DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=samsung.com; s=mail20170921; t=1538489597; bh=JIItqwFl2M6PYml81wE5XdJmEsJ0hJt2J6Jt9MgMfVA=; h=Subject:To:Cc:From:Date:In-Reply-To:References:From; b=oCloFF9zqNm9Z7Bi4EfPYdcMgAuevg8miUapDwUt9O2fZqNuBFsvCKMnzLCJdHRMy Ne1ncdoOaroxPRwQsbyZOfu5IlAA4iMmRElTVDEHY6xcfd4TdDMiXzJXLUgf5keFPH dhqWMS7HtoLR6i8A110G9PNkT+FB09hUE4BVMDzs= Received: from eusmges2new.samsung.com (unknown [203.254.199.244]) by eucas1p2.samsung.com (KnoxPortal) with ESMTP id 20181002141316eucas1p29dce14f92acfd2752a1a78c3c1919537~Z0CL_-lEm1772717727eucas1p2l; Tue, 2 Oct 2018 14:13:16 +0000 (GMT) Received: from eucas1p1.samsung.com ( [182.198.249.206]) by eusmges2new.samsung.com (EUCPMTA) with SMTP id A9.65.04294.CFC73BB5; Tue, 2 Oct 2018 15:13:16 +0100 (BST) Received: from eusmtrp2.samsung.com (unknown [182.198.249.139]) by eucas1p1.samsung.com (KnoxPortal) with ESMTPA id 20181002141315eucas1p16c87759329eeb374528bcb70a2d71ee4~Z0CLLGpN92076620766eucas1p1R; Tue, 2 Oct 2018 14:13:15 +0000 (GMT) Received: from eusmgms2.samsung.com (unknown [182.198.249.180]) by eusmtrp2.samsung.com (KnoxPortal) with ESMTP id 20181002141315eusmtrp28cc7482b1d7d876af8fb143b4102b042~Z0CK6A91Z0405304053eusmtrp2r; Tue, 2 Oct 2018 14:13:15 +0000 (GMT) X-AuditID: cbfec7f4-84fff700000010c6-71-5bb37cfcf302 Received: from eusmtip1.samsung.com ( [203.254.199.221]) by eusmgms2.samsung.com (EUCPMTA) with SMTP id EF.64.04128.BFC73BB5; Tue, 2 Oct 2018 15:13:15 +0100 (BST) Received: from [106.109.129.180] (unknown [106.109.129.180]) by eusmtip1.samsung.com (KnoxPortal) with ESMTPA id 20181002141314eusmtip11f844795bb46052223b497500425987b~Z0CKOQLBY0199501995eusmtip1C; Tue, 2 Oct 2018 14:13:14 +0000 (GMT) To: Maxime Coquelin , dev@dpdk.org, tiwei.bie@intel.com, zhihong.wang@intel.com, jfreimann@redhat.com, nicknickolaev@gmail.com, bruce.richardson@intel.com, alejandro.lucero@netronome.com Cc: dgilbert@redhat.com, stable@dpdk.org From: Ilya Maximets Date: Tue, 2 Oct 2018 17:15:31 +0300 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.9.1 MIME-Version: 1.0 In-Reply-To: <20181002093651.24795-2-maxime.coquelin@redhat.com> Content-Language: en-GB Content-Transfer-Encoding: 7bit X-Brightmail-Tracker: H4sIAAAAAAAAA02Sa0hTYRjHe885O+c4WxynsodZGMsiu3iJiEOUGiitC6hEFPqhTnpQUads aRmCI82pK28f1EakEWpOzbzkpURoiJqWkqk5UyvQyNKFFyjTNLczyW+/5/88//d5/vDSuLRT JKdjVNd5tYqLU5Biorlruf/wampjuI9+nGL7FyowdtToz1oWWjD2XvMkxQ7pljf0mnKC7cpu J9i+RyMEu5a1SrHPtesY2/iuEAtwVP4pKxcp2wwTlPJx+wymLNZ/wZU/O4ZJZW6TEYWQYeIT kXxcTDKv9va7Ko7O7MvGE5skN7/2mUVaZBHnIAcamKNQ/jIH5SAxLWWeIChqTCeEYgmB+W4P JRSLCOq1L8lNy/RYNSk0KhG8HSjFhGIegU5XteGnaWfGD+583mPVXZhxBEPlgzY3zuyHuuEp ZGWSOQS91Z02JhgPmO2dsLErcxk6Pz+ysYRxgtf3pwgrOzAB8DA9ExPekcHtpSqRwO7QMvcA ty4DZoQC3cwbTDAnw2B7DSacHQirzSuUwM7wvbvJzjthva3UPpMGnzJmkPBQFoJi05q94Q9N P/opazKc8YS6F96CfApajVrcKgOzA0bnnIR7dkBhc7FdlkBWplSY9oCVV5W4wHIwWxapfKQw bElp2JLMsCWZ4f/eMkQYkYxP0sRH8ZojKv6Gl4aL1ySporwiEuIb0Mbf6lvrXmpFL1avmRBD I8V2yTb3hnCpiEvWpMSbENC4wkWSyzWGSyWRXMotXp1wRZ0Ux2tMyI0mFDJJxcP6cCkTxV3n Y3k+kVdvdjHaQa5FT2UX5c+Wyb89Z45VQ57jmK64ZFSXEFTgU6L/KBrInzw/JwHd7zBzbeyl k1UHQ/DxveRsYJAltDPOMpDgGyKfVoz9Mrd5pjagC0uu20pMnruNvXp9weC8pezDOZoLPr4r LaKULHwvm1CHBvvXBvgPVrp1nC2i8lQoY9/Kt9MKQhPN+R7A1RruHxB3WbZXAwAA X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFrrGIsWRmVeSWpSXmKPExsVy+t/xu7q/azZHG3xZxWNx7tMyJosbq+wt 3n3azmTRu+0eu8WV9p/sFufWLGWxONa5h8Xi9MJrLBb/Ov6wW2xt+M9ksfniJCYHbo9fC5ay euycdZfdY/Gel0we07sfMnu833eVzaNvyyrGALYoPZui/NKSVIWM/OISW6VoQwsjPUNLCz0j E0s9Q2PzWCsjUyV9O5uU1JzMstQifbsEvYy2053MBVt4K56dvsnawPiOq4uRk0NCwETi6a3V bF2MXBxCAksZJc5+vs8KkZCS+PHrApQtLPHnWhcbiC0k8J5RovN0YBcjB4ewgJ1E6wNlkF4R gTuMEltmnWEEqWEW0JBYf/UJI8TQk4wSres3gzWzCehInFp9BKyIF6h5YvsbFhCbRUBF4s2p u2BxUYEIidXLX7BC1AhKnJz5BKyGU8BBYl5zGxPEAnWJP/MuMUPY4hJNX1ayQtjyEtvfzmGe wCg0C0n7LCQts5C0zELSsoCRZRWjSGppcW56brGRXnFibnFpXrpecn7uJkZgnG479nPLDsau d8GHGAU4GJV4eBnkN0ULsSaWFVfmHmKU4GBWEuHtS9wcLcSbklhZlVqUH19UmpNafIjRFOi5 icxSosn5wBSSVxJvaGpobmFpaG5sbmxmoSTOe96gMkpIID2xJDU7NbUgtQimj4mDU6qB8Uau 8SKZ7/zztpg5ld7MD3p6MzG+gz++Y+YBrqVOCpI6XfyfZx6Z7Po0TN9See3xKxObP/fLTXu1 OCjdeB6Df+/qG7JHfNg0xSMe74rn/6SSvireQvLHeyvXIvPzB+Z81IqaPltPaYHifVF9i6/B 621bv7huUVIRYt0U++mJZPAbh5VK54PjlFiKMxINtZiLihMBRUx4a+kCAAA= Message-Id: <20181002141315eucas1p16c87759329eeb374528bcb70a2d71ee4~Z0CLLGpN92076620766eucas1p1R@eucas1p1.samsung.com> X-CMS-MailID: 20181002141315eucas1p16c87759329eeb374528bcb70a2d71ee4 X-Msg-Generator: CA Content-Type: text/plain; charset="utf-8" X-RootMTR: 20181002093710epcas2p41edcdf02797df82d10457b464a72be77 X-EPHeader: CA CMS-TYPE: 201P X-CMS-RootMailID: 20181002093710epcas2p41edcdf02797df82d10457b464a72be77 References: <20181002093651.24795-1-maxime.coquelin@redhat.com> <20181002093651.24795-2-maxime.coquelin@redhat.com> Subject: Re: [dpdk-dev] [PATCH v2 01/17] vhost: fix messages error checks X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 02 Oct 2018 14:13:17 -0000 On 02.10.2018 12:36, Maxime Coquelin wrote: > Return of message handling has now changed to an enum that can > take non-negative value that is not zero in case a reply is > needed. But the code checking the variable afterwards has not > been updated, leading to success messages handling being > treated as errors. > > Fixes: 4e601952cae6 ("vhost: message handling implemented as a callback array") > > Signed-off-by: Maxime Coquelin > --- > lib/librte_vhost/vhost_user.c | 6 +++--- > 1 file changed, 3 insertions(+), 3 deletions(-) > > diff --git a/lib/librte_vhost/vhost_user.c b/lib/librte_vhost/vhost_user.c > index 7ef3fb4a4..060b41893 100644 > --- a/lib/librte_vhost/vhost_user.c > +++ b/lib/librte_vhost/vhost_user.c > @@ -1783,7 +1783,7 @@ vhost_user_msg_handler(int vid, int fd) > } > > skip_to_post_handle: > - if (!ret && dev->extern_ops.post_msg_handle) { > + if (ret != VH_RESULT_ERR && dev->extern_ops.post_msg_handle) { > uint32_t need_reply; > > ret = (*dev->extern_ops.post_msg_handle)( > @@ -1800,10 +1800,10 @@ vhost_user_msg_handler(int vid, int fd) > vhost_user_unlock_all_queue_pairs(dev); > > if (msg.flags & VHOST_USER_NEED_REPLY) { Maybe we need to reply here only if we didn't reply already (not VH_RESULT_REPLY) ? Otherwise, we could reply twice (with payload and with return code). > - msg.payload.u64 = !!ret; > + msg.payload.u64 = ret == VH_RESULT_ERR; > msg.size = sizeof(msg.payload.u64); > send_vhost_reply(fd, &msg); > - } else if (ret) { > + } else if (ret == VH_RESULT_ERR) { > RTE_LOG(ERR, VHOST_CONFIG, > "vhost message handling failed.\n"); > return -1; >