/srv/irclogs.ubuntu.com/2009/09/11/#upstart.txt

Keybukion: I believe that killall5 sends SIGSTOP to all processes so that the process tree is unlikely to change while it iterates it11:54
Keybukmbiebl: haven't seen the ntfs-3g problem before, any idea why it fails?11:54
Keybukmbiebl: mountall should just call mount the same way mount -a does11:54
Keybukdoes the boot "fail" or does the boot hang?11:54
Keybuk/mnt/data won't stop the "filesystem" event being emitted, but it would cause a shell11:55
Keybukand as to the output difference, it's simply cosmetic11:55
Keybukmountall leaves the device field as "none" for nodev filesystems deliberately11:55
ionBtw, using the vbox guest filesystem that mounts host directories in fstab caused mountall-shell to activate because the module wasn’t loaded yet. The system booted fine otherwise, and after the init script loaded the vboxvfs module, just exiting the shell finished the job. I wonder what could be done?12:48
ionHardcoding special cases for everything like that doesn’t sound very appealing.12:48
Keybukthe shell is probably over-sensitive12:48
Keybukreally you only want to know whether mountall failed to mount an FHS filesystem12:49
Keybuksorry, want to *fail* if12:49
ionYeah12:49
Keybukif some other filesystem marked "auto" fails, it's not realllly critical12:49
Keybukbut I'm not quite sure yet how to strike the balance12:49
Keybukesp. since debugging, it's sane to leave it slightly over-keen for now12:49
ionHow about /etc/mountall/fs/networking: ‘until network: nfs nfs4 smbfs...’ and /etc/mountall/fs/vbox (installed by vbox-guest-utils): ‘until vbox: vboxsf’ and have the if-up.d and vbox-guest-utils scripts send a message to mountall about ‘network’ or ‘vbox’ being available?12:54
ionAnd have mountall delay the mounting of such filesystem types until the message12:54
ionPerhaps instead of sending a message, launch a parallel mountall with a ‘network’/‘vbox’ parameter.12:55
ionOr something :-P12:55
Keybukwell, that's basically how network works now13:02
Keybukyou send it SIGUSR1 and it retries them13:02
Keybukwe could just add vboxsf to that set13:02
Keybukthe bit that needs fixing is that failure to mount them can be temporary ;)13:02
Keybuk(ie. it's ok to try again later)13:03
ionTrue13:06
Keybukmight be worth applying the same to outside-of-FHS filesystems?13:10
Keybukit's ok for them to fail to mount, just retry?13:10
ionYeah13:11
=== robbiew-afk is now known as orbbiew
=== orbbiew is now known as robbiew
ionkeybuk: http://pastebin.com/m17081a2f15:51
mbieblRegarding the ntfs issue: The boot simply hangs at this point16:30
mbieblLABEL=Data      /mnt/data       ntfs-3g user,auto     0       016:30
mbieblis the fstab entry16:30
ion(An irrelevant comment: /mnt is for temporary mounts. If it’s in fstab, it’s not temporary. :-P)16:47
sorenI think, actually, /mnt is for temporary mount (singular).16:49
ionTrue16:49
soren(i.e. not mounting stuff on subdirs of /mnt, but on /mnt itself)16:50
ionUnless you need to have two temporary mounts at the same time. :-P But yeah, if you only need one, mount foo /mnt is quick and nice.16:51
ionkeybuk: Regarding the pseudocode above, the try-again-if-mount-failed thing would become a simple ‘while’ loop around some code in a single function instead of additional logic buried in the a callback function somewhere.16:54
mbieblion: fwiw, it doesn't really matter if I mount it at /mnt/data or /data ;-)17:08
ionYou lose the ability to mount a temporary partition without having to do a whopping amount of work to make a new directory first. ;-)17:09
mbieblion: What I meant was, that it doesn't matter wrt my failing boot17:16
ionAs i said, my nitpicking was an irrelevant comment. :-)17:16
mbieblIt seems, robbiew just found the cause for the failing ntfs mount17:18
ionWhat was it?17:18
robbiew;)17:19
mbieblmountall tries to run fsck.ntfs17:19
mbieblwhich is not available17:20
mbieblit also seems to pass a -n option to ntfs-3g, which it doesn't understand17:21
ionHuh. If i’m reading the code right, when passno = 0, it shouldn’t try to fsck it.17:22
=== robbiew is now known as robbiew-afk
=== robbiew-afk is now known as robbiew_
ionkeybuk: The equivalent could be nice for libnih as well. Too bad nih_log_message doesn’t know the caller’s going to abort. http://launchpadlibrarian.net/31650305/glib2.0_2.21.6-0ubuntu1_2.21.6-0ubuntu2.diff.gz19:23
=== robbiew_ is now known as robbiew
ionhttp://developers.slashdot.org/story/09/09/11/1139212/Apple-Open-Sources-Grand-Central-Dispatch20:15
sadmac2ion: just so long as their blocks implementation doesn't require trampolines20:19
ionDunno20:19
ionI’ve only read http://arstechnica.com/apple/reviews/2009/08/mac-os-x-10-6.ars/12 and the next page so far.20:19
sadmac2ion: it'd probably have to get as far as gcc before we knew20:21
Keybukmbiebl: I don't see what mountall is doing that mount -a doesn't here20:56
Keybukremember, mountall isn't passing -n to ntfs-3g, _mount_ is20:56
Keybuklikewise mountall isn't calling fsck.ntfs, _fsck_ is20:56
robbiewKeybuk: in any case...*somethings* broken that we would need to fix before release, right?21:01
Keybukoh, definitely21:01
KeybukI just won't yet understand why mountall is failing when the old script didn't21:01
Keybukbut that's ok21:01
Keybukthis is just a bug21:02
Keybukin some ways I'm glad we're finding some now :p21:02
robbiewyep21:03
Keybukrobbiew: can you mail me your /etc/fstab as well?21:05
robbiewsure21:06
ionkeybuk: I take it you noticed my messages above? :-)21:08
Keybukfsck /windows [1581] exited normally21:08
Keybukah21:08
Keybukso it complains about no fsck.ntfs but doesn't actually consider it an error21:08
Keybukion: I did, but now is not really the time to suddenly think about rewriting something with some neat library that would need an MIR, etc. etc.21:08
Keybukmountall: mount /windows [1590] terminated with status 1121:09
Keybukmountall: Filesystem could not be mounted: /windows]21:09
Keybukhmm21:09
sadmac2ion: I'm betting the gcc implementation of blocks would end up using trampolines21:09
Keybukeven the exit status makes no sense21:09
sadmac2ion: and consequently be a force of overwhelming evil21:10
Keybukmount status 11 means21:10
Keybuk"user interrupted a system error whilst permission denied"21:10
Keybuk!!21:10
* Keybuk thinks ntfs-3g is just broken wrt compatibility with mount21:10
robbiewI didn't touch anythin 21:10
robbiewI can run 'mount /windows' after login...no problems21:10
robbiewfwiw21:10
Keybukyeah that's what doesn't make sense21:11
Keybukbecause that's basically what mountall does ;)21:11
Keybukit seems it doesn't like the "-n"21:11
robbiew/dev/sda1 on /windows type fuseblk (rw,nosuid,nodev,allow_other,default_permissions,blksize=4096)21:11
ionI didn’t mean that would have to be done for karmic, but it would be... interesting. :-) In fact, i might be interested in refactoring (wouldn’t really need a full rewrite) the code within the next n years, if you ever bless that idea. :-P21:11
* Keybuk may have to fix ntfs-3g to support -n21:11
Keybukion: I'm hoping to understand the corner cases enough to recode most of mountall into Upstart itself - it should be largely flexible enough eventually21:12
Keybukdepends really21:12
ionAlright21:12
Keybukright, according to mount ntfs-3g should support the -s, -f, -n, -v & -o options21:14
Keybuksince those are the mounts that mount passes to mount.*21:14
Keybukand looking at the ntfs-3g code, it's probably ok to workaround in mountall either21:15
Keybukso this should be simple enough21:15
ionkeybuk: About my patches, i ended up creating a hash of dev_ids and then converting it to a string array in update_mount_dev_ids, and then iterating over the string array when locking. That’s only because i implemented it as a string array first and then started using the hash to dismiss duplicate dev_ids. I might as well put the hash that’s generated anyway to the Mount struct and iterate over that when locking. Should be a quick enough change. Do you agree?21:19
Keybukyup21:19
ionTesting in a vm...21:35
ionAh, no wonder i got no debug output. console output missing.21:39
ionSeems to work. http://heh.fi/patches/mountall/ updated.21:43
ionOh, i think i noticed a bug with the fsck_queue list. I’ll fix.21:51
sadmac2Keybuk: please see new upstart-devel email (and old one for that matter :)21:59
ionkeybuk: Updated once again.22:27
=== robbiew is now known as robbiew-afk

Generated by irclog2html.py 2.7 by Marius Gedminas - find it at mg.pov.lt!