Linus, el script mágico y un zas en toda la boca

>Todos conocemos el “buen humor” que caracteriza a Linus Torvalds. En más de una ocasión se las ha dado de sobrado. Sí, el padre de Linux tiene malas pulgas. Atrás quedan algunas declaraciones sobre lo incompetentes que le parecían los desarrollos de Gnome, o sus opiniones sobre la comunidad Linux, etc. Normalmente son simples pataletas. Todos somos humanos y en algún momento nos dejamos llevar por nuestro ego. Pero lo que ha sucedido en estos días, ha sido un buen “tierra, trágame” para Torvalds.

Al parecer, en estos días mucho se ha hablado de las nuevas y revolucionarias mejoras que incluirá la próxima versión del kernel. Complejas modificaciones en su código que le dotarán de una agilidad sin precedentes.

Pues bien, un desarrollador de Red Hat: Lennar Poettering indicaba a Linus la posibilidad de mejorar lo expuesto. Pero mejor os muestramos parte de la conversación, que es más divertido.

Lennar:

“Binding something like this to TTYs is just backwards. No graphical
session has a TTY attached anymore. And there might be multiple TTYs
used in the same session.

I really wonder why logic like this should live in kernel space at all,
since a) the kernel has no real notion of a session, except audit and b)
this is policy and as soon as people have this kind of group then they
probably want other kind of autogrouping as well for the other
controllers, which hence means userspace is a better, and configurable
place for this.”

De lo dicho quedemonos con el último parrafo, que viene a decir algo así:

“Me pregunto por qué una lógica de este tipo debe seguirse en el espacio del kernel en absoluto, ya que a) el núcleo no tiene noción real de la sesión, excepto de auditar y b) esta es la política y tan pronto como la gente tenga este tipo de grupo probablemente quiera otro tipo de autoagrupación, así como para otros controladores, por tanto, significa el espacio de usuario es un mejor, y configurable lugar para esto.”

A lo que Linus responde:

“Numbers talk, bullshit walks.

The numbers have been quoted. The clear interactive behavior has been seen.

And you’re just full of bullshit.

Come back when you have something working and with numbers and better
interactive performance. Until then, nobody cares.”

Algo así como decir:

“Los números hablan, la mierda camina.

Los números han sido citados. Se ha visto un claro comportamiento.

Y tú sólo estas llenándolo de tonterías.

Vuelve cuando tengas algo trabajado y con pruebas y con mejor
rendimiento interactivo. Hasta entonces, a nadie le importa.”

A estas alturas todos pensaréis que Linus se ha pasado un par de pueblos con su respuesta. Que recibiría una airada respuesta por parte de Lennar, pero esto ha sido la bomba. Su respuesta ha sido:

“Here’s my super-complex patch btw, to achieve exactly the same thing
from userspace without involving any kernel or systemd patching and
kernel-side logic. Simply edit your own ~/.bashrc and add this to the end:”

if [ “$PS1” ] ; then
mkdir -m 0700 /sys/fs/cgroup/cpu/user/$$
echo $$ > /sys/fs/cgroup/cpu/user/$$/tasks
fi

Then, as the superuser do this:

mount -t cgroup cgroup /sys/fs/cgroup/cpu -o cpu
mkdir -m 0777 /sys/fs/cgroup/cpu/use

Done. Same effect. However: not crazy.

Traduciendo: Aquí está mi parche super-complejo, para lograr exactamente lo mismo desde el espacio de usuario sin la intervención de cualquier núcleo o parches en systemd y lógica “kernel-side”. Simplemente edita su propio ~/.bashrc y añade esto al final. Un sensillo script de cuatro lineas.

¿Moraleja de esta historia? Nunca te pases de listo, porque se aplicará la tercera ley de Newton y te va a doler.

Fuente: http://blog.christophersmart.com/
Visto en: http://ubuntulife.wordpress.com/

Comparte esta entrada: