head	1.2;
access;
symbols
	pkgsrc-2020Q2:1.1.0.36
	pkgsrc-2020Q2-base:1.1
	pkgsrc-2020Q1:1.1.0.16
	pkgsrc-2020Q1-base:1.1
	pkgsrc-2019Q4:1.1.0.38
	pkgsrc-2019Q4-base:1.1
	pkgsrc-2019Q3:1.1.0.34
	pkgsrc-2019Q3-base:1.1
	pkgsrc-2019Q2:1.1.0.32
	pkgsrc-2019Q2-base:1.1
	pkgsrc-2019Q1:1.1.0.30
	pkgsrc-2019Q1-base:1.1
	pkgsrc-2018Q4:1.1.0.28
	pkgsrc-2018Q4-base:1.1
	pkgsrc-2018Q3:1.1.0.26
	pkgsrc-2018Q3-base:1.1
	pkgsrc-2018Q2:1.1.0.24
	pkgsrc-2018Q2-base:1.1
	pkgsrc-2018Q1:1.1.0.22
	pkgsrc-2018Q1-base:1.1
	pkgsrc-2017Q4:1.1.0.20
	pkgsrc-2017Q4-base:1.1
	pkgsrc-2017Q3:1.1.0.18
	pkgsrc-2017Q3-base:1.1
	pkgsrc-2017Q2:1.1.0.14
	pkgsrc-2017Q2-base:1.1
	pkgsrc-2017Q1:1.1.0.12
	pkgsrc-2017Q1-base:1.1
	pkgsrc-2016Q4:1.1.0.10
	pkgsrc-2016Q4-base:1.1
	pkgsrc-2016Q3:1.1.0.8
	pkgsrc-2016Q3-base:1.1
	pkgsrc-2016Q2:1.1.0.6
	pkgsrc-2016Q2-base:1.1
	pkgsrc-2016Q1:1.1.0.4
	pkgsrc-2016Q1-base:1.1
	pkgsrc-2015Q4:1.1.0.2;
locks; strict;
comment	@# @;


1.2
date	2020.08.19.10.39.23;	author bouyer;	state dead;
branches;
next	1.1;
commitid	DGAMglRf0Jde6FkC;

1.1
date	2016.01.07.17.53.58;	author bouyer;	state Exp;
branches
	1.1.2.1;
next	;
commitid	sPBfKcCmelWSG1Qy;

1.1.2.1
date	2016.01.07.17.53.58;	author bsiegert;	state dead;
branches;
next	1.1.2.2;
commitid	DY7ZTsM4su8PtyQy;

1.1.2.2
date	2016.01.11.20.37.17;	author bsiegert;	state Exp;
branches;
next	;
commitid	DY7ZTsM4su8PtyQy;


desc
@@


1.2
log
@Remove xenkernel and xentools packages older than 4.11.
They're not maintained anymore upstream, and don't build on supported NetBSD
releases.
@
text
@$NetBSD: patch-XSA-166,v 1.1 2016/01/07 17:53:58 bouyer Exp $

Patch for XSA-166, based on
http://xenbits.xenproject.org/xsa/xsa166-4.3.patch

--- xen/arch/x86/hvm/hvm.c.orig
+++ xen/arch/x86/hvm/hvm.c
@@@@ -342,6 +342,7 @@@@ void hvm_migrate_pirqs(struct vcpu *v)
 void hvm_do_resume(struct vcpu *v)
 {
     ioreq_t *p;
+    unsigned int state;
 
     pt_restore_timer(v);
 
@@@@ -349,9 +350,10 @@@@ void hvm_do_resume(struct vcpu *v)
 
     /* NB. Optimised for common case (p->state == STATE_IOREQ_NONE). */
     p = get_ioreq(v);
-    while ( p->state != STATE_IOREQ_NONE )
+    while ( (state = p->state) != STATE_IOREQ_NONE )
     {
-        switch ( p->state )
+        rmb();
+        switch ( state )
         {
         case STATE_IORESP_READY: /* IORESP_READY -> NONE */
             hvm_io_assist();
@@@@ -359,11 +361,10 @@@@ void hvm_do_resume(struct vcpu *v)
         case STATE_IOREQ_READY:  /* IOREQ_{READY,INPROCESS} -> IORESP_READY */
         case STATE_IOREQ_INPROCESS:
             wait_on_xen_event_channel(v->arch.hvm_vcpu.xen_port,
-                                      (p->state != STATE_IOREQ_READY) &&
-                                      (p->state != STATE_IOREQ_INPROCESS));
+                                      p->state != state);
             break;
         default:
-            gdprintk(XENLOG_ERR, "Weird HVM iorequest state %d.\n", p->state);
+            gdprintk(XENLOG_ERR, "Weird HVM iorequest state %u\n", state);
             domain_crash(v->domain);
             return; /* bail */
         }
@


1.1
log
@pply patches from Xen repository, fixing:
CVE-2015-5307 and CVE-2015-8104 aka XSA-156
CVE-2015-8339 and CVE-2015-8340 aka XSA-159
CVE-2015-8555 aka XSA-165
XSA-166
CVE-2015-8550 aka XSA-155
CVE-2015-8554 aka XSA-164
Bump pkgrevision
@
text
@d1 1
a1 1
$NetBSD: patch-CVE-2015-7971,v 1.1 2015/10/29 20:29:56 bouyer Exp $
@


1.1.2.1
log
@file patch-XSA-166 was added on branch pkgsrc-2015Q4 on 2016-01-11 20:37:17 +0000
@
text
@d1 42
@


1.1.2.2
log
@Pullup ticket #4886 - requested by bouyer
sysutils/xenkernel42: security fix
sysutils/xentools42: security fix

Revisions pulled up:
- sysutils/xenkernel42/Makefile                                 1.20
- sysutils/xenkernel42/distinfo                                 1.19
- sysutils/xenkernel42/patches/patch-CVE-2015-5307              1.1
- sysutils/xenkernel42/patches/patch-CVE-2015-8339              1.1
- sysutils/xenkernel42/patches/patch-CVE-2015-8555              1.1
- sysutils/xenkernel42/patches/patch-XSA-166                    1.1
- sysutils/xentools42/Makefile                                  1.41
- sysutils/xentools42/distinfo                                  1.22
- sysutils/xentools42/patches/patch-CVE-2015-8550               1.1
- sysutils/xentools42/patches/patch-CVE-2015-8554               1.1

---
   Module Name:	pkgsrc
   Committed By:	bouyer
   Date:		Thu Jan  7 17:53:59 UTC 2016

   Modified Files:
   	pkgsrc/sysutils/xenkernel42: Makefile distinfo
   	pkgsrc/sysutils/xentools42: Makefile distinfo
   Added Files:
   	pkgsrc/sysutils/xenkernel42/patches: patch-CVE-2015-5307
   	    patch-CVE-2015-8339 patch-CVE-2015-8555 patch-XSA-166
   	pkgsrc/sysutils/xentools42/patches: patch-CVE-2015-8550
   	    patch-CVE-2015-8554

   Log Message:
   pply patches from Xen repository, fixing:
   CVE-2015-5307 and CVE-2015-8104 aka XSA-156
   CVE-2015-8339 and CVE-2015-8340 aka XSA-159
   CVE-2015-8555 aka XSA-165
   XSA-166
   CVE-2015-8550 aka XSA-155
   CVE-2015-8554 aka XSA-164
   Bump pkgrevision
@
text
@a0 42
$NetBSD$

Patch for XSA-166, based on
http://xenbits.xenproject.org/xsa/xsa166-4.3.patch

--- xen/arch/x86/hvm/hvm.c.orig
+++ xen/arch/x86/hvm/hvm.c
@@@@ -342,6 +342,7 @@@@ void hvm_migrate_pirqs(struct vcpu *v)
 void hvm_do_resume(struct vcpu *v)
 {
     ioreq_t *p;
+    unsigned int state;
 
     pt_restore_timer(v);
 
@@@@ -349,9 +350,10 @@@@ void hvm_do_resume(struct vcpu *v)
 
     /* NB. Optimised for common case (p->state == STATE_IOREQ_NONE). */
     p = get_ioreq(v);
-    while ( p->state != STATE_IOREQ_NONE )
+    while ( (state = p->state) != STATE_IOREQ_NONE )
     {
-        switch ( p->state )
+        rmb();
+        switch ( state )
         {
         case STATE_IORESP_READY: /* IORESP_READY -> NONE */
             hvm_io_assist();
@@@@ -359,11 +361,10 @@@@ void hvm_do_resume(struct vcpu *v)
         case STATE_IOREQ_READY:  /* IOREQ_{READY,INPROCESS} -> IORESP_READY */
         case STATE_IOREQ_INPROCESS:
             wait_on_xen_event_channel(v->arch.hvm_vcpu.xen_port,
-                                      (p->state != STATE_IOREQ_READY) &&
-                                      (p->state != STATE_IOREQ_INPROCESS));
+                                      p->state != state);
             break;
         default:
-            gdprintk(XENLOG_ERR, "Weird HVM iorequest state %d.\n", p->state);
+            gdprintk(XENLOG_ERR, "Weird HVM iorequest state %u\n", state);
             domain_crash(v->domain);
             return; /* bail */
         }
@


