Lines Matching refs:eswp
546 struct execsw *eswp; in gexec() local
589 if ((eswp = findexec_by_hdr(magbuf)) == NULL) in gexec()
721 args->execswp = eswp; /* Save execsw pointer in uarg for exec_func */ in gexec()
752 error = (*eswp->exec_func)(vp, uap, args, idatap, level, execsz, in gexec()
754 rw_exit(eswp->exec_lock); in gexec()
920 struct execsw *eswp; in findexecsw() local
922 for (eswp = execsw; eswp < &execsw[nexectype]; eswp++) { in findexecsw()
923 ASSERT(eswp->exec_maglen <= MAGIC_BYTES); in findexecsw()
924 if (magic && eswp->exec_maglen != 0 && in findexecsw()
925 bcmp(magic, eswp->exec_magic, eswp->exec_maglen) == 0) in findexecsw()
926 return (eswp); in findexecsw()
940 struct execsw *eswp; in findexec_by_hdr() local
942 for (eswp = execsw; eswp < &execsw[nexectype]; eswp++) { in findexec_by_hdr()
943 ASSERT(eswp->exec_maglen <= MAGIC_BYTES); in findexec_by_hdr()
944 if (header && eswp->exec_maglen != 0 && in findexec_by_hdr()
945 bcmp(&header[eswp->exec_magoff], eswp->exec_magic, in findexec_by_hdr()
946 eswp->exec_maglen) == 0) { in findexec_by_hdr()
947 if (hold_execsw(eswp) != 0) in findexec_by_hdr()
949 return (eswp); in findexec_by_hdr()
962 struct execsw *eswp; in findexec_by_magic() local
964 for (eswp = execsw; eswp < &execsw[nexectype]; eswp++) { in findexec_by_magic()
965 ASSERT(eswp->exec_maglen <= MAGIC_BYTES); in findexec_by_magic()
966 if (magic && eswp->exec_maglen != 0 && in findexec_by_magic()
967 bcmp(magic, eswp->exec_magic, eswp->exec_maglen) == 0) { in findexec_by_magic()
968 if (hold_execsw(eswp) != 0) in findexec_by_magic()
970 return (eswp); in findexec_by_magic()
977 hold_execsw(struct execsw *eswp) in hold_execsw() argument
981 rw_enter(eswp->exec_lock, RW_READER); in hold_execsw()
982 while (!LOADED_EXEC(eswp)) { in hold_execsw()
983 rw_exit(eswp->exec_lock); in hold_execsw()
984 name = execswnames[eswp-execsw]; in hold_execsw()
988 rw_enter(eswp->exec_lock, RW_READER); in hold_execsw()