From: Shinya Kuribayashi <shinya.kuribayashi@necel.com>
To: u-boot@lists.denx.de
Subject: [U-Boot-Users] [PATCH] PCI_READ_VIA_DWORD_OP: initialize val parameter on fail
Date: Wed, 06 Jun 2007 11:18:12 +0900 [thread overview]
Message-ID: <46661964.1080708@necel.com> (raw)
In-Reply-To: <46660525.3000708@necel.com>
>> I know that this is not your invention, and you just copy existing
>> code, but I think injecting C statements like this through macro
>> arguments is bad style and should be avoided.
>>
>> I have to admit that I don't get wht you need all this "error_code"
>> trickery instead of simpley writing
>>
>> *val = -1;
>>
>>
>> Can you please change your patch like that,
Many users of PCI config read routines tend to ignore the function
ret value, and are only concerned about the contents of *val. Based
on this, pci_hose_read_config_{byte,word}_via_dword should initialize
the *val on dword read error.
Without this fix, for example, we'll go on scanning bus with vendor or
header_type uninitialized. This brings many unnecessary config trials.
Signed-off-by: Shinya Kuribayashi <shinya.kuribayashi@necel.com>
---
drivers/pci.c | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
Index: b/drivers/pci.c
===================================================================
--- a/drivers/pci.c
+++ b/drivers/pci.c
@@ -81,8 +81,10 @@ int pci_hose_read_config_##size##_via_dw
{ \
u32 val32; \
\
- if (pci_hose_read_config_dword(hose, dev, offset & 0xfc, &val32) < 0)\
+ if (pci_hose_read_config_dword(hose, dev, offset & 0xfc, &val32) < 0) { \
+ *val = -1; \
return -1; \
+ } \
\
*val = (val32 >> ((offset & (int)off_mask) * 8)); \
\
next prev parent reply other threads:[~2007-06-06 2:18 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-06-05 7:35 [U-Boot-Users] [PATCH] PCI_READ_VIA_DWORD_OP: initialize val parameter on fail Shinya Kuribayashi
2007-06-05 16:04 ` Wolfgang Denk
2007-06-06 0:51 ` Shinya Kuribayashi
2007-06-06 2:18 ` Shinya Kuribayashi [this message]
2007-06-06 3:33 ` Shinya Kuribayashi
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=46661964.1080708@necel.com \
--to=shinya.kuribayashi@necel.com \
--cc=u-boot@lists.denx.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.