Chapter 13. WRs, WQEs, and CQEs

The Previous Chapter

The previous chapter provided a detailed description of the verbs used to create a QP, modify its operational characteristics, obtain its current operational characteristics, and destroy it. It provided a detailed description of the creation of a QP and the steps required to program it. The QP state machine was described in detail.

This Chapter

This chapter provides a detailed description of how Work Requests (WRs) are posted to a QP's SQ or RQ, as well as a detailed description of the WR content. Once a WR has been posted to a QP's SQ or RQ, it is referred to as a WQE (Work Queue Entry; pronounced as “wookie”). This chapter describes the ordering rules that govern:

  • WQE execution order.

  • WQE completion order.

  • RD RQ WQE completion order. The reason why RD RQ WQEs can complete out of order is described.

  • RDMA Read relaxed ordering rules.

When a message transfer request WQE completes execution, a Completion Queue Entry (CQE; pronounced “cookie”) is created on the respective work queue's Completion Queues (CQ). This chapter provides a detailed description of the verbs used to create a CQ, resize it, obtain its current operational characteristics, and destroy it. It also covers:

  • The completion event handler.

  • The Set Completion Event Handler verb.

  • The Poll for Completion verb.

  • The Request for Completion Notification verb.

  • The detailed content of a CQE.

  • Solicited and unsolicited events.

The Next Chapter

The next chapter defines what an asynchronous error or event is, as well as the difference between an affiliated and an unaffiliated event or error. It describes how to specify an Asynchronous Event Handler that will automatically be called whenever an asynchronous event or error is detected.

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset