All of lore.kernel.org
 help / color / mirror / Atom feed
From: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>
To: Gordan Bobic <gordan@bobich.net>
Cc: xen-devel@lists.xen.org,
	Stefano Stabellini <stefano.stabellini@eu.citrix.com>
Subject: Re: Device Reset on Nvidia GPUs
Date: Fri, 15 Nov 2013 09:40:04 -0500	[thread overview]
Message-ID: <20131115144004.GA28448@phenom.dumpdata.com> (raw)
In-Reply-To: <b12b338169a67117dca97166e2466d14@mail.shatteredsilicon.net>

On Fri, Nov 15, 2013 at 02:29:39PM +0000, Gordan Bobic wrote:
> On Fri, 15 Nov 2013 14:27:21 +0000, Stefano Stabellini
> <stefano.stabellini@eu.citrix.com> wrote:
> >On Fri, 15 Nov 2013, Gordan Bobic wrote:
> >>I've noticed that nouveau driver has a sysfs reset implemented
> >>(although I'm not sure whether it is just a stub or whether it
> >>does anything).
> >>
> >>Now, I fully understand that this is not actually necessary,
> >>based purely on empirical evidence:
> >>
> >>My ATI cards reliably crash the host when the domU the are passed
> >>to is rebooted, and the xen-pciback driver does have the sysfs
> >>reset implemented for ATI cards.
> >>
> >>OTOH, my (modified) Nvidia cards handle domU reboots perfectly
> >>and the xen-pciback driver has no sysfs reset implementation
> >>for those.
> >>
> >>So I'm kind of torn between:
> >>1) It's not broken so don't even think about trying to fix it.
> >>2) Since FOSS reset implementation seems to exist, it might be
> >>handy to port it into the xen-pciback feature list (caveat:
> >>this may impact 1), which would be embarrasing).
> >>
> >>Thoughts?
> >
> >libxl is capable of using the sysfs reset node, so there shouldn't be
> >any needed for porting the reset code to pciback
> 
> Not quite - when the device is owned by xen-pciback, there is
> no reset node. When it is owned by nouveau, the reset node in
> sysfs is there.

Sure, but pciback does the reset:


      /* We need the device active to save the state. */                      
        dev_dbg(&dev->dev, "save state of device\n");                           
        pci_save_state(dev);                                                    
        dev_data->pci_saved_state = pci_store_saved_state(dev);                 
        if (!dev_data->pci_saved_state)                                         
                dev_err(&dev->dev, "Could not store PCI conf saved state!\n");  
        else {                                                                  
                dev_dbg(&dev->dev, "resetting (FLR, D3, etc) the device\n");    
                __pci_reset_function_locked(dev);                               
                pci_restore_state(dev);                                         
        }                                                              

The pci_reset_function(..) - the non-locked variant) is called when you
do 'reset' to the SysFS.

Unless the nouveau driver does some extra 'reset'?
> 
> Gordan
> 
> _______________________________________________
> Xen-devel mailing list
> Xen-devel@lists.xen.org
> http://lists.xen.org/xen-devel

  reply	other threads:[~2013-11-15 14:40 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-11-15 12:18 Device Reset on Nvidia GPUs Gordan Bobic
2013-11-15 14:27 ` Stefano Stabellini
2013-11-15 14:29   ` Gordan Bobic
2013-11-15 14:40     ` Konrad Rzeszutek Wilk [this message]
2013-11-15 14:52       ` Gordan Bobic
2013-11-25 15:17         ` Konrad Rzeszutek Wilk
2013-11-25 15:25           ` Gordan Bobic

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20131115144004.GA28448@phenom.dumpdata.com \
    --to=konrad.wilk@oracle.com \
    --cc=gordan@bobich.net \
    --cc=stefano.stabellini@eu.citrix.com \
    --cc=xen-devel@lists.xen.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.