Received: by 2002:a05:6a10:c604:0:0:0:0 with SMTP id y4csp187124pxt; Thu, 5 Aug 2021 22:38:41 -0700 (PDT) X-Google-Smtp-Source: ABdhPJxHryA1vqhjmrAY56ozuH54N5XIxFb3xJpI82KWBwhLHSMzRmXHHbKzd7WMj4hPz2vbdbcF X-Received: by 2002:a17:906:9450:: with SMTP id z16mr8268998ejx.52.1628228320791; Thu, 05 Aug 2021 22:38:40 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1628228320; cv=none; d=google.com; s=arc-20160816; b=sjbG/zPbsKJX+Tk2IpgpcBQWY9mQkzO7A5cDyVblNIzE4AKcREEwzaz/QKN8Ucyy5B CXHcR+kqO82TTsEpiB0Szn0ZhJCxRHWnLnRNhl/OwIx5v6A2AHVW/msQeECMoj5AN30M vyT3NuGNofR34G/PagjCyenHjgqVSbrgXU1LHD02e8wgAdwfC8a4hr5+2WdoVC0NcpCX G6ochU78n750v9EXyVIcgpMapCa9kHayRoaYki6jGd5A2ruNnY3sd4tIFt5LL7WqCz94 ZArGMuNdEBwi0bPpvROtI553Nduc4CwcqwzAGffY5nX2xKEQzPJ4A1xNngugatsX14mS wfFA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :message-id:date:subject:cc:to:from:dkim-signature; bh=KcO4lvjnu3cqSavtHa0vi62hVqJGIYj0uCi6qLCTukk=; b=nsocNulGpMKT3T6s4Apt2C5DoPz3uN/wvshtsoHHaBELZ0RHalHV9eXNnRnFOWWL7n xmxMim+Hj36kV9m9qBHg/iLOMBZa/FlDGy87VOLvlay7PlLXRwAP5HWVAnaMk1g0nAKQ gX0pagbtVaUrazl5MvARz9QMTlMwNV47QVcK5R+v3lRzwagNMlyzBnbMriY19TakEx/9 nLMrglHxUdNqD5pi65Y21tTybgQkqgAR0fs8eGB+6hYKp6eMXLqOmxaRofxmzP7r/yOF cNF1O2joxVsl2lyxhGDVWlNsbkZf4AKGMusFAnctBsNHTLWsCk+mOA4ka3SziQNw8uZj wL0w== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@bytedance-com.20150623.gappssmtp.com header.s=20150623 header.b=pqenJBml; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=bytedance.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id di27si2876362edb.169.2021.08.05.22.37.55; Thu, 05 Aug 2021 22:38:40 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@bytedance-com.20150623.gappssmtp.com header.s=20150623 header.b=pqenJBml; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=bytedance.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S240700AbhHEWfU (ORCPT + 99 others); Thu, 5 Aug 2021 18:35:20 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:40698 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S240533AbhHEWfT (ORCPT ); Thu, 5 Aug 2021 18:35:19 -0400 Received: from mail-pj1-x102b.google.com (mail-pj1-x102b.google.com [IPv6:2607:f8b0:4864:20::102b]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 37A9DC061798 for ; Thu, 5 Aug 2021 15:35:04 -0700 (PDT) Received: by mail-pj1-x102b.google.com with SMTP id dw2-20020a17090b0942b0290177cb475142so18487157pjb.2 for ; Thu, 05 Aug 2021 15:35:04 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bytedance-com.20150623.gappssmtp.com; s=20150623; h=from:to:cc:subject:date:message-id:mime-version :content-transfer-encoding; bh=KcO4lvjnu3cqSavtHa0vi62hVqJGIYj0uCi6qLCTukk=; b=pqenJBmlitgkdTgYvxHX0fWULNvELRnrDRZbQXoUtoAjR9cn8Lsv0UPnniV1MTke1w oAeOqLI0K6nbDWMshXQmZ3G+rrP02ae+izq+HJLbXEYRrnT5DTamX6AztS7QCgVDnVSJ U+TMHcOcaQGOwzPXZPqNy+i/tMvnlDmjoob5Sei+Q7oIB8ulQldD2EUsX0Fwdn2dbzHj s66yEVKily6FLePbVKUtNnAI94TIUokp2BapbXBp7dVaU4a8yT++MPg1i10HY7k39JrB /+9OBQBPXrAiFqlibpcW9pMjxLwkCLuJE/Zq4mA+z0tfWzeP0TwlCBrhsl9v4unQkuTL Lq5g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:mime-version :content-transfer-encoding; bh=KcO4lvjnu3cqSavtHa0vi62hVqJGIYj0uCi6qLCTukk=; b=tvzAAh8qQbgotJZydHUDnM5Scnm735l+ctKxBw8Oh2m8cpNl3hTKja0389XTe6o3sc KKPZ9IRzDEhPAXRmjk+56O3X7zHkKy4G1dlNYXdoM9hO+0xLG38CblpERBm90oJzovv4 9aXFRTSemN1BdI3uJ9T5gVUlML1FFA4/qJyNiyLSxTI61wTYaSd0cvDOicAh4B7v2Jg0 dFuPuTOu6nTWn+O0QWSN9lUHBkidTkBEsfWFaThDdhtEYCLjQEP2NtIwR0iL+sX5Xouu +Lm9N70goHQ4vjwN/c4USpbIPWq1ZGHu6qTQoazHpjAQ6FdsgKdR2vEhAAROsewUoAA0 R5dQ== X-Gm-Message-State: AOAM531dr3dMtnJwTs1cH+yHVBfu6mYW3O7LvCocaKkVZ28RWPEPLadt RjqWUJjrLMvcOyh8jw4nZAowGg== X-Received: by 2002:a63:86c8:: with SMTP id x191mr467778pgd.166.1628202903769; Thu, 05 Aug 2021 15:35:03 -0700 (PDT) Received: from ip-10-124-121-13.byted.org (ec2-54-241-92-238.us-west-1.compute.amazonaws.com. [54.241.92.238]) by smtp.gmail.com with ESMTPSA id z8sm7931638pfa.113.2021.08.05.15.35.01 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 05 Aug 2021 15:35:03 -0700 (PDT) From: Jiang Wang To: netdev@vger.kernel.org Cc: cong.wang@bytedance.com, duanxiongchun@bytedance.com, xieyongji@bytedance.com, chaiwen.cc@bytedance.com, "David S. Miller" , Jakub Kicinski , John Fastabend , Daniel Borkmann , Jakub Sitnicki , Lorenz Bauer , Alexei Starovoitov , Andrii Nakryiko , Martin KaFai Lau , Song Liu , Yonghong Song , KP Singh , Shuah Khan , Al Viro , Christian Brauner , Johan Almbladh , linux-kernel@vger.kernel.org, bpf@vger.kernel.org, linux-kselftest@vger.kernel.org Subject: [PATCH bpf-next v5 0/5] sockmap: add sockmap support for unix stream socket Date: Thu, 5 Aug 2021 22:34:37 +0000 Message-Id: <20210805223445.624330-1-jiang.wang@bytedance.com> X-Mailer: git-send-email 2.20.1 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org This patch series add support for unix stream type for sockmap. Sockmap already supports TCP, UDP, unix dgram types. The unix stream support is similar to unix dgram. Also add selftests for unix stream type in sockmap tests. Jiang Wang (5): af_unix: add read_sock for stream socket types af_unix: add unix_stream_proto for sockmap selftest/bpf: add tests for sockmap with unix stream type. selftest/bpf: change udp to inet in some function names selftest/bpf: add new tests in sockmap for unix stream to tcp. include/net/af_unix.h | 8 +- net/unix/af_unix.c | 87 ++++++++++++++--- net/unix/unix_bpf.c | 93 ++++++++++++++----- .../selftests/bpf/prog_tests/sockmap_listen.c | 48 ++++++---- 4 files changed, 184 insertions(+), 52 deletions(-) v1 -> v2 : - Call unhash in shutdown. - Clean up unix_create1 a bit. - Return -ENOTCONN if socket is not connected. v2 -> v3 : - check for stream type in update_proto - remove intermediate variable in __unix_stream_recvmsg - fix compile warning in unix_stream_recvmsg v3 -> v4 : - remove sk_is_unix_stream, just check TCP_ESTABLISHED for UNIX sockets. - add READ_ONCE in unix_dgram_recvmsg - remove type check in unix_stream_bpf_update_proto v4 -> v5 : - add two missing READ_ONCE for sk_prot. -- 2.20.1