Lines Matching refs:disk
132 bd->disk = NULL;
135 bd->disk = malloc(sizeof(lfs_emubd_disk_t));
136 if (!bd->disk) {
140 bd->disk->rc = 1;
141 bd->disk->scratch = NULL;
144 bd->disk->fd = open(bd->cfg->disk_path,
147 bd->disk->fd = open(bd->cfg->disk_path,
150 if (bd->disk->fd < 0) {
159 bd->disk->scratch = malloc(bd->cfg->erase_size);
160 if (!bd->disk->scratch) {
164 memset(bd->disk->scratch,
168 // go ahead and erase all of the disk, otherwise the file will not
171 ssize_t res = write(bd->disk->fd,
172 bd->disk->scratch,
198 if (bd->disk) {
199 bd->disk->rc -= 1;
200 if (bd->disk->rc == 0) {
201 close(bd->disk->fd);
202 free(bd->disk->scratch);
203 free(bd->disk);
310 // mirror to disk file?
311 if (bd->disk) {
312 off_t res1 = lseek(bd->disk->fd,
321 ssize_t res2 = write(bd->disk->fd, buffer, size);
393 // mirror to disk file?
394 if (bd->disk) {
395 off_t res1 = lseek(bd->disk->fd,
404 ssize_t res2 = write(bd->disk->fd,
405 bd->disk->scratch,
636 copy->disk = bd->disk;
637 if (copy->disk) {
638 copy->disk->rc += 1;