bt_bad
ctx->bc_bt.bt_bad[i].bt_cyl =
ctx->bc_bt.bt_bad[i].bt_trksec = 0xffff;
((bt->bt_bad[i].bt_cyl == 0xffff || \
bt->bt_bad[i].bt_cyl == 0) && \
bt->bt_bad[i].bt_trksec == 0xffff)
if (EMPTY_SLOT(&bt->bt_bad[i])) {
if (bt->bt_bad[i].bt_cyl >= ctx->bc_ncyl ||
(bt->bt_bad[i].bt_trksec >> 8) >= ctx->bc_ntrkcyl ||
(bt->bt_bad[i].bt_trksec & 0xff) >= ctx->bc_nsectrk) {
key = ((daddr_t)bt->bt_bad[i].bt_cyl << 16) +
bt->bt_bad[i].bt_trksec;
if (!EMPTY_SLOT(&bt->bt_bad[i])) {
if (EMPTY_SLOT(&bt->bt_bad[i])) {
(bt->bt_bad[i].bt_cyl * (ctx->bc_ntrkcyl * ctx->bc_nsectrk))
+ ((bt->bt_bad[i].bt_trksec >> 8) * ctx->bc_nsectrk)
+ (bt->bt_bad[i].bt_trksec & 0xff);
tkey = ((daddr_t)bt->bt_bad[i].bt_cyl << 16) +
bt->bt_bad[i].bt_trksec;
} bt_bad[NBT_BAD];
struct bt_bad *bt;
bt = oldbad.bt_bad;
curbad.bt_bad[i].bt_cyl = sn / (dp->d_nsectors*dp->d_ntracks);
curbad.bt_bad[i].bt_trksec =
curbad.bt_bad[i].bt_trksec = -1;
curbad.bt_bad[i].bt_cyl = -1;
qsort((char *)curbad.bt_bad, nbad, sizeof (struct bt_bad),
struct bt_bad *bt;
bt = oldbad.bt_bad;
compare(&curbad.bt_bad[new], &oldbad.bt_bad[old]) > 0) {
!blkcopy(f, badsn(&curbad.bt_bad[new]), repl - new))
const struct bt_bad *b1 = v1;
const struct bt_bad *b2 = v2;
badsn(const struct bt_bad *bt)
static daddr_t badsn(const struct bt_bad *);