From nobody Sun Jul 12 00:46:09 2026 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=quarantine dis=none) header.from=kernel.org ARC-Seal: i=1; a=rsa-sha256; t=1783624954; cv=none; d=zohomail.com; s=zohoarc; b=d7FNecvk8ggHaLADKT1FWYwnaNeYAXAT5OTBccNcZJW8HbxF93uB0dt8b3C5L8gAK09ZYNbfrJamJn+mld2wUaBQGLJjdwPKOSH8k0ghYj3ZTD5BKAGjJIXfp3dLFwtesV6JYRjXqVPmGAbwjRYus8hpOdEmX/1DARcz3RABOjY= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1783624954; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:Reply-To:Reply-To:References:Sender:Subject:Subject:To:To:Message-Id; bh=Pnd4KkVCDQfJZQaNhYr/h1148Iqba9slh15/Cv/M16c=; b=cbShgmaTh87d0msHMo8Acjv1lHw9+EM144oCClTJx+M3spLDPk3TyinTtBJEywT+YL8zrcAHFJaXXvDPr+1I5ly1cNFs5WL2hukgZTXYZF3OGALAyTA0LL8Oi9EIYChRyT0vx6cfiZz4t42Ob2Zm3BQDz+LQTznJ6xweFTx8B1g= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=quarantine dis=none) Return-Path: Received: from lists1p.gnu.org (lists1p.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1783624954323704.3973325557544; Thu, 9 Jul 2026 12:22:34 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists1p.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1whuJg-0007y1-2x; Thu, 09 Jul 2026 15:21:48 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists1p.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1whuJe-0007xa-Pg for qemu-devel@nongnu.org; Thu, 09 Jul 2026 15:21:46 -0400 Received: from tor.source.kernel.org ([172.105.4.254]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1whuJd-0000Jg-2V for qemu-devel@nongnu.org; Thu, 09 Jul 2026 15:21:46 -0400 Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58]) by tor.source.kernel.org (Postfix) with ESMTP id 75CE66137F; Thu, 9 Jul 2026 19:21:43 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPS id 2C826C2BCB9; Thu, 9 Jul 2026 19:21:43 +0000 (UTC) Received: from aws-us-west-2-korg-lkml-1.web.codeaurora.org (localhost.localdomain [127.0.0.1]) by smtp.lore.kernel.org (Postfix) with ESMTP id 1A8BBC44501; Thu, 9 Jul 2026 19:21:43 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1783624903; bh=OQ4jDpWxpVpXagJKOm774h/ds1V54ud4Jr55qb8XJvE=; h=From:Date:Subject:References:In-Reply-To:To:Cc:Reply-To:From; b=ko6cjZ1imK1md/uJBOky6Norb9+7/a2NHx4pN4Otz1/rlKqrkporWwXxDqb9Ty84V Gi5F6P0tKU8qjPrk1qW1BbYmZThpWhF5qlmZA3PKtbi7XF4KOObp1BrGLjNPmId9C8 lrCvhhJsLkZufowlnHn2FmuqFiuFTH0LDZLb1YeEGFSGxzIO471RGYzWxlz1K3g0EW KFrW64lX0Q75+zERKNSProMeUINf3aIQi6QwwxXhwdVRkE6xIYxgzol4vcEVg1zjgH 5OSoygiBKH+1FEQ7qB3km4S0Gl4XLaSkuz++bmV0dchxlKc+eCh5lYtPo6QWoYuaGb 7j7eutv7EjrwQ== From: Miao Wang via B4 Relay Date: Fri, 10 Jul 2026 03:21:39 +0800 Subject: [PATCH v3 1/2] pvscsi: translate data endianness MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20260710-pvscsi-endianness-v3-1-27fe1c4d1f6e@gmail.com> References: <20260710-pvscsi-endianness-v3-0-27fe1c4d1f6e@gmail.com> In-Reply-To: <20260710-pvscsi-endianness-v3-0-27fe1c4d1f6e@gmail.com> To: qemu-devel@nongnu.org Cc: Paolo Bonzini , Fam Zheng , Dmitry Fleytman , =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= , Peter Maydell , Michael Tokarev , Arvind Kumar , Miao Wang , b4-sent@kernel.org X-Mailer: b4 0.14.2 X-Developer-Signature: v=1; a=openpgp-sha256; l=5837; i=shankerwangmiao@gmail.com; s=20250715; h=from:subject:message-id; bh=Vtzl53Dchej3yHb9Ld8X3NJHlagwl+ff+BQxJZP/l80=; b=owEBbQKS/ZANAwAKAbAx48p7/tluAcsmYgBqT/TFiYM04DlsC4snzelijrh7wWRbXUMSXMTj/ A3K8iM+r2OJAjMEAAEKAB0WIQREqPWPgPJBxluezBOwMePKe/7ZbgUCak/0xQAKCRCwMePKe/7Z bjaPEADRbsuI+SPKF4UDPYFD4R093DotTG5Q6atYpjdHH8KQCcboV4wMogAR81nZhOkg1l5Ikvu 0x7/tEMVKohzkruQ5Fitwhf1xt82a/rLiEf8jQBjPSK7XULaFUzY5Rdbnvs9bY5wl1pxMJa2knh Ye6uu4B63tdVGJMA+JMCaCqNLBFOir8A3I0YJe86WQXGNe179hGKeXBqr9K2wGFzHF9rkSoRXXJ ALA6TgEsQCbKE62gifR9JuNwS/AYfZVdSnFWe0QYGWTNDRGs/yOGVTPKepCUX04EGO0//cM/dpS FFIWgML6og4MEJJhbnHkpYQlkG08MF5rBlET/xWcUKyLvRdd0Svi1AIFpWXr9Mw20Bbg1Ey6Sy+ cn1IcoFpcyvnUz5ynChDFX84Ah5mUNCHyNjNE0i8lODEDcfsX8zRimF+04kLloQVD8agdIvYwgo G2RWwX08B58VdnPrLmXGxy4jwSFrotcZDJherO0BJjxePYPNjPJ8w/Uw7uCFyUI6xNGDGu2cvZR YbPiYIuX3Q2aE5tAxK3fjbs0KMWEwM/Pmd2uyu4QmzEzVdYXniYmJds+lI+wTDaFYr3yey369kH YVc+ghXNQuvrShTOZ3fQoOlNJ/LmboPtz2B97HBL4TcgeaeV7emSG2O0b/nnpmgEgMy8/BGJyVF QcphNz5F4HdTdIQ== X-Developer-Key: i=shankerwangmiao@gmail.com; a=openpgp; fpr=6FAEFF06B7D212A774C60BFDFA0D166D6632EF4A X-Endpoint-Received: by B4 Relay for shankerwangmiao@gmail.com/20250715 with auth_id=462 X-Original-From: Miao Wang Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists1p.gnu.org; Received-SPF: pass client-ip=172.105.4.254; envelope-from=devnull+shankerwangmiao.gmail.com@kernel.org; helo=tor.source.kernel.org X-Spam_score_int: 0 X-Spam_score: -0.0 X-Spam_bar: / X-Spam_report: (-0.0 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FORGED_REPLYTO=2.095, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=no autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: qemu development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Reply-To: shankerwangmiao@gmail.com Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @kernel.org) X-ZM-MESSAGEID: 1783624956965158500 From: Miao Wang This patch improves the implementation of the pvscsi device by translating the endianness of the data sent or received from the guest. This ensures pvscsi can work on big-endian hosts with little-endian guests. This patch assumes, although not having found any specifications, that the pvscsi device is little-endian, since pvscsi seems to be used only on x86 platforms, which are little-endian. Reviewed-by: Philippe Mathieu-Daud=C3=A9 Signed-off-by: Miao Wang --- hw/scsi/vmw_pvscsi.c | 57 ++++++++++++++++++++++++++++++++++++++++++++++++= +++- 1 file changed, 56 insertions(+), 1 deletion(-) diff --git a/hw/scsi/vmw_pvscsi.c b/hw/scsi/vmw_pvscsi.c index 11ae6b9b7474b9bc87621137eb7911361b5fd721..687119394d3d3346935054180a9= 4a67e2b490459 100644 --- a/hw/scsi/vmw_pvscsi.c +++ b/hw/scsi/vmw_pvscsi.c @@ -392,9 +392,18 @@ static void pvscsi_cmp_ring_put(PVSCSIState *s, struct PVSCSIRingCmpDesc *cmp_desc) { hwaddr cmp_descr_pa; + PVSCSIRingCmpDesc cmp_desc_conv; =20 cmp_descr_pa =3D pvscsi_ring_pop_cmp_descr(&s->rings); trace_pvscsi_cmp_ring_put(cmp_descr_pa); + cmp_desc_conv =3D (struct PVSCSIRingCmpDesc) { + .context =3D cpu_to_le64(cmp_desc->context), + .dataLen =3D cpu_to_le64(cmp_desc->dataLen), + .senseLen =3D cpu_to_le32(cmp_desc->senseLen), + .hostStatus =3D cpu_to_le16(cmp_desc->hostStatus), + .scsiStatus =3D cpu_to_le16(cmp_desc->scsiStatus), + }; + cmp_desc =3D &cmp_desc_conv; cpu_physical_memory_write(cmp_descr_pa, cmp_desc, sizeof(*cmp_desc)); } =20 @@ -402,9 +411,18 @@ static void pvscsi_msg_ring_put(PVSCSIState *s, struct PVSCSIRingMsgDesc *msg_desc) { hwaddr msg_descr_pa; + PVSCSIRingMsgDesc msg_desc_conv; + int i; =20 msg_descr_pa =3D pvscsi_ring_pop_msg_descr(&s->rings); trace_pvscsi_msg_ring_put(msg_descr_pa); + msg_desc_conv =3D (PVSCSIRingMsgDesc) { + .type =3D cpu_to_le32(msg_desc->type), + }; + for (i =3D 0; i < ARRAY_SIZE(msg_desc->args); i++) { + msg_desc_conv.args[i] =3D cpu_to_le32(msg_desc->args[i]); + } + msg_desc =3D &msg_desc_conv; cpu_physical_memory_write(msg_descr_pa, msg_desc, sizeof(*msg_desc)); } =20 @@ -481,6 +499,9 @@ pvscsi_get_next_sg_elem(PVSCSISGState *sg) struct PVSCSISGElement elem; =20 cpu_physical_memory_read(sg->elemAddr, &elem, sizeof(elem)); + elem.addr =3D le64_to_cpu(elem.addr); + elem.length =3D le32_to_cpu(elem.length); + elem.flags =3D le32_to_cpu(elem.flags); if ((elem.flags & ~PVSCSI_KNOWN_FLAGS) !=3D 0) { /* * There is PVSCSI_SGE_FLAG_CHAIN_ELEMENT flag described in @@ -759,6 +780,12 @@ pvscsi_process_io(PVSCSIState *s) =20 trace_pvscsi_process_io(next_descr_pa); cpu_physical_memory_read(next_descr_pa, &descr, sizeof(descr)); + descr.context =3D le64_to_cpu(descr.context); + descr.dataAddr =3D le64_to_cpu(descr.dataAddr); + descr.dataLen =3D le64_to_cpu(descr.dataLen); + descr.senseAddr =3D le64_to_cpu(descr.senseAddr); + descr.senseLen =3D le32_to_cpu(descr.senseLen); + descr.flags =3D le32_to_cpu(descr.flags); pvscsi_process_request_descriptor(s, &descr); } =20 @@ -808,6 +835,17 @@ pvscsi_on_cmd_setup_rings(PVSCSIState *s) { PVSCSICmdDescSetupRings *rc =3D (PVSCSICmdDescSetupRings *) s->curr_cmd_data; + PVSCSICmdDescSetupRings translated; + int i; + + translated.reqRingNumPages =3D le32_to_cpu(rc->reqRingNumPages); + translated.cmpRingNumPages =3D le32_to_cpu(rc->cmpRingNumPages); + translated.ringsStatePPN =3D le64_to_cpu(rc->ringsStatePPN); + for (i =3D 0; i < PVSCSI_SETUP_RINGS_MAX_NUM_PAGES; i++) { + translated.reqRingPPNs[i] =3D le64_to_cpu(rc->reqRingPPNs[i]); + translated.cmpRingPPNs[i] =3D le64_to_cpu(rc->cmpRingPPNs[i]); + } + rc =3D &translated; =20 trace_pvscsi_on_cmd_arrived("PVSCSI_CMD_SETUP_RINGS"); =20 @@ -831,6 +869,11 @@ pvscsi_on_cmd_abort(PVSCSIState *s) PVSCSICmdDescAbortCmd *cmd =3D (PVSCSICmdDescAbortCmd *) s->curr_cmd_d= ata; PVSCSIRequest *r, *next; =20 + PVSCSICmdDescAbortCmd translated =3D *cmd; + translated.context =3D le32_to_cpu(cmd->context); + translated.target =3D le32_to_cpu(cmd->target); + cmd =3D &translated; + trace_pvscsi_on_cmd_abort(cmd->context, cmd->target); =20 QTAILQ_FOREACH_SAFE(r, &s->pending_queue, next, next) { @@ -862,6 +905,10 @@ pvscsi_on_cmd_reset_device(PVSCSIState *s) (struct PVSCSICmdDescResetDevice *) s->curr_cmd_data; SCSIDevice *sdev; =20 + PVSCSICmdDescResetDevice translated =3D *cmd; + translated.target =3D le32_to_cpu(cmd->target); + cmd =3D &translated; + sdev =3D pvscsi_device_find(s, 0, cmd->target, cmd->lun, &target_lun); =20 trace_pvscsi_on_cmd_reset_dev(cmd->target, (int) target_lun, sdev); @@ -892,6 +939,14 @@ pvscsi_on_cmd_setup_msg_ring(PVSCSIState *s) { PVSCSICmdDescSetupMsgRing *rc =3D (PVSCSICmdDescSetupMsgRing *) s->curr_cmd_data; + PVSCSICmdDescSetupMsgRing translated =3D *rc; + int i; + + translated.numPages =3D le32_to_cpu(rc->numPages); + for (i =3D 0; i < PVSCSI_SETUP_MSG_RING_MAX_NUM_PAGES; i++) { + translated.ringPPNs[i] =3D le64_to_cpu(rc->ringPPNs[i]); + } + rc =3D &translated; =20 trace_pvscsi_on_cmd_arrived("PVSCSI_CMD_SETUP_MSG_RING"); =20 @@ -994,7 +1049,7 @@ pvscsi_on_command_data(PVSCSIState *s, uint32_t value) size_t bytes_arrived =3D s->curr_cmd_data_cntr * sizeof(uint32_t); =20 assert(bytes_arrived < sizeof(s->curr_cmd_data)); - s->curr_cmd_data[s->curr_cmd_data_cntr++] =3D value; + s->curr_cmd_data[s->curr_cmd_data_cntr++] =3D cpu_to_le32(value); =20 pvscsi_do_command_processing(s); } --=20 2.49.0 From nobody Sun Jul 12 00:46:09 2026 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=quarantine dis=none) header.from=kernel.org ARC-Seal: i=1; a=rsa-sha256; t=1783624956; cv=none; d=zohomail.com; s=zohoarc; b=eU5HlR0a0T1kGkQqmY9AR1jt+9FdBAfUrv/qbssXyhiX2JedMQan7X6OW00JlrDJ755qQ5E5DDO0J/STc5EZdT1uNdic/pJxc8Ww/TH7lfd5KetA6vlsVhSOhgLDmq395269DMFIFEwgCzMr5v4I9KpysP/DjyjitLDXshHE+fc= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1783624956; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:Reply-To:Reply-To:References:Sender:Subject:Subject:To:To:Message-Id; bh=oBM/YWjV0Kzld7n7ziVWzCxBr9b1DOthuPXZ9Kp0sok=; b=Wuy1s/3SOCQclaIk2FKlFpRW40a3TmymBzKZI0jPMJIUPsQ3W3L+PFHEeiYdty4IhmI04S0/ctEYnBilUxeJH/Xxat2o2b1P3G7HvVs3fOBHt6jF9apPZSbtLE8KjViO1Y7NiKx1oV+DJ4RUnyRpyKODYgB1hbIYOvzr6PrgIik= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=quarantine dis=none) Return-Path: Received: from lists1p.gnu.org (lists1p.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1783624956276272.4330830402462; Thu, 9 Jul 2026 12:22:36 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists1p.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1whuJg-0007yG-Om; Thu, 09 Jul 2026 15:21:48 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists1p.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1whuJe-0007xe-VR for qemu-devel@nongnu.org; Thu, 09 Jul 2026 15:21:47 -0400 Received: from sea.source.kernel.org ([2600:3c0a:e001:78e:0:1991:8:25]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1whuJd-0000Jx-9M for qemu-devel@nongnu.org; Thu, 09 Jul 2026 15:21:46 -0400 Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58]) by sea.source.kernel.org (Postfix) with ESMTP id 59E6C4360D; Thu, 9 Jul 2026 19:21:43 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPS id 3B444C2BCC7; Thu, 9 Jul 2026 19:21:43 +0000 (UTC) Received: from aws-us-west-2-korg-lkml-1.web.codeaurora.org (localhost.localdomain [127.0.0.1]) by smtp.lore.kernel.org (Postfix) with ESMTP id 28409C44506; Thu, 9 Jul 2026 19:21:43 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1783624903; bh=d+rI6ZCwzrWvq6NTyqDlNbyPUKqlc1rQVyrkBIqG/Bw=; h=From:Date:Subject:References:In-Reply-To:To:Cc:Reply-To:From; b=PdjiSr6oYI5npLLJosDyssq66Ln8c5yiHa5BmVoCKiL7ElgwQuF8R+Q03Qe6FFm9t h7ixaTwA/j0Qy56q6HA0itPRQ4lksExnZtEvbazha6L9g9GpfterB+oQZehXlHGh+I WsXg/SBYCCOHbqhvSulHrDo13Q1tK5wg//+YMgGzy3bJXhY5N/4KsxMaUOLwGZbe8X vN04LFQAVE1erLDPneAfCmGm8tHLjtWxUCjzNihp60SB0bipXpW/uh3N9Ww9a3o8j0 xWLP9GEnBBHK7ilHfb2wu3UEyaEvf8DlL92UNX+tZM71pOeKscMBab+C3/P+4lt0V+ cK43I1F2vkmvA== From: Miao Wang via B4 Relay Date: Fri, 10 Jul 2026 03:21:40 +0800 Subject: [PATCH v3 2/2] pvscsi: add a comment to explain the endianness MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20260710-pvscsi-endianness-v3-2-27fe1c4d1f6e@gmail.com> References: <20260710-pvscsi-endianness-v3-0-27fe1c4d1f6e@gmail.com> In-Reply-To: <20260710-pvscsi-endianness-v3-0-27fe1c4d1f6e@gmail.com> To: qemu-devel@nongnu.org Cc: Paolo Bonzini , Fam Zheng , Dmitry Fleytman , =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= , Peter Maydell , Michael Tokarev , Arvind Kumar , Miao Wang , b4-sent@kernel.org X-Mailer: b4 0.14.2 X-Developer-Signature: v=1; a=openpgp-sha256; l=1559; i=shankerwangmiao@gmail.com; s=20250715; h=from:subject:message-id; bh=ilFQcJu1FqULtEwtbouLfW4e6TfQJNaWKZ3bD1ZIn78=; b=owEBbQKS/ZANAwAKAbAx48p7/tluAcsmYgBqT/TFKjL0nmPHCRwaa0V1BJ3JVJNwT/k9Zxj5+ zlhY0nfzXuJAjMEAAEKAB0WIQREqPWPgPJBxluezBOwMePKe/7ZbgUCak/0xQAKCRCwMePKe/7Z bpXEEADRXXAQvPJlLCB69LrkHODV3wVmKAHt6lMCBwtFvfcvLvfdkjC+Q6NiAfAQLOf7seQ7vhj CTfIQEH4D9VHRPAH0n4MdLxSlioFBCVi41IJ49hFPsZecwIlCmDz+sX0hr7aKtuQ6Ftk0p8cmzt 232eG58P3yBWtUlOzBU+FP4hiPIcW9oZJR2b/wdVvKhmeIfTIgWQZVBe8ihj3oWuj2rUYO1ybge oChplst5yikQhbKFWnaH/jRQxwDmgy/NwUzv2u5O8v/zoV3P/hP2NNu1+6oAsXSv6i/lMFD+vNn WaqEwiEzG769p1UyqjHg1MVRifs1egv2Xzobf65p0nIn7HO+cXspXeav8+6Q97LIHWZz8oWpz/5 JTzJ3p6CeZlpSOL+9v4rXecUymJfQPu7dWBvp3Nz9E63tsYglfu01pkkZg1D7qBcIFFT5MGx6kk LHDoNaxgN6iIKc1ut+3TqQHlmksoiz8/3uUGuS9kZe3+pObXBg+AWH/kI8m3p25ik2AItz2bayT uUKQad9O06PI9d8wg3aLzsXFG8KnJpHU0Dv1tfZHdUG2eLWGILsJxJ8CFMlZu/GGsxE5gaQB7kw vwajCcNxmrNPsOqjoYMqR/USmIw5d2snRs6CzoWIqvWqdi1Y7ccRcii43jIrwcMh5w7sS8qhRY4 EyS/Oo61gViPtlA== X-Developer-Key: i=shankerwangmiao@gmail.com; a=openpgp; fpr=6FAEFF06B7D212A774C60BFDFA0D166D6632EF4A X-Endpoint-Received: by B4 Relay for shankerwangmiao@gmail.com/20250715 with auth_id=462 X-Original-From: Miao Wang Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists1p.gnu.org; Received-SPF: pass client-ip=2600:3c0a:e001:78e:0:1991:8:25; envelope-from=devnull+shankerwangmiao.gmail.com@kernel.org; helo=sea.source.kernel.org X-Spam_score_int: 0 X-Spam_score: -0.0 X-Spam_bar: / X-Spam_report: (-0.0 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FORGED_REPLYTO=2.095, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=no autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: qemu development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Reply-To: shankerwangmiao@gmail.com Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @kernel.org) X-ZM-MESSAGEID: 1783624956898158500 From: Miao Wang Add a comment to explain the endianness of the pvscsi device. We have no information about the endianness should be little-endian or CPU native endian because the current driver code is designed to work only on x86 and is not endianness aware. We assume that the pvscsi device is implicitly little-endian. Signed-off-by: Miao Wang Reviewed-by: Philippe Mathieu-Daud=C3=A9 --- hw/scsi/vmw_pvscsi.h | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/hw/scsi/vmw_pvscsi.h b/hw/scsi/vmw_pvscsi.h index a3ae517e19934c2377cd84efe993264917ecefde..defff9e179ecbe888194e3f3154= 7ecbee801f432 100644 --- a/hw/scsi/vmw_pvscsi.h +++ b/hw/scsi/vmw_pvscsi.h @@ -108,6 +108,20 @@ enum PVSCSICommands { #define PVSCSI_COMMAND_PROCESSING_FAILED (-1) #define PVSCSI_COMMAND_NOT_ENOUGH_DATA (-2) =20 +/* + * About endianess for the below structs: + * + * These structs are used to describe the data that is exchanged between t= he + * guest and the PVSCSI device. The endianess of the fields in these struc= ts + * is not defined by any standard. The current implemented drivers are des= igned + * to only work on x86 architecture, so there is no endianess awareness in= the + * drivers and thus we have no idea whether the fields should be in little- + * endian or target native endian format. + * + * Considering the above, we assume that PVSCSI is implicitly little-endia= n and + * expect the fields in these structs to be in little-endian format. + */ + /* * Command descriptor for PVSCSI_CMD_RESET_DEVICE -- */ --=20 2.49.0