Branch Coverage

AIO.xs
Criterion Covered Total %
branch 180 914 19.6


line true false branch
281 0 0 if (SvPVX (sv) != mg->mg_ptr)
286 0 0 SvOK_off (sv);
303 0 0 if (SvPVX (sv) != mg->mg_ptr)
308 0 0 SvOK_off (sv);
330 0 0 SvUPGRADE (sv, SVt_PV); /* nop... */
332 0 0 if (SvLEN (sv))
372 0 0 if (count < 0)
377 0 0 if (!fiemap)
387 0 0 if (ioctl (req->int1, FS_IOC_FIEMAP, fiemap) < 0)
390 0 0 if (req->int3 >= 0 /* not autosizing */
391 0 0 || !fiemap->fm_mapped_extents /* no more extents */
392 0 0 || fiemap->fm_extents [fiemap->fm_mapped_extents - 1].fe_flags & FIEMAP_EXTENT_LAST /* hit eof */)
402 0 0 end_offset = fiemap->fm_length + (fiemap->fm_length == FIEMAP_MAX_OFFSET ? 0 : fiemap->fm_start);
416 0 0 if (ioctl (req->int1, FS_IOC_FIEMAP, incmap) < 0)
419 0 0 if (!incmap->fm_mapped_extents)
425 0 0 if (!fiemap)
430 0 0 for (count = 0; count < incmap->fm_mapped_extents; ++count)
436 0 0 if (e->fe_logical >= end_offset)
439 0 0 if (e->fe_flags & FIEMAP_EXTENT_LAST)
502 37 20 if (!req->self)
523 84 0 if (!SvROK (sv)
525 42 42 || (SvSTASH (SvRV (sv)) != aio_grp_stash
526 0 42 && SvSTASH (SvRV (sv)) != aio_req_stash
527 0 0 && !sv_derived_from (sv, "IO::AIO::REQ")))
532 84 0 return mg ? (aio_req)mg->mg_ptr : 0;
538 36 0 if (!SvROK (sv)
539 36 0 || SvTYPE (SvRV (sv)) != SVt_PVMG
540 0 36 || SvSTASH (SvRV (sv)) != aio_wd_stash)
549 1 3 if (fd < 0)
559 1 2 symlen = snprintf (
563 0 1 flags == O_RDONLY ? "<" : flags == O_WRONLY ? ">" : "+<",
568 3 0 ? (SV *)gv : &PL_sv_undef;
574 21 0 if (grp->sv2 && SvOK (grp->sv2))
1 20 if (grp->sv2 && SvOK (grp->sv2))
1 0 if (grp->sv2 && SvOK (grp->sv2))
0 1 if (grp->sv2 && SvOK (grp->sv2))
580 0 20 PUSHMARK (SP);
581 0 20 XPUSHs (req_sv (grp, aio_grp_stash));
585 20 0 FREETMPS;
596 0 81 if (expect_false (on_next_submit))
603 0 0 PUSHMARK (SP);
612 1 60 if (req->flags & FLAG_SV2_RO_OFF)
615 58 3 if (!EIO_CANCELLED (req) && req->callback)
57 1 if (!EIO_CANCELLED (req) && req->callback)
623 0 57 PUSHMARK (SP);
624 0 57 EXTEND (SP, 1);
627 49 8 if (expect_true (sv_result_cache))
631 0 49 SvIOK_only (sv_result);
642 1 0 PUSHs (req->result ? &PL_sv_undef : sv_2mortal (newSVaio_wd (req->wd)));
649 4 0 if (req->result >= 0)
658 140 4 for (i = 0; i < req->result; ++i)
660 105 35 if (req->int1 & EIO_READDIR_DENTS)
664 35 70 if (req->int1 & EIO_READDIR_CUSTOM2)
671 2 33 if (!sv_type [ent->type])
701 3 1 if (req->int1 & EIO_READDIR_CUSTOM1)
702 0 3 XPUSHs (sv_2mortal (newSViv (req->int1 & ~(EIO_READDIR_CUSTOM1 | EIO_READDIR_CUSTOM2))));
716 0 0 if (req->result >= 0)
750 2 3 if (req->sv1)
755 0 2 EXTEND (SP, AvFILL (av) + 1);
2 0 EXTEND (SP, AvFILL (av) + 1);
0 2 EXTEND (SP, AvFILL (av) + 1);
0 2 EXTEND (SP, AvFILL (av) + 1);
0 0 EXTEND (SP, AvFILL (av) + 1);
756 0 7 for (i = 0; i <= AvFILL (av); ++i)
5 2 for (i = 0; i <= AvFILL (av); ++i)
767 0 0 if (req->result > 0)
774 6 17 PL_laststype = req->type == EIO_LSTAT ? OP_LSTAT : OP_STAT;
776 18 5 if (!(PL_laststatval = req->result))
784 0 0 PUSHs (req->result ? sv_result : sv_2mortal (newSVval64 (req->offs)));
792 0 1 SvSETMAGIC (req->sv2);
799 0 0 if (req->result >= 0)
802 0 0 if (req->flags & EIO_FLAG_PTR2_FREE)
814 0 0 SvSETMAGIC (req->sv2);
822 0 0 if (req->feed == fiemap)
825 0 0 if (!req->result)
829 0 0 if (fiemap->fm_extent_count)
834 0 0 while (fiemap->fm_mapped_extents)
868 1 0 if (req->result > 0)
883 57 0 if (expect_false (SvREFCNT (sv_result) != 1 || sv_result_cache))
0 57 if (expect_false (SvREFCNT (sv_result) != 1 || sv_result_cache))
0 57 if (expect_false (SvREFCNT (sv_result) != 1 || sv_result_cache))
888 8 49 FREETMPS;
894 61 0 return !!SvTRUE (ERRSV);
61 0 return !!SvTRUE (ERRSV);
61 0 return !!SvTRUE (ERRSV);
0 61 return !!SvTRUE (ERRSV);
0 0 return !!SvTRUE (ERRSV);
0 0 return !!SvTRUE (ERRSV);
61 0 return !!SvTRUE (ERRSV);
0 61 return !!SvTRUE (ERRSV);
0 0 return !!SvTRUE (ERRSV);
0 0 return !!SvTRUE (ERRSV);
0 0 return !!SvTRUE (ERRSV);
0 0 return !!SvTRUE (ERRSV);
61 0 return !!SvTRUE (ERRSV);
61 0 return !!SvTRUE (ERRSV);
61 0 return !!SvTRUE (ERRSV);
61 0 return !!SvTRUE (ERRSV);
61 0 return !!SvTRUE (ERRSV);
61 0 return !!SvTRUE (ERRSV);
61 0 return !!SvTRUE (ERRSV);
0 61 return !!SvTRUE (ERRSV);
0 0 return !!SvTRUE (ERRSV);
0 0 return !!SvTRUE (ERRSV);
0 61 return !!SvTRUE (ERRSV);
0 0 return !!SvTRUE (ERRSV);
0 0 return !!SvTRUE (ERRSV);
0 0 return !!SvTRUE (ERRSV);
0 0 return !!SvTRUE (ERRSV);
0 0 return !!SvTRUE (ERRSV);
0 0 return !!SvTRUE (ERRSV);
0 0 return !!SvTRUE (ERRSV);
0 0 return !!SvTRUE (ERRSV);
0 0 return !!SvTRUE (ERRSV);
0 0 return !!SvTRUE (ERRSV);
0 0 return !!SvTRUE (ERRSV);
0 0 return !!SvTRUE (ERRSV);
0 0 return !!SvTRUE (ERRSV);
900 37 24 if (req->self)
918 0 0 if (grp->type != EIO_GROUP)
931 0 10 if (s_epipe_renew (&respipe))
938 41 0 while (eio_nreqs ())
946 24 17 if (size)
962 0 38 if (res > 0)
965 0 38 if (!max_outstanding || max_outstanding > eio_nreqs ())
0 0 if (!max_outstanding || max_outstanding > eio_nreqs ())
978 0 10 if (eio_init (want_poll, done_poll) < 0)
987 0 91 SvGETMAGIC (cb_sv);
0 0 SvGETMAGIC (cb_sv);
988 29 62 return SvOK (cb_sv) ? s_get_cv_croak (cb_sv) : 0;
29 0 return SvOK (cb_sv) ? s_get_cv_croak (cb_sv) : 0;
0 29 return SvOK (cb_sv) ? s_get_cv_croak (cb_sv) : 0;
1003 0 81 if (!req)
1028 17 21 if (expect_false (SvROK (path)))
1033 17 0 if (SvTYPE (rv) == SVt_PVAV && AvFILLp (rv) == 1)
17 0 if (SvTYPE (rv) == SVt_PVAV && AvFILLp (rv) == 1)
1038 0 17 if (SvOK (wdob))
0 0 if (SvOK (wdob))
0 0 if (SvOK (wdob))
1046 0 0 else if (SvTYPE (rv) == SVt_PVMG && SvSTASH (rv) == aio_wd_stash)
0 0 else if (SvTYPE (rv) == SVt_PVMG && SvSTASH (rv) == aio_wd_stash)
1058 38 0 *ptr = SvPVbyte_nolen (*pathsv);
1072 16 9 SV *rv = SvROK (fh_or_path) ? SvRV (fh_or_path) : fh_or_path;
1074 1 24 switch (SvTYPE (rv))
1112 0 0 if (!SvROK (sv) || SvTYPE (SvRV (sv)) != SVt_PVAV)
0 0 if (!SvROK (sv) || SvTYPE (SvRV (sv)) != SVt_PVAV)
1119 0 0 for (i = 0; i < nelem; ++i)
1123 0 0 if (e && *e)
0 0 if (e && *e)
1124 0 0 vecp[i] = SvPVbyte_nolen (*e);
1549 2970 9 for (civ = const_iv + sizeof (const_iv) / sizeof (const_iv [0]); civ > const_iv; civ--)
1558 9 0 if (
1563 9 0 || fcntl (pipefd [0], F_SETFD, FD_CLOEXEC) < 0
1565 0 9 || close (pipefd [1]) < 0
1630 1 0 REQ_SEND;
1 0 REQ_SEND;
0 1 REQ_SEND;
1644 4 0 REQ_SEND;
0 4 REQ_SEND;
0 0 REQ_SEND;
1662 0 0 REQ_SEND;
0 0 REQ_SEND;
0 0 REQ_SEND;
1679 0 0 REQ_SEND;
0 0 REQ_SEND;
0 0 REQ_SEND;
1696 0 0 REQ_SEND;
0 0 REQ_SEND;
0 0 REQ_SEND;
1735 1 0 REQ_SEND;
0 1 REQ_SEND;
0 0 REQ_SEND;
1748 0 0 req->offs = SvVAL64 (offset);
1751 0 0 REQ_SEND;
0 0 REQ_SEND;
0 0 REQ_SEND;
1763 1 0 char *svptr = SvPVbyte (data, svlen);
1764 0 1 UV len = SvUV (length);
1766 0 1 if (dataoffset < 0)
1769 1 0 if (dataoffset < 0 || dataoffset > svlen)
0 1 if (dataoffset < 0 || dataoffset > svlen)
1772 0 1 if (ix == EIO_WRITE)
1775 0 0 if (!SvOK (length) || len + dataoffset > svlen)
0 0 if (!SvOK (length) || len + dataoffset > svlen)
0 0 if (!SvOK (length) || len + dataoffset > svlen)
0 0 if (!SvOK (length) || len + dataoffset > svlen)
1781 1 0 if (!SvPOK (data) || SvLEN (data) >= SvCUR (data))
1 0 if (!SvPOK (data) || SvLEN (data) >= SvCUR (data))
1783 0 0 else if (SvCUR (data) < len + dataoffset)
1793 0 1 req->offs = SvOK (offset) ? SvVAL64 (offset) : -1;
0 0 req->offs = SvOK (offset) ? SvVAL64 (offset) : -1;
0 0 req->offs = SvOK (offset) ? SvVAL64 (offset) : -1;
1 0 req->offs = SvOK (offset) ? SvVAL64 (offset) : -1;
1799 1 0 if (!SvREADONLY (data))
1805 1 0 REQ_SEND;
0 1 REQ_SEND;
0 0 REQ_SEND;
1819 0 0 if (SvPOK (arg) || !SvNIOK (arg))
0 0 if (SvPOK (arg) || !SvNIOK (arg))
1829 0 0 if (svlen < need)
1830 0 0 svptr = SvGROW (arg, need);
0 0 svptr = SvGROW (arg, need);
1833 0 0 svptr = (char *)SvIV (arg);
1845 0 0 REQ_SEND;
0 0 REQ_SEND;
0 0 REQ_SEND;
1861 0 0 REQ_SEND;
0 0 REQ_SEND;
0 0 REQ_SEND;
1880 0 0 REQ_SEND;
0 0 REQ_SEND;
0 0 REQ_SEND;
1896 0 0 REQ_SEND;
0 0 REQ_SEND;
0 0 REQ_SEND;
1909 0 25 req_set_fh_or_path (req, ix, ix == EIO_STATVFS ? EIO_FSTATVFS : EIO_FSTAT, fh_or_path);
1911 25 0 REQ_SEND;
19 6 REQ_SEND;
0 19 REQ_SEND;
1923 0 0 EXTEND (SP, 4);
1924 0 0 if (ix & 0x01) PUSHs (newSVnv (PL_statcache.st_atime + 1e-9 * ATIMENSEC));
1925 0 0 if (ix & 0x02) PUSHs (newSVnv (PL_statcache.st_mtime + 1e-9 * MTIMENSEC));
1926 0 0 if (ix & 0x04) PUSHs (newSVnv (PL_statcache.st_ctime + 1e-9 * CTIMENSEC));
1927 0 0 if (ix & 0x08) PUSHs (newSVnv (BTIMESEC + 1e-9 * BTIMENSEC));
1940 0 0 EXTEND (SP, 4);
1941 0 0 if (ix & 0x01) PUSHs (newSViv (ATIMENSEC));
1942 0 0 if (ix & 0x02) PUSHs (newSViv (MTIMENSEC));
1943 0 0 if (ix & 0x04) PUSHs (newSViv (CTIMENSEC));
1944 0 0 if (ix & 0x08) PUSHs (newSViv (BTIMENSEC));
1945 0 0 if (ix & 0x10) PUSHs (newSVuv (BTIMESEC));
1946 0 0 if (ix & 0x20) PUSHs (newSVuv (ST_GEN));
1953 0 0 RETVAL = ix ? minor (dev) : major (dev);
1970 0 0 req->nv1 = SvOK (atime) ? SvNV (atime) : -1.;
0 0 req->nv1 = SvOK (atime) ? SvNV (atime) : -1.;
0 0 req->nv1 = SvOK (atime) ? SvNV (atime) : -1.;
0 0 req->nv1 = SvOK (atime) ? SvNV (atime) : -1.;
1971 0 0 req->nv2 = SvOK (mtime) ? SvNV (mtime) : -1.;
0 0 req->nv2 = SvOK (mtime) ? SvNV (mtime) : -1.;
0 0 req->nv2 = SvOK (mtime) ? SvNV (mtime) : -1.;
0 0 req->nv2 = SvOK (mtime) ? SvNV (mtime) : -1.;
1974 0 0 REQ_SEND;
0 0 REQ_SEND;
0 0 REQ_SEND;
1983 0 0 req->offs = SvOK (offset) ? SvVAL64 (offset) : -1;
0 0 req->offs = SvOK (offset) ? SvVAL64 (offset) : -1;
0 0 req->offs = SvOK (offset) ? SvVAL64 (offset) : -1;
0 0 req->offs = SvOK (offset) ? SvVAL64 (offset) : -1;
1986 0 0 REQ_SEND;
0 0 REQ_SEND;
0 0 REQ_SEND;
1998 0 0 REQ_SEND;
0 0 REQ_SEND;
0 0 REQ_SEND;
2007 0 0 req->int2 = SvOK (uid) ? SvIV (uid) : -1;
0 0 req->int2 = SvOK (uid) ? SvIV (uid) : -1;
0 0 req->int2 = SvOK (uid) ? SvIV (uid) : -1;
0 0 req->int2 = SvOK (uid) ? SvIV (uid) : -1;
2008 0 0 req->int3 = SvOK (gid) ? SvIV (gid) : -1;
0 0 req->int3 = SvOK (gid) ? SvIV (gid) : -1;
0 0 req->int3 = SvOK (gid) ? SvIV (gid) : -1;
0 0 req->int3 = SvOK (gid) ? SvIV (gid) : -1;
2011 0 0 REQ_SEND;
0 0 REQ_SEND;
0 0 REQ_SEND;
2023 1 2 if (flags & EIO_READDIR_DENTS)
2028 3 0 REQ_SEND;
1 2 REQ_SEND;
0 1 REQ_SEND;
2041 0 0 REQ_SEND;
0 0 REQ_SEND;
0 0 REQ_SEND;
2057 4 0 REQ_SEND;
0 4 REQ_SEND;
0 0 REQ_SEND;
2076 1 0 REQ_SEND;
0 1 REQ_SEND;
0 0 REQ_SEND;
2092 0 0 REQ_SEND;
0 0 REQ_SEND;
0 0 REQ_SEND;
2106 0 0 REQ_SEND;
0 0 REQ_SEND;
0 0 REQ_SEND;
2117 0 0 char *svptr = SvPVbyte (data, svlen);
2118 0 0 UV len = SvUV (length);
2120 0 0 if (flags < 0)
2121 0 0 flags = ix == EIO_MSYNC ? EIO_MS_SYNC : 0;
2123 0 0 if (offset < 0)
2126 0 0 if (offset < 0 || offset > svlen)
0 0 if (offset < 0 || offset > svlen)
2129 0 0 if (!SvOK (length) || len + offset > svlen)
0 0 if (!SvOK (length) || len + offset > svlen)
0 0 if (!SvOK (length) || len + offset > svlen)
0 0 if (!SvOK (length) || len + offset > svlen)
2141 0 0 REQ_SEND;
0 0 REQ_SEND;
0 0 REQ_SEND;
2150 0 0 char *svptr = SvPVbyte (data, svlen);
2151 0 0 UV len = SvUV (length);
2153 0 0 if (offset < 0)
2156 0 0 if (offset < 0 || offset > svlen)
0 0 if (offset < 0 || offset > svlen)
2159 0 0 if (!SvOK (length) || len + offset > svlen)
0 0 if (!SvOK (length) || len + offset > svlen)
0 0 if (!SvOK (length) || len + offset > svlen)
0 0 if (!SvOK (length) || len + offset > svlen)
2170 0 0 REQ_SEND;
0 0 REQ_SEND;
0 0 REQ_SEND;
2183 0 0 REQ_SEND;
0 0 REQ_SEND;
0 0 REQ_SEND;
2201 0 0 req->size = SvOK (length) ? SvVAL64 (length) : ~0ULL;
0 0 req->size = SvOK (length) ? SvVAL64 (length) : ~0ULL;
0 0 req->size = SvOK (length) ? SvVAL64 (length) : ~0ULL;
0 0 req->size = SvOK (length) ? SvVAL64 (length) : ~0ULL;
2203 0 0 req->int3 = SvOK (count) ? SvIV (count) : -1;
0 0 req->int3 = SvOK (count) ? SvIV (count) : -1;
0 0 req->int3 = SvOK (count) ? SvIV (count) : -1;
0 0 req->int3 = SvOK (count) ? SvIV (count) : -1;
2206 0 0 REQ_SEND;
0 0 REQ_SEND;
0 0 REQ_SEND;
2217 0 0 if (length) /* known length, directly read into scalar */
2219 0 0 if (!SvPOK (data) || SvLEN (data) >= SvCUR (data))
0 0 if (!SvPOK (data) || SvLEN (data) >= SvCUR (data))
2221 0 0 else if (SvCUR (data) < length)
2224 0 0 svptr = SvPVbyte_nolen (data);
2237 0 0 if (!SvREADONLY (data))
2243 0 0 REQ_SEND;
0 0 REQ_SEND;
0 0 REQ_SEND;
2254 0 13 req->nv1 = delay < 0. ? 0. : delay;
2256 13 0 REQ_SEND;
10 3 REQ_SEND;
0 10 REQ_SEND;
2271 0 6 XPUSHs (req_sv (req, aio_grp_stash));
2285 3 0 REQ_SEND;
0 3 REQ_SEND;
0 0 REQ_SEND;
2292 28 1 if (items > 0)
2294 0 28 if (pri < EIO_PRI_MIN) pri = EIO_PRI_MIN;
2295 6 22 if (pri > EIO_PRI_MAX) pri = EIO_PRI_MAX;
2305 0 0 if (nice < EIO_PRI_MIN) nice = EIO_PRI_MIN;
2306 0 0 if (nice > EIO_PRI_MAX) nice = EIO_PRI_MAX;
2312 0 9 while (eio_nreqs ())
2393 0 0 int fd = SvOK (fh) ? s_fileno_croak (fh, flags & PROT_WRITE) : -1;
0 0 int fd = SvOK (fh) ? s_fileno_croak (fh, flags & PROT_WRITE) : -1;
0 0 int fd = SvOK (fh) ? s_fileno_croak (fh, flags & PROT_WRITE) : -1;
2395 0 0 if (addr == (void *)-1)
2400 0 0 if (!(prot & PROT_WRITE))
2418 0 0 if (!mg || SvPVX (scalar) != mg->mg_ptr)
0 0 if (!mg || SvPVX (scalar) != mg->mg_ptr)
2425 0 0 if (new != (void *)-1)
2429 0 0 : &PL_sv_yes;
2448 0 0 void *addr = SvPVbyte (scalar, svlen);
2449 0 0 STRLEN len = SvUV (length);
2451 0 0 if (offset < 0)
2454 0 0 if (offset < 0 || offset > svlen)
0 0 if (offset < 0 || offset > svlen)
2457 0 0 if (!SvOK (length) || len + offset > svlen)
0 0 if (!SvOK (length) || len + offset > svlen)
0 0 if (!SvOK (length) || len + offset > svlen)
0 0 if (!SvOK (length) || len + offset > svlen)
2477 0 0 void *addr = SvPVbyte (scalar, svlen);
2478 0 0 size_t len = SvUV (length);
2480 0 0 if (offset < 0)
2483 0 0 if (offset < 0 || offset > svlen)
0 0 if (offset < 0 || offset > svlen)
2486 0 0 if (!SvOK (length) || len + offset > svlen)
0 0 if (!SvOK (length) || len + offset > svlen)
0 0 if (!SvOK (length) || len + offset > svlen)
0 0 if (!SvOK (length) || len + offset > svlen)
2670 0 0 socklen_t salen_ = salen ? salen + 1 : 0;
2672 0 0 if (salen)
2678 0 0 int res = accept4 (rfh, salen ? (struct sockaddr *)SvPVX (sockaddr) : 0, salen ? &salen_ : 0, flags);
0 0 int res = accept4 (rfh, salen ? (struct sockaddr *)SvPVX (sockaddr) : 0, salen ? &salen_ : 0, flags);
2682 0 0 if (res >= 0 && salen > 0)
0 0 if (res >= 0 && salen > 0)
2684 0 0 if (salen_ > salen + 1)
2694 0 0 XPUSHs (retval);
2703 0 0 RETVAL = splice (
0 0 RETVAL = splice (
2704 0 0 rfh, SvOK (off_in ) ? (off_in_ = SvVAL64 (off_in )), &off_in_ : 0,
0 0 rfh, SvOK (off_in ) ? (off_in_ = SvVAL64 (off_in )), &off_in_ : 0,
0 0 rfh, SvOK (off_in ) ? (off_in_ = SvVAL64 (off_in )), &off_in_ : 0,
2705 0 0 wfh, SvOK (off_out) ? (off_out_ = SvVAL64 (off_out)), &off_out_ : 0,
0 0 wfh, SvOK (off_out) ? (off_out_ = SvVAL64 (off_out)), &off_out_ : 0,
0 0 wfh, SvOK (off_out) ? (off_out_ = SvVAL64 (off_out)), &off_out_ : 0,
2731 0 0 if (new_size >= 0)
2750 0 0 if (flags)
2759 0 0 if (!res)
2761 0 0 EXTEND (SP, 2);
2773 0 0 XPUSHs (newmortalFH (fd, O_RDWR));
2784 0 0 if (SvOK (siginfo))
0 0 if (SvOK (siginfo))
0 0 if (SvOK (siginfo))
2789 0 0 if (!SvROK (siginfo) || SvTYPE (SvRV (siginfo)) != SVt_PVHV)
0 0 if (!SvROK (siginfo) || SvTYPE (SvRV (siginfo)) != SVt_PVHV)
2794 0 0 if ((svp = hv_fetchs (hv, "code" , 0))) si.si_code = SvIV (*svp);
0 0 if ((svp = hv_fetchs (hv, "code" , 0))) si.si_code = SvIV (*svp);
2795 0 0 if ((svp = hv_fetchs (hv, "pid" , 0))) si.si_pid = SvIV (*svp);
0 0 if ((svp = hv_fetchs (hv, "pid" , 0))) si.si_pid = SvIV (*svp);
2796 0 0 if ((svp = hv_fetchs (hv, "uid" , 0))) si.si_uid = SvIV (*svp);
0 0 if ((svp = hv_fetchs (hv, "uid" , 0))) si.si_uid = SvIV (*svp);
2797 0 0 if ((svp = hv_fetchs (hv, "value_int", 0))) si.si_value.sival_int = SvIV (*svp);
0 0 if ((svp = hv_fetchs (hv, "value_int", 0))) si.si_value.sival_int = SvIV (*svp);
2798 0 0 if ((svp = hv_fetchs (hv, "value_ptr", 0))) si.si_value.sival_ptr = (void *)SvIV (*svp);
0 0 if ((svp = hv_fetchs (hv, "value_ptr", 0))) si.si_value.sival_ptr = (void *)SvIV (*svp);
2802 0 0 res = syscall (SYS_pidfd_send_signal, s_fileno_croak (pidfh, 0), sig, SvOK (siginfo) ? &si : 0, flags);
0 0 res = syscall (SYS_pidfd_send_signal, s_fileno_croak (pidfh, 0), sig, SvOK (siginfo) ? &si : 0, flags);
0 0 res = syscall (SYS_pidfd_send_signal, s_fileno_croak (pidfh, 0), sig, SvOK (siginfo) ? &si : 0, flags);
2807 0 0 XPUSHs (sv_2mortal (newSViv (res)));
2816 0 0 XPUSHs (newmortalFH (fd, O_RDWR));
2830 0 0 XPUSHs (newmortalFH (fd, O_RDWR));
2844 0 0 XPUSHs (newmortalFH (fd, O_RDWR));
2860 0 0 if (!res)
2862 0 0 EXTEND (SP, 2);
2881 0 0 if (!res)
2883 0 0 EXTEND (SP, 2);
2903 0 0 XPUSHs (newmortalFH (fd, O_RDWR));
2913 0 0 if (!SvOK (envs))
0 0 if (!SvOK (envs))
0 0 if (!SvOK (envs))
2941 0 0 if (flags)
2960 0 0 if (0 == getrlimit (RLIMIT_NOFILE, &rl))
2976 0 0 if (0 != getrlimit (RLIMIT_NOFILE, &rl))
2979 0 0 if (rl.rlim_cur == RLIM_INFINITY)
2984 0 0 if (rl.rlim_cur < limit)
2988 0 0 if (rl.rlim_max < rl.rlim_cur && rl.rlim_max != RLIM_INFINITY)
0 0 if (rl.rlim_max < rl.rlim_cur && rl.rlim_max != RLIM_INFINITY)
2992 0 0 if (0 == setrlimit (RLIMIT_NOFILE, &rl))
2995 0 0 if (errno == EPERM)
3001 0 0 for (bit = 0x40000000U; bit; bit >>= 1)
3007 0 0 if (rl.rlim_max < orig_rlim_max)
3010 0 0 if (0 != setrlimit (RLIMIT_NOFILE, &rl))
3015 0 0 if (0 == getrlimit (RLIMIT_NOFILE, &rl))
3018 0 0 if (0 == setrlimit (RLIMIT_NOFILE, &rl))
3030 0 0 on_next_submit = SvOK (cb) ? newSVsv (cb) : 0;
0 0 on_next_submit = SvOK (cb) ? newSVsv (cb) : 0;
0 0 on_next_submit = SvOK (cb) ? newSVsv (cb) : 0;
3055 19 0 REQ_SEND;
0 19 REQ_SEND;
0 0 REQ_SEND;
3073 0 10 if (GIMME_V != G_VOID)
0 10 if (GIMME_V != G_VOID)
3074 0 0 XPUSHs (req->callback ? sv_2mortal (newRV_inc (req->callback)) : &PL_sv_undef);
0 0 XPUSHs (req->callback ? sv_2mortal (newRV_inc (req->callback)) : &PL_sv_undef);
3076 10 0 if (items > 1)
3093 0 31 if (grp->int1 == 2)
3096 32 31 for (i = 1; i < items; ++i )
3100 15 17 if (GIMME_V != G_VOID)
13 19 if (GIMME_V != G_VOID)
3101 0 13 XPUSHs (sv_2mortal (newSVsv (ST (i))));
3105 32 0 if (req)
3127 8 4 for (i = 1; i < items; ++i )
3152 0 3 if (grp->int2 <= 0)