{
  "_class" : "hudson.model.FreeStyleBuild",
  "actions" : [
    {
      "_class" : "hudson.model.CauseAction",
      "causes" : [
        {
          "_class" : "hudson.triggers.TimerTrigger$TimerTriggerCause",
          "shortDescription" : "Started by timer"
        }
      ]
    },
    {
      "_class" : "hudson.plugins.git.util.BuildData",
      "buildsByBranchName" : {
        "refs/remotes/origin/oi/hipster" : {
          "_class" : "hudson.plugins.git.util.Build",
          "buildNumber" : 4211,
          "buildResult" : None,
          "marked" : {
            "SHA1" : "0161fda523f164d9b776846dd18453acd00c91c5",
            "branch" : [
              {
                "SHA1" : "0161fda523f164d9b776846dd18453acd00c91c5",
                "name" : "refs/remotes/origin/oi/hipster"
              }
            ]
          },
          "revision" : {
            "SHA1" : "0161fda523f164d9b776846dd18453acd00c91c5",
            "branch" : [
              {
                "SHA1" : "0161fda523f164d9b776846dd18453acd00c91c5",
                "name" : "refs/remotes/origin/oi/hipster"
              }
            ]
          }
        },
        "origin/oi/hipster" : {
          "_class" : "hudson.plugins.git.util.Build",
          "buildNumber" : 3897,
          "buildResult" : None,
          "marked" : {
            "SHA1" : "5751b2ff5ccd4825400f4a37a10c38da4a0f23f3",
            "branch" : [
              {
                "SHA1" : "5751b2ff5ccd4825400f4a37a10c38da4a0f23f3",
                "name" : "origin/oi/hipster"
              }
            ]
          },
          "revision" : {
            "SHA1" : "5751b2ff5ccd4825400f4a37a10c38da4a0f23f3",
            "branch" : [
              {
                "SHA1" : "5751b2ff5ccd4825400f4a37a10c38da4a0f23f3",
                "name" : "origin/oi/hipster"
              }
            ]
          }
        }
      },
      "lastBuiltRevision" : {
        "SHA1" : "0161fda523f164d9b776846dd18453acd00c91c5",
        "branch" : [
          {
            "SHA1" : "0161fda523f164d9b776846dd18453acd00c91c5",
            "name" : "refs/remotes/origin/oi/hipster"
          }
        ]
      },
      "remoteUrls" : [
        "git://github.com/OpenIndiana/oi-userland.git"
      ],
      "scmName" : ""
    },
    {
      "_class" : "hudson.plugins.git.GitTagAction"
    },
    {
      
    },
    {
      "_class" : "org.jenkinsci.plugins.displayurlapi.actions.RunDisplayAction"
    }
  ],
  "artifacts" : [
    
  ],
  "building" : False,
  "description" : None,
  "displayName" : "#4211",
  "duration" : 6729483,
  "estimatedDuration" : 4575817,
  "executor" : None,
  "fullDisplayName" : "illumos-gate #4211",
  "id" : "2015-08-24_12-05-32",
  "inProgress" : False,
  "keepLog" : False,
  "number" : 4211,
  "queueId" : -1,
  "result" : "SUCCESS",
  "timestamp" : 1440417932000,
  "url" : "https://hipster.openindiana.org/jenkins/job/illumos-gate/4211/",
  "builtOn" : "",
  "changeSet" : {
    "_class" : "hudson.plugins.git.GitChangeSetList",
    "items" : [
      {
        "_class" : "hudson.plugins.git.GitChangeSet",
        "affectedPaths" : [
          "components/illumos/qemu-kvm/Makefile"
        ],
        "commitId" : "bcae9385652fa5c0c7d16888bae5033dbb69e026",
        "timestamp" : 1440350787000,
        "author" : {
          "absoluteUrl" : "https://hipster.openindiana.org/jenkins/user/jeffpc",
          "fullName" : "jeffpc"
        },
        "authorEmail" : "jeffpc@josefsipek.net",
        "comment" : "qemu-kvm: use -msave-args to make debugging easier\u000a",
        "date" : "2015-08-23T13:26:27-0400",
        "id" : "bcae9385652fa5c0c7d16888bae5033dbb69e026",
        "msg" : "qemu-kvm: use -msave-args to make debugging easier",
        "paths" : [
          {
            "editType" : "edit",
            "file" : "components/illumos/qemu-kvm/Makefile"
          }
        ]
      },
      {
        "_class" : "hudson.plugins.git.GitChangeSet",
        "affectedPaths" : [
          "components/illumos/qemu-kvm/patches/suberror-1-hack.patch"
        ],
        "commitId" : "4c5eb4b0b5fff214974f2873c0a13ddbdb535b28",
        "timestamp" : 1440351903000,
        "author" : {
          "absoluteUrl" : "https://hipster.openindiana.org/jenkins/user/jeffpc",
          "fullName" : "jeffpc"
        },
        "authorEmail" : "jeffpc@josefsipek.net",
        "comment" : "qemu-kvm: an ugly hack to work around the suberror 1 emulation failures\u000a\u000aThe suberror 1 indicates that qemu-kvm was asked to emulate an instruction\u000ait didn't know how to emulate. The reason for this emulation is that the\u000aguest tried to access a page that the host hasn't mapped in yet:\u000a\u000akvm`kvm_mmut_page_fault+0x88\u000akvm`handle_ept_violation+0x111\u000akvm`vmx_handle_exit+0x16a\u000akvm`vcpu_enter_guest+0x3ea\u000akvm`__vcpu_run+0x8b\u000akvm`kvm_arch_vcpu_ioctl_run+0x112\u000akvm`kvm_ioctl+0x466\u000acdev_ioctl+0x39\u000aspecfs`spec_ioctl+0x60\u000afop_ioctl+0x55\u000aioctl+0x9b\u000asys_syscall+0x17a\u000a\u000akvm should at this point emulate the instruction and resume execution. But\u000ait doesn't know how to emulate:\u000a\u000a0x66 0x0f 0xe7 0x07\u000a\u000aor\u000a\u000amovntdq %xmm0,(%rdi)\u000a\u000aI can't speak for non-Illumos based OSes, but Illumos will happily use SSE\u000ainstructions to zero out a page of memory:\u000a\u000ahwblkclr+0x37:                  pxor   %xmm0,%xmm0\u000ahwblkclr+0x3b:                  movntdq %xmm0,(%rdi)     <=== HERE\u000ahwblkclr+0x3f:                  movntdq %xmm0,0x10(%rdi)\u000ahwblkclr+0x44:                  movntdq %xmm0,0x20(%rdi)\u000ahwblkclr+0x49:                  movntdq %xmm0,0x30(%rdi)\u000a\u000aIt doesn't take long before Illumos boot tries to zero out a page - that's\u000awhy Illumos guests trigger this bug:\u000a\u000apfnzero\u000aufs`ufs_getpage_miss+0x35f\u000aufs`ufs_getpage+0x8a6\u000afop_getpage+0x7e\u000asegmap_fault+0x141\u000afbread+0xd1\u000aufs`blkatoff+0xf4\u000aufs`ufs_dirlook+0x216\u000aufs`ufs_lookup+0x191\u000afop_lookup+0xa2\u000alookuppnvp+0x1f6\u000alookuppnatcred+0x15e\u000alookupnameatcred+0xad\u000alookupname+0x38\u000avfs_mountdevices+0x96\u000avfs_mountroot+0x1b5\u000amain+0x138\u000a_locore_start+0x90\u000a\u000aI have an ugly workaround that I'll try to get into Hipster's userland. The\u000abasic idea is to fault in all the pages before qemu starts the virtual cpus.\u000aThat way, kvm never gets an mmu page fault that's valid.\u000a",
        "date" : "2015-08-23T13:45:03-0400",
        "id" : "4c5eb4b0b5fff214974f2873c0a13ddbdb535b28",
        "msg" : "qemu-kvm: an ugly hack to work around the suberror 1 emulation failures",
        "paths" : [
          {
            "editType" : "add",
            "file" : "components/illumos/qemu-kvm/patches/suberror-1-hack.patch"
          }
        ]
      },
      {
        "_class" : "hudson.plugins.git.GitChangeSet",
        "affectedPaths" : [
          "components/illumos/qemu-kvm/patches/configure.patch",
          "components/illumos/qemu-kvm/Makefile"
        ],
        "commitId" : "49fa025e5c53a63bbfb6cc8ac20aeebed96b5c08",
        "timestamp" : 1440329758000,
        "author" : {
          "absoluteUrl" : "https://hipster.openindiana.org/jenkins/user/apyhalov",
          "fullName" : "apyhalov"
        },
        "authorEmail" : "apyhalov@gmail.com",
        "comment" : "Fix qemu-kvm build\u000a",
        "date" : "2015-08-23T14:35:58+0300",
        "id" : "49fa025e5c53a63bbfb6cc8ac20aeebed96b5c08",
        "msg" : "Fix qemu-kvm build",
        "paths" : [
          {
            "editType" : "edit",
            "file" : "components/illumos/qemu-kvm/Makefile"
          },
          {
            "editType" : "edit",
            "file" : "components/illumos/qemu-kvm/patches/configure.patch"
          }
        ]
      }
    ],
    "kind" : "git"
  },
  "culprits" : [
    {
      "absoluteUrl" : "https://hipster.openindiana.org/jenkins/user/jeffpc",
      "fullName" : "jeffpc"
    },
    {
      "absoluteUrl" : "https://hipster.openindiana.org/jenkins/user/apyhalov",
      "fullName" : "apyhalov"
    }
  ]
}