{
  "_class" : "hudson.matrix.MatrixBuild",
  "actions" : [
    {
      "_class" : "hudson.model.CauseAction",
      "causes" : [
        {
          "_class" : "org.jenkinsci.plugins.ghprb.GhprbCause",
          "shortDescription" : "GitHub pull request #2577 of commit 7fdfa8c8bd080fc8e2a0940fe241ad0b1503ae74, no merge conflicts."
        }
      ]
    },
    {
      "_class" : "org.jenkinsci.plugins.ghprb.GhprbParametersAction",
      "parameters" : [
        {
          "_class" : "hudson.model.StringParameterValue",
          "name" : "sha1",
          "value" : "origin/pr/2577/merge"
        },
        {
          "_class" : "hudson.model.StringParameterValue",
          "name" : "ghprbActualCommit",
          "value" : "7fdfa8c8bd080fc8e2a0940fe241ad0b1503ae74"
        },
        {
          "_class" : "hudson.model.StringParameterValue",
          "name" : "ghprbActualCommitAuthor",
          "value" : "Yonghong Song"
        },
        {
          "_class" : "hudson.model.StringParameterValue",
          "name" : "ghprbActualCommitAuthorEmail",
          "value" : "yhs@fb.com"
        },
        {
          "_class" : "hudson.model.StringParameterValue",
          "name" : "ghprbAuthorRepoGitUrl",
          "value" : "https://github.com/iovisor/bcc.git"
        },
        {
          "_class" : "hudson.model.StringParameterValue",
          "name" : "ghprbTriggerAuthor",
          "value" : ""
        },
        {
          "_class" : "hudson.model.StringParameterValue",
          "name" : "ghprbTriggerAuthorEmail",
          "value" : ""
        },
        {
          "_class" : "hudson.model.StringParameterValue",
          "name" : "ghprbTriggerAuthorLogin",
          "value" : ""
        },
        {
          "_class" : "hudson.model.StringParameterValue",
          "name" : "ghprbTriggerAuthorLoginMention",
          "value" : ""
        },
        {
          "_class" : "hudson.model.StringParameterValue",
          "name" : "ghprbPullId",
          "value" : "2577"
        },
        {
          "_class" : "hudson.model.StringParameterValue",
          "name" : "ghprbTargetBranch",
          "value" : "master"
        },
        {
          "_class" : "hudson.model.StringParameterValue",
          "name" : "ghprbSourceBranch",
          "value" : "yhs_dev"
        },
        {
          "_class" : "hudson.model.StringParameterValue",
          "name" : "GIT_BRANCH",
          "value" : "yhs_dev"
        },
        {
          "_class" : "hudson.model.StringParameterValue",
          "name" : "ghprbPullAuthorEmail",
          "value" : ""
        },
        {
          "_class" : "hudson.model.StringParameterValue",
          "name" : "ghprbPullAuthorLogin",
          "value" : "yonghong-song"
        },
        {
          "_class" : "hudson.model.StringParameterValue",
          "name" : "ghprbPullAuthorLoginMention",
          "value" : "@yonghong-song"
        },
        {
          "_class" : "hudson.model.StringParameterValue",
          "name" : "ghprbPullDescription",
          "value" : "GitHub pull request #2577 of commit 7fdfa8c8bd080fc8e2a0940fe241ad0b1503ae74, no merge conflicts."
        },
        {
          "_class" : "hudson.model.StringParameterValue",
          "name" : "ghprbPullTitle",
          "value" : "[RFC] introduce map.lookup_or_init2()"
        },
        {
          "_class" : "hudson.model.StringParameterValue",
          "name" : "ghprbPullLink",
          "value" : "https://github.com/iovisor/bcc/pull/2577"
        },
        {
          "_class" : "hudson.model.StringParameterValue",
          "name" : "ghprbPullLongDescription",
          "value" : "Previously, map.lookup_or_init() may cause unexpected\\r\\nreturn from the function, and this has caught surprise\\r\\nfrom many users. So, the commit\\r\\n  https://github.com/iovisor/bcc/commit/ba64f031f2435aad5a85f8f37dbbe2a982cbbe6b\\r\\nattempts to remove the early return in map.lookup_or_init().\\r\\nBut then since NULL pointer could be returned,\\r\\nuser will need to change their bpf program to check return value,\\r\\notherwise, verifier will reject the program.\\r\\n\\r\\nAs described in the above, such an API behavior change may cause\\r\\nverifier failure and reject previously loadable bpf programs.\\r\\nbcc should try to maintain API stability, esp. to avoid subtle\\r\\nAPI behavior change.\\r\\n\\r\\nThis patch propose to restore the behavior of map.lookup_or_init()\\r\\nand introduce a new one map.lookup_or_init2(), which will\\r\\navoid unexpected return. map.lookup_or_init2() will be formally\\r\\ndocumented and used in bcc. A warning will be generated if\\r\\nmap.lookup_or_init() is used. Documentation will make it clear\\r\\nthat map.lookup_or_init2() is preferred over map.lookup_or_init().\\r\\n\\r\\n```\\r\\n-bash-4.4$ sudo ./syscount.py\\r\\n/virtual/main.c:71:11: warning: lookup_or_init() may return from the function, use loopup_or_init2() instead.\\r\\n    val = data.lookup_or_init(&key, &zero);\\r\\n          ^\\r\\n1 warning generated.\\r\\nTracing syscalls, printing top 10... Ctrl+C to quit.\\r\\n...\\r\\n```\\r\\n\\r\\nTODO: all lookup_or_init() usages changed to lookup_or_init2().\\r\\nTODO: some tests in lookup_or_init() changed to lookup_or_init2(),\\r\\n      but some remains to test lookup_or_init().\\r\\n\\r\\nI did not have a better name than lookup_or_init2(). But if you\\r\\nhave, please let me know."
        },
        {
          "_class" : "hudson.model.StringParameterValue",
          "name" : "ghprbCommentBody",
          "value" : "null"
        },
        {
          "_class" : "hudson.model.StringParameterValue",
          "name" : "ghprbGhRepository",
          "value" : "iovisor/bcc"
        },
        {
          "_class" : "hudson.model.StringParameterValue",
          "name" : "ghprbCredentialsId",
          "value" : "6d3daf13-69b8-48b1-9c8f-ec5353264113"
        }
      ]
    },
    {
      "_class" : "hudson.plugins.git.GitTagAction"
    },
    {
      
    },
    {
      
    },
    {
      "_class" : "org.jenkinsci.plugins.displayurlapi.actions.RunDisplayAction"
    }
  ],
  "artifacts" : [
    
  ],
  "building" : False,
  "description" : "<a title=\"[RFC] introduce map.lookup_or_init2()\" href=\"https://github.com/iovisor/bcc/pull/2577\">PR #2577</a>: [RFC] introduce map.lookup_...",
  "displayName" : "#104",
  "duration" : 1335536,
  "estimatedDuration" : 7460664,
  "executor" : None,
  "fullDisplayName" : "bcc-pr #104",
  "id" : "104",
  "keepLog" : False,
  "number" : 104,
  "queueId" : 860,
  "result" : "SUCCESS",
  "timestamp" : 1572501172834,
  "url" : "https://buildbot.iovisor.org/jenkins/job/bcc-pr/104/",
  "builtOn" : "",
  "changeSet" : {
    "_class" : "hudson.plugins.git.GitChangeSetList",
    "items" : [
      
    ],
    "kind" : "git"
  },
  "culprits" : [
    
  ],
  "runs" : [
    {
      "number" : 104,
      "url" : "https://buildbot.iovisor.org/jenkins/job/bcc-pr/label=fc25/104/"
    },
    {
      "number" : 104,
      "url" : "https://buildbot.iovisor.org/jenkins/job/bcc-pr/label=fc26/104/"
    },
    {
      "number" : 104,
      "url" : "https://buildbot.iovisor.org/jenkins/job/bcc-pr/label=fc27/104/"
    },
    {
      "number" : 104,
      "url" : "https://buildbot.iovisor.org/jenkins/job/bcc-pr/label=fc28/104/"
    },
    {
      "number" : 104,
      "url" : "https://buildbot.iovisor.org/jenkins/job/bcc-pr/label=ubuntu1604/104/"
    },
    {
      "number" : 104,
      "url" : "https://buildbot.iovisor.org/jenkins/job/bcc-pr/label=ubuntu1710/104/"
    },
    {
      "number" : 104,
      "url" : "https://buildbot.iovisor.org/jenkins/job/bcc-pr/label=ubuntu1804/104/"
    }
  ]
}