Re: [Elementary-dev-community] Fixin' Files
Better late than never, isn't it? Files linked against Electric Fence: https://code.launchpad.net/~junrrein/pantheon-files/files-electricfence/ Files linked against Duma (fork of Electric Fence): https://code.launchpad.net/~junrrein/pantheon-files/files-duma The first one doesn't seem to load Electric Fence on execution running. I can get efence to load dynamically (for any executable) by running export LD_PRELOAD=libefence.so.0.0. Unfortunately, none of them seem to be useful. They make Files segfault on startup the first time something from Gtk (or GLib?) is called. I hope you find this useful anyway! What do you think about using Valgrind (via the Valkirye GUI)? 2013/7/23, José M. Benítez jmiguelbeni...@gmail.com: Hi, all! I've been looking for a way to start contributing to EOS, but I haven't been able to find where. Maybe this is too much to start with, I don't know, but I could use some guidance. 2013/7/23 Manish Sinha manishsi...@ubuntu.com On Mon, Jul 22, 2013 at 3:26 PM, Sergey Shnatsel Davidoff ser...@elementaryos.org wrote: First, I have to add -lefence to the C compiler parameters in CMake and I have little idea how to do that. This will make Files segfault exactly where the original corruption happens and ease debugging greatly. It's much more fun than trying to track down the crashes in regular builds! I can give it a try SET(GCC_EF_COMPILE_FLAGS -fefence) SET(GCC_EF_LINK_FLAGS-lefence) SET( CMAKE_C_FLAGS ${CMAKE_C_FLAGS} ${GCC_EF_COMPILE_FLAGS} ) SET( CMAKE_EXE_LINKER_FLAGS ${CMAKE_EXE_LINKER_FLAGS} ${GCC_EF_LINK_FLAGS} ) Then use LD_PRELOAD Second, I totally suck at OOP so I probably won't be able to fix the crashes even if I track them down. Anyone up for joining me in fixing this? Finding is cause of the problem usually the toughest part. I can try, but since my knowledge of C, memory profiling etc is limited, I can't guarantee. - Manish -- Mailing list: https://launchpad.net/~elementary-dev-community Post to : elementary-dev-community@lists.launchpad.net Unsubscribe : https://launchpad.net/~elementary-dev-community More help : https://help.launchpad.net/ListHelp -- Mailing list: https://launchpad.net/~elementary-dev-community Post to : elementary-dev-community@lists.launchpad.net Unsubscribe : https://launchpad.net/~elementary-dev-community More help : https://help.launchpad.net/ListHelp
Re: [Elementary-dev-community] Fixin' Files
Hi, all! I've been looking for a way to start contributing to EOS, but I haven't been able to find where. Maybe this is too much to start with, I don't know, but I could use some guidance. 2013/7/23 Manish Sinha manishsi...@ubuntu.com On Mon, Jul 22, 2013 at 3:26 PM, Sergey Shnatsel Davidoff ser...@elementaryos.org wrote: First, I have to add -lefence to the C compiler parameters in CMake and I have little idea how to do that. This will make Files segfault exactly where the original corruption happens and ease debugging greatly. It's much more fun than trying to track down the crashes in regular builds! I can give it a try SET(GCC_EF_COMPILE_FLAGS -fefence) SET(GCC_EF_LINK_FLAGS-lefence) SET( CMAKE_C_FLAGS ${CMAKE_C_FLAGS} ${GCC_EF_COMPILE_FLAGS} ) SET( CMAKE_EXE_LINKER_FLAGS ${CMAKE_EXE_LINKER_FLAGS} ${GCC_EF_LINK_FLAGS} ) Then use LD_PRELOAD Second, I totally suck at OOP so I probably won't be able to fix the crashes even if I track them down. Anyone up for joining me in fixing this? Finding is cause of the problem usually the toughest part. I can try, but since my knowledge of C, memory profiling etc is limited, I can't guarantee. - Manish -- Mailing list: https://launchpad.net/~elementary-dev-community Post to : elementary-dev-community@lists.launchpad.net Unsubscribe : https://launchpad.net/~elementary-dev-community More help : https://help.launchpad.net/ListHelp -- Mailing list: https://launchpad.net/~elementary-dev-community Post to : elementary-dev-community@lists.launchpad.net Unsubscribe : https://launchpad.net/~elementary-dev-community More help : https://help.launchpad.net/ListHelp
[Elementary-dev-community] Fixin' Files
Hey guys, So I didn't depart today as it was planned, so I'm up to a little hackathon. Files has annoyingly crashy for months, and it still IS annoyingly crashy. I can't order copying a large amount of data and be sure that it gets copied before Files decides it's time to crash. And we don't have Apport crash retracer working anymore ( http://pad.lv/1191366) and I'm pretty sure the segfault happens not where the original bug is, but much later on. To track down the original bug(s) causing that I'm going to compile it with ElectricFence (http://en.wikipedia.org/wiki/Electric_Fence), run it in GDB, see where it segfaults and post backtraces. What I need help with is: First, I have to add -lefence to the C compiler parameters in CMake and I have little idea how to do that. This will make Files segfault exactly where the original corruption happens and ease debugging greatly. It's much more fun than trying to track down the crashes in regular builds! Second, I totally suck at OOP so I probably won't be able to fix the crashes even if I track them down. Anyone up for joining me in fixing this? -- Sergey Shnatsel Davidoff OS architect @ elementary -- Mailing list: https://launchpad.net/~elementary-dev-community Post to : elementary-dev-community@lists.launchpad.net Unsubscribe : https://launchpad.net/~elementary-dev-community More help : https://help.launchpad.net/ListHelp
Re: [Elementary-dev-community] Fixin' Files
I wonder if you would have any luck trying to get someone in #elementary-dev to help you out? On Tue, Jul 23, 2013 at 9:52 AM, Julian Unrrein junrr...@gmail.com wrote: Hi Sergey, I really aprecciate what you are going to do. Unfortunately, I have little free time right now, so I doubt I will be able to help with this until later. With that said: 1 - I could make crash-digger work for a while without errors. When I say for a while I mean that I interrupted it manually, because it was just for testing. Cody knows about this. I would offer my system to run crash-digger fully (to see if it works), but I have very little bandwidth (256 kbps) in the town I am right now. I may be able to do this in roughly a month. 2 - No idea about the CMake thing. However, I noticed something about Electric Fence. DUMA (http://duma.sourceforge.net/) allows dynamic linking without special compiling (if I understood correctly) by running export LD_PRELOAD=libduma.so.0.0 before. Maybe Electric Fence may be able to run in this way too? Cheers 2013/7/22, Sergey Shnatsel Davidoff ser...@elementaryos.org: Hey guys, So I didn't depart today as it was planned, so I'm up to a little hackathon. Files has annoyingly crashy for months, and it still IS annoyingly crashy. I can't order copying a large amount of data and be sure that it gets copied before Files decides it's time to crash. And we don't have Apport crash retracer working anymore ( http://pad.lv/1191366) and I'm pretty sure the segfault happens not where the original bug is, but much later on. To track down the original bug(s) causing that I'm going to compile it with ElectricFence (http://en.wikipedia.org/wiki/Electric_Fence), run it in GDB, see where it segfaults and post backtraces. What I need help with is: First, I have to add -lefence to the C compiler parameters in CMake and I have little idea how to do that. This will make Files segfault exactly where the original corruption happens and ease debugging greatly. It's much more fun than trying to track down the crashes in regular builds! Second, I totally suck at OOP so I probably won't be able to fix the crashes even if I track them down. Anyone up for joining me in fixing this? -- Sergey Shnatsel Davidoff OS architect @ elementary -- Mailing list: https://launchpad.net/~elementary-dev-community Post to : elementary-dev-community@lists.launchpad.net Unsubscribe : https://launchpad.net/~elementary-dev-community More help : https://help.launchpad.net/ListHelp -- Mailing list: https://launchpad.net/~elementary-dev-community Post to : elementary-dev-community@lists.launchpad.net Unsubscribe : https://launchpad.net/~elementary-dev-community More help : https://help.launchpad.net/ListHelp
Re: [Elementary-dev-community] Fixin' Files
A follow up to my previous mail: Using export LD_PRELOAD= ... doesn't seem to work. We'll have to do the CMake thing. 2013/7/22, Josh Benham joshben...@gmail.com: I wonder if you would have any luck trying to get someone in #elementary-dev to help you out? On Tue, Jul 23, 2013 at 9:52 AM, Julian Unrrein junrr...@gmail.com wrote: Hi Sergey, I really aprecciate what you are going to do. Unfortunately, I have little free time right now, so I doubt I will be able to help with this until later. With that said: 1 - I could make crash-digger work for a while without errors. When I say for a while I mean that I interrupted it manually, because it was just for testing. Cody knows about this. I would offer my system to run crash-digger fully (to see if it works), but I have very little bandwidth (256 kbps) in the town I am right now. I may be able to do this in roughly a month. 2 - No idea about the CMake thing. However, I noticed something about Electric Fence. DUMA (http://duma.sourceforge.net/) allows dynamic linking without special compiling (if I understood correctly) by running export LD_PRELOAD=libduma.so.0.0 before. Maybe Electric Fence may be able to run in this way too? Cheers 2013/7/22, Sergey Shnatsel Davidoff ser...@elementaryos.org: Hey guys, So I didn't depart today as it was planned, so I'm up to a little hackathon. Files has annoyingly crashy for months, and it still IS annoyingly crashy. I can't order copying a large amount of data and be sure that it gets copied before Files decides it's time to crash. And we don't have Apport crash retracer working anymore ( http://pad.lv/1191366) and I'm pretty sure the segfault happens not where the original bug is, but much later on. To track down the original bug(s) causing that I'm going to compile it with ElectricFence (http://en.wikipedia.org/wiki/Electric_Fence), run it in GDB, see where it segfaults and post backtraces. What I need help with is: First, I have to add -lefence to the C compiler parameters in CMake and I have little idea how to do that. This will make Files segfault exactly where the original corruption happens and ease debugging greatly. It's much more fun than trying to track down the crashes in regular builds! Second, I totally suck at OOP so I probably won't be able to fix the crashes even if I track them down. Anyone up for joining me in fixing this? -- Sergey Shnatsel Davidoff OS architect @ elementary -- Mailing list: https://launchpad.net/~elementary-dev-community Post to : elementary-dev-community@lists.launchpad.net Unsubscribe : https://launchpad.net/~elementary-dev-community More help : https://help.launchpad.net/ListHelp -- Mailing list: https://launchpad.net/~elementary-dev-community Post to : elementary-dev-community@lists.launchpad.net Unsubscribe : https://launchpad.net/~elementary-dev-community More help : https://help.launchpad.net/ListHelp
Re: [Elementary-dev-community] Fixin' Files
On Mon, Jul 22, 2013 at 5:04 PM, Julian Unrrein junrr...@gmail.com wrote: Using export LD_PRELOAD= ... doesn't seem to work. We'll have to do the CMake thing. LD_PRELOAD just loads this library before any other library. I am still not sure it will work without CMake thing because though the loader has loaded it, the linker does not know to link it with. These things are complex. It would be great if someone with significant knowledge can guide us. - Manish -- Mailing list: https://launchpad.net/~elementary-dev-community Post to : elementary-dev-community@lists.launchpad.net Unsubscribe : https://launchpad.net/~elementary-dev-community More help : https://help.launchpad.net/ListHelp
Re: [Elementary-dev-community] Fixin' Files
On Mon, Jul 22, 2013 at 3:26 PM, Sergey Shnatsel Davidoff ser...@elementaryos.org wrote: First, I have to add -lefence to the C compiler parameters in CMake and I have little idea how to do that. This will make Files segfault exactly where the original corruption happens and ease debugging greatly. It's much more fun than trying to track down the crashes in regular builds! I can give it a try SET(GCC_EF_COMPILE_FLAGS -fefence) SET(GCC_EF_LINK_FLAGS-lefence) SET( CMAKE_C_FLAGS ${CMAKE_C_FLAGS} ${GCC_EF_COMPILE_FLAGS} ) SET( CMAKE_EXE_LINKER_FLAGS ${CMAKE_EXE_LINKER_FLAGS} ${GCC_EF_LINK_FLAGS} ) Then use LD_PRELOAD Second, I totally suck at OOP so I probably won't be able to fix the crashes even if I track them down. Anyone up for joining me in fixing this? Finding is cause of the problem usually the toughest part. I can try, but since my knowledge of C, memory profiling etc is limited, I can't guarantee. - Manish -- Mailing list: https://launchpad.net/~elementary-dev-community Post to : elementary-dev-community@lists.launchpad.net Unsubscribe : https://launchpad.net/~elementary-dev-community More help : https://help.launchpad.net/ListHelp