Received: by 2002:a05:6a10:c7d3:0:0:0:0 with SMTP id h19csp24186pxy; Fri, 13 Aug 2021 21:29:18 -0700 (PDT) X-Google-Smtp-Source: ABdhPJxHSYKxfDQ3S86pOlqJq/78c8gF6RuZhvgSR4fHv6r+y5b0agSOU3hMq8ApYqnc9gs0oPNn X-Received: by 2002:a92:cf0d:: with SMTP id c13mr4020955ilo.49.1628915357812; Fri, 13 Aug 2021 21:29:17 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1628915357; cv=none; d=google.com; s=arc-20160816; b=citoN5tiDd2oQnO3152iHsBsm0fn55J8gaI+o+QC7D2nIJ/1h3AtkiWGDps/7HQrSD LrIiIY6gm2QAJHEKwVqubW24hghlkFwAZ9noDfQBY3R66AqwO2TN1B2ISwhAwKtGWRcP Kp29WoAXPUNiw4y4hTM5ZvWuE0dVWutu057QPuMDGc5KcyUAO56xqDlTJj18b41rZ2az AoHaa0aCFaYogoz1kmDgXbVFbYTGUAqRvXK4lPCElZtpAJCu6QdrHr0TozMCG7/CZXhN GyutVuMSCeS4dCXJpZ3FeNIof11aTY1R4N6nH0yfFIRE3pwbwZU1vYxc/fEe6N/q1JFS 8HqA== 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=98Zw1c+cW5zD1PWqvSDU2uTGAumLzHONU8NOH1AIF5I=; b=AbQHtAbYQXPHYXrB8I7QCeTjnCmwxBwWXhAtVKFknVaLTL0TdiWJ9i+SPNC5aoNG7o RqMlFghJNUw7vC/eufQdEAfLWIAOfMVAhkAoV38cSTeTt00qjMEglFOJjc97pQHl0hCW 3Poas1YlKddk8N9BpDOU94vgTbK8gudN5MZuCUZ7iQT2eljUyXaC/62ii/BI2/gJjv88 lo/LpfULhC/kv/K18gs1iyB/oMGR7OOHZK5eAk6sJUXK7+Z267XDY+G7QzhBweJk/rGV q2cehleO5kY4cYtPIHIdktePQdQvdgyJa7chXIUSVc8mQV0sYRcr6H2TQAXISbwmwjuS FEFA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@bytedance-com.20150623.gappssmtp.com header.s=20150623 header.b=Q+n9F+W0; 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 n11si4162232ilt.25.2021.08.13.21.29.03; Fri, 13 Aug 2021 21:29:17 -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=Q+n9F+W0; 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 S229532AbhHNE2c (ORCPT + 99 others); Sat, 14 Aug 2021 00:28:32 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:57410 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229563AbhHNE2b (ORCPT ); Sat, 14 Aug 2021 00:28:31 -0400 Received: from mail-pl1-x62c.google.com (mail-pl1-x62c.google.com [IPv6:2607:f8b0:4864:20::62c]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 92A18C061756 for ; Fri, 13 Aug 2021 21:28:03 -0700 (PDT) Received: by mail-pl1-x62c.google.com with SMTP id n12so13914895plf.4 for ; Fri, 13 Aug 2021 21:28:03 -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=98Zw1c+cW5zD1PWqvSDU2uTGAumLzHONU8NOH1AIF5I=; b=Q+n9F+W0iE4jTCL7Mvp/I7AUBl/CYg8DmsQPZ4i6rESsU+NiRwyMPe1ELQzycWiJ8T iggFvHBQbvcCOT6Sua9JJFxeOEd3LtZTdAKpsa4WRUlg7zpCdxLRuqsUlzrS6po9rGfz jXLRF2llxEaxYAf7qGq82p826zRhYLSXo7jzpsFzjGSRy9XakD7ilP5FAmc0ytA/or+0 ayZMEL5jOexlgyz9V90nQKpWTqfag//EM49J8A25fBmcfop3KI74YPmFKqU9on4aARwR DwPvMrogbTwjkq67njC4A4Srh9Ct0YAM81FkIadcCcwJ3oOCwbuo0W1MCLLozxCTDrkG +0Qg== 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=98Zw1c+cW5zD1PWqvSDU2uTGAumLzHONU8NOH1AIF5I=; b=GCfjALjdvkb6V6D1+UUgiFmZ7rTsqvoK4U8rFYJrcxGjRe/TV3Oq/j+uv+qQwJJ4yo K73yR+XDlAVjPYIBO5ShtAr/kTnqlGl5YcD1Ly37sf9WNhmQbSugIn2yBOqhdhHLar9a W8WZGoGNSkk7L6srwMqO1GGLeSdXWFsfNgsdk7aG5NM0lio/H39IzFBiPGL11lHU3Jg1 kKArS2znQo7EF7WxOxClGfdNiC1NKbNZRlEr1pHFjkWdJYBa2LIhUaZywSOzbOeE7/P7 l70QDP/AUaiO61mVBVQI8e8VUjm1zdBGhnlS+TOGhHKPBZqbqAyuaXmX/IsRYx6E7tSY H5ew== X-Gm-Message-State: AOAM5325Ij/4MmtjE4nt1AI1cZSgAP9wAIilO2Jdcq/uW+97ITIJsUnZ kmVMNDleVnTuFTaR3mNKYmvVBQ== X-Received: by 2002:a62:5291:0:b029:397:6587:1af6 with SMTP id g139-20020a6252910000b029039765871af6mr5497726pfb.47.1628915282938; Fri, 13 Aug 2021 21:28:02 -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 q21sm4420492pgk.71.2021.08.13.21.28.01 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 13 Aug 2021 21:28:02 -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, John Fastabend , Jakub Sitnicki , "David S. Miller" , Jakub Kicinski , Daniel Borkmann , Lorenz Bauer , Alexei Starovoitov , Andrii Nakryiko , Martin KaFai Lau , Song Liu , Yonghong Song , KP Singh , Shuah Khan , Al Viro , Christian Brauner , Rao Shoaib , Johan Almbladh , linux-kernel@vger.kernel.org, bpf@vger.kernel.org, linux-kselftest@vger.kernel.org Subject: [PATCH bpf-next v6 0/5] sockmap: add sockmap support for unix stream socket Date: Sat, 14 Aug 2021 04:27:45 +0000 Message-Id: <20210814042754.3351268-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 | 91 +++++++++++++++--- net/unix/unix_bpf.c | 93 ++++++++++++++----- .../selftests/bpf/prog_tests/sockmap_listen.c | 48 ++++++---- 4 files changed, 187 insertions(+), 53 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. v5 -> v6 : - fix READ_ONCE by reading to a local variable first. For the series: Acked-by: John Fastabend Acked-by: Jakub Sitnicki Also rebased on bpf-next -- 2.20.1