sbd
context.part_unalloc_bits[cnt] = &dscr->sbd;
struct space_bitmap_desc *sbd, *new_sbd;
sbd = context.part_unalloc_bits[i];
recorded_part_unalloc_bits[i] = sbd;
if (sbd == NULL)
dscr_size = udf_tagsize((union dscrptr *) sbd,
memcpy(new_sbd, sbd, sizeof(struct space_bitmap_desc)-1);
for (cnt = 0; cnt < udf_rw32(sbd->num_bytes); cnt++)
sbd = context.part_unalloc_bits[i];
assert(sbd);
bpos = &dscr->sbd.data[cnt / 8];
struct space_bitmap_desc *sbd;
sbd = calloc(context.sector_size, dscr_size);
if (sbd == NULL)
udf_inittag(&sbd->tag, TAGID_SPACE_BITMAP, /* loc */ 0);
sbd->num_bits = udf_rw32(part_size_lba);
sbd->num_bytes = udf_rw32((part_size_lba + 7)/8);
for (cnt = 0; cnt < udf_rw32(sbd->num_bytes); cnt++)
sbd->data[cnt] = 0xff;
sbd->tag.desc_crc_len = udf_rw16(crclen);
*sbdp = sbd;
bpos = &dscr->sbd.data[cnt / 8];
size += udf_rw32(dscr->sbd.num_bytes);
struct sbd platform; /* System board itself */
extern struct sbd platform;
struct sbdinfo *sbd = SBD_INFO;
printf("\tmachine=0x%x, ", sbd->machine);
printf("model=0x%x\n", sbd->model);
printf("\tpmmu=%d, ", sbd->mmu);
printf("cache=%d, ", sbd->cache);
printf("panel=%d, ", sbd->panel);
printf("fdd=%d\n", sbd->fdd);
sbd->cpu, sbd->fpp, sbd->fpa, sbd->iop);
printf("\tclock=%d\n", sbd->clock);
sbd->ipl, sbd->cpu_ex, sbd->fpp_ex);
sbd->kbms, sbd->sio, sbd->battery, sbd->scsi);
printf("model name=%s\n", sbd->model_name);
struct ipw_soft_bd *sbd, struct ipw_soft_buf *sbuf)
sbd->bd->physaddr = htole32(sbuf->map->dm_segs[0].ds_addr);
struct ipw_soft_bd *sbd;
sbd = &sc->srbd_list[i];
sbuf = sbd->priv;
ipw_data_intr(sc, status, sbd, sbuf);
sbd->bd->flags = 0;
ipw_release_sbd(struct ipw_softc *sc, struct ipw_soft_bd *sbd)
switch (sbd->type) {
shdr = sbd->priv;
sbuf = sbd->priv;
sbd->type = IPW_SBD_TYPE_NOASSOC;
struct ipw_soft_bd *sbd;
sbd = &sc->stbd_list[i];
if (sbd->type == IPW_SBD_TYPE_DATA)
ipw_release_sbd(sc, sbd);
struct ipw_soft_bd *sbd;
sbd = &sc->stbd_list[sc->txcur];
sbd->type = IPW_SBD_TYPE_COMMAND;
sbd->bd->physaddr = htole32(sc->cmd_map->dm_segs[0].ds_addr);
sbd->bd->len = htole32(sizeof (struct ipw_cmd));
sbd->bd->nfrag = 1;
sbd->bd->flags = IPW_BD_FLAG_TX_FRAME_COMMAND |
struct ipw_soft_bd *sbd;
sbd = &sc->stbd_list[sc->txcur];
sbd->type = IPW_SBD_TYPE_HEADER;
sbd->priv = shdr;
sbd->bd->physaddr = htole32(shdr->addr);
sbd->bd->len = htole32(sizeof (struct ipw_hdr));
sbd->bd->nfrag = 1 + sbuf->map->dm_nsegs;
sbd->bd->flags = IPW_BD_FLAG_TX_FRAME_802_3 |
sbd = &sc->stbd_list[sc->txcur];
sbd->bd->physaddr = htole32(sbuf->map->dm_segs[i].ds_addr);
sbd->bd->len = htole32(sbuf->map->dm_segs[i].ds_len);
sbd->bd->nfrag = 0;
sbd->bd->flags = IPW_BD_FLAG_TX_FRAME_802_3;
sbd->type = IPW_SBD_TYPE_DATA;
sbd->priv = sbuf;
sbd->bd->flags |= IPW_BD_FLAG_TX_LAST_FRAGMENT;
sbd->type = IPW_SBD_TYPE_NOASSOC;
sbd->bd->flags |= IPW_BD_FLAG_TX_NOT_LAST_FRAGMENT;
struct ipw_soft_bd *sbd;
sbd = &sc->stbd_list[i];
sbd->bd = &sc->tbd_list[i];
sbd->type = IPW_SBD_TYPE_NOASSOC;
sbd = &sc->srbd_list[i];
sbd->bd = &sc->rbd_list[i];
sbd->type = IPW_SBD_TYPE_DATA;
sbd->priv = sbuf;
sbd->bd->physaddr = htole32(sbuf->map->dm_segs[0].ds_addr);
sbd->bd->len = htole32(MCLBYTES);
struct space_bitmap_desc sbd;
struct space_bitmap_desc *sbd, *new_sbd;
sbd = (struct space_bitmap_desc *) bitmap->blob;
sbd->num_bits = udf_rw32(udf_rw32(sbd->num_bits) - to_trunc);
sbd->num_bytes = udf_rw32(udf_rw32(sbd->num_bytes) - to_trunc/8);
bitmap->max_offset = udf_rw32(sbd->num_bits);
new_sbd = realloc(sbd, inf_len, M_UDFVOLD, M_WAITOK);
inf_len = (uint64_t) udf_rw32(sbd->num_bits) * lb_size; /* [4/14.12.4] */
ump->part_unalloc_dscr[phys_part] = &dscr->sbd;
bitmap->bits = dscr->sbd.data;
bitmap->max_offset = udf_rw32(dscr->sbd.num_bits);
ump->part_freed_dscr[phys_part] = &dscr->sbd;
bitmap->bits = dscr->sbd.data;
bitmap->max_offset = udf_rw32(dscr->sbd.num_bits);
KASSERT(udf_rw16(dscr->sbd.tag.id) == TAGID_SPACE_BITMAP);
if (udf_rw16(dscr->sbd.tag.desc_crc_len) == 0)
dscr->sbd.tag.desc_crc_len = udf_rw16(8);
KASSERT(udf_rw16(dscr->sbd.tag.id) == TAGID_SPACE_BITMAP);
if (udf_rw16(dscr->sbd.tag.desc_crc_len) == 0)
dscr->sbd.tag.desc_crc_len = udf_rw16(8);
ump->metadata_unalloc_dscr = &dscr->sbd;
bitmap->bits = dscr->sbd.data;
bitmap->max_offset = udf_rw32(dscr->sbd.num_bits);
size += udf_rw32(dscr->sbd.num_bytes);