diff options
author | Ingo Molnar <mingo@kernel.org> | 2021-02-17 14:04:39 +0100 |
---|---|---|
committer | Ingo Molnar <mingo@kernel.org> | 2021-02-17 14:04:39 +0100 |
commit | ed3cd45f8ca873dd320ff7e6b4c1c8f83a65302c (patch) | |
tree | 783a02c1e78964654fe6d9a9c14b24bfc50e6b3b /drivers/misc/pvpanic.c | |
parent | bae4ec13640b0915e7dd86da7e65c5d085160571 (diff) | |
parent | f40ddce88593482919761f74910f42f4b84c004b (diff) | |
download | linux-ed3cd45f8ca873dd320ff7e6b4c1c8f83a65302c.tar.gz linux-ed3cd45f8ca873dd320ff7e6b4c1c8f83a65302c.tar.bz2 linux-ed3cd45f8ca873dd320ff7e6b4c1c8f83a65302c.zip |
Merge tag 'v5.11' into sched/core, to pick up fixes & refresh the branch
Signed-off-by: Ingo Molnar <mingo@kernel.org>
Diffstat (limited to 'drivers/misc/pvpanic.c')
-rw-r--r-- | drivers/misc/pvpanic.c | 19 |
1 files changed, 15 insertions, 4 deletions
diff --git a/drivers/misc/pvpanic.c b/drivers/misc/pvpanic.c index 951b37da5e3c..41cab297d66e 100644 --- a/drivers/misc/pvpanic.c +++ b/drivers/misc/pvpanic.c @@ -55,12 +55,23 @@ static int pvpanic_mmio_probe(struct platform_device *pdev) struct resource *res; res = platform_get_mem_or_io(pdev, 0); - if (res && resource_type(res) == IORESOURCE_IO) + if (!res) + return -EINVAL; + + switch (resource_type(res)) { + case IORESOURCE_IO: base = devm_ioport_map(dev, res->start, resource_size(res)); - else + if (!base) + return -ENOMEM; + break; + case IORESOURCE_MEM: base = devm_ioremap_resource(dev, res); - if (IS_ERR(base)) - return PTR_ERR(base); + if (IS_ERR(base)) + return PTR_ERR(base); + break; + default: + return -EINVAL; + } atomic_notifier_chain_register(&panic_notifier_list, &pvpanic_panic_nb); |