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: <20201127085705.GL2455276@dell>
Date:   Fri, 27 Nov 2020 08:57:05 +0000
From:   Lee Jones <lee.jones@...aro.org>
To:     Pkshih <pkshih@...ltek.com>
Cc:     Tony Chuang <yhchuang@...ltek.com>,
        "kvalo@...eaurora.org" <kvalo@...eaurora.org>,
        "linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>,
        "linux-wireless@...r.kernel.org" <linux-wireless@...r.kernel.org>,
        "davem@...emloft.net" <davem@...emloft.net>,
        "netdev@...r.kernel.org" <netdev@...r.kernel.org>,
        "kuba@...nel.org" <kuba@...nel.org>
Subject: Re: [PATCH 17/17] realtek: rtw88: pci: Add prototypes for .probe,
 .remove and .shutdown

On Fri, 27 Nov 2020, Pkshih wrote:

> On Fri, 2020-11-27 at 07:38 +0000, Lee Jones wrote:
> > On Fri, 27 Nov 2020, Pkshih wrote:
> > 
> > > 
> > > The subject prefix doesn't need 'realtek:'; use 'rtw88:'.
> > > 
> > > On Thu, 2020-11-26 at 13:31 +0000, Lee Jones wrote:
> > > > Also strip out other duplicates from driver specific headers.
> > > > 
> > > > Ensure 'main.h' is explicitly included in 'pci.h' since the latter
> > > > uses some defines from the former.  It avoids issues like:
> > > > 
> > > >  from drivers/net/wireless/realtek/rtw88/rtw8822be.c:5:
> > > >  drivers/net/wireless/realtek/rtw88/pci.h:209:28: error:
> > > > ‘RTK_MAX_TX_QUEUE_NUM’ undeclared here (not in a function); did you mean
> > > > ‘RTK_MAX_RX_DESC_NUM’?
> > > >  209 | DECLARE_BITMAP(tx_queued, RTK_MAX_TX_QUEUE_NUM);
> > > >  | ^~~~~~~~~~~~~~~~~~~~
> > > > 
> > > > Fixes the following W=1 kernel build warning(s):
> > > > 
> > > >  drivers/net/wireless/realtek/rtw88/pci.c:1488:5: warning: no previous
> > > > prototype for ‘rtw_pci_probe’ [-Wmissing-prototypes]
> > > >  1488 | int rtw_pci_probe(struct pci_dev *pdev,
> > > >  | ^~~~~~~~~~~~~
> > > >  drivers/net/wireless/realtek/rtw88/pci.c:1568:6: warning: no previous
> > > > prototype for ‘rtw_pci_remove’ [-Wmissing-prototypes]
> > > >  1568 | void rtw_pci_remove(struct pci_dev *pdev)
> > > >  | ^~~~~~~~~~~~~~
> > > >  drivers/net/wireless/realtek/rtw88/pci.c:1590:6: warning: no previous
> > > > prototype for ‘rtw_pci_shutdown’ [-Wmissing-prototypes]
> > > >  1590 | void rtw_pci_shutdown(struct pci_dev *pdev)
> > > >  | ^~~~~~~~~~~~~~~~
> > > > 
> > > > Cc: Yan-Hsuan Chuang <yhchuang@...ltek.com>
> > > > Cc: Kalle Valo <kvalo@...eaurora.org>
> > > > Cc: "David S. Miller" <davem@...emloft.net>
> > > > Cc: Jakub Kicinski <kuba@...nel.org>
> > > > Cc: linux-wireless@...r.kernel.org
> > > > Cc: netdev@...r.kernel.org
> > > > Signed-off-by: Lee Jones <lee.jones@...aro.org>
> > > > ---
> > > >  drivers/net/wireless/realtek/rtw88/pci.h       | 8 ++++++++
> > > >  drivers/net/wireless/realtek/rtw88/rtw8723de.c | 1 +
> > > >  drivers/net/wireless/realtek/rtw88/rtw8723de.h | 4 ----
> > > >  drivers/net/wireless/realtek/rtw88/rtw8821ce.c | 1 +
> > > >  drivers/net/wireless/realtek/rtw88/rtw8821ce.h | 4 ----
> > > >  drivers/net/wireless/realtek/rtw88/rtw8822be.c | 1 +
> > > >  drivers/net/wireless/realtek/rtw88/rtw8822be.h | 4 ----
> > > >  drivers/net/wireless/realtek/rtw88/rtw8822ce.c | 1 +
> > > >  drivers/net/wireless/realtek/rtw88/rtw8822ce.h | 4 ----
> > > >  9 files changed, 12 insertions(+), 16 deletions(-)
> > > > 
> > > > diff --git a/drivers/net/wireless/realtek/rtw88/pci.h
> > > > b/drivers/net/wireless/realtek/rtw88/pci.h
> > > > index ca17aa9cf7dc7..cda56919a5f0f 100644
> > > > --- a/drivers/net/wireless/realtek/rtw88/pci.h
> > > > +++ b/drivers/net/wireless/realtek/rtw88/pci.h
> > > > @@ -5,6 +5,8 @@
> > > >  #ifndef __RTK_PCI_H_
> > > >  #define __RTK_PCI_H_
> > > >  
> > > > +#include "main.h"
> > > > +
> > > 
> > > Please #include "main.h" ahead of "pci.h" in each of rtw8xxxxe.c.
> > 
> > You mean instead of in pci.h?
> > 
> > Surely that's a hack.
> > 
> 
> I mean don't include main.h in pci.h, but include both of them in each
> of rtw8xxxxe.c.
> 
> +#include "main.h"
> +#include "pci.h"

Yes, that's what I thought you meant.  I think that's a hack.

Source files shouldn't rely on the ordering of include files to
resolve dependencies.  In fact, a lot of subsystems require includes to
be in alphabetical order.

If a source or header file references a resource from a specific
header file (for instance here pci.h uses defines from main.h) then it
should explicitly include it.

Can you tell me the technical reason as to why these drivers are
handled differently please?

-- 
Lee Jones [李琼斯]
Senior Technical Lead - Developer Services
Linaro.org │ Open source software for Arm SoCs
Follow Linaro: Facebook | Twitter | Blog

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ