mem: fix alignment of requested virtual areas

Although the alignment mechanism works as intended, the
`no_align` bool flag was set incorrectly. We were aligning
buffers that didn't need extra alignment, and weren't
aligning ones that really needed it.

Fixes: b7cc54187ea4 ("mem: move virtual area function in common directory")
Cc: stable@dpdk.org

Signed-off-by: Dariusz Stojaczyk <dariuszx.stojaczyk@intel.com>
Acked-by: Anatoly Burakov <anatoly.burakov@intel.com>
This commit is contained in:
Dariusz Stojaczyk 2018-06-13 21:08:14 +02:00 committed by Thomas Monjalon
parent 09037cf36c
commit 7fa7216ed4

View File

@ -70,7 +70,7 @@ eal_get_virtual_area(void *requested_addr, size_t *size,
* system page size is the same as requested page size.
*/
no_align = (requested_addr != NULL &&
((uintptr_t)requested_addr & (page_sz - 1)) == 0) ||
((uintptr_t)requested_addr & (page_sz - 1))) ||
page_sz == system_page_sz;
do {