Bagaimana saya bisa tahu / mendaftar opsi yang tersedia untuk modul kernel?

23

Seperti yang dikatakan pertanyaan itu semuanya, saya hanya ingin menguraikan dengan contoh:

i915.i915_enable_rc6=1

Ini adalah opsi untuk modul i915 atau driver video intel. Jadi apakah ada cara untuk mengetahui atau mendaftar sesuatu seperti i915_enable_rc6opsi untuk i915dari commandline linux?

Saya harap saya jelas dengan pertanyaan itu?

Sunting: Saya merujuk ke i915 hanya untuk contoh dan tidak ada yang lain. modinfotampaknya menjadi perintah yang saya cari.

sagarchalise
sumber

Jawaban:

21

modinfo melakukannya:

modinfo i915 | grep '^parm:'

Untuk modul open source cara yang paling dapat diandalkan adalah dengan melihat sumbernya. Anda tidak perlu menjadi pengembang kernel.

Lihat sumber untuk i915 .

Michał Šrajer
sumber
Jika tidak ada bagian yang dipanggil parmdalam modinfooutput, apakah itu berarti tidak ada opsi untuk mengkonfigurasi modul?
sagarchalise
Sebagian besar itu berarti bahwa penulis ingin menyimpannya sebagai parameter yang tidak terlihat karena alasan tertentu. Lihat pos yang diperbarui.
Michał Šrajer
11

Anda dapat menemukan semua param kernel i915 yang berlaku yang berlaku untuk kartu Anda menggunakan perintah seperti

sudo grep -H '' /sys/module/i915/parameters/*

atau

sudo grep . /sys/module/i915/parameters/*

(terima kasih @ susun)

Dalam kasus saya, saya berpotensi menggunakan:

/sys/module/i915/parameters/fbpercrtc:0
/sys/module/i915/parameters/i915_enable_rc6:1
/sys/module/i915/parameters/lvds_downclock:1
/sys/module/i915/parameters/lvds_use_ssc:1
/sys/module/i915/parameters/modeset:-1
/sys/module/i915/parameters/powersave:1
/sys/module/i915/parameters/reset:Y
/sys/module/i915/parameters/semaphores:0

Jika tidak ada parameter yang diidentifikasi maka itu adalah pernyataan yang benar - atau kernel memuat modul kernel yang berbeda dari yang Anda harapkan:

 sudo lshw -c display

  *-display               
       description: VGA compatible controller
       product: Core Processor Integrated Graphics Controller
       vendor: Intel Corporation
       physical id: 2
       bus info: pci@0000:00:02.0
       version: 18
       width: 64 bits
       clock: 33MHz
       capabilities: msi pm vga_controller bus_master cap_list rom
       configuration: driver=i915 latency=0
       resources: irq:41 memory:90000000-903fffff memory:80000000-8fffffff ioport:3050(size=8)

Dalam penelusuran di atas, Anda dapat melihat di baris konfigurasi "driver = i915" bahwa kernel melihat kartu video dan telah memuat modul i915.

sumber

kebebasan fosil
sumber
1
+1. Saya hanya menyederhanakan perintah untuksudo grep . /sys/module/i915/parameters/*
mengatur
Saya merujuk i915karena sebagian besar digunakan. Tetapi informasi jalur adalah sesuatu yang saya tidak tahu, jadi jika tidak ada parametersfolder di /sys/module/{module_name}/Apakah itu berarti modul tertentu tidak memiliki opsi untuk mengubah?
sagarchalise
@sagarchalise - telah diperbarui dengan penjelasan
fossfreedom
6

Mungkin ini adalah opsi modinfo yang lebih baru , tetapi dukungan modinfo hanya mencantumkan parameter:

$ modinfo -p i915

atau

$ modinfo --parameters i915

Catatan: $tandanya hanyalah tampilan prompt. Ini menunjukkan bahwa perintah dapat dijalankan sebagai pengguna non-root dan tanpa sudo.

Dimungkinkan juga untuk memeriksa parameter saat ini dari modul yang sudah dimuat menggunakan systool :

systooladalah bagian dari paket sysfsutils. Instal dengan perintah ini

sudo apt-get install sysfsutils

Kemudian gunakan cara ini

$ systool -v -m i915

Pada output perintah ini, periksa bagian "Parameter:".

Huygens
sumber