Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
[einit] v0.10 is out, any beta testers about?
View unanswered posts
View posts from last 24 hours

Goto page Previous  1, 2, 3 ... 5, 6, 7 ... 9, 10, 11  Next  
Reply to topic    Gentoo Forums Forum Index Unsupported Software
View previous topic :: View next topic  
Author Message
rmh3093
Advocate
Advocate


Joined: 06 Aug 2003
Posts: 2138
Location: Albany, NY

PostPosted: Wed Oct 25, 2006 12:52 am    Post subject: Reply with quote

vibrokatana wrote:

Once I get the overall philosophy of the configuration files down, I may devote some time to making a transition tool that would *hopefully* beable to take a sysinit system and dump it into einit and have it work(we can dream cant we :twisted:)


that really isnt necessary, the basics to make gentoo boot are the same to make any other distro boot, and einit works out of the box for the most part, all you have to do it fix your fstab settings and pick a display manager and you will be in a desktop environment, tweak 1 or 2 more lines and your network interface is up, everythying else beyond that is simple
_________________
Do not meddle in the affairs of wizards, for they are subtle and quick to anger.
Back to top
View user's profile Send private message
vibrokatana
Guru
Guru


Joined: 09 Feb 2006
Posts: 328
Location: o0o0oo

PostPosted: Wed Oct 25, 2006 2:41 am    Post subject: Reply with quote

Yes but you have to configure it all, it would be interesting to make a script that parsed all that info from the existing configurations and dumped it into the xml file
_________________
My Systems - "I suggest the whole thing be coded in whitespace. Henceforth the code will be obscure and functional at the same time."
Back to top
View user's profile Send private message
micr0c0sm
Tux's lil' helper
Tux's lil' helper


Joined: 29 Oct 2005
Posts: 148
Location: New York

PostPosted: Wed Oct 25, 2006 2:55 am    Post subject: Reply with quote

That tool would be extremely useful and appreciated.
Back to top
View user's profile Send private message
mdeininger
Veteran
Veteran


Joined: 15 Jun 2005
Posts: 1740
Location: Emerald Isles, observing Dublin's docklands

PostPosted: Wed Oct 25, 2006 6:01 am    Post subject: Reply with quote

vibrokatana wrote:
I dont like the overall philosophy of ditching fstab though, it is still used internally once booted, so giving it the cold shoulder doesnt seem right.

well, i did that because the overall design of the current fstab is rather limited, if you use the internal type, you can also combine the mounting with scripting which can be rather handy, but if you really want to use your regular fstab, you can. the nice thing about the current setup is that you can have more than one source for fstab entries, and there is a parser for the legacy fstab. right now you'd need to set "configuration-storage-fstab-source" to "configuration:legacy" and then you'd need to remove the nodes for / and /boot from the .xml files (else you'll have these defined twice, once from /etc/fstab, once from your .xml configuration, so things would go messy).

vibrokatana wrote:
Yes but you have to configure it all, it would be interesting to make a script that parsed all that info from the existing configurations and dumped it into the xml file

in theory, that could work, but then someone would have to write a script for every distribution and the script would have to be different for different releases of the distributions. the script is probably trivial to create for gentoo, but with some other distributions things could go pretty weird :D.
of course, if you make one, i'd be more than happy to include it ;)

rmh3093 wrote:
a good I was hoping you were going to rename the files

weeell, the original naming was based on a different design, but i ran into a chicken-and-egg problem with that, so i kind of liked the things you proposed and changed the names a little to keep in line with what i had in mind ;).

rmh3093 wrote:
mdeininger wrote:
* when specifying variables (or when binary modules request them), the nesting is denoted by a dash character, and there's some sort of auto-collation that you can use. (see below for an example)


:) now thats nice

i really hope it isn't all too complicated, sometimes my brain produces weird things :) i thought it'd come in handy though :D
_________________
"Confident, lazy, cocky, dead." -- Felix Jongleur, Otherland

( Twitter | Blog | GitHub )
Back to top
View user's profile Send private message
vibrokatana
Guru
Guru


Joined: 09 Feb 2006
Posts: 328
Location: o0o0oo

PostPosted: Wed Oct 25, 2006 6:41 am    Post subject: Reply with quote

I was thinking for the script to more or less automatically transition gentoo/sysinit to einit. Of course different distros use different init systems so it wouldnt work that great to have to make one for each distro.

proposed idea:
Parse rc-update and try to match up init scripts (ie mythtv - mythtv in einit)
List missing stuff (blacklist junk not needed)
Fetch modules needed (probably parse via find where modules are located, ill work this out)
add modules loaded automatically, give option to add the others
Parse fstab and grab configuration - ignore # and grab existing options - this will be thouroughly tested

This would then dump a file into the einit directory, but not override the existing files.

I will start on it this weekend. But nothing untill I get this dumb paper written lol

Feel free to add comments or give ideas, yes I know it is a sorta crappy system right now.
_________________
My Systems - "I suggest the whole thing be coded in whitespace. Henceforth the code will be obscure and functional at the same time."
Back to top
View user's profile Send private message
mdeininger
Veteran
Veteran


Joined: 15 Jun 2005
Posts: 1740
Location: Emerald Isles, observing Dublin's docklands

PostPosted: Wed Oct 25, 2006 1:27 pm    Post subject: Reply with quote

nice idea for a script, actually, but if you wanted to do that, there would be yet another possibility.
just last week i "virtualised" the configuration process, the function that reads the configuration is now invoked by an event, so it would be possible to write a (binary) module that listens for this event and that then parses the gentoo init-configuration files and converts the entries it finds to the proper einit equivalents...
that would have the advantage of being completely transparent while probably being easier to handle -- what say thee to that? ;)
_________________
"Confident, lazy, cocky, dead." -- Felix Jongleur, Otherland

( Twitter | Blog | GitHub )
Back to top
View user's profile Send private message
vibrokatana
Guru
Guru


Joined: 09 Feb 2006
Posts: 328
Location: o0o0oo

PostPosted: Wed Oct 25, 2006 3:03 pm    Post subject: Reply with quote

Im not to fresh on the higher languages :(
From what I sound that would be grabbing on each boot 8O, probably not the most efficient.
_________________
My Systems - "I suggest the whole thing be coded in whitespace. Henceforth the code will be obscure and functional at the same time."
Back to top
View user's profile Send private message
zAfi
Apprentice
Apprentice


Joined: 08 Aug 2006
Posts: 220
Location: Austria

PostPosted: Wed Oct 25, 2006 3:34 pm    Post subject: Reply with quote

mdeininger wrote:
just last week i "virtualised" the configuration process, the function that reads the configuration is now invoked by an event, so it would be possible to write a (binary) module that listens for this event and that then parses the gentoo init-configuration files and converts the entries it finds to the proper einit equivalents...

You don't mean
Code:
--check-configuration
do you??

my 2 €-cents: I think that'd be great, because that would safe the project a lot of time and instantly make it accessible to a wider range of possibilities. And it could go through hard beta-testing more sooner than later.... :P :P
_________________
Gentoo 2008.0/desktop | Kernel: 2.6.27-tuxonice | Arch: amd64 | KDE 3.5.9 | WU Wien |
----------
Share your kernel information @ http://klive.cpushare.com/
Back to top
View user's profile Send private message
Lloeki
Guru
Guru


Joined: 14 Jun 2006
Posts: 437
Location: France

PostPosted: Wed Oct 25, 2006 3:45 pm    Post subject: Reply with quote

I just tried einit... :)

some feedback, in chronological order:
1. emerging cvs version was painless, but finding the overlay was sheer luck (found via the docs)
2. great, detailed documentation. init-ng just plain lacks that. generally speaking having proper documentation is really never emphatised enough as a project key point. you did it just right, keep it up to date and you are all-good.
3. stupid me, I start einit --help from the command line, as root. well, I just reboot and try it out, but I just plain forgot to edit local.xml. duh.
4. back to local.xml. the thing is just plain human readable and straightforward. ok, I read xml a lot these days, but hey, there's good xml and bad xml, and that one's damn good.
5. edited mount points, trying to boot. failure. heh. root (/dev/sda1) fails to mount. booting with init=/bin/sh reveals that sd* nodes aren't on the filesystem. creating them manually with mknod, reboot, and everything mounts correctly. this means udev's /dev is not mounted early enough, thus /dev/sda1 node is not available. with udev, we should be able to boot with just two fs-created nodes (I think it's /dev/zero and /dev/console but i can't remember exactly), just as sysvinit is able to.
6. surprisingly, I am greeted by gdm :) I tried out of the blue to set xdm to daemon-gdm... great!
7. back to vt1, I notice some failures/warnings:
- WA01 'No Such File' for mount (critical) and mount (local). I just don't freaking know where they come from.
- alsa fails. didn't investigate much, but maybe it's because I use in-kernel alsa and thus modules fail to be found.
- lm-sensors fail, and I didn't ask for it to start.
- ntpd fails to sync time, didn't ask for it either.
- eth0 fails, but I didn't load the module. adding it to networking makes it work.
8. now I decide going out of 'stock config' and add/remove some services. added gpm, acpi, hald, dbus. having acpi makes system reboot! so removed. weird. anyway, hald and dbus start ok, but gpm just says 'disabled'. mount (local) just says the same thing as before, but mount (critical) says WA01 /dev/pts. well, not exactly clear. I suggest having some verbose mode, where each service would receive two lines instead of one, the second being used for more verbose status/error messages.

I'll continue to crawl around config files and documentations, but if anyone has some tips to share regarding the above issues... ;)
last question: is there a way to control services once booted? maybe einit-control, but there's no man page nor --help... back to the docs for now :)

I beg you not to hurry yourself in adding more features (like compatibility), please stabilize the thing first. simpler is always better, and that's just the way it is now. Plus the config is really easy with the current config scheme, services can be ported in a snap. I really don't want this project to become some arachnean thing like initng.

back soon for more feedback.
_________________
Moved to using Arch Linux
Life is meant to be lived, not given up...
HOLY COW I'M TOTALLY GOING SO FAST OH F*** ;)
Back to top
View user's profile Send private message
zAfi
Apprentice
Apprentice


Joined: 08 Aug 2006
Posts: 220
Location: Austria

PostPosted: Wed Oct 25, 2006 4:46 pm    Post subject: Reply with quote

zAfi wrote:
@jamax: if you want to use your usb mouse do the following:
add uhci_hcd and usbhid to kernel_modules_arbitrary in rc.xml. Then you have to ensure that you have _kern-arbitrary_ in the default runlevel (just enter it after xdm or wherever). It should look like this
Code:
 <mode id="default" base="boot">
  <enable mod="audio:portmap:swap:mount/remote:tts:kern-arbitrary:clock" />

that did if for me. I have to admit that I had my modules defined in the arbitrary part, but I have forgotten to add _kern-arbitrary_ to the runlevel...^^


this should help you with the alsa problem as well. ^^ well, you just have to ensure the second part, that the kern-arbitrary part is set in enable mod (of course you must ensure that the proper modules are listed there!)! That did it for me!! I get that WA01 warning as well, sometimes its here, sometimes its okay...^^
_________________
Gentoo 2008.0/desktop | Kernel: 2.6.27-tuxonice | Arch: amd64 | KDE 3.5.9 | WU Wien |
----------
Share your kernel information @ http://klive.cpushare.com/
Back to top
View user's profile Send private message
smlgbl
Guru
Guru


Joined: 10 Feb 2005
Posts: 305

PostPosted: Wed Oct 25, 2006 5:37 pm    Post subject: Reply with quote

Hm, i updated, but now i don't know which files it is still using. Also, i tried putting, well i'll show you:
Code:
<mod-shell id="shell-kern-audio"
   name="Kernel Modules (Audigy)"
   provides="kern-sound"
   requires="mount/system"
   enable="for x in ${kernel_modules_sound};
     do echo $x; modprobe $x;
    done; /bin/true"
   disable="/bin/true"
   variables="kernel_modules_sound" />

 <mod-shell id="shell-kern-arbitrary"
   name="Kernel Modules (arbitrary)"
   provides="kern-arbitrary"
   requires="mount/system"
   enable="
    for x in ${kernel_modules_arbitrary};
     do echo $x; modprobe $x;
    done; /bin/true"
   disable="
    for x in ${kernel_modules_arbitrary};
     do /bin/true;
      # rmmod $x;
    done; /bin/true"
   variables="kernel_modules_arbitrary" />

Before the update, i used the second one, now i would like to use the first one.
Therefore, i put this in local.xml:
Code:
<kernel>
   <modules>
    <usb s="" />
    <bluetooth s="" />
    <hid s="" />
    <sensors s="" />
    <arbitrary s="" />
    <sound s="snd-emu10k1 snd-emu10k1-synth" />
    <ath0 s="ath_pci" />
   </modules>
  </kernel>

But it doesn't load the modules. Where is my mistake? Do I have to call the variables with "configuration_kernel_modules_sound"? But the wireless works, even though i didn't change anything there.

EDIT: Well, I should have taken a closer look at einit.xml first. All the stuff is there now. Are the shell and daemon-modules also to be put there now, or should i put that in local.xml? What was your intent?
_________________
samuel.
'Do not let one girding on boast about himself like one unfastening'
Back to top
View user's profile Send private message
Lloeki
Guru
Guru


Joined: 14 Jun 2006
Posts: 437
Location: France

PostPosted: Wed Oct 25, 2006 6:06 pm    Post subject: Reply with quote

well, I cleared most of my issues.
haader, I added/modified daemons but I did not touch einit.xml, only local.xml. It's good to be able to override things (see my 'boot' mode), it reminds me of java inheritance overrides/overloads :) You can do the same for daemons, I originally did it for fixing gpm, but it went 'disabled' anyway, so I created a gpm shell inspired by dhcpcd behavior.

Code:

<?xml version="1.0" encoding="UTF-8" ?>
<einit>
<!-- you will need to modify this file -->
 <configuration>
  <system>
   <swap device="/dev/sda3" affinity="0" />
  </system>

  <network>
   <hostname s="midgard" />
   <domainname s="" />

   <wireless>
    <ssid s="default" />
   </wireless>
  </network>

  <peripherals>
   <keyboard layout="fr-pc" />
  </peripherals>

  <kernel>
   <modules>
<!--    <usb s="" />
    <bluetooth s="" />
    <hid s="" />
    <sensors s="" />
    <dvb s="" /> -->
    <ethernet s="b44" />
    <arbitrary s="snd_hda_intel" />
   </modules>

   <module>
    <wlan0 s="ipw3945" />
   </module>
  </kernel>

  <storage>
<!-- fstab -->
   <fstab>
    <node mountpoint="/" device="/dev/sda1" fs="ext3" options="noatime" /> <!-- before-mount="sleep 2" -->
    <node mountpoint="/home" device="/dev/sda2" fs="ext3" options="noatime" />
<!--    <node mountpoint="/tmp" fs="tmpfs" /> -->

   </fstab>
  </storage>
 </configuration>

 <services>
  <prefer>
   <xdm s="daemon-gdm" />
   <syslog s="daemon-syslog-ng" />
   <clock s="shell-clock-hwclock" />
  </prefer>

  <virtual>
   <module>
    <shell id="shell-gpm"
     name="GPM"
     provides="gpms"
     requires="tty:mount/critical"
     enable="gpm -m /dev/input/mice -t imps2"
     disable="killall gpm" />
    <shell id="shell-net-wlan0"
     name="Network (Wireless, Intel)"
     requires="hal:dbus:mount/critical"
     provides="net-wlan0"
     enable="rm -f /var/run/dhcpcd-wlan0.pid ;
             /sbin/modprobe ${configuration_kernel_module_wlan0} ;
             /sbin/ipw3945d ;
             /sbin/wpa_supplicant -Dwext -c/etc/wpa_supplicant/wpa_supplicant.conf -w -B -iwlan0;
             /bin/wpa_cli -iwlan0 -B ;
             dhcpcd wlan0"
     disable="/sbin/ipw3945d --kill ; ${configuration_command_rmmod} ${configuration_kernel_module_wlan0}"
     variables="configuration-kernel-module-wlan0:configuration-command-rmmod" />
   </module>
  </virtual>

  <alias>
<!-- module groups -->
   <network group="net-lo:net-eth0" seq="most" />
   <video group="kern-nvidia" seq="any-iop" />
   <audio group="alsa" seq="any-iop" />
  </alias>
 </services>

 <mode id="boot">
  <enable mod="sysconf:mount/local:hostname:tty:keyboard:ipc:syslog:dbus:hal:kern-arbitrary:net-lo" />
  <ttys s="tty1-regular" />
 </mode>
 <mode id="default" base="boot">
  <enable mod="audio:clock:swap:gpms" />
  <ttys s="tty2-regular:tty3-regular:tty4-regular:tty5-regular:tty6-regular" />
 </mode>
</einit>


now remains:

- WA01 thing
- acpid issues
- sometimes ctrl+alt+del doesn't work, but 'reboot' does
- use ifplugd for eth0 (never used netplug)
- modify (override) alsa module loading to take a module list
- fix ipw3945 daemon (it does not work while exact same steps in console work)
- broadcast message on shutdown (like sysvinit), or at least some kind of feedback
- coldplug?
_________________
Moved to using Arch Linux
Life is meant to be lived, not given up...
HOLY COW I'M TOTALLY GOING SO FAST OH F*** ;)
Back to top
View user's profile Send private message
rmh3093
Advocate
Advocate


Joined: 06 Aug 2003
Posts: 2138
Location: Albany, NY

PostPosted: Wed Oct 25, 2006 6:21 pm    Post subject: Reply with quote

vibrokatana wrote:
I dont like the overall philosophy of ditching fstab though, it is still used internally once booted, so giving it the cold shoulder doesnt seem right.


hal/dbus/pmount make fstab useless outside of booting the system initially
_________________
Do not meddle in the affairs of wizards, for they are subtle and quick to anger.
Back to top
View user's profile Send private message
Janax
Apprentice
Apprentice


Joined: 17 Aug 2004
Posts: 162
Location: Iowa

PostPosted: Wed Oct 25, 2006 7:13 pm    Post subject: Reply with quote

OK - I've been working on getting the new system up and running, and I really like the new setup (einit.xml and local.xml). The fixing of the zombie bug is also very welcome!

However, a few more questions:

1. Are the files re-read after initially being parsed? In other words, does einit keep the parsed einit.xml and local.xml files in memory or does it automatically see newer timestamps on those files to be re-read? Or should I send it a HUP or something?

Here's my actual problem... I'm trying to set up different modes to switch to, as I couldn't get individual modules to start and stop using 'erc'. For example, I added a 'ntpd' and 'smartd' to my local.xml file. Then I try to start them up using
Code:

# erc ntpd enable
request processed


When I switch to tty11 and 12 to see what actually happened, I see error messages that 'ntpd' is not defined. Similarly, when I try to use the 'mode-switch' command to force einit to use a temporary mode I've created in local.xml - basically to start the same daemon - I get a message saying that the mode is undefined.

After rebooting, I was able to try and switch the mode using the einit-control command, but instead of saying "temp" on the top status line on tty1, I was getting a null string there (""). I know that you said this feature may not fully be implemented, so I was just pointing this out as another possible (related?) issue here.

2. I think I understand your answer about how to switch between wired and wireless networking depending on my location, but is there a way you could see that I could do this without having to manually start one or the other up? Right now my solution is to simply not start ANY networking other than lo0 and manually start the one I'd want to use - whereas in the legacy system I simply create a separate grub entry with the addition 'runlevel=wireless' that will automatically start my custom 'wireless' runlevel instead of 'default'. If you did something similar with einit, such as being able to pass into the system which mode I wanted to run, then I could use the same approach. The whole thing should be painless to manage as well - simply another mode (sub-)tree in the local.xml file.

I wouldn't care about this point so much, but last night when I was trying to get my ndiswrapper module to work I had to wait several minutes for dhcpcd to time out while trying to bring up 'net-eth0' as part of the 'default' mode. Then I was running into some unknown issue where the machine would lock up a couple of minutes after logging in. While working this morning with the upgraded system I didn't run into this because I planned around it, but I think this would be a nice feature.


3. I noticed that after resetting the machine via 'einit-control power reset' while testing this morning that I was getting some reiserfs messages about log transactions being replayed. I think that reiserfs isn't flushing its cache fast enough after einit does the equivalent of 'init 6'. Is there something you can suggest or fix that would prevent this from happening?


Thanks again for your great work on this!
_________________
Americans for Fair Taxation because the current tax system is not only burdensome but corrupt as well!
Back to top
View user's profile Send private message
smlgbl
Guru
Guru


Joined: 10 Feb 2005
Posts: 305

PostPosted: Wed Oct 25, 2006 7:35 pm    Post subject: Reply with quote

Just wanted to tell everybody, that everything is running fine again. :D Except for ntpdate, but i think i have the fix for that already. As before, my current setup is to be found under here.
I put most things into einit.xml. Maybe I'll change that some time in the future.
Just wanted to know: What is the number in front of "new mode: default now in effect" for? Mine just now says -7178. ?????
_________________
samuel.
'Do not let one girding on boast about himself like one unfastening'
Back to top
View user's profile Send private message
mdeininger
Veteran
Veteran


Joined: 15 Jun 2005
Posts: 1740
Location: Emerald Isles, observing Dublin's docklands

PostPosted: Wed Oct 25, 2006 7:55 pm    Post subject: Reply with quote

vibrokatana wrote:
Im not to fresh on the higher languages :(
From what I sound that would be grabbing on each boot 8O, probably not the most efficient.

probably not, but it'd be compiled and all, so it shouldn't be much slower than parsing the xml-files.

we could also create that as an "optional" reader, maybe? like... "if file sysvsettings.xml doesn't exist, create it using proper parser, else, make the regular parser read it."

zAfi wrote:
You don't mean
Code:
--check-configuration
do you??

my 2 €-cents: I think that'd be great, because that would safe the project a lot of time and instantly make it accessible to a wider range of possibilities. And it could go through hard beta-testing more sooner than later.... :P :P

no, not that code. the --check-configuration bit is just an extra exported function in the modules that get called instead of the scheduler.
the configuration thing is an actual in-core event, like module status updates or ipc requests. any module can emit one, and any module can provide functions to listen for these events and interpret them (well, *binary*-modules can, gonna hack stuff to allow the same for scripts...).

it really could help a lot... gotta look into either of these methods (script or parser... both should help).

Lloeki wrote:
I just tried einit... :)

alright, let's see...

1) ah well, i did link it on the main page... although i should probably mention the layman overlay in the documentation...
2) well, right now i'm afraid i'll have to rework it a lot ;) but, thank you. that's one of the things i always try to get done properly before every release -- without it, i don't release software. bad thing is: in-source comments suck and are sometimes nonexistent :D
3) ah... d'oh :) einit --check-configuration should help more... i'll add a dummy-text for --help :D
4) thank you :) some of the credit goes to rmh3093 right now, though. i had planned to change stuff earlier, but credit goes to him for making me go through with it ;)
5) hmm, you're right, i do remount /dev after /... i completely forgot that some people don't have /dev before / :/
6) :D
7) just disable the sensors, etc in your boot-mode (copy the whole <mode id="boot" /> section from einit.xml, and remove the services you don't want) for also, you could remove the kern-alsa dependency from the <shell id="shell-alsa" ... /> tag. the default configuration tries to get up as much as possible... not sure about the mount/critical thing, though, it should be either of these two failing:
Code:
    <node mountpoint="/dev/shm" fs="tmpfs" before-mount="mkdir /dev/shm" options="critical" />
    <node mountpoint="/dev/pts" fs="devpts" before-mount="mkdir /dev/pts" options="critical" />

unless you specified a /usr or /var and that failed. you could try
Code:
einit-control mount ls_fstab
to see the in-core fstab and look for things marked "critical".
8) yeah... verbosity isn't the best right now... i was going to add some more fine-tuning things using ipc...

controlling modules: that's done using erc (or einit-control rc <stuff>). i think the chapter in the docs is called "interfacing with einit". it's basically "erc <service-name> (enable|disable)" or "erc switch-mode <mode-name>".

i really value your feedback, and i think i get some good pointers for improvement from this, thank you :)


haader, you can choose where to put them, but i think it'd be a great idea to put all the custom modules in your local.xml and keep the einit.xml file as some sort of "upstream default configuration" -- should make maintaining easier? ;)
i changed the name for the wireless-stuff myself in the modules, maybe that's why.
the " configuration_kernel_modules_sound " would be because you'd request the variable with variables="configuration-kernel-modules-sound" if you had it nested like the default ones. it's that long to make things easier to abstract, and as i said, all non-alnum characters are converted to _ because bash can't seem to handle environment variables with anything but those characters, - didn't work earlier when i tried, and i'd like to give these modules the flexibility to use any configuration variable (that's why i put the / syntax in place...)

your definition for the sound-module would probably have to look like:
Code:

<shell id="shell-kern-audio"
    name="Kernel Modules (Audigy)"
    provides="kern-sound"
    requires="mount/system"
    enable="for x in ${configuration_kernel_modules_sound};
      do echo $x; modprobe $x;
     done; /bin/true"
    disable="/bin/true"
    variables="configuration-kernel-modules-sound" />

(put into the right context)

uhm, just out of curiousity, shouldn't you be able to use the "vanilla" alsa-module and specify the modules in your /etc/modules.d/alsa file like the alsa guide tells you to?


hope i picked up everything just now guys, sorry, i'm in a wee bitofa hurry right now, got some work to do and not much time at my hand, if i got anything wrong, please do point it out, and as always: all feedback is very welcome, i really appreciate it, and i'm really glad if things work out and you like the project ;)

-- Magnus
_________________
"Confident, lazy, cocky, dead." -- Felix Jongleur, Otherland

( Twitter | Blog | GitHub )
Back to top
View user's profile Send private message
smlgbl
Guru
Guru


Joined: 10 Feb 2005
Posts: 305

PostPosted: Wed Oct 25, 2006 8:04 pm    Post subject: Reply with quote

One more thing: What is this:
Code:
stradivari einit # mount
rootfs on / type rootfs (rw)
/dev/root on / type reiserfs (rw,noatime)
proc on /proc type proc (rw)
sysfs on /sys type sysfs (rw)
tmpfs on /dev type tmpfs (rw)
tmpfs on /dev/shm type tmpfs (rw)
devpts on /dev/pts type devpts (rw)
usbfs on /proc/bus/usb type usbfs (rw)
/dev/hda5 on /boot type ext2 (rw,noatime)
tmpfs on /tmp type tmpfs (rw)
tmpfs on /dev/shm type tmpfs (rw)

??? Did I miss something? Had that before, just wanted to point that out again.
_________________
samuel.
'Do not let one girding on boast about himself like one unfastening'
Back to top
View user's profile Send private message
vibrokatana
Guru
Guru


Joined: 09 Feb 2006
Posts: 328
Location: o0o0oo

PostPosted: Wed Oct 25, 2006 8:22 pm    Post subject: Reply with quote

haader wrote:
One more thing: What is this:
Code:
stradivari einit # mount
rootfs on / type rootfs (rw)
/dev/root on / type reiserfs (rw,noatime)
proc on /proc type proc (rw)
sysfs on /sys type sysfs (rw)
tmpfs on /dev type tmpfs (rw)
tmpfs on /dev/shm type tmpfs (rw)
devpts on /dev/pts type devpts (rw)
usbfs on /proc/bus/usb type usbfs (rw)
/dev/hda5 on /boot type ext2 (rw,noatime)
tmpfs on /tmp type tmpfs (rw)
tmpfs on /dev/shm type tmpfs (rw)

??? Did I miss something? Had that before, just wanted to point that out again.

It is something with the mount logic in einit, seems to double mount some stuff.
_________________
My Systems - "I suggest the whole thing be coded in whitespace. Henceforth the code will be obscure and functional at the same time."
Back to top
View user's profile Send private message
zAfi
Apprentice
Apprentice


Joined: 08 Aug 2006
Posts: 220
Location: Austria

PostPosted: Wed Oct 25, 2006 8:28 pm    Post subject: Reply with quote

Lloeki wrote:
- coldplug?

I'll quote some information from /etc/init.d/hotplug:
Quote:
# nothing here anymore. Please use the coldplug package if you really want to
# load modules for devices that are discovered by your kernel before init runs.
#
# However, please realize that if you have any problems, the developers
# recommend just using the modules.autoload functionality to handle this in a
# much simpler manner.

So we shouldn't really bother about coldplug...:D
_________________
Gentoo 2008.0/desktop | Kernel: 2.6.27-tuxonice | Arch: amd64 | KDE 3.5.9 | WU Wien |
----------
Share your kernel information @ http://klive.cpushare.com/
Back to top
View user's profile Send private message
vibrokatana
Guru
Guru


Joined: 09 Feb 2006
Posts: 328
Location: o0o0oo

PostPosted: Thu Oct 26, 2006 6:22 am    Post subject: Reply with quote

Does anyone notice any zombies in their system. I think einit is orphaning some stuff when it boots.

Code:
02:13:35 [Zeth.sakkaku]~ $ ps -ef
UID        PID  PPID  C STIME TTY          TIME CMD
root         1     0  0 02:12 ?        00:00:00 /sbin/init
root         2     1  0 02:12 ?        00:00:00 [migration/0]
root         3     1  0 02:12 ?        00:00:00 [ksoftirqd/0]
root         4     1  0 02:12 ?        00:00:00 [migration/1]
root         5     1  0 02:12 ?        00:00:00 [ksoftirqd/1]
root         6     1  0 02:12 ?        00:00:00 [events/0]
root         7     1  0 02:12 ?        00:00:00 [events/1]
root         8     1  0 02:12 ?        00:00:00 [khelper]
root         9     1  0 02:12 ?        00:00:00 [kthread]
root        12     9  0 02:12 ?        00:00:00 [kblockd/0]
root        13     9  0 02:12 ?        00:00:00 [kblockd/1]
root        14     9  0 02:12 ?        00:00:00 [kacpid]
root       125     9  0 02:12 ?        00:00:00 [khubd]
root       127     9  0 02:12 ?        00:00:00 [kseriod]
root       224     9  0 02:12 ?        00:00:00 [pdflush]
root       225     9  0 02:12 ?        00:00:00 [pdflush]
root       226     1  0 02:12 ?        00:00:00 [kswapd0]
root       227     9  0 02:12 ?        00:00:00 [kprefetchd]
root       228     9  0 02:12 ?        00:00:00 [aio/0]
root       229     9  0 02:12 ?        00:00:00 [aio/1]
root       230     9  0 02:12 ?        00:00:00 [cifsoplockd]
root       231     9  0 02:12 ?        00:00:00 [cifsdnotifyd]
root       233     9  0 02:12 ?        00:00:00 [xfslogd/0]
root       234     9  0 02:12 ?        00:00:00 [xfslogd/1]
root       235     9  0 02:12 ?        00:00:00 [xfsdatad/0]
root       236     9  0 02:12 ?        00:00:00 [xfsdatad/1]
root       855     9  0 02:12 ?        00:00:00 [ata/0]
root       856     9  0 02:12 ?        00:00:00 [ata/1]
root       857     9  0 02:12 ?        00:00:00 [ata_aux]
root       859     9  0 02:12 ?        00:00:00 [scsi_eh_0]
root       860     9  0 02:12 ?        00:00:00 [scsi_eh_1]
root       872     1  0 02:12 ?        00:00:00 [khpsbpkt]
root       876     1  0 02:12 ?        00:00:00 [knodemgrd_0]
root       954     9  0 02:12 ?        00:00:00 [kpsmoused]
root       974     9  0 02:12 ?        00:00:00 [hda_codec]
root       986     1  0 02:12 ?        00:00:00 [kirqd]
root       989     9  0 02:12 ?        00:00:00 [ktxnmgrd:sda4:w]
root       990     9  0 02:12 ?        00:00:00 [ent:sda4.]
root      1419     1  0 02:12 ?        00:00:00 /sbin/udevd
root      1427     1  0 02:12 tty2     00:00:00 /bin/login --       
root      1429     1  0 02:12 tty3     00:00:00 /sbin/agetty 38400 tty3
root      1431     1  0 02:12 tty4     00:00:00 /sbin/agetty 38400 tty4
root      1433     1  0 02:12 tty5     00:00:00 /sbin/agetty 38400 tty5
root      1435     1  0 02:12 tty6     00:00:00 /sbin/agetty 38400 tty6
root      1504     1  0 02:12 ?        00:00:00 /usr/sbin/acpid --foreground
root      1524     1  0 02:12 ?        00:00:00 metalog [MASTER]
root      1563     1  0 02:12 ?        00:00:00 [kstopmachine] <defunct>
root      1568     1  0 02:12 ?        00:00:00 [gzip] <defunct>
root      1572     1  0 02:12 ?        00:00:00 [kstopmachine] <defunct>
root      1580     1  0 02:12 ?        00:00:00 [kstopmachine] <defunct>
root      1588     1  0 02:12 ?        00:00:00 [kstopmachine] <defunct>
root      1599     1  0 02:12 ?        00:00:00 [gzip] <defunct>
root      1602  1524  0 02:12 ?        00:00:00 metalog [KERNEL]
root      1616     1  0 02:12 ?        00:00:00 [kstopmachine] <defunct>
root      1670     1  0 02:12 ?        00:00:00 /usr/bin/festival --server -b /e
101       1673     1  0 02:12 ?        00:00:00 /usr/bin/dbus-daemon --system
103       1678     1  0 02:12 ?        00:00:00 /usr/sbin/hald --daemon=no --use
root      1681  1678  0 02:12 ?        00:00:00 hald-runner
root      1685     1  0 02:12 ?        00:00:00 [hald-probe-smbi] <defunct>
103       1687  1681  0 02:12 ?        00:00:00 /usr/libexec/hald-addon-acpi
103       1692  1681  0 02:12 ?        00:00:00 /usr/libexec/hald-addon-keyboard
103       1699  1681  0 02:12 ?        00:00:00 /usr/libexec/hald-addon-keyboard
103       1705  1681  0 02:12 ?        00:00:00 /usr/libexec/hald-addon-keyboard
root      1723  1681  0 02:12 ?        00:00:00 /usr/libexec/hald-addon-storage
sakkaku   1724  1427  0 02:12 tty2     00:00:00 -bash
sakkaku   1729  1724  0 02:12 tty2     00:00:00 /bin/sh /usr/bin/startx
sakkaku   1814  1729  0 02:12 tty2     00:00:00 xinit /etc/X11/xinit/xinitrc --
root      1815  1814  4 02:12 tty7     00:00:03 X :0 -nolisten tcp -br -auth /ho
root      1828     1  0 02:12 ?        00:00:00 [dhcpcd] <defunct>
root      1829     1  0 02:12 ?        00:00:00 /sbin/dhcpcd -d -t 60 eth0
root      1853     1  0 02:12 ?        00:00:00 [kstopmachine] <defunct>
root      1861     1  0 02:12 ?        00:00:00 [kstopmachine] <defunct>
sakkaku   1881  1814 12 02:12 tty2     00:00:09 /usr/bin/enlightenment-0.17
sakkaku   1926  1881  0 02:12 ?        00:00:00 /bin/bash /usr/libexec/mozilla-l
sakkaku   1935  1926 10 02:12 ?        00:00:06 /usr/lib/mozilla-firefox/firefox
sakkaku   1938  1881  0 02:12 ?        00:00:00 gnome-terminal --hide-menubar
sakkaku   1940     1  0 02:12 ?        00:00:00 /usr/libexec/gconfd-2 11
sakkaku   1942     1  0 02:13 ?        00:00:00 /usr/libexec/bonobo-activation-s
sakkaku   1960  1938  0 02:13 ?        00:00:00 gnome-pty-helper
sakkaku   1961  1938  0 02:13 pts/0    00:00:00 bash
sakkaku   1969  1961  0 02:14 pts/0    00:00:00 ps -ef

of course it could be my system, I recently upgraded a bunch of junk
_________________
My Systems - "I suggest the whole thing be coded in whitespace. Henceforth the code will be obscure and functional at the same time."
Back to top
View user's profile Send private message
mdeininger
Veteran
Veteran


Joined: 15 Jun 2005
Posts: 1740
Location: Emerald Isles, observing Dublin's docklands

PostPosted: Thu Oct 26, 2006 7:47 am    Post subject: Reply with quote

the orphaning should actually have been fixed with the new cvs version from yesterday. i mean, the loop for the pid=1 part of einit is while(wait-for-all) {}; i doubt i could get more explicit about reaping everything? :D

haader, the double-mounting is pretty weird too, do you get the same when you do a "cat /proc/mounts"? i thought i had fixed this, although mount(1) can be a bitch (it really LOVES to recreate this file :twisted:)

uh, the number is a (veeeeery simple) approach at timing the mode-switches. for example, if you had "[0006] mode "default" blablabla", that should mean that it took 6 seconds to switch from the previous mode to "default". the problem about it is that i simply ask the kernel the time when the feedback-module is told that a switch is being made, and the time when it's told we're done and then i just subtract one from the other. that would ordinarily work perfectly to find out the wall-time, but it can go pretty weird when the time is adjusted between these two steps (obviously). btw, WAXX means XX warning(s), so your WA01 means "1 warning".

Janax:
the configuration-files are kept in-memory, and right now there's no way to tell einit to re-read the configuration file (not from the command-line, anyway), but i'm looking into adding IPC commands to emit events, that would allow you to emit the "read configuration"-event and thus make einit reload the files from disk.

1) it's very weird that the mode-name isn't listed there, it really should be. thanks for pointing that out, this looks like a problem that could turn into a show-stopper. did the modules load anyway?

2) you're right, that should come in handy. gotta figure out how the kernel parametres are passed to init first, though, after all there's no /proc available at boot-time.
mh, wait, i could do that with events... :D

3) not quite sure, i suppose einit really does do stuff too fast at times :D i had a similar issue with /dev/sd* nodes not being up fast enough... although i AM using a sync()-command right before power-ing off / resetting.
you could try to modify your / fstab-node to contain an attribute of the form after-umount="sleep 5" to make it wait 5 seconds after unmounting /. (i hope i added that code for umount... i think i did... could also be the device couldn't be unmounted but only remounted r/o. mount logics right now is as follows: try to unmount, if it fails try to force umount, if that fails try to remount r/o. if all of that fails, return a failure).

btw, you can just use "power off", /sbin/power is automatically symlinked to /sbin/einit-control.


mkaaay, hope i got everything covered this time ;)
keep the feedback comin' guys :D
_________________
"Confident, lazy, cocky, dead." -- Felix Jongleur, Otherland

( Twitter | Blog | GitHub )


Last edited by mdeininger on Thu Oct 26, 2006 7:50 am; edited 1 time in total
Back to top
View user's profile Send private message
Lloeki
Guru
Guru


Joined: 14 Jun 2006
Posts: 437
Location: France

PostPosted: Thu Oct 26, 2006 7:49 am    Post subject: Reply with quote

vibro: I don't notice that behavior. I'll check regularly.

zAFI: well, coldplug cuts me some big work automatically, it really loads a lot of modules on my system :) anyway, I'll go the new way, which will certainly make me cleanup stuff.

haader: currently I have this
Code:
rootfs on / type rootfs (rw)
/dev/root on / type ext3 (rw,noatime,data=ordered)
proc on /proc type proc (rw)
sysfs on /sys type sysfs (rw)
tmpfs on /dev type tmpfs (rw)
tmpfs on /dev/shm type tmpfs (rw)
devpts on /dev/pts type devpts (rw)
/dev/sda2 on /home type ext3 (rw,noatime,data=ordered)
tmpfs on /dev/shm type tmpfs (rw)

and btw thank you :) this made me notice I miss this one
Code:
usbfs on /proc/bus/usb type usbfs

probably the cause of one of my WA01 :) since absence of coldplug implies (for now, I'll fix that) missing modules, thus makes in particular /proc/bus/usb nonexistent.

magnus: thanks for your thorough reply :) though it seems while rushing you missed my second post (where I found some things by myself, and comment a bit more ;) )
sadly, 'einit-control mount ls_fstab' yields nothing critical. thanks again, and hooray to rmh3903.
_________________
Moved to using Arch Linux
Life is meant to be lived, not given up...
HOLY COW I'M TOTALLY GOING SO FAST OH F*** ;)
Back to top
View user's profile Send private message
mdeininger
Veteran
Veteran


Joined: 15 Jun 2005
Posts: 1740
Location: Emerald Isles, observing Dublin's docklands

PostPosted: Thu Oct 26, 2006 7:59 am    Post subject: Reply with quote

quick note on usbfs: modify this defintion in einit.xml
Code:

    <node mountpoint="/proc/bus/usb" fs="usbfs" options="critical" />

to
Code:

    <node mountpoint="/proc/bus/usb" fs="usbfs" options="critical" before-mount="modprobe usbfs" />

(at least i hope the module is called usbfs, but you could probably look that up in the kernel :D)

NOTE: see now why i said the legacy fstab-scheme is limited? ;)

yeah, i did miss your second post, i was writing that really long... /essay/ :twisted: while you posted. ;)
_________________
"Confident, lazy, cocky, dead." -- Felix Jongleur, Otherland

( Twitter | Blog | GitHub )
Back to top
View user's profile Send private message
Lloeki
Guru
Guru


Joined: 14 Jun 2006
Posts: 437
Location: France

PostPosted: Thu Oct 26, 2006 8:27 am    Post subject: Reply with quote

I did things in parallel (again!) and went on to report on my success just to find your post. you're certainly fast ;)
the module that adds /proc/bus/usb is certainly usbcore, but just to be sure I added before-mount="uhci-hcd ehci-hcd ohci-hcd" which indeed loads usbcore. thanks anyway :) for the record that fixed both WA01 (critical and local) at once.
_________________
Moved to using Arch Linux
Life is meant to be lived, not given up...
HOLY COW I'M TOTALLY GOING SO FAST OH F*** ;)
Back to top
View user's profile Send private message
smlgbl
Guru
Guru


Joined: 10 Feb 2005
Posts: 305

PostPosted: Thu Oct 26, 2006 8:42 am    Post subject: Reply with quote

Just to let you know: "cat /proc/mounts" gives the same results as "mount".
Nevermind about the timing. Anyway, what is your bootup time now, guys? Mine improved seriously, but it still is between 20 and 30 seconds. Guess it's my good ol' AthlonXP 1600+!!!
_________________
samuel.
'Do not let one girding on boast about himself like one unfastening'
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Unsupported Software All times are GMT
Goto page Previous  1, 2, 3 ... 5, 6, 7 ... 9, 10, 11  Next
Page 6 of 11

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum