{"action":"created","comment":{"url":"https://api.github.com/repos/gwsystems/composite/pulls/comments/166994012","pull_request_review_id":95111566,"id":166994012,"diff_hunk":"@@ -640,6 +644,79 @@ cos_sinv(sinvcap_t sinv, word_t arg1, word_t arg2, word_t arg3, word_t arg4)\n \treturn call_cap_op(sinv, 0, arg1, arg2, arg3, arg4);\n }\n \n+/*\n+ * TODO:\n+ * talk about this naming choice\n+ * can't remember what Gabe thought was best choice here\n+ */\n+void *","path":"src/components/lib/cos_kernel_api.c","position":20,"original_position":20,"commit_id":"32b4a163212fa64f5a5721087d562e3c11be03e4","original_commit_id":"32b4a163212fa64f5a5721087d562e3c11be03e4","user":{"login":"gparmer","id":454733,"avatar_url":"https://avatars0.githubusercontent.com/u/454733?v=4","gravatar_id":"","url":"https://api.github.com/users/gparmer","html_url":"https://github.com/gparmer","followers_url":"https://api.github.com/users/gparmer/followers","following_url":"https://api.github.com/users/gparmer/following{/other_user}","gists_url":"https://api.github.com/users/gparmer/gists{/gist_id}","starred_url":"https://api.github.com/users/gparmer/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/gparmer/subscriptions","organizations_url":"https://api.github.com/users/gparmer/orgs","repos_url":"https://api.github.com/users/gparmer/repos","events_url":"https://api.github.com/users/gparmer/events{/privacy}","received_events_url":"https://api.github.com/users/gparmer/received_events","type":"User","site_admin":false},"body":"I agree that this seems out of place in `cos_kernel_api`.  Unfortunately our proxy for \"requires low-level access to direct capabilities to resources\" is \"uses cos_kernel_api\".  Perhaps the \"right way\" to handle this is the work that you're doing (@phanikishoreg) with the resource manager so that the component has access to *no* capabilities other than those given to it by the resource manager.\r\n\r\nIn the end, this call is a hack.  It is likely a hack that solves a problem with multiple booters are hierarchically arranged (i.e. *not* when we use the resource manager).  Given this, I think that @phanikishoreg is right:  This code should be in some part of the booter's library.\r\n\r\nIt cannot use an interface as the linker does not look at the booter's API to satisfy sinvs right now, and I don't want to hack that in.","created_at":"2018-02-08T16:38:20Z","updated_at":"2018-02-08T16:54:35Z","html_url":"https://github.com/gwsystems/composite/pull/309#discussion_r166994012","pull_request_url":"https://api.github.com/repos/gwsystems/composite/pulls/309","author_association":"COLLABORATOR","_links":{"self":{"href":"https://api.github.com/repos/gwsystems/composite/pulls/comments/166994012"},"html":{"href":"https://github.com/gwsystems/composite/pull/309#discussion_r166994012"},"pull_request":{"href":"https://api.github.com/repos/gwsystems/composite/pulls/309"}},"in_reply_to_id":166740712},"pull_request":{"url":"https://api.github.com/repos/gwsystems/composite/pulls/309","id":167335925,"html_url":"https://github.com/gwsystems/composite/pull/309","diff_url":"https://github.com/gwsystems/composite/pull/309.diff","patch_url":"https://github.com/gwsystems/composite/pull/309.patch","issue_url":"https://api.github.com/repos/gwsystems/composite/issues/309","number":309,"state":"open","locked":false,"title":"Thread initalization and Ubuntu 32bit 16.04 compilation updates","user":{"login":"RobertGiff","id":5796818,"avatar_url":"https://avatars3.githubusercontent.com/u/5796818?v=4","gravatar_id":"","url":"https://api.github.com/users/RobertGiff","html_url":"https://github.com/RobertGiff","followers_url":"https://api.github.com/users/RobertGiff/followers","following_url":"https://api.github.com/users/RobertGiff/following{/other_user}","gists_url":"https://api.github.com/users/RobertGiff/gists{/gist_id}","starred_url":"https://api.github.com/users/RobertGiff/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/RobertGiff/subscriptions","organizations_url":"https://api.github.com/users/RobertGiff/orgs","repos_url":"https://api.github.com/users/RobertGiff/repos","events_url":"https://api.github.com/users/RobertGiff/events{/privacy}","received_events_url":"https://api.github.com/users/RobertGiff/received_events","type":"User","site_admin":false},"body":"### Summary of this Pull Request (PR)\r\n\r\nThis PR is 2 fold:\r\n1. Defer initial thread creation from the booter to higher level schedulers\r\na. This involves the addition of a cos_kernel_api functionality to invoke the booter for various management resources\r\n2. Update the build system to enable and remove warnings for compiling on Ubuntu 16.04 LTS 32bit.\r\na. NOTE: There are just a couple of compilation warnings left when running `make init`. These stem from the C++ library as some functions have become deprecated. As I don't know C++, I didn't attempt to resolve those warnings.\r\n\r\nNOTE: The previous runscripts llbooter_poing.sh and llbooter_test.sh have been slightly updated within this PR to enable thread initialization within the booter. We simply take advantage of @maloneya `sl_` object prefix to enable the threads \"special privledge\" to have their init threads created by the booter.\r\n\r\n### Intent for your PR\r\n\r\nChoose one (Mandatory):\r\n\r\n- [X] This PR is for a code-review and is intended to get feedback, but not to be pulled yet.\r\n- [ ] This PR is mature, and ready to be integrated into the repo.\r\n\r\n### Reviewers (Mandatory):\r\n\r\n@gparmer, @lab176, @maloneya, @Others, @phanikishoreg \r\n\r\n### Code Quality\r\n\r\nAs part of this pull request, I've considered the following:\r\n\r\n[Style](https://github.com/gparmer/composite/raw/ppos/doc/style_guide/composite_coding_style.pdf):\r\n\r\n- [X] Comments adhere to the Style Guide (SG)\r\n- [X] Spacing adhere's to the SG\r\n- [X] Naming adhere's to the SG\r\n- [X] All other aspects of the SG are adhered to, or exceptions are justified in this pull request\r\n- [ ] I have run the auto formatter on my code before submitting this PR (see doc/auto_formatter.md for instructions)\r\n\r\n[Code Craftsmanship](http://www2.seas.gwu.edu/~gparmer/posts/2016-03-07-code-craftsmanship.html):\r\n\r\n- [X] I've made an attempt to remove all redundant code\r\n- [X] I've considered ways in which my changes might impact existing code, and cleaned it up\r\n- [X] I've formatted the code in an effort to make it easier to read (proper error handling, function use, etc...)\r\n- [X] I've commented appropriately where code is tricky\r\n- [X] I agree that there is no \"throw-away\" code, and that code in this PR is of high quality\r\n\r\n### Testing\r\n\r\nI've tested the code using the following test programs (provide list here):\r\n\r\n- llbooter_test.sh\r\n- rumpkernboot.sh (*rumpkernel branch only*)\r\n","created_at":"2018-02-06T07:10:34Z","updated_at":"2018-02-08T16:54:35Z","closed_at":null,"merged_at":null,"merge_commit_sha":"6c7003b9c39da998e42b0081180146d4479222ec","assignee":{"login":"RobertGiff","id":5796818,"avatar_url":"https://avatars3.githubusercontent.com/u/5796818?v=4","gravatar_id":"","url":"https://api.github.com/users/RobertGiff","html_url":"https://github.com/RobertGiff","followers_url":"https://api.github.com/users/RobertGiff/followers","following_url":"https://api.github.com/users/RobertGiff/following{/other_user}","gists_url":"https://api.github.com/users/RobertGiff/gists{/gist_id}","starred_url":"https://api.github.com/users/RobertGiff/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/RobertGiff/subscriptions","organizations_url":"https://api.github.com/users/RobertGiff/orgs","repos_url":"https://api.github.com/users/RobertGiff/repos","events_url":"https://api.github.com/users/RobertGiff/events{/privacy}","received_events_url":"https://api.github.com/users/RobertGiff/received_events","type":"User","site_admin":false},"assignees":[{"login":"RobertGiff","id":5796818,"avatar_url":"https://avatars3.githubusercontent.com/u/5796818?v=4","gravatar_id":"","url":"https://api.github.com/users/RobertGiff","html_url":"https://github.com/RobertGiff","followers_url":"https://api.github.com/users/RobertGiff/followers","following_url":"https://api.github.com/users/RobertGiff/following{/other_user}","gists_url":"https://api.github.com/users/RobertGiff/gists{/gist_id}","starred_url":"https://api.github.com/users/RobertGiff/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/RobertGiff/subscriptions","organizations_url":"https://api.github.com/users/RobertGiff/orgs","repos_url":"https://api.github.com/users/RobertGiff/repos","events_url":"https://api.github.com/users/RobertGiff/events{/privacy}","received_events_url":"https://api.github.com/users/RobertGiff/received_events","type":"User","site_admin":false}],"requested_reviewers":[{"login":"lab176","id":631197,"avatar_url":"https://avatars3.githubusercontent.com/u/631197?v=4","gravatar_id":"","url":"https://api.github.com/users/lab176","html_url":"https://github.com/lab176","followers_url":"https://api.github.com/users/lab176/followers","following_url":"https://api.github.com/users/lab176/following{/other_user}","gists_url":"https://api.github.com/users/lab176/gists{/gist_id}","starred_url":"https://api.github.com/users/lab176/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/lab176/subscriptions","organizations_url":"https://api.github.com/users/lab176/orgs","repos_url":"https://api.github.com/users/lab176/repos","events_url":"https://api.github.com/users/lab176/events{/privacy}","received_events_url":"https://api.github.com/users/lab176/received_events","type":"User","site_admin":false},{"login":"maloneya","id":9469738,"avatar_url":"https://avatars0.githubusercontent.com/u/9469738?v=4","gravatar_id":"","url":"https://api.github.com/users/maloneya","html_url":"https://github.com/maloneya","followers_url":"https://api.github.com/users/maloneya/followers","following_url":"https://api.github.com/users/maloneya/following{/other_user}","gists_url":"https://api.github.com/users/maloneya/gists{/gist_id}","starred_url":"https://api.github.com/users/maloneya/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/maloneya/subscriptions","organizations_url":"https://api.github.com/users/maloneya/orgs","repos_url":"https://api.github.com/users/maloneya/repos","events_url":"https://api.github.com/users/maloneya/events{/privacy}","received_events_url":"https://api.github.com/users/maloneya/received_events","type":"User","site_admin":false}],"requested_teams":[],"milestone":null,"commits_url":"https://api.github.com/repos/gwsystems/composite/pulls/309/commits","review_comments_url":"https://api.github.com/repos/gwsystems/composite/pulls/309/comments","review_comment_url":"https://api.github.com/repos/gwsystems/composite/pulls/comments{/number}","comments_url":"https://api.github.com/repos/gwsystems/composite/issues/309/comments","statuses_url":"https://api.github.com/repos/gwsystems/composite/statuses/32b4a163212fa64f5a5721087d562e3c11be03e4","head":{"label":"RobertGiff:ppos","ref":"ppos","sha":"32b4a163212fa64f5a5721087d562e3c11be03e4","user":{"login":"RobertGiff","id":5796818,"avatar_url":"https://avatars3.githubusercontent.com/u/5796818?v=4","gravatar_id":"","url":"https://api.github.com/users/RobertGiff","html_url":"https://github.com/RobertGiff","followers_url":"https://api.github.com/users/RobertGiff/followers","following_url":"https://api.github.com/users/RobertGiff/following{/other_user}","gists_url":"https://api.github.com/users/RobertGiff/gists{/gist_id}","starred_url":"https://api.github.com/users/RobertGiff/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/RobertGiff/subscriptions","organizations_url":"https://api.github.com/users/RobertGiff/orgs","repos_url":"https://api.github.com/users/RobertGiff/repos","events_url":"https://api.github.com/users/RobertGiff/events{/privacy}","received_events_url":"https://api.github.com/users/RobertGiff/received_events","type":"User","site_admin":false},"repo":{"id":38386076,"name":"Composite","full_name":"RobertGiff/Composite","owner":{"login":"RobertGiff","id":5796818,"avatar_url":"https://avatars3.githubusercontent.com/u/5796818?v=4","gravatar_id":"","url":"https://api.github.com/users/RobertGiff","html_url":"https://github.com/RobertGiff","followers_url":"https://api.github.com/users/RobertGiff/followers","following_url":"https://api.github.com/users/RobertGiff/following{/other_user}","gists_url":"https://api.github.com/users/RobertGiff/gists{/gist_id}","starred_url":"https://api.github.com/users/RobertGiff/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/RobertGiff/subscriptions","organizations_url":"https://api.github.com/users/RobertGiff/orgs","repos_url":"https://api.github.com/users/RobertGiff/repos","events_url":"https://api.github.com/users/RobertGiff/events{/privacy}","received_events_url":"https://api.github.com/users/RobertGiff/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/RobertGiff/Composite","description":"A component-based OS","fork":true,"url":"https://api.github.com/repos/RobertGiff/Composite","forks_url":"https://api.github.com/repos/RobertGiff/Composite/forks","keys_url":"https://api.github.com/repos/RobertGiff/Composite/keys{/key_id}","collaborators_url":"https://api.github.com/repos/RobertGiff/Composite/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/RobertGiff/Composite/teams","hooks_url":"https://api.github.com/repos/RobertGiff/Composite/hooks","issue_events_url":"https://api.github.com/repos/RobertGiff/Composite/issues/events{/number}","events_url":"https://api.github.com/repos/RobertGiff/Composite/events","assignees_url":"https://api.github.com/repos/RobertGiff/Composite/assignees{/user}","branches_url":"https://api.github.com/repos/RobertGiff/Composite/branches{/branch}","tags_url":"https://api.github.com/repos/RobertGiff/Composite/tags","blobs_url":"https://api.github.com/repos/RobertGiff/Composite/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/RobertGiff/Composite/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/RobertGiff/Composite/git/refs{/sha}","trees_url":"https://api.github.com/repos/RobertGiff/Composite/git/trees{/sha}","statuses_url":"https://api.github.com/repos/RobertGiff/Composite/statuses/{sha}","languages_url":"https://api.github.com/repos/RobertGiff/Composite/languages","stargazers_url":"https://api.github.com/repos/RobertGiff/Composite/stargazers","contributors_url":"https://api.github.com/repos/RobertGiff/Composite/contributors","subscribers_url":"https://api.github.com/repos/RobertGiff/Composite/subscribers","subscription_url":"https://api.github.com/repos/RobertGiff/Composite/subscription","commits_url":"https://api.github.com/repos/RobertGiff/Composite/commits{/sha}","git_commits_url":"https://api.github.com/repos/RobertGiff/Composite/git/commits{/sha}","comments_url":"https://api.github.com/repos/RobertGiff/Composite/comments{/number}","issue_comment_url":"https://api.github.com/repos/RobertGiff/Composite/issues/comments{/number}","contents_url":"https://api.github.com/repos/RobertGiff/Composite/contents/{+path}","compare_url":"https://api.github.com/repos/RobertGiff/Composite/compare/{base}...{head}","merges_url":"https://api.github.com/repos/RobertGiff/Composite/merges","archive_url":"https://api.github.com/repos/RobertGiff/Composite/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/RobertGiff/Composite/downloads","issues_url":"https://api.github.com/repos/RobertGiff/Composite/issues{/number}","pulls_url":"https://api.github.com/repos/RobertGiff/Composite/pulls{/number}","milestones_url":"https://api.github.com/repos/RobertGiff/Composite/milestones{/number}","notifications_url":"https://api.github.com/repos/RobertGiff/Composite/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/RobertGiff/Composite/labels{/name}","releases_url":"https://api.github.com/repos/RobertGiff/Composite/releases{/id}","deployments_url":"https://api.github.com/repos/RobertGiff/Composite/deployments","created_at":"2015-07-01T17:52:31Z","updated_at":"2017-09-05T01:33:56Z","pushed_at":"2018-02-06T07:08:20Z","git_url":"git://github.com/RobertGiff/Composite.git","ssh_url":"git@github.com:RobertGiff/Composite.git","clone_url":"https://github.com/RobertGiff/Composite.git","svn_url":"https://github.com/RobertGiff/Composite","homepage":"composite.seas.gwu.edu","size":23945,"stargazers_count":0,"watchers_count":0,"language":"C++","has_issues":false,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":0,"mirror_url":null,"archived":false,"open_issues_count":0,"license":null,"forks":0,"open_issues":0,"watchers":0,"default_branch":"ppos"}},"base":{"label":"gwsystems:ppos","ref":"ppos","sha":"e9a82d448e1e62dce40caf5db7f4c84b63d0ed74","user":{"login":"gwsystems","id":24600102,"avatar_url":"https://avatars2.githubusercontent.com/u/24600102?v=4","gravatar_id":"","url":"https://api.github.com/users/gwsystems","html_url":"https://github.com/gwsystems","followers_url":"https://api.github.com/users/gwsystems/followers","following_url":"https://api.github.com/users/gwsystems/following{/other_user}","gists_url":"https://api.github.com/users/gwsystems/gists{/gist_id}","starred_url":"https://api.github.com/users/gwsystems/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/gwsystems/subscriptions","organizations_url":"https://api.github.com/users/gwsystems/orgs","repos_url":"https://api.github.com/users/gwsystems/repos","events_url":"https://api.github.com/users/gwsystems/events{/privacy}","received_events_url":"https://api.github.com/users/gwsystems/received_events","type":"Organization","site_admin":false},"repo":{"id":3140667,"name":"composite","full_name":"gwsystems/composite","owner":{"login":"gwsystems","id":24600102,"avatar_url":"https://avatars2.githubusercontent.com/u/24600102?v=4","gravatar_id":"","url":"https://api.github.com/users/gwsystems","html_url":"https://github.com/gwsystems","followers_url":"https://api.github.com/users/gwsystems/followers","following_url":"https://api.github.com/users/gwsystems/following{/other_user}","gists_url":"https://api.github.com/users/gwsystems/gists{/gist_id}","starred_url":"https://api.github.com/users/gwsystems/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/gwsystems/subscriptions","organizations_url":"https://api.github.com/users/gwsystems/orgs","repos_url":"https://api.github.com/users/gwsystems/repos","events_url":"https://api.github.com/users/gwsystems/events{/privacy}","received_events_url":"https://api.github.com/users/gwsystems/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/gwsystems/composite","description":"A component-based OS","fork":false,"url":"https://api.github.com/repos/gwsystems/composite","forks_url":"https://api.github.com/repos/gwsystems/composite/forks","keys_url":"https://api.github.com/repos/gwsystems/composite/keys{/key_id}","collaborators_url":"https://api.github.com/repos/gwsystems/composite/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/gwsystems/composite/teams","hooks_url":"https://api.github.com/repos/gwsystems/composite/hooks","issue_events_url":"https://api.github.com/repos/gwsystems/composite/issues/events{/number}","events_url":"https://api.github.com/repos/gwsystems/composite/events","assignees_url":"https://api.github.com/repos/gwsystems/composite/assignees{/user}","branches_url":"https://api.github.com/repos/gwsystems/composite/branches{/branch}","tags_url":"https://api.github.com/repos/gwsystems/composite/tags","blobs_url":"https://api.github.com/repos/gwsystems/composite/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/gwsystems/composite/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/gwsystems/composite/git/refs{/sha}","trees_url":"https://api.github.com/repos/gwsystems/composite/git/trees{/sha}","statuses_url":"https://api.github.com/repos/gwsystems/composite/statuses/{sha}","languages_url":"https://api.github.com/repos/gwsystems/composite/languages","stargazers_url":"https://api.github.com/repos/gwsystems/composite/stargazers","contributors_url":"https://api.github.com/repos/gwsystems/composite/contributors","subscribers_url":"https://api.github.com/repos/gwsystems/composite/subscribers","subscription_url":"https://api.github.com/repos/gwsystems/composite/subscription","commits_url":"https://api.github.com/repos/gwsystems/composite/commits{/sha}","git_commits_url":"https://api.github.com/repos/gwsystems/composite/git/commits{/sha}","comments_url":"https://api.github.com/repos/gwsystems/composite/comments{/number}","issue_comment_url":"https://api.github.com/repos/gwsystems/composite/issues/comments{/number}","contents_url":"https://api.github.com/repos/gwsystems/composite/contents/{+path}","compare_url":"https://api.github.com/repos/gwsystems/composite/compare/{base}...{head}","merges_url":"https://api.github.com/repos/gwsystems/composite/merges","archive_url":"https://api.github.com/repos/gwsystems/composite/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/gwsystems/composite/downloads","issues_url":"https://api.github.com/repos/gwsystems/composite/issues{/number}","pulls_url":"https://api.github.com/repos/gwsystems/composite/pulls{/number}","milestones_url":"https://api.github.com/repos/gwsystems/composite/milestones{/number}","notifications_url":"https://api.github.com/repos/gwsystems/composite/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/gwsystems/composite/labels{/name}","releases_url":"https://api.github.com/repos/gwsystems/composite/releases{/id}","deployments_url":"https://api.github.com/repos/gwsystems/composite/deployments","created_at":"2012-01-09T22:20:27Z","updated_at":"2018-02-04T19:46:06Z","pushed_at":"2018-02-07T15:48:02Z","git_url":"git://github.com/gwsystems/composite.git","ssh_url":"git@github.com:gwsystems/composite.git","clone_url":"https://github.com/gwsystems/composite.git","svn_url":"https://github.com/gwsystems/composite","homepage":"composite.seas.gwu.edu","size":25416,"stargazers_count":58,"watchers_count":58,"language":"C++","has_issues":true,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":40,"mirror_url":null,"archived":false,"open_issues_count":67,"license":null,"forks":40,"open_issues":67,"watchers":58,"default_branch":"ppos"}},"_links":{"self":{"href":"https://api.github.com/repos/gwsystems/composite/pulls/309"},"html":{"href":"https://github.com/gwsystems/composite/pull/309"},"issue":{"href":"https://api.github.com/repos/gwsystems/composite/issues/309"},"comments":{"href":"https://api.github.com/repos/gwsystems/composite/issues/309/comments"},"review_comments":{"href":"https://api.github.com/repos/gwsystems/composite/pulls/309/comments"},"review_comment":{"href":"https://api.github.com/repos/gwsystems/composite/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/gwsystems/composite/pulls/309/commits"},"statuses":{"href":"https://api.github.com/repos/gwsystems/composite/statuses/32b4a163212fa64f5a5721087d562e3c11be03e4"}},"author_association":"CONTRIBUTOR"}}
{"actor":{"display_login":"gparmer"}}