Uploaded image for project: 'Lustre'
  1. Lustre
  2. LU-15821

Server driven blocking callbacks can wait behind general lru_size management

Details

    • 3
    • 9223372036854775807

    Description

      The current code places bl_ast lock callbacks at the end of the global BL callback queue.  This is bad because it causes urgent requests from the server to wait behind non-urgent cleanup tasks to keep lru_size at the right level.

      This can lead to evictions if there is a large queue of items in the global queue so the callback is not serviced in a timely manner.

      Put bl_ast callbacks on the priority queue so they do not wait behind the background traffic.

      Attachments

        Issue Links

          Activity

            [LU-15821] Server driven blocking callbacks can wait behind general lru_size management
            pjones Peter Jones made changes -
            Fix Version/s New: Lustre 2.15.4 [ 16190 ]
            adilger Andreas Dilger made changes -
            Link New: This issue is related to LU-16285 [ LU-16285 ]
            ys Yang Sheng made changes -
            Link New: This issue is related to DDN-3298 [ DDN-3298 ]
            adilger Andreas Dilger made changes -
            Link New: This issue is related to LU-15915 [ LU-15915 ]
            adilger Andreas Dilger made changes -
            Description Original: The current code places bl_ast lock callbacks at the end of
            the global BL callback queue.  This is bad because it
            causes urgent requests from the server to wait behind
            non-urgent cleanup tasks to keep lru_size at the right
            level.

            This can lead to evictions if there is a large queue of
            items in the global queue so the callback is not serviced
            in a timely manner.

            Put bl_ast callbacks on the priority queue so they do not
            wait behind the background traffic.
            New: The current code places bl_ast lock callbacks at the end of the global BL callback queue.  This is bad because it causes urgent requests from the server to wait behind non-urgent cleanup tasks to keep lru_size at the right level.

            This can lead to evictions if there is a large queue of items in the global queue so the callback is not serviced in a timely manner.

            Put bl_ast callbacks on the priority queue so they do not wait behind the background traffic.
            pjones Peter Jones made changes -
            Fix Version/s New: Lustre 2.16.0 [ 15190 ]
            Resolution New: Fixed [ 1 ]
            Status Original: Open [ 1 ] New: Resolved [ 5 ]
            adilger Andreas Dilger made changes -
            Link New: This issue is related to DDN-3192 [ DDN-3192 ]
            adilger Andreas Dilger made changes -
            Link New: This issue is related to LU-15822 [ LU-15822 ]
            adilger Andreas Dilger made changes -
            Link New: This issue is related to DDN-2795 [ DDN-2795 ]
            paf0186 Patrick Farrell created issue -

            People

              paf0186 Patrick Farrell
              paf0186 Patrick Farrell
              Votes:
              0 Vote for this issue
              Watchers:
              8 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: