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

Support Linux on MIPS and ARMv5TE #38

Closed
tatsuya6502 opened this issue Sep 8, 2021 · 2 comments
Closed

Support Linux on MIPS and ARMv5TE #38

tatsuya6502 opened this issue Sep 8, 2021 · 2 comments
Assignees
Labels
enhancement New feature or request
Milestone

Comments

@tatsuya6502
Copy link
Member

tatsuya6502 commented Sep 8, 2021

Support the following 32-bit Linux platforms if possible:

Currently Moka will not compile by the following reasons:

  • Moka uses std::atomic::AtomicU64 mainly as the expiration clock for entries, but AtomicU64 is not available on mipsel.
    • "PowerPC and MIPS platforms with 32-bit pointers do not have AtomicU64 or AtomicI64 types" (doc)
    • It seems AtomicU64 is not available on ARMv5TE too.
  • quanta will not compile too because crossbeam-utils does not provide atomic::AtomicCell::fetch_add method on these platforms: (Does not build on MIPS and ARMv5 metrics-rs/quanta#54)

Probably we will replace all usages of AtomicU64 with RwLock<Option<std::time::Instant>> on these platforms?

@tatsuya6502
Copy link
Member Author

Fixed this via #39.

@tatsuya6502
Copy link
Member Author

@messense — Thank you for testing PR #39. I just published Moka v0.5.3 to crate.io.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

1 participant