Symbol: scn
usr/src/cmd/abi/appcert/static_prof/static_prof.c
1185
Elf_Scn *scn;
usr/src/cmd/abi/appcert/static_prof/static_prof.c
1213
scn = elf_getscn(elf_file, shdr->sh_link);
usr/src/cmd/abi/appcert/static_prof/static_prof.c
1214
if (scn == NULL)
usr/src/cmd/abi/appcert/static_prof/static_prof.c
1216
data = elf_getdata(scn, NULL);
usr/src/cmd/abi/appcert/static_prof/static_prof.c
1267
Elf_Scn *scn, *scnfd;
usr/src/cmd/abi/appcert/static_prof/static_prof.c
1293
scn = 0;
usr/src/cmd/abi/appcert/static_prof/static_prof.c
1294
while ((scn = elf_nextscn(elf_file, scn)) != 0) {
usr/src/cmd/abi/appcert/static_prof/static_prof.c
1297
if ((shdr = elf64_getshdr(scn)) == NULL)
usr/src/cmd/abi/appcert/static_prof/static_prof.c
1300
if ((shdr = elf32_getshdr(scn)) == NULL)
usr/src/cmd/abi/appcert/static_prof/static_prof.c
1311
print_symtab(c, elf_file, ehdr, shdr, scn, filename);
usr/src/cmd/abi/appcert/static_prof/static_prof.c
612
Elf_Scn *scn; /* temp section header pointer */
usr/src/cmd/abi/appcert/static_prof/static_prof.c
631
scn = 0;
usr/src/cmd/abi/appcert/static_prof/static_prof.c
633
while ((scn = elf_nextscn(c->obj->elf, scn)) != 0) {
usr/src/cmd/abi/appcert/static_prof/static_prof.c
636
scurrent = elf64_getshdr(scn);
usr/src/cmd/abi/appcert/static_prof/static_prof.c
638
scurrent = elf32_getshdr(scn);
usr/src/cmd/abi/appcert/static_prof/static_prof.c
644
if ((ddata = elf_getdata(scn, ddata)) == 0 ||
usr/src/cmd/abi/appcert/static_prof/static_prof.c
654
scn = elf_getscn(c->obj->elf, index);
usr/src/cmd/abi/appcert/static_prof/static_prof.c
657
scurrent = elf64_getshdr(scn);
usr/src/cmd/abi/appcert/static_prof/static_prof.c
659
scurrent = elf32_getshdr(scn);
usr/src/cmd/abi/appcert/static_prof/static_prof.c
662
c->obj->ddata = elf_getdata(scn, (c->obj->ddata));
usr/src/cmd/abi/appcert/static_prof/static_prof.c
690
Elf_Scn *scn, *scn2;
usr/src/cmd/abi/appcert/static_prof/static_prof.c
701
scn = 0;
usr/src/cmd/abi/appcert/static_prof/static_prof.c
710
while ((scn = elf_nextscn(c->obj->elf, scn)) != 0) {
usr/src/cmd/abi/appcert/static_prof/static_prof.c
721
shdr = elf64_getshdr(scn);
usr/src/cmd/abi/appcert/static_prof/static_prof.c
723
shdr = elf32_getshdr(scn);
usr/src/cmd/abi/appcert/static_prof/static_prof.c
735
data = elf_getdata(scn, NULL);
usr/src/cmd/abi/appcert/static_prof/static_prof.c
865
Elf_Scn *scn = elf_getscn(elf_file, shndx);
usr/src/cmd/abi/appcert/static_prof/static_prof.c
867
if (scn != NULL) {
usr/src/cmd/abi/appcert/static_prof/static_prof.c
870
shdr = elf64_getshdr(scn);
usr/src/cmd/abi/appcert/static_prof/static_prof.c
873
shdr = elf32_getshdr(scn);
usr/src/cmd/boot/symdef/symdef.c
61
Elf_Scn *scn = NULL;
usr/src/cmd/boot/symdef/symdef.c
91
while ((scn = elf_nextscn(elfp, scn)) != NULL) {
usr/src/cmd/boot/symdef/symdef.c
92
if ((gelf_getshdr(scn, &shdr) == NULL) ||
usr/src/cmd/boot/symdef/symdef.c
95
((symdata = elf_getdata(scn, NULL)) == NULL))
usr/src/cmd/ctfmerge/ctfmerge.c
101
Elf_Scn *scn;
usr/src/cmd/ctfmerge/ctfmerge.c
115
scn = NULL;
usr/src/cmd/ctfmerge/ctfmerge.c
116
while ((scn = elf_nextscn(elf, scn)) != NULL) {
usr/src/cmd/ctfmerge/ctfmerge.c
119
if (gelf_getshdr(scn, &shdr) == NULL)
usr/src/cmd/ctfmerge/ctfmerge.c
133
ctf_data = elf_getdata(scn, NULL);
usr/src/cmd/ctfmerge/ctfmerge.c
164
sym_data = elf_getdata(scn, NULL);
usr/src/cmd/dis/dis_list.c
140
walk_sections(dis_tgt_t *tgt, dis_scn_t *scn, void *data)
usr/src/cmd/dis/dis_list.c
150
if (strcmp(unp->un_name, dis_section_name(scn)) == 0) {
usr/src/cmd/dis/dis_list.c
163
resolved->rn_data = dis_section_copy(scn);
usr/src/cmd/dis/dis_main.c
364
dis_text_section(dis_tgt_t *tgt, dis_scn_t *scn, void *data)
usr/src/cmd/dis/dis_main.c
369
if (!dis_section_istext(scn))
usr/src/cmd/dis/dis_main.c
373
(void) printf("\nsection %s\n", dis_section_name(scn));
usr/src/cmd/dis/dis_main.c
375
dis_data(tgt, dhp, dis_section_addr(scn), dis_section_data(scn),
usr/src/cmd/dis/dis_main.c
376
dis_section_size(scn));
usr/src/cmd/dis/dis_main.c
394
dis_named_section(dis_scn_t *scn, int type, void *data)
usr/src/cmd/dis/dis_main.c
399
(void) printf("\nsection %s\n", dis_section_name(scn));
usr/src/cmd/dis/dis_main.c
403
dump_data(0, dis_section_data(scn), dis_section_size(scn));
usr/src/cmd/dis/dis_main.c
406
dump_data(dis_section_addr(scn), dis_section_data(scn),
usr/src/cmd/dis/dis_main.c
407
dis_section_size(scn));
usr/src/cmd/dis/dis_main.c
410
dis_data(ca->ca_tgt, ca->ca_handle, dis_section_addr(scn),
usr/src/cmd/dis/dis_main.c
411
dis_section_data(scn), dis_section_size(scn));
usr/src/cmd/dis/dis_target.c
133
tgt_scn_init(dis_tgt_t *tgt, dis_scn_t *scn, void *data)
usr/src/cmd/dis/dis_target.c
139
tgt->dt_shnmap[*index].dm_name = scn->ds_name;
usr/src/cmd/dis/dis_target.c
140
tgt->dt_shnmap[*index].dm_start = scn->ds_shdr.sh_addr;
usr/src/cmd/dis/dis_target.c
141
tgt->dt_shnmap[*index].dm_length = scn->ds_shdr.sh_size;
usr/src/cmd/dis/dis_target.c
147
if (scn->ds_shdr.sh_type == SHT_DYNSYM && tgt->dt_symidx == 0)
usr/src/cmd/dis/dis_target.c
149
else if (scn->ds_shdr.sh_type == SHT_SYMTAB)
usr/src/cmd/dis/dis_target.c
254
Elf_Scn *scn;
usr/src/cmd/dis/dis_target.c
267
for (scn = elf_nextscn(tgt->dt_elf, NULL); scn != NULL;
usr/src/cmd/dis/dis_target.c
268
scn = elf_nextscn(tgt->dt_elf, scn)) {
usr/src/cmd/dis/dis_target.c
269
if (gelf_getshdr(scn, &shdr) == NULL)
usr/src/cmd/dis/dis_target.c
275
if ((data = elf_getdata(scn, NULL)) != NULL) {
usr/src/cmd/dis/dis_target.c
284
if ((scn = elf_getscn(tgt->dt_elf, tgt->dt_symidx)) == NULL)
usr/src/cmd/dis/dis_target.c
286
if (gelf_getshdr(scn, &shdr) == NULL)
usr/src/cmd/dis/dis_target.c
291
if ((symdata = elf_getdata(scn, NULL)) == NULL)
usr/src/cmd/dis/dis_target.c
772
Elf_Scn *scn;
usr/src/cmd/dis/dis_target.c
775
for (scn = elf_nextscn(tgt->dt_elf, NULL), idx = 1; scn != NULL;
usr/src/cmd/dis/dis_target.c
776
scn = elf_nextscn(tgt->dt_elf, scn), idx++) {
usr/src/cmd/dis/dis_target.c
778
if (gelf_getshdr(scn, &sdata.ds_shdr) == NULL) {
usr/src/cmd/dis/dis_target.c
791
if ((sdata.ds_data = elf_getdata(scn, NULL)) == NULL) {
usr/src/cmd/dis/dis_target.c
814
dis_section_istext(dis_scn_t *scn)
usr/src/cmd/dis/dis_target.c
816
return ((scn->ds_shdr.sh_type == SHT_PROGBITS) &&
usr/src/cmd/dis/dis_target.c
817
(scn->ds_shdr.sh_flags == (SHF_ALLOC | SHF_EXECINSTR)));
usr/src/cmd/dis/dis_target.c
824
dis_section_data(dis_scn_t *scn)
usr/src/cmd/dis/dis_target.c
826
return (scn->ds_data->d_buf);
usr/src/cmd/dis/dis_target.c
833
dis_section_size(dis_scn_t *scn)
usr/src/cmd/dis/dis_target.c
835
return (scn->ds_data->d_size);
usr/src/cmd/dis/dis_target.c
842
dis_section_addr(dis_scn_t *scn)
usr/src/cmd/dis/dis_target.c
844
return (scn->ds_shdr.sh_addr);
usr/src/cmd/dis/dis_target.c
851
dis_section_name(dis_scn_t *scn)
usr/src/cmd/dis/dis_target.c
853
return (scn->ds_name);
usr/src/cmd/dis/dis_target.c
860
dis_section_copy(dis_scn_t *scn)
usr/src/cmd/dis/dis_target.c
865
(void) memcpy(new, scn, sizeof (dis_scn_t));
usr/src/cmd/dis/dis_target.c
874
dis_section_free(dis_scn_t *scn)
usr/src/cmd/dis/dis_target.c
876
free(scn);
usr/src/cmd/dis/dis_target.c
889
Elf_Scn *scn;
usr/src/cmd/dis/dis_target.c
902
if ((scn = elf_getscn(tgt->dt_elf, sym->se_shndx)) == NULL ||
usr/src/cmd/dis/dis_target.c
903
gelf_getshdr(scn, &shdr) == NULL ||
usr/src/cmd/dis/dis_target.c
904
(df.df_data = elf_getdata(scn, NULL)) == NULL ||
usr/src/cmd/isns/isnsd/func.c
1239
uint32_t scn;
usr/src/cmd/isns/isnsd/func.c
1257
scn = ntohl(*(uint32_t *)&op->attr_value[0]);
usr/src/cmd/isns/isnsd/func.c
1259
ec = add_scn_entry(node_name, nlen, scn);
usr/src/cmd/isns/isnsd/isns_scn.h
104
scn_t *scn;
usr/src/cmd/isns/isnsd/isns_scn.h
91
struct scn *next;
usr/src/cmd/isns/isnsd/scn.c
1304
s = p->scn;
usr/src/cmd/isns/isnsd/scn.c
1333
p->scn = s;
usr/src/cmd/isns/isnsd/scn.c
1741
s = p->scn;
usr/src/cmd/isns/isnsd/scn.c
1838
if (p->scn != NULL) {
usr/src/cmd/isns/isnsd/scn.c
1888
list->scn = NULL;
usr/src/cmd/isns/isnsd/scn.c
2007
e->scn = NULL;
usr/src/cmd/isns/isnsd/scn.c
237
scn_t *scn
usr/src/cmd/isns/isnsd/scn.c
244
while (scn != NULL) {
usr/src/cmd/isns/isnsd/scn.c
245
next_scn = scn->next;
usr/src/cmd/isns/isnsd/scn.c
246
list = scn->data.list;
usr/src/cmd/isns/isnsd/scn.c
253
free(scn);
usr/src/cmd/isns/isnsd/scn.c
254
scn = next_scn;
usr/src/cmd/isns/isnsd/scn.c
275
free_scn_list(p->scn);
usr/src/cmd/isns/isnsd/scn.c
276
p->scn = NULL;
usr/src/cmd/isns/isnsd/scn.c
296
free_scn_list(e->scn);
usr/src/cmd/lockstat/sym.c
140
Elf_Scn *scn = NULL;
usr/src/cmd/lockstat/sym.c
155
for (cnt = 1; (scn = elf_nextscn(elf, scn)) != NULL; cnt++) {
usr/src/cmd/lockstat/sym.c
156
Shdr *shdr = elf_getshdr(scn);
usr/src/cmd/lockstat/sym.c
158
symtab = (Sym *)elf_getdata(scn, NULL)->d_buf;
usr/src/cmd/lockstat/sym.c
164
for (cnt = 1; (scn = elf_nextscn(elf, scn)) != NULL; cnt++) {
usr/src/cmd/lockstat/sym.c
166
strtab = (char *)elf_getdata(scn, NULL)->d_buf;
usr/src/cmd/mdb/tools/common/findscn.c
36
Elf_Scn *scn = NULL;
usr/src/cmd/mdb/tools/common/findscn.c
43
while ((scn = elf_nextscn(elf, scn)) != NULL) {
usr/src/cmd/mdb/tools/common/findscn.c
46
if (gelf_getshdr(scn, &shdr) == NULL ||
usr/src/cmd/mdb/tools/common/findscn.c
52
return (elf_ndxscn(scn));
usr/src/cmd/mdb/tools/setdynflag/common/setdynflag.c
103
if ((scn = elf_getscn(elf, secidx)) == NULL)
usr/src/cmd/mdb/tools/setdynflag/common/setdynflag.c
106
if (gelf_getshdr(scn, &shdr) == NULL)
usr/src/cmd/mdb/tools/setdynflag/common/setdynflag.c
109
if ((data = elf_getdata(scn, NULL)) == NULL)
usr/src/cmd/mdb/tools/setdynflag/common/setdynflag.c
86
Elf_Scn *scn;
usr/src/cmd/sgs/ar/common/file.c
1420
search_sym_tab(const char *arname, ARFILE *fptr, Elf *elf, Elf_Scn *scn,
usr/src/cmd/sgs/ar/common/file.c
1435
(void) gelf_getshdr(scn, &shdr);
usr/src/cmd/sgs/ar/common/file.c
1500
if ((sym_data = elf_getdata(scn, sym_data)) == NULL) {
usr/src/cmd/sgs/ar/common/file.c
249
Elf_Scn *scn = NULL;
usr/src/cmd/sgs/ar/common/file.c
252
scn = elf_nextscn(elf, scn);
usr/src/cmd/sgs/ar/common/file.c
253
if (scn) {
usr/src/cmd/sgs/ar/common/file.c
256
if (gelf_getshdr(scn, &shdr)) {
usr/src/cmd/sgs/ar/common/file.c
264
} while (scn);
usr/src/cmd/sgs/ar/common/file.c
479
Elf_Scn *scn;
usr/src/cmd/sgs/ar/common/file.c
586
scn = elf_getscn(elf, shstrndx);
usr/src/cmd/sgs/ar/common/file.c
587
if (scn == NULL) {
usr/src/cmd/sgs/ar/common/file.c
607
data = elf_getdata(scn, data);
usr/src/cmd/sgs/ar/common/file.c
645
scn = 0;
usr/src/cmd/sgs/ar/common/file.c
646
while ((scn = elf_nextscn(elf, scn)) != 0) {
usr/src/cmd/sgs/ar/common/file.c
648
if (gelf_getshdr(scn, &shdr) == NULL) {
usr/src/cmd/sgs/ar/common/file.c
672
scn, &nsyms, symlist,
usr/src/cmd/sgs/demo_rdb/common/maps.c
208
Elf_Scn *scn = NULL;
usr/src/cmd/sgs/demo_rdb/common/maps.c
299
while ((scn = elf_nextscn(mp->mi_elf, scn)) != NULL) {
usr/src/cmd/sgs/demo_rdb/common/maps.c
304
if (gelf_getshdr(scn, &shdr) == NULL) {
usr/src/cmd/sgs/demo_rdb/common/maps.c
312
dp = elf_getdata(scn, 0);
usr/src/cmd/sgs/demo_rdb/common/maps.c
321
dp = elf_getdata(scn, 0);
usr/src/cmd/sgs/demo_rdb/common/maps.c
328
dp = elf_getdata(scn, 0);
usr/src/cmd/sgs/dump/common/dump.c
1402
Elf_Scn *scn;
usr/src/cmd/sgs/dump/common/dump.c
1422
if ((scn = elf_getscn(elf_file, 0)) == NULL) {
usr/src/cmd/sgs/dump/common/dump.c
1428
if (gelf_getshdr(scn, &shdr0) == 0) {
usr/src/cmd/sgs/dump/common/dump.c
1657
Elf_Scn *scn = 0;
usr/src/cmd/sgs/dump/common/dump.c
1691
while ((scn = elf_nextscn(elf_file, scn)) != 0) {
usr/src/cmd/sgs/dump/common/dump.c
1692
if ((gelf_getshdr(scn, &buffer->p_shdr)) == 0) {
usr/src/cmd/sgs/dump/common/dump.c
1701
buffer->p_sd = scn;
usr/src/cmd/sgs/elfdump/common/elfdump.c
4626
Elf_Scn *scn;
usr/src/cmd/sgs/elfdump/common/elfdump.c
4646
} else if ((scn = elf_getscn(elf, shstrndx)) == NULL) {
usr/src/cmd/sgs/elfdump/common/elfdump.c
4651
} else if ((data = elf_getdata(scn, NULL)) == NULL) {
usr/src/cmd/sgs/elfdump/common/elfdump.c
4656
} else if ((nameshdr = elf_getshdr(scn)) == NULL) {
usr/src/cmd/sgs/elfdump/common/elfdump.c
4659
EC_WORD(elf_ndxscn(scn)));
usr/src/cmd/sgs/elfdump/common/elfdump.c
4718
for (ndx = 1, scn = NULL; (scn = elf_nextscn(elf, scn)) != NULL;
usr/src/cmd/sgs/elfdump/common/elfdump.c
4723
_cache->c_scn = scn;
usr/src/cmd/sgs/elfdump/common/elfdump.c
4725
if ((_cache->c_shdr = elf_getshdr(scn)) == NULL) {
usr/src/cmd/sgs/elfdump/common/elfdump.c
4728
EC_WORD(elf_ndxscn(scn)));
usr/src/cmd/sgs/elfdump/common/elfdump.c
4904
Elf_Scn *scn = _cache->c_scn;
usr/src/cmd/sgs/elfdump/common/elfdump.c
4906
if ((_cache->c_data = elf_getdata(scn, NULL)) == NULL) {
usr/src/cmd/sgs/elfdump/common/elfdump.c
4909
EC_WORD(elf_ndxscn(scn)));
usr/src/cmd/sgs/elfdump/common/elfdump.c
4974
Elf_Scn *scn;
usr/src/cmd/sgs/elfdump/common/elfdump.c
5013
if ((scn = elf_getscn(elf, 0)) != NULL) {
usr/src/cmd/sgs/elfdump/common/elfdump.c
5014
if ((shdr = elf_getshdr(scn)) == NULL) {
usr/src/cmd/sgs/elfedit/common/elfedit_machelf.c
128
Elf_Scn *scn;
usr/src/cmd/sgs/elfedit/common/elfedit_machelf.c
169
LIBELF((scn = elf_getscn(tstate.os_elf, tstate.os_shstrndx)),
usr/src/cmd/sgs/elfedit/common/elfedit_machelf.c
171
LIBELF((data = elf_getdata(scn, NULL)), MSG_ORIG(MSG_ELF_GETDATA))
usr/src/cmd/sgs/elfedit/common/elfedit_machelf.c
179
for (ndx = 1, scn = NULL;
usr/src/cmd/sgs/elfedit/common/elfedit_machelf.c
180
(scn = elf_nextscn(tstate.os_elf, scn)) != NULL; ndx++) {
usr/src/cmd/sgs/elfedit/common/elfedit_machelf.c
183
LIBELF(shdr = elf_getshdr(scn), MSG_ORIG(MSG_ELF_GETSHDR));
usr/src/cmd/sgs/elfedit/common/elfedit_machelf.c
251
LIBELF(scn = elf_getscn(tstate.os_elf, 0),
usr/src/cmd/sgs/elfedit/common/elfedit_machelf.c
253
_cache->sec_scn = scn;
usr/src/cmd/sgs/elfedit/common/elfedit_machelf.c
254
LIBELF(_cache->sec_shdr = elf_getshdr(scn), MSG_ORIG(MSG_ELF_GETSHDR));
usr/src/cmd/sgs/elfedit/common/elfedit_machelf.c
267
for (ndx = 1, scn = NULL;
usr/src/cmd/sgs/elfedit/common/elfedit_machelf.c
268
(scn = elf_nextscn(tstate.os_elf, scn)) != NULL; ndx++, _cache++) {
usr/src/cmd/sgs/elfedit/common/elfedit_machelf.c
270
_cache->sec_scn = scn;
usr/src/cmd/sgs/elfedit/common/elfedit_machelf.c
271
LIBELF(_cache->sec_shdr = elf_getshdr(scn),
usr/src/cmd/sgs/elfedit/common/elfedit_machelf.c
273
_cache->sec_data = elf_getdata(scn, NULL);
usr/src/cmd/sgs/elfwrap/common/elfwrap.c
287
Elf_Scn *scn;
usr/src/cmd/sgs/elfwrap/common/elfwrap.c
291
if ((scn = elf_newscn(oelf)) == NULL) {
usr/src/cmd/sgs/elfwrap/common/elfwrap.c
296
if ((shdr = elf_getshdr(scn)) == NULL) {
usr/src/cmd/sgs/elfwrap/common/elfwrap.c
308
if ((data = elf_newdata(scn)) == NULL) {
usr/src/cmd/sgs/elfwrap/common/elfwrap.c
387
Elf_Scn *scn;
usr/src/cmd/sgs/elfwrap/common/elfwrap.c
390
if ((scn = elf_getscn(melf, outsec->os_ndx)) == NULL) {
usr/src/cmd/sgs/elfwrap/common/elfwrap.c
395
if ((outsec->os_shdr = shdr = elf_getshdr(scn)) == NULL) {
usr/src/cmd/sgs/elfwrap/common/elfwrap.c
400
if ((outsec->os_data = elf_getdata(scn, NULL)) == NULL) {
usr/src/cmd/sgs/gprof/common/readelf.c
403
Elf_Scn *scn;
usr/src/cmd/sgs/gprof/common/readelf.c
444
scn = elf_getscn(elf, sym->st_shndx);
usr/src/cmd/sgs/gprof/common/readelf.c
445
(void) gelf_getshdr(scn, &shdr);
usr/src/cmd/sgs/gprof/common/readelf.c
456
Elf_Scn *scn = NULL, *sym_pri = NULL, *sym_aux = NULL;
usr/src/cmd/sgs/gprof/common/readelf.c
477
while ((symtab_found == 0) && ((scn = elf_nextscn(elf, scn)) != NULL)) {
usr/src/cmd/sgs/gprof/common/readelf.c
480
if (gelf_getshdr(scn, &shdr) == NULL)
usr/src/cmd/sgs/gprof/common/readelf.c
487
sym_pri = scn;
usr/src/cmd/sgs/gprof/common/readelf.c
499
sym_pri = scn;
usr/src/cmd/sgs/gprof/common/readelf.c
505
sym_aux = scn;
usr/src/cmd/sgs/libelf/common/checksum.c
106
Elf_Scn * scn;
usr/src/cmd/sgs/libelf/common/checksum.c
133
if ((scn = elf_getscn(elf, shnum)) == 0)
usr/src/cmd/sgs/libelf/common/checksum.c
135
if ((shdr = getshdr(scn)) == 0)
usr/src/cmd/sgs/libelf/common/checksum.c
158
while ((data = (*getdata)(scn, data)) != 0)
usr/src/cmd/sgs/libelf/common/flag.c
132
elf_flagscn(Elf_Scn * scn, Elf_Cmd cmd, unsigned flags)
usr/src/cmd/sgs/libelf/common/flag.c
137
if (scn == 0)
usr/src/cmd/sgs/libelf/common/flag.c
140
elf = scn->s_elf;
usr/src/cmd/sgs/libelf/common/flag.c
142
READLOCKS(elf, scn)
usr/src/cmd/sgs/libelf/common/flag.c
143
rc = scn->s_uflags |= flags;
usr/src/cmd/sgs/libelf/common/flag.c
144
READUNLOCKS(elf, scn)
usr/src/cmd/sgs/libelf/common/flag.c
148
READLOCKS(elf, scn)
usr/src/cmd/sgs/libelf/common/flag.c
149
rc = scn->s_uflags &= ~flags;
usr/src/cmd/sgs/libelf/common/flag.c
150
READUNLOCKS(elf, scn)
usr/src/cmd/sgs/libelf/common/flag.c
159
elf_flagshdr(Elf_Scn * scn, Elf_Cmd cmd, unsigned flags)
usr/src/cmd/sgs/libelf/common/flag.c
163
if (scn == 0)
usr/src/cmd/sgs/libelf/common/flag.c
166
elf = scn->s_elf;
usr/src/cmd/sgs/libelf/common/flag.c
168
READLOCKS(elf, scn)
usr/src/cmd/sgs/libelf/common/flag.c
169
rc = scn->s_shflags |= flags;
usr/src/cmd/sgs/libelf/common/flag.c
170
READUNLOCKS(elf, scn)
usr/src/cmd/sgs/libelf/common/flag.c
174
READLOCKS(elf, scn)
usr/src/cmd/sgs/libelf/common/flag.c
175
rc = scn->s_shflags &= ~flags;
usr/src/cmd/sgs/libelf/common/flag.c
176
READUNLOCKS(elf, scn)
usr/src/cmd/sgs/libelf/common/flag.c
40
Elf_Scn * scn;
usr/src/cmd/sgs/libelf/common/flag.c
46
scn = d->db_scn;
usr/src/cmd/sgs/libelf/common/flag.c
47
elf = scn->s_elf;
usr/src/cmd/sgs/libelf/common/flag.c
49
READLOCKS(elf, scn)
usr/src/cmd/sgs/libelf/common/flag.c
57
READUNLOCKS(elf, scn)
usr/src/cmd/sgs/libelf/common/gelf.c
1096
Elf_Scn *scn = NULL;
usr/src/cmd/sgs/libelf/common/gelf.c
1102
while ((scn = elf_nextscn(elf, scn)) != NULL) {
usr/src/cmd/sgs/libelf/common/gelf.c
1103
if (gelf_getshdr(scn, &shdr) == NULL)
usr/src/cmd/sgs/libelf/common/gelf.c
1107
data = elf_getdata(scn, NULL);
usr/src/cmd/sgs/libelf/common/gelf.c
331
gelf_getshdr(Elf_Scn *scn, GElf_Shdr *dst)
usr/src/cmd/sgs/libelf/common/gelf.c
333
if (scn == NULL)
usr/src/cmd/sgs/libelf/common/gelf.c
336
if (scn->s_elf->ed_class == ELFCLASS32) {
usr/src/cmd/sgs/libelf/common/gelf.c
337
Elf32_Shdr *s = elf32_getshdr(scn);
usr/src/cmd/sgs/libelf/common/gelf.c
342
READLOCKS(scn->s_elf, scn);
usr/src/cmd/sgs/libelf/common/gelf.c
353
READUNLOCKS(scn->s_elf, scn);
usr/src/cmd/sgs/libelf/common/gelf.c
356
} else if (scn->s_elf->ed_class == ELFCLASS64) {
usr/src/cmd/sgs/libelf/common/gelf.c
357
Elf64_Shdr *s = elf64_getshdr(scn);
usr/src/cmd/sgs/libelf/common/gelf.c
362
READLOCKS(scn->s_elf, scn);
usr/src/cmd/sgs/libelf/common/gelf.c
364
READUNLOCKS(scn->s_elf, scn);
usr/src/cmd/sgs/libelf/common/gelf.c
375
gelf_update_shdr(Elf_Scn *scn, GElf_Shdr *src)
usr/src/cmd/sgs/libelf/common/gelf.c
377
if (scn == NULL)
usr/src/cmd/sgs/libelf/common/gelf.c
380
if (scn->s_elf->ed_class == ELFCLASS32) {
usr/src/cmd/sgs/libelf/common/gelf.c
381
Elf32_Shdr *dst = elf32_getshdr(scn);
usr/src/cmd/sgs/libelf/common/gelf.c
386
ELFWLOCK(scn->s_elf);
usr/src/cmd/sgs/libelf/common/gelf.c
404
ELFUNLOCK(scn->s_elf);
usr/src/cmd/sgs/libelf/common/gelf.c
406
} else if (scn->s_elf->ed_class == ELFCLASS64) {
usr/src/cmd/sgs/libelf/common/gelf.c
407
Elf64_Shdr * dst = elf64_getshdr(scn);
usr/src/cmd/sgs/libelf/common/gelf.c
412
ELFWLOCK(scn->s_elf);
usr/src/cmd/sgs/libelf/common/gelf.c
414
ELFUNLOCK(scn->s_elf);
usr/src/cmd/sgs/libelf/common/getdata.c
111
_elf_locked_getdata(Elf_Scn * scn, Elf_Data * data)
usr/src/cmd/sgs/libelf/common/getdata.c
118
assert(!elf_threaded || RW_LOCK_HELD(&(scn->s_elf->ed_rwlock)));
usr/src/cmd/sgs/libelf/common/getdata.c
119
assert(!elf_threaded || MUTEX_HELD(&(scn->s_mutex)));
usr/src/cmd/sgs/libelf/common/getdata.c
120
elf = scn->s_elf;
usr/src/cmd/sgs/libelf/common/getdata.c
122
if ((scn->s_myflags & SF_READY) == 0) {
usr/src/cmd/sgs/libelf/common/getdata.c
123
UPGRADELOCKS(elf, scn)
usr/src/cmd/sgs/libelf/common/getdata.c
128
if ((scn->s_myflags & SF_READY) == 0)
usr/src/cmd/sgs/libelf/common/getdata.c
129
(void) _elf_cookscn(scn);
usr/src/cmd/sgs/libelf/common/getdata.c
130
DOWNGRADELOCKS(elf, scn)
usr/src/cmd/sgs/libelf/common/getdata.c
134
d = scn->s_hdnode;
usr/src/cmd/sgs/libelf/common/getdata.c
138
if (scn->s_err != 0) {
usr/src/cmd/sgs/libelf/common/getdata.c
140
_elf_seterr((Msg)scn->s_err, 0);
usr/src/cmd/sgs/libelf/common/getdata.c
148
if (d->db_scn != scn) {
usr/src/cmd/sgs/libelf/common/getdata.c
156
elf = scn->s_elf;
usr/src/cmd/sgs/libelf/common/getdata.c
175
Elf32_Shdr *sh = scn->s_shdr;
usr/src/cmd/sgs/libelf/common/getdata.c
185
Elf64_Shdr *sh = scn->s_shdr;
usr/src/cmd/sgs/libelf/common/getdata.c
219
UPGRADELOCKS(elf, scn)
usr/src/cmd/sgs/libelf/common/getdata.c
221
DOWNGRADELOCKS(elf, scn)
usr/src/cmd/sgs/libelf/common/getdata.c
224
DOWNGRADELOCKS(elf, scn)
usr/src/cmd/sgs/libelf/common/getdata.c
296
elf_getdata(Elf_Scn * scn, Elf_Data * data)
usr/src/cmd/sgs/libelf/common/getdata.c
306
if (scn == 0)
usr/src/cmd/sgs/libelf/common/getdata.c
309
elf = scn->s_elf;
usr/src/cmd/sgs/libelf/common/getdata.c
310
READLOCKS(elf, scn);
usr/src/cmd/sgs/libelf/common/getdata.c
311
rc = _elf_locked_getdata(scn, data);
usr/src/cmd/sgs/libelf/common/getdata.c
312
READUNLOCKS(elf, scn);
usr/src/cmd/sgs/libelf/common/getphnum.c
50
Elf_Scn *scn;
usr/src/cmd/sgs/libelf/common/getphnum.c
61
if ((scn = elf_getscn(elf, 0)) == NULL ||
usr/src/cmd/sgs/libelf/common/getphnum.c
62
gelf_getshdr(scn, &shdr0) == NULL)
usr/src/cmd/sgs/libelf/common/getshdr.c
36
getshdr(Elf_Scn * scn, int class)
usr/src/cmd/sgs/libelf/common/getshdr.c
40
if (scn == 0)
usr/src/cmd/sgs/libelf/common/getshdr.c
42
elf = scn->s_elf;
usr/src/cmd/sgs/libelf/common/getshdr.c
43
READLOCKS(elf, scn)
usr/src/cmd/sgs/libelf/common/getshdr.c
45
READUNLOCKS(elf, scn)
usr/src/cmd/sgs/libelf/common/getshdr.c
50
rc = scn->s_shdr;
usr/src/cmd/sgs/libelf/common/getshdr.c
51
READUNLOCKS(elf, scn)
usr/src/cmd/sgs/libelf/common/getshdr.c
56
elf32_getshdr(Elf_Scn * scn)
usr/src/cmd/sgs/libelf/common/getshdr.c
58
return ((Elf32_Shdr*) getshdr(scn, ELFCLASS32));
usr/src/cmd/sgs/libelf/common/getshdr.c
62
elf64_getshdr(Elf_Scn * scn)
usr/src/cmd/sgs/libelf/common/getshdr.c
64
return ((Elf64_Shdr*) getshdr(scn, ELFCLASS64));
usr/src/cmd/sgs/libelf/common/getshnum.c
54
Elf_Scn *scn;
usr/src/cmd/sgs/libelf/common/getshnum.c
67
if ((scn = elf_getscn(elf, 0)) == 0)
usr/src/cmd/sgs/libelf/common/getshnum.c
69
if (gelf_getshdr(scn, &shdr0) == 0)
usr/src/cmd/sgs/libelf/common/getshstrndx.c
48
Elf_Scn *scn;
usr/src/cmd/sgs/libelf/common/getshstrndx.c
57
if ((scn = elf_getscn(elf, 0)) == 0)
usr/src/cmd/sgs/libelf/common/getshstrndx.c
59
if (gelf_getshdr(scn, &shdr0) == 0)
usr/src/cmd/sgs/libelf/common/ndxscn.c
35
elf_ndxscn(Elf_Scn * scn)
usr/src/cmd/sgs/libelf/common/ndxscn.c
40
if (scn == 0)
usr/src/cmd/sgs/libelf/common/ndxscn.c
42
elf = scn->s_elf;
usr/src/cmd/sgs/libelf/common/ndxscn.c
43
READLOCKS(elf, scn)
usr/src/cmd/sgs/libelf/common/ndxscn.c
44
rc = scn->s_index;
usr/src/cmd/sgs/libelf/common/ndxscn.c
45
READUNLOCKS(elf, scn)
usr/src/cmd/sgs/libelf/common/nextscn.c
35
elf_nextscn(Elf * elf, Elf_Scn * scn)
usr/src/cmd/sgs/libelf/common/nextscn.c
41
if (scn != 0) {
usr/src/cmd/sgs/libelf/common/nextscn.c
42
READLOCKS(elf, scn)
usr/src/cmd/sgs/libelf/common/nextscn.c
43
ret_scn = scn->s_next;
usr/src/cmd/sgs/libelf/common/nextscn.c
44
READUNLOCKS(elf, scn)
usr/src/cmd/sgs/libelf/common/nextscn.c
51
if ((scn = elf->ed_hdscn) != 0)
usr/src/cmd/sgs/libelf/common/nextscn.c
52
ret_scn = scn->s_next;
usr/src/cmd/sgs/libelf/common/rawdata.c
105
READUNLOCKS(elf, scn)
usr/src/cmd/sgs/libelf/common/rawdata.c
113
READUNLOCKS(elf, scn)
usr/src/cmd/sgs/libelf/common/rawdata.c
120
READUNLOCKS(elf, scn)
usr/src/cmd/sgs/libelf/common/rawdata.c
126
READUNLOCKS(elf, scn)
usr/src/cmd/sgs/libelf/common/rawdata.c
37
elf_rawdata(Elf_Scn * scn, Elf_Data * data)
usr/src/cmd/sgs/libelf/common/rawdata.c
44
if (scn == 0)
usr/src/cmd/sgs/libelf/common/rawdata.c
46
elf = scn->s_elf;
usr/src/cmd/sgs/libelf/common/rawdata.c
47
READLOCKS(elf, scn)
usr/src/cmd/sgs/libelf/common/rawdata.c
48
if ((scn->s_myflags & SF_READY) == 0) {
usr/src/cmd/sgs/libelf/common/rawdata.c
49
UPGRADELOCKS(elf, scn)
usr/src/cmd/sgs/libelf/common/rawdata.c
50
if ((scn->s_myflags & SF_READY) == 0)
usr/src/cmd/sgs/libelf/common/rawdata.c
51
(void) _elf_cookscn(scn);
usr/src/cmd/sgs/libelf/common/rawdata.c
52
DOWNGRADELOCKS(elf, scn)
usr/src/cmd/sgs/libelf/common/rawdata.c
56
d = scn->s_hdnode;
usr/src/cmd/sgs/libelf/common/rawdata.c
61
READUNLOCKS(elf, scn)
usr/src/cmd/sgs/libelf/common/rawdata.c
65
if (d->db_scn != scn) {
usr/src/cmd/sgs/libelf/common/rawdata.c
67
READUNLOCKS(elf, scn)
usr/src/cmd/sgs/libelf/common/rawdata.c
79
READUNLOCKS(elf, scn)
usr/src/cmd/sgs/libelf/common/rawdata.c
84
READUNLOCKS(elf, scn)
usr/src/cmd/sgs/libelf/common/rawdata.c
92
READUNLOCKS(elf, scn)
usr/src/cmd/sgs/libelf/demo/acom.c
108
if ((scn = elf_newscn(elf)) == NULL) {
usr/src/cmd/sgs/libelf/demo/acom.c
113
if (gelf_getshdr(scn, &shdr) == NULL) {
usr/src/cmd/sgs/libelf/demo/acom.c
129
(void) gelf_update_shdr(scn, &shdr);
usr/src/cmd/sgs/libelf/demo/acom.c
138
if ((data = elf_newdata(scn)) == NULL) {
usr/src/cmd/sgs/libelf/demo/acom.c
48
Elf_Scn *scn = NULL;
usr/src/cmd/sgs/libelf/demo/acom.c
59
while ((scn = elf_nextscn(elf, scn)) != NULL) {
usr/src/cmd/sgs/libelf/demo/acom.c
65
if (gelf_getshdr(scn, &shdr) == NULL) {
usr/src/cmd/sgs/libelf/demo/acom.c
75
if (scn == NULL) {
usr/src/cmd/sgs/libelf/demo/acom.c
83
if ((scn = elf_getscn(elf, shstrndx)) == NULL) {
usr/src/cmd/sgs/libelf/demo/acom.c
88
if ((data = elf_getdata(scn, NULL)) == NULL) {
usr/src/cmd/sgs/libelf/demo/acom.c
94
if ((data = elf_newdata(scn)) == NULL) {
usr/src/cmd/sgs/libelf/demo/dcom.c
126
while ((scn = elf_nextscn(elf, scn)) != NULL) {
usr/src/cmd/sgs/libelf/demo/dcom.c
134
if (gelf_getshdr(scn, &shdr) == NULL) {
usr/src/cmd/sgs/libelf/demo/dcom.c
194
scn = NULL;
usr/src/cmd/sgs/libelf/demo/dcom.c
196
while ((scn = elf_nextscn(elf, scn)) != NULL) {
usr/src/cmd/sgs/libelf/demo/dcom.c
210
if (gelf_getshdr(scn, &shdr) == NULL) {
usr/src/cmd/sgs/libelf/demo/dcom.c
250
if ((data = elf_getdata(scn, 0)) == NULL) {
usr/src/cmd/sgs/libelf/demo/dcom.c
87
Elf_Scn *scn = NULL;
usr/src/cmd/sgs/libelf/demo/dispsyms.c
109
if ((symdata = elf_getdata(scn, NULL)) == NULL) {
usr/src/cmd/sgs/libelf/demo/dispsyms.c
164
symscnndx = elf_ndxscn(scn);
usr/src/cmd/sgs/libelf/demo/dispsyms.c
72
Elf_Scn *scn = NULL;
usr/src/cmd/sgs/libelf/demo/dispsyms.c
90
while ((scn = elf_nextscn(elf, scn)) != NULL) {
usr/src/cmd/sgs/libelf/demo/dispsyms.c
94
if (gelf_getshdr(scn, &shdr) == NULL) {
usr/src/cmd/sgs/libelf/demo/pcom.c
49
Elf_Scn *scn = NULL;
usr/src/cmd/sgs/libelf/demo/pcom.c
63
while ((scn = elf_nextscn(elf, scn)) != NULL) {
usr/src/cmd/sgs/libelf/demo/pcom.c
69
if (gelf_getshdr(scn, &shdr) == NULL) {
usr/src/cmd/sgs/libelf/demo/pcom.c
83
if ((data = elf_getdata(scn, NULL)) == NULL) {
usr/src/cmd/sgs/libelf/demo/tpcom.c
104
if ((data = elf_getdata(scn, NULL)) == NULL) {
usr/src/cmd/sgs/libelf/demo/tpcom.c
69
Elf_Scn *scn = NULL;
usr/src/cmd/sgs/libelf/demo/tpcom.c
80
while ((scn = elf_nextscn(elf, scn)) != NULL) {
usr/src/cmd/sgs/libelf/demo/tpcom.c
86
if (gelf_getshdr(scn, &shdr) == NULL) {
usr/src/cmd/sgs/libld/common/files.c
117
Elf_Scn *scn;
usr/src/cmd/sgs/libld/common/files.c
120
if ((scn = elf_getscn(elf, 0)) == NULL) {
usr/src/cmd/sgs/libld/common/files.c
125
if ((shdr0 = elf_getshdr(scn)) == NULL) {
usr/src/cmd/sgs/libld/common/files.c
1320
process_input(const char *name, Ifl_desc *ifl, Shdr *shdr, Elf_Scn *scn,
usr/src/cmd/sgs/libld/common/files.c
1323
return (process_section(name, ifl, shdr, scn, ndx,
usr/src/cmd/sgs/libld/common/files.c
1335
process_reloc(const char *name, Ifl_desc *ifl, Shdr *shdr, Elf_Scn *scn,
usr/src/cmd/sgs/libld/common/files.c
1339
shdr, scn, ndx, ld_targ.t_id.id_null, ofl) == S_ERROR)
usr/src/cmd/sgs/libld/common/files.c
1360
process_strtab(const char *name, Ifl_desc *ifl, Shdr *shdr, Elf_Scn *scn,
usr/src/cmd/sgs/libld/common/files.c
1386
error = process_section(name, ifl, shdr, scn, ndx, ident, ofl);
usr/src/cmd/sgs/libld/common/files.c
1415
invalid_section(const char *name, Ifl_desc *ifl, Shdr *shdr, Elf_Scn *scn,
usr/src/cmd/sgs/libld/common/files.c
1569
process_progbits(const char *name, Ifl_desc *ifl, Shdr *shdr, Elf_Scn *scn,
usr/src/cmd/sgs/libld/common/files.c
1626
r = process_section(name, ifl, shdr, scn, ndx, ident, ofl);
usr/src/cmd/sgs/libld/common/files.c
1642
process_debug(const char *name, Ifl_desc *ifl, Shdr *shdr, Elf_Scn *scn,
usr/src/cmd/sgs/libld/common/files.c
1651
return (process_progbits(name, ifl, shdr, scn, ndx, ident, ofl));
usr/src/cmd/sgs/libld/common/files.c
1658
process_nobits(const char *name, Ifl_desc *ifl, Shdr *shdr, Elf_Scn *scn,
usr/src/cmd/sgs/libld/common/files.c
1672
return (process_section(name, ifl, shdr, scn, ndx, ident, ofl));
usr/src/cmd/sgs/libld/common/files.c
1679
process_array(const char *name, Ifl_desc *ifl, Shdr *shdr, Elf_Scn *scn,
usr/src/cmd/sgs/libld/common/files.c
1687
error = process_section(name, ifl, shdr, scn, ndx, ident, ofl);
usr/src/cmd/sgs/libld/common/files.c
1723
process_sym_shndx(const char *name, Ifl_desc *ifl, Shdr *shdr, Elf_Scn *scn,
usr/src/cmd/sgs/libld/common/files.c
1726
if (process_input(name, ifl, shdr, scn, ndx, ident, ofl) == S_ERROR)
usr/src/cmd/sgs/libld/common/files.c
1779
process_rel_dynamic(const char *name, Ifl_desc *ifl, Shdr *shdr, Elf_Scn *scn,
usr/src/cmd/sgs/libld/common/files.c
1807
dp = elf_getdata(scn, NULL);
usr/src/cmd/sgs/libld/common/files.c
182
process_section(const char *name, Ifl_desc *ifl, Shdr *shdr, Elf_Scn *scn,
usr/src/cmd/sgs/libld/common/files.c
201
if ((isp->is_indata = elf_getdata(scn, NULL)) == NULL) {
usr/src/cmd/sgs/libld/common/files.c
2123
Elf_Scn *scn, Word ndx, int ident, Ofl_desc *ofl)
usr/src/cmd/sgs/libld/common/files.c
2129
error = process_section(name, ifl, shdr, scn, ndx, ident, ofl);
usr/src/cmd/sgs/libld/common/files.c
2134
dp = elf_getdata(scn, NULL);
usr/src/cmd/sgs/libld/common/files.c
2374
process_group(const char *name, Ifl_desc *ifl, Shdr *shdr, Elf_Scn *scn,
usr/src/cmd/sgs/libld/common/files.c
2379
error = process_section(name, ifl, shdr, scn, ndx, ident, ofl);
usr/src/cmd/sgs/libld/common/files.c
2476
process_exclude(const char *name, Ifl_desc *ifl, Shdr *shdr, Elf_Scn *scn,
usr/src/cmd/sgs/libld/common/files.c
2503
return (process_section(name, ifl, shdr, scn, ndx, 0, ofl));
usr/src/cmd/sgs/libld/common/files.c
2575
Elf_Scn *scn;
usr/src/cmd/sgs/libld/common/files.c
2601
if ((scn = elf_getscn(elf, (size_t)sndx)) == NULL) {
usr/src/cmd/sgs/libld/common/files.c
2606
if ((shdr = elf_getshdr(scn)) == NULL) {
usr/src/cmd/sgs/libld/common/files.c
2618
if (ld_sup_input_section(ofl, ifl, name, &shdr, sndx, scn,
usr/src/cmd/sgs/libld/common/files.c
2633
error = process_strtab(name, ifl, shdr, scn, sndx, FALSE, ofl);
usr/src/cmd/sgs/libld/common/files.c
2655
scn = NULL;
usr/src/cmd/sgs/libld/common/files.c
2656
while (scn = elf_nextscn(elf, scn)) {
usr/src/cmd/sgs/libld/common/files.c
2665
if ((shdr = elf_getshdr(scn)) == NULL) {
usr/src/cmd/sgs/libld/common/files.c
2672
if (ld_sup_input_section(ofl, ifl, name, &shdr, ndx, scn,
usr/src/cmd/sgs/libld/common/files.c
2685
if ((error = process_exclude(name, ifl, shdr, scn,
usr/src/cmd/sgs/libld/common/files.c
2698
if (Initial[row][column](name, ifl, shdr, scn,
usr/src/cmd/sgs/libld/common/files.c
2729
if (process_section(name, ifl, shdr, scn,
usr/src/cmd/sgs/libld/common/files.c
2734
if (process_section(name, ifl, shdr, scn, ndx,
usr/src/cmd/sgs/libld/common/files.c
2740
if (process_section(name, ifl, shdr, scn, ndx,
usr/src/cmd/sgs/libld/common/files.c
2747
if (process_debug(name, ifl, shdr, scn,
usr/src/cmd/sgs/libld/common/files.c
2752
if (process_section(name, ifl, shdr, scn, ndx,
usr/src/cmd/sgs/libld/common/files.c
2757
if (process_section(name, ifl, shdr, scn, ndx,
usr/src/cmd/sgs/libld/common/files.c
2763
if (process_progbits(name, ifl, shdr, scn,
usr/src/cmd/sgs/libld/common/files.c
2768
if (process_progbits(name, ifl, shdr, scn,
usr/src/cmd/sgs/libld/common/files.c
2774
if (process_section(name, ifl, shdr, scn, ndx,
usr/src/cmd/sgs/libld/common/files.c
2780
if (process_section(name, ifl, shdr, scn, ndx,
usr/src/cmd/sgs/libld/common/files.c
2786
if (process_section(name, ifl, shdr, scn, ndx,
usr/src/cmd/sgs/libld/common/files.c
2801
if (process_section(name, ifl, shdr, scn, ndx,
usr/src/cmd/sgs/libld/common/files.c
2825
scn, ndx, ld_targ.t_id.id_unwind,
usr/src/cmd/sgs/libld/common/files.c
2835
if (process_section(name, ifl, shdr, scn, ndx,
usr/src/cmd/sgs/libld/common/libs.c
106
if ((scn = elf_getscn(amp->am_elf, (size_t)shdr->sh_link)) ==
usr/src/cmd/sgs/libld/common/libs.c
112
if ((data = elf_getdata(scn, NULL)) == NULL) {
usr/src/cmd/sgs/libld/common/libs.c
79
Elf_Scn *scn = NULL;
usr/src/cmd/sgs/libld/common/libs.c
83
while (scn = elf_nextscn(amp->am_elf, scn)) {
usr/src/cmd/sgs/libld/common/libs.c
84
if ((shdr = elf_getshdr(scn)) == NULL) {
usr/src/cmd/sgs/libld/common/libs.c
93
if ((data = elf_getdata(scn, NULL)) == NULL) {
usr/src/cmd/sgs/libld/common/outfile.c
290
Elf_Scn *scn;
usr/src/cmd/sgs/libld/common/outfile.c
296
if ((scn = elf_newscn(ofl->ofl_welf)) == NULL) {
usr/src/cmd/sgs/libld/common/outfile.c
301
osp->os_scn = scn;
usr/src/cmd/sgs/libld/common/outfile.c
307
if ((shdr = elf_getshdr(scn)) == NULL) {
usr/src/cmd/sgs/libld/common/outfile.c
320
sgp->sg_fscn = scn;
usr/src/cmd/sgs/libld/common/outfile.c
845
Elf_Scn *scn;
usr/src/cmd/sgs/libld/common/outfile.c
847
scn = sgp->sg_fscn;
usr/src/cmd/sgs/libld/common/outfile.c
848
if ((fndx = elf_ndxscn(scn)) == SHN_UNDEF) {
usr/src/cmd/sgs/libld/common/support.c
254
Shdr **oshdr, Word ndx, Elf_Scn *scn, Elf *elf)
usr/src/cmd/sgs/libld/common/support.c
273
((data = elf_getdata(scn, NULL)) == NULL)) {
usr/src/cmd/sgs/libld/common/support.c
301
ld_sup_section(Ofl_desc *ofl, const char *scn, Shdr *shdr, Word ndx,
usr/src/cmd/sgs/libld/common/support.c
309
support[LDS_SEC].sup_name, LDS_SEC, scn));
usr/src/cmd/sgs/libld/common/support.c
310
(*flp->fl_fptr)(scn, shdr, ndx, data, elf);
usr/src/cmd/sgs/libld/common/update.c
4591
Elf_Scn *scn;
usr/src/cmd/sgs/libld/common/update.c
4594
if ((scn = elf_getscn(ofl->ofl_elf, 0)) == NULL) {
usr/src/cmd/sgs/libld/common/update.c
4599
if ((shdr0 = elf_getshdr(scn)) == NULL) {
usr/src/cmd/sgs/librtld/common/dldump.c
155
Elf_Scn *scn;
usr/src/cmd/sgs/librtld/common/dldump.c
317
if ((scn = elf_getscn(ielf, shndx)) == NULL) {
usr/src/cmd/sgs/librtld/common/dldump.c
322
if ((data = elf_getdata(scn, NULL)) == NULL) {
usr/src/cmd/sgs/librtld/common/dldump.c
360
for (scn = 0; scn = elf_nextscn(ielf, scn); _icache++) {
usr/src/cmd/sgs/librtld/common/dldump.c
362
if ((_icache->c_shdr = shdr = elf_getshdr(scn)) == NULL) {
usr/src/cmd/sgs/librtld/common/dldump.c
368
if ((_icache->c_data = elf_getdata(scn, NULL)) == NULL) {
usr/src/cmd/sgs/librtld/common/dldump.c
374
_icache->c_scn = scn;
usr/src/cmd/sgs/librtld/common/dldump.c
592
if ((scn = elf_newscn(oelf)) == NULL) {
usr/src/cmd/sgs/librtld/common/dldump.c
597
if ((shdr = elf_getshdr(scn)) == NULL) {
usr/src/cmd/sgs/librtld/common/dldump.c
617
if ((data = elf_newdata(scn)) == NULL) {
usr/src/cmd/sgs/librtld/common/dldump.c
640
if (elf_ndxscn(scn) >= SHN_LORESERVE) {
usr/src/cmd/sgs/librtld/common/dldump.c
657
shdr0->sh_link = elf_ndxscn(scn);
usr/src/cmd/sgs/librtld/common/dldump.c
659
oehdr->e_shstrndx = (Half)elf_ndxscn(scn);
usr/src/cmd/sgs/librtld/common/dldump.c
779
for (scn = 0; scn = elf_nextscn(melf, scn); _mcache++) {
usr/src/cmd/sgs/librtld/common/dldump.c
781
if ((_mcache->c_shdr = elf_getshdr(scn)) == NULL) {
usr/src/cmd/sgs/librtld/common/dldump.c
787
if ((_mcache->c_data = elf_getdata(scn, NULL)) == NULL) {
usr/src/cmd/sgs/link_audit/common/who.c
155
Elf_Scn *scn;
usr/src/cmd/sgs/link_audit/common/who.c
172
scn = NULL;
usr/src/cmd/sgs/link_audit/common/who.c
173
while ((scn = elf_nextscn(elf, scn)) != NULL) {
usr/src/cmd/sgs/link_audit/common/who.c
177
shdr = elf_getshdr(scn);
usr/src/cmd/sgs/link_audit/common/who.c
180
data = elf_getdata(scn, 0);
usr/src/cmd/sgs/link_audit/common/who.c
184
scn = elf_getscn(elf, shdr->sh_link);
usr/src/cmd/sgs/link_audit/common/who.c
185
data = elf_getdata(scn, 0);
usr/src/cmd/sgs/mcs/common/file.c
1504
scn_location(Elf_Scn * scn, Elf * elf, file_state_t *state)
usr/src/cmd/sgs/mcs/common/file.c
1508
(void) gelf_getshdr(scn, &shdr);
usr/src/cmd/sgs/mcs/common/file.c
1609
while (state->sec_table[sno].scn != (Elf_Scn *)-1) {
usr/src/cmd/sgs/mcs/common/file.c
319
Elf_Scn *scn;
usr/src/cmd/sgs/mcs/common/file.c
342
scn = 0;
usr/src/cmd/sgs/mcs/common/file.c
345
while ((scn = elf_nextscn(elf, scn)) != 0) {
usr/src/cmd/sgs/mcs/common/file.c
349
if (gelf_getshdr(scn, shdr) == NULL) {
usr/src/cmd/sgs/mcs/common/file.c
361
sinfo->scn = scn;
usr/src/cmd/sgs/mcs/common/file.c
369
SET_LOC(sinfo->si_flags, scn_location(scn, elf, state));
usr/src/cmd/sgs/mcs/common/file.c
405
if ((data = elf_getdata(scn, data)) == NULL) {
usr/src/cmd/sgs/mcs/common/file.c
494
sinfo->scn = (Elf_Scn *) -1;
usr/src/cmd/sgs/mcs/common/file.c
509
(void) gelf_getshdr(state->sec_table[SYM].scn, &tmp_shdr);
usr/src/cmd/sgs/mcs/common/file.c
779
while ((src_scn = state->sec_table[scn_no].scn) != (Elf_Scn *) -1) {
usr/src/cmd/sgs/mcs/common/file.c
790
(void) gelf_getshdr(info->scn, &src_shdr);
usr/src/cmd/sgs/mcs/common/mcs.h
111
Elf_Scn *scn; /* Section */
usr/src/cmd/sgs/mcs/common/utils.c
61
(void) gelf_getshdr(info->scn, &shdr);
usr/src/cmd/sgs/nm/common/nm.c
1311
Elf_Scn *scn = elf_getscn(elf_file, sym_data->shndx);
usr/src/cmd/sgs/nm/common/nm.c
1314
if ((gelf_getshdr(scn, &shdr) != 0) &&
usr/src/cmd/sgs/nm/common/nm.c
583
Elf_Scn *scn, *scnfd;
usr/src/cmd/sgs/nm/common/nm.c
619
scn = 0;
usr/src/cmd/sgs/nm/common/nm.c
620
while ((scn = elf_nextscn(elf_file, scn)) != 0) {
usr/src/cmd/sgs/nm/common/nm.c
623
if (gelf_getshdr(scn, &shdr) == NULL) {
usr/src/cmd/sgs/nm/common/nm.c
630
print_symtab(elf_file, shstrndx, scn,
usr/src/cmd/sgs/nm/common/nm.c
814
Elf_Scn *scn = elf_getscn(elf_file, shndx);
usr/src/cmd/sgs/nm/common/nm.c
817
if (scn != NULL) {
usr/src/cmd/sgs/nm/common/nm.c
819
(void) gelf_getshdr(scn, &shdr);
usr/src/cmd/sgs/pvs/common/pvs.c
1008
Elf_Scn *scn;
usr/src/cmd/sgs/pvs/common/pvs.c
1127
if ((scn = elf_getscn(elf, ehdr.e_shstrndx)) == NULL) {
usr/src/cmd/sgs/pvs/common/pvs.c
1135
if ((data = elf_getdata(scn, NULL)) == NULL) {
usr/src/cmd/sgs/pvs/common/pvs.c
1170
for (scn = NULL; (scn = elf_nextscn(elf, scn)) != NULL;
usr/src/cmd/sgs/pvs/common/pvs.c
1172
if (gelf_getshdr(scn, &shdr) == NULL) {
usr/src/cmd/sgs/pvs/common/pvs.c
1179
if ((_cache->c_data = elf_getdata(scn, NULL)) ==
usr/src/cmd/sgs/pvs/common/pvs.c
1187
_cache->c_scn = scn;
usr/src/cmd/sgs/size/common/process.c
130
scn = 0;
usr/src/cmd/sgs/size/common/process.c
142
if ((scn = elf_nextscn(elf, scn)) == 0) {
usr/src/cmd/sgs/size/common/process.c
145
if (gelf_getshdr(scn, &shdr) == 0) {
usr/src/cmd/sgs/size/common/process.c
92
Elf_Scn *scn;
usr/src/cmd/strings/strings.c
114
Elf_Scn *scn;
usr/src/cmd/strings/strings.c
124
scn = 0;
usr/src/cmd/strings/strings.c
125
while ((scn = elf_nextscn(elf, scn)) != 0) {
usr/src/cmd/strings/strings.c
127
if (gelf_getshdr(scn, &shdr) == (GElf_Shdr *)0) {
usr/src/cmd/svc/startd/expand.c
173
const char *scn, *sn, *in, *pgn, *pn;
usr/src/cmd/svc/startd/expand.c
175
if (scf_parse_svc_fmri(spec, &scn, &sn, &in, &pgn,
usr/src/cmd/svc/startd/expand.c
191
if (scf_handle_get_scope(h, scn == NULL ? SCF_SCOPE_LOCAL : scn,
usr/src/cmd/sysdef/sysdef.c
197
Elf_Scn *scn;
usr/src/cmd/sysdef/sysdef.c
312
scn = NULL;
usr/src/cmd/sysdef/sysdef.c
313
while ((scn = elf_nextscn(elfd, scn)) != NULL) {
usr/src/cmd/sysdef/sysdef.c
314
if ((shdr = elf_getshdr(scn)) == NULL) {
usr/src/cmd/sysdef/sysdef.c
737
Elf_Scn *scn;
usr/src/cmd/sysdef/sysdef.c
747
if ((scn = elf_getscn(elfd, nl[sym].n_scnum)) == NULL) {
usr/src/cmd/sysdef/sysdef.c
753
if ((eshdr = elf_getshdr(scn)) == NULL) {
usr/src/lib/fm/topo/libtopo/common/mod.c
115
Elf_Scn *scn = NULL;
usr/src/lib/fm/topo/libtopo/common/mod.c
137
scn = elf_getscn(elf, 0); /* "seek" to start of sections */
usr/src/lib/fm/topo/libtopo/common/mod.c
138
while ((scn = elf_nextscn(elf, scn)) != NULL) {
usr/src/lib/fm/topo/libtopo/common/mod.c
140
if (gelf_getshdr(scn, &shdr) == NULL) {
usr/src/lib/fm/topo/libtopo/common/mod.c
150
if (elf_getdata(scn, NULL) == NULL) {
usr/src/lib/libctf/common/ctf_convert.c
39
Elf_Scn *scn, *strscn;
usr/src/lib/libctf/common/ctf_convert.c
44
scn = NULL;
usr/src/lib/libctf/common/ctf_convert.c
45
while ((scn = elf_nextscn(elf, scn)) != NULL) {
usr/src/lib/libctf/common/ctf_convert.c
46
if (gelf_getshdr(scn, &shdr) == NULL) {
usr/src/lib/libctf/common/ctf_convert.c
57
if (scn == NULL) {
usr/src/lib/libctf/common/ctf_convert.c
68
if ((data = elf_getdata(scn, NULL)) == NULL) {
usr/src/lib/libctf/common/ctf_dwarf.c
3384
Elf_Scn *scn, *strscn;
usr/src/lib/libctf/common/ctf_dwarf.c
3390
scn = NULL;
usr/src/lib/libctf/common/ctf_dwarf.c
3391
while ((scn = elf_nextscn(elf, scn)) != NULL) {
usr/src/lib/libctf/common/ctf_dwarf.c
3392
if (gelf_getshdr(scn, &shdr) == NULL) {
usr/src/lib/libctf/common/ctf_dwarf.c
3403
if (scn == NULL)
usr/src/lib/libctf/common/ctf_dwarf.c
3413
if ((data = elf_getdata(scn, NULL)) == NULL) {
usr/src/lib/libctf/common/ctf_elfwrite.c
132
Elf_Scn *scn = elf_getscn(src, srcidx);
usr/src/lib/libctf/common/ctf_elfwrite.c
136
if (gelf_getshdr(scn, &shdr) == NULL) {
usr/src/lib/libdwarf/common/dwarf_elf_access.c
1005
Elf_Scn *scn = 0;
usr/src/lib/libdwarf/common/dwarf_elf_access.c
1008
scn = elf_getscn(obj->elf, section_index);
usr/src/lib/libdwarf/common/dwarf_elf_access.c
1009
if (scn == NULL) {
usr/src/lib/libdwarf/common/dwarf_elf_access.c
1022
data = elf_getdata(scn, NULL);
usr/src/lib/libdwarf/common/dwarf_elf_access.c
267
Elf_Scn *scn = 0;
usr/src/lib/libdwarf/common/dwarf_elf_access.c
270
scn = elf_getscn(obj->elf, section_index);
usr/src/lib/libdwarf/common/dwarf_elf_access.c
271
if (scn == NULL) {
usr/src/lib/libdwarf/common/dwarf_elf_access.c
277
shdr64 = elf64_getshdr(scn);
usr/src/lib/libdwarf/common/dwarf_elf_access.c
293
if ((shdr32 = elf32_getshdr(scn)) == NULL) {
usr/src/lib/libdwarf/common/dwarf_elf_access.c
336
Elf_Scn *scn = 0;
usr/src/lib/libdwarf/common/dwarf_elf_access.c
339
scn = elf_getscn(obj->elf, section_index);
usr/src/lib/libdwarf/common/dwarf_elf_access.c
340
if (scn == NULL) {
usr/src/lib/libdwarf/common/dwarf_elf_access.c
346
shdr64 = elf64_getshdr(scn);
usr/src/lib/libdwarf/common/dwarf_elf_access.c
372
if ((shdr32 = elf32_getshdr(scn)) == NULL) {
usr/src/lib/libelfsign/common/elfsignlib.c
486
Elf_Scn *scn = NULL, *sig_scn = NULL;
usr/src/lib/libelfsign/common/elfsignlib.c
504
while ((scn = elf_nextscn(ess->es_elf, scn)) != NULL) {
usr/src/lib/libelfsign/common/elfsignlib.c
510
if (gelf_getshdr(scn, &shdr) == NULL) {
usr/src/lib/libelfsign/common/elfsignlib.c
519
sig_scn = scn;
usr/src/lib/libelfsign/common/elfsignlib.c
53
Elf_Scn *scn, uint64_t new_size);
usr/src/lib/libelfsign/common/elfsignlib.c
543
if ((scn = elf_getscn(ess->es_elf, ess->es_shstrndx)) == 0) {
usr/src/lib/libelfsign/common/elfsignlib.c
548
if (gelf_getshdr(scn, &shdr) == NULL) {
usr/src/lib/libelfsign/common/elfsignlib.c
553
if ((data = elf_getdata(scn, data)) == NULL) {
usr/src/lib/libelfsign/common/elfsignlib.c
613
if (elfsign_adjustoffsets(ess, scn,
usr/src/lib/libelfsign/common/elfsignlib.c
683
elfsign_adjustoffsets(ELFsign_t ess, Elf_Scn *scn, uint64_t new_size)
usr/src/lib/libelfsign/common/elfsignlib.c
699
if (gelf_getshdr(scn, &shdr) == NULL)
usr/src/lib/libelfsign/common/elfsignlib.c
717
if (gelf_update_shdr(scn, &shdr) == 0) {
usr/src/lib/libelfsign/common/elfsignlib.c
897
Elf_Scn *scn = NULL;
usr/src/lib/libelfsign/common/elfsignlib.c
911
scn = elf_getscn(ess->es_elf, 0); /* "seek" to start */
usr/src/lib/libelfsign/common/elfsignlib.c
913
while ((scn = elf_nextscn(ess->es_elf, scn)) != 0) {
usr/src/lib/libelfsign/common/elfsignlib.c
917
if (gelf_getshdr(scn, &shdr) == NULL) {
usr/src/lib/libelfsign/common/elfsignlib.c
951
elf_getdata(scn, data) : elf_rawdata(scn, data))) != NULL) {
usr/src/lib/libproc/common/Pcore.c
1498
Elf_Scn *scn;
usr/src/lib/libproc/common/Pcore.c
1646
if ((scn = elf_getscn(fp->file_symtab.sym_elf, 1)) == NULL ||
usr/src/lib/libproc/common/Pcore.c
1647
(fp->file_symtab.sym_data_pri = elf_getdata(scn, NULL)) == NULL ||
usr/src/lib/libproc/common/Pcore.c
1648
(scn = elf_getscn(fp->file_symtab.sym_elf, 2)) == NULL ||
usr/src/lib/libproc/common/Pcore.c
1649
(data = elf_getdata(scn, NULL)) == NULL) {
usr/src/lib/libproc/common/Pcore.c
1651
(void *)scn);
usr/src/lib/libproc/common/Pcore.c
2381
Elf_Scn *scn, *intp_scn = NULL;
usr/src/lib/libproc/common/Pcore.c
2755
for (scn = NULL; (scn = elf_nextscn(aout.e_elf, scn)) != NULL; ) {
usr/src/lib/libproc/common/Pcore.c
2758
if ((gelf_getshdr(scn, &shdr) == NULL) ||
usr/src/lib/libproc/common/Pcore.c
2764
intp_scn = scn;
usr/src/lib/libproc/common/Pgcore.c
574
Elf_Scn *scn = NULL;
usr/src/lib/libproc/common/Pgcore.c
580
while ((scn = elf_nextscn(fptr->file_elf, scn)) != NULL) {
usr/src/lib/libproc/common/Pgcore.c
583
if (gelf_getshdr(scn, &shdr) == NULL)
usr/src/lib/libproc/common/Pgcore.c
741
Elf_Scn *scn = NULL;
usr/src/lib/libproc/common/Pgcore.c
747
while ((scn = elf_nextscn(fptr->file_elf, scn)) != NULL) {
usr/src/lib/libproc/common/Pgcore.c
751
if (gelf_getshdr(scn, &shdr) == NULL)
usr/src/lib/libproc/common/Pgcore.c
757
if ((data = elf_getdata(scn, NULL)) == NULL) {
usr/src/lib/libproc/common/Psymtab.c
1196
Elf_Scn *scn;
usr/src/lib/libproc/common/Psymtab.c
1214
scn = NULL;
usr/src/lib/libproc/common/Psymtab.c
1215
while ((scn = elf_nextscn(elf, scn)) != NULL) {
usr/src/lib/libproc/common/Psymtab.c
1216
if (gelf_getshdr(scn, &shdr) != NULL &&
usr/src/lib/libproc/common/Psymtab.c
1223
if ((data = elf_getdata(scn, NULL)) == NULL)
usr/src/lib/libproc/common/Psymtab.c
1584
Elf_Scn *scn;
usr/src/lib/libproc/common/Psymtab.c
1592
(scn = elf_getscn(elf, shstrndx)) == NULL ||
usr/src/lib/libproc/common/Psymtab.c
1593
(*shdata = elf_getdata(scn, NULL)) == NULL) {
usr/src/lib/libproc/common/Psymtab.c
1620
Elf_Scn *scn;
usr/src/lib/libproc/common/Psymtab.c
1683
scn = NULL;
usr/src/lib/libproc/common/Psymtab.c
1685
for (scn = elf_nextscn(elf, scn); data != NULL && scn != NULL;
usr/src/lib/libproc/common/Psymtab.c
1686
scn = elf_nextscn(elf, scn)) {
usr/src/lib/libproc/common/Psymtab.c
1690
if (gelf_getshdr(scn, &hdr) == NULL)
usr/src/lib/libproc/common/Psymtab.c
1696
if ((ntdata = elf_getdata(scn, NULL)) == NULL)
usr/src/lib/libproc/common/Psymtab.c
1724
scn = NULL;
usr/src/lib/libproc/common/Psymtab.c
1725
for (scn = elf_nextscn(elf, scn); scn != NULL;
usr/src/lib/libproc/common/Psymtab.c
1726
scn = elf_nextscn(elf, scn)) {
usr/src/lib/libproc/common/Psymtab.c
1728
if (gelf_getshdr(scn, &symshdr) == NULL)
usr/src/lib/libproc/common/Psymtab.c
1734
if ((symdata = elf_getdata(scn, NULL)) == NULL)
usr/src/lib/libproc/common/Psymtab.c
1739
if (scn == NULL)
usr/src/lib/libproc/common/Psymtab.c
1742
if ((scn = elf_getscn(elf, symshdr.sh_link)) == NULL)
usr/src/lib/libproc/common/Psymtab.c
1745
if (gelf_getshdr(scn, &strshdr) == NULL)
usr/src/lib/libproc/common/Psymtab.c
1748
if ((strdata = elf_getdata(scn, NULL)) == NULL)
usr/src/lib/libproc/common/Psymtab.c
1836
Elf_Scn *scn;
usr/src/lib/libproc/common/Psymtab.c
1916
(scn = elf_getscn(elf, shstrndx)) == NULL ||
usr/src/lib/libproc/common/Psymtab.c
1917
(shdata = elf_getdata(scn, NULL)) == NULL) {
usr/src/lib/libproc/common/Psymtab.c
1980
for (cp = cache + 1, scn = NULL; scn = elf_nextscn(elf, scn); cp++) {
usr/src/lib/libproc/common/Psymtab.c
1981
if (gelf_getshdr(scn, &cp->c_shdr) == NULL) {
usr/src/lib/libproc/common/Psymtab.c
1987
if ((cp->c_data = elf_getdata(scn, NULL)) == NULL) {
usr/src/test/os-tests/tests/cores/secmapper/secmapper.c
219
secmap_data_cmp(secmap_t *sm, const char *sname, Elf_Scn *scn, GElf_Shdr *shdr)
usr/src/test/os-tests/tests/cores/secmapper/secmapper.c
251
if ((src_data = elf_getdata(scn, NULL)) == NULL) {
usr/src/test/os-tests/tests/cores/secmapper/secmapper.c
313
Elf_Scn *scn;
usr/src/test/os-tests/tests/cores/secmapper/secmapper.c
356
for (scn = elf_nextscn(elf, NULL); scn != NULL;
usr/src/test/os-tests/tests/cores/secmapper/secmapper.c
357
scn = elf_nextscn(elf, scn)) {
usr/src/test/os-tests/tests/cores/secmapper/secmapper.c
363
index = elf_ndxscn(scn);
usr/src/test/os-tests/tests/cores/secmapper/secmapper.c
364
if (gelf_getshdr(scn, &shdr) == NULL) {
usr/src/test/os-tests/tests/cores/secmapper/secmapper.c
408
secmap_data_cmp(secmap, sname, scn, &shdr);
usr/src/test/util-tests/tests/ctf/check-merge-static.c
166
Elf_Scn *scn = NULL, *symscn = NULL;
usr/src/test/util-tests/tests/ctf/check-merge-static.c
174
while ((scn = elf_nextscn(elf, scn)) != NULL) {
usr/src/test/util-tests/tests/ctf/check-merge-static.c
175
if (gelf_getshdr(scn, &symhdr) == NULL) {
usr/src/test/util-tests/tests/ctf/check-merge-static.c
182
symscn = scn;
usr/src/tools/find_elf/find_elf.c
461
Elf_Scn *scn = NULL;
usr/src/tools/find_elf/find_elf.c
479
while ((scn = elf_nextscn(elf, scn)) != NULL) {
usr/src/tools/find_elf/find_elf.c
483
if (gelf_getshdr(scn, &shdr) == NULL)
usr/src/tools/find_elf/find_elf.c
489
if ((data = elf_getdata(scn, NULL)) == NULL)
usr/src/uts/common/fs/zfs/ddt.c
1124
dsl_scan_t *scn = spa->spa_dsl_pool->dp_scan;
usr/src/uts/common/fs/zfs/ddt.c
1141
ASSERT3P(scn->scn_zio_root, ==, NULL);
usr/src/uts/common/fs/zfs/ddt.c
1142
scn->scn_zio_root = rio;
usr/src/uts/common/fs/zfs/ddt.c
1153
scn->scn_zio_root = NULL;
usr/src/uts/common/fs/zfs/dsl_destroy.c
891
dsl_scan_t *scn = dp->dp_scan;
usr/src/uts/common/fs/zfs/dsl_destroy.c
899
ASSERT(!scn->scn_async_destroying);
usr/src/uts/common/fs/zfs/dsl_destroy.c
900
scn->scn_async_destroying = B_TRUE;
usr/src/uts/common/fs/zfs/dsl_scan.c
1000
dsl_scan_t *scn = dp->dp_scan;
usr/src/uts/common/fs/zfs/dsl_scan.c
1008
if (dsl_scan_is_paused_scrub(scn))
usr/src/uts/common/fs/zfs/dsl_scan.c
1023
dsl_scan_t *scn = dp->dp_scan;
usr/src/uts/common/fs/zfs/dsl_scan.c
1028
scn->scn_phys.scn_flags |= DSF_SCRUB_PAUSED;
usr/src/uts/common/fs/zfs/dsl_scan.c
1029
scn->scn_phys_cached.scn_flags |= DSF_SCRUB_PAUSED;
usr/src/uts/common/fs/zfs/dsl_scan.c
1030
dsl_scan_sync_state(scn, tx, SYNC_CACHED);
usr/src/uts/common/fs/zfs/dsl_scan.c
1034
if (dsl_scan_is_paused_scrub(scn)) {
usr/src/uts/common/fs/zfs/dsl_scan.c
1043
scn->scn_phys.scn_flags &= ~DSF_SCRUB_PAUSED;
usr/src/uts/common/fs/zfs/dsl_scan.c
1044
scn->scn_phys_cached.scn_flags &= ~DSF_SCRUB_PAUSED;
usr/src/uts/common/fs/zfs/dsl_scan.c
1045
dsl_scan_sync_state(scn, tx, SYNC_CACHED);
usr/src/uts/common/fs/zfs/dsl_scan.c
1106
scan_ds_queue_clear(dsl_scan_t *scn)
usr/src/uts/common/fs/zfs/dsl_scan.c
1110
while ((sds = avl_destroy_nodes(&scn->scn_queue, &cookie)) != NULL) {
usr/src/uts/common/fs/zfs/dsl_scan.c
1116
scan_ds_queue_contains(dsl_scan_t *scn, uint64_t dsobj, uint64_t *txg)
usr/src/uts/common/fs/zfs/dsl_scan.c
1121
sds = avl_find(&scn->scn_queue, &srch, NULL);
usr/src/uts/common/fs/zfs/dsl_scan.c
1128
scan_ds_queue_insert(dsl_scan_t *scn, uint64_t dsobj, uint64_t txg)
usr/src/uts/common/fs/zfs/dsl_scan.c
1137
VERIFY3P(avl_find(&scn->scn_queue, sds, &where), ==, NULL);
usr/src/uts/common/fs/zfs/dsl_scan.c
1138
avl_insert(&scn->scn_queue, sds, where);
usr/src/uts/common/fs/zfs/dsl_scan.c
1142
scan_ds_queue_remove(dsl_scan_t *scn, uint64_t dsobj)
usr/src/uts/common/fs/zfs/dsl_scan.c
1148
sds = avl_find(&scn->scn_queue, &srch, NULL);
usr/src/uts/common/fs/zfs/dsl_scan.c
1150
avl_remove(&scn->scn_queue, sds);
usr/src/uts/common/fs/zfs/dsl_scan.c
1155
scan_ds_queue_sync(dsl_scan_t *scn, dmu_tx_t *tx)
usr/src/uts/common/fs/zfs/dsl_scan.c
1157
dsl_pool_t *dp = scn->scn_dp;
usr/src/uts/common/fs/zfs/dsl_scan.c
1162
ASSERT0(scn->scn_bytes_pending);
usr/src/uts/common/fs/zfs/dsl_scan.c
1163
ASSERT(scn->scn_phys.scn_queue_obj != 0);
usr/src/uts/common/fs/zfs/dsl_scan.c
1166
scn->scn_phys.scn_queue_obj, tx));
usr/src/uts/common/fs/zfs/dsl_scan.c
1167
scn->scn_phys.scn_queue_obj = zap_create(dp->dp_meta_objset, ot,
usr/src/uts/common/fs/zfs/dsl_scan.c
1169
for (scan_ds_t *sds = avl_first(&scn->scn_queue);
usr/src/uts/common/fs/zfs/dsl_scan.c
1170
sds != NULL; sds = AVL_NEXT(&scn->scn_queue, sds)) {
usr/src/uts/common/fs/zfs/dsl_scan.c
1172
scn->scn_phys.scn_queue_obj, sds->sds_dsobj,
usr/src/uts/common/fs/zfs/dsl_scan.c
1210
dsl_scan_should_clear(dsl_scan_t *scn)
usr/src/uts/common/fs/zfs/dsl_scan.c
1212
spa_t *spa = scn->scn_dp->dp_spa;
usr/src/uts/common/fs/zfs/dsl_scan.c
1213
vdev_t *rvd = scn->scn_dp->dp_spa->spa_root_vdev;
usr/src/uts/common/fs/zfs/dsl_scan.c
123
static void scan_ds_queue_clear(dsl_scan_t *scn);
usr/src/uts/common/fs/zfs/dsl_scan.c
124
static boolean_t scan_ds_queue_contains(dsl_scan_t *scn, uint64_t dsobj,
usr/src/uts/common/fs/zfs/dsl_scan.c
1255
ASSERT0(scn->scn_bytes_pending);
usr/src/uts/common/fs/zfs/dsl_scan.c
126
static void scan_ds_queue_insert(dsl_scan_t *scn, uint64_t dsobj, uint64_t txg);
usr/src/uts/common/fs/zfs/dsl_scan.c
1267
return (scn->scn_clearing);
usr/src/uts/common/fs/zfs/dsl_scan.c
127
static void scan_ds_queue_remove(dsl_scan_t *scn, uint64_t dsobj);
usr/src/uts/common/fs/zfs/dsl_scan.c
1271
dsl_scan_check_suspend(dsl_scan_t *scn, const zbookmark_phys_t *zb)
usr/src/uts/common/fs/zfs/dsl_scan.c
1277
if (scn->scn_suspending)
usr/src/uts/common/fs/zfs/dsl_scan.c
128
static void scan_ds_queue_sync(dsl_scan_t *scn, dmu_tx_t *tx);
usr/src/uts/common/fs/zfs/dsl_scan.c
1280
if (!ZB_IS_ZERO(&scn->scn_phys.scn_bookmark))
usr/src/uts/common/fs/zfs/dsl_scan.c
1301
uint64_t scan_time_ns = curr_time_ns - scn->scn_sync_start_time;
usr/src/uts/common/fs/zfs/dsl_scan.c
1303
scn->scn_dp->dp_spa->spa_sync_starttime;
usr/src/uts/common/fs/zfs/dsl_scan.c
1305
int dirty_pct = scn->scn_dp->dp_dirty_total * 100 / zfs_dirty_data_max;
usr/src/uts/common/fs/zfs/dsl_scan.c
1306
int mintime = (scn->scn_phys.scn_func == POOL_SCAN_RESILVER) ?
usr/src/uts/common/fs/zfs/dsl_scan.c
1311
txg_sync_waiting(scn->scn_dp) ||
usr/src/uts/common/fs/zfs/dsl_scan.c
1313
spa_shutting_down(scn->scn_dp->dp_spa) ||
usr/src/uts/common/fs/zfs/dsl_scan.c
1314
(zfs_scan_strict_mem_lim && dsl_scan_should_clear(scn))) {
usr/src/uts/common/fs/zfs/dsl_scan.c
1322
scn->scn_phys.scn_bookmark = *zb;
usr/src/uts/common/fs/zfs/dsl_scan.c
1324
dsl_scan_phys_t *scnp = &scn->scn_phys;
usr/src/uts/common/fs/zfs/dsl_scan.c
1333
scn->scn_suspending = B_TRUE;
usr/src/uts/common/fs/zfs/dsl_scan.c
1350
dsl_scan_t *scn = dp->dp_scan;
usr/src/uts/common/fs/zfs/dsl_scan.c
1354
if (BP_IS_HOLE(bp) || bp->blk_birth <= scn->scn_phys.scn_cur_min_txg)
usr/src/uts/common/fs/zfs/dsl_scan.c
1369
VERIFY(0 == scan_funcs[scn->scn_phys.scn_func](dp, bp, &zb));
usr/src/uts/common/fs/zfs/dsl_scan.c
1380
dsl_scan_t *scn = dp->dp_scan;
usr/src/uts/common/fs/zfs/dsl_scan.c
1387
bp->blk_birth <= scn->scn_phys.scn_cur_min_txg)
usr/src/uts/common/fs/zfs/dsl_scan.c
1402
VERIFY(0 == scan_funcs[scn->scn_phys.scn_func](dp, bp, &zb));
usr/src/uts/common/fs/zfs/dsl_scan.c
1457
scan_prefetch_ctx_create(dsl_scan_t *scn, dnode_phys_t *dnp, void *tag)
usr/src/uts/common/fs/zfs/dsl_scan.c
1464
spc->spc_scn = scn;
usr/src/uts/common/fs/zfs/dsl_scan.c
1510
dsl_scan_t *scn = spc->spc_scn;
usr/src/uts/common/fs/zfs/dsl_scan.c
1511
spa_t *spa = scn->scn_dp->dp_spa;
usr/src/uts/common/fs/zfs/dsl_scan.c
1517
if (BP_IS_HOLE(bp) || bp->blk_birth <= scn->scn_phys.scn_cur_min_txg ||
usr/src/uts/common/fs/zfs/dsl_scan.c
1525
scan_prefetch_ctx_add_ref(spc, scn);
usr/src/uts/common/fs/zfs/dsl_scan.c
1537
if (avl_find(&scn->scn_prefetch_queue, spic, &idx) != NULL) {
usr/src/uts/common/fs/zfs/dsl_scan.c
1540
scan_prefetch_ctx_rele(spc, scn);
usr/src/uts/common/fs/zfs/dsl_scan.c
1545
avl_insert(&scn->scn_prefetch_queue, spic, idx);
usr/src/uts/common/fs/zfs/dsl_scan.c
1551
dsl_scan_prefetch_dnode(dsl_scan_t *scn, dnode_phys_t *dnp,
usr/src/uts/common/fs/zfs/dsl_scan.c
1563
spc = scan_prefetch_ctx_create(scn, dnp, FTAG);
usr/src/uts/common/fs/zfs/dsl_scan.c
1585
dsl_scan_t *scn = spc->spc_scn;
usr/src/uts/common/fs/zfs/dsl_scan.c
1586
spa_t *spa = scn->scn_dp->dp_spa;
usr/src/uts/common/fs/zfs/dsl_scan.c
1596
if (buf == NULL || scn->scn_suspending)
usr/src/uts/common/fs/zfs/dsl_scan.c
1618
dsl_scan_prefetch_dnode(scn, cdnp,
usr/src/uts/common/fs/zfs/dsl_scan.c
1624
dsl_scan_prefetch_dnode(scn, &osp->os_meta_dnode,
usr/src/uts/common/fs/zfs/dsl_scan.c
1628
dsl_scan_prefetch_dnode(scn,
usr/src/uts/common/fs/zfs/dsl_scan.c
1631
dsl_scan_prefetch_dnode(scn,
usr/src/uts/common/fs/zfs/dsl_scan.c
1640
scan_prefetch_ctx_rele(spc, scn);
usr/src/uts/common/fs/zfs/dsl_scan.c
1647
dsl_scan_t *scn = arg;
usr/src/uts/common/fs/zfs/dsl_scan.c
1648
spa_t *spa = scn->scn_dp->dp_spa;
usr/src/uts/common/fs/zfs/dsl_scan.c
1654
while (!scn->scn_prefetch_stop) {
usr/src/uts/common/fs/zfs/dsl_scan.c
1665
while (!scn->scn_prefetch_stop &&
usr/src/uts/common/fs/zfs/dsl_scan.c
1666
(avl_numnodes(&scn->scn_prefetch_queue) == 0 ||
usr/src/uts/common/fs/zfs/dsl_scan.c
1667
spa->spa_scrub_inflight >= scn->scn_maxinflight_bytes)) {
usr/src/uts/common/fs/zfs/dsl_scan.c
1672
if (scn->scn_prefetch_stop) {
usr/src/uts/common/fs/zfs/dsl_scan.c
1678
spic = avl_first(&scn->scn_prefetch_queue);
usr/src/uts/common/fs/zfs/dsl_scan.c
1680
avl_remove(&scn->scn_prefetch_queue, spic);
usr/src/uts/common/fs/zfs/dsl_scan.c
1692
(void) arc_read(scn->scn_zio_root, scn->scn_dp->dp_spa,
usr/src/uts/common/fs/zfs/dsl_scan.c
1699
ASSERT(scn->scn_prefetch_stop);
usr/src/uts/common/fs/zfs/dsl_scan.c
1703
while ((spic = avl_first(&scn->scn_prefetch_queue)) != NULL) {
usr/src/uts/common/fs/zfs/dsl_scan.c
1704
avl_remove(&scn->scn_prefetch_queue, spic);
usr/src/uts/common/fs/zfs/dsl_scan.c
1705
scan_prefetch_ctx_rele(spic->spic_spc, scn);
usr/src/uts/common/fs/zfs/dsl_scan.c
1708
ASSERT0(avl_numnodes(&scn->scn_prefetch_queue));
usr/src/uts/common/fs/zfs/dsl_scan.c
1713
dsl_scan_check_resume(dsl_scan_t *scn, const dnode_phys_t *dnp,
usr/src/uts/common/fs/zfs/dsl_scan.c
1719
if (!ZB_IS_ZERO(&scn->scn_phys.scn_bookmark) &&
usr/src/uts/common/fs/zfs/dsl_scan.c
1726
&scn->scn_phys.scn_bookmark))
usr/src/uts/common/fs/zfs/dsl_scan.c
1735
if (bcmp(zb, &scn->scn_phys.scn_bookmark, sizeof (*zb)) == 0 ||
usr/src/uts/common/fs/zfs/dsl_scan.c
1736
zb->zb_object > scn->scn_phys.scn_bookmark.zb_object) {
usr/src/uts/common/fs/zfs/dsl_scan.c
1742
bzero(&scn->scn_phys.scn_bookmark, sizeof (*zb));
usr/src/uts/common/fs/zfs/dsl_scan.c
1749
dnode_phys_t *dnp, dsl_dataset_t *ds, dsl_scan_t *scn,
usr/src/uts/common/fs/zfs/dsl_scan.c
1760
dsl_scan_recurse(dsl_scan_t *scn, dsl_dataset_t *ds, dmu_objset_type_t ostype,
usr/src/uts/common/fs/zfs/dsl_scan.c
1764
dsl_pool_t *dp = scn->scn_dp;
usr/src/uts/common/fs/zfs/dsl_scan.c
1778
scn->scn_phys.scn_errors++;
usr/src/uts/common/fs/zfs/dsl_scan.c
1788
ds, scn, ostype, tx);
usr/src/uts/common/fs/zfs/dsl_scan.c
1806
scn->scn_phys.scn_errors++;
usr/src/uts/common/fs/zfs/dsl_scan.c
1812
dsl_scan_visitdnode(scn, ds, ostype,
usr/src/uts/common/fs/zfs/dsl_scan.c
1825
scn->scn_phys.scn_errors++;
usr/src/uts/common/fs/zfs/dsl_scan.c
1831
dsl_scan_visitdnode(scn, ds, osp->os_type,
usr/src/uts/common/fs/zfs/dsl_scan.c
1842
dsl_scan_visitdnode(scn, ds, osp->os_type,
usr/src/uts/common/fs/zfs/dsl_scan.c
1845
dsl_scan_visitdnode(scn, ds, osp->os_type,
usr/src/uts/common/fs/zfs/dsl_scan.c
1848
dsl_scan_visitdnode(scn, ds, osp->os_type,
usr/src/uts/common/fs/zfs/dsl_scan.c
1859
dsl_scan_visitdnode(dsl_scan_t *scn, dsl_dataset_t *ds,
usr/src/uts/common/fs/zfs/dsl_scan.c
1871
&czb, dnp, ds, scn, ostype, tx);
usr/src/uts/common/fs/zfs/dsl_scan.c
1879
&czb, dnp, ds, scn, ostype, tx);
usr/src/uts/common/fs/zfs/dsl_scan.c
1889
dnode_phys_t *dnp, dsl_dataset_t *ds, dsl_scan_t *scn,
usr/src/uts/common/fs/zfs/dsl_scan.c
1892
dsl_pool_t *dp = scn->scn_dp;
usr/src/uts/common/fs/zfs/dsl_scan.c
1895
if (dsl_scan_check_suspend(scn, zb))
usr/src/uts/common/fs/zfs/dsl_scan.c
1898
if (dsl_scan_check_resume(scn, dnp, zb))
usr/src/uts/common/fs/zfs/dsl_scan.c
1901
scn->scn_visited_this_txg++;
usr/src/uts/common/fs/zfs/dsl_scan.c
1917
scn->scn_holes_this_txg++;
usr/src/uts/common/fs/zfs/dsl_scan.c
1921
if (bp->blk_birth <= scn->scn_phys.scn_cur_min_txg) {
usr/src/uts/common/fs/zfs/dsl_scan.c
1922
scn->scn_lt_min_this_txg++;
usr/src/uts/common/fs/zfs/dsl_scan.c
1929
if (dsl_scan_recurse(scn, ds, ostype, dnp, bp_toread, zb, tx) != 0)
usr/src/uts/common/fs/zfs/dsl_scan.c
1938
scn->scn_phys.scn_ddt_class_max, bp)) {
usr/src/uts/common/fs/zfs/dsl_scan.c
1939
scn->scn_ddt_contained_this_txg++;
usr/src/uts/common/fs/zfs/dsl_scan.c
1950
if (BP_PHYSICAL_BIRTH(bp) > scn->scn_phys.scn_cur_max_txg) {
usr/src/uts/common/fs/zfs/dsl_scan.c
1951
scn->scn_gt_max_this_txg++;
usr/src/uts/common/fs/zfs/dsl_scan.c
1955
scan_funcs[scn->scn_phys.scn_func](dp, bp, zb);
usr/src/uts/common/fs/zfs/dsl_scan.c
1962
dsl_scan_visit_rootbp(dsl_scan_t *scn, dsl_dataset_t *ds, blkptr_t *bp,
usr/src/uts/common/fs/zfs/dsl_scan.c
1971
if (ZB_IS_ZERO(&scn->scn_phys.scn_bookmark)) {
usr/src/uts/common/fs/zfs/dsl_scan.c
1972
SET_BOOKMARK(&scn->scn_prefetch_bookmark,
usr/src/uts/common/fs/zfs/dsl_scan.c
1975
scn->scn_prefetch_bookmark = scn->scn_phys.scn_bookmark;
usr/src/uts/common/fs/zfs/dsl_scan.c
1978
scn->scn_objsets_visited_this_txg++;
usr/src/uts/common/fs/zfs/dsl_scan.c
1980
spc = scan_prefetch_ctx_create(scn, NULL, FTAG);
usr/src/uts/common/fs/zfs/dsl_scan.c
1984
dsl_scan_visitbp(bp, &zb, NULL, ds, scn, DMU_OST_NONE, tx);
usr/src/uts/common/fs/zfs/dsl_scan.c
2037
dsl_scan_t *scn = dp->dp_scan;
usr/src/uts/common/fs/zfs/dsl_scan.c
2040
if (!dsl_scan_is_running(scn))
usr/src/uts/common/fs/zfs/dsl_scan.c
2043
ds_destroyed_scn_phys(ds, &scn->scn_phys);
usr/src/uts/common/fs/zfs/dsl_scan.c
2044
ds_destroyed_scn_phys(ds, &scn->scn_phys_cached);
usr/src/uts/common/fs/zfs/dsl_scan.c
2046
if (scan_ds_queue_contains(scn, ds->ds_object, &mintxg)) {
usr/src/uts/common/fs/zfs/dsl_scan.c
2047
scan_ds_queue_remove(scn, ds->ds_object);
usr/src/uts/common/fs/zfs/dsl_scan.c
2049
scan_ds_queue_insert(scn,
usr/src/uts/common/fs/zfs/dsl_scan.c
2053
if (zap_lookup_int_key(dp->dp_meta_objset, scn->scn_phys.scn_queue_obj,
usr/src/uts/common/fs/zfs/dsl_scan.c
2057
scn->scn_phys.scn_queue_obj, ds->ds_object, tx));
usr/src/uts/common/fs/zfs/dsl_scan.c
206
#define DSL_SCAN_IS_SCRUB_RESILVER(scn) \
usr/src/uts/common/fs/zfs/dsl_scan.c
2065
scn->scn_phys.scn_queue_obj,
usr/src/uts/common/fs/zfs/dsl_scan.c
207
((scn)->scn_phys.scn_func == POOL_SCAN_SCRUB || \
usr/src/uts/common/fs/zfs/dsl_scan.c
208
(scn)->scn_phys.scn_func == POOL_SCAN_RESILVER)
usr/src/uts/common/fs/zfs/dsl_scan.c
2083
dsl_scan_sync_state(scn, tx, SYNC_CACHED);
usr/src/uts/common/fs/zfs/dsl_scan.c
2109
dsl_scan_t *scn = dp->dp_scan;
usr/src/uts/common/fs/zfs/dsl_scan.c
2112
if (!dsl_scan_is_running(scn))
usr/src/uts/common/fs/zfs/dsl_scan.c
2117
ds_snapshotted_bookmark(ds, &scn->scn_phys.scn_bookmark);
usr/src/uts/common/fs/zfs/dsl_scan.c
2118
ds_snapshotted_bookmark(ds, &scn->scn_phys_cached.scn_bookmark);
usr/src/uts/common/fs/zfs/dsl_scan.c
2120
if (scan_ds_queue_contains(scn, ds->ds_object, &mintxg)) {
usr/src/uts/common/fs/zfs/dsl_scan.c
2121
scan_ds_queue_remove(scn, ds->ds_object);
usr/src/uts/common/fs/zfs/dsl_scan.c
2122
scan_ds_queue_insert(scn,
usr/src/uts/common/fs/zfs/dsl_scan.c
2126
if (zap_lookup_int_key(dp->dp_meta_objset, scn->scn_phys.scn_queue_obj,
usr/src/uts/common/fs/zfs/dsl_scan.c
2129
scn->scn_phys.scn_queue_obj, ds->ds_object, tx));
usr/src/uts/common/fs/zfs/dsl_scan.c
2131
scn->scn_phys.scn_queue_obj,
usr/src/uts/common/fs/zfs/dsl_scan.c
2139
dsl_scan_sync_state(scn, tx, SYNC_CACHED);
usr/src/uts/common/fs/zfs/dsl_scan.c
2170
dsl_scan_t *scn = dp->dp_scan;
usr/src/uts/common/fs/zfs/dsl_scan.c
2173
if (!dsl_scan_is_running(scn))
usr/src/uts/common/fs/zfs/dsl_scan.c
2176
ds_clone_swapped_bookmark(ds1, ds2, &scn->scn_phys.scn_bookmark);
usr/src/uts/common/fs/zfs/dsl_scan.c
2177
ds_clone_swapped_bookmark(ds1, ds2, &scn->scn_phys_cached.scn_bookmark);
usr/src/uts/common/fs/zfs/dsl_scan.c
2179
if (scan_ds_queue_contains(scn, ds1->ds_object, &mintxg)) {
usr/src/uts/common/fs/zfs/dsl_scan.c
2180
scan_ds_queue_remove(scn, ds1->ds_object);
usr/src/uts/common/fs/zfs/dsl_scan.c
2181
scan_ds_queue_insert(scn, ds2->ds_object, mintxg);
usr/src/uts/common/fs/zfs/dsl_scan.c
2183
if (scan_ds_queue_contains(scn, ds2->ds_object, &mintxg)) {
usr/src/uts/common/fs/zfs/dsl_scan.c
2184
scan_ds_queue_remove(scn, ds2->ds_object);
usr/src/uts/common/fs/zfs/dsl_scan.c
2185
scan_ds_queue_insert(scn, ds1->ds_object, mintxg);
usr/src/uts/common/fs/zfs/dsl_scan.c
2188
if (zap_lookup_int_key(dp->dp_meta_objset, scn->scn_phys.scn_queue_obj,
usr/src/uts/common/fs/zfs/dsl_scan.c
2194
scn->scn_phys.scn_queue_obj, ds1->ds_object, tx));
usr/src/uts/common/fs/zfs/dsl_scan.c
2196
scn->scn_phys.scn_queue_obj, ds2->ds_object, mintxg, tx);
usr/src/uts/common/fs/zfs/dsl_scan.c
2201
scn->scn_phys.scn_queue_obj,
usr/src/uts/common/fs/zfs/dsl_scan.c
2209
if (zap_lookup_int_key(dp->dp_meta_objset, scn->scn_phys.scn_queue_obj,
usr/src/uts/common/fs/zfs/dsl_scan.c
2214
scn->scn_phys.scn_queue_obj, ds2->ds_object, tx));
usr/src/uts/common/fs/zfs/dsl_scan.c
2216
scn->scn_phys.scn_queue_obj, ds1->ds_object, mintxg, tx));
usr/src/uts/common/fs/zfs/dsl_scan.c
2223
dsl_scan_sync_state(scn, tx, SYNC_CACHED);
usr/src/uts/common/fs/zfs/dsl_scan.c
2233
dsl_scan_t *scn = dp->dp_scan;
usr/src/uts/common/fs/zfs/dsl_scan.c
2252
scan_ds_queue_insert(scn, ds->ds_object,
usr/src/uts/common/fs/zfs/dsl_scan.c
2259
dsl_scan_visitds(dsl_scan_t *scn, uint64_t dsobj, dmu_tx_t *tx)
usr/src/uts/common/fs/zfs/dsl_scan.c
2261
dsl_pool_t *dp = scn->scn_dp;
usr/src/uts/common/fs/zfs/dsl_scan.c
2266
if (scn->scn_phys.scn_cur_min_txg >=
usr/src/uts/common/fs/zfs/dsl_scan.c
2267
scn->scn_phys.scn_max_txg) {
usr/src/uts/common/fs/zfs/dsl_scan.c
2299
(longlong_t)scn->scn_phys.scn_cur_min_txg,
usr/src/uts/common/fs/zfs/dsl_scan.c
2300
(longlong_t)scn->scn_phys.scn_max_txg);
usr/src/uts/common/fs/zfs/dsl_scan.c
2315
if (DSL_SCAN_IS_SCRUB_RESILVER(scn) && !dsl_dataset_is_snapshot(ds) &&
usr/src/uts/common/fs/zfs/dsl_scan.c
2330
dsl_scan_visit_rootbp(scn, ds, &dsl_dataset_phys(ds)->ds_bp, tx);
usr/src/uts/common/fs/zfs/dsl_scan.c
2338
(longlong_t)scn->scn_phys.scn_cur_min_txg,
usr/src/uts/common/fs/zfs/dsl_scan.c
2339
(longlong_t)scn->scn_phys.scn_cur_max_txg,
usr/src/uts/common/fs/zfs/dsl_scan.c
2340
(int)scn->scn_suspending);
usr/src/uts/common/fs/zfs/dsl_scan.c
2343
if (scn->scn_suspending)
usr/src/uts/common/fs/zfs/dsl_scan.c
2353
if (scn->scn_phys.scn_flags & DSF_VISIT_DS_AGAIN) {
usr/src/uts/common/fs/zfs/dsl_scan.c
2355
scn->scn_phys.scn_flags &= ~DSF_VISIT_DS_AGAIN;
usr/src/uts/common/fs/zfs/dsl_scan.c
2356
scan_ds_queue_insert(scn, ds->ds_object,
usr/src/uts/common/fs/zfs/dsl_scan.c
2357
scn->scn_phys.scn_cur_max_txg);
usr/src/uts/common/fs/zfs/dsl_scan.c
2365
scan_ds_queue_insert(scn,
usr/src/uts/common/fs/zfs/dsl_scan.c
2394
scan_ds_queue_insert(scn,
usr/src/uts/common/fs/zfs/dsl_scan.c
2416
dsl_scan_t *scn = dp->dp_scan;
usr/src/uts/common/fs/zfs/dsl_scan.c
2443
scan_ds_queue_insert(scn, ds->ds_object,
usr/src/uts/common/fs/zfs/dsl_scan.c
2451
dsl_scan_ddt_entry(dsl_scan_t *scn, enum zio_checksum checksum,
usr/src/uts/common/fs/zfs/dsl_scan.c
2460
if (scn->scn_phys.scn_state != DSS_SCANNING)
usr/src/uts/common/fs/zfs/dsl_scan.c
2474
if (scn->scn_done_txg != 0)
usr/src/uts/common/fs/zfs/dsl_scan.c
2479
ddp->ddp_phys_birth > scn->scn_phys.scn_max_txg)
usr/src/uts/common/fs/zfs/dsl_scan.c
2483
scn->scn_visited_this_txg++;
usr/src/uts/common/fs/zfs/dsl_scan.c
2484
scan_funcs[scn->scn_phys.scn_func](scn->scn_dp, &bp, &zb);
usr/src/uts/common/fs/zfs/dsl_scan.c
2522
dsl_scan_ddt(dsl_scan_t *scn, dmu_tx_t *tx)
usr/src/uts/common/fs/zfs/dsl_scan.c
2524
ddt_bookmark_t *ddb = &scn->scn_phys.scn_ddt_bookmark;
usr/src/uts/common/fs/zfs/dsl_scan.c
2529
while ((error = ddt_walk(scn->scn_dp->dp_spa, ddb, &dde)) == 0) {
usr/src/uts/common/fs/zfs/dsl_scan.c
2532
if (ddb->ddb_class > scn->scn_phys.scn_ddt_class_max)
usr/src/uts/common/fs/zfs/dsl_scan.c
2541
ddt = scn->scn_dp->dp_spa->spa_ddt[ddb->ddb_checksum];
usr/src/uts/common/fs/zfs/dsl_scan.c
2544
dsl_scan_ddt_entry(scn, ddb->ddb_checksum, &dde, tx);
usr/src/uts/common/fs/zfs/dsl_scan.c
2547
if (dsl_scan_check_suspend(scn, NULL))
usr/src/uts/common/fs/zfs/dsl_scan.c
2553
(int)scn->scn_phys.scn_ddt_class_max, (int)scn->scn_suspending);
usr/src/uts/common/fs/zfs/dsl_scan.c
2557
ddb->ddb_class > scn->scn_phys.scn_ddt_class_max);
usr/src/uts/common/fs/zfs/dsl_scan.c
2570
dsl_scan_visit(dsl_scan_t *scn, dmu_tx_t *tx)
usr/src/uts/common/fs/zfs/dsl_scan.c
2573
dsl_pool_t *dp = scn->scn_dp;
usr/src/uts/common/fs/zfs/dsl_scan.c
2575
if (scn->scn_phys.scn_ddt_bookmark.ddb_class <=
usr/src/uts/common/fs/zfs/dsl_scan.c
2576
scn->scn_phys.scn_ddt_class_max) {
usr/src/uts/common/fs/zfs/dsl_scan.c
2577
scn->scn_phys.scn_cur_min_txg = scn->scn_phys.scn_min_txg;
usr/src/uts/common/fs/zfs/dsl_scan.c
2578
scn->scn_phys.scn_cur_max_txg = scn->scn_phys.scn_max_txg;
usr/src/uts/common/fs/zfs/dsl_scan.c
2579
dsl_scan_ddt(scn, tx);
usr/src/uts/common/fs/zfs/dsl_scan.c
2580
if (scn->scn_suspending)
usr/src/uts/common/fs/zfs/dsl_scan.c
2584
if (scn->scn_phys.scn_bookmark.zb_objset == DMU_META_OBJSET) {
usr/src/uts/common/fs/zfs/dsl_scan.c
2587
scn->scn_phys.scn_cur_min_txg = scn->scn_phys.scn_min_txg;
usr/src/uts/common/fs/zfs/dsl_scan.c
2588
scn->scn_phys.scn_cur_max_txg = scn->scn_phys.scn_max_txg;
usr/src/uts/common/fs/zfs/dsl_scan.c
2589
dsl_scan_visit_rootbp(scn, NULL,
usr/src/uts/common/fs/zfs/dsl_scan.c
2592
if (scn->scn_suspending)
usr/src/uts/common/fs/zfs/dsl_scan.c
2599
dsl_scan_visitds(scn,
usr/src/uts/common/fs/zfs/dsl_scan.c
2602
ASSERT(!scn->scn_suspending);
usr/src/uts/common/fs/zfs/dsl_scan.c
2603
} else if (scn->scn_phys.scn_bookmark.zb_objset !=
usr/src/uts/common/fs/zfs/dsl_scan.c
2605
uint64_t dsobj = scn->scn_phys.scn_bookmark.zb_objset;
usr/src/uts/common/fs/zfs/dsl_scan.c
2612
dsl_scan_visitds(scn, dsobj, tx);
usr/src/uts/common/fs/zfs/dsl_scan.c
2613
if (scn->scn_suspending)
usr/src/uts/common/fs/zfs/dsl_scan.c
2621
bzero(&scn->scn_phys.scn_bookmark, sizeof (zbookmark_phys_t));
usr/src/uts/common/fs/zfs/dsl_scan.c
2627
while ((sds = avl_first(&scn->scn_queue)) != NULL) {
usr/src/uts/common/fs/zfs/dsl_scan.c
2633
scan_ds_queue_remove(scn, dsobj);
usr/src/uts/common/fs/zfs/dsl_scan.c
2639
scn->scn_phys.scn_cur_min_txg =
usr/src/uts/common/fs/zfs/dsl_scan.c
2640
MAX(scn->scn_phys.scn_min_txg, txg);
usr/src/uts/common/fs/zfs/dsl_scan.c
2642
scn->scn_phys.scn_cur_min_txg =
usr/src/uts/common/fs/zfs/dsl_scan.c
2643
MAX(scn->scn_phys.scn_min_txg,
usr/src/uts/common/fs/zfs/dsl_scan.c
2646
scn->scn_phys.scn_cur_max_txg = dsl_scan_ds_maxtxg(ds);
usr/src/uts/common/fs/zfs/dsl_scan.c
2649
dsl_scan_visitds(scn, dsobj, tx);
usr/src/uts/common/fs/zfs/dsl_scan.c
2650
if (scn->scn_suspending)
usr/src/uts/common/fs/zfs/dsl_scan.c
2654
scn->scn_phys.scn_bookmark.zb_objset = ZB_DESTROYED_OBJSET;
usr/src/uts/common/fs/zfs/dsl_scan.c
2655
ASSERT0(scn->scn_suspending);
usr/src/uts/common/fs/zfs/dsl_scan.c
2702
scan_io_queue_check_suspend(dsl_scan_t *scn)
usr/src/uts/common/fs/zfs/dsl_scan.c
2706
uint64_t scan_time_ns = curr_time_ns - scn->scn_sync_start_time;
usr/src/uts/common/fs/zfs/dsl_scan.c
2708
scn->scn_dp->dp_spa->spa_sync_starttime;
usr/src/uts/common/fs/zfs/dsl_scan.c
2709
int dirty_pct = scn->scn_dp->dp_dirty_total * 100 / zfs_dirty_data_max;
usr/src/uts/common/fs/zfs/dsl_scan.c
2710
int mintime = (scn->scn_phys.scn_func == POOL_SCAN_RESILVER) ?
usr/src/uts/common/fs/zfs/dsl_scan.c
2715
txg_sync_waiting(scn->scn_dp) ||
usr/src/uts/common/fs/zfs/dsl_scan.c
2717
spa_shutting_down(scn->scn_dp->dp_spa));
usr/src/uts/common/fs/zfs/dsl_scan.c
2731
dsl_scan_t *scn = queue->q_scn;
usr/src/uts/common/fs/zfs/dsl_scan.c
2739
if (scan_io_queue_check_suspend(scn)) {
usr/src/uts/common/fs/zfs/dsl_scan.c
2746
scan_exec_io(scn->scn_dp, &bp, sio->sio_flags,
usr/src/uts/common/fs/zfs/dsl_scan.c
2753
atomic_add_64(&scn->scn_bytes_pending, -bytes_issued);
usr/src/uts/common/fs/zfs/dsl_scan.c
2844
dsl_scan_t *scn = queue->q_scn;
usr/src/uts/common/fs/zfs/dsl_scan.c
2848
ASSERT(scn->scn_is_sorted);
usr/src/uts/common/fs/zfs/dsl_scan.c
2851
if (scn->scn_checkpointing || scn->scn_clearing) {
usr/src/uts/common/fs/zfs/dsl_scan.c
2885
if (scn->scn_checkpointing) {
usr/src/uts/common/fs/zfs/dsl_scan.c
2887
} else if (scn->scn_clearing) {
usr/src/uts/common/fs/zfs/dsl_scan.c
3006
scan_io_queues_run(dsl_scan_t *scn)
usr/src/uts/common/fs/zfs/dsl_scan.c
3008
spa_t *spa = scn->scn_dp->dp_spa;
usr/src/uts/common/fs/zfs/dsl_scan.c
3010
ASSERT(scn->scn_is_sorted);
usr/src/uts/common/fs/zfs/dsl_scan.c
3013
if (scn->scn_bytes_pending == 0)
usr/src/uts/common/fs/zfs/dsl_scan.c
3016
if (scn->scn_taskq == NULL) {
usr/src/uts/common/fs/zfs/dsl_scan.c
3030
scn->scn_taskq = taskq_create(tq_name, nthreads, minclsyspri,
usr/src/uts/common/fs/zfs/dsl_scan.c
3040
VERIFY(taskq_dispatch(scn->scn_taskq,
usr/src/uts/common/fs/zfs/dsl_scan.c
3052
taskq_wait(scn->scn_taskq);
usr/src/uts/common/fs/zfs/dsl_scan.c
3056
dsl_scan_async_block_should_pause(dsl_scan_t *scn)
usr/src/uts/common/fs/zfs/dsl_scan.c
3063
if (scn->scn_visited_this_txg >= zfs_async_block_max_blocks)
usr/src/uts/common/fs/zfs/dsl_scan.c
3066
elapsed_nanosecs = gethrtime() - scn->scn_sync_start_time;
usr/src/uts/common/fs/zfs/dsl_scan.c
3068
(NSEC2MSEC(elapsed_nanosecs) > scn->scn_async_block_min_time_ms &&
usr/src/uts/common/fs/zfs/dsl_scan.c
3069
txg_sync_waiting(scn->scn_dp)) ||
usr/src/uts/common/fs/zfs/dsl_scan.c
3070
spa_shutting_down(scn->scn_dp->dp_spa));
usr/src/uts/common/fs/zfs/dsl_scan.c
3076
dsl_scan_t *scn = arg;
usr/src/uts/common/fs/zfs/dsl_scan.c
3078
if (!scn->scn_is_bptree ||
usr/src/uts/common/fs/zfs/dsl_scan.c
3080
if (dsl_scan_async_block_should_pause(scn))
usr/src/uts/common/fs/zfs/dsl_scan.c
3084
zio_nowait(zio_free_sync(scn->scn_zio_root, scn->scn_dp->dp_spa,
usr/src/uts/common/fs/zfs/dsl_scan.c
3087
-bp_get_dsize_sync(scn->scn_dp->dp_spa, bp),
usr/src/uts/common/fs/zfs/dsl_scan.c
3089
scn->scn_visited_this_txg++;
usr/src/uts/common/fs/zfs/dsl_scan.c
3094
dsl_scan_update_stats(dsl_scan_t *scn)
usr/src/uts/common/fs/zfs/dsl_scan.c
3096
spa_t *spa = scn->scn_dp->dp_spa;
usr/src/uts/common/fs/zfs/dsl_scan.c
3115
scn->scn_avg_seg_size_this_txg = 0;
usr/src/uts/common/fs/zfs/dsl_scan.c
3116
scn->scn_avg_zio_size_this_txg = 0;
usr/src/uts/common/fs/zfs/dsl_scan.c
3117
scn->scn_segs_this_txg = 0;
usr/src/uts/common/fs/zfs/dsl_scan.c
3118
scn->scn_zios_this_txg = 0;
usr/src/uts/common/fs/zfs/dsl_scan.c
3122
scn->scn_avg_seg_size_this_txg = seg_size_total / seg_count_total;
usr/src/uts/common/fs/zfs/dsl_scan.c
3123
scn->scn_avg_zio_size_this_txg = zio_size_total / zio_count_total;
usr/src/uts/common/fs/zfs/dsl_scan.c
3124
scn->scn_segs_this_txg = seg_count_total;
usr/src/uts/common/fs/zfs/dsl_scan.c
3125
scn->scn_zios_this_txg = zio_count_total;
usr/src/uts/common/fs/zfs/dsl_scan.c
3131
dsl_scan_t *scn = arg;
usr/src/uts/common/fs/zfs/dsl_scan.c
3134
if (dsl_scan_async_block_should_pause(scn))
usr/src/uts/common/fs/zfs/dsl_scan.c
3137
spa_vdev_indirect_mark_obsolete(scn->scn_dp->dp_spa,
usr/src/uts/common/fs/zfs/dsl_scan.c
3140
scn->scn_visited_this_txg++;
usr/src/uts/common/fs/zfs/dsl_scan.c
3145
dsl_scan_active(dsl_scan_t *scn)
usr/src/uts/common/fs/zfs/dsl_scan.c
3147
spa_t *spa = scn->scn_dp->dp_spa;
usr/src/uts/common/fs/zfs/dsl_scan.c
3154
if ((dsl_scan_is_running(scn) && !dsl_scan_is_paused_scrub(scn)) ||
usr/src/uts/common/fs/zfs/dsl_scan.c
3155
(scn->scn_async_destroying && !scn->scn_async_stalled))
usr/src/uts/common/fs/zfs/dsl_scan.c
3158
if (spa_version(scn->scn_dp->dp_spa) >= SPA_VERSION_DEADLISTS) {
usr/src/uts/common/fs/zfs/dsl_scan.c
3159
(void) bpobj_space(&scn->scn_dp->dp_free_bpobj,
usr/src/uts/common/fs/zfs/dsl_scan.c
3246
dsl_scan_t *scn = dp->dp_scan;
usr/src/uts/common/fs/zfs/dsl_scan.c
3254
scn->scn_is_bptree = B_FALSE;
usr/src/uts/common/fs/zfs/dsl_scan.c
3255
scn->scn_async_block_min_time_ms = zfs_free_min_time_ms;
usr/src/uts/common/fs/zfs/dsl_scan.c
3256
scn->scn_zio_root = zio_root(spa, NULL,
usr/src/uts/common/fs/zfs/dsl_scan.c
3259
dsl_scan_free_block_cb, scn, tx);
usr/src/uts/common/fs/zfs/dsl_scan.c
3260
VERIFY0(zio_wait(scn->scn_zio_root));
usr/src/uts/common/fs/zfs/dsl_scan.c
3261
scn->scn_zio_root = NULL;
usr/src/uts/common/fs/zfs/dsl_scan.c
3268
ASSERT(scn->scn_async_destroying);
usr/src/uts/common/fs/zfs/dsl_scan.c
3269
scn->scn_is_bptree = B_TRUE;
usr/src/uts/common/fs/zfs/dsl_scan.c
3270
scn->scn_zio_root = zio_root(spa, NULL,
usr/src/uts/common/fs/zfs/dsl_scan.c
3273
dp->dp_bptree_obj, B_TRUE, dsl_scan_free_block_cb, scn, tx);
usr/src/uts/common/fs/zfs/dsl_scan.c
3274
VERIFY0(zio_wait(scn->scn_zio_root));
usr/src/uts/common/fs/zfs/dsl_scan.c
3275
scn->scn_zio_root = NULL;
usr/src/uts/common/fs/zfs/dsl_scan.c
3295
scn->scn_async_destroying = B_FALSE;
usr/src/uts/common/fs/zfs/dsl_scan.c
3296
scn->scn_async_stalled = B_FALSE;
usr/src/uts/common/fs/zfs/dsl_scan.c
3306
scn->scn_async_stalled =
usr/src/uts/common/fs/zfs/dsl_scan.c
3307
(scn->scn_visited_this_txg == 0);
usr/src/uts/common/fs/zfs/dsl_scan.c
3310
if (scn->scn_visited_this_txg) {
usr/src/uts/common/fs/zfs/dsl_scan.c
3313
(longlong_t)scn->scn_visited_this_txg,
usr/src/uts/common/fs/zfs/dsl_scan.c
3315
NSEC2MSEC(gethrtime() - scn->scn_sync_start_time),
usr/src/uts/common/fs/zfs/dsl_scan.c
3317
scn->scn_visited_this_txg = 0;
usr/src/uts/common/fs/zfs/dsl_scan.c
3328
if (dp->dp_free_dir != NULL && !scn->scn_async_destroying &&
usr/src/uts/common/fs/zfs/dsl_scan.c
335
static void scan_io_queues_destroy(dsl_scan_t *scn);
usr/src/uts/common/fs/zfs/dsl_scan.c
3356
if (dp->dp_free_dir != NULL && !scn->scn_async_destroying) {
usr/src/uts/common/fs/zfs/dsl_scan.c
3370
scn->scn_is_bptree = B_FALSE;
usr/src/uts/common/fs/zfs/dsl_scan.c
3371
scn->scn_async_block_min_time_ms = zfs_obsolete_min_time_ms;
usr/src/uts/common/fs/zfs/dsl_scan.c
3373
dsl_scan_obsolete_block_cb, scn, tx);
usr/src/uts/common/fs/zfs/dsl_scan.c
3395
dsl_scan_t *scn = dp->dp_scan;
usr/src/uts/common/fs/zfs/dsl_scan.c
3411
if (dsl_scan_restarting(scn, tx) ||
usr/src/uts/common/fs/zfs/dsl_scan.c
3414
dsl_scan_done(scn, B_FALSE, tx);
usr/src/uts/common/fs/zfs/dsl_scan.c
3439
if (!scn->scn_async_stalled && !dsl_scan_active(scn))
usr/src/uts/common/fs/zfs/dsl_scan.c
3443
scn->scn_visited_this_txg = 0;
usr/src/uts/common/fs/zfs/dsl_scan.c
3444
scn->scn_holes_this_txg = 0;
usr/src/uts/common/fs/zfs/dsl_scan.c
3445
scn->scn_lt_min_this_txg = 0;
usr/src/uts/common/fs/zfs/dsl_scan.c
3446
scn->scn_gt_max_this_txg = 0;
usr/src/uts/common/fs/zfs/dsl_scan.c
3447
scn->scn_ddt_contained_this_txg = 0;
usr/src/uts/common/fs/zfs/dsl_scan.c
3448
scn->scn_objsets_visited_this_txg = 0;
usr/src/uts/common/fs/zfs/dsl_scan.c
3449
scn->scn_avg_seg_size_this_txg = 0;
usr/src/uts/common/fs/zfs/dsl_scan.c
3450
scn->scn_segs_this_txg = 0;
usr/src/uts/common/fs/zfs/dsl_scan.c
3451
scn->scn_avg_zio_size_this_txg = 0;
usr/src/uts/common/fs/zfs/dsl_scan.c
3452
scn->scn_zios_this_txg = 0;
usr/src/uts/common/fs/zfs/dsl_scan.c
3453
scn->scn_suspending = B_FALSE;
usr/src/uts/common/fs/zfs/dsl_scan.c
3454
scn->scn_sync_start_time = gethrtime();
usr/src/uts/common/fs/zfs/dsl_scan.c
3468
if (!dsl_scan_is_running(scn) || dsl_scan_is_paused_scrub(scn))
usr/src/uts/common/fs/zfs/dsl_scan.c
3485
uint64_t scan_time_ns = gethrtime() - scn->scn_sync_start_time;
usr/src/uts/common/fs/zfs/dsl_scan.c
3486
int mintime = (scn->scn_phys.scn_func == POOL_SCAN_RESILVER) ?
usr/src/uts/common/fs/zfs/dsl_scan.c
3490
!txg_sync_waiting(scn->scn_dp) &&
usr/src/uts/common/fs/zfs/dsl_scan.c
3491
!spa_shutting_down(scn->scn_dp->dp_spa) &&
usr/src/uts/common/fs/zfs/dsl_scan.c
3494
scan_time_ns = gethrtime() - scn->scn_sync_start_time;
usr/src/uts/common/fs/zfs/dsl_scan.c
3505
scn->scn_is_sorted = B_TRUE;
usr/src/uts/common/fs/zfs/dsl_scan.c
3506
if (scn->scn_last_checkpoint == 0)
usr/src/uts/common/fs/zfs/dsl_scan.c
3507
scn->scn_last_checkpoint = ddi_get_lbolt();
usr/src/uts/common/fs/zfs/dsl_scan.c
3515
if (scn->scn_is_sorted) {
usr/src/uts/common/fs/zfs/dsl_scan.c
3526
if (scn->scn_checkpointing ||
usr/src/uts/common/fs/zfs/dsl_scan.c
3527
ddi_get_lbolt() - scn->scn_last_checkpoint >
usr/src/uts/common/fs/zfs/dsl_scan.c
3529
if (!scn->scn_checkpointing)
usr/src/uts/common/fs/zfs/dsl_scan.c
3532
scn->scn_checkpointing = B_TRUE;
usr/src/uts/common/fs/zfs/dsl_scan.c
3533
scn->scn_clearing = B_TRUE;
usr/src/uts/common/fs/zfs/dsl_scan.c
3535
boolean_t should_clear = dsl_scan_should_clear(scn);
usr/src/uts/common/fs/zfs/dsl_scan.c
3536
if (should_clear && !scn->scn_clearing) {
usr/src/uts/common/fs/zfs/dsl_scan.c
3538
scn->scn_clearing = B_TRUE;
usr/src/uts/common/fs/zfs/dsl_scan.c
3539
} else if (!should_clear && scn->scn_clearing) {
usr/src/uts/common/fs/zfs/dsl_scan.c
3541
scn->scn_clearing = B_FALSE;
usr/src/uts/common/fs/zfs/dsl_scan.c
3545
ASSERT0(scn->scn_checkpointing);
usr/src/uts/common/fs/zfs/dsl_scan.c
3546
ASSERT0(scn->scn_clearing);
usr/src/uts/common/fs/zfs/dsl_scan.c
3549
if (!scn->scn_clearing && scn->scn_done_txg == 0) {
usr/src/uts/common/fs/zfs/dsl_scan.c
3551
dsl_scan_phys_t *scnp = &scn->scn_phys;
usr/src/uts/common/fs/zfs/dsl_scan.c
3561
scn->scn_maxinflight_bytes =
usr/src/uts/common/fs/zfs/dsl_scan.c
3584
scn->scn_zio_root = zio_root(dp->dp_spa, NULL,
usr/src/uts/common/fs/zfs/dsl_scan.c
3587
scn->scn_prefetch_stop = B_FALSE;
usr/src/uts/common/fs/zfs/dsl_scan.c
3589
dsl_scan_prefetch_thread, scn, TQ_SLEEP);
usr/src/uts/common/fs/zfs/dsl_scan.c
3593
dsl_scan_visit(scn, tx);
usr/src/uts/common/fs/zfs/dsl_scan.c
3597
scn->scn_prefetch_stop = B_TRUE;
usr/src/uts/common/fs/zfs/dsl_scan.c
3602
(void) zio_wait(scn->scn_zio_root);
usr/src/uts/common/fs/zfs/dsl_scan.c
3603
scn->scn_zio_root = NULL;
usr/src/uts/common/fs/zfs/dsl_scan.c
3608
(longlong_t)scn->scn_visited_this_txg,
usr/src/uts/common/fs/zfs/dsl_scan.c
3610
scn->scn_sync_start_time),
usr/src/uts/common/fs/zfs/dsl_scan.c
3611
(longlong_t)scn->scn_objsets_visited_this_txg,
usr/src/uts/common/fs/zfs/dsl_scan.c
3612
(longlong_t)scn->scn_holes_this_txg,
usr/src/uts/common/fs/zfs/dsl_scan.c
3613
(longlong_t)scn->scn_lt_min_this_txg,
usr/src/uts/common/fs/zfs/dsl_scan.c
3614
(longlong_t)scn->scn_ddt_contained_this_txg,
usr/src/uts/common/fs/zfs/dsl_scan.c
3615
(longlong_t)scn->scn_gt_max_this_txg);
usr/src/uts/common/fs/zfs/dsl_scan.c
3617
if (!scn->scn_suspending) {
usr/src/uts/common/fs/zfs/dsl_scan.c
3618
ASSERT0(avl_numnodes(&scn->scn_queue));
usr/src/uts/common/fs/zfs/dsl_scan.c
3619
scn->scn_done_txg = tx->tx_txg + 1;
usr/src/uts/common/fs/zfs/dsl_scan.c
3620
if (scn->scn_is_sorted) {
usr/src/uts/common/fs/zfs/dsl_scan.c
3621
scn->scn_checkpointing = B_TRUE;
usr/src/uts/common/fs/zfs/dsl_scan.c
3622
scn->scn_clearing = B_TRUE;
usr/src/uts/common/fs/zfs/dsl_scan.c
3627
} else if (scn->scn_is_sorted && scn->scn_bytes_pending != 0) {
usr/src/uts/common/fs/zfs/dsl_scan.c
3628
ASSERT(scn->scn_clearing);
usr/src/uts/common/fs/zfs/dsl_scan.c
3631
scn->scn_zio_root = zio_root(dp->dp_spa, NULL,
usr/src/uts/common/fs/zfs/dsl_scan.c
3633
scan_io_queues_run(scn);
usr/src/uts/common/fs/zfs/dsl_scan.c
3634
(void) zio_wait(scn->scn_zio_root);
usr/src/uts/common/fs/zfs/dsl_scan.c
3635
scn->scn_zio_root = NULL;
usr/src/uts/common/fs/zfs/dsl_scan.c
3638
(void) dsl_scan_should_clear(scn);
usr/src/uts/common/fs/zfs/dsl_scan.c
3639
dsl_scan_update_stats(scn);
usr/src/uts/common/fs/zfs/dsl_scan.c
3643
(longlong_t)scn->scn_zios_this_txg,
usr/src/uts/common/fs/zfs/dsl_scan.c
3644
(longlong_t)scn->scn_segs_this_txg,
usr/src/uts/common/fs/zfs/dsl_scan.c
3646
scn->scn_sync_start_time),
usr/src/uts/common/fs/zfs/dsl_scan.c
3647
(longlong_t)scn->scn_avg_zio_size_this_txg,
usr/src/uts/common/fs/zfs/dsl_scan.c
3648
(longlong_t)scn->scn_avg_seg_size_this_txg);
usr/src/uts/common/fs/zfs/dsl_scan.c
3649
} else if (scn->scn_done_txg != 0 && scn->scn_done_txg <= tx->tx_txg) {
usr/src/uts/common/fs/zfs/dsl_scan.c
3653
ASSERT3U(scn->scn_done_txg, !=, 0);
usr/src/uts/common/fs/zfs/dsl_scan.c
3655
ASSERT0(scn->scn_bytes_pending);
usr/src/uts/common/fs/zfs/dsl_scan.c
3656
dsl_scan_done(scn, B_TRUE, tx);
usr/src/uts/common/fs/zfs/dsl_scan.c
3660
dsl_scan_sync_state(scn, tx, sync_type);
usr/src/uts/common/fs/zfs/dsl_scan.c
3664
count_block(dsl_scan_t *scn, zfs_all_blkstats_t *zab, const blkptr_t *bp)
usr/src/uts/common/fs/zfs/dsl_scan.c
3682
if (scn->scn_is_sorted) {
usr/src/uts/common/fs/zfs/dsl_scan.c
3683
atomic_add_64(&scn->scn_dp->dp_spa->spa_scan_pass_issued,
usr/src/uts/common/fs/zfs/dsl_scan.c
3686
spa_t *spa = scn->scn_dp->dp_spa;
usr/src/uts/common/fs/zfs/dsl_scan.c
3746
dsl_scan_t *scn = queue->q_scn;
usr/src/uts/common/fs/zfs/dsl_scan.c
3752
atomic_add_64(&scn->scn_bytes_pending, -asize);
usr/src/uts/common/fs/zfs/dsl_scan.c
3771
dsl_scan_t *scn = queue->q_scn;
usr/src/uts/common/fs/zfs/dsl_scan.c
3786
atomic_add_64(&scn->scn_bytes_pending, SIO_GET_ASIZE(sio));
usr/src/uts/common/fs/zfs/dsl_scan.c
3834
dsl_scan_t *scn = dp->dp_scan;
usr/src/uts/common/fs/zfs/dsl_scan.c
3842
if (phys_birth <= scn->scn_phys.scn_min_txg ||
usr/src/uts/common/fs/zfs/dsl_scan.c
3843
phys_birth >= scn->scn_phys.scn_max_txg) {
usr/src/uts/common/fs/zfs/dsl_scan.c
3844
count_block(scn, dp->dp_blkstats, bp);
usr/src/uts/common/fs/zfs/dsl_scan.c
3851
ASSERT(DSL_SCAN_IS_SCRUB_RESILVER(scn));
usr/src/uts/common/fs/zfs/dsl_scan.c
3852
if (scn->scn_phys.scn_func == POOL_SCAN_SCRUB) {
usr/src/uts/common/fs/zfs/dsl_scan.c
3856
ASSERT3U(scn->scn_phys.scn_func, ==, POOL_SCAN_RESILVER);
usr/src/uts/common/fs/zfs/dsl_scan.c
3872
scn->scn_phys.scn_examined += DVA_GET_ASIZE(dva);
usr/src/uts/common/fs/zfs/dsl_scan.c
3884
count_block(scn, dp->dp_blkstats, bp);
usr/src/uts/common/fs/zfs/dsl_scan.c
391
dsl_scan_is_running(const dsl_scan_t *scn)
usr/src/uts/common/fs/zfs/dsl_scan.c
393
return (scn->scn_phys.scn_state == DSS_SCANNING);
usr/src/uts/common/fs/zfs/dsl_scan.c
3932
dsl_scan_t *scn = dp->dp_scan;
usr/src/uts/common/fs/zfs/dsl_scan.c
3938
while (spa->spa_scrub_inflight >= scn->scn_maxinflight_bytes)
usr/src/uts/common/fs/zfs/dsl_scan.c
4031
dsl_scan_t *scn = vd->vdev_spa->spa_dsl_pool->dp_scan;
usr/src/uts/common/fs/zfs/dsl_scan.c
4034
q->q_scn = scn;
usr/src/uts/common/fs/zfs/dsl_scan.c
4054
dsl_scan_t *scn = queue->q_scn;
usr/src/uts/common/fs/zfs/dsl_scan.c
4071
atomic_add_64(&scn->scn_bytes_pending, -bytes_dequeued);
usr/src/uts/common/fs/zfs/dsl_scan.c
4102
scan_io_queues_destroy(dsl_scan_t *scn)
usr/src/uts/common/fs/zfs/dsl_scan.c
4104
vdev_t *rvd = scn->scn_dp->dp_spa->spa_root_vdev;
usr/src/uts/common/fs/zfs/dsl_scan.c
4121
dsl_scan_t *scn = dp->dp_scan;
usr/src/uts/common/fs/zfs/dsl_scan.c
4184
atomic_add_64(&scn->scn_bytes_pending, -asize);
usr/src/uts/common/fs/zfs/dsl_scan.c
4188
count_block(scn, dp->dp_blkstats, &tmpbp);
usr/src/uts/common/fs/zfs/dsl_scan.c
4205
dsl_scan_t *scn = dp->dp_scan;
usr/src/uts/common/fs/zfs/dsl_scan.c
4208
ASSERT(scn != NULL);
usr/src/uts/common/fs/zfs/dsl_scan.c
4209
if (!dsl_scan_is_running(scn))
usr/src/uts/common/fs/zfs/dsl_scan.c
443
dsl_scan_t *scn;
usr/src/uts/common/fs/zfs/dsl_scan.c
447
scn = dp->dp_scan = kmem_zalloc(sizeof (dsl_scan_t), KM_SLEEP);
usr/src/uts/common/fs/zfs/dsl_scan.c
448
scn->scn_dp = dp;
usr/src/uts/common/fs/zfs/dsl_scan.c
455
ASSERT(!scn->scn_async_destroying);
usr/src/uts/common/fs/zfs/dsl_scan.c
456
scn->scn_async_destroying = spa_feature_is_active(dp->dp_spa,
usr/src/uts/common/fs/zfs/dsl_scan.c
459
avl_create(&scn->scn_queue, scan_ds_queue_compare, sizeof (scan_ds_t),
usr/src/uts/common/fs/zfs/dsl_scan.c
461
avl_create(&scn->scn_prefetch_queue, scan_prefetch_queue_compare,
usr/src/uts/common/fs/zfs/dsl_scan.c
472
scn->scn_restart_txg = txg;
usr/src/uts/common/fs/zfs/dsl_scan.c
475
(longlong_t)scn->scn_restart_txg);
usr/src/uts/common/fs/zfs/dsl_scan.c
483
&scn->scn_phys.scn_queue_obj);
usr/src/uts/common/fs/zfs/dsl_scan.c
487
&scn->scn_phys);
usr/src/uts/common/fs/zfs/dsl_scan.c
507
scn->scn_async_destroying) {
usr/src/uts/common/fs/zfs/dsl_scan.c
513
bcopy(zaptmp, &scn->scn_phys,
usr/src/uts/common/fs/zfs/dsl_scan.c
515
scn->scn_phys.scn_flags = overflow;
usr/src/uts/common/fs/zfs/dsl_scan.c
518
if (scn->scn_phys.scn_state == DSS_FINISHED ||
usr/src/uts/common/fs/zfs/dsl_scan.c
519
scn->scn_phys.scn_state == DSS_CANCELED)
usr/src/uts/common/fs/zfs/dsl_scan.c
535
scn->scn_issued_before_pass = scn->scn_phys.scn_examined;
usr/src/uts/common/fs/zfs/dsl_scan.c
537
if (dsl_scan_is_running(scn) &&
usr/src/uts/common/fs/zfs/dsl_scan.c
546
scn->scn_restart_txg = txg;
usr/src/uts/common/fs/zfs/dsl_scan.c
549
(longlong_t)scn->scn_restart_txg);
usr/src/uts/common/fs/zfs/dsl_scan.c
557
if (scn->scn_phys.scn_errors > 0) {
usr/src/uts/common/fs/zfs/dsl_scan.c
558
scn->scn_restart_txg = txg;
usr/src/uts/common/fs/zfs/dsl_scan.c
561
(u_longlong_t)scn->scn_restart_txg);
usr/src/uts/common/fs/zfs/dsl_scan.c
569
bcopy(&scn->scn_phys, &scn->scn_phys_cached, sizeof (scn->scn_phys));
usr/src/uts/common/fs/zfs/dsl_scan.c
572
if (scn->scn_phys.scn_queue_obj != 0) {
usr/src/uts/common/fs/zfs/dsl_scan.c
577
scn->scn_phys.scn_queue_obj);
usr/src/uts/common/fs/zfs/dsl_scan.c
580
scan_ds_queue_insert(scn,
usr/src/uts/common/fs/zfs/dsl_scan.c
595
dsl_scan_t *scn = dp->dp_scan;
usr/src/uts/common/fs/zfs/dsl_scan.c
597
if (scn->scn_taskq != NULL)
usr/src/uts/common/fs/zfs/dsl_scan.c
598
taskq_destroy(scn->scn_taskq);
usr/src/uts/common/fs/zfs/dsl_scan.c
599
scan_ds_queue_clear(scn);
usr/src/uts/common/fs/zfs/dsl_scan.c
600
avl_destroy(&scn->scn_queue);
usr/src/uts/common/fs/zfs/dsl_scan.c
601
avl_destroy(&scn->scn_prefetch_queue);
usr/src/uts/common/fs/zfs/dsl_scan.c
609
dsl_scan_restarting(dsl_scan_t *scn, dmu_tx_t *tx)
usr/src/uts/common/fs/zfs/dsl_scan.c
611
return (scn->scn_restart_txg != 0 &&
usr/src/uts/common/fs/zfs/dsl_scan.c
612
scn->scn_restart_txg <= tx->tx_txg);
usr/src/uts/common/fs/zfs/dsl_scan.c
632
dsl_scan_is_paused_scrub(const dsl_scan_t *scn)
usr/src/uts/common/fs/zfs/dsl_scan.c
634
return (dsl_scan_scrubbing(scn->scn_dp) &&
usr/src/uts/common/fs/zfs/dsl_scan.c
635
scn->scn_phys.scn_flags & DSF_SCRUB_PAUSED);
usr/src/uts/common/fs/zfs/dsl_scan.c
661
dsl_scan_sync_state(dsl_scan_t *scn, dmu_tx_t *tx, state_sync_type_t sync_type)
usr/src/uts/common/fs/zfs/dsl_scan.c
664
spa_t *spa = scn->scn_dp->dp_spa;
usr/src/uts/common/fs/zfs/dsl_scan.c
666
ASSERT(sync_type != SYNC_MANDATORY || scn->scn_bytes_pending == 0);
usr/src/uts/common/fs/zfs/dsl_scan.c
667
if (scn->scn_bytes_pending == 0) {
usr/src/uts/common/fs/zfs/dsl_scan.c
683
if (scn->scn_phys.scn_queue_obj != 0)
usr/src/uts/common/fs/zfs/dsl_scan.c
684
scan_ds_queue_sync(scn, tx);
usr/src/uts/common/fs/zfs/dsl_scan.c
685
VERIFY0(zap_update(scn->scn_dp->dp_meta_objset,
usr/src/uts/common/fs/zfs/dsl_scan.c
688
&scn->scn_phys, tx));
usr/src/uts/common/fs/zfs/dsl_scan.c
689
bcopy(&scn->scn_phys, &scn->scn_phys_cached,
usr/src/uts/common/fs/zfs/dsl_scan.c
690
sizeof (scn->scn_phys));
usr/src/uts/common/fs/zfs/dsl_scan.c
692
if (scn->scn_checkpointing)
usr/src/uts/common/fs/zfs/dsl_scan.c
695
scn->scn_checkpointing = B_FALSE;
usr/src/uts/common/fs/zfs/dsl_scan.c
696
scn->scn_last_checkpoint = ddi_get_lbolt();
usr/src/uts/common/fs/zfs/dsl_scan.c
698
VERIFY0(zap_update(scn->scn_dp->dp_meta_objset,
usr/src/uts/common/fs/zfs/dsl_scan.c
701
&scn->scn_phys_cached, tx));
usr/src/uts/common/fs/zfs/dsl_scan.c
709
dsl_scan_t *scn = dmu_tx_pool(tx)->dp_scan;
usr/src/uts/common/fs/zfs/dsl_scan.c
711
if (dsl_scan_is_running(scn))
usr/src/uts/common/fs/zfs/dsl_scan.c
720
dsl_scan_t *scn = dmu_tx_pool(tx)->dp_scan;
usr/src/uts/common/fs/zfs/dsl_scan.c
723
dsl_pool_t *dp = scn->scn_dp;
usr/src/uts/common/fs/zfs/dsl_scan.c
726
ASSERT(!dsl_scan_is_running(scn));
usr/src/uts/common/fs/zfs/dsl_scan.c
728
bzero(&scn->scn_phys, sizeof (scn->scn_phys));
usr/src/uts/common/fs/zfs/dsl_scan.c
729
scn->scn_phys.scn_func = *funcp;
usr/src/uts/common/fs/zfs/dsl_scan.c
730
scn->scn_phys.scn_state = DSS_SCANNING;
usr/src/uts/common/fs/zfs/dsl_scan.c
731
scn->scn_phys.scn_min_txg = 0;
usr/src/uts/common/fs/zfs/dsl_scan.c
732
scn->scn_phys.scn_max_txg = tx->tx_txg;
usr/src/uts/common/fs/zfs/dsl_scan.c
733
scn->scn_phys.scn_ddt_class_max = DDT_CLASSES - 1; /* the entire DDT */
usr/src/uts/common/fs/zfs/dsl_scan.c
734
scn->scn_phys.scn_start_time = gethrestime_sec();
usr/src/uts/common/fs/zfs/dsl_scan.c
735
scn->scn_phys.scn_errors = 0;
usr/src/uts/common/fs/zfs/dsl_scan.c
736
scn->scn_phys.scn_to_examine = spa->spa_root_vdev->vdev_stat.vs_alloc;
usr/src/uts/common/fs/zfs/dsl_scan.c
737
scn->scn_issued_before_pass = 0;
usr/src/uts/common/fs/zfs/dsl_scan.c
738
scn->scn_restart_txg = 0;
usr/src/uts/common/fs/zfs/dsl_scan.c
739
scn->scn_done_txg = 0;
usr/src/uts/common/fs/zfs/dsl_scan.c
740
scn->scn_last_checkpoint = 0;
usr/src/uts/common/fs/zfs/dsl_scan.c
741
scn->scn_checkpointing = B_FALSE;
usr/src/uts/common/fs/zfs/dsl_scan.c
744
if (DSL_SCAN_IS_SCRUB_RESILVER(scn)) {
usr/src/uts/common/fs/zfs/dsl_scan.c
745
scn->scn_phys.scn_ddt_class_max = zfs_scrub_ddt_class_max;
usr/src/uts/common/fs/zfs/dsl_scan.c
751
&scn->scn_phys.scn_min_txg, &scn->scn_phys.scn_max_txg)) {
usr/src/uts/common/fs/zfs/dsl_scan.c
764
if (scn->scn_phys.scn_min_txg > TXG_INITIAL)
usr/src/uts/common/fs/zfs/dsl_scan.c
765
scn->scn_phys.scn_ddt_class_max = DDT_CLASS_DITTO;
usr/src/uts/common/fs/zfs/dsl_scan.c
782
scn->scn_phys.scn_queue_obj = zap_create(dp->dp_meta_objset,
usr/src/uts/common/fs/zfs/dsl_scan.c
785
bcopy(&scn->scn_phys, &scn->scn_phys_cached, sizeof (scn->scn_phys));
usr/src/uts/common/fs/zfs/dsl_scan.c
787
dsl_scan_sync_state(scn, tx, SYNC_MANDATORY);
usr/src/uts/common/fs/zfs/dsl_scan.c
791
*funcp, scn->scn_phys.scn_min_txg, scn->scn_phys.scn_max_txg);
usr/src/uts/common/fs/zfs/dsl_scan.c
802
dsl_scan_t *scn = dp->dp_scan;
usr/src/uts/common/fs/zfs/dsl_scan.c
822
if (func == POOL_SCAN_SCRUB && dsl_scan_is_paused_scrub(scn)) {
usr/src/uts/common/fs/zfs/dsl_scan.c
824
int err = dsl_scrub_set_pause_resume(scn->scn_dp,
usr/src/uts/common/fs/zfs/dsl_scan.c
839
dsl_scan_done(dsl_scan_t *scn, boolean_t complete, dmu_tx_t *tx)
usr/src/uts/common/fs/zfs/dsl_scan.c
853
dsl_pool_t *dp = scn->scn_dp;
usr/src/uts/common/fs/zfs/dsl_scan.c
863
if (scn->scn_phys.scn_queue_obj != 0) {
usr/src/uts/common/fs/zfs/dsl_scan.c
865
scn->scn_phys.scn_queue_obj, tx));
usr/src/uts/common/fs/zfs/dsl_scan.c
866
scn->scn_phys.scn_queue_obj = 0;
usr/src/uts/common/fs/zfs/dsl_scan.c
868
scan_ds_queue_clear(scn);
usr/src/uts/common/fs/zfs/dsl_scan.c
870
scn->scn_phys.scn_flags &= ~DSF_SCRUB_PAUSED;
usr/src/uts/common/fs/zfs/dsl_scan.c
876
if (!dsl_scan_is_running(scn)) {
usr/src/uts/common/fs/zfs/dsl_scan.c
877
ASSERT(!scn->scn_is_sorted);
usr/src/uts/common/fs/zfs/dsl_scan.c
881
if (scn->scn_is_sorted) {
usr/src/uts/common/fs/zfs/dsl_scan.c
882
scan_io_queues_destroy(scn);
usr/src/uts/common/fs/zfs/dsl_scan.c
883
scn->scn_is_sorted = B_FALSE;
usr/src/uts/common/fs/zfs/dsl_scan.c
885
if (scn->scn_taskq != NULL) {
usr/src/uts/common/fs/zfs/dsl_scan.c
886
taskq_destroy(scn->scn_taskq);
usr/src/uts/common/fs/zfs/dsl_scan.c
887
scn->scn_taskq = NULL;
usr/src/uts/common/fs/zfs/dsl_scan.c
891
scn->scn_phys.scn_state = complete ? DSS_FINISHED : DSS_CANCELED;
usr/src/uts/common/fs/zfs/dsl_scan.c
893
if (dsl_scan_restarting(scn, tx))
usr/src/uts/common/fs/zfs/dsl_scan.c
903
if (DSL_SCAN_IS_SCRUB_RESILVER(scn)) {
usr/src/uts/common/fs/zfs/dsl_scan.c
919
scn->scn_phys.scn_max_txg, B_TRUE);
usr/src/uts/common/fs/zfs/dsl_scan.c
922
scn->scn_phys.scn_min_txg ?
usr/src/uts/common/fs/zfs/dsl_scan.c
961
scn->scn_phys.scn_end_time = gethrestime_sec();
usr/src/uts/common/fs/zfs/dsl_scan.c
963
ASSERT(!dsl_scan_is_running(scn));
usr/src/uts/common/fs/zfs/dsl_scan.c
970
dsl_scan_t *scn = dmu_tx_pool(tx)->dp_scan;
usr/src/uts/common/fs/zfs/dsl_scan.c
972
if (!dsl_scan_is_running(scn))
usr/src/uts/common/fs/zfs/dsl_scan.c
981
dsl_scan_t *scn = dmu_tx_pool(tx)->dp_scan;
usr/src/uts/common/fs/zfs/dsl_scan.c
983
dsl_scan_done(scn, B_FALSE, tx);
usr/src/uts/common/fs/zfs/dsl_scan.c
984
dsl_scan_sync_state(scn, tx, SYNC_MANDATORY);
usr/src/uts/common/fs/zfs/dsl_scan.c
985
spa_event_notify(scn->scn_dp->dp_spa, NULL, NULL, ESC_ZFS_SCRUB_ABORT);
usr/src/uts/common/fs/zfs/spa_misc.c
2411
dsl_scan_t *scn = spa->spa_dsl_pool ? spa->spa_dsl_pool->dp_scan : NULL;
usr/src/uts/common/fs/zfs/spa_misc.c
2413
if (scn == NULL || scn->scn_phys.scn_func == POOL_SCAN_NONE)
usr/src/uts/common/fs/zfs/spa_misc.c
2418
ps->pss_func = scn->scn_phys.scn_func;
usr/src/uts/common/fs/zfs/spa_misc.c
2419
ps->pss_state = scn->scn_phys.scn_state;
usr/src/uts/common/fs/zfs/spa_misc.c
2420
ps->pss_start_time = scn->scn_phys.scn_start_time;
usr/src/uts/common/fs/zfs/spa_misc.c
2421
ps->pss_end_time = scn->scn_phys.scn_end_time;
usr/src/uts/common/fs/zfs/spa_misc.c
2422
ps->pss_to_examine = scn->scn_phys.scn_to_examine;
usr/src/uts/common/fs/zfs/spa_misc.c
2423
ps->pss_to_process = scn->scn_phys.scn_to_process;
usr/src/uts/common/fs/zfs/spa_misc.c
2424
ps->pss_processed = scn->scn_phys.scn_processed;
usr/src/uts/common/fs/zfs/spa_misc.c
2425
ps->pss_errors = scn->scn_phys.scn_errors;
usr/src/uts/common/fs/zfs/spa_misc.c
2426
ps->pss_examined = scn->scn_phys.scn_examined;
usr/src/uts/common/fs/zfs/spa_misc.c
2428
scn->scn_issued_before_pass + spa->spa_scan_pass_issued;
usr/src/uts/common/fs/zfs/spa_misc.c
2429
ps->pss_state = scn->scn_phys.scn_state;
usr/src/uts/common/fs/zfs/sys/dsl_scan.h
174
void dsl_scan_ddt_entry(dsl_scan_t *scn, enum zio_checksum checksum,
usr/src/uts/common/fs/zfs/sys/dsl_scan.h
180
boolean_t dsl_scan_active(dsl_scan_t *scn);
usr/src/uts/common/fs/zfs/sys/dsl_scan.h
181
boolean_t dsl_scan_is_paused_scrub(const dsl_scan_t *scn);
usr/src/uts/common/fs/zfs/vdev.c
2504
dsl_scan_t *scn = spa->spa_dsl_pool->dp_scan;
usr/src/uts/common/fs/zfs/vdev.c
2525
if (vdev_dtl_max(vd) <= scn->scn_phys.scn_max_txg) {
usr/src/uts/common/fs/zfs/vdev.c
2526
ASSERT3U(scn->scn_phys.scn_min_txg, <=, vdev_dtl_min(vd));
usr/src/uts/common/fs/zfs/vdev.c
2527
ASSERT3U(scn->scn_phys.scn_min_txg, <, vd->vdev_resilver_txg);
usr/src/uts/common/fs/zfs/vdev.c
2528
ASSERT3U(vd->vdev_resilver_txg, <=, scn->scn_phys.scn_max_txg);
usr/src/uts/common/fs/zfs/vdev.c
2554
dsl_scan_t *scn = spa->spa_dsl_pool->dp_scan;
usr/src/uts/common/fs/zfs/vdev.c
2562
if (zfs_scan_ignore_errors && scn)
usr/src/uts/common/fs/zfs/vdev.c
2563
scn->scn_phys.scn_errors = 0;
usr/src/uts/common/fs/zfs/vdev.c
2574
(u_longlong_t)(scn ? scn->scn_phys.scn_errors : 0));
usr/src/uts/common/fs/zfs/vdev.c
2585
(scn != NULL && scn->scn_phys.scn_errors == 0)) &&
usr/src/uts/common/fs/zfs/vdev_mirror.c
254
dsl_scan_t *scn = NULL;
usr/src/uts/common/fs/zfs/vdev_mirror.c
258
scn = spa->spa_dsl_pool->dp_scan;
usr/src/uts/common/fs/zfs/vdev_mirror.c
277
scn != NULL &&
usr/src/uts/common/fs/zfs/vdev_mirror.c
278
scn->scn_is_sorted &&