-
Notifications
You must be signed in to change notification settings - Fork 783
sshd.exe eats whole CPU core #580
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Comments
error code 5 means the "Access denied". I think the issue is not because of this particular error message because this happens only during the session setup. Please enable the log level to DEBUG3 and share the sshd.log file. |
Does it also happen when there are no SSH client connections? |
Even at |
Anyone facing this issue? |
I tried the following versions, all have the issue:
(v0.0.8.0 does not installs because of DarwinJS/ChocoPackages#26) I have the same problem on another Windows 7, with the OpenSSH that was packaged with Chocolatey package But, I tested on a Windows 7 VM that never gets Windows Updates: no issue there (with v0.0.10.0). |
Since , we are not able to repro this on our side (and there are not logs to give us a clue), we need your help to take this further. Are you familiar with using VS 2015, if so, please download the express edition, attach to sshd.exe process (symbols can be downloaded from release page) and figure out the busy loop. |
Not really familiar with it. VS complains about source file being different than the one used when generating the module, but I get the following stack trace:
At /* initiate async acceptEx*/
/* TODO - always return 0, set error in context, accept() will pick it up*/
int
socketio_acceptEx(struct w32_io* pio)
{
struct acceptEx_context *context;
debug3("acceptEx - io:%p", pio);
context = (struct acceptEx_context *)pio->internal.context;
ResetEvent(pio->read_overlapped.hEvent);
/* create accepting socket */
context->accept_socket = socket(AF_UNSPEC, SOCK_STREAM, IPPROTO_TCP); // THIS IS LINE 111
if (context->accept_socket == INVALID_SOCKET) {
errno = errno_from_WSALastError();
debug("acceptEx - socket() ERROR:%d, io:%p", errno, pio);
return -1;
}
if (TRUE == context->lpfnAcceptEx(pio->sock,
context->accept_socket,
context->lpOutputBuf,
0,
sizeof(SOCKADDR_STORAGE) + 16,
sizeof(SOCKADDR_STORAGE) + 16,
&context->bytes_received,
&pio->read_overlapped))
{
/* we are already connected. Set event so subsequent select will catch */
SetEvent(pio->read_overlapped.hEvent);
} else {
/* if overlapped io is in progress, we are good */
if (WSAGetLastError() != ERROR_IO_PENDING) {
errno = errno_from_WSALastError();
debug("acceptEx - AcceptEx() ERROR:%d, io:%p", errno, pio);
return -1;
}
}
pio->read_details.pending = TRUE;
return 0;
} After a few "Continue" + "Break" I also breaked into:
also:
At // [...]
} else {
DWORD ret = SleepEx(milli_seconds, TRUE); // THIS IS LINE 291
if (ret == WAIT_IO_COMPLETION) {
/* APC processed due to IO or signal*/
} else if (ret == 0) {
/* timed out */
return 0;
} else { /* some other error */
errno = EOTHER;
debug("ERROR: unxpected SleepEx error: %d", ret);
return -1;
}
} and:
At // [...]
on_error:
if (context->accept_socket != INVALID_SOCKET) {
closesocket(context->accept_socket);
context->accept_socket = INVALID_SOCKET; // THIS IS LINE 719
}
return NULL;
} I noticed that when a SSH client is getting prompted for the password another |
Based on your stack, looks like you are hitting the same issue as #606. Let's continue further conversation on that thread. I'm actively looking into this issue and we should hopefully fix this for March-End drop. |
Uh oh!
There was an error while loading. Please reload this page.
I have just installed OpenSSH on a Windows 7 Pro 64-bits via Chocolatey
openssh
package (v0.0.10.0) and Windows process manager showssshd.exe
eating 25% of a 4-core CPU (without any SSH client connected).I tried setting
LogLevel
to levelDEBUG
in thesshd_config
but the single log line I have inc:\Program Files\OpenSSH-Win64\Logs\sshd.log
is:But SSH service works fine: I can connect to it without issue.
The text was updated successfully, but these errors were encountered: