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.

Reply via email to