Changes in uspace/lib/block/libblock.c [96b02eb9:956d4df8] in mainline
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
uspace/lib/block/libblock.c
r96b02eb9 r956d4df8 44 44 #include <sys/mman.h> 45 45 #include <async.h> 46 #include <ipc/ipc.h>47 46 #include <as.h> 48 47 #include <assert.h> … … 177 176 if (rc != EOK) { 178 177 munmap(comm_area, comm_size); 179 ipc_hangup(dev_phone);178 async_hangup(dev_phone); 180 179 return rc; 181 180 } … … 183 182 if (get_block_size(dev_phone, &bsize) != EOK) { 184 183 munmap(comm_area, comm_size); 185 ipc_hangup(dev_phone);184 async_hangup(dev_phone); 186 185 return rc; 187 186 } … … 190 189 if (rc != EOK) { 191 190 munmap(comm_area, comm_size); 192 ipc_hangup(dev_phone);191 async_hangup(dev_phone); 193 192 return rc; 194 193 } … … 211 210 212 211 munmap(devcon->comm_area, devcon->comm_size); 213 ipc_hangup(devcon->dev_phone);212 async_hangup(devcon->dev_phone); 214 213 215 214 free(devcon); … … 295 294 296 295 /* Allow 1:1 or small-to-large block size translation */ 297 if (cache->lblock_size % devcon->pblock_size != 0) 296 if (cache->lblock_size % devcon->pblock_size != 0) { 297 free(cache); 298 298 return ENOTSUP; 299 } 299 300 300 301 cache->blocks_cluster = cache->lblock_size / devcon->pblock_size; … … 437 438 if (!b->data) { 438 439 free(b); 440 b = NULL; 439 441 goto recycle; 440 442 } … … 564 566 assert(devcon); 565 567 assert(devcon->cache); 568 assert(block->refcnt >= 1); 566 569 567 570 cache = devcon->cache; … … 623 626 unsigned long key = block->lba; 624 627 hash_table_remove(&cache->block_hash, &key, 1); 628 fibril_mutex_unlock(&block->lock); 629 free(block->data); 625 630 free(block); 626 free(block->data);627 631 cache->blocks_cached--; 628 632 fibril_mutex_unlock(&cache->lock);
Note:
See TracChangeset
for help on using the changeset viewer.