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

Fix #367, 453, 456, 460, Deprecate OS_VolumeTable and other fixes #461

Merged

Conversation

jphickey
Copy link
Contributor

@jphickey jphickey commented May 14, 2020

Describe the contribution
Deprecate the OS_VolumeTable structure, which is no longer necessary with the current OSAL.

Remove the OS_VolumeTable definition from all BSPs, and provide a default (empty) one to support linking when OMIT_DEPRECATED is not set.

Note Due to unit test dependencies this PR also has to include fixes for other related issues.

Fix #367
Fix #453
Fix #456
Fix #460

These are all in separate commits and they each build individually but there are some dependencies in making the unit tests work, so they were added to this PR.

Testing performed
Build with unit tests, confirm unit test execution and sanity check CFE on supported platforms

Expected behavior changes
OSAL no longer defines the types or symbols associated with OS_VolumeTable when OMIT_DEPRECATED is set. Any external PSPs should replace their respective OS_VolumeTable with calls to the runtime registration API.

System(s) tested on
Ubuntu 20.04 (native)
RTEMS 4.11 on i686 via QEMU
Vxworks 6.9 on MCP750

Additional context
nasa/PSP#161 exists to remove these references from the CFE PSP

Contributor Info - All information REQUIRED for consideration of pull request
Joseph Hickey, Vantage Systems, Inc.

Remove the OS_VolumeTable definition from all BSPs, but provide
a default (empty) one to support linking when OMIT_DEPRECATED is
not set.
Do not assume BSP volume table provides a "/cf" directory map.
Instead, create a UT-specific map of a consistent name, and use
that.
Add a distinct type for FS_BASED entries, and an UNKNOWN value
for when a type is actually not yet identified.

This can be used to identify the FS type first at the shared
layer, then in the implementation layer as a fallback option
if not identifiable in the shared layer.

Use the volume name prefix "RAM" as a hint that the volume
is supposed to be a VOLATILE disk as opposed to a normal disk.
This is done in shared layer so it applies to all OS types.
Confirm that the "selectable" flag is set before
calling the underlying select() API.

Also update unit tests to match.
@jphickey jphickey added the CCB:Ready Pull request is ready for discussion at the Configuration Control Board (CCB) label May 16, 2020
@skliper skliper added this to the 5.1.0 milestone May 16, 2020
@skliper skliper requested a review from a user May 18, 2020 12:12
@astrogeco
Copy link
Contributor

CCB 20200520 - APPROVED

@skliper skliper added CCB-20200520 and removed CCB:Ready Pull request is ready for discussion at the Configuration Control Board (CCB) labels May 20, 2020
@astrogeco astrogeco added CCB:Approved Indicates code review and approval by community CCB IC-20200520 labels May 26, 2020
@astrogeco astrogeco changed the base branch from master to integration-candidate May 26, 2020 13:56
@astrogeco
Copy link
Contributor

@acudmore did you take a look at this?

@jphickey
Copy link
Contributor Author

Note - Lack of this PR is causing the current IC to fail as it is correlated with nasa/PSP#163. We either need to merge this or, if this cannot be merged in this cycle, we need to revert the PSP change.

@astrogeco
Copy link
Contributor

Note - Lack of this PR is causing the current IC to fail as it is correlated with nasa/PSP#163. We either need to merge this or, if this cannot be merged in this cycle, we need to revert the PSP change.

I merged the psp one in anticipation that @acudmore would review this one soonish. I think he's working on it today.

Copy link

@ghost ghost left a comment

Choose a reason for hiding this comment

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

Approve. Getting rid of the volume table is another improvement.

@astrogeco astrogeco merged commit 922df4f into nasa:integration-candidate May 28, 2020
@jphickey jphickey deleted the fix-367-deprecate-voltab branch June 19, 2020 16:13
jphickey pushed a commit to jphickey/osal that referenced this pull request Aug 10, 2022
Fix nasa#315, ES Performance debug messages
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
CCB:Approved Indicates code review and approval by community CCB
Projects
None yet
3 participants