From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on dcvr.yhbt.net X-Spam-Level: X-Spam-ASN: X-Spam-Status: No, score=-2.6 required=3.0 tests=ALL_TRUSTED,AWL,BAYES_00, RP_MATCHES_RCVD,URIBL_BLOCKED shortcircuit=no autolearn=unavailable version=3.3.2 X-Original-To: mm@80x24.org Received: from localhost (dcvr.yhbt.net [127.0.0.1]) by dcvr.yhbt.net (Postfix) with ESMTP id 1F2351FD7B; Mon, 18 Aug 2014 05:17:10 +0000 (UTC) From: Eric Wong To: mm@80x24.org Cc: Eric Wong Subject: [PATCH] experimental mutex-free wfs usage Date: Mon, 18 Aug 2014 05:17:04 +0000 Message-Id: <1408339024-18985-1-git-send-email-normalperson@yhbt.net> X-Mailer: git-send-email 2.0.0.423.g7962671 List-Id: patch sent to lltng-dev ref: <20140818050254.GA13470@dcvr.yhbt.net> --- femalloc.c | 10 ++-------- 1 file changed, 2 insertions(+), 8 deletions(-) diff --git a/femalloc.c b/femalloc.c index 5ca49ec..fb0a04c 100644 --- a/femalloc.c +++ b/femalloc.c @@ -1103,7 +1103,7 @@ typedef struct malloc_segment* msegmentptr; struct malloc_state { struct cds_list_head arena_node; - struct cds_wfs_stack remote_free_stack; + struct __cds_wfs_stack remote_free_stack; binmap_t smallmap; binmap_t treemap; size_t dvsize; @@ -2784,12 +2784,6 @@ static inline size_t internal_free(mstate m, void *mem) return 0; } -/* mutex-ignorant version of _cds_wfs_init */ -static inline void -nomtx_cds_wfs_init(struct cds_wfs_stack *s) { - s->head = CDS_WFS_END; -} - /* process remote free requests, returns usable bytes freed */ static size_t remote_free_finish(mstate ms) { size_t usable_bytes_freed = 0; @@ -3035,7 +3029,7 @@ static mstate init_user_mstate(char* tbase, size_t tsize) { mchunkptr msp = align_as_chunk(tbase); mstate m = (mstate)(chunk2mem(msp)); memset(m, 0, msize); - nomtx_cds_wfs_init(&m->remote_free_stack); + ___cds_wfs_init(&m->remote_free_stack); msp->head = (msize|INUSE_BITS); m->seg.base = m->least_addr = tbase; m->seg.size = tsize; -- EW