mirror of
https://github.com/freebsd/freebsd-src
synced 2024-10-15 12:54:27 +00:00
uma: UMA_ALIGN_CACHE: Resolve the proper value at use point
Having a special value of -1 that is resolved internally to 'uma_align_cache' provides no significant advantages and prevents changing that variable to an unsigned type, which is natural for an alignment mask. So suppress it and replace its use with a call to uma_get_align_mask(). The small overhead of the added function call is irrelevant since UMA_ALIGN_CACHE is only used when creating new zones, which is not performance critical. Reviewed by: markj, kib MFC after: 2 weeks Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D42259
This commit is contained in:
parent
dc8f7692fd
commit
e557eafe72
|
@ -301,7 +301,7 @@ uma_zone_t uma_zcache_create(const char *name, int size, uma_ctor ctor,
|
|||
#define UMA_ALIGN_INT (sizeof(int) - 1) /* "" int */
|
||||
#define UMA_ALIGN_SHORT (sizeof(short) - 1) /* "" short */
|
||||
#define UMA_ALIGN_CHAR (sizeof(char) - 1) /* "" char */
|
||||
#define UMA_ALIGN_CACHE (0 - 1) /* Cache line size align */
|
||||
#define UMA_ALIGN_CACHE (uma_get_cache_align_mask()) /* Cache line size align */
|
||||
#define UMA_ALIGNOF(type) (_Alignof(type) - 1) /* Alignment fit for 'type' */
|
||||
|
||||
#define UMA_ANYDOMAIN -1 /* Special value for domain search. */
|
||||
|
|
|
@ -3243,7 +3243,7 @@ uma_kcreate(uma_zone_t zone, size_t size, uma_init uminit, uma_fini fini,
|
|||
args.size = size;
|
||||
args.uminit = uminit;
|
||||
args.fini = fini;
|
||||
args.align = (align == UMA_ALIGN_CACHE) ? uma_cache_align_mask : align;
|
||||
args.align = align;
|
||||
args.flags = flags;
|
||||
args.zone = zone;
|
||||
return (zone_alloc_item(kegs, &args, UMA_ANYDOMAIN, M_WAITOK));
|
||||
|
@ -3256,7 +3256,6 @@ uma_set_cache_align_mask(int mask)
|
|||
{
|
||||
|
||||
if (mask >= 0)
|
||||
/* UMA_ALIGN_CACHE is also not permitted here. */
|
||||
uma_cache_align_mask = mask;
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in a new issue