From: anserper Date: Tue, 14 Apr 2009 00:04:32 +0000 (+0000) Subject: b=18728 X-Git-Tag: v1_8_0_110~102 X-Git-Url: https://git.whamcloud.com/gitweb?a=commitdiff_plain;h=98351e8435e3ab7acc325ed0afb278fb5f5bafd5;p=fs%2Flustre-release.git b=18728 i=Alex Zhuravlev i=Alexander Zarochentsev decrease response time for write-waiting threads --- diff --git a/lustre/llite/file.c b/lustre/llite/file.c index 7949e69..2704e63 100644 --- a/lustre/llite/file.c +++ b/lustre/llite/file.c @@ -1715,7 +1715,9 @@ static ssize_t ll_file_aio_write(struct kiocb *iocb, const struct iovec *iov, LASSERT(ll_i2info(inode)->lli_smd != NULL); - down(&ll_i2info(inode)->lli_write_sem); + /* signal(7) specifies that write(2) and writev(2) should be restarted */ + if (down_interruptible(&ll_i2info(inode)->lli_write_sem)) + RETURN(-ERESTARTSYS); repeat: chunk = 0; /* just to fix gcc's warning */