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

#556 Initial Cmake Module definition. #557

Merged
merged 27 commits into from
Feb 24, 2023

Conversation

phelter
Copy link
Contributor

@phelter phelter commented Sep 25, 2022

Support for CMake and compilation with strictest definitions for GNU/Clang.

Description

Added support for CMake compile of the source code.

  • Excludes some Ports at the moment - due to lack of testing infrastructure.
  • Excludes integrating/changing unit-tests and compiling:
    • test/Coverity
    • test/cbmc
    • test/unit-tests
    • Reason is these are projects of their own and do not know the interworkings of these - could integrate later.
  • Includes build of the Various Build-configurations for testing - including a CUSTOM for externally defined configuration.
    • DEFAULT_CONF, ENABLE_ALL, DISABLE_ALL

Test Steps

  • Updated CI - but tested locally with:
    • Ubuntu 18.04 with Clang 13 - ran all 3 build configuration tests
    • Ubuntu 18.04 with GNU 7.5 - ran all 3 build configuration tests

Related Issue

By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

@AniruddhaKanhere
Copy link
Member

@phelter, thank you for raising the issue and creating this PR!
We are looking into it and will get back to you with changes (if any).

Thanks for your patience!

@phelter
Copy link
Contributor Author

phelter commented Sep 28, 2022

@AniruddhaKanhere - Thanks for reviewing. I hope it is along the lines of how you want FreeRTOS-Plus-TCP to be integrated into projects. Feel free to ask why certain things are done a certain way as I know CMake isn't well used in the embedded firmware realm too much and is an unknown beast.

It would be great if some of the ports could be done by others following the same CMakeLists.txt format/guidelines as the other ports and then I can review those as needed.

@htibosch
Copy link
Contributor

CMake isn't well used in the embedded firmware
realm too much and is an unknown beast

That is probably why I know nothing about how to use cmake. I'm a GNU make user.

Like I just commented to your PR #35, would you mind to write a few lines that explain how things can be tested?

And can you also update this PR with the main branch?

Also it needs formatting: you can start that to write a 1-line comment with the contents:
/bot run uncrustify
that should start reformatting. Don't forget to pull to your local branch after doing that.
Thanks

@phelter
Copy link
Contributor Author

phelter commented Oct 23, 2022

/bot run uncrustify

@phelter
Copy link
Contributor Author

phelter commented Oct 23, 2022

@htibosch

The cmake file now not only compiles just for these tests, but also provides the static libraries for others to include in their builds.

The user can also use these test builds to confirm that their specific FreeRTOSConfig.h and FreeRTOSIPConfig.h are also valid for the current versions of the Kernel and Plus-TCP components.
This is done by changing the cmake variable FREERTOS_PLUS_TCP_TEST_CONFIGURATION=CUSTOM.

If you would rather just look at the results the last runs are here:
https://github.com/phelter/FreeRTOS-Plus-TCP/actions/runs/3308880906/jobs/5461579784

  • And can you also update this PR with the main branch?
    Done

  • Formatting
    Done but bot run did not occur - so i did it manually locally on the changed test directory.

…. Updated readme for how to consume at project level.
@phelter
Copy link
Contributor Author

phelter commented Oct 30, 2022

@AniruddhaKanhere & @htibosch

I believe I've provided all of the requested info about this PR. Would it be possible to add a few eyes on this PR in the near future?

Thanks

README.md Outdated Show resolved Hide resolved
.github/workflows/ci.yml Outdated Show resolved Hide resolved
CMakeLists.txt Outdated Show resolved Hide resolved
tools/CMakeLists.txt Outdated Show resolved Hide resolved
@phelter
Copy link
Contributor Author

phelter commented Nov 12, 2022

@paulbartell , @AniruddhaKanhere , @archigup :

Any progress on this? - would like to not rely on my forks of FreeRTOS/* for projects that I am working on.

Copy link
Member

@AniruddhaKanhere AniruddhaKanhere left a comment

Choose a reason for hiding this comment

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

Just a small NIT pick

source/portable/NetworkInterface/STM32Fxx/CMakeLists.txt Outdated Show resolved Hide resolved
@phelter
Copy link
Contributor Author

phelter commented Feb 23, 2023

@paulbartell , @AniruddhaKanhere , @archigup :

Just a FYI,

This is the last post and update you will get from me for these changes.

I am no longer going to maintain this. Please feel free to add or abandon these changes.

I am moving my efforts on the opensource community away from FreeRTOS as the turnaround times for changes and PR's is in excess of 5 months and it looks as though there is little effort in maintaining this code base.

I am assuming Amazon is winding down it's support for FreeRTOS since there has been a shift/migration to Zephyr .

@AniruddhaKanhere
Copy link
Member

AniruddhaKanhere commented Feb 23, 2023

Hello @phelter,

I am moving my efforts on the opensource community away from FreeRTOS as the turnaround times for changes and PR's is in excess of 5 months

I am sorry to hear that and sincerely apologize for the delay. We did not use CMake in +TCP and the FreeRTOS-Kernel before and had many discussions about which way is the best to avoid rework and make the repository easier to use for our users. This led to all the discussions and comments we had on your PR.
Regardless, I share your view that the turnaround time on this PR was quite large. To fix that and to ensure that this is not repeated with any other PR, we are working on a mechanism which should help us focus on pending PRs amongst other things.

and it looks as though there is little effort in maintaining this code base.

This is not accurate. We were focused on adding and refactoring the changes in the IPv6 branch. IPv6 functionality is quite sought after and thus we were prioritizing that.

I am assuming Amazon is winding down it's support for FreeRTOS

This is also not accurate. If anything, we are adding more and more to the FreeRTOS ecosystem.

Sincerely,
Aniruddha

Copy link
Member

@AniruddhaKanhere AniruddhaKanhere left a comment

Choose a reason for hiding this comment

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

Thank you for this PR @phelter!

I am approving this PR. Once we have a second approval, we can merge it mainline

Thanks

@phelter
Copy link
Contributor Author

phelter commented Feb 23, 2023

Thanks @AniruddhaKanhere for the review.

Please note I believe this repo has similar issues to the ones mentioned in this issue:
aws/ota-for-aws-iot-embedded-sdk#465

And this was mentioned in this issue here - #570 (comment)

It looks as though there is a fundamental misunderstanding in the requirements for making a module and it's API task/thread safe and robust in the various aws opensource projects. I'd suggest adding a similar issue to this repo as well regarding a State Access Audit.

And to ensure these type of issues don't pop up with future modifications, consider incorporating both Address and Thread Sanitizer runtime unit tests. Where the unit tests stimulates the module as a black/gray-box (with all of the appropriate various threads and timers running in the typical threading organization). These type of unit-tests can then also act as confirmation that the examples you provide are operational as they are more like example code rather than low-level unit-tests.

Why do I believe this is an issue in this repo?

I've been seeing various issues with FreeRTOS-Plus-TCP hanging when using the FTP server functionality. It passes when it is compiled Debug mode, but when compiled for Release mode, the pings stop processing. In my experience, these types of bugs are typically seen when there are issues with State Access between threads/tasks (or between ISR and thread contexts). There were too many potential locations to list out for this particular repo and I was unable to convince @htibosch of the need to do this level of scrutiny without a specific error case that explicitly exposed this type of failure.

@amazonKamath amazonKamath merged commit dcd6e58 into FreeRTOS:main Feb 24, 2023
@cobusve
Copy link
Member

cobusve commented Feb 24, 2023

@phelter for what it is worth I believe you are right about the State Access Audit. We have already done a lot of work on this and will continue with doing that. If you have more suggestions I would love to hear them.

tony-josi-aws pushed a commit to tony-josi-aws/FreeRTOS-Plus-TCP that referenced this pull request Mar 17, 2023
tony-josi-aws pushed a commit to tony-josi-aws/FreeRTOS-Plus-TCP that referenced this pull request Mar 20, 2023
tony-josi-aws added a commit that referenced this pull request Mar 27, 2023
* 556 Initial Cmake Module definition. #557

* renaming variables that have conflicting names with MSC and *nix headers

* fix build issue for posix port

* Fix warning: -Waddress-of-packed-member when calculating checksum directly from network packets

* fix warnings with prvInitialiseTCPFields declaration

* removing macros that hides the structure fields

* Updating build check enable all config to enable all config macros

* CMake: Fix GIT_REPOSITORY and GIT_TAG (#742)

* moving ipTRUE_BOOL and ipFALSE_BOOL out of #ifndef pdTRUE_SIGNED check as they are not defined in kernel

* minor fix to the cmake files and main file

* Uncrustify: triggered by comment.

* adding doxygen comments to new functions

* Uncrustify: triggered by comment

* Add more warnings check and fix warnings

* Uncrustify: triggered by comment

* fix review feedback and more debug printf warnings fix

* more warnings fix

* fix misra issues

* Uncrustify: triggered by comment

* replace sin_addr with sin_address.ulIP_IPv4 in +TCP demos

* replace sin_addr6 with sin_address.xIP_IPv6 in +TCP demos

* replace freertos_sockaddr6 with freertos_sockaddr in +TCP demos

* review feedback changes

* removing duplicate def for prvStreamBufferAdd from winpcap

* fix more warnings from MSVC

* Uncrustify: triggered by comment

* review feedback changes

* Uncrustify: triggered by comment

---------

Co-authored-by: phelter <paulheltera@gmail.com>
Co-authored-by: Nikhil Kamath <110539926+amazonKamath@users.noreply.github.com>
Co-authored-by: GitHub Action <action@github.com>
HTRamsey pushed a commit to HTRamsey/FreeRTOS-Plus-TCP that referenced this pull request Jun 19, 2023
…reeRTOS#803)

* 556 Initial Cmake Module definition. FreeRTOS#557

* renaming variables that have conflicting names with MSC and *nix headers

* fix build issue for posix port

* Fix warning: -Waddress-of-packed-member when calculating checksum directly from network packets

* fix warnings with prvInitialiseTCPFields declaration

* removing macros that hides the structure fields

* Updating build check enable all config to enable all config macros

* CMake: Fix GIT_REPOSITORY and GIT_TAG (FreeRTOS#742)

* moving ipTRUE_BOOL and ipFALSE_BOOL out of #ifndef pdTRUE_SIGNED check as they are not defined in kernel

* minor fix to the cmake files and main file

* Uncrustify: triggered by comment.

* adding doxygen comments to new functions

* Uncrustify: triggered by comment

* Add more warnings check and fix warnings

* Uncrustify: triggered by comment

* fix review feedback and more debug printf warnings fix

* more warnings fix

* fix misra issues

* Uncrustify: triggered by comment

* replace sin_addr with sin_address.ulIP_IPv4 in +TCP demos

* replace sin_addr6 with sin_address.xIP_IPv6 in +TCP demos

* replace freertos_sockaddr6 with freertos_sockaddr in +TCP demos

* review feedback changes

* removing duplicate def for prvStreamBufferAdd from winpcap

* fix more warnings from MSVC

* Uncrustify: triggered by comment

* review feedback changes

* Uncrustify: triggered by comment

---------

Co-authored-by: phelter <paulheltera@gmail.com>
Co-authored-by: Nikhil Kamath <110539926+amazonKamath@users.noreply.github.com>
Co-authored-by: GitHub Action <action@github.com>
moninom1 added a commit that referenced this pull request Jul 5, 2023
* Update mainline to reflect changes after the release. (#563)

* Update README.md

* Update History.txt

* Update version number macros

* Update manifest.yml

* IPv4/single SAME70 emac race condition (#567)

* Implemented Maty's solution

* Added a new statistic 'tx_write_fail'

* Uncrustify: triggered by comment.

Co-authored-by: Hein Tibosch <hein@htibosch.net>
Co-authored-by: GitHub Action <action@github.com>

* IPv4/Single: Add a SocketID to a socket (#546)

* IPv4/Single: Add a SocketID to a socket

* Change in comment

* Applied uncrustify to format the source code

* Added a few entries to lexicon.txt

* Removed the 'ipconfigUSE_SetSocketID' option

* Change to lexicon.txt

* Add unit tests for the newly added API

Co-authored-by: Hein Tibosch <hein@htibosch.net>
Co-authored-by: alfred gedeon <28123637+alfred2g@users.noreply.github.com>
Co-authored-by: Aniruddha Kanhere <60444055+AniruddhaKanhere@users.noreply.github.com>

* IPv4/single: SAME70 EMAC buffer sizes (#568)

* Implemented Maty's solution

* Added a new statistic 'tx_write_fail'

* Uncrustify: triggered by comment.

* Increase NETWORK_BUFFER_SIZE in order to include the 'ipBUFFER_PADDING' bytes

* ICMP checksum calculated manually

* Uncrustify: triggered by comment.

* Update gmac_SAM.c

Co-authored-by: Hein Tibosch <hein@htibosch.net>
Co-authored-by: GitHub Action <action@github.com>
Co-authored-by: Aniruddha Kanhere <60444055+AniruddhaKanhere@users.noreply.github.com>

* Eliminate some warnings (#578)

* Eliminate some warnings related to print statements

Authored-by:  Pete Bone  <pete-pjb@users.noreply.github.com >

* Add MISRA justification for use of dynamic memory (#581)

* Update deprecated macros in network driver files (#579)

* Update deprecated macros in network driver files

* Fix typo in RX driver.

* Replace #warning with #error on test for deprecated macro.

* Fix doxygen check

Co-authored-by: PeterB <PeterB@PETE-LT.otg.local>
Co-authored-by: Aniruddha Kanhere <60444055+AniruddhaKanhere@users.noreply.github.com>

* Fix Network-interface of the Xilinx UltraScale port (#588)

The underlying issue was when the port would be used with Jumbo frames.
During receives of Jumbo packets the data length was always set
incorrectly, which then would cause buffer allocation issues and
subsequently corrupted data would be sent to the IP-task.

After some inspection in the Xilinx UltraScale port, I found out
that when the data length would be set, the wrong mask from the
Xilinx Ethernet MAC driver would be used. By using the right mask
(XEMACPS_RXBUF_LEN_JUMBO_MASK) when Jumbo Frame support is enabled
the issue was resolved

* Fix Windows thread calling vTaskSuspendAll / xTaskResumeAll. (#592)

Co-authored-by: Jason Carroll <czjaso@amazon.com>

* Updated comments for FreeRTOS_select return value (#596)

* Updated comments for FreeRTOS_select return value

* Updated the function brief for FreeRTOS_select

* Uncrustify: triggered by comment.

* Updating FreeRTOS_select function @brief

* Updated function brief for FreeRTOS_SignalSocket

* Uncrustify: triggered by comment.

* Update source/FreeRTOS_Sockets.c

Co-authored-by: Ubuntu <ubuntu@ip-172-31-22-210.ec2.internal>
Co-authored-by: GitHub Action <action@github.com>
Co-authored-by: Aniruddha Kanhere <60444055+AniruddhaKanhere@users.noreply.github.com>

* Fixed readme script to build and run unit tests (#644)

* Minor warning fixes (#589)

* Eliminate compiler unused parameter warning

* Eliminate compiler unused variable warnings

* Eliminate compiler unused function warning

The function pcGetPHIName(...) would be called only in the
FreeRTOS_printf message, however FreeRTOS_printf maybe be defined
to nothing e.g. release builds, which then the warning would come up

* Rework callback setups in the EMAC-driver of the Xilinx UltraScale port

The calls to the function XEmacPs_SetHandler would trigger the
pedantic warning:

"ISO C forbids conversion of object pointer to function pointer type"

The reason for this, is that the second parameter of the function
XEmacPS_SetHandler is declared as pointer to a void type, but the
function "expects" a function pointer, which in setup_isr rightly
happens.

However IMHO, this is just bad code from the side of Xilinx, as not
on all architectures the size of a data pointer is identical to the
size of a function pointer, which also is correctly recognised by
the compiler.

Instead of using the "bad" function XEmacPs_SetHandler, we can set the
handlers manually to the EmacPS-instance.

* Uncrustify: triggered by comment.

* Update source/portable/NetworkInterface/xilinx_ultrascale/x_emacpsif_hw.c

Co-authored-by: Paul Bartell <paul.bartell@gmail.com>

* Apply suggestions from code review

Co-authored-by: Paul Bartell <paul.bartell@gmail.com>

* Address comments from reviews

Co-authored-by: GitHub Action <action@github.com>
Co-authored-by: Paul Bartell <paul.bartell@gmail.com>

* Use CBMC XML output to enable VSCode debugger (#673)

Prior to this commit, CBMC would emit logging information in plain text
format, which does not contain information required for the CBMC VSCode
debugger. This commit makes CBMC use XML instead of plain text.

Co-authored-by: Mark Tuttle <tuttle@acm.org>

* Remove need of token

* Use vTaskDelay for sleep in the network-interface of xilinx_ultrascale (#698)

The issue here is that, the FreeRTOS IP-task would block all other
tasks during PHY-link speed negotiations, as it was using busy
waiting. However this is not really ideal. A much more suitable
function for such a task would be `vTaskDelay`.

* Make sure that a TCP socket is closed only once (#707)

* Make sure that a TCP socket is closed only once

* Fix failing test cases for FreeRTOS_TCP_IP unit test modules post PR#705 changes

* Uncrustify: triggered by comment.

* Fix failing test cases for FreeRTOS_TCP_IP unit test modules post PR - 705 changes

---------

Co-authored-by: Hein Tibosch <hein_tibosch@yahoo.es>
Co-authored-by: GitHub Action <action@github.com>

* Remove Dup function HAL_ETH_SetMDIOClockRange. (#711)

* Update PR template to include checkbox for ut change (#734)

* Main/TCP4 : ACK number in TCP RESET reply to SYN packet (#724)

* Main/TCP4 : ACK number in TCP RESET reply to SYN packet

* Typo fix

* Add unit-test for coverage; Fix ntohl to htonl

* Fix unit-test

---------

Co-authored-by: Nikhil Kamath <110539926+amazonKamath@users.noreply.github.com>
Co-authored-by: Aniruddha Kanhere <60444055+AniruddhaKanhere@users.noreply.github.com>

* #556 Initial Cmake Module definition. (#557)

* #556 Initial Cmake Module definition.

* Fixing CI builds, rely on pcap. (#556)

* Updating tested configurations and minor clean-up of missing network interfaces (#555)

* Further clean-up based on testing with build environment. (#555)

* Using single definition for libraries everywhere. (#555)

* Fixing A_CUSTOM_NETWORK_IF compile option.

* Identifying and fixing compile issues.

* Adding in additional warnings for GNU to ignore for now.

* Fixing formatting issues with uncrustify.

* More warnings for GNU used by CI/CD pipeline.

* Assuming custom for build tests and using latest freertos-kernel code.  Updated readme for how to consume at project level.

* Fixing up issues identified in the PR. Making the build_test EXCLUDE_FROM_ALL so only compiled if requested.

* Changing to support C89 instead of C99. Renaming tcp_tools to tcp_utilities to mimic the directory.

* Using C90 ISO.  Fixing compiler warnings.

* Fixing non C90 compliant declaration after statement

* Separating out CMakeLists so each port is independent.

* Updating warning list in code.

* Fixed formatting with uncrustify.

* Fix failing tests

* Fix failing unit-test

* Fix a typo.

---------

Co-authored-by: Aniruddha Kanhere <60444055+AniruddhaKanhere@users.noreply.github.com>

* CMake: Fix GIT_REPOSITORY and GIT_TAG (#742)

* Allow use of loopback addresses in IP stack (127.0.0.0/8) (#754)

Authored-by: Adam St. Amand <astamand@amazon.com>

* Add release candidate automation (#761)

This is a minimal subset of release automation which only creates a tag
and verifies it.

Signed-off-by: Gaurav Aggarwal <aggarg@amazon.com>

* Add CBMC-running GitHub Action;

This commit adds a GitHub Action that runs the CBMC proofs in this
repository upon pushes and pull requests

* Copy CBMC output directory to CI location

This commit ensures that the output directory for CBMC proofs is in the
correct location expected by the FreeRTOS CI-CD repository.

* rx: Read mac address using FreeRTOS_GetMACAddress() rather than using the defines (#765)

* Read mac address using FreeRTOS_GetMACAddress() rather than using the defines
---------
Co-authored-by: GitHub Action <action@github.com>

* cmake: Remove add_subdirectory( cbmc ) call

CBMC proofs cannot currently be run using CMake.

fixes #753

* FreeRTOS_IP.h: Fix build error introduced by 55658e1 in FreeRTOS-Kernel

* Add Nxp1060 network interface (#774)

* Update PR template to include checkbox for ut change

* Create NetworkInterface.c

* Uncrustify: triggered by comment.

* Address PR comments

* Uncrustify: triggered by comment.

* Update NetworkInterface.c

* Uncrustify: triggered by comment.

* Update copyright year

* Refactor the init function. Add 'brief'. Cleanup.

* Uncrustify: triggered by comment.

* Update global link status only when the network is quiet

* Uncrustify: triggered by comment.

* Update copyright yeat

* Update the driver to deal with network cable disconnects

* Uncrustify: triggered by comment.

* Update NetworkInterface.c

* Clean up and address PR comments

* More cleanup and address PR comments

* Uncrustify: triggered by comment.

* Empty-Commit

* Address issue comments

* Uncrustify: triggered by comment.

* Empty-Commit to trigger workflow

* Remove Full-Duplex restriction

* Uncrustify: triggered by comment.

* Empty-Commit to trigger workflow

---------

Co-authored-by: GitHub Action <action@github.com>

* Correct GCC warnings (#798)

* Correct GCC warnings

Corrects warnings with current GCC flags
for GCC 7.5.0. The only suppressed warning pertains
to function to object pointer conversion which is
required and common for socket callbacks.

* PR feedback

---------

Co-authored-by: Ubuntu <ubuntu@ip-10-0-137-67.ec2.internal>
Co-authored-by: Nikhil Kamath <110539926+amazonKamath@users.noreply.github.com>

* Cleanup of NXP1060 network driver (#801)

* Update PR template to include checkbox for ut change

* Empty-Commit to trigger workflow

* Fix issues pointed out in PR comments

* Uncrustify: triggered by comment.

* Empty-Commit to trigger workflow

---------

Co-authored-by: GitHub Action <action@github.com>

* Fix Clang warnings (#809)

Corrects several warnings from Clang flags
for Clang 13.

Inspired by @phelter's bug report
#558

* uncrustify yml fix (#815)

* Add NetworkDown notification to NetworkInterface.c [PR: #671] (#812)

* Add NetworkDown notification to EMAC task

* Add NetworkDown notification to NetworkInterface.c

* Uncrustify: triggered by comment.

* Introduce ipconfigSUPPORT_NETWORK_DOWN_EVENT compile flag

* Fix formatting

* Uncrustify: triggered by comment.

---------

Co-authored-by: Filip Oleszek <filip.oleszek@o2.pl>
Co-authored-by: zipperowiec <35423392+zipperowiec@users.noreply.github.com>
Co-authored-by: GitHub Action <action@github.com>

* Uncrustify bot command fix (#816)

* fix uncrustify run command

* test uncrustify

* Revert "test uncrustify"

This reverts commit f660ab4.

* Fix uncrustify bot command - disable install prompt (#819)

* fix uncrustify run command

* test uncrustify

* Revert "test uncrustify"

This reverts commit f660ab4.

* removing apt-get prompt while installing git

* Removing deprecated set-output command from uncrustify bot run yml (#820)

* fix uncrustify run command

* test uncrustify

* Revert "test uncrustify"

This reverts commit f660ab4.

* removing apt-get prompt while installing git

* removing the deprecated set-output command from uncrustify bot run yml, use latest git

* IPv4/Single: Let send() stop blocking after a connection reset (#561)

* IPv4/Single: Let send() stop after a protocol error

* Remove token need

* Repaired unit-testing

* Added the cunftion test_FreeRTOS_send_DisconnectionOccursDuringWait()

* Added a comment for unit-test function test_FreeRTOS_send_DisconnectionOccursDuringWait()

* Added an item to lexicon.txt

* Restored original tcp_utilities

* Restored original tcp_utilities, once more

---------

Co-authored-by: Hein Tibosch <hein@htibosch.net>
Co-authored-by: Aniruddha Kanhere <60444055+AniruddhaKanhere@users.noreply.github.com>
Co-authored-by: Nikhil Kamath <110539926+amazonKamath@users.noreply.github.com>

* Add logs to print random number generation failure (#908)

Add logs to print random number generation failure for better debugging of issue.

* Update usage of uint64_t according to C90 standard (#907)

Co-authored-by: kar-rahul-aws <118818625+kar-rahul-aws@users.noreply.github.com>

* Fix pragma pack in CCS compiler to push/pop (#906)

`#pragma pack(1)` would make it so that all structs inserted after pack_struct_start.h
was included for the TI arm compiler would be packed, leading to potential unaligned memory access error.
Refer: https://www.ti.com/lit/ug/spnu151w/spnu151w.pdf SECTION 5.11.23

* Modified libslirp backend file to cover different libslirp library versions (#929)

Authored-by: Xiaodong Li <xiaodonn@amazon.com>

* Update according to devIntegration

* Update links to point to main directory

---------

Signed-off-by: Gaurav Aggarwal <aggarg@amazon.com>
Co-authored-by: Aniruddha Kanhere <60444055+AniruddhaKanhere@users.noreply.github.com>
Co-authored-by: Hein Tibosch <hein_tibosch@yahoo.es>
Co-authored-by: Hein Tibosch <hein@htibosch.net>
Co-authored-by: GitHub Action <action@github.com>
Co-authored-by: alfred gedeon <28123637+alfred2g@users.noreply.github.com>
Co-authored-by: Pete Bone <pete-pjb@users.noreply.github.com>
Co-authored-by: PeterB <PeterB@PETE-LT.otg.local>
Co-authored-by: ChristosZosi <76208460+ChristosZosi@users.noreply.github.com>
Co-authored-by: jasonpcarroll <23126711+jasonpcarroll@users.noreply.github.com>
Co-authored-by: Jason Carroll <czjaso@amazon.com>
Co-authored-by: Tony Josi <117763118+tony-josi-aws@users.noreply.github.com>
Co-authored-by: Ubuntu <ubuntu@ip-172-31-22-210.ec2.internal>
Co-authored-by: Paul Bartell <paul.bartell@gmail.com>
Co-authored-by: Kareem Khazem <karkhaz@amazon.com>
Co-authored-by: Mark Tuttle <tuttle@acm.org>
Co-authored-by: Tony Josi <tonyjosi@amazon.com>
Co-authored-by: ActoryOu <jay2002824@gmail.com>
Co-authored-by: Nikhil Kamath <110539926+amazonKamath@users.noreply.github.com>
Co-authored-by: phelter <paulheltera@gmail.com>
Co-authored-by: Adam St. Amand <adam.stamand@gmail.com>
Co-authored-by: Gaurav-Aggarwal-AWS <33462878+aggarg@users.noreply.github.com>
Co-authored-by: sayyadumar <sayyadumar@users.noreply.github.com>
Co-authored-by: Paul Bartell <pbartell@amazon.com>
Co-authored-by: Kody Stribrny <89810515+kstribrnAmzn@users.noreply.github.com>
Co-authored-by: Ubuntu <ubuntu@ip-10-0-137-67.ec2.internal>
Co-authored-by: Filip Oleszek <filip.oleszek@o2.pl>
Co-authored-by: zipperowiec <35423392+zipperowiec@users.noreply.github.com>
Co-authored-by: kar-rahul-aws <118818625+kar-rahul-aws@users.noreply.github.com>
Co-authored-by: Rahul Arasikere <arasikere.rahul@gmail.com>
Co-authored-by: Xiaodong Li <85011700+ChaiTowKway@users.noreply.github.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.

7 participants