mirror of
				https://git.proxmox.com/git/mirror_spl-debian
				synced 2025-11-03 23:53:58 +00:00 
			
		
		
		
	Allow 64-bit timestamps to be set on 64-bit kernels
ZFS and 64-bit linux are perfectly capable of dealing with 64-bit timestamps, but ZFS deliberately prevents setting them. Adjust the SPL such that TIMESPEC_OVERFLOW will not always assume 32-bit values and instead use the correct values for your kernel build. This effectively allows 64-bit timestamps on 64-bit systems. Signed-off-by: Brian Behlendorf <behlendorf1@llnl.gov> Closes ZFS issue #487
This commit is contained in:
		
							parent
							
								
									e05bec805b
								
							
						
					
					
						commit
						791dc876eb
					
				@ -34,8 +34,13 @@
 | 
			
		||||
#include <sys/types.h>
 | 
			
		||||
#include <sys/timer.h>
 | 
			
		||||
 | 
			
		||||
#define TIME32_MAX			INT32_MAX
 | 
			
		||||
#define TIME32_MIN			INT32_MIN
 | 
			
		||||
#if defined(CONFIG_64BIT)
 | 
			
		||||
#define TIME_MAX			INT64_MAX
 | 
			
		||||
#define TIME_MIN			INT64_MIN
 | 
			
		||||
#else
 | 
			
		||||
#define TIME_MAX			INT32_MAX
 | 
			
		||||
#define TIME_MIN			INT32_MIN
 | 
			
		||||
#endif
 | 
			
		||||
 | 
			
		||||
#define SEC				1
 | 
			
		||||
#define MILLISEC			1000
 | 
			
		||||
@ -83,6 +88,6 @@ gethrestime_sec(void)
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
#define TIMESPEC_OVERFLOW(ts)		\
 | 
			
		||||
	((ts)->tv_sec < TIME32_MIN || (ts)->tv_sec > TIME32_MAX)
 | 
			
		||||
	((ts)->tv_sec < TIME_MIN || (ts)->tv_sec > TIME_MAX)
 | 
			
		||||
 | 
			
		||||
#endif  /* _SPL_TIME_H */
 | 
			
		||||
 | 
			
		||||
		Loading…
	
		Reference in New Issue
	
	Block a user