All of lore.kernel.org
 help / color / mirror / Atom feed
From: Paul Menzel <pmenzel@molgen.mpg.de>
To: Jakub Kicinski <kuba@kernel.org>, Michal Kubecek <mkubecek@suse.cz>
Cc: Ariel Elior <aelior@marvell.com>,
	Sudarsana Kalluru <skalluru@marvell.com>,
	Manish Chopra <manishc@marvell.com>,
	netdev@vger.kernel.org, linuxppc-dev@lists.ozlabs.org,
	it+netdev@molgen.mpg.de
Subject: Re: bnx2x: ppc64le: Unable to set message level greater than 0x7fff
Date: Wed, 16 Mar 2022 06:33:44 +0100	[thread overview]
Message-ID: <ade0ed87-be4f-e3c7-5e01-4bfdb78fae07@molgen.mpg.de> (raw)
In-Reply-To: <db796473-69cf-122e-ec40-de62659517b0@molgen.mpg.de>

Dear Jakub,


Sorry, one more addition.

Am 16.03.22 um 06:16 schrieb Paul Menzel:

> Am 16.03.22 um 02:35 schrieb Jakub Kicinski:
>> On Tue, 15 Mar 2022 22:58:57 +0100 Paul Menzel wrote:
>>> On the POWER8 server IBM S822LC (ppc64le), I am unable to set the
>>> message level for the network device to 0x0100000 but it fails.
>>>
>>>       $ sudo ethtool -s enP1p1s0f2 msglvl 0x0100000
>>>       netlink error: cannot modify bits past kernel bitset size (offset 56)
>>>       netlink error: Invalid argument
>>>
>>> Below is more information. 0x7fff is the largest value I am able to set.
>>>
>>> ```
>>> $ sudo ethtool -i enP1p1s0f2
>>> driver: bnx2x
>>> version: 5.17.0-rc7+
>>> firmware-version: bc 7.10.4
>>> expansion-rom-version:
>>> bus-info: 0001:01:00.2
>>> supports-statistics: yes
>>> supports-test: yes
>>> supports-eeprom-access: yes
>>> supports-register-dump: yes
>>> supports-priv-flags: yes
>>> $ sudo ethtool -s enP1p1s0f2 msglvl 0x7fff
>>> $ sudo ethtool enP1p1s0f2
>>> Settings for enP1p1s0f2:
>>>           Supported ports: [ TP ]
>>>           Supported link modes:   10baseT/Half 10baseT/Full
>>>                                   100baseT/Half 100baseT/Full
>>>                                   1000baseT/Full
>>>           Supported pause frame use: Symmetric Receive-only
>>>           Supports auto-negotiation: Yes
>>>           Supported FEC modes: Not reported
>>>           Advertised link modes:  10baseT/Half 10baseT/Full
>>>                                   100baseT/Half 100baseT/Full
>>>                                   1000baseT/Full
>>>           Advertised pause frame use: Symmetric Receive-only
>>>           Advertised auto-negotiation: Yes
>>>           Advertised FEC modes: Not reported
>>>           Speed: Unknown!
>>>           Duplex: Unknown! (255)
>>>           Auto-negotiation: on
>>>           Port: Twisted Pair
>>>           PHYAD: 17
>>>           Transceiver: internal
>>>           MDI-X: Unknown
>>>           Supports Wake-on: g
>>>           Wake-on: d
>>>           Current message level: 0x00007fff (32767)
>>>                                  drv probe link timer ifdown ifup rx_err tx_err tx_queued intr tx_done rx_status pktdata hw wol
>>>           Link detected: no
>>> $ sudo ethtool -s enP1p1s0f2 msglvl 0x8000
>>> netlink error: cannot modify bits past kernel bitset size (offset 56)
>>> netlink error: Invalid argument
>>> ```
>>
>> The new ethtool-over-netlink API limits the msg levels to the ones
>> officially defined by the kernel (NETIF_MSG_CLASS_COUNT).
>>
>> CC: Michal
> 
> Thank you for the prompt reply. So, it’s unrelated to the architecture, 
> and to the Linux kernel version, as it works on x86_64 with Linux 5.10.x.
> 
> Michal, how do I turn on certain bnx2x messages?
> 
>      $ git grep BNX2X_MSG_SP drivers/net/ethernet/broadcom/bnx2x/bnx2x.h
>      drivers/net/ethernet/broadcom/bnx2x/bnx2x.h:#define BNX2X_MSG_SP 
>                       0x0100000 /* was: NETIF_MSG_INTR */

Testing this on the x86_64 Dell OptiPlex 5055 with a Broadcom NetXtreme 
BCM5762 Gigabit Ethernet PCIe [14e4:1687], it still works.

```
$ uname -a
Linux serotimor.molgen.mpg.de 5.17.0-rc5.mx64.428 #1 SMP PREEMPT Mon Feb 
21 04:00:47 CET 2022 x86_64 GNU/Linux
$ sudo ethtool -s net00 msglvl 0x0100000
$ ethtool net00
Settings for net00:
	Supported ports: [ TP ]
	Supported link modes:   10baseT/Half 10baseT/Full
	                        100baseT/Half 100baseT/Full
	                        1000baseT/Half 1000baseT/Full
	Supported pause frame use: No
	Supports auto-negotiation: Yes
	Advertised link modes:  10baseT/Half 10baseT/Full
	                        100baseT/Half 100baseT/Full
	                        1000baseT/Half 1000baseT/Full
	Advertised pause frame use: Symmetric
	Advertised auto-negotiation: Yes
	Link partner advertised link modes:  10baseT/Half 10baseT/Full
	                                     100baseT/Half 100baseT/Full
	                                     1000baseT/Full
	Link partner advertised pause frame use: No
	Link partner advertised auto-negotiation: Yes
	Speed: 1000Mb/s
	Duplex: Full
	Port: Twisted Pair
	PHYAD: 1
	Transceiver: internal
	Auto-negotiation: on
	MDI-X: off
Cannot get wake-on-lan settings: Operation not permitted
	Current message level: 0x00100000 (1048576)
			       0x100000
	Link detected: yes
$ sudo ethtool -s net00 msglvl 0xfffffff
$ ethtool net00
Settings for net00:
	Supported ports: [ TP ]
	Supported link modes:   10baseT/Half 10baseT/Full
	                        100baseT/Half 100baseT/Full
	                        1000baseT/Half 1000baseT/Full
	Supported pause frame use: No
	Supports auto-negotiation: Yes
	Advertised link modes:  10baseT/Half 10baseT/Full
	                        100baseT/Half 100baseT/Full
	                        1000baseT/Half 1000baseT/Full
	Advertised pause frame use: Symmetric
	Advertised auto-negotiation: Yes
	Link partner advertised link modes:  10baseT/Half 10baseT/Full
	                                     100baseT/Half 100baseT/Full
	                                     1000baseT/Full
	Link partner advertised pause frame use: No
	Link partner advertised auto-negotiation: Yes
	Speed: 1000Mb/s
	Duplex: Full
	Port: Twisted Pair
	PHYAD: 1
	Transceiver: internal
	Auto-negotiation: on
	MDI-X: off
Cannot get wake-on-lan settings: Operation not permitted
	Current message level: 0x0fffffff (268435455)
			       drv probe link timer ifdown ifup rx_err tx_err tx_queued intr 
tx_done rx_status pktdata hw wol 0xfff8000
	Link detected: yes
```


Kind regards,

Paul

WARNING: multiple messages have this Message-ID (diff)
From: Paul Menzel <pmenzel@molgen.mpg.de>
To: Jakub Kicinski <kuba@kernel.org>, Michal Kubecek <mkubecek@suse.cz>
Cc: Ariel Elior <aelior@marvell.com>,
	Manish Chopra <manishc@marvell.com>,
	netdev@vger.kernel.org, it+netdev@molgen.mpg.de,
	linuxppc-dev@lists.ozlabs.org,
	Sudarsana Kalluru <skalluru@marvell.com>
Subject: Re: bnx2x: ppc64le: Unable to set message level greater than 0x7fff
Date: Wed, 16 Mar 2022 06:33:44 +0100	[thread overview]
Message-ID: <ade0ed87-be4f-e3c7-5e01-4bfdb78fae07@molgen.mpg.de> (raw)
In-Reply-To: <db796473-69cf-122e-ec40-de62659517b0@molgen.mpg.de>

Dear Jakub,


Sorry, one more addition.

Am 16.03.22 um 06:16 schrieb Paul Menzel:

> Am 16.03.22 um 02:35 schrieb Jakub Kicinski:
>> On Tue, 15 Mar 2022 22:58:57 +0100 Paul Menzel wrote:
>>> On the POWER8 server IBM S822LC (ppc64le), I am unable to set the
>>> message level for the network device to 0x0100000 but it fails.
>>>
>>>       $ sudo ethtool -s enP1p1s0f2 msglvl 0x0100000
>>>       netlink error: cannot modify bits past kernel bitset size (offset 56)
>>>       netlink error: Invalid argument
>>>
>>> Below is more information. 0x7fff is the largest value I am able to set.
>>>
>>> ```
>>> $ sudo ethtool -i enP1p1s0f2
>>> driver: bnx2x
>>> version: 5.17.0-rc7+
>>> firmware-version: bc 7.10.4
>>> expansion-rom-version:
>>> bus-info: 0001:01:00.2
>>> supports-statistics: yes
>>> supports-test: yes
>>> supports-eeprom-access: yes
>>> supports-register-dump: yes
>>> supports-priv-flags: yes
>>> $ sudo ethtool -s enP1p1s0f2 msglvl 0x7fff
>>> $ sudo ethtool enP1p1s0f2
>>> Settings for enP1p1s0f2:
>>>           Supported ports: [ TP ]
>>>           Supported link modes:   10baseT/Half 10baseT/Full
>>>                                   100baseT/Half 100baseT/Full
>>>                                   1000baseT/Full
>>>           Supported pause frame use: Symmetric Receive-only
>>>           Supports auto-negotiation: Yes
>>>           Supported FEC modes: Not reported
>>>           Advertised link modes:  10baseT/Half 10baseT/Full
>>>                                   100baseT/Half 100baseT/Full
>>>                                   1000baseT/Full
>>>           Advertised pause frame use: Symmetric Receive-only
>>>           Advertised auto-negotiation: Yes
>>>           Advertised FEC modes: Not reported
>>>           Speed: Unknown!
>>>           Duplex: Unknown! (255)
>>>           Auto-negotiation: on
>>>           Port: Twisted Pair
>>>           PHYAD: 17
>>>           Transceiver: internal
>>>           MDI-X: Unknown
>>>           Supports Wake-on: g
>>>           Wake-on: d
>>>           Current message level: 0x00007fff (32767)
>>>                                  drv probe link timer ifdown ifup rx_err tx_err tx_queued intr tx_done rx_status pktdata hw wol
>>>           Link detected: no
>>> $ sudo ethtool -s enP1p1s0f2 msglvl 0x8000
>>> netlink error: cannot modify bits past kernel bitset size (offset 56)
>>> netlink error: Invalid argument
>>> ```
>>
>> The new ethtool-over-netlink API limits the msg levels to the ones
>> officially defined by the kernel (NETIF_MSG_CLASS_COUNT).
>>
>> CC: Michal
> 
> Thank you for the prompt reply. So, it’s unrelated to the architecture, 
> and to the Linux kernel version, as it works on x86_64 with Linux 5.10.x.
> 
> Michal, how do I turn on certain bnx2x messages?
> 
>      $ git grep BNX2X_MSG_SP drivers/net/ethernet/broadcom/bnx2x/bnx2x.h
>      drivers/net/ethernet/broadcom/bnx2x/bnx2x.h:#define BNX2X_MSG_SP 
>                       0x0100000 /* was: NETIF_MSG_INTR */

Testing this on the x86_64 Dell OptiPlex 5055 with a Broadcom NetXtreme 
BCM5762 Gigabit Ethernet PCIe [14e4:1687], it still works.

```
$ uname -a
Linux serotimor.molgen.mpg.de 5.17.0-rc5.mx64.428 #1 SMP PREEMPT Mon Feb 
21 04:00:47 CET 2022 x86_64 GNU/Linux
$ sudo ethtool -s net00 msglvl 0x0100000
$ ethtool net00
Settings for net00:
	Supported ports: [ TP ]
	Supported link modes:   10baseT/Half 10baseT/Full
	                        100baseT/Half 100baseT/Full
	                        1000baseT/Half 1000baseT/Full
	Supported pause frame use: No
	Supports auto-negotiation: Yes
	Advertised link modes:  10baseT/Half 10baseT/Full
	                        100baseT/Half 100baseT/Full
	                        1000baseT/Half 1000baseT/Full
	Advertised pause frame use: Symmetric
	Advertised auto-negotiation: Yes
	Link partner advertised link modes:  10baseT/Half 10baseT/Full
	                                     100baseT/Half 100baseT/Full
	                                     1000baseT/Full
	Link partner advertised pause frame use: No
	Link partner advertised auto-negotiation: Yes
	Speed: 1000Mb/s
	Duplex: Full
	Port: Twisted Pair
	PHYAD: 1
	Transceiver: internal
	Auto-negotiation: on
	MDI-X: off
Cannot get wake-on-lan settings: Operation not permitted
	Current message level: 0x00100000 (1048576)
			       0x100000
	Link detected: yes
$ sudo ethtool -s net00 msglvl 0xfffffff
$ ethtool net00
Settings for net00:
	Supported ports: [ TP ]
	Supported link modes:   10baseT/Half 10baseT/Full
	                        100baseT/Half 100baseT/Full
	                        1000baseT/Half 1000baseT/Full
	Supported pause frame use: No
	Supports auto-negotiation: Yes
	Advertised link modes:  10baseT/Half 10baseT/Full
	                        100baseT/Half 100baseT/Full
	                        1000baseT/Half 1000baseT/Full
	Advertised pause frame use: Symmetric
	Advertised auto-negotiation: Yes
	Link partner advertised link modes:  10baseT/Half 10baseT/Full
	                                     100baseT/Half 100baseT/Full
	                                     1000baseT/Full
	Link partner advertised pause frame use: No
	Link partner advertised auto-negotiation: Yes
	Speed: 1000Mb/s
	Duplex: Full
	Port: Twisted Pair
	PHYAD: 1
	Transceiver: internal
	Auto-negotiation: on
	MDI-X: off
Cannot get wake-on-lan settings: Operation not permitted
	Current message level: 0x0fffffff (268435455)
			       drv probe link timer ifdown ifup rx_err tx_err tx_queued intr 
tx_done rx_status pktdata hw wol 0xfff8000
	Link detected: yes
```


Kind regards,

Paul

  reply	other threads:[~2022-03-16  5:33 UTC|newest]

Thread overview: 15+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-03-15 21:58 bnx2x: ppc64le: Unable to set message level greater than 0x7fff Paul Menzel
2022-03-16  1:35 ` Jakub Kicinski
2022-03-16  1:35   ` Jakub Kicinski
2022-03-16  5:16   ` Paul Menzel
2022-03-16  5:16     ` Paul Menzel
2022-03-16  5:33     ` Paul Menzel [this message]
2022-03-16  5:33       ` Paul Menzel
2022-03-16 11:49       ` [EXT] " Manish Chopra
2022-03-16 11:49         ` Manish Chopra
2022-03-16 18:17         ` Jakub Kicinski
2022-03-16 18:17           ` Jakub Kicinski
2022-03-16 18:52           ` Michal Kubecek
2022-03-16 18:52             ` Michal Kubecek
2022-03-16 19:18             ` Jakub Kicinski
2022-03-16 19:18               ` Jakub Kicinski

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=ade0ed87-be4f-e3c7-5e01-4bfdb78fae07@molgen.mpg.de \
    --to=pmenzel@molgen.mpg.de \
    --cc=aelior@marvell.com \
    --cc=it+netdev@molgen.mpg.de \
    --cc=kuba@kernel.org \
    --cc=linuxppc-dev@lists.ozlabs.org \
    --cc=manishc@marvell.com \
    --cc=mkubecek@suse.cz \
    --cc=netdev@vger.kernel.org \
    --cc=skalluru@marvell.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.