Received: by 2002:a25:8b91:0:0:0:0:0 with SMTP id j17csp1545239ybl; Fri, 13 Dec 2019 17:41:39 -0800 (PST) X-Google-Smtp-Source: APXvYqwFHzKDiIy0M68gdcue9ay42X3GOGo4+lofV+wOrOS68d6QrDuWa9hTzpy6ZMbxFjEHdbx3 X-Received: by 2002:a05:6830:1555:: with SMTP id l21mr16885239otp.41.1576287699456; Fri, 13 Dec 2019 17:41:39 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1576287699; cv=none; d=google.com; s=arc-20160816; b=ljwh5Pw8KRFBBVUUEHYENbYsZfxUcfT+yPgDgLpQvPrV2frviMmxwpxPDXHa7R6e9O YP/YUSM62yUb39RX/eIiQfXrDBM9xIstHyvb4/G55LgVhoL9gtiUmQjvn3R0Dl8h/vs8 4Kvp7954c7oAqVtNhaN1gG9cgn5WplYepQdjyiIb4EeSy9PE0Ho3KB+2chFEP5Of0RGs LGAo0IX4zzt6MKzUW8O7BsrnI08ugJbCS9g+dgxc6gxWlsC2+OXFhBd8R+Lr2oOhSfhr t79A2/s1bs5Z9VoRMrYMuUlLFh1FY1Fxhfd6vdVNy5XZTdlmf8Wp10KbReiC/hODLHEL xFgA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:dkim-signature; bh=o/RAkFi6F4plFq+4FJ5FybixLxDkxXsHOnC0hMslJ0I=; b=uX+YtJb9xuhpWLpvlhXy0ds6CR1sRZtNbeQzsL3mc9mrwE/oamgMSzs1t/xhIRN7YR +91pMnY9L7RSM5yAGuO1ePR3EhDxet55rvDmcNulpzNmpEBtZy482N3d4RCn4T9qp5ZJ wnhygI6NYOxpfY+6u8xojl8AIh/eGCvC2CMxQraInz0K7kb3sfHjl7C3iwdg0vtRAXGf 3g+NBrXsm8XBEM2AJ5ejJbuczDIFGSnD+twiePCQa3hZbqyNgMXEFak0Fj44P6u9DIzo 5A93YrQnJfG0/DL8xrKUvPHwGaKxD1y3D8xHKZxQz3cUv/01gqIIp+8eRlXkq2y8cTTK Rz4g== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@gmail.com header.s=20161025 header.b=GJ7XLlPc; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id r1si6111805otq.298.2019.12.13.17.40.57; Fri, 13 Dec 2019 17:41:39 -0800 (PST) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=pass header.i=@gmail.com header.s=20161025 header.b=GJ7XLlPc; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726676AbfLNBiF (ORCPT + 99 others); Fri, 13 Dec 2019 20:38:05 -0500 Received: from mail-lj1-f196.google.com ([209.85.208.196]:34210 "EHLO mail-lj1-f196.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726170AbfLNBiF (ORCPT ); Fri, 13 Dec 2019 20:38:05 -0500 Received: by mail-lj1-f196.google.com with SMTP id m6so704820ljc.1; Fri, 13 Dec 2019 17:38:03 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=o/RAkFi6F4plFq+4FJ5FybixLxDkxXsHOnC0hMslJ0I=; b=GJ7XLlPchLiZoHNy58cony05pWue++ZdwsgetvvcxZLRhiuBZxltwBEowy/Z6R6oUk 1uPpttPfg+mDoHbssJ/9j6X3uGcgTcAeUFk+WlFJ3SG8xEoknTey/BFICdKgbw1/0gmS aGsATQVDIo48ta0KJA8U9Ro9qVtXsY3tiLzL7/fVNZP7z2xe7B0dHGiXMNbrkjI06wGR Hmhk/sYYBzvVPO7jg3ogSvE3JTbGON3KqrkT/+hzq/QmdhGPd4ob9/t8T50HTXfTtdbo fkSsFAZHqlIwEeM1QHarDRPVvE7aX16QdBkIpnk1hvRGinAybHiumTemjT8yAse/DWgY 7d0A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=o/RAkFi6F4plFq+4FJ5FybixLxDkxXsHOnC0hMslJ0I=; b=XE8f84YRRlvQl0Ch+dbZWZVywxhJXBTKdcRpL+mrOOkcgsnCBcj1l9lcJJvIH3iLyW B5JwnO92J883P3FbPqfS7VNncK6vydBri0Nhd46mlnKt1JAezUFg62dLIPv2+IWykWks ESnYanUNd9ZZO2pvnwd0yFFNxa7k6WSHAzFYiBIvs0PNv9koMdAhtry08kwlBXjImof7 vPg29SpmZYs071lNC9vwW3/3FxMCcwK6RMLqnvxu5QjgRZyAwYxyLgT0/8rG3LvjgG4N pYzLRAdfwMnFFJSY4RHoFJ0uDXKqrJAyTv26ZMj6S4YejQfDCjOSYyygG9FJsuPmEmxq m0bQ== X-Gm-Message-State: APjAAAVH5svuJCHAX+2JIuondij503C2RKK8nfTes3RCA4+hyjN9aQCj UqWAe0WgtM9vuKMlEODok0M73cY6ovpUVG8L6mwp9z5J X-Received: by 2002:a2e:2c0a:: with SMTP id s10mr11099051ljs.193.1576287482570; Fri, 13 Dec 2019 17:38:02 -0800 (PST) MIME-Version: 1.0 References: <20191213204936.3643476-1-arnd@arndb.de> <20191213205417.3871055-15-arnd@arndb.de> In-Reply-To: <20191213205417.3871055-15-arnd@arndb.de> From: Julian Calaby Date: Sat, 14 Dec 2019 12:37:51 +1100 Message-ID: Subject: Re: [PATCH v2 24/24] y2038: sparc: remove use of struct timex To: Arnd Bergmann Cc: y2038@lists.linaro.org, LKML , "David S. Miller" , John Stultz , Thomas Gleixner , Stephen Boyd , Deepa Dinamani , "Eric W. Biederman" , sparclinux Content-Type: text/plain; charset="UTF-8" Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Hi Arnd, On Sat, Dec 14, 2019 at 7:59 AM Arnd Bergmann wrote: > > 'struct timex' is one of the last users of 'struct timeval' and is > only referenced in one place in the kernel any more, to convert the > user space timex into the kernel-internal version on sparc64, with a > different tv_usec member type. > > As a preparation for hiding the time_t definition and everything > using that in the kernel, change the implementation once more > to only convert the timeval member, and then enclose the > struct definition in an #ifdef. > > Signed-off-by: Arnd Bergmann > --- > arch/sparc/kernel/sys_sparc_64.c | 29 +++++++++++++++-------------- > include/uapi/linux/timex.h | 2 ++ > 2 files changed, 17 insertions(+), 14 deletions(-) > > diff --git a/arch/sparc/kernel/sys_sparc_64.c b/arch/sparc/kernel/sys_sparc_64.c > index 9f41a6f5a032..1c85b0af4dfd 100644 > --- a/arch/sparc/kernel/sys_sparc_64.c > +++ b/arch/sparc/kernel/sys_sparc_64.c > @@ -548,34 +548,35 @@ SYSCALL_DEFINE2(getdomainname, char __user *, name, int, len) > return err; > } > > -SYSCALL_DEFINE1(sparc_adjtimex, struct timex __user *, txc_p) > +SYSCALL_DEFINE1(sparc_adjtimex, struct __kernel_timex __user *, txc_p) > { > - struct timex txc; /* Local copy of parameter */ > - struct __kernel_timex *kt = (void *)&txc; > + struct __kernel_timex txc; > + __kernel_old_timeval *tv = (void *)&txc->time; > int ret; > > /* Copy the user data space into the kernel copy > * structure. But bear in mind that the structures > * may change > */ > - if (copy_from_user(&txc, txc_p, sizeof(struct timex))) > + if (copy_from_user(&txc, txc_p, sizeof(txc))) > return -EFAULT; > > /* > * override for sparc64 specific timeval type: tv_usec > * is 32 bit wide instead of 64-bit in __kernel_timex > */ > - kt->time.tv_usec = txc.time.tv_usec; > + kt->time.tv_usec = tv->tv_usec; Am I mis-reading the patch, or is "kt" not defined? Thanks, -- Julian Calaby Email: julian.calaby@gmail.com Profile: http://www.google.com/profiles/julian.calaby/