From owner-freebsd-net@FreeBSD.ORG Fri Nov 2 19:04:12 2012 Return-Path: Delivered-To: freebsd-net@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 86110A89 for ; Fri, 2 Nov 2012 19:04:12 +0000 (UTC) (envelope-from nitroboost@gmail.com) Received: from mail-ee0-f54.google.com (mail-ee0-f54.google.com [74.125.83.54]) by mx1.freebsd.org (Postfix) with ESMTP id 12E608FC0A for ; Fri, 2 Nov 2012 19:04:11 +0000 (UTC) Received: by mail-ee0-f54.google.com with SMTP id c50so2528684eek.13 for ; Fri, 02 Nov 2012 12:04:10 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:date:message-id:subject:from:to:content-type; bh=w5Dc8mIjkRF2ope0LKOFS0gGShoHoZW7Wd8fNtYXpM0=; b=lNHzVr6TwywMqFNeeV3azBcitA7AwtKJoAkTEP6TWKbngargBNtFzAud8JfSGaW72n WxftbwTwsxIZd7baIq8xwkc6aBp5FQQpVRCKK3bmpFrGMoDP6F17bEvqfkObixWpvotF BrS5UgJ10CHA7hgwEuwZxjMZSlXvbJvFfuAQy1VJL/Z+8k2pxjw7DqkJp3dSff2fdQsz Ar9CHsZQB7ObXwwhba0zPUkQnHxIKb2E0bzgtIsLhpDJfH/QtilJDDiiV0iUdIfgiRhX DRRa7RJtcoaaDOdIpWp6camPIV8ZzIIc3ot31eC3It2MVlGm6sunLoMz/M+Eaxb0zVKD Z0bA== MIME-Version: 1.0 Received: by 10.14.182.5 with SMTP id n5mr9808367eem.5.1351883050759; Fri, 02 Nov 2012 12:04:10 -0700 (PDT) Received: by 10.14.218.133 with HTTP; Fri, 2 Nov 2012 12:04:10 -0700 (PDT) Date: Fri, 2 Nov 2012 12:04:10 -0700 Message-ID: Subject: Session MTU update patch only 9 From: Jason Wolfe To: freebsd-net@freebsd.org Content-Type: text/plain; charset=ISO-8859-1 X-Content-Filtered-By: Mailman/MimeDel 2.1.14 X-BeenThere: freebsd-net@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: Networking and TCP/IP with FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 02 Nov 2012 19:04:12 -0000 Hi, While attempting to fix a PMTUD bug in 8.3-RELEASE-p4 that appears to now be resolved by r234342, I also came across r238516. It appears this fix only made it into 9/STABLE though, does anyone know why it wasn't brought back to 8? It's a fairly easy port, but I just wanted to confirm there wasn't something else at play I'm missing. "If ip_output() returns EMSGSIZE to tcp_output(), then the latter calls tcp_mtudisc(), which in its turn may call tcp_output(). Under certain conditions (must admit they are very special) an infinite recursion can happen. To avoid recursion we can pass struct route to ip_output() and obtain correct mtu. This allows us not to use tcp_mtudisc() but call tcp_mss_update() directly." Jason