{"action":"created","comment":{"url":"https://api.github.com/repos/hyperhq/hyperstart/pulls/comments/102661204","pull_request_review_id":23421046,"id":102661204,"diff_hunk":"@@ -1418,26 +1523,45 @@ int main(int argc, char *argv[])\n #else\n \tctl_serial = \"sh.hyper.channel.0\";\n \ttty_serial = \"sh.hyper.channel.1\";\n+\tif (probe_vsock_device() <= 0) {\n+\t\tfprintf(stderr, \"cannot find vsock device\\n\");\n+\t} else if (hyper_cmd(\"modprobe vmw_vsock_virtio_transport\") < 0) {\n+\t\tfprintf(stderr, \"fail to load vmw_vsock_virtio_transport.ko\\n\");\n+\t} else {\n+\t\thyper_epoll.vsock_ctl_listener.fd = 1; /* >0 indicates vsock support */","path":"src/init.c","position":null,"original_position":234,"commit_id":"0dbe3f783d364dec5e633017863e18120224ccef","original_commit_id":"67ab0987fee486f4019c61d7ef63209aabef3282","user":{"login":"bergwolf","id":88972,"avatar_url":"https://avatars.githubusercontent.com/u/88972?v=3","gravatar_id":"","url":"https://api.github.com/users/bergwolf","html_url":"https://github.com/bergwolf","followers_url":"https://api.github.com/users/bergwolf/followers","following_url":"https://api.github.com/users/bergwolf/following{/other_user}","gists_url":"https://api.github.com/users/bergwolf/gists{/gist_id}","starred_url":"https://api.github.com/users/bergwolf/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bergwolf/subscriptions","organizations_url":"https://api.github.com/users/bergwolf/orgs","repos_url":"https://api.github.com/users/bergwolf/repos","events_url":"https://api.github.com/users/bergwolf/events{/privacy}","received_events_url":"https://api.github.com/users/bergwolf/received_events","type":"User","site_admin":false},"body":"done.","created_at":"2017-02-23T08:32:01Z","updated_at":"2017-02-23T08:32:01Z","html_url":"https://github.com/hyperhq/hyperstart/pull/249#discussion_r102661204","pull_request_url":"https://api.github.com/repos/hyperhq/hyperstart/pulls/249","_links":{"self":{"href":"https://api.github.com/repos/hyperhq/hyperstart/pulls/comments/102661204"},"html":{"href":"https://github.com/hyperhq/hyperstart/pull/249#discussion_r102661204"},"pull_request":{"href":"https://api.github.com/repos/hyperhq/hyperstart/pulls/249"}}},"pull_request":{"url":"https://api.github.com/repos/hyperhq/hyperstart/pulls/249","id":100253050,"html_url":"https://github.com/hyperhq/hyperstart/pull/249","diff_url":"https://github.com/hyperhq/hyperstart/pull/249.diff","patch_url":"https://github.com/hyperhq/hyperstart/pull/249.patch","issue_url":"https://api.github.com/repos/hyperhq/hyperstart/issues/249","number":249,"state":"open","locked":false,"title":"Vsock support","user":{"login":"bergwolf","id":88972,"avatar_url":"https://avatars.githubusercontent.com/u/88972?v=3","gravatar_id":"","url":"https://api.github.com/users/bergwolf","html_url":"https://github.com/bergwolf","followers_url":"https://api.github.com/users/bergwolf/followers","following_url":"https://api.github.com/users/bergwolf/following{/other_user}","gists_url":"https://api.github.com/users/bergwolf/gists{/gist_id}","starred_url":"https://api.github.com/users/bergwolf/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bergwolf/subscriptions","organizations_url":"https://api.github.com/users/bergwolf/orgs","repos_url":"https://api.github.com/users/bergwolf/repos","events_url":"https://api.github.com/users/bergwolf/events{/privacy}","received_events_url":"https://api.github.com/users/bergwolf/received_events","type":"User","site_admin":false},"body":"The PR rebases https://github.com/hyperhq/hyperstart/pull/194 on top of latest master. It does the following:\r\n1. Add vsock kernel support\r\n2. Listen and create vsock channels for control and tty messages\r\n3. Support associate/dissociate by accepting new control channels after previous one is closed\r\n\r\nTODO: after rebase, control channel writer buffer needs to be preserved across dissociate/associate. I will add it later but it is not a blocker for this PR. vsock is optional and should not break serial port code. So I'd like to get the PR reviewed/merged first as it is already large enough.","created_at":"2017-01-05T08:50:13Z","updated_at":"2017-02-23T08:32:01Z","closed_at":null,"merged_at":null,"merge_commit_sha":"4fe636c371869100d06187f989ba1e256f2c7167","assignee":null,"assignees":[],"milestone":null,"commits_url":"https://api.github.com/repos/hyperhq/hyperstart/pulls/249/commits","review_comments_url":"https://api.github.com/repos/hyperhq/hyperstart/pulls/249/comments","review_comment_url":"https://api.github.com/repos/hyperhq/hyperstart/pulls/comments{/number}","comments_url":"https://api.github.com/repos/hyperhq/hyperstart/issues/249/comments","statuses_url":"https://api.github.com/repos/hyperhq/hyperstart/statuses/0dbe3f783d364dec5e633017863e18120224ccef","head":{"label":"bergwolf:vsock-rebased","ref":"vsock-rebased","sha":"0dbe3f783d364dec5e633017863e18120224ccef","user":{"login":"bergwolf","id":88972,"avatar_url":"https://avatars.githubusercontent.com/u/88972?v=3","gravatar_id":"","url":"https://api.github.com/users/bergwolf","html_url":"https://github.com/bergwolf","followers_url":"https://api.github.com/users/bergwolf/followers","following_url":"https://api.github.com/users/bergwolf/following{/other_user}","gists_url":"https://api.github.com/users/bergwolf/gists{/gist_id}","starred_url":"https://api.github.com/users/bergwolf/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bergwolf/subscriptions","organizations_url":"https://api.github.com/users/bergwolf/orgs","repos_url":"https://api.github.com/users/bergwolf/repos","events_url":"https://api.github.com/users/bergwolf/events{/privacy}","received_events_url":"https://api.github.com/users/bergwolf/received_events","type":"User","site_admin":false},"repo":{"id":36541033,"name":"hyperstart","full_name":"bergwolf/hyperstart","owner":{"login":"bergwolf","id":88972,"avatar_url":"https://avatars.githubusercontent.com/u/88972?v=3","gravatar_id":"","url":"https://api.github.com/users/bergwolf","html_url":"https://github.com/bergwolf","followers_url":"https://api.github.com/users/bergwolf/followers","following_url":"https://api.github.com/users/bergwolf/following{/other_user}","gists_url":"https://api.github.com/users/bergwolf/gists{/gist_id}","starred_url":"https://api.github.com/users/bergwolf/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bergwolf/subscriptions","organizations_url":"https://api.github.com/users/bergwolf/orgs","repos_url":"https://api.github.com/users/bergwolf/repos","events_url":"https://api.github.com/users/bergwolf/events{/privacy}","received_events_url":"https://api.github.com/users/bergwolf/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/bergwolf/hyperstart","description":"The tiny Init service for Hyper","fork":true,"url":"https://api.github.com/repos/bergwolf/hyperstart","forks_url":"https://api.github.com/repos/bergwolf/hyperstart/forks","keys_url":"https://api.github.com/repos/bergwolf/hyperstart/keys{/key_id}","collaborators_url":"https://api.github.com/repos/bergwolf/hyperstart/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/bergwolf/hyperstart/teams","hooks_url":"https://api.github.com/repos/bergwolf/hyperstart/hooks","issue_events_url":"https://api.github.com/repos/bergwolf/hyperstart/issues/events{/number}","events_url":"https://api.github.com/repos/bergwolf/hyperstart/events","assignees_url":"https://api.github.com/repos/bergwolf/hyperstart/assignees{/user}","branches_url":"https://api.github.com/repos/bergwolf/hyperstart/branches{/branch}","tags_url":"https://api.github.com/repos/bergwolf/hyperstart/tags","blobs_url":"https://api.github.com/repos/bergwolf/hyperstart/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/bergwolf/hyperstart/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/bergwolf/hyperstart/git/refs{/sha}","trees_url":"https://api.github.com/repos/bergwolf/hyperstart/git/trees{/sha}","statuses_url":"https://api.github.com/repos/bergwolf/hyperstart/statuses/{sha}","languages_url":"https://api.github.com/repos/bergwolf/hyperstart/languages","stargazers_url":"https://api.github.com/repos/bergwolf/hyperstart/stargazers","contributors_url":"https://api.github.com/repos/bergwolf/hyperstart/contributors","subscribers_url":"https://api.github.com/repos/bergwolf/hyperstart/subscribers","subscription_url":"https://api.github.com/repos/bergwolf/hyperstart/subscription","commits_url":"https://api.github.com/repos/bergwolf/hyperstart/commits{/sha}","git_commits_url":"https://api.github.com/repos/bergwolf/hyperstart/git/commits{/sha}","comments_url":"https://api.github.com/repos/bergwolf/hyperstart/comments{/number}","issue_comment_url":"https://api.github.com/repos/bergwolf/hyperstart/issues/comments{/number}","contents_url":"https://api.github.com/repos/bergwolf/hyperstart/contents/{+path}","compare_url":"https://api.github.com/repos/bergwolf/hyperstart/compare/{base}...{head}","merges_url":"https://api.github.com/repos/bergwolf/hyperstart/merges","archive_url":"https://api.github.com/repos/bergwolf/hyperstart/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/bergwolf/hyperstart/downloads","issues_url":"https://api.github.com/repos/bergwolf/hyperstart/issues{/number}","pulls_url":"https://api.github.com/repos/bergwolf/hyperstart/pulls{/number}","milestones_url":"https://api.github.com/repos/bergwolf/hyperstart/milestones{/number}","notifications_url":"https://api.github.com/repos/bergwolf/hyperstart/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/bergwolf/hyperstart/labels{/name}","releases_url":"https://api.github.com/repos/bergwolf/hyperstart/releases{/id}","deployments_url":"https://api.github.com/repos/bergwolf/hyperstart/deployments","created_at":"2015-05-30T03:14:57Z","updated_at":"2016-04-27T15:06:55Z","pushed_at":"2017-02-23T08:29:54Z","git_url":"git://github.com/bergwolf/hyperstart.git","ssh_url":"git@github.com:bergwolf/hyperstart.git","clone_url":"https://github.com/bergwolf/hyperstart.git","svn_url":"https://github.com/bergwolf/hyperstart","homepage":"https://www.hyper.sh","size":75720,"stargazers_count":0,"watchers_count":0,"language":"C","has_issues":false,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"hyperhq:master","ref":"master","sha":"5f819c5f79a97272f5329ea399476b9fab0c9ffc","user":{"login":"hyperhq","id":12324138,"avatar_url":"https://avatars.githubusercontent.com/u/12324138?v=3","gravatar_id":"","url":"https://api.github.com/users/hyperhq","html_url":"https://github.com/hyperhq","followers_url":"https://api.github.com/users/hyperhq/followers","following_url":"https://api.github.com/users/hyperhq/following{/other_user}","gists_url":"https://api.github.com/users/hyperhq/gists{/gist_id}","starred_url":"https://api.github.com/users/hyperhq/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/hyperhq/subscriptions","organizations_url":"https://api.github.com/users/hyperhq/orgs","repos_url":"https://api.github.com/users/hyperhq/repos","events_url":"https://api.github.com/users/hyperhq/events{/privacy}","received_events_url":"https://api.github.com/users/hyperhq/received_events","type":"Organization","site_admin":false},"repo":{"id":36213972,"name":"hyperstart","full_name":"hyperhq/hyperstart","owner":{"login":"hyperhq","id":12324138,"avatar_url":"https://avatars.githubusercontent.com/u/12324138?v=3","gravatar_id":"","url":"https://api.github.com/users/hyperhq","html_url":"https://github.com/hyperhq","followers_url":"https://api.github.com/users/hyperhq/followers","following_url":"https://api.github.com/users/hyperhq/following{/other_user}","gists_url":"https://api.github.com/users/hyperhq/gists{/gist_id}","starred_url":"https://api.github.com/users/hyperhq/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/hyperhq/subscriptions","organizations_url":"https://api.github.com/users/hyperhq/orgs","repos_url":"https://api.github.com/users/hyperhq/repos","events_url":"https://api.github.com/users/hyperhq/events{/privacy}","received_events_url":"https://api.github.com/users/hyperhq/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/hyperhq/hyperstart","description":"The tiny Init service for HyperContainer","fork":false,"url":"https://api.github.com/repos/hyperhq/hyperstart","forks_url":"https://api.github.com/repos/hyperhq/hyperstart/forks","keys_url":"https://api.github.com/repos/hyperhq/hyperstart/keys{/key_id}","collaborators_url":"https://api.github.com/repos/hyperhq/hyperstart/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/hyperhq/hyperstart/teams","hooks_url":"https://api.github.com/repos/hyperhq/hyperstart/hooks","issue_events_url":"https://api.github.com/repos/hyperhq/hyperstart/issues/events{/number}","events_url":"https://api.github.com/repos/hyperhq/hyperstart/events","assignees_url":"https://api.github.com/repos/hyperhq/hyperstart/assignees{/user}","branches_url":"https://api.github.com/repos/hyperhq/hyperstart/branches{/branch}","tags_url":"https://api.github.com/repos/hyperhq/hyperstart/tags","blobs_url":"https://api.github.com/repos/hyperhq/hyperstart/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/hyperhq/hyperstart/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/hyperhq/hyperstart/git/refs{/sha}","trees_url":"https://api.github.com/repos/hyperhq/hyperstart/git/trees{/sha}","statuses_url":"https://api.github.com/repos/hyperhq/hyperstart/statuses/{sha}","languages_url":"https://api.github.com/repos/hyperhq/hyperstart/languages","stargazers_url":"https://api.github.com/repos/hyperhq/hyperstart/stargazers","contributors_url":"https://api.github.com/repos/hyperhq/hyperstart/contributors","subscribers_url":"https://api.github.com/repos/hyperhq/hyperstart/subscribers","subscription_url":"https://api.github.com/repos/hyperhq/hyperstart/subscription","commits_url":"https://api.github.com/repos/hyperhq/hyperstart/commits{/sha}","git_commits_url":"https://api.github.com/repos/hyperhq/hyperstart/git/commits{/sha}","comments_url":"https://api.github.com/repos/hyperhq/hyperstart/comments{/number}","issue_comment_url":"https://api.github.com/repos/hyperhq/hyperstart/issues/comments{/number}","contents_url":"https://api.github.com/repos/hyperhq/hyperstart/contents/{+path}","compare_url":"https://api.github.com/repos/hyperhq/hyperstart/compare/{base}...{head}","merges_url":"https://api.github.com/repos/hyperhq/hyperstart/merges","archive_url":"https://api.github.com/repos/hyperhq/hyperstart/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/hyperhq/hyperstart/downloads","issues_url":"https://api.github.com/repos/hyperhq/hyperstart/issues{/number}","pulls_url":"https://api.github.com/repos/hyperhq/hyperstart/pulls{/number}","milestones_url":"https://api.github.com/repos/hyperhq/hyperstart/milestones{/number}","notifications_url":"https://api.github.com/repos/hyperhq/hyperstart/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/hyperhq/hyperstart/labels{/name}","releases_url":"https://api.github.com/repos/hyperhq/hyperstart/releases{/id}","deployments_url":"https://api.github.com/repos/hyperhq/hyperstart/deployments","created_at":"2015-05-25T06:24:46Z","updated_at":"2017-02-23T02:07:01Z","pushed_at":"2017-02-23T08:29:55Z","git_url":"git://github.com/hyperhq/hyperstart.git","ssh_url":"git@github.com:hyperhq/hyperstart.git","clone_url":"https://github.com/hyperhq/hyperstart.git","svn_url":"https://github.com/hyperhq/hyperstart","homepage":"https://www.hypercontainer.io","size":59894,"stargazers_count":75,"watchers_count":75,"language":"C","has_issues":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":39,"mirror_url":null,"open_issues_count":31,"forks":39,"open_issues":31,"watchers":75,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/hyperhq/hyperstart/pulls/249"},"html":{"href":"https://github.com/hyperhq/hyperstart/pull/249"},"issue":{"href":"https://api.github.com/repos/hyperhq/hyperstart/issues/249"},"comments":{"href":"https://api.github.com/repos/hyperhq/hyperstart/issues/249/comments"},"review_comments":{"href":"https://api.github.com/repos/hyperhq/hyperstart/pulls/249/comments"},"review_comment":{"href":"https://api.github.com/repos/hyperhq/hyperstart/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/hyperhq/hyperstart/pulls/249/commits"},"statuses":{"href":"https://api.github.com/repos/hyperhq/hyperstart/statuses/0dbe3f783d364dec5e633017863e18120224ccef"}}}}
{"actor":{"display_login":"bergwolf"}}