Date: Thu, 19 Mar 2020 21:54:59 +0900 From: Wanpeng Qian <wanpengqian@gmail.com> To: FreeBSD virtualization <freebsd-virtualization@freebsd.org> Subject: bhyve: TRIM support in AHCI controller Message-ID: <CANBJ%2BxRW2F6U5_=p%2B_k33=1mvSfoONgNKtGF3T=2Ry%2B1fV_R=Q@mail.gmail.com>
index | next in thread | raw e-mail
Hi all
I found the output of diskinfo inside VM of AHCI disk as follow, no
TRIM support.
root@smart:~ # diskinfo -v ada0
ada0
512 # sectorsize
21474836480 # mediasize in bytes (20G)
41943040 # mediasize in sectors
131072 # stripesize
0 # stripeoffset
41610 # Cylinders according to firmware.
16 # Heads according to firmware.
63 # Sectors according to firmware.
BHYVE SATA DISK # Disk descr.
BHYVE-0B98-104F-E9A7 # Disk ident.
No # TRIM/UNMAP support
0 # Rotation rate in RPM
Not_Zoned # Zone Mode
Also camcontrol identify ada0 -v show not support of TRIM
Data Set Management (DSM/TRIM) no
I check to pci_ahci.c, TRIM support is decided by block_if.c's candelete flag.
while candelete is decided here
strlcpy(arg.name, "GEOM::candelete", sizeof(arg.name));
arg.len = sizeof(arg.value.i);
if (ioctl(fd, DIOCGATTR, &arg) == 0)
candelete = arg.value.i;
Obvious file backend will not have the candelete flag.
If the backend storage support TRIM, I think we should present TRIM
ability to VM.
Any better idea to check whether backend storage support TRIM or not,
so we can enable it.
Thanks.
home |
help
Want to link to this message? Use this
URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CANBJ%2BxRW2F6U5_=p%2B_k33=1mvSfoONgNKtGF3T=2Ry%2B1fV_R=Q>
