On Thu, Jul 31, 2014 at 05:31:42PM -0500, Sean Vig wrote: > Well, so I didn't know how to use gdb properly.... but I found > https://wiki.python.org/moin/DebuggingWithGdb
Ah yeah, I probably had the debug symbols laying around from some other thing I was doing. > I added the backtrace, py-bt, and py-list output to the gist: > > https://gist.github.com/flacjacket/118e3b3d69e076e26c11 So I just tried with ~/packages/qtile pointing at a46a846b59612e774c39fef429dd386161d8d8e3 but it didn't manifest for me. I would've said that it was different python versions (I know you're a fedora user), but travis is on 2.7.8 and it still fails, so I'm not sure what the deal is, unless the debian python is somehow carrying patches that didn't make it upstream. Another thought: earlier you fixed a bug in xcffib which was (likely) caused by the ensure_connected decorator and its fanciness. That decorator doesn't really do anything, and we know its confused the interpreter before. Does this problem go away if you just take out all the @ensure_connected-s? Tycho > > On Thu, Jul 31, 2014 at 2:14 PM, Tycho Andersen <[email protected]> wrote: > > > On Thu, Jul 31, 2014 at 12:16:14PM -0500, Sean Vig wrote: > > > Here's what I get from the backtrace: > > > > > > 2014-07-31 12:05:40,601 qtile call:91 Command: move_floating((10, 20, > > 42, > > > 42), {}) > > > > > > Program received signal SIGSEGV, Segmentation fault. > > > tupledealloc (op=0x7fffeabfd7e0) at > > > > > /var/tmp/portage/dev-lang/python-2.7.7/work/Python-2.7.7/Objects/tupleobject.c:222 > > > 222 > > > > > /var/tmp/portage/dev-lang/python-2.7.7/work/Python-2.7.7/Objects/tupleobject.c: > > > No such file or directory. > > > (gdb) > > > > > > Not sure how useful that is... > > > > Hmm, that is poopy. I was hoping for something at least inside cffi. I > > will try and reproduce it tonight and take a look myself, but you're > > right, at first glance it does sound like some xcffib/cffi bug. > > > > Tycho > > > > > > > > On Thu, Jul 31, 2014 at 11:53 AM, Tycho Andersen <[email protected]> wrote: > > > > > > > Hi Sean, > > > > > > > > On Thu, Jul 31, 2014 at 11:35:57AM -0500, Sean Vig wrote: > > > > > Hey, > > > > > > > > > > In working on [1], I ran into a weird test failure in > > test_manager.py: > > > > > test_default_float that happens in Python 2 [2] but not Python 3 > > [3]. I > > > > > thought this was related to the changes in that PR, since Python 2 > > tests > > > > > had run successfully before for the cffi branch [4]. However, I found > > > > that > > > > > I could reproduce the failure in [2], even from the main cffi branch. > > > > > > > > > > If anyone else could try to replicate this, or possibly track down > > the > > > > seg > > > > > fault, I'd appreciate it. I've made a gist with everything to > > reproduce > > > > it > > > > > here: > > > > > > > > > > https://gist.github.com/flacjacket/118e3b3d69e076e26c11 > > > > > > > > > > Here's what to do: > > > > > > > > > > 1. Checkout the cffi branch from > > > > https://github.com/tych0/qtile/tree/cffi > > > > > (you can get this in your git repo doing something like: git remote > > add > > > > > tych0 https://github.com/tych0/qtile.git; git fetch tych0; git > > checkout > > > > -t > > > > > tych0/cffi). You'll need all the appropriate dependencies (see > > > > > https://github.com/tych0/qtile/blob/cffi/.travis.yml) > > > > > > > > > > 2. Download test.py and test_config.py from the gist (I put them in > > ~), > > > > > you'll need to change the `sys.path.insert(0, > > '/home/sean/qtile/qtile')` > > > > > lines to point to your git directory > > > > > > > > > > 3. Run the commands in run_tests.sh in the gist. You can run these > > > > commands > > > > > in separate terminals if you want to see output separately. Here > > again, > > > > > I've hardcoded my git directory, so you'll have to change that. Note > > the > > > > > location of test.py and test_config.py are hardcoded, modify if you > > put > > > > > them somewhere other than ~. > > > > > > > > > > Trying to track it down, I get a segfault coming from > > > > libqtile/xcbq.pyL534, > > > > > `return self.conn.conn.core.ConfigureWindow(self.wid, mask, values)` > > when > > > > > running the command `c.window.move_floating(10, 20, 42, 42)`, which > > makes > > > > > me think it's an xcffib problem (????). Changing python2 to python3 > > (2.7 > > > > to > > > > > 3.3), my test.py script runs successfully. > > > > > > > > What's the backtrace if you run qtile's python inside gdb? I think can > > > > do it via something like: > > > > > > > > DISPLAY=:1 gdb python2 > > > > (gdb) run /home/sean/qtile/qtile/bin/qtile -l INFO -c ~/test_config.py > > > > > > > > Tycho > > > > > > > > > Any feedback on this would be greatly appreciated, thanks! > > > > > > > > > > Sean > > > > > > > > > > [1] https://github.com/tych0/qtile/pull/5 > > > > > [2] https://travis-ci.org/tych0/qtile/jobs/31291683 Python 2.7, see > > > > first > > > > > error in test.test_manager.test_default_float > > > > > [3] https://travis-ci.org/tych0/qtile/jobs/31291687 above tests > > pass for > > > > > Python 3.3 > > > > > [4] https://travis-ci.org/tych0/qtile/builds/31285277 Python 2.7 > > passes > > > > here > > > > > > > > > > -- > > > > > You received this message because you are subscribed to the Google > > > > Groups "qtile-dev" group. > > > > > To unsubscribe from this group and stop receiving emails from it, > > send > > > > an email to [email protected]. > > > > > For more options, visit https://groups.google.com/d/optout. > > > > > > > > -- > > > > You received this message because you are subscribed to the Google > > Groups > > > > "qtile-dev" group. > > > > To unsubscribe from this group and stop receiving emails from it, send > > an > > > > email to [email protected]. > > > > For more options, visit https://groups.google.com/d/optout. > > > > > > > > > > -- > > > You received this message because you are subscribed to the Google > > Groups "qtile-dev" group. > > > To unsubscribe from this group and stop receiving emails from it, send > > an email to [email protected]. > > > For more options, visit https://groups.google.com/d/optout. > > > > -- > > You received this message because you are subscribed to the Google Groups > > "qtile-dev" group. > > To unsubscribe from this group and stop receiving emails from it, send an > > email to [email protected]. > > For more options, visit https://groups.google.com/d/optout. > > > > -- > You received this message because you are subscribed to the Google Groups > "qtile-dev" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to [email protected]. > For more options, visit https://groups.google.com/d/optout. -- You received this message because you are subscribed to the Google Groups "qtile-dev" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. For more options, visit https://groups.google.com/d/optout.
