The patch set generally looks good to me, and ensures that DPDK itself
builds. However, there might be a problem with building external
applications IIUC: if DPDK header using any of the macros missing in
system <sys/queue.h> is included after <sys/queue.h> the build will fail
for reasons not immediately clear to the user.
I think this specific case can be improved in one of the following ways:
1. Remove the _SYS_QUEUE_H_ guard and undef or guard each macro
independently (the file should still define _SYS_QUEUE_H_ to prevent the
converse failure).
2. Detect the situation described above and provide more helpful
diagnostic suggesting a workaround (remove <sys/queue.h> or move it
after DPDK headers).
I myself prefer #1, since swapping or removing includes might be
difficult in big projects.