[debug] Introduce DREF debug category for reference counting

This commit is contained in:
Harald Welte
2009-12-24 11:46:44 +01:00
parent ae1f159dc4
commit d0c19148dd
4 changed files with 7 additions and 4 deletions

View File

@@ -27,6 +27,7 @@ enum {
DMGCP, DMGCP,
DHO, DHO,
DDB, DDB,
DREF,
Debug_LastEntry, Debug_LastEntry,
}; };

View File

@@ -101,14 +101,14 @@ typedef int gsm_cbfn(unsigned int hooknum,
#define LCHAN_RELEASE_TIMEOUT 20, 0 #define LCHAN_RELEASE_TIMEOUT 20, 0
#define use_lchan(lchan) \ #define use_lchan(lchan) \
do { lchan->use_count++; \ do { lchan->use_count++; \
DEBUGP(DCC, "lchan (bts=%d,trx=%d,ts=%d,ch=%d) increases usage to: %d\n", \ DEBUGP(DREF, "lchan (bts=%d,trx=%d,ts=%d,ch=%d) increases usage to: %d\n", \
lchan->ts->trx->bts->nr, lchan->ts->trx->nr, lchan->ts->nr, \ lchan->ts->trx->bts->nr, lchan->ts->trx->nr, lchan->ts->nr, \
lchan->nr, lchan->use_count); \ lchan->nr, lchan->use_count); \
bsc_schedule_timer(&lchan->release_timer, LCHAN_RELEASE_TIMEOUT); } while(0); bsc_schedule_timer(&lchan->release_timer, LCHAN_RELEASE_TIMEOUT); } while(0);
#define put_lchan(lchan) \ #define put_lchan(lchan) \
do { lchan->use_count--; \ do { lchan->use_count--; \
DEBUGP(DCC, "lchan (bts=%d,trx=%d,ts=%d,ch=%d) decreases usage to: %d\n", \ DEBUGP(DREF, "lchan (bts=%d,trx=%d,ts=%d,ch=%d) decreases usage to: %d\n", \
lchan->ts->trx->bts->nr, lchan->ts->trx->nr, lchan->ts->nr, \ lchan->ts->trx->bts->nr, lchan->ts->trx->nr, lchan->ts->nr, \
lchan->nr, lchan->use_count); \ lchan->nr, lchan->use_count); \
} while(0); } while(0);

View File

@@ -52,6 +52,7 @@ static struct debug_category default_categories[Debug_LastEntry] = {
[DMGCP] = { .enabled = 1, .loglevel = 0}, [DMGCP] = { .enabled = 1, .loglevel = 0},
[DHO] = { .enabled = 1, .loglevel = 0}, [DHO] = { .enabled = 1, .loglevel = 0},
[DDB] = { .enabled = 1, .loglevel = 0}, [DDB] = { .enabled = 1, .loglevel = 0},
[DREF] = { .enabled = 0, .loglevel = 0},
}; };
struct debug_info { struct debug_info {
@@ -95,6 +96,7 @@ static const struct debug_info debug_info[] = {
DEBUG_CATEGORY(DMGCP, "DMGCP", "", "") DEBUG_CATEGORY(DMGCP, "DMGCP", "", "")
DEBUG_CATEGORY(DHO, "DHO", "", "") DEBUG_CATEGORY(DHO, "DHO", "", "")
DEBUG_CATEGORY(DDB, "DDB", "", "") DEBUG_CATEGORY(DDB, "DDB", "", "")
DEBUG_CATEGORY(DDB, "DREF", "", "")
}; };
/* /*

View File

@@ -137,7 +137,7 @@ static void subscr_free(struct gsm_subscriber *subscr)
struct gsm_subscriber *subscr_get(struct gsm_subscriber *subscr) struct gsm_subscriber *subscr_get(struct gsm_subscriber *subscr)
{ {
subscr->use_count++; subscr->use_count++;
DEBUGP(DCC, "subscr %s usage increases usage to: %d\n", DEBUGP(DREF, "subscr %s usage increases usage to: %d\n",
subscr->extension, subscr->use_count); subscr->extension, subscr->use_count);
return subscr; return subscr;
} }
@@ -145,7 +145,7 @@ struct gsm_subscriber *subscr_get(struct gsm_subscriber *subscr)
struct gsm_subscriber *subscr_put(struct gsm_subscriber *subscr) struct gsm_subscriber *subscr_put(struct gsm_subscriber *subscr)
{ {
subscr->use_count--; subscr->use_count--;
DEBUGP(DCC, "subscr %s usage decreased usage to: %d\n", DEBUGP(DREF, "subscr %s usage decreased usage to: %d\n",
subscr->extension, subscr->use_count); subscr->extension, subscr->use_count);
if (subscr->use_count <= 0) if (subscr->use_count <= 0)
subscr_free(subscr); subscr_free(subscr);