/srv/irclogs.ubuntu.com/2014/12/17/#ubuntu-kernel.txt

infinityzequence: Merry Christmas: https://bugs.launchpad.net/ubuntu/+source/linux-lowlatency/+bug/140324207:19
ubot5Launchpad bug 1403242 in Kernel SRU Workflow "linux-lowlatency: <version to be filled> -proposed tracker" [Medium,In progress]07:19
infinityzequence: Note that Andy and I did the previous one, so make sure you're picking up our changes and not working in dirty local trees.07:20
=== zyga-afk is now known as zyga
=== lifeless_ is now known as lifeless
=== jdstrand_ is now known as jdstrand
hallyni've got a potentially stupid question about 'cat' and stat(2).  When I cat a fuse file, it returns empty unless the getattr() function returns a non-zeor size.  But stat(2) on /proc/cpuinfo returns 0 size, while cat /proc/cpuinfo certainly works.17:14
hallynjust wondering what cat is actually looking at17:20
hallynbc it seems to be treating procfiles differently17:20
infinityhallyn: That may actually be a question about fuse.17:41
hallyntrue17:42
hallynyeah actually i think i get it,17:42
hallynif you do open(file); fseek(f, 0, SEEK_END); ftell(f); then fuse returns what it got fro mgetattr, i bet17:42
hallynthough no, you get 0 in a procfile, 17:43
hallynbut yeah i'm sur eit's something fuse is doing17:43
hallynso i'll just return the max possible size and screw it :)17:43
apwhallyn, have you strace'd cat in both cases to see what cat actually does ?17:44
hallynapw: oddly, in both caess it does open; fstat;  and with /proc/cpuinfo you can see fstat returns st-size=0.  but it goes on to read the write # chars.  no seek/ftell.  magic17:52
apwhallyn, and for your fuse it does what, open; fstat; seek; ftell; fails ?17:53
ckingthe code that does the stat with st_size=0 may of course be ignoring that field, it may be stat'ing the file for other reasons17:55
hallynapw: no, it doesn't seek/ftell.  does the exact same things as with /proc17:55
hallyncking: right, but the point is that when my fusefs returns st_size = 0, then 'cat somefile' always returns nothing,17:55
hallyneven though my read() is defined17:55
apwright it is fstating the file, not for its size, but to check that in and out arn't the same17:55
hallynwhen i use a non-zero, then it does17:56
hallynin and out?17:56
apwis it chekcing the major minors and the like17:56
apwit is making sure you arn't doing like cat <foo >foo17:56
apwcat foo >foo etc17:56
hallynoh17:56
apwhallyn, and it is then oging to "read"17:57
apwwhat does the failed read case look like17:57
apwin the strace17:57
ckingof course, reading from /proc/.. one can never really tell what the size will be until it is read, so fstat won't work on getting the size17:59
apwright, and that shouldn't matter, cause it does "read" regardless17:59
hallyncking and the same is true of my fusefs, ideally, since it sits on top of proc and cgroups17:59
apwhallyn, what does it return for inode numbers and the like17:59
apwthose being "always the same" etc might throw it18:00
hallynapw: http://paste.ubuntu.com/9552719/ , so actually i bet fuse is the one saying "nothing to see here s oi wont' call read()"18:00
apwand its behaviour changes depending if the stat returns that it is not REG18:01
hallyn(which makes sense as i'm pretty sure i verified this with manual read(2) before)18:01
hallynbut the files are REG18:01
hallynso must be fuse, in kernel or libfuse18:01
hallynit's a pain :)  but not a blocker at this point18:01
apwhallyn, so this is a fuse remount of a /proc ?18:01
apwhallyn, and yes, we did a real read, in the hope there was data, and fuse said 0 bytes18:03
hallynapw: yeah it's an overlay for cpuinfo, meminfo, etc.  (file-by-file, not the whoel fs)18:08
hallynapw: still wonder whether it's libfuse optimizing rather than the kernel... probably 18:08
apwit might well make sense for it to use the underlying stat info to tell us the attmept to read is pointless, but ... odd18:08
infinityhallyn: It certainly still seems to be reading it, so it's fuse returning the empty file.18:29
hallyninfinity: yeah, it's still possible that libfuse intercepts, but that would seem even sillier than the kernel fuse module doing so18:30
infinityhallyn: Line 37 is clearly a 0-length read, so your assertion that the read doesn't happen if the stat is 0 is false.18:31
infinityhallyn: It stats, it reads, it gets nothing from fuse, you get nothing on stdout.18:31
infinityhallyn: Oh, I have no opinion if it's userspace or the kernel module, but it's clearly the filesystem returning nothing.18:32
hallyninfinity: i'm asserting that *my* read isn't being called18:35
infinityhallyn: Curious.  cat's sure is.18:36
hallyncat's?18:37
hallynyeah the *system* call is being called.  18:37
hallynso i guess i need to see whether i can 'trick' fuse into calling read regardless18:38
hallyn*calling my read handler18:38
hallyn(we have some naming problems here :)18:38
apwhallyn, it optimising it out, given it could work seems wrong18:38
infinityhallyn: Well, the system call is being called, but returning no content.18:39
infinityhallyn: So this still seems to be an issue with the filesystem.18:39
hallynagreed18:40
retabella Prob with 3.18.0-7 (own build)19:01
retabellhttp://paste.debian.net/137128/19:01
vmesonsubu-14.10 - unwanted suspend: http://pastebin.com/7Gr11Q3F -- I might get around to reporting a bug.. :)19:42
apwretabell, i do not get that with the builds of teh same tip i am running19:54
retabellok thx20:04
=== ara is now known as Guest47294
=== mwhudson_ is now known as mwhudson
ChrisP1948After googling for this which I 'think' has been causing lockups [drm:i915_hangcheck_elapsed] *ERROR* Hangcheck timer elapsed... render ring idle22:01
ChrisP1948I filed a bug with Ubuntu - https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1402331 and it was suggested in a comment that I update my bios22:02
ubot5Launchpad bug 1402331 in linux (Ubuntu) "System will periodically lockup with [drm:i915_hangcheck_elapsed] *ERROR* Hangcheck timer elapsed... render ring idle" [Low,Incomplete]22:02
ChrisP1948I also, after  more googling found that others not using Ubuntu have experienced this issue so I added to a bug report here https://bugs.freedesktop.org/show_bug.cgi?id=75394 22:04
ubot5Freedesktop bug 75394 in DRM/Intel "System hangs randomly with error message: [drm:i915_hangcheck_elapsed] *ERROR* Hangcheck timer elapsed... render ring idle" [Critical,Needinfo]22:04
ChrisP1948Today I received a comment on this bug wanting me to install and test the latest 3.18 kernel which so far I haven't done as I don't want to mess up my system.22:05
ChrisP1948Earlier today I came home to a black screen with a mouse cursor only and had to reboot using the power button. Though the system kept working in the background22:06
ChrisP1948I could not find the above error in my syslog. I'm imputing all this looking for some guidance22:07

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