Re: aligned_{u64,be64,le64} defined in #ifdef __KERNEL__

Jan Engelhardt
2010-10-06T06:05:55Z

On Monday 2010-08-30 15:02, Jan Engelhardt wrote:
>On Monday 2010-08-30 12:58, Andreas Gruenbacher wrote:
>>
>>> If we want a version of this type visible to userspace, it needs to,
>>> for example, have double underscores prepended to the type name just
>>> as we do for things like __u16 and __u32.
>>
>>How about something like this?
>
>
>I like that approach:
>
>>From 3bec018a4835d4fdbe35595366a51bd09e3cc1d0 Mon Sep 17 00:00:00 2001
>>From: Andreas Gruenbacher <agruen@suse.de>
>>Date: Mon, 30 Aug 2010 12:51:01 +0200
>>Subject: [PATCH] Define __aligned_{u64,le64,be64} types with 8-byte alignment
>>
>>--- a/include/linux/if_ppp.h
>>+++ b/include/linux/if_ppp.h
>>@@ -114,14 +114,14 @@ struct pppol2tp_ioc_stats {
>> __u16 tunnel_id; /* redundant */
>> __u16 session_id; /* if zero, get tunnel stats */
>> __u32 using_ipsec:1; /* valid only for session_id == 0 */
>>- aligned_u64 tx_packets;
>>- aligned_u64 tx_bytes;
>>- aligned_u64 tx_errors;
>>- aligned_u64 rx_packets;
>>- aligned_u64 rx_bytes;
>>- aligned_u64 rx_seq_discards;
>>- aligned_u64 rx_oos_packets;
>>- aligned_u64 rx_errors;
>>+ __aligned_u64 tx_packets;
>>+ __aligned_u64 tx_bytes;
>>+ __aligned_u64 tx_errors;
>>+ __aligned_u64 rx_packets;
>>+ __aligned_u64 rx_bytes;
>>+ __aligned_u64 rx_seq_discards;
>>+ __aligned_u64 rx_oos_packets;
>>+ __aligned_u64 rx_errors;

Dave, you liked this too, but I don't see it in net-next yet. Was there
some sort of holdup?

Jan