Subject: Re: [PATCH] pcnet32: VLB support fixes

From: Jeff Garzik <[email-masked]>
Date: Thu, 30 Jul 2009 17:32:19 -0400

Bartlomiej Zolnierkiewicz wrote:
> From: Bartlomiej Zolnierkiewicz <[email-masked]>
> Subject: [PATCH] pcnet32: VLB support fixes
> 
> VLB support has been broken since at least 2004-2005 period as some
> changes introduced back then assumed that ->pci_dev is always valid,
> lets try to fix it:
> 
> - remove duplicated SET_NETDEV_DEV() call
> 
> - call SET_NETDEV_DEV() only for PCI devices
> 
> - check for ->pci_dev validity in pcnet32_open()
> 
> [ Alternatively we may consider removing VLB support but there would not
>   be much gain in it since an extra driver code needed for VLB support is
>   minimal and quite simple. ]
> 
> This takes care of the following entry from Dan's list:
> 
> drivers/net/pcnet32.c +1889 pcnet32_probe1(298) warning: variable derefenced before check 'pdev'
> 
> Reported-by: Dan Carpenter <[email-masked]>
> Cc: [email-masked]
> Cc: [email-masked]
> Cc: Julia Lawall <[email-masked]>
> Signed-off-by: Bartlomiej Zolnierkiewicz <[email-masked]>
> ---
> PS I still keep the original cc: list from the smatch thread -- please let
> me know if you don't want to be spammed.. ;-)
> 
>  drivers/net/pcnet32.c |   12 +++++++-----
>  1 file changed, 7 insertions(+), 5 deletions(-)

ACK -- the patch is correct AFAICS -- but would it not be better to have 
a struct device for the VLB device?

We have capability to create struct device for isa and eisa, so VLB is 
quite doable.

	Jeff, who converted old-ISDN ISA+EISA+PCI drivers to
	      hotplug model, once upon a time