[PATCH v3 3/4] ipq40xx: fix compatibility with linux-atm tools
Martin Schiller
ms at dev.tdt.de
Mon Jan 13 00:17:18 PST 2025
On 2025-01-12 15:09, Sergey Ryazanov wrote:
> atm_qos struct should be the same both for user and kernel spaces. Via
> the __SO_ENCODE() macro it is used to define the SO_ATMQOS socket IOC.
>
> During the VRX518 support introduction, the atm_trafprm sturct nested
> into the atm_qos stucture was update with newer fields that are
> referenced by the ATM TC layer of the VRX518 TC driver. These new
> fields
> are intended to communicate information for extra traffic classes
> supported by the driver. But we are still using vanilla kernel headers
> to build the toolchain. Due to the atm.h header incoherency br2684ctl
> from linux-atm tools is incapable to configure the ATM bridge netdev:
>
> br2684ctl: Interface "dsl0" created sucessfully
> br2684ctl: Communicating over ATM 0.1.2, encapsulation: LLC
> br2684ctl: setsockopt SO_ATMQOS 22 <-- EINVAL errno
> br2684ctl: Fatal: failed to connect on socket; File descriptor in bad
> state
Hmmm... I have fixed this problem in the past by including the
"user_headers". See commit e53ed6af8744 (“linux-atm: use target specific
kernel headers”) [1]. Felix suggested this to me in [2].
Does this no longer work?
>
> There are two options to fix this incoherency. (a) update the header
> file in the toolchain to build linux-atm against updated atm_trafprm
> and
> atm_qos structures, or (b) revert atm_trafprm changes.
>
...
[1]
https://git.openwrt.org/?p=openwrt/openwrt.git;a=commitdiff;h=e53ed6af8744b588ca9da5f395b427a0b0d659ba
[2]
http://lists.openwrt.org/pipermail/openwrt-devel/2023-July/041337.html
More information about the openwrt-devel
mailing list