Lines Matching refs:disk
135 edit.disk = opendisk(argv[0], rdonly, file); in main()
136 if(edit.disk == nil) { in main()
142 edit.disk->secsize = secsize; in main()
143 edit.disk->secs = edit.disk->size / secsize; in main()
146 sec2cyl = edit.disk->h * edit.disk->s; in main()
147 edit.end = edit.disk->secs / sec2cyl; in main()
168 fprint(2, "cylinder = %lld bytes\n", sec2cyl*edit.disk->secsize); in main()
371 diskread(Disk *disk, void *data, int ndata, u32int sec, u32int off) in diskread() argument
373 if(seek(disk->fd, (vlong)sec*disk->secsize+off, 0) != (vlong)sec*disk->secsize+off) in diskread()
375 if(readn(disk->fd, data, ndata) != ndata) in diskread()
380 diskwrite(Disk *disk, void *data, int ndata, u32int sec, u32int off) in diskwrite() argument
383 if(seek(disk->wfd, (vlong)sec*disk->secsize+off, 0) != (vlong)sec*disk->secsize+off) in diskwrite()
385 if(write(disk->wfd, data, ndata) != ndata) in diskwrite()
456 if(diskwrite(edit->disk, &rtab[i].table, Tablesz, rtab[i].lba, Toffset) < 0) in recover()
465 ctlfd = edit->disk->ctlfd; in recover()
466 offset = edit->disk->offset; in recover()
501 diskread(edit->disk, &table, Tablesz, mbroffset+lba, Toffset); in rdpart()
539 diskread(edit->disk, &table, Tablesz, 0, Toffset); in findmbr()
545 mbroffset = edit->disk->s; in findmbr()
646 bigstart += edit->disk->s; in autopart()
647 bigsize -= edit->disk->s; in autopart()
777 sz = (b-a)*edit->disk->secsize*sec2cyl; in cmdsum()
797 edit->disk->width, a, edit->disk->width, b, b-a, sz, suf, ty); in cmdsum()
800 edit->disk->width, a, edit->disk->width, b, b-a, in cmdsum()
814 start += edit->disk->s; in cmdadd()
979 writechs(Disk *disk, uchar *p, vlong lba) in writechs() argument
983 s = lba % disk->s; in writechs()
984 h = (lba / disk->s) % disk->h; in writechs()
985 c = lba / (disk->s * disk->h); in writechs()
989 h = disk->h - 1; in writechs()
990 s = disk->s - 1; in writechs()
999 wrtentry(Disk *disk, Tentry *tp, int type, u32int xbase, u32int lba, u32int end) in wrtentry() argument
1002 writechs(disk, &tp->starth, lba); in wrtentry()
1003 writechs(disk, &tp->endh, end-1); in wrtentry()
1015 Disk *disk; in wrextend() local
1018 *endlba = edit->disk->secs; in wrextend()
1021 disk = edit->disk; in wrextend()
1022 diskread(disk, &table, Tablesz, mbroffset+startlba, Toffset); in wrextend()
1030 if(diskwrite(edit->disk, &table, Tablesz, mbroffset+startlba, Toffset) < 0) in wrextend()
1042 disk = edit->disk; in wrextend()
1043 diskread(disk, &table, Tablesz, mbroffset+startlba, Toffset); in wrextend()
1050 wrtentry(disk, tp, p->type, startlba, startlba+disk->s, p->end*sec2cyl); in wrextend()
1055 wrtentry(disk, tp, TypeEXTENDED, xbase, p->end*sec2cyl, *endlba); in wrextend()
1065 if(diskwrite(edit->disk, &table, Tablesz, mbroffset+startlba, Toffset) < 0) in wrextend()
1076 Disk *disk; in wrpart() local
1080 disk = edit->disk; in wrpart()
1082 diskread(disk, &table, Tablesz, mbroffset, Toffset); in wrpart()
1089 s = disk->s; in wrpart()
1094 wrtentry(disk, tp, p->type, 0, s, p->end*sec2cyl); in wrpart()
1104 wrtentry(disk, tp, t, 0, s, endlba); in wrpart()
1115 if(diskwrite(disk, &table, Tablesz, mbroffset, Toffset) < 0) in wrpart()
1123 if(ctldiff(edit, disk->ctlfd) < 0) in wrpart()