From 7ae79b0dff53a23fa0a964f77b9e3bb387a293c4 Mon Sep 17 00:00:00 2001
From: Aaron Conole <aconole@redhat.com>
Date: Tue, 4 Aug 2020 09:17:50 -0400
Subject: [PATCH 9/9] 8021qaz: mark prio map functions static

Inline is not the correct way to mark a function for inclusion
in a single translation unit.  Use 'static' to restrict export
of these functions.

Signed-off-by: Aaron Conole <aconole@redhat.com>
---
 lldp_8021qaz.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/lldp_8021qaz.c b/lldp_8021qaz.c
index 673d758..16ae167 100644
--- a/lldp_8021qaz.c
+++ b/lldp_8021qaz.c
@@ -397,7 +397,7 @@ static int read_cfg_file(char *ifname, struct lldp_agent *agent,
 	return 0;
 }
 
-inline int get_prio_map(u32 prio_map, int prio)
+static int get_prio_map(u32 prio_map, int prio)
 {
 	if (prio > 7)
 		return 0;
@@ -405,7 +405,7 @@ inline int get_prio_map(u32 prio_map, int prio)
 	return (prio_map >> (4 * (7-prio))) & 0xF;
 }
 
-inline void set_prio_map(u32 *prio_map, u8 prio, int tc)
+static void set_prio_map(u32 *prio_map, u8 prio, int tc)
 {
 	u32 mask = ~(0xffffffff & (0xF << (4 * (7-prio))));
 	*prio_map &= mask;
-- 
2.28.0

