Re: [PATCH v4] staging: r8188eu: Fix return type for implementation of ndo_start_xmit

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Fri, Sep 09, 2022 at 04:05:02PM +0800, Guozihua (Scott) wrote:
> On 2022/9/9 3:22, Philipp Hortmann wrote:
> > On 9/8/22 03:13, GUO Zihua wrote:
> > > CFI (Control Flow Integrity) is a safety feature allowing the system to
> > > detect and react should a potential control flow hijacking occurs. In
> > > particular, the Forward-Edge CFI protects indirect function calls by
> > > ensuring the prototype of function that is actually called matches the
> > > definition of the function hook.
> > > 
> > > Since Linux now supports CFI, it will be a good idea to fix mismatched
> > > return type for implementation of hooks. Otherwise this would get
> > > cought out by CFI and cause a panic.
> > > 
> > > Use enums from netdev_tx_t as return value instead, then change return
> > > type to netdev_tx_t.
> > > 
> > > Fixes: cf68fffb66d6 ("add support for Clang CFI")
> > > Signed-off-by: GUO Zihua <guozihua@xxxxxxxxxx>
> > > ---
> > > 
> > > v4:
> > >    Added Fixes tag.
> > > 
> > > v3:
> > >    Provide detail on CFI.
> > > 
> > > v2:
> > >    Fix truncated subject.
> > > 
> > > ---
> > >   drivers/staging/r8188eu/include/xmit_osdep.h | 2 +-
> > >   drivers/staging/r8188eu/os_dep/xmit_linux.c  | 4 ++--
> > >   2 files changed, 3 insertions(+), 3 deletions(-)
> > > 
> > > diff --git a/drivers/staging/r8188eu/include/xmit_osdep.h
> > > b/drivers/staging/r8188eu/include/xmit_osdep.h
> > > index 00658681fef9..947242486144 100644
> > > --- a/drivers/staging/r8188eu/include/xmit_osdep.h
> > > +++ b/drivers/staging/r8188eu/include/xmit_osdep.h
> > > @@ -28,7 +28,7 @@ struct sta_xmit_priv;
> > >   struct xmit_frame;
> > >   struct xmit_buf;
> > > -int rtw_xmit_entry(struct sk_buff *pkt, struct  net_device *pnetdev);
> > > +netdev_tx_t rtw_xmit_entry(struct sk_buff *pkt, struct  net_device
> > > *pnetdev);
> > >   void rtw_os_xmit_schedule(struct adapter *padapter);
> > > diff --git a/drivers/staging/r8188eu/os_dep/xmit_linux.c
> > > b/drivers/staging/r8188eu/os_dep/xmit_linux.c
> > > index 91a1e4e3219a..0b04010d6d82 100644
> > > --- a/drivers/staging/r8188eu/os_dep/xmit_linux.c
> > > +++ b/drivers/staging/r8188eu/os_dep/xmit_linux.c
> > > @@ -198,7 +198,7 @@ static int rtw_mlcst2unicst(struct adapter
> > > *padapter, struct sk_buff *skb)
> > >       return true;
> > >   }
> > > -int rtw_xmit_entry(struct sk_buff *pkt, struct  net_device *pnetdev)
> > > +netdev_tx_t rtw_xmit_entry(struct sk_buff *pkt, struct  net_device
> > > *pnetdev)
> > >   {
> > >       struct adapter *padapter = (struct adapter
> > > *)rtw_netdev_priv(pnetdev);
> > >       struct xmit_priv *pxmitpriv = &padapter->xmitpriv;
> > > @@ -233,5 +233,5 @@ int rtw_xmit_entry(struct sk_buff *pkt, struct
> > > net_device *pnetdev)
> > >   exit:
> > > -    return 0;
> > > +    return NETDEV_TX_OK;
> > >   }
> > 
> > Hi,
> > 
> > I cannot apply your patch:
> > 
> > Applying: staging: r8188eu: Fix return type for implementation of
> > ndo_start_xmit
> > error: drivers/staging/r8188eu/include/xmit_osdep.h: does not exist in
> > index
> > error: drivers/staging/r8188eu/os_dep/xmit_linux.c: does not exist in index
> > Patch failed at 0001 staging: r8188eu: Fix return type for
> > implementation of ndo_start_xmit
> > 
> > 
> > Fetch URL: git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging.git
> > 
> > branch staging-testing
> > 
> > Do you know why?
> > 
> > Bye Philipp
> > .
> 
> Hi Philipp,
> 
> It seems that folder drivers/staging/r8188eu no longer presents on the
> branch you mentioned. However, they are still there on master branch.

As my bot says, always work against either linux-next, or the
development branch of the subsystem you are wanting to submit a patch
to.  Otherwise your patch will be rejected as it can not be applied for
obvious reasons.

thanks,

greg k-h




[Index of Archives]     [Linux Driver Development]     [Linux Driver Backports]     [DMA Engine]     [Linux GPIO]     [Linux SPI]     [Video for Linux]     [Linux USB Devel]     [Linux Coverity]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [Yosemite Backpacking]
  Powered by Linux