aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/vcl/ldp.c1
-rw-r--r--src/vcl/vppcom.c16
2 files changed, 9 insertions, 8 deletions
diff --git a/src/vcl/ldp.c b/src/vcl/ldp.c
index 8bb512a5082..15f5b0753b8 100644
--- a/src/vcl/ldp.c
+++ b/src/vcl/ldp.c
@@ -775,6 +775,7 @@ ldp_pselect (int nfds, fd_set * __restrict readfds,
{
errno = -rv;
rv = -1;
+ goto done;
}
else if (rv > 0)
{
diff --git a/src/vcl/vppcom.c b/src/vcl/vppcom.c
index 9bf009d7bfa..befaf155692 100644
--- a/src/vcl/vppcom.c
+++ b/src/vcl/vppcom.c
@@ -2252,12 +2252,12 @@ vppcom_select (int n_bits, vcl_si_set * read_map, vcl_si_set * write_map,
clib_bitmap_foreach (sid, wrk->wr_bitmap, ({
if (!(session = vcl_session_get (wrk, sid)))
{
- if (except_map && sid < minbits)
- clib_bitmap_set_no_check (except_map, sid, 1);
- continue;
+ clib_bitmap_set_no_check ((uword*)write_map, sid, 1);
+ bits_set++;
+ continue;
}
- if (vcl_session_write_ready (session) > 0)
+ if (vcl_session_write_ready (session))
{
clib_bitmap_set_no_check ((uword*)write_map, sid, 1);
bits_set++;
@@ -2273,12 +2273,12 @@ check_rd:
clib_bitmap_foreach (sid, wrk->rd_bitmap, ({
if (!(session = vcl_session_get (wrk, sid)))
{
- if (except_map && sid < minbits)
- clib_bitmap_set_no_check (except_map, sid, 1);
- continue;
+ clib_bitmap_set_no_check ((uword*)read_map, sid, 1);
+ bits_set++;
+ continue;
}
- if (vcl_session_read_ready (session) > 0)
+ if (vcl_session_read_ready (session))
{
clib_bitmap_set_no_check ((uword*)read_map, sid, 1);
bits_set++;