diff --git a/drivers/serial/pty.c b/drivers/serial/pty.c index 78cfafeee6f..497b95225a6 100644 --- a/drivers/serial/pty.c +++ b/drivers/serial/pty.c @@ -876,7 +876,11 @@ static int pty_ioctl(FAR struct file *filep, int cmd, unsigned long arg) case FIONBIO: { - ret = file_ioctl(&dev->pd_sink, cmd, arg); + ret = file_ioctl(&dev->pd_src, cmd, arg); + if (ret >= 0 || ret == -ENOTTY) + { + ret = file_ioctl(&dev->pd_sink, cmd, arg); + } } break;