aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--drivers/base/firmware_class.c9
1 files changed, 6 insertions, 3 deletions
diff --git a/drivers/base/firmware_class.c b/drivers/base/firmware_class.c
index b9f907eedbf7..ac7e32fac8fc 100644
--- a/drivers/base/firmware_class.c
+++ b/drivers/base/firmware_class.c
@@ -1089,9 +1089,12 @@ static int _request_firmware_load(struct firmware_priv *fw_priv,
1089 mutex_unlock(&fw_lock); 1089 mutex_unlock(&fw_lock);
1090 } 1090 }
1091 1091
1092 if (fw_state_is_aborted(&buf->fw_st)) 1092 if (fw_state_is_aborted(&buf->fw_st)) {
1093 retval = -EAGAIN; 1093 if (retval == -ERESTARTSYS)
1094 else if (buf->is_paged_buf && !buf->data) 1094 retval = -EINTR;
1095 else
1096 retval = -EAGAIN;
1097 } else if (buf->is_paged_buf && !buf->data)
1095 retval = -ENOMEM; 1098 retval = -ENOMEM;
1096 1099
1097 device_del(f_dev); 1100 device_del(f_dev);