1. Oct 04, 2018
    • Maciej W. Rozycki's avatar
      rtc: cmos: Remove the `use_acpi_alarm' module parameter for !ACPI · bc51098c
      Maciej W. Rozycki authored
      Fix a problem with commit 311ee9c1
      
       ("rtc: cmos: allow using ACPI for
      RTC alarm instead of HPET") defining `use_acpi_alarm' module parameter
      even for non-ACPI platforms, which ignore it.  Wrap the definition into
      #ifdef CONFIG_ACPI and use a static inline wrapper function, hardcoded
      to return 0 and consequently optimized away for !ACPI, following the
      existing pattern with HPET handling functions.
      
      Signed-off-by: default avatarMaciej W. Rozycki <macro@linux-mips.org>
      Fixes: 311ee9c1
      
       ("rtc: cmos: allow using ACPI for RTC alarm instead of HPET")
      Cc: stable@vger.kernel.org # 4.18+
      Signed-off-by: default avatarAlexandre Belloni <alexandre.belloni@bootlin.com>
      bc51098c
    • Maciej W. Rozycki's avatar
      rtc: cmos: Fix non-ACPI undefined reference to `hpet_rtc_interrupt' · d197a253
      Maciej W. Rozycki authored
      Fix a commit 311ee9c1
      
       ("rtc: cmos: allow using ACPI for RTC alarm
      instead of HPET") `rtc-cmos' regression causing a link error:
      
      drivers/rtc/rtc-cmos.o: In function `cmos_platform_probe':
      rtc-cmos.c:(.init.text+0x33c): undefined reference to `hpet_rtc_interrupt'
      rtc-cmos.c:(.init.text+0x3f4): undefined reference to `hpet_rtc_interrupt'
      
      with non-ACPI platforms using this driver.  The cause is the change of
      the condition guarding the use of `hpet_rtc_interrupt'.
      
      Previously it was a call to `is_hpet_enabled'.  That function is static
      inline and has a hardcoded 0 result for non-ACPI platforms, which imply
      !HPET_EMULATE_RTC.  Consequently the compiler optimized the whole block
      away including the reference to `hpet_rtc_interrupt', which never made
      it to the link stage.
      
      Now the guarding condition is a call to `use_hpet_alarm', which is not
      static inline and therefore the compiler may not be able to prove that
      it actually always returns 0 for non-ACPI platforms.  Consequently the
      build breaks with an unsatisfied reference, because `hpet_rtc_interrupt'
      is nowhere defined at link time.
      
      Fix the problem by marking `use_hpet_alarm' inline.  As the `inline'
      keyword serves as an optimization hint rather than a requirement the
      compiler is still free to choose whether inlining will be beneficial or
      not for ACPI platforms.
      
      Signed-off-by: default avatarMaciej W. Rozycki <macro@linux-mips.org>
      Fixes: 311ee9c1
      
       ("rtc: cmos: allow using ACPI for RTC alarm instead of HPET")
      Cc: stable@vger.kernel.org # 4.18+
      Signed-off-by: default avatarAlexandre Belloni <alexandre.belloni@bootlin.com>
      d197a253
  2. Oct 03, 2018
  3. Sep 28, 2018
  4. Sep 13, 2018
  5. Sep 12, 2018
  6. Sep 11, 2018
  7. Sep 08, 2018
  8. Aug 31, 2018
  9. Aug 28, 2018