On Thu, 2010-05-20 at 04:13 +0300, Maxim Levitsky wrote: > On Wed, 2010-05-19 at 17:34 -0700, Jesse Barnes wrote: > > On Fri, 9 Apr 2010 15:10:50 -0700 > > Jesse Barnes <jbarnes at virtuousgeek.org> wrote: > > > > > This set of 3 patches makes it a little more likely we'll get panic > > > output onto the screen even when X is running, assuming a KMS enabled > > > stack anyway. > > > > > > It gets me from a blank or very sparsely populated black screen at > > > panic time, to one including the full backtrace and panic output at > > > panic time (tested with "echo c > /proc/sysrq-trigger" from an X > > > session). > > > > > > It doesn't cover every case; for instance I think it'll fail when X has > > > disabled the display, but those cases need to be handled with separate > > > patches anyway (need to add atomic DPMS paths for instance). > > > > > > Anyway, please test these out and let me know if they work for you. > > > > Ping Linus & Dave again. Have you guys tried these? Really, it's cool. > > > Second that, just tested these patches, and these work perfectly. > One more reason for me to dump nvidia driver for nouveau.
Unfortunately I spoke too soon. After suspend to ram, system doesn't properly resume now. My system is based on nvidia G86, I use latest nouveau drivers, and suspend with compiz running. I also patched kernel not to do vt switch on suspend/resume: diff --git a/drivers/gpu/drm/nouveau/nouveau_state.c b/drivers/gpu/drm/nouveau/nouveau_state.c index 062b7f6..b3ef08b 100644 --- a/drivers/gpu/drm/nouveau/nouveau_state.c +++ b/drivers/gpu/drm/nouveau/nouveau_state.c @@ -31,6 +31,7 @@ #include "drm_crtc_helper.h" #include <linux/vgaarb.h> #include <linux/vga_switcheroo.h> +#include <linux/suspend.h> #include "nouveau_drv.h" #include "nouveau_drm.h" @@ -771,6 +772,8 @@ int nouveau_load(struct drm_device *dev, unsigned long flags) int ret = nouveau_card_init(dev); if (ret) return ret; + + pm_set_vt_switch(0); } return 0; Best regards, Maxim Levitsky