mirror of
				https://git.proxmox.com/git/mirror_zfs.git
				synced 2025-10-26 18:05:04 +03:00 
			
		
		
		
	Fix compiler warnings about zero-length arrays in inline bitops
The compiler appears to be expanding the unused NULL pointer into a zero-length array via the inline bitops code. When -Werror=array-bounds is used, this causes a build failure. Recommended solution is allocate temporary structures, fill with zeros (to avoid uninitialized data use warnings), and pass the pointer to those to the inline calls. Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov> Signed-off-by: Coleman Kane <ckane@colemankane.org> Closes #13463 Closes #13465
This commit is contained in:
		
							parent
							
								
									276b08cb00
								
							
						
					
					
						commit
						c0cf6ed679
					
				| @ -93,8 +93,10 @@ AC_DEFUN([ZFS_AC_KERNEL_SRC_BLK_QUEUE_DISCARD], [ | ||||
| 	ZFS_LINUX_TEST_SRC([blk_queue_discard], [ | ||||
| 		#include <linux/blkdev.h> | ||||
| 	],[ | ||||
| 		struct request_queue *q __attribute__ ((unused)) = NULL; | ||||
| 		struct request_queue r; | ||||
| 		struct request_queue *q = &r; | ||||
| 		int value __attribute__ ((unused)); | ||||
| 		memset(q, 0, sizeof(r)); | ||||
| 		value = blk_queue_discard(q); | ||||
| 	]) | ||||
| ]) | ||||
| @ -119,16 +121,20 @@ AC_DEFUN([ZFS_AC_KERNEL_SRC_BLK_QUEUE_SECURE_ERASE], [ | ||||
| 	ZFS_LINUX_TEST_SRC([blk_queue_secure_erase], [ | ||||
| 		#include <linux/blkdev.h> | ||||
| 	],[ | ||||
| 		struct request_queue *q __attribute__ ((unused)) = NULL; | ||||
| 		struct request_queue r; | ||||
| 		struct request_queue *q = &r; | ||||
| 		int value __attribute__ ((unused)); | ||||
| 		memset(q, 0, sizeof(r)); | ||||
| 		value = blk_queue_secure_erase(q); | ||||
| 	]) | ||||
| 
 | ||||
| 	ZFS_LINUX_TEST_SRC([blk_queue_secdiscard], [ | ||||
| 		#include <linux/blkdev.h> | ||||
| 	],[ | ||||
| 		struct request_queue *q __attribute__ ((unused)) = NULL; | ||||
| 		struct request_queue r; | ||||
| 		struct request_queue *q = &r; | ||||
| 		int value __attribute__ ((unused)); | ||||
| 		memset(q, 0, sizeof(r)); | ||||
| 		value = blk_queue_secdiscard(q); | ||||
| 	]) | ||||
| ]) | ||||
|  | ||||
		Loading…
	
		Reference in New Issue
	
	Block a user
	 Coleman Kane
						Coleman Kane