bisdn / bisdn-linux Goto Github PK
View Code? Open in Web Editor NEWLicense: Other
License: Other
The most difficult part for ONL supported platforms is making the code compile with GCC 12 and Linux kernel 6.1. To reduce the amount of work required for extending BISDN Linux support, it would be nice to have those already present as ready to use, and only requiring the "soft" conversions which can be tested on device, i.e. updating the platform init script, OF-DPA configuration and installer.
Yocto allows CVE checking during the build, so let's make use of that to get a better understanding of security issues affecting BISDN Linux.
libnl 3.8 was recently released, so lets update it.
To reduce the need for embedded custom_led.bin binaries in OF-DPA, add support for importing these from the SONiC project, and add them for the Edgecore platforms we support.
There is no binary for the Celestica Questone 2A available, so that one still needs one embedded.
I'm seeing the following on as AS4610 switch that had a prior ONL install:
ONIE: Executing installer: http://repo.bisdn.de/pub/onie/accton-as4610/onie-bisdn-accton-as4610-v4.8.1.bin
Image build date: 2022-10-05
Verifying image checksum ... OK.
Preparing image archive ... OK.
DEBUG: onl_platform=arm-accton-as4610-54-r0
DEBUG: onl_baseplatform=arm-accton-as4610-54
BISDN Linux Installer
DEBUG: onie_partition_type=gpt
DEBUG: firmware=u-boot
removing partition 1 (Linux)
removing partition 2 (Linux)
removing partition 3 (Linux)
removing partition 4 (Linux)
Creating new BISDN Linux gpt partition /dev/sda5 ...
Could not create partition 5 from 34 to 12582945
Unable to set partition 5's name to 'BISDN-Linux'!
Error encountered; not saving changes.
Error: Unable to create partition 5 on /dev/sda
Failure: Unable to install image: http://repo.bisdn.de/pub/onie/accton-as4610/onie-bisdn-accton-as4610-v4.8.1.bin
The partition layout is:
Number Start (sector) End (sector) Size Code Name
1 2048 262143 127.0 MiB 8300 Linux filesystem
2 262144 524287 128.0 MiB 8300 Linux filesystem
3 524288 2621439 1024.0 MiB 8300 Linux filesystem
4 2621440 15720447 6.2 GiB 8300 Linux filesystem
Hi,
with bisdn linux 5.1 my switch was recognized as AS4610-30 instead of AS4610-54. This caused the interface not to come up. I changed /etc/onl/platform from "arm-accton-as4610-30-r0" to "arm-accton-as4610-54-r0" manually. That resolved the issue.
onlpdump -o
Product Name: 4610-54T-O-AC-B
Part Number: F0PEC4654004Z
MAC Range: 55
Manufacturer: Accton
Manufacture Date: 03/17/2019 04:52:33
Vendor: Edgecore
Platform Name: arm-accton_as4610_30-r0
Label Revision: R01A
Country Code: CN
Diag Version: 001.9
ONIE Version: 2016.05.00.04
Best regards,
GM
Now that then ext LTS kernel has been announced, we should switch to it.
Currently stacked VLANs are not configurable and not working properly, see https://docs.bisdn.de/network_configuration/vlan_bridging_qinq.html#stacked-vlan-support for details.
For proper expected behavior, we need to update/enhance baseboxd to handle stacked VLAN devices/bridges.
[ ] support stacked VLAN interfaces, e.g. port1.2.3
[ ] support VLAN interfaces as bridge members, to automatically en-/decapsulate traffic with an extra tag on that port
[ ] support stacked vlan aware bridges?
The package python3-appdirs is missing in the bisdn linux 5.1 repository although some other python packages depend on it. The consequence is that the latter cannot be installed.
Best regards,
GM
Existing installation found!
creating backup of existing configuration
rmdir: '/tmp/tmp.vXru01/etc/systemd': No such file or directory
Warning: The kernel is still using the old partition table.
The new table will be used at the next reboot.
The operation has completed successfully.
Error: Partition(s) 3 on /dev/sda have been written, but we have been unable to inform the kernel of the change, probably because it/they are in use. As a result, the old partition(s) will remain in use. You should reboot now before making further changes.
Failure: Unable to install image: http://repo.bisdn.de/pub/onie/accton-as4610/onie-bisdn-accton-as4610-v4.8.2.bin
It does work the second time, but of course this is problematic for unattended upgrade.
Surprisingly PRs are getting merged into ONL again, so let's update our recipe to the new version, which allows us dropping accepted patches.
Linux recently (in 5.18) added support for defining MSTIs in the kernel as vlan groups for STP (skipping the FID part).
Using that, we can simplify the mstp support, and do not need a stg group per vlan anymore.
To be able to do that, we will require changes in various components:
Additionally, we will also want
Currently any downloadable extra package is more of a side effect of Yocto recipes providing multiple packages when only one is requested to be installed.
To provide support for different use cases, we should actually provide a curated list of additional packages to install.
Our FRR version is getting out of date, so let's investigate if we can update to 9.0 (latest).
There is a repo like utility for managing bitbake projects, might be interesting to use as an alternative: https://github.com/siemens/kas.
Especially since it offers setting up a build environment and building, so could replace several open coded steps in the build process.
currently the fans are only exposed through onlp and configured through raw i2c calls.
The fan controller seems to be a max6639 chip, for which an in-kernel driver exists. The source code comment says max6620, but the register macros names and contents match the max6639 driver's, not the max6620.
Loading the driver to the appropriate register should allow configuring the fans without much effort.
According to the platform i2c library the chips are a at I2C bus 3
, addresses 0x2a
and 0x29
.
Yocto 5.0 (Scarthgap) is planned to be the next LTS release, and is planned for April 24. To keep up to date, we should work on switching to it once it nears the release.
The installer currently uses a fixed partition size of 6 GiB. But depending on the machine, there might a larger SDD included, so it would be nice to be able to make use of it.
So let the installer instead span the BISDN Linux partion the whole available space instead.
There's currently a lot of duplication between the two PoE drivers for AS4610 and AS4630. Fix this by moving common code into a library function, reducing code duplication and making improvments and fixing things esier.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.