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] [thread-next>] [day] [month] [year] [list]
Message-ID: <20200629174352.euw4lckze2k7xtbm@Rk>
Date:   Tue, 30 Jun 2020 01:43:52 +0800
From:   Coiby Xu <coiby.xu@...il.com>
To:     Benjamin Poirier <benjamin.poirier@...il.com>
Cc:     devel@...verdev.osuosl.org, joe@...ches.com,
        dan.carpenter@...cle.com, gregkh@...uxfoundation.org,
        Manish Chopra <manishc@...vell.com>,
        "supporter:QLOGIC QLGE 10Gb ETHERNET DRIVER" 
        <GR-Linux-NIC-Dev@...vell.com>,
        "open list:QLOGIC QLGE 10Gb ETHERNET DRIVER" <netdev@...r.kernel.org>,
        open list <linux-kernel@...r.kernel.org>
Subject: Re: [PATCH v2 4/4] staging: qlge: replace pr_err with netdev_err

On Mon, Jun 29, 2020 at 02:30:04PM +0900, Benjamin Poirier wrote:
>On 2020-06-27 22:58 +0800, Coiby Xu wrote:
>[...]
>>  void ql_dump_qdev(struct ql_adapter *qdev)
>>  {
>> @@ -1611,99 +1618,100 @@ void ql_dump_qdev(struct ql_adapter *qdev)
>>  #ifdef QL_CB_DUMP
>>  void ql_dump_wqicb(struct wqicb *wqicb)
>>  {
>> -	pr_err("Dumping wqicb stuff...\n");
>> -	pr_err("wqicb->len = 0x%x\n", le16_to_cpu(wqicb->len));
>> -	pr_err("wqicb->flags = %x\n", le16_to_cpu(wqicb->flags));
>> -	pr_err("wqicb->cq_id_rss = %d\n",
>> -	       le16_to_cpu(wqicb->cq_id_rss));
>> -	pr_err("wqicb->rid = 0x%x\n", le16_to_cpu(wqicb->rid));
>> -	pr_err("wqicb->wq_addr = 0x%llx\n",
>> -	       (unsigned long long)le64_to_cpu(wqicb->addr));
>> -	pr_err("wqicb->wq_cnsmr_idx_addr = 0x%llx\n",
>> -	       (unsigned long long)le64_to_cpu(wqicb->cnsmr_idx_addr));
>> +	netdev_err(qdev->ndev, "Dumping wqicb stuff...\n");
>
>drivers/staging/qlge/qlge_dbg.c:1621:13: error: ‘qdev’ undeclared (first use in this function); did you mean ‘cdev’?
> 1621 |  netdev_err(qdev->ndev, "Dumping wqicb stuff...\n");
>      |             ^~~~
>      |             cdev
>
>[...]
>and many more like that
>
>Anyways, qlge_dbg.h is a dumpster. It has hundreds of lines of code
>bitrotting away in ifdef land. See this comment from David Miller on the
>topic of ifdef'ed debugging code:
>https://lore.kernel.org/netdev/20200303.145916.1506066510928020193.davem@davemloft.net/

Thank you for spotting this problem! This issue could be fixed by
passing qdev to ql_dump_wqicb. Or are you suggesting we completely
remove qlge_dbg since it's only for the purpose of debugging the driver
by the developer?

Btw, I'm curious how you make this compiling error occur. Do you manually trigger
it via "QL_CB_DUMP=1 make M=drivers/staging/qlge" or use some automate
tools?

--
Best regards,
Coiby

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ