[00:00] we have skb->sk->sk_socket, iirc there's a indicator to which context a socket belongs [00:04] hmm, hmm ->sk_sock points to a struct socket, which has no knowledge of the context yet ... [00:04] at least not in my tree, I'm sure alex' tree has this ... [00:05] mcp (~hightower@wolk-project.de) joined #vserver. [00:05] hi Marc! [00:08] Bertl: has Mandrake the '/usr/include/ext2fs/ext2fs.h' include? [00:08] @mcp what is the status of wolk + vserver ... [00:08] @ensc seems so ... [00:09] Does this exist in Debian 3.0 also? [00:11] it exists in my debian unstable [00:11] @matt any rediffs yet? [00:12] @Gandalf I assume the debian guys should work a little closer with the core development then ;) [00:12] Gandalf: thx, hope this will solve some compilation problems with 2.6 kernel headers [00:13] sorry I've got a cold *cough* ... %-) [00:13] hrm... [00:13] bertl : well, trying to get my switch done first... [00:13] weird problems [00:13] the 2.6 kernel headers are buggy... [00:14] they do not define __u64 with '--std=c99' [00:14] @matt ... the I do the rediff, okay? [00:14] well, it's not working correctly [00:14] so i'd hold off [00:14] one sec, i'll tell you the problem. [00:14] Linux vps5.tektonic.net 2.4.22-vs1.00-6um #3 Tue Nov 18 15:20:55 EST 2003 i686 i686 i386 GNU/Linux [00:14] that's inside the uml [00:15] hmm, are you sure that 6um is correct? [00:15] yeah, it's 2.4.22-6 [00:15] are they conting towards zero? [00:15] i dunno.. [00:15] WSU (~WSU@205.244.47.254) left irc: Quit: Client Exiting [00:15] well if 8um wasn't the latest? [00:15] i told jeff dikes ( the main programmer) I was using 8um off of kernels.usermodelinux.org [00:15] and he told me it was my fault and that was old [00:16] and that I should use the patches from user-mode-linux.sf.net [00:16] -6 is the latest there.. [00:16] so i'm confused too, i thought I was using the latest [00:22] ok, so I have httpd running under chbind on the uml host [00:22] then I start a vserver and that httpd works fine [00:22] then trying to start future vservers says the port is already in use [00:23] Starting httpd: (98)Address already in use: make_sock: could not bind to address [::]:443 [00:25] so maybe the bind didn't work as expected, or the chbind failed somehow ... [00:25] huh, seems port 80 works fine.. [00:26] please change/ssh into a vserver and do grep ipv4 /proc/self/status [00:27] one sec, triyng to rule out their config [00:27] maybe that is a uml error when you try to bind to an IP that isn't yours [00:28] they had the wrong IP in ServerName and /etc/hosts [00:28] just doing a mass search and replace now.. [00:30] ipv4root: c9f13845/00ffffff [00:30] ipv4root_bcast: dff13845 [00:30] ipv4root_refcnt: 2 [00:32] well looks weird, maybe /28 was meant? ... 69.56.241.201/24 and 223 as broadcast ... [00:32] huh? [00:32] TCP/IP works fine.. [00:32] it's just binding to ports gives that error [00:32] well your 'network' is 69.56.241.201/24 [00:33] and your broadcast is 69.56.241.223 .. where it should ne 255 on a /24 ... [00:33] s/ne/be/ [00:34] it's not a /24 [00:34] it's a /28 [00:34] then you should tell the chbind so ... ;) [00:35] eth0:69.56.241.201/28 for example or IPNETMASK=255.255.255.224 [00:35] IPROOTMASK I mean ... [00:38] no change [00:38] it says nothing is listening if I run netstat -nl in the vserver [00:39] okay, how does the grep ... now look like, and what is the issue, and what version are you testing? [00:43] ensc: I can't seem to get util-vserver to compile against my 2.6 headers... [00:44] ensc: any tips? or should I patch a 2.4 kernel and compile against that? [00:45] hmm savannah seems to be dead at the moment... can you try http://www.tu-chemnitz.de/~ensc/util-vserver-0.24.91.tar.bz2 [00:45] ? [00:47] testing [00:47] Gandalf, you are not using the kernel headers in /usr/include/linux, do you? [00:48] ok, user error [00:48] problem with Listen statement... [00:48] okay then, please replace user ;) [00:48] maybe a diff between c17e and vs1.00 ? [00:49] I don't ever watch vserver startup on this server [00:49] you need one? or you would like to look at one ... [00:49] Bertl: I specify --with-kerneldir [00:49] so maybe it was even broke before [00:49] er, differences [00:49] as in difference in behavor [00:49] okay, well what changed then? [00:50] The user had "Listen 80" and "Listen 443" in his httpd.conf [00:50] I commented them out, it works [00:50] ah okay ... fine then ... [00:50] ensc: it fails on linuxcaps.h since it uses __user [00:51] wait, no user error [00:51] it's doing it on all redhat9 installs [00:51] so must be something with uml [00:51] weird [00:51] well, honestly I doubt that uml changes the network behaviour ... [00:51] ensc: removed it just like with the "vanilla" version of util-vserver and reran make, and now it seems to actually succeed, it's still compiling [00:52] ensc: yes it compiled fine [00:52] @Gandalf, enrico so what was the problem, just curious? [00:53] New security context is 100 [00:53] kernel havn't died yet [00:54] Bertl: there is a '__user' statement in linuxcaps.h and the 2.6 headers are broken (no __u64 with '--std=c99') [00:54] latter was solved by including the ext2fs.h from e2fsprogs [00:54] okay, there are no capabilities yet, there is no ipv4root and dynamic contexts won't work (same goes for changing context flags) [00:55] ahh okay, so this 'will' be fixed later in 2.6, right? [00:56] I do not know if I will have success with the __u64 issue on lkml... [00:56] another weird issue... web programs say they can't connect to mysql, but I can locally.. through sock or localhost [00:57] Bertl: contexts seems to work, I only see processes in the same context when I run in != 0 [00:58] look into /proc/virtual and /proc//vinfo *smile* [00:59] hmm, what is that? [01:00] /proc/virtual I mean [01:01] /proc/virtual/info contains general information ... [01:01] and it gets a subdirectory for each context you create ... [01:02] /proc/virtual/stat(us) will contain stat(us) info later ... [01:03] you mean it will create subdirectories later? [01:03] well, it should create them now, just try chcontext --ctx 100 sleep 100 & [01:03] and then have a look into /proc/virtual/ [01:04] argh, I was in context 2 before but I didn't see any directory, but now when I tried with 100 it appeared [01:05] # cat /proc/self/vinfo [01:05] VxID: 840972337 [01:05] and the directory in /proc/virtual/ is gone :) [01:05] directory disappears with the context ... [01:06] I'm still in the context [01:06] in what context .. [01:06] chcontext --ctx 2 bash [01:06] or is 2 special in any way? [01:06] well you should not see anything from ctx 2 ... [01:07] but the permissions are a little 'icky' because proc uses it's own stuff to check them ... [01:07] that will go away as soon as I add the i->vx_id check/set ... [01:07] I mean inode->i_vxid ... [01:08] but the VxID: 840972337 sounds weird .. what platform/arch is this? [01:08] x86 [01:09] hmm, can you reproduce that? and when, how? [01:09] s/when/if/ [01:09] I can't seem to reproduce that one but I see one other strange thing [01:09] I enter a new context [01:09] from 0 I can see the new context in /proc/virtual/ [01:10] in the new context I run 'ls /proc' [01:10] chcontext --ctx 100 /bin/bash (this way?) [01:10] now the context is gone from /proc/virtual [01:10] yes [01:11] yes, /proc/virtual contents isn't visible from ctx != 0/1 yet ... [01:11] it's gone from ctx 0 [01:12] hmm, probably the permission issues again .. this isn't fixed yet, just try to 'not' access /proc/virtual from within a context != 0 .. for now ;) [01:12] hehe, just accessing /proc is enough :) [01:12] really? [01:13] yup [01:13] well experimental, testing, what should I say ;) [01:13] /proc/virtual/100 disappears when something in ctx 100 touches /proc [01:13] hehe [01:35] so enrico, is there a new 'final' release of the util-vserver, or is 0.24.91 the one for linux-vserver? [01:36] Bertl: I am about it. But a 'cvs diff' needs 10 minutes at the moment, so I do not know if I can release 0.25 before 00:00... [01:36] hehe, okay, can I download the .tar.bz2 anywhere? [01:37] 'cvs diff' is needed for the ChangeLog file [01:37] and this is a 'make dist' target [01:39] so what would you prefer: a) I change '0.24' to '0.25 (not yet)' on all release pages, or b) ... [01:40] savannah seems to work again... 0.25 should happen before 00:00 [01:44] will it need the %exclude removed for Mandrake? [01:45] s/need/require ..to be/ [01:46] yes; or remove the '--enable-linuxconf' statement and put the '%files linuxconf' into an '%if 0 .. %endif' block [01:50] Bertl: ok... it is out [01:50] perfect .. [01:51] Nick change: riel -> unriel [01:54] no savannah announcement yet? [01:55] @enrico you tested them against vs1.00 ? [01:56] not 1.0, but c17a [01:56] hrm ... [01:57] does it fail with it? [01:58] haven't tested yet, but you should starting testing agains the stable and/or devel tree, not some prepatches ... [01:59] there should be no relevant changes; when 0.24 worked, 0.25 should work also [02:35] okay, I'll call it a day .. have a good whatever ... cu tomorrow ... [02:36] nick Bertl_zZ [02:36] Nick change: Bertl -> Bertl_zZ [03:12] infowolfe (~infowolfe@68.33.215.209) left irc: Read error: Connection reset by peer [03:14] shuri (~ipv6@cpu183.adsl.qc.bellglobal.com) joined #vserver. [03:14] uname -a [03:14] Linux VS 2.6.0-test9 #1 SMP Tue Nov 18 01:03:02 EST 2003 i686 unknown [03:14] vserver-stat [03:14] CTX PROC VSZ RSS userTIME sysTIME UPTIME NAME DESCRIPTION [03:14] 0 0 0B 0B m00.00 m00.00 m17.05 root server [03:14] VS:~# vserver test1 start [03:14] Starting the virtual server test1 [03:14] Server test1 is not running [03:14] Can't set the ipv4 root (Function not implemented) [03:16] shuri: only the process separation is implemented [03:18] infowolfe (infowolfe@pcp04891550pcs.frnkmd01.md.comcast.net) joined #vserver. [03:19] i see [03:19] :P [03:31] hola Bertl_zZ [03:31] bleh [05:09] ensc (~ircensc@ultra.csn.tu-chemnitz.de) left irc: Read error: Connection timed out [05:11] hello all [07:02] shuri (~ipv6@cpu183.adsl.qc.bellglobal.com) left irc: Quit: ipv6 [07:47] zyong (cat@bb220-255-105-48.singnet.com.sg) left irc: [08:35] infowolfe (infowolfe@pcp04891550pcs.frnkmd01.md.comcast.net) left irc: Read error: Connection reset by peer [08:35] infowolfe (infowolfe@68.33.215.209) joined #vserver. [08:49] kestrel (~athomas@o2rosock0a.optus.net.au) left irc: Remote host closed the connection [11:28] pilawa (~pilawa@rzpilawa.rz.tu-bs.de) joined #vserver. [12:16] hi there [13:47] infowolfe (infowolfe@68.33.215.209) left irc: Quit: Trillian (http://www.ceruleanstudios.com) [13:59] serving (~serving@213.186.191.15) left irc: Ping timeout: 493 seconds [14:49] say (~say@212.86.243.154) joined #vserver. [14:49] say-out (~say@212.86.243.154) left irc: Read error: Connection reset by peer [15:09] say (~say@212.86.243.154) left irc: Ping timeout: 483 seconds [15:18] say (~say@212.86.243.154) joined #vserver. [15:37] zyong (cat@bb220-255-105-48.singnet.com.sg) joined #vserver. [15:51] serving (~serving@213.186.191.143) joined #vserver. [16:06] MedivhWrk (ck@195.90.10.197) joined #vserver. [17:12] Nick change: unriel -> riel [17:36] Nick change: Bertl_zZ -> Bertl [17:36] hia ll! [17:41] maja|ipv6 (maharaja@ipax.tk) joined #vserver. [17:41] hi [17:41] ah :) mail is up [17:41] you've notified herbert about the ##MAX_VSERVER_DEFAULT thingy? [17:41] huh? [17:42] if i try to compile 1.1.14 with the vanilla 2.4.22 kernel [17:42] fredrik? [17:43] i get an error in drivers/block/vroot.c [17:43] *searching [17:44] the ##MAX_VROOT stuff, right? [17:44] i changed [17:44] + printk(KERN_WARNING "vroot: invalid max_vroot (must be between" [17:44] + " 1 and 256), using default (" [17:44] + ##MAX_VROOT_DEFAULT ")\n"); [17:44] to printk(KERN_WARNING "vroot: invalid max_vroot (must be between" [17:44] " 1 and 256), using default (%d)\n", MAX_VROOT_DEFAULT); [17:44] yeah :) [17:44] (kernel is still compiling thou) [17:45] done [17:45] yes, I don't know yet, what happened, must be a failure in my build system, as I spotted this yesterday, and fixed it, but it made it into the release ;) [17:45] k :) [17:45] mhm [17:45] ah [17:45] du bist eh der herbert [17:45] hehe [17:45] maybe I just released the wrong files, I have a heavy cold, ... [17:46] habs jetzt grad nicht überrissen [17:46] yes, I am, and the channel language is english ;) [17:46] ok [17:46] so: you think your release is sane? :) [17:46] well, never said that .... [17:47] mhm mhm mhm [17:48] maybe ill try using vmware before trying it on the real box [17:48] some people do ... [17:49] do what? [17:49] others have this stuff in production since 1-2 years or more ;) [17:49] use it in vmware for some time ... [17:50] even 1.1.14 ;) [17:51] -1 [17:51] oh well, i've got nothing else to do today, so lets boot the new kernel and hope the server gets up :) [17:52] wait an hour, and you have a 1.1.5 ... [17:53] k [18:11] hmm, maja like that bee? or like that ancient civilization?, or ..? [18:11] like a drunk friend trying to write maharaja ;) [18:12] he kind of missed the middle part back then [18:12] hmm .. the best explanation I could expect ... I guess ;) [18:14] :D [18:39] zev (~zev@masya.aviaserv.com.ua) joined #vserver. [18:39] hi zev! [18:39] hi [18:39] all [18:41] i just found vserver project. and to know is it stable for virtual hosting purposes? sorry for my english (russia former) [18:42] well some community members use it since 1-2 years in production ... [18:42] cool [18:42] that doesn't mean it's rock solid though ... [18:42] what about perfomances? [18:43] you get about 99.9% of the 'host' [18:43] i don't beleve... [18:43] there is no emulation or such, and data can be shared, which give some advantage ... [18:44] kernel patches are for vanilla kernels? or redhat will too? [18:44] you have to look at it as a way to let processes run side by side, without even noticing each other ... [18:44] the patches are for vanilla kernels, which run fine on redhat too ... [18:45] hmmm... it sounds good for me.. [18:45] Alex Lyashkov, maintains a separate branch (some more features, but also more issues) for RH7.3 ... IIRC [18:46] have a look at linux-vserver.org and the documentation there ... it will give you a good overview ... [18:46] :-) i'm here following link from it. [18:47] well, then ignore my last statement, otherwise you might end in an endless loop ;) [18:47] :-) [18:47] Action: zev away for 5 min. [18:48] mhm, my damn college does not manage to install the pc the right way [18:48] vmware is installed but not regged [18:48] neither can you reg it with a trial key [18:48] !! [18:48] maybe time base is wrong? [18:49] bertl: no rights to modify the registry [18:49] what is a registry? [18:50] :) [18:50] :-) [18:50] maja what version of vmware i can tell you cracked key... if you need. [18:51] i've got a key [18:51] but it is not working cause students got no rights on the workstations [18:51] please don't use cracked software ... [18:51] if you think you require this product, or it's features, buy it ... [18:51] well, lets modify lilo and reboot at home then [18:52] Berti agreed. but in my country income is about 100-150$. can i buy it ? how you think? [18:53] well, you can use free software (as in beer ;) [18:54] Berti yes :-) it's my way. [18:54] for example: boch, QEMU, UML, plex86 ... [18:54] and if this software isn't good enough, well we can make it better, right? [18:57] right [18:57] Linux yule 2.4.22-vs1.1.4 [18:57] success [18:58] couldn't wait, eh? [18:59] yepp [18:59] got me :) [18:59] my english sometimes bad. can understand but can't say exactly what i want. [19:00] @zev no problem, most of us are not native speaker (english) either ... and I'm good at interpolating russian english ;) [19:00] (as you can deduce from this sentence ;) [19:01] :-) [19:02] îê [19:02] ok [19:02] sorry :) [19:02] :) [19:03] doh! i forgot to add xfs support ;) [19:03] oh well, at least my data won't get destroyed that way *g* [19:03] well, as I said vs1.1.5 will be released soon ... [19:04] i guess ill wait till then [19:07] and the last i want to know before i begin to test vserver on my "experiments-server". [19:07] my task is: [19:07] i have dedicated server 2 gigs ram / 2.4 P4 / scsi hdd. [19:07] and want to do virtual hosting on it. security is primary for me. [19:07] i want to do several vserver on it say 1 for little clients that's don't need root or ssh anyway. [19:07] and some, say 5 for start, with 1 IP and fully controlable by the clients. [19:07] what can you recommend me to begin do this? [19:07] i mean what patches is stable and any other recommendation can you provide for me? [19:08] please. [19:09] oh, sorry. RH-7.3 is on server [19:09] as far as i've seen, there are several branches [19:09] stable, development, experimental [19:09] or so [19:10] get the one that you think will fit (stable = most tested but not on top, ...) [19:10] right, I would suggest stable, unless you need features only present in devel ... [19:10] i need it to be as more stable as without virtual pathes [19:10] features? [19:10] i need apache+php+postfix+mysql+bash+proftpd+courier-imap on every vserver [19:11] stable will feet? [19:11] for example devel branch has some deeper virtualizations, like reboot/halt and uptime virtualization ... [19:11] but the default stable branch will cover your application needs anyway ... [19:11] Nesh (~dmistry@64.106.131.10) joined #vserver. [19:11] hi lo [19:11] hi dinesh! [19:12] is bind working with testing? [19:12] Bert! [19:12] bind is working with every version, you just don't wan't the security holes of 'unpatched' bind on a vserver ... [19:12] what does http://www.linux-vserver.org some type of wiki? [19:12] sk [19:12] hmm .. thinking of it, not even on a normal server ;) [19:13] @nesh well, it's the project homepage, right? [19:13] yeah [19:14] i want to use the same software so i was wondering what it is [19:14] heh [19:14] Berti what you have on bind-9.2.3? i think it's secured enought? isn't it? [19:14] @nesh ahh, it's tavi ... with some enhancements ... [19:15] mm [19:15] @zev, well it's fine, but it messes with the linux capability system, if not configured to not do so ... [19:16] s/to not/not to/ [19:17] vserver do restrict the linux capability system to a minimum of capabilities, this results in 'out-of-the-box' bind not working, as it tries to raise it's capabilities ... [19:18] (the former is a security measure ;) [19:18] i don't understand what bind doings so bad. [19:18] well, actually bind (compiled on linux) will raise the capabilities and then again drop it ... which isn't the way to do it ... [19:19] i always bind bind to exact IP's on my servers that response for domains on it. close axfr. [19:19] what more? [19:19] let me see, I have some FAQ entry for that ... on Pauls page ... [19:19] ok. what is the solution? [19:19] yes. give me some FAQ. [19:20] simple you compile it without the capability raising (a simple config option) [19:20] or if you do not want to do that, you can give the capability to that vserver, but this _is_ an security issue ... [19:20] http://www.paul.sladen.org/vserver/faq/ [19:21] not everything is up to date, paul is lazy ... [19:21] Q: Bind 9 doesn't work in a vserver [19:21] ok [19:22] thats why i asked :) [19:23] hmm... so i need to run it as root on vserver :( [19:24] Action: zev printing paul's faq for home reading :) [19:24] no, you have 3 options ... [19:24] 1) recompile and add --disable-linux-caps [19:25] 2) raise the capabilities of the vserver [19:25] 3. don't use this software? :))) [19:26] good thinking ;) [19:26] by the way, I use it myself, after a simple recompile ... [19:27] can you provide me you ./configure string? [19:28] I'm using Mandrake, so this is in the spec file, but --disable-linux-caps is sufficient ... [19:28] ok. thanks [19:28] actually this is no vserver issue, although often called one ... [19:28] i'll try it. [19:29] thanks a lot. if i have had any more question i'll be there :-) [19:29] bye. [19:29] bye ... [19:30] zev (~zev@masya.aviaserv.com.ua) left #vserver. [19:50] mugwump (~sv@81.3.107.58) joined #vserver. [19:51] hello all [19:51] http://www.13thfloor.at/vserver/d_release/v1.1.5/ [19:51] hi Sam! [19:52] Topic changed on #vserver by Bertl!~herbert@212.16.62.51: http://linux-vserver.org/ || latest stable 1.00, devel 1.1.5 [19:57] Hmm, I wonder if that patch will work on a kernel that works on my system! :-) [19:58] do you need deltas? [19:59] No, I think I need to find a Marcelo based kernel that will work on my board. Maybe a .23preN [19:59] If Alan's given up the ghost... [19:59] I'll get the 1.1.5 patch, test it with the latest kernel & let you know how I get on. [20:00] Just one thing - have we got any confirmed positives with running NIS inside a vserver? [20:00] okay, I would appreciate to have the O(1) stuff on vs1.1.5 or for the next devel sequence ... what do you think? [20:01] WSU (~WSU@ny.webpipe.net) joined #vserver. [20:01] Yeah, I'd like to have them too. But I'm wondering whether it would be more productive to put it in the 2.6.0 port... [20:01] You replaced the standard scheduler with the O(1) one from AA's kernel - was that hard? [20:02] well, I'm not sure if the majority _is_ ready to switch to 2.6 soon ... [20:02] agreed [20:02] hmm, not really, was a minimizing the changes ... [20:02] the patches are there, take a look at them ... [20:02] I could do with Rik's VM as well, I think ... [20:02] OK I'll take a look. brb [20:06] ensc (~ircensc@134.109.116.202) joined #vserver. [20:06] hi enrico! [20:07] Bertl: hello, 18h local net-outage. horribly... [20:07] but my room is now clean (again)... [20:07] wow, how did you do that? [20:10] hay, I missed 2.4.23-rc2 ... shame on me ;) [20:15] What mirror is rc2 on? [20:15] hmm, got it from kernel.org ;) [20:15] ftp.at.kernel.org ? [20:16] not on uk.kernel.org [20:16] well, guess we in austria _are_ priviledged ;) [20:16] ich verstehe [20:17] ;) [20:18] not on ftp.at.kernel.org either [20:19] found it [20:20] hmm, ACPI fixes...perhaps just what I need [20:20] oki ... [20:22] well, doesn't affect vserver, vs1.1.5 applies without any issues ;) [20:22] that's what I like to hear [20:23] but IIRC, some (critical) netfilter or ip tables bug was fixed ... [20:23] or hopefully fixed ... [20:24] I'm having some very basic UDP problems with portmap... [20:24] with vserver? [20:24] my patch :-( [20:24] Action: mugwump waits for the "I told you so" [20:25] would I dare? ... yes I would: told you so! ;) [20:26] hey Sam, I would like to create a tuning interface for the scheduler, which works with O(1) and without, are you interested? [20:26] you do the O(1) change, I'll port the scheduler and syscall to it [20:26] d'oh responding to a much earlier question :-) [20:27] hmm, okay should not be the problem ... [20:27] Also, I haven't looked into the old scheduler too deeply, I wouldn't be sure how to enforce CPU allocation [20:28] But can probably figure it out from the old sched lock stuff [20:28] My new SysAdmin is telling me just to run Linux machines inside FreeBSD jails ... [20:28] but we should check/stress the scheduler a little, because there where some issues, which might be related to the O(1) scheduler ... [20:33] there you go ... now checking if it compiles ;) http://vserver.13thfloor.at/Experimental/patch-2.4.23-rc2-O1.3.diff [20:47] Thank you all for reverting the pre4 change to ip_nat_core.c that [20:47] was giving me problems. [20:47] that was the issue I meant ;) [20:53] that patch fails on linux-2.4.23-rc2-vs1.1.5 [20:53] shall I do them the other way around? [20:53] oh, duh [20:53] sorry brain not engaged [20:53] hmm, okay, I have one good then ;) [20:53] that's my job now :-) [20:54] but use the splitups, will you? [20:55] I even moved the timer changes, as you requested 8-) [20:55] why thank you [21:12] so glad to be of help ;) [21:13] matta (~matta@pcp02730451pcs.potshe01.pa.comcast.net) left irc: Quit: ircII EPIC4-1.0.1 -- Are we there yet? [21:14] okay, 2.4.23-rc2-O1.3 compiled and booted (in QEMU) [21:15] serving (~serving@213.186.191.143) left irc: Ping timeout: 480 seconds [21:19] Shall I make EXTRAVERSION include o1 ? [21:19] -rc2-vs1.1.5o1 ? [21:20] yes, guess this would be useful, maybe O1.3 somehow ... [21:20] ok [21:20] a letter for each subsystem, then a version number [21:20] all within the vs1.1.x part [21:21] well I had a problem with O(1) because usually I use 2 letters and a x.yz version number ;) [21:21] O(0.03 would have been too confusing, I guess ;) [21:21] matta (~matta@68.81.235.145) joined #vserver. [21:21] Bertl... [21:22] hi matt! [21:22] that tcp_getinfo()... [21:22] you think that may be my problem?? [21:22] nope, but it could ... [21:22] what were the symtoms of this? [21:22] oh, that was complete lockup, correct? [21:22] why not?, simple because this gives a clean oops ... [21:23] an uninitialized variable is dereferenced ... nothing is done with that value, except for some comparison ... so no 'bad' sideeffects if it doesn't panic ... [21:24] Nick change: MedivhWrk -> ck [21:24] and usually it will panic, with a clear message stating that tcp_get_info() made a null pointer dereference ... [21:24] but maybe the other fix, the one I did in 1.1.4 could help in your case ... [21:25] so anyway, it would be a good thing to upgrade to 1.1.5 ;) [21:26] hrm... [21:26] do you have qh/dl patches for 1.1? :) [21:27] hmm, I was planning to rediff them anyway, so why not now ... [21:27] by the way vs1.00 doesn't have the 'tcp_get_info() bug' ... [21:28] 2/10 [21:29] no time estimation 8-) [21:29] Depends if I have to re-do that new syscall I wrote :-) [21:30] what do you call a sub-command of a syscall anyway? [21:31] hmm, you mean like 61/1? [21:32] yeah [21:32] several lines ago, I suggested to 'create' a (multi)functional interface for scheduler tuning, maybe we can agree on something which becomes standard then ... [21:33] swytscall ? [21:33] no 61/1 actually is the command [21:33] 61/1/1 is a versioned command [21:33] and 61 is the category ... [21:33] ok, so it's a command [21:34] yes, 61/1 is your test command in the 61 Test category ;) [21:34] http://vserver.13thfloor.at/Stuff/syscall2.3.txt [21:34] 4/10 ... most of the time is just fiddling with cp -al, etc [21:35] a look at the latest version of the syscall matrix, Alex and I agreed on ... will sched some light on the syscall command categories ... [21:36] cool [21:36] didn't realise alex was on board now [21:36] I would appreciate a 14/1 to set scheduler flags (32 or 64), and a 14/2 to configure tunable parameters or something like this ... [21:37] well we try to agree on default interfaces, this makes life easier ... [21:38] @matt did we agree on qa or qh for the quota patches? [21:40] where has s_info gone? [21:40] oops, maybe I should have told you ... ;) [21:41] Action: mugwump is reminded of the `not much has changed, just implemented the syscall switch...' line [21:41] hehe ... [21:42] current->s_info is still there ... [21:42] I need to add stuff to the struct ... save me the find | xargs grep... [21:42] Action: mugwump goes to have a cigarette instead [21:42] what are you looking for? [21:44] hmm, probably the struct itself, so include/linux/vcontext.h then ... [21:47] @matt first part ... http://vserver.13thfloor.at/Experimental/patch-2.4.23-rc2-qh0.12.diff.bz2 [21:51] ah got it [21:56] 5a/10 [22:02] 5b/10 [22:04] VC_CAT_EXPERIMENTAL is now where or what name ? [22:05] ah, vswitch.h [22:10] #define VCMD_control_sched VC_CMD(SCHED, 1, 0) [22:10] #define VCMD_tune_sched VC_CMD(SCHED, 2, 0) [22:10] #define VC_CAT_SCHED 14 [22:14] yes, but we should talk about the interface ... [22:14] OK, perhaps I should have a seperate command for tuning each type of scheduler [22:15] I'm not convinced that this is beneficial, what about a generic set 'x' value with a reasonable superset of possible 'x'? [22:16] KISS [22:16] JonB (~jon@129.142.112.33) joined #vserver. [22:16] That would involve some kind of lookup table [22:17] hmm, depends, a simple strncmp() could be sufficient, or a case(x) if it is an integer ;) [22:17] hi Jon! [22:17] @Sam this isn't time critical, is it? [22:19] maybe you have a better idea, maybe we should start by 'listing' your tuning parameters first? [22:19] I'm thinking about a 'generalized' proc interface for this stuff (not write but read) ... [22:20] There are four parameters, two represent the fraction of CPU you get [22:20] the other two represent the fraction of the bucket that you have left [22:20] okay, I understand 10% of the cpu for example ... [22:21] but why two values? [22:21] yes, that would be fill_rate = 1, period = 10 [22:21] could use a float I guess [22:21] okay, how do 3 contexts, with 40% cpu each work? [22:22] fill_rate = 3, period = 5 each [22:22] s/3/2/ [22:22] hey Bertl (phone) [22:22] yes, but that can't be satisfied, right? [22:22] sure, if you've got SMP :-) [22:23] is this a maximum, or a minimum or a ... best efford? [22:23] It's more of a `target' CPU allocation level [22:23] you get less than your allocation, your priority increases, and vice versa [22:24] hmm, okay, we could relativize this in regard to the CPUs and contexts, anyhow? [22:25] maybe, let me explain something about the limits first ... [22:25] Alex and I agrred on a general 'resource-limit' command set .. [22:26] which allows to set MIN/SOFT/MAX values for different resources ... [22:26] ok [22:26] http://vserver.13thfloor.at/Stuff/vs-limits.txt [22:27] it would be perfect, if we could match a part of the scheduler tuning stuff, with the CPU slice limits MIN/SOFT/MAX ... [22:28] (those are per context limits) [22:28] http://vserver.13thfloor.at/Stuff/rlimit_virtual.h [22:28] the interface is already present in vs1.1.5 ... [22:29] ok, but there is one tiny difference - I can turn it on/off, and it doesn't make sense just to set the values to max to signal disabled [22:30] well, no problem with extra tuning/config/etc ... [22:30] and only if it makes sense (for the user) to set this as'limit' [22:31] one idea behind the minimum setting is, that any attempt of overbooking could be reported and rejected ... [22:32] so for example a setting of 10%/50%/60% would result in .. a guarantee of 10%, a typical usage of 50% and a maximum of 60% (hard limit) [22:33] right. and that can all be done in userspace [22:33] logic like that really doesn't belong in the kernel IMHO [22:33] "back" [22:33] hmm, you got a point there ... [22:34] I can make it two commands, one for meta controlling and one for tuning each scheme of scheduling [22:34] please elaborate ... [22:35] meta controlling: [22:35] struct vcmd_control_sched_v0 { [22:35] uint32_t ctxnum; [22:35] uint32_t options; [22:35] }; [22:35] Action: mugwump hopes he doesn't get kicked by some bot for spamming :-) [22:35] scratch the ctxnum, this is passed via the syscall (id) [22:35] mugwump: no, dont worry, i'll just show up at your home with my baseball bat [22:36] and options would be the flags I mentioned before, right? [22:38] yes, just a bitwise field for selecting the scheduling you want [22:39] okay, we can agree on that, (modulo the ctxnum removed) [22:40] The reason I put the ctxnum in there was so that you can have a monitor daemon in context 0 controlling it all [22:40] but ... is that even necessary ? I think when I wrote that Perl example I noticed that it was being passed twice. [22:40] I'll can it [22:40] as I said, the context is passed as an 'argument' to the sys_vserver() syscall ... [22:41] OK, happy for me to use two bits, one for disable, one for enable? [22:41] hmm, both set, means? [22:41] -EINVAL :-) [22:42] hmm, both unset, means? [22:42] leave as is [22:42] which actually means? [22:42] fetch status, perhaps [22:42] huh? [22:42] sounds borked to me ... [22:43] ok. Assume that this syscall is used later for doing other scheduling meta-stuff. [22:43] for setting binary flags, yes ... [22:43] If you prefer, I can make a specific command for setting the status of TBF scheduling. [22:44] status means ON/OFF right? [22:44] Perhaps that would be less arsey than a bitwise flag [22:44] similar to RT ON/OFF, or am I wrong? [22:45] and is this per context or per host? [22:45] per context [22:45] `status' == on/off, not sure what RT is [22:45] okay, why not define a 32bit scheduler flagword, and take bit 0 for TBF enable/disable (RT == RealTime) [22:46] Sure. But there should be a way to read that flag... [22:46] Otherwise the userspace daemon might accidentally trample it [22:46] yes, we can read back the entire flagword ... [22:47] set/get for the scheduler flagword, does this sound reasonable to you? [22:47] sounds fine. But ... we're kind of duplicating what's in context_info->flags [22:48] well, if you like, we can drop that instantly, and replace it with a general 'context' flagword, what about that? [22:48] infowolfe (infowolfe@pcp04891550pcs.frnkmd01.md.comcast.net) joined #vserver. [22:48] hi chip! [22:48] Bertl, this is only for a second [22:48] I know, you are protesting ... why, please explain? [22:49] OK, so we allocate bits in `flags' as needed, and make a generic syscall to get and set the entire word, with a mask. [22:49] honestly? politics [22:50] I don't think that politics has any place in development projects [22:50] @chip well I give a damn about politics ... [22:50] so what is your reason for acting like this? [22:50] Action: mugwump cranks up eliza [22:50] @Sam just a few moments, please ... [22:51] it's the principle of the thing [22:51] @chip okay, we paused development to listen to you ... [22:51] My dad always used to say that's what people say when they've run out of real arguments [22:51] sorry, i wasn't asking for all that [22:51] mugwump, most of what i have to say is in an email that i'm about to hit send on :-p [22:52] Action: infowolfe hit send [22:52] well, you are part of the community, and if you don't feel well, we want to know why ... [22:52] Action: mugwump collects his spam [22:52] my main thing is that i think the founders of oftc really went out of their way to slander lilo when they left [22:53] they've been pretty calm with bashing him lately, but honestly, after talking to the guy, i can't have any animosity towards him [22:53] he has a very large network, in fact, the largest that caters to this type of work [22:53] okay, slow, I'm new to oftc, and I'm new to freenode, what is the lilo stuff all about? [22:53] his philosophy is in plain english and it's something that anybody can really get into (imho) [22:54] oftc was founded by a bunch of ex-staffers of openprojects.net (what freenode USED to be) [22:55] fine, so what? [22:55] they attempted a hostile takeover and when lilo (rob levin) wouldn't give up his network, they founded oftc and upped the amount of trash they were spewing about him [22:55] basically, i'd rather not be on a network that would dip that low over a personal dispute [22:55] infowolfe: why do you care that much about it? [22:55] hey, those are individuals, and humans ... [22:56] human nature is prune to error and strange behaviour ... [22:57] mugwump, i've been reading about this stuff and have been a user on openprojects pretty much since they opened their doors [22:57] I could not understand Rik, as he refused to join this channel as long as alekibango's bridge was active ... [22:57] and I can't understand you, and how this affects our project ... [22:57] Bertl, i agree, it's just one of those things, to me, it's like buying microsoft software, something that I just won't do for myself [22:58] The question is; a) does it affect the number of people likely to join the channel and b) is the service/performance up to scratch? [22:58] okay, that _is_ something I _can_ understand, but I can give you good reasons, why not to do so ... [22:58] Bertl, the reason why i'd like to see this project over on freenode is this: i've been working pretty closely with the gentoo people over on freenode and i think that both they and you could benefit from crosstalking with each other [22:58] So, use an IRC client that supports multiple IRC networks. [22:58] fine, get the bridge back working ... [22:58] mugwump, a) it really shouldn't, check out that link i sent to the list in regards to irc.netsplit.de [22:59] b) i only disconnect when my cable connection goes south :-p [22:59] never had a problem with the freenode bridge ... [22:59] Bertl, would a bridge allow you to join #gentoo-dev and talk with some of their kernel devs? [23:00] or would they have to join #vserver? [23:00] well, if I would like to join, I would ... [23:00] my irc client has no problem with many server connections ... [23:00] neither does mine [23:01] so what the f** is the problem then? [23:01] will vserver people accidentially stumble into the gentoo kernel developer channels? no! will it be the other way around? I don't think so! [23:02] what is the advantage of having this on one net then? [23:03] Bertl, i like freenode personally because it has really nice service, the ircops are accessable, the philosophy of the network is easy to deal with, AND the established userbase is much larger [23:03] I like wildsau.at because I have no netsplits there ... (there is nothing to split ;) [23:03] I've had quite a few people ask me about the project after i've mentioned it and it'd honestly be nice to say "just go join #vserver" [23:03] so why don't we move back to irc.linz.at ? [23:03] Bertl, lol [23:03] Bertl, i'd rather see us there than at oftc [23:04] but i'd rather see us on freenode where we can get a decent userbase also... [23:04] you might not know, but the channel started there ... [23:04] at freenode? [23:04] no at irc.linz.at ... [23:04] oh, i knew that :-p [23:05] as I said, get a majority vote, if it is for freenode, I'll move without hesitation ... [23:05] alright [23:06] although I consider a multi-irc-net solution superior to any single network ... (my opinion) [23:06] Bertl, if you're interested in registering the channel #vserver on freenode, send a /msg to lilo on this network [23:06] what is wrong with oftc ? [23:07] JonB, too political and too much admin b/s in my book [23:07] infowolfe: admin b/s about what ? [23:07] channel robbing of other networks, gossip, general talking crap... [23:08] just some stuff that really doesn't make me all that happy to be here [23:08] infowolfe: why do you have to do that ? [23:08] well #vserver is registered, and wasn't robbed yet IIRC ;) [23:09] in fact, I only really came in to talk to Bert about asking lilo for #vserver on freenode to be un-reg'd from the current people who haven't been there in 15 weeks [23:09] although I might have lost some flags on a netsplit ;) [23:09] next week, i can just ask him myself per policy to kill the channel and un-reg it, but the policy is 120days and we're not quite there yet [23:10] a) who has registered the cannel there and b) did you try to contact them? [23:10] a) someone named "serving" b) they haven't been on freenode in 3 weeks [23:11] do you know how to use /who ? [23:11] Bertl, if you're on freenode, do this: /chanserv info #vserver /nickserv info serving [23:12] 21:12 -!- serving [~serving@213.186.191.89] [23:12] 21:12 -!- was : Serving [23:12] 21:12 -!- server : keid.oftc.net [Sun Nov 16 06:47:03 2003] [23:12] serving? isnt that someone from here ? [23:13] sure, it is one of the community members ... [23:13] whats the problem then ? [23:13] i'm not sure who it is, but they haven't been on freenode in about 3 weeks [23:13] and i dont' know who they are [23:13] well you could at least have asked, right? [23:14] what is the topic of the vserver channel on freenode? [23:14] there isn't one [23:14] interesting ... [23:15] Bertl, where did you get that output? [23:15] well, I think you are bringing politics into vserver, which I personally don't like very much .. so please think again, before you take any further actions ... [23:15] those are from the oftc /whowas ... [23:15] Bertl: yeah, lets stay here on oftc [23:16] and probably you could find more info in the archives, yes? [23:17] as I said, I don't care who provides the network we use, as long as we get the devel and community stuff going ... [23:17] I apologize if it seems that my actions were politically motivated... [23:18] I've already spent too much time on that, as a matter of fact, I could have ported the context quota stuff to vs1.1.5 in that time ... [23:18] sorry [23:18] so keep the folowing in mind, the community member is important ... [23:19] absolutely [23:19] and we really try hard to satisfy everyone ... [23:19] so we don't need any politics here, I said this to Rik too (some time ago, the alekibango bridge stuff) [23:19] Bertl, agreed, this topic is dropped [23:20] if you are interested in improving interaction, get a working bridge here ... [23:20] Bertl, the new channel topic at #vserver on freenode is 10please see 12www.linux-vserver.org01 10for contact information and help resources01 [23:21] optimally a bot which is able to register with different nicks, and speak on behalf of the others ... [23:21] Bertl, how about 2 bridges. from here: one to irc.linz.at and one to irc.freenode.net [23:21] well, I abandoned irc.linz.at, we had a bridge there too, but only 2-3 people locally, it wasn't worth ... [23:21] Bertl, alright [23:22] if freenode doesn't pan out, doesn't get any users, I'll upon your request, cut the link [23:23] but find a smart bot, or write something yourself ... [23:24] i think i found a decent one [23:24] okay .. back to development ... where was I? .. oh yes ... per context flagword, sam? [23:24] Action: mugwump wakes up from that terribly interesting discussion [23:25] do you think all scheduler needs can be satisfied with 2-5 bits? [23:25] current and fture ;) [23:25] s/fture/future/ [23:25] sure, I mean how many different schedulers do you see us actually writing ? :-) [23:26] okay, then we make a 64bit flagword ... and reserve 8 for scheduling purposes, does this sound reasonable? [23:27] vserver-bridge (~bridge@gentoo.hardcore-linux.net) joined #vserver. [23:27] sure, fine [23:27] ie 64 bits of VX_INFO_* [23:27] We're using 6 so far [23:27] JonB (~jon@129.142.112.33) left irc: Read error: Connection reset by peer [23:27] vserver-bridge (~bridge@gentoo.hardcore-linux.net) left irc: Remote host closed the connection [23:28] vserver-bridge (~bridge@63.208.156.17) joined #vserver. [23:28] 2<infowolfe2> testing [23:28] JonB (~jon@129.142.112.33) joined #vserver. [23:28] #define VC_CAT_FLAGS59 [23:28] #define VCMD_get_flags VC_CMD(FLAGS, 1, 0) [23:28] #define VCMD_set_flags VC_CMD(FLAGS, 2, 0) [23:28] #define VCMD_get_flags_mask VC_CMD(FLAGS, 3, 0) [23:28] 2<infowolfe2> Bertl, not what you were looking for? [23:28] struct vcmd_ctx_flags_v0 { [23:28] }; [23:28] struct vcmd_ctx_flags_v0 { [23:29] uint64_t flagword; [23:29] }; [23:29] I don't understand why the mask would be a seperate syscall. I thought it would restrict the bits you are updating or retrieving [23:29] @infowolfe maybe call it bridge or just bgr ... but yes ... [23:29] fleshcrawler (~fleshcraw@212.202.204.63) joined #vserver. [23:30] or call it freenode :-) and make it emote [23:30] no actually the mask give information what is supported ... [23:30] Action: mugwump | Hello [23:30] Nick change: mugwump -> freenode [23:30] hi [23:30] vserver-bridge (~bridge@63.208.156.17) left irc: Remote host closed the connection [23:30] Hey, it's free [23:30] Nick change: freenode -> mugwump [23:31] I would prefer a short name (3-5 leters max) ... [23:31] okay you want a mask to set the flagword? [23:32] to avoid read/write if you know what you want to set? [23:32] Bertl, you'll see a vserver nick enter and leave, that'll be whatever bridge i'm currently testing. [23:32] i'm out [23:32] infowolfe (infowolfe@pcp04891550pcs.frnkmd01.md.comcast.net) left #vserver. [23:32] @sam what about that one ... [23:32] Yeah, don't set the bits you don't care about. So two uid64_t 's [23:32] #define VC_CAT_FLAGS 59 [23:32] #define VCMD_get_flags VC_CMD(FLAGS, 1, 0) [23:32] #define VCMD_set_flags VC_CMD(FLAGS, 2, 0) [23:33] struct vcmd_ctx_flags_v0 { [23:33] uint64_t flagword; [23:33] uint64_t mask; [23:33] }; [23:33] you can use the get, to find what bits are supported in the mask, and set to only change the masked ... [23:33] we can drop the get_flags_mask then ... [23:33] Action: mugwump nods [23:34] does VXF_ sound good to you? [23:35] like in #define VXF_SCHED_TBF 9 [23:35] 9? :-) [23:35] okay (1 << 9( [23:35] okay (1 << 9) [23:35] okay (1 << 8) maybe? [23:35] This would replace VX_INFO ? [23:36] yes, completely ... [23:36] well, not in the next release, but after some testing ... [23:37] enrico, are you around? [23:37] yep [23:38] what do you think about this flagword interface? [23:38] do you see any issues adapting the tools to that? [23:39] does this replace the current flags? (given to vc_new_context())? [23:40] yes, in near future it should ... [23:40] you would be able to change some (maybe all) of them later ... [23:40] js (~root@147.26.109.229) joined #vserver. [23:41] js (~root@147.26.109.229) left #vserver. [23:41] If vc_new_context uses those flags, I don't think we should re-arrange them ... [23:42] Defer that headache until we get closer to seeing how many bits we really need there [23:42] well, we should use the existing flags where it makes sense ... let me have a look at the code ... [23:44] alright, one question is whether we have a seperate bit for the old SCHED behaviour vs. SCHED_TBF [23:45] well, the flags are only 'assigned' to the context flagword on vc_new_s_context() ... [23:46] we might support an initial flagword on context creation, what do you think enrico? [23:47] Bertl: which flags would be candidates for this option? [23:47] the private , the ulimit and the init I assume ... maybe the hide too? [23:48] basically we could split the 64bit flagword into 32bit (set on startup, modify later, if possible) and 32bit only dynamic stuff ... or something like this, andy ideas? [23:49] will the rlimit replace the 'ulimit' flag? [23:49] yes, hopefully soon ... [23:49] private can be set later also [23:50] NPROC will be removed/replace by limits ... [23:50] I am not sure about init... imo, this can be set later also (exactly once per context) [23:50] sched will be moved to the scheduler flags, could be set at start and modified later (for example) [23:51] s!exactly once!not more than one! [23:51] the question is, should we support such state machines for the flags? [23:52] it would be easy to have a 0x0001 == init flag, which can't be changed by the set/get, because the mask returns 0x..FFFE ... [23:52] IMHO this would be perfect for one shot flags ... [23:55] it would be a very simple state machine... some flags can be set or unset only (depending on capabilities) and get their initial value from the parent-ctx [23:57] but it would require an additional logic, which knows what was set and what not ... and I see no reason for that, maybe you can explain why you'd prefer that over an initial value? [00:00] --- Thu Nov 20 2003