Uploaded image for project: 'OpenShift Bugs'
  1. OpenShift Bugs
  2. OCPBUGS-77375

GM configuration for multiple WPC no connections are made after SMA pins to SDP change

    • Icon: Bug Bug
    • Resolution: Unresolved
    • Icon: Undefined Undefined
    • None
    • 4.22
    • Networking / ptp
    • None
    • None
    • False
    • Hide

      None

      Show
      None
    • None
    • Critical
    • None
    • x86_64
    • QA
    • None
    • None
    • None
    • None
    • None
    • None
    • None
    • None
    • None
    • None
    • None

      Description of problem:

      Due to SMA pins to SDP change GM configuration for multiple WPC no connections are made.
      
      # HELP openshift_ptp_clock_state 0 = FREERUN, 1 = LOCKED, 2 = HOLDOVER
      # TYPE openshift_ptp_clock_state gauge
      openshift_ptp_clock_state{iface="CLOCK_REALTIME",node="helix48.telcoqe.eng.rdu2.dc.redhat.com",process="phc2sys"} 1
      openshift_ptp_clock_state{iface="enp179s0fx",node="helix48.telcoqe.eng.rdu2.dc.redhat.com",process="dpll"} 0
      openshift_ptp_clock_state{iface="enp202s0fx",node="helix48.telcoqe.eng.rdu2.dc.redhat.com",process="GM"} 0
      openshift_ptp_clock_state{iface="enp202s0fx",node="helix48.telcoqe.eng.rdu2.dc.redhat.com",process="dpll"} 1
      openshift_ptp_clock_state{iface="enp202s0fx",node="helix48.telcoqe.eng.rdu2.dc.redhat.com",process="gnss"} 1
      openshift_ptp_clock_state{iface="enp23s0fx",node="helix48.telcoqe.eng.rdu2.dc.redhat.com",process="dpll"} 0
      
      # HELP openshift_ptp_offset_ns 
      # TYPE openshift_ptp_offset_ns gauge
      openshift_ptp_offset_ns{from="GM",iface="enp202s0fx",node="helix48.telcoqe.eng.rdu2.dc.redhat.com",process="GM"} 9.9999999999e+10
      openshift_ptp_offset_ns{from="dpll",iface="enp179s0fx",node="helix48.telcoqe.eng.rdu2.dc.redhat.com",process="dpll"} 9.9999999999e+10
      openshift_ptp_offset_ns{from="dpll",iface="enp202s0fx",node="helix48.telcoqe.eng.rdu2.dc.redhat.com",process="dpll"} 3
      openshift_ptp_offset_ns{from="dpll",iface="enp23s0fx",node="helix48.telcoqe.eng.rdu2.dc.redhat.com",process="dpll"} 9.9999999999e+10
      openshift_ptp_offset_ns{from="gnss",iface="enp202s0fx",node="helix48.telcoqe.eng.rdu2.dc.redhat.com",process="gnss"} 5
      openshift_ptp_offset_ns{from="phc",iface="CLOCK_REALTIME",node="helix48.telcoqe.eng.rdu2.dc.redhat.com",process="phc2sys"} -15
      
      
      I0225 09:35:55.392179 841826 e810.go:112] echo 1 1 > /sys/class/net/enp179s0f0/device/ptp/ptp6/pins/SMA1
      E0225 09:35:55.392272 841826 e810.go:115] e810 failed to write 1 1 to /sys/class/net/enp179s0f0/device/ptp/ptp6/pins/SMA1: open /sys/class/net/enp179s0f0/device/ptp/ptp6/pins/SMA1: permission denied
      I0225 09:35:55.392336 841826 e810.go:112] echo 0 2 > /sys/class/net/enp179s0f0/device/ptp/ptp6/pins/SMA2
      E0225 09:35:55.392367 841826 e810.go:115] e810 failed to write 0 2 to /sys/class/net/enp179s0f0/device/ptp/ptp6/pins/SMA2: open /sys/class/net/enp179s0f0/device/ptp/ptp6/pins/SMA2: permission denied
      I0225 09:35:55.392419 841826 e810.go:112] echo 0 1 > /sys/class/net/enp179s0f0/device/ptp/ptp6/pins/U.FL1
      E0225 09:35:55.392444 841826 e810.go:115] e810 failed to write 0 1 to /sys/class/net/enp179s0f0/device/ptp/ptp6/pins/U.FL1: open /sys/class/net/enp179s0f0/device/ptp/ptp6/pins/U.FL1: permission denied
      I0225 09:35:55.392498 841826 e810.go:112] echo 0 2 > /sys/class/net/enp179s0f0/device/ptp/ptp6/pins/U.FL2
      E0225 09:35:55.392521 841826 e810.go:115] e810 failed to write 0 2 to /sys/class/net/enp179s0f0/device/ptp/ptp6/pins/U.FL2: open /sys/class/net/enp179s0f0/device/ptp/ptp6/pins/U.FL2: permission denied
      
      
      After update to the new SDP pins in ptpconfig:
      SDP20: 1 1
      SDP21: 0 2
      SDP22: 0 1
      SDP23: 0 2
      
      for the RX cards:
      [kni@registry ~]$ oc logs ds/linuxptp-daemon linuxptp-daemon-container --since=10m -f | grep enp179s0f0
      I0225 10:58:17.366248 915439 e810.go:112] echo 0 1 > /sys/class/net/enp179s0f0/device/ptp/ptp6/pins/SDP22
      I0225 10:58:17.366348 915439 e810.go:112] echo 0 2 > /sys/class/net/enp179s0f0/device/ptp/ptp6/pins/SDP23
      I0225 10:58:17.366608 915439 e810.go:112] echo 1 1 > /sys/class/net/enp179s0f0/device/ptp/ptp6/pins/SDP20
      E0225 10:58:17.366792 915439 e810.go:115] e810 failed to write 1 1 to /sys/class/net/enp179s0f0/device/ptp/ptp6/pins/SDP20: write /sys/class/net/enp179s0f0/device/ptp/ptp6/pins/SDP20: operation not supported
      I0225 10:58:17.366903 915439 e810.go:112] echo 0 2 > /sys/class/net/enp179s0f0/device/ptp/ptp6/pins/SDP21
      
      
      

      Version-Release number of selected component (if applicable):

      PTP Operator   4.22.0-202602202227
      ocp version    4.22.0-0.nightly-2026-02-23-040809

      How reproducible:

          100%

      Steps to Reproduce:

      1.
      2.
      3.
          

      Actual results:

          

      Expected results:

          

      Additional info:

      https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=a33a302b505bfbb9614aa308391a45cf55827496

      original ptpconfig:

      apiVersion: ptp.openshift.io/v1
      kind: PtpConfig
      metadata:
        name: grandmaster1
        namespace: openshift-ptp
        annotations:
          ran.openshift.io/ztp-deploy-wave: "10"
      spec:
        profile:
        - name: "grandmaster1"
          ptp4lOpts: "-2 --summary_interval -4"
          phc2sysOpts: -r -u 0 -m -N 8 -R 16 -s enp202s0f0 -n 25
          ptpSchedulingPolicy: SCHED_FIFO
          ptpSchedulingPriority: 10
          ptpSettings:
            logReduce: "false"
          plugins:
            e810:
              enableDefaultConfig: false
              settings:
                LocalMaxHoldoverOffSet: 1500
                LocalHoldoverTimeout: 14400
                MaxInSpecOffset: 100
              pins:
                enp202s0f0:
                  SMA1: 2 1
                  SMA2: 2 2
                  U.FL1: 0 1
                  U.FL2: 0 2
                enp23s0f0:
                  SMA1: 1 1
                  SMA2: 0 2
                  U.FL1: 0 1
                  U.FL2: 0 2
                enp179s0f0:
                  SMA1: 1 1
                  SMA2: 0 2
                  U.FL1: 0 1
                  U.FL2: 0 2
              ublxCmds:
              - args: #ubxtool -P 29.20 -z CFG-HW-ANT_CFG_VOLTCTRL,1
                - "-P"
                - "29.20"
                - "-z"
                - "CFG-HW-ANT_CFG_VOLTCTRL,1"
                reportOutput: false
              - args: #ubxtool -P 29.20 -e GPS
                - "-P"
                - "29.20"
                - "-e"
                - "GPS"
                reportOutput: false
              - args: #ubxtool -P 29.20 -d Galileo
                - "-P"
                - "29.20"
                - "-d"
                - "Galileo"
                reportOutput: false
              - args: #ubxtool -P 29.20 -d GLONASS
                - "-P"
                - "29.20"
                - "-d"
                - "GLONASS"
                reportOutput: false
              - args: #ubxtool -P 29.20 -d BeiDou
                - "-P"
                - "29.20"
                - "-d"
                - "BeiDou"
                reportOutput: false
              - args: #ubxtool -P 29.20 -d SBAS
                - "-P"
                - "29.20"
                - "-d"
                - "SBAS"
                reportOutput: false
              - args: #ubxtool -P 29.20 -t -w 5 -v 1 -e SURVEYIN,600,50000
                - "-P"
                - "29.20"
                - "-t"
                - "-w"
                - "5"
                - "-v"
                - "1"
                - "-e"
                - "SURVEYIN,600,50000"
                reportOutput: true
              - args: #ubxtool -P 29.20 -p MON-HW
                - "-P"
                - "29.20"
                - "-p"
                - "MON-HW"
                reportOutput: true
              - args: #ubxtool -P 29.20 -p CFG-MSG,1,38,300
                  - "-P"
                  - "29.20"
                  - "-p"
                  - "CFG-MSG,1,38,248"
                reportOutput: true
          ts2phcOpts: " "
          ts2phcConf: |
            [nmea]
            ts2phc.master 1
            [global]
            use_syslog  0
            verbose 1
            logging_level 7
            ts2phc.pulsewidth 100000000
            ts2phc.nmea_serialport /dev/gnss2
            leapfile  /usr/share/zoneinfo/leap-seconds.list
            [enp202s0f0]
            ts2phc.extts_polarity rising
            ts2phc.pin_index 1
            ts2phc.extts_correction 0
            [enp23s0f0]
            ts2phc.master 0
            ts2phc.extts_polarity rising
            ts2phc.pin_index 1
            #this is a measured value in nanoseconds to compensate for SMA cable delay
            ts2phc.extts_correction -10
            [enp179s0f0]
            ts2phc.master 0
            ts2phc.extts_polarity rising
            ts2phc.pin_index 1
            #this is a measured value in nanoseconds to compensate for SMA cable delay
            ts2phc.extts_correction -10
          ptp4lConf: |
            [enp202s0f2]
            masterOnly 1
            [enp23s0f1]
            masterOnly 1
            [enp179s0f1]
            masterOnly 1
            [global]
            #
            # Default Data Set
            #
            twoStepFlag 1
            priority1 128
            priority2 128
            domainNumber 25
            #utc_offset 37
            clockClass 6
            clockAccuracy 0x27
            offsetScaledLogVariance 0xFFFF
            free_running 0
            freq_est_interval 1
            dscp_event 0
            dscp_general 0
            dataset_comparison G.8275.x
            G.8275.defaultDS.localPriority 128
            #
            # Port Data Set
            #
            logAnnounceInterval -3
            logSyncInterval -4
            logMinDelayReqInterval -4
            logMinPdelayReqInterval 0
            announceReceiptTimeout 3
            syncReceiptTimeout 0
            delayAsymmetry 0
            fault_reset_interval -4
            neighborPropDelayThresh 20000000
            masterOnly 0
            G.8275.portDS.localPriority 128
            #
            # Run time options
            #
            assume_two_step 0
            logging_level 6
            path_trace_enabled 0
            follow_up_info 0
            hybrid_e2e 0
            inhibit_multicast_service 0
            net_sync_monitor 0
            tc_spanning_tree 0
            tx_timestamp_timeout 50
            unicast_listen 0
            unicast_master_table 0
            unicast_req_duration 3600
            use_syslog 1
            verbose 0
            summary_interval -4
            kernel_leap 1
            check_fup_sync 0
            clock_class_threshold 7
            #
            # Servo Options
            #
            pi_proportional_const 0.0
            pi_integral_const 0.0
            pi_proportional_scale 0.0
            pi_proportional_exponent -0.3
            pi_proportional_norm_max 0.7
            pi_integral_scale 0.0
            pi_integral_exponent 0.4
            pi_integral_norm_max 0.3
            step_threshold 2.0
            first_step_threshold 0.00002
            clock_servo pi
            sanity_freq_limit  200000000
            ntpshm_segment 0
            #
            # Transport options
            #
            transportSpecific 0x0
            ptp_dst_mac 01:1B:19:00:00:00
            p2p_dst_mac 01:80:C2:00:00:0E
            udp_ttl 1
            udp6_scope 0x0E
            uds_address /var/run/ptp4l
            #
            # Default interface options
            #
            clock_type BC
            network_transport L2
            delay_mechanism E2E
            time_stamping hardware
            tsproc_mode filter
            delay_filter moving_median
            delay_filter_length 10
            egressLatency 0
            ingressLatency 0
            boundary_clock_jbod 1
            #
            # Clock description
            #
            productDescription ;;
            revisionData ;;
            manufacturerIdentity 00:00:00
            userDescription ;
            timeSource 0x20
          ptpClockThreshold:
            holdOverTimeout: 5
            maxOffsetThreshold: 100
            minOffsetThreshold: -100
        recommend:
        - profile: "grandmaster1"
          priority: 4
          match:
          - nodeLabel: "node-role.kubernetes.io/$mcp"

              micosta@redhat.com Michele Tomaso Costa
              henshay Hen Shay Hassid
              Hen Shay Hassid Hen Shay Hassid
              None
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

                Created:
                Updated: