Revision 3f71778bf90e56e5b9e4a1f8df1b5599a186e3e9 authored by Gleb Smirnoff on 15 July 2012, 19:52:23 UTC, committed by Gleb Smirnoff on 15 July 2012, 19:52:23 UTC
------------------------------------------------------------------------ r237929 | glebius | 2012-07-01 19:30:43 +0400 (вс, 01 июл 2012) | 6 lines In g_mirror_regular_request() upon successful delivery treat BIO_DELETE requests same way as BIO_WRITE removing them from queue. This fixes panic with BIO_DELETE operations on geom_mirror. Reviewed by: pjd ------------------------------------------------------------------------ r237930 | glebius | 2012-07-01 19:43:52 +0400 (вс, 01 июл 2012) | 20 lines Make geom_mirror more friendly to SSDs. To properly support TRIM, we need to pass BIO_DELETE requests down to providers that support it. Also, we need to announce our support for BIO_DELETE to upper consumer. This requires: - In g_mirror_start() return true for "GEOM::candelete" request. - In g_mirror_init_disk() probe below provider for "GEOM::candelete" attribute, and mark disk with a flag if it does support BIO_DELETE. - In g_mirror_register_request() distribute BIO_DELETE requests only to those disks, that do support it. Note that we announce "GEOM::candelete" as true unconditionally of whether we have TRIM-capable media down below or not. This is made intentionally, because upper consumer (usually UFS) requests the attribite only once at mount time. And if user ever migrates his mirror from HDDs to SSDs, then he/she would get TRIM working without remounting filesystem. Reviewed by: pjd Approved by: re (kib)
1 parent 9539623
File | Mode | Size |
---|---|---|
bin | ||
cddl | ||
contrib | ||
crypto | ||
etc | ||
games | ||
gnu | ||
include | ||
kerberos5 | ||
lib | ||
libexec | ||
release | ||
rescue | ||
sbin | ||
secure | ||
share | ||
sys | ||
tools | ||
usr.bin | ||
usr.sbin | ||
ALU-USA-statement.pdf | -rw-r--r-- | 38.0 KB |
COPYRIGHT | -rw-r--r-- | 6.0 KB |
Caldera-license.pdf | -rw-r--r-- | 12.0 KB |
LICENSE | -rw-r--r-- | 14.8 KB |
LOCKS | -rw-r--r-- | 383 bytes |
MAINTAINERS | -rw-r--r-- | 6.5 KB |
Makefile | -rw-r--r-- | 16.0 KB |
Makefile.inc1 | -rw-r--r-- | 49.2 KB |
Makefile.mips | -rw-r--r-- | 96 bytes |
ObsoleteFiles.inc | -rw-r--r-- | 237.7 KB |
README | -rw-r--r-- | 3.0 KB |
README.md | -rw-r--r-- | 16.2 KB |
UPDATING | -rw-r--r-- | 61.5 KB |
![swh spinner](/static/img/swh-spinner.gif)
Computing file changes ...