Re: [Xen-devel] [PATCH 1/9] xen/pciback: Do not dereference psdev during printk when it is NULL.

From: Jan Beulich
Date: Fri Sep 30 2011 - 03:31:56 EST


>>> On 29.09.11 at 21:52, Konrad Rzeszutek Wilk <konrad.wilk@xxxxxxxxxx> wrote:
> . instead use printk(.. facility.
>
> Signed-off-by: Konrad Rzeszutek Wilk <konrad.wilk@xxxxxxxxxx>
> ---
> drivers/xen/xen-pciback/pci_stub.c | 8 +++++---
> 1 files changed, 5 insertions(+), 3 deletions(-)
>
> diff --git a/drivers/xen/xen-pciback/pci_stub.c
> b/drivers/xen/xen-pciback/pci_stub.c
> index aec214a..32d6891 100644
> --- a/drivers/xen/xen-pciback/pci_stub.c
> +++ b/drivers/xen/xen-pciback/pci_stub.c
> @@ -514,9 +514,11 @@ static void kill_domain_by_device(struct pcistub_device
> *psdev)
> int err;
> char nodename[PCI_NODENAME_MAX];
>
> - if (!psdev)
> - dev_err(&psdev->dev->dev,
> - "device is NULL when do AER recovery/kill_domain\n");
> + if (!psdev) {
> + printk(KERN_ERR DRV_NAME
> + ":device is NULL when do AER recovery/kill_domain\n");
> + return;
> + }

This is bogus - all callers of this function already make sure psdev is
non-NULL, so imo the check should be removed or replaced with a
BUG_ON().

Jan

> snprintf(nodename, PCI_NODENAME_MAX, "/local/domain/0/backend/pci/%d/0",
> psdev->pdev->xdev->otherend_id);
> nodename[strlen(nodename)] = '\0';




--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/