On Mon, Feb 06, 2017 at 01:35:24PM +0100, Martin Pieuchot wrote:
> On 01/02/17(Wed) 17:39, Walter Alejandro Iglesias wrote:
> > On Wed, Feb 01, 2017 at 11:22:45AM +0100, Martin Pieuchot wrote:
> > > On 31/01/17(Tue) 20:10, Walter Alejandro Iglesias wrote:
> > > > Don't know if related.  After upgrading to 30 Jan snapshot (amd64)
> > > > my console shows lots of:
> > > > 
> > > >    splassert: yield: want 0 have 1
> > > 
> > > Could you update to the lastest snapshot and if you still see these
> > > messages, please set kern.splassert=2 and report the traces.
> > 
> > I found the traces you mentioned. :-)
> 
> Thanks, could you tell me if the diff below helps?

It worked.

I downloaded the sources, built and installed the kernel, rebooted.
The splassert messages are gone. :-)



> 
> Index: net/pf_table.c
> ===================================================================
> RCS file: /cvs/src/sys/net/pf_table.c,v
> retrieving revision 1.123
> diff -u -p -r1.123 pf_table.c
> --- net/pf_table.c    24 Jan 2017 10:08:30 -0000      1.123
> +++ net/pf_table.c    6 Feb 2017 12:33:28 -0000
> @@ -36,6 +36,7 @@
>  #include <sys/mbuf.h>
>  #include <sys/pool.h>
>  #include <sys/syslog.h>
> +#include <sys/proc.h>
>  
>  #include <net/if.h>
>  
> @@ -72,11 +73,8 @@
>       (bcopy((from), (to), (size)), 0))
>  
>  #define YIELD(cnt, ok)                               \
> -     do {                                    \
> -             if ((cnt % 1024 == 1023) &&     \
> -                 (ok))                       \
> -                     yield();                \
> -     } while (0)
> +     if (curcpu()->ci_schedstate.spc_schedflags & SPCF_SHOULDYIELD) \
> +             preempt(NULL)                   \
>  
>  #define      FILLIN_SIN(sin, addr)                   \
>       do {                                    \

Reply via email to