• Jaegeuk Kim's avatar
    f2fs: modify the number of issued pages to merge IOs · ac5d156c
    Jaegeuk Kim authored
    When testing f2fs on an SSD, I found some 128 page IOs followed by 1 page IO
    were issued by f2fs_write_node_pages.
    This means that there were some mishandling flows which degrades performance.
    
    Previous f2fs_write_node_pages determines the number of pages to be written,
    nr_to_write, as follows.
    
    1. The bio_get_nr_vecs returns 129 pages.
    2. The bio_alloc makes a room for 128 pages.
    3. The initial 128 pages go into one bio.
    4. The existing bio is submitted, and a new bio is prepared for the last 1 page.
    5. Finally, sync_node_pages submits the last 1 page bio.
    
    The problem is from the use of bio_get_nr_vecs, so this patch replace it
    with max_hw_blocks using queue_max_sectors.
    Signed-off-by: default avatarJaegeuk Kim <jaegeuk.kim@samsung.com>
    ac5d156c
segment.h 19 KB