Lines Matching refs:disk_buf
310 } disk_buf, bootstrap; in i386_setboot() local
334 rv = pread(params->fsfd, &disk_buf, sizeof (disk_buf), 0); in i386_setboot()
335 if (rv != sizeof(disk_buf)) { in i386_setboot()
341 (long)sizeof(disk_buf)); in i386_setboot()
345 if (disk_buf.mbr.mbr_magic != le16toh(MBR_MAGIC)) { in i386_setboot()
351 memset(&disk_buf, 0, 512); in i386_setboot()
392 memcpy(bootstrap.b + 512-2-64, disk_buf.b + 512-2-64, 64); in i386_setboot()
393 memcpy(bootstrap.b + 512, disk_buf.b + 512, 512); in i386_setboot()
439 if (disk_buf.b[0] == 0xeb && disk_buf.b[1] >= 9 && in i386_setboot()
440 disk_buf.b[2] == 0x90 && in i386_setboot()
441 !is_zero(disk_buf.b + 3 + 8, disk_buf.b[1] - 1 - 8)) { in i386_setboot()
442 struct mbr_bpbFAT16 *bpb = (void *)(disk_buf.b + 3 + 8); in i386_setboot()
452 if (disk_buf.b[1] > bootstrap.b[1]) { in i386_setboot()
454 if (!is_zero(disk_buf.b + 2 + bootstrap.b[1], in i386_setboot()
455 disk_buf.b[1] - bootstrap.b[1])) { in i386_setboot()
462 u = disk_buf.b[1]; in i386_setboot()
467 memcpy(bootstrap.b + 2, disk_buf.b + 2, u); in i386_setboot()
486 memcpy(&disk_buf, &bootstrap, 512); in i386_setboot()
488 memcpy(disk_buf.b + 2 * 512, bootstrap.b + 2 * 512, in i386_setboot()
491 memset(disk_buf.b + params->s1stat.st_size, 0, in i386_setboot()
495 return write_boot_area(params, disk_buf.b, sizeof disk_buf.b); in i386_setboot()