Hey,

> -----Original Message-----
> From: Gary E. Miller [mailto:g...@rellim.com]
> Sent: Monday, February 23, 2015 6:49 PM
> To: Keller, Jacob E
> Cc: linuxptp-devel@lists.sourceforge.net
> Subject: Re: [Linuxptp-devel] ntp SHMs
> 
> Yo Jacob!
> 
> Just to summarize what I just tried, that failed.  I repeated several times,
> similar results, it just took varying times before going crazy, usually
> 10 to 90 seconds.
> 
> Here is my hardware:
> 
>     kong ~ # ethtool -T eth0
>     Time stamping parameters for eth0:
>     Capabilities:
>           hardware-transmit     (SOF_TIMESTAMPING_TX_HARDWARE)
>           software-transmit     (SOF_TIMESTAMPING_TX_SOFTWARE)
>           hardware-receive      (SOF_TIMESTAMPING_RX_HARDWARE)
>           software-receive      (SOF_TIMESTAMPING_RX_SOFTWARE)
>           software-system-clock (SOF_TIMESTAMPING_SOFTWARE)
>           hardware-raw-clock    (SOF_TIMESTAMPING_RAW_HARDWARE)
>     PTP Hardware Clock: 0
>     Hardware Transmit Timestamp Modes:
>           off                   (HWTSTAMP_TX_OFF)
>           on                    (HWTSTAMP_TX_ON)
>     Hardware Receive Filter Modes:
>           none                  (HWTSTAMP_FILTER_NONE)
>           all                   (HWTSTAMP_FILTER_ALL)
>           ptpv1-l4-sync         (HWTSTAMP_FILTER_PTP_V1_L4_SYNC)
>           ptpv1-l4-delay-req
> (HWTSTAMP_FILTER_PTP_V1_L4_DELAY_REQ)
>           ptpv2-l4-sync         (HWTSTAMP_FILTER_PTP_V2_L4_SYNC)
>           ptpv2-l4-delay-req
> (HWTSTAMP_FILTER_PTP_V2_L4_DELAY_REQ)
>           ptpv2-l2-sync         (HWTSTAMP_FILTER_PTP_V2_L2_SYNC)
>           ptpv2-l2-delay-req
> (HWTSTAMP_FILTER_PTP_V2_L2_DELAY_REQ)
>           ptpv2-event           (HWTSTAMP_FILTER_PTP_V2_EVENT)
>           ptpv2-sync            (HWTSTAMP_FILTER_PTP_V2_SYNC)
>           ptpv2-delay-req       (HWTSTAMP_FILTER_PTP_V2_DELAY_REQ)
> 
> Here I make sure no conflicting daemons:
> 
>     kong ~ # killall ptp4l phc2sys
>     ptp4l: no process found
>     phc2sys: no process found
>     kong ~ # killall ptp4l phc2sys
>     ptp4l: no process found
>     phc2sys: no process found
> 
> Here is my config:
> 
>     kong ~ # cat ptp.conf
>     [global]
>     clock_servo       linreg
> 
> Start ptp4l:
> 
>     kong ~ # ptp4l -i eth0 -l 7 -m -f ptp.conf &
> 
> And drop the bomb:
> 
>     kong ~ # phc2sys -a -r -E ntpshm -m -M 2
>     phc2sys[354.145]: uds: sendto failed: No such file or directory
> 

Apparently it recovers, because you seem to have it working. The default should 
be fine. I am going to assume this is a transient problem due to timing between 
when you start ptp4l and phc2sys, where the us address isn't up yet.

> This one is odd, is uds_address not defaulted as documented?
> 
> Sadly, add uds_address        /var/run/ptp4l  to my ptp.conf does not change
> anything.
> 
>     ptp4l[354.146]: selected /dev/ptp0 as PTP clock
>     ptp4l[354.183]: port 1: INITIALIZING to LISTENING on INITIALIZE
>     ptp4l[354.183]: port 0: INITIALIZING to LISTENING on INITIALIZE
>     ptp4l[354.570]: port 1: setting asCapable
>     phc2sys[355.146]: Waiting for ptp4l...
>     ptp4l[355.197]: port 0: setting asCapable
>     ptp4l[355.674]: port 1: new foreign master 003048.fffe.345fe2-1
>     phc2sys[356.198]: reconfiguring after port state change
>     phc2sys[356.198]: selecting eth0 for synchronization
>     phc2sys[356.198]: nothing to synchronize
>     ptp4l[359.341]: selected best master clock 003048.fffe.345fe2
>     ptp4l[359.341]: foreign master not using PTP timescale
>     ptp4l[359.341]: port 1: LISTENING to UNCALIBRATED on RS_SLAVE
>     ptp4l[359.361]: port 1: delay timeout
>     ptp4l[359.526]: port 1: delay timeout
>     phc2sys[360.198]: port 002590.fffe.f355da-1 changed state
>     phc2sys[360.198]: reconfiguring after port state change
>     phc2sys[360.198]: master clock not ready, waiting...
>     ptp4l[360.352]: port 1: delay timeout
>     ptp4l[360.353]: path delay         58263      58263
>     ptp4l[360.987]: master offset 16506354212 s0 freq      -0 path delay
> 58263
>     ptp4l[361.746]: port 1: delay timeout
>     ptp4l[361.746]: path delay         59135      60008
>     ptp4l[361.904]: master offset 16506344102 s0 freq      -0 path delay
> 59135
>     ptp4l[362.820]: master offset 16506334623 s0 freq      -0 path delay
> 59135
>     ptp4l[363.681]: port 1: delay timeout
>     ptp4l[363.681]: path delay         58263      47033
>     ptp4l[363.737]: linreg: points 4 slope 1.000008825 intercept -
> 16506326986 err 0
>     ptp4l[363.737]: master offset 16506327955 s1 freq   -9794 path delay
> 58263
>     ptp4l[364.654]: linreg: points 4 slope 1.000008873 intercept 613 err 1412
>     ptp4l[364.654]: master offset      -1412 s2 freq   -9485 path delay     
> 58263
>     ptp4l[364.654]: port 1: UNCALIBRATED to SLAVE on
> MASTER_CLOCK_SELECTED
>     phc2sys[365.199]: port 002590.fffe.f355da-1 changed state
>     phc2sys[365.199]: reconfiguring after port state change
>     phc2sys[365.199]: selecting CLOCK_REALTIME for synchronization
>     phc2sys[365.199]: selecting eth0 as the master clock
>     phc2sys[365.199]: phc offset -70353239245525 s0 freq      +0 delay   1348
> 
> WTF was that???

This is telling you that your clock time (CLOCK_REALTIME) is off by 70,000 
seconds. That's not happy.

> 
>     ptp4l[365.571]: clockcheck: clock jumped forward or running faster than
> expected!
>     ptp4l[365.571]: master offset 70368744176888 s0 freq   -9485 path delay
> 58263
>     ptp4l[365.571]: port 1: SLAVE to UNCALIBRATED on
> SYNCHRONIZATION_FAULT
>     ptp4l[366.164]: port 1: delay timeout
>     ptp4l[366.164]: path delay         58096      57929
>     phc2sys[366.199]: port 002590.fffe.f355da-1 changed state
>     phc2sys[366.199]: reconfiguring after port state change
>     phc2sys[366.199]: master clock not ready, waiting...
>     ptp4l[366.487]: master offset 70368744178475 s0 freq   -9485 path delay
> 58096
>     ptp4l[367.404]: master offset 70368744179257 s0 freq   -9485 path delay
> 58096
>     ptp4l[367.495]: port 1: delay timeout
>     ptp4l[367.495]: path delay         58263      61062
>     ptp4l[368.321]: linreg: points 4 slope 1.000008584 intercept -
> 70368744179915 err 1412
>     ptp4l[368.321]: master offset 70368744179632 s2 freq +599999999 path
> delay     58263
>     ptp4l[368.321]: port 1: UNCALIBRATED to SLAVE on
> MASTER_CLOCK_SELECTED
>     ptp4l[368.810]: port 1: delay timeout
>     ptp4l[368.810]: negative path delay     -69667
>     ptp4l[368.810]: path_delay = (t2 - t3) * rr + (t4 - t1) - (c1 + c2 + c3)
>     ptp4l[368.810]: t2 - t3 = -213724133
>     ptp4l[368.810]: t4 - t1 = +534175583
>     ptp4l[368.810]: rr = 2.500021454
>     ptp4l[368.810]: c1          0
>     ptp4l[368.810]: c2          0
>     ptp4l[368.810]: c3          0
>     ptp4l[368.810]: path delay         58096     -69667
>     ptp4l[369.140]: port 1: delay timeout
>     ptp4l[369.140]: negative path delay     -60229
>     ptp4l[369.140]: path_delay = (t2 - t3) * rr + (t4 - t1) - (c1 + c2 + c3)
>     ptp4l[369.140]: t2 - t3 = -357590119
>     ptp4l[369.140]: t4 - t1 = +893862511
>     ptp4l[369.140]: rr = 2.500021454
>     ptp4l[369.140]: c1          0
>     ptp4l[369.140]: c2          0
>     ptp4l[369.140]: c3          0
>     ptp4l[369.140]: path delay         57929     -60229
>     phc2sys[369.199]: port 002590.fffe.f355da-1 changed state
>     phc2sys[369.199]: reconfiguring after port state change
>     phc2sys[369.199]: selecting CLOCK_REALTIME for synchronization
>     phc2sys[369.199]: selecting eth0 as the master clock
>     phc2sys[369.199]: phc offset -70353027879345 s0 freq      +0 delay   1391
>     ptp4l[369.237]: linreg: points 4 slope 0.999941194 intercept -
> 70368144182166 err 225182
>     ptp4l[369.237]: master offset 70368144249873 s2 freq +599999999 path
> delay     57929
>     ptp4l[370.073]: port 1: delay timeout
>     ptp4l[370.073]: path delay         58096      71844
>     ptp4l[370.154]: linreg: points 4 slope 0.999918331 intercept -
> 70367544242678 err 113137
>     ptp4l[370.154]: master offset 70367544220469 s2 freq +599999999 path
> delay     58096
>     phc2sys[370.199]: phc offset -70352464198801 s0 freq      +0 delay   1345
>     ptp4l[371.071]: linreg: points 4 slope 0.999940831 intercept -
> 70366944235752 err 113128
>     ptp4l[371.071]: master offset 70366944190386 s2 freq +599999999 path
> delay     58096
>     phc2sys[371.199]: phc offset -70351900518690 s0 freq      +0 delay   1379
>     ptp4l[371.706]: port 1: delay timeout
>     ptp4l[371.706]: path delay         58263      80317
>     ptp4l[371.987]: linreg: points 4 slope 1.000008261 intercept -
> 70366344169510 err 112836
>     ptp4l[371.987]: master offset 70366344169768 s2 freq +599999999 path
> delay     58263
>     phc2sys[372.200]: phc offset -70351336831824 s0 freq      +0 delay   1347
>     ptp4l[372.904]: linreg: points 4 slope 1.000008717 intercept -
> 70365744150943 err 90551
>     ptp4l[372.904]: master offset 70365744150552 s2 freq +599999999 path
> delay     58263
>     phc2sys[373.200]: phc offset -70350773141966 s0 freq      +0 delay   1388
>     ptp4l[373.617]: port 1: delay timeout
>     ptp4l[373.617]: path delay         58103      57944
>     ptp4l[373.821]: linreg: points 4 slope 1.000008674 intercept -
> 70365144126319 err 75472
>     ptp4l[373.821]: master offset 70365144126321 s2 freq +599999999 path
> delay     58103
>     phc2sys[374.200]: phc offset -70350209474225 s0 freq      +0 delay   1348
>     ptp4l[374.738]: linreg: points 4 slope 1.000008812 intercept -
> 70364544099292 err 64723
>     ptp4l[374.738]: master offset 70364544099571 s2 freq +599999999 path
> delay     58103
>     ptp4l[374.831]: port 1: delay timeout
>     ptp4l[374.831]: path delay         58976      62467
>     phc2sys[375.200]: phc offset -70349645810969 s0 freq      +0 delay   1347
>     ptp4l[375.654]: linreg: points 4 slope 1.000008650 intercept -
> 70363944062902 err 56663
>     ptp4l[375.654]: master offset 70363944062598 s2 freq +599999999 path
> delay     58976
>     ptp4l[375.923]: port 1: delay timeout
>     ptp4l[375.923]: path delay         57936      53829
>     phc2sys[376.200]: phc offset -70349082116188 s0 freq      +0 delay   1460
>     ptp4l[376.571]: linreg: points 4 slope 1.000008152 intercept -
> 70363344039615 err 50595
>     ptp4l[376.571]: master offset 70363344040348 s2 freq +599999999 path
> delay     57936
>     phc2sys[377.200]: phc offset -70348518427659 s0 freq      +0 delay   1343
>     ptp4l[377.488]: linreg: points 4 slope 1.000007828 intercept -
> 70362744024915 err 45586
>     ptp4l[377.488]: master offset 70362744024897 s2 freq +599999999 path
> delay     57936
>     ptp4l[377.807]: port 1: delay timeout
>     ptp4l[377.807]: path delay         59445      60946
>     phc2sys[378.200]: phc offset -70347954751340 s0 freq      +0 delay   1353
>     ptp4l[378.404]: linreg: points 4 slope 1.000008160 intercept -
> 70362143984809 err 44713
>     ptp4l[378.404]: master offset 70362143983983 s2 freq +599999999 path
> delay     59445
>     phc2sys[379.200]: phc offset -70347391089799 s0 freq      +0 delay   1388
>     ptp4l[379.321]: linreg: points 4 slope 1.000009185 intercept -
> 70361543971115 err 43857
>     ptp4l[379.321]: master offset 70361543970987 s2 freq +599999999 path
> delay     59445
>     ptp4l[379.707]: port 1: delay timeout
>     ptp4l[379.707]: path delay         59445      42090
>     phc2sys[380.200]: phc offset -70346827428315 s0 freq      +0 delay   1462
>     ptp4l[380.238]: linreg: points 4 slope 1.000009091 intercept -
> 70360943944337 err 42997
>     ptp4l[380.238]: master offset 70360943944743 s2 freq +599999999 path
> delay     59445
>     ptp4l[380.465]: port 1: delay timeout
>     ptp4l[380.465]: path delay         55886      46490
>     ptp4l[381.155]: linreg: points 8 slope 1.000008246 intercept -
> 70360343906082 err 33333
>     ptp4l[381.155]: master offset 70360343908136 s2 freq +599999999 path
> delay     55886
>     phc2sys[381.200]: phc offset -70346263731002 s0 freq      +0 delay   1463
>     ptp4l[381.758]: port 1: delay timeout
>     ptp4l[381.759]: path delay         55886      45742
>     ptp4l[382.071]: linreg: points 8 slope 1.000008035 intercept -
> 70359743870239 err 32710
>     ptp4l[382.071]: master offset 70359743871471 s2 freq +599999999 path
> delay     55886
>     phc2sys[382.200]: phc offset -70345700043849 s0 freq      +0 delay   1464
>     ptp4l[382.451]: port 1: delay timeout
>     ptp4l[382.452]: path delay         56747      55551
>     ptp4l[382.988]: linreg: points 8 slope 1.000008136 intercept -
> 70359143861734 err 32071
>     ptp4l[382.988]: master offset 70359143861383 s2 freq +599999999 path
> delay     56747
>     phc2sys[383.200]: phc offset -70345136355504 s0 freq      +0 delay   1461
>     ptp4l[383.905]: linreg: points 8 slope 1.000008152 intercept -
> 70358543843295 err 31462
>     ptp4l[383.905]: master offset 70358543842094 s2 freq +599999999 path
> delay     56747
>     ptp4l[384.188]: port 1: delay timeout
>     ptp4l[384.188]: path delay         54690      39523
>     phc2sys[384.200]: phc offset -70344572667058 s0 freq      +0 delay   1350
>     ptp4l[384.313]: port 1: delay timeout
>     ptp4l[384.314]: path delay         53598      53368
>     ptp4l[384.821]: linreg: points 8 slope 1.000007880 intercept -
> 70357943816603 err 30869
>     ptp4l[384.821]: master offset 70357943817385 s2 freq +599999999 path
> delay     53598
>     ptp4l[385.156]: port 1: delay timeout
>     ptp4l[385.156]: path delay         53598      57616
>     phc2sys[385.200]: phc offset -70344008980381 s0 freq      +0 delay   1464
>     ptp4l[385.738]: linreg: points 8 slope 1.000007783 intercept -
> 70357343791409 err 30264
>     ptp4l[385.738]: master offset 70357343791685 s2 freq +599999999 path
> delay     53598
>     phc2sys[386.201]: phc offset -70343445298408 s0 freq      +0 delay   1466
>     ptp4l[386.655]: linreg: points 8 slope 1.000007932 intercept -
> 70356743766393 err 29678
>     ptp4l[386.655]: master offset 70356743766013 s2 freq +599999999 path
> delay     53598
>     ptp4l[386.967]: port 1: delay timeout
>     ptp4l[386.968]: path delay         51744      50120
>     phc2sys[387.201]: phc offset -70342881625905 s0 freq      +0 delay   1352
>     ptp4l[387.571]: linreg: points 8 slope 1.000007910 intercept -
> 70356143740286 err 29130
>     ptp4l[387.571]: master offset 70356143742033 s2 freq +599999999 path
> delay     51744
> 
> I stopped it here as it tried to step my good clock by -70356s.
> 

So this looks quit suspicious as a driver bug. Especially as it appears to be 
toggling between a large positive and negative value I am recalling something 
similar.

What happens if you just run ptp4l without running phc2sys and without running 
chronyd etc? I want to see ptp4l running stable with hardware timestamping 
before adding extra messages. Also what is your dmesg output here, so that we 
can see if there is any kernel message related to this.

Regards,
Jake

> RGDS
> GARY
> ---------------------------------------------------------------------------
> Gary E. Miller Rellim 109 NW Wilmington Ave., Suite E, Bend, OR 97701
>       g...@rellim.com  Tel:+1(541)382-8588

------------------------------------------------------------------------------
Dive into the World of Parallel Programming The Go Parallel Website, sponsored
by Intel and developed in partnership with Slashdot Media, is your hub for all
things parallel software development, from weekly thought leadership blogs to
news, videos, case studies, tutorials and more. Take a look and join the 
conversation now. http://goparallel.sourceforge.net/
_______________________________________________
Linuxptp-devel mailing list
Linuxptp-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/linuxptp-devel

Reply via email to