{"action":"created","comment":{"url":"https://api.github.com/repos/zephyrproject-rtos/zephyr/pulls/comments/153637932","pull_request_review_id":79673774,"id":153637932,"diff_hunk":"@@ -0,0 +1,178 @@\n+/*\n+ * Userspace and service handler hooks\n+ *\n+ * Copyright (c) 2017 Linaro Limited\n+ *\n+ * SPDX-License-Identifier: Apache-2.0\n+ *\n+ */\n+\n+#include <offsets_short.h>\n+#include <toolchain.h>\n+#include <linker/sections.h>\n+#include <kernel_structs.h>\n+#include <arch/cpu.h>\n+#include <syscall.h>\n+\n+_ASM_FILE_PROLOGUE\n+\n+GTEXT(_arm_userspace_enter)\n+GTEXT(_arm_do_syscall)\n+GDATA(_kernel)\n+\n+/* Imports */\n+GTEXT(_k_syscall_table)\n+\n+/**\n+ *\n+ * User space entry function\n+ *\n+ * This function is the entry point to user mode from privileged execution.\n+ * The conversion is one way, and threads which transition to user mode do\n+ * not transition back later, unless they are doing system calls.\n+ *\n+ */\n+SECTION_FUNC(TEXT,_arm_userspace_enter)\n+    /* preserve arguments */\n+    mov lr, r0\n+\n+    /*\n+     * calculate end of stack and set SP to it\n+     */\n+    ldr r0, [sp]\n+    ldr ip, [sp,#4]\n+    add r0, ip\n+\n+    msr PSP, r0\n+\n+    /* push args to stack */\n+    push {r1,r2,r3,lr}\n+\n+    /* clear the stack area to clean out privileged data */\n+    /* from right past the guard right up to the args */\n+    mrs r0, PSP\n+#ifdef CONFIG_INIT_STACKS\n+    ldr r1,=0xaaaaaaaa\n+#else\n+    ldr r1,=0\n+#endif\n+    mov r2, ip\n+    sub r2, #16\t\t/* don't erase the pushed regs */\n+#ifdef CONFIG_MPU_STACK_GUARD\n+    ldr r3, =MPU_GUARD_ALIGN_AND_SIZE\n+    sub r2, r3\n+    add r0, r3\n+#endif\n+    bl memset\n+\n+    /* setup arguments to thread_entry function */\n+    ldr r0, =_kernel\n+    ldr r0, [r0, #_kernel_offset_to_current]\n+    bl configure_mpu_user_stack_context\n+\n+    pop {r0,r1,r2,lr}\n+    /* change processor mode to unprivileged */\n+    mov ip, #3\n+    msr CONTROL, ip\n+\n+    /* jump to user entry */\n+    bx lr\n+\n+/**\n+ *\n+ * Userspace system call function\n+ *\n+ * This function is used to do system calls from unprivileged code.  This\n+ * function is responsible for the following:\n+ * 1) Fixing up bad syscalls\n+ * 2) Configuring privileged stack and loading up stack arguments\n+ * 3) Dispatching the system call\n+ * 4) Restoring stack and calling back to the caller of the SVC\n+ *\n+ */\n+SECTION_FUNC(TEXT, _arm_do_syscall)\n+    /*\n+     * r0-r3 are values from pre-SVC from stack frame stored during SVC\n+     * 16 bytes of storage reside on the stack:\n+     * arg5, arg6, call_id, and LR from SVC frame\n+     */\n+    push {r4,r5,r6,lr}\n+\n+    ldr r4, =_SYSCALL_LIMIT","path":"arch/arm/core/userspace.S","position":101,"original_position":101,"commit_id":"fe9b63088d3a8e699333abab09b737b4cd967f3f","original_commit_id":"fe9b63088d3a8e699333abab09b737b4cd967f3f","user":{"login":"agross-linaro","id":28376145,"avatar_url":"https://avatars1.githubusercontent.com/u/28376145?v=4","gravatar_id":"","url":"https://api.github.com/users/agross-linaro","html_url":"https://github.com/agross-linaro","followers_url":"https://api.github.com/users/agross-linaro/followers","following_url":"https://api.github.com/users/agross-linaro/following{/other_user}","gists_url":"https://api.github.com/users/agross-linaro/gists{/gist_id}","starred_url":"https://api.github.com/users/agross-linaro/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/agross-linaro/subscriptions","organizations_url":"https://api.github.com/users/agross-linaro/orgs","repos_url":"https://api.github.com/users/agross-linaro/repos","events_url":"https://api.github.com/users/agross-linaro/events{/privacy}","received_events_url":"https://api.github.com/users/agross-linaro/received_events","type":"User","site_admin":false},"body":"because at the end of the svc, all of the registers are reset back to what they were before and the exception frame is popped off the stack.  So at the point where we enter the actual syscall, we have r0/r1/r2/r3 holding arguments, and the stack holding arg5/arg6/call_id/lr.  If I overwrite the call_id with the SYSCALL_BAD, then we lose the call_id information.\r\n\r\nI suppose I could go ahead and overwrite the arg0 with the bogus sycall value, and overwrite the call_id stack entry with the SYSCALL_BAD and just dispatch it like usual.","created_at":"2017-11-28T22:07:59Z","updated_at":"2017-11-28T22:07:59Z","html_url":"https://github.com/zephyrproject-rtos/zephyr/pull/4974#discussion_r153637932","pull_request_url":"https://api.github.com/repos/zephyrproject-rtos/zephyr/pulls/4974","author_association":"COLLABORATOR","_links":{"self":{"href":"https://api.github.com/repos/zephyrproject-rtos/zephyr/pulls/comments/153637932"},"html":{"href":"https://github.com/zephyrproject-rtos/zephyr/pull/4974#discussion_r153637932"},"pull_request":{"href":"https://api.github.com/repos/zephyrproject-rtos/zephyr/pulls/4974"}},"in_reply_to_id":153282981},"pull_request":{"url":"https://api.github.com/repos/zephyrproject-rtos/zephyr/pulls/4974","id":152625009,"html_url":"https://github.com/zephyrproject-rtos/zephyr/pull/4974","diff_url":"https://github.com/zephyrproject-rtos/zephyr/pull/4974.diff","patch_url":"https://github.com/zephyrproject-rtos/zephyr/pull/4974.patch","issue_url":"https://api.github.com/repos/zephyrproject-rtos/zephyr/issues/4974","number":4974,"state":"open","locked":false,"title":"Add ARM userspace infrastructure","user":{"login":"agross-linaro","id":28376145,"avatar_url":"https://avatars1.githubusercontent.com/u/28376145?v=4","gravatar_id":"","url":"https://api.github.com/users/agross-linaro","html_url":"https://github.com/agross-linaro","followers_url":"https://api.github.com/users/agross-linaro/followers","following_url":"https://api.github.com/users/agross-linaro/following{/other_user}","gists_url":"https://api.github.com/users/agross-linaro/gists{/gist_id}","starred_url":"https://api.github.com/users/agross-linaro/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/agross-linaro/subscriptions","organizations_url":"https://api.github.com/users/agross-linaro/orgs","repos_url":"https://api.github.com/users/agross-linaro/repos","events_url":"https://api.github.com/users/agross-linaro/events{/privacy}","received_events_url":"https://api.github.com/users/agross-linaro/received_events","type":"User","site_admin":false},"body":"This patch set adds the ARM based userspace infrastructure.  The patches include all the parts to get system calls, demoting threads to user mode, etc.","created_at":"2017-11-14T21:39:36Z","updated_at":"2017-11-28T22:07:59Z","closed_at":null,"merged_at":null,"merge_commit_sha":"7021bb61115288d55517d9e9af30d207f6c19e0d","assignee":{"login":"andrewboie","id":3387369,"avatar_url":"https://avatars1.githubusercontent.com/u/3387369?v=4","gravatar_id":"","url":"https://api.github.com/users/andrewboie","html_url":"https://github.com/andrewboie","followers_url":"https://api.github.com/users/andrewboie/followers","following_url":"https://api.github.com/users/andrewboie/following{/other_user}","gists_url":"https://api.github.com/users/andrewboie/gists{/gist_id}","starred_url":"https://api.github.com/users/andrewboie/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/andrewboie/subscriptions","organizations_url":"https://api.github.com/users/andrewboie/orgs","repos_url":"https://api.github.com/users/andrewboie/repos","events_url":"https://api.github.com/users/andrewboie/events{/privacy}","received_events_url":"https://api.github.com/users/andrewboie/received_events","type":"User","site_admin":false},"assignees":[{"login":"andrewboie","id":3387369,"avatar_url":"https://avatars1.githubusercontent.com/u/3387369?v=4","gravatar_id":"","url":"https://api.github.com/users/andrewboie","html_url":"https://github.com/andrewboie","followers_url":"https://api.github.com/users/andrewboie/followers","following_url":"https://api.github.com/users/andrewboie/following{/other_user}","gists_url":"https://api.github.com/users/andrewboie/gists{/gist_id}","starred_url":"https://api.github.com/users/andrewboie/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/andrewboie/subscriptions","organizations_url":"https://api.github.com/users/andrewboie/orgs","repos_url":"https://api.github.com/users/andrewboie/repos","events_url":"https://api.github.com/users/andrewboie/events{/privacy}","received_events_url":"https://api.github.com/users/andrewboie/received_events","type":"User","site_admin":false}],"requested_reviewers":[{"login":"d3zd3z","id":90349,"avatar_url":"https://avatars3.githubusercontent.com/u/90349?v=4","gravatar_id":"","url":"https://api.github.com/users/d3zd3z","html_url":"https://github.com/d3zd3z","followers_url":"https://api.github.com/users/d3zd3z/followers","following_url":"https://api.github.com/users/d3zd3z/following{/other_user}","gists_url":"https://api.github.com/users/d3zd3z/gists{/gist_id}","starred_url":"https://api.github.com/users/d3zd3z/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/d3zd3z/subscriptions","organizations_url":"https://api.github.com/users/d3zd3z/orgs","repos_url":"https://api.github.com/users/d3zd3z/repos","events_url":"https://api.github.com/users/d3zd3z/events{/privacy}","received_events_url":"https://api.github.com/users/d3zd3z/received_events","type":"User","site_admin":false},{"login":"nashif","id":180017,"avatar_url":"https://avatars0.githubusercontent.com/u/180017?v=4","gravatar_id":"","url":"https://api.github.com/users/nashif","html_url":"https://github.com/nashif","followers_url":"https://api.github.com/users/nashif/followers","following_url":"https://api.github.com/users/nashif/following{/other_user}","gists_url":"https://api.github.com/users/nashif/gists{/gist_id}","starred_url":"https://api.github.com/users/nashif/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/nashif/subscriptions","organizations_url":"https://api.github.com/users/nashif/orgs","repos_url":"https://api.github.com/users/nashif/repos","events_url":"https://api.github.com/users/nashif/events{/privacy}","received_events_url":"https://api.github.com/users/nashif/received_events","type":"User","site_admin":false},{"login":"andyross","id":300115,"avatar_url":"https://avatars1.githubusercontent.com/u/300115?v=4","gravatar_id":"","url":"https://api.github.com/users/andyross","html_url":"https://github.com/andyross","followers_url":"https://api.github.com/users/andyross/followers","following_url":"https://api.github.com/users/andyross/following{/other_user}","gists_url":"https://api.github.com/users/andyross/gists{/gist_id}","starred_url":"https://api.github.com/users/andyross/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/andyross/subscriptions","organizations_url":"https://api.github.com/users/andyross/orgs","repos_url":"https://api.github.com/users/andyross/repos","events_url":"https://api.github.com/users/andyross/events{/privacy}","received_events_url":"https://api.github.com/users/andyross/received_events","type":"User","site_admin":false},{"login":"ruuddw","id":2699612,"avatar_url":"https://avatars2.githubusercontent.com/u/2699612?v=4","gravatar_id":"","url":"https://api.github.com/users/ruuddw","html_url":"https://github.com/ruuddw","followers_url":"https://api.github.com/users/ruuddw/followers","following_url":"https://api.github.com/users/ruuddw/following{/other_user}","gists_url":"https://api.github.com/users/ruuddw/gists{/gist_id}","starred_url":"https://api.github.com/users/ruuddw/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ruuddw/subscriptions","organizations_url":"https://api.github.com/users/ruuddw/orgs","repos_url":"https://api.github.com/users/ruuddw/repos","events_url":"https://api.github.com/users/ruuddw/events{/privacy}","received_events_url":"https://api.github.com/users/ruuddw/received_events","type":"User","site_admin":false},{"login":"MaureenHelm","id":6172539,"avatar_url":"https://avatars2.githubusercontent.com/u/6172539?v=4","gravatar_id":"","url":"https://api.github.com/users/MaureenHelm","html_url":"https://github.com/MaureenHelm","followers_url":"https://api.github.com/users/MaureenHelm/followers","following_url":"https://api.github.com/users/MaureenHelm/following{/other_user}","gists_url":"https://api.github.com/users/MaureenHelm/gists{/gist_id}","starred_url":"https://api.github.com/users/MaureenHelm/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/MaureenHelm/subscriptions","organizations_url":"https://api.github.com/users/MaureenHelm/orgs","repos_url":"https://api.github.com/users/MaureenHelm/repos","events_url":"https://api.github.com/users/MaureenHelm/events{/privacy}","received_events_url":"https://api.github.com/users/MaureenHelm/received_events","type":"User","site_admin":false},{"login":"AdithyaBaglody","id":28291723,"avatar_url":"https://avatars3.githubusercontent.com/u/28291723?v=4","gravatar_id":"","url":"https://api.github.com/users/AdithyaBaglody","html_url":"https://github.com/AdithyaBaglody","followers_url":"https://api.github.com/users/AdithyaBaglody/followers","following_url":"https://api.github.com/users/AdithyaBaglody/following{/other_user}","gists_url":"https://api.github.com/users/AdithyaBaglody/gists{/gist_id}","starred_url":"https://api.github.com/users/AdithyaBaglody/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/AdithyaBaglody/subscriptions","organizations_url":"https://api.github.com/users/AdithyaBaglody/orgs","repos_url":"https://api.github.com/users/AdithyaBaglody/repos","events_url":"https://api.github.com/users/AdithyaBaglody/events{/privacy}","received_events_url":"https://api.github.com/users/AdithyaBaglody/received_events","type":"User","site_admin":false}],"milestone":{"url":"https://api.github.com/repos/zephyrproject-rtos/zephyr/milestones/22","html_url":"https://github.com/zephyrproject-rtos/zephyr/milestone/22","labels_url":"https://api.github.com/repos/zephyrproject-rtos/zephyr/milestones/22/labels","id":2786859,"number":22,"title":"v1.11.0","description":null,"creator":{"login":"zephyrbot","id":26360365,"avatar_url":"https://avatars1.githubusercontent.com/u/26360365?v=4","gravatar_id":"","url":"https://api.github.com/users/zephyrbot","html_url":"https://github.com/zephyrbot","followers_url":"https://api.github.com/users/zephyrbot/followers","following_url":"https://api.github.com/users/zephyrbot/following{/other_user}","gists_url":"https://api.github.com/users/zephyrbot/gists{/gist_id}","starred_url":"https://api.github.com/users/zephyrbot/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/zephyrbot/subscriptions","organizations_url":"https://api.github.com/users/zephyrbot/orgs","repos_url":"https://api.github.com/users/zephyrbot/repos","events_url":"https://api.github.com/users/zephyrbot/events{/privacy}","received_events_url":"https://api.github.com/users/zephyrbot/received_events","type":"User","site_admin":false},"open_issues":49,"closed_issues":2,"state":"open","created_at":"2017-09-23T12:48:19Z","updated_at":"2017-11-28T20:04:26Z","due_on":null,"closed_at":null},"commits_url":"https://api.github.com/repos/zephyrproject-rtos/zephyr/pulls/4974/commits","review_comments_url":"https://api.github.com/repos/zephyrproject-rtos/zephyr/pulls/4974/comments","review_comment_url":"https://api.github.com/repos/zephyrproject-rtos/zephyr/pulls/comments{/number}","comments_url":"https://api.github.com/repos/zephyrproject-rtos/zephyr/issues/4974/comments","statuses_url":"https://api.github.com/repos/zephyrproject-rtos/zephyr/statuses/fe9b63088d3a8e699333abab09b737b4cd967f3f","head":{"label":"agross-linaro:userspace","ref":"userspace","sha":"fe9b63088d3a8e699333abab09b737b4cd967f3f","user":{"login":"agross-linaro","id":28376145,"avatar_url":"https://avatars1.githubusercontent.com/u/28376145?v=4","gravatar_id":"","url":"https://api.github.com/users/agross-linaro","html_url":"https://github.com/agross-linaro","followers_url":"https://api.github.com/users/agross-linaro/followers","following_url":"https://api.github.com/users/agross-linaro/following{/other_user}","gists_url":"https://api.github.com/users/agross-linaro/gists{/gist_id}","starred_url":"https://api.github.com/users/agross-linaro/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/agross-linaro/subscriptions","organizations_url":"https://api.github.com/users/agross-linaro/orgs","repos_url":"https://api.github.com/users/agross-linaro/repos","events_url":"https://api.github.com/users/agross-linaro/events{/privacy}","received_events_url":"https://api.github.com/users/agross-linaro/received_events","type":"User","site_admin":false},"repo":{"id":92018381,"name":"zephyr","full_name":"agross-linaro/zephyr","owner":{"login":"agross-linaro","id":28376145,"avatar_url":"https://avatars1.githubusercontent.com/u/28376145?v=4","gravatar_id":"","url":"https://api.github.com/users/agross-linaro","html_url":"https://github.com/agross-linaro","followers_url":"https://api.github.com/users/agross-linaro/followers","following_url":"https://api.github.com/users/agross-linaro/following{/other_user}","gists_url":"https://api.github.com/users/agross-linaro/gists{/gist_id}","starred_url":"https://api.github.com/users/agross-linaro/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/agross-linaro/subscriptions","organizations_url":"https://api.github.com/users/agross-linaro/orgs","repos_url":"https://api.github.com/users/agross-linaro/repos","events_url":"https://api.github.com/users/agross-linaro/events{/privacy}","received_events_url":"https://api.github.com/users/agross-linaro/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/agross-linaro/zephyr","description":"Primary GIT Repository for the Zephyr Project","fork":true,"url":"https://api.github.com/repos/agross-linaro/zephyr","forks_url":"https://api.github.com/repos/agross-linaro/zephyr/forks","keys_url":"https://api.github.com/repos/agross-linaro/zephyr/keys{/key_id}","collaborators_url":"https://api.github.com/repos/agross-linaro/zephyr/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/agross-linaro/zephyr/teams","hooks_url":"https://api.github.com/repos/agross-linaro/zephyr/hooks","issue_events_url":"https://api.github.com/repos/agross-linaro/zephyr/issues/events{/number}","events_url":"https://api.github.com/repos/agross-linaro/zephyr/events","assignees_url":"https://api.github.com/repos/agross-linaro/zephyr/assignees{/user}","branches_url":"https://api.github.com/repos/agross-linaro/zephyr/branches{/branch}","tags_url":"https://api.github.com/repos/agross-linaro/zephyr/tags","blobs_url":"https://api.github.com/repos/agross-linaro/zephyr/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/agross-linaro/zephyr/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/agross-linaro/zephyr/git/refs{/sha}","trees_url":"https://api.github.com/repos/agross-linaro/zephyr/git/trees{/sha}","statuses_url":"https://api.github.com/repos/agross-linaro/zephyr/statuses/{sha}","languages_url":"https://api.github.com/repos/agross-linaro/zephyr/languages","stargazers_url":"https://api.github.com/repos/agross-linaro/zephyr/stargazers","contributors_url":"https://api.github.com/repos/agross-linaro/zephyr/contributors","subscribers_url":"https://api.github.com/repos/agross-linaro/zephyr/subscribers","subscription_url":"https://api.github.com/repos/agross-linaro/zephyr/subscription","commits_url":"https://api.github.com/repos/agross-linaro/zephyr/commits{/sha}","git_commits_url":"https://api.github.com/repos/agross-linaro/zephyr/git/commits{/sha}","comments_url":"https://api.github.com/repos/agross-linaro/zephyr/comments{/number}","issue_comment_url":"https://api.github.com/repos/agross-linaro/zephyr/issues/comments{/number}","contents_url":"https://api.github.com/repos/agross-linaro/zephyr/contents/{+path}","compare_url":"https://api.github.com/repos/agross-linaro/zephyr/compare/{base}...{head}","merges_url":"https://api.github.com/repos/agross-linaro/zephyr/merges","archive_url":"https://api.github.com/repos/agross-linaro/zephyr/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/agross-linaro/zephyr/downloads","issues_url":"https://api.github.com/repos/agross-linaro/zephyr/issues{/number}","pulls_url":"https://api.github.com/repos/agross-linaro/zephyr/pulls{/number}","milestones_url":"https://api.github.com/repos/agross-linaro/zephyr/milestones{/number}","notifications_url":"https://api.github.com/repos/agross-linaro/zephyr/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/agross-linaro/zephyr/labels{/name}","releases_url":"https://api.github.com/repos/agross-linaro/zephyr/releases{/id}","deployments_url":"https://api.github.com/repos/agross-linaro/zephyr/deployments","created_at":"2017-05-22T06:21:08Z","updated_at":"2017-05-22T06:21:43Z","pushed_at":"2017-11-28T06:36:48Z","git_url":"git://github.com/agross-linaro/zephyr.git","ssh_url":"git@github.com:agross-linaro/zephyr.git","clone_url":"https://github.com/agross-linaro/zephyr.git","svn_url":"https://github.com/agross-linaro/zephyr","homepage":"http://zephyrproject.org/doc","size":93969,"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":"master"}},"base":{"label":"zephyrproject-rtos:master","ref":"master","sha":"cb9390c791f25a6787e07de085375eab96d29e5c","user":{"login":"zephyrproject-rtos","id":19595895,"avatar_url":"https://avatars2.githubusercontent.com/u/19595895?v=4","gravatar_id":"","url":"https://api.github.com/users/zephyrproject-rtos","html_url":"https://github.com/zephyrproject-rtos","followers_url":"https://api.github.com/users/zephyrproject-rtos/followers","following_url":"https://api.github.com/users/zephyrproject-rtos/following{/other_user}","gists_url":"https://api.github.com/users/zephyrproject-rtos/gists{/gist_id}","starred_url":"https://api.github.com/users/zephyrproject-rtos/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/zephyrproject-rtos/subscriptions","organizations_url":"https://api.github.com/users/zephyrproject-rtos/orgs","repos_url":"https://api.github.com/users/zephyrproject-rtos/repos","events_url":"https://api.github.com/users/zephyrproject-rtos/events{/privacy}","received_events_url":"https://api.github.com/users/zephyrproject-rtos/received_events","type":"Organization","site_admin":false},"repo":{"id":59771425,"name":"zephyr","full_name":"zephyrproject-rtos/zephyr","owner":{"login":"zephyrproject-rtos","id":19595895,"avatar_url":"https://avatars2.githubusercontent.com/u/19595895?v=4","gravatar_id":"","url":"https://api.github.com/users/zephyrproject-rtos","html_url":"https://github.com/zephyrproject-rtos","followers_url":"https://api.github.com/users/zephyrproject-rtos/followers","following_url":"https://api.github.com/users/zephyrproject-rtos/following{/other_user}","gists_url":"https://api.github.com/users/zephyrproject-rtos/gists{/gist_id}","starred_url":"https://api.github.com/users/zephyrproject-rtos/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/zephyrproject-rtos/subscriptions","organizations_url":"https://api.github.com/users/zephyrproject-rtos/orgs","repos_url":"https://api.github.com/users/zephyrproject-rtos/repos","events_url":"https://api.github.com/users/zephyrproject-rtos/events{/privacy}","received_events_url":"https://api.github.com/users/zephyrproject-rtos/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/zephyrproject-rtos/zephyr","description":"Primary GIT Repository for the Zephyr Project","fork":false,"url":"https://api.github.com/repos/zephyrproject-rtos/zephyr","forks_url":"https://api.github.com/repos/zephyrproject-rtos/zephyr/forks","keys_url":"https://api.github.com/repos/zephyrproject-rtos/zephyr/keys{/key_id}","collaborators_url":"https://api.github.com/repos/zephyrproject-rtos/zephyr/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/zephyrproject-rtos/zephyr/teams","hooks_url":"https://api.github.com/repos/zephyrproject-rtos/zephyr/hooks","issue_events_url":"https://api.github.com/repos/zephyrproject-rtos/zephyr/issues/events{/number}","events_url":"https://api.github.com/repos/zephyrproject-rtos/zephyr/events","assignees_url":"https://api.github.com/repos/zephyrproject-rtos/zephyr/assignees{/user}","branches_url":"https://api.github.com/repos/zephyrproject-rtos/zephyr/branches{/branch}","tags_url":"https://api.github.com/repos/zephyrproject-rtos/zephyr/tags","blobs_url":"https://api.github.com/repos/zephyrproject-rtos/zephyr/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/zephyrproject-rtos/zephyr/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/zephyrproject-rtos/zephyr/git/refs{/sha}","trees_url":"https://api.github.com/repos/zephyrproject-rtos/zephyr/git/trees{/sha}","statuses_url":"https://api.github.com/repos/zephyrproject-rtos/zephyr/statuses/{sha}","languages_url":"https://api.github.com/repos/zephyrproject-rtos/zephyr/languages","stargazers_url":"https://api.github.com/repos/zephyrproject-rtos/zephyr/stargazers","contributors_url":"https://api.github.com/repos/zephyrproject-rtos/zephyr/contributors","subscribers_url":"https://api.github.com/repos/zephyrproject-rtos/zephyr/subscribers","subscription_url":"https://api.github.com/repos/zephyrproject-rtos/zephyr/subscription","commits_url":"https://api.github.com/repos/zephyrproject-rtos/zephyr/commits{/sha}","git_commits_url":"https://api.github.com/repos/zephyrproject-rtos/zephyr/git/commits{/sha}","comments_url":"https://api.github.com/repos/zephyrproject-rtos/zephyr/comments{/number}","issue_comment_url":"https://api.github.com/repos/zephyrproject-rtos/zephyr/issues/comments{/number}","contents_url":"https://api.github.com/repos/zephyrproject-rtos/zephyr/contents/{+path}","compare_url":"https://api.github.com/repos/zephyrproject-rtos/zephyr/compare/{base}...{head}","merges_url":"https://api.github.com/repos/zephyrproject-rtos/zephyr/merges","archive_url":"https://api.github.com/repos/zephyrproject-rtos/zephyr/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/zephyrproject-rtos/zephyr/downloads","issues_url":"https://api.github.com/repos/zephyrproject-rtos/zephyr/issues{/number}","pulls_url":"https://api.github.com/repos/zephyrproject-rtos/zephyr/pulls{/number}","milestones_url":"https://api.github.com/repos/zephyrproject-rtos/zephyr/milestones{/number}","notifications_url":"https://api.github.com/repos/zephyrproject-rtos/zephyr/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/zephyrproject-rtos/zephyr/labels{/name}","releases_url":"https://api.github.com/repos/zephyrproject-rtos/zephyr/releases{/id}","deployments_url":"https://api.github.com/repos/zephyrproject-rtos/zephyr/deployments","created_at":"2016-05-26T17:54:19Z","updated_at":"2017-11-28T19:20:09Z","pushed_at":"2017-11-28T21:48:43Z","git_url":"git://github.com/zephyrproject-rtos/zephyr.git","ssh_url":"git@github.com:zephyrproject-rtos/zephyr.git","clone_url":"https://github.com/zephyrproject-rtos/zephyr.git","svn_url":"https://github.com/zephyrproject-rtos/zephyr","homepage":"http://zephyrproject.org/doc","size":94476,"stargazers_count":490,"watchers_count":490,"language":"C","has_issues":true,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":371,"mirror_url":null,"archived":false,"open_issues_count":686,"license":{"key":"apache-2.0","name":"Apache License 2.0","spdx_id":"Apache-2.0","url":"https://api.github.com/licenses/apache-2.0"},"forks":371,"open_issues":686,"watchers":490,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/zephyrproject-rtos/zephyr/pulls/4974"},"html":{"href":"https://github.com/zephyrproject-rtos/zephyr/pull/4974"},"issue":{"href":"https://api.github.com/repos/zephyrproject-rtos/zephyr/issues/4974"},"comments":{"href":"https://api.github.com/repos/zephyrproject-rtos/zephyr/issues/4974/comments"},"review_comments":{"href":"https://api.github.com/repos/zephyrproject-rtos/zephyr/pulls/4974/comments"},"review_comment":{"href":"https://api.github.com/repos/zephyrproject-rtos/zephyr/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/zephyrproject-rtos/zephyr/pulls/4974/commits"},"statuses":{"href":"https://api.github.com/repos/zephyrproject-rtos/zephyr/statuses/fe9b63088d3a8e699333abab09b737b4cd967f3f"}},"author_association":"COLLABORATOR"}}
{"actor":{"display_login":"agross-linaro"}}