Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat: add gVNIC support #802

Merged
merged 1 commit into from
Sep 12, 2023
Merged

feat: add gVNIC support #802

merged 1 commit into from
Sep 12, 2023

Conversation

sergelogvinov
Copy link
Sponsor Contributor

This changes the kernel config to enable gVNIC network on GCP cloud.

https://cloud.google.com/compute/docs/network-bandwidth

amd64 (n2d-standard-2)

# ethtool -i eth0
driver: gve
version: 1.0.0
firmware-version:
expansion-rom-version:
bus-info: 0000:00:04.0
supports-statistics: yes
supports-test: no
supports-eeprom-access: no
supports-register-dump: no
supports-priv-flags: yes
# ethtool -k eth0 | grep " on"
rx-checksumming: on
tx-checksumming: on
	tx-checksum-ip-generic: on
scatter-gather: on
	tx-scatter-gather: on
tcp-segmentation-offload: on
	tx-tcp-segmentation: on
	tx-tcp-ecn-segmentation: on
	tx-tcp6-segmentation: on
generic-segmentation-offload: on
generic-receive-offload: on
receive-hashing: on
highdma: on
# ethtool -g eth0
Ring parameters for eth0:
Pre-set maximums:
RX:		1024
RX Mini:	n/a
RX Jumbo:	n/a
TX:		1024
Current hardware settings:
RX:		1024
RX Mini:	n/a
RX Jumbo:	n/a
TX:		1024

Copy link
Member

@frezbo frezbo left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I guess there's also a PR to talos to copy over this?

@smira smira self-assigned this Sep 12, 2023
@smira
Copy link
Member

smira commented Sep 12, 2023

_out/kernel-new/lib/modules/6.1.51-talos/
├── kernel
│   ├── crypto
│   │   ├── async_tx
│   │   │   ├── async_memcpy.ko
│   │   │   ├── async_pq.ko
│   │   │   ├── async_raid6_recov.ko
│   │   │   ├── async_tx.ko
│   │   │   └── async_xor.ko
│   │   ├── blake2b_generic.ko
│   │   ├── xor.ko
│   │   ├── xxhash_generic.ko
│   │   └── zstd.ko
│   ├── drivers
│   │   ├── infiniband
│   │   │   └── sw
│   │   │       └── rxe
│   │   │           └── rdma_rxe.ko
│   │   ├── md
│   │   │   ├── dm-multipath.ko
│   │   │   ├── dm-raid.ko
│   │   │   ├── dm-round-robin.ko
│   │   │   └── raid456.ko
│   │   ├── net
│   │   │   ├── ethernet
│   │   │   │   ├── aquantia
│   │   │   │   │   └── atlantic
│   │   │   │   │       └── atlantic.ko
│   │   │   │   ├── atheros
│   │   │   │   │   └── alx
│   │   │   │   │       └── alx.ko
│   │   │   │   ├── broadcom
│   │   │   │   │   ├── bnx2.ko
│   │   │   │   │   ├── bnx2x
│   │   │   │   │   │   └── bnx2x.ko
│   │   │   │   │   └── bnxt
│   │   │   │   │       └── bnxt_en.ko
│   │   │   │   ├── cisco
│   │   │   │   │   └── enic
│   │   │   │   │       └── enic.ko
│   │   │   │   ├── emulex
│   │   │   │   │   └── benet
│   │   │   │   │       └── be2net.ko
│   │   │   │   ├── google
│   │   │   │   │   └── gve
│   │   │   │   │       └── gve.ko
│   │   │   │   ├── intel
│   │   │   │   │   ├── e1000
│   │   │   │   │   │   └── e1000.ko
│   │   │   │   │   ├── e1000e
│   │   │   │   │   │   └── e1000e.ko
│   │   │   │   │   ├── e100.ko
│   │   │   │   │   ├── i40e
│   │   │   │   │   │   └── i40e.ko
│   │   │   │   │   ├── iavf
│   │   │   │   │   │   └── iavf.ko
│   │   │   │   │   ├── ice
│   │   │   │   │   │   └── ice.ko
│   │   │   │   │   ├── igb
│   │   │   │   │   │   └── igb.ko
│   │   │   │   │   ├── igbvf
│   │   │   │   │   │   └── igbvf.ko
│   │   │   │   │   ├── igc
│   │   │   │   │   │   └── igc.ko
│   │   │   │   │   ├── ixgb
│   │   │   │   │   │   └── ixgb.ko
│   │   │   │   │   ├── ixgbe
│   │   │   │   │   │   └── ixgbe.ko
│   │   │   │   │   └── ixgbevf
│   │   │   │   │       └── ixgbevf.ko
│   │   │   │   ├── marvell
│   │   │   │   │   └── sky2.ko
│   │   │   │   ├── mellanox
│   │   │   │   │   ├── mlx4
│   │   │   │   │   │   ├── mlx4_core.ko
│   │   │   │   │   │   └── mlx4_en.ko
│   │   │   │   │   ├── mlx5
│   │   │   │   │   │   └── core
│   │   │   │   │   │       └── mlx5_core.ko
│   │   │   │   │   ├── mlxfw
│   │   │   │   │   │   └── mlxfw.ko
│   │   │   │   │   └── mlxsw
│   │   │   │   │       ├── mlxsw_core.ko
│   │   │   │   │       ├── mlxsw_i2c.ko
│   │   │   │   │       ├── mlxsw_minimal.ko
│   │   │   │   │       ├── mlxsw_pci.ko
│   │   │   │   │       └── mlxsw_spectrum.ko
│   │   │   │   ├── qlogic
│   │   │   │   │   ├── qed
│   │   │   │   │   │   └── qed.ko
│   │   │   │   │   ├── qede
│   │   │   │   │   │   └── qede.ko
│   │   │   │   │   └── qlcnic
│   │   │   │   │       └── qlcnic.ko
│   │   │   │   └── realtek
│   │   │   │       ├── 8139too.ko
│   │   │   │       └── r8169.ko
│   │   │   ├── mdio.ko
│   │   │   ├── phy
│   │   │   │   ├── ax88796b.ko
│   │   │   │   └── smsc.ko
│   │   │   ├── thunderbolt-net.ko
│   │   │   ├── usb
│   │   │   │   ├── aqc111.ko
│   │   │   │   ├── asix.ko
│   │   │   │   ├── ax88179_178a.ko
│   │   │   │   ├── cdc_eem.ko
│   │   │   │   ├── cdc_ether.ko
│   │   │   │   ├── cdc_mbim.ko
│   │   │   │   ├── cdc_ncm.ko
│   │   │   │   ├── cdc-phonet.ko
│   │   │   │   ├── cdc_subset.ko
│   │   │   │   ├── cx82310_eth.ko
│   │   │   │   ├── dm9601.ko
│   │   │   │   ├── gl620a.ko
│   │   │   │   ├── huawei_cdc_ncm.ko
│   │   │   │   ├── int51x1.ko
│   │   │   │   ├── kalmia.ko
│   │   │   │   ├── lg-vl600.ko
│   │   │   │   ├── mcs7830.ko
│   │   │   │   ├── net1080.ko
│   │   │   │   ├── plusb.ko
│   │   │   │   ├── qmi_wwan.ko
│   │   │   │   ├── r8153_ecm.ko
│   │   │   │   ├── rndis_host.ko
│   │   │   │   ├── sierra_net.ko
│   │   │   │   ├── smsc75xx.ko
│   │   │   │   ├── smsc95xx.ko
│   │   │   │   ├── sr9700.ko
│   │   │   │   ├── sr9800.ko
│   │   │   │   ├── usbnet.ko
│   │   │   │   └── zaurus.ko
│   │   │   └── vmxnet3
│   │   │       └── vmxnet3.ko
│   │   ├── scsi
│   │   │   ├── aacraid
│   │   │   │   └── aacraid.ko
│   │   │   ├── hpsa.ko
│   │   │   ├── megaraid
│   │   │   │   └── megaraid_sas.ko
│   │   │   ├── mpt3sas
│   │   │   │   └── mpt3sas.ko
│   │   │   ├── smartpqi
│   │   │   │   └── smartpqi.ko
│   │   │   └── vmw_pvscsi.ko
│   │   ├── thunderbolt
│   │   │   └── thunderbolt.ko
│   │   ├── usb
│   │   │   ├── class
│   │   │   │   └── cdc-wdm.ko
│   │   │   └── serial
│   │   │       ├── option.ko
│   │   │       └── usb_wwan.ko
│   │   └── virtio
│   │       ├── virtio_balloon.ko
│   │       ├── virtio_input.ko
│   │       ├── virtio_mmio.ko
│   │       ├── virtio_pci.ko
│   │       ├── virtio_pci_legacy_dev.ko
│   │       └── virtio_pci_modern_dev.ko
│   ├── fs
│   │   └── btrfs
│   │       └── btrfs.ko
│   ├── lib
│   │   ├── objagg.ko
│   │   ├── parman.ko
│   │   ├── raid6
│   │   │   └── raid6_pq.ko
│   │   └── zstd
│   │       └── zstd_compress.ko
│   └── net
│       ├── ipv4
│       │   └── ip_gre.ko
│       └── openvswitch
│           └── vport-gre.ko
├── modules.alias
├── modules.alias.bin
├── modules.builtin
├── modules.builtin.alias.bin
├── modules.builtin.bin
├── modules.builtin.modinfo
├── modules.dep
├── modules.dep.bin
├── modules.devname
├── modules.order
├── modules.softdep
├── modules.symbols
└── modules.symbols.bin

69 directories, 119 files

This changes the kernel config to enable gVNIC network on GCP cloud.

Signed-off-by: Serge Logvinov <serge.logvinov@sinextra.dev>
Signed-off-by: Andrey Smirnov <andrey.smirnov@siderolabs.com>
@smira
Copy link
Member

smira commented Sep 12, 2023

/ok-to-test

@smira
Copy link
Member

smira commented Sep 12, 2023

/m

@talos-bot talos-bot merged commit 518c441 into siderolabs:main Sep 12, 2023
13 checks passed
smira added a commit to smira/talos that referenced this pull request Sep 12, 2023
See siderolabs/pkgs#802

The module is included by default, but loaded on demand.

Signed-off-by: Andrey Smirnov <andrey.smirnov@siderolabs.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants