Home | History | Annotate | Download | only in arch

Lines Matching defs:disk_buf

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