From: David VaĊĦek Date: Fri, 23 Aug 2019 12:56:17 +0000 (+0200) Subject: common/ref.c: not used anymore, removing it X-Git-Tag: v2.9.0~91^2~7 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=30f2ebcffd4091e86e3aef473efe88026060a2e8;p=thirdparty%2Fknot-dns.git common/ref.c: not used anymore, removing it --- diff --git a/Knot.files b/Knot.files index d865ad6786..5e5c0db488 100644 --- a/Knot.files +++ b/Knot.files @@ -67,8 +67,6 @@ src/knot/common/log.c src/knot/common/log.h src/knot/common/process.c src/knot/common/process.h -src/knot/common/ref.c -src/knot/common/ref.h src/knot/common/stats.c src/knot/common/stats.h src/knot/conf/base.c diff --git a/src/knot/Makefile.inc b/src/knot/Makefile.inc index ea2cbb497f..bd9341569f 100644 --- a/src/knot/Makefile.inc +++ b/src/knot/Makefile.inc @@ -116,8 +116,6 @@ libknotd_la_SOURCES = \ knot/common/log.h \ knot/common/process.c \ knot/common/process.h \ - knot/common/ref.c \ - knot/common/ref.h \ knot/common/stats.c \ knot/common/stats.h \ knot/server/dthreads.c \ diff --git a/src/knot/common/ref.c b/src/knot/common/ref.c deleted file mode 100644 index 97a144cb3d..0000000000 --- a/src/knot/common/ref.c +++ /dev/null @@ -1,44 +0,0 @@ -/* Copyright (C) 2011 CZ.NIC, z.s.p.o. - - This program is free software: you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program. If not, see . - */ - -#include - -#include "knot/common/ref.h" - -void ref_init(ref_t *p, ref_destructor_t dtor) -{ - if (p) { - p->count = 0; - p->dtor = dtor; - } -} - -void ref_retain(ref_t *p) -{ - if (p) { - __sync_add_and_fetch(&p->count, 1); - } -} - -void ref_release(ref_t *p) -{ - if (p) { - int rc = __sync_sub_and_fetch(&p->count, 1); - if (rc == 0 && p->dtor) { - p->dtor(p); - } - } -} diff --git a/src/knot/common/ref.h b/src/knot/common/ref.h deleted file mode 100644 index 1b335e9aa2..0000000000 --- a/src/knot/common/ref.h +++ /dev/null @@ -1,79 +0,0 @@ -/* Copyright (C) 2017 CZ.NIC, z.s.p.o. - - This program is free software: you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program. If not, see . - */ - -/*! - * \brief Atomic reference counting structures. - * - * Reference counting allows implicit sharing of objects - * between threads with custom destructor functions. - */ - -#pragma once - -#include - -struct ref; - -/*! \brief Prototype for object destructor callback. */ -typedef void (*ref_destructor_t)(struct ref * p); - -/*! - * \brief Structure for reference counting. - * - * Size equals to two sizes of pointer size. - * Structure may be embedded to the structures which - * we want to use for reference counting. - * - * \code - * struct mystruct { - * ref_t ref; - * int mydata; - * char *mystr; - * } - * \endcode - */ -typedef struct ref { - size_t count; /*! \brief Reference counter. */ - ref_destructor_t dtor; /*! \brief Object destructor function. */ -} ref_t; - -/*! - * \brief Initialize reference counter. - * - * Set reference counter to 0 and initialize destructor callback. - * - * \param p Reference-counted object. - * \param dtor Destructor function. - */ -void ref_init(ref_t *p, ref_destructor_t dtor); - -/*! - * \brief Mark object as used by the caller. - * - * Reference counter will be incremented. - * - * \param p Reference-counted object. - */ -void ref_retain(ref_t *p); - -/*! - * \brief Marks object as unused by the caller. - * - * Reference counter will be decremented. - * - * \param p Reference-counted object. - */ -void ref_release(ref_t *p);