Changeset View
Changeset View
Standalone View
Standalone View
head/sys/boot/common/md.c
Show First 20 Lines • Show All 100 Lines • ▼ Show 20 Lines | md_strategy(void *devdata, int rw, daddr_t blk, size_t size, | ||||
ofs = blk * MD_BLOCK_SIZE; | ofs = blk * MD_BLOCK_SIZE; | ||||
if ((ofs + size) > MD_IMAGE_SIZE) | if ((ofs + size) > MD_IMAGE_SIZE) | ||||
size = MD_IMAGE_SIZE - ofs; | size = MD_IMAGE_SIZE - ofs; | ||||
if (rsize != NULL) | if (rsize != NULL) | ||||
*rsize = size; | *rsize = size; | ||||
switch (rw) { | switch (rw & F_MASK) { | ||||
case F_READ: | case F_READ: | ||||
bcopy(md_image.start + ofs, buf, size); | bcopy(md_image.start + ofs, buf, size); | ||||
return (0); | return (0); | ||||
case F_WRITE: | case F_WRITE: | ||||
bcopy(buf, md_image.start + ofs, size); | bcopy(buf, md_image.start + ofs, size); | ||||
return (0); | return (0); | ||||
} | } | ||||
Show All 39 Lines |