Cleanup the -EINVAL return value handling and add warning message for invalid
start,end,addr parameters.
V2: Corrected code style and tested for Linux v 3.11-rc2
Signed-off-by: ethan.zhao <[email protected]>
---
arch/x86/pci/mmconfig-shared.c | 12 ++++++------
1 files changed, 6 insertions(+), 6 deletions(-)
diff --git a/arch/x86/pci/mmconfig-shared.c b/arch/x86/pci/mmconfig-shared.c
index 082e881..37f6c7f 100644
--- a/arch/x86/pci/mmconfig-shared.c
+++ b/arch/x86/pci/mmconfig-shared.c
@@ -700,8 +700,13 @@ int pci_mmconfig_insert(struct device *dev, u16 seg, u8 start, u8 end,
if (!(pci_probe & PCI_PROBE_MMCONF) || pci_mmcfg_arch_init_failed)
return -ENODEV;
- if (start > end)
+ if (start > end || !addr) {
+ dev_warn(dev, FW_INFO
+ "Invalid address to add MMCONFIG"
+ "start %02x end %02x addr %pR\n",
+ start, end, addr);
return -EINVAL;
+ }
mutex_lock(&pci_mmcfg_lock);
cfg = pci_mmconfig_lookup(seg, start);
@@ -716,11 +721,6 @@ int pci_mmconfig_insert(struct device *dev, u16 seg, u8 start, u8 end,
return -EEXIST;
}
- if (!addr) {
- mutex_unlock(&pci_mmcfg_lock);
- return -EINVAL;
- }
-
rc = -EBUSY;
cfg = pci_mmconfig_alloc(seg, start, end, addr);
if (cfg == NULL) {
--
1.7.1
Another nit below:
On Jul 27, 2013, at 12:32 PM, [email protected] wrote:
> Cleanup the -EINVAL return value handling and add warning message for invalid
> start,end,addr parameters.
>
> V2: Corrected code style and tested for Linux v 3.11-rc2
>
> Signed-off-by: ethan.zhao <[email protected]>
> ---
> arch/x86/pci/mmconfig-shared.c | 12 ++++++------
> 1 files changed, 6 insertions(+), 6 deletions(-)
>
> diff --git a/arch/x86/pci/mmconfig-shared.c b/arch/x86/pci/mmconfig-shared.c
> index 082e881..37f6c7f 100644
> --- a/arch/x86/pci/mmconfig-shared.c
> +++ b/arch/x86/pci/mmconfig-shared.c
> @@ -700,8 +700,13 @@ int pci_mmconfig_insert(struct device *dev, u16 seg, u8 start, u8 end,
> if (!(pci_probe & PCI_PROBE_MMCONF) || pci_mmcfg_arch_init_failed)
> return -ENODEV;
>
> - if (start > end)
> + if (start > end || !addr) {
> + dev_warn(dev, FW_INFO
> + "Invalid address to add MMCONFIG"
> + "start %02x end %02x addr %pR\n",
As it is here, there will be no space between MMCONFIG and the word start. Better still, put the entire string on one line to aid those searching for the message. There is a general exception to the 80-column rule for user-visible messages such as this.
<snip>
--
Mark Rustad, [email protected]
thanks??got it ,you are right.
?? 2013-7-28??11:09??Mark D Rustad <[email protected]> ะด????
> Another nit below:
>
> On Jul 27, 2013, at 12:32 PM, [email protected] wrote:
>
>> Cleanup the -EINVAL return value handling and add warning message for invalid
>> start,end,addr parameters.
>>
>> V2: Corrected code style and tested for Linux v 3.11-rc2
>>
>> Signed-off-by: ethan.zhao <[email protected]>
>> ---
>> arch/x86/pci/mmconfig-shared.c | 12 ++++++------
>> 1 files changed, 6 insertions(+), 6 deletions(-)
>>
>> diff --git a/arch/x86/pci/mmconfig-shared.c b/arch/x86/pci/mmconfig-shared.c
>> index 082e881..37f6c7f 100644
>> --- a/arch/x86/pci/mmconfig-shared.c
>> +++ b/arch/x86/pci/mmconfig-shared.c
>> @@ -700,8 +700,13 @@ int pci_mmconfig_insert(struct device *dev, u16 seg, u8 start, u8 end,
>> if (!(pci_probe & PCI_PROBE_MMCONF) || pci_mmcfg_arch_init_failed)
>> return -ENODEV;
>>
>> - if (start > end)
>> + if (start > end || !addr) {
>> + dev_warn(dev, FW_INFO
>> + "Invalid address to add MMCONFIG"
>> + "start %02x end %02x addr %pR\n",
>
> As it is here, there will be no space between MMCONFIG and the word start. Better still, put the entire string on one line to aid those searching for the message. There is a general exception to the 80-column rule for user-visible messages such as this.
>
> <snip>
>
> --
> Mark Rustad, [email protected]
>