From: Bagas Sanjaya <bagasdotme@gmail.com>
To: Shachar Kagan <skagan@nvidia.com>,
"edumazet@google.com" <edumazet@google.com>
Cc: Linux Kernel Mailing List <linux-kernel@vger.kernel.org>,
Linux Networking <netdev@vger.kernel.org>,
Linux Regressions <regressions@lists.linux.dev>,
"kuba@kernel.org" <kuba@kernel.org>,
Jason Gunthorpe <jgg@nvidia.com>,
Yishai Hadas <yishaih@nvidia.com>, Ido Kalir <idok@nvidia.com>,
Topaz Uliel <topazu@nvidia.com>,
Shirly Ohnona <shirlyo@nvidia.com>,
Ziyad Atiyyeh <ziyadat@nvidia.com>
Subject: Re: Bug report connect to VM with Vagrant
Date: Thu, 30 Nov 2023 21:10:48 +0700 [thread overview]
Message-ID: <ZWiX6NtanFyx4lmw@archie.me> (raw)
In-Reply-To: <MN2PR12MB44863139E562A59329E89DBEB982A@MN2PR12MB4486.namprd12.prod.outlook.com>
[-- Attachment #1: Type: text/plain, Size: 3853 bytes --]
On Thu, Nov 30, 2023 at 01:55:06PM +0000, Shachar Kagan wrote:
> Hi Eric,
>
> I have an issue that bisection pointed at this patch:
> commit 0a8de364ff7a14558e9676f424283148110384d6
> tcp: no longer abort SYN_SENT when receiving some ICMP
>
> Full commit message at [1].
>
> The issue appears while using Vagrant to manage nested VMs.
> The steps are:
> * create vagrant file
> * vagrant up
> * vagrant halt (VM is created but shut down)
> * vagrant up - fail
>
> Turn on a VM with ‘Vagrant up’ fails when the VM is in halt state. When the VM hasn't been created yet, 'Vagrant up' passes.
> The failure occurs in the Net-SSH connection to the VM step.
> Vagrant error is ‘Guest communication could not be established! This is usually because SSH is not running, the authentication information was changed, or some other networking issue.'
> We use a new version of vagrant-libvirt.
> Turn on the VM with virsh instead of vagrant works.
>
> Stdout[2] bellow.
>
> Any idea what may cause the error with your patch?
>
> Thanks,
> Shachar Kagan
>
> [1]
> commit 0a8de364ff7a14558e9676f424283148110384d6
> Author: Eric Dumazet <edumazet@google.com>
> Date: Tue Nov 14 17:23:41 2023 +0000
>
> tcp: no longer abort SYN_SENT when receiving some ICMP
>
> Currently, non fatal ICMP messages received on behalf
> of SYN_SENT sockets do call tcp_ld_RTO_revert()
> to implement RFC 6069, but immediately call tcp_done(),
> thus aborting the connect() attempt.
>
> This violates RFC 1122 following requirement:
>
> 4.2.3.9 ICMP Messages
> ...
> o Destination Unreachable -- codes 0, 1, 5
>
> Since these Unreachable messages indicate soft error
> conditions, TCP MUST NOT abort the connection, and it
> SHOULD make the information available to the
> application.
>
> This patch makes sure non 'fatal' ICMP[v6] messages do not
> abort the connection attempt.
>
> It enables RFC 6069 for SYN_SENT sockets as a result.
>
> Signed-off-by: Eric Dumazet <edumazet@google.com>
> Cc: David Morley <morleyd@google.com>
> Cc: Neal Cardwell <ncardwell@google.com>
> Cc: Yuchung Cheng <ycheng@google.com>
> Signed-off-by: David S. Miller <davem@davemloft.net>
>
> [2]
> Vagrant up stdout:
> Bringing machine 'player1' up with 'libvirt' provider...
> ==> player1: Creating shared folders metadata...
> ==> player1: Starting domain.
> ==> player1: Domain launching with graphics connection settings...
> ==> player1: -- Graphics Port: 5900
> ==> player1: -- Graphics IP: 127.0.0.1
> ==> player1: -- Graphics Password: Not defined
> ==> player1: -- Graphics Websocket: 5700
> ==> player1: Waiting for domain to get an IP address...
> ==> player1: Waiting for machine to boot. This may take a few minutes...
> player1: SSH address: 192.168.123.61:22
> player1: SSH username: vagrant
> player1: SSH auth method: private key
> ==> player1: Attempting graceful shutdown of VM...
> ==> player1: Attempting graceful shutdown of VM...
> ==> player1: Attempting graceful shutdown of VM...
> player1: Guest communication could not be established! This is usually because
> player1: SSH is not running, the authentication information was changed,
> player1: or some other networking issue. Vagrant will force halt, if
> player1: capable.
> ==> player1: Attempting direct shutdown of domain...
>
>
Thanks for the regression report. I'm adding it to regzbot:
#regzbot ^introduced: 0a8de364ff7a14
#regzbot title: starting Vagrant VM fails due to not aborting SYN_SENT
--
An old man doll... just what I always wanted! - Clara
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 228 bytes --]
prev parent reply other threads:[~2023-11-30 14:10 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-11-30 13:55 Bug report connect to VM with Vagrant Shachar Kagan
2023-11-30 14:01 ` Eric Dumazet
2023-12-07 13:03 ` Shachar Kagan
2023-12-08 10:49 ` Eric Dumazet
2023-12-15 9:55 ` Linux regression tracking (Thorsten Leemhuis)
2023-12-27 8:33 ` Leon Romanovsky
2024-01-02 9:49 ` Eric Dumazet
2024-01-02 9:55 ` Leon Romanovsky
2024-01-02 10:06 ` Eric Dumazet
2023-11-30 14:10 ` Bagas Sanjaya [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=ZWiX6NtanFyx4lmw@archie.me \
--to=bagasdotme@gmail.com \
--cc=edumazet@google.com \
--cc=idok@nvidia.com \
--cc=jgg@nvidia.com \
--cc=kuba@kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=netdev@vger.kernel.org \
--cc=regressions@lists.linux.dev \
--cc=shirlyo@nvidia.com \
--cc=skagan@nvidia.com \
--cc=topazu@nvidia.com \
--cc=yishaih@nvidia.com \
--cc=ziyadat@nvidia.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).