From owner-p4-projects@FreeBSD.ORG Mon Apr 24 03:51:23 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id D283716A402; Mon, 24 Apr 2006 03:51:23 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 8190916A403 for ; Mon, 24 Apr 2006 03:51:23 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 30CBB43D5D for ; Mon, 24 Apr 2006 03:51:23 +0000 (GMT) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.1/8.13.1) with ESMTP id k3O3pN0V008811 for ; Mon, 24 Apr 2006 03:51:23 GMT (envelope-from jb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id k3O3pMmF008805 for perforce@freebsd.org; Mon, 24 Apr 2006 03:51:22 GMT (envelope-from jb@freebsd.org) Date: Mon, 24 Apr 2006 03:51:22 GMT Message-Id: <200604240351.k3O3pMmF008805@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jb@freebsd.org using -f From: John Birrell To: Perforce Change Reviews Cc: Subject: PERFORCE change 95985 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 24 Apr 2006 03:51:24 -0000 http://perforce.freebsd.org/chv.cgi?CH=95985 Change 95985 by jb@jb_freebsd2 on 2006/04/24 03:51:00 Add hacks to dummy up something resembling kmem_cache by completely ignoring why it was required in the first place. Affected files ... .. //depot/projects/dtrace/src/sys/cddl/dev/dtrace/dtrace_hacks.c#5 edit .. //depot/projects/dtrace/src/sys/cddl/dev/dtrace/dtrace_hacks.h#6 edit Differences ... ==== //depot/projects/dtrace/src/sys/cddl/dev/dtrace/dtrace_hacks.c#5 (text+ko) ==== @@ -31,7 +31,39 @@ { free(vmp, M_DTRACE); } +kmem_cache_t * +kmem_cache_create( + char *name, /* descriptive name for this cache */ + size_t bufsize, /* size of the objects it manages */ + size_t align, /* required object alignment */ + int (*constructor)(void *, void *, int), /* object constructor */ + void (*destructor)(void *, void *), /* object destructor */ + void (*reclaim)(void *), /* memory reclaim callback */ + void *private, /* pass-thru arg for constr/destr/reclaim */ + vmem_t *vmp, /* vmem source for slab allocation */ + int cflags) /* cache creation flags */ +{ + kmem_cache_t *p = malloc(sizeof(kmem_cache_t), M_DTRACE, M_WAITOK); + p->size = bufsize; + return(p); +} +void * +kmem_cache_alloc(kmem_cache_t *a, int b) +{ + return (malloc(a->size, M_DTRACE, M_WAITOK | M_ZERO)); +} +void +kmem_cache_free(kmem_cache_t *a, void *b) +{ + free(b, M_DTRACE); +} +void +kmem_cache_destroy(kmem_cache_t *a) +{ + free(a, M_DTRACE); +} + dtrace_cacheid_t dtrace_predcache_id; void *hack_refs[] = @@ -163,15 +195,6 @@ { return 0; } -void * -kmem_cache_alloc(kmem_cache_t *a, int b) -{ - return 0; -} -void -kmem_cache_free(kmem_cache_t *a, void *b) -{ -} void dtrace_xcall(processorid_t a, dtrace_xcall_t b, void *c) { ==== //depot/projects/dtrace/src/sys/cddl/dev/dtrace/dtrace_hacks.h#6 (text+ko) ==== @@ -123,7 +123,9 @@ #define PRIV_POLICY_ONLY(cred, priv, all) \ priv_policy_only((cred), (priv), (all)) -typedef struct kmem_cache kmem_cache_t; +typedef struct kmem_cache { + size_t size; +} kmem_cache_t; kmem_cache_t *kmem_cache_create(char *, size_t, size_t, int (*)(void *, void *, int), void (*)(void *, void *), void (*)(void *), void *, vmem_t *, int);