← Commit list

3b0cfb40a

Rob Landley
Rob Landley
2006-07-19
SOURCE BUG Duration: 31s

Subject

Patch from Yann Morin to look for modules.conf in the right place on 2.6. Fixes http://bugs.busybox.net/view.php?id=942

SOURCE BUG

This commit was genuinely broken at the time (not related to our build system): scripts/config/mkconfigs.c (2005-08-01 - 2006-10-05 arasi) uretilen bbconfigopts.h icine .config satirlarini kacissiz, ham newline'larla gömüyordu - gecerli C degildi, busybox'un kendi bb_mkdep araci bile parse edemiyordu (7d219aab7 ile duzeltildi, mkconfigs shell scripte cevrildi)

→ Bu hatanin tam hikayesini ve duzeltme diffini gor

Binary

No binary (build failed)

Architecture & Compiler Flags

Architecture: x86_64-linux-gnu Compiler: gcc (Ubuntu 11.4.0-1ubuntu1~22.04.3) 11.4.0

—

Build Log

(log yok)

Commit Diff GitHub →

modutils/modprobe.c+23 -15
@@ -545,28 +545,36 @@ static struct dep_t *build_dep ( void )
}
close ( fd );
+ /*
+ * First parse system-specific options and aliases
+ * as they take precedence over the kernel ones.
+ */
if (!ENABLE_FEATURE_2_6_MODULES
|| ( fd = open ( "/etc/modprobe.conf", O_RDONLY )) < 0 )
if (( fd = open ( "/etc/modules.conf", O_RDONLY )) < 0 )
- if (( fd = open ( "/etc/conf.modules", O_RDONLY )) < 0 )
- return first;
+ fd = open ( "/etc/conf.modules", O_RDONLY );
- include_conf (&first, &current, buffer, sizeof(buffer), fd);
- close(fd);
+ if (fd >= 0) {
+ include_conf (&first, &current, buffer, sizeof(buffer), fd);
+ close(fd);
+ }
- filename = bb_xasprintf("/lib/modules/%s/modules.alias", un.release);
- fd = open ( filename, O_RDONLY );
- if (ENABLE_FEATURE_CLEAN_UP)
- free(filename);
- if (fd < 0) {
- /* Ok, that didn't work. Fall back to looking in /lib/modules */
- if (( fd = open ( "/lib/modules/modules.alias", O_RDONLY )) < 0 ) {
- return first;
+ /* Only 2.6 has a modules.alias file */
+ if (ENABLE_FEATURE_2_6_MODULES) {
+ /* Parse kernel-declared aliases */
+ filename = bb_xasprintf("/lib/modules/%s/modules.alias", un.release);
+ if ((fd = open ( filename, O_RDONLY )) < 0) {
+ /* Ok, that didn't work. Fall back to looking in /lib/modules */
+ fd = open ( "/lib/modules/modules.alias", O_RDONLY );
}
- }
+ if (ENABLE_FEATURE_CLEAN_UP)
+ free(filename);
- include_conf (&first, &current, buffer, sizeof(buffer), fd);
- close(fd);
+ if (fd >= 0) {
+ include_conf (&first, &current, buffer, sizeof(buffer), fd);
+ close(fd);
+ }
+ }
return first;
}