diff options
author | Andi Kleen <ak@suse.de> | 2006-04-11 06:54:48 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@g5.osdl.org> | 2006-04-11 09:38:57 -0400 |
commit | ecc16ba96fd5b1a1c1988f0a2b05ff954bdff728 (patch) | |
tree | 57a994d0741ddef2c869db0ef83d3456cc6a13df /arch | |
parent | 3d8a4d795cc1ffa6be5371629ca6c3431af4c2d5 (diff) |
[PATCH] i386/x86-64: Remove checks for value == NULL in PCI config space access
Nobody should pass NULL here. Could in theory make it a BUG,
but the NULL pointer oops will do as well.
Signed-off-by: Andi Kleen <ak@suse.de>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'arch')
-rw-r--r-- | arch/i386/pci/direct.c | 6 | ||||
-rw-r--r-- | arch/i386/pci/mmconfig.c | 2 | ||||
-rw-r--r-- | arch/x86_64/pci/mmconfig.c | 2 |
3 files changed, 6 insertions, 4 deletions
diff --git a/arch/i386/pci/direct.c b/arch/i386/pci/direct.c index 0659ced01185..5d81fb510375 100644 --- a/arch/i386/pci/direct.c +++ b/arch/i386/pci/direct.c | |||
@@ -19,7 +19,7 @@ int pci_conf1_read(unsigned int seg, unsigned int bus, | |||
19 | { | 19 | { |
20 | unsigned long flags; | 20 | unsigned long flags; |
21 | 21 | ||
22 | if (!value || (bus > 255) || (devfn > 255) || (reg > 255)) { | 22 | if ((bus > 255) || (devfn > 255) || (reg > 255)) { |
23 | *value = -1; | 23 | *value = -1; |
24 | return -EINVAL; | 24 | return -EINVAL; |
25 | } | 25 | } |
@@ -94,8 +94,10 @@ static int pci_conf2_read(unsigned int seg, unsigned int bus, | |||
94 | unsigned long flags; | 94 | unsigned long flags; |
95 | int dev, fn; | 95 | int dev, fn; |
96 | 96 | ||
97 | if (!value || (bus > 255) || (devfn > 255) || (reg > 255)) | 97 | if ((bus > 255) || (devfn > 255) || (reg > 255)) { |
98 | *value = -1; | ||
98 | return -EINVAL; | 99 | return -EINVAL; |
100 | } | ||
99 | 101 | ||
100 | dev = PCI_SLOT(devfn); | 102 | dev = PCI_SLOT(devfn); |
101 | fn = PCI_FUNC(devfn); | 103 | fn = PCI_FUNC(devfn); |
diff --git a/arch/i386/pci/mmconfig.c b/arch/i386/pci/mmconfig.c index f77d7f8b9bf6..6b1ea0c9a570 100644 --- a/arch/i386/pci/mmconfig.c +++ b/arch/i386/pci/mmconfig.c | |||
@@ -80,7 +80,7 @@ static int pci_mmcfg_read(unsigned int seg, unsigned int bus, | |||
80 | unsigned long flags; | 80 | unsigned long flags; |
81 | u32 base; | 81 | u32 base; |
82 | 82 | ||
83 | if (!value || (bus > 255) || (devfn > 255) || (reg > 4095)) { | 83 | if ((bus > 255) || (devfn > 255) || (reg > 4095)) { |
84 | *value = -1; | 84 | *value = -1; |
85 | return -EINVAL; | 85 | return -EINVAL; |
86 | } | 86 | } |
diff --git a/arch/x86_64/pci/mmconfig.c b/arch/x86_64/pci/mmconfig.c index b493ed977e7c..1a59a31bb740 100644 --- a/arch/x86_64/pci/mmconfig.c +++ b/arch/x86_64/pci/mmconfig.c | |||
@@ -75,7 +75,7 @@ static int pci_mmcfg_read(unsigned int seg, unsigned int bus, | |||
75 | char __iomem *addr; | 75 | char __iomem *addr; |
76 | 76 | ||
77 | /* Why do we have this when nobody checks it. How about a BUG()!? -AK */ | 77 | /* Why do we have this when nobody checks it. How about a BUG()!? -AK */ |
78 | if (unlikely(!value || (bus > 255) || (devfn > 255) || (reg > 4095))) { | 78 | if (unlikely((bus > 255) || (devfn > 255) || (reg > 4095))) { |
79 | *value = -1; | 79 | *value = -1; |
80 | return -EINVAL; | 80 | return -EINVAL; |
81 | } | 81 | } |