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

Microfsexp #18

Merged
merged 12 commits into from
May 30, 2023
Merged

Microfsexp #18

merged 12 commits into from
May 30, 2023

Conversation

gjwatney
Copy link

@gjwatney gjwatney commented May 3, 2023

Originating Project/Creator
Affected Component
Affected Architectures(s)
Related Issue(s)
Has Unit Tests (y/n)
Builds Without Errors (y/n)
Unit Tests Pass (y/n)
Documentation Included (y/n)

Change Description

A description of the changes contained in the PR.

Rationale

A rationale for this change. e.g. fixes bug, or most projects need XYZ feature.

Testing/Review Recommendations

Fill in testing procedures, specific items to focus on for review, or other info to help the team verify these changes are flight-quality.

Future Work

Note any additional work that will be done relating to this issue.

@@ -99,8 +99,10 @@ struct MicroFsBin {

struct MicroFsConfig {
FwNativeUIntType numBins; //!< The number of bins configured. Must be <= than MAX_MICROFS_BINS
FwNativeUIntType filler; //!< filler bytes to ensure 8 byte alignment of this data structure
Copy link

@bocchino bocchino May 29, 2023

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

There are several issues here:

  1. This code seems to assume that sizeof(FwNativeUnitType) == 4. We can't assume that. FwNativeUintType does not have a defined architecture-independent size.
  2. We should not be using FwNativeUintType anyway. It doesn't have a defined size.
  3. A better way to ensure alignment in C++11 is to use alignas. If you can't use alignas for some reason, then you can write U8 pad[4] for example to add padding of 4 bytes.

Copy link
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm going to merge it to my fork to get the other changes, then we'll deal with the alignment and native integer issues.

@timcanham timcanham merged commit 2a1badb into timcanham:microfsexp May 30, 2023
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.

3 participants