All of lore.kernel.org
 help / color / mirror / Atom feed
From: Alexey Kardashevskiy <aik@ozlabs.ru>
To: Gavin Shan <gwshan@linux.vnet.ibm.com>
Cc: alex.williamson@redhat.com, qemu-ppc@nongnu.org,
	qemu-devel@nongnu.org, agraf@suse.de
Subject: Re: [Qemu-devel] [PATCH v12 3/4] headers: Update kernel header
Date: Wed, 16 Jul 2014 11:32:13 +1000	[thread overview]
Message-ID: <53C5D61D.6040508@ozlabs.ru> (raw)
In-Reply-To: <20140716011624.GB11978@shangw>

On 07/16/2014 11:16 AM, Gavin Shan wrote:
> On Wed, Jul 16, 2014 at 11:09:44AM +1000, Alexey Kardashevskiy wrote:
>> On 07/16/2014 10:20 AM, Gavin Shan wrote:
>>> This updates kernel header (vfio.h) for EEH support on VFIO PCI
>>> devices.
>>
>> Has this reached kernel upstream? The way linux headers update normally
>> happens is you have to run scripts/update-linux-headers.sh against some
>> linux kernel tag which you know that it won't change (like v3.16-rc5) and
>> post all the changes as a single patch. It is never a header update for a
>> specific feature, it is just an update.
>>
> 
> The kernel part isn't merged yet. I guess that's for 3.17 merge window.
> Ok, good to know scripts/update-linux-headers.sh. So this patch should
> be dropped and some one run the script to update QEMU (linux-headers
> directory) ?


Once your changes are in upstream kernel, you wait till kernel tree gets
new "v3.xx-rcX" tag, then you run the script and make a separate patch for
QEMU. Then you wait till it reaches QEMU upstream (because I do not know
who will pull it to what tree, look at git history) or ppc-next (if Alex
pulls it and you are basing your work on ppc-next) and then repost other
patches.


> 
> Thanks,
> Gavin
> 
>>
>>>
>>> Signed-off-by: Gavin Shan <gwshan@linux.vnet.ibm.com>
>>> ---
>>>  linux-headers/linux/vfio.h | 34 ++++++++++++++++++++++++++++++++++
>>>  1 file changed, 34 insertions(+)
>>>
>>> diff --git a/linux-headers/linux/vfio.h b/linux-headers/linux/vfio.h
>>> index 26c218e..95b591b 100644
>>> --- a/linux-headers/linux/vfio.h
>>> +++ b/linux-headers/linux/vfio.h
>>> @@ -30,6 +30,9 @@
>>>   */
>>>  #define VFIO_DMA_CC_IOMMU		4
>>>  
>>> +/* Check if EEH is supported */
>>> +#define VFIO_EEH			5
>>> +
>>>  /*
>>>   * The IOCTL interface is designed for extensibility by embedding the
>>>   * structure length (argsz) and flags into structures passed between
>>> @@ -455,6 +458,37 @@ struct vfio_iommu_spapr_tce_info {
>>>  
>>>  #define VFIO_IOMMU_SPAPR_TCE_GET_INFO	_IO(VFIO_TYPE, VFIO_BASE + 12)
>>>  
>>> +/*
>>> + * EEH PE operation struct provides ways to:
>>> + * - enable/disable EEH functionality;
>>> + * - unfreeze IO/DMA for frozen PE;
>>> + * - read PE state;
>>> + * - reset PE;
>>> + * - configure PE.
>>> + */
>>> +struct vfio_eeh_pe_op {
>>> +	__u32 argsz;
>>> +	__u32 flags;
>>> +	__u32 op;
>>> +};
>>> +
>>> +#define VFIO_EEH_PE_DISABLE		0	/* Disable EEH functionality */
>>> +#define VFIO_EEH_PE_ENABLE		1	/* Enable EEH functionality  */
>>> +#define VFIO_EEH_PE_UNFREEZE_IO		2	/* Enable IO for frozen PE   */
>>> +#define VFIO_EEH_PE_UNFREEZE_DMA	3	/* Enable DMA for frozen PE  */
>>> +#define VFIO_EEH_PE_GET_STATE		4	/* PE state retrieval        */
>>> +#define  VFIO_EEH_PE_STATE_NORMAL	0	/* PE in functional state    */
>>> +#define  VFIO_EEH_PE_STATE_RESET	1	/* PE reset in progress      */
>>> +#define  VFIO_EEH_PE_STATE_STOPPED	2	/* Stopped DMA and IO        */
>>> +#define  VFIO_EEH_PE_STATE_STOPPED_DMA	4	/* Stopped DMA only          */
>>> +#define  VFIO_EEH_PE_STATE_UNAVAIL	5	/* State unavailable         */
>>> +#define VFIO_EEH_PE_RESET_DEACTIVATE	5	/* Deassert PE reset         */
>>> +#define VFIO_EEH_PE_RESET_HOT		6	/* Assert hot reset          */
>>> +#define VFIO_EEH_PE_RESET_FUNDAMENTAL	7	/* Assert fundamental reset  */
>>> +#define VFIO_EEH_PE_CONFIGURE		8	/* PE configuration          */
>>> +
>>> +#define VFIO_EEH_PE_OP			_IO(VFIO_TYPE, VFIO_BASE + 21)
>>> +
>>>  /* ***************************************************************** */
>>>  
>>>  #endif /* VFIO_H */
>>>
>>
>>
>> -- 
>> Alexey
>>
> 


-- 
Alexey

  reply	other threads:[~2014-07-16  1:32 UTC|newest]

Thread overview: 15+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-07-16  0:20 [Qemu-devel] [PATCH v12 0/4] EEH Support for VFIO Devices Gavin Shan
2014-07-16  0:20 ` [Qemu-devel] [PATCH v12 1/4] spapr_pci: Make find_phb()/find_dev() public Gavin Shan
2014-07-28 12:49   ` Alexander Graf
2014-07-28 13:52     ` Alexey Kardashevskiy
2014-07-16  0:20 ` [Qemu-devel] [PATCH v12 2/4] sPAPR: Implement EEH RTAS calls Gavin Shan
2014-07-16  1:06   ` Alexey Kardashevskiy
2014-07-16  1:12     ` Gavin Shan
2014-07-16  1:28       ` Alexey Kardashevskiy
2014-07-16  0:20 ` [Qemu-devel] [PATCH v12 3/4] headers: Update kernel header Gavin Shan
2014-07-16  1:09   ` Alexey Kardashevskiy
2014-07-16  1:16     ` Gavin Shan
2014-07-16  1:32       ` Alexey Kardashevskiy [this message]
2014-07-16  1:40         ` Gavin Shan
2014-07-28 12:50           ` Alexander Graf
2014-07-16  0:20 ` [Qemu-devel] [PATCH v12 4/4] sPAPR: Implement sPAPRPHBClass::eeh_handler Gavin Shan

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=53C5D61D.6040508@ozlabs.ru \
    --to=aik@ozlabs.ru \
    --cc=agraf@suse.de \
    --cc=alex.williamson@redhat.com \
    --cc=gwshan@linux.vnet.ibm.com \
    --cc=qemu-devel@nongnu.org \
    --cc=qemu-ppc@nongnu.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.