BCC: [email protected]
CC: [email protected]
CC: [email protected]
TO: Kumaravel Thiagarajan <[email protected]>
CC: "Greg Kroah-Hartman" <[email protected]>

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/char-misc.git 
char-misc-next
head:   4ec7ac90ff399b7d9af81cc8afd430a22786c61b
commit: 393fc2f5948fd340d016a9557eea6e1ac2f6c60c [20/24] misc: microchip: 
pci1xxxx: load auxiliary bus driver for the PIO function in the multi-function 
endpoint of pci1xxxx device.
:::::: branch date: 3 days ago
:::::: commit date: 3 days ago
config: microblaze-randconfig-m041-20220905 
(https://download.01.org/0day-ci/archive/20220905/[email protected]/config)
compiler: microblaze-linux-gcc (GCC) 12.1.0

If you fix the issue, kindly add following tag where applicable
Reported-by: kernel test robot <[email protected]>
Reported-by: Dan Carpenter <[email protected]>

smatch warnings:
drivers/misc/mchp_pci1xxxx/mchp_pci1xxxx_gp.c:48 gp_aux_bus_probe() warn: 
possible memory leak of 'aux_bus'
drivers/misc/mchp_pci1xxxx/mchp_pci1xxxx_gp.c:93 gp_aux_bus_probe() warn: 
unsigned 'pdev->irq' is never less than zero.

vim +/aux_bus +48 drivers/misc/mchp_pci1xxxx/mchp_pci1xxxx_gp.c

393fc2f5948fd3 Kumaravel Thiagarajan 2022-08-25   31  
393fc2f5948fd3 Kumaravel Thiagarajan 2022-08-25   32  static int 
gp_aux_bus_probe(struct pci_dev *pdev, const struct pci_device_id *id)
393fc2f5948fd3 Kumaravel Thiagarajan 2022-08-25   33  {
393fc2f5948fd3 Kumaravel Thiagarajan 2022-08-25   34    struct aux_bus_device 
*aux_bus;
393fc2f5948fd3 Kumaravel Thiagarajan 2022-08-25   35    int retval;
393fc2f5948fd3 Kumaravel Thiagarajan 2022-08-25   36  
393fc2f5948fd3 Kumaravel Thiagarajan 2022-08-25   37    retval = 
pcim_enable_device(pdev);
393fc2f5948fd3 Kumaravel Thiagarajan 2022-08-25   38    if (retval)
393fc2f5948fd3 Kumaravel Thiagarajan 2022-08-25   39            return retval;
393fc2f5948fd3 Kumaravel Thiagarajan 2022-08-25   40  
393fc2f5948fd3 Kumaravel Thiagarajan 2022-08-25   41    aux_bus = 
kzalloc(sizeof(*aux_bus), GFP_KERNEL);
393fc2f5948fd3 Kumaravel Thiagarajan 2022-08-25   42    if (!aux_bus)
393fc2f5948fd3 Kumaravel Thiagarajan 2022-08-25   43            return -ENOMEM;
393fc2f5948fd3 Kumaravel Thiagarajan 2022-08-25   44  
393fc2f5948fd3 Kumaravel Thiagarajan 2022-08-25   45    
aux_bus->aux_device_wrapper[0] = 
kzalloc(sizeof(*aux_bus->aux_device_wrapper[0]),
393fc2f5948fd3 Kumaravel Thiagarajan 2022-08-25   46                            
                 GFP_KERNEL);
393fc2f5948fd3 Kumaravel Thiagarajan 2022-08-25   47    if 
(!aux_bus->aux_device_wrapper[0])
393fc2f5948fd3 Kumaravel Thiagarajan 2022-08-25  @48            return -ENOMEM;
393fc2f5948fd3 Kumaravel Thiagarajan 2022-08-25   49  
393fc2f5948fd3 Kumaravel Thiagarajan 2022-08-25   50    retval = 
ida_alloc(&gp_client_ida, GFP_KERNEL);
393fc2f5948fd3 Kumaravel Thiagarajan 2022-08-25   51    if (retval < 0)
393fc2f5948fd3 Kumaravel Thiagarajan 2022-08-25   52            goto 
err_ida_alloc_0;
393fc2f5948fd3 Kumaravel Thiagarajan 2022-08-25   53  
393fc2f5948fd3 Kumaravel Thiagarajan 2022-08-25   54    
aux_bus->aux_device_wrapper[0]->aux_dev.name = aux_dev_otp_e2p_name;
393fc2f5948fd3 Kumaravel Thiagarajan 2022-08-25   55    
aux_bus->aux_device_wrapper[0]->aux_dev.dev.parent = &pdev->dev;
393fc2f5948fd3 Kumaravel Thiagarajan 2022-08-25   56    
aux_bus->aux_device_wrapper[0]->aux_dev.dev.release = 
gp_auxiliary_device_release;
393fc2f5948fd3 Kumaravel Thiagarajan 2022-08-25   57    
aux_bus->aux_device_wrapper[0]->aux_dev.id = retval;
393fc2f5948fd3 Kumaravel Thiagarajan 2022-08-25   58  
393fc2f5948fd3 Kumaravel Thiagarajan 2022-08-25   59    
aux_bus->aux_device_wrapper[0]->gp_aux_data.region_start = 
pci_resource_start(pdev, 0);
393fc2f5948fd3 Kumaravel Thiagarajan 2022-08-25   60    
aux_bus->aux_device_wrapper[0]->gp_aux_data.region_length = 
pci_resource_end(pdev, 0);
393fc2f5948fd3 Kumaravel Thiagarajan 2022-08-25   61  
393fc2f5948fd3 Kumaravel Thiagarajan 2022-08-25   62    retval = 
auxiliary_device_init(&aux_bus->aux_device_wrapper[0]->aux_dev);
393fc2f5948fd3 Kumaravel Thiagarajan 2022-08-25   63    if (retval < 0)
393fc2f5948fd3 Kumaravel Thiagarajan 2022-08-25   64            goto 
err_aux_dev_init_0;
393fc2f5948fd3 Kumaravel Thiagarajan 2022-08-25   65  
393fc2f5948fd3 Kumaravel Thiagarajan 2022-08-25   66    retval = 
auxiliary_device_add(&aux_bus->aux_device_wrapper[0]->aux_dev);
393fc2f5948fd3 Kumaravel Thiagarajan 2022-08-25   67    if (retval)
393fc2f5948fd3 Kumaravel Thiagarajan 2022-08-25   68            goto 
err_aux_dev_add_0;
393fc2f5948fd3 Kumaravel Thiagarajan 2022-08-25   69  
393fc2f5948fd3 Kumaravel Thiagarajan 2022-08-25   70    
aux_bus->aux_device_wrapper[1] = 
kzalloc(sizeof(*aux_bus->aux_device_wrapper[1]),
393fc2f5948fd3 Kumaravel Thiagarajan 2022-08-25   71                            
                 GFP_KERNEL);
393fc2f5948fd3 Kumaravel Thiagarajan 2022-08-25   72    if 
(!aux_bus->aux_device_wrapper[1])
393fc2f5948fd3 Kumaravel Thiagarajan 2022-08-25   73            return -ENOMEM;
393fc2f5948fd3 Kumaravel Thiagarajan 2022-08-25   74  
393fc2f5948fd3 Kumaravel Thiagarajan 2022-08-25   75    retval = 
ida_alloc(&gp_client_ida, GFP_KERNEL);
393fc2f5948fd3 Kumaravel Thiagarajan 2022-08-25   76    if (retval < 0)
393fc2f5948fd3 Kumaravel Thiagarajan 2022-08-25   77            goto 
err_ida_alloc_1;
393fc2f5948fd3 Kumaravel Thiagarajan 2022-08-25   78  
393fc2f5948fd3 Kumaravel Thiagarajan 2022-08-25   79    
aux_bus->aux_device_wrapper[1]->aux_dev.name = aux_dev_gpio_name;
393fc2f5948fd3 Kumaravel Thiagarajan 2022-08-25   80    
aux_bus->aux_device_wrapper[1]->aux_dev.dev.parent = &pdev->dev;
393fc2f5948fd3 Kumaravel Thiagarajan 2022-08-25   81    
aux_bus->aux_device_wrapper[1]->aux_dev.dev.release = 
gp_auxiliary_device_release;
393fc2f5948fd3 Kumaravel Thiagarajan 2022-08-25   82    
aux_bus->aux_device_wrapper[1]->aux_dev.id = retval;
393fc2f5948fd3 Kumaravel Thiagarajan 2022-08-25   83  
393fc2f5948fd3 Kumaravel Thiagarajan 2022-08-25   84    
aux_bus->aux_device_wrapper[1]->gp_aux_data.region_start = 
pci_resource_start(pdev, 0);
393fc2f5948fd3 Kumaravel Thiagarajan 2022-08-25   85    
aux_bus->aux_device_wrapper[1]->gp_aux_data.region_length = 
pci_resource_end(pdev, 0);
393fc2f5948fd3 Kumaravel Thiagarajan 2022-08-25   86  
393fc2f5948fd3 Kumaravel Thiagarajan 2022-08-25   87    retval = 
pci_alloc_irq_vectors(pdev, 1, 1, PCI_IRQ_ALL_TYPES);
393fc2f5948fd3 Kumaravel Thiagarajan 2022-08-25   88  
393fc2f5948fd3 Kumaravel Thiagarajan 2022-08-25   89    if (retval < 0)
393fc2f5948fd3 Kumaravel Thiagarajan 2022-08-25   90            return retval;
393fc2f5948fd3 Kumaravel Thiagarajan 2022-08-25   91  
393fc2f5948fd3 Kumaravel Thiagarajan 2022-08-25   92    pdev->irq = 
pci_irq_vector(pdev, 0);
393fc2f5948fd3 Kumaravel Thiagarajan 2022-08-25  @93    if (pdev->irq < 0)
393fc2f5948fd3 Kumaravel Thiagarajan 2022-08-25   94            return retval;
393fc2f5948fd3 Kumaravel Thiagarajan 2022-08-25   95  
393fc2f5948fd3 Kumaravel Thiagarajan 2022-08-25   96    
aux_bus->aux_device_wrapper[1]->gp_aux_data.irq_num = pdev->irq;
393fc2f5948fd3 Kumaravel Thiagarajan 2022-08-25   97  
393fc2f5948fd3 Kumaravel Thiagarajan 2022-08-25   98    retval = 
auxiliary_device_init(&aux_bus->aux_device_wrapper[1]->aux_dev);
393fc2f5948fd3 Kumaravel Thiagarajan 2022-08-25   99    if (retval < 0)
393fc2f5948fd3 Kumaravel Thiagarajan 2022-08-25  100            goto 
err_aux_dev_init_1;
393fc2f5948fd3 Kumaravel Thiagarajan 2022-08-25  101  
393fc2f5948fd3 Kumaravel Thiagarajan 2022-08-25  102    retval = 
auxiliary_device_add(&aux_bus->aux_device_wrapper[1]->aux_dev);
393fc2f5948fd3 Kumaravel Thiagarajan 2022-08-25  103    if (retval)
393fc2f5948fd3 Kumaravel Thiagarajan 2022-08-25  104            goto 
err_aux_dev_add_1;
393fc2f5948fd3 Kumaravel Thiagarajan 2022-08-25  105  
393fc2f5948fd3 Kumaravel Thiagarajan 2022-08-25  106    pci_set_drvdata(pdev, 
aux_bus);
393fc2f5948fd3 Kumaravel Thiagarajan 2022-08-25  107    pci_set_master(pdev);
393fc2f5948fd3 Kumaravel Thiagarajan 2022-08-25  108  
393fc2f5948fd3 Kumaravel Thiagarajan 2022-08-25  109    return 0;
393fc2f5948fd3 Kumaravel Thiagarajan 2022-08-25  110  
393fc2f5948fd3 Kumaravel Thiagarajan 2022-08-25  111  err_aux_dev_add_1:
393fc2f5948fd3 Kumaravel Thiagarajan 2022-08-25  112    
auxiliary_device_uninit(&aux_bus->aux_device_wrapper[1]->aux_dev);
393fc2f5948fd3 Kumaravel Thiagarajan 2022-08-25  113  
393fc2f5948fd3 Kumaravel Thiagarajan 2022-08-25  114  err_aux_dev_init_1:
393fc2f5948fd3 Kumaravel Thiagarajan 2022-08-25  115    
ida_free(&gp_client_ida, aux_bus->aux_device_wrapper[1]->aux_dev.id);
393fc2f5948fd3 Kumaravel Thiagarajan 2022-08-25  116  
393fc2f5948fd3 Kumaravel Thiagarajan 2022-08-25  117  err_ida_alloc_1:
393fc2f5948fd3 Kumaravel Thiagarajan 2022-08-25  118    
kfree(aux_bus->aux_device_wrapper[1]);
393fc2f5948fd3 Kumaravel Thiagarajan 2022-08-25  119  
393fc2f5948fd3 Kumaravel Thiagarajan 2022-08-25  120  err_aux_dev_add_0:
393fc2f5948fd3 Kumaravel Thiagarajan 2022-08-25  121    
auxiliary_device_uninit(&aux_bus->aux_device_wrapper[0]->aux_dev);
393fc2f5948fd3 Kumaravel Thiagarajan 2022-08-25  122  
393fc2f5948fd3 Kumaravel Thiagarajan 2022-08-25  123  err_aux_dev_init_0:
393fc2f5948fd3 Kumaravel Thiagarajan 2022-08-25  124    
ida_free(&gp_client_ida, aux_bus->aux_device_wrapper[0]->aux_dev.id);
393fc2f5948fd3 Kumaravel Thiagarajan 2022-08-25  125  
393fc2f5948fd3 Kumaravel Thiagarajan 2022-08-25  126  err_ida_alloc_0:
393fc2f5948fd3 Kumaravel Thiagarajan 2022-08-25  127    
kfree(aux_bus->aux_device_wrapper[0]);
393fc2f5948fd3 Kumaravel Thiagarajan 2022-08-25  128  
393fc2f5948fd3 Kumaravel Thiagarajan 2022-08-25  129    return retval;
393fc2f5948fd3 Kumaravel Thiagarajan 2022-08-25  130  }
393fc2f5948fd3 Kumaravel Thiagarajan 2022-08-25  131  

-- 
0-DAY CI Kernel Test Service
https://01.org/lkp
_______________________________________________
kbuild mailing list -- [email protected]
To unsubscribe send an email to [email protected]

Reply via email to