From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from m16.mail.163.com (m16.mail.163.com [220.197.31.2]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id A37722F6197; Thu, 18 Dec 2025 09:11:41 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=220.197.31.2 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1766049104; cv=none; b=u2fV/Uy9Sg9HUpBLfPK9KF5O6xeaDwU70e1KqrzDjDdJJN+fFFzcmyZfvxlueA/5ZQmOPgpIDxW+gEr5/Fs+GbVn/syWyNQBLdosKi41uK8ribu0eeePqAxA+ztd2kOWLY8vPMxrlC58a6KiUCIR6ER6Q5HpIyB2no8S8RJxM0A= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1766049104; c=relaxed/simple; bh=C75Ez3AU3j57538kvkgoonshWO9B1C7HoPs4HY+73UE=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=lD6zXBm+4yJhHPvTdssHQD9Oc1ellQIvib/2yRodvzOb9oY30i22rR3yobTaiuK4M5aefwjllorrYfmcEMKc7joW//fJKgaXZ9m26IdPRAHrbVAVJwziUQW3htwyOKkN6nC8pTeY9joqecV9fUL8asrgov8zSRPjRwLFM66woTs= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=163.com; spf=pass smtp.mailfrom=163.com; dkim=pass (1024-bit key) header.d=163.com header.i=@163.com header.b=Bgm1fv1a; arc=none smtp.client-ip=220.197.31.2 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=163.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=163.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=163.com header.i=@163.com header.b="Bgm1fv1a" DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=163.com; s=s110527; h=From:To:Subject:Date:Message-ID:MIME-Version; bh=C7 5Ez3AU3j57538kvkgoonshWO9B1C7HoPs4HY+73UE=; b=Bgm1fv1ahf7Yz+pxJS EXYmJkd11q+my2WvVKBWfSM2aEZMVySZ2rDY1S5OlJ6yk16x8WTljUp1i2AkoDLE 3QEhbQYYAu2k3n8NqPqZ5CzYFRTMvPzqVFsr2RXnuRCsDVw7mA4elqbcllC1Q++K D+w32mqmCYY1RFsO+s88s4/tM= Received: from xwm-TianYi510Pro-14IMB.. (unknown []) by gzga-smtp-mtada-g0-4 (Coremail) with SMTP id _____wC3U84cxUNpI7dcBA--.210S9; Thu, 18 Dec 2025 17:10:59 +0800 (CST) From: Xiong Weimin <15927021679@163.com> To: "Michael S . Tsirkin" , David Hildenbrand , Jason Wang , Stefano Garzarella , Thomas Monjalon , David Marchand , Luca Boccassi , Kevin Traynor , Christian Ehrhardt , Xuan Zhuo , =?UTF-8?q?Eugenio=20P=C3=A9rez?= , Xueming Li , Maxime Coquelin , Chenbo Xia , Bruce Richardson Cc: kvm@vger.kernel.org, virtualization@lists.linux.dev, netdev@vger.kernel.org, xiongweimin Subject: [PATCH 07/10] drivers/infiniband/hw/virtio: Implement Completion Queue (CQ) polling support Date: Thu, 18 Dec 2025 17:09:47 +0800 Message-ID: <20251218091050.55047-8-15927021679@163.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20251218091050.55047-1-15927021679@163.com> References: <20251218091050.55047-1-15927021679@163.com> Precedence: bulk X-Mailing-List: netdev@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: base64 X-CM-TRANSID:_____wC3U84cxUNpI7dcBA--.210S9 X-Coremail-Antispam: 1Uf129KBjvJXoWxuF48Gr4DCw18tF4UJF4rGrg_yoWrJw1UpF 4Sg345Gr4vqF4UWaykCa1UX3y3u3Z5JrZrG34Iy347Cr15JrnrZFnYkFy5tF4rJr97C3yI qa4vqrZ5Wan09rJanT9S1TB71UUUUU7qnTZGkaVYY2UrUUUUjbIjqfuFe4nvWSU5nxnvy2 9KBjDUYxBIdaVFxhVjvjDU0xZFpf9x07jUID7UUUUU= X-CM-SenderInfo: jprvmjixqsilmxzbiqqrwthudrp/xtbC0gOkLWlDxSMFXwAA3O RnJvbTogeGlvbmd3ZWltaW4gPHhpb25nd2VpbWluQGt5bGlub3MuY24+CgpUaGlzIGNvbW1pdCBh ZGRzIENRIHBvbGxpbmcgc3VwcG9ydCB0byB0aGUgdmlydGlvIFJETUEgZHJpdmVyOgoKMS4gQ29t cGxldGlvbiBxdWV1ZSBwcm9jZXNzaW5nOgogICAtIFJldHJpZXZlcyBDUUVzIGZyb20gdmlydHF1 ZXVlIGFuZCBjb252ZXJ0cyB0byBpYl93YwogICAtIEltcGxlbWVudHMgYnVmZmVyIHJlY3ljbGlu ZyB0byBhdm9pZCBtZW1vcnkgbGVha3MKICAgLSBIYW5kbGVzIGFsbCBzdGFuZGFyZCBXQyBmaWVs ZHMgaW5jbHVkaW5nIGltbV9kYXRhIGFuZCBmbGFncwoKMi4gS2V5IG9wdGltaXphdGlvbnM6CiAg IC0gSVJRLXNhZmUgbG9ja2luZyBmb3IgdmlydHF1ZXVlIG9wZXJhdGlvbnMKICAgLSBCYXRjaCBw cm9jZXNzaW5nIHdpdGggdmlydHF1ZXVlX2tpY2sgb3B0aW1pemF0aW9uCiAgIC0gQXRvbWljIGJ1 ZmZlciByZS1hZGRpdGlvbiB0byBhdm9pZCBhbGxvY2F0aW9uIG92ZXJoZWFkCgpTaWduZWQtb2Zm LWJ5OiBYaW9uZyBXZWltaW4gPHhpb25nd2VpbWluQGt5bGlub3MuY24+Ci0tLQogLi4uL2RyaXZl cnMvaW5maW5pYmFuZC9ody92aXJ0aW8vdnJkbWFfaWIuYyAgIHwgNzcgKysrKysrKysrKysrKysr KysrLQogMSBmaWxlIGNoYW5nZWQsIDc2IGluc2VydGlvbnMoKyksIDEgZGVsZXRpb24oLSkKCmRp ZmYgLS1naXQgYS9saW51eC02LjE2LjgvZHJpdmVycy9pbmZpbmliYW5kL2h3L3ZpcnRpby92cmRt YV9pYi5jIGIvbGludXgtNi4xNi44L2RyaXZlcnMvaW5maW5pYmFuZC9ody92aXJ0aW8vdnJkbWFf aWIuYwppbmRleCAyZDlhNjEyZjMuLjcwNWQxOGI1NSAxMDA2NDQKLS0tIGEvbGludXgtNi4xNi44 L2RyaXZlcnMvaW5maW5pYmFuZC9ody92aXJ0aW8vdnJkbWFfaWIuYworKysgYi9saW51eC02LjE2 LjgvZHJpdmVycy9pbmZpbmliYW5kL2h3L3ZpcnRpby92cmRtYV9pYi5jCkBAIC0yMTQxLDYgKzIx NDEsODAgQEAgc3RhdGljIGludCB2cmRtYV9tb2RpZnlfcXAoc3RydWN0IGliX3FwICppYnFwLCBz dHJ1Y3QgaWJfcXBfYXR0ciAqYXR0ciwKIAlyZXR1cm4gcmM7CiB9CiAKKy8qKgorICogdnJkbWFf cG9sbF9jcSAtIFBvbGwgYSBjb21wbGV0aW9uIHF1ZXVlIGZvciB3b3JrIGNvbXBsZXRpb25zCisg KiBAaWJjcToJQ29tcGxldGlvbiBxdWV1ZSB0byBwb2xsCisgKiBAbnVtX2VudHJpZXM6CU1heGlt dW0gbnVtYmVyIG9mIGVudHJpZXMgdG8gcmV0dXJuCisgKiBAd2M6CQlVc2VyLXByb3ZpZGVkIGFy cmF5IG9mIHdvcmsgY29tcGxldGlvbnMKKyAqCisgKiBSZXRyaWV2ZXMgY29tcGxldGVkIENRRXMg ZnJvbSB0aGUgdmlydHF1ZXVlIGFuZCBmaWxscyBpYl93YyBzdHJ1Y3R1cmVzLgorICogRWFjaCBj b25zdW1lZCBDUUUgYnVmZmVyIGlzIHJldHVybmVkIHRvIHRoZSBiYWNrZW5kIHZpYSBpbmJ1Zi4K KyAqCisgKiBDb250ZXh0OiBQcm9jZXNzIGNvbnRleHQgKG1heSBzbGVlcCBkdXJpbmcgdmlydHF1 ZXVlIHJlZmlsbCkuCisgKiBSZXR1cm46CisgKiAqIE51bWJlciBvZiBjb21wbGV0ZWQgV0NzIGZp bGxlZCAoPj0gMCkKKyAqICogRG9lcyBub3QgcmV0dXJuIG5lZ2F0aXZlIHZhbHVlcyAocGVyIElC IHNwZWMpCisgKi8KK3N0YXRpYyBpbnQgdnJkbWFfcG9sbF9jcShzdHJ1Y3QgaWJfY3EgKmliY3Es IGludCBudW1fZW50cmllcywgc3RydWN0IGliX3djICp3YykKK3sKKwlzdHJ1Y3QgdnJkbWFfY3Eg KnZjcSA9IHRvX3ZjcShpYmNxKTsKKwlzdHJ1Y3QgdnJkbWFfY3FlICpjcWU7CisJdW5zaWduZWQg bG9uZyBmbGFnczsKKwl1bnNpZ25lZCBpbnQgbGVuOworCWludCBpID0gMDsKKwlzdHJ1Y3Qgc2Nh dHRlcmxpc3Qgc2c7CisKKwlzcGluX2xvY2tfaXJxc2F2ZSgmdmNxLT5sb2NrLCBmbGFncyk7CisK Kwl3aGlsZSAoaSA8IG51bV9lbnRyaWVzKSB7CisJCS8qIERlcXVldWUgb25lIENRRSBmcm9tIHVz ZWQgcmluZyAqLworCQljcWUgPSB2aXJ0cXVldWVfZ2V0X2J1Zih2Y3EtPnZxLT52cSwgJmxlbik7 CisJCWlmICghY3FlKSB7CisJCQlicmVhazsgLyogTm8gbW9yZSBjb21wbGV0aW9ucyBhdmFpbGFi bGUgKi8KKwkJfQorCisJCS8qIENvcHkgQ1FFIGZpZWxkcyBpbnRvIGliX3djICovCisJCXdjW2ld LndyX2lkID0gY3FlLT53cl9pZDsKKwkJd2NbaV0uc3RhdHVzID0gY3FlLT5zdGF0dXM7CisJCXdj W2ldLm9wY29kZSA9IGNxZS0+b3Bjb2RlOworCQl3Y1tpXS52ZW5kb3JfZXJyID0gY3FlLT52ZW5k b3JfZXJyOworCQl3Y1tpXS5ieXRlX2xlbiA9IGNxZS0+Ynl0ZV9sZW47CisKKwkJLyogVE9ETzog U2V0IHdjW2ldLnFwIC0gcmVxdWlyZXMgc3RvcmluZyBRUCBwb2ludGVyIGF0IHNlbmQgdGltZSAq LworCQkvLyB3Y1tpXS5xcCA9IGNvbnRhaW5lcl9vZiguLi4pOworCisJCXdjW2ldLmV4LmltbV9k YXRhID0gY3FlLT5leC5pbW1fZGF0YTsKKwkJd2NbaV0uc3JjX3FwID0gY3FlLT5zcmNfcXA7CisJ CXdjW2ldLnNsaWQgPSBjcWUtPnNsaWQ7CisJCXdjW2ldLndjX2ZsYWdzID0gY3FlLT53Y19mbGFn czsKKwkJd2NbaV0ucGtleV9pbmRleCA9IGNxZS0+cGtleV9pbmRleDsKKwkJd2NbaV0uc2wgPSBj cWUtPnNsOworCQl3Y1tpXS5kbGlkX3BhdGhfYml0cyA9IGNxZS0+ZGxpZF9wYXRoX2JpdHM7CisJ CXdjW2ldLnBvcnRfbnVtID0gY3FlLT5wb3J0X251bTsKKworCQkvKiBSZS1hZGQgdGhlIENRRSBi dWZmZXIgdG8gdGhlIGF2YWlsYWJsZSBsaXN0IGZvciByZXVzZSAqLworCQlzZ19pbml0X29uZSgm c2csIGNxZSwgc2l6ZW9mKCpjcWUpKTsKKwkJaWYgKHZpcnRxdWV1ZV9hZGRfaW5idWYodmNxLT52 cS0+dnEsICZzZywgMSwgY3FlLCBHRlBfQVRPTUlDKSAhPSAwKSB7CisJCQlkZXZfd2FybigmdmNx LT52cS0+dnEtPnZkZXYtPmRldiwKKwkJCQkgIkZhaWxlZCB0byByZS1hZGQgQ1FFIGJ1ZmZlciB0 byB2cSAlcFxuIiwgdmNxLT52cS0+dnEpOworCQkJLyogTGVhayB0aGlzIGJ1ZmZlcj8gQmV0dGVy IHRvIHdhcm4gdGhhbiBjcmFzaCAqLworCQl9CisKKwkJaSsrOworCX0KKworCS8qCisJICogS2lj ayB0aGUgdmlydHF1ZXVlIGlmIG5lZWRlZCBzbyBob3N0IGNhbiBzZWUgcmV0dXJuZWQgYnVmZmVy cy4KKwkgKiBUaGlzIGVuc3VyZXMgYmFja2VuZCBrbm93cyB3aGljaCBDUUUgc2xvdHMgYXJlIGZy ZWUuCisJICovCisJaWYgKGkgPiAwKQorCQl2aXJ0cXVldWVfa2ljayh2Y3EtPnZxLT52cSk7CisK KwlzcGluX3VubG9ja19pcnFyZXN0b3JlKCZ2Y3EtPmxvY2ssIGZsYWdzKTsKKworCXJldHVybiBp OyAvKiBSZXR1cm4gbnVtYmVyIG9mIHBvbGxlZCBjb21wbGV0aW9ucyAqLworfQorCiBzdGF0aWMg Y29uc3Qgc3RydWN0IGliX2RldmljZV9vcHMgdnJkbWFfZGV2X29wcyA9IHsKIAkub3duZXIgPSBU SElTX01PRFVMRSwKIAkudXZlcmJzX2FiaV92ZXIgPSBWSVJUSU9fUkRNQV9BQklfVkVSU0lPTiwK QEAgLTIxNzEsNyArMjI0NSw4IEBAIHN0YXRpYyBjb25zdCBzdHJ1Y3QgaWJfZGV2aWNlX29wcyB2 cmRtYV9kZXZfb3BzID0gewogCS5tbWFwID0gdnJkbWFfbW1hcCwKIAkubW1hcF9mcmVlID0gdnJk bWFfbW1hcF9mcmVlLAogCS5tb2RpZnlfcG9ydCA9IHZyZG1hX21vZGlmeV9wb3J0LAotCS5tb2Rp ZnlfcXAgPSB2cmRtYV9tb2RpZnlfcXAsCQkJCisJLm1vZGlmeV9xcCA9IHZyZG1hX21vZGlmeV9x cCwKKwkucG9sbF9jcSA9IHZyZG1hX3BvbGxfY3EsCQkJCiB9OwogCiAvKioKLS0gCjIuNDMuMAoK