最新記事

ソフトウェアGUIを使用して物理USB HIDジョイスティック入力をエミュレートします。
linux
linux-kernel
usb
gui
joystick

ソフトウェアGUIを使用して物理USB HIDジョイスティック入力をエミュレートします。

物理USB HIDジョイスティックコントローラから入力を受け取るプログラムがあります。このコントローラを置き換えるソフトウェアGUIを作成し、同じ方法で動作させたいのですが(すべての入力はUSB接続を介して同じ方法で送信されます)。ところで、その部分をどのように処理すべきか難しいですね。 Linuxで物理的なジョイスティックと同じように見えるように、ソフトウェアGUIの入力をどこに書き込む必要がありますか?

Admin

MMUは変換する必要があるアドレスをどのように見つけますか?
linux-kernel
virtual-memory
intel

MMUは変換する必要があるアドレスをどのように見つけますか?

特定のアドレスから一部のデータを読み書きする場合は、ディレクトリの最初のページがどこに保存されているか、変換するアドレスを知っておく必要があります。 最初のページディレクトリ(私が知っている限り、Linuxは4レベルのページングを使用するため、最初のディレクトリはPGD)であり、Intelの場合、CR3レジスタにはPGDのアドレスが含まれますが、仮想アドレスはどこに保存されますか? MMUはこのアドレスまたはそのアドレスを正確に翻訳する必要があることをどのように理解していますか? UPD:私は私の質問を明確にし、私の意見についていくつかの詳細を提供する必要があると思いました。 私が理解しているように、いくつかの仮想アドレスを変換するには、次の手順を実行する必要があります。 TLBを確認してください。 TLBに達すると物理アドレス(PA)があります。 そうでなければ、私たちが扱うべきこと翻訳エラー 翻訳エラーが発生している間、私たちはそれを経なければなりません。ソフトウェアページテーブルPAを見つけてください。 ここではカーネルモードに切り替える必要があります。(しかし、一般にカーネルページテーブルとユーザーページテーブルは同じであり、違いは権限にのみあることを知っていますが、カーネルモードに切り替えない方法はありますか?) だから私たちは設定する必要がありますCR3PGD​​アドレス(または他のトップページディレクトリ)に登録してください。 さて、このテーブルを繰り返すのは私たちの使命ですか?ソフトウェアが自分でこれを行う必要がある場合は、一部のvarの仮想アドレス(VA)を知ってページテーブルからPAを検索できますか? ? ?あるいは、MMU(または同様のもの)で動作し、これらのテーブルを繰り返します。 CR3の場合、PGDがどこにあるかを知っていますが、変換されるアドレスをどのように理解できますか?それはどのレジスタにありますか、それともどこかにメモリにロードされていますか? 時間をいただきありがとうございます!

Admin

自己署名カーネル 15.16.10 が起動しなくなった: モジュールの欠落、ファームウェアのアップデート
linux-mint
linux-kernel
firmware

自己署名カーネル 15.16.10 が起動しなくなった: モジュールの欠落、ファームウェアのアップデート

5.16カーネルを試してみたいです。いくつかの指示に従って直接署名しました。数日間はうまくいき、再起動でき、何度も再起動しました。その後、今日luksボリュームのパスワードを入力する必要があるステップ(ディスク全体の暗号化を使用)に達し、そこで緊張cryptsetup: Waiting for encrypted source device UUID=[snip]しなくなりました。 5.15ただ再起動してみてください。エラーを検索した後に実行できることがわかりましたが、sudo update-initramfs -u -k allここに問題があります。次の結果が表示されます。 update-initramfs: Generating /boot/initrd.img-5.16.11-051611-generic.signed W: missing /lib/modules/5.16.11-051611-generic.signed W: Ensure all necessary drivers are built into the linux image! depmod: ERROR: could not open directory /lib/modules/5.16.11-051611-generic.signed: No such file or directory depmod: FATAL: could not search modules: No such file or directory cat: /var/tmp/mkinitramfs_vSN8Oe/lib/modules/5.16.11-051611-generic.signed/modules.builtin: No such file or directory I: The initramfs will attempt to resume from /dev/dm-1 I: (/dev/mapper/mint--vg-swap1) I: Set the RESUME variable to override this. depmod: WARNING: could not open modules.order at /var/tmp/mkinitramfs_vSN8Oe/lib/modules/5.16.11-051611-generic.signed: No such file or directory depmod: WARNING: could not open modules.builtin at /var/tmp/mkinitramfs_vSN8Oe/lib/modules/5.16.11-051611-generic.signed: No such file or directory update-initramfs: Generating /boot/initrd.img-5.15.0-18-generic [..snip.. no errors on the other kernels..] この問題をどのように解決できますか?アップデート履歴を見ると、最後にPCをシャットダウンする前にLinuxファームウェアをアップデートしたようです。1.187.26->1.187.27 違いLinux Mint 20.3があればね。

Admin

5.4 以上のカーネルを使用する Debian
linux
debian
linux-kernel

5.4 以上のカーネルを使用する Debian

私の新しいノートブック(Radeonグラフィックカードを含むDell g5 5505 s Amd ryzen 5)は、古いカーネルを含むLinuxオペレーティングシステムをサポートしていません。最新のカーネルを含むDebianをダウンロードする方法と場所は何ですか?私のラップトップにはゲームキーがありますが、Ubuntu Liveでは動作しません。どのように機能させますか?

Admin

間違い! WSL2にusb_network_gateをインストールしようとすると、カーネル5.8.0-rc3-microsoft-standardのカーネルヘッダが見つかりませんでした。
kernel
linux-kernel
kernel-modules
windows-subsystem-for-linux

間違い! WSL2にusb_network_gateをインストールしようとすると、カーネル5.8.0-rc3-microsoft-standardのカーネルヘッダが見つかりませんでした。

WSL2のubuntu 20.04にUSBネットワークゲートをインストールし、次のカーネルバージョンをインストールしようとしています。 root@DESKTOP-N9UN2H3:~/Desktop# uname -a Linux DESKTOP-N9UN2H3 5.8.0-rc3-microsoft-standard #2 SMP Tue Jun 30 14:38:02 CEST 2020 x86_64 x86_64 x86_64 GNU/Linux 残念ながら、修正方法がわからないエラーで終わります。 間違い!カーネル 5.8.0-rc3-microsoft-standard のカーネルヘッダファイルが見つかりません root@DESKTOP-N9UN2H3:~/Desktop# dpkg -i usb_network_gate_x64.deb (Reading database ... 352800 files and directories currently installed.) Preparing to unpack usb_network_gate_x64.deb ... Unpacking eveusb (9.1.0) ... dpkg: dependency problems prevent configuration of eveusb: eveusb depends on libqt4-dbus (>= 4.8.1); however: Package libqt4-dbus is not installed. eveusb depends on libqt4-svg (>= 4.8.1); however: Package libqt4-svg is not installed. dpkg: error processing package eveusb (--install): dependency problems - leaving unconfigured Processing triggers for systemd (245.4-4ubuntu3.2) ... Errors were encountered while processing: eveusb root@DESKTOP-N9UN2H3:~/Desktop# apt install libqt4-dbus Reading package lists... Done Building dependency tree Reading state information... Done You might want to run 'apt --fix-broken install' to correct these. The following packages have unmet dependencies: eveusb : Depends: libqt4-svg (>= 4.8.1) but it is not going to be installed libqt4-dbus : Depends: qdbus (= 5:4.8.7+dfsg-7ubuntu4rock7) but it is not going to be installed E: Unmet dependencies. Try 'apt --fix-broken install' with no packages (or specify a solution). root@DESKTOP-N9UN2H3:~/Desktop# apt --fix-broken install Reading package lists... Done Building dependency tree Reading state information... Done Correcting dependencies... Done The following packages were automatically installed and are no longer required: libfprint-2-tod1 libjpeg62 libllvm9:i386 libtirpc-common libtirpc3 linux-headers-5.4.0-39 linux-headers-5.4.0-39-generic linux-image-5.4.0-39-generic linux-modules-5.4.0-39-generic linux-modules-extra-5.4.0-39-generic Use 'apt autoremove' to remove them. The following additional packages will be installed: libqt4-dbus libqt4-svg qdbus The following NEW packages will be installed: libqt4-dbus libqt4-svg qdbus 0 upgraded, 3 newly installed, 0 to remove and 0 not upgraded. 1 not fully installed or removed. Need to get 387 kB of archives. After this operation, 947 kB of additional disk space will be used. Do you want to continue? [Y/n] y Get:1 http://ppa.launchpad.net/rock-core/qt4/ubuntu focal/main amd64 qdbus amd64 5:4.8.7+dfsg-7ubuntu4rock7 [99.9 kB] Get:2 http://ppa.launchpad.net/rock-core/qt4/ubuntu focal/main amd64 libqt4-dbus amd64 5:4.8.7+dfsg-7ubuntu4rock7 [76.0 kB] Get:3 http://ppa.launchpad.net/rock-core/qt4/ubuntu focal/main amd64 libqt4-svg amd64 5:4.8.7+dfsg-7ubuntu4rock7 [211 kB] Fetched 387 kB in 1s (502 kB/s) Selecting previously unselected package qdbus. (Reading database ... 352926 files and directories currently installed.) Preparing to unpack .../qdbus_5%3a4.8.7+dfsg-7ubuntu4rock7_amd64.deb ... Unpacking qdbus (5:4.8.7+dfsg-7ubuntu4rock7) ... Selecting previously unselected package libqt4-dbus:amd64. Preparing to unpack .../libqt4-dbus_5%3a4.8.7+dfsg-7ubuntu4rock7_amd64.deb ... Unpacking libqt4-dbus:amd64 (5:4.8.7+dfsg-7ubuntu4rock7) ... Selecting previously unselected package libqt4-svg:amd64. Preparing to unpack .../libqt4-svg_5%3a4.8.7+dfsg-7ubuntu4rock7_amd64.deb ... Unpacking libqt4-svg:amd64 (5:4.8.7+dfsg-7ubuntu4rock7) ... Setting up libqt4-svg:amd64 (5:4.8.7+dfsg-7ubuntu4rock7) ... Setting up qdbus (5:4.8.7+dfsg-7ubuntu4rock7) ... Setting up libqt4-dbus:amd64 (5:4.8.7+dfsg-7ubuntu4rock7) ... Setting up eveusb (9.1.0) ... /var/lib/dpkg/info/eveusb.postinst configure Unable to identify user running this installation. Please add users manually to the 'eveusb' group so they can control the daemon u sing GUI and console utilities. Examples: gpasswd -a eveusb groupmod --add-user eveusb # SUSE usermod --append --groups eveusb usermod --add-to-group eveusb # SUSE Synchronizing state of eveusb.service with SysV service script with /lib/systemd /systemd-sysv-install. Executing: /lib/systemd/systemd-sysv-install disable eveusb Creating symlink /var/lib/dkms/eveusb/1.0.0/source -> /usr/src/eveusb-1.0.0 DKMS: add completed. Error! Your kernel headers for kernel 5.8.0-rc3-microsoft-standard cannot be fou nd. Please install the linux-headers-5.8.0-rc3-microsoft-standard package, or use the --kernelsourcedir option to tell DKMS where it's located Traceback (most recent call last): File "/var/lib/dpkg/info/eveusb.postinst", line 549, in make_all() File "/var/lib/dpkg/info/eveusb.postinst", line 528, in make_all process_module(True) File "/var/lib/dpkg/info/eveusb.postinst", line 268, in process_module check_call([dkms, action] + mod_ver) File "/var/lib/dpkg/info/eveusb.postinst", line 30, in check_call subprocess.check_call(cmd) File "/usr/lib/python2.7/subprocess.py", line 190, in check_call raise CalledProcessError(retcode, cmd) subprocess.CalledProcessError: Command '['dkms', 'build', '-m', 'eveusb', '-v', '1.0.0']' returned non-zero exit status 1 dpkg: error processing package eveusb (--configure): installed eveusb package post-installation script subprocess returned error exi t status 1 /bin/df: /proc/sys/fs/binfmt_misc: Too many levels of symbolic links Processing t riggers for man-db (2.9.1-1) ... Processing triggers for libc-bin (2.31-0ubuntu9) ... /sbin/ldconfig.real: /usr/lib/wsl/lib/libcuda.so.1 is not a symbolic link Processing triggers for systemd (245.4-4ubuntu3.2) ... Errors were encountered while processing: eveusb E: Sub-process /usr/bin/dpkg returned an error code (1) root@DESKTOP-N9UN2H3:~/Desktop# dpkg -i usb_network_gate_x64.deb (Reading database ... 352951 files and directories currently installed.) Preparing to unpack usb_network_gate_x64.deb ... /var/lib/dpkg/info/eveusb.prerm upgrade 9.1.0 Synchronizing state of eveusb.service with SysV service script with /lib/systemd/systemd-sysv-install. Executing: /lib/systemd/systemd-sysv-install disable eveusb Deleting module version: 1.0.0 completely from the DKMS tree. Done. groupdel: group 'eveusb' does not exist Unpacking eveusb (9.1.0) over (9.1.0) ... /var/lib/dpkg/info/eveusb.postrm upgrade 9.1.0 Setting up eveusb (9.1.0) ... /var/lib/dpkg/info/eveusb.postinst configure Unable to identify user running this installation. Please add users manually to the 'eveusb' group so they can control the daemon using GUI and console utilities. Examples: gpasswd -a eveusb groupmod --add-user eveusb # SUSE usermod --append --groups eveusb usermod --add-to-group eveusb # SUSE Synchronizing state of eveusb.service with SysV service script with /lib/systemd/systemd-sysv-install. Executing: /lib/systemd/systemd-sysv-install disable eveusb Creating symlink /var/lib/dkms/eveusb/1.0.0/source -> /usr/src/eveusb-1.0.0 DKMS: add completed. Error! Your kernel headers for kernel 5.8.0-rc3-microsoft-standard cannot be found. Please install the linux-headers-5.8.0-rc3-microsoft-standard package, or use the --kernelsourcedir option to tell DKMS where it's located Traceback (most recent call last): File "/var/lib/dpkg/info/eveusb.postinst", line 549, in make_all() File "/var/lib/dpkg/info/eveusb.postinst", line 528, in make_all process_module(True) File "/var/lib/dpkg/info/eveusb.postinst", line 268, in process_module check_call([dkms, action] + mod_ver) File "/var/lib/dpkg/info/eveusb.postinst", line 30, in check_call subprocess.check_call(cmd) File "/usr/lib/python2.7/subprocess.py", line 190, in check_call raise CalledProcessError(retcode, cmd) subprocess.CalledProcessError: Command '['dkms', 'build', '-m', 'eveusb', '-v', '1.0.0']' returned non-zero exit status 1 dpkg: error processing package eveusb (--install): installed eveusb package post-installation script subprocess returned error exit status 1 Processing triggers for systemd (245.4-4ubuntu3.2) ... Errors were encountered while processing: eveusb root@DESKTOP-N9UN2H3:~/Desktop# uname -a Linux DESKTOP-N9UN2H3 5.8.0-rc3-microsoft-standard #2 SMP Tue Jun 30 14:38:02 CEST 2020 x86_64 x86_64 x86_64 GNU/Linux root@DESKTOP-N9UN2H3:~/Desktop# apt install linux-headers-generic Reading package lists... Done Building dependency tree Reading state information... Done linux-headers-generic is already the newest version (5.4.0.45.49). linux-headers-generic set to manually installed. The following packages were automatically installed and are no longer required: libfprint-2-tod1 libjpeg62 libllvm9:i386 libtirpc-common libtirpc3 linux-headers-5.4.0-39 linux-headers-5.4.0-39-generic linux-image-5.4.0-39-generic linux-modules-5.4.0-39-generic linux-modules-extra-5.4.0-39-generic Use 'apt autoremove' to remove them. 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 1 not fully installed or removed. After this operation, 0 B of additional disk space will be used. Do you want to continue? [Y/n] y Setting up eveusb (9.1.0) ... /var/lib/dpkg/info/eveusb.postinst configure Unable to identify user running this installation. Please add users manually to the 'eveusb' group so they can control the daemon u sing GUI and console utilities. Examples: gpasswd -a eveusb groupmod --add-user eveusb # SUSE usermod --append --groups eveusb usermod --add-to-group eveusb # SUSE Synchronizing state of eveusb.service with SysV service script with /lib/systemd /systemd-sysv-install. Executing: /lib/systemd/systemd-sysv-install disable eveusb Deleting module version: 1.0.0 completely from the DKMS tree. Done. Creating symlink /var/lib/dkms/eveusb/1.0.0/source -> /usr/src/eveusb-1.0.0 DKMS: add completed. Error! Your kernel headers for kernel 5.8.0-rc3-microsoft-standard cannot be fou nd. Please install the linux-headers-5.8.0-rc3-microsoft-standard package, or use the --kernelsourcedir option to tell DKMS where it's located Traceback (most recent call last): File "/var/lib/dpkg/info/eveusb.postinst", line 549, in make_all() File "/var/lib/dpkg/info/eveusb.postinst", line 528, in make_all process_module(True) File "/var/lib/dpkg/info/eveusb.postinst", line 268, in process_module check_call([dkms, action] + mod_ver) File "/var/lib/dpkg/info/eveusb.postinst", line 30, in check_call subprocess.check_call(cmd) File "/usr/lib/python2.7/subprocess.py", line 190, in check_call raise CalledProcessError(retcode, cmd) subprocess.CalledProcessError: Command '['dkms', 'build', '-m', 'eveusb', '-v', '1.0.0']' returned non-zero exit status 1 dpkg: error processing package eveusb (--configure): installed eveusb package post-installation script subprocess returned error exi t status 1 Errors were encountered while processing: eveusb E: Sub-process /usr/bin/dpkg returned an error code (1) root@DESKTOP-N9UN2H3:~/Desktop# sudo apt-get install linux-headers-$(uname -r) Reading package lists... Done Building dependency tree Reading state information... Done E: Unable to locate package linux-headers-5.8.0-rc3-microsoft-standard E: Couldn't find any package by glob 'linux-headers-5.8.0-rc3-microsoft-standard' E: Couldn't find any package by regex 'linux-headers-5.8.0-rc3-microsoft-standard' 助けが必要ですか?

Admin

カーネルの更新後にUbuntu 20.04.01を起動できません
ubuntu
linux-kernel

カーネルの更新後にUbuntu 20.04.01を起動できません

最新バージョンのUbuntu(20.04.01)を実行しているコンピュータを更新しました。カーネルアップデート(カーネル5.4.0-42-genericから5.4.0-45-genericへ)も含まれているシステムアップデートを実行しました。 アップデート後、コンピュータを再起動しましたが、画面にいくつかのエラーが表示され、そのデバイスが見つからUUID=xxxxx...ないというメッセージが表示されました。私は "BusyBox"シェルにいて、今何をすべきかわかりません。 Ubuntuを起動したときに「古い」カーネルバージョンに切り替えると、正常に起動します。/etc/fstabUUIDが実際のUUIDと一致することを確認しましたが、一致しました。 新しいカーネルバージョンでNVMeドライブを検出する際にいくつかの問題があるようです。 NVMeドライブにUbuntuをインストールしましたが、古いカーネルは機能しましたが、新しいカーネルは機能しません。私のNVMeドライブが/dev/。 新しいカーネルバージョンを「削除」したり、古いバージョンをデフォルトにする方法はありますか?コンピュータを起動するたびにカーネルバージョンを選択したくありません。 ありがとうございます!

Admin

Fedora 32にアップグレードした後、Bluetoothの動作が停止しました。
fedora
linux-kernel
drivers
bluetooth
firmware

Fedora 32にアップグレードした後、Bluetoothの動作が停止しました。

最近Fedora 32を更新しました。停電が発生してラップトップをシャットダウンし、再起動後にBluetoothが動作しなくなりました(終了する前に更新されたものがあるかどうかわかりません)。 Linuxはこう言います。 $ uname -a Linux jcubic 5.6.16-300.fc32.x86_64 #1 SMP Thu Jun 4 18:08:38 UTC 2020 x86_64 x86_64 x86_64 GNU/Linux $ dmesg | grep -i bluetooth [ 2.683570] Bluetooth: Core ver 2.22 [ 2.683589] Bluetooth: HCI device and connection manager initialized [ 2.683592] Bluetooth: HCI socket layer initialized [ 2.683593] Bluetooth: L2CAP socket layer initialized [ 2.683595] Bluetooth: SCO socket layer initialized [ 2.693267] bluetooth hci0: Direct firmware load for qca/rampatch_usb_00000302.bin failed with error -2 [ 2.693269] Bluetooth: hci0: failed to request rampatch file: qca/rampatch_usb_00000302.bin (-2) [ 8.209092] Bluetooth: BNEP (Ethernet Emulation) ver 1.3 [ 8.209093] Bluetooth: BNEP filters: protocol multicast [ 8.209095] Bluetooth: BNEP socket layer initialized $ locate rampatch_usb_00000302.bin /usr/lib/firmware/qca/rampatch_usb_00000302.bin $ lsmod | grep -i bluetooth bluetooth 643072 12 btrtl,btintel,btbcm,bnep,btusb ecdh_generic 16384 1 bluetooth rfkill 28672 8 bluetooth,dell_laptop,cfg80211 $ LC_ALL=C rfkill ID TYPE DEVICE SOFT HARD 0 bluetooth hci0 unblocked unblocked 1 wlan phy0 unblocked unblocked $ hciconfig up hci0: Type: Primary Bus: USB BD Address: 00:00:00:00:00:00 ACL MTU: 0:0 SCO MTU: 0:0 DOWN RX bytes:0 acl:0 sco:0 events:0 errors:0 TX bytes:0 acl:0 sco:0 commands:0 errors:0 $ sudo systemctl status bluetooth ● bluetooth.service - Bluetooth service Loaded: loaded (/usr/lib/systemd/system/bluetooth.service; enabled; vendor preset: enable> Active: active (running) since Fri 2020-06-12 19:21:41 CEST; 55min ago Docs: man:bluetoothd(8) Main PID: 879 (bluetoothd) Status: "Running" Tasks: 1 (limit: 18735) Memory: 2.9M CGroup: /system.slice/bluetooth.service └─879 /usr/libexec/bluetooth/bluetoothd cze 12 19:21:41 jcubic systemd[1]: Starting Bluetooth service... cze 12 19:21:41 jcubic bluetoothd[879]: Bluetooth daemon 5.54 cze 12 19:21:41 jcubic systemd[1]: Started Bluetooth service. cze 12 19:21:41 jcubic bluetoothd[879]: Starting SDP server cze 12 19:21:41 jcubic bluetoothd[879]: Bluetooth management interface 1.15 initialized 何が起こったのかわかりません。ハードウェアエラーですか? GrubにはFedora 32カーネルが1つしかありません。最近ノートパソコンで時々奇妙な音がする問題がありますが、CPUファンの問題かもしれません。 編集する: 解決策が見つからなかったため、GitHubでLinuxリポジトリのミラーを複製しましたが、ファイルやディレクトリが見つからないため、エラー-2が発生しているようです。 #define ENOENT 2 /* No such file or directory */ 編集する: 私はXubuntu 20.04 Live DVDを起動しましたが、Bluetoothが動作していてFedoraにバグとして報告しました。

Admin

.bssセクションを静的スタックとして使用するのは安全ですか?
linux-kernel
x86
interrupt
assembly
stack

.bssセクションを静的スタックとして使用するのは安全ですか?

(これはx86-64 Linuxのコンテキストです。) 私は非常に信頼性が高く、生成されたアセンブリを完全に制御できるユーザースペース実行可能ファイルを作成しようとしています。自動スタック割り当てに依存したくないので、スタックを既知の場所に配置したいと思います。私のプログラムが(正確には)最大414バイトのスタックスペースを使用すると計算しているとします。 .bssセクションに414バイトを割り当て、RSPを一番上に向けるのは安全ですか?私はスタック管理がいつでもこの領域の外側のバイトにアクセスしないようにしたいと思います。 確かだが私のものプログラムはこの領域の外に書き込まず、一部のシステムコール(インストルクションを使用)を実行する必要があり、syscall少なくともカーネルコードの一部は呼び出し可能コンテキストで実行されるようです。私のスタックは壊れますか? さらに、割り込みはプログラム内の任意の時点で発生する可能性があり、「赤い領域」の後ろに隠れているストーリーは、割り込みハンドラがRSP-128の外側の任意の広い領域に自由に書き込むことができ、潜在的に私のデータを破壊する可能性があることを示しているようです。この動作についてどのような保証がありますか?

Admin

ネットワークインターフェイスがありません。 lspciにドライバがありません。
networking
linux-kernel
drivers
network-interface

ネットワークインターフェイスがありません。 lspciにドライバがありません。

eno1一部のLinuxホストでは、再起動後にイーサネットインターフェイスが突然消えてしまいます。 「eth」を検索する とlspci -vmmmk複数のデバイスが表示され、そのうちの1つに回線はありませんDriver:。 部分出力: Slot: 3d:00.0 ... Vendor: Intel Corporation Device: Device 37cc ... SDevice: Device 0000 Rev:09 NUMANode: 0 これにはDriver:OR行はありませんModule:。どういう意味ですか? PSip lいくつかの注文番号が出力から欠落しています。次のように進みます。 1:.. 2:.. 3:.. 6:.. これが明らかな場合は申し訳ありません。

Admin

書くときにstatから返されるサイズは何ですか?
linux-kernel
write

書くときにstatから返されるサイズは何ですか?

write()Linuxでは、ファイルに対してシャットダウン操作を実行し、この操作が完了している間に別のスレッドでファイルに対して統計タイプ呼び出し(またはfstat())を実行するとします。lstat() st_sizeこの間、統計バッファフィールドは以前のファイルの以前のサイズwrite()だけでなく、すでにファイルに書き込まれている有効なデータの現在のサイズを返すことを期待しました。これにより、オフセット0のst_sizeファイルに使用すると、mmap()有効なデータが得られます。すべてではないかもしれませんが、少なくとも以前にファイルにあったすべてのものといくつかの有効な履歴データを得ることができます。 これは保証されますか?

Admin

パケットをルーティングするとき、Linuxカーネルはどのように正しいsrc IPを選択しますか?
linux
networking
kernel
linux-kernel
route

パケットをルーティングするとき、Linuxカーネルはどのように正しいsrc IPを選択しますか?

CalicoをCNIプラグインとして使用するkubernetesクラスタがあります。私のローカルルーティングテーブルから、次のいくつかのルートを取得できます。 root@k8s-master:~# ip r default via 192.168.100.1 dev ens18 proto dhcp src 192.168.100.215 metric 100 10.222.235.232 dev cali5bda0fdd27a scope link # route to pod 10.222.235.233 dev cali1209a63af2b scope link 10.222.235.235 dev cali12d4a061371 scope link 10.222.235.241 dev cali9d4dd01dda6 scope link 10.222.235.246 dev calid0a379e0710 scope link 10.222.235.248 dev cali67ee1300377 scope link 私のコンピュータには複数のインターフェイスがあります。パケットをポッドにルーティングするときに、Linuxカーネルが正しいsrc IPを選択する方法を知りたいです。 root@k8s-master:~# ip r get 10.222.235.232 10.222.235.232 dev cali5bda0fdd27a src 192.168.200.2 uid 0 cache cali5bda0fdd27aインターフェイスに IP アドレスがありません。これは、ホストネットワークの名前空間にあるvethペアの一方の端です(もう一方の端はコンテナネットワークの名前空間にあります)。 192.168.200.2他のインターフェイスのIPです。なぜLinuxカーネルは選択192.168.200.2して選択しないのですか192.168.100.215?

Admin