gpsd-dev
[Top][All Lists]
Advanced

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

[gpsd-dev] Port problems in certain gpsd drivers


From: Eric S. Raymond
Subject: [gpsd-dev] Port problems in certain gpsd drivers
Date: Tue, 17 Apr 2012 02:31:51 -0400 (EDT)

This mail is directed to GPSD driver maintainers.  Some of our
binary-GPS driver have port problems on certain architectures. 
I want to get this fixed for 3.6.

The drivers in question are: italk, ntrip, tsip, ublox, and rtcm2.
The architectures on which we have detected port problems are armel,
armhf, mips, powerpc, ppc64, s390, s390x, and sparc.

This is the (slightly filtered) output of a script that runs the GPSD
regression tests on all architectures.  Some duplicative portions have
been removed for clarity.

armel.log:    italk-binary.log.chk              2012-03-05 00:12:52
armel.log:    trimble-lassen_iq-3dfix.log.chk   2012-03-05 00:13:35
armel.log:    trimble-lassen_iq.log.chk         2012-03-05 00:13:38
armel.log:    uBlox-aek-4t.log.chk              2012-03-05 00:13:40
armel.log:    uBlox-lea-4t.log.chk              2012-03-05 00:13:45
armhf.log:    italk-binary.log.chk              2012-03-05 00:12:52
armhf.log:    trimble-lassen_iq-3dfix.log.chk   2012-03-05 00:13:35
armhf.log:    trimble-lassen_iq.log.chk         2012-03-05 00:13:38
armhf.log:    uBlox-aek-4t.log.chk              2012-03-05 00:13:40
armhf.log:    uBlox-lea-4t.log.chk              2012-03-05 00:13:45
mips.log:     naujoks-ntrip.log.chk             2012-03-05 00:13:03
mips.log:     naujoks-rtcm2.log.chk             2012-03-05 00:13:04
mips.log:     rtcm2.log.chk                     2012-03-05 00:13:17
powerpc.log:  italk-binary.log.chk              2012-03-05 00:12:52
powerpc.log:  trimble-lassen_iq-3dfix.log.chk   2012-03-05 00:13:35
powerpc.log:  trimble-lassen_iq.log.chk         2012-03-05 00:13:38
powerpc.log:  uBlox-aek-4t.log.chk              2012-03-05 00:13:40
powerpc.log:  uBlox-lea-4t.log.chk              2012-03-05 00:13:45
ppc64.log:    italk-binary.log.chk              2012-03-05 00:12:52
ppc64.log:    trimble-lassen_iq-3dfix.log.chk   2012-03-05 00:13:35
ppc64.log:    trimble-lassen_iq.log.chk         2012-03-05 00:13:38
ppc64.log:    uBlox-aek-4t.log.chk              2012-03-05 00:13:40
ppc64.log:    uBlox-lea-4t.log.chk              2012-03-05 00:13:45
s390.log:     italk-binary.log.chk              2012-03-05 00:12:52
s390.log:     naujoks-ntrip.log.chk             2012-03-05 00:13:03
s390.log:     naujoks-rtcm2.log.chk             2012-03-05 00:13:04
s390.log:     rtcm2.log.chk                     2012-03-05 00:13:17
s390.log:     trimble-lassen_iq-3dfix.log.chk   2012-03-05 00:13:35
s390.log:     trimble-lassen_iq.log.chk         2012-03-05 00:13:38
s390.log:     uBlox-aek-4t.log.chk              2012-03-05 00:13:40
s390.log:     uBlox-lea-4t.log.chk              2012-03-05 00:13:45
s390x.log:    italk-binary.log.chk              2012-03-05 00:12:52
s390x.log:    naujoks-ntrip.log.chk             2012-03-05 00:13:03
s390x.log:    naujoks-rtcm2.log.chk             2012-03-05 00:13:04
s390x.log:    rtcm2.log.chk                     2012-03-05 00:13:17
s390x.log:    trimble-lassen_iq-3dfix.log.chk   2012-03-05 00:13:35
s390x.log:    trimble-lassen_iq.log.chk         2012-03-05 00:13:38
s390x.log:    uBlox-aek-4t.log.chk              2012-03-05 00:13:40
s390x.log:    uBlox-lea-4t.log.chk              2012-03-05 00:13:45
sparc.log:    naujoks-ntrip.log.chk             2012-03-05 00:13:03
sparc.log:    naujoks-rtcm2.log.chk             2012-03-05 00:13:04
sparc.log:    rtcm2.log.chk                     2012-03-05 00:13:17 

This table has interesting regularities.

Note, first, the absence of any regression failures for the following
drivers: aivdm, evermore, garmin, garmin_txt, geostar, navcom,
nmea183, oncore, rtcm3, sirf, superstar2, and zodiac.  I believe this
tells us that the bits.h macros are sound and our general approach to
driver portability is successful.

Also note that there's a set of 4 test files that cause regression
failures for every architecture in the problem set.

I think what we're seeing here is the result of a small number of
point bugs in the driver coding (for italk, ntrip, tsip, ublox, and
rtcm2) that are triggered by changes in endianness or word length.

If you are responsible for one of these drivers, please audit for
unclean code.  Please communicate with Bernd Zeimetz about how to test
your changes on the Debian porterboxes.  
-- 
                <a href="http://www.catb.org/~esr/";>Eric S. Raymond</a>

The right of self-defense is the first law of nature: in most
governments it has been the study of rulers to confine this right
within the narrowest limits possible.  Wherever standing armies
are kept up, and when the right of the people to keep and bear
arms is, under any color or pretext whatsoever, prohibited,
liberty, if not already annihilated, is on the brink of
destruction." 
        -- Henry St. George Tucker (in Blackstone's Commentaries)



reply via email to

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