<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux/drivers/xen, branch v3.8.6</title>
<subtitle>Linux kernel source tree</subtitle>
<id>https://git.amat.us/linux/atom/drivers/xen?h=v3.8.6</id>
<link rel='self' href='https://git.amat.us/linux/atom/drivers/xen?h=v3.8.6'/>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/'/>
<updated>2013-04-05T16:26:16Z</updated>
<entry>
<title>xen/events: avoid race with raising an event in unmask_evtchn()</title>
<updated>2013-04-05T16:26:16Z</updated>
<author>
<name>David Vrabel</name>
<email>david.vrabel@citrix.com</email>
</author>
<published>2013-03-25T14:11:19Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=88d1e05fd3f0bf7aa8712da17ffae839988fe81c'/>
<id>urn:sha1:88d1e05fd3f0bf7aa8712da17ffae839988fe81c</id>
<content type='text'>
commit c26377e62f4e6bfb4d99ef88526047209701a83f upstream.

In unmask_evtchn(), when the mask bit is cleared after testing for
pending and the event becomes pending between the test and clear, then
the upcall will not become pending and the event may be lost or
delayed.

Avoid this by always clearing the mask bit before checking for
pending.  If a hypercall is needed, remask the event as
EVTCHNOP_unmask will only retrigger pending events if they were
masked.

This fixes a regression introduced in 3.7 by
b5e579232d635b79a3da052964cb357ccda8d9ea (xen/events: fix
unmask_evtchn for PV on HVM guests) which reordered the clear mask and
check pending operations.

Changes in v2:
- set mask before hypercall.

Acked-by: Stefano Stabellini &lt;stefano.stabellini@eu.citrix.com&gt;
Signed-off-by: David Vrabel &lt;david.vrabel@citrix.com&gt;
Signed-off-by: Konrad Rzeszutek Wilk &lt;konrad.wilk@oracle.com&gt;
Signed-off-by: Lingzhu Xiang &lt;lxiang@redhat.com&gt;
Reviewed-by: CAI Qian &lt;caiqian@redhat.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
</entry>
<entry>
<title>xen-pciback: notify hypervisor about devices intended to be assigned to guests</title>
<updated>2013-04-05T16:25:49Z</updated>
<author>
<name>Jan Beulich</name>
<email>JBeulich@suse.com</email>
</author>
<published>2013-03-12T15:06:23Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=a420a7e3a40a8396104d9a62f676205f2db1a671'/>
<id>urn:sha1:a420a7e3a40a8396104d9a62f676205f2db1a671</id>
<content type='text'>
commit 909b3fdb0dd4f3db07b2d75425a00a2adb551383 upstream.

For MSI-X capable devices the hypervisor wants to write protect the
MSI-X table and PBA, yet it can't assume that resources have been
assigned to their final values at device enumeration time. Thus have
pciback do that notification, as having the device controlled by it is
a prerequisite to assigning the device to guests anyway.

This is the kernel part of hypervisor side commit 4245d33 ("x86/MSI:
add mechanism to fully protect MSI-X table from PV guest accesses") on
the master branch of git://xenbits.xen.org/xen.git.

Signed-off-by: Jan Beulich &lt;jbeulich@suse.com&gt;
Signed-off-by: Konrad Rzeszutek Wilk &lt;konrad.wilk@oracle.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
</entry>
<entry>
<title>xen/pciback: Don't disable a PCI device that is already disabled.</title>
<updated>2013-03-20T20:10:52Z</updated>
<author>
<name>Konrad Rzeszutek Wilk</name>
<email>konrad.wilk@oracle.com</email>
</author>
<published>2013-03-05T18:14:19Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=05b96a05942994ed9748d6ef8a18361fb195c238'/>
<id>urn:sha1:05b96a05942994ed9748d6ef8a18361fb195c238</id>
<content type='text'>
commit bdc5c1812cea6efe1aaefb3131fcba28cd0b2b68 upstream.

While shuting down a HVM guest with pci devices passed through we
get this:

pciback 0000:04:00.0: restoring config space at offset 0x4 (was 0x100000, writing 0x100002)
------------[ cut here ]------------
WARNING: at drivers/pci/pci.c:1397 pci_disable_device+0x88/0xa0()
Hardware name: MS-7640
Device pciback
disabling already-disabled device
Modules linked in:
Pid: 53, comm: xenwatch Not tainted 3.9.0-rc1-20130304a+ #1
Call Trace:
 [&lt;ffffffff8106994a&gt;] warn_slowpath_common+0x7a/0xc0
 [&lt;ffffffff81069a31&gt;] warn_slowpath_fmt+0x41/0x50
 [&lt;ffffffff813cf288&gt;] pci_disable_device+0x88/0xa0
 [&lt;ffffffff814554a7&gt;] xen_pcibk_reset_device+0x37/0xd0
 [&lt;ffffffff81454b6f&gt;] ? pcistub_put_pci_dev+0x6f/0x120
 [&lt;ffffffff81454b8d&gt;] pcistub_put_pci_dev+0x8d/0x120
 [&lt;ffffffff814582a9&gt;] __xen_pcibk_release_devices+0x59/0xa0

This fixes the bug.

Reported-and-Tested-by: Sander Eikelenboom &lt;linux@eikelenboom.it&gt;
Signed-off-by: Konrad Rzeszutek Wilk &lt;konrad.wilk@oracle.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
</entry>
<entry>
<title>xenbus: fix compile failure on ARM with Xen enabled</title>
<updated>2013-03-14T18:26:10Z</updated>
<author>
<name>Steven Noonan</name>
<email>steven@uplinklabs.net</email>
</author>
<published>2013-03-01T13:14:59Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=a1c9ea4054122af173791f7431fd4484330de26e'/>
<id>urn:sha1:a1c9ea4054122af173791f7431fd4484330de26e</id>
<content type='text'>
commit 45e27161c62216c163880d7aed751cb55a65c8e9 upstream.

Adding an include of linux/mm.h resolves this:
	drivers/xen/xenbus/xenbus_client.c: In function ‘xenbus_map_ring_valloc_hvm’:
	drivers/xen/xenbus/xenbus_client.c:532:66: error: implicit declaration of function ‘page_to_section’ [-Werror=implicit-function-declaration]

Signed-off-by: Steven Noonan &lt;steven@uplinklabs.net&gt;
Signed-off-by: Konrad Rzeszutek Wilk &lt;konrad.wilk@oracle.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
</entry>
<entry>
<title>xen: close evtchn port if binding to irq fails</title>
<updated>2013-02-28T13:38:30Z</updated>
<author>
<name>Wei Liu</name>
<email>wei.liu2@citrix.com</email>
</author>
<published>2013-02-18T14:57:58Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=d032cb6cf0be82fde1b31a3cb3cc22d38f4a25c6'/>
<id>urn:sha1:d032cb6cf0be82fde1b31a3cb3cc22d38f4a25c6</id>
<content type='text'>
commit e7e44e444876478d50630f57b0c31d29f6725020 upstream.

Signed-off-by: Wei Liu &lt;wei.liu2@citrix.com&gt;
Signed-off-by: Konrad Rzeszutek Wilk &lt;konrad.wilk@oracle.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
</entry>
<entry>
<title>Merge tag 'stable/for-linus-3.8-rc7-tag-two' of git://git.kernel.org/pub/scm/linux/kernel/git/konrad/xen</title>
<updated>2013-02-15T20:12:55Z</updated>
<author>
<name>Linus Torvalds</name>
<email>torvalds@linux-foundation.org</email>
</author>
<published>2013-02-15T20:12:55Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=f741656d646f7a5b56ba86765205b954237e7956'/>
<id>urn:sha1:f741656d646f7a5b56ba86765205b954237e7956</id>
<content type='text'>
Pull xen fixes from Konrad Rzeszutek Wilk:
 "Two fixes:

   - A simple bug-fix for redundant NULL check.

   - CVE-2013-0228/XSA-42: x86/xen: don't assume %ds is usable in
     xen_iret for 32-bit PVOPS

  and two reverts:

   - Revert the PVonHVM kexec.  The patch introduces a regression with
     older hypervisor stacks, such as Xen 4.1."

* tag 'stable/for-linus-3.8-rc7-tag-two' of git://git.kernel.org/pub/scm/linux/kernel/git/konrad/xen:
  Revert "xen PVonHVM: use E820_Reserved area for shared_info"
  Revert "xen/PVonHVM: fix compile warning in init_hvm_pv_info"
  xen: remove redundant NULL check before unregister_and_remove_pcpu().
  x86/xen: don't assume %ds is usable in xen_iret for 32-bit PVOPS.
</content>
</entry>
<entry>
<title>xen: remove redundant NULL check before unregister_and_remove_pcpu().</title>
<updated>2013-02-13T20:40:33Z</updated>
<author>
<name>Cyril Roelandt</name>
<email>tipecaml@gmail.com</email>
</author>
<published>2013-02-12T04:01:53Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=4f8c85272c5e7ea1f2fe15d866835bc6f8fc996f'/>
<id>urn:sha1:4f8c85272c5e7ea1f2fe15d866835bc6f8fc996f</id>
<content type='text'>
unregister_and_remove_pcpu on a NULL pointer is a no-op, so the NULL check in
sync_pcpu can be removed.

Signed-off-by: Cyril Roelandt &lt;tipecaml@gmail.com&gt;
Signed-off-by: Konrad Rzeszutek Wilk &lt;konrad.wilk@oracle.com&gt;
</content>
</entry>
<entry>
<title>Merge tag 'stable/for-linus-3.8-rc6-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/konrad/xen</title>
<updated>2013-02-08T00:55:27Z</updated>
<author>
<name>Linus Torvalds</name>
<email>torvalds@linux-foundation.org</email>
</author>
<published>2013-02-08T00:55:27Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=a04521ab8071a46dff5d618c98b37427a8aab9f4'/>
<id>urn:sha1:a04521ab8071a46dff5d618c98b37427a8aab9f4</id>
<content type='text'>
Pull Xen fixes from Konrad Rzeszutek Wilk:
 "This has two fixes.  One is a security fix wherein we would spam the
  kernel printk buffer if one of the guests was misbehaving.  The other
  is much tamer and it was us only checking for one type of error from
  the IRQ subsystem (when allocating new IRQs) instead of for all of
  them.

   - Fix an IRQ allocation where we only check for a specific error (-1).
   - CVE-2013-0231 / XSA-43.  Make xen-pciback rate limit error messages
     from xen_pcibk_enable_msi{,x}()"

* tag 'stable/for-linus-3.8-rc6-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/konrad/xen:
  xen: fix error handling path if xen_allocate_irq_dynamic fails
  xen-pciback: rate limit error messages from xen_pcibk_enable_msi{,x}()
</content>
</entry>
<entry>
<title>xen: fix error handling path if xen_allocate_irq_dynamic fails</title>
<updated>2013-02-06T15:32:45Z</updated>
<author>
<name>Wei Liu</name>
<email>wei.liu2@citrix.com</email>
</author>
<published>2013-01-31T14:46:56Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=68ba45ff389295ddccbb976b8881de7c46140e00'/>
<id>urn:sha1:68ba45ff389295ddccbb976b8881de7c46140e00</id>
<content type='text'>
It is possible that the call to xen_allocate_irq_dynamic() returns negative
number other than -1.

Reviewed-by: David Vrabel &lt;david.vrabel@citrix.com&gt;
Signed-off-by: Wei Liu &lt;wei.liu2@citrix.com&gt;
Signed-off-by: Konrad Rzeszutek Wilk &lt;konrad.wilk@oracle.com&gt;
</content>
</entry>
<entry>
<title>xen-pciback: rate limit error messages from xen_pcibk_enable_msi{,x}()</title>
<updated>2013-02-06T15:31:08Z</updated>
<author>
<name>Jan Beulich</name>
<email>jbeulich@suse.com</email>
</author>
<published>2013-02-06T15:30:38Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=51ac8893a7a51b196501164e645583bf78138699'/>
<id>urn:sha1:51ac8893a7a51b196501164e645583bf78138699</id>
<content type='text'>
... as being guest triggerable (e.g. by invoking
XEN_PCI_OP_enable_msi{,x} on a device not being MSI/MSI-X capable).

This is CVE-2013-0231 / XSA-43.

Also make the two messages uniform in both their wording and severity.

Signed-off-by: Jan Beulich &lt;jbeulich@suse.com&gt;
Acked-by: Ian Campbell &lt;ian.campbell@citrix.com&gt;
Reviewed-by: Konrad Rzeszutek Wilk &lt;konrad.wilk@oracle.com&gt;
</content>
</entry>
</feed>
