On 2020-11-20 12:39 -0600, Gustavo A. R. Silva wrote:
> In preparation to enable -Wimplicit-fallthrough for Clang, fix a warning
> by explicitly adding a break statement instead of letting the code fall
> through to the next case.
>
> Link: https://github.com/KSPP/linux/issues/115
> Signed-off-by:
On 2020-10-17 07:16 +0800, Coiby Xu wrote:
> On Thu, Oct 15, 2020 at 10:01:36AM +0900, Benjamin Poirier wrote:
> > On 2020-10-14 18:43 +0800, Coiby Xu wrote:
> > > To avoid namespace clashes with other qlogic drivers and also for the
> > > sake of naming consistency
On 2020-10-15 11:37 +0800, Coiby Xu wrote:
> On Tue, Oct 13, 2020 at 09:37:04AM +0900, Benjamin Poirier wrote:
> > On 2020-10-12 19:24 +0800, Coiby Xu wrote:
> > [...]
> > > > I think, but didn't check in depth, that in those drivers, the devlink
> > > &
On 2020-10-14 18:43 +0800, Coiby Xu wrote:
> To avoid namespace clashes with other qlogic drivers and also for the
> sake of naming consistency, use the "qlge_" prefix as suggested in
> drivers/staging/qlge/TODO.
>
> Suggested-by: Benjamin Poirier
> Signed-off-by
On 2020-10-12 19:51 +0800, Coiby Xu wrote:
> On Sat, Oct 10, 2020 at 10:22:30PM +0900, Benjamin Poirier wrote:
> > On 2020-10-10 18:02 +0800, Coiby Xu wrote:
> > [...]
> > > > > + do { \
> > >
On 2020-10-12 19:24 +0800, Coiby Xu wrote:
[...]
> > I think, but didn't check in depth, that in those drivers, the devlink
> > device is tied to the pci device and can exist independently of the
> > netdev, at least in principle.
> >
> You are right. Take drivers/net/ethernet/mellanox/mlxsw as an
On 2020-10-10 18:24 +0800, Coiby Xu wrote:
> On Sat, Oct 10, 2020 at 04:35:14PM +0900, Benjamin Poirier wrote:
> > On 2020-10-08 19:58 +0800, Coiby Xu wrote:
> > > Initialize devlink health dump framework for the dlge driver so the
> > > coredump could be done via devli
On 2020-10-10 18:00 +0800, Coiby Xu wrote:
[...]
> >
> > Please also update drivers/staging/qlge/TODO accordingly. There is still
> > a lot of debugging code IMO (the netif_printk statements - kernel
> > tracing can be used instead of those) but this patch is a substantial
> > improvement.
>
> Th
On 2020-10-10 18:02 +0800, Coiby Xu wrote:
[...]
> > > + do { \
> > > + err = fill_seg_(fmsg, &dump->seg_hdr, dump->seg_regs); \
> > > + if (err) { \
> > > + kvfree(
ers can be obtained by ethtool.
> - Coredump can be done via devlink health reporter.
> - Structure related to the hardware (struct ql_adapter) can be obtained
> by crash or drgn.
>
> Suggested-by: Benjamin Poirier
> Signed-off-by: Coiby Xu
> ---
> drivers/staging/
On 2020-10-08 19:58 +0800, Coiby Xu wrote:
> $ devlink health dump show DEVICE reporter coredump -p -j
> {
> "Core Registers": {
> "segment": 1,
> "values": [
> 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
On 2020-10-08 19:58 +0800, Coiby Xu wrote:
> Initialize devlink health dump framework for the dlge driver so the
> coredump could be done via devlink.
>
> Signed-off-by: Coiby Xu
> ---
> drivers/staging/qlge/Kconfig| 1 +
> drivers/staging/qlge/Makefile | 2 +-
> drivers/staging/
On 2020-10-04 23:22 +0800, Coiby Xu wrote:
> On Sat, Oct 03, 2020 at 02:53:48PM +0900, Benjamin Poirier wrote:
> > On 2020-10-03 07:59 +0800, Coiby Xu wrote:
> > > This fixes commit 0107635e15ac
> > > ("staging: qlge: replace pr_err with netdev_err") which
unsigned int
>
> Note that now ql_dump_rx_ring/ql_dump_tx_ring won't check if the passed
> parameter is a null pointer.
>
> Fixes: 0107635e15ac ("staging: qlge: replace pr_err with netdev_err")
> Reported-by: Benjamin Poirier
> Suggested-by: B
:37: warning: format ‘%x’ expects a matching ‘unsigned int’
> argument [-Wformat=]
> 1435 |"%s: Routing Mask %d = 0x%.08x\n",
> | ^
> | |
> |
:37: warning: format ‘%x’ expects a matching ‘unsigned int’
> argument [-Wformat=]
> 1435 |"%s: Routing Mask %d = 0x%.08x\n",
> | ^
> | |
> |
On 2020-08-25 19:16 +0800, Coiby Xu wrote:
[...]
> > > @@ -1630,7 +1630,7 @@ void ql_dump_wqicb(struct wqicb *wqicb)
> > > (unsigned long long)le64_to_cpu(wqicb->cnsmr_idx_addr));
> > > }
> > >
> > > -void ql_dump_tx_ring(struct tx_ring *tx_ring)
> > > +void ql_dump_tx_ring(struct ql
QL_IB_DUMP=1 QL_DEV_DUMP=1 make M=drivers/staging/qlge
>
> Fixes: 0107635e15ac ("taging: qlge: replace pr_err with netdev_err")
^ staging
> Reported-by: Benjamin Poirier
> Signed-off-by: Coiby Xu
> ---
> drivers/staging/qlge/qlge.h | 42
On 2020-08-21 11:08 +0800, Coiby Xu wrote:
[...]
> > > diff --git a/drivers/staging/qlge/qlge_health.h
> > > b/drivers/staging/qlge/qlge_health.h
> > > new file mode 100644
> > > index ..07d3bafab845
> > > --- /dev/null
> > > +++ b/drivers/staging/qlge/qlge_health.h
> > > @@ -0,0 +1,2
On 2020-08-15 00:05 +0800, Coiby Xu wrote:
> Initialize devlink health dump framework for the dlge driver so the
> coredump could be done via devlink.
>
> Signed-off-by: Coiby Xu
> ---
> drivers/staging/qlge/Makefile | 2 +-
> drivers/staging/qlge/qlge.h| 9 +++
> drivers/stag
On 2020-08-15 00:06 +0800, Coiby Xu wrote:
> The related code are not necessary because,
> - Device status and general registers can be obtained by ethtool.
> - Coredump can be done via devlink health reporter.
> - Structure related to the hardware (struct ql_adapter) can be obtained
> by crash o
On 2020-07-13 17:50 +0530, Suraj Upadhyay wrote:
> Simplify while loops into more readable and simple for loops.
>
> Signed-off-by: Suraj Upadhyay
> ---
[...]
> @@ -1824,7 +1821,7 @@ static struct sk_buff *ql_build_rx_skb(struct
> ql_adapter *qdev,
> sbq_desc->p.skb = NULL;
On 2020-07-13 11:14 +0530, Suraj Upadhyay wrote:
> On Mon, Jul 13, 2020 at 01:59:59PM +0900, Benjamin Poirier wrote:
> > On 2020-07-11 18:16 +0530, Suraj Upadhyay wrote:
> > > The legacy API wrappers in include/linux/pci-dma-compat.h
> > > should go away as it crea
On 2020-07-11 18:16 +0530, Suraj Upadhyay wrote:
> The legacy API wrappers in include/linux/pci-dma-compat.h
> should go away as it creates unnecessary midlayering
> for include/linux/dma-mapping.h APIs, instead use dma-mapping.h
> APIs directly.
>
> The patch has been generated with the coccinell
On 2020-06-30 01:43 +0800, Coiby Xu wrote:
> 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,
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("
On 2020-05-29 17:17 +0200, Jil Rouceau wrote:
> Fixed the missing spaces before and after binary operators.
>
> Signed-off-by: Jil Rouceau
This patch does not apply cleanly. I think your base tree is missing
commit ec269f1250c6 ("staging: qlge: Remove unnecessary spaces in
qlge_main.c").
___
On 2020-05-17 13:46 +0800, Xiangyang Zhang wrote:
> DMA not unmapped when lock failed, this patch fixed it.
>
Fixes: 4322c5bee85e ("qlge: Expand coverage of hw lock for config register.")
> Signed-off-by: Xiangyang Zhang
> ---
> drivers/staging/qlge/qlge_main.c | 3 ++-
> 1 file changed, 2 ins
On 2020/02/24 13:22 +0530, Kaaira Gupta wrote:
> On Mon, Feb 24, 2020 at 02:32:25PM +0900, Benjamin Poirier wrote:
> > On 2020/02/22 01:26 +0530, Kaaira Gupta wrote:
> > > Fix checkpatch.pl warnings of adding braces around macro arguments to
> > > prevent precedence
On 2020/02/22 01:26 +0530, Kaaira Gupta wrote:
> Fix checkpatch.pl warnings of adding braces around macro arguments to
> prevent precedence issues by adding braces in qlge_dbg.c
>
> Signed-off-by: Kaaira Gupta
> ---
> drivers/staging/qlge/qlge_dbg.c | 6 +++---
> 1 file changed, 3 insertions(+),
On 2020/01/23 00:07 +, Colin King wrote:
> From: Colin Ian King
>
> There is a spelling mistake in a netif_printk message. Fix it.
>
> Signed-off-by: Colin Ian King
> ---
> drivers/staging/qlge/qlge_main.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/st
On 2019/10/04 10:19, Greg Kroah-Hartman wrote:
> On Fri, Sep 27, 2019 at 07:11:54PM +0900, Benjamin Poirier wrote:
[...]
>
> As this code got moved to staging with the goal to drop it from the
> tree, why are you working on fixing it up? Do you want it moved back
> out of staging
Given that (u16) 65536 == 0, that expression can be replaced by a simple
cast.
Signed-off-by: Benjamin Poirier
---
drivers/staging/qlge/qlge.h | 5 +
drivers/staging/qlge/qlge_main.c | 18 ++
2 files changed, 11 insertions(+), 12 deletions(-)
diff --git a/drivers
The size of the mapping is known statically in all cases, there's no need
to save it at runtime. Remove this member.
Signed-off-by: Benjamin Poirier
Acked-by: Manish Chopra
---
drivers/staging/qlge/qlge.h | 1 -
drivers/staging/qlge/qlge_main.c | 43 +++---
no longer
guarantees prod_idx values aligned on multiples of 16. While it appears
that we can write unaligned values to prod_idx without ill effects on
device operation, it makes more sense to change qlge_refill_bq() to refill
up to a limit that corresponds with the device's behavior.
Signed-of
Given the way the driver currently works, these values are always known
at compile time.
Signed-off-by: Benjamin Poirier
---
drivers/staging/qlge/qlge.h | 17 +---
drivers/staging/qlge/qlge_dbg.c | 4 --
drivers/staging/qlge/qlge_main.c | 75
3 files
required
adjustments to code and dedup the most obvious cases of copy/paste.
This patch should not introduce any functional change other than to some of
the printk format strings.
Signed-off-by: Benjamin Poirier
---
drivers/staging/qlge/qlge.h | 96 +++---
drivers/staging/qlge/qlge_dbg.c
This just repeats what the other memset a few lines above did.
Signed-off-by: Benjamin Poirier
---
drivers/staging/qlge/qlge_main.c | 1 -
1 file changed, 1 deletion(-)
diff --git a/drivers/staging/qlge/qlge_main.c b/drivers/staging/qlge/qlge_main.c
index ef33db118aa1..8da596922582 100644
ome associated bookkeeping variables.
Signed-off-by: Benjamin Poirier
---
drivers/staging/qlge/qlge.h | 8 +--
drivers/staging/qlge/qlge_dbg.c | 10 ++-
drivers/staging/qlge/qlge_main.c | 105 +++
3 files changed, 60 insertions(+), 63 deletions(-)
diff --gi
( +- 0.09% )
After:
636300
634106
634984
638555
634188
[...]
259,237,291,449 cycles ( +- 0.19% )
Signed-off-by: Benjamin Poirier
---
drivers/staging/qlge/qlge.h | 7 ---
drivers/staging/qlge/qlge_main.c | 98 +---
drivers/staging/qlge
27;t lock up if
there are allocation failures.
Signed-off-by: Benjamin Poirier
---
drivers/staging/qlge/TODO| 3 --
drivers/staging/qlge/qlge.h | 8
drivers/staging/qlge/qlge_main.c | 80 +---
3 files changed, 72 insertions(+), 19 deletions(-)
diff
Instead of clearing the structure wholesale, it is sufficient to initialize
the skb member which is used to manage sbq instances. lbq instances are
managed according to curr_idx and clean_idx.
Signed-off-by: Benjamin Poirier
---
drivers/staging/qlge/qlge_main.c | 3 +--
1 file changed, 1
As already done in ql_get_curr_lchunk(), this member can be replaced by a
simple test.
Signed-off-by: Benjamin Poirier
Acked-by: Manish Chopra
---
drivers/staging/qlge/qlge.h | 1 -
drivers/staging/qlge/qlge_main.c | 13 +
2 files changed, 5 insertions(+), 9 deletions
Fixes: 2c9a266afefe ("qlge: Fix receive packets drop.")
Signed-off-by: Benjamin Poirier
---
drivers/staging/qlge/qlge.h | 5 +--
drivers/staging/qlge/qlge_main.c | 54 +---
2 files changed, 22 insertions(+), 37 deletions(-)
diff --git a/drivers/staging
lbq_buf_size is duplicated to every rx_ring structure whereas lbq_buf_order
is present once in the ql_adapter structure. All rings use the same buf
size, keep only one copy of it. Also factor out the calculation of
lbq_buf_size instead of having two copies.
Signed-off-by: Benjamin Poirier
Acked
This is unneeded for two reasons:
1) the cpu does not write data for the device in the mapping
2) calls like ..._sync_..._for_device(..., ..._FROMDEVICE) are
nonsensical, see commit 3f0fb4e85b38 ("Documentation/DMA-API-HOWTO.txt:
fix misleading example")
Signed-off-by: Benjam
qlge_isr() and falsely reported as IRQ_NONE thanks to the irq_cnt scheme.
This in turn can cause frames to loiter in the receive queue until a later
frame leads to another rx interrupt that will schedule napi.
Use the INTR_EN_EI bit (master interrupt control) instead.
Signed-off-by: Benjamin Poirier
Tx completion rings have sbq_buf_size = 0 but there's no case where the
code actually tests on that value. We can remove sbq_buf_size and use a
constant instead.
Signed-off-by: Benjamin Poirier
Reviewed-by: Willem de Bruijn
---
drivers/staging/qlge/qlge.h | 1 -
drivers/staging
This field is redundant, the type can be determined from the index, cq_id.
Signed-off-by: Benjamin Poirier
---
drivers/staging/qlge/qlge.h | 10 --
drivers/staging/qlge/qlge_dbg.c | 16
drivers/staging/qlge/qlge_main.c | 31 +++
3 files
qlge refills rx buffers from napi context. In case of allocation failure,
allocation will be retried the next time napi runs. If a receive queue runs
out of free buffers (possibly after subsequent allocation failures), it
drops all traffic, no longer raises interrupts and napi is no longer
schedule
50 matches
Mail list logo