Discussion:
init hangs
Saravanan Chanemouganandam
2007-11-21 15:20:49 UTC
Permalink
Hi all,

I am having problem in booting my arm pxa270 target using the pre built
( buildroot uclibc) "root_fs_arm.ext2.bz2". The linux 2.6.16 image boots well
and hangs after mounting the root filesystem through nfs
....
....
VFS: Mounted root (nfs filesystem).
Freeing init memory: 116K

It works fine for the glibc rootfs come with the board. Can any body precise
me why it boots well with glibc rootfs and hangs with uclibc rootfs?

Thanks
Sara
Denys Vlasenko
2007-11-21 20:58:53 UTC
Permalink
Post by Saravanan Chanemouganandam
Hi all,
I am having problem in booting my arm pxa270 target using the pre built
( buildroot uclibc) "root_fs_arm.ext2.bz2". The linux 2.6.16 image boots
well and hangs after mounting the root filesystem through nfs
....
....
VFS: Mounted root (nfs filesystem).
Freeing init memory: 116K
It works fine for the glibc rootfs come with the board. Can any body
precise me why it boots well with glibc rootfs and hangs with uclibc
rootfs?
Usual tactic in debugging this kind of problem
is to build "Hello world" program, statically linked,
boot with init=/path/to/hello_world and see whether
message appears.
If it works, proceed with something bigger, e.g. init=/bin/sh.
If it doesn't, you probably have toolchain problems.
--
vda
Denys Vlasenko
2007-11-22 22:55:14 UTC
Permalink
Hi,
The rootfs "root_fs_arm.ext2.bz2" which I am testing was downloaded from
the reference link
http://dslinux.gits.kiev.ua/trunk/uClibc/docs/uclibc.org/toolchains.html.
As I have some problem with toochain, I have started to test first using
the existing rootfs built for arm the target which failed to work.
Test with (init=/sbin/hello) "Hello world" statically linked using uclibc
doesn't show any message whereas statically linked using glibc shows the
message. I wonder why it doesn't work well with uclibc. Is this problem
due to the kernel-headers or uclibc config ?
Also may be bad choice of ARM processor flavor, and uclibc code
ended up containing commands which are not supported by your processor.

This is a quite typical cause of "my init doesn't run!" problem.
--
vda
Roberto A. Foglietta
2007-11-24 10:51:14 UTC
Permalink
Post by Denys Vlasenko
Hi,
The rootfs "root_fs_arm.ext2.bz2" which I am testing was downloaded from
the reference link
http://dslinux.gits.kiev.ua/trunk/uClibc/docs/uclibc.org/toolchains.html.
As I have some problem with toochain, I have started to test first using
the existing rootfs built for arm the target which failed to work.
Test with (init=/sbin/hello) "Hello world" statically linked using uclibc
doesn't show any message whereas statically linked using glibc shows the
message. I wonder why it doesn't work well with uclibc. Is this problem
due to the kernel-headers or uclibc config ?
Also may be bad choice of ARM processor flavor, and uclibc code
ended up containing commands which are not supported by your processor.
This is a quite typical cause of "my init doesn't run!" problem.
The following questions are the classical: where are we/you going?

The bug track system is feed with all the bugs or reading this ml is
the only way to be acknowledged about each bug discovery?

Is there some kind of bug report sum which can help me to choose a
stable version of busybox in order to go in production? I am seeing bugs
in well known application like cut or tar, are there before and nobody
discover or they came out because the bb new era? In the last case is
there any plan to stabilize bb?

Thanks,
Roberto
Denys Vlasenko
2007-11-25 03:44:47 UTC
Permalink
Post by Roberto A. Foglietta
Post by Denys Vlasenko
Hi,
The rootfs "root_fs_arm.ext2.bz2" which I am testing was downloaded from
the reference link
http://dslinux.gits.kiev.ua/trunk/uClibc/docs/uclibc.org/toolchains.html
. As I have some problem with toochain, I have started to test first
using the existing rootfs built for arm the target which failed to work.
Test with (init=/sbin/hello) "Hello world" statically linked using
uclibc doesn't show any message whereas statically linked using glibc
shows the message. I wonder why it doesn't work well with uclibc. Is
this problem due to the kernel-headers or uclibc config ?
Also may be bad choice of ARM processor flavor, and uclibc code
ended up containing commands which are not supported by your processor.
This is a quite typical cause of "my init doesn't run!" problem.
The following questions are the classical: where are we/you going?
The bug track system is feed with all the bugs or reading this ml is
the only way to be acknowledged about each bug discovery?
Bug database is good for tracking issues, saving additional data points
about bugs, etc. Mailing list works better for bumping up bugs which
are not resolved and semms to be forgotten.

I find that with many projects it works best when I create bug entry in
bugzilla AND post a report to ml.

However, not every time. This gcc bug is an example:

http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30354

It even contains a working patch, and I sent an email to their
ml several times, yet not reaction still.
Post by Roberto A. Foglietta
Is there some kind of bug report sum which can help me to choose a
stable version of busybox in order to go in production?
Take latest 1.7.x, but running testsuite and comparing the output
with testsuite of last busybox you used in production is a good idea.
Post by Roberto A. Foglietta
I am seeing bugs
in well known application like cut or tar,
As usual, report them.

For me, tar wasn't even capable to unpack linux kernel source tarball.
Now it can do that. I tested it by tar/untar cycle of Orcle install.
It survived.

I think adding testsuite entries for bugs you discover and fix
might help to ensure they do not reoccur, or at least easy to
automatically detect.

I just reran testsuite/runtest. Compared to 1.2.2, two more failures. :(
-PASS: pidof -o %PPID
+FAIL: pidof -o %PPID
-PASS: which-uses-default-path
+FAIL: which-uses-default-path

Will look into it.
Post by Roberto A. Foglietta
are there before and nobody
discover or they came out because the bb new era? In the last case is
there any plan to stabilize bb?
Do you have a feeling that people who has write access to bbox svn
are unwilling to take patches?
--
vda
walter harms
2007-11-25 13:39:33 UTC
Permalink
Post by Denys Vlasenko
I just reran testsuite/runtest. Compared to 1.2.2, two more failures. :(
-PASS: pidof -o %PPID
+FAIL: pidof -o %PPID
-PASS: which-uses-default-path
+FAIL: which-uses-default-path
Will look into it.
hi all,
the missing testsuite is a real problem. I have posted a excerpt from the bash-testsuite
ported to ash sometime ago. unfortunately nobody has followed my step and i run out of time.

As i wrote last time: we need a test-suite and before a release comes it must run on that release code.
It can be done easy for any packet that is available as GNU also.

re,
wh
Denys Vlasenko
2007-11-26 00:55:39 UTC
Permalink
Post by walter harms
Post by Denys Vlasenko
I just reran testsuite/runtest. Compared to 1.2.2, two more failures. :(
-PASS: pidof -o %PPID
+FAIL: pidof -o %PPID
-PASS: which-uses-default-path
+FAIL: which-uses-default-path
Will look into it.
hi all,
the missing testsuite is a real problem.
Busybox has testsuite: cd testsuite; ./runtest

Does it need work? yes. I did a few small enhancements,
but it needs more.
Post by walter harms
I have posted a excerpt from the
bash-testsuite ported to ash sometime ago. unfortunately nobody has
followed my step and i run out of time.
Shells have separate testsuites:

shell/ash_test
shell/hush_test
Post by walter harms
As i wrote last time: we need a test-suite and before a release comes it
must run on that release code. It can be done easy for any packet that is
available as GNU also.
Please send patches. And I don't mean it to me an attack -
I literally mean that I'm happy to take new testsuite entries,
or general improvement of testsuite infrastructure.

--
vda
Denys Vlasenko
2007-11-26 00:55:39 UTC
Permalink
Post by walter harms
Post by Denys Vlasenko
I just reran testsuite/runtest. Compared to 1.2.2, two more failures. :(
-PASS: pidof -o %PPID
+FAIL: pidof -o %PPID
-PASS: which-uses-default-path
+FAIL: which-uses-default-path
Will look into it.
hi all,
the missing testsuite is a real problem.
Busybox has testsuite: cd testsuite; ./runtest

Does it need work? yes. I did a few small enhancements,
but it needs more.
Post by walter harms
I have posted a excerpt from the
bash-testsuite ported to ash sometime ago. unfortunately nobody has
followed my step and i run out of time.
Shells have separate testsuites:

shell/ash_test
shell/hush_test
Post by walter harms
As i wrote last time: we need a test-suite and before a release comes it
must run on that release code. It can be done easy for any packet that is
available as GNU also.
Please send patches. And I don't mean it to me an attack -
I literally mean that I'm happy to take new testsuite entries,
or general improvement of testsuite infrastructure.

--
vda
Roberto A. Foglietta
2007-11-26 15:39:26 UTC
Permalink
Post by Denys Vlasenko
Post by Roberto A. Foglietta
I am seeing bugs
in well known application like cut or tar,
As usual, report them.
I see those two bugs reported on this list. At this time I am still
using 1.2.2.1 and I am going to do a patch to increase security of
telnet a little bit. So I cannot help.

My question was done in order to plan a version advancement to
new-era-busybox. Soon or later It would happen.
Post by Denys Vlasenko
Post by Roberto A. Foglietta
are there before and nobody
discover or they came out because the bb new era? In the last case is
there any plan to stabilize bb?
Do you have a feeling that people who has write access to bbox svn
are unwilling to take patches?
No, I am trying to understand what are you doing. I am feeling you
have redesigned bb and you are coping with all the bugs a redesign
pops up.
I was just asking.

Ciao,
--
/roberto
Denys Vlasenko
2007-11-26 18:34:55 UTC
Permalink
Post by Roberto A. Foglietta
My question was done in order to plan a version advancement to
new-era-busybox. Soon or later It would happen.
Post by Denys Vlasenko
Post by Roberto A. Foglietta
are there before and nobody
discover or they came out because the bb new era? In the last case is
there any plan to stabilize bb?
Do you have a feeling that people who has write access to bbox svn
are unwilling to take patches?
No, I am trying to understand what are you doing. I am feeling you
have redesigned bb and you are coping with all the bugs a redesign
pops up.
I don't think that I am "redesigned" busybox. It stays mostly the same,
I am just trying to make it smaller without introducing too many new bugs.
Also I try to add e.g. IPv6 support in a way which won't require
painful rewrite of every networking app. Mostly done. wget and ftpget/put
require some love to get them understand IPv6-esque version of PASV etc.
--
vda
Roberto A. Foglietta
2007-11-27 10:22:09 UTC
Permalink
2007/11/26, Denys Vlasenko <vda.linux at googlemail.com>:

[cut]
Post by Denys Vlasenko
I don't think that I am "redesigned" busybox. It stays mostly the same,
I am just trying to make it smaller without introducing too many new bugs.
foglietr at eemd2364170:/tmp$ size busybox-1.8.2/busybox busybox-1.2.2.1/busybox
text data bss dec hex filename
319519 2070 10784 332373 51255 busybox-1.8.2/busybox
339750 4472 35172 379394 5ca02 busybox-1.2.2.1/busybox

Currently defined functions:
[, [[, addgroup, adduser, adjtimex, ash, awk, basename, bunzip2,
bzcat, cat, chgrp, chmod, chown, chroot, chvt, clear, cmp, cp, cut,
date, dd, deallocvt, delgroup, deluser, df, dirname, dmesg, du, echo,
egrep, env, expr, false, fdisk, fgrep, find, free, ftpget, ftpput,
fuser, getopt, getty, grep, gunzip, gzip, halt, head, hexdump, hostid,
hostname, hwclock, id, inetd, init, insmod, install, ip, kill,
killall, klogd, ln, logger, login, logname, ls, lsmod, md5sum, mkdir,
mknod, mktemp, more, mv, netstat, nohup, openvt, passwd, pidof,
pivot_root, poweroff, printf, ps, pwd, readlink, reboot, renice,
reset, rm, rmdir, rmmod, route, sed, seq, setconsole, sh, sleep, sort,
stat, strings, stty, su, sulogin, sync, sysctl, syslogd, tail, tar,
tee, telnet, telnetd, test, time, top, touch, tr, true, tty, uname,
uniq, unzip, uptime, usleep, vi, wc, wget, which, whoami, xargs, yes,
zcat
[cut]
Post by Denys Vlasenko
Post by Denys Vlasenko
I just reran testsuite/runtest. Compared to 1.2.2, two more failures. :(
-PASS: pidof -o %PPID
+FAIL: pidof -o %PPID
-PASS: which-uses-default-path
+FAIL: which-uses-default-path
The size is 47021 smaller with the same applets which is 12/13% less.
Some other applets and options has been added. Even ignoring ipv6
(which is not complete by now) I think the balance is good. After the
ipv6 completion having a new-era-busybox very stable branch and a
developing one could be fine.

Cheers,
--
/roberto
Roberto A. Foglietta
2007-11-27 10:38:53 UTC
Permalink
Post by Roberto A. Foglietta
[cut]
Post by Denys Vlasenko
I don't think that I am "redesigned" busybox. It stays mostly the same,
I am just trying to make it smaller without introducing too many new bugs.
foglietr at eemd2364170:/tmp$ size busybox-1.8.2/busybox busybox-1.2.2.1/busybox
text data bss dec hex filename
319519 2070 10784 332373 51255 busybox-1.8.2/busybox
339750 4472 35172 379394 5ca02 busybox-1.2.2.1/busybox
[, [[, addgroup, adduser, adjtimex, ash, awk, basename, bunzip2,
bzcat, cat, chgrp, chmod, chown, chroot, chvt, clear, cmp, cp, cut,
date, dd, deallocvt, delgroup, deluser, df, dirname, dmesg, du, echo,
egrep, env, expr, false, fdisk, fgrep, find, free, ftpget, ftpput,
fuser, getopt, getty, grep, gunzip, gzip, halt, head, hexdump, hostid,
hostname, hwclock, id, inetd, init, insmod, install, ip, kill,
killall, klogd, ln, logger, login, logname, ls, lsmod, md5sum, mkdir,
mknod, mktemp, more, mv, netstat, nohup, openvt, passwd, pidof,
pivot_root, poweroff, printf, ps, pwd, readlink, reboot, renice,
reset, rm, rmdir, rmmod, route, sed, seq, setconsole, sh, sleep, sort,
stat, strings, stty, su, sulogin, sync, sysctl, syslogd, tail, tar,
tee, telnet, telnetd, test, time, top, touch, tr, true, tty, uname,
uniq, unzip, uptime, usleep, vi, wc, wget, which, whoami, xargs, yes,
zcat
[cut]
Post by Denys Vlasenko
Post by Denys Vlasenko
I just reran testsuite/runtest. Compared to 1.2.2, two more failures. :(
-PASS: pidof -o %PPID
+FAIL: pidof -o %PPID
-PASS: which-uses-default-path
+FAIL: which-uses-default-path
The size is 47021 smaller with the same applets which is 12/13% less.
Some other applets and options has been added. Even ignoring ipv6
(which is not complete by now) I think the balance is good. After the
ipv6 completion having a new-era-busybox very stable branch and a
developing one could be fine.
However there are some small bugs around which suggest me that
new-era-busybox has not reach a very stable level yet:

foglietr at eemd2364170:/tmp/busybox-1.8.2$ grep READLINK .config
CONFIG_READLINK=y
CONFIG_FEATURE_READLINK_FOLLOW=y
foglietr at eemd2364170:/tmp/busybox-1.8.2$ ln -sf pippo pippa
foglietr at eemd2364170:/tmp/busybox-1.8.2$ ./busybox readlink pippa
pippo
foglietr at eemd2364170:/tmp/busybox-1.8.2$ ./busybox readlink -f pippa
BusyBox v1.8.2 (2007-11-27 12:05:21 CET) multi-call binary

Usage: readlink [-f] FILE

Display the value of a symlink

Options:
-f Canonicalize by following all symlinks


foglietr at eemd2364170:/tmp/busybox-1.2.2.1$ grep READLINK .config
CONFIG_READLINK=y
CONFIG_FEATURE_READLINK_FOLLOW=y
foglietr at eemd2364170:/tmp/busybox-1.2.2.1$ ln -sf pippo pippa
foglietr at eemd2364170:/tmp/busybox-1.2.2.1$ ./busybox readlink pippa
pippo
foglietr at eemd2364170:/tmp/busybox-1.2.2.1$ ./busybox readlink -f pippa
foglietr at eemd2364170:/tmp/busybox-1.2.2.1$ echo $?
1

Cheers,
--
/roberto
Denys Vlasenko
2007-11-28 06:52:13 UTC
Permalink
Post by Roberto A. Foglietta
Post by Roberto A. Foglietta
[cut]
Post by Denys Vlasenko
I don't think that I am "redesigned" busybox. It stays mostly the same,
I am just trying to make it smaller without introducing too many new bugs.
foglietr at eemd2364170:/tmp$ size busybox-1.8.2/busybox
busybox-1.2.2.1/busybox text data bss dec hex filename
319519 2070 10784 332373 51255 busybox-1.8.2/busybox
339750 4472 35172 379394 5ca02 busybox-1.2.2.1/busybox
[, [[, addgroup, adduser, adjtimex, ash, awk, basename, bunzip2,
bzcat, cat, chgrp, chmod, chown, chroot, chvt, clear, cmp, cp, cut,
date, dd, deallocvt, delgroup, deluser, df, dirname, dmesg, du, echo,
egrep, env, expr, false, fdisk, fgrep, find, free, ftpget, ftpput,
fuser, getopt, getty, grep, gunzip, gzip, halt, head, hexdump, hostid,
hostname, hwclock, id, inetd, init, insmod, install, ip, kill,
killall, klogd, ln, logger, login, logname, ls, lsmod, md5sum, mkdir,
mknod, mktemp, more, mv, netstat, nohup, openvt, passwd, pidof,
pivot_root, poweroff, printf, ps, pwd, readlink, reboot, renice,
reset, rm, rmdir, rmmod, route, sed, seq, setconsole, sh, sleep, sort,
stat, strings, stty, su, sulogin, sync, sysctl, syslogd, tail, tar,
tee, telnet, telnetd, test, time, top, touch, tr, true, tty, uname,
uniq, unzip, uptime, usleep, vi, wc, wget, which, whoami, xargs, yes,
zcat
[cut]
Post by Denys Vlasenko
Post by Denys Vlasenko
I just reran testsuite/runtest. Compared to 1.2.2, two more failures.
:( -PASS: pidof -o %PPID
+FAIL: pidof -o %PPID
-PASS: which-uses-default-path
+FAIL: which-uses-default-path
The size is 47021 smaller with the same applets which is 12/13% less.
Some other applets and options has been added. Even ignoring ipv6
(which is not complete by now) I think the balance is good. After the
ipv6 completion having a new-era-busybox very stable branch and a
developing one could be fine.
However there are some small bugs around which suggest me that
foglietr at eemd2364170:/tmp/busybox-1.8.2$ grep READLINK .config
CONFIG_READLINK=y
CONFIG_FEATURE_READLINK_FOLLOW=y
foglietr at eemd2364170:/tmp/busybox-1.8.2$ ln -sf pippo pippa
foglietr at eemd2364170:/tmp/busybox-1.8.2$ ./busybox readlink pippa
pippo
foglietr at eemd2364170:/tmp/busybox-1.8.2$ ./busybox readlink -f pippa
BusyBox v1.8.2 (2007-11-27 12:05:21 CET) multi-call binary
Usage: readlink [-f] FILE
Display the value of a symlink
-f Canonicalize by following all symlinks
Cannot reproduce.

$ ln -sf pippo pippa
$ ./busybox readlink pippa
pippo
$ ./busybox readlink -f pippa; echo $?
1
$ pwd
/home/vda/srcdev-local/bbox/fix/busybox182

It's 1.8.2 and .config also contains
CONFIG_READLINK=y
CONFIG_FEATURE_READLINK_FOLLOW=y

See attached. Please post your .config
--
vda
-------------- next part --------------
#
# Automatically generated make config: don't edit
# Busybox version: 1.8.2
# Tue Nov 27 22:47:38 2007
#
CONFIG_HAVE_DOT_CONFIG=y

#
# Busybox Settings
#

#
# General Configuration
#
CONFIG_NITPICK=y
CONFIG_DESKTOP=y
CONFIG_FEATURE_BUFFERS_USE_MALLOC=y
# CONFIG_FEATURE_BUFFERS_GO_ON_STACK is not set
# CONFIG_FEATURE_BUFFERS_GO_IN_BSS is not set
CONFIG_SHOW_USAGE=y
CONFIG_FEATURE_VERBOSE_USAGE=y
CONFIG_FEATURE_COMPRESS_USAGE=y
CONFIG_FEATURE_INSTALLER=y
# CONFIG_LOCALE_SUPPORT is not set
CONFIG_GETOPT_LONG=y
CONFIG_FEATURE_DEVPTS=y
# CONFIG_FEATURE_CLEAN_UP is not set
CONFIG_FEATURE_PIDFILE=y
CONFIG_FEATURE_SUID=y
CONFIG_FEATURE_SUID_CONFIG=y
CONFIG_FEATURE_SUID_CONFIG_QUIET=y
# CONFIG_SELINUX is not set
# CONFIG_FEATURE_PREFER_APPLETS is not set
CONFIG_BUSYBOX_EXEC_PATH="/proc/self/exe"
CONFIG_FEATURE_SYSLOG=y
CONFIG_FEATURE_HAVE_RPC=y

#
# Build Options
#
# CONFIG_STATIC is not set
# CONFIG_BUILD_LIBBUSYBOX is not set
# CONFIG_FEATURE_INDIVIDUAL is not set
# CONFIG_FEATURE_SHARED_BUSYBOX is not set
CONFIG_LFS=y

#
# Debugging Options
#
# CONFIG_DEBUG is not set
CONFIG_WERROR=y
CONFIG_NO_DEBUG_LIB=y
# CONFIG_DMALLOC is not set
# CONFIG_EFENCE is not set
CONFIG_INCLUDE_SUSv2=y

#
# Installation Options
#
# CONFIG_INSTALL_NO_USR is not set
CONFIG_INSTALL_APPLET_SYMLINKS=y
# CONFIG_INSTALL_APPLET_HARDLINKS is not set
# CONFIG_INSTALL_APPLET_SCRIPT_WRAPPERS is not set
# CONFIG_INSTALL_APPLET_DONT is not set
# CONFIG_INSTALL_SH_APPLET_SYMLINK is not set
# CONFIG_INSTALL_SH_APPLET_HARDLINK is not set
# CONFIG_INSTALL_SH_APPLET_SCRIPT_WRAPPER is not set
CONFIG_PREFIX="./_install"

#
# Busybox Library Tuning
#
CONFIG_PASSWORD_MINLEN=6
CONFIG_MD5_SIZE_VS_SPEED=2
CONFIG_FEATURE_FAST_TOP=y
# CONFIG_FEATURE_ETC_NETWORKS is not set
CONFIG_FEATURE_EDITING=y
CONFIG_FEATURE_EDITING_MAX_LEN=1024
CONFIG_FEATURE_EDITING_FANCY_KEYS=y
CONFIG_FEATURE_EDITING_VI=y
CONFIG_FEATURE_EDITING_HISTORY=15
CONFIG_FEATURE_EDITING_SAVEHISTORY=y
CONFIG_FEATURE_TAB_COMPLETION=y
CONFIG_FEATURE_USERNAME_COMPLETION=y
CONFIG_FEATURE_EDITING_FANCY_PROMPT=y
CONFIG_MONOTONIC_SYSCALL=y
# CONFIG_IOCTL_HEX2STR_ERROR is not set

#
# Applets
#

#
# Archival Utilities
#
CONFIG_AR=y
# CONFIG_FEATURE_AR_LONG_FILENAMES is not set
CONFIG_BUNZIP2=y
CONFIG_BZIP2=y
CONFIG_CPIO=y
CONFIG_DPKG=y
# CONFIG_DPKG_DEB is not set
# CONFIG_FEATURE_DPKG_DEB_EXTRACT_ONLY is not set
CONFIG_GUNZIP=y
CONFIG_FEATURE_GUNZIP_UNCOMPRESS=y
CONFIG_GZIP=y
CONFIG_RPM2CPIO=y
CONFIG_RPM=y
CONFIG_FEATURE_RPM_BZ2=y
CONFIG_TAR=y
CONFIG_FEATURE_TAR_CREATE=y
CONFIG_FEATURE_TAR_BZIP2=y
CONFIG_FEATURE_TAR_LZMA=y
CONFIG_FEATURE_TAR_FROM=y
CONFIG_FEATURE_TAR_GZIP=y
CONFIG_FEATURE_TAR_COMPRESS=y
CONFIG_FEATURE_TAR_OLDGNU_COMPATIBILITY=y
CONFIG_FEATURE_TAR_OLDSUN_COMPATIBILITY=y
CONFIG_FEATURE_TAR_GNU_EXTENSIONS=y
CONFIG_FEATURE_TAR_LONG_OPTIONS=y
CONFIG_UNCOMPRESS=y
CONFIG_UNLZMA=y
CONFIG_FEATURE_LZMA_FAST=y
CONFIG_UNZIP=y

#
# Common options for cpio and tar
#
CONFIG_FEATURE_UNARCHIVE_TAPE=y

#
# Common options for dpkg and dpkg_deb
#
CONFIG_FEATURE_DEB_TAR_GZ=y
CONFIG_FEATURE_DEB_TAR_BZ2=y
CONFIG_FEATURE_DEB_TAR_LZMA=y

#
# Coreutils
#
CONFIG_BASENAME=y
CONFIG_CAL=y
CONFIG_CAT=y
CONFIG_CATV=y
CONFIG_CHGRP=y
CONFIG_CHMOD=y
CONFIG_CHOWN=y
CONFIG_CHROOT=y
CONFIG_CKSUM=y
CONFIG_COMM=y
CONFIG_CP=y
CONFIG_CUT=y
CONFIG_DATE=y
CONFIG_FEATURE_DATE_ISOFMT=y
CONFIG_DD=y
CONFIG_FEATURE_DD_SIGNAL_HANDLING=y
CONFIG_FEATURE_DD_IBS_OBS=y
CONFIG_DF=y
CONFIG_DIRNAME=y
CONFIG_DOS2UNIX=y
CONFIG_UNIX2DOS=y
CONFIG_DU=y
CONFIG_FEATURE_DU_DEFAULT_BLOCKSIZE_1K=y
CONFIG_ECHO=y
CONFIG_FEATURE_FANCY_ECHO=y
CONFIG_ENV=y
CONFIG_FEATURE_ENV_LONG_OPTIONS=y
CONFIG_EXPAND=y
CONFIG_FEATURE_EXPAND_LONG_OPTIONS=y
CONFIG_EXPR=y
CONFIG_EXPR_MATH_SUPPORT_64=y
CONFIG_FALSE=y
CONFIG_FOLD=y
CONFIG_HEAD=y
CONFIG_FEATURE_FANCY_HEAD=y
CONFIG_HOSTID=y
CONFIG_ID=y
CONFIG_INSTALL=y
CONFIG_FEATURE_INSTALL_LONG_OPTIONS=y
CONFIG_LENGTH=y
CONFIG_LN=y
CONFIG_LOGNAME=y
CONFIG_LS=y
CONFIG_FEATURE_LS_FILETYPES=y
CONFIG_FEATURE_LS_FOLLOWLINKS=y
CONFIG_FEATURE_LS_RECURSIVE=y
CONFIG_FEATURE_LS_SORTFILES=y
CONFIG_FEATURE_LS_TIMESTAMPS=y
CONFIG_FEATURE_LS_USERNAME=y
CONFIG_FEATURE_LS_COLOR=y
CONFIG_FEATURE_LS_COLOR_IS_DEFAULT=y
CONFIG_MD5SUM=y
CONFIG_MKDIR=y
CONFIG_FEATURE_MKDIR_LONG_OPTIONS=y
CONFIG_MKFIFO=y
CONFIG_MKNOD=y
CONFIG_MV=y
CONFIG_FEATURE_MV_LONG_OPTIONS=y
CONFIG_NICE=y
CONFIG_NOHUP=y
CONFIG_OD=y
CONFIG_PRINTENV=y
CONFIG_PRINTF=y
CONFIG_PWD=y
CONFIG_READLINK=y
CONFIG_FEATURE_READLINK_FOLLOW=y
CONFIG_REALPATH=y
CONFIG_RM=y
CONFIG_RMDIR=y
CONFIG_SEQ=y
CONFIG_SHA1SUM=y
CONFIG_SLEEP=y
CONFIG_FEATURE_FANCY_SLEEP=y
CONFIG_SORT=y
CONFIG_FEATURE_SORT_BIG=y
CONFIG_SPLIT=y
CONFIG_FEATURE_SPLIT_FANCY=y
CONFIG_STAT=y
CONFIG_FEATURE_STAT_FORMAT=y
CONFIG_STTY=y
CONFIG_SUM=y
CONFIG_SYNC=y
CONFIG_TAIL=y
CONFIG_FEATURE_FANCY_TAIL=y
CONFIG_TEE=y
CONFIG_FEATURE_TEE_USE_BLOCK_IO=y
CONFIG_TEST=y
CONFIG_FEATURE_TEST_64=y
CONFIG_TOUCH=y
CONFIG_TR=y
CONFIG_FEATURE_TR_CLASSES=y
CONFIG_FEATURE_TR_EQUIV=y
CONFIG_TRUE=y
CONFIG_TTY=y
CONFIG_UNAME=y
CONFIG_UNEXPAND=y
CONFIG_FEATURE_UNEXPAND_LONG_OPTIONS=y
CONFIG_UNIQ=y
CONFIG_USLEEP=y
CONFIG_UUDECODE=y
CONFIG_UUENCODE=y
CONFIG_WC=y
CONFIG_FEATURE_WC_LARGE=y
CONFIG_WHO=y
CONFIG_WHOAMI=y
CONFIG_YES=y

#
# Common options for cp and mv
#
CONFIG_FEATURE_PRESERVE_HARDLINKS=y

#
# Common options for ls, more and telnet
#
CONFIG_FEATURE_AUTOWIDTH=y

#
# Common options for df, du, ls
#
CONFIG_FEATURE_HUMAN_READABLE=y

#
# Common options for md5sum, sha1sum
#
CONFIG_FEATURE_MD5_SHA1_SUM_CHECK=y

#
# Console Utilities
#
CONFIG_CHVT=y
CONFIG_CLEAR=y
CONFIG_DEALLOCVT=y
CONFIG_DUMPKMAP=y
CONFIG_KBD_MODE=y
CONFIG_LOADFONT=y
CONFIG_LOADKMAP=y
CONFIG_OPENVT=y
CONFIG_RESET=y
CONFIG_RESIZE=y
CONFIG_FEATURE_RESIZE_PRINT=y
CONFIG_SETCONSOLE=y
CONFIG_FEATURE_SETCONSOLE_LONG_OPTIONS=y
CONFIG_SETKEYCODES=y
CONFIG_SETLOGCONS=y

#
# Debian Utilities
#
CONFIG_MKTEMP=y
CONFIG_PIPE_PROGRESS=y
CONFIG_RUN_PARTS=y
CONFIG_FEATURE_RUN_PARTS_LONG_OPTIONS=y
CONFIG_FEATURE_RUN_PARTS_FANCY=y
CONFIG_START_STOP_DAEMON=y
CONFIG_FEATURE_START_STOP_DAEMON_FANCY=y
CONFIG_FEATURE_START_STOP_DAEMON_LONG_OPTIONS=y
CONFIG_WHICH=y

#
# Editors
#
CONFIG_AWK=y
CONFIG_FEATURE_AWK_MATH=y
CONFIG_CMP=y
CONFIG_DIFF=y
CONFIG_FEATURE_DIFF_BINARY=y
CONFIG_FEATURE_DIFF_DIR=y
CONFIG_FEATURE_DIFF_MINIMAL=y
CONFIG_ED=y
CONFIG_PATCH=y
CONFIG_SED=y
CONFIG_VI=y
CONFIG_FEATURE_VI_MAX_LEN=1024
CONFIG_FEATURE_VI_COLON=y
CONFIG_FEATURE_VI_YANKMARK=y
CONFIG_FEATURE_VI_SEARCH=y
CONFIG_FEATURE_VI_USE_SIGNALS=y
CONFIG_FEATURE_VI_DOT_CMD=y
CONFIG_FEATURE_VI_READONLY=y
CONFIG_FEATURE_VI_SETOPTS=y
CONFIG_FEATURE_VI_SET=y
CONFIG_FEATURE_VI_WIN_RESIZE=y
CONFIG_FEATURE_VI_OPTIMIZE_CURSOR=y
CONFIG_FEATURE_ALLOW_EXEC=y

#
# Finding Utilities
#
CONFIG_FIND=y
CONFIG_FEATURE_FIND_PRINT0=y
CONFIG_FEATURE_FIND_MTIME=y
CONFIG_FEATURE_FIND_MMIN=y
CONFIG_FEATURE_FIND_PERM=y
CONFIG_FEATURE_FIND_TYPE=y
CONFIG_FEATURE_FIND_XDEV=y
CONFIG_FEATURE_FIND_MAXDEPTH=y
CONFIG_FEATURE_FIND_NEWER=y
CONFIG_FEATURE_FIND_INUM=y
CONFIG_FEATURE_FIND_EXEC=y
CONFIG_FEATURE_FIND_USER=y
CONFIG_FEATURE_FIND_GROUP=y
CONFIG_FEATURE_FIND_NOT=y
CONFIG_FEATURE_FIND_DEPTH=y
CONFIG_FEATURE_FIND_PAREN=y
CONFIG_FEATURE_FIND_SIZE=y
CONFIG_FEATURE_FIND_PRUNE=y
CONFIG_FEATURE_FIND_DELETE=y
CONFIG_FEATURE_FIND_PATH=y
CONFIG_FEATURE_FIND_REGEX=y
# CONFIG_FEATURE_FIND_CONTEXT is not set
CONFIG_GREP=y
CONFIG_FEATURE_GREP_EGREP_ALIAS=y
CONFIG_FEATURE_GREP_FGREP_ALIAS=y
CONFIG_FEATURE_GREP_CONTEXT=y
CONFIG_XARGS=y
CONFIG_FEATURE_XARGS_SUPPORT_CONFIRMATION=y
CONFIG_FEATURE_XARGS_SUPPORT_QUOTES=y
CONFIG_FEATURE_XARGS_SUPPORT_TERMOPT=y
CONFIG_FEATURE_XARGS_SUPPORT_ZERO_TERM=y

#
# Init Utilities
#
# CONFIG_INIT is not set
# CONFIG_DEBUG_INIT is not set
# CONFIG_FEATURE_USE_INITTAB is not set
# CONFIG_FEATURE_INIT_SCTTY is not set
# CONFIG_FEATURE_INIT_SYSLOG is not set
# CONFIG_FEATURE_EXTRA_QUIET is not set
# CONFIG_FEATURE_INIT_COREDUMPS is not set
# CONFIG_FEATURE_INITRD is not set
# CONFIG_HALT is not set
CONFIG_MESG=y

#
# Login/Password Management Utilities
#
CONFIG_FEATURE_SHADOWPASSWDS=y
CONFIG_USE_BB_SHADOW=y
CONFIG_USE_BB_PWD_GRP=y
CONFIG_ADDGROUP=y
CONFIG_FEATURE_ADDUSER_TO_GROUP=y
CONFIG_DELGROUP=y
CONFIG_FEATURE_DEL_USER_FROM_GROUP=y
CONFIG_ADDUSER=y
CONFIG_DELUSER=y
CONFIG_GETTY=y
CONFIG_FEATURE_UTMP=y
CONFIG_FEATURE_WTMP=y
CONFIG_LOGIN=y
# CONFIG_PAM is not set
CONFIG_LOGIN_SCRIPTS=y
# CONFIG_FEATURE_NOLOGIN is not set
CONFIG_FEATURE_SECURETTY=y
CONFIG_PASSWD=y
CONFIG_FEATURE_PASSWD_WEAK_CHECK=y
CONFIG_CRYPTPW=y
CONFIG_CHPASSWD=y
CONFIG_SU=y
CONFIG_FEATURE_SU_SYSLOG=y
CONFIG_FEATURE_SU_CHECKS_SHELLS=y
CONFIG_SULOGIN=y
CONFIG_VLOCK=y

#
# Linux Ext2 FS Progs
#
CONFIG_CHATTR=y
CONFIG_FSCK=y
CONFIG_LSATTR=y

#
# Linux Module Utilities
#
CONFIG_INSMOD=y
CONFIG_FEATURE_INSMOD_VERSION_CHECKING=y
CONFIG_FEATURE_INSMOD_KSYMOOPS_SYMBOLS=y
CONFIG_FEATURE_INSMOD_LOADINKMEM=y
CONFIG_FEATURE_INSMOD_LOAD_MAP=y
CONFIG_FEATURE_INSMOD_LOAD_MAP_FULL=y
CONFIG_RMMOD=y
CONFIG_LSMOD=y
CONFIG_FEATURE_LSMOD_PRETTY_2_6_OUTPUT=y
CONFIG_MODPROBE=y
CONFIG_FEATURE_MODPROBE_MULTIPLE_OPTIONS=y
CONFIG_FEATURE_MODPROBE_FANCY_ALIAS=y

#
# Options common to multiple modutils
#
CONFIG_FEATURE_CHECK_TAINTED_MODULE=y
CONFIG_FEATURE_2_4_MODULES=y
CONFIG_FEATURE_2_6_MODULES=y
# CONFIG_FEATURE_QUERY_MODULE_INTERFACE is not set

#
# Linux System Utilities
#
CONFIG_DMESG=y
CONFIG_FEATURE_DMESG_PRETTY=y
CONFIG_FBSET=y
CONFIG_FEATURE_FBSET_FANCY=y
CONFIG_FEATURE_FBSET_READMODE=y
CONFIG_FDFLUSH=y
CONFIG_FDFORMAT=y
CONFIG_FDISK=y
CONFIG_FDISK_SUPPORT_LARGE_DISKS=y
CONFIG_FEATURE_FDISK_WRITABLE=y
# CONFIG_FEATURE_AIX_LABEL is not set
# CONFIG_FEATURE_SGI_LABEL is not set
# CONFIG_FEATURE_SUN_LABEL is not set
# CONFIG_FEATURE_OSF_LABEL is not set
CONFIG_FEATURE_FDISK_ADVANCED=y
CONFIG_FREERAMDISK=y
CONFIG_FSCK_MINIX=y
CONFIG_MKFS_MINIX=y

#
# Minix filesystem support
#
CONFIG_FEATURE_MINIX2=y
CONFIG_GETOPT=y
CONFIG_HEXDUMP=y
CONFIG_HWCLOCK=y
CONFIG_FEATURE_HWCLOCK_LONG_OPTIONS=y
CONFIG_FEATURE_HWCLOCK_ADJTIME_FHS=y
CONFIG_IPCRM=y
CONFIG_IPCS=y
CONFIG_LOSETUP=y
CONFIG_MDEV=y
CONFIG_FEATURE_MDEV_CONF=y
CONFIG_FEATURE_MDEV_EXEC=y
CONFIG_FEATURE_MDEV_LOAD_FIRMWARE=y
CONFIG_MKSWAP=y
CONFIG_FEATURE_MKSWAP_V0=y
CONFIG_MORE=y
CONFIG_FEATURE_USE_TERMIOS=y
CONFIG_MOUNT=y
CONFIG_FEATURE_MOUNT_HELPERS=y
CONFIG_FEATURE_MOUNT_NFS=y
CONFIG_FEATURE_MOUNT_CIFS=y
CONFIG_FEATURE_MOUNT_FLAGS=y
CONFIG_FEATURE_MOUNT_FSTAB=y
CONFIG_PIVOT_ROOT=y
CONFIG_RDATE=y
CONFIG_READPROFILE=y
CONFIG_SETARCH=y
CONFIG_SWAPONOFF=y
CONFIG_SWITCH_ROOT=y
CONFIG_UMOUNT=y
CONFIG_FEATURE_UMOUNT_ALL=y

#
# Common options for mount/umount
#
CONFIG_FEATURE_MOUNT_LOOP=y
# CONFIG_FEATURE_MTAB_SUPPORT is not set

#
# Miscellaneous Utilities
#
CONFIG_ADJTIMEX=y
# CONFIG_BBCONFIG is not set
CONFIG_CHRT=y
CONFIG_CROND=y
# CONFIG_DEBUG_CROND_OPTION is not set
CONFIG_FEATURE_CROND_CALL_SENDMAIL=y
CONFIG_CRONTAB=y
CONFIG_DC=y
# CONFIG_DEVFSD is not set
# CONFIG_DEVFSD_MODLOAD is not set
# CONFIG_DEVFSD_FG_NP is not set
# CONFIG_DEVFSD_VERBOSE is not set
# CONFIG_FEATURE_DEVFS is not set
CONFIG_EJECT=y
CONFIG_LAST=y
CONFIG_LESS=y
CONFIG_FEATURE_LESS_MAXLINES=9999999
CONFIG_FEATURE_LESS_BRACKETS=y
CONFIG_FEATURE_LESS_FLAGS=y
CONFIG_FEATURE_LESS_FLAGCS=y
CONFIG_FEATURE_LESS_MARKS=y
CONFIG_FEATURE_LESS_REGEXP=y
CONFIG_HDPARM=y
CONFIG_FEATURE_HDPARM_GET_IDENTITY=y
CONFIG_FEATURE_HDPARM_HDIO_SCAN_HWIF=y
CONFIG_FEATURE_HDPARM_HDIO_UNREGISTER_HWIF=y
CONFIG_FEATURE_HDPARM_HDIO_DRIVE_RESET=y
CONFIG_FEATURE_HDPARM_HDIO_TRISTATE_HWIF=y
CONFIG_FEATURE_HDPARM_HDIO_GETSET_DMA=y
# CONFIG_MAKEDEVS is not set
# CONFIG_FEATURE_MAKEDEVS_LEAF is not set
# CONFIG_FEATURE_MAKEDEVS_TABLE is not set
CONFIG_MICROCOM=y
CONFIG_MOUNTPOINT=y
CONFIG_MT=y
CONFIG_RAIDAUTORUN=y
# CONFIG_READAHEAD is not set
CONFIG_RUNLEVEL=y
CONFIG_RX=y
CONFIG_STRINGS=y
CONFIG_SETSID=y
# CONFIG_TASKSET is not set
# CONFIG_FEATURE_TASKSET_FANCY is not set
CONFIG_TIME=y
CONFIG_TTYSIZE=y
CONFIG_WATCHDOG=y

#
# Networking Utilities
#
CONFIG_FEATURE_IPV6=y
CONFIG_VERBOSE_RESOLUTION_ERRORS=y
CONFIG_ARP=y
CONFIG_ARPING=y
CONFIG_DNSD=y
# CONFIG_ETHER_WAKE is not set
CONFIG_FAKEIDENTD=y
CONFIG_FTPGET=y
CONFIG_FTPPUT=y
CONFIG_FEATURE_FTPGETPUT_LONG_OPTIONS=y
CONFIG_HOSTNAME=y
CONFIG_HTTPD=y
CONFIG_FEATURE_HTTPD_RANGES=y
CONFIG_FEATURE_HTTPD_USE_SENDFILE=y
CONFIG_FEATURE_HTTPD_RELOAD_CONFIG_SIGHUP=y
CONFIG_FEATURE_HTTPD_SETUID=y
CONFIG_FEATURE_HTTPD_BASIC_AUTH=y
CONFIG_FEATURE_HTTPD_AUTH_MD5=y
CONFIG_FEATURE_HTTPD_CONFIG_WITH_MIME_TYPES=y
CONFIG_FEATURE_HTTPD_CGI=y
CONFIG_FEATURE_HTTPD_CONFIG_WITH_SCRIPT_INTERPR=y
CONFIG_FEATURE_HTTPD_SET_REMOTE_PORT_TO_ENV=y
CONFIG_FEATURE_HTTPD_ENCODE_URL_STR=y
CONFIG_FEATURE_HTTPD_ERROR_PAGES=y
CONFIG_FEATURE_HTTPD_PROXY=y
CONFIG_IFCONFIG=y
CONFIG_FEATURE_IFCONFIG_STATUS=y
CONFIG_FEATURE_IFCONFIG_SLIP=y
CONFIG_FEATURE_IFCONFIG_MEMSTART_IOADDR_IRQ=y
CONFIG_FEATURE_IFCONFIG_HW=y
CONFIG_FEATURE_IFCONFIG_BROADCAST_PLUS=y
CONFIG_IFUPDOWN=y
CONFIG_IFUPDOWN_IFSTATE_PATH="/var/run/ifstate"
CONFIG_FEATURE_IFUPDOWN_IP=y
CONFIG_FEATURE_IFUPDOWN_IP_BUILTIN=y
# CONFIG_FEATURE_IFUPDOWN_IFCONFIG_BUILTIN is not set
CONFIG_FEATURE_IFUPDOWN_IPV4=y
CONFIG_FEATURE_IFUPDOWN_IPV6=y
CONFIG_FEATURE_IFUPDOWN_MAPPING=y
CONFIG_FEATURE_IFUPDOWN_EXTERNAL_DHCP=y
CONFIG_INETD=y
CONFIG_FEATURE_INETD_SUPPORT_BUILTIN_ECHO=y
CONFIG_FEATURE_INETD_SUPPORT_BUILTIN_DISCARD=y
CONFIG_FEATURE_INETD_SUPPORT_BUILTIN_TIME=y
CONFIG_FEATURE_INETD_SUPPORT_BUILTIN_DAYTIME=y
CONFIG_FEATURE_INETD_SUPPORT_BUILTIN_CHARGEN=y
CONFIG_FEATURE_INETD_RPC=y
CONFIG_IP=y
CONFIG_FEATURE_IP_ADDRESS=y
CONFIG_FEATURE_IP_LINK=y
CONFIG_FEATURE_IP_ROUTE=y
CONFIG_FEATURE_IP_TUNNEL=y
CONFIG_FEATURE_IP_RULE=y
CONFIG_FEATURE_IP_SHORT_FORMS=y
CONFIG_FEATURE_IP_RARE_PROTOCOLS=y
CONFIG_IPADDR=y
CONFIG_IPLINK=y
CONFIG_IPROUTE=y
CONFIG_IPTUNNEL=y
CONFIG_IPRULE=y
CONFIG_IPCALC=y
CONFIG_FEATURE_IPCALC_FANCY=y
CONFIG_FEATURE_IPCALC_LONG_OPTIONS=y
CONFIG_NAMEIF=y
CONFIG_NC=y
CONFIG_NC_SERVER=y
CONFIG_NC_EXTRA=y
CONFIG_NETSTAT=y
# CONFIG_FEATURE_NETSTAT_WIDE is not set
CONFIG_NSLOOKUP=y
CONFIG_PING=y
CONFIG_PING6=y
CONFIG_PSCAN=y
CONFIG_FEATURE_FANCY_PING=y
CONFIG_ROUTE=y
CONFIG_SLATTACH=y
CONFIG_TELNET=y
CONFIG_FEATURE_TELNET_TTYPE=y
CONFIG_FEATURE_TELNET_AUTOLOGIN=y
CONFIG_TELNETD=y
CONFIG_FEATURE_TELNETD_STANDALONE=y
CONFIG_TFTP=y
CONFIG_FEATURE_TFTP_GET=y
CONFIG_FEATURE_TFTP_PUT=y
CONFIG_FEATURE_TFTP_BLOCKSIZE=y
# CONFIG_DEBUG_TFTP is not set
CONFIG_TRACEROUTE=y
CONFIG_FEATURE_TRACEROUTE_VERBOSE=y
CONFIG_FEATURE_TRACEROUTE_SOURCE_ROUTE=y
CONFIG_FEATURE_TRACEROUTE_USE_ICMP=y
CONFIG_APP_UDHCPD=y
CONFIG_APP_DHCPRELAY=y
CONFIG_APP_DUMPLEASES=y
CONFIG_FEATURE_UDHCPD_WRITE_LEASES_EARLY=y
CONFIG_APP_UDHCPC=y
# CONFIG_FEATURE_UDHCP_DEBUG is not set
CONFIG_FEATURE_RFC3397=y
CONFIG_VCONFIG=y
CONFIG_WGET=y
CONFIG_FEATURE_WGET_STATUSBAR=y
CONFIG_FEATURE_WGET_AUTHENTICATION=y
CONFIG_FEATURE_WGET_LONG_OPTIONS=y
CONFIG_ZCIP=y

#
# Process Utilities
#
CONFIG_FREE=y
CONFIG_FUSER=y
CONFIG_KILL=y
CONFIG_KILLALL=y
CONFIG_KILLALL5=y
CONFIG_NMETER=y
CONFIG_PGREP=y
CONFIG_PIDOF=y
CONFIG_FEATURE_PIDOF_SINGLE=y
CONFIG_FEATURE_PIDOF_OMIT=y
CONFIG_PKILL=y
CONFIG_PS=y
CONFIG_FEATURE_PS_WIDE=y
CONFIG_RENICE=y
CONFIG_BB_SYSCTL=y
CONFIG_TOP=y
CONFIG_FEATURE_TOP_CPU_USAGE_PERCENTAGE=y
CONFIG_FEATURE_TOP_CPU_GLOBAL_PERCENTS=y
# CONFIG_FEATURE_TOP_DECIMALS is not set
CONFIG_FEATURE_TOPMEM=y
CONFIG_UPTIME=y
CONFIG_WATCH=y

#
# Shells
#
# CONFIG_FEATURE_SH_IS_ASH is not set
# CONFIG_FEATURE_SH_IS_HUSH is not set
# CONFIG_FEATURE_SH_IS_LASH is not set
# CONFIG_FEATURE_SH_IS_MSH is not set
CONFIG_FEATURE_SH_IS_NONE=y
CONFIG_ASH=y

#
# Ash Shell Options
#
CONFIG_ASH_JOB_CONTROL=y
CONFIG_ASH_READ_NCHARS=y
CONFIG_ASH_READ_TIMEOUT=y
CONFIG_ASH_ALIAS=y
CONFIG_ASH_MATH_SUPPORT=y
CONFIG_ASH_MATH_SUPPORT_64=y
CONFIG_ASH_GETOPTS=y
CONFIG_ASH_BUILTIN_ECHO=y
CONFIG_ASH_BUILTIN_TEST=y
CONFIG_ASH_CMDCMD=y
CONFIG_ASH_MAIL=y
CONFIG_ASH_OPTIMIZE_FOR_SIZE=y
CONFIG_ASH_RANDOM_SUPPORT=y
# CONFIG_ASH_EXPAND_PRMT is not set
CONFIG_HUSH=y
CONFIG_HUSH_HELP=y
CONFIG_HUSH_INTERACTIVE=y
CONFIG_HUSH_JOB=y
CONFIG_HUSH_TICK=y
CONFIG_HUSH_IF=y
CONFIG_HUSH_LOOPS=y
CONFIG_LASH=y
CONFIG_MSH=y

#
# Bourne Shell Options
#
CONFIG_FEATURE_SH_EXTRA_QUIET=y
# CONFIG_FEATURE_SH_STANDALONE is not set
# CONFIG_CTTYHACK is not set

#
# System Logging Utilities
#
CONFIG_SYSLOGD=y
CONFIG_FEATURE_ROTATE_LOGFILE=y
CONFIG_FEATURE_REMOTE_LOG=y
CONFIG_FEATURE_IPC_SYSLOG=y
CONFIG_FEATURE_IPC_SYSLOG_BUFFER_SIZE=16
CONFIG_LOGREAD=y
CONFIG_FEATURE_LOGREAD_REDUCED_LOCKING=y
CONFIG_KLOGD=y
CONFIG_LOGGER=y

#
# Runit Utilities
#
CONFIG_RUNSV=y
CONFIG_RUNSVDIR=y
CONFIG_SV=y
CONFIG_SVLOGD=y
CONFIG_CHPST=y
CONFIG_SETUIDGID=y
CONFIG_ENVUIDGID=y
CONFIG_ENVDIR=y
CONFIG_SOFTLIMIT=y
# CONFIG_CHCON is not set
# CONFIG_FEATURE_CHCON_LONG_OPTIONS is not set
# CONFIG_GETENFORCE is not set
# CONFIG_GETSEBOOL is not set
# CONFIG_LOAD_POLICY is not set
# CONFIG_MATCHPATHCON is not set
# CONFIG_RESTORECON is not set
# CONFIG_RUNCON is not set
# CONFIG_FEATURE_RUNCON_LONG_OPTIONS is not set
# CONFIG_SELINUXENABLED is not set
# CONFIG_SETENFORCE is not set
# CONFIG_SETFILES is not set
# CONFIG_FEATURE_SETFILES_CHECK_OPTION is not set
# CONFIG_SETSEBOOL is not set

#
# ipsvd utilities
#
CONFIG_TCPSVD=y
CONFIG_UDPSVD=y
Roberto A. Foglietta
2007-11-28 08:52:09 UTC
Permalink
Post by Denys Vlasenko
Post by Roberto A. Foglietta
Post by Roberto A. Foglietta
[cut]
Post by Denys Vlasenko
I don't think that I am "redesigned" busybox. It stays mostly the same,
I am just trying to make it smaller without introducing too many new bugs.
foglietr at eemd2364170:/tmp$ size busybox-1.8.2/busybox
busybox-1.2.2.1/busybox text data bss dec hex filename
319519 2070 10784 332373 51255 busybox-1.8.2/busybox
339750 4472 35172 379394 5ca02 busybox-1.2.2.1/busybox
[, [[, addgroup, adduser, adjtimex, ash, awk, basename, bunzip2,
bzcat, cat, chgrp, chmod, chown, chroot, chvt, clear, cmp, cp, cut,
date, dd, deallocvt, delgroup, deluser, df, dirname, dmesg, du, echo,
egrep, env, expr, false, fdisk, fgrep, find, free, ftpget, ftpput,
fuser, getopt, getty, grep, gunzip, gzip, halt, head, hexdump, hostid,
hostname, hwclock, id, inetd, init, insmod, install, ip, kill,
killall, klogd, ln, logger, login, logname, ls, lsmod, md5sum, mkdir,
mknod, mktemp, more, mv, netstat, nohup, openvt, passwd, pidof,
pivot_root, poweroff, printf, ps, pwd, readlink, reboot, renice,
reset, rm, rmdir, rmmod, route, sed, seq, setconsole, sh, sleep, sort,
stat, strings, stty, su, sulogin, sync, sysctl, syslogd, tail, tar,
tee, telnet, telnetd, test, time, top, touch, tr, true, tty, uname,
uniq, unzip, uptime, usleep, vi, wc, wget, which, whoami, xargs, yes,
zcat
[cut]
Post by Denys Vlasenko
Post by Denys Vlasenko
I just reran testsuite/runtest. Compared to 1.2.2, two more failures.
:( -PASS: pidof -o %PPID
+FAIL: pidof -o %PPID
-PASS: which-uses-default-path
+FAIL: which-uses-default-path
The size is 47021 smaller with the same applets which is 12/13% less.
Some other applets and options has been added. Even ignoring ipv6
(which is not complete by now) I think the balance is good. After the
ipv6 completion having a new-era-busybox very stable branch and a
developing one could be fine.
However there are some small bugs around which suggest me that
foglietr at eemd2364170:/tmp/busybox-1.8.2$ grep READLINK .config
CONFIG_READLINK=y
CONFIG_FEATURE_READLINK_FOLLOW=y
foglietr at eemd2364170:/tmp/busybox-1.8.2$ ln -sf pippo pippa
foglietr at eemd2364170:/tmp/busybox-1.8.2$ ./busybox readlink pippa
pippo
foglietr at eemd2364170:/tmp/busybox-1.8.2$ ./busybox readlink -f pippa
BusyBox v1.8.2 (2007-11-27 12:05:21 CET) multi-call binary
Usage: readlink [-f] FILE
Display the value of a symlink
-f Canonicalize by following all symlinks
Cannot reproduce.
$ ln -sf pippo pippa
$ ./busybox readlink pippa
pippo
$ ./busybox readlink -f pippa; echo $?
1
$ pwd
/home/vda/srcdev-local/bbox/fix/busybox182
It's 1.8.2 and .config also contains
CONFIG_READLINK=y
CONFIG_FEATURE_READLINK_FOLLOW=y
See attached. Please post your .config
My original .config got lost in /tmp, however it was done as described below:

make distclean
make allnoconfig
make menuconfig -> added readlinf and -f only -> exit&save
make

I have done that 2 times and I was pretty sure of the result... but no!
I cannot reproduce it any more me too. You have all my apologize,

I am really sorry,
--
/roberto
Bernhard Fischer
2007-11-28 14:41:48 UTC
Permalink
Post by Roberto A. Foglietta
$ ln -sf pippo pippa
$ ./busybox readlink pippa
pippo
$ ./busybox readlink -f pippa; echo $?
1
The big 'readlink -f /there/does_not_exist' does print the path (fully
resolved "/there" plus all non-existing other components), though.
Roberto A. Foglietta
2007-11-28 15:10:10 UTC
Permalink
Post by Bernhard Fischer
Post by Roberto A. Foglietta
$ ln -sf pippo pippa
$ ./busybox readlink pippa
pippo
$ ./busybox readlink -f pippa; echo $?
1
The big 'readlink -f /there/does_not_exist' does print the path (fully
resolved "/there" plus all non-existing other components), though.
Yes, but it is nothing new because 1.2.2.1's readlink works in the
same manner.

I recently posted a more complete readlink applet to toybox m-list
but it requires a little bit of love (test, size reduction, thinking
about some corner case). I do not think it could be used AS-IS for
busybox however I think would require not such effort to be integrated
in bb. Feel free to use it and if you like give a little credit to
toybox team because I had their support in developing that patch.

Cheers,
--
/roberto
-------------- next part --------------
A non-text attachment was scrubbed...
Name: toybox_readlink-007_developing.patch
Type: text/x-patch
Size: 5460 bytes
Desc: not available
Url : http://busybox.net/lists/busybox/attachments/20071128/20bd8e0b/attachment.bin
-------------- next part --------------
A non-text attachment was scrubbed...
Name: toybox_readlink-007.patch
Type: text/x-patch
Size: 5228 bytes
Desc: not available
Url : http://busybox.net/lists/busybox/attachments/20071128/20bd8e0b/attachment-0001.bin
Roberto A. Foglietta
2007-11-28 15:10:10 UTC
Permalink
Post by Bernhard Fischer
Post by Roberto A. Foglietta
$ ln -sf pippo pippa
$ ./busybox readlink pippa
pippo
$ ./busybox readlink -f pippa; echo $?
1
The big 'readlink -f /there/does_not_exist' does print the path (fully
resolved "/there" plus all non-existing other components), though.
Yes, but it is nothing new because 1.2.2.1's readlink works in the
same manner.

I recently posted a more complete readlink applet to toybox m-list
but it requires a little bit of love (test, size reduction, thinking
about some corner case). I do not think it could be used AS-IS for
busybox however I think would require not such effort to be integrated
in bb. Feel free to use it and if you like give a little credit to
toybox team because I had their support in developing that patch.

Cheers,
--
/roberto
-------------- next part --------------
A non-text attachment was scrubbed...
Name: toybox_readlink-007_developing.patch
Type: text/x-patch
Size: 5460 bytes
Desc: not available
Url : http://lists.busybox.net/pipermail/busybox/attachments/20071128/20bd8e0b/attachment-0004.bin
-------------- next part --------------
A non-text attachment was scrubbed...
Name: toybox_readlink-007.patch
Type: text/x-patch
Size: 5228 bytes
Desc: not available
Url : http://lists.busybox.net/pipermail/busybox/attachments/20071128/20bd8e0b/attachment-0005.bin
Bernhard Fischer
2007-11-28 14:41:48 UTC
Permalink
Post by Roberto A. Foglietta
$ ln -sf pippo pippa
$ ./busybox readlink pippa
pippo
$ ./busybox readlink -f pippa; echo $?
1
The big 'readlink -f /there/does_not_exist' does print the path (fully
resolved "/there" plus all non-existing other components), though.
Roberto A. Foglietta
2007-11-28 08:52:09 UTC
Permalink
Post by Denys Vlasenko
Post by Roberto A. Foglietta
Post by Roberto A. Foglietta
[cut]
Post by Denys Vlasenko
I don't think that I am "redesigned" busybox. It stays mostly the same,
I am just trying to make it smaller without introducing too many new bugs.
foglietr at eemd2364170:/tmp$ size busybox-1.8.2/busybox
busybox-1.2.2.1/busybox text data bss dec hex filename
319519 2070 10784 332373 51255 busybox-1.8.2/busybox
339750 4472 35172 379394 5ca02 busybox-1.2.2.1/busybox
[, [[, addgroup, adduser, adjtimex, ash, awk, basename, bunzip2,
bzcat, cat, chgrp, chmod, chown, chroot, chvt, clear, cmp, cp, cut,
date, dd, deallocvt, delgroup, deluser, df, dirname, dmesg, du, echo,
egrep, env, expr, false, fdisk, fgrep, find, free, ftpget, ftpput,
fuser, getopt, getty, grep, gunzip, gzip, halt, head, hexdump, hostid,
hostname, hwclock, id, inetd, init, insmod, install, ip, kill,
killall, klogd, ln, logger, login, logname, ls, lsmod, md5sum, mkdir,
mknod, mktemp, more, mv, netstat, nohup, openvt, passwd, pidof,
pivot_root, poweroff, printf, ps, pwd, readlink, reboot, renice,
reset, rm, rmdir, rmmod, route, sed, seq, setconsole, sh, sleep, sort,
stat, strings, stty, su, sulogin, sync, sysctl, syslogd, tail, tar,
tee, telnet, telnetd, test, time, top, touch, tr, true, tty, uname,
uniq, unzip, uptime, usleep, vi, wc, wget, which, whoami, xargs, yes,
zcat
[cut]
Post by Denys Vlasenko
Post by Denys Vlasenko
I just reran testsuite/runtest. Compared to 1.2.2, two more failures.
:( -PASS: pidof -o %PPID
+FAIL: pidof -o %PPID
-PASS: which-uses-default-path
+FAIL: which-uses-default-path
The size is 47021 smaller with the same applets which is 12/13% less.
Some other applets and options has been added. Even ignoring ipv6
(which is not complete by now) I think the balance is good. After the
ipv6 completion having a new-era-busybox very stable branch and a
developing one could be fine.
However there are some small bugs around which suggest me that
foglietr at eemd2364170:/tmp/busybox-1.8.2$ grep READLINK .config
CONFIG_READLINK=y
CONFIG_FEATURE_READLINK_FOLLOW=y
foglietr at eemd2364170:/tmp/busybox-1.8.2$ ln -sf pippo pippa
foglietr at eemd2364170:/tmp/busybox-1.8.2$ ./busybox readlink pippa
pippo
foglietr at eemd2364170:/tmp/busybox-1.8.2$ ./busybox readlink -f pippa
BusyBox v1.8.2 (2007-11-27 12:05:21 CET) multi-call binary
Usage: readlink [-f] FILE
Display the value of a symlink
-f Canonicalize by following all symlinks
Cannot reproduce.
$ ln -sf pippo pippa
$ ./busybox readlink pippa
pippo
$ ./busybox readlink -f pippa; echo $?
1
$ pwd
/home/vda/srcdev-local/bbox/fix/busybox182
It's 1.8.2 and .config also contains
CONFIG_READLINK=y
CONFIG_FEATURE_READLINK_FOLLOW=y
See attached. Please post your .config
My original .config got lost in /tmp, however it was done as described below:

make distclean
make allnoconfig
make menuconfig -> added readlinf and -f only -> exit&save
make

I have done that 2 times and I was pretty sure of the result... but no!
I cannot reproduce it any more me too. You have all my apologize,

I am really sorry,
--
/roberto
Denys Vlasenko
2007-11-28 06:52:13 UTC
Permalink
Post by Roberto A. Foglietta
Post by Roberto A. Foglietta
[cut]
Post by Denys Vlasenko
I don't think that I am "redesigned" busybox. It stays mostly the same,
I am just trying to make it smaller without introducing too many new bugs.
foglietr at eemd2364170:/tmp$ size busybox-1.8.2/busybox
busybox-1.2.2.1/busybox text data bss dec hex filename
319519 2070 10784 332373 51255 busybox-1.8.2/busybox
339750 4472 35172 379394 5ca02 busybox-1.2.2.1/busybox
[, [[, addgroup, adduser, adjtimex, ash, awk, basename, bunzip2,
bzcat, cat, chgrp, chmod, chown, chroot, chvt, clear, cmp, cp, cut,
date, dd, deallocvt, delgroup, deluser, df, dirname, dmesg, du, echo,
egrep, env, expr, false, fdisk, fgrep, find, free, ftpget, ftpput,
fuser, getopt, getty, grep, gunzip, gzip, halt, head, hexdump, hostid,
hostname, hwclock, id, inetd, init, insmod, install, ip, kill,
killall, klogd, ln, logger, login, logname, ls, lsmod, md5sum, mkdir,
mknod, mktemp, more, mv, netstat, nohup, openvt, passwd, pidof,
pivot_root, poweroff, printf, ps, pwd, readlink, reboot, renice,
reset, rm, rmdir, rmmod, route, sed, seq, setconsole, sh, sleep, sort,
stat, strings, stty, su, sulogin, sync, sysctl, syslogd, tail, tar,
tee, telnet, telnetd, test, time, top, touch, tr, true, tty, uname,
uniq, unzip, uptime, usleep, vi, wc, wget, which, whoami, xargs, yes,
zcat
[cut]
Post by Denys Vlasenko
Post by Denys Vlasenko
I just reran testsuite/runtest. Compared to 1.2.2, two more failures.
:( -PASS: pidof -o %PPID
+FAIL: pidof -o %PPID
-PASS: which-uses-default-path
+FAIL: which-uses-default-path
The size is 47021 smaller with the same applets which is 12/13% less.
Some other applets and options has been added. Even ignoring ipv6
(which is not complete by now) I think the balance is good. After the
ipv6 completion having a new-era-busybox very stable branch and a
developing one could be fine.
However there are some small bugs around which suggest me that
foglietr at eemd2364170:/tmp/busybox-1.8.2$ grep READLINK .config
CONFIG_READLINK=y
CONFIG_FEATURE_READLINK_FOLLOW=y
foglietr at eemd2364170:/tmp/busybox-1.8.2$ ln -sf pippo pippa
foglietr at eemd2364170:/tmp/busybox-1.8.2$ ./busybox readlink pippa
pippo
foglietr at eemd2364170:/tmp/busybox-1.8.2$ ./busybox readlink -f pippa
BusyBox v1.8.2 (2007-11-27 12:05:21 CET) multi-call binary
Usage: readlink [-f] FILE
Display the value of a symlink
-f Canonicalize by following all symlinks
Cannot reproduce.

$ ln -sf pippo pippa
$ ./busybox readlink pippa
pippo
$ ./busybox readlink -f pippa; echo $?
1
$ pwd
/home/vda/srcdev-local/bbox/fix/busybox182

It's 1.8.2 and .config also contains
CONFIG_READLINK=y
CONFIG_FEATURE_READLINK_FOLLOW=y

See attached. Please post your .config
--
vda
-------------- next part --------------
#
# Automatically generated make config: don't edit
# Busybox version: 1.8.2
# Tue Nov 27 22:47:38 2007
#
CONFIG_HAVE_DOT_CONFIG=y

#
# Busybox Settings
#

#
# General Configuration
#
CONFIG_NITPICK=y
CONFIG_DESKTOP=y
CONFIG_FEATURE_BUFFERS_USE_MALLOC=y
# CONFIG_FEATURE_BUFFERS_GO_ON_STACK is not set
# CONFIG_FEATURE_BUFFERS_GO_IN_BSS is not set
CONFIG_SHOW_USAGE=y
CONFIG_FEATURE_VERBOSE_USAGE=y
CONFIG_FEATURE_COMPRESS_USAGE=y
CONFIG_FEATURE_INSTALLER=y
# CONFIG_LOCALE_SUPPORT is not set
CONFIG_GETOPT_LONG=y
CONFIG_FEATURE_DEVPTS=y
# CONFIG_FEATURE_CLEAN_UP is not set
CONFIG_FEATURE_PIDFILE=y
CONFIG_FEATURE_SUID=y
CONFIG_FEATURE_SUID_CONFIG=y
CONFIG_FEATURE_SUID_CONFIG_QUIET=y
# CONFIG_SELINUX is not set
# CONFIG_FEATURE_PREFER_APPLETS is not set
CONFIG_BUSYBOX_EXEC_PATH="/proc/self/exe"
CONFIG_FEATURE_SYSLOG=y
CONFIG_FEATURE_HAVE_RPC=y

#
# Build Options
#
# CONFIG_STATIC is not set
# CONFIG_BUILD_LIBBUSYBOX is not set
# CONFIG_FEATURE_INDIVIDUAL is not set
# CONFIG_FEATURE_SHARED_BUSYBOX is not set
CONFIG_LFS=y

#
# Debugging Options
#
# CONFIG_DEBUG is not set
CONFIG_WERROR=y
CONFIG_NO_DEBUG_LIB=y
# CONFIG_DMALLOC is not set
# CONFIG_EFENCE is not set
CONFIG_INCLUDE_SUSv2=y

#
# Installation Options
#
# CONFIG_INSTALL_NO_USR is not set
CONFIG_INSTALL_APPLET_SYMLINKS=y
# CONFIG_INSTALL_APPLET_HARDLINKS is not set
# CONFIG_INSTALL_APPLET_SCRIPT_WRAPPERS is not set
# CONFIG_INSTALL_APPLET_DONT is not set
# CONFIG_INSTALL_SH_APPLET_SYMLINK is not set
# CONFIG_INSTALL_SH_APPLET_HARDLINK is not set
# CONFIG_INSTALL_SH_APPLET_SCRIPT_WRAPPER is not set
CONFIG_PREFIX="./_install"

#
# Busybox Library Tuning
#
CONFIG_PASSWORD_MINLEN=6
CONFIG_MD5_SIZE_VS_SPEED=2
CONFIG_FEATURE_FAST_TOP=y
# CONFIG_FEATURE_ETC_NETWORKS is not set
CONFIG_FEATURE_EDITING=y
CONFIG_FEATURE_EDITING_MAX_LEN=1024
CONFIG_FEATURE_EDITING_FANCY_KEYS=y
CONFIG_FEATURE_EDITING_VI=y
CONFIG_FEATURE_EDITING_HISTORY=15
CONFIG_FEATURE_EDITING_SAVEHISTORY=y
CONFIG_FEATURE_TAB_COMPLETION=y
CONFIG_FEATURE_USERNAME_COMPLETION=y
CONFIG_FEATURE_EDITING_FANCY_PROMPT=y
CONFIG_MONOTONIC_SYSCALL=y
# CONFIG_IOCTL_HEX2STR_ERROR is not set

#
# Applets
#

#
# Archival Utilities
#
CONFIG_AR=y
# CONFIG_FEATURE_AR_LONG_FILENAMES is not set
CONFIG_BUNZIP2=y
CONFIG_BZIP2=y
CONFIG_CPIO=y
CONFIG_DPKG=y
# CONFIG_DPKG_DEB is not set
# CONFIG_FEATURE_DPKG_DEB_EXTRACT_ONLY is not set
CONFIG_GUNZIP=y
CONFIG_FEATURE_GUNZIP_UNCOMPRESS=y
CONFIG_GZIP=y
CONFIG_RPM2CPIO=y
CONFIG_RPM=y
CONFIG_FEATURE_RPM_BZ2=y
CONFIG_TAR=y
CONFIG_FEATURE_TAR_CREATE=y
CONFIG_FEATURE_TAR_BZIP2=y
CONFIG_FEATURE_TAR_LZMA=y
CONFIG_FEATURE_TAR_FROM=y
CONFIG_FEATURE_TAR_GZIP=y
CONFIG_FEATURE_TAR_COMPRESS=y
CONFIG_FEATURE_TAR_OLDGNU_COMPATIBILITY=y
CONFIG_FEATURE_TAR_OLDSUN_COMPATIBILITY=y
CONFIG_FEATURE_TAR_GNU_EXTENSIONS=y
CONFIG_FEATURE_TAR_LONG_OPTIONS=y
CONFIG_UNCOMPRESS=y
CONFIG_UNLZMA=y
CONFIG_FEATURE_LZMA_FAST=y
CONFIG_UNZIP=y

#
# Common options for cpio and tar
#
CONFIG_FEATURE_UNARCHIVE_TAPE=y

#
# Common options for dpkg and dpkg_deb
#
CONFIG_FEATURE_DEB_TAR_GZ=y
CONFIG_FEATURE_DEB_TAR_BZ2=y
CONFIG_FEATURE_DEB_TAR_LZMA=y

#
# Coreutils
#
CONFIG_BASENAME=y
CONFIG_CAL=y
CONFIG_CAT=y
CONFIG_CATV=y
CONFIG_CHGRP=y
CONFIG_CHMOD=y
CONFIG_CHOWN=y
CONFIG_CHROOT=y
CONFIG_CKSUM=y
CONFIG_COMM=y
CONFIG_CP=y
CONFIG_CUT=y
CONFIG_DATE=y
CONFIG_FEATURE_DATE_ISOFMT=y
CONFIG_DD=y
CONFIG_FEATURE_DD_SIGNAL_HANDLING=y
CONFIG_FEATURE_DD_IBS_OBS=y
CONFIG_DF=y
CONFIG_DIRNAME=y
CONFIG_DOS2UNIX=y
CONFIG_UNIX2DOS=y
CONFIG_DU=y
CONFIG_FEATURE_DU_DEFAULT_BLOCKSIZE_1K=y
CONFIG_ECHO=y
CONFIG_FEATURE_FANCY_ECHO=y
CONFIG_ENV=y
CONFIG_FEATURE_ENV_LONG_OPTIONS=y
CONFIG_EXPAND=y
CONFIG_FEATURE_EXPAND_LONG_OPTIONS=y
CONFIG_EXPR=y
CONFIG_EXPR_MATH_SUPPORT_64=y
CONFIG_FALSE=y
CONFIG_FOLD=y
CONFIG_HEAD=y
CONFIG_FEATURE_FANCY_HEAD=y
CONFIG_HOSTID=y
CONFIG_ID=y
CONFIG_INSTALL=y
CONFIG_FEATURE_INSTALL_LONG_OPTIONS=y
CONFIG_LENGTH=y
CONFIG_LN=y
CONFIG_LOGNAME=y
CONFIG_LS=y
CONFIG_FEATURE_LS_FILETYPES=y
CONFIG_FEATURE_LS_FOLLOWLINKS=y
CONFIG_FEATURE_LS_RECURSIVE=y
CONFIG_FEATURE_LS_SORTFILES=y
CONFIG_FEATURE_LS_TIMESTAMPS=y
CONFIG_FEATURE_LS_USERNAME=y
CONFIG_FEATURE_LS_COLOR=y
CONFIG_FEATURE_LS_COLOR_IS_DEFAULT=y
CONFIG_MD5SUM=y
CONFIG_MKDIR=y
CONFIG_FEATURE_MKDIR_LONG_OPTIONS=y
CONFIG_MKFIFO=y
CONFIG_MKNOD=y
CONFIG_MV=y
CONFIG_FEATURE_MV_LONG_OPTIONS=y
CONFIG_NICE=y
CONFIG_NOHUP=y
CONFIG_OD=y
CONFIG_PRINTENV=y
CONFIG_PRINTF=y
CONFIG_PWD=y
CONFIG_READLINK=y
CONFIG_FEATURE_READLINK_FOLLOW=y
CONFIG_REALPATH=y
CONFIG_RM=y
CONFIG_RMDIR=y
CONFIG_SEQ=y
CONFIG_SHA1SUM=y
CONFIG_SLEEP=y
CONFIG_FEATURE_FANCY_SLEEP=y
CONFIG_SORT=y
CONFIG_FEATURE_SORT_BIG=y
CONFIG_SPLIT=y
CONFIG_FEATURE_SPLIT_FANCY=y
CONFIG_STAT=y
CONFIG_FEATURE_STAT_FORMAT=y
CONFIG_STTY=y
CONFIG_SUM=y
CONFIG_SYNC=y
CONFIG_TAIL=y
CONFIG_FEATURE_FANCY_TAIL=y
CONFIG_TEE=y
CONFIG_FEATURE_TEE_USE_BLOCK_IO=y
CONFIG_TEST=y
CONFIG_FEATURE_TEST_64=y
CONFIG_TOUCH=y
CONFIG_TR=y
CONFIG_FEATURE_TR_CLASSES=y
CONFIG_FEATURE_TR_EQUIV=y
CONFIG_TRUE=y
CONFIG_TTY=y
CONFIG_UNAME=y
CONFIG_UNEXPAND=y
CONFIG_FEATURE_UNEXPAND_LONG_OPTIONS=y
CONFIG_UNIQ=y
CONFIG_USLEEP=y
CONFIG_UUDECODE=y
CONFIG_UUENCODE=y
CONFIG_WC=y
CONFIG_FEATURE_WC_LARGE=y
CONFIG_WHO=y
CONFIG_WHOAMI=y
CONFIG_YES=y

#
# Common options for cp and mv
#
CONFIG_FEATURE_PRESERVE_HARDLINKS=y

#
# Common options for ls, more and telnet
#
CONFIG_FEATURE_AUTOWIDTH=y

#
# Common options for df, du, ls
#
CONFIG_FEATURE_HUMAN_READABLE=y

#
# Common options for md5sum, sha1sum
#
CONFIG_FEATURE_MD5_SHA1_SUM_CHECK=y

#
# Console Utilities
#
CONFIG_CHVT=y
CONFIG_CLEAR=y
CONFIG_DEALLOCVT=y
CONFIG_DUMPKMAP=y
CONFIG_KBD_MODE=y
CONFIG_LOADFONT=y
CONFIG_LOADKMAP=y
CONFIG_OPENVT=y
CONFIG_RESET=y
CONFIG_RESIZE=y
CONFIG_FEATURE_RESIZE_PRINT=y
CONFIG_SETCONSOLE=y
CONFIG_FEATURE_SETCONSOLE_LONG_OPTIONS=y
CONFIG_SETKEYCODES=y
CONFIG_SETLOGCONS=y

#
# Debian Utilities
#
CONFIG_MKTEMP=y
CONFIG_PIPE_PROGRESS=y
CONFIG_RUN_PARTS=y
CONFIG_FEATURE_RUN_PARTS_LONG_OPTIONS=y
CONFIG_FEATURE_RUN_PARTS_FANCY=y
CONFIG_START_STOP_DAEMON=y
CONFIG_FEATURE_START_STOP_DAEMON_FANCY=y
CONFIG_FEATURE_START_STOP_DAEMON_LONG_OPTIONS=y
CONFIG_WHICH=y

#
# Editors
#
CONFIG_AWK=y
CONFIG_FEATURE_AWK_MATH=y
CONFIG_CMP=y
CONFIG_DIFF=y
CONFIG_FEATURE_DIFF_BINARY=y
CONFIG_FEATURE_DIFF_DIR=y
CONFIG_FEATURE_DIFF_MINIMAL=y
CONFIG_ED=y
CONFIG_PATCH=y
CONFIG_SED=y
CONFIG_VI=y
CONFIG_FEATURE_VI_MAX_LEN=1024
CONFIG_FEATURE_VI_COLON=y
CONFIG_FEATURE_VI_YANKMARK=y
CONFIG_FEATURE_VI_SEARCH=y
CONFIG_FEATURE_VI_USE_SIGNALS=y
CONFIG_FEATURE_VI_DOT_CMD=y
CONFIG_FEATURE_VI_READONLY=y
CONFIG_FEATURE_VI_SETOPTS=y
CONFIG_FEATURE_VI_SET=y
CONFIG_FEATURE_VI_WIN_RESIZE=y
CONFIG_FEATURE_VI_OPTIMIZE_CURSOR=y
CONFIG_FEATURE_ALLOW_EXEC=y

#
# Finding Utilities
#
CONFIG_FIND=y
CONFIG_FEATURE_FIND_PRINT0=y
CONFIG_FEATURE_FIND_MTIME=y
CONFIG_FEATURE_FIND_MMIN=y
CONFIG_FEATURE_FIND_PERM=y
CONFIG_FEATURE_FIND_TYPE=y
CONFIG_FEATURE_FIND_XDEV=y
CONFIG_FEATURE_FIND_MAXDEPTH=y
CONFIG_FEATURE_FIND_NEWER=y
CONFIG_FEATURE_FIND_INUM=y
CONFIG_FEATURE_FIND_EXEC=y
CONFIG_FEATURE_FIND_USER=y
CONFIG_FEATURE_FIND_GROUP=y
CONFIG_FEATURE_FIND_NOT=y
CONFIG_FEATURE_FIND_DEPTH=y
CONFIG_FEATURE_FIND_PAREN=y
CONFIG_FEATURE_FIND_SIZE=y
CONFIG_FEATURE_FIND_PRUNE=y
CONFIG_FEATURE_FIND_DELETE=y
CONFIG_FEATURE_FIND_PATH=y
CONFIG_FEATURE_FIND_REGEX=y
# CONFIG_FEATURE_FIND_CONTEXT is not set
CONFIG_GREP=y
CONFIG_FEATURE_GREP_EGREP_ALIAS=y
CONFIG_FEATURE_GREP_FGREP_ALIAS=y
CONFIG_FEATURE_GREP_CONTEXT=y
CONFIG_XARGS=y
CONFIG_FEATURE_XARGS_SUPPORT_CONFIRMATION=y
CONFIG_FEATURE_XARGS_SUPPORT_QUOTES=y
CONFIG_FEATURE_XARGS_SUPPORT_TERMOPT=y
CONFIG_FEATURE_XARGS_SUPPORT_ZERO_TERM=y

#
# Init Utilities
#
# CONFIG_INIT is not set
# CONFIG_DEBUG_INIT is not set
# CONFIG_FEATURE_USE_INITTAB is not set
# CONFIG_FEATURE_INIT_SCTTY is not set
# CONFIG_FEATURE_INIT_SYSLOG is not set
# CONFIG_FEATURE_EXTRA_QUIET is not set
# CONFIG_FEATURE_INIT_COREDUMPS is not set
# CONFIG_FEATURE_INITRD is not set
# CONFIG_HALT is not set
CONFIG_MESG=y

#
# Login/Password Management Utilities
#
CONFIG_FEATURE_SHADOWPASSWDS=y
CONFIG_USE_BB_SHADOW=y
CONFIG_USE_BB_PWD_GRP=y
CONFIG_ADDGROUP=y
CONFIG_FEATURE_ADDUSER_TO_GROUP=y
CONFIG_DELGROUP=y
CONFIG_FEATURE_DEL_USER_FROM_GROUP=y
CONFIG_ADDUSER=y
CONFIG_DELUSER=y
CONFIG_GETTY=y
CONFIG_FEATURE_UTMP=y
CONFIG_FEATURE_WTMP=y
CONFIG_LOGIN=y
# CONFIG_PAM is not set
CONFIG_LOGIN_SCRIPTS=y
# CONFIG_FEATURE_NOLOGIN is not set
CONFIG_FEATURE_SECURETTY=y
CONFIG_PASSWD=y
CONFIG_FEATURE_PASSWD_WEAK_CHECK=y
CONFIG_CRYPTPW=y
CONFIG_CHPASSWD=y
CONFIG_SU=y
CONFIG_FEATURE_SU_SYSLOG=y
CONFIG_FEATURE_SU_CHECKS_SHELLS=y
CONFIG_SULOGIN=y
CONFIG_VLOCK=y

#
# Linux Ext2 FS Progs
#
CONFIG_CHATTR=y
CONFIG_FSCK=y
CONFIG_LSATTR=y

#
# Linux Module Utilities
#
CONFIG_INSMOD=y
CONFIG_FEATURE_INSMOD_VERSION_CHECKING=y
CONFIG_FEATURE_INSMOD_KSYMOOPS_SYMBOLS=y
CONFIG_FEATURE_INSMOD_LOADINKMEM=y
CONFIG_FEATURE_INSMOD_LOAD_MAP=y
CONFIG_FEATURE_INSMOD_LOAD_MAP_FULL=y
CONFIG_RMMOD=y
CONFIG_LSMOD=y
CONFIG_FEATURE_LSMOD_PRETTY_2_6_OUTPUT=y
CONFIG_MODPROBE=y
CONFIG_FEATURE_MODPROBE_MULTIPLE_OPTIONS=y
CONFIG_FEATURE_MODPROBE_FANCY_ALIAS=y

#
# Options common to multiple modutils
#
CONFIG_FEATURE_CHECK_TAINTED_MODULE=y
CONFIG_FEATURE_2_4_MODULES=y
CONFIG_FEATURE_2_6_MODULES=y
# CONFIG_FEATURE_QUERY_MODULE_INTERFACE is not set

#
# Linux System Utilities
#
CONFIG_DMESG=y
CONFIG_FEATURE_DMESG_PRETTY=y
CONFIG_FBSET=y
CONFIG_FEATURE_FBSET_FANCY=y
CONFIG_FEATURE_FBSET_READMODE=y
CONFIG_FDFLUSH=y
CONFIG_FDFORMAT=y
CONFIG_FDISK=y
CONFIG_FDISK_SUPPORT_LARGE_DISKS=y
CONFIG_FEATURE_FDISK_WRITABLE=y
# CONFIG_FEATURE_AIX_LABEL is not set
# CONFIG_FEATURE_SGI_LABEL is not set
# CONFIG_FEATURE_SUN_LABEL is not set
# CONFIG_FEATURE_OSF_LABEL is not set
CONFIG_FEATURE_FDISK_ADVANCED=y
CONFIG_FREERAMDISK=y
CONFIG_FSCK_MINIX=y
CONFIG_MKFS_MINIX=y

#
# Minix filesystem support
#
CONFIG_FEATURE_MINIX2=y
CONFIG_GETOPT=y
CONFIG_HEXDUMP=y
CONFIG_HWCLOCK=y
CONFIG_FEATURE_HWCLOCK_LONG_OPTIONS=y
CONFIG_FEATURE_HWCLOCK_ADJTIME_FHS=y
CONFIG_IPCRM=y
CONFIG_IPCS=y
CONFIG_LOSETUP=y
CONFIG_MDEV=y
CONFIG_FEATURE_MDEV_CONF=y
CONFIG_FEATURE_MDEV_EXEC=y
CONFIG_FEATURE_MDEV_LOAD_FIRMWARE=y
CONFIG_MKSWAP=y
CONFIG_FEATURE_MKSWAP_V0=y
CONFIG_MORE=y
CONFIG_FEATURE_USE_TERMIOS=y
CONFIG_MOUNT=y
CONFIG_FEATURE_MOUNT_HELPERS=y
CONFIG_FEATURE_MOUNT_NFS=y
CONFIG_FEATURE_MOUNT_CIFS=y
CONFIG_FEATURE_MOUNT_FLAGS=y
CONFIG_FEATURE_MOUNT_FSTAB=y
CONFIG_PIVOT_ROOT=y
CONFIG_RDATE=y
CONFIG_READPROFILE=y
CONFIG_SETARCH=y
CONFIG_SWAPONOFF=y
CONFIG_SWITCH_ROOT=y
CONFIG_UMOUNT=y
CONFIG_FEATURE_UMOUNT_ALL=y

#
# Common options for mount/umount
#
CONFIG_FEATURE_MOUNT_LOOP=y
# CONFIG_FEATURE_MTAB_SUPPORT is not set

#
# Miscellaneous Utilities
#
CONFIG_ADJTIMEX=y
# CONFIG_BBCONFIG is not set
CONFIG_CHRT=y
CONFIG_CROND=y
# CONFIG_DEBUG_CROND_OPTION is not set
CONFIG_FEATURE_CROND_CALL_SENDMAIL=y
CONFIG_CRONTAB=y
CONFIG_DC=y
# CONFIG_DEVFSD is not set
# CONFIG_DEVFSD_MODLOAD is not set
# CONFIG_DEVFSD_FG_NP is not set
# CONFIG_DEVFSD_VERBOSE is not set
# CONFIG_FEATURE_DEVFS is not set
CONFIG_EJECT=y
CONFIG_LAST=y
CONFIG_LESS=y
CONFIG_FEATURE_LESS_MAXLINES=9999999
CONFIG_FEATURE_LESS_BRACKETS=y
CONFIG_FEATURE_LESS_FLAGS=y
CONFIG_FEATURE_LESS_FLAGCS=y
CONFIG_FEATURE_LESS_MARKS=y
CONFIG_FEATURE_LESS_REGEXP=y
CONFIG_HDPARM=y
CONFIG_FEATURE_HDPARM_GET_IDENTITY=y
CONFIG_FEATURE_HDPARM_HDIO_SCAN_HWIF=y
CONFIG_FEATURE_HDPARM_HDIO_UNREGISTER_HWIF=y
CONFIG_FEATURE_HDPARM_HDIO_DRIVE_RESET=y
CONFIG_FEATURE_HDPARM_HDIO_TRISTATE_HWIF=y
CONFIG_FEATURE_HDPARM_HDIO_GETSET_DMA=y
# CONFIG_MAKEDEVS is not set
# CONFIG_FEATURE_MAKEDEVS_LEAF is not set
# CONFIG_FEATURE_MAKEDEVS_TABLE is not set
CONFIG_MICROCOM=y
CONFIG_MOUNTPOINT=y
CONFIG_MT=y
CONFIG_RAIDAUTORUN=y
# CONFIG_READAHEAD is not set
CONFIG_RUNLEVEL=y
CONFIG_RX=y
CONFIG_STRINGS=y
CONFIG_SETSID=y
# CONFIG_TASKSET is not set
# CONFIG_FEATURE_TASKSET_FANCY is not set
CONFIG_TIME=y
CONFIG_TTYSIZE=y
CONFIG_WATCHDOG=y

#
# Networking Utilities
#
CONFIG_FEATURE_IPV6=y
CONFIG_VERBOSE_RESOLUTION_ERRORS=y
CONFIG_ARP=y
CONFIG_ARPING=y
CONFIG_DNSD=y
# CONFIG_ETHER_WAKE is not set
CONFIG_FAKEIDENTD=y
CONFIG_FTPGET=y
CONFIG_FTPPUT=y
CONFIG_FEATURE_FTPGETPUT_LONG_OPTIONS=y
CONFIG_HOSTNAME=y
CONFIG_HTTPD=y
CONFIG_FEATURE_HTTPD_RANGES=y
CONFIG_FEATURE_HTTPD_USE_SENDFILE=y
CONFIG_FEATURE_HTTPD_RELOAD_CONFIG_SIGHUP=y
CONFIG_FEATURE_HTTPD_SETUID=y
CONFIG_FEATURE_HTTPD_BASIC_AUTH=y
CONFIG_FEATURE_HTTPD_AUTH_MD5=y
CONFIG_FEATURE_HTTPD_CONFIG_WITH_MIME_TYPES=y
CONFIG_FEATURE_HTTPD_CGI=y
CONFIG_FEATURE_HTTPD_CONFIG_WITH_SCRIPT_INTERPR=y
CONFIG_FEATURE_HTTPD_SET_REMOTE_PORT_TO_ENV=y
CONFIG_FEATURE_HTTPD_ENCODE_URL_STR=y
CONFIG_FEATURE_HTTPD_ERROR_PAGES=y
CONFIG_FEATURE_HTTPD_PROXY=y
CONFIG_IFCONFIG=y
CONFIG_FEATURE_IFCONFIG_STATUS=y
CONFIG_FEATURE_IFCONFIG_SLIP=y
CONFIG_FEATURE_IFCONFIG_MEMSTART_IOADDR_IRQ=y
CONFIG_FEATURE_IFCONFIG_HW=y
CONFIG_FEATURE_IFCONFIG_BROADCAST_PLUS=y
CONFIG_IFUPDOWN=y
CONFIG_IFUPDOWN_IFSTATE_PATH="/var/run/ifstate"
CONFIG_FEATURE_IFUPDOWN_IP=y
CONFIG_FEATURE_IFUPDOWN_IP_BUILTIN=y
# CONFIG_FEATURE_IFUPDOWN_IFCONFIG_BUILTIN is not set
CONFIG_FEATURE_IFUPDOWN_IPV4=y
CONFIG_FEATURE_IFUPDOWN_IPV6=y
CONFIG_FEATURE_IFUPDOWN_MAPPING=y
CONFIG_FEATURE_IFUPDOWN_EXTERNAL_DHCP=y
CONFIG_INETD=y
CONFIG_FEATURE_INETD_SUPPORT_BUILTIN_ECHO=y
CONFIG_FEATURE_INETD_SUPPORT_BUILTIN_DISCARD=y
CONFIG_FEATURE_INETD_SUPPORT_BUILTIN_TIME=y
CONFIG_FEATURE_INETD_SUPPORT_BUILTIN_DAYTIME=y
CONFIG_FEATURE_INETD_SUPPORT_BUILTIN_CHARGEN=y
CONFIG_FEATURE_INETD_RPC=y
CONFIG_IP=y
CONFIG_FEATURE_IP_ADDRESS=y
CONFIG_FEATURE_IP_LINK=y
CONFIG_FEATURE_IP_ROUTE=y
CONFIG_FEATURE_IP_TUNNEL=y
CONFIG_FEATURE_IP_RULE=y
CONFIG_FEATURE_IP_SHORT_FORMS=y
CONFIG_FEATURE_IP_RARE_PROTOCOLS=y
CONFIG_IPADDR=y
CONFIG_IPLINK=y
CONFIG_IPROUTE=y
CONFIG_IPTUNNEL=y
CONFIG_IPRULE=y
CONFIG_IPCALC=y
CONFIG_FEATURE_IPCALC_FANCY=y
CONFIG_FEATURE_IPCALC_LONG_OPTIONS=y
CONFIG_NAMEIF=y
CONFIG_NC=y
CONFIG_NC_SERVER=y
CONFIG_NC_EXTRA=y
CONFIG_NETSTAT=y
# CONFIG_FEATURE_NETSTAT_WIDE is not set
CONFIG_NSLOOKUP=y
CONFIG_PING=y
CONFIG_PING6=y
CONFIG_PSCAN=y
CONFIG_FEATURE_FANCY_PING=y
CONFIG_ROUTE=y
CONFIG_SLATTACH=y
CONFIG_TELNET=y
CONFIG_FEATURE_TELNET_TTYPE=y
CONFIG_FEATURE_TELNET_AUTOLOGIN=y
CONFIG_TELNETD=y
CONFIG_FEATURE_TELNETD_STANDALONE=y
CONFIG_TFTP=y
CONFIG_FEATURE_TFTP_GET=y
CONFIG_FEATURE_TFTP_PUT=y
CONFIG_FEATURE_TFTP_BLOCKSIZE=y
# CONFIG_DEBUG_TFTP is not set
CONFIG_TRACEROUTE=y
CONFIG_FEATURE_TRACEROUTE_VERBOSE=y
CONFIG_FEATURE_TRACEROUTE_SOURCE_ROUTE=y
CONFIG_FEATURE_TRACEROUTE_USE_ICMP=y
CONFIG_APP_UDHCPD=y
CONFIG_APP_DHCPRELAY=y
CONFIG_APP_DUMPLEASES=y
CONFIG_FEATURE_UDHCPD_WRITE_LEASES_EARLY=y
CONFIG_APP_UDHCPC=y
# CONFIG_FEATURE_UDHCP_DEBUG is not set
CONFIG_FEATURE_RFC3397=y
CONFIG_VCONFIG=y
CONFIG_WGET=y
CONFIG_FEATURE_WGET_STATUSBAR=y
CONFIG_FEATURE_WGET_AUTHENTICATION=y
CONFIG_FEATURE_WGET_LONG_OPTIONS=y
CONFIG_ZCIP=y

#
# Process Utilities
#
CONFIG_FREE=y
CONFIG_FUSER=y
CONFIG_KILL=y
CONFIG_KILLALL=y
CONFIG_KILLALL5=y
CONFIG_NMETER=y
CONFIG_PGREP=y
CONFIG_PIDOF=y
CONFIG_FEATURE_PIDOF_SINGLE=y
CONFIG_FEATURE_PIDOF_OMIT=y
CONFIG_PKILL=y
CONFIG_PS=y
CONFIG_FEATURE_PS_WIDE=y
CONFIG_RENICE=y
CONFIG_BB_SYSCTL=y
CONFIG_TOP=y
CONFIG_FEATURE_TOP_CPU_USAGE_PERCENTAGE=y
CONFIG_FEATURE_TOP_CPU_GLOBAL_PERCENTS=y
# CONFIG_FEATURE_TOP_DECIMALS is not set
CONFIG_FEATURE_TOPMEM=y
CONFIG_UPTIME=y
CONFIG_WATCH=y

#
# Shells
#
# CONFIG_FEATURE_SH_IS_ASH is not set
# CONFIG_FEATURE_SH_IS_HUSH is not set
# CONFIG_FEATURE_SH_IS_LASH is not set
# CONFIG_FEATURE_SH_IS_MSH is not set
CONFIG_FEATURE_SH_IS_NONE=y
CONFIG_ASH=y

#
# Ash Shell Options
#
CONFIG_ASH_JOB_CONTROL=y
CONFIG_ASH_READ_NCHARS=y
CONFIG_ASH_READ_TIMEOUT=y
CONFIG_ASH_ALIAS=y
CONFIG_ASH_MATH_SUPPORT=y
CONFIG_ASH_MATH_SUPPORT_64=y
CONFIG_ASH_GETOPTS=y
CONFIG_ASH_BUILTIN_ECHO=y
CONFIG_ASH_BUILTIN_TEST=y
CONFIG_ASH_CMDCMD=y
CONFIG_ASH_MAIL=y
CONFIG_ASH_OPTIMIZE_FOR_SIZE=y
CONFIG_ASH_RANDOM_SUPPORT=y
# CONFIG_ASH_EXPAND_PRMT is not set
CONFIG_HUSH=y
CONFIG_HUSH_HELP=y
CONFIG_HUSH_INTERACTIVE=y
CONFIG_HUSH_JOB=y
CONFIG_HUSH_TICK=y
CONFIG_HUSH_IF=y
CONFIG_HUSH_LOOPS=y
CONFIG_LASH=y
CONFIG_MSH=y

#
# Bourne Shell Options
#
CONFIG_FEATURE_SH_EXTRA_QUIET=y
# CONFIG_FEATURE_SH_STANDALONE is not set
# CONFIG_CTTYHACK is not set

#
# System Logging Utilities
#
CONFIG_SYSLOGD=y
CONFIG_FEATURE_ROTATE_LOGFILE=y
CONFIG_FEATURE_REMOTE_LOG=y
CONFIG_FEATURE_IPC_SYSLOG=y
CONFIG_FEATURE_IPC_SYSLOG_BUFFER_SIZE=16
CONFIG_LOGREAD=y
CONFIG_FEATURE_LOGREAD_REDUCED_LOCKING=y
CONFIG_KLOGD=y
CONFIG_LOGGER=y

#
# Runit Utilities
#
CONFIG_RUNSV=y
CONFIG_RUNSVDIR=y
CONFIG_SV=y
CONFIG_SVLOGD=y
CONFIG_CHPST=y
CONFIG_SETUIDGID=y
CONFIG_ENVUIDGID=y
CONFIG_ENVDIR=y
CONFIG_SOFTLIMIT=y
# CONFIG_CHCON is not set
# CONFIG_FEATURE_CHCON_LONG_OPTIONS is not set
# CONFIG_GETENFORCE is not set
# CONFIG_GETSEBOOL is not set
# CONFIG_LOAD_POLICY is not set
# CONFIG_MATCHPATHCON is not set
# CONFIG_RESTORECON is not set
# CONFIG_RUNCON is not set
# CONFIG_FEATURE_RUNCON_LONG_OPTIONS is not set
# CONFIG_SELINUXENABLED is not set
# CONFIG_SETENFORCE is not set
# CONFIG_SETFILES is not set
# CONFIG_FEATURE_SETFILES_CHECK_OPTION is not set
# CONFIG_SETSEBOOL is not set

#
# ipsvd utilities
#
CONFIG_TCPSVD=y
CONFIG_UDPSVD=y
Roberto A. Foglietta
2007-11-27 10:38:53 UTC
Permalink
Post by Roberto A. Foglietta
[cut]
Post by Denys Vlasenko
I don't think that I am "redesigned" busybox. It stays mostly the same,
I am just trying to make it smaller without introducing too many new bugs.
foglietr at eemd2364170:/tmp$ size busybox-1.8.2/busybox busybox-1.2.2.1/busybox
text data bss dec hex filename
319519 2070 10784 332373 51255 busybox-1.8.2/busybox
339750 4472 35172 379394 5ca02 busybox-1.2.2.1/busybox
[, [[, addgroup, adduser, adjtimex, ash, awk, basename, bunzip2,
bzcat, cat, chgrp, chmod, chown, chroot, chvt, clear, cmp, cp, cut,
date, dd, deallocvt, delgroup, deluser, df, dirname, dmesg, du, echo,
egrep, env, expr, false, fdisk, fgrep, find, free, ftpget, ftpput,
fuser, getopt, getty, grep, gunzip, gzip, halt, head, hexdump, hostid,
hostname, hwclock, id, inetd, init, insmod, install, ip, kill,
killall, klogd, ln, logger, login, logname, ls, lsmod, md5sum, mkdir,
mknod, mktemp, more, mv, netstat, nohup, openvt, passwd, pidof,
pivot_root, poweroff, printf, ps, pwd, readlink, reboot, renice,
reset, rm, rmdir, rmmod, route, sed, seq, setconsole, sh, sleep, sort,
stat, strings, stty, su, sulogin, sync, sysctl, syslogd, tail, tar,
tee, telnet, telnetd, test, time, top, touch, tr, true, tty, uname,
uniq, unzip, uptime, usleep, vi, wc, wget, which, whoami, xargs, yes,
zcat
[cut]
Post by Denys Vlasenko
Post by Denys Vlasenko
I just reran testsuite/runtest. Compared to 1.2.2, two more failures. :(
-PASS: pidof -o %PPID
+FAIL: pidof -o %PPID
-PASS: which-uses-default-path
+FAIL: which-uses-default-path
The size is 47021 smaller with the same applets which is 12/13% less.
Some other applets and options has been added. Even ignoring ipv6
(which is not complete by now) I think the balance is good. After the
ipv6 completion having a new-era-busybox very stable branch and a
developing one could be fine.
However there are some small bugs around which suggest me that
new-era-busybox has not reach a very stable level yet:

foglietr at eemd2364170:/tmp/busybox-1.8.2$ grep READLINK .config
CONFIG_READLINK=y
CONFIG_FEATURE_READLINK_FOLLOW=y
foglietr at eemd2364170:/tmp/busybox-1.8.2$ ln -sf pippo pippa
foglietr at eemd2364170:/tmp/busybox-1.8.2$ ./busybox readlink pippa
pippo
foglietr at eemd2364170:/tmp/busybox-1.8.2$ ./busybox readlink -f pippa
BusyBox v1.8.2 (2007-11-27 12:05:21 CET) multi-call binary

Usage: readlink [-f] FILE

Display the value of a symlink

Options:
-f Canonicalize by following all symlinks


foglietr at eemd2364170:/tmp/busybox-1.2.2.1$ grep READLINK .config
CONFIG_READLINK=y
CONFIG_FEATURE_READLINK_FOLLOW=y
foglietr at eemd2364170:/tmp/busybox-1.2.2.1$ ln -sf pippo pippa
foglietr at eemd2364170:/tmp/busybox-1.2.2.1$ ./busybox readlink pippa
pippo
foglietr at eemd2364170:/tmp/busybox-1.2.2.1$ ./busybox readlink -f pippa
foglietr at eemd2364170:/tmp/busybox-1.2.2.1$ echo $?
1

Cheers,
--
/roberto
Roberto A. Foglietta
2007-11-27 10:22:09 UTC
Permalink
2007/11/26, Denys Vlasenko <vda.linux at googlemail.com>:

[cut]
Post by Denys Vlasenko
I don't think that I am "redesigned" busybox. It stays mostly the same,
I am just trying to make it smaller without introducing too many new bugs.
foglietr at eemd2364170:/tmp$ size busybox-1.8.2/busybox busybox-1.2.2.1/busybox
text data bss dec hex filename
319519 2070 10784 332373 51255 busybox-1.8.2/busybox
339750 4472 35172 379394 5ca02 busybox-1.2.2.1/busybox

Currently defined functions:
[, [[, addgroup, adduser, adjtimex, ash, awk, basename, bunzip2,
bzcat, cat, chgrp, chmod, chown, chroot, chvt, clear, cmp, cp, cut,
date, dd, deallocvt, delgroup, deluser, df, dirname, dmesg, du, echo,
egrep, env, expr, false, fdisk, fgrep, find, free, ftpget, ftpput,
fuser, getopt, getty, grep, gunzip, gzip, halt, head, hexdump, hostid,
hostname, hwclock, id, inetd, init, insmod, install, ip, kill,
killall, klogd, ln, logger, login, logname, ls, lsmod, md5sum, mkdir,
mknod, mktemp, more, mv, netstat, nohup, openvt, passwd, pidof,
pivot_root, poweroff, printf, ps, pwd, readlink, reboot, renice,
reset, rm, rmdir, rmmod, route, sed, seq, setconsole, sh, sleep, sort,
stat, strings, stty, su, sulogin, sync, sysctl, syslogd, tail, tar,
tee, telnet, telnetd, test, time, top, touch, tr, true, tty, uname,
uniq, unzip, uptime, usleep, vi, wc, wget, which, whoami, xargs, yes,
zcat
[cut]
Post by Denys Vlasenko
Post by Denys Vlasenko
I just reran testsuite/runtest. Compared to 1.2.2, two more failures. :(
-PASS: pidof -o %PPID
+FAIL: pidof -o %PPID
-PASS: which-uses-default-path
+FAIL: which-uses-default-path
The size is 47021 smaller with the same applets which is 12/13% less.
Some other applets and options has been added. Even ignoring ipv6
(which is not complete by now) I think the balance is good. After the
ipv6 completion having a new-era-busybox very stable branch and a
developing one could be fine.

Cheers,
--
/roberto
Denys Vlasenko
2007-11-26 18:34:55 UTC
Permalink
Post by Roberto A. Foglietta
My question was done in order to plan a version advancement to
new-era-busybox. Soon or later It would happen.
Post by Denys Vlasenko
Post by Roberto A. Foglietta
are there before and nobody
discover or they came out because the bb new era? In the last case is
there any plan to stabilize bb?
Do you have a feeling that people who has write access to bbox svn
are unwilling to take patches?
No, I am trying to understand what are you doing. I am feeling you
have redesigned bb and you are coping with all the bugs a redesign
pops up.
I don't think that I am "redesigned" busybox. It stays mostly the same,
I am just trying to make it smaller without introducing too many new bugs.
Also I try to add e.g. IPv6 support in a way which won't require
painful rewrite of every networking app. Mostly done. wget and ftpget/put
require some love to get them understand IPv6-esque version of PASV etc.
--
vda
walter harms
2007-11-25 13:39:33 UTC
Permalink
Post by Denys Vlasenko
I just reran testsuite/runtest. Compared to 1.2.2, two more failures. :(
-PASS: pidof -o %PPID
+FAIL: pidof -o %PPID
-PASS: which-uses-default-path
+FAIL: which-uses-default-path
Will look into it.
hi all,
the missing testsuite is a real problem. I have posted a excerpt from the bash-testsuite
ported to ash sometime ago. unfortunately nobody has followed my step and i run out of time.

As i wrote last time: we need a test-suite and before a release comes it must run on that release code.
It can be done easy for any packet that is available as GNU also.

re,
wh
Roberto A. Foglietta
2007-11-26 15:39:26 UTC
Permalink
Post by Denys Vlasenko
Post by Roberto A. Foglietta
I am seeing bugs
in well known application like cut or tar,
As usual, report them.
I see those two bugs reported on this list. At this time I am still
using 1.2.2.1 and I am going to do a patch to increase security of
telnet a little bit. So I cannot help.

My question was done in order to plan a version advancement to
new-era-busybox. Soon or later It would happen.
Post by Denys Vlasenko
Post by Roberto A. Foglietta
are there before and nobody
discover or they came out because the bb new era? In the last case is
there any plan to stabilize bb?
Do you have a feeling that people who has write access to bbox svn
are unwilling to take patches?
No, I am trying to understand what are you doing. I am feeling you
have redesigned bb and you are coping with all the bugs a redesign
pops up.
I was just asking.

Ciao,
--
/roberto
Denys Vlasenko
2007-11-25 03:44:47 UTC
Permalink
Post by Roberto A. Foglietta
Post by Denys Vlasenko
Hi,
The rootfs "root_fs_arm.ext2.bz2" which I am testing was downloaded from
the reference link
http://dslinux.gits.kiev.ua/trunk/uClibc/docs/uclibc.org/toolchains.html
. As I have some problem with toochain, I have started to test first
using the existing rootfs built for arm the target which failed to work.
Test with (init=/sbin/hello) "Hello world" statically linked using
uclibc doesn't show any message whereas statically linked using glibc
shows the message. I wonder why it doesn't work well with uclibc. Is
this problem due to the kernel-headers or uclibc config ?
Also may be bad choice of ARM processor flavor, and uclibc code
ended up containing commands which are not supported by your processor.
This is a quite typical cause of "my init doesn't run!" problem.
The following questions are the classical: where are we/you going?
The bug track system is feed with all the bugs or reading this ml is
the only way to be acknowledged about each bug discovery?
Bug database is good for tracking issues, saving additional data points
about bugs, etc. Mailing list works better for bumping up bugs which
are not resolved and semms to be forgotten.

I find that with many projects it works best when I create bug entry in
bugzilla AND post a report to ml.

However, not every time. This gcc bug is an example:

http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30354

It even contains a working patch, and I sent an email to their
ml several times, yet not reaction still.
Post by Roberto A. Foglietta
Is there some kind of bug report sum which can help me to choose a
stable version of busybox in order to go in production?
Take latest 1.7.x, but running testsuite and comparing the output
with testsuite of last busybox you used in production is a good idea.
Post by Roberto A. Foglietta
I am seeing bugs
in well known application like cut or tar,
As usual, report them.

For me, tar wasn't even capable to unpack linux kernel source tarball.
Now it can do that. I tested it by tar/untar cycle of Orcle install.
It survived.

I think adding testsuite entries for bugs you discover and fix
might help to ensure they do not reoccur, or at least easy to
automatically detect.

I just reran testsuite/runtest. Compared to 1.2.2, two more failures. :(
-PASS: pidof -o %PPID
+FAIL: pidof -o %PPID
-PASS: which-uses-default-path
+FAIL: which-uses-default-path

Will look into it.
Post by Roberto A. Foglietta
are there before and nobody
discover or they came out because the bb new era? In the last case is
there any plan to stabilize bb?
Do you have a feeling that people who has write access to bbox svn
are unwilling to take patches?
--
vda
Saravanan Chanemouganandam
2007-11-27 15:02:05 UTC
Permalink
Hello vda,

I have still a panic with the buildroot uclibc cross toochain. "Hello world"
compiled with the following "gcc" dispalys message on the ARM target
"arm5vte"

schane:/# /scratchbox/compilers/arm-gcc-3.3.4-glibc-2.3.2/bin/arm-linux-gcc -v
Reading specs
from /scratchbox/compilers/arm-gcc-3.3.4-glibc-2.3.2/lib/gcc-lib/arm-linux/3.3.4/specs
Configured
with: /home/tsavola/sb-toolchains/gcc/glibc/work/gcc-3.3-3.3.4-patched/configure
--target=arm-linux --host=i386-linux --build=i386-linux
--prefix=/scratchbox/compilers/arm-gcc-3.3.4-glibc-2.3.2
--with-headers=/scratchbox/compilers/arm-gcc-3.3.4-glibc-2.3.2/usr/include
--enable-languages=c,c++ --program-transform-name=s/^-/arm-linux-/
--program-prefix=arm-linux- --with-cpu=
Thread model: posix
gcc version 3.3.4 (Debian)
schane:/#

whereas it doesn't display cross compiled with the following "uclibc"

schane:/# /home/sara/BuildRoot/buildroot/build_arm/staging_dir/bin/arm-linux-gcc
-v
Using built-in specs.
Target: arm-linux-uclibcgnueabi
Configured
with: /home/sara/BuildRoot/buildroot/toolchain_build_arm/gcc-4.1.2/configure
--prefix=/home/sara/BuildRoot/buildroot/build_arm/staging_dir
--build=i386-pc-linux-gnu --host=i386-pc-linux-gnu
--target=arm-linux-uclibcgnueabi--enable-languages=c --disable-__cxa_atexit
--enable-target-optspace --with-gnu-ld --disable-shared --disable-nls
--enable-threads --disable-multilib --with-float=soft --disable-largefile
Thread model: posix
gcc version 4.1.2

Is this issue due to a floating point option or kernel headers ? I have built
buildroot toochain with kernel-header 2.6.12 for my linux kernel 2.6.16 and
with soft float option enabled.

any idea to debug further would be grateful!

Thanks
Sara
Post by Denys Vlasenko
Hi,
The rootfs "root_fs_arm.ext2.bz2" which I am testing was downloaded from
the reference link
http://dslinux.gits.kiev.ua/trunk/uClibc/docs/uclibc.org/toolchains.html.
As I have some problem with toochain, I have started to test first using
the existing rootfs built for arm the target which failed to work.
Test with (init=/sbin/hello) "Hello world" statically linked using uclibc
doesn't show any message whereas statically linked using glibc shows the
message. I wonder why it doesn't work well with uclibc. Is this problem
due to the kernel-headers or uclibc config ?
Also may be bad choice of ARM processor flavor, and uclibc code
ended up containing commands which are not supported by your processor.
This is a quite typical cause of "my init doesn't run!" problem.
--
vda
Denys Vlasenko
2007-11-28 17:09:16 UTC
Permalink
Post by Saravanan Chanemouganandam
Hello vda,
I have still a panic with the buildroot uclibc cross toochain. "Hello
world" compiled with the following "gcc" dispalys message on the ARM target
"arm5vte"
schane:/# /scratchbox/compilers/arm-gcc-3.3.4-glibc-2.3.2/bin/arm-linux-gcc
-v Reading specs
from
/scratchbox/compilers/arm-gcc-3.3.4-glibc-2.3.2/lib/gcc-lib/arm-linux/3.3.4
/specs Configured
/home/tsavola/sb-toolchains/gcc/glibc/work/gcc-3.3-3.3.4-patched/configure
--target=arm-linux --host=i386-linux --build=i386-linux
^^^^^^^^^
Post by Saravanan Chanemouganandam
--prefix=/scratchbox/compilers/arm-gcc-3.3.4-glibc-2.3.2
--with-headers=/scratchbox/compilers/arm-gcc-3.3.4-glibc-2.3.2/usr/include
--enable-languages=c,c++ --program-transform-name=s/^-/arm-linux-/
--program-prefix=arm-linux- --with-cpu=
Thread model: posix
gcc version 3.3.4 (Debian)
whereas it doesn't display cross compiled with the following "uclibc"
schane:/#
/home/sara/BuildRoot/buildroot/build_arm/staging_dir/bin/arm-linux-gcc -v
Using built-in specs.
Target: arm-linux-uclibcgnueabi
Configured
/home/sara/BuildRoot/buildroot/toolchain_build_arm/gcc-4.1.2/configure
--prefix=/home/sara/BuildRoot/buildroot/build_arm/staging_dir
--build=i386-pc-linux-gnu --host=i386-pc-linux-gnu
--target=arm-linux-uclibcgnueabi--enable-languages=c --disable-__cxa_atexit
^^^^^^^^^^^^^^^^^^^^^^^
Post by Saravanan Chanemouganandam
--enable-target-optspace --with-gnu-ld --disable-shared --disable-nls
--enable-threads --disable-multilib --with-float=soft --disable-largefile
Thread model: posix
gcc version 4.1.2
Is this issue due to a floating point option or kernel headers ? I have
built buildroot toochain with kernel-header 2.6.12 for my linux kernel
2.6.16 and with soft float option enabled.
I'm no expert on ARM, but I do know that EABI and "old" ABI have
a bit different calling conventions, including kernel syscalls
calling conventions.

Your 'working' toolchain and 'failing' tollchain have different --target's.
--
vda
Brian Austin
2007-11-28 17:33:55 UTC
Permalink
Correct.

You are mixing EABI and non EABI. You should build (if your doin EABI)
your toolchain with 2.6.16 or greater headers.

The main reason, from my experiences a while back, with init in busybox
hanging and using EABI was that either the kernel was built with EABI
and busybox was not or the opposite.
Post by Denys Vlasenko
Post by Saravanan Chanemouganandam
Hello vda,
I have still a panic with the buildroot uclibc cross toochain. "Hello
world" compiled with the following "gcc" dispalys message on the ARM target
"arm5vte"
schane:/# /scratchbox/compilers/arm-gcc-3.3.4-glibc-2.3.2/bin/arm-linux-gcc
-v Reading specs
from
/scratchbox/compilers/arm-gcc-3.3.4-glibc-2.3.2/lib/gcc-lib/arm-linux/3.3.4
/specs Configured
/home/tsavola/sb-toolchains/gcc/glibc/work/gcc-3.3-3.3.4-patched/configure
--target=arm-linux --host=i386-linux --build=i386-linux
^^^^^^^^^
Post by Saravanan Chanemouganandam
--prefix=/scratchbox/compilers/arm-gcc-3.3.4-glibc-2.3.2
--with-headers=/scratchbox/compilers/arm-gcc-3.3.4-glibc-2.3.2/usr/include
--enable-languages=c,c++ --program-transform-name=s/^-/arm-linux-/
--program-prefix=arm-linux- --with-cpu=
Thread model: posix
gcc version 3.3.4 (Debian)
whereas it doesn't display cross compiled with the following "uclibc"
schane:/#
/home/sara/BuildRoot/buildroot/build_arm/staging_dir/bin/arm-linux-gcc -v
Using built-in specs.
Target: arm-linux-uclibcgnueabi
Configured
/home/sara/BuildRoot/buildroot/toolchain_build_arm/gcc-4.1.2/configure
--prefix=/home/sara/BuildRoot/buildroot/build_arm/staging_dir
--build=i386-pc-linux-gnu --host=i386-pc-linux-gnu
--target=arm-linux-uclibcgnueabi--enable-languages=c --disable-__cxa_atexit
^^^^^^^^^^^^^^^^^^^^^^^
Post by Saravanan Chanemouganandam
--enable-target-optspace --with-gnu-ld --disable-shared --disable-nls
--enable-threads --disable-multilib --with-float=soft --disable-largefile
Thread model: posix
gcc version 4.1.2
Is this issue due to a floating point option or kernel headers ? I have
built buildroot toochain with kernel-header 2.6.12 for my linux kernel
2.6.16 and with soft float option enabled.
I'm no expert on ARM, but I do know that EABI and "old" ABI have
a bit different calling conventions, including kernel syscalls
calling conventions.
Your 'working' toolchain and 'failing' tollchain have different --target's.
--
vda
_______________________________________________
busybox mailing list
busybox at busybox.net
http://busybox.net/cgi-bin/mailman/listinfo/busybox
Saravanan Chanemouganandam
2007-11-29 14:24:34 UTC
Permalink
Hello,

Yes. I got messed up with EABI and non EABI selection and my kernel (2.6.16)
was built with non EABI but trying to build Buildroot busybox with EABI
option which is wrong.

Well, I have rebuilt again the buildroot with OABI option enabled which leaves
me the toolchain arm-linux-uclibc-gcc
schane:/home/sara/BuildRoot/buildroot# /home/sara/BuildRoot/buildroot/build_arm/staging_dir/usr/bin/arm-linux-uclibc-gcc
-v
Using built-in specs.
Target: arm-linux-uclibc
Configured
with: /home/sara/BuildRoot/buildroot/toolchain_build_arm/gcc-4.2.1/configure
--prefix=/usr --build=i386-pc-linux-gnu --host=i386-pc-linux-gnu
--target=arm-linux-uclibc --enable-languages=c,c++
--with-sysroot=/home/sara/BuildRoot/buildroot/build_arm/staging_dir
--with-build-time-tools=/home/sara/BuildRoot/buildroot/build_arm/staging_dir/usr/arm-linux-uclibc/bin
--disable-__cxa_atexit --enable-target-optspace --with-gnu-ld --enable-shared
--with-gmp=/home/sara/BuildRoot/buildroot/toolchain_build_arm/gmp
--with-mpfr=/home/sara/BuildRoot/buildroot/toolchain_build_arm/mpfr
--disable-nls --enable-threads --disable-multilib --with-float=soft
--disable-largefile
Thread model: posix
gcc version 4.2.1

But still, the statically built "helloworld" with arm-linux-uclibc-gcc doesn't
show any message during bootup using init=/sbin/helloworld .

Meanwhile, I have also built the rootfs with busybox compiled using scratchbox
toolchain "/scratchbox/compilers/arm-gcc3.4-uclibc0.9.28/bin/arm-linux-gcc "
and the system boots well using init=/bin/ash and got the ash# prompt.

To test the above, I then transfered the "helloworld" built with Buildroot
toolchain to the running system and I can see the "Hello world !!!!" display
message and cancelled to turn to # prompt.

Still, I am confused why the same "helloworld" doesn't display during bootup
after Freeing init memory: 108K

Any idea to fix this issue further ? Did I missed any other options?

Sara
Post by Brian Austin
Correct.
You are mixing EABI and non EABI. You should build (if your doin EABI)
your toolchain with 2.6.16 or greater headers.
The main reason, from my experiences a while back, with init in busybox
hanging and using EABI was that either the kernel was built with EABI
and busybox was not or the opposite.
Post by Denys Vlasenko
Post by Saravanan Chanemouganandam
Hello vda,
I have still a panic with the buildroot uclibc cross toochain. "Hello
world" compiled with the following "gcc" dispalys message on the ARM
target "arm5vte"
schane:/#
/scratchbox/compilers/arm-gcc-3.3.4-glibc-2.3.2/bin/arm-linux-gcc -v
Reading specs
from
/scratchbox/compilers/arm-gcc-3.3.4-glibc-2.3.2/lib/gcc-lib/arm-linux/3
.3.4 /specs Configured
/home/tsavola/sb-toolchains/gcc/glibc/work/gcc-3.3-3.3.4-patched/config
ure --target=arm-linux --host=i386-linux --build=i386-linux
^^^^^^^^^
Post by Saravanan Chanemouganandam
--prefix=/scratchbox/compilers/arm-gcc-3.3.4-glibc-2.3.2
--with-headers=/scratchbox/compilers/arm-gcc-3.3.4-glibc-2.3.2/usr/incl
ude --enable-languages=c,c++ --program-transform-name=s/^-/arm-linux-/
--program-prefix=arm-linux- --with-cpu=
Thread model: posix
gcc version 3.3.4 (Debian)
whereas it doesn't display cross compiled with the following "uclibc"
schane:/#
/home/sara/BuildRoot/buildroot/build_arm/staging_dir/bin/arm-linux-gcc
-v Using built-in specs.
Target: arm-linux-uclibcgnueabi
Configured
/home/sara/BuildRoot/buildroot/toolchain_build_arm/gcc-4.1.2/configure
--prefix=/home/sara/BuildRoot/buildroot/build_arm/staging_dir
--build=i386-pc-linux-gnu --host=i386-pc-linux-gnu
--target=arm-linux-uclibcgnueabi--enable-languages=c
--disable-__cxa_atexit
^^^^^^^^^^^^^^^^^^^^^^^
Post by Saravanan Chanemouganandam
--enable-target-optspace --with-gnu-ld --disable-shared --disable-nls
--enable-threads --disable-multilib --with-float=soft
--disable-largefile Thread model: posix
gcc version 4.1.2
Is this issue due to a floating point option or kernel headers ? I have
built buildroot toochain with kernel-header 2.6.12 for my linux kernel
2.6.16 and with soft float option enabled.
I'm no expert on ARM, but I do know that EABI and "old" ABI have
a bit different calling conventions, including kernel syscalls
calling conventions.
Your 'working' toolchain and 'failing' tollchain have different
--target's. --
vda
_______________________________________________
busybox mailing list
busybox at busybox.net
http://busybox.net/cgi-bin/mailman/listinfo/busybox
Denys Vlasenko
2007-11-30 05:36:08 UTC
Permalink
Post by Saravanan Chanemouganandam
Hello,
Yes. I got messed up with EABI and non EABI selection and my kernel
(2.6.16) was built with non EABI but trying to build Buildroot busybox with
EABI option which is wrong.
Well, I have rebuilt again the buildroot with OABI option enabled which
leaves me the toolchain arm-linux-uclibc-gcc
schane:/home/sara/BuildRoot/buildroot#
/home/sara/BuildRoot/buildroot/build_arm/staging_dir/usr/bin/arm-linux-ucli
bc-gcc -v
Using built-in specs.
Target: arm-linux-uclibc
Configured
/home/sara/BuildRoot/buildroot/toolchain_build_arm/gcc-4.2.1/configure
--prefix=/usr --build=i386-pc-linux-gnu --host=i386-pc-linux-gnu
--target=arm-linux-uclibc --enable-languages=c,c++
--with-sysroot=/home/sara/BuildRoot/buildroot/build_arm/staging_dir
--with-build-time-tools=/home/sara/BuildRoot/buildroot/build_arm/staging_di
r/usr/arm-linux-uclibc/bin --disable-__cxa_atexit --enable-target-optspace
--with-gnu-ld --enable-shared
--with-gmp=/home/sara/BuildRoot/buildroot/toolchain_build_arm/gmp
--with-mpfr=/home/sara/BuildRoot/buildroot/toolchain_build_arm/mpfr
--disable-nls --enable-threads --disable-multilib --with-float=soft
--disable-largefile
Thread model: posix
gcc version 4.2.1
But still, the statically built "helloworld" with arm-linux-uclibc-gcc
doesn't show any message during bootup using init=/sbin/helloworld .
What "arm-linux-uclibc-objdump -x helloworld" says?

Can you post this binary?
Post by Saravanan Chanemouganandam
Meanwhile, I have also built the rootfs with busybox compiled using
scratchbox toolchain
"/scratchbox/compilers/arm-gcc3.4-uclibc0.9.28/bin/arm-linux-gcc " and the
system boots well using init=/bin/ash and got the ash# prompt.
To test the above, I then transfered the "helloworld" built with Buildroot
toolchain to the running system and I can see the "Hello world !!!!"
display message and cancelled to turn to # prompt.
If you have strace available there, post "strace helloworld" output.
--
vda
Denys Vlasenko
2007-12-04 18:05:50 UTC
Permalink
Hi,
I have finally built the toolchain and rootfs using buildroot for the arm
target. Using init=/bin/ash I endup with the prompt. Now, I have a small
problem in using "sysvinit" built with the busybox package to use run level
configurations.
Sidenote: busybox init doesn't support runlevels.
It's not my idea to make it so, but I agree with it.
SysV init's runlevels was a wrong design decision in the first place.
The init starts well and uses /etc/inittab but doesn't run
the /etc/init.d/rcS script.
Is it similar to http://busybox.net/bugs/view.php?id=1244 ?
I have replaced buildoot /etc with existing
/etc to incude run levels.
Just replacing /etc scripts cannot make runlevels work.
You need different init (not busybox's one).
IP-Config: Complete:device=eth0, addr=192.168.6.243, mask=255.255.255.0,
gw=192.168.6.1,host=cm-x270, domain=,
nis-domain=(none),bootserver=192.168.6.1, rootserver=192.168.6.1,
rootpath=Looking up port of RPC 100003/2 on 192.168.6.1Looking up port of
RPC 100005/1 on 192.168.6.1VFS: Mounted root (nfs filesystem).Freeing init
memory: 108KINIT: version 2.86 bootingINIT: Entering runlevel: 2 Debian
GNU/Linux 3.1 ttySA0 login: rootPassword: any idea why init doesn't
starts the rcS script.
(Something is wrong with mail program you are using.
It all looksjumbledtogether.)

If you will show your /etc/inittab and /etc/*rc_scripts_you_are_using*,
somebody on the list may have easier time trying to reproduce it.
--
vda
chanemouganandam saravanan
2007-12-05 13:20:22 UTC
Permalink
Hi ,

Excuse me for the jumbled mail problem and I will fix it.

Yes, I am clear that busybox "init" doesn't support run levels.
/etc/inittab says use sysvinit for runlevels and to use run level,
in the Buildroot ( using gcc 4.1.2 , binuitls 2.17 and uClibc 0.9.29
version) busybox package selection, I have enabled
"Hide application that are provided by busybox" to select "sysvinit" which
builts and installs sysVinit version 2.86 in the final rootfs.

In the rootfs, I have modified a bit in /etc/inittab and created rc2.d in
/etc to test the run level 2 . Finally, the bootup message
.....
Looking up port of RPC 100003/2 on 192.168.6.1
Looking up port of RPC 100005/1 on 192.168.6.1
VFS: Mounted root (nfs filesystem).
Freeing init memory: 108K
INIT: version 2.86 booting
INIT: Entering runlevel: 2


uClibc login:

shows that init doesn't execute /etc/init.d/rcS or /etc/init.d/rc. If there
is a syntax error or missing run level in the inittab
then "init" throws the respective error message.

Here is my /etc/inittab and rc2.d for further analysis

# /etc/inittab
#
# Copyright (C) 2001 Erik Andersen
#
# Note: BusyBox init doesn't support runlevels. The runlevels field is
# completely ignored by BusyBox init. If you want runlevels, use
# sysvinit.

# The default runlevel.
id:2:initdefault:

# Startup the system
l1::sysinit:/bin/mount -o remount,rw /
l2::sysinit:/bin/mount -t proc proc /proc
l3::sysinit:/bin/mount -a

# now run any rc scripts
si::sysinit:/etc/init.d/rcS ( this is not invoked )

# /etc/init.d executes the S and K scripts upon change
# of runlevel.
l4:2:wait:/etc/init.d/rc 2 ( this is not called after
entering runlevel 2)

# Set up a couple of getty's
#tty1::respawn:/sbin/getty 38400 tty1
#tty2::respawn:/sbin/getty 38400 tty2

# Put a getty on the serial port
T1::respawn:/sbin/getty -L ttySA0 38400 vt100 ( respawn getty for login
prompt)

I went through the http://busybox.net/bugs/view.php?id=1244 bug tracking and
seems to be bit similar.
I have also performed some test discussed like echo TEST >/dev/tty echo TEST
/dev/console and
i got TEST msg printed out on the console. Executing the scripts
individually inside the prompt works well.

I use the rootfs built by buildroot using .

Its strange that init desn't execute the /etc/initd.rcS and /etc/init.d/rc ?
At the least it should execute /etc/init.d/rcS.
Did I missed something very important to make init work?

Sara




----- Original Message -----
From: "Denys Vlasenko" <vda.linux at googlemail.com>
To: "saravanan chanemouganandam" <saravanan_sprt at hotmail.com>
Cc: "Saravanan Chanemouganandam" <schane at osmozis.com>; "Brian Austin"
<brian.austin at cirrus.com>; <busybox at busybox.net>
Sent: Tuesday, December 04, 2007 7:05 PM
Subject: Re: init hangs
Hi,
I have finally built the toolchain and rootfs using buildroot for the arm
target. Using init=/bin/ash I endup with the prompt. Now, I have a small
problem in using "sysvinit" built with the busybox package to use run level
configurations.
Sidenote: busybox init doesn't support runlevels.
It's not my idea to make it so, but I agree with it.
SysV init's runlevels was a wrong design decision in the first place.
The init starts well and uses /etc/inittab but doesn't run
the /etc/init.d/rcS script.
Is it similar to http://busybox.net/bugs/view.php?id=1244 ?
I have replaced buildoot /etc with existing
/etc to incude run levels.
Just replacing /etc scripts cannot make runlevels work.
You need different init (not busybox's one).
IP-Config: Complete:device=eth0, addr=192.168.6.243, mask=255.255.255.0,
gw=192.168.6.1,host=cm-x270, domain=,
nis-domain=(none),bootserver=192.168.6.1, rootserver=192.168.6.1,
rootpath=Looking up port of RPC 100003/2 on 192.168.6.1Looking up port of
RPC 100005/1 on 192.168.6.1VFS: Mounted root (nfs filesystem).Freeing init
memory: 108KINIT: version 2.86 bootingINIT: Entering runlevel: 2 Debian
GNU/Linux 3.1 ttySA0 login: rootPassword: any idea why init doesn't
starts the rcS script.
(Something is wrong with mail program you are using.
It all looksjumbledtogether.)
If you will show your /etc/inittab and /etc/*rc_scripts_you_are_using*,
somebody on the list may have easier time trying to reproduce it.
--
vda
Denys Vlasenko
2007-12-09 03:51:09 UTC
Permalink
Post by chanemouganandam saravanan
Hi ,
Excuse me for the jumbled mail problem and I will fix it.
Yes, I am clear that busybox "init" doesn't support run levels.
/etc/inittab says use sysvinit for runlevels and to use run level,
in the Buildroot ( using gcc 4.1.2 , binuitls 2.17 and uClibc 0.9.29
version) busybox package selection, I have enabled
"Hide application that are provided by busybox" to select "sysvinit" which
builts and installs sysVinit version 2.86 in the final rootfs.
In the rootfs, I have modified a bit in /etc/inittab and created rc2.d in
/etc to test the run level 2 . Finally, the bootup message
.....
Looking up port of RPC 100003/2 on 192.168.6.1
Looking up port of RPC 100005/1 on 192.168.6.1
VFS: Mounted root (nfs filesystem).
Freeing init memory: 108K
INIT: version 2.86 booting
INIT: Entering runlevel: 2
shows that init doesn't execute /etc/init.d/rcS or /etc/init.d/rc. If
there is a syntax error or missing run level in the inittab
then "init" throws the respective error message.
If I understand you correctly, you are using sysV init,
and it doesn't run initscript for runlevel 2 for you.
In oter words, this doesn't seem to be a busybox problem.

Sorry, I can't help you right now, a bit busy.
--
vda
Denys Vlasenko
2007-12-09 03:51:09 UTC
Permalink
Post by chanemouganandam saravanan
Hi ,
Excuse me for the jumbled mail problem and I will fix it.
Yes, I am clear that busybox "init" doesn't support run levels.
/etc/inittab says use sysvinit for runlevels and to use run level,
in the Buildroot ( using gcc 4.1.2 , binuitls 2.17 and uClibc 0.9.29
version) busybox package selection, I have enabled
"Hide application that are provided by busybox" to select "sysvinit" which
builts and installs sysVinit version 2.86 in the final rootfs.
In the rootfs, I have modified a bit in /etc/inittab and created rc2.d in
/etc to test the run level 2 . Finally, the bootup message
.....
Looking up port of RPC 100003/2 on 192.168.6.1
Looking up port of RPC 100005/1 on 192.168.6.1
VFS: Mounted root (nfs filesystem).
Freeing init memory: 108K
INIT: version 2.86 booting
INIT: Entering runlevel: 2
shows that init doesn't execute /etc/init.d/rcS or /etc/init.d/rc. If
there is a syntax error or missing run level in the inittab
then "init" throws the respective error message.
If I understand you correctly, you are using sysV init,
and it doesn't run initscript for runlevel 2 for you.
In oter words, this doesn't seem to be a busybox problem.

Sorry, I can't help you right now, a bit busy.
--
vda

chanemouganandam saravanan
2007-12-05 13:20:22 UTC
Permalink
Hi ,

Excuse me for the jumbled mail problem and I will fix it.

Yes, I am clear that busybox "init" doesn't support run levels.
/etc/inittab says use sysvinit for runlevels and to use run level,
in the Buildroot ( using gcc 4.1.2 , binuitls 2.17 and uClibc 0.9.29
version) busybox package selection, I have enabled
"Hide application that are provided by busybox" to select "sysvinit" which
builts and installs sysVinit version 2.86 in the final rootfs.

In the rootfs, I have modified a bit in /etc/inittab and created rc2.d in
/etc to test the run level 2 . Finally, the bootup message
.....
Looking up port of RPC 100003/2 on 192.168.6.1
Looking up port of RPC 100005/1 on 192.168.6.1
VFS: Mounted root (nfs filesystem).
Freeing init memory: 108K
INIT: version 2.86 booting
INIT: Entering runlevel: 2


uClibc login:

shows that init doesn't execute /etc/init.d/rcS or /etc/init.d/rc. If there
is a syntax error or missing run level in the inittab
then "init" throws the respective error message.

Here is my /etc/inittab and rc2.d for further analysis

# /etc/inittab
#
# Copyright (C) 2001 Erik Andersen
#
# Note: BusyBox init doesn't support runlevels. The runlevels field is
# completely ignored by BusyBox init. If you want runlevels, use
# sysvinit.

# The default runlevel.
id:2:initdefault:

# Startup the system
l1::sysinit:/bin/mount -o remount,rw /
l2::sysinit:/bin/mount -t proc proc /proc
l3::sysinit:/bin/mount -a

# now run any rc scripts
si::sysinit:/etc/init.d/rcS ( this is not invoked )

# /etc/init.d executes the S and K scripts upon change
# of runlevel.
l4:2:wait:/etc/init.d/rc 2 ( this is not called after
entering runlevel 2)

# Set up a couple of getty's
#tty1::respawn:/sbin/getty 38400 tty1
#tty2::respawn:/sbin/getty 38400 tty2

# Put a getty on the serial port
T1::respawn:/sbin/getty -L ttySA0 38400 vt100 ( respawn getty for login
prompt)

I went through the http://busybox.net/bugs/view.php?id=1244 bug tracking and
seems to be bit similar.
I have also performed some test discussed like echo TEST >/dev/tty echo TEST
/dev/console and
i got TEST msg printed out on the console. Executing the scripts
individually inside the prompt works well.

I use the rootfs built by buildroot using .

Its strange that init desn't execute the /etc/initd.rcS and /etc/init.d/rc ?
At the least it should execute /etc/init.d/rcS.
Did I missed something very important to make init work?

Sara




----- Original Message -----
From: "Denys Vlasenko" <vda.linux at googlemail.com>
To: "saravanan chanemouganandam" <saravanan_sprt at hotmail.com>
Cc: "Saravanan Chanemouganandam" <schane at osmozis.com>; "Brian Austin"
<brian.austin at cirrus.com>; <busybox at busybox.net>
Sent: Tuesday, December 04, 2007 7:05 PM
Subject: Re: init hangs
Hi,
I have finally built the toolchain and rootfs using buildroot for the arm
target. Using init=/bin/ash I endup with the prompt. Now, I have a small
problem in using "sysvinit" built with the busybox package to use run level
configurations.
Sidenote: busybox init doesn't support runlevels.
It's not my idea to make it so, but I agree with it.
SysV init's runlevels was a wrong design decision in the first place.
The init starts well and uses /etc/inittab but doesn't run
the /etc/init.d/rcS script.
Is it similar to http://busybox.net/bugs/view.php?id=1244 ?
I have replaced buildoot /etc with existing
/etc to incude run levels.
Just replacing /etc scripts cannot make runlevels work.
You need different init (not busybox's one).
IP-Config: Complete:device=eth0, addr=192.168.6.243, mask=255.255.255.0,
gw=192.168.6.1,host=cm-x270, domain=,
nis-domain=(none),bootserver=192.168.6.1, rootserver=192.168.6.1,
rootpath=Looking up port of RPC 100003/2 on 192.168.6.1Looking up port of
RPC 100005/1 on 192.168.6.1VFS: Mounted root (nfs filesystem).Freeing init
memory: 108KINIT: version 2.86 bootingINIT: Entering runlevel: 2 Debian
GNU/Linux 3.1 ttySA0 login: rootPassword: any idea why init doesn't
starts the rcS script.
(Something is wrong with mail program you are using.
It all looksjumbledtogether.)
If you will show your /etc/inittab and /etc/*rc_scripts_you_are_using*,
somebody on the list may have easier time trying to reproduce it.
--
vda
Denys Vlasenko
2007-12-04 18:05:50 UTC
Permalink
Hi,
I have finally built the toolchain and rootfs using buildroot for the arm
target. Using init=/bin/ash I endup with the prompt. Now, I have a small
problem in using "sysvinit" built with the busybox package to use run level
configurations.
Sidenote: busybox init doesn't support runlevels.
It's not my idea to make it so, but I agree with it.
SysV init's runlevels was a wrong design decision in the first place.
The init starts well and uses /etc/inittab but doesn't run
the /etc/init.d/rcS script.
Is it similar to http://busybox.net/bugs/view.php?id=1244 ?
I have replaced buildoot /etc with existing
/etc to incude run levels.
Just replacing /etc scripts cannot make runlevels work.
You need different init (not busybox's one).
IP-Config: Complete:device=eth0, addr=192.168.6.243, mask=255.255.255.0,
gw=192.168.6.1,host=cm-x270, domain=,
nis-domain=(none),bootserver=192.168.6.1, rootserver=192.168.6.1,
rootpath=Looking up port of RPC 100003/2 on 192.168.6.1Looking up port of
RPC 100005/1 on 192.168.6.1VFS: Mounted root (nfs filesystem).Freeing init
memory: 108KINIT: version 2.86 bootingINIT: Entering runlevel: 2 Debian
GNU/Linux 3.1 ttySA0 login: rootPassword: any idea why init doesn't
starts the rcS script.
(Something is wrong with mail program you are using.
It all looksjumbledtogether.)

If you will show your /etc/inittab and /etc/*rc_scripts_you_are_using*,
somebody on the list may have easier time trying to reproduce it.
--
vda
Denys Vlasenko
2007-11-30 05:36:08 UTC
Permalink
Post by Saravanan Chanemouganandam
Hello,
Yes. I got messed up with EABI and non EABI selection and my kernel
(2.6.16) was built with non EABI but trying to build Buildroot busybox with
EABI option which is wrong.
Well, I have rebuilt again the buildroot with OABI option enabled which
leaves me the toolchain arm-linux-uclibc-gcc
schane:/home/sara/BuildRoot/buildroot#
/home/sara/BuildRoot/buildroot/build_arm/staging_dir/usr/bin/arm-linux-ucli
bc-gcc -v
Using built-in specs.
Target: arm-linux-uclibc
Configured
/home/sara/BuildRoot/buildroot/toolchain_build_arm/gcc-4.2.1/configure
--prefix=/usr --build=i386-pc-linux-gnu --host=i386-pc-linux-gnu
--target=arm-linux-uclibc --enable-languages=c,c++
--with-sysroot=/home/sara/BuildRoot/buildroot/build_arm/staging_dir
--with-build-time-tools=/home/sara/BuildRoot/buildroot/build_arm/staging_di
r/usr/arm-linux-uclibc/bin --disable-__cxa_atexit --enable-target-optspace
--with-gnu-ld --enable-shared
--with-gmp=/home/sara/BuildRoot/buildroot/toolchain_build_arm/gmp
--with-mpfr=/home/sara/BuildRoot/buildroot/toolchain_build_arm/mpfr
--disable-nls --enable-threads --disable-multilib --with-float=soft
--disable-largefile
Thread model: posix
gcc version 4.2.1
But still, the statically built "helloworld" with arm-linux-uclibc-gcc
doesn't show any message during bootup using init=/sbin/helloworld .
What "arm-linux-uclibc-objdump -x helloworld" says?

Can you post this binary?
Post by Saravanan Chanemouganandam
Meanwhile, I have also built the rootfs with busybox compiled using
scratchbox toolchain
"/scratchbox/compilers/arm-gcc3.4-uclibc0.9.28/bin/arm-linux-gcc " and the
system boots well using init=/bin/ash and got the ash# prompt.
To test the above, I then transfered the "helloworld" built with Buildroot
toolchain to the running system and I can see the "Hello world !!!!"
display message and cancelled to turn to # prompt.
If you have strace available there, post "strace helloworld" output.
--
vda
Saravanan Chanemouganandam
2007-11-29 15:32:39 UTC
Permalink
Hello,

I forget to add the steps that I have done in configuring the Buildroot. In
the buildroot menuconfig, I configured Kernel option as "none" and kernel
header version option as "2.6 latest snapshots" for my existing linux 2.6.16
and then compiled using make as

../buildroot# make LINUX_HEADERS_VERSION=2.6.16 DEFAULT_KERNEL_HEADERS=2.6.12

sara
Post by Brian Austin
Correct.
You are mixing EABI and non EABI. You should build (if your doin EABI)
your toolchain with 2.6.16 or greater headers.
The main reason, from my experiences a while back, with init in busybox
hanging and using EABI was that either the kernel was built with EABI
and busybox was not or the opposite.
Post by Denys Vlasenko
Post by Saravanan Chanemouganandam
Hello vda,
I have still a panic with the buildroot uclibc cross toochain. "Hello
world" compiled with the following "gcc" dispalys message on the ARM
target "arm5vte"
schane:/#
/scratchbox/compilers/arm-gcc-3.3.4-glibc-2.3.2/bin/arm-linux-gcc -v
Reading specs
from
/scratchbox/compilers/arm-gcc-3.3.4-glibc-2.3.2/lib/gcc-lib/arm-linux/3
.3.4 /specs Configured
/home/tsavola/sb-toolchains/gcc/glibc/work/gcc-3.3-3.3.4-patched/config
ure --target=arm-linux --host=i386-linux --build=i386-linux
^^^^^^^^^
Post by Saravanan Chanemouganandam
--prefix=/scratchbox/compilers/arm-gcc-3.3.4-glibc-2.3.2
--with-headers=/scratchbox/compilers/arm-gcc-3.3.4-glibc-2.3.2/usr/incl
ude --enable-languages=c,c++ --program-transform-name=s/^-/arm-linux-/
--program-prefix=arm-linux- --with-cpu=
Thread model: posix
gcc version 3.3.4 (Debian)
whereas it doesn't display cross compiled with the following "uclibc"
schane:/#
/home/sara/BuildRoot/buildroot/build_arm/staging_dir/bin/arm-linux-gcc
-v Using built-in specs.
Target: arm-linux-uclibcgnueabi
Configured
/home/sara/BuildRoot/buildroot/toolchain_build_arm/gcc-4.1.2/configure
--prefix=/home/sara/BuildRoot/buildroot/build_arm/staging_dir
--build=i386-pc-linux-gnu --host=i386-pc-linux-gnu
--target=arm-linux-uclibcgnueabi--enable-languages=c
--disable-__cxa_atexit
^^^^^^^^^^^^^^^^^^^^^^^
Post by Saravanan Chanemouganandam
--enable-target-optspace --with-gnu-ld --disable-shared --disable-nls
--enable-threads --disable-multilib --with-float=soft
--disable-largefile Thread model: posix
gcc version 4.1.2
Is this issue due to a floating point option or kernel headers ? I have
built buildroot toochain with kernel-header 2.6.12 for my linux kernel
2.6.16 and with soft float option enabled.
I'm no expert on ARM, but I do know that EABI and "old" ABI have
a bit different calling conventions, including kernel syscalls
calling conventions.
Your 'working' toolchain and 'failing' tollchain have different
--target's. --
vda
_______________________________________________
busybox mailing list
busybox at busybox.net
http://busybox.net/cgi-bin/mailman/listinfo/busybox
Saravanan Chanemouganandam
2007-11-29 14:24:34 UTC
Permalink
Hello,

Yes. I got messed up with EABI and non EABI selection and my kernel (2.6.16)
was built with non EABI but trying to build Buildroot busybox with EABI
option which is wrong.

Well, I have rebuilt again the buildroot with OABI option enabled which leaves
me the toolchain arm-linux-uclibc-gcc
schane:/home/sara/BuildRoot/buildroot# /home/sara/BuildRoot/buildroot/build_arm/staging_dir/usr/bin/arm-linux-uclibc-gcc
-v
Using built-in specs.
Target: arm-linux-uclibc
Configured
with: /home/sara/BuildRoot/buildroot/toolchain_build_arm/gcc-4.2.1/configure
--prefix=/usr --build=i386-pc-linux-gnu --host=i386-pc-linux-gnu
--target=arm-linux-uclibc --enable-languages=c,c++
--with-sysroot=/home/sara/BuildRoot/buildroot/build_arm/staging_dir
--with-build-time-tools=/home/sara/BuildRoot/buildroot/build_arm/staging_dir/usr/arm-linux-uclibc/bin
--disable-__cxa_atexit --enable-target-optspace --with-gnu-ld --enable-shared
--with-gmp=/home/sara/BuildRoot/buildroot/toolchain_build_arm/gmp
--with-mpfr=/home/sara/BuildRoot/buildroot/toolchain_build_arm/mpfr
--disable-nls --enable-threads --disable-multilib --with-float=soft
--disable-largefile
Thread model: posix
gcc version 4.2.1

But still, the statically built "helloworld" with arm-linux-uclibc-gcc doesn't
show any message during bootup using init=/sbin/helloworld .

Meanwhile, I have also built the rootfs with busybox compiled using scratchbox
toolchain "/scratchbox/compilers/arm-gcc3.4-uclibc0.9.28/bin/arm-linux-gcc "
and the system boots well using init=/bin/ash and got the ash# prompt.

To test the above, I then transfered the "helloworld" built with Buildroot
toolchain to the running system and I can see the "Hello world !!!!" display
message and cancelled to turn to # prompt.

Still, I am confused why the same "helloworld" doesn't display during bootup
after Freeing init memory: 108K

Any idea to fix this issue further ? Did I missed any other options?

Sara
Post by Brian Austin
Correct.
You are mixing EABI and non EABI. You should build (if your doin EABI)
your toolchain with 2.6.16 or greater headers.
The main reason, from my experiences a while back, with init in busybox
hanging and using EABI was that either the kernel was built with EABI
and busybox was not or the opposite.
Post by Denys Vlasenko
Post by Saravanan Chanemouganandam
Hello vda,
I have still a panic with the buildroot uclibc cross toochain. "Hello
world" compiled with the following "gcc" dispalys message on the ARM
target "arm5vte"
schane:/#
/scratchbox/compilers/arm-gcc-3.3.4-glibc-2.3.2/bin/arm-linux-gcc -v
Reading specs
from
/scratchbox/compilers/arm-gcc-3.3.4-glibc-2.3.2/lib/gcc-lib/arm-linux/3
.3.4 /specs Configured
/home/tsavola/sb-toolchains/gcc/glibc/work/gcc-3.3-3.3.4-patched/config
ure --target=arm-linux --host=i386-linux --build=i386-linux
^^^^^^^^^
Post by Saravanan Chanemouganandam
--prefix=/scratchbox/compilers/arm-gcc-3.3.4-glibc-2.3.2
--with-headers=/scratchbox/compilers/arm-gcc-3.3.4-glibc-2.3.2/usr/incl
ude --enable-languages=c,c++ --program-transform-name=s/^-/arm-linux-/
--program-prefix=arm-linux- --with-cpu=
Thread model: posix
gcc version 3.3.4 (Debian)
whereas it doesn't display cross compiled with the following "uclibc"
schane:/#
/home/sara/BuildRoot/buildroot/build_arm/staging_dir/bin/arm-linux-gcc
-v Using built-in specs.
Target: arm-linux-uclibcgnueabi
Configured
/home/sara/BuildRoot/buildroot/toolchain_build_arm/gcc-4.1.2/configure
--prefix=/home/sara/BuildRoot/buildroot/build_arm/staging_dir
--build=i386-pc-linux-gnu --host=i386-pc-linux-gnu
--target=arm-linux-uclibcgnueabi--enable-languages=c
--disable-__cxa_atexit
^^^^^^^^^^^^^^^^^^^^^^^
Post by Saravanan Chanemouganandam
--enable-target-optspace --with-gnu-ld --disable-shared --disable-nls
--enable-threads --disable-multilib --with-float=soft
--disable-largefile Thread model: posix
gcc version 4.1.2
Is this issue due to a floating point option or kernel headers ? I have
built buildroot toochain with kernel-header 2.6.12 for my linux kernel
2.6.16 and with soft float option enabled.
I'm no expert on ARM, but I do know that EABI and "old" ABI have
a bit different calling conventions, including kernel syscalls
calling conventions.
Your 'working' toolchain and 'failing' tollchain have different
--target's. --
vda
_______________________________________________
busybox mailing list
busybox at busybox.net
http://busybox.net/cgi-bin/mailman/listinfo/busybox
Saravanan Chanemouganandam
2007-11-29 15:32:39 UTC
Permalink
Hello,

I forget to add the steps that I have done in configuring the Buildroot. In
the buildroot menuconfig, I configured Kernel option as "none" and kernel
header version option as "2.6 latest snapshots" for my existing linux 2.6.16
and then compiled using make as

../buildroot# make LINUX_HEADERS_VERSION=2.6.16 DEFAULT_KERNEL_HEADERS=2.6.12

sara
Post by Brian Austin
Correct.
You are mixing EABI and non EABI. You should build (if your doin EABI)
your toolchain with 2.6.16 or greater headers.
The main reason, from my experiences a while back, with init in busybox
hanging and using EABI was that either the kernel was built with EABI
and busybox was not or the opposite.
Post by Denys Vlasenko
Post by Saravanan Chanemouganandam
Hello vda,
I have still a panic with the buildroot uclibc cross toochain. "Hello
world" compiled with the following "gcc" dispalys message on the ARM
target "arm5vte"
schane:/#
/scratchbox/compilers/arm-gcc-3.3.4-glibc-2.3.2/bin/arm-linux-gcc -v
Reading specs
from
/scratchbox/compilers/arm-gcc-3.3.4-glibc-2.3.2/lib/gcc-lib/arm-linux/3
.3.4 /specs Configured
/home/tsavola/sb-toolchains/gcc/glibc/work/gcc-3.3-3.3.4-patched/config
ure --target=arm-linux --host=i386-linux --build=i386-linux
^^^^^^^^^
Post by Saravanan Chanemouganandam
--prefix=/scratchbox/compilers/arm-gcc-3.3.4-glibc-2.3.2
--with-headers=/scratchbox/compilers/arm-gcc-3.3.4-glibc-2.3.2/usr/incl
ude --enable-languages=c,c++ --program-transform-name=s/^-/arm-linux-/
--program-prefix=arm-linux- --with-cpu=
Thread model: posix
gcc version 3.3.4 (Debian)
whereas it doesn't display cross compiled with the following "uclibc"
schane:/#
/home/sara/BuildRoot/buildroot/build_arm/staging_dir/bin/arm-linux-gcc
-v Using built-in specs.
Target: arm-linux-uclibcgnueabi
Configured
/home/sara/BuildRoot/buildroot/toolchain_build_arm/gcc-4.1.2/configure
--prefix=/home/sara/BuildRoot/buildroot/build_arm/staging_dir
--build=i386-pc-linux-gnu --host=i386-pc-linux-gnu
--target=arm-linux-uclibcgnueabi--enable-languages=c
--disable-__cxa_atexit
^^^^^^^^^^^^^^^^^^^^^^^
Post by Saravanan Chanemouganandam
--enable-target-optspace --with-gnu-ld --disable-shared --disable-nls
--enable-threads --disable-multilib --with-float=soft
--disable-largefile Thread model: posix
gcc version 4.1.2
Is this issue due to a floating point option or kernel headers ? I have
built buildroot toochain with kernel-header 2.6.12 for my linux kernel
2.6.16 and with soft float option enabled.
I'm no expert on ARM, but I do know that EABI and "old" ABI have
a bit different calling conventions, including kernel syscalls
calling conventions.
Your 'working' toolchain and 'failing' tollchain have different
--target's. --
vda
_______________________________________________
busybox mailing list
busybox at busybox.net
http://busybox.net/cgi-bin/mailman/listinfo/busybox
Brian Austin
2007-11-28 17:33:55 UTC
Permalink
Correct.

You are mixing EABI and non EABI. You should build (if your doin EABI)
your toolchain with 2.6.16 or greater headers.

The main reason, from my experiences a while back, with init in busybox
hanging and using EABI was that either the kernel was built with EABI
and busybox was not or the opposite.
Post by Denys Vlasenko
Post by Saravanan Chanemouganandam
Hello vda,
I have still a panic with the buildroot uclibc cross toochain. "Hello
world" compiled with the following "gcc" dispalys message on the ARM target
"arm5vte"
schane:/# /scratchbox/compilers/arm-gcc-3.3.4-glibc-2.3.2/bin/arm-linux-gcc
-v Reading specs
from
/scratchbox/compilers/arm-gcc-3.3.4-glibc-2.3.2/lib/gcc-lib/arm-linux/3.3.4
/specs Configured
/home/tsavola/sb-toolchains/gcc/glibc/work/gcc-3.3-3.3.4-patched/configure
--target=arm-linux --host=i386-linux --build=i386-linux
^^^^^^^^^
Post by Saravanan Chanemouganandam
--prefix=/scratchbox/compilers/arm-gcc-3.3.4-glibc-2.3.2
--with-headers=/scratchbox/compilers/arm-gcc-3.3.4-glibc-2.3.2/usr/include
--enable-languages=c,c++ --program-transform-name=s/^-/arm-linux-/
--program-prefix=arm-linux- --with-cpu=
Thread model: posix
gcc version 3.3.4 (Debian)
whereas it doesn't display cross compiled with the following "uclibc"
schane:/#
/home/sara/BuildRoot/buildroot/build_arm/staging_dir/bin/arm-linux-gcc -v
Using built-in specs.
Target: arm-linux-uclibcgnueabi
Configured
/home/sara/BuildRoot/buildroot/toolchain_build_arm/gcc-4.1.2/configure
--prefix=/home/sara/BuildRoot/buildroot/build_arm/staging_dir
--build=i386-pc-linux-gnu --host=i386-pc-linux-gnu
--target=arm-linux-uclibcgnueabi--enable-languages=c --disable-__cxa_atexit
^^^^^^^^^^^^^^^^^^^^^^^
Post by Saravanan Chanemouganandam
--enable-target-optspace --with-gnu-ld --disable-shared --disable-nls
--enable-threads --disable-multilib --with-float=soft --disable-largefile
Thread model: posix
gcc version 4.1.2
Is this issue due to a floating point option or kernel headers ? I have
built buildroot toochain with kernel-header 2.6.12 for my linux kernel
2.6.16 and with soft float option enabled.
I'm no expert on ARM, but I do know that EABI and "old" ABI have
a bit different calling conventions, including kernel syscalls
calling conventions.
Your 'working' toolchain and 'failing' tollchain have different --target's.
--
vda
_______________________________________________
busybox mailing list
busybox at busybox.net
http://busybox.net/cgi-bin/mailman/listinfo/busybox
Denys Vlasenko
2007-11-28 17:09:16 UTC
Permalink
Post by Saravanan Chanemouganandam
Hello vda,
I have still a panic with the buildroot uclibc cross toochain. "Hello
world" compiled with the following "gcc" dispalys message on the ARM target
"arm5vte"
schane:/# /scratchbox/compilers/arm-gcc-3.3.4-glibc-2.3.2/bin/arm-linux-gcc
-v Reading specs
from
/scratchbox/compilers/arm-gcc-3.3.4-glibc-2.3.2/lib/gcc-lib/arm-linux/3.3.4
/specs Configured
/home/tsavola/sb-toolchains/gcc/glibc/work/gcc-3.3-3.3.4-patched/configure
--target=arm-linux --host=i386-linux --build=i386-linux
^^^^^^^^^
Post by Saravanan Chanemouganandam
--prefix=/scratchbox/compilers/arm-gcc-3.3.4-glibc-2.3.2
--with-headers=/scratchbox/compilers/arm-gcc-3.3.4-glibc-2.3.2/usr/include
--enable-languages=c,c++ --program-transform-name=s/^-/arm-linux-/
--program-prefix=arm-linux- --with-cpu=
Thread model: posix
gcc version 3.3.4 (Debian)
whereas it doesn't display cross compiled with the following "uclibc"
schane:/#
/home/sara/BuildRoot/buildroot/build_arm/staging_dir/bin/arm-linux-gcc -v
Using built-in specs.
Target: arm-linux-uclibcgnueabi
Configured
/home/sara/BuildRoot/buildroot/toolchain_build_arm/gcc-4.1.2/configure
--prefix=/home/sara/BuildRoot/buildroot/build_arm/staging_dir
--build=i386-pc-linux-gnu --host=i386-pc-linux-gnu
--target=arm-linux-uclibcgnueabi--enable-languages=c --disable-__cxa_atexit
^^^^^^^^^^^^^^^^^^^^^^^
Post by Saravanan Chanemouganandam
--enable-target-optspace --with-gnu-ld --disable-shared --disable-nls
--enable-threads --disable-multilib --with-float=soft --disable-largefile
Thread model: posix
gcc version 4.1.2
Is this issue due to a floating point option or kernel headers ? I have
built buildroot toochain with kernel-header 2.6.12 for my linux kernel
2.6.16 and with soft float option enabled.
I'm no expert on ARM, but I do know that EABI and "old" ABI have
a bit different calling conventions, including kernel syscalls
calling conventions.

Your 'working' toolchain and 'failing' tollchain have different --target's.
--
vda
Roberto A. Foglietta
2007-11-24 10:51:14 UTC
Permalink
Post by Denys Vlasenko
Hi,
The rootfs "root_fs_arm.ext2.bz2" which I am testing was downloaded from
the reference link
http://dslinux.gits.kiev.ua/trunk/uClibc/docs/uclibc.org/toolchains.html.
As I have some problem with toochain, I have started to test first using
the existing rootfs built for arm the target which failed to work.
Test with (init=/sbin/hello) "Hello world" statically linked using uclibc
doesn't show any message whereas statically linked using glibc shows the
message. I wonder why it doesn't work well with uclibc. Is this problem
due to the kernel-headers or uclibc config ?
Also may be bad choice of ARM processor flavor, and uclibc code
ended up containing commands which are not supported by your processor.
This is a quite typical cause of "my init doesn't run!" problem.
The following questions are the classical: where are we/you going?

The bug track system is feed with all the bugs or reading this ml is
the only way to be acknowledged about each bug discovery?

Is there some kind of bug report sum which can help me to choose a
stable version of busybox in order to go in production? I am seeing bugs
in well known application like cut or tar, are there before and nobody
discover or they came out because the bb new era? In the last case is
there any plan to stabilize bb?

Thanks,
Roberto
Saravanan Chanemouganandam
2007-11-27 15:02:05 UTC
Permalink
Hello vda,

I have still a panic with the buildroot uclibc cross toochain. "Hello world"
compiled with the following "gcc" dispalys message on the ARM target
"arm5vte"

schane:/# /scratchbox/compilers/arm-gcc-3.3.4-glibc-2.3.2/bin/arm-linux-gcc -v
Reading specs
from /scratchbox/compilers/arm-gcc-3.3.4-glibc-2.3.2/lib/gcc-lib/arm-linux/3.3.4/specs
Configured
with: /home/tsavola/sb-toolchains/gcc/glibc/work/gcc-3.3-3.3.4-patched/configure
--target=arm-linux --host=i386-linux --build=i386-linux
--prefix=/scratchbox/compilers/arm-gcc-3.3.4-glibc-2.3.2
--with-headers=/scratchbox/compilers/arm-gcc-3.3.4-glibc-2.3.2/usr/include
--enable-languages=c,c++ --program-transform-name=s/^-/arm-linux-/
--program-prefix=arm-linux- --with-cpu=
Thread model: posix
gcc version 3.3.4 (Debian)
schane:/#

whereas it doesn't display cross compiled with the following "uclibc"

schane:/# /home/sara/BuildRoot/buildroot/build_arm/staging_dir/bin/arm-linux-gcc
-v
Using built-in specs.
Target: arm-linux-uclibcgnueabi
Configured
with: /home/sara/BuildRoot/buildroot/toolchain_build_arm/gcc-4.1.2/configure
--prefix=/home/sara/BuildRoot/buildroot/build_arm/staging_dir
--build=i386-pc-linux-gnu --host=i386-pc-linux-gnu
--target=arm-linux-uclibcgnueabi--enable-languages=c --disable-__cxa_atexit
--enable-target-optspace --with-gnu-ld --disable-shared --disable-nls
--enable-threads --disable-multilib --with-float=soft --disable-largefile
Thread model: posix
gcc version 4.1.2

Is this issue due to a floating point option or kernel headers ? I have built
buildroot toochain with kernel-header 2.6.12 for my linux kernel 2.6.16 and
with soft float option enabled.

any idea to debug further would be grateful!

Thanks
Sara
Post by Denys Vlasenko
Hi,
The rootfs "root_fs_arm.ext2.bz2" which I am testing was downloaded from
the reference link
http://dslinux.gits.kiev.ua/trunk/uClibc/docs/uclibc.org/toolchains.html.
As I have some problem with toochain, I have started to test first using
the existing rootfs built for arm the target which failed to work.
Test with (init=/sbin/hello) "Hello world" statically linked using uclibc
doesn't show any message whereas statically linked using glibc shows the
message. I wonder why it doesn't work well with uclibc. Is this problem
due to the kernel-headers or uclibc config ?
Also may be bad choice of ARM processor flavor, and uclibc code
ended up containing commands which are not supported by your processor.
This is a quite typical cause of "my init doesn't run!" problem.
--
vda
Denys Vlasenko
2007-11-22 22:55:14 UTC
Permalink
Hi,
The rootfs "root_fs_arm.ext2.bz2" which I am testing was downloaded from
the reference link
http://dslinux.gits.kiev.ua/trunk/uClibc/docs/uclibc.org/toolchains.html.
As I have some problem with toochain, I have started to test first using
the existing rootfs built for arm the target which failed to work.
Test with (init=/sbin/hello) "Hello world" statically linked using uclibc
doesn't show any message whereas statically linked using glibc shows the
message. I wonder why it doesn't work well with uclibc. Is this problem
due to the kernel-headers or uclibc config ?
Also may be bad choice of ARM processor flavor, and uclibc code
ended up containing commands which are not supported by your processor.

This is a quite typical cause of "my init doesn't run!" problem.
--
vda
Saravanan Chanemouganandam
2007-11-21 15:20:49 UTC
Permalink
Hi all,

I am having problem in booting my arm pxa270 target using the pre built
( buildroot uclibc) "root_fs_arm.ext2.bz2". The linux 2.6.16 image boots well
and hangs after mounting the root filesystem through nfs
....
....
VFS: Mounted root (nfs filesystem).
Freeing init memory: 116K

It works fine for the glibc rootfs come with the board. Can any body precise
me why it boots well with glibc rootfs and hangs with uclibc rootfs?

Thanks
Sara
Denys Vlasenko
2007-11-21 20:58:53 UTC
Permalink
Post by Saravanan Chanemouganandam
Hi all,
I am having problem in booting my arm pxa270 target using the pre built
( buildroot uclibc) "root_fs_arm.ext2.bz2". The linux 2.6.16 image boots
well and hangs after mounting the root filesystem through nfs
....
....
VFS: Mounted root (nfs filesystem).
Freeing init memory: 116K
It works fine for the glibc rootfs come with the board. Can any body
precise me why it boots well with glibc rootfs and hangs with uclibc
rootfs?
Usual tactic in debugging this kind of problem
is to build "Hello world" program, statically linked,
boot with init=/path/to/hello_world and see whether
message appears.
If it works, proceed with something bigger, e.g. init=/bin/sh.
If it doesn't, you probably have toolchain problems.
--
vda
Loading...