Re: ¡¡Kernel 2.2.4!!... [Solución]
On mié, mar 24, 1999 at 02:19:45 +0100, Javier Viñuales Gutiérrez wrote:
> ...patch brutal de 650Kb que deja entrever la de cambios que tiene 2.2.4
> respecto a 2.2.3, ¡a por el!.
>
> Un sólo pero, he parcheado mi 2.2.3, lo he compilado y me da este mensaje
> de error:
>
> [root@akela]# make bzImage
> gcc -D__KERNEL__ -I/usr/src/linux/include -Wall -Wstrict-prototypes -O2
> -fomit-frame-pointer -pipe
> -fno-strength-reduce -m486 -malign-loops=2 -malign-jumps=2
> -malign-functions=2 -DCPU=686
> -DUTS_MACHINE='"i386"' -c -o init/version.o init/version.c
> make -C kernel
> make[1]: Entering directory /usr/src/linux/kernel'
> make all_targets
> make[2]: Entering directory /usr/src/linux/kernel'
> gcc -D__KERNEL__ -I/usr/src/linux/include -Wall -Wstrict-prototypes -O2
> -fomit-frame-pointer -pipe
> -fno-strength-reduce -m486 -malign-loops=2 -malign-jumps=2
> -malign-functions=2 -DCPU=686 -c -o
> acct.o acct.c
> acct.c: In function sys_acct':
> acct.c:197: too few arguments to function filp_close'
> acct.c:203: too few arguments to function filp_close'
> make[2]: *** [acct.o] Error 1
> make[2]: Leaving directory /usr/src/linux/kernel'
> make[1]: *** [first_rule] Error 2
> make[1]: Leaving directory /usr/src/linux/kernel'
> make: *** [_dir_kernel] Error 2
>
> ¿Alguien sabe de qué va el rollo?
Yo mismo jeje.
Parece que la rutina filp_close usada en kernel/acct.c ha de tener un
segundo argumento "NULL". acct.c implementa el estilo BSD para la tabla de
procesos y filp_close cierra una entrada de registro de proceso (esto está
definido en inlcude/linux/fs.h, línea 700) mediante
extern int filp_close(struct file *, fl_owner_t id);
Ahí va un parche para esto:
--- linux/kernel/acct.c.~1~ Tue Mar 23 16:14:01 1999
+++ linux/kernel/acct.c Tue Mar 23 16:34:55 1999
@@ -194,13 +194,13 @@
}
if (old_acct) {
do_acct_process(0,old_acct);
- filp_close(old_acct);
+ filp_close(old_acct, NULL);
}
out:
unlock_kernel();
return error;
out_err:
- filp_close(file);
+ filp_close(file, NULL);
goto out;
}
Saludos.
--
Javier Viñuales Gutiérrez
vigu@ctv.es
Reply to: