From patchwork Thu Nov 2 11:06:50 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "\(Exiting\) Baolin Wang" X-Patchwork-Id: 117774 Delivered-To: patch@linaro.org Received: by 10.80.245.45 with SMTP id t42csp1917598edm; Thu, 2 Nov 2017 04:08:05 -0700 (PDT) X-Google-Smtp-Source: ABhQp+QI1mBpV+k1RTUSVdFQGElu8VRihsxJvS+fkU028BVhvBA59Adr5w3gY2bu37h36kUSQMOc X-Received: by 10.84.240.196 with SMTP id l4mr2818559plt.149.1509620885747; Thu, 02 Nov 2017 04:08:05 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1509620885; cv=none; d=google.com; s=arc-20160816; b=kQk7hSuxB0pxQRf5skf2JKOOQDwA5EtixxD6CRShP/7Cy37Oy36YNkMVr4GJqy2NOo hThRHjh5xkEoq7/66G94q9QXWhV2+dF+2mkh00Bucr+NGjQ3KQ0ar4M8kEF6/ZmmQNnZ cJEJ/10cu9BmhZwZf2vx2soYdrmAxddwkjJ7gM0yfF94YnVpBhulS6vmr5IobhbpBvh3 wcDg3jHNFNMsswm0bmDuDMKeJE0tDfJ+GHgh8k6Jahd2hiHu7jGvS0LAlJf2T4nItPMU U+1saNwsdpLuoBOGZxhLoE9QXQe2XMkor0GcqAuKJhM0B8e/E7IGVaDfZTDjjXFVUaWK atWA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:message-id:date:subject:cc:to:from :dkim-signature:arc-authentication-results; bh=CcS9GsKpR4j8jc6BNF69Nw5DYWJPk65SokVkksXw3rg=; b=Q7+7nNmvbJ1YvES7IEUHi09I05vBAYh7vQnbjXjLCpDd3BpvnoF33ymyHw1kKd3eqU UqQrMBvCiMZppFH3WpwCmh9bCAc1UbIDY6vsMd5hqvYUdE54iTTyB2JHGPRvYvWH8imL BvgnC/pjH2i+O4oeO7PSx13ucDmKEzqXFpUL3ooY9QBakE7DCKNDOFK3Muy9ZLKj2yQk uclFvMnMNXfhBp60T6I+eucp0E+frpiKdoHab3eXVgfvObGmKLTtxCeyu2xlW4RCX80b gPxdG6EzXzt7k9Vv5uQDOe5hUh/mY8xxfF01Vaoz3L1H5lc1/NJ8LI5fu6aaaw0cYDS/ t1+Q== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=J0nSIi40; 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 b2si2189375pll.213.2017.11.02.04.08.05; Thu, 02 Nov 2017 04:08:05 -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=J0nSIi40; 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 S1755604AbdKBLIE (ORCPT + 26 others); Thu, 2 Nov 2017 07:08:04 -0400 Received: from mail-pg0-f65.google.com ([74.125.83.65]:43885 "EHLO mail-pg0-f65.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S933318AbdKBLIA (ORCPT ); Thu, 2 Nov 2017 07:08:00 -0400 Received: by mail-pg0-f65.google.com with SMTP id s75so4787666pgs.0 for ; Thu, 02 Nov 2017 04:08:00 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:cc:subject:date:message-id; bh=CcS9GsKpR4j8jc6BNF69Nw5DYWJPk65SokVkksXw3rg=; b=J0nSIi408q4QfdlF4nkIIDAEwxQOLqIF0dAcc6ECERL37f91tAjoPVTXVmsGpUOu+h UWDwsgXkZ3hkuvWXWhex3Mj3UnAWmDT8EP0SWjAQtrEFShTjKI0JjVrTzpY0hfY1lza4 l54mqiFVbTL2/DqFPvRqUg/QtlV2ARRo2VVyw= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id; bh=CcS9GsKpR4j8jc6BNF69Nw5DYWJPk65SokVkksXw3rg=; b=mKQBQHn+uEc8vhN0olmukJBtUmvQwl4OSBwQtx5gbDDlIW0LUwJ+H/s4ovVawZL5YK DU/W+Fti0535ukaOi1SLRTsLJ+qlTZk8vA+34of3E7UhQft+EkdUX6FXD4hPeUF5YNVF N7f1rsuYRUFXfc/jBBD98hTyVzhvp8rR+Iz8IbkY+s4eVc1iRY9QvI5NTPkcIPiVPNTV WjsjqX3XFCk2xxdNAglfjDScXQ2SKay4FekOl5Nub3J7GCsryXNSGOlw+/dCdcv6mlU0 v1uyYJLBmpmlCY3LORPCx0XbVo/F+uK1fNI/ItVmQ4Nnl//dogi5EYFbb2j7iKTGaR0O ojqA== X-Gm-Message-State: AMCzsaXdlTgMGqKvlw63TbdDUxcoINKlSxFr+LZxzw4FxoKCoH/LhhV7 MzzxAVfwZ+CtEGzgd0K4jJLb1w== X-Received: by 10.84.130.41 with SMTP id 38mr2829035plc.387.1509620880018; Thu, 02 Nov 2017 04:08:00 -0700 (PDT) Received: from baolinwangubtpc.spreadtrum.com ([117.18.48.82]) by smtp.gmail.com with ESMTPSA id g13sm5473772pfm.130.2017.11.02.04.07.54 (version=TLS1 cipher=ECDHE-RSA-AES128-SHA bits=128/128); Thu, 02 Nov 2017 04:07:59 -0700 (PDT) From: Baolin Wang To: perex@perex.cz, tiwai@suse.com, arnd@arndb.de Cc: lgirdwood@gmail.com, broonie@kernel.org, o-takashi@sakamocchi.jp, mingo@kernel.org, elfring@users.sourceforge.net, dan.carpenter@oracle.com, jeeja.kp@intel.com, vinod.koul@intel.com, guneshwor.o.singh@intel.com, subhransu.s.prusty@intel.com, bhumirks@gmail.com, gudishax.kranthikumar@intel.com, naveen.m@intel.com, hardik.t.shah@intel.com, arvind.yadav.cs@gmail.com, fabf@skynet.be, alsa-devel@alsa-project.org, linux-kernel@vger.kernel.org, baolin.wang@linaro.org Subject: [RFC PATCH v2 0/7] Fix year 2038 issue for sound subsystem Date: Thu, 2 Nov 2017 19:06:50 +0800 Message-Id: X-Mailer: git-send-email 1.7.9.5 Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Since many structures will use timespec type variables to record time stamp in uapi/asound.h, which are not year 2038 safe on 32bit system. This patchset tries to introduce new structures removing timespec type to compatible native mode and compat mode. Moreover this patchset also converts the internal structrures to use timespec64 type and related APIs. Changes since v1: - Flat all structues to make them more clear. - Re-modify the convertion for struct snd_timer_tread. - Use same coding style when converting struct snd_rawmidi_status. - Use struct snd_timer_user_status64 in compat mode directly when converting struct snd_timer_status. - Add #ifdef __KERNEL__ when converting struct snd_ctl_elem_value. - Re-modify the convertion for struct snd_pcm_sync_ptr. - Fix some building errors. Appreciated for any comments, especially for patch6 which I am not sure if it is correct. Baolin Wang (7): sound: Replace timespec with timespec64 sound: core: Avoid using timespec for struct snd_pcm_status sound: core: Avoid using timespec for struct snd_rawmidi_status sound: core: Avoid using timespec for struct snd_timer_status uapi: sound: Avoid using timespec for struct snd_ctl_elem_value sound: core: Avoid using timespec for struct snd_pcm_sync_ptr sound: core: Avoid using timespec for struct snd_timer_tread include/sound/pcm.h | 126 +++++++++- include/sound/timer.h | 4 +- include/uapi/sound/asound.h | 19 +- sound/core/pcm.c | 20 +- sound/core/pcm_compat.c | 469 ++++++++++++++++++++++++++++--------- sound/core/pcm_lib.c | 33 ++- sound/core/pcm_native.c | 220 +++++++++++++---- sound/core/rawmidi.c | 81 ++++++- sound/core/rawmidi_compat.c | 121 +++++++--- sound/core/timer.c | 253 ++++++++++++++++---- sound/core/timer_compat.c | 67 ++---- sound/pci/hda/hda_controller.c | 10 +- sound/soc/intel/skylake/skl-pcm.c | 4 +- 13 files changed, 1090 insertions(+), 337 deletions(-) -- 1.7.9.5