mirror of
https://git.proxmox.com/git/mirror_zfs.git
synced 2024-11-17 10:01:01 +03:00
Add SCSI_PASSTHROUGH to zvols to enable UNMAP support
When exporting ZVOLs as SCSI LUNs, by default Windows will not issue them UNMAP commands. This reduces storage efficiency in many cases. We add the SCSI_PASSTHROUGH flag to the zvol's device queue, which lets the SCSI target logic know that it can handle SCSI commands. Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov> Reviewed-by: George Melikov <mail@gmelikov.ru> Reviewed-by: John Gallagher <john.gallagher@delphix.com> Signed-off-by: Paul Dagnelie <pcd@delphix.com> Closes #8933
This commit is contained in:
parent
3976fd65d3
commit
a370182fed
@ -1876,6 +1876,10 @@ zvol_create_minor_impl(const char *name)
|
|||||||
#ifdef QUEUE_FLAG_ADD_RANDOM
|
#ifdef QUEUE_FLAG_ADD_RANDOM
|
||||||
blk_queue_flag_clear(QUEUE_FLAG_ADD_RANDOM, zv->zv_queue);
|
blk_queue_flag_clear(QUEUE_FLAG_ADD_RANDOM, zv->zv_queue);
|
||||||
#endif
|
#endif
|
||||||
|
/* This flag was introduced in kernel version 4.12. */
|
||||||
|
#ifdef QUEUE_FLAG_SCSI_PASSTHROUGH
|
||||||
|
blk_queue_flag_set(QUEUE_FLAG_SCSI_PASSTHROUGH, zv->zv_queue);
|
||||||
|
#endif
|
||||||
|
|
||||||
if (spa_writeable(dmu_objset_spa(os))) {
|
if (spa_writeable(dmu_objset_spa(os))) {
|
||||||
if (zil_replay_disable)
|
if (zil_replay_disable)
|
||||||
|
Loading…
Reference in New Issue
Block a user