fix format specifier for func virtio_resource_init_by_ioports.
%04hx-%04hx couldn't read 64bit address correctly that lead to wrong value in
%mem_resource[0].addr / len; result in testpmd failure.
For example, so to read this address 00001040-0000105f; default format-specifier
could read 0-0 that lead to below error on arm64/ThunderX

Unhandled fault: alignment fault (0x92000021) at 0x0000007fb5040002

Signed-off-by: Santosh Shukla <sshukla at mvista.com>
Signed-off-by: Rakesh Krishnamurhty <rakeshk at mvista.com>
---
 drivers/net/virtio/virtio_ethdev.c |    2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/net/virtio/virtio_ethdev.c 
b/drivers/net/virtio/virtio_ethdev.c
index 017d49f..8107aef 100644
--- a/drivers/net/virtio/virtio_ethdev.c
+++ b/drivers/net/virtio/virtio_ethdev.c
@@ -1169,7 +1169,7 @@ static int virtio_resource_init_by_ioports(struct 
rte_pci_device *pci_dev)
                        while (*ptr && isspace(*ptr))
                                ptr++;

-                       sscanf(ptr, "%04hx-%04hx", &start, &end);
+                       sscanf(ptr, "%hx-%hx", &start, &end);
                        size = end - start + 1;

                        break;
-- 
1.7.9.5

Reply via email to