{"action":"closed","issue":{"url":"https://api.github.com/repos/xcat2/xcat-dep/issues/9","repository_url":"https://api.github.com/repos/xcat2/xcat-dep","labels_url":"https://api.github.com/repos/xcat2/xcat-dep/issues/9/labels{/name}","comments_url":"https://api.github.com/repos/xcat2/xcat-dep/issues/9/comments","events_url":"https://api.github.com/repos/xcat2/xcat-dep/issues/9/events","html_url":"https://github.com/xcat2/xcat-dep/issues/9","id":169638482,"number":9,"title":"To help improve the console issue on OpenPower systems, patch ipmitool to handle SIGHUP and SIGTERM","user":{"login":"whowutwut","id":10049070,"avatar_url":"https://avatars.githubusercontent.com/u/10049070?v=3","gravatar_id":"","url":"https://api.github.com/users/whowutwut","html_url":"https://github.com/whowutwut","followers_url":"https://api.github.com/users/whowutwut/followers","following_url":"https://api.github.com/users/whowutwut/following{/other_user}","gists_url":"https://api.github.com/users/whowutwut/gists{/gist_id}","starred_url":"https://api.github.com/users/whowutwut/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/whowutwut/subscriptions","organizations_url":"https://api.github.com/users/whowutwut/orgs","repos_url":"https://api.github.com/users/whowutwut/repos","events_url":"https://api.github.com/users/whowutwut/events{/privacy}","received_events_url":"https://api.github.com/users/whowutwut/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/xcat2/xcat-dep/labels/priority:high","name":"priority:high","color":"d93f0b"},{"url":"https://api.github.com/repos/xcat2/xcat-dep/labels/status:pending","name":"status:pending","color":"006b75"}],"state":"closed","locked":false,"assignee":{"login":"chenglch","id":7165199,"avatar_url":"https://avatars.githubusercontent.com/u/7165199?v=3","gravatar_id":"","url":"https://api.github.com/users/chenglch","html_url":"https://github.com/chenglch","followers_url":"https://api.github.com/users/chenglch/followers","following_url":"https://api.github.com/users/chenglch/following{/other_user}","gists_url":"https://api.github.com/users/chenglch/gists{/gist_id}","starred_url":"https://api.github.com/users/chenglch/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/chenglch/subscriptions","organizations_url":"https://api.github.com/users/chenglch/orgs","repos_url":"https://api.github.com/users/chenglch/repos","events_url":"https://api.github.com/users/chenglch/events{/privacy}","received_events_url":"https://api.github.com/users/chenglch/received_events","type":"User","site_admin":false},"assignees":[{"login":"chenglch","id":7165199,"avatar_url":"https://avatars.githubusercontent.com/u/7165199?v=3","gravatar_id":"","url":"https://api.github.com/users/chenglch","html_url":"https://github.com/chenglch","followers_url":"https://api.github.com/users/chenglch/followers","following_url":"https://api.github.com/users/chenglch/following{/other_user}","gists_url":"https://api.github.com/users/chenglch/gists{/gist_id}","starred_url":"https://api.github.com/users/chenglch/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/chenglch/subscriptions","organizations_url":"https://api.github.com/users/chenglch/orgs","repos_url":"https://api.github.com/users/chenglch/repos","events_url":"https://api.github.com/users/chenglch/events{/privacy}","received_events_url":"https://api.github.com/users/chenglch/received_events","type":"User","site_admin":false},{"login":"zet809","id":8222144,"avatar_url":"https://avatars.githubusercontent.com/u/8222144?v=3","gravatar_id":"","url":"https://api.github.com/users/zet809","html_url":"https://github.com/zet809","followers_url":"https://api.github.com/users/zet809/followers","following_url":"https://api.github.com/users/zet809/following{/other_user}","gists_url":"https://api.github.com/users/zet809/gists{/gist_id}","starred_url":"https://api.github.com/users/zet809/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/zet809/subscriptions","organizations_url":"https://api.github.com/users/zet809/orgs","repos_url":"https://api.github.com/users/zet809/repos","events_url":"https://api.github.com/users/zet809/events{/privacy}","received_events_url":"https://api.github.com/users/zet809/received_events","type":"User","site_admin":false}],"milestone":{"url":"https://api.github.com/repos/xcat2/xcat-dep/milestones/3","html_url":"https://github.com/xcat2/xcat-dep/milestones/2.12.2","labels_url":"https://api.github.com/repos/xcat2/xcat-dep/milestones/3/labels","id":1925755,"number":3,"title":"2.12.2","description":"","creator":{"login":"whowutwut","id":10049070,"avatar_url":"https://avatars.githubusercontent.com/u/10049070?v=3","gravatar_id":"","url":"https://api.github.com/users/whowutwut","html_url":"https://github.com/whowutwut","followers_url":"https://api.github.com/users/whowutwut/followers","following_url":"https://api.github.com/users/whowutwut/following{/other_user}","gists_url":"https://api.github.com/users/whowutwut/gists{/gist_id}","starred_url":"https://api.github.com/users/whowutwut/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/whowutwut/subscriptions","organizations_url":"https://api.github.com/users/whowutwut/orgs","repos_url":"https://api.github.com/users/whowutwut/repos","events_url":"https://api.github.com/users/whowutwut/events{/privacy}","received_events_url":"https://api.github.com/users/whowutwut/received_events","type":"User","site_admin":false},"open_issues":0,"closed_issues":2,"state":"open","created_at":"2016-08-05T15:37:33Z","updated_at":"2016-08-18T15:55:50Z","due_on":"2016-08-26T04:00:00Z","closed_at":null},"comments":3,"created_at":"2016-08-05T15:53:04Z","updated_at":"2016-08-18T15:55:50Z","closed_at":"2016-08-18T15:55:50Z","body":"In issue: https://github.com/xcat2/xcat-core/issues/1090\r\n\r\nFor IBM OpenPower S822LC systems, if there's a active SOL console to the BMC and it's not gracefully stopped, a 60 second timeout is started in the BMC and after that timeout, the console becomes unresponsive.  \r\n\r\nconserver is used by xCAT to monitor the console logs through the bmc to catch things like kernel panics.  If `consoleondemand=no` then a persistent connection is created to the BMC to log SOL output to `/var/log/consoles.`   When a `service conserver restart` is issued on the OpenPower systems mentioned above,  conserver sends a HUP signal...\r\n\r\n```\r\n  restart)\r\n    $STATUS conserver >& /dev/null\r\n    if [ \"$?\" != \"0\" ]; then\r\n        exec $0 start\r\n    else\r\n        echo -n \"Restarting conserver: \"\r\n        killproc conserver -HUP\r\n    fi\r\n    $SUCCESS\r\n    ;;\r\n```\r\nWhen `service conserver stop` is issued\r\n```\r\n  stop) \r\n    $STATUS conserver >& /dev/null\r\n    if [ \"$?\" != \"0\" ]; then\r\n        echo -n \"conserver not running, not stopping \"\r\n        $PASSED\r\n        exit 0\r\n    fi  \r\n    echo -n \"Shutting down conserver: \"\r\n    killproc conserver     \r\n    rm -f /var/lock/subsys/conserver\r\n    $STATUS conserver >& /dev/null\r\n    if [ \"$?\" == \"0\" ]; then\r\n        $FAILURE\r\n        exit 1\r\n    fi  \r\n    $SUCCESS    \r\n    ;;    \r\n```\r\n\r\nThe `killproc` function is called (/etc/rc.d/init.d/functions) which will send `kill -TERM`. \r\n\r\nThis is not a graceful exit of ipmitool to the BMC so the timeout starts.  After 60 seconds, all the console logs for the entire cluster that had an console connection to the BMC logging the SOL output is interrupted and does not recover.  No more logs are saved to `/var/log/messages` .  \r\n\r\nSince it is more difficult to get the BMC firmware changed to correctly handle the HUP and TERM signals, we are looking at other options.   xCAT ships a version of ipmitool-xcat in the xcat-deps package that we are already patching, so we could try to TERM and HUP signals and gracefully exit as ipmitool is doing with the SIGINT signal.  \r\n\r\nThis may help reduce the frequency of this problem.  \r\n"}}
{"actor":{"display_login":"whowutwut"}}