From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-oi0-f44.google.com (mail-oi0-f44.google.com [209.85.218.44]) by dpdk.org (Postfix) with ESMTP id D65171B85D for ; Tue, 24 Oct 2017 23:25:12 +0200 (CEST) Received: by mail-oi0-f44.google.com with SMTP id a132so39742847oih.11 for ; Tue, 24 Oct 2017 14:25:12 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:from:date:message-id:subject:to; bh=EusQwTAxdUqA7TmNhD+WZtorzlN6c8dH5ynd6TJmiNs=; b=l6KMoHFzwfMDa54TzTe+IbIJgHxkPSRO7RZu7KoHDMOXMWeeCsoCk7bIHcbFe8O2bV kxaAowwts348g6ZsLum/a8eMzjdXIeSlnDdiA5e5pjJG0HZFiEClD86q1rt4GaGfVVYg gIydVaWFv7hQ1RbL/DefhoNsnwNpNaMmYG8pAwDkBxzHCbZB/0aFP2OcNull4+hw+PyY TN5Mt2yDnGcjx/l4/feRJDxUO6WO25/n74eptqG6SN9ajWpgfXjYxIuoJ85tv8Mu8yHl Qqegr+waCIIIKCCu3j4ERFsdkF/+mdQqYgqy7afN1/z2pmoNVaAOxFgP4QqVJZe5QX8Q RVKw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:from:date:message-id:subject:to; bh=EusQwTAxdUqA7TmNhD+WZtorzlN6c8dH5ynd6TJmiNs=; b=TPB6XjGAO29Hns/eaglVwL9PseDwTn5+btKJ0ytenHG3kIs3ja/Vkdo2FMQ6dEwHGx EofSANH0XgbmeYUfuyn3gph6+BMEKc1QQxZshzIA0zurZy0kNKuM7kH1sOb/3wR0nlBe 3RGE3tZRSIVVxAXldrxpH+tuplXbK1wsymgvP3rfGEV277V1vF7USZcWBROpy4c46crg tHBadBzv42MwLGl5Dgn8KVB+nowwjTsxKwpDTSwpCWu0H3EnuoWoM9TVbCOqN3cbX/1r p2qcEiWyIOV8s7q9bh/Avzv5d8780nE/yVMF63eEIOolvfpKWzlu8LzudsaO+TDl/pZQ JpQg== X-Gm-Message-State: AMCzsaU8BUMwlBhYiAGyYpUGyGDhpzZANYGncjCFa3tOHUbu+oUX86xt qwrs22iQxyvcYnBz27H1tY5CqmU8CBr9sWjV/ObO1vD2 X-Google-Smtp-Source: ABhQp+QS8VpJ7VFZ0INsekNMltZlwpdHTDRFORsh6mJV23xzzzhmlJdl+yYNIWDRLTJpQ+PX6IgySoWQHgJ0lvoOKAI= X-Received: by 10.157.47.163 with SMTP id r32mr24859otb.108.1508880311851; Tue, 24 Oct 2017 14:25:11 -0700 (PDT) MIME-Version: 1.0 Received: by 10.168.183.199 with HTTP; Tue, 24 Oct 2017 14:24:31 -0700 (PDT) From: Suryanathan P Date: Tue, 24 Oct 2017 17:24:31 -0400 Message-ID: To: dev@dpdk.org Content-Type: text/plain; charset="UTF-8" X-Content-Filtered-By: Mailman/MimeDel 2.1.15 Subject: [dpdk-dev] distributor crash with user assigned flow ids 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, 24 Oct 2017 21:25:13 -0000 Hi, We see a crash in the dpdk packet distributor library when the packets are assigned used defined flow ids. I was able to narrow down this issue to incorrect worker ids returned by the sse implementation of find_match_vec(). Debug: Non zero flow ids picked up from each mbuf in this burst (gdb) p flows $63 = {9521, 9521, 9521, 9521, 9521, 9521, 9521, 9521} There are eight workers: (gdb) p d->num_workers $64 = 8 And eight packets being processed in this burst (gdb) p pkts $65 = 8 A call using vec instructions returns incorrect worker ids: (gdb) call find_match_vec(d, &flows[0], &matches[0]) (gdb) p matches $66 = {9, 9, 9, 9, 9, 9, 9, 9} Where as, a call to the scalar implementation returns workers ids up to 8. A comment in rte_distributor_process_v1705() says the matches array now contain the intended worker ID (+1). So it makes sense to have worker ids up to eight. (0-7)+1 (gdb) call find_match_scalar(d, &flows[0], &matches[0]) (gdb) p matches $67 = {1, 1, 1, 0, 8, 0, 0, 0} Is this a bug in the sse implementation of the find match function? The function SEG faults when trying to access non-existent workers backlog structure: (gdb) p d->backlog[matches[j]-1] $76 = {start = 0, count = 1, pkts = {0, 0, 0, 0, 0, 0, 0, 0}, tags = 0x0} Regards, Suryanathan