Hello,

I don't know what to think of it. It does not make much sense
to me at the moment. If I'm not mistaken kernel crashes
here at line 156:

    119 chacha20poly1305_encrypt(
    120     uint8_t *dst,
    121     const uint8_t *src,
    122     const size_t src_len,
    123     const uint8_t *ad,
    124     const size_t ad_len,
    125     const uint64_t nonce,
    126     const uint8_t key[CHACHA20POLY1305_KEY_SIZE]
    127 ) {                                                                     
                                                                                
                                                                                
                                                                                
128         poly1305_state poly1305_ctx;                                        
                                                                                
                                                                                
                                                                            129 
        chacha_ctx chacha_ctx;
    130         union {
    131                 uint8_t b0[CHACHA20POLY1305_KEY_SIZE];
    132                 uint64_t lens[2];
    133         } b = { { 0 } };
    ...
    152
    153         poly1305_finish(&poly1305_ctx, dst + src_len);
    154
    155         explicit_bzero(&chacha_ctx, sizeof(chacha_ctx));
    156         explicit_bzero(&b, sizeof(b));
    157 }

explicit_bzero() as a kind of memset() alias. would you be able to
grab the same information plus output of 'show registers' command
in ddb? next time when APU box will crash.

I wonder what makes those two boxes so special that wg makes them
to crash. Can you think of something? this might help every
detail counts.

thanks and
regards
sashan


On Sat, Mar 02, 2024 at 06:26:09PM +0000, Nemanja Domazetovi? wrote:
> HI all
>
> This is first time I'm reporting a problem.
>
> We have over 15 spokes (PCEngine APU4) on OpenBSD 7.4 (syspatched up to
> 013_unbound) running wireguard to our central location (also OpenBSD 7.4
> syspatched to 011_ssh). On 2 of those spokes OBSD is crashing once per day.
> Others are still working fine. Downbelow is the error I receive, and I also
> added otput of commands (show uvm, show bcstats, show panic). Before we
> siwtched to wireguard, they had IPsec and we didn't have those problems.
>
>
>
> e This is what I got from serial console once I got problem reported from 
> users:
>
>
>
> uvm_fault(0xfffff825891a0, 0x8, 0, 2) -> e
>
> kernel: page fault trap, code=2
>
> Stopped at      memset+0x52:    repe stosq      %es:(%rdi)
>
>
>
>     TID    PID    UID     PRFLAGS     PFLAGS  CPU  COMMAND
>
>
>
>  364339  89739      0    0x100032          0    0  login_passwd
>
>
>
>  226712  33190      0     0x14000      0x200    2  wg_crypt
>
>
>
> *225815  71495      0     0x14000      0x200    1  wg_crypt
>
>
>
>  282190  76283      0     0x14000      0x200    3  softnet3
>
>
>
> memset() at memset+0x52
>
> chacha20poly1305_encrypt(fffffd80bcb20010,fffffd80bcb20010,200,0,0,11a73,df3c64
>
> 05eb66b84a) at chacha20poly1305_encrypt+0x162
>
> noise_remote_encrypt(ffff80000801c740,fffffd80bcb20004,ffff80002279f4f0,fffffd8
>
> 0bcb20010,200) at noise_remote_encrypt+0x113
>
> wg_encap(ffff800000791000,fffffd80bcb1ad00) at wg_encap+0x176
>
> wg_encap_worker(ffff800000791000) at wg_encap_worker+0x7a
>
> taskq_thread(ffff800000766a00) at taskq_thread+0x100
>
> end trace frame: 0x0, count: 9
>
>
>   *   show uvm
> Current UVM status:
>   pagesize=4096 (0x1000), pagemask=0xfff, pageshift=12
>   1005750 VM pages: 22187 active, 154041 inactive, 1 wired, 648481 free 
> (81919 zero)
>   min  10% (25) anon, 10% (25) vnode, 5% (12) vtext
>   freemin=33525, free-target=44700, inactive-target=0, wired-max=335250
>   faults=5744799, traps=5747928, intrs=64193578, ctxswitch=186137457 
> fpuswitch=0
>   softint=3299560, syscalls=6630594, kmapent=13
>   fault counts:
>     noram=0, noanon=0, noamap=0, pgwait=0, pgrele=0
>     ok relocks(total)=207395(210035), anget(retries)=2231572(0), 
> amapcopy=2237418
>     neighbor anon/obj pg=461876/3422212, gets(lock/unlock)=1305770/210057
>     cases: anon=1858336, anoncow=373236, obj=1098448, prcopy=204660, 
> przero=2210104
>   daemon and swap counts:
>     woke=0, revs=0, scans=0, obscans=0, anscans=0
>     busy=0, freed=0, reactivate=0, deactivate=0
>     pageouts=0, pending=0, nswget=0
>     nswapdev=1
>     swpages=263063, swpginuse=0, swpgonly=0 paging=0
> --db_ kernel pointers:
>     objs(kern)=0xffffffff8252e560
>
>
>   *   show bcstats
> Current BufferCache status:
> numbufs 41004 busymapped 0, delwri 5
> kvaslots 6553 avail kva slots 6553
> bufpages 162582, dmapages 162582, dirtypages 10
> pendingreads 0, pendingwrites 0
> highflips 0, highflops 0, dmaflips 0
>
>
>   *   show panic
> *cpu1: uvm_fault(0xffffffff825891a0, 0x8, 0, 2) -> e
>
> Srda?an pozdrav / Best regards
> --
> Nemanja Domazetovi?
> Senior IT Network in?enjer
> Kappa Star Group,
> Bulevar kneza Aleksandra Kara?or?evi?a 36,
> 11000 Beograd,
> Srbija
> e-mail: [email protected]
> web: https://www.kappastar.com
> P ?uvajte drve?e. Nemojte ?tampati ovu poruku ako to nije neophodno. / Please 
> consider the environment before printing this email.
>

Reply via email to