checkpoint is triggered, and issued during the checkpoint.
                By default, it is disabled with 0.
 
+What:          /sys/fs/f2fs/<disk>/max_discard_request
+Date:          December 2021
+Contact:       "Konstantin Vyshetsky" <vkon@google.com>
+Description:   Controls the number of discards a thread will issue at a time.
+               Higher number will allow the discard thread to finish its work
+               faster, at the cost of higher latency for incomming I/O.
+
+What:          /sys/fs/f2fs/<disk>/min_discard_issue_time
+Date:          December 2021
+Contact:       "Konstantin Vyshetsky" <vkon@google.com>
+Description:   Controls the interval the discard thread will wait between
+               issuing discard requests when there are discards to be issued and
+               no I/O aware interruptions occur.
+
+What:          /sys/fs/f2fs/<disk>/mid_discard_issue_time
+Date:          December 2021
+Contact:       "Konstantin Vyshetsky" <vkon@google.com>
+Description:   Controls the interval the discard thread will wait between
+               issuing discard requests when there are discards to be issued and
+               an I/O aware interruption occurs.
+
+What:          /sys/fs/f2fs/<disk>/max_discard_issue_time
+Date:          December 2021
+Contact:       "Konstantin Vyshetsky" <vkon@google.com>
+Description:   Controls the interval the discard thread will wait when there are
+               no discard operations to be issued.
+
 What:          /sys/fs/f2fs/<disk>/discard_granularity
 Date:          July 2017
 Contact:       "Chao Yu" <yuchao0@huawei.com>
 
 F2FS_RW_ATTR(F2FS_SBI, f2fs_sb_info, gc_urgent, gc_mode);
 F2FS_RW_ATTR(SM_INFO, f2fs_sm_info, reclaim_segments, rec_prefree_segments);
 F2FS_RW_ATTR(DCC_INFO, discard_cmd_control, max_small_discards, max_discards);
+F2FS_RW_ATTR(DCC_INFO, discard_cmd_control, max_discard_request, max_discard_request);
+F2FS_RW_ATTR(DCC_INFO, discard_cmd_control, min_discard_issue_time, min_discard_issue_time);
+F2FS_RW_ATTR(DCC_INFO, discard_cmd_control, mid_discard_issue_time, mid_discard_issue_time);
+F2FS_RW_ATTR(DCC_INFO, discard_cmd_control, max_discard_issue_time, max_discard_issue_time);
 F2FS_RW_ATTR(DCC_INFO, discard_cmd_control, discard_granularity, discard_granularity);
 F2FS_RW_ATTR(RESERVED_BLOCKS, f2fs_sb_info, reserved_blocks, reserved_blocks);
 F2FS_RW_ATTR(SM_INFO, f2fs_sm_info, batched_trim_sections, trim_sections);
        ATTR_LIST(reclaim_segments),
        ATTR_LIST(main_blkaddr),
        ATTR_LIST(max_small_discards),
+       ATTR_LIST(max_discard_request),
+       ATTR_LIST(min_discard_issue_time),
+       ATTR_LIST(mid_discard_issue_time),
+       ATTR_LIST(max_discard_issue_time),
        ATTR_LIST(discard_granularity),
        ATTR_LIST(pending_discard),
        ATTR_LIST(batched_trim_sections),