On 25/07/13 09:13, michael-dev wrote:
Hi,

the FeM e.V. is a non-profit organization that for example operates a
student computer network in Germany.
We therefore currently have about 20 APs (P1020WLAN) deployed (more to
come), running an OpenWRT-based firmware in a centralized manner. So the
flashed OpenWRT will just download another OpenWRT-firmware
(kernel+rootfs) and run it in memory using kexec. As we need very recent
kernel support, we opted to base our firmware on OpenWRT-Trunk and after
some freezing and testing use it on the campus. The firmware is build by
adding a custom feed, a new kernel target and a specific .config - so it
was easy to upgrade and maintain.
Using a very recent kernel and compat-wireless doesn't only help us but
also enables some testing and fixing effort that results in fixes send
to upstream, as well as adding and testing new features to existing or
new projects (for example hostapd or dhcpsnoopingd).

I recently rebased our devel tree to openwrt trunk and found that the
devices would no longer boot up.
This is because we use /sbin/init as rdinit binary (the image is started
using kexec + initrd with) and the package base-files still includes
/etc/inittab, which references /etc/init.d/rcS that is lacking. It was
removed in a commit saying that it is not needed with procd. The preinit
script also still references /sbin/init. Changing the kernel command
line to start /sbin/procd helped in that some init scripts were run, but
networking was left completely unconfigured (we only used the stock
/etc/init.d/network) and procd didn't bother to start a login prompt on
the console.

So I started searching for information about procd, why it is there and
how to use it. But I found hardly anything.

Procd is mentioned in the wiki, but not documented. It looks like there
was no public discussion about using procd (on a mailing list) nor did
anybody bother to sum up the reasons why procd was chosen or
informations about how to use it into the wiki. As procd is OpenWRT
specific, there is no documentation elsewhere and its source repo
doesn't even contain a readme file.
I also fail see any obvious reasons why it should be required - given
that cron, inetd and init were already there. Script files are also more
easy to patch from files added by a feed.

So the OpenWRT trunk currently doesn't work for me with neither procd
nor init. As it looks like procd is becoming the future, I go against
reverting the procd-related changes. But as it is also completely
undocumented, I find it difficult to fix the issue I have. This is
really disappointing to me.
I'm also asking myself why I don't find a discussion about procd - I
suppose that the topic is likely to have been discussed among developers.

So I would be glad if somebody could point me to documentation about
procd and maybe why it is there.


Hi,

there is not much docs about procd to be honest. in general making procd the pid 1 should boot the system succesfully. can you show me the inittab you use ?

adding a line as the following should make procd find the console and start a login shell

::askconsole:/bin/ash --login

        John
_______________________________________________
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel

Reply via email to