Received: by 2002:ac0:a5b6:0:0:0:0:0 with SMTP id m51-v6csp3386242imm; Mon, 4 Jun 2018 02:42:51 -0700 (PDT) X-Google-Smtp-Source: ADUXVKL+cupVS+akXBTfp9Ay3r5C8ScepP3+RQNDwGZIn2oSJ9WgyKMYNPYQK2k2YcwHKXxgwVux X-Received: by 2002:a17:902:2869:: with SMTP id e96-v6mr7777623plb.58.1528105371378; Mon, 04 Jun 2018 02:42:51 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1528105371; cv=none; d=google.com; s=arc-20160816; b=JTrGEjIzCAIcu9pQiyieqxIYrM6gUBfdUKbRbJuYyd+XoOBkq1jl6ax1aWWufW9p8g LqqcWs2VHjxnv2CtEYvrZXe3ZY/k55RCLIia1k+YSywTfYyxdGQmDzBneD5zYDkFO0wh 0PBqfjFLbqpc+HYD54c3ACjTpzjFAhRcyQVxB9j3cnJ/TqT04XXdiNVwZQDYzpxTk9gD xojGzQlcqRKZ5GjAv3/U8K3nQB1eJSwMAXW816n1HQ5j1XjnDSbEK7lAY5wUzwhLKteZ PoKjSTgvJ1rUs+x2KCV2NnZRlnMdgK9rKTt4/0X/BIWQucasB5hCAaP6yFD9ixgKidI+ OF6g== 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 :references:in-reply-to:mime-version:dkim-signature :arc-authentication-results; bh=THpMcDH2EwkCnrewxJ+gd7N8gcmqYhPbPa/++bAXxPA=; b=Dg1SzgcBJXUq8bkRcqt1cVMgQcGwzArg2+QFj/Mmsq1vYbdNFKWxPjBQI+5+MHjm+P nz+thUwd2kN5R1SGTtfWoZRdEob1mUFdVrijTdLyQ0DKLuXHTB/xbj1QunDbzbznUoKr uIgwbf9Xs8jdKnPBQ324+KLe55bKG2/PeZBVwG429HZ5BzPs7R7mtzhfgmrv2zrI/6bo 53VRc0TgdXQkYjvYvcHBDbipigFWCC4D82VVQU77g7FdfC5HTSNDOk5h7txW5fFsk7+0 ROu5EYGqOTU+MKyJhI2XC9oILfmRPgNrLqTA9sQHl0yO5ooYN0HysZiyXJqN7J7BIQ60 pNFw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=WVi/ypQ+; 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=NONE dis=NONE) header.from=linaro.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id l3-v6si45579765pld.96.2018.06.04.02.42.36; Mon, 04 Jun 2018 02:42:51 -0700 (PDT) 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=@linaro.org header.s=google header.b=WVi/ypQ+; 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=NONE dis=NONE) header.from=linaro.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752066AbeFDJmF (ORCPT + 99 others); Mon, 4 Jun 2018 05:42:05 -0400 Received: from mail-oi0-f67.google.com ([209.85.218.67]:46906 "EHLO mail-oi0-f67.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1750886AbeFDJmD (ORCPT ); Mon, 4 Jun 2018 05:42:03 -0400 Received: by mail-oi0-f67.google.com with SMTP id h79-v6so21342940oig.13 for ; Mon, 04 Jun 2018 02:42:03 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :cc; bh=THpMcDH2EwkCnrewxJ+gd7N8gcmqYhPbPa/++bAXxPA=; b=WVi/ypQ+936p4VjT2IW9g7KonlN2s3raCcWcXI3shwIH7h9nYB5iUd3onzPFBHZ4oK CoevXGumcdEvEYBrtnuz6eyACgD3LKsM6gjV+hNM0k/+6vzY7YvvV/odXSpud3gVeXoC IlUy7kafHTF+A6vhixCeTvV6/WZLllBRWcLvI= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to:cc; bh=THpMcDH2EwkCnrewxJ+gd7N8gcmqYhPbPa/++bAXxPA=; b=Zw0rQi84ZIV3n87zlehM1pw8gjsdeVI3Xk0zc/2b0CR3MlEyp0dMeOvXIqaSVvuMkT ioLzR6SQY+fwkhHCfoPXFBGCo+WeU+gEmSPhc2vPq+1DbwtDAqFeF2rRjx7M2MX1aUQr p5JVkrSTrKcFnGKhB0fFDAgrpZSG1/tOnWZZ9Urqv+KkEDyszaAC5PXkLmeQ+7Q+/eoz Hzgi2COUNwEA2wfWNkeobFBi4pHMXfLJsI7OWIWsD3Xpbp7tnd0pIj5h0/EwrpJa4CvR XhHIfkvyFDfvSUmzYqLXZ3tSIinJll5YEwoqUCRpAgAWJ2xkvvqnoiLdpELNYkaEk3Ix +icQ== X-Gm-Message-State: APt69E2PJs3bVICAx0/FbUTsksw7aEMJjrKTmS3+LPfGwk1p1/1lO5Sy o2mKTsZoFupFz3PFTC1d+ymWweC0tGSCRxWI+I9Dog== X-Received: by 2002:aca:3c07:: with SMTP id j7-v6mr12388404oia.128.1528105323079; Mon, 04 Jun 2018 02:42:03 -0700 (PDT) MIME-Version: 1.0 Received: by 2002:a9d:2d44:0:0:0:0:0 with HTTP; Mon, 4 Jun 2018 02:42:02 -0700 (PDT) In-Reply-To: References: <8ab19b1665b51364c1f7e607f9a69a86fe084d0d.1528102909.git.baolin.wang@linaro.org> From: Baolin Wang Date: Mon, 4 Jun 2018 17:42:02 +0800 Message-ID: Subject: Re: [PATCH] iio: Convert to use timespec64 variables to get a time stamp To: Arnd Bergmann Cc: Jonathan Cameron , Hartmut Knaack , Lars-Peter Clausen , Peter Meerwald-Stadler , Mark Brown , linux-iio@vger.kernel.org, Linux Kernel Mailing List , Thomas Gleixner 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 4 June 2018 at 17:17, Arnd Bergmann wrote: > On Mon, Jun 4, 2018 at 11:07 AM, Baolin Wang wrote: >> The struct timespec is not y2038 safe on 32bit machines, thus this patch >> converts to use timespec64 variables and related APIs to get a time stamp >> for events etc. >> >> Signed-off-by: Baolin Wang > > Hi Baolin, > > I was waiting with this for the new header file cleanup to land. Thomas > merged that one recently, so now we should be able to do this more nicely: Thanks to point this out. Yes, let's use your nice patch. > > diff --git a/drivers/iio/industrialio-core.c b/drivers/iio/industrialio-core.c > index 19bdf3d2962a..fcbe92c34a3d 100644 > --- a/drivers/iio/industrialio-core.c > +++ b/drivers/iio/industrialio-core.c > @@ -207,35 +207,27 @@ static int iio_device_set_clock(struct iio_dev > *indio_dev, clockid_t clock_id) > */ > s64 iio_get_time_ns(const struct iio_dev *indio_dev) > { > - struct timespec tp; > + struct timespec64 tp; > > switch (iio_device_get_clock(indio_dev)) { > case CLOCK_REALTIME: > - ktime_get_real_ts(&tp); > - break; > + return ktime_get_real_ns(); > case CLOCK_MONOTONIC: > - ktime_get_ts(&tp); > - break; > + return ktime_get_ns(); > case CLOCK_MONOTONIC_RAW: > - getrawmonotonic(&tp); > - break; > + return ktime_get_raw_ns(); > case CLOCK_REALTIME_COARSE: > - tp = current_kernel_time(); > - break; > + return ktime_to_ns(ktime_get_coarse_real()); > case CLOCK_MONOTONIC_COARSE: > - tp = get_monotonic_coarse(); > - break; > + ktime_get_coarse_ts64(&tp); > + return timespec64_to_ns(&tp); > case CLOCK_BOOTTIME: > - get_monotonic_boottime(&tp); > - break; > + return ktime_get_boot_ns(); > case CLOCK_TAI: > - timekeeping_clocktai(&tp); > - break; > + return ktime_get_tai_ns(); > default: > BUG(); > } > - > - return timespec_to_ns(&tp); > } > EXPORT_SYMBOL(iio_get_time_ns); -- Baolin.wang Best Regards