Re: CALL FOR TEST axgbe promisc mode

Zhenlei Huang <[email protected]>
Newsgroups gmane.os.freebsd.devel.net
Message-ID <[email protected]>

> On Oct 8, 2024, at 8:25 PM, Mark Johnston <[email protected]> wrote:
> 
> On Mon, Oct 07, 2024 at 10:52:19PM +0800, Zhenlei Huang wrote:
>> 
>> 
>>> On Oct 2, 2024, at 3:42 PM, Mark Johnston <[email protected]> wrote:
>>> 
>>> On Tue, Oct 01, 2024 at 12:46:07PM +0000, Franco Fichtner wrote:
>>>> Hi,
>>>> 
>>>>> On 1. Oct 2024, at 02:47, Zhenlei Huang <[email protected]> wrote:
>>>>> 
>>>>> The test plan is simple, either of the following should suffice:
>>>>> 
>>>>> • Do traffic sniffing on axgbe interface. The interface will enter promisc mode and should see packets not for us.
>>>> 
>>>> I tested this with and without the patch and it's inconclusive:
>>>> 
>>>> 1. tcpdump sees foreign packets with and without patch
>>>> 2. tcpdump -p sees foreign packets with and without patch
>>> 
>>> That's somewhat surprising.
>> 
>> Maybe the firmware / hardware happens to been ( wrongly ) set to promisc mode already ?
> 
> Maybe, or the driver is missing some initialization step.
> 
>>>> This oddly enough matches my expectation that nobody raised issues about
>>>> promisc not working so far, but it leaves the question if we are/I am testing the
>>>> right thing?
>>> 
>>> I think you are.  BPF uses ifpromisc() to enable promiscuous mode, and
>>> tcpdump uses that interface rather than setting IFF_PPROMISC directly,
>>> and without the patch I expect that that's a bit broken.
>>> 
>>> There is perhaps an unrelated driver bug there.  I wonder what flags get
>>> printed by ifconfig before and during your experiments.  It'd also be
>>> useful to try enabling debug logging (sysctl
>>> dev.ax.0.axgbe_debug_level=1, I think) to see if axgbe_if_promisc_set()
>>> is getting executed as expected.
>> 
>> Probably I should firstly check D46794 in. Any idea ?
> 
> I have no objection, but it would be good to understand this better.

Committed as c7a2636889a6.

> 
>>>> Cheers,
>>>> Franco
>>>> 
>>>> ax0: <AMD 10 Gigabit Ethernet Driver> mem 0x80160000-0x8017ffff,0x80140000-0x8015ffff,0x80188000-0x80189fff at device 0.4 on pci6
>>>> ax0: Using 512 TX descriptors and 512 RX descriptors
>>>> ax0: Using 4 RX queues 4 TX queues
>>>> ax0: Using MSI-X interrupts with 8 vectors
>>>> ax0: Ethernet address: XX:XX:XX:XX:XX:XX
>>>> ax0: xgbe_config_sph_mode: SPH disabled in channel 0
>>>> ax0: xgbe_config_sph_mode: SPH disabled in channel 1
>>>> ax0: xgbe_config_sph_mode: SPH disabled in channel 2
>>>> ax0: xgbe_config_sph_mode: SPH disabled in channel 3
>>>> ax0: RSS Enabled
>>>> ax0: Receive checksum offload Enabled
>>>> ax0: VLAN filtering Enabled
>>>> ax0: VLAN Stripping Enabled
>>>> ax0: Checking GPIO expander validity
>>>> ax0: GPIO configuration valid
>>>> ax0: SFP detected:
>>>> ax0:   vendor: FS               ax0:   part number:    SFP-10G-T        ax0:   revision level: A    ax0:   serial number:  XXXXXXXXXXX      ax0: netmap queues/slots: TX 4/512, RX 4/512
>>>> ax0: Link is UP - 10Gbps/Full - flow control off
>>>> ax0: link state changed to UP
>>>> ax0: xgbe_config_sph_mode: SPH disabled in channel 0
>>>> ax0: xgbe_config_sph_mode: SPH disabled in channel 1
>>>> ax0: xgbe_config_sph_mode: SPH disabled in channel 2
>>>> ax0: xgbe_config_sph_mode: SPH disabled in channel 3
>>>> ax0: RSS Enabled
>>>> ax0: Receive checksum offload Disabled
>>>> ax0: VLAN filtering Disabled
>>>> ax0: VLAN Stripping Disabled
>>>> ax0: promiscuous mode enabled
>>>> ax0: promiscuous mode disabled
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.