Thread (13 messages) 13 messages, 3 authors, 2017-07-29

Re: [RESEND PATCH 2/6] ipc: mqueue: Replace timespec with timespec64

From: Paul Moore <paul@paul-moore.com>
Date: 2017-07-28 21:06:24
Also in: lkml

On Fri, Jul 28, 2017 at 2:52 PM, Deepa Dinamani [off-list ref] wrote:
struct timespec is not y2038 safe. Replace
all uses of timespec by y2038 safe struct timespec64.

Even though timespec is used here to represent timeouts,
replace these with timespec64 so that it facilitates
in verification by creating a y2038 safe kernel image
that is free of timespec.

The syscall interfaces themselves are not changed as part
of the patch. They will be part of a different series.

Signed-off-by: Deepa Dinamani <redacted>
Cc: Paul Moore <paul@paul-moore.com>
Cc: Richard Guy Briggs <redacted>
---
 include/linux/audit.h |  6 +++---
 ipc/mqueue.c          | 28 ++++++++++++++--------------
 kernel/audit.h        |  2 +-
 kernel/auditsc.c      | 12 ++++++------
 4 files changed, 24 insertions(+), 24 deletions(-)
quoted hunk ↗ jump to hunk
diff --git a/kernel/auditsc.c b/kernel/auditsc.c
index 3260ba2312a9..d0870f8e3656 100644
--- a/kernel/auditsc.c
+++ b/kernel/auditsc.c
@@ -2083,15 +2083,15 @@ void __audit_mq_open(int oflag, umode_t mode, struct mq_attr *attr)
  *
  */
 void __audit_mq_sendrecv(mqd_t mqdes, size_t msg_len, unsigned int msg_prio,
-                       const struct timespec *abs_timeout)
+                       const struct timespec64 *abs_timeout)
 {
        struct audit_context *context = current->audit_context;
-       struct timespec *p = &context->mq_sendrecv.abs_timeout;
+       struct timespec64 *p = &context->mq_sendrecv.abs_timeout;

        if (abs_timeout)
-               memcpy(p, abs_timeout, sizeof(struct timespec));
+               memcpy(p, abs_timeout, sizeof(struct timespec64));
Since you're changing this line, how about changing it to the following:

  memcpy(p, abs_timeout, sizeof(*p));
        else
-               memset(p, 0, sizeof(struct timespec));
+               memset(p, 0, sizeof(struct timespec64));
Same here.

-- 
paul moore
www.paul-moore.com
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help