| .. | .. |
|---|
| 13 | 13 | * everyone just ended up making identical copies without specific |
|---|
| 14 | 14 | * optimizations, so we may just as well all use the same one. |
|---|
| 15 | 15 | * |
|---|
| 16 | | - * 64 bit architectures typically define a 64 bit __kernel_time_t, |
|---|
| 17 | | - * so they do not need the first two padding words. |
|---|
| 18 | | - * On big-endian systems, the padding is in the wrong place. |
|---|
| 16 | + * 64 bit architectures use a 64-bit long time field here, while |
|---|
| 17 | + * 32 bit architectures have a pair of unsigned long values. |
|---|
| 18 | + * On big-endian systems, the lower half is in the wrong place. |
|---|
| 19 | 19 | * |
|---|
| 20 | 20 | * |
|---|
| 21 | 21 | * Pad space is left for: |
|---|
| .. | .. |
|---|
| 26 | 26 | struct ipc64_perm shm_perm; /* operation perms */ |
|---|
| 27 | 27 | size_t shm_segsz; /* size of segment (bytes) */ |
|---|
| 28 | 28 | #if __BITS_PER_LONG == 64 |
|---|
| 29 | | - __kernel_time_t shm_atime; /* last attach time */ |
|---|
| 30 | | - __kernel_time_t shm_dtime; /* last detach time */ |
|---|
| 31 | | - __kernel_time_t shm_ctime; /* last change time */ |
|---|
| 29 | + long shm_atime; /* last attach time */ |
|---|
| 30 | + long shm_dtime; /* last detach time */ |
|---|
| 31 | + long shm_ctime; /* last change time */ |
|---|
| 32 | 32 | #else |
|---|
| 33 | 33 | unsigned long shm_atime; /* last attach time */ |
|---|
| 34 | 34 | unsigned long shm_atime_high; |
|---|