orangefs: return from orangefs_devreq_read quickly if possible

It is not necessary to take the lock and search through the request list
if the list is empty.

Signed-off-by: Martin Brandenburg <martin@omnibond.com>
Signed-off-by: Mike Marshall <hubcap@omnibond.com>
This commit is contained in:
Martin Brandenburg 2017-04-25 15:38:06 -04:00 коммит произвёл Mike Marshall
Родитель 9d286b0d82
Коммит b7a57ccab8
1 изменённых файлов: 4 добавлений и 0 удалений

Просмотреть файл

@ -180,6 +180,10 @@ static ssize_t orangefs_devreq_read(struct file *file,
return -EINVAL;
}
/* Check for an empty list before locking. */
if (list_empty(&orangefs_request_list))
return -EAGAIN;
restart:
/* Get next op (if any) from top of list. */
spin_lock(&orangefs_request_list_lock);