From owner-freebsd-current@freebsd.org Sat Mar 28 16:35:54 2020 Return-Path: Delivered-To: freebsd-current@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id E28472A71D4 for ; Sat, 28 Mar 2020 16:35:54 +0000 (UTC) (envelope-from kp@FreeBSD.org) Received: from smtp.freebsd.org (smtp.freebsd.org [IPv6:2610:1c1:1:606c::24b:4]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "smtp.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 48qPVJ5lTqz49bg; Sat, 28 Mar 2020 16:35:52 +0000 (UTC) (envelope-from kp@FreeBSD.org) Received: from venus.codepro.be (venus.codepro.be [5.9.86.228]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "mx1.codepro.be", Issuer "Let's Encrypt Authority X3" (verified OK)) (Authenticated sender: kp) by smtp.freebsd.org (Postfix) with ESMTPSA id 2369AF3CE; Sat, 28 Mar 2020 16:35:45 +0000 (UTC) (envelope-from kp@FreeBSD.org) Received: by venus.codepro.be (Postfix, authenticated sender kp) id E279A15DC5; Sat, 28 Mar 2020 17:35:41 +0100 (CET) From: "Kristof Provost" To: FreeBSD-Current Cc: status-updates@freebsdfoundation.org Subject: Bridge project update (Week of March 23rd) Date: Sat, 28 Mar 2020 17:35:41 +0100 X-Mailer: MailMate (1.13.1r5671) Message-ID: <3386C86D-6752-4D42-83B2-82741923C0D2@FreeBSD.org> MIME-Version: 1.0 Content-Type: text/plain; charset="UTF-8"; format=flowed; markup=markdown Content-Transfer-Encoding: 8bit X-BeenThere: freebsd-current@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Discussions about the use of FreeBSD-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 28 Mar 2020 16:35:55 -0000 Hi, This week I got a prototype patch running, along the ideas discussed last week. Essentially, we keep the BRIDGE_LOCK for any add/delete of interfaces or rt entries, but use CK_LIST and epoch in the data path. This is a relatively straightforward change, and currently passes the regression tests (WITNESS/INVARIANTS enabled). I’ve also run traffic through it without issue. My current test setup fails to generate sufficient packets to truly stress the code. I’m hoping to get access to a more suitable setup next week so I can usefully measure the improvement. The prototype patch is also running on my home gateway right now. So far so good! Assuming no major issues come up in the next week or two I hope to post the patch for initial review in the near future. Best regards, Kristof