lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <20210324000541.3y6n235fsk6wxlc7@Rk>
Date:   Wed, 24 Mar 2021 08:05:41 +0800
From:   Coiby Xu <coiby.xu@...il.com>
To:     Dan Carpenter <dan.carpenter@...cle.com>
Cc:     kbuild@...ts.01.org, lkp@...el.com, kbuild-all@...ts.01.org,
        linux-kernel@...r.kernel.org,
        Greg Kroah-Hartman <gregkh@...uxfoundation.org>
Subject: Re: drivers/staging/qlge/qlge_main.c:4564 qlge_probe() warn: missing
 error code 'err'

On Mon, Mar 22, 2021 at 06:14:08PM +0300, Dan Carpenter wrote:
>On Wed, Mar 10, 2021 at 08:21:37AM +0800, Coiby Xu wrote:
>> Hi Dan,
>>
>> Thanks for finding this issue! I'll submit all the patches including the
>> one for the previous issue reported by you ("[bug report] staging: qlge:
>> Initialize devlink health dump framework") after finishing all items listed
>> in drivers/staging/qlge/TODO.
>>
>
>I just sent a patch for this.
>
>Part of my QC process before I send a patch is to search my inbox to
>see if I have already sent the patch before.  I have the memory of a
>gnat and static checker warnings all look the same after a while so I
>once wrote the same patch three times before I implemented this as part
>of my QC process.
>
>Anyway, it turns out that I did report this bug already but since you
>hadn't sent a fix, I decided to just send my fix instead of deleting it.
>

Thank you for sharing the info about your QC process. 

>When kbuild detects a bug in your patch then please fix it as soon as
>you can.  Certainly don't wait until "all the TODO items" are done.  (0_0)

Thanks for the suggestion! The reason I haven't sent the patch for this
bug is I haven't tested the patch on a system using this qlge driver.
Red Hat has a system where I can do testing but I need to borrow it and
return it asap. So I want to test all the patches together when finishing 
"all the TODO items". 

>Just do what I do and promise to "fix it tomorrow morning" and then
>forget about it forever.  ;)
>

Sorry for keeping you waiting. I'll fix a bug detected by kbuild as soon
as possible next time especially when a fix is unlikely to introduce
another issue.

>regards,
>dan carpenter
>
>> On Thu, Feb 25, 2021 at 01:03:03PM +0300, Dan Carpenter wrote:
>> > tree:   https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git  master
>> > head:   29c395c77a9a514c5857c45ceae2665e9bd99ac7
>> > commit: 953b94009377419f28fd0153f91fcd5b5a347608 staging: qlge: Initialize devlink health dump framework
>> > config: i386-randconfig-m021-20210225 (attached as .config)
>> > compiler: gcc-9 (Debian 9.3.0-15) 9.3.0
>> >
>> > If you fix the issue, kindly add following tag as appropriate
>> > Reported-by: kernel test robot <lkp@...el.com>
>> > Reported-by: Dan Carpenter <dan.carpenter@...cle.com>
>> >
>> > smatch warnings:
>> > drivers/staging/qlge/qlge_main.c:4564 qlge_probe() warn: missing error code 'err'
>> >
>> > vim +/err +4564 drivers/staging/qlge/qlge_main.c
>> >
>> > 5d8e87265715a1 drivers/net/ethernet/qlogic/qlge/qlge_main.c Bill Pemberton     2012-12-03  4544  static int qlge_probe(struct pci_dev *pdev,
>> > c4e84bde1d595d drivers/net/qlge/qlge_main.c                 Ron Mercer         2008-09-18  4545  		      const struct pci_device_id *pci_entry)
>> > c4e84bde1d595d drivers/net/qlge/qlge_main.c                 Ron Mercer         2008-09-18  4546  {
>> > 953b9400937741 drivers/staging/qlge/qlge_main.c             Coiby Xu           2021-01-23  4547  	struct qlge_netdev_priv *ndev_priv;
>> > f8c047be540197 drivers/staging/qlge/qlge_main.c             Coiby Xu           2021-01-23  4548  	struct qlge_adapter *qdev = NULL;
>> > 953b9400937741 drivers/staging/qlge/qlge_main.c             Coiby Xu           2021-01-23  4549  	struct net_device *ndev = NULL;
>> > 953b9400937741 drivers/staging/qlge/qlge_main.c             Coiby Xu           2021-01-23  4550  	struct devlink *devlink;
>> > f41e1a0a9462fc drivers/staging/qlge/qlge_main.c             Dorothea Ehrl      2019-11-27  4551  	static int cards_found;
>> > c4e84bde1d595d drivers/net/qlge/qlge_main.c                 Ron Mercer         2008-09-18  4552  	int err = 0;
>> > c4e84bde1d595d drivers/net/qlge/qlge_main.c                 Ron Mercer         2008-09-18  4553
>> > 953b9400937741 drivers/staging/qlge/qlge_main.c             Coiby Xu           2021-01-23  4554  	devlink = devlink_alloc(&qlge_devlink_ops, sizeof(struct qlge_adapter));
>> > 953b9400937741 drivers/staging/qlge/qlge_main.c             Coiby Xu           2021-01-23  4555  	if (!devlink)
>> > 953b9400937741 drivers/staging/qlge/qlge_main.c             Coiby Xu           2021-01-23  4556  		return -ENOMEM;
>> > 953b9400937741 drivers/staging/qlge/qlge_main.c             Coiby Xu           2021-01-23  4557
>> > 953b9400937741 drivers/staging/qlge/qlge_main.c             Coiby Xu           2021-01-23  4558  	qdev = devlink_priv(devlink);
>> > 953b9400937741 drivers/staging/qlge/qlge_main.c             Coiby Xu           2021-01-23  4559
>> > 953b9400937741 drivers/staging/qlge/qlge_main.c             Coiby Xu           2021-01-23  4560  	ndev = alloc_etherdev_mq(sizeof(struct qlge_netdev_priv),
>> > 1b998958b301fb drivers/staging/qlge/qlge_main.c             Scott Schafer      2019-12-11  4561  				 min(MAX_CPUS,
>> > 1b998958b301fb drivers/staging/qlge/qlge_main.c             Scott Schafer      2019-12-11  4562  				     netif_get_num_default_rss_queues()));
>> > c4e84bde1d595d drivers/net/qlge/qlge_main.c                 Ron Mercer         2008-09-18  4563  	if (!ndev)
>> > 953b9400937741 drivers/staging/qlge/qlge_main.c             Coiby Xu           2021-01-23 @4564  		goto devlink_free;
>> >
>> > "err = -ENOMEM;"
>> >
>> > c4e84bde1d595d drivers/net/qlge/qlge_main.c                 Ron Mercer         2008-09-18  4565
>> > 953b9400937741 drivers/staging/qlge/qlge_main.c             Coiby Xu           2021-01-23  4566  	ndev_priv = netdev_priv(ndev);
>> > 953b9400937741 drivers/staging/qlge/qlge_main.c             Coiby Xu           2021-01-23  4567  	ndev_priv->qdev = qdev;
>> > 953b9400937741 drivers/staging/qlge/qlge_main.c             Coiby Xu           2021-01-23  4568  	ndev_priv->ndev = ndev;
>> > 953b9400937741 drivers/staging/qlge/qlge_main.c             Coiby Xu           2021-01-23  4569  	qdev->ndev = ndev;
>> > 953b9400937741 drivers/staging/qlge/qlge_main.c             Coiby Xu           2021-01-23  4570  	err = qlge_init_device(pdev, qdev, cards_found);
>> > 953b9400937741 drivers/staging/qlge/qlge_main.c             Coiby Xu           2021-01-23  4571  	if (err < 0)
>> > 953b9400937741 drivers/staging/qlge/qlge_main.c             Coiby Xu           2021-01-23  4572  		goto netdev_free;
>> > c4e84bde1d595d drivers/net/qlge/qlge_main.c                 Ron Mercer         2008-09-18  4573
>> > c4e84bde1d595d drivers/net/qlge/qlge_main.c                 Ron Mercer         2008-09-18  4574  	SET_NETDEV_DEV(ndev, &pdev->dev);
>> > a45adbe8d35247 drivers/net/ethernet/qlogic/qlge/qlge_main.c Jitendra Kalsaria  2013-09-27  4575  	ndev->hw_features = NETIF_F_SG |
>> > a45adbe8d35247 drivers/net/ethernet/qlogic/qlge/qlge_main.c Jitendra Kalsaria  2013-09-27  4576  		NETIF_F_IP_CSUM |
>> > a45adbe8d35247 drivers/net/ethernet/qlogic/qlge/qlge_main.c Jitendra Kalsaria  2013-09-27  4577  		NETIF_F_TSO |
>> > a45adbe8d35247 drivers/net/ethernet/qlogic/qlge/qlge_main.c Jitendra Kalsaria  2013-09-27  4578  		NETIF_F_TSO_ECN |
>> > a45adbe8d35247 drivers/net/ethernet/qlogic/qlge/qlge_main.c Jitendra Kalsaria  2013-09-27  4579  		NETIF_F_HW_VLAN_CTAG_TX |
>> > a45adbe8d35247 drivers/net/ethernet/qlogic/qlge/qlge_main.c Jitendra Kalsaria  2013-09-27  4580  		NETIF_F_HW_VLAN_CTAG_RX |
>> > a45adbe8d35247 drivers/net/ethernet/qlogic/qlge/qlge_main.c Jitendra Kalsaria  2013-09-27  4581  		NETIF_F_HW_VLAN_CTAG_FILTER |
>> > a45adbe8d35247 drivers/net/ethernet/qlogic/qlge/qlge_main.c Jitendra Kalsaria  2013-09-27  4582  		NETIF_F_RXCSUM;
>> > a45adbe8d35247 drivers/net/ethernet/qlogic/qlge/qlge_main.c Jitendra Kalsaria  2013-09-27  4583  	ndev->features = ndev->hw_features;
>> > 1a0150a93c4969 drivers/net/ethernet/qlogic/qlge/qlge_main.c brenohl@...ibm.com 2012-07-27  4584  	ndev->vlan_features = ndev->hw_features;
>> > 51bb352f15595f drivers/net/ethernet/qlogic/qlge/qlge_main.c Jitendra Kalsaria  2014-01-14  4585  	/* vlan gets same features (except vlan filter) */
>> > f6d1ac4b5f15f5 drivers/net/ethernet/qlogic/qlge/qlge_main.c Vlad Yasevich      2014-03-27  4586  	ndev->vlan_features &= ~(NETIF_F_HW_VLAN_CTAG_FILTER |
>> > f6d1ac4b5f15f5 drivers/net/ethernet/qlogic/qlge/qlge_main.c Vlad Yasevich      2014-03-27  4587  				 NETIF_F_HW_VLAN_CTAG_TX |
>> > f6d1ac4b5f15f5 drivers/net/ethernet/qlogic/qlge/qlge_main.c Vlad Yasevich      2014-03-27  4588  				 NETIF_F_HW_VLAN_CTAG_RX);
>> > c4e84bde1d595d drivers/net/qlge/qlge_main.c                 Ron Mercer         2008-09-18  4589
>> > c4e84bde1d595d drivers/net/qlge/qlge_main.c                 Ron Mercer         2008-09-18  4590  	if (test_bit(QL_DMA64, &qdev->flags))
>> > c4e84bde1d595d drivers/net/qlge/qlge_main.c                 Ron Mercer         2008-09-18  4591  		ndev->features |= NETIF_F_HIGHDMA;
>> > c4e84bde1d595d drivers/net/qlge/qlge_main.c                 Ron Mercer         2008-09-18  4592
>> > c4e84bde1d595d drivers/net/qlge/qlge_main.c                 Ron Mercer         2008-09-18  4593  	/*
>> > c4e84bde1d595d drivers/net/qlge/qlge_main.c                 Ron Mercer         2008-09-18  4594  	 * Set up net_device structure.
>> > c4e84bde1d595d drivers/net/qlge/qlge_main.c                 Ron Mercer         2008-09-18  4595  	 */
>> > c4e84bde1d595d drivers/net/qlge/qlge_main.c                 Ron Mercer         2008-09-18  4596  	ndev->tx_queue_len = qdev->tx_ring_size;
>> > c4e84bde1d595d drivers/net/qlge/qlge_main.c                 Ron Mercer         2008-09-18  4597  	ndev->irq = pdev->irq;
>> > 25ed784910e43e drivers/net/qlge/qlge_main.c                 Stephen Hemminger  2008-11-21  4598
>> > 25ed784910e43e drivers/net/qlge/qlge_main.c                 Stephen Hemminger  2008-11-21  4599  	ndev->netdev_ops = &qlge_netdev_ops;
>> > 7ad24ea4bf620a drivers/net/ethernet/qlogic/qlge/qlge_main.c Wilfried Klaebe    2014-05-11  4600  	ndev->ethtool_ops = &qlge_ethtool_ops;
>> > c4e84bde1d595d drivers/net/qlge/qlge_main.c                 Ron Mercer         2008-09-18  4601  	ndev->watchdog_timeo = 10 * HZ;
>> > 25ed784910e43e drivers/net/qlge/qlge_main.c                 Stephen Hemminger  2008-11-21  4602
>> > d894be57ca92c8 drivers/net/ethernet/qlogic/qlge/qlge_main.c Jarod Wilson       2016-10-20  4603  	/* MTU range: this driver only supports 1500 or 9000, so this only
>> > d894be57ca92c8 drivers/net/ethernet/qlogic/qlge/qlge_main.c Jarod Wilson       2016-10-20  4604  	 * filters out values above or below, and we'll rely on
>> > d894be57ca92c8 drivers/net/ethernet/qlogic/qlge/qlge_main.c Jarod Wilson       2016-10-20  4605  	 * qlge_change_mtu to make sure only 1500 or 9000 are allowed
>> > d894be57ca92c8 drivers/net/ethernet/qlogic/qlge/qlge_main.c Jarod Wilson       2016-10-20  4606  	 */
>> > d894be57ca92c8 drivers/net/ethernet/qlogic/qlge/qlge_main.c Jarod Wilson       2016-10-20  4607  	ndev->min_mtu = ETH_DATA_LEN;
>> > d894be57ca92c8 drivers/net/ethernet/qlogic/qlge/qlge_main.c Jarod Wilson       2016-10-20  4608  	ndev->max_mtu = 9000;
>> > d894be57ca92c8 drivers/net/ethernet/qlogic/qlge/qlge_main.c Jarod Wilson       2016-10-20  4609
>> > c4e84bde1d595d drivers/net/qlge/qlge_main.c                 Ron Mercer         2008-09-18  4610  	err = register_netdev(ndev);
>> > c4e84bde1d595d drivers/net/qlge/qlge_main.c                 Ron Mercer         2008-09-18  4611  	if (err) {
>> > c4e84bde1d595d drivers/net/qlge/qlge_main.c                 Ron Mercer         2008-09-18  4612  		dev_err(&pdev->dev, "net device registration failed.\n");
>> > f8c047be540197 drivers/staging/qlge/qlge_main.c             Coiby Xu           2021-01-23  4613  		qlge_release_all(pdev);
>> > c4e84bde1d595d drivers/net/qlge/qlge_main.c                 Ron Mercer         2008-09-18  4614  		pci_disable_device(pdev);
>> > 953b9400937741 drivers/staging/qlge/qlge_main.c             Coiby Xu           2021-01-23  4615  		goto netdev_free;
>> > c4e84bde1d595d drivers/net/qlge/qlge_main.c                 Ron Mercer         2008-09-18  4616  	}
>> > 953b9400937741 drivers/staging/qlge/qlge_main.c             Coiby Xu           2021-01-23  4617
>> > 953b9400937741 drivers/staging/qlge/qlge_main.c             Coiby Xu           2021-01-23  4618  	err = devlink_register(devlink, &pdev->dev);
>> > 953b9400937741 drivers/staging/qlge/qlge_main.c             Coiby Xu           2021-01-23  4619  	if (err)
>> > 953b9400937741 drivers/staging/qlge/qlge_main.c             Coiby Xu           2021-01-23  4620  		goto netdev_free;
>> > 953b9400937741 drivers/staging/qlge/qlge_main.c             Coiby Xu           2021-01-23  4621
>> > 953b9400937741 drivers/staging/qlge/qlge_main.c             Coiby Xu           2021-01-23  4622  	qlge_health_create_reporters(qdev);
>> > 15c052fc7f4a1b drivers/net/qlge/qlge_main.c                 Ron Mercer         2010-02-04  4623  	/* Start up the timer to trigger EEH if
>> > 15c052fc7f4a1b drivers/net/qlge/qlge_main.c                 Ron Mercer         2010-02-04  4624  	 * the bus goes dead
>> > 15c052fc7f4a1b drivers/net/qlge/qlge_main.c                 Ron Mercer         2010-02-04  4625  	 */
>> > f8c047be540197 drivers/staging/qlge/qlge_main.c             Coiby Xu           2021-01-23  4626  	timer_setup(&qdev->timer, qlge_timer, TIMER_DEFERRABLE);
>> > df7e828c1b6997 drivers/net/ethernet/qlogic/qlge/qlge_main.c Kees Cook          2017-10-04  4627  	mod_timer(&qdev->timer, jiffies + (5 * HZ));
>> > f8c047be540197 drivers/staging/qlge/qlge_main.c             Coiby Xu           2021-01-23  4628  	qlge_link_off(qdev);
>> > f8c047be540197 drivers/staging/qlge/qlge_main.c             Coiby Xu           2021-01-23  4629  	qlge_display_dev_info(ndev);
>> > 9dfbbaa6b0b9f7 drivers/net/qlge/qlge_main.c                 Ron Mercer         2009-10-30  4630  	atomic_set(&qdev->lb_count, 0);
>> > c4e84bde1d595d drivers/net/qlge/qlge_main.c                 Ron Mercer         2008-09-18  4631  	cards_found++;
>> > c4e84bde1d595d drivers/net/qlge/qlge_main.c                 Ron Mercer         2008-09-18  4632  	return 0;
>> > 953b9400937741 drivers/staging/qlge/qlge_main.c             Coiby Xu           2021-01-23  4633
>> > 953b9400937741 drivers/staging/qlge/qlge_main.c             Coiby Xu           2021-01-23  4634  netdev_free:
>> > 953b9400937741 drivers/staging/qlge/qlge_main.c             Coiby Xu           2021-01-23  4635  	free_netdev(ndev);
>> > 953b9400937741 drivers/staging/qlge/qlge_main.c             Coiby Xu           2021-01-23  4636  devlink_free:
>> > 953b9400937741 drivers/staging/qlge/qlge_main.c             Coiby Xu           2021-01-23  4637  	devlink_free(devlink);
>> > 953b9400937741 drivers/staging/qlge/qlge_main.c             Coiby Xu           2021-01-23  4638
>> > 953b9400937741 drivers/staging/qlge/qlge_main.c             Coiby Xu           2021-01-23  4639  	return err;
>> > c4e84bde1d595d drivers/net/qlge/qlge_main.c                 Ron Mercer         2008-09-18  4640  }
>> >
>> > ---
>> > 0-DAY CI Kernel Test Service, Intel Corporation
>> > https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
>>
>>
>>
>> --
>> Best regards,
>> Coiby

-- 
Best regards,
Coiby

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ