diff options
author | Steven Whitehouse <swhiteho@redhat.com> | 2012-06-07 14:30:16 +0200 |
---|---|---|
committer | Steven Whitehouse <swhiteho@redhat.com> | 2012-06-07 14:30:16 +0200 |
commit | df5d2f5560a9c33129391a136ed9f0ac26abe69b (patch) | |
tree | 856a81be21fad102bc3fe6cbaeb5af5eeb8b21c6 /fs | |
parent | GFS2: Fix error handling when reading an invalid block from the journal (diff) | |
download | linux-df5d2f5560a9c33129391a136ed9f0ac26abe69b.tar.xz linux-df5d2f5560a9c33129391a136ed9f0ac26abe69b.zip |
GFS2: Increase buffer size for glocks and glstats debugfs files
As per Al Viro's suggestion, this increases the buffer size used
for these two files. This provides a speed up of slightly less than
8x (i.e. proportional to the buffer size) for cases when we have
large numbers of glocks.
Cc: Al Viro <viro@ZenIV.linux.org.uk>
Signed-off-by: Steven Whitehouse <swhiteho@redhat.com>
Diffstat (limited to 'fs')
-rw-r--r-- | fs/gfs2/glock.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/fs/gfs2/glock.c b/fs/gfs2/glock.c index dab2526071cc..1c4cddf42a66 100644 --- a/fs/gfs2/glock.c +++ b/fs/gfs2/glock.c @@ -1972,6 +1972,9 @@ static int gfs2_glocks_open(struct inode *inode, struct file *file) struct seq_file *seq = file->private_data; struct gfs2_glock_iter *gi = seq->private; gi->sdp = inode->i_private; + seq->buf = kmalloc(8*PAGE_SIZE, GFP_KERNEL | __GFP_NOWARN); + if (seq->buf) + seq->size = 8*PAGE_SIZE; } return ret; } @@ -1984,6 +1987,9 @@ static int gfs2_glstats_open(struct inode *inode, struct file *file) struct seq_file *seq = file->private_data; struct gfs2_glock_iter *gi = seq->private; gi->sdp = inode->i_private; + seq->buf = kmalloc(8*PAGE_SIZE, GFP_KERNEL | __GFP_NOWARN); + if (seq->buf) + seq->size = 8*PAGE_SIZE; } return ret; } |