From patchwork Wed Apr 24 18:32:56 2013 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: John Stultz X-Patchwork-Id: 16385 Return-Path: X-Original-To: linaro@patches.linaro.org Delivered-To: linaro@patches.linaro.org Received: from mail-qe0-f69.google.com (mail-qe0-f69.google.com [209.85.128.69]) by ip-10-151-82-157.ec2.internal (Postfix) with ESMTPS id C49FC23918 for ; Wed, 24 Apr 2013 18:34:00 +0000 (UTC) Received: by mail-qe0-f69.google.com with SMTP id a11sf4134904qen.0 for ; Wed, 24 Apr 2013 11:33:09 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20120113; h=x-received:mime-version:x-beenthere:x-received:received-spf :x-received:x-forwarded-to:x-forwarded-for:delivered-to:x-received :received-spf:x-received:from:to:cc:subject:date:message-id:x-mailer :x-gm-message-state:x-original-sender :x-original-authentication-results:precedence:mailing-list:list-id :x-google-group-id:list-post:list-help:list-archive:list-unsubscribe; bh=wpPn1QVS2dE+woLu1tcCAnkoUpTWgrD1QPRKfl6bpXc=; b=iOCuOd6jP3jm+CMS9cSvJ+oYI3zbIcfdj+cHX7n4aFyy5rRJvwxbPYwIT/xPIiYSEe O931eoMLQRTYuLFv9U2gA9grqMVAjjyywPt/nvfDriHg3pvVDZ/zMHCViYEWfUhZvAYW RJngcVglPgNqegQvhlzVv811c/SYQqbAZ6Hd/Ju+KsioaDiPlWUBry6cY3DQtp0QrhwU XOzCTrgivnI7rFteaPPjGCwRa+x/USIqLBmYTAjqFKyVKYwH8r+v4tp6t//gu08TiADT X11q/rNiMoDDqvx6ix/UgWkvESz4Bq7QwlCBA6eOdzzp9ADZKco8KXu1lUQqvjdrEepc oC8w== X-Received: by 10.236.188.103 with SMTP id z67mr16118698yhm.30.1366828388971; Wed, 24 Apr 2013 11:33:08 -0700 (PDT) MIME-Version: 1.0 X-BeenThere: patchwork-forward@linaro.org Received: by 10.49.30.41 with SMTP id p9ls1051519qeh.72.gmail; Wed, 24 Apr 2013 11:33:08 -0700 (PDT) X-Received: by 10.220.168.2 with SMTP id s2mr25608755vcy.6.1366828388774; Wed, 24 Apr 2013 11:33:08 -0700 (PDT) Received: from mail-vb0-x235.google.com (mail-vb0-x235.google.com [2607:f8b0:400c:c02::235]) by mx.google.com with ESMTPS id wl5si1729891vec.7.2013.04.24.11.33.08 for (version=TLSv1 cipher=ECDHE-RSA-RC4-SHA bits=128/128); Wed, 24 Apr 2013 11:33:08 -0700 (PDT) Received-SPF: neutral (google.com: 2607:f8b0:400c:c02::235 is neither permitted nor denied by best guess record for domain of patch+caf_=patchwork-forward=linaro.org@linaro.org) client-ip=2607:f8b0:400c:c02::235; Received: by mail-vb0-f53.google.com with SMTP id i3so1937168vbh.26 for ; Wed, 24 Apr 2013 11:33:08 -0700 (PDT) X-Received: by 10.52.166.103 with SMTP id zf7mr21950502vdb.94.1366828388648; Wed, 24 Apr 2013 11:33:08 -0700 (PDT) X-Forwarded-To: patchwork-forward@linaro.org X-Forwarded-For: patch@linaro.org patchwork-forward@linaro.org Delivered-To: patches@linaro.org Received: by 10.58.127.98 with SMTP id nf2csp187289veb; Wed, 24 Apr 2013 11:33:07 -0700 (PDT) X-Received: by 10.68.172.97 with SMTP id bb1mr47759454pbc.198.1366828387225; Wed, 24 Apr 2013 11:33:07 -0700 (PDT) Received: from mail-pa0-f43.google.com (mail-pa0-f43.google.com [209.85.220.43]) by mx.google.com with ESMTPS id te1si3509056pbc.279.2013.04.24.11.33.06 for (version=TLSv1 cipher=ECDHE-RSA-RC4-SHA bits=128/128); Wed, 24 Apr 2013 11:33:07 -0700 (PDT) Received-SPF: neutral (google.com: 209.85.220.43 is neither permitted nor denied by best guess record for domain of john.stultz@linaro.org) client-ip=209.85.220.43; Received: by mail-pa0-f43.google.com with SMTP id hz1so1364778pad.2 for ; Wed, 24 Apr 2013 11:33:06 -0700 (PDT) X-Received: by 10.66.255.99 with SMTP id ap3mr21274471pad.102.1366828386671; Wed, 24 Apr 2013 11:33:06 -0700 (PDT) Received: from localhost.localdomain (c-24-21-54-107.hsd1.or.comcast.net. [24.21.54.107]) by mx.google.com with ESMTPSA id xl10sm4615673pac.15.2013.04.24.11.33.04 for (version=TLSv1.1 cipher=ECDHE-RSA-RC4-SHA bits=128/128); Wed, 24 Apr 2013 11:33:05 -0700 (PDT) From: John Stultz To: lkml Cc: John Stultz , stable , Kay Sievers , Feng Tang , Jason Gunthorpe , Thomas Gleixner Subject: [PATCH] time: Revert ALWAYS_USE_PERSISTENT_CLOCK compile time optimizaitons Date: Wed, 24 Apr 2013 11:32:56 -0700 Message-Id: <1366828376-18124-1-git-send-email-john.stultz@linaro.org> X-Mailer: git-send-email 1.7.10.4 X-Gm-Message-State: ALoCoQkpK+JE6L9dcdwYEOzuWd+hwSZjPdQmT1plNFxaNWPULO7Zj4RY5kYKn6VtDsn+W8UfqQe/ X-Original-Sender: john.stultz@linaro.org X-Original-Authentication-Results: mx.google.com; spf=neutral (google.com: 2607:f8b0:400c:c02::235 is neither permitted nor denied by best guess record for domain of patch+caf_=patchwork-forward=linaro.org@linaro.org) smtp.mail=patch+caf_=patchwork-forward=linaro.org@linaro.org Precedence: list Mailing-list: list patchwork-forward@linaro.org; contact patchwork-forward+owners@linaro.org List-ID: X-Google-Group-Id: 836684582541 List-Post: , List-Help: , List-Archive: List-Unsubscribe: , Kay Sievers noted that the ALWAYS_USE_PERSISTENT_CLOCK config, which enables some minor compile time optimization to avoid uncessary code in mostly the suspend/resume path could cause problems for userland. In particular, the dependency for RTC_HCTOSYS on !ALWAYS_USE_PERSISTENT_CLOCK, which avoids setting the time twice and simplifies suspend/resume, has the side effect of causing the /sys/class/rtc/rtcN/hctosys flag to always be zero, and this flag is commonly used by udev to setup the /dev/rtc symlink to /dev/rtcN, which can cause pain for older applications. While the udev rules could use some work to be less fragile, breaking userland should strongly be avoided. Additionally the compile time optimizations are fairly minor, and the code being optimized is likely to be reworked in the future, so lets revert this change. I suspect this will miss 3.9-final, so marking it for 3.9-stable. Cc: stable CC: Kay Sievers Cc: Feng Tang Cc: Jason Gunthorpe CC: Thomas Gleixner Reported-by: Kay Sievers Signed-off-by: John Stultz --- arch/x86/Kconfig | 1 - drivers/rtc/Kconfig | 2 -- include/linux/time.h | 4 ---- kernel/time/Kconfig | 5 ----- 4 files changed, 12 deletions(-) diff --git a/arch/x86/Kconfig b/arch/x86/Kconfig index 15b5cef..6ef2a37 100644 --- a/arch/x86/Kconfig +++ b/arch/x86/Kconfig @@ -107,7 +107,6 @@ config X86 select GENERIC_CLOCKEVENTS_BROADCAST if X86_64 || (X86_32 && X86_LOCAL_APIC) select GENERIC_TIME_VSYSCALL if X86_64 select KTIME_SCALAR if X86_32 - select ALWAYS_USE_PERSISTENT_CLOCK select GENERIC_STRNCPY_FROM_USER select GENERIC_STRNLEN_USER select HAVE_CONTEXT_TRACKING if X86_64 diff --git a/drivers/rtc/Kconfig b/drivers/rtc/Kconfig index 79fbe38..9e95473 100644 --- a/drivers/rtc/Kconfig +++ b/drivers/rtc/Kconfig @@ -20,7 +20,6 @@ if RTC_CLASS config RTC_HCTOSYS bool "Set system time from RTC on startup and resume" default y - depends on !ALWAYS_USE_PERSISTENT_CLOCK help If you say yes here, the system time (wall clock) will be set using the value read from a specified RTC device. This is useful to avoid @@ -29,7 +28,6 @@ config RTC_HCTOSYS config RTC_SYSTOHC bool "Set the RTC time based on NTP synchronization" default y - depends on !ALWAYS_USE_PERSISTENT_CLOCK help If you say yes here, the system time (wall clock) will be stored in the RTC specified by RTC_HCTOSYS_DEVICE approximately every 11 diff --git a/include/linux/time.h b/include/linux/time.h index d4835df..afcdc4b 100644 --- a/include/linux/time.h +++ b/include/linux/time.h @@ -117,14 +117,10 @@ static inline bool timespec_valid_strict(const struct timespec *ts) extern bool persistent_clock_exist; -#ifdef ALWAYS_USE_PERSISTENT_CLOCK -#define has_persistent_clock() true -#else static inline bool has_persistent_clock(void) { return persistent_clock_exist; } -#endif extern void read_persistent_clock(struct timespec *ts); extern void read_boot_clock(struct timespec *ts); diff --git a/kernel/time/Kconfig b/kernel/time/Kconfig index 24510d8..b696922 100644 --- a/kernel/time/Kconfig +++ b/kernel/time/Kconfig @@ -12,11 +12,6 @@ config CLOCKSOURCE_WATCHDOG config ARCH_CLOCKSOURCE_DATA bool -# Platforms has a persistent clock -config ALWAYS_USE_PERSISTENT_CLOCK - bool - default n - # Timekeeping vsyscall support config GENERIC_TIME_VSYSCALL bool