Re: Allow Ceph to compile and run on riscv64

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



FWIW,  Fedora has F42 for RiscV in their alt arches. And most or all the packages that are available in regular Fedora are available for RiscV too, including Ceph. See https://riscv-koji.fedoraproject.org/koji/packageinfo?packageID=1637

CentOS also has CentOS Stream 10 for RiscV in their alt arches. Ceph packages for CentOS are built in the Storage SIG, and AFAIK there isn't a way for Storage SIG to do builds for alt arches, but I might be wrong about that. I think it would be fairly straight forward to build Ceph for RiscV.

Fedora and CentOS also support aarch64 (a.k.a. arm64) and ppc64le, and Ceph packages are available for those as well.

I don't speak for the Ceph project, but AFAICT they have their hands full with officially supporting Ceph on x86_64 on CentOS and Ubuntu. I don't think anyone has the bandwidth, and they certainly don't have the hardware to support other arches.


On Thu, Jul 31, 2025 at 12:08 PM <sudoemt@xxxxxxxxx> wrote:
Hi there, I'm ffgan. My GitHub account is github.com/ffgan. I'm a RISC-V enthusiast and hope to contribute to making Ceph run smoothly on riscv64 (RV64).

Does Ceph have any plans to support RV64 in the near future? If so, I'd be very happy to provide relevant assistance. Please feel free to contact me anytime.

I made some modifications based on Ceph v19.2.2. When building v19.2.2, there were some missing third-party dependencies like ceph-boost. A few days ago, I asked @adamemerson about his views on ceph-boost supporting RV, but didn't receive a reply (by email), so I'm posting this thread here.

v19.2.2 can basically run on Ubuntu 22 RV, and here are the related modifications.
https://github.com/ffgan/ceph/commits/feature/allow_riscv64_compile/

My main work was porting-related, aimed at making Ceph run on RV64. I first modified install-deps.sh - when running this script, some third-party dependencies didn't support RV, so I packaged them to make the script run on U22 RV. Then I also modified some CMakeLists.txt files and some header files to support compilation on RV. For the dashboard, there were some issues, so I disabled the related compilation and building. After completing the modifications, to conveniently demonstrate the build and test results, I set up an RV64 server and used GitHub Actions to execute the related processes step by step, connecting to the server via SSH to execute commands and get the relevant output. Here are the related CI scripts and running results.
https://github.com/ffgan/ceph-riscv/actions/runs/16620228074
The results show that the execution was basically smooth. althrought some test failed.
What suggestions do you have regarding these modifications, CI scripts, and test results?

I noticed you use Jenkins for building and testing. For RV, there might be troublesome CI pipeline setup issues. If you need assistance with related CI pipeline setup, I'd be very happy to help. For pipeline setup, if there are no RV64 physical machines available, that's no problem - QEMU virtual machines can be used to run the related builds and tests.
_______________________________________________
Dev mailing list -- dev@xxxxxxx
To unsubscribe send an email to dev-leave@xxxxxxx



--

Kaleb
_______________________________________________
Dev mailing list -- dev@xxxxxxx
To unsubscribe send an email to dev-leave@xxxxxxx

[Index of Archives]     [CEPH Users]     [Ceph Devel]     [Ceph Large]     [Information on CEPH]     [Linux BTRFS]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux