On Fri, Oct 09, 2026 at 02:04:24PM +0200, Przemek Kitszel wrote: > E800 family offers three kinds of RSS LUTs: VSI LUT (sized 64), GLOBAL LUT > (sized 512), and PF LUT (sized 2048). Until now the GLOBAL kind was not > used at all. There are two possible usages for it, subsequent commit will > give VF option to acquire it, and this one enables PF to switch between PF > LUT and GLOBAL LUT - switching to smaller one is, again, to make it > possible for VF to then acquire the former one. > > Devlink resources are used to let user show current usage and change the > allocation, see examples below. > > Default state on 8-port card, asking for aggregate "whole device" usage, > note that there are as many PF LUTs as there is PFs, and, for e810, there > are 16 GLOBAL LUTs: > $ devlink resource show devlink_index/11 > devlink_index/11: > name rss size 8 unit entry size_min 0 size_max 24 size_gran 1 dpipe_tables > none > resources: > name lut_512 size 0 unit entry size_min 0 size_max 16 size_gran 1 > dpipe_tables none > name lut_2048 size 8 unit entry size_min 0 size_max 8 size_gran 1 > dpipe_tables none > > Now let's add GLOBAL LUT for a single PF (on one-port NIC): > $ sudo devlink resource set pci/0000:18:00.0 path rss/lut_512 size 1 > And show it's resources after that: > $ devlink resource show pci/0000:18:00.0 > pci/0000:18:00.0: > name rss size 2 unit entry size_min 0 size_max 2 size_gran 1 dpipe_tables > none > resources: > name lut_512 size 1 unit entry size_min 0 size_max 1 size_gran 1 > dpipe_tables none > name lut_2048 size 1 unit entry size_min 0 size_max 1 size_gran 1 > dpipe_tables none > Let's take the PF LUT out of that PF afterwards: > $ sudo devlink resource set pci/0000:18:00.0 path rss/lut_2048 size 0 > now `ethtool -x $ifacename` will report smaller RSS table. > > Signed-off-by: Przemek Kitszel <[email protected]>
Hi Przemek, With this patch applied the following errors show up for x86_64 W=1 builds with gcc 16.2.1. .../resource.c:340:17: error: typename in expression .../resource.c:340:21: error: Expected ; at end of statement .../resource.c:340:21: error: got rel_err .../resource.c:340:17: error: undefined identifier 'int' .../resource.c:342:17: error: undefined identifier 'rel_err' .../resource.c:343:21: error: undefined identifier 'rel_err' .../resource.c:344:25: error: undefined identifier 'rel_err' .../resource.c:344:25: error: undefined identifier 'rel_err' .../resource.c:347:39: error: undefined identifier 'rel_err' ... -- pw-bot: changes-requested
