{
  "_class" : "hudson.matrix.MatrixBuild",
  "actions" : [
    {
      "_class" : "hudson.model.CauseAction",
      "causes" : [
        {
          "_class" : "org.jenkinsci.plugins.ghprb.GhprbCause",
          "shortDescription" : "GitHub pull request #2866 of commit aa3a4a6f7c6d59ede1598bc54fb9c83d8ad1f776, no merge conflicts."
        }
      ]
    },
    {
      "_class" : "org.jenkinsci.plugins.ghprb.GhprbParametersAction",
      "parameters" : [
        {
          "_class" : "hudson.model.StringParameterValue",
          "name" : "sha1",
          "value" : "origin/pr/2866/merge"
        },
        {
          "_class" : "hudson.model.StringParameterValue",
          "name" : "ghprbActualCommit",
          "value" : "aa3a4a6f7c6d59ede1598bc54fb9c83d8ad1f776"
        },
        {
          "_class" : "hudson.model.StringParameterValue",
          "name" : "ghprbActualCommitAuthor",
          "value" : ""
        },
        {
          "_class" : "hudson.model.StringParameterValue",
          "name" : "ghprbActualCommitAuthorEmail",
          "value" : ""
        },
        {
          "_class" : "hudson.model.StringParameterValue",
          "name" : "ghprbAuthorRepoGitUrl",
          "value" : "https://github.com/sumanthkorikkar/bcc.git"
        },
        {
          "_class" : "hudson.model.StringParameterValue",
          "name" : "ghprbTriggerAuthor",
          "value" : ""
        },
        {
          "_class" : "hudson.model.StringParameterValue",
          "name" : "ghprbTriggerAuthorEmail",
          "value" : ""
        },
        {
          "_class" : "hudson.model.StringParameterValue",
          "name" : "ghprbTriggerAuthorLogin",
          "value" : "yonghong-song"
        },
        {
          "_class" : "hudson.model.StringParameterValue",
          "name" : "ghprbTriggerAuthorLoginMention",
          "value" : "@yonghong-song"
        },
        {
          "_class" : "hudson.model.StringParameterValue",
          "name" : "ghprbPullId",
          "value" : "2866"
        },
        {
          "_class" : "hudson.model.StringParameterValue",
          "name" : "ghprbTargetBranch",
          "value" : "master"
        },
        {
          "_class" : "hudson.model.StringParameterValue",
          "name" : "ghprbSourceBranch",
          "value" : "draft_bpf_probe_read_user_approach1"
        },
        {
          "_class" : "hudson.model.StringParameterValue",
          "name" : "GIT_BRANCH",
          "value" : "draft_bpf_probe_read_user_approach1"
        },
        {
          "_class" : "hudson.model.StringParameterValue",
          "name" : "ghprbPullAuthorEmail",
          "value" : ""
        },
        {
          "_class" : "hudson.model.StringParameterValue",
          "name" : "ghprbPullAuthorLogin",
          "value" : "sumanthkorikkar"
        },
        {
          "_class" : "hudson.model.StringParameterValue",
          "name" : "ghprbPullAuthorLoginMention",
          "value" : "@sumanthkorikkar"
        },
        {
          "_class" : "hudson.model.StringParameterValue",
          "name" : "ghprbPullDescription",
          "value" : "GitHub pull request #2866 of commit aa3a4a6f7c6d59ede1598bc54fb9c83d8ad1f776, no merge conflicts."
        },
        {
          "_class" : "hudson.model.StringParameterValue",
          "name" : "ghprbPullTitle",
          "value" : "bcc: Use bpf_probe_read_user in tools and provide backward compatibility"
        },
        {
          "_class" : "hudson.model.StringParameterValue",
          "name" : "ghprbPullLink",
          "value" : "https://github.com/iovisor/bcc/pull/2866"
        },
        {
          "_class" : "hudson.model.StringParameterValue",
          "name" : "ghprbPullLongDescription",
          "value" : "Hi @yonghong-song, @brendangregg, @4ast, all\\r\\n\\r\\n[RFC 0/1] Support bpf_probe_read_user in bcc tools\\r\\n\\r\\nbcc tracks the function arg pointers and then converts the pointer\\r\\ndeferences (both user and kernel pointer) into the bpf_probe_read().\\r\\nHowever this is not valid for architecture which has overlapping address\\r\\nspace. To overcome this issue, the bpf_probe_read_{user/kernel} variant\\r\\nwas introduced.\\r\\n\\r\\nFew Feasible solution for separation of user probe read and the kernel\\r\\nprobe read:\\r\\n\\r\\nApproach 1 (temporary approach):\\r\\n1. Explicitly use bpf_probe_read_user() for copying the user-space var\\r\\ninto the ebpf stack. Like kernel/bpf/samples/.\\r\\n-  Make changes in the tools and examples.\\r\\n- For backward compatibility, when kernel version < 5.5, convert\\r\\n  bpf_probe_read_user call to bpf_probe_read(). Atleast the tools are\\r\\n  valid for architecture which supports it.\\r\\n\\r\\nApproach 2\\r\\n2. Mark certain pointer as user and then track it while visiting AST\\r\\nnodes in cases like return, callexp, binop, assignment etc.. I am yet\\r\\nto try this and see how this can be performed\\r\\n\\r\\nLet me know, your suggestions for approach 1, approach 2 or any other good approaches. Thank you\\r\\n\\r\\nThe first approach rfc is added below.\\r\\n\\r\\nBest Regards\\r\\nSumanth\\r\\n"
        },
        {
          "_class" : "hudson.model.StringParameterValue",
          "name" : "ghprbCommentBody",
          "value" : "[buildbot, test this please]"
        },
        {
          "_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=\"bcc: Use bpf_probe_read_user in tools and provide backward compatibility\" href=\"https://github.com/iovisor/bcc/pull/2866\">PR #2866</a>: bcc: Use bpf_probe_read_use...",
  "displayName" : "#452",
  "duration" : 1159369,
  "estimatedDuration" : 7460664,
  "executor" : None,
  "fullDisplayName" : "bcc-pr #452",
  "id" : "452",
  "keepLog" : False,
  "number" : 452,
  "queueId" : 3624,
  "result" : "SUCCESS",
  "timestamp" : 1587658421809,
  "url" : "https://buildbot.iovisor.org/jenkins/job/bcc-pr/452/",
  "builtOn" : "",
  "changeSet" : {
    "_class" : "hudson.plugins.git.GitChangeSetList",
    "items" : [
      
    ],
    "kind" : "git"
  },
  "culprits" : [
    
  ],
  "runs" : [
    {
      "number" : 452,
      "url" : "https://buildbot.iovisor.org/jenkins/job/bcc-pr/label=fc25/452/"
    },
    {
      "number" : 452,
      "url" : "https://buildbot.iovisor.org/jenkins/job/bcc-pr/label=fc26/452/"
    },
    {
      "number" : 452,
      "url" : "https://buildbot.iovisor.org/jenkins/job/bcc-pr/label=fc27/452/"
    },
    {
      "number" : 452,
      "url" : "https://buildbot.iovisor.org/jenkins/job/bcc-pr/label=fc28/452/"
    },
    {
      "number" : 452,
      "url" : "https://buildbot.iovisor.org/jenkins/job/bcc-pr/label=ubuntu1604/452/"
    },
    {
      "number" : 452,
      "url" : "https://buildbot.iovisor.org/jenkins/job/bcc-pr/label=ubuntu1710/452/"
    },
    {
      "number" : 452,
      "url" : "https://buildbot.iovisor.org/jenkins/job/bcc-pr/label=ubuntu1804/452/"
    }
  ]
}