14/04/2020 21:44, Dmitry Kozlyuk: > The goal of rte_os.h is to mitigate OS differences for EAL users. > In Windows EAL, rte_os.h did excessive things: > > 1. It included platform SDK headers (windows.h, etc). Those files are > huge, require specific inclusion order, and are generally unused by > the code including rte_os.h. Declarations from platform SDK may > break otherwise platform-independent code, e.g. min, max, ERROR. > > 2. It included pthread.h, which is clearly not always required. > > 3. It defined functions private to Windows EAL. > > Reorganize Windows EAL includes in the following way: > > 1. Create rte_windows.h to properly import Windows-specific facilities. > Primary users are bus drivers, tests, and external applications. > > 2. Remove platform SDK includes from rte_os.h to prevent breaking > otherwise portable code by including rte_os.h on Windows. > Copy necessary definitions to avoid including those headers. > > 3. Remove pthread.h include from rte_os.h. > > 4. Move declarations private to Windows EAL into eal_windows.h. > > Fixes: 428eb983f5f7 ("eal: add OS specific header file") > > Signed-off-by: Dmitry Kozlyuk <dmitry.kozl...@gmail.com>
Applied as a separate patch because it is needed for a patch fixing compilation on Windows.