70 GB spariti

Postate qui per tutte le discussioni legate a Linux in generale.

Moderatore: Staff

Regole del forum
1) Citare sempre la versione di Slackware usata, la versione del Kernel e magari anche la versione della libreria coinvolta. Questi dati aiutano le persone che possono rispondere.
2) Per evitare confusione prego inserire in questo forum solo topic che riguardano appunto Gnu/Linux in genere, se l'argomento è specifico alla Slackware usate uno dei forum Slackware o Slackware64.
3) Leggere attentamente le risposte ricevute
4) Scrivere i messaggi con il colore di default, evitare altri colori.
5) Scrivere in Italiano o in Inglese, se possibile grammaticalmente corretto, evitate stili di scrittura poco chiari, quindi nessuna abbreviazione tipo telegramma o scrittura stile SMS o CHAT.
6) Appena registrati è consigliato presentarsi nel forum dedicato.

La non osservanza delle regole porta a provvedimenti di vari tipo da parte dello staff, in particolare la non osservanza della regola 5 porta alla cancellazione del post e alla segnalazione dell'utente. In caso di recidività l'utente rischia il ban temporaneo.
Mario Vanoni
Iper Master
Iper Master
Messaggi: 3174
Iscritto il: lun 3 set 2007, 21:20
Nome Cognome: Mario Vanoni
Slackware: 12.2
Kernel: 3.0.4 statico
Desktop: fluxbox/seamonkey
Località: Cuasso al Monte (VA)

Re: 70 GB spariti

Messaggio da Mario Vanoni »

masalapianta ha scritto:[
la cosa piu' sicura e' non dare ascolto alle leggende o ai teoremi costruiti su una deduzione arbitraria basata su 3 casi (le cui cause non sono state accertate); se sei a conoscenza di un bug della virtual memory, scrivi al mainteiner dettagliando il codice incriminato, altrimenti evita di mettere in giro leggende metropolitane.
man swapcontext:

When this context is later activated (using setcontext() or swapcontext()) the function func is called, and passed the series of integer (int) arguments that follow argc; the caller must specify the number of these arguments in argc. When this function returns, the successor context is activated.

The interpretation of ucp->uc_stack is just as in sigaltstack(2), namely, this struct contains the start and length of a memory area to be used as the stack, regardless of the direction of growth of the stack. Thus, it is not necessary for the user program to worry about this direction.


man sigaltstack:

Exceeding the allocated size of the alternate signal stack will lead to unpredictable results.


Non e` un bug della VM del kernel,
ma delle utilities usate per swappare,
conoscono l'inizio e la lunghezza,
ma non se ci sta alla destinazione.


Con le memorie attuali, e` improbabile di eccedere lo spazio swap.


Intellegentia, reagisci e metti lo swap a fine HD, non si sa mai ...


Il tutto molto riproducibile >10 anni fa con
Intel P133, 16MB RAM, HD SCSI 1GB, Slackware 96

Avatar utente
masalapianta
Iper Master
Iper Master
Messaggi: 2775
Iscritto il: lun 25 lug 2005, 0:00
Nome Cognome: famoso porco
Kernel: uname -r
Desktop: awesome
Distribuzione: Debian
Località: Roma
Contatta:

Re: 70 GB spariti

Messaggio da masalapianta »

Mario Vanoni ha scritto:
masalapianta ha scritto:[
la cosa piu' sicura e' non dare ascolto alle leggende o ai teoremi costruiti su una deduzione arbitraria basata su 3 casi (le cui cause non sono state accertate); se sei a conoscenza di un bug della virtual memory, scrivi al mainteiner dettagliando il codice incriminato, altrimenti evita di mettere in giro leggende metropolitane.
man swapcontext:

When this context is later activated (using setcontext() or swapcontext()) the function func is called, and passed the series of integer (int) arguments that follow argc; the caller must specify the number of these arguments in argc. When this function returns, the successor context is activated.

The interpretation of ucp->uc_stack is just as in sigaltstack(2), namely, this struct contains the start and length of a memory area to be used as the stack, regardless of the direction of growth of the stack. Thus, it is not necessary for the user program to worry about this direction.


man sigaltstack:

Exceeding the allocated size of the alternate signal stack will lead to unpredictable results.


Non e` un bug della VM del kernel,
ma delle utilities usate per swappare,
conoscono l'inizio e la lunghezza,
ma non se ci sta alla destinazione.


Con le memorie attuali, e` improbabile di eccedere lo spazio swap.


Intellegentia, reagisci e metti lo swap a fine HD, non si sa mai ...


Il tutto molto riproducibile >10 anni fa con
Intel P133, 16MB RAM, HD SCSI 1GB, Slackware 96
ma di cosa stai parlando? nei due man che hai citato dov'e' che si parla di corruzione della partizione successiva a quella di swap? sai a cosa serve la swapcontext()? sai che la swapcontext() non c'entra niente con la paginazione della memoria su disco? oppure hai letto la stringa 'swap' nel nome della funzione e hai pensato si riferisse alla virtual memory?

Codice: Seleziona tutto

In a SysV-like environment, one has the type ucontext_t defined in <ucontext.h> and the four functions getcontext(), setcontext(), makecontext() and swapcontext() that allow user-level context switching between multiple threads of control within a process.
http://www.gnu.org/software/libc/manual ... V-contexts

capito adesso?

Non puo' essere un bug di utilities userspace, in quanto comunque devi passare per la virtual memory del kernel (le utilities userspace non si mettono a paginare blocchi di ram su disco); ci mostreresti cortesemente il pezzo di codice della virtual memory che causerebbe la corruzione della partizione successiva a quella di swap?

Mario Vanoni
Iper Master
Iper Master
Messaggi: 3174
Iscritto il: lun 3 set 2007, 21:20
Nome Cognome: Mario Vanoni
Slackware: 12.2
Kernel: 3.0.4 statico
Desktop: fluxbox/seamonkey
Località: Cuasso al Monte (VA)

Re: 70 GB spariti

Messaggio da Mario Vanoni »

OK, le mie esperienze sono solo leggende metropolitane.
Mettevamo addirittura un cilindro vuoto tra le singole partizioni ...

http://www.kernel.org/doc/gorman/html/u ... nd014.html

11.7��Reading/Writing Swap Area Blocks

Chi controlla che la destinazione abbia abbastanza spazio?

Ovviamente il disco fisso, ma se e` un SEAGATE Barracuda 7200...?

Ciao Mozzo Zozzo
un cordiale saluto da Cuasso
Mario Vanoni

Avatar utente
slucky
Iper Master
Iper Master
Messaggi: 2420
Iscritto il: mar 1 mag 2007, 15:30
Slackware: 15.0
Desktop: xfce4
Distribuzione: FreeBSD

Re: 70 GB spariti

Messaggio da slucky »

per quanto riguarda l'area di swap, la cosa migliore in assoluto è posizionarla su un'altro disco fisso, si otterranno sicuramente migliori prestazioni, però in teoria qualsiasi area del disco può andare bene:

http://www.pluto.it/files/ildp/HOWTO/Pa ... pPlacement

saluti :)

Avatar utente
masalapianta
Iper Master
Iper Master
Messaggi: 2775
Iscritto il: lun 25 lug 2005, 0:00
Nome Cognome: famoso porco
Kernel: uname -r
Desktop: awesome
Distribuzione: Debian
Località: Roma
Contatta:

Re: 70 GB spariti

Messaggio da masalapianta »

Mario Vanoni ha scritto:OK, le mie esperienze sono solo leggende metropolitane.
in questo caso si
Mettevamo addirittura un cilindro vuoto tra le singole partizioni ...
inutile
http://www.kernel.org/doc/gorman/html/u ... nd014.html
11.7��Reading/Writing Swap Area Blocks
Chi controlla che la destinazione abbia abbastanza spazio?
il disk driver chiamato da pdflush
Ovviamente il disco fisso, ma se e` un SEAGATE Barracuda 7200...?
non ho capito, stai dicendo che il bug di cui vai cianciando e' in realta' un problema hardware?? se il disco
si sfascia e comincia a scrivere in blocchi di altre partizioni, e' indipendente dalla virtual memory, altrimenti
se domani mi si guasta una scheda di rete, i pacchetti corrotti che ne risultano possiamo dire che dipendono
da un bug del driver che gestisce la scheda?
Ciao Mozzo Zozzo
un cordiale saluto da Cuasso
Mario Vanoni
che gusto ci proverai a fare ste figure devo ancora capirlo (devo pero' ammettere che quando hai tirato fuori la
swapcontext(), dopo un momento di incredulita', mi son fatto una bella risata :D )

Rispondi