From owner-freebsd-hackers@FreeBSD.ORG Wed Apr 16 21:23:43 2014 Return-Path: Delivered-To: freebsd-hackers@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id CE60E5D1; Wed, 16 Apr 2014 21:23:43 +0000 (UTC) Received: from mail-pb0-x22d.google.com (mail-pb0-x22d.google.com [IPv6:2607:f8b0:400e:c01::22d]) (using TLSv1 with cipher ECDHE-RSA-RC4-SHA (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G2" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 9FD8212DC; Wed, 16 Apr 2014 21:23:43 +0000 (UTC) Received: by mail-pb0-f45.google.com with SMTP id uo5so11298061pbc.18 for ; Wed, 16 Apr 2014 14:23:43 -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:subject :content-type:content-transfer-encoding; bh=KduU0YdSp97u1nCfWLRVMHXGXrW55N25UtBrIllM12E=; b=XjjLh0SoOtQxRg2myMlCy9P4E5WeTJvBuAGVCjEJpphBYf8he+A6DOYN4fUNuysnGb ZcEi6mGOmgPvZsxW1w7KJnvotxNz97GMBGMfwtR5BX8CYKNPDTm4mllCnoQgN20rXWaz 7aBGE3cce+nHRH8yxeRps4dbstf0BhZo0dtWQm1rTrYd59rj8iy1gocPIk1w7yN/KEgm vHLJnqQIw82XsTnCrJfKxowLOmsRywdXMinUt6vNNYm8veC/qniixU4QVtFPAq9rpVWo 0jcw+XWCuUvIuCR8XVKn39chsHQAh3X52UdcMPtqhfcFo8Okq8bTxSxwIWdtTWPWsq6D rrHg== X-Received: by 10.66.164.165 with SMTP id yr5mr10989425pab.63.1397683423207; Wed, 16 Apr 2014 14:23:43 -0700 (PDT) Received: from [10.192.166.0] (stargate.chelsio.com. [67.207.112.58]) by mx.google.com with ESMTPSA id vg1sm49025106pbc.44.2014.04.16.14.23.42 for (version=TLSv1 cipher=ECDHE-RSA-RC4-SHA bits=128/128); Wed, 16 Apr 2014 14:23:42 -0700 (PDT) Sender: Navdeep Parhar Message-ID: <534EF4DD.4000200@FreeBSD.org> Date: Wed, 16 Apr 2014 14:23:41 -0700 From: Navdeep Parhar User-Agent: Mozilla/5.0 (X11; FreeBSD amd64; rv:24.0) Gecko/20100101 Thunderbird/24.4.0 MIME-Version: 1.0 To: freebsd-hackers@freebsd.org, Jeff Roberson Subject: vmem(9) with M_FIRSTFIT Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit X-BeenThere: freebsd-hackers@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: Technical Discussions relating to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 16 Apr 2014 21:23:43 -0000 I'm trying to use vmem with M_FIRSTFIT strategy but it causes an assertion failure in vmem_xalloc. The problem is that qc_import sets M_BESTFIT in the flags passed to it before passing them on to vmem_xalloc. vmem_xalloc then complains because both FIRSTFIT and BESTFIT are set. Does anyone know why qc_import insists on M_BESTFIT? Is it safe to change it as shown here? if ((flags & VMEM_FITMASK) == 0) flags |= M_BESTFIT; Regards, Navdeep (kgdb) p panicstr $4 = 0xffffffff814ed960 "Assertion strat == M_BESTFIT || strat == M_FIRSTFIT failed at /usr/src/sys/kern/subr_vmem.c:1113" (kgdb) bt ... #10 0xffffffff808e2a38 in kassert_panic (fmt=) at /usr/src/sys/kern/kern_shutdown.c:644 #11 0xffffffff80931ac4 in vmem_xalloc (vm=0xfffff800cc1dd000, size0=, align=0, phase=0, nocross=0, minaddr=0, maxaddr=, flags=, addrp=0x12) at /usr/src/sys/kern/subr_vmem.c:1113 #12 0xffffffff80933bcc in qc_import (arg=0xfffff800cc1dd488, store=0xfffff800475a6418, cnt=125, flags=) at /usr/src/sys/kern/subr_vmem.c:507 #13 0xffffffff80b5ee00 in uma_zalloc_arg (zone=0xfffff8001345d480, udata=0x0, flags=4097) at /usr/src/sys/vm/uma_core.c:2535 #14 0xffffffff809319e9 in vmem_alloc (vm=0xfffff800cc1dd000, size=, flags=4097, addrp=0xfffffe0238422868) at uma.h:336 #15 0xffffffff809a955c in do_setopt_tx_throttle (so=0xfffff80047b95000, sopt=) at /usr/src/sys/net/flow_throttle.c:379 ...