gpsd-dev
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: b32ff1a86 Breaks OSX and FreeBSD


From: Hal Murray
Subject: Re: b32ff1a86 Breaks OSX and FreeBSD
Date: Sat, 21 Dec 2019 21:56:59 -0800

address@hidden said:
> I've tried several variants of 0 <= WRITE_PAD <= 1 on FreeBSD, none with a
> reproducible result. Also I completely fail to understand why this is needed
> at all, it must be a workaround for some bug, where ever that is. 

I agree that it is a workaround.  I helped Eric come up with 0.004 for NetBSD 
and 0.010 for FreeBSD.  It was a tradeoff between too many errors and taking 
too long.  There is nothing magic about those numbers.  They just seemed like 
a reasonable choice at the time.  (Maybe Eric is reading and remembers 
something.)

--------

My repeatable test case was feeding a list of log files to ./regress-driver 
without using scons or providing any parameters other than the list of log 
files to be tested.  That's leftover from chasing quirks a few years ago.  (I 
didn't even know that regress-driver has options.)

>From a script:

TESTS=""
TESTS+=" test/daemon/superstar2.log test/daemon/tcp-test.log"
TESTS+=" test/daemon/tcp-torture.log test/daemon/udp-test.log"
TESTS+=" $TESTS $TESTS $TESTS $TESTS"
TESTS+=" $TESTS $TESTS $TESTS $TESTS"

./regress-driver $TESTS

Let me know if I should try options.

----------------

>From git pull an hour or two ago.

Looks the same.  Works with WRITE_PAD=0.004, fails with 0.

sys netbsd8 platform NetBSD-8.1-amd64-x86_64-64bit-ELF: WRITE_PAD = 0.00000
model name      : Intel(R) Atom(TM) CPU D2500   @ 1.86GHz

Testing the daemon...
Processing test/daemon/superstar2.log
Test timed out: maybe increase WRITE_PAD (= 0)
--- test/daemon/superstar2.log.chk      2019-12-16 18:45:34.681890580 -0800
+++ /tmp/gpsd-test-XXXXXXXXXXXXXX.fBGNcixQ/test-25291.chk       2019-12-21 
20:59:19.035908361 -0800
@@ -5,7 +5,7 @@
 $GPZDA,055055.00,04,07,2009,00,00*6E
 $GPGGA,055055.00,5333.7867,N,11326.3743,W,1,05,3.10,650.76,M,-18.954,M,,*5B
 $GPRMC,055055.00,A,5333.7867,N,11326.3743,W,0.0000,0.000,040709,13.9,E*47
-$GPGSA,A,3,29,11,1,3,28,,,,,,,,5.2,3.1,3.3*34
+$GPGSA,A,3,1,11,29,3,28,,,,,,,,5.2,3.1,3.3*34
 $GPGBS,055055.00,31.470,35.543,75.900,,,,*7F
 {"class":"TPV","mode":3,"time":"2009-07-04T05:50:55.000Z","ept":0.005,"lat":53
.563112132,"lon":-113.439571599,"altHAE":631.801,"altMSL":650.755,"alt":650.755
,"epx":31.470,"epy":35.543,"epv":75.900,"track":0.0000,"magtrack":13.9113,"magv
ar":13.9,"speed":0.000,"climb":0.000,"geoidSep":-18.954,"eph":58.900,"sep":98.7
87}

Same on a Raspberry Pi 2B.

---------

FreeBSD:

sys freebsd12 platform FreeBSD-12.1-RELEASE-p1-amd64-64bit-ELF: WRITE_PAD = 
0.00
000

Hung here, keeping a CPU busy:
/home/murray/gpsd/raw/regress-driver -q -o -t test/daemon/ublox-zed-f9p-nmea.lo
g
Processing test/daemon/ublox-zed-f9p-nmea.log
Seems reproducable, both on Intel Atom and Pi 2B.

Regression test test/daemon/ublox-zed-f9p-hp.log successful
/home/murray/gpsd/raw/regress-driver -q -o -t test/daemon/ublox-zed-f9p-nmea.lo
g
sed: stdout: No space left on device
Processing test/daemon/ublox-zed-f9p-nmea.log
gpsfake: socket error [Errno 32] Broken pipe.
Exception ignored in: <_io.TextIOWrapper name='<stdout>' mode='w' 
encoding='US-ASCII'>
BrokenPipeError: [Errno 32] Broken pipe
/home/murray/gpsd/raw/regress-driver: cannot create 
/tmp/gpsd-test-XXXXXXXXXXXXXX.H9WzTmKW/diff-75866: No space left on device
Regression test test/daemon/ublox-zed-f9p-nmea.log successful
(I think it was writing to /tmp/)


That's from scons check.

It works when run as:
./regress-driver test/daemon/ublox-zed-f9p-nmea.log


Same old errors when I run with WRITE_PAD=0 ./regress-driver <log files here> 
...

WRITE_PAD=0 
Processing test/daemon/superstar2.log
-$GPGSA,A,3,29,11,1,3,28,,,,,,,,5.2,3.1,3.3*34
+$GPGSA,A,3,1,11,29,3,28,,,,,,,,5.2,3.1,3.3*34



-- 
These are my opinions.  I hate spam.






reply via email to

[Prev in Thread] Current Thread [Next in Thread]