Received: by 2002:a05:6a10:c604:0:0:0:0 with SMTP id y4csp270037pxt; Wed, 4 Aug 2021 22:26:55 -0700 (PDT) X-Google-Smtp-Source: ABdhPJz9A0W7dsxQtUE39nKBe4i+FmbL+WIWuaHtFAkzOATrLiWFhgEHRcbgdGNoqMrSU9OLmIKP X-Received: by 2002:a05:6602:134b:: with SMTP id i11mr466191iov.81.1628141215754; Wed, 04 Aug 2021 22:26:55 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1628141215; cv=none; d=google.com; s=arc-20160816; b=LjUBvun3vzz8JVYx4dOI/Xm0yZ62EpevC4V2u3zPkdixEyGoPJjeBHIVfHov7r+BUr vgJUrEretjnvwPrnad2VVHK2zeXjZUnjtwhVxpeV4P8PmrxHCv0/XQ8zQ/aJJLBPmSU3 PzeVaGBsVkFPi6AFQrjCm3Xj8uDO0Rt7FX9j/Kr6Mhogn/rUP6HBEu28vPhKo8ZzzvL8 yjaTbyuFGcfqTac6GTjmm1vBlgUhQKLqpvHldeYguMwAiKSb96zmSVRwbX1PoinpTQTf oe0tQ77MbQJ7hTk/so60av2nOZm0SebVuymUAD/AaiFUG1mb6QEqdMRmTTCUn943cx8k DcUw== 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=zqSJLdzYBiQGMhcj1u7bHoXE7egAMmO44r4bYkCkGKo=; b=cgAU9j/nz4/sgwCqn6q115b8hR9MQajP6lcEslwLipc3XDTeJxkgwaLl/Iq+c8GDng XP1TEKjiBz2uKyQxIWy3SFcULx1wX8Bd+iMJvRu4wWgW19ulG2iYit3MoPbLn9hAbeiu GQYvtxoCKiuEq5aucUF7Jy/rdILa91PZhtRgv5JGSkrs1L8TdNMb5ZA7rKWQ84mlxVcp CkQQQXXrfgJnLvi+P7zAH/YVxhU3UAGBJr+2uyTfUO5L95o4i96aWaWWlAnC+25+7yMX pgiIK5ST2Ju815xERI6iITNpt0819KMkdclS9l3WFDAFX4kd2zDOOZ7L/40Qa0mVDye+ +zmQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@bytedance-com.20150623.gappssmtp.com header.s=20150623 header.b=b+n1TkeA; 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 f7si4712192ioj.68.2021.08.04.22.26.44; Wed, 04 Aug 2021 22:26:55 -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=b+n1TkeA; 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 S237022AbhHEFOK (ORCPT + 99 others); Thu, 5 Aug 2021 01:14:10 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:56176 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S236991AbhHEFOI (ORCPT ); Thu, 5 Aug 2021 01:14:08 -0400 Received: from mail-pj1-x1031.google.com (mail-pj1-x1031.google.com [IPv6:2607:f8b0:4864:20::1031]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 5E092C061765 for ; Wed, 4 Aug 2021 22:13:55 -0700 (PDT) Received: by mail-pj1-x1031.google.com with SMTP id o44-20020a17090a0a2fb0290176ca3e5a2fso6935708pjo.1 for ; Wed, 04 Aug 2021 22:13:55 -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=zqSJLdzYBiQGMhcj1u7bHoXE7egAMmO44r4bYkCkGKo=; b=b+n1TkeAtCj+qnYZpSEJIylDr0/oSP6BMf41PPHp4DKcfq5gAveZNLRXKLvVQjxl0H fak7EC+x1IRv258amj8GvVwUebQE7Dy07PiG3TJCtt13Y8QJOctpOv8btT8xnftXZrNY 6jzdzNxPD97BdT2Vk+3KwjrdYqkdPKSpt9nexc+c9viuk4T5rrduSQPN4PLse77zdoMb CHxh85YIQg2lbU9AobV+1T0OyvlgCOTuqUd7Abse5gY0FfxNrtZ2fzkSZtRjZ5FyXn0p 0oBQPy18eCCsTgcMB/TPuG+0HPDgtD7Y0IXa/m+ncy1BAlX3oEE4K1RYzLdplmJpQ3ln mKMw== 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=zqSJLdzYBiQGMhcj1u7bHoXE7egAMmO44r4bYkCkGKo=; b=ZzdWk1zxEsWq3CtgxgcdomZcaUCR5N+Qh2UbuFL1V1d0MY6/mKid6sxOalQnHhcHcP 031sAupeZ5ncud21xeCCPKuK0O8QER8VtExFh9FqoaawEBOFvk0RbK1MhaV8f5ajdeX9 +Oz3J/so0Sy8LnvGnVi0oyV0kBzs/If8hnyXzbWVWH5UpZvcRynak+pZjW2pzab0j0I1 hFXGbfXRQySsG/Ku11aGqUOEgqPg1DXzD79y2zPM5r7C7fmTAgk3R1PZzLyWVd4owsCK sXUhxd4UjDH6O8EO5HTzDbKBJA5PrTml3BPX/IzOxZQDP/7nnSbTyoDZDM/IBaLQMOJ+ qO6A== X-Gm-Message-State: AOAM532bdQpAVELGYq+kYDTnP+z+hG6T8p/ULeQ9Sj8IDRq7DyOdPFX4 RQSuGpyFeINg7X18yGpF2JXkrw== X-Received: by 2002:a63:a1c:: with SMTP id 28mr1258262pgk.445.1628140434918; Wed, 04 Aug 2021 22:13:54 -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 k4sm4201098pjs.55.2021.08.04.22.13.52 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 04 Aug 2021 22:13:54 -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 v4 0/5] sockmap: add sockmap support for unix stream socket Date: Thu, 5 Aug 2021 05:13:32 +0000 Message-Id: <20210805051340.3798543-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 | 86 ++++++++++++++--- net/unix/unix_bpf.c | 93 ++++++++++++++----- .../selftests/bpf/prog_tests/sockmap_listen.c | 48 ++++++---- 4 files changed, 183 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 -- 2.20.1