svn commit: r364581 - stable/12/sys/compat/linux
Edward Tomasz Napierala
trasz at FreeBSD.org
Sun Aug 23 22:47:09 UTC 2020
Author: trasz
Date: Sun Aug 23 22:47:08 2020
New Revision: 364581
URL: https://svnweb.freebsd.org/changeset/base/364581
Log:
MFC r356170:
Implement Linux BLKGETSIZE64 ioctl.
Sponsored by: The FreeBSD Foundation
Modified:
stable/12/sys/compat/linux/linux_ioctl.c
stable/12/sys/compat/linux/linux_ioctl.h
Directory Properties:
stable/12/ (props changed)
Modified: stable/12/sys/compat/linux/linux_ioctl.c
==============================================================================
--- stable/12/sys/compat/linux/linux_ioctl.c Sun Aug 23 22:40:38 2020 (r364580)
+++ stable/12/sys/compat/linux/linux_ioctl.c Sun Aug 23 22:47:08 2020 (r364581)
@@ -286,6 +286,7 @@ linux_ioctl_disk(struct thread *td, struct linux_ioctl
struct file *fp;
int error;
u_int sectorsize;
+ uint64_t blksize64;
off_t mediasize;
error = fget(td, args->fd, &cap_ioctl_rights, &fp);
@@ -308,6 +309,15 @@ linux_ioctl_disk(struct thread *td, struct linux_ioctl
return (copyout(§orsize, (void *)args->arg,
sizeof(sectorsize)));
break;
+ case LINUX_BLKGETSIZE64:
+ error = fo_ioctl(fp, DIOCGMEDIASIZE,
+ (caddr_t)&mediasize, td->td_ucred, td);
+ fdrop(fp, td);
+ if (error)
+ return (error);
+ blksize64 = mediasize;;
+ return (copyout(&blksize64, (void *)args->arg,
+ sizeof(blksize64)));
case LINUX_BLKSSZGET:
error = fo_ioctl(fp, DIOCGSECTORSIZE,
(caddr_t)§orsize, td->td_ucred, td);
Modified: stable/12/sys/compat/linux/linux_ioctl.h
==============================================================================
--- stable/12/sys/compat/linux/linux_ioctl.h Sun Aug 23 22:40:38 2020 (r364580)
+++ stable/12/sys/compat/linux/linux_ioctl.h Sun Aug 23 22:47:08 2020 (r364581)
@@ -57,9 +57,10 @@
#define LINUX_BLKSECTSET 0x1266
#define LINUX_BLKSECTGET 0x1267
#define LINUX_BLKSSZGET 0x1268
+#define LINUX_BLKGETSIZE64 0x1272
#define LINUX_IOCTL_DISK_MIN LINUX_BLKROSET
-#define LINUX_IOCTL_DISK_MAX LINUX_BLKSSZGET
+#define LINUX_IOCTL_DISK_MAX LINUX_BLKGETSIZE64
/*
* hdio
More information about the svn-src-stable-12
mailing list