{"action":"created","comment":{"url":"https://api.github.com/repos/zfsonlinux/zfs/pulls/comments/30607033","id":30607033,"diff_hunk":"@@ -0,0 +1,405 @@\n+# This is a script with common functions etc used by zfs-import, zfs-mount,\n+# zfs-share and zfs-zed.\n+#\n+# It is _NOT_ to be called independently\n+\n+PATH=/sbin:/bin:/usr/bin:/usr/sbin\n+\n+# Source function library\n+if [ -f /lib/lsb/init-functions ]; then\n+\t. /lib/lsb/init-functions\n+elif [ -f /etc/rc.d/init.d/functions ]; then\n+\t. /etc/rc.d/init.d/functions\n+elif [ -L /etc/init.d/functions.sh ]; then\n+\t. /etc/init.d/functions.sh\n+fi\n+\n+# Of course the functions we need is called differently\n+# on different distributions - it would be way to easy\n+# otherwise!!\n+if type log_failure_msg > /dev/null 2>&1 ; then\n+\t# LSB functions - fall through\n+\tzfs_log_begin_msg() { log_begin_msg \"$1\"; }\n+\tzfs_log_end_msg() { log_end_msg \"$1\"; }\n+\tzfs_log_failure_msg() { log_failure_msg \"$1\"; }\n+\tzfs_log_progress_msg() { log_progress_msg \"$1\"; }\n+elif type success > /dev/null 2>&1 ; then\n+\t# Fedora/RedHat functions - $success and $failure defined in the lib.\n+\tzfs_log_begin_msg() { echo -n \"$1\"; }\n+\tzfs_log_end_msg() { success $\"success\"; echo; }\n+\tzfs_log_failure_msg() { failure $\"failure\"; echo; }\n+\tzfs_log_progress_msg() { echo -n \"$1\"; }\n+elif type einfo > /dev/null 2>&1 ; then\n+\t# Gentoo functions\n+\tzfs_log_begin_msg() { ebegin \"$1\"; }\n+\tzfs_log_end_msg() { eend \"$1\"; }\n+\tzfs_log_failure_msg() { eerror \"$1\"; }\n+#\tzfs_log_progress_msg() { echo -n \"$1\"; }\n+\tzfs_log_progress_msg() { echo -n; }\n+else\n+\t# Unknown - simple substitues.\n+\tzfs_log_begin_msg() { echo -n \"$1\"; }\n+\tzfs_log_end_msg() {\n+\t\tret=$1\n+\t\tif [ \"$ret\" -ge 1 ]; then\n+\t\t\techo \" failed!\"\n+\t\telse\n+\t\t\techo \" success\"\n+\t\tfi\n+\t\treturn \"$ret\"\n+\t}\n+\tzfs_log_failure_msg() { echo \"$1\"; }\n+\tzfs_log_progress_msg() { echo -n \"$1\"; }\n+fi\n+\n+# Paths to what we need\n+ZFS=\"@sbindir@/zfs\"\n+ZED=\"@sbindir@/zed\"\n+ZPOOL=\"@sbindir@/zpool\"\n+ZPOOL_CACHE=\"@sysconfdir@/zfs/zpool.cache\"\n+\n+# Sensible defaults\n+ZFS_MOUNT='yes'\n+ZFS_UNMOUNT='yes'\n+\n+export ZFS ZED ZPOOL ZPOOL_CACHE ZFS_MOUNT ZFS_UNMOUNT\n+\n+# Source zfs configuration, overriding the defaults\n+if [ -f @initconfdir@/zfs ]; then\n+\t. @initconfdir@/zfs\n+fi\n+\n+# ----------------------------------------------------\n+\n+zfs_action()\n+{\n+\tlocal MSG=$1;\tshift\n+\tlocal CMD=$*\n+\tlocal ret\n+\n+\tzfs_log_begin_msg \"$MSG \"\n+\t$CMD\n+\tret=$?\n+\tzfs_log_end_msg $ret\n+\n+\treturn $ret\n+}\n+\n+# Returns\n+#   0 if daemon has been started\n+#   1 if daemon was already running\n+#   2 if daemon could not be started\n+#   3 if unsupported\n+#\n+zfs_daemon_start()\n+{\n+\tlocal PIDFILE=\"$1\";\tshift\n+\tlocal DAEMON_BIN=\"$1\";\tshift\n+\tlocal DAEMON_ARGS=\"$*\"\n+\n+\tif type start-stop-daemon > /dev/null 2>&1 ; then\n+\t\t# LSB functions\n+\t\tstart-stop-daemon --start --quiet --pidfile \"$PIDFILE\" \\\n+\t\t    --exec \"$DAEMON_BIN\" --test > /dev/null || return 1\n+\n+\t        start-stop-daemon --start --quiet --exec \"$DAEMON_BIN\" -- \\\n+\t\t    $DAEMON_ARGS || return 2\n+\telif type daemon > /dev/null 2>&1 ; then\n+\t        # Fedora/RedHat functions\n+\t\tdaemon --pidfile \"$ZED_PIDFILE\" \"$ZED\" $DAEMON_ARGS\n+\t\treturn $?\n+\telse\n+\t\t# Unsupported\n+\t\treturn 3\n+\tfi\n+\n+\treturn 0\n+}\n+\n+# Returns\n+#   0 if daemon has been stopped\n+#   1 if daemon was already stopped\n+#   2 if daemon could not be stopped\n+#   3 if unsupported\n+#\n+zfs_daemon_stop()\n+{\n+\tlocal PIDFILE=\"$1\"\n+\tlocal DAEMON_BIN=\"$2\"\n+\tlocal DAEMON_NAME=\"$3\"\n+\n+\tif type start-stop-daemon > /dev/null 2>&1 ; then\n+\t\t# LSB functions\n+\t\tstart-stop-daemon --stop --quiet --retry=TERM/30/KILL/5 \\\n+\t\t    --pidfile \"$PIDFILE\" --name \"$DAEMON_NAME\"\n+\t\treturn $?\n+\telif type killproc > /dev/null 2>&1 ; then\n+\t\t# Fedora/RedHat functions\n+\t\tkillproc \"$DAEMON_NAME\"\n+\t\treturn $?\n+\telse\n+\t\t# Unsupported\n+\t\treturn 3\n+\tfi\n+\n+\treturn 0\n+}\n+\n+# Returns status\n+zfs_daemon_status()\n+{\n+\tlocal DAEMON_BIN=\"$1\"\n+\tlocal DAEMON_NAME=\"$2\"\n+\n+\tif type status_of_proc > /dev/null 2>&1 ; then\n+\t\t# LSB functions\n+\t\tstatus_of_proc \"$DAEMON_NAME\" \"$DAEMON_BIN\"\n+\t\treturn $?\n+\telif type status > /dev/null 2>&1 ; then\n+\t\t# Fedora/RedHat functions\n+\t\tstatus \"$DAEMON_NAME\"\n+\t\treturn $?\n+\telse\n+\t\t# Unsupported\n+\t\treturn 3\n+\tfi\n+\n+\treturn 0\n+}\n+\n+zfs_daemon_reload()\n+{\n+\tlocal PIDFILE=\"$1\"\n+\tlocal DAEMON_NAME=\"$2\"\n+\n+\tif type start-stop-daemon > /dev/null 2>&1 ; then\n+\t\t# LSB functions\n+\t\tstart-stop-daemon --stop -signal 1 --quiet \\\n+\t\t    --pidfile \"$PIDFILE\" --name \"$DAEMON_NAME\"\n+\t\treturn $?\n+\telif type killproc > /dev/null 2>&1 ; then\n+\t\t# Fedora/RedHat functions\n+                killproc \"$DAEMON_NAME\" \"-SIGHUP\" > /dev/null\n+\t\treturn $?\n+\telse\n+\t\t# Unsupported\n+\t\treturn 3\n+\tfi\n+\n+\treturn 0\n+}\n+\n+zfs_installed()\n+{\n+\tif [ ! -x \"$ZPOOL\" ]; then\n+\t\treturn 1\n+\telse\n+\t\t# Test if it works (will catch missing/broken libs etc)\n+\t\t\"$ZPOOL\" -? > /dev/null 2>&1 \n+\t\treturn $?\n+\tfi\n+\n+\tif [ ! -x \"$ZFS\" ]; then\n+\t\treturn 2\n+\telse\n+\t\t# Test if it works (will catch missing/broken libs etc)\n+\t\t\"$ZFS\" -? > /dev/null 2>&1\n+\t\treturn $?\n+\tfi\n+\n+\treturn 0\n+}\n+\n+# Trigger udev and wait for it to settle.\n+udev_trigger()\n+{\n+\tif [ -x /sbin/udevadm ]; then\n+\t\t/sbin/udevadm trigger --action=change --subsystem-match=block\n+\t\t/sbin/udevadm settle\n+\telif [ -x /sbin/udevsettle ]; then\n+\t\t/sbin/udevtrigger\n+\t\t/sbin/udevsettle\n+\tfi\n+}\n+\n+# From scripts/common.sh\n+wait_udev()\n+{\n+\tlocal DEVICE=$1\n+\tlocal DELAY=$2\n+\tlocal COUNT=0\n+\n+\tudev_trigger\n+\twhile [ ! -e \"${DEVICE}\" ]; do\n+\t\tif [ ${COUNT} -gt \"${DELAY}\" ]; then\n+\t\t\treturn 1\n+\t\tfi\n+\n+\t\tlet COUNT=${COUNT}+1\n+\t\tsleep 1","path":"etc/init.d/common.init.in","position":239,"original_position":239,"commit_id":"ed2cd8e14fa8400de4d2971054bf7cbc4087a357","original_commit_id":"ed2cd8e14fa8400de4d2971054bf7cbc4087a357","user":{"login":"ryao","id":1386373,"avatar_url":"https://avatars.githubusercontent.com/u/1386373?v=3","gravatar_id":"","url":"https://api.github.com/users/ryao","html_url":"https://github.com/ryao","followers_url":"https://api.github.com/users/ryao/followers","following_url":"https://api.github.com/users/ryao/following{/other_user}","gists_url":"https://api.github.com/users/ryao/gists{/gist_id}","starred_url":"https://api.github.com/users/ryao/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ryao/subscriptions","organizations_url":"https://api.github.com/users/ryao/orgs","repos_url":"https://api.github.com/users/ryao/repos","events_url":"https://api.github.com/users/ryao/events{/privacy}","received_events_url":"https://api.github.com/users/ryao/received_events","type":"User","site_admin":false},"body":"That test is somewhat misleading because no modules were loading when you did the test. The modules will typically finish initializing before the first check, so there would be no busy wait at all. This does not change on a slower system because the slower system's scheduler would run the same routine used on a faster system. Consequently, I imagine a slow system with very little memory would still be faster with the busy wait. On a multicore system, we would be spending more time in the busy wait than we would otherwise spend, but system boot would still be faster.\r\n\r\nIf this is something particularly contentious, we could make the option configurable so that the user can choose. However, I do not think that sleep should be the default. Gentoo's QA team will not be happy if I commit a sleep into Gentoo and quite frankly, many ZoL users would be happy with a sleep, regardless of the distribution.","created_at":"2015-05-19T14:50:22Z","updated_at":"2015-05-19T14:50:22Z","html_url":"https://github.com/zfsonlinux/zfs/pull/3337#discussion_r30607033","pull_request_url":"https://api.github.com/repos/zfsonlinux/zfs/pulls/3337","_links":{"self":{"href":"https://api.github.com/repos/zfsonlinux/zfs/pulls/comments/30607033"},"html":{"href":"https://github.com/zfsonlinux/zfs/pull/3337#discussion_r30607033"},"pull_request":{"href":"https://api.github.com/repos/zfsonlinux/zfs/pulls/3337"}}},"pull_request":{"url":"https://api.github.com/repos/zfsonlinux/zfs/pulls/3337","id":33984075,"html_url":"https://github.com/zfsonlinux/zfs/pull/3337","diff_url":"https://github.com/zfsonlinux/zfs/pull/3337.diff","patch_url":"https://github.com/zfsonlinux/zfs/pull/3337.patch","issue_url":"https://api.github.com/repos/zfsonlinux/zfs/issues/3337","number":3337,"state":"open","locked":false,"title":"Complete rewrite of init script(s) - attempt 3","user":{"login":"FransUrbo","id":572706,"avatar_url":"https://avatars.githubusercontent.com/u/572706?v=3","gravatar_id":"","url":"https://api.github.com/users/FransUrbo","html_url":"https://github.com/FransUrbo","followers_url":"https://api.github.com/users/FransUrbo/followers","following_url":"https://api.github.com/users/FransUrbo/following{/other_user}","gists_url":"https://api.github.com/users/FransUrbo/gists{/gist_id}","starred_url":"https://api.github.com/users/FransUrbo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/FransUrbo/subscriptions","organizations_url":"https://api.github.com/users/FransUrbo/orgs","repos_url":"https://api.github.com/users/FransUrbo/repos","events_url":"https://api.github.com/users/FransUrbo/events{/privacy}","received_events_url":"https://api.github.com/users/FransUrbo/received_events","type":"User","site_admin":false},"body":"* Base scripts on the init scripts included with Debian GNU/Linux\r\n  then take code from the already existing ones, trying to merge\r\n  them into one.\r\n  + NFS server service is just called 'nfs' in Redhat based system, and\r\n    nfs-kernel-server on Debian GNU/Linux based.\r\n  + Merge https://github.com/zfsonlinux/zfs/pull/2148 - Inform OpenRC that ZFS uses mtab.\r\n  + Stop after umountfs\r\n  + When stopping, don't check for LOCKDIR/zfs-mount - it won't be mounted,\r\n    so the file won't exist making the script not run.\r\n  + Add a configurable ZFS_INITRD_POST_MODPROBE_SLEEP used in the initrd to sleep after the modprobe.\r\n  + The import function, do_import(), imports pools by name instead of '-a' [all].\r\n    + Test all '/dev/disk/by-*' dirs for import. Include /dev as a last ditch attempt.\r\n  + Fallback on importing the pool using the cache file (if it exists) if the\r\n    'by-id' didn't work.\r\n  + Add exceptions to pool imports.\r\n* ZED script from the Debian GNU/Linux packages added.\r\n\r\nSigned-off-by: Turbo Fredriksson <turbo@bayour.com>\r\nCloses: #2974, #2107.","created_at":"2015-04-23T18:40:54Z","updated_at":"2015-05-19T14:50:22Z","closed_at":null,"merged_at":null,"merge_commit_sha":"091e80b492073bf183dbb6ba28c51b755723cc7e","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/zfsonlinux/zfs/pulls/3337/commits","review_comments_url":"https://api.github.com/repos/zfsonlinux/zfs/pulls/3337/comments","review_comment_url":"https://api.github.com/repos/zfsonlinux/zfs/pulls/comments{/number}","comments_url":"https://api.github.com/repos/zfsonlinux/zfs/issues/3337/comments","statuses_url":"https://api.github.com/repos/zfsonlinux/zfs/statuses/ed2cd8e14fa8400de4d2971054bf7cbc4087a357","head":{"label":"FransUrbo:fixes.init_total_rewrite","ref":"fixes.init_total_rewrite","sha":"ed2cd8e14fa8400de4d2971054bf7cbc4087a357","user":{"login":"FransUrbo","id":572706,"avatar_url":"https://avatars.githubusercontent.com/u/572706?v=3","gravatar_id":"","url":"https://api.github.com/users/FransUrbo","html_url":"https://github.com/FransUrbo","followers_url":"https://api.github.com/users/FransUrbo/followers","following_url":"https://api.github.com/users/FransUrbo/following{/other_user}","gists_url":"https://api.github.com/users/FransUrbo/gists{/gist_id}","starred_url":"https://api.github.com/users/FransUrbo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/FransUrbo/subscriptions","organizations_url":"https://api.github.com/users/FransUrbo/orgs","repos_url":"https://api.github.com/users/FransUrbo/repos","events_url":"https://api.github.com/users/FransUrbo/events{/privacy}","received_events_url":"https://api.github.com/users/FransUrbo/received_events","type":"User","site_admin":false},"repo":{"id":3354870,"name":"zfs","full_name":"FransUrbo/zfs","owner":{"login":"FransUrbo","id":572706,"avatar_url":"https://avatars.githubusercontent.com/u/572706?v=3","gravatar_id":"","url":"https://api.github.com/users/FransUrbo","html_url":"https://github.com/FransUrbo","followers_url":"https://api.github.com/users/FransUrbo/followers","following_url":"https://api.github.com/users/FransUrbo/following{/other_user}","gists_url":"https://api.github.com/users/FransUrbo/gists{/gist_id}","starred_url":"https://api.github.com/users/FransUrbo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/FransUrbo/subscriptions","organizations_url":"https://api.github.com/users/FransUrbo/orgs","repos_url":"https://api.github.com/users/FransUrbo/repos","events_url":"https://api.github.com/users/FransUrbo/events{/privacy}","received_events_url":"https://api.github.com/users/FransUrbo/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/FransUrbo/zfs","description":"Native ZFS for Linux","fork":true,"url":"https://api.github.com/repos/FransUrbo/zfs","forks_url":"https://api.github.com/repos/FransUrbo/zfs/forks","keys_url":"https://api.github.com/repos/FransUrbo/zfs/keys{/key_id}","collaborators_url":"https://api.github.com/repos/FransUrbo/zfs/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/FransUrbo/zfs/teams","hooks_url":"https://api.github.com/repos/FransUrbo/zfs/hooks","issue_events_url":"https://api.github.com/repos/FransUrbo/zfs/issues/events{/number}","events_url":"https://api.github.com/repos/FransUrbo/zfs/events","assignees_url":"https://api.github.com/repos/FransUrbo/zfs/assignees{/user}","branches_url":"https://api.github.com/repos/FransUrbo/zfs/branches{/branch}","tags_url":"https://api.github.com/repos/FransUrbo/zfs/tags","blobs_url":"https://api.github.com/repos/FransUrbo/zfs/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/FransUrbo/zfs/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/FransUrbo/zfs/git/refs{/sha}","trees_url":"https://api.github.com/repos/FransUrbo/zfs/git/trees{/sha}","statuses_url":"https://api.github.com/repos/FransUrbo/zfs/statuses/{sha}","languages_url":"https://api.github.com/repos/FransUrbo/zfs/languages","stargazers_url":"https://api.github.com/repos/FransUrbo/zfs/stargazers","contributors_url":"https://api.github.com/repos/FransUrbo/zfs/contributors","subscribers_url":"https://api.github.com/repos/FransUrbo/zfs/subscribers","subscription_url":"https://api.github.com/repos/FransUrbo/zfs/subscription","commits_url":"https://api.github.com/repos/FransUrbo/zfs/commits{/sha}","git_commits_url":"https://api.github.com/repos/FransUrbo/zfs/git/commits{/sha}","comments_url":"https://api.github.com/repos/FransUrbo/zfs/comments{/number}","issue_comment_url":"https://api.github.com/repos/FransUrbo/zfs/issues/comments{/number}","contents_url":"https://api.github.com/repos/FransUrbo/zfs/contents/{+path}","compare_url":"https://api.github.com/repos/FransUrbo/zfs/compare/{base}...{head}","merges_url":"https://api.github.com/repos/FransUrbo/zfs/merges","archive_url":"https://api.github.com/repos/FransUrbo/zfs/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/FransUrbo/zfs/downloads","issues_url":"https://api.github.com/repos/FransUrbo/zfs/issues{/number}","pulls_url":"https://api.github.com/repos/FransUrbo/zfs/pulls{/number}","milestones_url":"https://api.github.com/repos/FransUrbo/zfs/milestones{/number}","notifications_url":"https://api.github.com/repos/FransUrbo/zfs/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/FransUrbo/zfs/labels{/name}","releases_url":"https://api.github.com/repos/FransUrbo/zfs/releases{/id}","created_at":"2012-02-04T19:47:17Z","updated_at":"2015-05-03T13:46:34Z","pushed_at":"2015-05-18T23:20:17Z","git_url":"git://github.com/FransUrbo/zfs.git","ssh_url":"git@github.com:FransUrbo/zfs.git","clone_url":"https://github.com/FransUrbo/zfs.git","svn_url":"https://github.com/FransUrbo/zfs","homepage":"http://zfsonlinux.org/","size":26042,"stargazers_count":5,"watchers_count":5,"language":"C","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":2,"mirror_url":null,"open_issues_count":0,"forks":2,"open_issues":0,"watchers":5,"default_branch":"FAVORITES"}},"base":{"label":"zfsonlinux:master","ref":"master","sha":"7fec46b9d8967109ad289d208e8cf36a0c16e40c","user":{"login":"zfsonlinux","id":575083,"avatar_url":"https://avatars.githubusercontent.com/u/575083?v=3","gravatar_id":"","url":"https://api.github.com/users/zfsonlinux","html_url":"https://github.com/zfsonlinux","followers_url":"https://api.github.com/users/zfsonlinux/followers","following_url":"https://api.github.com/users/zfsonlinux/following{/other_user}","gists_url":"https://api.github.com/users/zfsonlinux/gists{/gist_id}","starred_url":"https://api.github.com/users/zfsonlinux/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/zfsonlinux/subscriptions","organizations_url":"https://api.github.com/users/zfsonlinux/orgs","repos_url":"https://api.github.com/users/zfsonlinux/repos","events_url":"https://api.github.com/users/zfsonlinux/events{/privacy}","received_events_url":"https://api.github.com/users/zfsonlinux/received_events","type":"Organization","site_admin":false},"repo":{"id":437011,"name":"zfs","full_name":"zfsonlinux/zfs","owner":{"login":"zfsonlinux","id":575083,"avatar_url":"https://avatars.githubusercontent.com/u/575083?v=3","gravatar_id":"","url":"https://api.github.com/users/zfsonlinux","html_url":"https://github.com/zfsonlinux","followers_url":"https://api.github.com/users/zfsonlinux/followers","following_url":"https://api.github.com/users/zfsonlinux/following{/other_user}","gists_url":"https://api.github.com/users/zfsonlinux/gists{/gist_id}","starred_url":"https://api.github.com/users/zfsonlinux/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/zfsonlinux/subscriptions","organizations_url":"https://api.github.com/users/zfsonlinux/orgs","repos_url":"https://api.github.com/users/zfsonlinux/repos","events_url":"https://api.github.com/users/zfsonlinux/events{/privacy}","received_events_url":"https://api.github.com/users/zfsonlinux/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/zfsonlinux/zfs","description":"Native ZFS for Linux","fork":false,"url":"https://api.github.com/repos/zfsonlinux/zfs","forks_url":"https://api.github.com/repos/zfsonlinux/zfs/forks","keys_url":"https://api.github.com/repos/zfsonlinux/zfs/keys{/key_id}","collaborators_url":"https://api.github.com/repos/zfsonlinux/zfs/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/zfsonlinux/zfs/teams","hooks_url":"https://api.github.com/repos/zfsonlinux/zfs/hooks","issue_events_url":"https://api.github.com/repos/zfsonlinux/zfs/issues/events{/number}","events_url":"https://api.github.com/repos/zfsonlinux/zfs/events","assignees_url":"https://api.github.com/repos/zfsonlinux/zfs/assignees{/user}","branches_url":"https://api.github.com/repos/zfsonlinux/zfs/branches{/branch}","tags_url":"https://api.github.com/repos/zfsonlinux/zfs/tags","blobs_url":"https://api.github.com/repos/zfsonlinux/zfs/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/zfsonlinux/zfs/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/zfsonlinux/zfs/git/refs{/sha}","trees_url":"https://api.github.com/repos/zfsonlinux/zfs/git/trees{/sha}","statuses_url":"https://api.github.com/repos/zfsonlinux/zfs/statuses/{sha}","languages_url":"https://api.github.com/repos/zfsonlinux/zfs/languages","stargazers_url":"https://api.github.com/repos/zfsonlinux/zfs/stargazers","contributors_url":"https://api.github.com/repos/zfsonlinux/zfs/contributors","subscribers_url":"https://api.github.com/repos/zfsonlinux/zfs/subscribers","subscription_url":"https://api.github.com/repos/zfsonlinux/zfs/subscription","commits_url":"https://api.github.com/repos/zfsonlinux/zfs/commits{/sha}","git_commits_url":"https://api.github.com/repos/zfsonlinux/zfs/git/commits{/sha}","comments_url":"https://api.github.com/repos/zfsonlinux/zfs/comments{/number}","issue_comment_url":"https://api.github.com/repos/zfsonlinux/zfs/issues/comments{/number}","contents_url":"https://api.github.com/repos/zfsonlinux/zfs/contents/{+path}","compare_url":"https://api.github.com/repos/zfsonlinux/zfs/compare/{base}...{head}","merges_url":"https://api.github.com/repos/zfsonlinux/zfs/merges","archive_url":"https://api.github.com/repos/zfsonlinux/zfs/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/zfsonlinux/zfs/downloads","issues_url":"https://api.github.com/repos/zfsonlinux/zfs/issues{/number}","pulls_url":"https://api.github.com/repos/zfsonlinux/zfs/pulls{/number}","milestones_url":"https://api.github.com/repos/zfsonlinux/zfs/milestones{/number}","notifications_url":"https://api.github.com/repos/zfsonlinux/zfs/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/zfsonlinux/zfs/labels{/name}","releases_url":"https://api.github.com/repos/zfsonlinux/zfs/releases{/id}","created_at":"2009-12-14T20:20:34Z","updated_at":"2015-05-18T11:10:24Z","pushed_at":"2015-05-19T12:42:52Z","git_url":"git://github.com/zfsonlinux/zfs.git","ssh_url":"git@github.com:zfsonlinux/zfs.git","clone_url":"https://github.com/zfsonlinux/zfs.git","svn_url":"https://github.com/zfsonlinux/zfs","homepage":"http://zfsonlinux.org/","size":57938,"stargazers_count":1389,"watchers_count":1389,"language":"C","has_issues":true,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":352,"mirror_url":null,"open_issues_count":746,"forks":352,"open_issues":746,"watchers":1389,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/zfsonlinux/zfs/pulls/3337"},"html":{"href":"https://github.com/zfsonlinux/zfs/pull/3337"},"issue":{"href":"https://api.github.com/repos/zfsonlinux/zfs/issues/3337"},"comments":{"href":"https://api.github.com/repos/zfsonlinux/zfs/issues/3337/comments"},"review_comments":{"href":"https://api.github.com/repos/zfsonlinux/zfs/pulls/3337/comments"},"review_comment":{"href":"https://api.github.com/repos/zfsonlinux/zfs/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/zfsonlinux/zfs/pulls/3337/commits"},"statuses":{"href":"https://api.github.com/repos/zfsonlinux/zfs/statuses/ed2cd8e14fa8400de4d2971054bf7cbc4087a357"}}}}