[feature] channel_poll() and check some invald args