diff --git a/[refs] b/[refs] index d11250bda30f..ce393065c530 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 786228ab3095fe18dba3bc0d62055a123991d9d9 +refs/heads/master: a50527b19c62c808a7fca022816fff88a50b948d diff --git a/trunk/mm/filemap.c b/trunk/mm/filemap.c index c0018f2d50e0..c106d3b3cc64 100644 --- a/trunk/mm/filemap.c +++ b/trunk/mm/filemap.c @@ -2407,7 +2407,6 @@ static ssize_t generic_perform_write(struct file *file, iov_iter_count(i)); again: - /* * Bring in the user page that we will copy from _first_. * Otherwise there's a nasty deadlock on copying from the @@ -2463,7 +2462,10 @@ static ssize_t generic_perform_write(struct file *file, written += copied; balance_dirty_pages_ratelimited(mapping); - + if (fatal_signal_pending(current)) { + status = -EINTR; + break; + } } while (iov_iter_count(i)); return written ? written : status;