Domande taggate «linux-kernel»

Questo tag è per domande sugli interni del kernel Linux stesso, in particolare sulla scrittura di codice che viene eseguito nel contesto del kernel (come i moduli oi driver del kernel). Le domande sulla scrittura di codice nello spazio utente in Linux dovrebbero generalmente essere contrassegnate con [linux]. Poiché le parti interne del kernel Linux cambiano costantemente, è utile includere le versioni precise del kernel che ti interessano.





6
Come evitare gli avvisi di transparent_hugepage / defrag da mongodb?
Ricevo il seguente avviso da Mongodb riguardo alla THP 2015-03-06T21:01:15.526-0800 I CONTROL [initandlisten] ** WARNING: /sys/kernel/mm/transparent_hugepage/defrag is 'always'. 2015-03-06T21:01:15.526-0800 I CONTROL [initandlisten] ** We suggest setting it to 'never' Ma sono riuscito a disattivare THP manualmente frederick@UbuntuVirtual:~$ cat /sys/kernel/mm/transparent_hugepage/enabled always madvise [never] frederick@UbuntuVirtual:~$ cat /sys/kernel/mm/transparent_hugepage/defrag always madvise [never] Ho fatto …

2
Cos'è? = In Makefile
KDIR ?= $(shell uname -r) Qual è il significato di ?=? Ho capito la differenza tra :=, +=e =da un altro thread disponibili in Stack Overflow, ma incapace di trovare la spiegazione ?=.

2
Cosa sono vdso e vsyscall?
L'ho fatto sudo cat /proc/1/maps -vv Sto tentando di dare un senso all'output. Posso vedere molte librerie condivise mappate al segmento di mappatura della memoria come previsto. 7f3c00137000-7f3c00179000 r-xp 00000000 08:01 21233923 /lib/x86_64-linux-gnu/libdbus-1.so.3.5.8 7f3c00179000-7f3c00379000 ---p 00042000 08:01 21233923 /lib/x86_64-linux-gnu/libdbus-1.so.3.5.8 7f3c00379000-7f3c0037a000 r--p 00042000 08:01 21233923 /lib/x86_64-linux-gnu/libdbus-1.so.3.5.8 7f3c0037a000-7f3c0037b000 rw-p 00043000 08:01 21233923 …
89 c  linux  linux-kernel  kernel  vdso 

3
L'utilizzo di gdb in un codice assembly a passaggio singolo al di fuori dell'eseguibile specificato causa l'errore "impossibile trovare i limiti della funzione corrente"
Sono fuori dall'eseguibile di destinazione di gdb e non ho nemmeno uno stack che corrisponda a tale destinazione. Voglio comunque eseguire un singolo passaggio, in modo da poter verificare cosa sta succedendo nel mio codice assembly, perché non sono un esperto di assembly x86. Sfortunatamente, gdb si rifiuta di eseguire …

4
Qual è la necessità di parentesi graffe vuote '{}' alla fine della matrice di strutture?
Ho colpito un po 'di codice c nel kernel di Linux: static struct ctl_table ip_ct_sysctl_table[] = { { .procname = "ip_conntrack_max", .maxlen = sizeof(int), .mode = 0644, .proc_handler = proc_dointvec, }, // ... { .procname = "ip_conntrack_log_invalid", .maxlen = sizeof(unsigned int), .mode = 0644, .proc_handler = proc_dointvec_minmax, .extra1 = &log_invalid_proto_min, …


1
Perché definire una macro con una funzione con lo stesso nome?
Ho trovato il codice qui sotto in https://github.com/torvalds/linux/blob/master/arch/x86/include/asm/atomic.h static __always_inline bool arch_atomic_sub_and_test(int i, atomic_t *v) { return GEN_BINARY_RMWcc(LOCK_PREFIX "subl", v->counter, e, "er", i); } #define arch_atomic_sub_and_test arch_atomic_sub_and_test cosa fa #defineveramente? Quando è necessario farlo?
12 c  linux-kernel 
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.