[Bug 206658] Bus error for pfctl -sa on rpi2 r294499 snap

peter garshtja peter.garshtja at ambient-md.com
Fri Jan 29 05:12:01 UTC 2016


Much appreciated for your effort.

I have been waiting for this fix over 3months.

Regards

On Thursday, January 28, 2016, Jov <amutu at amutu.com> wrote:

> This patch works,thanks very much !
>
> will these patches to be commited to the offical svn? I add freebsd-pf ML.
>
>
> Jov
> blog: http:amutu.com/blog <http://amutu.com/blog>
>
> 2016-01-29 5:26 GMT+08:00 Guy Yur <guyyur at gmail.com <javascript:;>>:
>
> > Hi,
> >
> > On Thu, Jan 28, 2016 at 2:06 PM, Jov <amutu at amutu.com <javascript:;>>
> wrote:
> > > bus error at the similar position:
> > >
> > > Program received signal SIGBUS, Bus error.
> > > 0x00021614 in print_host (addr=0x2065111a, port=15268, af=2 '\002',
> > > opts=1024) at /usr/src/sbin/pfctl/pf_print_state.c:178
> > > warning: Source file is more recent than executable.
> > >
> > > 178 memcpy(&aw.v.a.addr, addr, sizeof(aw.v.a.addr));
> > > Current language:  auto; currently minimal
> > > (gdb) p addr
> > > $1 = (struct pf_addr *) 0x2065111a
> > > ...
> > >
> > > Jov
> >
> > The compiler optimizes the memcpy to a series of ldr and str
> > instructions and since addr is unaligned you still get SIGBUS.
> >
> > I encountered the same problem on a BeagleBone Black.
> > https://lists.freebsd.org/pipermail/freebsd-arm/2014-January/007237.html
> >
> > non-intrustive patch with changes only in print_state()
> > pfsync_state is __packed so the keys can be copied safely to
> > stack variables which will be aligned (and addr inside it).
> >
> >
> https://github.com/guyyur/freebsd-src_patches/blob/master/pfctl_arm_segbus__ver1_part1.patch
> >
> > Bug report with patch to separate pfsync and pfioc state
> > structures but breaks backward compatibility:
> > https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=185617
> >
> > -- Guy
> >
> _______________________________________________
> freebsd-arm at freebsd.org <javascript:;> mailing list
> https://lists.freebsd.org/mailman/listinfo/freebsd-arm
> To unsubscribe, send any mail to "freebsd-arm-unsubscribe at freebsd.org
> <javascript:;>"


More information about the freebsd-arm mailing list