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

Moving lib/igb and kmod/igb from openAVnu #1

Merged
merged 150 commits into from
Jul 31, 2018

Conversation

avinash-palleti
Copy link
Contributor

Creating separate repo for lib/igb and kmod/igb as part of openAVnu restructuring.

intel-ethernet and others added 30 commits July 28, 2018 00:42
…orge (4.2.16). + Startup script to illustrate how to steer OS traffic to non-AVB queues + added pci.updates and igb_avb.7 manpage
…ion tested on Fedora 18 x86_64.

Also fix heap corruption issue when calling igb_reset() in usermode library.
…e fix stall on driver startup on flashless versions of I210, small changes to igb_ptp, make -DIGB_PTP the default option during make.
Add a method of having both the igb and igb_avb kernel modules at the
same time.
Fix build on 32-bit kernels.
…rity and VLAN id instead of using hardcoded values.
Use timespec64 when necessary.
… bytes.

Details: Function igb_add_rx_frag taken from before commit:

AVNu/Open-AVB/2fdb56a391e9e09ff22837e56d594507fbaf9250
Details: in igb_reset_q_vector line 773 changed tx_ring to rx_ring.
rhii and others added 15 commits July 28, 2018 01:16
warning: comparison between signed and unsigned integer expressions
 [-Wsign-compare]
-- daemons/mrpd/msrp.c
-- daemons/mrpd/msrp.h

warning: always overflow destination buffer [enabled by default]
-- daemons/gptp/linux/src/linux_hal_common.cpp

warning: ignoring return value [-Wunused-result]
-- daemons/gptp/linux/src/linux_hal_persist_file.cpp
-- examples/live_stream/listener.c

warning: may be used uninitialized in this function
 [-Wmaybe-uninitialized]
-- daemons/gptp/linux/src/linux_hal_generic.cpp
-- daemons/gptp/linux/src/daemon_cl.cpp
-- daemons/maap/common/maap_protocol.c

warning: array subscript is above array bounds [-Warray-bounds]
-- daemons/maap/linux/maap_linux.c

error: obj/ini.o: relocation R_X86_64_32 against `.rodata' can not be
 used when making a shared object; recompile with -fPIC
-- lib/igb/Makefile

warning: command line option ‘-std=c++11’ is valid for C++/ObjC++ but
 not for C [enabled by default]
error: obj/ini.o: relocation R_X86_64_32 against `.rodata' can not be
 used when making a shared object; recompile with -fPIC
fatal error: igb.h: No such file or directory
-- daemons/gptp/linux/build/Makefile

Signed-off-by: Roland Hii <roland.king.guan.hii@intel.com>
Signed-off-by: Roland Hii <roland.king.guan.hii@intel.com>
This patch enforces the type of returned parameters by changing
macro to static inline functions.
 - alignment correction for the flex filter length
 - sanity checks for the ring buf registers
libigb used a posix named semaphore to protect concurrent accesses from
multiple processes. But since the posix semaphore cannot be automatically
released on process termination, if some process holding the semaphore
terminates without releasing it, other processes cannot acquire the semaphore
afterward. This could potentially cause a denial of service condition.
This patch replaces the posix named semaphore by a posix mutex.

In addition this patch adds a flag which prevents access to device after
calling igb_detach. Since igb_detach frees up associated resources, other
thread in multi-thread application should not access device once some thread
started resource clean-up by calling igb_detach. Otherwise invalid access to
freed memories could happen.
Also, removed some trailing spaces.

Signed-off-by: David Cemin <david.cemin@coveloz.com>
Created a new directory structure to move all files to lib.
Adding make file to build igb library and kernel module from root directory.
@andrew-elder
Copy link

I'm going to accept this pull request later today unless anyone objects.

@avinash-palleti
Copy link
Contributor Author

avinash-palleti commented Jul 30, 2018

@andrew-elder Can you please enable this repo in Travis-CI before merging.
https://travis-ci.org/AVnu/igb_avb

@andrew-elder
Copy link

Should be activated now.

@avinash-palleti
Copy link
Contributor Author

Thank you, i will just update this PR to trigger one run.

This adds the .travis.yml file and travis.sh file that tells Travis what
and how to build.
See http://docs.travis-ci.com/user/build-configuration/ for docs on how
the directives in the file configure the build.
@avinash-palleti
Copy link
Contributor Author

Done. Build is passing in travis.

@andrew-elder
Copy link

Nice!

@avinash-palleti
Copy link
Contributor Author

@andrew-elder If there are no other comments, can you please merge this. I will update Avnu/OpenAvnu#815 with latest commit hash

@andrew-elder
Copy link

Merging

@andrew-elder andrew-elder merged commit 7974968 into Avnu:master Jul 31, 2018
andrew-elder pushed a commit that referenced this pull request Oct 22, 2018
Merging with master branch
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.