最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

QEMU Devices

2023-04-09 17:05 作者:-小白之家-  | 我要投稿

megasas 向 HBA 添加兩個 SCSI LUN 來模擬megasas -device megasas,id=scsi0 \ -device scsi-hd,drive=drive0,bus=scsi0.0,channel=0,scsi-id=0,lun=0 \ -drive file=disk1.qcow2,if=none,id=drive0 \ -device scsi-hd,drive=drive1,bus=scsi0.0,channel=0,scsi-id=1,lun=0 \ -drive file=disk2.qcow2,if=none,id=drive1 SCSI 總線拓?fù)?,有兩個 SCSI 適配器(每個適配器都有一個 SCSI LUN)通過同一 SCSI 通道連接到 HBA。 從虛擬機(jī)提取的系統(tǒng)日志輸出驗證內(nèi)核掃描的 SCSI 總線拓?fù)涫欠衽c QEMU 的配置匹配。唯一的例外是 QEMU 指定通道 ID 為 1,而內(nèi)核分配的通道 ID 為 2。磁盤 disk1.qcow2 和 disk2.qcow2 分別映射到 '2:2:0:0' 和 '2:2:1:0'。 [ 2.439170] scsi host2: Avago SAS based MegaRAID driver [ 2.445926] scsi 2:2:0:0: Direct-Access QEMU QEMU HARDDISK 2.5+ PQ: 0 ANSI: 5 [ 2.446098] scsi 2:2:1:0: Direct-Access QEMU QEMU HARDDISK 2.5+ PQ: 0 ANSI: 5 [ 2.463466] sd 2:2:0:0: Attached scsi generic sg1 type 0 [ 2.467891] sd 2:2:1:0: Attached scsi generic sg2 type 0 [ 2.478002] sd 2:2:0:0: [sdb] Attached SCSI disk [ 2.485895] sd 2:2:1:0: [sdc] Attached SCSI disk lsi53c895a 向 HBA 添加兩個 SCSI LUN 來模擬 lsi53c895a。 -device lsi53c895a,id=scsi0 \ -device scsi-hd,drive=drive0,bus=scsi0.0,channel=0,scsi-id=0,lun=0 \ -drive file=disk1.qcow2,if=none,id=drive0 \ -device scsi-hd,drive=drive1,bus=scsi0.0,channel=0,scsi-id=1,lun=0 \ -drive file=disk2.qcow2,if=none,id=drive1 SCSI 總線拓?fù)?,有兩個 SCSI 適配器(每個適配器都有一個 SCSI LUN)通過同一 SCSI 通道連接到 HBA。 與 megasas 一樣,虛擬機(jī)的系統(tǒng)日志輸出顯示內(nèi)核掃描的 SCSI 總線拓?fù)渑c使用 QEMU 配置的拓?fù)湎嗥ヅ?。磁盤 disk1.qcow2 和 disk2.qcow2 分別映射到 '2:0:0:0' 和 '2:0:1:0'。 [ 2.443221] scsi host2: sym-2.2.3 [ 5.534188] scsi 2:0:0:0: Direct-Access QEMU QEMU HARDDISK 2.5+ PQ: 0 ANSI: 5 [ 5.544931] scsi 2:0:1:0: Direct-Access QEMU QEMU HARDDISK 2.5+ PQ: 0 ANSI: 5 [ 5.558896] sd 2:0:0:0: Attached scsi generic sg1 type 0 [ 5.559889] sd 2:0:1:0: Attached scsi generic sg2 type 0 [ 5.574487] sd 2:0:0:0: [sdb] Attached SCSI disk [ 5.579512] sd 2:0:1:0: [sdc] Attached SCSI disk virtio-scsi 本節(jié)演示了半虛擬化虛擬 virtio-scsi 的用法。virtio-scsi 設(shè)備提供了非常好的“多隊列”支持。因此,它可用于研究或調(diào)試SCSI和塊層的“多隊列”功能。下面的示例創(chuàng)建一個具有兩個 LUN(它們都屬于同一 SCSI 目標(biāo))的 4 隊列虛擬 SCSI HBA。 -device virtio-scsi-pci,id=scsi0,num_queues=4 \ -device scsi-hd,drive=drive0,bus=scsi0.0,channel=0,scsi-id=0,lun=0 \ -drive file=disk1.qcow2,if=none,id=drive0 \ -device scsi-hd,drive=drive1,bus=scsi0.0,channel=0,scsi-id=0,lun=1 \ -drive file=disk2.qcow2,if=none,id=drive1 SCSI 總線拓?fù)?,該拓?fù)渚哂幸粋€帶有兩個 LUN 的 SCSI 適配器。 與前面的示例一樣,從虛擬機(jī)中提取的系統(tǒng)日志驗證內(nèi)核掃描的 SCSI 總線拓?fù)涫欠衽c QEMU 的配置匹配。在此方案中,磁盤 disk1.qcow2 和 disk2.qcow2 分別映射到“2:0:0:0”和“2:0:0:1”。 [ 1.212182] scsi host2: Virtio SCSI HBA [ 1.213616] scsi 2:0:0:0: Direct-Access QEMU QEMU HARDDISK 2.5+ PQ: 0 ANSI: 5 [ 1.213851] scsi 2:0:0:1: Direct-Access QEMU QEMU HARDDISK 2.5+ PQ: 0 ANSI: 5 [ 1.371305] sd 2:0:0:0: [sdb] Attached SCSI disk [ 1.372284] sd 2:0:0:1: [sdc] Attached SCSI disk [ 2.400542] sd 2:0:0:0: Attached scsi generic sg0 type 0 [ 2.403724] sd 2:0:0:1: Attached scsi generic sg1 type 0 以下從虛擬機(jī)中提取的信息確認(rèn)虛擬 SCSI HBA 有 4 個 I/O 隊列。每個 I/O 隊列都有一個 virtio0 請求中斷。 # ls /sys/block/sdb/mq/ 0 1 2 3 # ls /sys/block/sdc/mq/ 0 1 2 3 24: 0 0 0 0 PCI-MSI 65536-edge virtio0-config 25: 0 0 0 0 PCI-MSI 65537-edge virtio0-control 26: 0 0 0 0 PCI-MSI 65538-edge virtio0-event 27: 30 0 0 0 PCI-MSI 65539-edge virtio0-request 28: 0 140 0 0 PCI-MSI 65540-edge virtio0-request 29: 0 0 34 0 PCI-MSI 65541-edge virtio0-request 30: 0 0 0 276 PCI-MSI 65542-edge virtio0-request virtio-blk 半虛擬化虛擬 virtio-blk 設(shè)備。此示例顯示了具有 4 個 I/O 隊列的 virtio-blk,后端設(shè)備為 disk.qcow2 -device virtio-blk-pci,drive=drive0,id=virtblk0,num-queues=4 \ -drive file=disk.qcow2,if=none,id=drive0 以下從虛擬機(jī)中提取的信息確認(rèn)虛擬 blk 設(shè)備有 4 個 I/O 隊列。每個 I/O 隊列都有一個 virtio0-req。X 中斷。 # ls /sys/block/vda/mq/ 0 1 2 3 24: 0 0 0 0 PCI-MSI 65536-edge virtio0-config 25: 3 0 0 0 PCI-MSI 65537-edge virtio0-req.0 26: 0 31 0 0 PCI-MSI 65538-edge virtio0-req.1 27: 0 0 33 0 PCI-MSI 65539-edge virtio0-req.2 28: 0 0 0 0 PCI-MSI 65540-edge virtio0-req.3 sata -drive file=disk.qcow2,if=none,id=sata \ -device ich9-ahci,id=ahci \ -device ide-drive,drive=sata,bus=ahci.0 \ [ 1.518092] ata1: SATA link up 1.5 Gbps (SStatus 113 SControl 300) [ 1.371305] sd 2:0:0:0: [sdb] Attached SCSI disk [ 2.400542] sd 2:0:0:0: Attached scsi generic sg0 type 0 nvme 模擬 NVMe。此示例顯示具有 8 個硬件隊列的 NVMe 設(shè)備。由于虛擬機(jī)有 4 個 vcpu,因此只會使用 4 個硬件隊列。后端 NVMe 設(shè)備是 disk.qcow2 -device nvme,drive=nvme0,serial=deadbeaf1,num_queues=8 \ -drive file=disk.qcow2,if=none,id=nvme0 從虛擬機(jī)中提取的系統(tǒng)日志可確保 Linux 內(nèi)核成功檢測到 NVMe 設(shè)備。 [ 1.181405] nvme nvme0: pci function 0000:00:04.0 [ 1.212434] nvme nvme0: 4/0/0 default/read/poll queues 以下從虛擬機(jī)獲取的信息確認(rèn),除了管理隊列外,NVMe 設(shè)備還有 4 個 I/O 隊列。每個隊列都有一個 nvme0qX 中斷。 24: 0 11 0 0 PCI-MSI 65536-edge nvme0q0 25: 40 0 0 0 PCI-MSI 65537-edge nvme0q1 26: 0 41 0 0 PCI-MSI 65538-edge nvme0q2 27: 0 0 0 0 PCI-MSI 65539-edge nvme0q3 28: 0 0 0 4 PCI-MSI 65540-edge nvme0q4 QEMU 中的 NVMe 還支持“cmb_size_mb”,用于配置可用作控制器內(nèi)存緩沖區(qū) (CMB) 的內(nèi)存量。此外,上游開發(fā)不斷向 QEMU 的 NVMe 仿真添加更多功能,例如多個命名空間。 nvdimm 向虛擬機(jī)添加一個 6GB NVDIMM 來模擬 NVDIMM。 -machine pc,nvdimm \ -m 2G,maxmem=10G,slots=4 \ -object memory-backend-file,share,id=md1,mem-path=nvdimm.img,size=6G \ -device nvdimm,memdev=md1,id=nvdimm1 從虛擬機(jī)中提取的以下信息表明 NVDIMM 設(shè)備導(dǎo)出為塊設(shè)備 /dev/pmem0。 # dmesg | grep NVDIMM [ 0.020285] ACPI: SSDT 0x000000007FFDFD85 0002CD (v01 BOCHS NVDIMM 00000001 BXPC 00000001) # ndctl list [ { "dev":"namespace0.0", "mode":"raw", "size":6442450944, "sector_size":512, "blockdev":"pmem0" } ] # lsblk | grep pmem pmem0 259:0 0 6G 0 disk NVDIMM 功能和配置非常復(fù)雜,QEMU 不斷添加額外的支持。有關(guān) QEMU 的更多 NVDIMM 用法,請參閱 QEMU NVDIMM 文檔,網(wǎng)址為 https://docs.pmem.io Power Management 使用 QEMU 來模擬電源管理,例如凍結(jié)/恢復(fù)。雖然這不僅限于塊設(shè)備,但我們將演示如何使用 NVMe 設(shè)備。這有助于了解塊設(shè)備驅(qū)動程序如何與電源管理配合使用。 第一步是使用 NVMe 設(shè)備引導(dǎo)虛擬機(jī)。與前面的 NVMe 示例的唯一區(qū)別是使用“-monitor stdio”而不是“-serial stdio”來促進(jìn)通過 shell 與 QEMU 的交互。 -device nvme,drive=nvme0,serial=deadbeaf1,num_queues=8 \ -drive file=disk.qcow2,if=none,id=nvme0 要掛起操作系統(tǒng),請在虛擬機(jī)中運(yùn)行以下命令: # echo freeze > /sys/power/state 這將具有凍結(jié)虛擬機(jī)的效果。要恢復(fù),請從 QEMU 外殼運(yùn)行以下命令: (qemu) system_powerdown 以下虛擬機(jī)系統(tǒng)日志摘錄演示了 Linux 內(nèi)核在凍結(jié)/恢復(fù)周期中的行為。 [ 26.945439] PM: suspend entry (s2idle) [ 26.951256] Filesystems sync: 0.005 seconds [ 26.951922] Freezing user space processes ... (elapsed 0.000 seconds) done. [ 26.953489] OOM killer disabled. [ 26.953942] Freezing remaining freezable tasks ... (elapsed 0.000 seconds) done. [ 26.955631] printk: Suspending console(s) (use no_console_suspend to debug) [ 26.962704] sd 0:0:0:0: [sda] Synchronizing SCSI cache [ 26.962972] sd 0:0:0:0: [sda] Stopping disk [ 54.674206] sd 0:0:0:0: [sda] Starting disk [ 54.678859] nvme nvme0: 4/0/0 default/read/poll queues [ 54.707283] OOM killer enabled. [ 54.707710] Restarting tasks ... done. [ 54.708596] PM: suspend exit [ 54.834191] ata2.01: NODEV after polling detection [ 54.834379] ata1.01: NODEV after polling detection [ 56.770115] e1000: ens3 NIC Link is Up 1000 Mbps Full Duplex, Flow Control: RX 此方法可用于重現(xiàn)和分析與 NVMe 和電源管理相關(guān)的錯誤,例如 http://lists.infradead.org/pipermail/linux-nvme/2019-April/023237.html

QEMU Devices的評論 (共 條)

分享到微博請遵守國家法律
邵阳市| 曲水县| 华宁县| 吉木乃县| 仁寿县| 固原市| 平遥县| 天峻县| 谷城县| 社会| 湘乡市| 方山县| 绥江县| 游戏| 天峨县| 阳西县| 紫阳县| 安平县| 朝阳区| 永靖县| 五台县| 建湖县| 原平市| 成安县| 曲周县| 阜城县| 郯城县| 浙江省| 海晏县| 凤台县| 金川县| 青浦区| 清新县| 双城市| 阿城市| 平利县| 河东区| 环江| 枣庄市| 武威市| 务川|