firmware: send -EINTR on signal abort on fallback mechanism
Right now we send -EAGAIN to a syfs write which got interrupted. Userspace can't tell what happened though, send -EINTR if we were killed due to a signal so userspace can tell things apart. This is only applicable to the fallback mechanism. Reported-by: Martin Fuzzey <mfuzzey@parkeon.com> Signed-off-by: Luis R. Rodriguez <mcgrof@kernel.org> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
Родитель
0d1f417eee
Коммит
76098b36b5
|
@ -1089,9 +1089,12 @@ static int _request_firmware_load(struct firmware_priv *fw_priv,
|
|||
mutex_unlock(&fw_lock);
|
||||
}
|
||||
|
||||
if (fw_state_is_aborted(&buf->fw_st))
|
||||
retval = -EAGAIN;
|
||||
else if (buf->is_paged_buf && !buf->data)
|
||||
if (fw_state_is_aborted(&buf->fw_st)) {
|
||||
if (retval == -ERESTARTSYS)
|
||||
retval = -EINTR;
|
||||
else
|
||||
retval = -EAGAIN;
|
||||
} else if (buf->is_paged_buf && !buf->data)
|
||||
retval = -ENOMEM;
|
||||
|
||||
device_del(f_dev);
|
||||
|
|
Загрузка…
Ссылка в новой задаче