link: not pv_link backend type

informational, and a hint at what pvt points to
This commit is contained in:
Michael Davidsaver
2016-03-24 10:08:58 -04:00
parent 33033e6027
commit 32c3231f5d
3 changed files with 5 additions and 2 deletions
+3
View File
@@ -172,6 +172,7 @@ static long dbDbInitLink(struct link *plink, short dbfType)
pdbAddr = dbCalloc(1, sizeof(struct dbAddr));
*pdbAddr = dbaddr; /* structure copy */
plink->value.pv_link.pvt = pdbAddr;
plink->value.pv_link.backend = "db";
ellAdd(&dbaddr.precord->bklnk, &plink->value.pv_link.backlinknode);
/* merging into the same lockset is deferred to the caller.
* cf. initPVLinks()
@@ -186,6 +187,7 @@ static void dbDbAddLink(dbLocker *locker, struct link *plink, short dbfType, DBA
plink->lset = &dbDb_lset;
plink->type = DB_LINK;
plink->value.pv_link.pvt = ptarget;
plink->value.pv_link.backend = "db";
ellAdd(&ptarget->precord->bklnk, &plink->value.pv_link.backlinknode);
/* target record is already locked in dbPutFieldLink() */
@@ -196,6 +198,7 @@ static void dbDbRemoveLink(dbLocker *locker, struct link *plink)
{
DBADDR *pdbAddr = (DBADDR *) plink->value.pv_link.pvt;
plink->value.pv_link.pvt = 0;
plink->value.pv_link.backend = NULL;
plink->value.pv_link.getCvt = 0;
plink->value.pv_link.pvlMask = 0;
plink->value.pv_link.lastGetdbrType = 0;
+1
View File
@@ -85,6 +85,7 @@ struct pv_link {
LINKCVT getCvt; /* input conversion function */
short pvlMask; /* Options mask */
short lastGetdbrType; /* last dbrType for DB or CA get */
const char *backend;/* informational string describing the backend */
};
/* structure of a VME io channel */
+1 -2
View File
@@ -641,8 +641,7 @@ static void doCloseLinks(dbRecordType *pdbRecordType, dbCommon *precord,
dbScanLock(precord);
locked = 1;
}
if(plink->lset)
(*plink->lset->removeLink)(NULL, plink);
dbRemoveLink(NULL, plink);
} else if (iocBuildMode==buildIsolated && plink->type == DB_LINK) {
/* free link, but don't split lockset like dbDbRemoveLink() */