Philip Guenther <[email protected]> wrote:
> On Mon, Dec 23, 2019 at 5:04 AM Raymond, David <[email protected]> wrote:
>
> The "timeout" error was numerically 60. Curiously, boards with RTL
> 8111GR chips did not produce these errors, but those with RTL 8111H
> chips did. Unfortunately, this chipset seems to be in a lot of newer
> motherboards.
>
> I didn't use ktrace/kdump. The openmpi software returned the error
> presented by readv/writev.
>
> It sounds like the simplest solution at this point is to try
> non-Realtek pcie network cards. Any suggestions? How are Intel or
> Broadcom cards?
>
> At this point I think you're clearly in the "device driver is buggy"
> situation. If
> this device has an in-tree driver (and not something you're compiling locally
> into your
> kernel) then you should start a new thread starting with a dmesg and a clear
> description of the involved hardware.
At the head of the ioctl function
/*
* Prevent processes from entering this function while another
* process is tsleep'ing in it.
*/
while ((sc->sc_flags & RTWN_FLAG_BUSY) && error == 0)
error = tsleep(&sc->sc_flags, PCATCH, "rtwnioc", 0);
if (error != 0) {
splx(s);
return error;
}
And then the remainder of the driver is very happy to call tsleep, and
a pile of ETIMEDOUT return values, I expect in at least one case this
is returned upwards
But no ktrace -di was performed to figure out what is happening, so shrug.