diff --git a/src/KOKKOS/npair_skip_kokkos.cpp b/src/KOKKOS/npair_skip_kokkos.cpp
index db330f23e6c5a92e0b4da3d4fcd40d207e54b18c..c537afaa6b8344d110e9f6d6f52430f92ba47e91 100644
--- a/src/KOKKOS/npair_skip_kokkos.cpp
+++ b/src/KOKKOS/npair_skip_kokkos.cpp
@@ -109,32 +109,37 @@ void NPairSkipKokkos<DeviceType>::operator()(TagNPairSkipCompute, const int &ii,
 
   const int i = d_ilist_skip(ii);
   const int itype = type(i);
-  if (d_iskip(itype)) return;
 
-  if (final) {
+  if (!d_iskip(itype)) {
+
+    if (final) {
 
-    int n = 0;
+      int n = 0;
 
-    // loop over parent non-skip list
+      // loop over parent non-skip list
 
-    const int jnum = d_numneigh_skip(i);
-    const AtomNeighbors neighbors_i = AtomNeighbors(&d_neighbors(i,0),d_numneigh(i),
+      const int jnum = d_numneigh_skip(i);
+      const AtomNeighbors neighbors_i = AtomNeighbors(&d_neighbors(i,0),d_numneigh(i),
                                                     &d_neighbors(i,1)-&d_neighbors(i,0));
 
-    for (int jj = 0; jj < jnum; jj++) {
-      const int joriginal = d_neighbors_skip(i,jj);
-      int j = joriginal & NEIGHMASK;
-      if (d_ijskip(itype,type(j))) continue;
-      neighbors_i(n++) = joriginal;
+      for (int jj = 0; jj < jnum; jj++) {
+        const int joriginal = d_neighbors_skip(i,jj);
+        int j = joriginal & NEIGHMASK;
+        if (d_ijskip(itype,type(j))) continue;
+        neighbors_i(n++) = joriginal;
+      }
+
+      d_numneigh(i) = n;
+      d_ilist(inum) = i;
     }
 
-    d_numneigh(i) = n;
-    d_ilist(inum) = i;
-    if (ii == num_skip-1)
-      d_inum() = inum+1;
+    inum++;
   }
 
-  inum++;
+  if (final) {
+    if (ii == num_skip-1)
+      d_inum() = inum;
+  }
 }
 
 template<class DeviceType>
diff --git a/src/KOKKOS/pair_table_kokkos.cpp b/src/KOKKOS/pair_table_kokkos.cpp
index b3e80d1f664e012555a826834df2d6b78ec7bba4..957214915bf403ac790b032d9179bc55e10161c3 100644
--- a/src/KOKKOS/pair_table_kokkos.cpp
+++ b/src/KOKKOS/pair_table_kokkos.cpp
@@ -141,8 +141,8 @@ void PairTableKokkos<DeviceType>::compute_style(int eflag_in, int vflag_in)
     } else if (neighflag == N2) {
       PairComputeFunctor<PairTableKokkos<DeviceType>,N2,false,S_TableCompute<DeviceType,TABSTYLE> >
         f(this,(NeighListKokkos<DeviceType>*) list);
-      if (eflag || vflag) Kokkos::parallel_reduce(nlocal,f,ev);
-      else Kokkos::parallel_for(nlocal,f);
+      if (eflag || vflag) Kokkos::parallel_reduce(list->inum,f,ev);
+      else Kokkos::parallel_for(list->inum,f);
     }
   } else {
     if (neighflag == FULL) {
@@ -163,8 +163,8 @@ void PairTableKokkos<DeviceType>::compute_style(int eflag_in, int vflag_in)
     } else if (neighflag == N2) {
       PairComputeFunctor<PairTableKokkos<DeviceType>,N2,true,S_TableCompute<DeviceType,TABSTYLE> >
         f(this,(NeighListKokkos<DeviceType>*) list);
-      if (eflag || vflag) Kokkos::parallel_reduce(nlocal,f,ev);
-      else Kokkos::parallel_for(nlocal,f);
+      if (eflag || vflag) Kokkos::parallel_reduce(list->inum,f,ev);
+      else Kokkos::parallel_for(list->inum,f);
     }
   }