From owner-svn-src-head@FreeBSD.ORG  Mon Aug 19 17:33:06 2013
Return-Path: <owner-svn-src-head@FreeBSD.ORG>
Delivered-To: svn-src-head@freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org
 [IPv6:2001:1900:2254:206a::19:1])
 (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits))
 (No client certificate requested)
 by hub.freebsd.org (Postfix) with ESMTP id A407E2C8;
 Mon, 19 Aug 2013 17:33:06 +0000 (UTC)
 (envelope-from nparhar@gmail.com)
Received: from mail-pa0-x233.google.com (mail-pa0-x233.google.com
 [IPv6:2607:f8b0:400e:c03::233])
 (using TLSv1 with cipher ECDHE-RSA-RC4-SHA (128/128 bits))
 (No client certificate requested)
 by mx1.freebsd.org (Postfix) with ESMTPS id 6C3ED2CCA;
 Mon, 19 Aug 2013 17:33:06 +0000 (UTC)
Received: by mail-pa0-f51.google.com with SMTP id lf1so4891675pab.10
 for <multiple recipients>; Mon, 19 Aug 2013 10:33:06 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113;
 h=sender:message-id:date:from:user-agent:mime-version:to:cc:subject
 :references:in-reply-to:content-type:content-transfer-encoding;
 bh=m4jqV48frauhdoi402GQZ01mWn62cuorOFwNNL8c9zM=;
 b=tO+cF5lWzKlIWQsqm8r2ROJJCkQ8yaQmJcWDRPF0dHpbxDNz0bccC/noxyUkcxTsCt
 09ChQA9WDS3Aszr+Rr3R9tjbnpCB39w9mq90qv+5RX5tF/Mszqq0ckHcOql5T5qHSu1L
 naV7zg45VJOkhtzNGXRUOQe7pHmujbEvu9glv8nyiwiRiC0pIriKTyxF+8oP4Jgq7/Cq
 A/BInIaW/CA5pruRAA+fh5hhUynaUF/t4vraz9I4wR6wL0lYHHy6cIufRdjj+GCWbO+H
 rqHqwYvaSrLMVm0Ig1hjP7gLSbNMHs1kpeGuwkGwYjSvhTSzZIZ6tJ1/Uxe1o+20jf/Y
 K0sg==
X-Received: by 10.66.171.13 with SMTP id aq13mr5684391pac.30.1376933586128;
 Mon, 19 Aug 2013 10:33:06 -0700 (PDT)
Received: from [10.192.166.0] (stargate.chelsio.com. [67.207.112.58])
 by mx.google.com with ESMTPSA id nj9sm16325367pbc.13.1969.12.31.16.00.00
 (version=TLSv1 cipher=ECDHE-RSA-RC4-SHA bits=128/128);
 Mon, 19 Aug 2013 10:33:04 -0700 (PDT)
Sender: Navdeep Parhar <nparhar@gmail.com>
Message-ID: <521256CE.6070706@FreeBSD.org>
Date: Mon, 19 Aug 2013 10:33:02 -0700
From: Navdeep Parhar <np@FreeBSD.org>
User-Agent: Mozilla/5.0 (X11; FreeBSD amd64;
 rv:17.0) Gecko/20130819 Thunderbird/17.0.8
MIME-Version: 1.0
To: Andre Oppermann <andre@FreeBSD.org>
Subject: Re: svn commit: r254520 - in head/sys: kern sys
References: <201308191116.r7JBGsc6065793@svn.freebsd.org>
In-Reply-To: <201308191116.r7JBGsc6065793@svn.freebsd.org>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
Cc: svn-src-head@freebsd.org, svn-src-all@freebsd.org,
 src-committers@freebsd.org
X-BeenThere: svn-src-head@freebsd.org
X-Mailman-Version: 2.1.14
Precedence: list
List-Id: SVN commit messages for the src tree for head/-current
 <svn-src-head.freebsd.org>
List-Unsubscribe: <http://lists.freebsd.org/mailman/options/svn-src-head>,
 <mailto:svn-src-head-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-head>
List-Post: <mailto:svn-src-head@freebsd.org>
List-Help: <mailto:svn-src-head-request@freebsd.org?subject=help>
List-Subscribe: <http://lists.freebsd.org/mailman/listinfo/svn-src-head>,
 <mailto:svn-src-head-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Mon, 19 Aug 2013 17:33:06 -0000

On 08/19/13 04:16, Andre Oppermann wrote:
> Author: andre
> Date: Mon Aug 19 11:16:53 2013
> New Revision: 254520
> URL: http://svnweb.freebsd.org/changeset/base/254520
> 
> Log:
>   Remove the unused M_NOFREE mbuf flag.  It didn't have any in-tree users
>   for a very long time, if ever.
>   
>   Should such a functionality ever be needed again the appropriate and
>   much better way to do it is through a custom EXT_SOMETHING external mbuf
>   type together with a dedicated *ext_free function.
>   
>   Discussed with:	trociny, glebius
> 
> Modified:
>   head/sys/kern/kern_mbuf.c
>   head/sys/kern/uipc_mbuf.c
>   head/sys/sys/mbuf.h
> 

Hello Andre,

Is this just garbage collection or is there some other reason for this?

I recently tried some experiments to reduce the number of mbuf and
cluster allocations in a 40G NIC driver.  M_NOFREE and EXT_EXTREF proved
very useful and the code changes to the kernel were minimal.  See
user/np/cxl_tuning.  The experiment was quite successful and I was
planning to bring in most of those changes to HEAD.  I was hoping to get
some runtime mileage on the approach in general before tweaking the
ctors/dtors for jumpbo, jumbo9, jumbo16 to allow for an mbuf+refcnt
within the cluster.  But now M_NOFREE has vanished without a warning...

Regards,
Navdeep