mirror of
				https://git.proxmox.com/git/mirror_zfs
				synced 2025-11-04 11:08:14 +00:00 
			
		
		
		
	It turns out that layouts of union bitfields are a pain, and the current code results in an inconsistent layout between BE and LE systems, leading to zstd-active datasets on one erroring out on the other. Switch everyone over to the LE layout, and add compatibility code to read both. Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov> Reviewed-by: Matthew Ahrens <mahrens@delphix.com> Signed-off-by: Rich Ercolani <rincebrain@gmail.com> Closes #12008 Closes #12022
		
			
				
	
	
		
			12 lines
		
	
	
		
			227 B
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			12 lines
		
	
	
		
			227 B
		
	
	
	
		
			C
		
	
	
	
	
	
#ifdef __sparc__
 | 
						|
#include <stdint.h>
 | 
						|
#include <sys/byteorder.h>
 | 
						|
#include "include/sparc_compat.h"
 | 
						|
uint64_t __bswapdi2(uint64_t in) {
 | 
						|
	return (BSWAP_64(in));
 | 
						|
}
 | 
						|
uint32_t __bswapsi2(uint32_t in) {
 | 
						|
	return (BSWAP_32(in));
 | 
						|
}
 | 
						|
#endif
 |