svn commit: r364944 - head/sys/kern

Konstantin Belousov kostikbel at gmail.com
Tue Sep 15 14:15:47 UTC 2020


On Sat, Aug 29, 2020 at 04:29:53AM +0000, Warner Losh wrote:
> Author: imp
> Date: Sat Aug 29 04:29:53 2020
> New Revision: 364944
> URL: https://svnweb.freebsd.org/changeset/base/364944
> 
> Log:
>   devctl: move to using a uma zone
>   
>   Convert the memory management of devctl.  Rewrite if to make better
>   use of memory. This eliminates several mallocs (5? worse case) needed
>   to send a message. It's now possible to always send a message, though
>   if things are really backed up the oldest message will be dropped to
>   free up space for the newest.
>   
>   Add a static bus_child_{location,pnpinfo}_sb to start migrating to
>   sbuf instead of buffer + length. Use it in the new code.  Other code
>   will be converted later (bus_child_*_str is only used inside of
>   subr_bus.c, though implemented in ~100 places in the tree).
>   
>   Reviewed by: markj@
>   Differential Revision: https://reviews.freebsd.org/D26140
> 
> Modified:
>   head/sys/kern/subr_bus.c
> 

> +	} else {
> +		/* dei can't be NULL -- we know we have at least one in the zone */
> +		dei = uma_zalloc(devsoftc.zone, M_NOWAIT);
> +		MPASS(dei != NULL);
This does not work.  I believe you need to disable per-cpu cache for the
zone, at least.  But I am not sure it is enough.

https://people.freebsd.org/~pho/stress/log/kostik1314.txt


More information about the svn-src-all mailing list