| 19 | } |
| 20 | |
| 21 | int64_t NextKey(){ |
| 22 | int64_t key = 0; |
| 23 | while(table[++key]); |
| 24 | |
| 25 | if(key >= tableSize){ // Increase table size |
| 26 | shared_mem_t** newTable = (shared_mem_t**)kmalloc((tableSize + DEFAULT_TABLE_SIZE) * sizeof(shared_mem_t*)); |
| 27 | memcpy(newTable, table, tableSize * sizeof(shared_mem_t*)); |
| 28 | |
| 29 | kfree(table); |
| 30 | table = newTable; |
| 31 | } |
| 32 | |
| 33 | return key; |
| 34 | } |
| 35 | |
| 36 | shared_mem_t* GetSharedMemory(int64_t key){ |
| 37 | if(key < tableSize){ |
no test coverage detected