From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-pg0-f67.google.com (mail-pg0-f67.google.com [74.125.83.67]) by dpdk.org (Postfix) with ESMTP id B45AB5F2C for ; Sat, 28 Apr 2018 03:24:44 +0200 (CEST) Received: by mail-pg0-f67.google.com with SMTP id j11-v6so2717926pgf.2 for ; Fri, 27 Apr 2018 18:24:44 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=networkplumber-org.20150623.gappssmtp.com; s=20150623; h=date:from:to:cc:subject:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=dS33AmQazy9xys9ZTGHq0CVOHP9x1QnH5sOJ+Q6/1/4=; b=DQYhuY1Z4kVdkV7u4VhX9cEETZjFdQ0VUVv2cmz4FdELxmXTuM57Kd1H1cnXg+Ig+x mBgMw/q7eLoe7N4rQ0pqy9ieHi2Lh2uevp3E9e1GCWFfhy5HDagYObtKg1dZ/XrrDDuh PcrrzArSXqOy4sA9g9BhOJgCaLDe25wCZAtZbTdNMYXxfbHyZFY9clvW+Wv3N65LhCHt 0DLcwveiJWlaJnR9ar5TuNcYgDFyxeN+46f+xuQW8880G3cBlTIdKGxTg8J7nwSqGNKp h+svTw5RGdgFRYEbncDGZwSpj9TH7tGHytkvN+tG42tPqXiXMpUy8od5KWBC5qz+nWgz bZuw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:date:from:to:cc:subject:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=dS33AmQazy9xys9ZTGHq0CVOHP9x1QnH5sOJ+Q6/1/4=; b=ZR72MrgUvldL1oN71eMaDhncSx1HoOUK82KRfx4rrg81PDmIPzCwF/jCIWsTyGf2pH jvs1nkyRpUHmpN0gzShPtCqpivx90gCbxykHEJSljArmJnRHWO/TDunUBy/yzWVpYgkg BltNfpRfuQBQQUiwUivnWcaJoZ1tmTUE85HV0siwSVeFfpaDhSc5J9Pvs7cxuTkANqxL Zw+4KMIPSEf0axKCN2Jxv1Fc0NFqQO0pbgjc9m1GcMPbSs+MY1Hrk0ru4peYBZKYkkAx 14vYtbWP+wDLrSO+7T/yYGHm84x2cn2uyDOd3gai4AK6L5AKKDBuYuFuDtGjFADlCHV5 p4xQ== X-Gm-Message-State: ALQs6tCuir+TiUpAVXyMNqRo1FdmEmwExW525BQSSVttPGTXqPqHHseq cUuTvP3hjIzBd6OF1JoMd+Zzvw== X-Google-Smtp-Source: AB8JxZoqovVFIuvzZvATfrYj/gH0qbB8kyEd91Sop83XOlPW/XmF9QJaM3K+InmQOoicR+PqoagIZA== X-Received: by 2002:a17:902:8f8b:: with SMTP id z11-v6mr698719plo.203.1524878683874; Fri, 27 Apr 2018 18:24:43 -0700 (PDT) Received: from xeon-e3 (204-195-71-95.wavecable.com. [204.195.71.95]) by smtp.gmail.com with ESMTPSA id v16sm4489848pfl.12.2018.04.27.18.24.43 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Fri, 27 Apr 2018 18:24:43 -0700 (PDT) Date: Fri, 27 Apr 2018 18:24:42 -0700 From: Stephen Hemminger To: Thomas Monjalon Cc: Shreyansh Jain , Jianfeng Tan , dev@dpdk.org, Olivier Matz , Anatoly Burakov Message-ID: <20180427182442.1384459d@xeon-e3> In-Reply-To: <13763738.ezdo4hZiut@xps> References: <1524847302-88110-1-git-send-email-jianfeng.tan@intel.com> <20180427103945.511a118e@xeon-e3> <13763738.ezdo4hZiut@xps> MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Subject: Re: [dpdk-dev] [PATCH] eal: fix threads block on barrier 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: Sat, 28 Apr 2018 01:24:45 -0000 On Fri, 27 Apr 2018 21:52:26 +0200 Thomas Monjalon wrote: > 27/04/2018 19:45, Shreyansh Jain: > > From: Stephen Hemminger [mailto:stephen@networkplumber.org] > > > Shreyansh Jain wrote: > > > > From: Jianfeng Tan > > > > > Below commit introduced pthread barrier for synchronization. > > > > > But two IPC threads block on the barrier, and never wake up. > > > > > > > > > > (gdb) bt > > > > > #0 futex_wait (private=0, expected=0, futex_word=0x7fffffffcff4) > > > > > at ../sysdeps/unix/sysv/linux/futex-internal.h:61 > > > > > #1 futex_wait_simple (private=0, expected=0, > > > > > futex_word=0x7fffffffcff4) > > > > > at ../sysdeps/nptl/futex-internal.h:135 > > > > > #2 __pthread_barrier_wait (barrier=0x7fffffffcff0) at > > > > > pthread_barrier_wait.c:184 > > > > > #3 rte_thread_init (arg=0x7fffffffcfe0) > > > > > at ../dpdk/lib/librte_eal/common/eal_common_thread.c:160 > > > > > #4 start_thread (arg=0x7ffff6ecf700) at pthread_create.c:333 > > > > > #5 clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109 > > > > > > > > > > Through analysis, we find the barrier defined on the stack > > > > > could be the root cause. This patch will change to use heap > > > > > memory as the barrier. > > > > > > > > > > Fixes: d651ee4919cd ("eal: set affinity for control threads") > > > > > > > > > > Cc: Olivier Matz > > > > > Cc: Anatoly Burakov > > > > > > > > > > Signed-off-by: Jianfeng Tan > > > > > > > > Though I have seen Stephen's comment on this (possibly a library > > > bug), this at least fixes an issue which was dogging dpaa and dpaa2 - > > > generating bus errors and futex errors with variation in core masks > > > provided to applications. > > > > > > > > Thanks a lot for this. > > > > > > > > Acked-by: Shreyansh Jain > > Applied, thanks Jianfeng. > > > > Could you verify there is not a use after free by using valgrind or > > > some library that poisons memory on free. > > > > I will probably do that soon - but for the time being I don't want > > this issue to block the dpaa/dpaa2 for RC1 - these drivers were > > completely unusable without this patch. > > Please Shreyansh, continue the analysis of this bug. > Thanks > > The pthread_barrier should also be destroyed when it is no longer needed.