From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.129.124]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 81EBD2C11EB for ; Tue, 23 Dec 2025 16:50:57 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=170.10.129.124 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1766508659; cv=none; b=WnSKqWdq/R4i4dH3Zi4hWpSBYRp4V8tHY95X5EkDzFg5nnPzQVLLxGHVcv0xi7sGRsNV5K0Xw5WzN0FVSd1df5x6IwrMjQuXC8XdSm1FN20CykA1Cpy6J3+bYkOOTNBtiyoFma130mDey/7WVid/M2zyp/6qJgh8J4zPQLv5rqM= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1766508659; c=relaxed/simple; bh=oeeTQc9kh8tiDzBTogIJh4tx2yTZCyvYeGymBiksIG0=; h=Date:From:To:Cc:Subject:Message-ID:References:MIME-Version: Content-Type:Content-Disposition:In-Reply-To; b=VqwsCeQTMtoUgmN8FrosaLbQsiVtjYudwWnbZMevjUFgSXpRsDDyO5+wPg509DaB2grEt2SUwgLXbuY8SH42FGbBwjVlmRPfKAjMLQrf3ashSvFJRqv0aTvqU38kmLVMgKSCJtmujrtoFrZyyDzxCRaUE71WCs0KOX2/2CVuoAY= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=redhat.com; spf=pass smtp.mailfrom=redhat.com; dkim=pass (1024-bit key) header.d=redhat.com header.i=@redhat.com header.b=fZTQXHXb; dkim=pass (2048-bit key) header.d=redhat.com header.i=@redhat.com header.b=iwHHbJOy; arc=none smtp.client-ip=170.10.129.124 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=redhat.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=redhat.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=redhat.com header.i=@redhat.com header.b="fZTQXHXb"; dkim=pass (2048-bit key) header.d=redhat.com header.i=@redhat.com header.b="iwHHbJOy" DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1766508656; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=rqJClaecT7bQO5wRvV9Omgfdvbdj1KDOA3tj0f3pjp8=; b=fZTQXHXbOBuOjDK0wYjq0eRqbhfaACrnrEGrydO4+yQdDJ/qQHeM+Swd473koXiWtUr3zi YDLvyHGVtsjglIttMVurUp5JAv4adNOjeaz+hDSdin4oVDrPTk6ZAButtdWoJL5vwjTUtv ZrRr3JL075OoZD4huHwXnUKHoxfMEfc= Received: from mail-ej1-f69.google.com (mail-ej1-f69.google.com [209.85.218.69]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-561-ien7lst6OeSCKQ7zHBjqhA-1; Tue, 23 Dec 2025 11:50:55 -0500 X-MC-Unique: ien7lst6OeSCKQ7zHBjqhA-1 X-Mimecast-MFC-AGG-ID: ien7lst6OeSCKQ7zHBjqhA_1766508654 Received: by mail-ej1-f69.google.com with SMTP id a640c23a62f3a-b73586b1195so77493766b.3 for ; Tue, 23 Dec 2025 08:50:54 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=google; t=1766508654; x=1767113454; darn=vger.kernel.org; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:from:to:cc:subject:date:message-id:reply-to; bh=rqJClaecT7bQO5wRvV9Omgfdvbdj1KDOA3tj0f3pjp8=; b=iwHHbJOy6nNfjlc97CiSkM8c6/Z3hYTO1WmmwDzIvl54G4LP47OSw6qG2M4u/T3+56 8tuJ4qL0+k8G7VdeudxnY3NZcaUvOXUXuxwIjwsKvBkTHYzxv+OKbckcHI2V9nuFRY56 hDCOBooxmgEsWAN3JFwjyvKtOP1x9ujjrCB2A0xbfddCLiae+rSD9It3GLLogxWQ9A3D tkSZrpJuzfV71qDbko4O3Lg7jPfg01Q8csjh7/clt3O8Vt3AYBpE3Y9FapEM3A0vaO0q 9RQxxVqjXlccnXGlvuoM7ok1SP/gUGVFpu8Kn+mYq5u0UwtSTiNd+8oHuGNQdTgmiLzk FlIg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1766508654; x=1767113454; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:x-gm-gg:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=rqJClaecT7bQO5wRvV9Omgfdvbdj1KDOA3tj0f3pjp8=; b=flnSRq76uXn86+XKdbWDRAx0aQfOmF5uGPDcIHqsoo0Bvln1chUQni1UHUu8g20Fdf oG0FjDJR8PX1jDM4qnVvc0j/P6wT+H50J17snIwUG9zQ68W1KYj3l13FdJfvF2n/rL05 AXUvGx0bZG5UjpGHen0vvfXO/jcT/IHlK6MfbKOi+RRKlsEPotbSsfihUIMhGAuLXxdP j0ePziMrV6djy3zbRup99px2WRgnIRRaIwLacL+t6TJFum0MaT+K7XiDmPTjsrlN8NSE SOcVDt3T2SBmvC61OV4bUIcfX66igjt+g6wt17ah8q9ZpMQct/6qY+HrYtt6qLcoj5Ov U5yg== X-Forwarded-Encrypted: i=1; AJvYcCUn0e7ahGi1ucLH5wvutgkRPVOx0UQz1B6qYNWyR20vP0A9i9UsrzoZjE+JVl3NRsqvbpv8QwNCs7AUmY4=@vger.kernel.org X-Gm-Message-State: AOJu0YzAZVEATpC9ywuU45r0bz23/LYhsgH0jaeVd36SYsd1WR2o3a7U Cp1mOQcsl9FFo+/Zzs/+xQ/UVjNrp5XD2JY5TRHe0v09MWLGIxnjATEWB+CJ1F6WUqecGWZlsfU DJ9WQxt7zg03DHXi7H2D/AXexm9lcFw+//b/MmI0yWKs5wlC/pcBP0nskwwg7wUWcqg== X-Gm-Gg: AY/fxX4kUNfHOMpcnbDez74iylfgf7HPU4Vdpjs6VljJ+o/LEhXH+aQR56WIkawO1Me 2kmMw2wW6AQFcD6BYtqDw4lBGf9a7V384xcDJ+GdFvdZDwHiBjWDUTvmC+FWncVj9w4SyeANzCp KmznN3+w8cc2TP6gZTzPuQ8bsmo9xw6zmr2het5WE9H7eMqJWmieqWQWfJFBbIvAiJbwHIop6sX yXr7zKWMbNECPNe3vDwYwa8Sljs0OD4d18matmrmyyplteqpkoWxZ/G5AEwRTwAvbKg/va6GaHP gEcIWFf1j4mcsNu7d0WtwAMt86jGq/Dy0WbAGlMA7Z13go06pCNxYDYANzAd537f0yKSFQm5PFf iGDnMBRdalsXAKzlw X-Received: by 2002:a17:907:72cd:b0:b76:791d:1c5c with SMTP id a640c23a62f3a-b8036eba988mr1360525566b.9.1766508653962; Tue, 23 Dec 2025 08:50:53 -0800 (PST) X-Google-Smtp-Source: AGHT+IFngH3YLsbRayu5ybgJw8PMv72mVXGzRctJqQbYOaNglPLvvDbrvjX+L7BBepansUQFsg6KPg== X-Received: by 2002:a17:907:72cd:b0:b76:791d:1c5c with SMTP id a640c23a62f3a-b8036eba988mr1360523666b.9.1766508653521; Tue, 23 Dec 2025 08:50:53 -0800 (PST) Received: from sgarzare-redhat ([193.207.129.231]) by smtp.gmail.com with ESMTPSA id a640c23a62f3a-b8037de11e5sm1431627666b.39.2025.12.23.08.50.51 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 23 Dec 2025 08:50:52 -0800 (PST) Date: Tue, 23 Dec 2025 17:50:45 +0100 From: Stefano Garzarella To: Michal Luczaj Cc: "David S. Miller" , Eric Dumazet , Jakub Kicinski , Paolo Abeni , Simon Horman , Arseniy Krasnov , virtualization@lists.linux.dev, netdev@vger.kernel.org, linux-kernel@vger.kernel.org Subject: Re: [PATCH net 2/2] vsock/test: Test setting SO_ZEROCOPY on accept()ed socket Message-ID: References: <20251223-vsock-child-sock-custom-sockopt-v1-0-4654a75d0f58@rbox.co> <20251223-vsock-child-sock-custom-sockopt-v1-2-4654a75d0f58@rbox.co> <1c877a67-778e-424c-8c23-9e4d799fac2f@rbox.co> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii; format=flowed Content-Disposition: inline In-Reply-To: On Tue, Dec 23, 2025 at 02:20:33PM +0100, Stefano Garzarella wrote: >On Tue, Dec 23, 2025 at 12:10:25PM +0100, Michal Luczaj wrote: >>On 12/23/25 11:27, Stefano Garzarella wrote: >>>On Tue, Dec 23, 2025 at 10:15:29AM +0100, Michal Luczaj wrote: >>>>Make sure setsockopt(SOL_SOCKET, SO_ZEROCOPY) on an accept()ed socket is >>>>handled by vsock's implementation. >>>> >>>>Signed-off-by: Michal Luczaj >>>>--- >>>>tools/testing/vsock/vsock_test.c | 33 +++++++++++++++++++++++++++++++++ >>>>1 file changed, 33 insertions(+) >>>> >>>>diff --git a/tools/testing/vsock/vsock_test.c b/tools/testing/vsock/vsock_test.c >>>>index 9e1250790f33..8ec8f0844e22 100644 >>>>--- a/tools/testing/vsock/vsock_test.c >>>>+++ b/tools/testing/vsock/vsock_test.c >>>>@@ -2192,6 +2192,34 @@ static void test_stream_nolinger_server(const struct test_opts *opts) >>>> close(fd); >>>>} >>>> >>>>+static void test_stream_accepted_setsockopt_client(const struct test_opts *opts) >>>>+{ >>>>+ int fd; >>>>+ >>>>+ fd = vsock_stream_connect(opts->peer_cid, opts->peer_port); >>>>+ if (fd < 0) { >>>>+ perror("connect"); >>>>+ exit(EXIT_FAILURE); >>>>+ } >>>>+ >>>>+ vsock_wait_remote_close(fd); On a second look, why we need to wait the remote close? can we just have a control message? I'm not sure even on that, I mean why this peer can't close the connection while the other is checking if it's able to set zerocopy? >>>>+ close(fd); >>>>+} >>>>+ >>>>+static void test_stream_accepted_setsockopt_server(const struct test_opts *opts) >>>>+{ >>>>+ int fd; >>>>+ >>>>+ fd = vsock_stream_accept(VMADDR_CID_ANY, opts->peer_port, NULL); >>>>+ if (fd < 0) { >>>>+ perror("accept"); >>>>+ exit(EXIT_FAILURE); >>>>+ } >>>>+ >>>>+ enable_so_zerocopy_check(fd); >>> >>>This test is passing on my env also without the patch applied. >>> >>>Is that expected? >> >>Oh, no, definitely not. It fails for me: >>36 - SOCK_STREAM accept()ed socket custom setsockopt()...36 - SOCK_STREAM >>accept()ed socket custom setsockopt()...setsockopt err: Operation not >>supported (95) >>setsockopt SO_ZEROCOPY val 1 > >aaa, right, the server is failing, sorry ;-) > >Reviewed-by: Stefano Garzarella >> >>I have no idea what's going on :) >> > >In my suite, I'm checking the client, and if the last test fails only >on the server, I'm missing it. I'd fix my suite, and maybe also >vsock_test adding another sync point. Added a full barrier here: https://lore.kernel.org/netdev/20251223162210.43976-1-sgarzare@redhat.com Thanks, Stefano