From: Miao Xie <miaox@cn.fujitsu.com>
To: Tejun Heo <teheo@suse.de>
Cc: gregkh@suse.de, linux-kernel@vger.kernel.org
Subject: Re: [PATCH] sysfs: fix off-by-one error in fill_read_buffer
Date: Tue, 13 Nov 2007 11:50:18 +0800 [thread overview]
Message-ID: <47391EFA.4000004@cn.fujitsu.com> (raw)
In-Reply-To: <47385E4A.5030306@suse.de>
on 2007-11-12 22:08 Tejun Heo wrote:
> It isn't strictly a bug. If the ->show() op fills full PAGE_SIZE and
> returns PAGE_SIZE, the user will get full PAGE_SIZE bytes correctly, so
> it will work. However, considering normal use cases, return value of
> PAGE_SIZE very likely indicates an error condition, so considering it a
> BUG condition is a good idea.
>
> Miao, can you please note that the code works fine with PAGE_SIZE return
> but it's likely to indicate truncated result or overflow in normal use
> cases as a comment on top of the BUG_ON()?
>
> Thanks.
OK, I did it.
Signed-off-by: Miao Xie <miaox@cn.fujitsu.com>
---
fs/sysfs/file.c | 4 +++-
1 files changed, 3 insertions(+), 1 deletions(-)
diff --git a/fs/sysfs/file.c b/fs/sysfs/file.c
index 27d1785..7f6a8d2 100644
--- a/fs/sysfs/file.c
+++ b/fs/sysfs/file.c
@@ -119,7 +119,9 @@ static int fill_read_buffer(struct dentry * dentry, struct sysfs_buffer * buffer
sysfs_put_active_two(attr_sd);
- BUG_ON(count > (ssize_t)PAGE_SIZE);
+ /* the code works fine with PAGE_SIZE return but it's likely to
+ indicate truncated result or overflow in normal use cases. */
+ BUG_ON(count >= (ssize_t)PAGE_SIZE);
if (count >= 0) {
buffer->needs_read_fill = 0;
buffer->count = count;
--
1.5.3
next prev parent reply other threads:[~2007-11-13 3:50 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-11-08 11:06 [PATCH] sysfs: fix off-by-one error in fill_read_buffer Miao Xie
2007-11-12 14:08 ` Tejun Heo
2007-11-13 3:50 ` Miao Xie [this message]
2007-11-13 4:43 ` Tejun Heo
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=47391EFA.4000004@cn.fujitsu.com \
--to=miaox@cn.fujitsu.com \
--cc=gregkh@suse.de \
--cc=linux-kernel@vger.kernel.org \
--cc=teheo@suse.de \
/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.