[gugs] kupdate
Manuel A. Fernández Montecelo
manuel en sindominio.net
Mie Mar 26 17:44:33 CET 2003
On Qua, 2003-03-26 at 11:18, rx wrote:
> hay cosas que aun no logro entender, son miles de cosas, hay algunas
> muy recurrentes y me obligan a convertirlas en consultar.
>
> en un servidor que se pasa encendido 24h cada vez que lo visito
> 'fisicamente' leo en su pantalla un mensaje, que se repite mas cuanto
> mas tardo en visitarlo; estoy seguro que no es por celos :-)
>
> dice asi:
> VM: do_try_to_free_pages failed for kupdate...
>
> como lo que no entiendo me lo invento he imaginado que 'VM' significa
> memoria virtual y que lo que dice a continuacion es algo asi como:
> intento de liberar paginas de memoria falla para kupdate...
pues me parece que tienes buena imaginación :)
> esta claro que la cosa tiene que ver con el kupdate pero yo no se lo que
> es. He revisado y en la maquina solo me sale como un servicio
> relacionado con la swap y la k evidencia que tambien tendra algo que ver
> con el kernel. En la web hay mucha info pero no logro dar en el clavo y
> seguro que vosotros me podeis sacar de dudas mas rapidamente.
creo que es el sustituto del antiguo daemon updated, que volcaba el
contenido de los buffers a disco cada (default) 5 segundos.
los buffers son importantes, porque permiten a un proceso independencia
del dispositivo: en windoze el PC se congela momentaneamente al acceder
al disquette pej, en linuz puede acabar el proceso al acabar de escribir
en el buffer, y dejar que este gestor escriba realmente a disco después
de que el programa haya acabado. también porque pej en compilaciones
muchos ficheros temporales ni siquiera se llegan a escribir en el disco.
se calcula que en unix se ahorran así el 80% de accesos al disco.
esto apoya lo que digo con respecto a para lo que sirve kupdate, del
fichero 'fs/buffer.c':
[17:14] <manuel en gada> /usr/src/linux-2.4.20 $ grep -n "kupdate" fs/buffer.c
112: int interval; /* jiffies delay between kupdate flushes */
2871: /* do_exit directly and let kupdate to do its work alone. */
2973:int kupdate(void *startup)
y esta es la única referencia que encuentro a esa función, en esta
versión del kernel:
/**
* kmem_cache_reap - Reclaim memory from caches.
* @gfp_mask: the type of memory required.
*
* Called from do_try_to_free_pages() and __alloc_pages()
*/
int kmem_cache_reap (int gfp_mask)
supongo que será que necesita liberar memoria pero no puede porque la
utilizada en caché no se puede hacer más pequeña; o quizá sea algún bug
posiblemente de versiones anteriores del kernel, porque ya digo que en
esta 2.4.20 no aparecen referencias a esa función, al menos con el mismo
nombre.
> un*rx
--
aburinho!!
________________________________________________________________________
Manuel A. Fernández Montecelo <manuel en sindominio.net>
_
Onda do mar de Vigo, ( ) Nunca mais: Mais nunca!
quê fez o fuel-óleo contigo? / http://plataformanuncamais.org/
E ai Deus, se se irá cedo! / \ http://burlanegra.vieiros.com/
Más información sobre la lista de distribución Gugs