On Tue, Aug 27, 2024 at 03:47:05PM +0200, Guillaume Nault wrote: > On Tue, Aug 27, 2024 at 02:18:01PM +0300, Ido Schimmel wrote: > > tl;dr - This patchset continues to unmask the upper DSCP bits in the > > IPv4 flow key in preparation for allowing IPv4 FIB rules to match on > > DSCP. No functional changes are expected. Part 1 was merged in commit > > ("Merge branch 'unmask-upper-dscp-bits-part-1'"). > > > > The TOS field in the IPv4 flow key ('flowi4_tos') is used during FIB > > lookup to match against the TOS selector in FIB rules and routes. > > > > It is currently impossible for user space to configure FIB rules that > > match on the DSCP value as the upper DSCP bits are either masked in the > > various call sites that initialize the IPv4 flow key or along the path > > to the FIB core. > > > > In preparation for adding a DSCP selector to IPv4 and IPv6 FIB rules, we > > Hum, do you plan to add a DSCP selector for IPv6? That shouldn't be > necessary as IPv6 already takes all the DSCP bits into account. Also we > don't need to keep any compatibility with the legacy TOS interpretation, > as it has never been defined nor used in IPv6. Yes. I want to add the DSCP selector for both families so that user space would not need to use different selectors for different families. It's implemented in the patches I previously shared: https://github.com/idosch/linux/commit/a3289a6838a0d0e6e0a30a61132bdce3d2f71a3c.patch https://github.com/idosch/linux/commit/ff5dd634fb278431b58437654d7f65b57fd4ae4b.patch https://github.com/idosch/linux/commit/3060ecb534475eadabfa1d419dd64804f0bd0148.patch https://github.com/idosch/linux/commit/12ddbce4f519b42477ea1e130b6d2bab1cca137c.patch > > > need to make sure the entire DSCP value is present in the IPv4 flow key. > > This patchset continues to unmask the upper DSCP bits, but this time in > > the output route path. >