From: Andi Kleen <andi@firstfloor.org>
To: viro@zeniv.linux.org.uk
Cc: hch@infradead.org, linux-fsdevel@vger.kernel.org,
linux-kernel@vger.kernel.org, Andi Kleen <ak@linux.intel.com>
Subject: [PATCH 1/7] BTRFS: Fix lseek return value for error
Date: Mon, 22 Aug 2011 13:49:06 -0700 [thread overview]
Message-ID: <1314046152-2175-2-git-send-email-andi@firstfloor.org> (raw)
In-Reply-To: <1314046152-2175-1-git-send-email-andi@firstfloor.org>
From: Andi Kleen <ak@linux.intel.com>
Introduced by 9a4327ca1f45f82edad7dc0a4e52ce9316e0950c
Signed-off-by: Andi Kleen <ak@linux.intel.com>
---
fs/btrfs/file.c | 13 +++++++------
1 files changed, 7 insertions(+), 6 deletions(-)
diff --git a/fs/btrfs/file.c b/fs/btrfs/file.c
index e7872e4..c6e493f 100644
--- a/fs/btrfs/file.c
+++ b/fs/btrfs/file.c
@@ -1814,19 +1814,17 @@ static loff_t btrfs_file_llseek(struct file *file, loff_t offset, int origin)
case SEEK_DATA:
case SEEK_HOLE:
ret = find_desired_extent(inode, &offset, origin);
- if (ret) {
- mutex_unlock(&inode->i_mutex);
- return ret;
- }
+ if (ret)
+ goto error;
}
if (offset < 0 && !(file->f_mode & FMODE_UNSIGNED_OFFSET)) {
ret = -EINVAL;
- goto out;
+ goto error;
}
if (offset > inode->i_sb->s_maxbytes) {
ret = -EINVAL;
- goto out;
+ goto error;
}
/* Special lock needed here? */
@@ -1837,6 +1835,9 @@ static loff_t btrfs_file_llseek(struct file *file, loff_t offset, int origin)
out:
mutex_unlock(&inode->i_mutex);
return offset;
+error:
+ mutex_unlock(&inode->i_mutex);
+ return ret;
}
const struct file_operations btrfs_file_operations = {
--
1.7.4.4
next prev parent reply other threads:[~2011-08-22 20:49 UTC|newest]
Thread overview: 30+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-08-22 20:49 Improve lseek scalability Andi Kleen
2011-08-22 20:49 ` Andi Kleen [this message]
2011-08-22 20:49 ` [PATCH 2/7] VFS: Do (nearly) lockless generic_file_llseek Andi Kleen
2011-08-22 20:49 ` [PATCH 3/7] VFS: Make generic lseek lockless safe Andi Kleen
2011-08-22 20:49 ` [PATCH 4/7] VFS: Add generic_file_llseek_size Andi Kleen
2011-08-23 0:08 ` Andreas Dilger
2011-08-23 0:10 ` Andi Kleen
2011-08-23 12:51 ` Arnd Bergmann
2011-08-23 16:07 ` Andi Kleen
2011-08-22 20:49 ` [PATCH 5/7] LSEEK: EXT4: Replace cut'n'pasted llseek code with generic_file_llseek_size Andi Kleen
2011-08-22 20:49 ` [PATCH 6/7] LSEEK: NFS: Drop unnecessary locking in llseek Andi Kleen
2011-08-22 20:49 ` [PATCH 7/7] LSEEK: BTRFS: Avoid i_mutex for SEEK_{CUR,SET,END} Andi Kleen
-- strict thread matches above, loose matches on Subject: below --
2011-09-15 23:06 Improve lseek scalability v3 Andi Kleen
2011-09-15 23:06 ` [PATCH 1/7] BTRFS: Fix lseek return value for error Andi Kleen
2011-09-15 23:47 ` Thomas Gleixner
2011-09-16 15:48 ` Christoph Hellwig
2011-09-16 16:38 ` Andi Kleen
2011-09-17 6:10 ` Jeff Liu
2011-09-17 23:03 ` Andreas Dilger
2011-09-18 1:46 ` Andi Kleen
2011-09-18 7:29 ` Jeff Liu
2011-09-18 8:42 ` Marco Stornelli
2011-09-18 10:33 ` Jeff liu
2011-09-18 10:33 ` Jeff liu
2011-09-18 14:55 ` Chris Mason
2011-09-18 14:55 ` Chris Mason
2011-09-18 14:55 ` Chris Mason
2011-09-19 17:52 ` Andi Kleen
2011-09-19 19:30 ` Chris Mason
2011-09-19 19:59 ` Andi Kleen
2011-09-19 22:55 ` Chris Mason
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1314046152-2175-2-git-send-email-andi@firstfloor.org \
--to=andi@firstfloor.org \
--cc=ak@linux.intel.com \
--cc=hch@infradead.org \
--cc=linux-fsdevel@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=viro@zeniv.linux.org.uk \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.