Good morning, I am currently working on cache invalidation problem in CaaSP (bsc#1035746). From top-level view, bootloader store some storage devices in cache due to performance reasons ( in past we get bug report from real that with 1k disks, installation took more then 8 hours just to display bootloader proposal ) and what is problem is bug in invalidating that cache when bootloader storage changed. ( so it is true that chace invalidation is one of two hard things :) [1] ) In CaaSP and for master I will solve it using Storage.GetTargetChangeTime where I compare it and if different I invalidate cache. Now lets get to storage-ng. I try to port this fix there. So my first question is, what is similar equivalent in storage-ng which allows me to see if there is change in storage, so bootloader proposal is no longer valid? When I try to reproduce it on the latest storage-ng iso, I found even more annoying behavior, that when you go to installation summary and then go back to storage proposal and modify it ( I use guided setup with lvm ) and then go back to installation summary, it crashes badly ( segfault ). You can try it on your own with recent enough storage-ng DVD. In general my suspicion is that cache is not just no longer valid for root device, but because bootloader store storage objects, it is no longer valids. And here is my second question, what is recommended way to debug such issues ( so find where invalid object is hold ) ? I reproduce issue using plane libstorage-ng [2], so I try to debug this minimal case. I use gdb and valgrind. I see there that it is destroyed when device graph is destroyed. But I do not find method how to find where in ruby lives object that cause segfault. Any ideas how to recognize it? Ideally way that works also when issue happen on user side. Also I have to say, that from user POV, segfault and ruby exception is very very different. When I get ruby exception, I see popup saying what is a problem. I can continue. I was asked to report bug. And the most important part, I can get logs as environment still lives! When I get segfault, I get quick black screen followed by red area on blue which mention Error occured during installation without any details and what is more important: I do not find way how to get any logs, at least y2signal log will be useful!! So my user experience is very different, as in first case I see reason, I am asked to write bug report and I also can get logs when error happen. In second case I get only generic error and cannot get logs, so if this happen in openQA we also have problem to get it and we have to reproduce it ourself. We probably need to enhance a bit linuxrc to handle this more nicely and at least allow to get logs from segfaulted installation. Thanks for help with any of the question or any feedback. Josef [1] https://martinfowler.com/bliki/TwoHardThings.html [2] https://gist.github.com/jreidinger/b37ae595b3c3d8519453cd3c9fc0f198 -- To unsubscribe, e-mail: yast-devel+unsubscribe@opensuse.org To contact the owner, e-mail: yast-devel+owner@opensuse.org