Lines Matching defs:elemp
247 mntfs_populate_text(vfs_t *vfsp, zone_t *zonep, mntelem_t *elemp)
249 struct extmnttab *tabp = &elemp->mnte_tab;
251 char *cp = elemp->mnte_text;
273 tabp->mnt_mountp = (char *)(cp - elemp->mnte_text);
285 tabp->mnt_fstype = (char *)(cp - elemp->mnte_text);
289 tabp->mnt_mntopts = (char *)(cp - elemp->mnte_text);
293 tabp->mnt_time = (char *)(cp - elemp->mnte_text);
300 elemp->mnte_text_size = cp - elemp->mnte_text;
301 elemp->mnte_vfs_ctime = vfsp->vfs_hrctime;
302 elemp->mnte_hidden = vfsp->vfs_flag & VFS_NOMNTTAB;
344 mntfs_destroy_elem(mntelem_t *elemp)
346 kmem_free(elemp->mnte_text, elemp->mnte_text_size);
347 kmem_free(elemp, sizeof (mntelem_t));
355 mntfs_elem_in_range(mntsnap_t *snapp, mntelem_t *elemp)
358 timespec_t *btimep = &elemp->mnte_birth;
359 timespec_t *dtimep = &elemp->mnte_death;
367 (MNTFS_ELEM_IS_ALIVE(elemp) ||
380 mntfs_get_next_elem(mntsnap_t *snapp, mntelem_t *elemp)
385 elemp = elemp->mnte_next;
386 } while (elemp &&
387 (!mntfs_elem_in_range(snapp, elemp) ||
388 (!show_hidden && elemp->mnte_hidden)));
389 return (elemp);
404 mntelem_t *elemp;
416 while ((elemp = *elempp) != NULL) {
417 if (mntfs_elem_in_range(snapp, elemp) &&
418 (!elemp->mnte_hidden || show_hidden) &&
419 ++number_decremented && --elemp->mnte_refcnt == 0) {
420 if ((*elempp = elemp->mnte_next) != NULL)
421 (*elempp)->mnte_prev = elemp->mnte_prev;
422 mntfs_destroy_elem(elemp);
424 elempp = &elemp->mnte_next;
511 mntelem_t *elemp;
632 elemp = zonep->zone_mntfs_db;
645 for (; elemp; prevp = elemp, elemp = elemp->mnte_next) {
647 elemp);
650 order = mntfs_newest(&elemp->mnte_vfs_ctime,
665 if (MNTFS_ELEM_IS_DEAD(elemp))
682 if (!elemp->mnte_hidden || show_hidden)
683 vfs_mono_time(&elemp->mnte_death);
686 mntelem_t *, elemp);
698 if (elemp == NULL) {
713 elemp = newp;
723 newp->mnte_next = elemp;
725 elemp->mnte_prev = newp;
726 ASSERT(*headpp == elemp);
729 elemp = newp;
730 } else if (!mntfs_is_same_element(elemp, tempelemp)) {
737 vfs_mono_time(&elemp->mnte_death);
740 mntfs_insert_after(newp, elemp);
741 elemp = newp;
745 DTRACE_PROBE1(incrementing, mntelem_t *, elemp);
746 elemp->mnte_refcnt++;
753 total_text_size += elemp->mnte_text_size;
754 if (!elemp->mnte_hidden)
755 normal_text_size += elemp->mnte_text_size;
757 firstp = elemp;
759 prevp = elemp;
760 elemp = elemp->mnte_next;
772 for (; elemp; elemp = elemp->mnte_next) {
773 if (MNTFS_ELEM_IS_ALIVE(elemp) &&
774 (!elemp->mnte_hidden || show_hidden))
775 vfs_mono_time(&elemp->mnte_death);
895 mntelem_t *elemp;
925 elemp = snapp->mnts_next;
938 elemp = snapp->mnts_next;
941 elemp = snapp->mnts_first;
944 while (off > total_off + elemp->mnte_text_size) {
945 total_off += elemp->mnte_text_size;
946 elemp = mntfs_get_next_elem(snapp, elemp);
947 ASSERT(elemp != NULL);
962 available = elemp->mnte_text_size - ieoffset;
964 bcopy(elemp->mnte_text + ieoffset, bufferp + written, copylen);
967 elemp = mntfs_get_next_elem(snapp, elemp);
968 ASSERT(elemp != NULL || written == len);
982 snapp->mnts_next = elemp;
1331 mntfs_special_info_element(mntelem_t *elemp, cred_t *cr)
1336 newpath = kmem_alloc(elemp->mnte_text_size, KM_SLEEP);
1337 bcopy(elemp->mnte_text, newpath, (off_t)(elemp->mnte_tab.mnt_mountp));
1338 *(newpath + (off_t)elemp->mnte_tab.mnt_mountp - 1) = '\0';
1340 kmem_free(newpath, elemp->mnte_text_size);
1398 mntfs_copyout_elem(mntelem_t *elemp, struct extmnttab *uemp,
1402 char *dbbufp = elemp->mnte_text;
1403 size_t dbbufsize = elemp->mnte_text_size;
1404 struct extmnttab *dbtabp = &elemp->mnte_tab;
1453 bcopy(elemp->mnte_text, kbufp, dbbufsize);
1505 mntelem_t *elemp;
1530 for (elemp = snapp->mnts_first; elemp;
1531 elemp = mntfs_get_next_elem(snapp, elemp)) {
1532 devlist[2 * i] = elemp->mnte_tab.mnt_major;
1533 devlist[2 * i + 1] = elemp->mnte_tab.mnt_minor;
1614 mntelem_t *elemp; /* a database element */
1708 elemp = snapp->mnts_next;
1711 for (; elemp; elemp = mntfs_get_next_elem(snapp,
1712 elemp)) {
1713 dbtabp = &elemp->mnte_tab;
1714 dbbufp = elemp->mnte_text;
1715 dbbufsize = elemp->mnte_text_size;
1749 if (elemp == NULL || type == 0 ||
1750 type == mntfs_special_info_element(elemp, cr))
1754 elemp = mntfs_get_next_elem(snapp, elemp);
1760 if (elemp == NULL) {
1770 if (elemp->mnte_text_size > MNT_LINE_MAX) {
1780 if (mntfs_copyout_elem(elemp, uemp, ubufp, cmd, datamodel)) {
1784 elemp = mntfs_get_next_elem(snapp, elemp);
1786 snapp->mnts_next = elemp;
1799 mntelem_t *elemp; /* a database element */
1806 if ((elemp = snapp->mnts_next) == NULL) {
1831 if (elemp->mnte_text_size > ubufsize) {
1841 if (mntfs_copyout_elem(elemp, uemp, ubufp, cmd, datamodel)) {
1845 elemp = mntfs_get_next_elem(snapp, elemp);
1847 snapp->mnts_next = elemp;