From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from gandalf.ozlabs.org (gandalf.ozlabs.org [150.107.74.76]) by passt.top (Postfix) with ESMTPS id 41D5D5A026D for ; Thu, 14 Dec 2023 03:15:51 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gibson.dropbear.id.au; s=202312; t=1702520145; bh=fjys9nl+Cn6u404KVfOvPP4XjEwM0hy7cjVHQ2TbukU=; h=From:To:Cc:Subject:Date:From; b=lYgiOtiG7J3yHXuGUjVjwBldUnnRswWT0EH82xFLXm7c1MAhno9fj1C9bBWZcdfVx 8a9s3dtXJhTl5DHg/jwm1cnCvOPpYpVUE+tw8D7fvCEj7rgk2FH/K+6oiwWHZIEFjV IbFyce02AZ7xsBIWP/SnaG5sn/lCUfO1ckt6AdA3GylJvse7KDnmLEqr4zxSE6JP1k K1Cq9r2YDJ0dY+sXOSNG5y8HFnlbtts8MP6QkeXqA8r/hZ8f67BVJCPpwbVdJjiC4h tbLNM3Ab27eJyKnPvQn5VjzZYfaEbvhPMmHjm5njCpPfgFXuVPg8z6JbsjMi0yApae Y2usgTtYzWTLw== Received: by gandalf.ozlabs.org (Postfix, from userid 1007) id 4SrGD10q7jz4wd6; Thu, 14 Dec 2023 13:15:45 +1100 (AEDT) From: David Gibson To: passt-dev@passt.top, Stefano Brivio Subject: [PATCH 0/8] Improve flow table based dispatch of timers and other handlers Date: Thu, 14 Dec 2023 13:15:33 +1100 Message-ID: <20231214021541.3925825-1-david@gibson.dropbear.id.au> X-Mailer: git-send-email 2.43.0 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Message-ID-Hash: W7KKLWTB5OULGYMBHUDMYVZYS7HXMVTR X-Message-ID-Hash: W7KKLWTB5OULGYMBHUDMYVZYS7HXMVTR X-MailFrom: dgibson@gandalf.ozlabs.org X-Mailman-Rule-Misses: dmarc-mitigation; no-senders; approved; emergency; loop; banned-address; member-moderation; nonmember-moderation; administrivia; implicit-dest; max-recipients; max-size; news-moderation; no-subject; digests; suspicious-header CC: David Gibson X-Mailman-Version: 3.3.8 Precedence: list List-Id: Development discussion and patches for passt Archived-At: Archived-At: List-Archive: List-Archive: List-Help: List-Owner: List-Post: List-Subscribe: List-Unsubscribe: There are still some thing dispatched explicitly in tcp.c and tcp_splice.c that make more sense to dispatch at the flow level, even with the current "stub" version of the flow table. This should be independent of my other outstanding series. David Gibson (8): flow: Make flow_table.h #include the protocol specific headers it needs treewide: Standardise on 'now' for current timestamp variables tcp, tcp_splice: Remove redundant handling from tcp_timer() tcp, tcp_splice: Move per-type cleanup logic into per-type helpers flow, tcp: Add flow-centric dispatch for deferred flow handling flow, tcp: Add handling for per-flow timers epoll: Better handling of number of epoll types tcp, tcp_splice: Avoid double layered dispatch for connected TCP sockets flow.c | 33 +++++++++++++++++++- flow.h | 3 ++ flow_table.h | 2 ++ icmp.c | 12 ++++---- icmp.h | 2 +- log.c | 34 ++++++++++----------- passt.c | 18 ++++++++--- passt.h | 8 +++-- tcp.c | 86 +++++++++++----------------------------------------- tcp.h | 2 +- tcp_conn.h | 5 +-- tcp_splice.c | 33 ++++++++++---------- tcp_splice.h | 4 +-- udp.c | 16 +++++----- udp.h | 2 +- 15 files changed, 129 insertions(+), 131 deletions(-) -- 2.43.0