Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 15 Sep 2013 21:53:47 +0200
From:      Davide Italiano <davide@freebsd.org>
To:        Pedro Giffuni <pfg@freebsd.org>
Cc:        dtrace@freebsd.org
Subject:   Re: vmem(9) use in Dtrace
Message-ID:  <CACYV=-H42pN2TXAp6vCjWRH=8g9Ttpzcex1RPd1Unj1oZWeRGg@mail.gmail.com>
In-Reply-To: <52360A3E.40804@FreeBSD.org>
References:  <52360A3E.40804@FreeBSD.org>

next in thread | previous in thread | raw e-mail | index | archive | help
On Sun, Sep 15, 2013 at 9:27 PM, Pedro Giffuni <pfg@freebsd.org> wrote:
> Hi;
>
> Just noticed this, in the old DtraceTODO wiki:
>
> https://wiki.freebsd.org/DTraceTODO
>
> There is mention of some use that Dtrace makes of Solaris's vmem
> allocator, specifically vmem_create(), vmem_destroy(), vmem_alloc(), and
> vmem_free(). These functions (not exact but similar ones) have
> been brought to FreeBSD 10 (r252330).
>
> According to opengrok we may just have to uncomment some Solaris
> code in sys/cddl/contrib/opensolaris/uts/common/dtrace/dtrace.c
>

We need also to provide at least some sort of wrappers for e.g. flags
passed to vmem_alloc which takes VM_SLEEP in solaris while in FreeBSD
this is M_WAITOK etc...

> This would reduce differences with the Solaris code but it has
> to be examined carefully as I think John Birrell had already
> solved the issue by providing the resource id's natively (kmem).
>
> Just thought I would point it out ... It may be that it is not
> worth spending too much time on it since the existing code should
> just work.
>

vmem is designed to be a generic resource allocator. I still need to
analyze how Dtrace uses it but in general it provides better
scalability and less fragmentation wrt home-rolled allocators we have
in the kernel. FWIW, Illumos uses it for several things, e.g. pid/tid
allocation. It might worth a try.

> Pedro.
> _______________________________________________
> freebsd-dtrace@freebsd.org mailing list
> https://lists.freebsd.org/mailman/listinfo/freebsd-dtrace
> To unsubscribe, send any mail to "freebsd-dtrace-unsubscribe@freebsd.org"

Thanks,

-- 
Davide

"There are no solved problems; there are only problems that are more
or less solved" -- Henri Poincare



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CACYV=-H42pN2TXAp6vCjWRH=8g9Ttpzcex1RPd1Unj1oZWeRGg>