mirror of
				https://git.proxmox.com/git/mirror_zfs.git
				synced 2025-10-26 18:05:04 +03:00 
			
		
		
		
	Linux 6.5 compat: disk_check_media_change() was added
The disk_check_media_change() function was added which replaces bdev_check_media_change. This change was introduced in 6.5rc1 444aa2c58cb3b6cfe3b7cc7db6c294d73393a894 and the new function takes a gendisk* as its argument, no longer a block_device*. Thus, bdev->bd_disk is now used to pass the expected data. Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov> Signed-off-by: Coleman Kane <ckane@colemankane.org> Closes #15060
This commit is contained in:
		
							parent
							
								
									f52d9b6f42
								
							
						
					
					
						commit
						e45ca514e8
					
				| @ -103,6 +103,33 @@ AC_DEFUN([ZFS_AC_KERNEL_BLKDEV_CHECK_DISK_CHANGE], [ | ||||
| 	]) | ||||
| ]) | ||||
| 
 | ||||
| dnl # | ||||
| dnl # 6.5.x API change | ||||
| dnl # disk_check_media_change() was added | ||||
| dnl # | ||||
| AC_DEFUN([ZFS_AC_KERNEL_SRC_BLKDEV_DISK_CHECK_MEDIA_CHANGE], [ | ||||
| 	ZFS_LINUX_TEST_SRC([disk_check_media_change], [ | ||||
| 		#include <linux/fs.h> | ||||
| 		#include <linux/blkdev.h> | ||||
| 	], [ | ||||
| 		struct block_device *bdev = NULL; | ||||
| 		bool error; | ||||
| 
 | ||||
| 		error = disk_check_media_change(bdev->bd_disk); | ||||
| 	]) | ||||
| ]) | ||||
| 
 | ||||
| AC_DEFUN([ZFS_AC_KERNEL_BLKDEV_DISK_CHECK_MEDIA_CHANGE], [ | ||||
| 	AC_MSG_CHECKING([whether disk_check_media_change() exists]) | ||||
| 	ZFS_LINUX_TEST_RESULT([disk_check_media_change], [ | ||||
| 		AC_MSG_RESULT(yes) | ||||
| 		AC_DEFINE(HAVE_DISK_CHECK_MEDIA_CHANGE, 1, | ||||
| 		    [disk_check_media_change() exists]) | ||||
| 	], [ | ||||
| 		AC_MSG_RESULT(no) | ||||
| 	]) | ||||
| ]) | ||||
| 
 | ||||
| dnl # | ||||
| dnl # bdev_kobj() is introduced from 5.12 | ||||
| dnl # | ||||
| @ -481,6 +508,7 @@ AC_DEFUN([ZFS_AC_KERNEL_SRC_BLKDEV], [ | ||||
| 	ZFS_AC_KERNEL_SRC_BLKDEV_ISSUE_SECURE_ERASE | ||||
| 	ZFS_AC_KERNEL_SRC_BLKDEV_BDEV_KOBJ | ||||
| 	ZFS_AC_KERNEL_SRC_BLKDEV_PART_TO_DEV | ||||
| 	ZFS_AC_KERNEL_SRC_BLKDEV_DISK_CHECK_MEDIA_CHANGE | ||||
| 	ZFS_AC_KERNEL_SRC_BLKDEV_BLK_STS_RESV_CONFLICT | ||||
| ]) | ||||
| 
 | ||||
| @ -500,5 +528,6 @@ AC_DEFUN([ZFS_AC_KERNEL_BLKDEV], [ | ||||
| 	ZFS_AC_KERNEL_BLKDEV_ISSUE_SECURE_ERASE | ||||
| 	ZFS_AC_KERNEL_BLKDEV_BDEV_KOBJ | ||||
| 	ZFS_AC_KERNEL_BLKDEV_PART_TO_DEV | ||||
| 	ZFS_AC_KERNEL_BLKDEV_DISK_CHECK_MEDIA_CHANGE | ||||
| 	ZFS_AC_KERNEL_BLKDEV_BLK_STS_RESV_CONFLICT | ||||
| ]) | ||||
|  | ||||
| @ -334,6 +334,8 @@ zfs_check_media_change(struct block_device *bdev) | ||||
| 	return (0); | ||||
| } | ||||
| #define	vdev_bdev_reread_part(bdev)	zfs_check_media_change(bdev) | ||||
| #elif defined(HAVE_DISK_CHECK_MEDIA_CHANGE) | ||||
| #define	vdev_bdev_reread_part(bdev)	disk_check_media_change(bdev->bd_disk) | ||||
| #else | ||||
| /*
 | ||||
|  * This is encountered if check_disk_change() and bdev_check_media_change() | ||||
|  | ||||
		Loading…
	
		Reference in New Issue
	
	Block a user
	 Coleman Kane
						Coleman Kane