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

[Mellanox]Support buster #54

Closed
wants to merge 0 commits into from

Conversation

stephenxs
Copy link

- What I did
Support buster on Mellanox platform
Some common issues are fixed as well.
This PR depends on sonic-linux-kernel #14.

- How I did it
Mellanox related commit:

  1. Currently we port SONiC to buster in a way that builds docker-base based on buster and other dockers based on stretch. The benefit is that tasks can be carried out simultaneously.
    The build procedure can be treated as 2 stages.
    The first stage is to build the stretch-based debs and dockers in stretch-based slave docker and the second stage is to build the buster-based ones in the buster-based slave docker.
    One thing we have to pay attention to is some debs depend on kernel should not be built at stretch stage because the kernel isn't ready at that time.
    The idea is to move that kind of debs out of SONIC_STRETCH_DEBS and SONIC_MAKE_DEBS and add them to SONIC_DPKG_DEBS.
    Meanwhile, any dependency explicitly put on the stretch based dockers on kernel should be removed.
  2. Kernel version in some submodules (mft) should also be updated.
  3. On buster slave docker, in root file system of target (sonic-buildimage/fsroot), the dir libxxx and sbin are symbol links to corresponding subdirs in /usr. When building the image for Mellanox platform, the Debian packages are extracted to target file system by using "dpkg --extract", which corrupts the above-mentioned symbol links. To resolve this issue, we extract the dpkg to a temporary dir and then copy the extracted files into the target file system.

Common issues fixed:

  1. Install haveged which accelerates the initialization of /dev/random (crng init) which is responsible to random number generation
    On some devices the system can take very long to start. Eventually we found it is because crng init takes very long to finish.
    Haveged resolves this problem

- How to verify it

- Description for the changelog

- A picture of a cute animal (not mandatory but encouraged)

@stephenxs
Copy link
Author

All commits have been cherry-picked to Guohan's repo. Close this PR.

@stephenxs stephenxs closed this Apr 13, 2020
@stephenxs stephenxs deleted the buster-mellanox-rebased branch June 2, 2020 07:13
lguohan pushed a commit that referenced this pull request Nov 21, 2022
3f43852b8 [sonic_operators.cpp]: Increasing select timeout (#55)
a1142e251  [sonic_operators.cpp] Update sonic_db_manager::get_counter (#56)
1069d2dd4 [sonic_operators.cpp]: Fixbug wait with false positive to return success (#54)

Signed-off-by: Ze Gan <ganze718@gmail.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.

1 participant