void* BCSP_PnpAdd(void* arg) { int status; status = BCSP_IoIncrement(); if (status == 0) { __VERIFIER_assert(!stopped); BCSP_IoDecrement(); } }
void* BCSP_PnpStop(void* arg) { DEVICE_EXTENSION *e; e = (DEVICE_EXTENSION *) arg; e->stoppingFlag = TRUE; BCSP_IoDecrement(e); __ESBMC_assume(e->stoppingEvent); //release allocated resource stopped = TRUE; }
void BCSP_PnpAdd(DEVICE_EXTENSION *e) { int status; status = BCSP_IoIncrement(e); if (status == 0) { //do work here assert(!stopped); } BCSP_IoDecrement(e); }
void* BCSP_PnpStop(void* arg) { stoppingFlag = 1; BCSP_IoDecrement(); __VERIFIER_assume(stoppingEvent); stopped = 1; }