[00:09] Bertl (~herbert@212.16.62.51) left irc: Quit: Bertl has no reason [00:09] Bertl (~herbert@MAIL.13thfloor.at) joined #vserver. [00:09] test [00:13] serving (~serving@213.186.190.120) joined #vserver. [00:16] Bertl (~herbert@MAIL.13thfloor.at) left irc: Quit: Bertl has no reason [00:16] Bertl (~herbert@212.16.62.51) joined #vserver. [00:17] test [00:18] Nick change: Bertl -> Bertl_zZ [00:18] Bertl_zZ (~herbert@212.16.62.51) left irc: Client Quit [01:39] hi [02:48] loger7 joined #vserver. [02:48] loger (~loger@213.159.117.2) left irc: Read error: Connection reset by peer [02:48] Nick change: loger7 -> loger [03:47] serving (~serving@213.186.190.120) left irc: Ping timeout: 513 seconds [04:29] newz (~newz@65.34.52.169) left irc: [04:32] Bertl (~herbert@212.16.62.51) joined #vserver. [04:50] Bertl: [04:51] hi! [04:51] hi! [04:55] whats up? [04:56] nothing new, and you? [04:56] any word on a 1.0 release date? [04:56] hrm, it's going good now [04:56] well I need some feedback on the non i386/x86_64 platforms ... [04:57] oh [04:57] hrm [04:57] would you say within a week? [04:58] well I don't know, mabe it takes longer to get feedback for some platforms ... [04:58] true [04:59] just wondering... [04:59] as I said several times, I can [05:00] you can what? :) [05:00] as I said several times, I depend on the testers ... [05:00] if there is nobody reporting back, I don't know anything ... [05:01] i tried to test O(1) but it appears both of my test installs are fubar'ed [05:01] so i need to re-install them [05:02] hmm explain foobar'ed ... [05:02] if you made a 1.0-test1 with rediffed ml / dl / O(1) patches I would test it on i386 and if that went fine I would install it on a production server of mine which is a pretty damn good real world test [05:02] fubar = fucked up beyond all repair [05:03] I know that, thanks, but what do you mean ... [05:03] oh, for some reason they are both booting up with root read only [05:03] i think something to do with running alex's patch on them... [05:04] maybe add 'rw' or remove 'ro' in the kernel command line? [05:04] i tried [05:04] i'm still messing with it, but that's the only reason I didn't test the O(1) patch yet [05:05] brb ... [05:05] Bertl (~herbert@212.16.62.51) left irc: Quit: Bertl has no reason [05:06] Bertl (~herbert@MAIL.13thfloor.at) joined #vserver. [05:06] and the usual stuff is working as expected? [05:07] the usual? [05:07] cq/cx/mq/ml/dl ... [05:07] i'm using that on 2.4.22-c17e on 2 production machines... no problems yet [05:07] for almost 5 days now [05:08] good to hear ... [05:08] now this is weird [05:08] mount reports / is mounted rw [05:08] but a 'touch tmp' says "Read-only file system" [05:09] use cat /proc/mounts instead of mount [05:09] really, the reason i'm asking the time is because i want to upgrade hardware in a few days and i'd like to do the kernel upgrade at the same time [05:09] yeah, rw in /proc/mounts too... [05:09] odd [05:09] no mount on /tmp ? [05:11] tmp is a filename [05:11] hmm /tmp should be a directory ... [05:11] hrm [05:12] it's anything, tmp was just the filename i used as an example [05:12] ie. touch any_filename [05:12] touch file [05:12] ... [05:12] i'm just doing a new install [05:13] redhat9 this time [05:13] others are 7.3 [05:34] CosmicRay (~jgoerzen@12.149.180.20) joined #vserver. [05:37] hi cosmic! [05:38] serving (~serving@213.186.189.101) joined #vserver. [05:38] hello bertl [05:38] 2.4.22-c17f [05:38] 8 days uptime [05:39] pfft :-) 20:41:46 up 156 days, 7:15, 1 user, load average: 0.12, 0.04, 0.01 [05:40] with c17f? [05:40] hmmm I'm not sure what ctx patch that was at... [05:40] hehe this is not a competition [05:41] shuri: I know :-) I'm proud of that, though, because that same machine used to crash on a weekly basis [05:41] I think it is plain ctx17 [05:41] the tg3 driver and ctx did not play well together [05:43] I'm running 18 vservers on there. 17 of them are Debian and one is SuSE :-) [05:46] 4 debians / 1 redhat / 1 suse / 1 slackware [05:46] I could never manage to get suse to install straight into the vserver [05:46] I had to install it on the metal on a different box, tar it up and copy it over [05:46] did you have to do that to? [05:46] yes [05:47] sucks to not have debootstrap :-) [05:47] same with slackware [05:47] really [05:47] I haven't used it in ages I guess :-) [05:47] hehe [05:48] I think the last time I used slackware was 1996 [05:49] dam [05:49] hehe [05:49] I switched to Debian :-) [05:50] so tell me about modern slackware [05:50] what makes it cool? [05:50] the fridge ;) [05:51] heh [05:59] HELP SET AUTO_RESPONSE [06:00] DESman (chris@62.26.112.254) joined #vserver. [06:00] hi [06:00] hi [06:00] you are working at this late time =) [06:00] early ... [06:01] ^^ or so [06:01] /usr/lib/vserver/vrsetup: can't open device /dev/vroot/7274: No such device or address [06:01] /usr/sbin/vserver: ulimit: cannot modify max user processes limit: Invalid argument [06:01] ls -la /dev/vroot/7274 [06:02] brw-r--r-- 1 root root 4, 0 Sep 17 14:54 /dev/vroot/7274 [06:02] it worked under 2.4.21 + ctx17a + vquota patch [06:02] but now with 2.4.22 and 17f not anymore [06:02] and now you used c17f without any other patch ... [06:03] you need the vr patch and you would benefit from the ulimit-unfix patch ... [06:04] http://vserver.13thfloor.at/Experimental/patch-2.4.22-ctx17a-vr0.13.diff.bz2 [06:04] http://vserver.13thfloor.at/Experimental/vr-tools-0.14.tar.bz2 [06:04] http://vserver.13thfloor.at/Experimental/patch-2.4.22-ctx17a-vr0.13.diff.bz2 <---- so this patch and then 17f ?! [06:05] first c17f, then the other patches ... [06:05] http://www.13thfloor.at/VServer/patches-2.4.22-c17/16_ulimit-unfix.diff.bz2 [06:07] ok so 2.4.22 then c17f, then vr0.13 then vr-tools then ulimit-unfix [06:08] vr-tools is no patch, but the rest is correct ... [06:08] k [06:12] patch -p1 < ../16_ulimit-unfix.diff [06:12] patching file kernel/sys.c [06:12] Hunk #1 succeeded at 1279 (offset 136 lines). [06:12] looks good ... [06:12] so ignore [06:12] ok [06:12] succeeded = succeeded [06:13] you are right ( how ever ) =) [06:33] ioctl: VROOT_SET_DEV: Device or resource busy [06:33] this is ok i think [06:33] depends .. it means that the vroot is already configured to something else ... [06:34] hmmm [06:34] each vserver context has its own /dev/vroot/xxx [06:34] and at each this message arrive [06:35] they dont hit each other [06:35] all configs are ok [06:35] show me the ls -la of two of them ... [06:36] ls -la 7012 [06:36] brw-r--r-- 1 root root 4, 0 Sep 16 15:12 7012 [06:36] vserver1:/dev/vroot# ls -la 7083 [06:36] brw-r--r-- 1 root root 4, 0 Sep 15 18:50 7083 [06:36] this is the _same_ device ... so the reply is as expected ... [06:36] i see so it sould have to be: [06:37] mknod /dev/vroot/$2 b 4 0 [06:37] mknod /dev/vroot/xxx b 4 0 [06:37] mknod /dev/vroot/xxx b 4 1 [06:37] mknod /dev/vroot/xxx b 4 2 [06:37] mknod /dev/vroot/xxx b 4 x [06:37] right ? [06:38] yes, but at most 254 devices are possible, and the default limit is 4 ... [06:38] ok [06:38] thank you [06:38] do you have a partition for each vserver? [06:38] yes lvm [06:40] ChuckD_zzz (~bug@144.137.122.238) left #vserver. [06:40] ok so i will have to reset all /dev/vroot to get it work whti b 4 x [06:42] if you want more than 4 devices, you have to either edit the kernel sources or specify the max_vroot= parameter ... [06:44] where to specify the max_vroot ? [06:45] either on kernel boot, or on module load .. depends on the vroot type (monolithic or module) [06:45] so kernel boot i always compile all into the kernel static [06:46] so i have to append max_vroot=200 for example to my lilo [06:46] if you have 200 lvm partitions, yes ... [06:46] no i don`t, but it wont hurt as i see [06:47] it will eat up kernel memory ... [06:47] ok thanks for hint! [06:51] CosmicRay (~jgoerzen@12.149.180.20) left #vserver (Client exiting). [07:05] herbert (~herbert@MAIL.13thfloor.at) joined #vserver. [07:06] test [07:06] test [07:20] 5C7O8L3O2R [07:21] red, orange, yellow, green, blue [07:24] thank you for your greate help Bertl! [07:24] no problem, everything working now? [07:25] it seems so, no errors or uncommon messages [07:25] if any occure, i will tell it [07:25] okay ... have fun! [07:26] thank you! [07:26] DESman (chris@62.26.112.254) left irc: [07:29] matta (matta@tektonic.net) left irc: Remote host closed the connection [07:33] test [07:36] herbert (~herbert@MAIL.13thfloor.at) left irc: Quit: leaving [07:50] Bertl_ (~herbert@MAIL.13thfloor.at) joined #vserver. [07:51] Bertl_ (~herbert@MAIL.13thfloor.at) left irc: Client Quit [07:51] Bertl_ (~herbert@MAIL.13thfloor.at) joined #vserver. [07:52] Bertl_ (~herbert@MAIL.13thfloor.at) left irc: Client Quit [07:52] Bertl_ (~herbert@MAIL.13thfloor.at) joined #vserver. [07:57] mdaur__ (mdaur@p509160A0.dip.t-dialin.net) joined #vserver. [07:58] test [08:01] Bertl_ (~herbert@MAIL.13thfloor.at) left irc: Quit: leaving [08:01] Bertl_ (~herbert@MAIL.13thfloor.at) joined #vserver. [08:03] test [08:03] Bertl_ (~herbert@MAIL.13thfloor.at) left irc: Client Quit [08:03] Nick change: Bertl -> Bertl_zZ [08:04] mdaur_ (mdaur@80.145.94.23) left irc: Ping timeout: 513 seconds [08:45] matta (matta@tektonic.net) joined #vserver. [10:19] dst (~dst@p4b23e3d4.np.schlund.de) left irc: Ping timeout: 483 seconds [11:15] ChuckD_zzz (~bug@144.137.122.238) joined #vserver. [11:33] dst (~dst@212.227.35.75) joined #vserver. [11:45] ChuckD_zzz (~bug@144.137.122.238) left #vserver. [12:04] mhepp (~mhepp@r72s22p13.home.nbox.cz) joined #vserver. [12:26] JonB (~jon@129.142.112.33) joined #vserver. [12:33] mdaur__ (mdaur@p509160A0.dip.t-dialin.net) left irc: Quit: cya [13:22] serving (~serving@213.186.189.101) left irc: Ping timeout: 513 seconds [13:37] mhepp (~mhepp@r72s22p13.home.nbox.cz) left irc: Read error: Connection reset by peer [13:38] mhepp (~mhepp@213.211.38.19) joined #vserver. [13:38] NZ|Egor (~sgarner@apollo.quattro.net.nz) joined #vserver. [13:39] http://bulk.fefe.de/scalability/ [14:32] stone (foobar@213.180.66.154) left irc: Ping timeout: 513 seconds [14:55] ccooke (~ccooke@public1-walt1-4-cust238.lond.broadband.ntl.com) joined #vserver. [16:17] serving (~serving@213.186.189.101) joined #vserver. [16:37] Nick change: noel- -> noel [16:46] Action: mhepp is away: I am not here... [17:22] mhepp (~mhepp@213.211.38.19) left irc: Remote host closed the connection [17:47] ChuckD_zzz (~bug@CPE-144-137-122-238.nsw.bigpond.net.au) joined #vserver. [17:48] ChuckD_zzz (~bug@CPE-144-137-122-238.nsw.bigpond.net.au) left #vserver. [17:50] mhepp (~mhepp@213.211.38.19) joined #vserver. [17:51] mhepp (~mhepp@213.211.38.19) left irc: Remote host closed the connection [17:51] mhepp (~mhepp@r72s22p13.home.nbox.cz) joined #vserver. [18:02] serving (~serving@213.186.189.101) left irc: Ping timeout: 492 seconds [18:40] Val (~val@val.linuxfr.org) joined #vserver. [18:40] hi [18:47] hi [18:48] Bertl_zZ (~herbert@MAIL.13thfloor.at) left irc: Quit: Bertl_zZ has no reason [18:48] Bertl (~herbert@212.16.62.51) joined #vserver. [18:49] hi ! [18:49] hey Bertl [18:51] you vanished so fast yesterday ... you must have had a good reason ;) [18:53] Bertl: a friend came by, for the third time asking me to help him [18:53] and after that the party room at my dorm was open :) :) [18:55] as I said .. a good reason ... [18:55] Bertl: yeah [19:05] IIRC, I asked you what patches you use to get your stuff running (the encryption) [19:07] Bertl: patch-int and loop-jari [19:07] well they should not be too hard to apply on 2.4.22 then ... [19:07] Bertl: no [19:41] noel (~noel@80.142.169.165) left irc: Ping timeout: 483 seconds [19:41] hrm [19:41] wonde what makes loads shoot to 260 and kswapd use 99% CPU [19:43] @matt probably something like a forkbomb ... [19:44] matta_ (root@66.103.140.19) joined #vserver. [19:44] yeah [19:45] number of processes jumped up to almost 1300 [19:45] O(1) would have helped here... [19:45] :) [19:45] are you sure? [19:45] i've done forkbomb tests on O(1) and non O(1) and it helps a LOT [19:45] Bertl: did you read http://bulk.fefe.de/scalability/ [19:45] without it kills the system [19:46] with it there is a slight lag then everything is normal, just with more processes [19:46] was this with my O(1) port? [19:46] no [19:46] stock O(1) [19:46] so we know exactly nothing then ;) [19:46] uh, well i'm saying under stock [19:46] it helps with a forkbomb [19:47] yes, but it doesn't help with the vserver ... (the stock version) ;) [19:47] i don't think it was a forkbomb though [19:47] i think it was normal load [19:47] i could get around a little bit, just very very slow [19:47] well, some program which creates threads, act like a forkbomb, when the threads start to die ... for whatever reason (badly written software) [19:49] but normal load is 900 processes [19:49] and this was 1280 [19:49] loads of 260+ [19:49] nothing abnormal except kswapd using 99% of CPU at bursts [19:49] and kswapd using 38hours of CPU time [19:49] the problem is that each process needs some time to die ... this can be much longer than the time required to fork ... [19:49] but memory wasn't stressed [19:50] per vserver process limits can help here ... [19:50] they are in affect [19:50] 128/256 per vserver [19:50] the biggest user only had 100 processes though [19:51] I had a report, that the process limits (or the accounting) doesn't work as expected ... [19:52] any comments to that? [19:53] matta (matta@tektonic.net) left irc: Read error: Connection reset by peer [19:54] serving (~serving@213.186.191.62) joined #vserver. [19:57] uhm [19:57] works fine as far as I can tell [19:57] i've had servers hit their limit [19:57] hrm [19:58] i tried to find a report/graph of linux scalability as the number of processes grows [19:58] all I found was something saying the stock scheduler is using 25% of the CPU for scheduling at 1000 processes [19:58] the report said, it hits the limit too soon, like startup requiring 100 processes minimum ... [19:58] never heard of that one [19:59] just asking ;) [20:02] sv (~sv@62.253.119.28) joined #vserver. [20:02] Anyone here? [20:02] noone [20:02] nope! [20:02] you guys, such kidders [20:02] we do what we can ... [20:03] I've just noticed that Herb's c17g is not split properly ... wanted to know how to co-ordinate fixing it with him [20:03] matta (matta@tektonic.net) joined #vserver. [20:03] matta_ (root@66.103.140.19) left irc: Quit: ircII2.8.2-EPIC3.004 --- Bloatware at its finest. [20:03] Has Herb been in da house recently? [20:03] hmm has he done a bad job again? [20:03] did you guys read http://bulk.fefe.de/scalability/ yet? [20:04] hahahaha [20:04] ROFL [20:04] matta: be kind [20:04] JonB: i'm trying to load it... [20:04] very slow [20:04] sv: i'm Herbert! [20:04] and I'm Sam, so nice to finally meet you irc to irc [20:05] matta: you are ? i thought Bertl was [20:05] nobody ever want's to talk to me ... [20:05] LOL [20:05] sv: Mr. Sam ViLLain ? [20:05] I'm no crook, it's Vilain. But aii [20:06] the inventor of ILI? [20:06] sv: hehe, i know, you must get that alot [20:06] eh, yeah [20:07] but I'll admit that I got the idea from a collegue [20:07] ncw, inventor of the preempt-stats `top' utility! [20:08] great stuff ... [20:08] oh well time to upgrade that to server to vserver-1.0+o1.. [20:08] oh wait.. [20:08] :/ [20:09] Bertl: i kind find the old userland tools at www.linux-vserver.org [20:09] So, Herb ... I'm going to try to port your c17g to the -ac series kernels now. I've already noticed one miscategorised patch ... how would you like to work this? [20:09] Bertl: there is only a link to the competing implemention [20:09] depends ... let's hear what the problem is ... [20:09] JonB: that scalability page doesn't load [20:10] No real problem, just eg kernel/timer.c patch is in the _base.diff, should be in the _sched.diff [20:10] matta: i know, it doesnt scale to handle a slashdotting [20:10] ahh okay, that is something I discovered last time, but didn't find it worth changing at the moment .. but you are right ... [20:11] ah, i'm only interested in scheduler scalability anyway [20:11] matta: it was just a comparison of linux 2.4 and 2.6 + *BSD [20:11] matta: how various stuff scaled [20:11] @sv and did you check the port of your stuff, is it correct? [20:12] @sv I wasn't sure because I had to throw out some of the RT stuff ... [20:12] I need to do it once more, more thoroughly, and keep it split [20:13] well, that would be perfect ... [20:13] matta: there is a discussion at slashdot where someone mentions a mirror [20:14] i got it loaded [20:14] There is the small matter of the segments of the patch that don't apply cleanly on the -ac4 series, mainly because the context is different [20:14] i must be colorblind [20:14] @sv well I never tried on the ac patches because of the scheduler ... [20:15] ! One of the best reasons *to* use it :-) [20:15] matta: i hope not, because he FSCK'ED up the colors by not using the same colors consistently throughout the test [20:15] @sv I'm not sure, but matt is on your side ;) [20:16] i 100% agree [20:16] I WANT IT [20:16] i'm fiending for it like a crackhead [20:16] since Alex's patch used RedHat kernel it had the O(1) scheduler [20:16] and i'll tell you it performed much better [20:16] I like the -ac series kernels. I mean, look who produces them - a guy working inside Red Hat, who get all of the bug reports from high end users of Red Hat [20:17] but he had no time to test it extensively yet ;) [20:17] Bertl: machine troubles [20:17] Bertl: neither does linus [20:17] A vanilla 2.4.22 kernel won't even boot my shiny dual Opteron box [20:17] ok, if I test it you make a quuck port to 2.4.22-c17e-rmap :) [20:18] sv: who would use a 2.4 kernel anyway, 2.6 is the way to go (see http://bulk.fefe.de/scalability/ [20:18] nope, but we can talk about a 2.4.22-c17g-rmap port ... [20:18] Bertl: then dl/ml ported to c17g-rmap also? it needs to be done for 1.0 anyway.. :) [20:18] JonB: people that want to use vserver (duh) [20:18] that is already done ... *G* [20:19] I thought that Alan used to include Riel's VM system in the -ac series [20:19] matta: i hope it gets ported to 2.6 soon [20:19] JonB: the O(1) scheduler will make 2.4 like 2.6 in the forkbomb test [20:19] Bertl: where?? [20:19] ok i'm doing a redhat install now... [20:19] it'll be tested today [20:19] get porting! [20:19] matta: please elaborate [20:19] well, the old patches apply nicely ... [20:19] oh [20:20] okay sam, what do you need from me (to help you)? [20:20] JonB: look at that page on the fork benchmark [20:21] matta: oh, yes of course [20:21] JonB: see how 2.6 is a flat line, meaning virtually unlimited process scalability [20:21] and how 2.4 is a steady ramp up [20:21] at around 200 process the system is most likely at loads of 200+ and takes a few minutes to issue an ls [20:21] mugwump (~sv@62.253.119.28) joined #vserver. [20:22] while 2.6 is still very speedy [20:22] er, 2000 processes [20:22] "flatline" reminds me of a very bad movie with some young doctors killing themselves and doing CPR to get people back [20:22] Up to how many CPUs though .. have they waxed 8 yet? [20:22] the difference there is 2.6 has an O(1) scheduler as this person notes [20:22] Action: mugwump eats sv [20:22] sv (~sv@62.253.119.28) left irc: Quit: Leaving [20:23] there are patches of the O(1) scheduler to 2.4, RedHat includes them by default [20:23] and what Bertl is doing is porting it to work with vserver [20:24] Just seems a waste of time, when there are other more stable kernel trees that include it [20:25] hmm, well I ripped it out from the -aa tree, so it should work ;) [20:26] I see someone's been merging rmap and vserver too [20:27] yep, guilty! [20:27] mugwump: i don't think we want vserver to "depend" on someone elses tree too much [20:27] matta: why not ? [20:27] matta: i would prefer to depend on linus tree [20:27] You mean Marcelo's tree [20:27] Action: Bertl smiles ... [20:28] mugwump: technicaly yes, but since linus gave that to marcelo, i still consider it linus tree [20:28] What magical status does that give the code ? [20:28] mugwump: thats the most official you can get, and that gives everyone a common ground [20:29] the main tree is constantly playing catchup with -ac and -aa bugfixes that come from the people that are really putting the money into developing the code base [20:29] hmm, I would say, vserver is stable on the mainline tree (which is well tested, mostly ;), and that is the reason for keeping it on that base ... [20:30] Sure, granted [20:30] mugwump: yes, but that also means that stuff gets tested in -ac and -aa before it goes into the mainline kernel [20:30] I have no problem with a -ac or -aa or -xy branch ... [20:30] -ac would be nice [20:30] Probably more linux boxes run on an -ac based kernel than a pure Linus one, given the installed base of Red Hat [20:30] -ac is essentially the RedHat kernel, correct? [20:30] maybe not, hard to measure of course [20:31] but I don't want to give up the stable/proven mainline for some features, even if they are important ones ;) [20:31] right... [20:31] all I can say is that I ran the RedHat 2.4.18 kernel on a fairly loaded server then switched to base 2.4.22.... [20:32] and performance was much better before [20:32] perhaps you can explain something to me... [20:32] under RedHat 2.4.18 I would normally have 20 processes "Running" at a time [20:32] The RedHat 2.4.18 kernel has about 600 patches applied to it [20:33] It's probably closer to 2.4.24 than 2.4.22 :-) [20:33] after switching to 2.4.22 under the same type of load only 2-6 are running at a time [20:33] mugwump: i've read through the patch list in their spec file, someusel stuff in there [20:33] matta: just get a bigger machine, like the one sv has [20:33] i have a big machine (i think) [20:33] that's hte other thing [20:33] hey I like the color blue, what about you? [20:33] O(1) scheduler improves SMP scalability [20:34] Action: mugwump adjusts the temperature control on his motherboard's CPU fan <-> temperature control chip [20:34] matta: i was joking [20:34] and I have a SMP server :) [20:34] anyhow... gone for a little bit [20:36] What's changed betweem c17f & g? [20:37] the syscall switch .. [20:37] there is a g2 too, which fixes a bug ... [20:37] I see, nothing major then ;-) [20:37] well, not for scheduler and the rest ;) [20:38] Is the userland support complete? [20:38] enricos tools support the new syscall interface ... so yes [20:48] http://vilain.net/linux/ctx/split-2.4.22-ac4-c17g/01_2.4.22-ac4_base.diff # One ... AA HAH HAH HAH... [20:49] mugwump: whats so funny ? [20:49] It's the count [20:50] is __NR_swapcontext one of ours? [20:52] guess not then [20:52] who cares, it's just ppc arch anyway ;-) [20:52] nope in 17f we have 2 syscalls ... [20:52] mugwump: well, i for one would like to have a power5 [20:52] new_s_context and set_ipv4root ... [20:53] from c17g on we'll have just sys_virtual_context ... [20:55] What a high syscall number we have [20:56] mugwump: yeah, we want syscall 0 [20:57] hey why not, it's not even used [20:57] One day, when the rest of the world sees what an important project vserver is [20:57] @sam add this one http://vserver.13thfloor.at/Experimental/delta-c17g-c17g2.diff [21:00] cheers [21:00] as a part of what? Base ? [21:00] nope it's the syscall part only ... [21:01] so switch in this case ... [21:02] Cool, that's the part I'm on :-) [21:04] http://vilain.net/linux/ctx/split-2.4.22-ac4-c17g/02_2.4.22-ac4_switch.diff # Two ... AH AA AA AAAA... [21:05] Oh no, now it's sched ;) [21:06] patch-2.4.23-pre7-O1c17f.diff.bz2 [21:06] this is what I should test right? [21:06] not 2.4.22-c17g2O1 ? [21:06] hmm is there a 2.4.22-c17g2O1? [21:06] no :) [21:07] would you like to test 2.4.22-c17g2O1? [21:07] optimally [21:07] give me a minute ... [21:08] so this is what happened: [21:08] 04:00:01 AM 0 970 0.10 0.29 [21:08] 04:05:26 AM 1 1027 95.82 40.57 [21:08] 04:11:31 AM 0 1051 110.17 86.76 [21:08] 04:11:31 AM runq-sz plist-sz ldavg-1 ldavg-5 [21:08] 04:15:53 AM 2 1058 115.05 100.94 [21:08] 04:20:41 AM 0 1087 125.18 119.51 [21:08] 04:28:10 AM 0 1202 195.88 166.97 [21:08] 04:31:45 AM 7 1193 206.13 185.93 [21:08] 04:37:24 AM 5 1202 277.02 230.21 [21:08] 05:06:01 AM 270 1360 321.09 268.58 [21:08] yikes! [21:08] yes... [21:09] serving (~serving@213.186.191.62) left irc: Ping timeout: 492 seconds [21:10] Herb, do you want me to keep the sched & sched_base split? [21:10] would not be too bad .. [21:12] Hmm, do you want to have a crack at adding sched tuning to the syscall switch? Where do I start? [21:13] with 17g you could add something in the upper range ... maybe CAT = 61 for EXPERIMENTAL ? [21:13] dammit, you know you are a nerd when you talk to a friend and asks how their O(1)-schedule looks like for the next week [21:14] My vserver porting process has been starved, complete it then I'll be back on my other run queue [21:22] http://vserver.13thfloor.at/Experimental/patch-2.4.23-pre7-O1c17g2.diff.bz2 [21:24] hrm [21:24] with O1c17f my test system just hangs with enabling swap space... [21:24] odd [21:25] even sysrq doesn't do anything [21:25] Enabling swap space: [ OK ] [21:25] SysRq : Show Regs [21:25] just does that, doesn't actually show it :) [21:26] try to change the loglevel ... [21:26] this is one option of the sysreq ... [21:26] and then dump the tasks ... with T [21:27] ah... kudzu [21:27] ^MPid: 230, comm: kudzu [21:27] ^MEIP: 0010:[] CPU: 0 EFLAGS: 00000246 Not tainted [21:27] ^MEAX: 00000000 EBX: 00000001 ECX: 00000000 EDX: 00000000 [21:27] ^MESI: c03a7b80 EDI: fffffffe EBP: 00000046 DS: 0018 ES: 0018 [21:27] ^MCR0: 8005003b CR2: 40021d20 CR3: 08da1000 CR4: 000006d0 [21:27] ^MCall Trace: [] [] [21:28] hmm, hardware detection, I would suggest to disable it after the first install ... [21:28] Trust kudzu to turn a perfectly intermittant fault into a showstopper [21:29] unless your customers bring and take the hardware with them ... [21:29] OK so I'll need to add the structure of the args to my vcmd in include/linux/virtual.h [21:29] nope [21:29] yeah, kudzu is hanging on two different servers [21:29] i'm testing 7.3 and 9 [21:30] @sam the best is to define some struct, add it like the existing ones ... define a command (probably a category EXPERIMENTAL (62)) define the new switch case and the external function reference ... [21:30] VC_CAT_OTHER ? [21:30] Are the other two numbers significant? [21:30] is possible but I would suggest VC_CAT_EXPERIMENTAL or something like this ... [21:31] the next number is the command within that category and the last is the version ... [21:31] version of this sysctl, or the version of the sysctl interface it appeared in? [21:32] the version of this specific syscall ... [21:32] I'm going to make VC_CAT_SCHED if you don't mind [21:32] for some experimental cat, we can agree on that it is always zero for example ... [21:33] Or would VC_CAT_CPU be better? [21:33] we are currently in the process of redesigning those other categories, so I would not suggest using them ... [21:33] probably the entire category numbering will be changed soon ... only (0, 62,63) will be kept ... [21:34] OK, well 62 is COMPAT, should I use that or 61? [21:34] I mean 62 is OTHER [21:34] yeah, 61 would be okay ... we label it TEST for example? [21:34] Sure. How many bits have we got for the first number? [21:35] read the source ;) [21:35] #define VC_CATEGORY(c)(((c) >> 24) & 0x3F) [21:35] that involves thinking :-) [21:35] so ensc's latest tools should be used with c17g ? [21:35] I meant the i in VC_CMD; so I guess we're looking at 8 bits [21:35] 23-5 ? [21:36] yes there was a .90 branch but he said he uploaded them on savanna ... [21:36] It might be safe to allocate the experimental numbers on a wiki page [21:36] COMMAND is 8 bits ... yes ... [21:37] Is linux-vserver.net the most politically correct wiki these days? [21:37] yup! [21:37] cool [21:37] let me add a page for this ... [21:37] add away [21:43] okay will add some docu later ... [21:44] you can reserve your numbers ... [21:46] mugwump (~sv@62.253.119.28) left irc: Read error: No route to host [21:48] ctxsched: 63/1000 = (FR: 1 per 4; ago 4) [21:48] prio: 139 (static prio = 130) [21:48] ctxnproc: 17 [21:48] tokens_left: 64 [21:48] hrm [21:48] so what's this mean again? [21:48] you have to ask sam ;) [21:48] hrm, lemme find that e-mail [21:49] ccooke (~ccooke@public1-walt1-4-cust238.lond.broadband.ntl.com) left irc: Remote host closed the connection [21:49] mugwump (~sv@62.253.119.28) joined #vserver. [21:49] hmm, think I was netsplit there ... since : [21:49] 18:39 < Bertl> let me add a page for this ... [21:50] 19:45 < Bertl> okay will add some docu later ... [21:50] 19:46 < Bertl> you can reserve your numbers ... [21:50] I've used 61 for VC_CAT_EXPERIMENTAL, and 0 for set_sched [21:51] use 1, leave the 0 free ... [21:51] nazi! [21:51] ok sure :-) [21:51] http://www.linux-vserver.org/index.php?page=Syscall+Switch+Info [21:52] it seems to work as he states [21:52] i started the perl while 1... [21:52] let the bucket level dropped [21:52] went into a new context [21:53] did it again and 1 perl was getting 58% and the other 35% [21:53] the old was 35% [21:53] now the cool part [21:53] 7953 root 39 5 1196 1196 988 R N 61.8 0.7 0:36 perl [21:53] 7936 root 39 10 1196 1196 988 R N 37.1 0.7 0:54 perl [21:53] so the nice value effectively sets the priority [21:53] they are sitting at those numbers [21:54] nice [21:54] I can listen to that for hours ... hmm, then I remember I did as Con and Nick tuned the scheduler on 2.6 ;) [21:54] ctxsched shows the same values for each right now [21:55] Bertl: listen to what? [21:55] Action: matta confused.. [21:55] to the details of well behaving schedulers ... [21:55] 7953 root 39 5 1196 1196 988 R N 62.7 0.7 1:20 perl [21:55] 7936 root 39 10 1196 1196 988 R N 36.1 0.7 1:21 perl [21:55] very cool [21:55] especially cool, if you try the O1c17g2 ... [21:55] why? :) [21:56] i will, just had this one already compiled [21:56] i'm gonna see what a forkbomb does real quick [21:56] Do you think it's necessary for set_sched to take the context ID to operate on? [21:56] in the nice=10 context [21:56] should be fine if you've got a ulimit set [21:56] @sam I would say it is beneficial for values addressing the context ... [21:57] mugwump: I set it to 1024 on a low end computer [21:57] i want to see how responsive it is [21:58] It would be possible to make the scheduling "harder" - ie, no tokens, no cycles :) [21:58] @sam so if you want to tune anything in s_info then the per context is mandatory ... [21:58] hrm [21:58] so the non-forkboming context shows this now [21:58] ctxsched: 998/1000 = (FR: 1 per 4; ago 0) [21:59] @sam we should also think about accounting the total cpu/slices used per context ... [21:59] That doesn't look right :-/ [21:59] s_context: 4 [ 4] [21:59] ctxsched: 0/1000 = (FR: 1 per 4; ago 0) [21:59] prio: 116 (static prio = 120) [21:59] ctxnproc: 407 [21:59] tokens_left: 0 [21:59] s_context: 5 [ 5] [21:59] ctxsched: 996/1000 = (FR: 1 per 4; ago 5) [21:59] prio: 115 (static prio = 125) [21:59] ctxnproc: 26 [21:59] tokens_left: 997 [21:59] oh, the non-forkbombing ... better [22:00] hmm, where should I put my vc_set_sched function .. virtual.c ? [22:00] sched.c perhaps [22:01] sched.c is better .. you have everything there ... [22:01] 9:47am up 24 min, 2 users, load average: 190.06, 68.70, 25.59 [22:01] still fairly responsive considering it's under vmware [22:02] with roughly 500 forks() taking place.. [22:02] 7953 root 26 5 1196 1196 988 R N 2.0 0.7 2:04 perl [22:02] 7936 root 39 10 1196 1196 988 R N 1.3 0.7 1:51 perl [22:02] hmm, no process limit? [22:02] 1024 is the process limit [22:02] let's see if it hits [22:03] 9:48am up 25 min, 2 users, load average: 323.86, 137.14, 53.02 [22:04] it got up to 1025 [22:04] with a limit of 1024 [22:04] then bounced down [22:05] forkbomb is showing resource unavail... [22:05] load still goes up to ~1024 then? [22:05] but the system stays responsive? [22:06] 09:50:51 up 27 min, 1 user, load average: 503.28, 263.62, 109.26 [22:06] yeah, it's not bad [22:06] the vserver running the forkbomb is very slow [22:06] ccooke (~ccooke@public1-walt1-4-cust238.lond.broadband.ntl.com) joined #vserver. [22:06] but the other vserver and main system is "usable" [22:06] this is a celeron 1.3 running vmware [22:06] vmware is allocated 160MB [22:07] idle vserver: [22:07] root@test2 root]# time w [22:07] 09:51:30 up 28 min, 1 user, load average: 526.09, 299.83, 127.97 [22:07] USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT [22:07] root pts/2 192.168.1.250 9:40am 0.00s 2:06 0.05s w [22:07] real 0m0.219s [22:07] A server with no tokens left is getting one heck of priority penalty :-) [22:07] user 0m0.000s [22:07] sys 0m0.060s [22:07] May as well be the idle process [22:07] well, vtop shows the forkbomb processes getting plenty of CPU [22:08] perl processes arn't even on the main screen [22:08] Yes, it's not hard scheduling [22:08] there we go... [22:08] 7953 root 25 5 1196 1196 988 R N 0.2 0.7 2:05 perl [22:08] Each process gets at least 1 slice every time it is encountered on the run queue [22:08] second process right under top [22:09] i'd say this is much better than stock [22:10] i will try c17g now [22:11] so in the 'idle' context I killed the perl process [22:11] so it's sitting at 999/1000 [22:11] and it's very responsive [22:13] then I restarted the perl process.. [22:13] 21258 root 24 5 1196 1196 988 R N 27.7 0.7 0:01 perl [22:14] i guess that should have ideally been 50%, but because of the mandatory slice.. [22:14] Hmm, how do I go from a ctx number to a s_context? [22:16] Bertl (~herbert@212.16.62.51) left irc: Ping timeout: 513 seconds [22:16] hrm, wonder if he saw any of that... [22:16] I suppose I have to iterate over the task list ... eww [22:17] so [22:17] how does this compensate for the host server? [22:17] it seems the idle context is more responsive than the host server itself [22:18] Yes, it would get a +5 bonus to its priority [22:18] why? [22:19] a nice of 5 is a 'lower' priority [22:19] Bertl (~duke@212.16.38.66) joined #vserver. [22:19] Bertl [22:19] did you see all of that? [22:19] I followed until you confirmed the 1024/1025 hit ... [22:19] Yes, I meant -5. I had to go that way slightly to get a good range for the prio adjustment to be effective [22:19] essentially, it works well [22:20] i killed the perl process in the idle vserver [22:20] good to hear ... [22:20] and it became even more responsive [22:20] then I restarted the perl while(1).. and it jumped to 27.7% CPU usage [22:20] despite everything else [22:20] does shutdown of such a server work? [22:20] Bertl, is there some way short of crawling the process table I can get the s_context struct from its number? [22:20] Bertl: one thing I noticed, the idle vserver is more responsive than the host [22:20] the host is rather sluggish [22:21] each process has ->s_info which has the context number ... [22:21] taking forever to stop a vserver [22:21] you want it the other way around? from number to s_info ? [22:21] The root context should still get significantly better performance than a fork bombing one [22:22] mugwump: not the case... [22:22] I issued a 'vserver test2 stop' [22:22] and after about a minute i'm at: [22:22] Server test2 is running [22:23] now that is it executing the init scripts as the context everything is quicker [22:23] hmm, the send signal to context syscall is coming to mind ;) [22:23] i was just going to mention that [22:23] let me add it to my todo list then ;) [22:24] perhaps the default 'vserver' script should try to kill all processes in a vserver from context 1 as the final operation? [22:24] in the event normal shutdown can't be done because of proc/mem limit [22:24] OK, for now I'll accept the ctx number as an explicit parameter in my *data, but return -EFAULT if it's not the same as the current one [22:24] we'll drop that ctx1 thingy ... we can have one syscall to send a signal to each process, this is _much_ more effective ... [22:24] i was going to add it myself, but my version will suck and in some cases (such as rapid respawning) will not work [22:25] Bertl: oh, yes that is what alex has [22:25] works well [22:25] matta: how about a test with perl -e '1 while 1' in the root context with one really busy one? See how much cpu it gets as a % [22:26] i'll try [22:26] hmm maybe there's a better return than EFAULT [22:27] there is still a bug in the loop implementation regarding high mem/bounce buffers ... [22:28] (has nothing todo with vservers by the way) [22:28] dthe host context definitely needs higher priority by default, it's very slow [22:29] taking over 2 minutes to ssh in [22:30] perl on host: [22:30] 4102 root 19 0 1064 1064 936 R 7.3 0.6 0:00 perl [22:30] the context with nice of 5 got 27%... [22:30] mhepp (~mhepp@r72s22p13.home.nbox.cz) left irc: Read error: Connection reset by peer [22:30] 0.6% CPU ? [22:30] 7.3 [22:30] .6% mem [22:31] What's the nice context's bucket fill? [22:31] started at 6% this time, dropped to 2 after a few seconds... [22:32] mugwump: when the while loop was started? like 997.. [22:32] when it's getting 27% [22:32] yes [22:33] context 1 is supposed to stuck at a fill of 500? [22:33] s_context: 1 [ 1] [22:33] ctxsched: 500/1000 = (FR: 1 per 4; ago 2) [22:33] prio: 118 (static prio = 120) [22:33] On the bright side, that means it's being asked to have 1/4 the CPU, and that's what it's getting [22:33] mugwump: oh, that's excellenmt [22:34] no CTX_SCHED [22:34] oggg [22:34] ohh [22:34] if you chcontext --flags sched (or whatever) it should change [22:34] all in all this is very satisfactory [22:34] just may want to give the host some higher priority by default [22:34] I'm glad that we can please you, master ... 8-) [22:35] FWIW, nice -19 processes in the root server will be really responsive :-) [22:35] let's try [22:35] About as responsive as nice -14 processes in an idle vserver [22:36] 9748 root 0 -19 1760 1760 920 R < 29.4 1.1 0:03 top [22:36] 10247 root 6 -19 1064 1064 936 R < 29.4 0.6 0:02 perl [22:36] 7936 root 39 10 1196 1196 988 R N 7.1 0.7 1:57 perl [22:36] 10:12am up 49 min, 3 users, load average: 552.72, 546.20, 442.44 [22:36] 983 processes: 400 sleeping, 571 running, 12 zombie, 0 stopped [22:37] excellent, there's your workaround then. start sshd with nice -19 [22:37] good idea [22:37] i did not think of that [22:38] The buckets do up to [ -5 ... +15 ] modification to the `nice' [22:39] Compared to the [ -5 .. +5 ] bonus to "interactive" vs "cpu hog" processes [22:39] @sam IIRC I didn't copy all of your inline docu, maybe we should add/extend this info ... [22:39] It's there in the patch I'm applying [22:41] @sam if you change/add something, I would be glad to have a diff (delta) I could use for mainline ... [22:42] It's split, so it shouldn't be hard to apply [22:42] http://vilain.net/linux/ctx/split-2.4.22-ac4-c17g/ [22:42] actually it's g2 then, correct? [22:42] is current->s_info->s_context[0] the ctx number? [22:43] yes ... maybe we should remove that array completely ... [22:43] one thing at a time [22:43] my saying ... [22:44] just don't expect royalites [22:44] royalties even [22:45] okay, I grant you free use then ... [22:46] initlog -c "nice --5 $SSHD $OPTIONS" && success || failure [22:46] that looks correct? [22:47] hrm, yeah sjould be n/m [22:50] Bertl (~duke@212.16.38.66) left irc: Quit: Bertl has no reason [22:50] Bertl (~herbert@212.16.62.51) joined #vserver. [22:55] by the way, sam, what do you think of removing the ILI flag in the presence of context tagged files? [22:56] How do you tag a file in multiple contexts ? [22:56] file can only belong to one context, but shared/linked context 0 files would be treated as ILI ... [22:57] Sounds like it could work, and perhaps wouldn't be so confusing [22:57] mmmm [22:58] ILI is more generic of course [22:58] that is right, so maybe you could get it into default ext2/3/jfs/reiser then? [22:59] :-p [23:00] does it comfort you, that the RO bind stuff wasn't even noticed by the mainline people ... [23:00] RO bind? [23:00] I added read only to --bind mounts ... [23:01] well, the other stuff like noatime, etc come naturally with this vfs change ... [23:02] RO bind mount ... you're right, that's darned handy [23:02] I wanted that a while ago [23:02] well you can have it for 2.4 and 2.6 ;) [23:03] goody! [23:03] http://vserver.13thfloor.at/Experimental/patch-2.6.0-test3-bme0.03.diff.bz2 [23:03] http://vilain.net/linux/ctx/split-2.4.22-ac4-c17g/ # all done [23:03] http://vserver.13thfloor.at/Experimental/patch-2.4.22-rc2-bme0.03.diff.bz2 [23:03] they still apply ... [23:04] eg, for a Debian vserver you could bind mount the debian mirror inside the vserver [23:04] @sam okay please change it to -c17g2 ... to lower the confusion factor ;) [23:04] no probs [23:05] Oh, btw were there any changes in the ili/net areas? I just applied the c17f diffs [23:05] hmm .. could be, you shouldn't do that, bad boy! [23:06] doesn't matter, they took seconds [23:06] I was on a roll after the sched one :-) [23:07] well I rediff them every day in the morning, just to get the endorphine rush ... [23:07] speaking of rediffing... [23:07] :) [23:07] yes, master? [23:08] what are the odds of making a 2.4.22-c17g2-o1-rmap-ml-dl-vr ? :) [23:09] why not 2.4.23-pre7-O1-c17g2-rmap-nm-dl-vr ... [23:09] I'll be happy with 2.4.22-ac4-c17g2 ;-) [23:09] that would work also [23:09] kernel version is less important than patchsets [23:09] Alan's VM ain't that bad [23:09] http://vserver.13thfloor.at/Experimental/patch-2.4.23-pre7-O1c17g2.diff.bz2 [23:10] mugwump: i would try that if I didn't need bertl's ml/dl/vr stuff :) [23:10] No, the most important thing is the man hours fixing the bugs you get in corner cases [23:10] okay lets see what from the other stuff applies ... [23:10] what's ml/dr/vr? [23:10] ml = memory limits [23:10] mugwump: ml = memory limits (through rmap), dl = disk limits, vr = virtual root device [23:10] mq+cx+cq = context quota ... [23:11] yes, well applying rmap to -ac wouldn't be fun [23:11] @matt could you try what still applies to /patch-2.4.23-pre7-O1c17g2 then? [23:11] yeah [23:11] what about rmap though? [23:12] I'll have a look at the ... but I'm not sure we need this for the moment ... [23:12] It would be better to implement to ml on top of Alan's VM if possible [23:12] The others would probably not be too hard (famous last words) [23:12] @sam is this possible for RSS limits? [23:13] patch-2.4.22-c17e-rmap15k.diff = fails miserable [23:13] I thought alan uses a variant of the Andrea stuff? [23:13] @matt leave the rmap out ... [23:13] vr0.13 applies with 2 fuzz.. [23:13] bertl: possibly, I'm not too up on that. [23:13] currently only the VM limit is important, right? [23:14] right [23:14] i don't even use rss [23:14] we can have that without rmap ... [23:15] ok, thought so [23:15] mhepp (~mhepp@r72s22p13.home.nbox.cz) joined #vserver. [23:15] @sam the 03c_2.4.22-ac4_sched_ctl.diff is the new syscall? [23:15] Action: mugwump nods [23:15] ml0.04 worked correctly right? [23:16] What do you think of the syscall? [23:16] @matt I'll check that ... [23:17] @sam, hmm, you should not use short/int ... but I forgot to mention that ... we are on mixed 32/64 bit systems ... so strongly typed structs are better ... [23:17] Does it matter? :) OK, what should I use? [23:18] @sam the #define VCMD_set_sched_enable_sched 0x0001, what should this be? [23:18] There's a bitwise options flag in the data structure [23:19] okay they are some local flags then? [23:19] patch-2.4.22-ctx17a-ml0.04.diff fails horribly [23:19] atch-2.4.22-c17e-mq0.11.diff = 2 fuzz [23:19] local how? They're just options that you might want to set when you're adjusting a s_context's scheduling priority [23:20] @sam yes, but you pass them in the vcmd_set_sched_v1 struct, yes? [23:20] yes [23:20] then do not name them like syscall switch commands, please ... [23:20] +#define VCMD_set_sched VC_CMD(VC_CAT_EXPERIMENTAL, 1, 1) [23:20] +#define VCMD_set_sched_enable_sched 0x0001 [23:21] patch-2.4.22-c17e-mq0.10-cx0.06.diff = 4 fuzz [23:21] Sure, I just thought I'd keep them in "my namespace" :-). Think of better names for them? [23:21] everything starting with VCMD_ is a syscall command ... [23:21] ok [23:21] patch-2.4.22-c17e-mq0.11-cx0.06-cq0.11.diff = 4 fuzz [23:21] use something like SCHED_ENABLE SCHED_DISABLE ... [23:22] patch-2.4.22-c17e-mq0.11-cx0.06-cq0.11-dl0.05.diff = clean [23:22] maybe with TBF_SCHED_EDNABLE ... [23:22] ok, what type should I use for ctxnum & options ? just a uint32_t ? [23:23] @matt okay looks not too bad ... I'll rediff them in a few minutes ... [23:23] Bertl: only problem is ml it looks like [23:23] maybe we can get sam's tuning syscall in too? [23:24] YES [23:24] @sam are there userspace tools yet? [23:26] hrm, looks like there is a pre-emptive patch for 2.4.23-pre5 [23:26] yes? where? [23:26] http://www.kernel.org/pub/linux/kernel/people/rml/preempt-kernel/v2.4/ [23:27] patch-2.4.22-c17e-mq0.11.diff.bz2 applies without fuzz ??? [23:27] 2 fuxx [23:28] hmm, please explain fuzz ... [23:28] hrm, if I patch preempt then c17g2-o1 I get 1 failure in sched.c [23:29] always patch -F 0 ... pays to be on the safe side [23:29] patching file fs/buffer.c [23:29] Hunk #1 succeeded at 343 (offset 7 lines). [23:29] patching file fs/dquot.c [23:29] patching file fs/ext3/super.c [23:29] patching file fs/inode.c [23:29] Hunk #3 succeeded at 1233 (offset 3 lines). [23:29] okay, that is a succeed ... [23:29] oh [23:29] if it says succeded at 1333 fuzz 2 [23:29] oh yeah [23:29] my mistake [23:30] then it's a fuzz ... so don't fuzz with me ;) [23:30] lol [23:30] hrm, taking over 30 minutes to shutdown that vserver with the forkbomb going [23:31] mugwump: what is the variable in the kernel that should be tuned based on the number of vservers being run? [23:31] I know I saw it somewhere but can't find the mail [23:31] in sys.c, it's tokens_fr / tokens_div [23:32] ( fr / div ) * ( number_of_vservers) should be ~ = to the number of CPUs in the box [23:32] hrm [23:32] eg ( 1 / 4 ) * ( 8 vservers ) = 2, balanced for a 2-way SMP box [23:33] i wonder how this is gonna work with 60 vservers anyhow [23:33] on a single CPU box ? [23:33] 2 CPU [23:34] I'd consider cranking up HZ, but fr = 1, div = 30 would be the right numbers [23:34] yeah, i up the HZ to 500 [23:35] those 2 is what should be tunable in the future? [23:35] @sam don't want to think about that too, but would it help to know the total number of active contexts? [23:36] It will help, but those aren't insurmountable problems as much of that information is available from userspace anyway [23:37] chcontext could automatically adjust the ratios on a create perhaps [23:37] I don't see a problem to count them in the kernel ... just add a global atomic and ind/dec on s_info create/destroy ... [23:37] yes, but you don't want to override user set values [23:37] that is a really cheap solution if it helps ... [23:37] Perhaps I could write a Perl script to balance the contexts ;-) [23:38] Shit, just blew away my only copy of linux-2.4.22.tar.bz2 [23:38] Action: mugwump sighs [23:39] you could revert from 2.4.23-pre7 then? [23:39] don't even start :-) [23:39] Bertl: does c17g2 include signal from ctx 1? [23:40] @matt okay mq,cx,cq,dl only require cx to be modified ... [23:40] nope signal is not included, same goes for proc hiding ... [23:41] gotcha [23:42] /usr/src/kernel-source-2.4.22-ac4-c17g2/include/linux/fs.h:528: field `devpts_i' has incomplete type [23:42] :-/ [23:43] http://vserver.13thfloor.at/Experimental/patch-2.4.23-pre7-O1-c17g2-mq0.11-cx0.06.diff.bz2 [23:43] Missing devpts_fs_info.h ... hmm perhaps I forgot a -N to diff [23:46] hrm, ml0.04 is really ugly, it seems ... [23:47] maybe because OOM was removed? [23:56] @matt what would you prefer, someexperimental rmap+ml or a fixed ml only? [00:00] --- Mon Oct 20 2003