virtio: console: replace EMFILE with EBUSY for already-open port
Returning EMFILE (process has too many open files) is incorrect to indicate a port is already open by another process. Use EBUSY for that. This does change what we report to userspace, but I believe userspace can look at it this way: it gets EBUSY, a new error code, instead of EMFILE. It's still an error, and that's not changing. Reported-by: Mateusz Guzik <mguzik@redhat.com> Signed-off-by: Amit Shah <amit.shah@redhat.com> Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
This commit is contained in:
Родитель
285e71ea6f
Коммит
74ff582cd6
|
@ -1036,7 +1036,7 @@ static int port_fops_open(struct inode *inode, struct file *filp)
|
|||
spin_lock_irq(&port->inbuf_lock);
|
||||
if (port->guest_connected) {
|
||||
spin_unlock_irq(&port->inbuf_lock);
|
||||
ret = -EMFILE;
|
||||
ret = -EBUSY;
|
||||
goto out;
|
||||
}
|
||||
|
||||
|
|
Загрузка…
Ссылка в новой задаче