Busybox 1.01 modprobe problem
Tomasz Mateja
tommat w pimpek.one.pl
Czw, 29 Wrz 2005, 18:41:19 CEST
# modprobe -v libata
insmod /lib/modules/2.6.11.10-6/kernel/drivers/scsi/scsi_mod.ko
modprobe: exec of insmod: Invalid argument
insmod /lib/modules/2.6.11.10-6/kernel/drivers/scsi/libata.ko
modprobe: exec of insmod: Invalid argument
modprobe: failed to load module libata
# insmod /lib/modules/2.6.11.10-6/kernel/drivers/scsi/scsi_mod.ko
Using /lib/modules/2.6.11.10-6/kernel/drivers/scsi/scsi_mod.ko
SCSI subsytem initialized
# insmod /lib/modules/2.6.11.10-6/kernel/drivers/scsi/libata.ko
Using /lib/modules/2.6.11.10-6/kernel/drivers/scsi/libata.ko
#
Kawałek kodu modprobe.c
if (!show_only) {
int rc2 = 0;
int status;
switch (fork()) {
case -1:
rc2 = 1;
break;
case 0: //child
execvp(argv[0], argv);
bb_perror_msg_and_die("exec of %s", argv[0]);
/* NOTREACHED */
default:
if (wait(&status) == -1) {
rc2 = 1;
break;
}
if (WIFEXITED(status))
rc2 = WEXITSTATUS(status);
if (WIFSIGNALED(status))
rc2 = WTERMSIG(status);
break;
}
if (do_insert) {
rc = rc2; /* only last module matters */
}
else if (!rc2) {
rc = 0; /* success if remove any mod */
}
}
problem z execvp??
Postaram sie strace puscic ale to bedzie troche skomplikowane, może do
tego czasu ktoś coś wymyśli.
Pozdrawiam.
--
Tomek
Więcej informacji o liście dyskusyjnej pld-devel-pl