All of lore.kernel.org
 help / color / mirror / Atom feed
From: Alexey Kardashevskiy <aik@ozlabs.ru>
To: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Cc: Stephen Rothwell <sfr@canb.auug.org.au>,
	linuxppc-dev@lists.ozlabs.org, kvm@vger.kernel.org,
	linux-doc@vger.kernel.org, Alexander Graf <agraf@suse.de>,
	kvm-ppc@vger.kernel.org, linux-kernel@vger.kernel.org,
	Alex Williamson <alex.williamson@redhat.com>,
	Paul Mackerras <paulus@samba.org>,
	"Paul E . McKenney" <paulmck@linux.vnet.ibm.com>,
	David Gibson <david@gibson.dropbear.id.au>
Subject: Re: [PATCH 3/8] vfio: add external user support
Date: Thu, 27 Jun 2013 10:48:33 +0000	[thread overview]
Message-ID: <51CC1881.5060500@ozlabs.ru> (raw)
In-Reply-To: <1372326166.18612.42.camel@pasglop>

On 06/27/2013 07:42 PM, Benjamin Herrenschmidt wrote:
> On Thu, 2013-06-27 at 16:59 +1000, Stephen Rothwell wrote:
>>> +/* Allows an external user (for example, KVM) to unlock an IOMMU
>> group */
>>> +static void vfio_group_del_external_user(struct file *filep)
>>> +{
>>> +     struct vfio_group *group = filep->private_data;
>>> +
>>> +     BUG_ON(filep->f_op != &vfio_group_fops);
>>
>> We usually reserve BUG_ON for situations where there is no way to
>> continue running or continuing will corrupt the running kernel.  Maybe
>> WARN_ON() and return?
> 
> Not even that. This is a user space provided "fd", we shouldn't oops the
> kernel because we passed a wrong argument, just return -EINVAL or
> something like that (add a return code).

I'll change to WARN_ON but...
This is going to be called on KVM exit on a file pointer previously
verified for correctness. If it is a wrong file*, then something went
terribly wrong.


-- 
Alexey

WARNING: multiple messages have this Message-ID (diff)
From: Alexey Kardashevskiy <aik@ozlabs.ru>
To: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Cc: Stephen Rothwell <sfr@canb.auug.org.au>,
	kvm@vger.kernel.org, linux-doc@vger.kernel.org,
	Alexander Graf <agraf@suse.de>,
	kvm-ppc@vger.kernel.org, linux-kernel@vger.kernel.org,
	Alex Williamson <alex.williamson@redhat.com>,
	Paul Mackerras <paulus@samba.org>,
	"Paul E . McKenney" <paulmck@linux.vnet.ibm.com>,
	linuxppc-dev@lists.ozlabs.org,
	David Gibson <david@gibson.dropbear.id.au>
Subject: Re: [PATCH 3/8] vfio: add external user support
Date: Thu, 27 Jun 2013 20:48:33 +1000	[thread overview]
Message-ID: <51CC1881.5060500@ozlabs.ru> (raw)
In-Reply-To: <1372326166.18612.42.camel@pasglop>

On 06/27/2013 07:42 PM, Benjamin Herrenschmidt wrote:
> On Thu, 2013-06-27 at 16:59 +1000, Stephen Rothwell wrote:
>>> +/* Allows an external user (for example, KVM) to unlock an IOMMU
>> group */
>>> +static void vfio_group_del_external_user(struct file *filep)
>>> +{
>>> +     struct vfio_group *group = filep->private_data;
>>> +
>>> +     BUG_ON(filep->f_op != &vfio_group_fops);
>>
>> We usually reserve BUG_ON for situations where there is no way to
>> continue running or continuing will corrupt the running kernel.  Maybe
>> WARN_ON() and return?
> 
> Not even that. This is a user space provided "fd", we shouldn't oops the
> kernel because we passed a wrong argument, just return -EINVAL or
> something like that (add a return code).

I'll change to WARN_ON but...
This is going to be called on KVM exit on a file pointer previously
verified for correctness. If it is a wrong file*, then something went
terribly wrong.


-- 
Alexey

WARNING: multiple messages have this Message-ID (diff)
From: Alexey Kardashevskiy <aik@ozlabs.ru>
To: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Cc: Stephen Rothwell <sfr@canb.auug.org.au>,
	linuxppc-dev@lists.ozlabs.org, kvm@vger.kernel.org,
	linux-doc@vger.kernel.org, Alexander Graf <agraf@suse.de>,
	kvm-ppc@vger.kernel.org, linux-kernel@vger.kernel.org,
	Alex Williamson <alex.williamson@redhat.com>,
	Paul Mackerras <paulus@samba.org>,
	"Paul E . McKenney" <paulmck@linux.vnet.ibm.com>,
	David Gibson <david@gibson.dropbear.id.au>
Subject: Re: [PATCH 3/8] vfio: add external user support
Date: Thu, 27 Jun 2013 20:48:33 +1000	[thread overview]
Message-ID: <51CC1881.5060500@ozlabs.ru> (raw)
In-Reply-To: <1372326166.18612.42.camel@pasglop>

On 06/27/2013 07:42 PM, Benjamin Herrenschmidt wrote:
> On Thu, 2013-06-27 at 16:59 +1000, Stephen Rothwell wrote:
>>> +/* Allows an external user (for example, KVM) to unlock an IOMMU
>> group */
>>> +static void vfio_group_del_external_user(struct file *filep)
>>> +{
>>> +     struct vfio_group *group = filep->private_data;
>>> +
>>> +     BUG_ON(filep->f_op != &vfio_group_fops);
>>
>> We usually reserve BUG_ON for situations where there is no way to
>> continue running or continuing will corrupt the running kernel.  Maybe
>> WARN_ON() and return?
> 
> Not even that. This is a user space provided "fd", we shouldn't oops the
> kernel because we passed a wrong argument, just return -EINVAL or
> something like that (add a return code).

I'll change to WARN_ON but...
This is going to be called on KVM exit on a file pointer previously
verified for correctness. If it is a wrong file*, then something went
terribly wrong.


-- 
Alexey

  reply	other threads:[~2013-06-27 10:48 UTC|newest]

Thread overview: 84+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-06-27  5:02 [PATCH 0/8 v4] KVM: PPC: IOMMU in-kernel handling Alexey Kardashevskiy
2013-06-27  5:02 ` Alexey Kardashevskiy
2013-06-27  5:02 ` Alexey Kardashevskiy
2013-06-27  5:02 ` [PATCH 1/8] KVM: PPC: reserve a capability number for multitce support Alexey Kardashevskiy
2013-06-27  5:02   ` Alexey Kardashevskiy
2013-06-27  5:02   ` Alexey Kardashevskiy
2013-06-27  5:02 ` [PATCH 2/8] KVM: PPC: reserve a capability and ioctl numbers for realmode VFIO Alexey Kardashevskiy
2013-06-27  5:02   ` Alexey Kardashevskiy
2013-06-27  5:02   ` Alexey Kardashevskiy
2013-07-09 15:35   ` Alexander Graf
2013-07-09 15:35     ` Alexander Graf
2013-07-09 15:35     ` Alexander Graf
2013-07-09 23:35     ` Alexey Kardashevskiy
2013-07-09 23:35       ` Alexey Kardashevskiy
2013-07-09 23:35       ` Alexey Kardashevskiy
2013-07-10 10:27       ` Alexander Graf
2013-07-10 10:27         ` Alexander Graf
2013-07-10 10:27         ` Alexander Graf
2013-07-10 14:17         ` Alexey Kardashevskiy
2013-07-10 14:17           ` Alexey Kardashevskiy
2013-07-10 14:17           ` Alexey Kardashevskiy
2013-07-10 15:00           ` Alexander Graf
2013-07-10 15:00             ` Alexander Graf
2013-07-10 15:00             ` Alexander Graf
2013-06-27  5:02 ` [PATCH 3/8] vfio: add external user support Alexey Kardashevskiy
2013-06-27  5:02   ` Alexey Kardashevskiy
2013-06-27  5:02   ` Alexey Kardashevskiy
2013-06-27  6:47   ` Stephen Rothwell
2013-06-27  6:47     ` Stephen Rothwell
2013-06-27  6:47     ` Stephen Rothwell
2013-06-27  7:14     ` [PATCH v2] " Alexey Kardashevskiy
2013-06-27  7:14       ` Alexey Kardashevskiy
2013-06-27  7:50       ` Stephen Rothwell
2013-06-27 15:44       ` Alex Williamson
2013-06-27 15:44         ` Alex Williamson
2013-06-27 22:57         ` Alexey Kardashevskiy
2013-06-27 22:57           ` Alexey Kardashevskiy
2013-06-28  0:41           ` Alex Williamson
2013-06-28  0:41             ` Alex Williamson
2013-06-28  1:38             ` Alexey Kardashevskiy
2013-06-28  1:38               ` Alexey Kardashevskiy
2013-06-28  2:37               ` Alex Williamson
2013-06-28  2:37                 ` Alex Williamson
2013-06-28  3:10                 ` Alexey Kardashevskiy
2013-06-28  3:10                   ` Alexey Kardashevskiy
2013-06-27  6:59   ` [PATCH 3/8] " Stephen Rothwell
2013-06-27  6:59     ` Stephen Rothwell
2013-06-27  6:59     ` Stephen Rothwell
2013-06-27  9:42     ` Benjamin Herrenschmidt
2013-06-27  9:42       ` Benjamin Herrenschmidt
2013-06-27  9:42       ` Benjamin Herrenschmidt
2013-06-27 10:48       ` Alexey Kardashevskiy [this message]
2013-06-27 10:48         ` Alexey Kardashevskiy
2013-06-27 10:48         ` Alexey Kardashevskiy
2013-06-27  5:02 ` [PATCH 4/8] hashtable: add hash_for_each_possible_rcu_notrace() Alexey Kardashevskiy
2013-06-27  5:02   ` Alexey Kardashevskiy
2013-06-27  5:02   ` Alexey Kardashevskiy
2013-06-27  5:02 ` [PATCH 5/8] powerpc: Prepare to support kernel handling of IOMMU map/unmap Alexey Kardashevskiy
2013-06-27  5:02   ` Alexey Kardashevskiy
2013-06-27  5:02   ` Alexey Kardashevskiy
2013-06-27  5:02 ` [PATCH 6/8] KVM: PPC: Add support for multiple-TCE hcalls Alexey Kardashevskiy
2013-06-27  5:02   ` Alexey Kardashevskiy
2013-06-27  5:02   ` Alexey Kardashevskiy
2013-06-27  5:02 ` [PATCH 7/8] KVM: PPC: Add support for IOMMU in-kernel handling Alexey Kardashevskiy
2013-06-27  5:02   ` Alexey Kardashevskiy
2013-06-27  5:02   ` Alexey Kardashevskiy
2013-06-27  5:02 ` [PATCH 8/8] KVM: PPC: Add hugepage " Alexey Kardashevskiy
2013-06-27  5:02   ` Alexey Kardashevskiy
2013-06-27  5:02   ` Alexey Kardashevskiy
2013-06-27 18:39   ` Scott Wood
2013-06-27 18:39     ` Scott Wood
2013-06-27 18:39     ` Scott Wood
  -- strict thread matches above, loose matches on Subject: below --
2013-07-06 15:06 [PATCH 0/8 v5] KVM: PPC: " Alexey Kardashevskiy
2013-07-06 15:07 ` [PATCH 3/8] vfio: add external user support Alexey Kardashevskiy
2013-07-06 15:07   ` Alexey Kardashevskiy
2013-07-06 15:07   ` Alexey Kardashevskiy
2013-07-08 21:52   ` Alex Williamson
2013-07-08 21:52     ` Alex Williamson
2013-07-08 21:52     ` Alex Williamson
2013-07-09  5:40     ` Alexey Kardashevskiy
2013-07-09  5:40       ` Alexey Kardashevskiy
2013-07-09  5:40       ` Alexey Kardashevskiy
2013-07-09 14:08       ` Alex Williamson
2013-07-09 14:08         ` Alex Williamson
2013-07-09 14:08         ` Alex Williamson

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=51CC1881.5060500@ozlabs.ru \
    --to=aik@ozlabs.ru \
    --cc=agraf@suse.de \
    --cc=alex.williamson@redhat.com \
    --cc=benh@kernel.crashing.org \
    --cc=david@gibson.dropbear.id.au \
    --cc=kvm-ppc@vger.kernel.org \
    --cc=kvm@vger.kernel.org \
    --cc=linux-doc@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linuxppc-dev@lists.ozlabs.org \
    --cc=paulmck@linux.vnet.ibm.com \
    --cc=paulus@samba.org \
    --cc=sfr@canb.auug.org.au \
    /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.