Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package clknetsim for openSUSE:Factory 
checked in at 2024-12-10 23:49:37
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/clknetsim (Old)
 and      /work/SRC/openSUSE:Factory/.clknetsim.new.29675 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "clknetsim"

Tue Dec 10 23:49:37 2024 rev:6 rq:1229838 version:0+git.20241128

Changes:
--------
--- /work/SRC/openSUSE:Factory/clknetsim/clknetsim.changes      2024-08-28 
21:32:12.852567903 +0200
+++ /work/SRC/openSUSE:Factory/.clknetsim.new.29675/clknetsim.changes   
2024-12-10 23:49:51.788378252 +0100
@@ -1,0 +2,11 @@
+Tue Dec 10 14:33:42 UTC 2024 - Martin Pluskal <mplus...@suse.com>
+
+- Update to version 0+git.20241128:
+  * bash: wait for client processes to exit
+  * close client socket on exit
+  * round nanoseconds in PTP_SYS_OFFSET* delay adjustments
+  * avoid timestamps from future in PTP_SYS_OFFSET_EXTENDED
+  * add options to cycle PHC jitter
+  * init symbols in fdopen()
+
+-------------------------------------------------------------------

Old:
----
  clknetsim-0+git.20240610.obscpio

New:
----
  clknetsim-0+git.20241128.obscpio

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ clknetsim.spec ++++++
--- /var/tmp/diff_new_pack.lPv5pb/_old  2024-12-10 23:49:52.660414603 +0100
+++ /var/tmp/diff_new_pack.lPv5pb/_new  2024-12-10 23:49:52.664414769 +0100
@@ -17,7 +17,7 @@
 
 
 Name:           clknetsim
-Version:        0+git.20240610
+Version:        0+git.20241128
 Release:        0
 Summary:        Clock and Network Simulator
 License:        GPL-2.0-only

++++++ _servicedata ++++++
--- /var/tmp/diff_new_pack.lPv5pb/_old  2024-12-10 23:49:52.696416104 +0100
+++ /var/tmp/diff_new_pack.lPv5pb/_new  2024-12-10 23:49:52.700416271 +0100
@@ -1,6 +1,6 @@
 <servicedata>
 <service name="tar_scm">
             <param name="url">https://github.com/mlichvar/clknetsim.git</param>
-          <param 
name="changesrevision">633a0be069bac00e5aa562c0e5e15a3bf30b6af2</param></service></servicedata>
+          <param 
name="changesrevision">64acc4fd0ee92c2bafd9d1cf8097eb3632da685b</param></service></servicedata>
 (No newline at EOF)
 

++++++ clknetsim-0+git.20240610.obscpio -> clknetsim-0+git.20241128.obscpio 
++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/clknetsim-0+git.20240610/client.c 
new/clknetsim-0+git.20241128/client.c
--- old/clknetsim-0+git.20240610/client.c       2024-06-10 14:23:41.000000000 
+0200
+++ new/clknetsim-0+git.20241128/client.c       2024-11-28 11:04:51.000000000 
+0100
@@ -134,7 +134,7 @@
 static int initializing = 0;
 static int initialized_symbols = 0;
 static int initialized = 0;
-static int clknetsim_fd;
+static int clknetsim_fd = -1;
 static int precision_hack = 1;
 static unsigned int random_seed = 0;
 static int recv_multiply = 1;
@@ -143,6 +143,8 @@
 static double phc_delay = 0.0;
 static double phc_jitter = 0.0;
 static double phc_jitter_asym = 0.0;
+static int phc_jitter_off = 0;
+static int phc_jitter_on = 1;
 static int phc_swap = 0;
 
 /* Ethernet speed in Mb/s */
@@ -331,6 +333,14 @@
        if (env)
                phc_jitter_asym = atof(env);
 
+       env = getenv("CLKNETSIM_PHC_JITTER_OFF");
+       if (env)
+               phc_jitter_off = atoi(env);
+
+       env = getenv("CLKNETSIM_PHC_JITTER_ON");
+       if (env)
+               phc_jitter_on = atoi(env);
+
        env = getenv("CLKNETSIM_PHC_SWAP");
        if (env)
                phc_swap = atoi(env);
@@ -418,6 +428,9 @@
 
        if (pcap)
                fclose(pcap);
+
+       if (clknetsim_fd >= 0)
+               close(clknetsim_fd);
 }
 
 static void make_request(int request_id, const void *request_data, int reqlen, 
void *reply, int replylen) {
@@ -784,7 +797,7 @@
 
 static void add_to_timespec(struct timespec *tp, double offset) {
        tp->tv_sec += floor(offset);
-       tp->tv_nsec += (offset - floor(offset)) * 1e9;
+       tp->tv_nsec += round((offset - floor(offset)) * 1e9);
        normalize_timespec(tp);
 }
 
@@ -793,17 +806,22 @@
 }
 
 static double get_phc_delay(int dir) {
+       static unsigned int count = 0;
        double L, p, delay = 0.0;
        int k, lambda = 5;
 
        /* Poisson with uniform steps */
-       if (phc_jitter > 0.0) {
+       if (phc_jitter > 0.0 && count >= phc_jitter_off) {
                for (L = exp(-lambda), p = 1.0, k = 0; k < 100 && p > L; k++)
                        p *= get_random_double();
                delay += (k + get_random_double()) / (lambda + 0.5) *
                        phc_jitter * (0.5 + dir * phc_jitter_asym);
        }
 
+       count++;
+       if (count >= phc_jitter_on + phc_jitter_off)
+               count = 0;
+
        return (delay + phc_delay / 2.0) * (freq_error + 1.0);
 }
 
@@ -1412,6 +1430,8 @@
        if (fd == URANDOM_FD)
                return URANDOM_FILE;
 
+       init_symbols();
+
        return _fdopen(fd, mode);
 }
 
@@ -2048,24 +2068,24 @@
        } else if (request == PTP_SYS_OFFSET_EXTENDED && fd == REFCLK_FD) {
                struct ptp_sys_offset_extended *sys_off = va_arg(ap, struct 
ptp_sys_offset_extended *);
                struct timespec ts, ts1, ts2;
+               double delay;
                int i;
 
                if (sys_off->n_samples > PTP_MAX_SAMPLES)
                        sys_off->n_samples = PTP_MAX_SAMPLES;
 
                for (i = 0; i < sys_off->n_samples; i++) {
+                       clock_gettime(CLOCK_REALTIME, &ts2);
                        clock_gettime(REFCLK_ID, &ts);
-                       sys_off->ts[i][1].sec = ts.tv_sec;
-                       sys_off->ts[i][1].nsec = ts.tv_nsec;
-               }
-
-               clock_gettime(CLOCK_REALTIME, &ts);
-               for (i = 0; i < sys_off->n_samples; i++) {
-                       ts1 = ts, ts2 = ts;
-                       add_to_timespec(&ts1, -get_phc_delay(-1));
-                       add_to_timespec(&ts2, get_phc_delay(1));
+                       delay = get_phc_delay(1);
+                       add_to_timespec(&ts, -delay);
+                       delay += get_phc_delay(-1);
+                       ts1 = ts2;
+                       add_to_timespec(&ts1, -delay);
                        sys_off->ts[i][0].sec = ts1.tv_sec;
                        sys_off->ts[i][0].nsec = ts1.tv_nsec;
+                       sys_off->ts[i][1].sec = ts.tv_sec;
+                       sys_off->ts[i][1].nsec = ts.tv_nsec;
                        sys_off->ts[i][2].sec = ts2.tv_sec;
                        sys_off->ts[i][2].nsec = ts2.tv_nsec;
                }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/clknetsim-0+git.20240610/clknetsim.bash 
new/clknetsim-0+git.20241128/clknetsim.bash
--- old/clknetsim-0+git.20240610/clknetsim.bash 2024-06-10 14:23:41.000000000 
+0200
+++ new/clknetsim-0+git.20241128/clknetsim.bash 2024-11-28 11:04:51.000000000 
+0100
@@ -111,7 +111,7 @@
 }
 
 start_server() {
-    local nodes=$1 ret=0 wrapper_options=""
+    local nodes=$1 ret=0 wrapper_options="" i j
     shift
 
     if [[ $CLKNETSIM_SERVER_WRAPPER == *valgrind* ]]; then
@@ -128,6 +128,22 @@
     fi
 
     kill $client_pids &> /dev/null
+
+    i=0
+    for pid in $client_pids; do
+       i=$[i + 1]
+       j=0
+       while kill -0 $pid &> /dev/null; do
+           j=$[j + 1]
+           if [ $j -gt 30 ]; then
+               echo " node $i did not terminate" 1>&2
+               ret=1
+               break
+           fi
+           sleep 0.1
+       done
+    done
+
     client_pids=" "
 
     if ls tmp/valgrind.* &> /dev/null; then

++++++ clknetsim.obsinfo ++++++
--- /var/tmp/diff_new_pack.lPv5pb/_old  2024-12-10 23:49:52.788419939 +0100
+++ /var/tmp/diff_new_pack.lPv5pb/_new  2024-12-10 23:49:52.792420106 +0100
@@ -1,5 +1,5 @@
 name: clknetsim
-version: 0+git.20240610
-mtime: 1718022221
-commit: 633a0be069bac00e5aa562c0e5e15a3bf30b6af2
+version: 0+git.20241128
+mtime: 1732788291
+commit: 64acc4fd0ee92c2bafd9d1cf8097eb3632da685b
 

Reply via email to