Message ID | 1448998039-32085-2-git-send-email-mike.holmes@linaro.org |
---|---|
State | New |
Headers | show |
On 2 December 2015 at 03:46, Nicolas Morey-Chaisemartin <nmorey@kalray.eu> wrote: > Wouldn't it make sense to also install the CHANGELOG (with the doc for > example) ? > I dont know if installed apps usually copy the changelog, but I think it would then go into /usr/share/doc/packagename/. [1] if we do that. https://www.debian.org/doc/manuals/maint-guide/dother.en.html > > On 12/01/2015 08:27 PM, Mike Holmes wrote: > > With the addition of an RPM package to the existing debian package we > > need to have a single change log for the ODP API and the linux-generic > > implementation. > > The debian and RPM change logs then just list packaging changes. > > > > Create an initial copy of the old debian log. > > > > Signed-off-by: Mike Holmes <mike.holmes@linaro.org> > > Reviewed-by: Anders Roxell <anders.roxell@linaro.org> > > --- > > CHANGELOG | 520 > ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ > > Makefile.am | 2 +- > > 2 files changed, 521 insertions(+), 1 deletion(-) > > create mode 100644 CHANGELOG > > > > diff --git a/CHANGELOG b/CHANGELOG > > new file mode 100644 > > index 0000000..cd8c387 > > --- /dev/null > > +++ b/CHANGELOG > > @@ -0,0 +1,520 @@ > > +opendataplane (1.4.1.0) > > + * Validation > > + - pktio: test transmit error recovery > > + - schedule: add chaos test > > + - check return code from odp_queue_lock_count() > > + - scheduler: test ordered queue reorder processing > > + - pktio: initialize queue parameters correctly > > + - pktio: test for transmit error handling > > + - pktio: add support for direct receive > > + - pktio: pass interface index rather than name > > + - pktio: fix start_stop test > > + - test: l2fwd: separate rx and tx drop counters > > + - test: l2fwd: increase burst size > > + - test: l2fwd: optimize statistics usage > > + - test: l2fwd: optimize queue mode > > + - test: l2fwd: start pktios after worker thread create > > + - test: l2fwd: added option to disable error check > > + - example/ipsec: Increase ip_data_len for Tunnel mode > > + - example: ipsec: check push_tail return code > > + * General: > > + - linux-generic: pktio: handle transmit errors correctly > > + - pktio socket_mmap: recover from transmit errors but 1890 > > + - pktio: increase MTU of loop interface > > + - ordered queues: fix race condition during order release > > + and out of order. > > + - configure: move HAVE_PCAP AM_CONDITIONAL to configure.ac > > + * ODP helper: > > + - linux: checkpatch cleaning for helper/linux.c > > + - linux: examine the cause for child process termination > > + - linux: request SIGTERM if parent process dies > > + > > +opendataplane (1.4.0.0) > > + * API: > > + - ** Classification ** > > + - odp_cos_set_queue() renamed to odp_cos_queue_set() > > + - int odp_cos_set_drop renamed to odp_cos_drop_set() > > + - new: odp_queue_t odp_cos_queue(odp_cos_t cos_id) > > + - new: odp_drop_e odp_cos_drop(odp_cos_t cos_id) > > + - ODP_PMR_CUSTOM_FRAME support in classification > > + - odp_pmr_create() arguments passing change to use struct > > + - odp_pmr_match_set_create() added id argument > > + - ** Config ** > > + - new: odp_config_...() API introduced instead of ODP_CONFIG_ > defines > > + - ** Cpu, Threads and Scheduler ** > > + - new: uint64_t odp_cpu_cycles(void) > > + - new: uint64_t odp_cpu_cycles_diff(uint64_t c1, uint64_t c2); > > + - new: uint64_t odp_cpu_cycles_max(void); > > + - new: uint64_t odp_cpu_cycles_resolution(void); > > + - odp_cpumask_def_worker() renamed to > odp_cpumask_default_worker() > > + - odp_cpumask_def_control() renamed to > odp_cpumask_default_control() > > + - odp init extended with num worker and control threads > > + - new: int odp_queue_lock_count(odp_queue_t queue); > > + - refine api doc for scheduler and schedule orderd locks > > + - argument of odp_schedule_order_lock() and > odp_schedule_order_unlock changed to unsigned > > + - new: int odp_thread_count_max(void) > > + - ** Packet ** > > + - new: uint32_t odp_packet_flow_hash(odp_packet_t pkt) > > + - new: void odp_packet_flow_hash_set(odp_packet_t pkt, uint32_t > flow_hash) > > + - new: int odp_packet_has_flow_hash(odp_packet_t pkt); > > + - new: void odp_packet_has_flow_hash_clr(odp_packet_t pkt); > > + - ** Pktio ** > > + - pktio can be configuread as receive or transmit only > > + - pktio: refined api doc for start() and stop() > > + - new: void odp_pktio_param_init(odp_pktio_param_t *param) > > + * ODP docs: > > + - implementers-guide: update names of test module libraries > > + - implementers-guide: update section on skipping tests > > + * Test framework > > + - update README files > > + - renaming module libs > > + - add odp_cunit_update() to modify registered tests > > + - add ability to mark tests inactive > > + * Validation > > + - ** Classification ** > > + - Add fix for classification tests > > + - remove redundant pool lookup function > > + - remove redundant sequence number check > > + - use tcp data offset field to calculate data offset > > + - move destroy_inq() to common file > > + - add odp_pktio_param_init() API > > + - added additional suite to test individual PMRs > > + - use a structure instead of many args for odp_pmr_create > > + - Add init calls for queue parameters > > + - syntax correction for CU_ASSERT > > + - Add init calls for pool parameters > > + - queue and drop policy API name change > > + - Queue parameter init calls > > + - ** Cpu, Threads and Scheduler ** > > + - rename odp_cpumask_def to _default > > + - schedule: revise definition of ordered locks > > + - schedule: remove odp_schedule_order_lock_init() API > > + - schedule: don't check schedule time on 0 > > + - synchronizers: support a single worker > > + - init: fix test when debug-print is disabled > > + - ** Packet ** > > + - packet: test flow hash > > + - packet: test now handles pool that do not support segmentation > > + - ** Pktio ** > > + - pktio: don't call APIs with an invalid pktio handle > > + - ** Config ** > > + - config: removed ODP_CONFIG_MAX_THREADS > > + - config: add CUnit tests for config APIs > > + * Performance > > + - l2fwd: add missing braces > > + - l2fwd: add option to disable filling eth addresses > > + - l2fwd: add support for using odd number of ports > > + - l2fwd: fix crash when accuracy is set to 0 > > + - l2fwd: add option to select scheduler queue type > > + - l2fwd: add option to change destination eth addresses > > + - l2fwd: obey -t in queue mode > > + - l2fwd: fill correct source ethernet address > > + - sched: update scheduling test to use cycle counts > > + - odp_pktio_perf: fix potential overflow for burst_gap > > + - odp_pktio_perf: fix potential overflow for send_duration > > + * general: > > + - classification: implement ODP_PMR_CUSTOM_FRAME matching > > + - classification: queue and drop policy API name change > > + - cpu: created arch dependent cpu_cycles files > > + - cpu: fix cycle lost while cycle counter overflow > > + - cpu: implementation for cycle count API > > + - cpu: rename time_cycles to cpu_cycles > > + - pktio: implemented pcap pktio > > + - pktio: implemented netmap pktio > > + - pktio: close all pktio when term is called > > + - pktio: enable classifier only when needed > > + - pktio: factor state management into packet_io > > + - pktio: fill in L2 parse results by default > > + - pktio: implement odp_pktio_param_init() API > > + - packet: implement flow hash support > > + - schedule: fix odp_schdule_wait_time > > + - queue: change lock_index from uint32_t to unsigned to match API > > + - queue: direct internal enqueues to target queue > > + - queue: fix pktout_enqueue() logic > > + - queue: remove obsolete prototypes > > + - use cycles_diff for time API also > > + > > +opendataplane (1.3.0.0) > > + * API: > > + - codespell: correct spelling > > + - event: change to odp_event_type_t > > + - init: use const pointer types > > + - packet_io: added odp_pktio_param_t > > + - packet_io: added start and stop > > + - packet_io: change word instance to interface > > + - pktio: added output mode > > + - pktio: rename pktio_input_mode enum > > + - pool: add odp_pool_param_init prototype > > + - pool: standardize description for odp_pool_param_init routine > > + - queue: add odp_queue_param_init prototype > > + - queue: clarify odp_queue_context_set() documentation > > + - queue: rename queue context get/set for consistency > > + - sched: added ordered context lock > > + - sched: added release ordered > > + - sched: added schedule group create and destroy > > + - sched: added schedule prefetch > > + - sched: added worker group > > + - sched: add additional scheduler group APIs > > + - sched: clarified synchronization context > > + - sched: clarify usage of PRIO_DEFAULT > > + - sched: moved scheduler types into new file > > + - sched: removed GROUP_DEFAULT > > + - sched: removed SYNC_DEFAULT > > + - sched: rename order lock APIs and typedef > > + - sched: schedule param > > + - sched: config: add configuration for scheduler groups > > + - schedule: fix comment typo > > + - spelling fixes > > + - style: init api: documentation clean up > > + * ODP docs: > > + - doc: implementers-guide: add validation description > > + - doc: publish contributing text > > + * ODP helper: > > + - fix installation path for includes > > + - linux: catch possible undefined > > + - test: chksum: catch errors in scan_ip > > + * test: > > + * validation: > > + - add test on unused retvals > > + - use _CU_TEST_INFO() macro > > + - system: fix uninitialised variable > > + - schedule: add param init calls > > + - schedule: test scheduler groups > > + - test odp_pktio_start and odp_pktio_stop > > + - fix build from tar source > > + - kill odp_generator > > + - removing current dir from -I > > + * performance: > > + - Makefile: add scripts to EXTRA_DIST > > + - l2fwd: fix race condition between thread init and stat > counter > > + - l2fwd: capture test fails > > + - odp_pktio_perf: use real MAC addresses while packet > creation > > + - odp_scheduling: remove redundant var inits > > + - use odp_pool_param_init routine > > + - use odp_queue_param_init routine > > + * general: > > + - Makefile.am: fix basename conflicts > > + - Makefile: add all arch to the tarball > > + - fix logic for calling pktio init and term functions > > + - install missing headers > > + - move default cpumask functions to separate file > > + - move openssl checks inside linux-generic > > + - move pthread checks inside linux-generic > > + - add pktio_start and pktio_stop > > + - pktio: add global init and term function for pktios > > + - pktio: always test loop interface > > + - pktio: handle segmented packet in socket mode > > + - pktio: remove basic socket implementation > > + - pktio: store errno correctly in setup > > + - pool: add odp_pool_type_t enum > > + - pool: implement odp_pool_param_init > > + - queue: implement odp_queue_param_init routine > > + - queue: implement ordered queues > > + - remove linux-generic makefile generation from common > configure.ac > > + - schedule pktin_poll: account pktio stop state > > + - schedule: implement scheduler groups > > + - schedule: implement odp_schedule_prefetch() > > + - schedule: implement ordered locks > > + - Makefile.am: fix aclocal warning when building from tarball > > + - m4: pthread: fix warning with Wextra > > + - scripts/git_hash: change repo to CUSTOM_STR > > + - scripts/git_hash: fix build from tar source > > + - scripts: Makefile: add odp_version.sh to the tarball > > + > > +opendataplane (1.2.0.0) > > + * API: > > + - docs: doxygen grouping clean up and remove excess references > to ODP > > + - pool: remove shm paramter from odp_pool_create() > > + - packet_io: clarify what happens when not all packets are sent > > + - cpumask: added default masks and cpumask_setall > > + - thrmask: added thread mask > > + - thread: added thread type > > + * ODP helper: > > + - helper: convert to a library > > + - remove helper dependence on ODP internals > > + - helper: linux: check pthread_join return code > > + - test checksum > > + - helpers: fix udp checksum computation > > + - test: helper: add process and thread tests > > + - deleted odph_linux_cpumask_default > > + * test: > > + * validation: > > + - tests execution moved to platfrom side > > + - test: pktio_perf: add missing atomic init > > + - test: synchronizers: use thread_id instead of cpu_id to > detect slow threa > > + - validation: pktio: do not dequeue from scheduled queue > > + - test: pktio_perf: fix pthread_t offset for tx threads > > + - packet_io: release unsent packets after odp_pktio_send() > > + - validation: new module errno > > + - test: pktio_perf: add missing ns to cycle conversion for > busy loop > > + - validation: classification: fix ODP_PMR_IPPROTO capability > check > > + - validation: scheduler: fix race condition in pause test > > + - test: do not use negative array index > > + - thread and cpumask validation suites > > + - example:ipsec: Fix for Polled queues > > + - scheduler: use number of workers > > + - example: classifier: fix string overflow > > + * general: > > + - linux-generic: put pktio types to separate files with > common interface. > > + - configure: use stricter warnings > > + - linux-generic: timer: use timer handles as buffer handles > > + - linux-generic: buffer: remove unneeded division/module > when mapping within the first segment > > + - linux-generic: pool: use ODP_CONFIG_PACKET_SEG_LEN_MIN > correctly > > + - queue: handle return value of odp_queue_enq() > > + - linux-generic: classification: add support for > ODP_PMR_IPSEC_SPI > > + - add {EXEEXT} suffix to binaries > > + - event: implement odp_event_free() > > + - packet_socket: do not release packets in odp_pktio_send > > + - linux-generic: packet: fix byte order in IPv6 header > parsing > > + - linux-generic: schedule: fix double free > > + - linux-generic: buffers: correct segment length calculation > for packets > > + - linux-generic: timer: set timer queue to ODP_QUEUE_INVALID > on init > > + - linux-generic: buffer: reduce field size and reorder for > better packing > > + - linux-generic: crypto: eliminate buffer type hack for > completions > > + - linux-generic: pool: remove double init > > + - linux-generic: pool: group and document pool statistics > > + - platform: Makefile.inc: use `` instead of != for > compatibility with older versions of Make > > + - linux-generic: packet: Add lazy parsing support > > + - linux-generic: buffer: init all the odp_buffer_bits_t > struct to avoid valgrind warnings > > + > > +opendataplane (1.1.0.0) > > + * API: > > + - style: moved pool type first in pool_param > > + - style: pool_param doxygen comments > > + - api: packet: removed odp_packet_user_u64 > > + - api: packet: rename user_data to user_area > > + - api: pktio: Clarify doc on default pool usage on odp_pktio_open > > + - timer: Add missing platform handles to u64 conversion functions > > + - api/linux-generic/example/validation: remove > odp_pmr_create_range() function definition > > + - api: packet: relax return code to use non-zero for true > > + - api: packet/pool: proposed APIs for packet user metadata > > + > > + * test: > > + * validation: > > + - validation: packet: add user metadata tests > > + - test: pktio: add missing atomic init > > + - test: use CU_ASSERT_FATAL in case odp_buffer_alloc failed > to avoid segfaults > > + - validation: pktio: fix polling tests > > + - validation: tests for module odp_ver_abt_log_dbg > > + - validation: rename executable to match modules > > + * general: > > + - linux-generic/odp_impl: add implementation version details > > + - linux-generic: support running with restricted cpu set > > + - linux-generic: packet: add user metadata support > > + - linux-generic: pool: add user metadata support > > + - linux-generic: buffer: restructure user mdatadata fields > > + - linux-generic: use inttypes defines to print (u)int32_t values > > + > > +opendataplane (1.0.4) > > + > > + * test: > > + * validation: > > + - synchronizers: fix init of custom barrier atomic > > + - pktio: don't pass invalid handles > > + - use PRIu32 instead of %u to print uint32_t variables > > + - thread: add odp_thread sunnyday tests > > + - classification: add missing init of atomic variable > > + - api_test: remove odp_shm_test > > + * performance: > > + - pktio: fix check for pktio_tx > > + - pktio: test return value of odp_pktio_close() > > + - pktio: add throughput test > > + * example: > > + - ODP classifier example > > + * bugs: > > + - example: timer: clean up prescheduled events > > + * general: > > + - api: time: force time defines as ULL to avoid computation > overflows on 32bits systems > > + - linux-generic: packet_io: init l2 and l3 cos table > spinlocks > > + - linux-generic: pool: initialize atomics during > odp_pool_init_global > > + - linux-generic: pool: fix initialization of odp_buffer_hdr > ref_count > > + - doc: api_guide_lines: add guidance on ODP_DEPRECATED > > + > > +opendataplane (1.0.3) > > + > > + * test: > > + * validation: > > + - validation: add new test l2fwd_run > > + - validation: sched: add missing copyright > > + - validation: move l2fwd from example to performance tests > > + - validation: implement platform env > > + - validation: crypto: combine sync and async tests > > + - validation: crypto: handle synchronous operations in async > test > > + - test: enable valgrind check > > + - test/README: explain what's the intention with > test/validation > > + - validation: classification: un-checked return > > + - validation: pktio: support arbitrary length packets > > + - validation: pktio: fix memory corruption > > + - validation: common: catch odp_term_local/global failures > > + - validation: common: print odp_init failures to stderr > > + - validation: schedule: exit schedule loop > > + - validation: schedule: added queue destroy test > > + * bugs: > > + - linux-generic: pool: fix missing increment of blkallocs > stat > > + - example: odp_generator: use odp_timer > > + - configure.ac: include configure.m4 if platform explicitly > selected > > + * general: > > + - doxygen cleanups > > + - scheduler: restructured queue and pktio integration > > + - linux-generic: schedule: terminate > > + - linux-generic: debug_internal: assert prints condition > > + - linux-generic: pool: check for NULL params before > dereference > > + - linux-generic: pktio: fix SEGV after odp_pktio_inq_remdef() > > + - linux-generic: system_info: use global data struct > > + - linux-generic: use arch optimisations > > + - examples: odp_ipsec: runtime select multiple vs single deq > > + - examples: odp_ipsec: runtime select scheduled vs poll > queues > > + - examples: odp_ipsec: handle alloc_pkt_ctx failure > > + - scripts: odp_check: remove astyle > > + - linux-generic: odp_linux: migrate helpers to helper dir > > + > > +opendataplane (1.0.2) > > + * API: > > + - api files were touched with override patches but no api > > + changes were actually made. > > + * test: > > + * validation: > > + - fix memory allocation in odp_synchronizers > > + - fixed memory leak in odp_cpumask.c > > + - timer: use unused attribute > > + - pktio: add support for VPATH builds > > + - added odp_cpumask test > > + - timer: free malloced memory > > + - timer: use ODP_SHM_NULL > > + - timer: added cancel test > > + - pktio: prevent race when using veth pair > > + - test: debug: replace example with test > > + - test: debug: add unused attribute MACRO > > + - performance: odp_atomic: move atomic test from api_test to > performance > > + - performance: scheduling: add support for VPATH builds > > + - performance: scheduling: catch exit codes > > + * general: > > + - barrier: allow platform to override odp_barrier_t > > + - ticketlock: allow platform to override odp_ticketlock_t > > + - rwlock: allow platform to override odp_rwlock_t > > + - spinlock: allow platform to override odp_spinlock_t > > + - doc: move api guidelines to API doc > > + - linux-generic: strongtypes: add dummy struct var to keep > c++ happy > > + - linux-generic: queue: fix potential queue leak > > + - linux-generic: strongtypes: use named structs for C++ > > + - example: l2fwd print packets per second > > + - linux-generic: linux: destroy used pthread attr > > + * bugs: > > + - validation: packet: use non-zero as true indicato > > + - linux-generic: pktio check for NULL entry > > + - linux-generic: fix incorrect pmr_term_value update in > odp_pmr_create_xxx() function > > + - replace strtok_r with strtok and fix leaks > > + - schedule: free queues and pool > > + > > +opendataplane (1.0.1) > > + > > + * test: > > + * validation: > > + - pktio: disable arp on virtual interfaces > > + - pktio check return code for pool_destroy > > + - schedule: code clean up > > + - odp_scheduling: limit worker thread count > > + - odp_timer: cleanup for clean termination > > + - common: prevent masking test failures > > + - shm: abort on null pointer > > + - crypto: add packet free to sync test > > + - crypto: add common test cleanup > > + - common: add support for test term > > + - crypto: split crypto and random tests > > + - add unit tests for strong type display functions > > + * general: > > + - linux-generic: only print errors to stderr > > + - linux-generic: linux: remove explicit buffer cache flush > > + * bugs: > > + - linux-generic: odp_timer: set user_ptr for cancelled > timeout > > + - validation: odp_timer: cleanup for clean termination > > + - example: odp_packet uncomment polling queues > > + - linux-generic: mmap: jumbo frames support > > + - linux-generic: thread: reuse thread ids > > + - classification: destroy pktio default inqueue during > teardown > > + - classification: pktio skip value set to zero > > + > > +opendataplane (1.0.0) > > + > > + * API: > > + - crypto, cpumask, packet_io, random: replace ssize_t with > int32_t > > + - crypto: add session destroy function > > + - crypto: add error code for invalid IV > > + - classification: Add documentation for missing macros > > + - hints: add printf format attribute > > + - errno: add api to public api > > + - init: add missing documentation > > + - packet_io: remove specific errno value > > + * test: > > + * validation: > > + - Makefile.am: restructure > > + - pktio: free unexpected packets/events > > + - pktio: destroy interface specific pools > > + - pktio: destroy pktio input queues > > + - pktio: fix odp_errno usage > > + - buffer: split pool, buffer and packet tests > > + - init: include stdlib.h for abort() > > + - crypto: verify session_destroy > > + - crypto: verify odp_crypto_operation() return code > > + - queue: destroy created ODP resources > > + - errno: add sunnyday test > > + * miscellaneous: > > + - Add CPP test > > + * bugs: > > + - odp_init_log: fix clang format string error > > + - buffers: remove obsolete debugging code > > + - classification: fix unchecked return value > > + - classification: fix incorrect ipv4 checksum update > > + - example: generator: add missing doxygen documentation > > + - pools: switch to simple locks for buf/blk synchronization > > + - performance: fix c99 warnings as errors > > + - crypto: handle copy error > > + - system: read hugepage size for all architectures > > + - queue: fix PKTIN queue destroy > > + * general: > > + - add -std=c99 gcc flag by default, fix all warnings > > + - handle copy error in odp_crypto_operation > > + - fix all doxygen warnings > > + - configured defines changed ODP_CONFIG_ and moved to config.h > > + > > +opendataplane (0.11.0) > > + > > + * API: > > + - update return descriptions > > + - add strong types > > + - thread, rename functions > > + - cpu, rename functions > > + - errno added > > + - classification, remove pmr count > > + - init, allow the abort function to be overridden > > + - hints, add ODP_NORETURN > > + - packet_flag, remove odp_packet_override_l4_checksum > > + * validation: > > + - init, add tests for override the abort function > > + * bugs: > > + - timer, avoid cunit warnings for late timeouts > > + - version, fix odp_version_api_str (1194, 1207) > > + - fix clang (1203, 1023) > > + - validation: init: fix unitalized data in struct (1206) > > + - linux-generic: setup_pktio_entry() null terminate pkio name > (1055) > > + - validation: odp_timer.c: (1048, 1056) > > + > > +opendataplane (0.10.0) > > + > > + * API: > > + - Allow init_global logging > > + - Add events > > + - Add Crypto Completion event > > + - Classification API cleanup > > + - Move header files out of linux-generic > > + * validation: > > + - Classification tests > > + * bugs: > > + - l2fwd: fix incorrect cpumask used when spawning threads > > + - shared memory > > + * general: > > + - move headers into namespace the odp/helper > > + > > +opendataplane (0.9.0) > > + > > + * Initial release > > diff --git a/Makefile.am b/Makefile.am > > index 353c6c6..2acbe3d 100644 > > --- a/Makefile.am > > +++ b/Makefile.am > > @@ -17,4 +17,4 @@ SUBDIRS = @platform_with_platform@ \ > > > > include $(top_srcdir)/aminclude.am > > > > -EXTRA_DIST = bootstrap $(DX_CONFIG) config/README .scmversion > > +EXTRA_DIST = bootstrap $(DX_CONFIG) CHANGELOG config/README .scmversion > > -- Mike Holmes Technical Manager - Linaro Networking Group Linaro.org <http://www.linaro.org/> *│ *Open source software for ARM SoCs
On 12/02/2015 18:58, Mike Holmes wrote: > > On 2 December 2015 at 03:46, Nicolas Morey-Chaisemartin > <nmorey@kalray.eu <mailto:nmorey@kalray.eu>> wrote: > > Wouldn't it make sense to also install the CHANGELOG (with the doc > for example) ? > > > I dont know if installed apps usually copy the changelog, but I think > it would then go into /usr/share/doc/packagename/. [1] if we do that. > > > https://www.debian.org/doc/manuals/maint-guide/dother.en.html > yes, that is plan. For 1.5 it was only in tar.gz. New patch needed to package it to some proper place. Maxim. > > On 12/01/2015 08:27 PM, Mike Holmes wrote: > > With the addition of an RPM package to the existing debian > package we > > need to have a single change log for the ODP API and the > linux-generic > > implementation. > > The debian and RPM change logs then just list packaging changes. > > > > Create an initial copy of the old debian log. > > > > Signed-off-by: Mike Holmes <mike.holmes@linaro.org > <mailto:mike.holmes@linaro.org>> > > Reviewed-by: Anders Roxell <anders.roxell@linaro.org > <mailto:anders.roxell@linaro.org>> > > --- > > CHANGELOG | 520 > ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ > > Makefile.am | 2 +- > > 2 files changed, 521 insertions(+), 1 deletion(-) > > create mode 100644 CHANGELOG > > > > diff --git a/CHANGELOG b/CHANGELOG > > new file mode 100644 > > index 0000000..cd8c387 > > --- /dev/null > > +++ b/CHANGELOG > > @@ -0,0 +1,520 @@ > > +opendataplane (1.4.1.0) > > + * Validation > > + - pktio: test transmit error recovery > > + - schedule: add chaos test > > + - check return code from odp_queue_lock_count() > > + - scheduler: test ordered queue reorder processing > > + - pktio: initialize queue parameters correctly > > + - pktio: test for transmit error handling > > + - pktio: add support for direct receive > > + - pktio: pass interface index rather than name > > + - pktio: fix start_stop test > > + - test: l2fwd: separate rx and tx drop counters > > + - test: l2fwd: increase burst size > > + - test: l2fwd: optimize statistics usage > > + - test: l2fwd: optimize queue mode > > + - test: l2fwd: start pktios after worker thread create > > + - test: l2fwd: added option to disable error check > > + - example/ipsec: Increase ip_data_len for Tunnel mode > > + - example: ipsec: check push_tail return code > > + * General: > > + - linux-generic: pktio: handle transmit errors correctly > > + - pktio socket_mmap: recover from transmit errors but 1890 > > + - pktio: increase MTU of loop interface > > + - ordered queues: fix race condition during order release > > + and out of order. > > + - configure: move HAVE_PCAP AM_CONDITIONAL to > configure.ac <http://configure.ac> > > + * ODP helper: > > + - linux: checkpatch cleaning for helper/linux.c > > + - linux: examine the cause for child process termination > > + - linux: request SIGTERM if parent process dies > > + > > +opendataplane (1.4.0.0) > > + * API: > > + - ** Classification ** > > + - odp_cos_set_queue() renamed to odp_cos_queue_set() > > + - int odp_cos_set_drop renamed to odp_cos_drop_set() > > + - new: odp_queue_t odp_cos_queue(odp_cos_t cos_id) > > + - new: odp_drop_e odp_cos_drop(odp_cos_t cos_id) > > + - ODP_PMR_CUSTOM_FRAME support in classification > > + - odp_pmr_create() arguments passing change to use struct > > + - odp_pmr_match_set_create() added id argument > > + - ** Config ** > > + - new: odp_config_...() API introduced instead of > ODP_CONFIG_ defines > > + - ** Cpu, Threads and Scheduler ** > > + - new: uint64_t odp_cpu_cycles(void) > > + - new: uint64_t odp_cpu_cycles_diff(uint64_t c1, > uint64_t c2); > > + - new: uint64_t odp_cpu_cycles_max(void); > > + - new: uint64_t odp_cpu_cycles_resolution(void); > > + - odp_cpumask_def_worker() renamed to > odp_cpumask_default_worker() > > + - odp_cpumask_def_control() renamed to > odp_cpumask_default_control() > > + - odp init extended with num worker and control threads > > + - new: int odp_queue_lock_count(odp_queue_t queue); > > + - refine api doc for scheduler and schedule orderd locks > > + - argument of odp_schedule_order_lock() and > odp_schedule_order_unlock changed to unsigned > > + - new: int odp_thread_count_max(void) > > + - ** Packet ** > > + - new: uint32_t odp_packet_flow_hash(odp_packet_t pkt) > > + - new: void odp_packet_flow_hash_set(odp_packet_t pkt, > uint32_t flow_hash) > > + - new: int odp_packet_has_flow_hash(odp_packet_t pkt); > > + - new: void odp_packet_has_flow_hash_clr(odp_packet_t pkt); > > + - ** Pktio ** > > + - pktio can be configuread as receive or transmit only > > + - pktio: refined api doc for start() and stop() > > + - new: void odp_pktio_param_init(odp_pktio_param_t *param) > > + * ODP docs: > > + - implementers-guide: update names of test module libraries > > + - implementers-guide: update section on skipping tests > > + * Test framework > > + - update README files > > + - renaming module libs > > + - add odp_cunit_update() to modify registered tests > > + - add ability to mark tests inactive > > + * Validation > > + - ** Classification ** > > + - Add fix for classification tests > > + - remove redundant pool lookup function > > + - remove redundant sequence number check > > + - use tcp data offset field to calculate data offset > > + - move destroy_inq() to common file > > + - add odp_pktio_param_init() API > > + - added additional suite to test individual PMRs > > + - use a structure instead of many args for odp_pmr_create > > + - Add init calls for queue parameters > > + - syntax correction for CU_ASSERT > > + - Add init calls for pool parameters > > + - queue and drop policy API name change > > + - Queue parameter init calls > > + - ** Cpu, Threads and Scheduler ** > > + - rename odp_cpumask_def to _default > > + - schedule: revise definition of ordered locks > > + - schedule: remove odp_schedule_order_lock_init() API > > + - schedule: don't check schedule time on 0 > > + - synchronizers: support a single worker > > + - init: fix test when debug-print is disabled > > + - ** Packet ** > > + - packet: test flow hash > > + - packet: test now handles pool that do not support > segmentation > > + - ** Pktio ** > > + - pktio: don't call APIs with an invalid pktio handle > > + - ** Config ** > > + - config: removed ODP_CONFIG_MAX_THREADS > > + - config: add CUnit tests for config APIs > > + * Performance > > + - l2fwd: add missing braces > > + - l2fwd: add option to disable filling eth addresses > > + - l2fwd: add support for using odd number of ports > > + - l2fwd: fix crash when accuracy is set to 0 > > + - l2fwd: add option to select scheduler queue type > > + - l2fwd: add option to change destination eth addresses > > + - l2fwd: obey -t in queue mode > > + - l2fwd: fill correct source ethernet address > > + - sched: update scheduling test to use cycle counts > > + - odp_pktio_perf: fix potential overflow for burst_gap > > + - odp_pktio_perf: fix potential overflow for send_duration > > + * general: > > + - classification: implement ODP_PMR_CUSTOM_FRAME matching > > + - classification: queue and drop policy API name change > > + - cpu: created arch dependent cpu_cycles files > > + - cpu: fix cycle lost while cycle counter overflow > > + - cpu: implementation for cycle count API > > + - cpu: rename time_cycles to cpu_cycles > > + - pktio: implemented pcap pktio > > + - pktio: implemented netmap pktio > > + - pktio: close all pktio when term is called > > + - pktio: enable classifier only when needed > > + - pktio: factor state management into packet_io > > + - pktio: fill in L2 parse results by default > > + - pktio: implement odp_pktio_param_init() API > > + - packet: implement flow hash support > > + - schedule: fix odp_schdule_wait_time > > + - queue: change lock_index from uint32_t to unsigned to > match API > > + - queue: direct internal enqueues to target queue > > + - queue: fix pktout_enqueue() logic > > + - queue: remove obsolete prototypes > > + - use cycles_diff for time API also > > + > > +opendataplane (1.3.0.0) > > + * API: > > + - codespell: correct spelling > > + - event: change to odp_event_type_t > > + - init: use const pointer types > > + - packet_io: added odp_pktio_param_t > > + - packet_io: added start and stop > > + - packet_io: change word instance to interface > > + - pktio: added output mode > > + - pktio: rename pktio_input_mode enum > > + - pool: add odp_pool_param_init prototype > > + - pool: standardize description for odp_pool_param_init > routine > > + - queue: add odp_queue_param_init prototype > > + - queue: clarify odp_queue_context_set() documentation > > + - queue: rename queue context get/set for consistency > > + - sched: added ordered context lock > > + - sched: added release ordered > > + - sched: added schedule group create and destroy > > + - sched: added schedule prefetch > > + - sched: added worker group > > + - sched: add additional scheduler group APIs > > + - sched: clarified synchronization context > > + - sched: clarify usage of PRIO_DEFAULT > > + - sched: moved scheduler types into new file > > + - sched: removed GROUP_DEFAULT > > + - sched: removed SYNC_DEFAULT > > + - sched: rename order lock APIs and typedef > > + - sched: schedule param > > + - sched: config: add configuration for scheduler groups > > + - schedule: fix comment typo > > + - spelling fixes > > + - style: init api: documentation clean up > > + * ODP docs: > > + - doc: implementers-guide: add validation description > > + - doc: publish contributing text > > + * ODP helper: > > + - fix installation path for includes > > + - linux: catch possible undefined > > + - test: chksum: catch errors in scan_ip > > + * test: > > + * validation: > > + - add test on unused retvals > > + - use _CU_TEST_INFO() macro > > + - system: fix uninitialised variable > > + - schedule: add param init calls > > + - schedule: test scheduler groups > > + - test odp_pktio_start and odp_pktio_stop > > + - fix build from tar source > > + - kill odp_generator > > + - removing current dir from -I > > + * performance: > > + - Makefile: add scripts to EXTRA_DIST > > + - l2fwd: fix race condition between thread init and > stat counter > > + - l2fwd: capture test fails > > + - odp_pktio_perf: use real MAC addresses while > packet creation > > + - odp_scheduling: remove redundant var inits > > + - use odp_pool_param_init routine > > + - use odp_queue_param_init routine > > + * general: > > + - Makefile.am: fix basename conflicts > > + - Makefile: add all arch to the tarball > > + - fix logic for calling pktio init and term functions > > + - install missing headers > > + - move default cpumask functions to separate file > > + - move openssl checks inside linux-generic > > + - move pthread checks inside linux-generic > > + - add pktio_start and pktio_stop > > + - pktio: add global init and term function for pktios > > + - pktio: always test loop interface > > + - pktio: handle segmented packet in socket mode > > + - pktio: remove basic socket implementation > > + - pktio: store errno correctly in setup > > + - pool: add odp_pool_type_t enum > > + - pool: implement odp_pool_param_init > > + - queue: implement odp_queue_param_init routine > > + - queue: implement ordered queues > > + - remove linux-generic makefile generation from common > configure.ac <http://configure.ac> > > + - schedule pktin_poll: account pktio stop state > > + - schedule: implement scheduler groups > > + - schedule: implement odp_schedule_prefetch() > > + - schedule: implement ordered locks > > + - Makefile.am: fix aclocal warning when building from > tarball > > + - m4: pthread: fix warning with Wextra > > + - scripts/git_hash: change repo to CUSTOM_STR > > + - scripts/git_hash: fix build from tar source > > + - scripts: Makefile: add odp_version.sh to the tarball > > + > > +opendataplane (1.2.0.0) > > + * API: > > + - docs: doxygen grouping clean up and remove excess > references to ODP > > + - pool: remove shm paramter from odp_pool_create() > > + - packet_io: clarify what happens when not all packets > are sent > > + - cpumask: added default masks and cpumask_setall > > + - thrmask: added thread mask > > + - thread: added thread type > > + * ODP helper: > > + - helper: convert to a library > > + - remove helper dependence on ODP internals > > + - helper: linux: check pthread_join return code > > + - test checksum > > + - helpers: fix udp checksum computation > > + - test: helper: add process and thread tests > > + - deleted odph_linux_cpumask_default > > + * test: > > + * validation: > > + - tests execution moved to platfrom side > > + - test: pktio_perf: add missing atomic init > > + - test: synchronizers: use thread_id instead of > cpu_id to detect slow threa > > + - validation: pktio: do not dequeue from scheduled queue > > + - test: pktio_perf: fix pthread_t offset for tx threads > > + - packet_io: release unsent packets after > odp_pktio_send() > > + - validation: new module errno > > + - test: pktio_perf: add missing ns to cycle > conversion for busy loop > > + - validation: classification: fix ODP_PMR_IPPROTO > capability check > > + - validation: scheduler: fix race condition in pause > test > > + - test: do not use negative array index > > + - thread and cpumask validation suites > > + - example:ipsec: Fix for Polled queues > > + - scheduler: use number of workers > > + - example: classifier: fix string overflow > > + * general: > > + - linux-generic: put pktio types to separate files > with common interface. > > + - configure: use stricter warnings > > + - linux-generic: timer: use timer handles as buffer > handles > > + - linux-generic: buffer: remove unneeded > division/module when mapping within the first segment > > + - linux-generic: pool: use > ODP_CONFIG_PACKET_SEG_LEN_MIN correctly > > + - queue: handle return value of odp_queue_enq() > > + - linux-generic: classification: add support for > ODP_PMR_IPSEC_SPI > > + - add {EXEEXT} suffix to binaries > > + - event: implement odp_event_free() > > + - packet_socket: do not release packets in > odp_pktio_send > > + - linux-generic: packet: fix byte order in IPv6 > header parsing > > + - linux-generic: schedule: fix double free > > + - linux-generic: buffers: correct segment length > calculation for packets > > + - linux-generic: timer: set timer queue to > ODP_QUEUE_INVALID on init > > + - linux-generic: buffer: reduce field size and > reorder for better packing > > + - linux-generic: crypto: eliminate buffer type hack > for completions > > + - linux-generic: pool: remove double init > > + - linux-generic: pool: group and document pool > statistics > > + - platform: Makefile.inc: use `` instead of != for > compatibility with older versions of Make > > + - linux-generic: packet: Add lazy parsing support > > + - linux-generic: buffer: init all the > odp_buffer_bits_t struct to avoid valgrind warnings > > + > > +opendataplane (1.1.0.0) > > + * API: > > + - style: moved pool type first in pool_param > > + - style: pool_param doxygen comments > > + - api: packet: removed odp_packet_user_u64 > > + - api: packet: rename user_data to user_area > > + - api: pktio: Clarify doc on default pool usage on > odp_pktio_open > > + - timer: Add missing platform handles to u64 conversion > functions > > + - api/linux-generic/example/validation: remove > odp_pmr_create_range() function definition > > + - api: packet: relax return code to use non-zero for true > > + - api: packet/pool: proposed APIs for packet user metadata > > + > > + * test: > > + * validation: > > + - validation: packet: add user metadata tests > > + - test: pktio: add missing atomic init > > + - test: use CU_ASSERT_FATAL in case odp_buffer_alloc > failed to avoid segfaults > > + - validation: pktio: fix polling tests > > + - validation: tests for module odp_ver_abt_log_dbg > > + - validation: rename executable to match modules > > + * general: > > + - linux-generic/odp_impl: add implementation version details > > + - linux-generic: support running with restricted cpu set > > + - linux-generic: packet: add user metadata support > > + - linux-generic: pool: add user metadata support > > + - linux-generic: buffer: restructure user mdatadata fields > > + - linux-generic: use inttypes defines to print > (u)int32_t values > > + > > +opendataplane (1.0.4) > > + > > + * test: > > + * validation: > > + - synchronizers: fix init of custom barrier atomic > > + - pktio: don't pass invalid handles > > + - use PRIu32 instead of %u to print uint32_t variables > > + - thread: add odp_thread sunnyday tests > > + - classification: add missing init of atomic variable > > + - api_test: remove odp_shm_test > > + * performance: > > + - pktio: fix check for pktio_tx > > + - pktio: test return value of odp_pktio_close() > > + - pktio: add throughput test > > + * example: > > + - ODP classifier example > > + * bugs: > > + - example: timer: clean up prescheduled events > > + * general: > > + - api: time: force time defines as ULL to avoid > computation overflows on 32bits systems > > + - linux-generic: packet_io: init l2 and l3 cos table > spinlocks > > + - linux-generic: pool: initialize atomics during > odp_pool_init_global > > + - linux-generic: pool: fix initialization of > odp_buffer_hdr ref_count > > + - doc: api_guide_lines: add guidance on ODP_DEPRECATED > > + > > +opendataplane (1.0.3) > > + > > + * test: > > + * validation: > > + - validation: add new test l2fwd_run > > + - validation: sched: add missing copyright > > + - validation: move l2fwd from example to performance > tests > > + - validation: implement platform env > > + - validation: crypto: combine sync and async tests > > + - validation: crypto: handle synchronous operations > in async test > > + - test: enable valgrind check > > + - test/README: explain what's the intention with > test/validation > > + - validation: classification: un-checked return > > + - validation: pktio: support arbitrary length packets > > + - validation: pktio: fix memory corruption > > + - validation: common: catch odp_term_local/global > failures > > + - validation: common: print odp_init failures to stderr > > + - validation: schedule: exit schedule loop > > + - validation: schedule: added queue destroy test > > + * bugs: > > + - linux-generic: pool: fix missing increment of > blkallocs stat > > + - example: odp_generator: use odp_timer > > + - configure.ac <http://configure.ac>: include > configure.m4 if platform explicitly selected > > + * general: > > + - doxygen cleanups > > + - scheduler: restructured queue and pktio integration > > + - linux-generic: schedule: terminate > > + - linux-generic: debug_internal: assert prints condition > > + - linux-generic: pool: check for NULL params before > dereference > > + - linux-generic: pktio: fix SEGV after > odp_pktio_inq_remdef() > > + - linux-generic: system_info: use global data struct > > + - linux-generic: use arch optimisations > > + - examples: odp_ipsec: runtime select multiple vs > single deq > > + - examples: odp_ipsec: runtime select scheduled vs > poll queues > > + - examples: odp_ipsec: handle alloc_pkt_ctx failure > > + - scripts: odp_check: remove astyle > > + - linux-generic: odp_linux: migrate helpers to > helper dir > > + > > +opendataplane (1.0.2) > > + * API: > > + - api files were touched with override patches but no api > > + changes were actually made. > > + * test: > > + * validation: > > + - fix memory allocation in odp_synchronizers > > + - fixed memory leak in odp_cpumask.c > > + - timer: use unused attribute > > + - pktio: add support for VPATH builds > > + - added odp_cpumask test > > + - timer: free malloced memory > > + - timer: use ODP_SHM_NULL > > + - timer: added cancel test > > + - pktio: prevent race when using veth pair > > + - test: debug: replace example with test > > + - test: debug: add unused attribute MACRO > > + - performance: odp_atomic: move atomic test from > api_test to performance > > + - performance: scheduling: add support for VPATH builds > > + - performance: scheduling: catch exit codes > > + * general: > > + - barrier: allow platform to override odp_barrier_t > > + - ticketlock: allow platform to override > odp_ticketlock_t > > + - rwlock: allow platform to override odp_rwlock_t > > + - spinlock: allow platform to override odp_spinlock_t > > + - doc: move api guidelines to API doc > > + - linux-generic: strongtypes: add dummy struct var > to keep c++ happy > > + - linux-generic: queue: fix potential queue leak > > + - linux-generic: strongtypes: use named structs for C++ > > + - example: l2fwd print packets per second > > + - linux-generic: linux: destroy used pthread attr > > + * bugs: > > + - validation: packet: use non-zero as true indicato > > + - linux-generic: pktio check for NULL entry > > + - linux-generic: fix incorrect pmr_term_value update > in odp_pmr_create_xxx() function > > + - replace strtok_r with strtok and fix leaks > > + - schedule: free queues and pool > > + > > +opendataplane (1.0.1) > > + > > + * test: > > + * validation: > > + - pktio: disable arp on virtual interfaces > > + - pktio check return code for pool_destroy > > + - schedule: code clean up > > + - odp_scheduling: limit worker thread count > > + - odp_timer: cleanup for clean termination > > + - common: prevent masking test failures > > + - shm: abort on null pointer > > + - crypto: add packet free to sync test > > + - crypto: add common test cleanup > > + - common: add support for test term > > + - crypto: split crypto and random tests > > + - add unit tests for strong type display functions > > + * general: > > + - linux-generic: only print errors to stderr > > + - linux-generic: linux: remove explicit buffer cache > flush > > + * bugs: > > + - linux-generic: odp_timer: set user_ptr for > cancelled timeout > > + - validation: odp_timer: cleanup for clean termination > > + - example: odp_packet uncomment polling queues > > + - linux-generic: mmap: jumbo frames support > > + - linux-generic: thread: reuse thread ids > > + - classification: destroy pktio default inqueue > during teardown > > + - classification: pktio skip value set to zero > > + > > +opendataplane (1.0.0) > > + > > + * API: > > + - crypto, cpumask, packet_io, random: replace ssize_t > with int32_t > > + - crypto: add session destroy function > > + - crypto: add error code for invalid IV > > + - classification: Add documentation for missing macros > > + - hints: add printf format attribute > > + - errno: add api to public api > > + - init: add missing documentation > > + - packet_io: remove specific errno value > > + * test: > > + * validation: > > + - Makefile.am: restructure > > + - pktio: free unexpected packets/events > > + - pktio: destroy interface specific pools > > + - pktio: destroy pktio input queues > > + - pktio: fix odp_errno usage > > + - buffer: split pool, buffer and packet tests > > + - init: include stdlib.h for abort() > > + - crypto: verify session_destroy > > + - crypto: verify odp_crypto_operation() return code > > + - queue: destroy created ODP resources > > + - errno: add sunnyday test > > + * miscellaneous: > > + - Add CPP test > > + * bugs: > > + - odp_init_log: fix clang format string error > > + - buffers: remove obsolete debugging code > > + - classification: fix unchecked return value > > + - classification: fix incorrect ipv4 checksum update > > + - example: generator: add missing doxygen documentation > > + - pools: switch to simple locks for buf/blk synchronization > > + - performance: fix c99 warnings as errors > > + - crypto: handle copy error > > + - system: read hugepage size for all architectures > > + - queue: fix PKTIN queue destroy > > + * general: > > + - add -std=c99 gcc flag by default, fix all warnings > > + - handle copy error in odp_crypto_operation > > + - fix all doxygen warnings > > + - configured defines changed ODP_CONFIG_ and moved to > config.h > > + > > +opendataplane (0.11.0) > > + > > + * API: > > + - update return descriptions > > + - add strong types > > + - thread, rename functions > > + - cpu, rename functions > > + - errno added > > + - classification, remove pmr count > > + - init, allow the abort function to be overridden > > + - hints, add ODP_NORETURN > > + - packet_flag, remove odp_packet_override_l4_checksum > > + * validation: > > + - init, add tests for override the abort function > > + * bugs: > > + - timer, avoid cunit warnings for late timeouts > > + - version, fix odp_version_api_str (1194, 1207) > > + - fix clang (1203, 1023) > > + - validation: init: fix unitalized data in struct (1206) > > + - linux-generic: setup_pktio_entry() null terminate pkio > name (1055) > > + - validation: odp_timer.c: (1048, 1056) > > + > > +opendataplane (0.10.0) > > + > > + * API: > > + - Allow init_global logging > > + - Add events > > + - Add Crypto Completion event > > + - Classification API cleanup > > + - Move header files out of linux-generic > > + * validation: > > + - Classification tests > > + * bugs: > > + - l2fwd: fix incorrect cpumask used when spawning threads > > + - shared memory > > + * general: > > + - move headers into namespace the odp/helper > > + > > +opendataplane (0.9.0) > > + > > + * Initial release > > diff --git a/Makefile.am b/Makefile.am > > index 353c6c6..2acbe3d 100644 > > --- a/Makefile.am > > +++ b/Makefile.am > > @@ -17,4 +17,4 @@ SUBDIRS = @platform_with_platform@ \ > > > > include $(top_srcdir)/aminclude.am <http://aminclude.am> > > > > -EXTRA_DIST = bootstrap $(DX_CONFIG) config/README .scmversion > > +EXTRA_DIST = bootstrap $(DX_CONFIG) CHANGELOG config/README > .scmversion > > > > > -- > Mike Holmes > Technical Manager - Linaro Networking Group > Linaro.org <http://www.linaro.org/>***│ *Open source software for ARM SoCs > > > > _______________________________________________ > lng-odp mailing list > lng-odp@lists.linaro.org > https://lists.linaro.org/mailman/listinfo/lng-odp
diff --git a/CHANGELOG b/CHANGELOG new file mode 100644 index 0000000..cd8c387 --- /dev/null +++ b/CHANGELOG @@ -0,0 +1,520 @@ +opendataplane (1.4.1.0) + * Validation + - pktio: test transmit error recovery + - schedule: add chaos test + - check return code from odp_queue_lock_count() + - scheduler: test ordered queue reorder processing + - pktio: initialize queue parameters correctly + - pktio: test for transmit error handling + - pktio: add support for direct receive + - pktio: pass interface index rather than name + - pktio: fix start_stop test + - test: l2fwd: separate rx and tx drop counters + - test: l2fwd: increase burst size + - test: l2fwd: optimize statistics usage + - test: l2fwd: optimize queue mode + - test: l2fwd: start pktios after worker thread create + - test: l2fwd: added option to disable error check + - example/ipsec: Increase ip_data_len for Tunnel mode + - example: ipsec: check push_tail return code + * General: + - linux-generic: pktio: handle transmit errors correctly + - pktio socket_mmap: recover from transmit errors but 1890 + - pktio: increase MTU of loop interface + - ordered queues: fix race condition during order release + and out of order. + - configure: move HAVE_PCAP AM_CONDITIONAL to configure.ac + * ODP helper: + - linux: checkpatch cleaning for helper/linux.c + - linux: examine the cause for child process termination + - linux: request SIGTERM if parent process dies + +opendataplane (1.4.0.0) + * API: + - ** Classification ** + - odp_cos_set_queue() renamed to odp_cos_queue_set() + - int odp_cos_set_drop renamed to odp_cos_drop_set() + - new: odp_queue_t odp_cos_queue(odp_cos_t cos_id) + - new: odp_drop_e odp_cos_drop(odp_cos_t cos_id) + - ODP_PMR_CUSTOM_FRAME support in classification + - odp_pmr_create() arguments passing change to use struct + - odp_pmr_match_set_create() added id argument + - ** Config ** + - new: odp_config_...() API introduced instead of ODP_CONFIG_ defines + - ** Cpu, Threads and Scheduler ** + - new: uint64_t odp_cpu_cycles(void) + - new: uint64_t odp_cpu_cycles_diff(uint64_t c1, uint64_t c2); + - new: uint64_t odp_cpu_cycles_max(void); + - new: uint64_t odp_cpu_cycles_resolution(void); + - odp_cpumask_def_worker() renamed to odp_cpumask_default_worker() + - odp_cpumask_def_control() renamed to odp_cpumask_default_control() + - odp init extended with num worker and control threads + - new: int odp_queue_lock_count(odp_queue_t queue); + - refine api doc for scheduler and schedule orderd locks + - argument of odp_schedule_order_lock() and odp_schedule_order_unlock changed to unsigned + - new: int odp_thread_count_max(void) + - ** Packet ** + - new: uint32_t odp_packet_flow_hash(odp_packet_t pkt) + - new: void odp_packet_flow_hash_set(odp_packet_t pkt, uint32_t flow_hash) + - new: int odp_packet_has_flow_hash(odp_packet_t pkt); + - new: void odp_packet_has_flow_hash_clr(odp_packet_t pkt); + - ** Pktio ** + - pktio can be configuread as receive or transmit only + - pktio: refined api doc for start() and stop() + - new: void odp_pktio_param_init(odp_pktio_param_t *param) + * ODP docs: + - implementers-guide: update names of test module libraries + - implementers-guide: update section on skipping tests + * Test framework + - update README files + - renaming module libs + - add odp_cunit_update() to modify registered tests + - add ability to mark tests inactive + * Validation + - ** Classification ** + - Add fix for classification tests + - remove redundant pool lookup function + - remove redundant sequence number check + - use tcp data offset field to calculate data offset + - move destroy_inq() to common file + - add odp_pktio_param_init() API + - added additional suite to test individual PMRs + - use a structure instead of many args for odp_pmr_create + - Add init calls for queue parameters + - syntax correction for CU_ASSERT + - Add init calls for pool parameters + - queue and drop policy API name change + - Queue parameter init calls + - ** Cpu, Threads and Scheduler ** + - rename odp_cpumask_def to _default + - schedule: revise definition of ordered locks + - schedule: remove odp_schedule_order_lock_init() API + - schedule: don't check schedule time on 0 + - synchronizers: support a single worker + - init: fix test when debug-print is disabled + - ** Packet ** + - packet: test flow hash + - packet: test now handles pool that do not support segmentation + - ** Pktio ** + - pktio: don't call APIs with an invalid pktio handle + - ** Config ** + - config: removed ODP_CONFIG_MAX_THREADS + - config: add CUnit tests for config APIs + * Performance + - l2fwd: add missing braces + - l2fwd: add option to disable filling eth addresses + - l2fwd: add support for using odd number of ports + - l2fwd: fix crash when accuracy is set to 0 + - l2fwd: add option to select scheduler queue type + - l2fwd: add option to change destination eth addresses + - l2fwd: obey -t in queue mode + - l2fwd: fill correct source ethernet address + - sched: update scheduling test to use cycle counts + - odp_pktio_perf: fix potential overflow for burst_gap + - odp_pktio_perf: fix potential overflow for send_duration + * general: + - classification: implement ODP_PMR_CUSTOM_FRAME matching + - classification: queue and drop policy API name change + - cpu: created arch dependent cpu_cycles files + - cpu: fix cycle lost while cycle counter overflow + - cpu: implementation for cycle count API + - cpu: rename time_cycles to cpu_cycles + - pktio: implemented pcap pktio + - pktio: implemented netmap pktio + - pktio: close all pktio when term is called + - pktio: enable classifier only when needed + - pktio: factor state management into packet_io + - pktio: fill in L2 parse results by default + - pktio: implement odp_pktio_param_init() API + - packet: implement flow hash support + - schedule: fix odp_schdule_wait_time + - queue: change lock_index from uint32_t to unsigned to match API + - queue: direct internal enqueues to target queue + - queue: fix pktout_enqueue() logic + - queue: remove obsolete prototypes + - use cycles_diff for time API also + +opendataplane (1.3.0.0) + * API: + - codespell: correct spelling + - event: change to odp_event_type_t + - init: use const pointer types + - packet_io: added odp_pktio_param_t + - packet_io: added start and stop + - packet_io: change word instance to interface + - pktio: added output mode + - pktio: rename pktio_input_mode enum + - pool: add odp_pool_param_init prototype + - pool: standardize description for odp_pool_param_init routine + - queue: add odp_queue_param_init prototype + - queue: clarify odp_queue_context_set() documentation + - queue: rename queue context get/set for consistency + - sched: added ordered context lock + - sched: added release ordered + - sched: added schedule group create and destroy + - sched: added schedule prefetch + - sched: added worker group + - sched: add additional scheduler group APIs + - sched: clarified synchronization context + - sched: clarify usage of PRIO_DEFAULT + - sched: moved scheduler types into new file + - sched: removed GROUP_DEFAULT + - sched: removed SYNC_DEFAULT + - sched: rename order lock APIs and typedef + - sched: schedule param + - sched: config: add configuration for scheduler groups + - schedule: fix comment typo + - spelling fixes + - style: init api: documentation clean up + * ODP docs: + - doc: implementers-guide: add validation description + - doc: publish contributing text + * ODP helper: + - fix installation path for includes + - linux: catch possible undefined + - test: chksum: catch errors in scan_ip + * test: + * validation: + - add test on unused retvals + - use _CU_TEST_INFO() macro + - system: fix uninitialised variable + - schedule: add param init calls + - schedule: test scheduler groups + - test odp_pktio_start and odp_pktio_stop + - fix build from tar source + - kill odp_generator + - removing current dir from -I + * performance: + - Makefile: add scripts to EXTRA_DIST + - l2fwd: fix race condition between thread init and stat counter + - l2fwd: capture test fails + - odp_pktio_perf: use real MAC addresses while packet creation + - odp_scheduling: remove redundant var inits + - use odp_pool_param_init routine + - use odp_queue_param_init routine + * general: + - Makefile.am: fix basename conflicts + - Makefile: add all arch to the tarball + - fix logic for calling pktio init and term functions + - install missing headers + - move default cpumask functions to separate file + - move openssl checks inside linux-generic + - move pthread checks inside linux-generic + - add pktio_start and pktio_stop + - pktio: add global init and term function for pktios + - pktio: always test loop interface + - pktio: handle segmented packet in socket mode + - pktio: remove basic socket implementation + - pktio: store errno correctly in setup + - pool: add odp_pool_type_t enum + - pool: implement odp_pool_param_init + - queue: implement odp_queue_param_init routine + - queue: implement ordered queues + - remove linux-generic makefile generation from common configure.ac + - schedule pktin_poll: account pktio stop state + - schedule: implement scheduler groups + - schedule: implement odp_schedule_prefetch() + - schedule: implement ordered locks + - Makefile.am: fix aclocal warning when building from tarball + - m4: pthread: fix warning with Wextra + - scripts/git_hash: change repo to CUSTOM_STR + - scripts/git_hash: fix build from tar source + - scripts: Makefile: add odp_version.sh to the tarball + +opendataplane (1.2.0.0) + * API: + - docs: doxygen grouping clean up and remove excess references to ODP + - pool: remove shm paramter from odp_pool_create() + - packet_io: clarify what happens when not all packets are sent + - cpumask: added default masks and cpumask_setall + - thrmask: added thread mask + - thread: added thread type + * ODP helper: + - helper: convert to a library + - remove helper dependence on ODP internals + - helper: linux: check pthread_join return code + - test checksum + - helpers: fix udp checksum computation + - test: helper: add process and thread tests + - deleted odph_linux_cpumask_default + * test: + * validation: + - tests execution moved to platfrom side + - test: pktio_perf: add missing atomic init + - test: synchronizers: use thread_id instead of cpu_id to detect slow threa + - validation: pktio: do not dequeue from scheduled queue + - test: pktio_perf: fix pthread_t offset for tx threads + - packet_io: release unsent packets after odp_pktio_send() + - validation: new module errno + - test: pktio_perf: add missing ns to cycle conversion for busy loop + - validation: classification: fix ODP_PMR_IPPROTO capability check + - validation: scheduler: fix race condition in pause test + - test: do not use negative array index + - thread and cpumask validation suites + - example:ipsec: Fix for Polled queues + - scheduler: use number of workers + - example: classifier: fix string overflow + * general: + - linux-generic: put pktio types to separate files with common interface. + - configure: use stricter warnings + - linux-generic: timer: use timer handles as buffer handles + - linux-generic: buffer: remove unneeded division/module when mapping within the first segment + - linux-generic: pool: use ODP_CONFIG_PACKET_SEG_LEN_MIN correctly + - queue: handle return value of odp_queue_enq() + - linux-generic: classification: add support for ODP_PMR_IPSEC_SPI + - add {EXEEXT} suffix to binaries + - event: implement odp_event_free() + - packet_socket: do not release packets in odp_pktio_send + - linux-generic: packet: fix byte order in IPv6 header parsing + - linux-generic: schedule: fix double free + - linux-generic: buffers: correct segment length calculation for packets + - linux-generic: timer: set timer queue to ODP_QUEUE_INVALID on init + - linux-generic: buffer: reduce field size and reorder for better packing + - linux-generic: crypto: eliminate buffer type hack for completions + - linux-generic: pool: remove double init + - linux-generic: pool: group and document pool statistics + - platform: Makefile.inc: use `` instead of != for compatibility with older versions of Make + - linux-generic: packet: Add lazy parsing support + - linux-generic: buffer: init all the odp_buffer_bits_t struct to avoid valgrind warnings + +opendataplane (1.1.0.0) + * API: + - style: moved pool type first in pool_param + - style: pool_param doxygen comments + - api: packet: removed odp_packet_user_u64 + - api: packet: rename user_data to user_area + - api: pktio: Clarify doc on default pool usage on odp_pktio_open + - timer: Add missing platform handles to u64 conversion functions + - api/linux-generic/example/validation: remove odp_pmr_create_range() function definition + - api: packet: relax return code to use non-zero for true + - api: packet/pool: proposed APIs for packet user metadata + + * test: + * validation: + - validation: packet: add user metadata tests + - test: pktio: add missing atomic init + - test: use CU_ASSERT_FATAL in case odp_buffer_alloc failed to avoid segfaults + - validation: pktio: fix polling tests + - validation: tests for module odp_ver_abt_log_dbg + - validation: rename executable to match modules + * general: + - linux-generic/odp_impl: add implementation version details + - linux-generic: support running with restricted cpu set + - linux-generic: packet: add user metadata support + - linux-generic: pool: add user metadata support + - linux-generic: buffer: restructure user mdatadata fields + - linux-generic: use inttypes defines to print (u)int32_t values + +opendataplane (1.0.4) + + * test: + * validation: + - synchronizers: fix init of custom barrier atomic + - pktio: don't pass invalid handles + - use PRIu32 instead of %u to print uint32_t variables + - thread: add odp_thread sunnyday tests + - classification: add missing init of atomic variable + - api_test: remove odp_shm_test + * performance: + - pktio: fix check for pktio_tx + - pktio: test return value of odp_pktio_close() + - pktio: add throughput test + * example: + - ODP classifier example + * bugs: + - example: timer: clean up prescheduled events + * general: + - api: time: force time defines as ULL to avoid computation overflows on 32bits systems + - linux-generic: packet_io: init l2 and l3 cos table spinlocks + - linux-generic: pool: initialize atomics during odp_pool_init_global + - linux-generic: pool: fix initialization of odp_buffer_hdr ref_count + - doc: api_guide_lines: add guidance on ODP_DEPRECATED + +opendataplane (1.0.3) + + * test: + * validation: + - validation: add new test l2fwd_run + - validation: sched: add missing copyright + - validation: move l2fwd from example to performance tests + - validation: implement platform env + - validation: crypto: combine sync and async tests + - validation: crypto: handle synchronous operations in async test + - test: enable valgrind check + - test/README: explain what's the intention with test/validation + - validation: classification: un-checked return + - validation: pktio: support arbitrary length packets + - validation: pktio: fix memory corruption + - validation: common: catch odp_term_local/global failures + - validation: common: print odp_init failures to stderr + - validation: schedule: exit schedule loop + - validation: schedule: added queue destroy test + * bugs: + - linux-generic: pool: fix missing increment of blkallocs stat + - example: odp_generator: use odp_timer + - configure.ac: include configure.m4 if platform explicitly selected + * general: + - doxygen cleanups + - scheduler: restructured queue and pktio integration + - linux-generic: schedule: terminate + - linux-generic: debug_internal: assert prints condition + - linux-generic: pool: check for NULL params before dereference + - linux-generic: pktio: fix SEGV after odp_pktio_inq_remdef() + - linux-generic: system_info: use global data struct + - linux-generic: use arch optimisations + - examples: odp_ipsec: runtime select multiple vs single deq + - examples: odp_ipsec: runtime select scheduled vs poll queues + - examples: odp_ipsec: handle alloc_pkt_ctx failure + - scripts: odp_check: remove astyle + - linux-generic: odp_linux: migrate helpers to helper dir + +opendataplane (1.0.2) + * API: + - api files were touched with override patches but no api + changes were actually made. + * test: + * validation: + - fix memory allocation in odp_synchronizers + - fixed memory leak in odp_cpumask.c + - timer: use unused attribute + - pktio: add support for VPATH builds + - added odp_cpumask test + - timer: free malloced memory + - timer: use ODP_SHM_NULL + - timer: added cancel test + - pktio: prevent race when using veth pair + - test: debug: replace example with test + - test: debug: add unused attribute MACRO + - performance: odp_atomic: move atomic test from api_test to performance + - performance: scheduling: add support for VPATH builds + - performance: scheduling: catch exit codes + * general: + - barrier: allow platform to override odp_barrier_t + - ticketlock: allow platform to override odp_ticketlock_t + - rwlock: allow platform to override odp_rwlock_t + - spinlock: allow platform to override odp_spinlock_t + - doc: move api guidelines to API doc + - linux-generic: strongtypes: add dummy struct var to keep c++ happy + - linux-generic: queue: fix potential queue leak + - linux-generic: strongtypes: use named structs for C++ + - example: l2fwd print packets per second + - linux-generic: linux: destroy used pthread attr + * bugs: + - validation: packet: use non-zero as true indicato + - linux-generic: pktio check for NULL entry + - linux-generic: fix incorrect pmr_term_value update in odp_pmr_create_xxx() function + - replace strtok_r with strtok and fix leaks + - schedule: free queues and pool + +opendataplane (1.0.1) + + * test: + * validation: + - pktio: disable arp on virtual interfaces + - pktio check return code for pool_destroy + - schedule: code clean up + - odp_scheduling: limit worker thread count + - odp_timer: cleanup for clean termination + - common: prevent masking test failures + - shm: abort on null pointer + - crypto: add packet free to sync test + - crypto: add common test cleanup + - common: add support for test term + - crypto: split crypto and random tests + - add unit tests for strong type display functions + * general: + - linux-generic: only print errors to stderr + - linux-generic: linux: remove explicit buffer cache flush + * bugs: + - linux-generic: odp_timer: set user_ptr for cancelled timeout + - validation: odp_timer: cleanup for clean termination + - example: odp_packet uncomment polling queues + - linux-generic: mmap: jumbo frames support + - linux-generic: thread: reuse thread ids + - classification: destroy pktio default inqueue during teardown + - classification: pktio skip value set to zero + +opendataplane (1.0.0) + + * API: + - crypto, cpumask, packet_io, random: replace ssize_t with int32_t + - crypto: add session destroy function + - crypto: add error code for invalid IV + - classification: Add documentation for missing macros + - hints: add printf format attribute + - errno: add api to public api + - init: add missing documentation + - packet_io: remove specific errno value + * test: + * validation: + - Makefile.am: restructure + - pktio: free unexpected packets/events + - pktio: destroy interface specific pools + - pktio: destroy pktio input queues + - pktio: fix odp_errno usage + - buffer: split pool, buffer and packet tests + - init: include stdlib.h for abort() + - crypto: verify session_destroy + - crypto: verify odp_crypto_operation() return code + - queue: destroy created ODP resources + - errno: add sunnyday test + * miscellaneous: + - Add CPP test + * bugs: + - odp_init_log: fix clang format string error + - buffers: remove obsolete debugging code + - classification: fix unchecked return value + - classification: fix incorrect ipv4 checksum update + - example: generator: add missing doxygen documentation + - pools: switch to simple locks for buf/blk synchronization + - performance: fix c99 warnings as errors + - crypto: handle copy error + - system: read hugepage size for all architectures + - queue: fix PKTIN queue destroy + * general: + - add -std=c99 gcc flag by default, fix all warnings + - handle copy error in odp_crypto_operation + - fix all doxygen warnings + - configured defines changed ODP_CONFIG_ and moved to config.h + +opendataplane (0.11.0) + + * API: + - update return descriptions + - add strong types + - thread, rename functions + - cpu, rename functions + - errno added + - classification, remove pmr count + - init, allow the abort function to be overridden + - hints, add ODP_NORETURN + - packet_flag, remove odp_packet_override_l4_checksum + * validation: + - init, add tests for override the abort function + * bugs: + - timer, avoid cunit warnings for late timeouts + - version, fix odp_version_api_str (1194, 1207) + - fix clang (1203, 1023) + - validation: init: fix unitalized data in struct (1206) + - linux-generic: setup_pktio_entry() null terminate pkio name (1055) + - validation: odp_timer.c: (1048, 1056) + +opendataplane (0.10.0) + + * API: + - Allow init_global logging + - Add events + - Add Crypto Completion event + - Classification API cleanup + - Move header files out of linux-generic + * validation: + - Classification tests + * bugs: + - l2fwd: fix incorrect cpumask used when spawning threads + - shared memory + * general: + - move headers into namespace the odp/helper + +opendataplane (0.9.0) + + * Initial release diff --git a/Makefile.am b/Makefile.am index 353c6c6..2acbe3d 100644 --- a/Makefile.am +++ b/Makefile.am @@ -17,4 +17,4 @@ SUBDIRS = @platform_with_platform@ \ include $(top_srcdir)/aminclude.am -EXTRA_DIST = bootstrap $(DX_CONFIG) config/README .scmversion +EXTRA_DIST = bootstrap $(DX_CONFIG) CHANGELOG config/README .scmversion