Message ID | b5eb87576cef4bf1b968481d6341013e6c7e9650.1594642213.git.usuraj35@gmail.com |
---|---|
State | Not Applicable |
Delegated to: | David Miller |
Headers | show |
Series | staging: qlge: General cleanup and refactor. | expand |
On Mon, Jul 13, 2020 at 05:52:22PM +0530, Suraj Upadhyay wrote: > Use direct assignment instead of using memset with just one byte as an > argument. > Issue found by checkpatch.pl. > > Signed-off-by: Suraj Upadhyay <usuraj35@gmail.com> > --- > Hii Maintainers, > Please correct me if I am wrong here. > --- > > drivers/staging/qlge/qlge_ethtool.c | 4 ++-- > 1 file changed, 2 insertions(+), 2 deletions(-) > > diff --git a/drivers/staging/qlge/qlge_ethtool.c b/drivers/staging/qlge/qlge_ethtool.c > index 16fcdefa9687..d44b2dae9213 100644 > --- a/drivers/staging/qlge/qlge_ethtool.c > +++ b/drivers/staging/qlge/qlge_ethtool.c > @@ -516,8 +516,8 @@ static void ql_create_lb_frame(struct sk_buff *skb, > memset(skb->data, 0xFF, frame_size); > frame_size &= ~1; > memset(&skb->data[frame_size / 2], 0xAA, frame_size / 2 - 1); > - memset(&skb->data[frame_size / 2 + 10], 0xBE, 1); > - memset(&skb->data[frame_size / 2 + 12], 0xAF, 1); > + skb->data[frame_size / 2 + 10] = (unsigned char)0xBE; > + skb->data[frame_size / 2 + 12] = (unsigned char)0xAF; Remove the casting. I guess this is better than the original because now it looks like ql_check_lb_frame(). It's still really weird looking though. regards, dan carpenter
On Mon, 2020-07-13 at 17:17 +0300, Dan Carpenter wrote: > On Mon, Jul 13, 2020 at 05:52:22PM +0530, Suraj Upadhyay wrote: > > Use direct assignment instead of using memset with just one byte as an > > argument. > > Issue found by checkpatch.pl. > > > > Signed-off-by: Suraj Upadhyay <usuraj35@gmail.com> > > --- > > Hii Maintainers, > > Please correct me if I am wrong here. > > --- > > > > drivers/staging/qlge/qlge_ethtool.c | 4 ++-- > > 1 file changed, 2 insertions(+), 2 deletions(-) > > > > diff --git a/drivers/staging/qlge/qlge_ethtool.c b/drivers/staging/qlge/qlge_ethtool.c > > index 16fcdefa9687..d44b2dae9213 100644 > > --- a/drivers/staging/qlge/qlge_ethtool.c > > +++ b/drivers/staging/qlge/qlge_ethtool.c > > @@ -516,8 +516,8 @@ static void ql_create_lb_frame(struct sk_buff *skb, > > memset(skb->data, 0xFF, frame_size); > > frame_size &= ~1; > > memset(&skb->data[frame_size / 2], 0xAA, frame_size / 2 - 1); > > - memset(&skb->data[frame_size / 2 + 10], 0xBE, 1); > > - memset(&skb->data[frame_size / 2 + 12], 0xAF, 1); > > + skb->data[frame_size / 2 + 10] = (unsigned char)0xBE; > > + skb->data[frame_size / 2 + 12] = (unsigned char)0xAF; > > Remove the casting. > > I guess this is better than the original because now it looks like > ql_check_lb_frame(). It's still really weird looking though. There are several of these in the intel drivers too: drivers/net/ethernet/intel/e1000/e1000_ethtool.c: memset(&skb->data[frame_size / 2 + 10], 0xBE, 1); drivers/net/ethernet/intel/e1000/e1000_ethtool.c: memset(&skb->data[frame_size / 2 + 12], 0xAF, 1); drivers/net/ethernet/intel/e1000e/ethtool.c: memset(&skb->data[frame_size / 2 + 10], 0xBE, 1); drivers/net/ethernet/intel/e1000e/ethtool.c: memset(&skb->data[frame_size / 2 + 12], 0xAF, 1); drivers/net/ethernet/intel/igb/igb_ethtool.c: memset(&skb->data[frame_size + 10], 0xBE, 1); drivers/net/ethernet/intel/igb/igb_ethtool.c: memset(&skb->data[frame_size + 12], 0xAF, 1); drivers/net/ethernet/intel/ixgbe/ixgbe_ethtool.c: memset(&skb->data[frame_size + 10], 0xBE, 1); drivers/net/ethernet/intel/ixgbe/ixgbe_ethtool.c: memset(&skb->data[frame_size + 12], 0xAF, 1); drivers/staging/qlge/qlge_ethtool.c: memset(&skb->data[frame_size / 2 + 10], 0xBE, 1); drivers/staging/qlge/qlge_ethtool.c: memset(&skb->data[frame_size / 2 + 12], 0xAF, 1);
On Tue, Jul 14, 2020 at 11:57:23AM -0700, Joe Perches wrote: > On Mon, 2020-07-13 at 17:17 +0300, Dan Carpenter wrote: > > On Mon, Jul 13, 2020 at 05:52:22PM +0530, Suraj Upadhyay wrote: > > > Use direct assignment instead of using memset with just one byte as an > > > argument. > > > Issue found by checkpatch.pl. > > > > > > Signed-off-by: Suraj Upadhyay <usuraj35@gmail.com> > > > --- > > > Hii Maintainers, > > > Please correct me if I am wrong here. > > > --- > > > > > > drivers/staging/qlge/qlge_ethtool.c | 4 ++-- > > > 1 file changed, 2 insertions(+), 2 deletions(-) > > > > > > diff --git a/drivers/staging/qlge/qlge_ethtool.c b/drivers/staging/qlge/qlge_ethtool.c > > > index 16fcdefa9687..d44b2dae9213 100644 > > > --- a/drivers/staging/qlge/qlge_ethtool.c > > > +++ b/drivers/staging/qlge/qlge_ethtool.c > > > @@ -516,8 +516,8 @@ static void ql_create_lb_frame(struct sk_buff *skb, > > > memset(skb->data, 0xFF, frame_size); > > > frame_size &= ~1; > > > memset(&skb->data[frame_size / 2], 0xAA, frame_size / 2 - 1); > > > - memset(&skb->data[frame_size / 2 + 10], 0xBE, 1); > > > - memset(&skb->data[frame_size / 2 + 12], 0xAF, 1); > > > + skb->data[frame_size / 2 + 10] = (unsigned char)0xBE; > > > + skb->data[frame_size / 2 + 12] = (unsigned char)0xAF; > > > > Remove the casting. > > > > I guess this is better than the original because now it looks like > > ql_check_lb_frame(). It's still really weird looking though. > > There are several of these in the intel drivers too: > > drivers/net/ethernet/intel/e1000/e1000_ethtool.c: memset(&skb->data[frame_size / 2 + 10], 0xBE, 1); > drivers/net/ethernet/intel/e1000/e1000_ethtool.c: memset(&skb->data[frame_size / 2 + 12], 0xAF, 1); > drivers/net/ethernet/intel/e1000e/ethtool.c: memset(&skb->data[frame_size / 2 + 10], 0xBE, 1); > drivers/net/ethernet/intel/e1000e/ethtool.c: memset(&skb->data[frame_size / 2 + 12], 0xAF, 1); > drivers/net/ethernet/intel/igb/igb_ethtool.c: memset(&skb->data[frame_size + 10], 0xBE, 1); > drivers/net/ethernet/intel/igb/igb_ethtool.c: memset(&skb->data[frame_size + 12], 0xAF, 1); > drivers/net/ethernet/intel/ixgbe/ixgbe_ethtool.c: memset(&skb->data[frame_size + 10], 0xBE, 1); > drivers/net/ethernet/intel/ixgbe/ixgbe_ethtool.c: memset(&skb->data[frame_size + 12], 0xAF, 1); > drivers/staging/qlge/qlge_ethtool.c: memset(&skb->data[frame_size / 2 + 10], 0xBE, 1); > drivers/staging/qlge/qlge_ethtool.c: memset(&skb->data[frame_size / 2 + 12], 0xAF, 1); Thanks to point this out, I will be sending a patchset for that soon. Thanks, Suraj Upadhyay.
On Wed, 2020-07-15 at 00:36 +0530, Suraj Upadhyay wrote: > On Tue, Jul 14, 2020 at 11:57:23AM -0700, Joe Perches wrote: > > On Mon, 2020-07-13 at 17:17 +0300, Dan Carpenter wrote: > > > On Mon, Jul 13, 2020 at 05:52:22PM +0530, Suraj Upadhyay wrote: > > > > Use direct assignment instead of using memset with just one byte as an > > > > argument. > > > > Issue found by checkpatch.pl. > > > > > > > > Signed-off-by: Suraj Upadhyay <usuraj35@gmail.com> > > > > --- > > > > Hii Maintainers, > > > > Please correct me if I am wrong here. > > > > --- > > > > > > > > drivers/staging/qlge/qlge_ethtool.c | 4 ++-- > > > > 1 file changed, 2 insertions(+), 2 deletions(-) > > > > > > > > diff --git a/drivers/staging/qlge/qlge_ethtool.c b/drivers/staging/qlge/qlge_ethtool.c > > > > index 16fcdefa9687..d44b2dae9213 100644 > > > > --- a/drivers/staging/qlge/qlge_ethtool.c > > > > +++ b/drivers/staging/qlge/qlge_ethtool.c > > > > @@ -516,8 +516,8 @@ static void ql_create_lb_frame(struct sk_buff *skb, > > > > memset(skb->data, 0xFF, frame_size); > > > > frame_size &= ~1; > > > > memset(&skb->data[frame_size / 2], 0xAA, frame_size / 2 - 1); > > > > - memset(&skb->data[frame_size / 2 + 10], 0xBE, 1); > > > > - memset(&skb->data[frame_size / 2 + 12], 0xAF, 1); > > > > + skb->data[frame_size / 2 + 10] = (unsigned char)0xBE; > > > > + skb->data[frame_size / 2 + 12] = (unsigned char)0xAF; > > > > > > Remove the casting. > > > > > > I guess this is better than the original because now it looks like > > > ql_check_lb_frame(). It's still really weird looking though. > > > > There are several of these in the intel drivers too: > > > > drivers/net/ethernet/intel/e1000/e1000_ethtool.c: memset(&skb->data[frame_size / 2 + 10], 0xBE, 1); > > drivers/net/ethernet/intel/e1000/e1000_ethtool.c: memset(&skb->data[frame_size / 2 + 12], 0xAF, 1); > > drivers/net/ethernet/intel/e1000e/ethtool.c: memset(&skb->data[frame_size / 2 + 10], 0xBE, 1); > > drivers/net/ethernet/intel/e1000e/ethtool.c: memset(&skb->data[frame_size / 2 + 12], 0xAF, 1); > > drivers/net/ethernet/intel/igb/igb_ethtool.c: memset(&skb->data[frame_size + 10], 0xBE, 1); > > drivers/net/ethernet/intel/igb/igb_ethtool.c: memset(&skb->data[frame_size + 12], 0xAF, 1); > > drivers/net/ethernet/intel/ixgbe/ixgbe_ethtool.c: memset(&skb->data[frame_size + 10], 0xBE, 1); > > drivers/net/ethernet/intel/ixgbe/ixgbe_ethtool.c: memset(&skb->data[frame_size + 12], 0xAF, 1); > > drivers/staging/qlge/qlge_ethtool.c: memset(&skb->data[frame_size / 2 + 10], 0xBE, 1); > > drivers/staging/qlge/qlge_ethtool.c: memset(&skb->data[frame_size / 2 + 12], 0xAF, 1); > > Thanks to point this out, > I will be sending a patchset for that soon. It _might_ be useful to create and use a standard mechanism for the loopback functions: <foo>create_lbtest_frame and <foo>check_lbtest_frame Maybe use something like: ether_loopback_frame_create and ether_loopback_frame_check
On Tue, Jul 14, 2020 at 12:22:05PM -0700, Joe Perches wrote: > On Wed, 2020-07-15 at 00:36 +0530, Suraj Upadhyay wrote: > > On Tue, Jul 14, 2020 at 11:57:23AM -0700, Joe Perches wrote: > > > On Mon, 2020-07-13 at 17:17 +0300, Dan Carpenter wrote: > > > > On Mon, Jul 13, 2020 at 05:52:22PM +0530, Suraj Upadhyay wrote: > > > > > Use direct assignment instead of using memset with just one byte as an > > > > > argument. > > > > > Issue found by checkpatch.pl. > > > > > > > > > > Signed-off-by: Suraj Upadhyay <usuraj35@gmail.com> > > > > > --- > > > > > Hii Maintainers, > > > > > Please correct me if I am wrong here. > > > > > --- > > > > > > > > > > drivers/staging/qlge/qlge_ethtool.c | 4 ++-- > > > > > 1 file changed, 2 insertions(+), 2 deletions(-) > > > > > > > > > > diff --git a/drivers/staging/qlge/qlge_ethtool.c b/drivers/staging/qlge/qlge_ethtool.c > > > > > index 16fcdefa9687..d44b2dae9213 100644 > > > > > --- a/drivers/staging/qlge/qlge_ethtool.c > > > > > +++ b/drivers/staging/qlge/qlge_ethtool.c > > > > > @@ -516,8 +516,8 @@ static void ql_create_lb_frame(struct sk_buff *skb, > > > > > memset(skb->data, 0xFF, frame_size); > > > > > frame_size &= ~1; > > > > > memset(&skb->data[frame_size / 2], 0xAA, frame_size / 2 - 1); > > > > > - memset(&skb->data[frame_size / 2 + 10], 0xBE, 1); > > > > > - memset(&skb->data[frame_size / 2 + 12], 0xAF, 1); > > > > > + skb->data[frame_size / 2 + 10] = (unsigned char)0xBE; > > > > > + skb->data[frame_size / 2 + 12] = (unsigned char)0xAF; > > > > > > > > Remove the casting. > > > > > > > > I guess this is better than the original because now it looks like > > > > ql_check_lb_frame(). It's still really weird looking though. > > > > > > There are several of these in the intel drivers too: > > > > > > drivers/net/ethernet/intel/e1000/e1000_ethtool.c: memset(&skb->data[frame_size / 2 + 10], 0xBE, 1); > > > drivers/net/ethernet/intel/e1000/e1000_ethtool.c: memset(&skb->data[frame_size / 2 + 12], 0xAF, 1); > > > drivers/net/ethernet/intel/e1000e/ethtool.c: memset(&skb->data[frame_size / 2 + 10], 0xBE, 1); > > > drivers/net/ethernet/intel/e1000e/ethtool.c: memset(&skb->data[frame_size / 2 + 12], 0xAF, 1); > > > drivers/net/ethernet/intel/igb/igb_ethtool.c: memset(&skb->data[frame_size + 10], 0xBE, 1); > > > drivers/net/ethernet/intel/igb/igb_ethtool.c: memset(&skb->data[frame_size + 12], 0xAF, 1); > > > drivers/net/ethernet/intel/ixgbe/ixgbe_ethtool.c: memset(&skb->data[frame_size + 10], 0xBE, 1); > > > drivers/net/ethernet/intel/ixgbe/ixgbe_ethtool.c: memset(&skb->data[frame_size + 12], 0xAF, 1); > > > drivers/staging/qlge/qlge_ethtool.c: memset(&skb->data[frame_size / 2 + 10], 0xBE, 1); > > > drivers/staging/qlge/qlge_ethtool.c: memset(&skb->data[frame_size / 2 + 12], 0xAF, 1); > > > > Thanks to point this out, > > I will be sending a patchset for that soon. > > > It _might_ be useful to create and use a standard > mechanism for the loopback functions: > > <foo>create_lbtest_frame > and > <foo>check_lbtest_frame > > Maybe use something like: > > ether_loopback_frame_create > and > ether_loopback_frame_check > I thought about it but then again the fram_size is sometimes divided by two e.g. `frame_size /= 2;` or `frame_size >>= 1;`. and sometimes it is subtracted by one. i.e. `frame_size &= ~1;`. Anyway, I sent my layman patchset to the lkml and intel maintainers. Forgive my brevity. Thanks, Suraj Upadhyay.
diff --git a/drivers/staging/qlge/qlge_ethtool.c b/drivers/staging/qlge/qlge_ethtool.c index 16fcdefa9687..d44b2dae9213 100644 --- a/drivers/staging/qlge/qlge_ethtool.c +++ b/drivers/staging/qlge/qlge_ethtool.c @@ -516,8 +516,8 @@ static void ql_create_lb_frame(struct sk_buff *skb, memset(skb->data, 0xFF, frame_size); frame_size &= ~1; memset(&skb->data[frame_size / 2], 0xAA, frame_size / 2 - 1); - memset(&skb->data[frame_size / 2 + 10], 0xBE, 1); - memset(&skb->data[frame_size / 2 + 12], 0xAF, 1); + skb->data[frame_size / 2 + 10] = (unsigned char)0xBE; + skb->data[frame_size / 2 + 12] = (unsigned char)0xAF; } void ql_check_lb_frame(struct ql_adapter *qdev,
Use direct assignment instead of using memset with just one byte as an argument. Issue found by checkpatch.pl. Signed-off-by: Suraj Upadhyay <usuraj35@gmail.com> --- Hii Maintainers, Please correct me if I am wrong here. --- drivers/staging/qlge/qlge_ethtool.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-)