Author: stevek
Date: Thu Sep 22 06:24:40 2016
New Revision: 306159
URL: https://svnweb.freebsd.org/changeset/base/306159

Log:
  The getsecs() function is implemented in platform- and bootfw-specific
  files and, in a number of these places, there were problems with how they
  were declared.
  
  Some used int return instead of time_t. On some architectures the bit
  width of time_t did not naturally fit into an integer and could lead to
  some unexpected behavior. (For example, 32-bit ARM builds uses a 64-bit
  time_t.)
  
  Make sure the function prototypes always specify void for the argument
  list when they do not have any arguemnts, otherwise some compilers can
  complain about the prototype.
  
  Reported by:  Kevin Zheng
  Reviewed by:  sjg
  Approved by:  sjg (mentor)
  Obtained from:        Juniper Networks, Inc.
  MFC after:    1 month
  Differential Revision:        https://reviews.freebsd.org/D7463

Modified:
  head/sys/boot/efi/libefi/time.c
  head/sys/boot/efi/libefi/time_event.c
  head/sys/boot/i386/libi386/pxe.c
  head/sys/boot/ofw/libofw/ofw_time.c
  head/sys/boot/powerpc/kboot/main.c
  head/sys/boot/powerpc/ps3/main.c
  head/sys/boot/uboot/lib/time.c

Modified: head/sys/boot/efi/libefi/time.c
==============================================================================
--- head/sys/boot/efi/libefi/time.c     Thu Sep 22 04:50:03 2016        
(r306158)
+++ head/sys/boot/efi/libefi/time.c     Thu Sep 22 06:24:40 2016        
(r306159)
@@ -228,7 +228,7 @@ time(time_t *tloc)
 }
 
 time_t
-getsecs()
+getsecs(void)
 {
     return time(0);
 }

Modified: head/sys/boot/efi/libefi/time_event.c
==============================================================================
--- head/sys/boot/efi/libefi/time_event.c       Thu Sep 22 04:50:03 2016        
(r306158)
+++ head/sys/boot/efi/libefi/time_event.c       Thu Sep 22 06:24:40 2016        
(r306159)
@@ -76,7 +76,7 @@ time(time_t *tloc)
 }
 
 time_t
-getsecs()
+getsecs(void)
 {
     return time(0);
 }

Modified: head/sys/boot/i386/libi386/pxe.c
==============================================================================
--- head/sys/boot/i386/libi386/pxe.c    Thu Sep 22 04:50:03 2016        
(r306158)
+++ head/sys/boot/i386/libi386/pxe.c    Thu Sep 22 06:24:40 2016        
(r306159)
@@ -586,7 +586,7 @@ bangpxe_call(int func)
 
 
 time_t
-getsecs()
+getsecs(void)
 {
        time_t n = 0;
        time(&n);

Modified: head/sys/boot/ofw/libofw/ofw_time.c
==============================================================================
--- head/sys/boot/ofw/libofw/ofw_time.c Thu Sep 22 04:50:03 2016        
(r306158)
+++ head/sys/boot/ofw/libofw/ofw_time.c Thu Sep 22 06:24:40 2016        
(r306159)
@@ -41,8 +41,8 @@ time(time_t *tloc)
        return secs;
 }
 
-int
-getsecs()
+time_t
+getsecs(void)
 {
        time_t  n = 0;
        time(&n);

Modified: head/sys/boot/powerpc/kboot/main.c
==============================================================================
--- head/sys/boot/powerpc/kboot/main.c  Thu Sep 22 04:50:03 2016        
(r306158)
+++ head/sys/boot/powerpc/kboot/main.c  Thu Sep 22 06:24:40 2016        
(r306159)
@@ -151,8 +151,8 @@ delay(int usecs)
        } while (t < ti + usecs);
 }
 
-int
-getsecs()
+time_t
+getsecs(void)
 {
        struct host_timeval tv;
        host_gettimeofday(&tv, NULL);

Modified: head/sys/boot/powerpc/ps3/main.c
==============================================================================
--- head/sys/boot/powerpc/ps3/main.c    Thu Sep 22 04:50:03 2016        
(r306158)
+++ head/sys/boot/powerpc/ps3/main.c    Thu Sep 22 06:24:40 2016        
(r306159)
@@ -179,10 +179,10 @@ delay(int usecs)
                tb = mftb();
 }
 
-int
-getsecs()
+time_t
+getsecs(void)
 {
-       return ((mftb() - basetb)*ns_per_tick/1000000000);
+       return ((time_t)((mftb() - basetb)*ns_per_tick/1000000000));
 }
 
 time_t

Modified: head/sys/boot/uboot/lib/time.c
==============================================================================
--- head/sys/boot/uboot/lib/time.c      Thu Sep 22 04:50:03 2016        
(r306158)
+++ head/sys/boot/uboot/lib/time.c      Thu Sep 22 06:24:40 2016        
(r306159)
@@ -47,7 +47,7 @@ time(time_t *tloc)
        return (secs);
 }
 
-int
+time_t
 getsecs(void)
 {
 
_______________________________________________
svn-src-head@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"

Reply via email to