qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] [PATCH] syscall.c: Fix build with older linux-headers


From: Michal Privoznik
Subject: Re: [Qemu-devel] [PATCH] syscall.c: Fix build with older linux-headers
Date: Tue, 16 Aug 2016 12:31:32 +0200
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Thunderbird/45.2.0

On 16.08.2016 12:04, Peter Maydell wrote:
> On 16 August 2016 at 10:47, Michal Privoznik <address@hidden> wrote:
>> In c5dff280 we tried to make us understand netlink messages more.
>> So we've added a code that does some translation. However, the
>> code assumed linux-headers to be at least version 4.4 of it
>> because most of the symbols there (if not all of them) were added
>> in just that release. This, however, breaks build on systems with
>> older versions of the package.
>>
>> Signed-off-by: Michal Privoznik <address@hidden>
>> ---
>>  linux-user/syscall.c | 86 
>> ++++++++++++++++++++++++++++++++++++++++++++++++++++
>>  1 file changed, 86 insertions(+)
> 
> 
>>          u32 = NLA_DATA(nlattr);
>>          *u32 = tswap32(*u32);
>>          break;
>>      /* uint64_t */
>> +#ifdef IFLA_BR_HELLO_TIMER
>>      case IFLA_BR_HELLO_TIMER:
>> +#endif
>> +#ifdef IFLA_BR_TCN_TIMER
>>      case IFLA_BR_TCN_TIMER:
>> +#endif
>> +#ifdef IFLA_BR_GC_TIMER
>>      case IFLA_BR_GC_TIMER:
>> +#endif
>> +#ifdef IFLA_BR_TOPOLOGY_CHANGE_TIMER
>>      case IFLA_BR_TOPOLOGY_CHANGE_TIMER:
>> +#endif
>> +#ifdef IFLA_BR_MCAST_LAST_MEMBER_INTVL
>>      case IFLA_BR_MCAST_LAST_MEMBER_INTVL:
>> +#endif
>> +#ifdef IFLA_BR_MCAST_MEMBERSHIP_INTVL
>>      case IFLA_BR_MCAST_MEMBERSHIP_INTVL:
>> +#endif
>> +#ifdef IFLA_BR_MCAST_QUERIER_INTVL
>>      case IFLA_BR_MCAST_QUERIER_INTVL:
>> +#endif
>> +#ifdef IFLA_BR_MCAST_QUERY_INTVL
>>      case IFLA_BR_MCAST_QUERY_INTVL:
>> +#endif
>> +#ifdef IFLA_BR_MCAST_QUERY_RESPONSE_INTVL
>>      case IFLA_BR_MCAST_QUERY_RESPONSE_INTVL:
>> +#endif
>> +#ifdef IFLA_BR_MCAST_STARTUP_QUERY_INTVL
>>      case IFLA_BR_MCAST_STARTUP_QUERY_INTVL:
>> +#endif
>>          u64 = NLA_DATA(nlattr);
>>          *u64 = tswap64(*u64);
>>          break;
>>      /* ifla_bridge_id: uin8_t[] */
>> +#ifdef IFLA_BR_ROOT_ID
>>      case IFLA_BR_ROOT_ID:
>> +#endif
>> +#ifdef IFLA_BR_BRIDGE_ID
>>      case IFLA_BR_BRIDGE_ID:
>> +#endif
>>          break;
> 
> Aren't there complaints about unreachable code if the
> defines are all undefined ?

Yeah, I was worried about that too, but no. My compiler must be wise
enough to realize what is going on. I see no error, nor warning.

Michal



reply via email to

[Prev in Thread] Current Thread [Next in Thread]