Thanks very much.
I also want to know how can I subscribe to receive PORT_DATA_SET and 
TIME_STATUS_NP via the push method? 
Could you help me some example and guidance? Thanks a lot.


"slave_event_monitor" must used with "delay_mechanism-E2E"? or both "E2E 
delay_mechanism" and "P2P delay_mechanism"  can use 
slave_event_monitor. 
As I see monitor_delay() is only called in  process_delay_resp() which is 
only called in case: DELAY_RESP, not in case: PDELAY_RESP.






------------------ Original ------------------
From: &nbsp;"Richard Cochran";<richardcoch...@gmail.com&gt;;
Send time:&nbsp;Monday, Jun 20, 2022 9:54 PM
To:&nbsp;"?????9?2 ??????"<957993...@qq.com&gt;; 
Cc:&nbsp;"linuxptp-users"<linuxptp-users@lists.sourceforge.net&gt;; 
Subject: &nbsp;Re: [Linuxptp-users] How do I use "slave_event_monitor" to get 
the management info(such as offset, delay, master time) which should from PMC.



On Mon, Jun 20, 2022 at 11:59:02AM +0800, ?????9?2 ?????? wrote:
&gt; Thanks for your quick reply.
&gt; Q1.I have known the monitor socket should be created by the mointor, like 
PMC.
&gt; 
&gt; 
&gt; &amp;nbsp; &amp;nbsp; ptp4l --slave_event_monitor=/tmp/foo
&gt; &amp;nbsp; &amp;nbsp; pmc -u -i /tmp/foo

When I run those ^^^ commands, I see:

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 0019b8.fffe.09896d-0 seq 129 
SIGNALING SLAVE_RX_SYNC_TIMING_DATA N 1 
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
 sourcePortIdentity&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
a0369f.fffe.10cfaf-1
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
 
sequenceId&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
 44565
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
 syncOriginTimestamp&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
1655732998.612437157
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
 totalCorrectionField&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 0
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
 scaledCumulativeRateOffset 0
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
 syncEventIngressTimestamp&nbsp; 1655732998.612437752
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 0019b8.fffe.09896d-0 seq 138 
SIGNALING SLAVE_DELAY_TIMING_DATA_NP N 1 
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
 sourcePortIdentity&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
a0369f.fffe.10cfaf-1
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
 
sequenceId&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
 138
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
 delayOriginTimestamp&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 1655732998.628124923
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
 totalCorrectionField&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 0
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
 delayResponseTimestamp&nbsp;&nbsp;&nbsp;&nbsp; 1655732998.628125507
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 0019b8.fffe.09896d-0 seq 130 
SIGNALING SLAVE_RX_SYNC_TIMING_DATA N 1 
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
 sourcePortIdentity&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
a0369f.fffe.10cfaf-1
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
 
sequenceId&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
 44566
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
 syncOriginTimestamp&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
1655732999.612473029
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
 totalCorrectionField&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 0
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
 scaledCumulativeRateOffset 0
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
 syncEventIngressTimestamp&nbsp; 1655732999.612473630

So it works!
Don't you see it working?

&gt; The ptp4l don't need to create a socket fd bind the
&gt; slave_event_monitor address, so how it send message to the local
&gt; address? It use the API raw_send() to achieve send the message to
&gt; the fd to PMC client? Socket&amp;nbsp; created only in&amp;nbsp; PMC, is 
it?

Read the code to find out how it works.

&gt; I'm now using v3.1, port.c line 1298 is not the implementation
&gt; code. Which version should I see.

Version v3.1
~~~~~~~~~~~~

&nbsp;&nbsp; 1176&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; switch 
(p-&gt;state) {
&nbsp;&nbsp; 1177&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; case 
PS_UNCALIBRATED:
&nbsp;&nbsp; 1178&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; case PS_SLAVE:
&nbsp;&nbsp; 
1179&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
 monitor_sync(p-&gt;slave_event_monitor,
&nbsp;&nbsp; 
1180&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
 clock_parent_identity(p-&gt;clock), seqid,
&nbsp;&nbsp; 
1181&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
 t1, tmv_add(c1, c2), t2);
&nbsp;&nbsp; 
1182&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
 break;
&nbsp;&nbsp; 1183&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; default:
&nbsp;&nbsp; 
1184&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
 break;
&nbsp;&nbsp; 1185&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }

HTH,
Richard
_______________________________________________
Linuxptp-users mailing list
Linuxptp-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/linuxptp-users

Reply via email to