From: Andrew Morton <akpm@linux-foundation.org>
To: Andres Salomon <dilinger@queued.net>
Cc: linux-kernel@vger.kernel.org,
Cortland Setlow <csetlow@tower-research.com>,
corbet@lwn.net, video4linux-list@redhat.com,
Mauro Carvalho Chehab <mchehab@infradead.org>
Subject: Re: [PATCH resend] ov7670: clean up ov7670_read semantics
Date: Fri, 11 Jul 2008 15:19:19 -0700 [thread overview]
Message-ID: <20080711151919.9cda44ea.akpm@linux-foundation.org> (raw)
In-Reply-To: <20080711165216.4dc32c4c@fred>
On Fri, 11 Jul 2008 16:52:16 -0400 Andres Salomon <dilinger@queued.net> wrote:
> [note: this should probably go in for 2.6.26, as it fixes a bug in
> ov7670_s_fmt where we incorrectly think that we've failed because we
> return !0]
>
In which case 2.6.25.x wants the fix as well?
>
> Cortland Setlow pointed out a bug in ov7670.c where the result from
> ov7670_read() was just being checked for !0, rather than <0. This
> made me realize that ov7670_read's semantics were rather confusing;
> it both fills in 'value' with the result, and returns it. This is
> goes against general kernel convention; so rather than fixing callers,
> let's fix the function.
>
> This makes ov7670_read return <0 in the case of an error, and 0 upon
> success. Thus, code like:
>
> res = ov7670_read(...);
> if (!res)
> goto error;
>
> ..will work properly.
>
> Signed-off-by: Cortland Setlow <csetlow@tower-research.com>
> Signed-off-by: Andres Salomon <dilinger@debian.org>
> Acked-by: Jonathan Corbet <corbet@lwn.net>
> ---
> drivers/media/video/ov7670.c | 4 +++-
> 1 files changed, 3 insertions(+), 1 deletions(-)
>
> diff --git a/drivers/media/video/ov7670.c b/drivers/media/video/ov7670.c
> index 2bc6bdc..d7bfd30 100644
> --- a/drivers/media/video/ov7670.c
> +++ b/drivers/media/video/ov7670.c
> @@ -406,8 +406,10 @@ static int ov7670_read(struct i2c_client *c,
> unsigned char reg, int ret;
You have some wordwrapping happening there.
> ret = i2c_smbus_read_byte_data(c, reg);
> - if (ret >= 0)
> + if (ret >= 0) {
> *value = (unsigned char) ret;
> + ret = 0;
> + }
> return ret;
> }
>
> --
> 1.5.5.3
next prev parent reply other threads:[~2008-07-11 22:20 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-07-11 20:52 [PATCH resend] ov7670: clean up ov7670_read semantics Andres Salomon
2008-07-11 22:19 ` Andrew Morton [this message]
2008-07-11 22:42 ` Andres Salomon
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=20080711151919.9cda44ea.akpm@linux-foundation.org \
--to=akpm@linux-foundation.org \
--cc=corbet@lwn.net \
--cc=csetlow@tower-research.com \
--cc=dilinger@queued.net \
--cc=linux-kernel@vger.kernel.org \
--cc=mchehab@infradead.org \
--cc=video4linux-list@redhat.com \
/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.