git: 40c7ff83e74e - vendor/wpa - wpa: Import wpa_supplicant/hostapd commit e8662e9d4

Emmanuel Vadot manu at bidouilliste.com
Wed Jun 9 13:45:40 UTC 2021


On Wed, 09 Jun 2021 06:17:09 -0700
Cy Schubert <Cy.Schubert at cschubert.com> wrote:

> In message <20210609090415.507c477968bce2efce9e9ff8 at bidouilliste.com>, 
> Emmanuel
>  Vadot writes:
> > On Thu, 3 Jun 2021 16:38:16 GMT
> > Cy Schubert <cy at FreeBSD.org> wrote:
> >
> > > The branch vendor/wpa has been updated by cy:
> > > 
> > > URL: https://cgit.FreeBSD.org/src/commit/?id=40c7ff83e74eabba5a7e2caefeea12
> > 372b2d3f9a
> > > 
> > > commit 40c7ff83e74eabba5a7e2caefeea12372b2d3f9a
> > > Author:     Cy Schubert <cy at FreeBSD.org>
> > > AuthorDate: 2021-06-03 16:15:01 +0000
> > > Commit:     Cy Schubert <cy at FreeBSD.org>
> > > CommitDate: 2021-06-03 16:15:01 +0000
> > > 
> > >     wpa: Import wpa_supplicant/hostapd commit e8662e9d4
> > >     
> > >     This is the June update to vendor/wpa committed upstream 2021/06/03.
> >
> >  Hi cy@
> >
> >  Don't know if it is this commit or something else yet but I'm seeing
> > weird behavior from a recent head.
> >  wpa_supplicant abort with SIGBUS just after connecting to my wireless
> > network. I'm still connected but this stopped working after a while (I
> > guess when the supplicant would need to do some stuff with the AP or
> > something).
> >  From dmesg just after running service netif restart:
> > lo0: link state changed to DOWN
> > wlan0: link state changed to DOWN
> > wlan0: Ethernet address: bc:54:2f:4b:d1:dd
> > lo0: link state changed to UP
> > wlan0: link state changed to UP
> > pid 69593 (wpa_supplicant), jid 0, uid 0: exited on signal 10 (core
> > dumped)
> >
> > Reading symbols from /usr/sbin/wpa_supplicant...
> > Reading symbols from /usr/lib/debug//usr/sbin/wpa_supplicant.debug...
> > [New LWP 112604]
> > Core was generated by `/usr/sbin/wpa_supplicant -s -B -i wlan0 -c /etc/wpa_su
> > pplicant.conf -D bsd -P /v'.
> > Program terminated with signal SIGBUS, Bus error.
> > #0  0x00000000010eaf7f in wpa_sm_set_rekey_offload (sm=0x801e12700) at /usr/l
> > ocal/poudriere/jails/wipbsd/usr/src/contrib/wpa/src/rsn_supp/wpa_i.h:304
> > 304     /usr/local/poudriere/jails/wipbsd/usr/src/contrib/wpa/src/rsn_supp/wp
> > a_i.h: No such file or directory.
> > (gdb) bt
> > #0  0x00000000010eaf7f in wpa_sm_set_rekey_offload (sm=0x801e12700) at /usr/l
> > ocal/poudriere/jails/wipbsd/usr/src/contrib/wpa/src/rsn_supp/wpa_i.h:304
> > #1  wpa_supplicant_process_3_of_4 (sm=0x801e12700, key=<optimized out>, ver=<
> > optimized out>, key_data=<optimized out>, key_data_len=<optimized out>)
> >     at /usr/local/poudriere/jails/wipbsd/usr/src/contrib/wpa/src/rsn_supp/wpa
> > .c:1572
> > #2  wpa_sm_rx_eapol (sm=<optimized out>, src_addr=<optimized out>, buf=<optim
> > ized out>, len=<optimized out>)
> >     at /usr/local/poudriere/jails/wipbsd/usr/src/contrib/wpa/src/rsn_supp/wpa
> > .c:2434
> > #3  0x00000000010e372e in l2_packet_receive (sock=<optimized out>, eloop_ctx=
> > 0x801e286e0, sock_ctx=<optimized out>)
> >     at /usr/local/poudriere/jails/wipbsd/usr/src/contrib/wpa/src/l2_packet/l2
> > _packet_freebsd.c:98
> > #4  0x0000000001112b23 in eloop_sock_table_dispatch (table=<optimized out>, f
> > ds=0x801e44080) at /usr/local/poudriere/jails/wipbsd/usr/src/contrib/wpa/src/
> > utils/eloop.c:600
> > #5  eloop_run () at /usr/local/poudriere/jails/wipbsd/usr/src/contrib/wpa/src
> > /utils/eloop.c:1223
> > #6  0x00000000010af228 in wpa_supplicant_run (global=<optimized out>, global@
> > entry=0x801e2d000)
> >     at /usr/local/poudriere/jails/wipbsd/usr/src/contrib/wpa/wpa_supplicant/w
> > pa_supplicant.c:6526
> > #7  0x000000000109ab6c in main (argc=<optimized out>, argv=<optimized out>) a
> > t /usr/local/poudriere/jails/wipbsd/usr/src/contrib/wpa/wpa_supplicant/main.c
> > :397
> >
> >  I'll try to revert the update later this week but if you have any idea in th
> > e mean time.
> 
> Hi Emmanuel,
> 
> The commit you quote was only to the vendor branch which has not landed in 
> main yet. However the SIGBUS you have been experiencing, a SIBGUS at line 
> 304 of wpa_i.h, caused by 25ecdc7d52770caf1c9b44b5ec11f468f6b636f3 and 
> fixed by the following commit:
> 
> commit 9a0f82285322a338548d13fcda07e1d574301190
> Author: Cy Schubert <cy at FreeBSD.org>
> Date:   Wed Jun 2 12:46:02 2021 -0700
> 
>     wpa: Fix a SIGBUS error in wpa_sm_set_rekey_offload
>     
>     Incorrectly linked built-in wpa functions resulted in overwriting
>     sm->ctx->set_rekey_offload with garbage. It was initialized correctly
>     however it changed after wpa_supplicant became a daemon.
>     
>     No SIGBUS violations reported by dhw@ were experienced during testing
>     of the original commit by msyelf or philip at .
>     
>     Reported by:    dhw
>     Tested by:      dhw
>     MFC after:      2 months
>     X-MFC with:     25ecdc7d52770caf1c9b44b5ec11f468f6b636f3
> 
> If you already have 9a0f82285322a338548d13fcda07e1d574301190 applied and do 
> -DWITHOUT_CLEAN builds and still have the SIGBUS, rm -r 
> /usr/obj/${ARCH}/usr.sbin/wpa will remove incorrectly built .a files and 
> rebuild. They will rebuild correctly and the SIBGUS will resolve.
> 
> 
> -- 
> Cheers,
> Cy Schubert <Cy.Schubert at cschubert.com>
> FreeBSD UNIX:  <cy at FreeBSD.org>   Web:  https://FreeBSD.org
> NTP:           <cy at nwtime.org>    Web:  https://nwtime.org
> 
> 	The need of the many outweighs the greed of the few.
> 
> 

 Ok, will try a build without WITHOUT_CLEAN=y and let you know if I
still have problems after.

 Thanks,

-- 
Emmanuel Vadot <manu at bidouilliste.com> <manu at freebsd.org>


More information about the dev-commits-src-all mailing list