{
  "_class" : "hudson.matrix.MatrixBuild",
  "actions" : [
    {
      "_class" : "hudson.model.CauseAction",
      "causes" : [
        {
          "_class" : "hudson.triggers.SCMTrigger$SCMTriggerCause",
          "shortDescription" : "Started by an SCM change"
        }
      ]
    },
    {
      
    },
    {
      "_class" : "hudson.model.ParametersAction",
      "parameters" : [
        {
          "_class" : "hudson.model.StringParameterValue",
          "name" : "BRANCH",
          "value" : "master"
        },
        {
          "_class" : "hudson.model.StringParameterValue",
          "name" : "EMAIL_NOTIFICATIONS",
          "value" : "jenkins-notifications@lists.osmocom.org laforge@gnumonks.org"
        }
      ]
    },
    {
      "_class" : "jenkins.metrics.impl.TimeInQueueAction",
      "blockedDurationMillis" : 0,
      "blockedTimeMillis" : 0,
      "buildableDurationMillis" : 0,
      "buildableTimeMillis" : 0,
      "buildingDurationMillis" : 132684,
      "executingTimeMillis" : 132684,
      "executorUtilization" : 1.0,
      "subTaskCount" : 0,
      "waitingDurationMillis" : 6754,
      "waitingTimeMillis" : 6754
    },
    {
      
    },
    {
      "_class" : "hudson.plugins.git.util.BuildData",
      "buildsByBranchName" : {
        "origin/master" : {
          "_class" : "hudson.plugins.git.util.Build",
          "buildNumber" : 4596,
          "buildResult" : None,
          "marked" : {
            "SHA1" : "e02b95a6d98e7e1f7051bf4a6447f590e76eb8fb",
            "branch" : [
              {
                "SHA1" : "e02b95a6d98e7e1f7051bf4a6447f590e76eb8fb",
                "name" : "origin/master"
              }
            ]
          },
          "revision" : {
            "SHA1" : "e02b95a6d98e7e1f7051bf4a6447f590e76eb8fb",
            "branch" : [
              {
                "SHA1" : "e02b95a6d98e7e1f7051bf4a6447f590e76eb8fb",
                "name" : "origin/master"
              }
            ]
          }
        },
        "refs/remotes/origin/master" : {
          "_class" : "hudson.plugins.git.util.Build",
          "buildNumber" : 3086,
          "buildResult" : None,
          "marked" : {
            "SHA1" : "a42f4a51c09fdc3c4f532ff07b806e26bf7e9fa1",
            "branch" : [
              {
                "SHA1" : "a42f4a51c09fdc3c4f532ff07b806e26bf7e9fa1",
                "name" : "refs/remotes/origin/master"
              }
            ]
          },
          "revision" : {
            "SHA1" : "a42f4a51c09fdc3c4f532ff07b806e26bf7e9fa1",
            "branch" : [
              {
                "SHA1" : "a42f4a51c09fdc3c4f532ff07b806e26bf7e9fa1",
                "name" : "refs/remotes/origin/master"
              }
            ]
          }
        }
      },
      "lastBuiltRevision" : {
        "SHA1" : "e02b95a6d98e7e1f7051bf4a6447f590e76eb8fb",
        "branch" : [
          {
            "SHA1" : "e02b95a6d98e7e1f7051bf4a6447f590e76eb8fb",
            "name" : "origin/master"
          }
        ]
      },
      "remoteUrls" : [
        "https://gerrit.osmocom.org/libosmocore"
      ],
      "scmName" : ""
    },
    {
      
    },
    {
      
    },
    {
      "_class" : "org.jenkinsci.plugins.displayurlapi.actions.RunDisplayAction"
    }
  ],
  "artifacts" : [
    
  ],
  "building" : False,
  "description" : None,
  "displayName" : "#4596",
  "duration" : 132684,
  "estimatedDuration" : 125219,
  "executor" : None,
  "fullDisplayName" : "master-libosmocore #4596",
  "id" : "4596",
  "inProgress" : False,
  "keepLog" : False,
  "number" : 4596,
  "queueId" : 2074932,
  "result" : "SUCCESS",
  "timestamp" : 1766099707216,
  "url" : "https://jenkins.osmocom.org/jenkins/view/SIMtrace/job/master-libosmocore/4596/",
  "builtOn" : "",
  "changeSet" : {
    "_class" : "hudson.plugins.git.GitChangeSetList",
    "items" : [
      {
        "_class" : "hudson.plugins.git.GitChangeSet",
        "affectedPaths" : [
          "include/osmocom/core/socket.h",
          "include/osmocom/core/gsmtap_util.h",
          "src/core/gsmtap_util.c",
          "src/core/libosmocore.map",
          "src/core/socket.c",
          "src/vty/logging_vty.c",
          "TODO-RELEASE"
        ],
        "commitId" : "862deae282cfa3b9dcd41d10f0fd24959d646050",
        "timestamp" : 1766066007000,
        "author" : {
          "absoluteUrl" : "https://jenkins.osmocom.org/jenkins/user/pespin",
          "fullName" : "Pau Espin Pedrol"
        },
        "authorEmail" : "pespin@sysmocom.de",
        "comment" : "logging_vty: Allow setting gsmtap log tgt as (blocking-io|nonblocking-io|wq)\u000a\u000aThe current patch adds the possibility to configure it, and leaves the\u000aprevious behavior as default: blocking-io.\u000a\u000aRelated: OS#6213\u000aChange-Id: Id5d31bedd7d265d18f6e475ccbc94ced80598d04\u000a",
        "date" : "2025-12-18 14:53:27 +0100",
        "id" : "862deae282cfa3b9dcd41d10f0fd24959d646050",
        "msg" : "logging_vty: Allow setting gsmtap log tgt as",
        "paths" : [
          {
            "editType" : "edit",
            "file" : "src/vty/logging_vty.c"
          },
          {
            "editType" : "edit",
            "file" : "src/core/gsmtap_util.c"
          },
          {
            "editType" : "edit",
            "file" : "TODO-RELEASE"
          },
          {
            "editType" : "edit",
            "file" : "src/core/socket.c"
          },
          {
            "editType" : "edit",
            "file" : "include/osmocom/core/gsmtap_util.h"
          },
          {
            "editType" : "edit",
            "file" : "include/osmocom/core/socket.h"
          },
          {
            "editType" : "edit",
            "file" : "src/core/libosmocore.map"
          }
        ]
      },
      {
        "_class" : "hudson.plugins.git.GitChangeSet",
        "affectedPaths" : [
          "src/vty/logging_vty.c"
        ],
        "commitId" : "c70a84daebb8141062fef352866cc9ee0364b58e",
        "timestamp" : 1766066049000,
        "author" : {
          "absoluteUrl" : "https://jenkins.osmocom.org/jenkins/user/pespin",
          "fullName" : "Pau Espin Pedrol"
        },
        "authorEmail" : "pespin@sysmocom.de",
        "comment" : "logging_vty: Set 'gsmtap log nonblocking-io' as default\u000a\u000aApps using a VTY are expected to be using an event loop, and hence\u000ashould not be using blocking operations which would stall the event\u000aloop.\u000a\u000aIf user fears losing messages (eg, when enabling a lot of DEBUG),\u000athen the taget can still be switched to \"wq\" at the expense of\u000alosing performance, or increasing the kernel UDP socket sndbuf by means\u000aof sysctl net.core.wmem_{default,max}.\u000a\u000aRelated: OS#6213\u000aRelated: OS#6794\u000aChange-Id: Ifca8a821e13ec1327ab2476b0db91078fcff948b\u000a",
        "date" : "2025-12-18 14:54:09 +0100",
        "id" : "c70a84daebb8141062fef352866cc9ee0364b58e",
        "msg" : "logging_vty: Set 'gsmtap log nonblocking-io' as default",
        "paths" : [
          {
            "editType" : "edit",
            "file" : "src/vty/logging_vty.c"
          }
        ]
      },
      {
        "_class" : "hudson.plugins.git.GitChangeSet",
        "affectedPaths" : [
          "src/core/gsmtap_util.c"
        ],
        "commitId" : "74643c5fdd3302f42eca6b2995e084d3f0d342f9",
        "timestamp" : 1766071943000,
        "author" : {
          "absoluteUrl" : "https://jenkins.osmocom.org/jenkins/user/pespin",
          "fullName" : "Pau Espin Pedrol"
        },
        "authorEmail" : "pespin@sysmocom.de",
        "comment" : "gsmtap_util: Set sink_fd RCVBUF and SNDBUF to minimum\u000a\u000aWe never transmit anything over the socket, nor are interested in\u000areading from it. We are only interested in having the socket open to\u000aavoid ICMP errors.\u000aHence, set the buffers to the minimum to save some memory which we won't\u000aever need/use.\u000a\u000aChange-Id: Icfbc24ff679898496666d224d49e1ff06ddffda8\u000a",
        "date" : "2025-12-18 16:32:23 +0100",
        "id" : "74643c5fdd3302f42eca6b2995e084d3f0d342f9",
        "msg" : "gsmtap_util: Set sink_fd RCVBUF and SNDBUF to minimum",
        "paths" : [
          {
            "editType" : "edit",
            "file" : "src/core/gsmtap_util.c"
          }
        ]
      },
      {
        "_class" : "hudson.plugins.git.GitChangeSet",
        "affectedPaths" : [
          "src/core/gsmtap_util.c"
        ],
        "commitId" : "098af6958efbf9b41bee3f5a29d5bf143a036871",
        "timestamp" : 1766071949000,
        "author" : {
          "absoluteUrl" : "https://jenkins.osmocom.org/jenkins/user/pespin",
          "fullName" : "Pau Espin Pedrol"
        },
        "authorEmail" : "pespin@sysmocom.de",
        "comment" : "gsmtap_util: Set source_fd RCVBUF to minimum\u000a\u000aWe never expect to receive anything on this socket, so set its RCVBUF to\u000athe minimum possible to save some memory.\u000a\u000aChange-Id: If82b3edf11dea1a124035d4eb0e6aa44f4223555\u000a",
        "date" : "2025-12-18 16:32:29 +0100",
        "id" : "098af6958efbf9b41bee3f5a29d5bf143a036871",
        "msg" : "gsmtap_util: Set source_fd RCVBUF to minimum",
        "paths" : [
          {
            "editType" : "edit",
            "file" : "src/core/gsmtap_util.c"
          }
        ]
      },
      {
        "_class" : "hudson.plugins.git.GitChangeSet",
        "affectedPaths" : [
          "src/core/gsmtap_util.c"
        ],
        "commitId" : "e02b95a6d98e7e1f7051bf4a6447f590e76eb8fb",
        "timestamp" : 1766072258000,
        "author" : {
          "absoluteUrl" : "https://jenkins.osmocom.org/jenkins/user/pespin",
          "fullName" : "Pau Espin Pedrol"
        },
        "authorEmail" : "pespin@sysmocom.de",
        "comment" : "gsmtap_util: Increase source_fd's SO_SNDBUF to 4MB\u000a\u000aUsing bpftrace we spotted osmo-bts sporadically blocking on send()\u000aof gsmtap_log for 2-4s, most probably due to the UDP send buffer being\u000afull. The wmem_default of ~292KB is indeed a bit tight, and for instance\u000aupstream Linux got its wmem_max to 4MB in april 2025 since it's becoming\u000amore usual that sockets need to increase this value.\u000a\u000aHence, increase the SO_SNDBUF to 4MB to get some extra room and avoid\u000ablocks (or drops if socket is later on set non-blocking) and be able to\u000aaccomodate to logging spikes better.\u000a\u000aThe kernel will take care of lowering the size set to the configured\u000anet.core.wmem_max if needed.\u000a\u000aRelated: OS#6794\u000aChange-Id: I5033a018dfc748b309600102b8a9ade0df014615\u000a",
        "date" : "2025-12-18 16:37:38 +0100",
        "id" : "e02b95a6d98e7e1f7051bf4a6447f590e76eb8fb",
        "msg" : "gsmtap_util: Increase source_fd's SO_SNDBUF to 4MB",
        "paths" : [
          {
            "editType" : "edit",
            "file" : "src/core/gsmtap_util.c"
          }
        ]
      }
    ],
    "kind" : "git"
  },
  "culprits" : [
    {
      "absoluteUrl" : "https://jenkins.osmocom.org/jenkins/user/pespin",
      "fullName" : "Pau Espin Pedrol"
    }
  ],
  "runs" : [
    {
      "number" : 475,
      "url" : "https://jenkins.osmocom.org/jenkins/view/SIMtrace/job/master-libosmocore/a2=default,a3=default,arch=amd64,label=osmocom-master-debian9/475/"
    },
    {
      "number" : 475,
      "url" : "https://jenkins.osmocom.org/jenkins/view/SIMtrace/job/master-libosmocore/a2=default,a3=default,arch=arm-none-eabi,label=osmocom-master-debian9/475/"
    },
    {
      "number" : 4596,
      "url" : "https://jenkins.osmocom.org/jenkins/view/SIMtrace/job/master-libosmocore/a2=default,a3=default,a4=default,arch=amd64,label=io_uring/4596/"
    },
    {
      "number" : 4596,
      "url" : "https://jenkins.osmocom.org/jenkins/view/SIMtrace/job/master-libosmocore/a2=default,a3=default,a4=default,arch=arm-none-eabi,label=io_uring/4596/"
    }
  ]
}