openSUSE Commits
Threads by month
- ----- 2024 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2023 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2022 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2021 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2020 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2019 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2018 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2017 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2016 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2015 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2014 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2013 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2012 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2011 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2010 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2009 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2008 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2007 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2006 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
June 2014
- 1 participants
- 1147 discussions
Hello community,
here is the log from the commit of package libucil for openSUSE:Factory checked in at 2014-06-01 19:40:17
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/libucil (Old)
and /work/SRC/openSUSE:Factory/.libucil.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "libucil"
Changes:
--------
--- /work/SRC/openSUSE:Factory/libucil/libucil.changes 2013-02-23 16:37:14.000000000 +0100
+++ /work/SRC/openSUSE:Factory/.libucil.new/libucil.changes 2014-06-01 19:40:22.000000000 +0200
@@ -1,0 +2,8 @@
+Sun May 25 17:48:36 UTC 2014 - crrodriguez(a)opensuse.org
+
+- rename libpn16 patch to libucil-includes.patch and update
+ it to include missing <ctype.h> includes.
+
+- Use LFS_CFLAGS in 32 bit systems.
+
+-------------------------------------------------------------------
Old:
----
libucil-libpng16.patch
New:
----
libucil-includes.patch
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ libucil.spec ++++++
--- /var/tmp/diff_new_pack.0OCk8k/_old 2014-06-01 19:40:23.000000000 +0200
+++ /var/tmp/diff_new_pack.0OCk8k/_new 2014-06-01 19:40:23.000000000 +0200
@@ -1,7 +1,7 @@
#
# spec file for package libucil
#
-# Copyright (c) 2013 SUSE LINUX Products GmbH, Nuernberg, Germany.
+# Copyright (c) 2014 SUSE LINUX Products GmbH, Nuernberg, Germany.
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@@ -37,7 +37,7 @@
BuildRoot: %{_tmppath}/%{name}-%{version}-build
Patch0: libucil-pkgconfig.patch
# following patch sent to arne(a)unicap-imaging.org
-Patch1: libucil-libpng16.patch
+Patch1: libucil-includes.patch
%description
The ucil library provides easy to use functions to render text and graphic overlays onto video images.
@@ -73,6 +73,7 @@
%patch1 -p1
%build
+export CFLAGS="%optflags $(getconf LFS_CFLAGS) -D_GNU_SOURCE"
%configure --enable-gpl \
--enable-ucil-alsa \
--enable-ucil-gstreamer \
++++++ libucil-includes.patch ++++++
--- libucil-0.9.10.orig/src/ucil_png.c
+++ libucil-0.9.10/src/ucil_png.c
@@ -10,6 +10,7 @@
#include "config.h"
#include <stdlib.h>
+#include <string.h>
#include <png.h>
#include <unicap.h>
#include <glib.h>
--- libucil-0.9.10.orig/src/ucil_ppm.c
+++ libucil-0.9.10/src/ucil_ppm.c
@@ -3,12 +3,13 @@
#include <stdio.h>
#include <stdlib.h>
+#include <string.h>
#include <errno.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>
#include <string.h>
-
+#include <ctype.h>
int nextval( int fd )
{
--
To unsubscribe, e-mail: opensuse-commit+unsubscribe(a)opensuse.org
For additional commands, e-mail: opensuse-commit+help(a)opensuse.org
1
0
Hello community,
here is the log from the commit of package libcpuset for openSUSE:Factory checked in at 2014-06-01 19:40:16
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/libcpuset (Old)
and /work/SRC/openSUSE:Factory/.libcpuset.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "libcpuset"
Changes:
--------
--- /work/SRC/openSUSE:Factory/libcpuset/libcpuset.changes 2013-05-07 07:24:36.000000000 +0200
+++ /work/SRC/openSUSE:Factory/.libcpuset.new/libcpuset.changes 2014-06-01 19:40:20.000000000 +0200
@@ -1,0 +2,14 @@
+Tue May 27 07:15:51 UTC 2014 - mgalbraith(a)suse.com
+
+- whack duplicate %patch1 -p1 in .spec
+
+-------------------------------------------------------------------
+Tue May 27 07:09:12 UTC 2014 - mgalbraith(a)suse.com
+
+- Add missing fixes.
+ bug-514127_libcpuset-cpuset_set_iopt-adds.patch (SUSE bnc#514127)
+ initialize_buffer.patch (bnc unknown)
+ libcpuset-agnostic-mountpoint.diff (SUSE bnc#625079, SUSE bnc#834223)
+ libcpuset-handle-cgroup-mount.diff (SUSE bnc#625079, SUSE bnc#834223)
+
+-------------------------------------------------------------------
New:
----
bug-514127_libcpuset-cpuset_set_iopt-adds.patch
initialize_buffer.patch
libcpuset-agnostic-mountpoint.diff
libcpuset-handle-cgroup-mount.diff
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ libcpuset.spec ++++++
--- /var/tmp/diff_new_pack.9hwbWF/_old 2014-06-01 19:40:21.000000000 +0200
+++ /var/tmp/diff_new_pack.9hwbWF/_new 2014-06-01 19:40:21.000000000 +0200
@@ -1,7 +1,7 @@
#
# spec file for package libcpuset
#
-# Copyright (c) 2013 SUSE LINUX Products GmbH, Nuernberg, Germany.
+# Copyright (c) 2014 SUSE LINUX Products GmbH, Nuernberg, Germany.
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@@ -27,6 +27,10 @@
Source: libcpuset-%{version}.tar.bz2
Patch0: libcpuset-fix-missing-syscall.diff
Patch1: libcpuset-rm-cpuonline.diff
+Patch2: bug-514127_libcpuset-cpuset_set_iopt-adds.patch
+Patch3: initialize_buffer.patch
+Patch4: libcpuset-agnostic-mountpoint.diff
+Patch5: libcpuset-handle-cgroup-mount.diff
BuildRoot: %{_tmppath}/%{name}-%{version}-build
BuildRequires: libbitmask-devel
BuildRequires: libtool
@@ -64,6 +68,10 @@
%setup -q -n %{name}
%patch0 -p1
%patch1 -p1
+%patch2 -p1
+%patch3 -p1
+%patch4 -p1
+%patch5 -p1
%build
sed -i -e 's@-Werror@@g' configure.in
++++++ bug-514127_libcpuset-cpuset_set_iopt-adds.patch ++++++
---
libcpuset.c | 55 +++++++++++++++++++++++++++++++++++++++++++++++++++++++
1 file changed, 55 insertions(+)
--- a/libcpuset.c
+++ b/libcpuset.c
@@ -67,9 +67,11 @@ struct cpuset {
char mem_exclusive;
char notify_on_release;
char memory_migrate;
+ char mem_hardwall;
char memory_pressure_enabled;
char memory_spread_page;
char memory_spread_slab;
+ char sched_load_balance;
/*
* Each field 'x' above gets an 'x_valid' field below.
@@ -95,9 +97,11 @@ struct cpuset {
unsigned mem_exclusive_valid:1;
unsigned notify_on_release_valid:1;
unsigned memory_migrate_valid:1;
+ unsigned mem_hardwall_valid:1;
unsigned memory_pressure_enabled_valid:1;
unsigned memory_spread_page_valid:1;
unsigned memory_spread_slab_valid:1;
+ unsigned sched_load_balance_valid:1;
};
/* Presumed cpuset file system mount point */
@@ -688,12 +692,18 @@ int cpuset_set_iopt(struct cpuset *cp, c
} else if (streq(optionname, "memory_migrate")) {
cp->memory_migrate = !!value;
cp->memory_migrate_valid = 1;
+ } else if (streq(optionname, "mem_hardwall")) {
+ cp->mem_hardwall = !!value;
+ cp->mem_hardwall_valid = 1;
} else if (streq(optionname, "memory_spread_page")) {
cp->memory_spread_page = !!value;
cp->memory_spread_page_valid = 1;
} else if (streq(optionname, "memory_spread_slab")) {
cp->memory_spread_slab = !!value;
cp->memory_spread_slab_valid = 1;
+ } else if (streq(optionname, "sched_load_balance")) {
+ cp->sched_load_balance = !!value;
+ cp->sched_load_balance_valid = 1;
} else
return -2; /* optionname not recognized */
return 0;
@@ -857,10 +867,14 @@ int cpuset_get_iopt(const struct cpuset
return cp->memory_pressure_enabled;
else if (streq(optionname, "memory_migrate"))
return cp->memory_migrate;
+ else if (streq(optionname, "mem_hardwall"))
+ return cp->mem_hardwall;
else if (streq(optionname, "memory_spread_page"))
return cp->memory_spread_page;
else if (streq(optionname, "memory_spread_slab"))
return cp->memory_spread_slab;
+ else if (streq(optionname, "sched_load_balance"))
+ return cp->sched_load_balance;
else
return -1; /* optionname not recognized */
}
@@ -1642,6 +1656,11 @@ static int apply_cpuset_settings(const c
if (store_flag(path, "memory_migrate", cp->memory_migrate) < 0)
goto err;
}
+ if (cp->mem_hardwall_valid &&
+ exists_flag(path, "mem_hardwall")) {
+ if (store_flag(path, "mem_hardwall", cp->mem_hardwall) < 0)
+ goto err;
+ }
if (cp->memory_pressure_enabled_valid &&
exists_flag(path, "memory_pressure_enabled")) {
if (store_flag(path, "memory_pressure_enabled", cp->memory_pressure_enabled) < 0)
@@ -1657,6 +1676,12 @@ static int apply_cpuset_settings(const c
if (store_flag(path, "memory_spread_slab", cp->memory_spread_slab) < 0)
goto err;
}
+ if (cp->sched_load_balance_valid &&
+ exists_flag(path, "sched_load_balance")) {
+ if (store_flag(path, "sched_load_balance", cp->sched_load_balance) < 0)
+ goto err;
+ }
+
if (cp->cpus_valid && store_mask(path, "cpus", cp->cpus) < 0)
goto err;
if (cp->mems_valid && store_mask(path, "mems", cp->mems) < 0)
@@ -1912,6 +1937,12 @@ int cpuset_query(struct cpuset *cp, cons
cp->memory_migrate_valid = 1;
}
+ if (exists_flag(buf, "mem_hardwall")) {
+ if (load_flag(buf, &cp->mem_hardwall, "mem_hardwall") < 0)
+ goto err;
+ cp->mem_hardwall_valid = 1;
+ }
+
if (exists_flag(buf, "memory_pressure_enabled")) {
if (load_flag(buf, &cp->memory_pressure_enabled, "memory_pressure_enabled") < 0)
goto err;
@@ -1930,6 +1961,12 @@ int cpuset_query(struct cpuset *cp, cons
cp->memory_spread_slab_valid = 1;
}
+ if (exists_flag(buf, "sched_load_balance")) {
+ if (load_flag(buf, &cp->sched_load_balance, "sched_load_balance") < 0)
+ goto err;
+ cp->sched_load_balance_valid = 1;
+ }
+
if (load_mask(buf, &cp->cpus, cpuset_cpus_nbits(), "cpus") < 0)
goto err;
cp->cpus_valid = 1;
@@ -3291,6 +3328,10 @@ int cpuset_export(const struct cpuset *c
n += snprintf(buf + n, max(buflen - n, 0),
"memory_migrate\n");
+ if (cp->mem_hardwall)
+ n += snprintf(buf + n, max(buflen - n, 0),
+ "mem_hardwall\n");
+
if (cp->memory_spread_page)
n += snprintf(buf + n, max(buflen - n, 0),
"memory_spread_page\n");
@@ -3299,6 +3340,10 @@ int cpuset_export(const struct cpuset *c
n += snprintf(buf + n, max(buflen - n, 0),
"memory_spread_slab\n");
+ if (cp->sched_load_balance)
+ n += snprintf(buf + n, max(buflen - n, 0),
+ "sched_load_balance\n");
+
if ((tmp = sprint_mask_buf(cp->cpus)) == NULL)
return -1;
n += snprintf(buf + n, max(buflen - n, 0), "cpus %s\n", tmp);
@@ -3383,6 +3428,10 @@ int cpuset_import(struct cpuset *cp, con
cp->memory_migrate = 1;
goto eol;
}
+ if (streq(tok, "mem_hardwall")) {
+ cp->mem_hardwall = 1;
+ goto eol;
+ }
if (streq(tok, "memory_spread_page")) {
cp->memory_spread_page = 1;
goto eol;
@@ -3391,6 +3440,10 @@ int cpuset_import(struct cpuset *cp, con
cp->memory_spread_slab = 1;
goto eol;
}
+ if (streq(tok, "sched_load_balance")) {
+ cp->sched_load_balance = 1;
+ goto eol;
+ }
if (streq(tok, "cpu") || streq(tok, "cpus")) {
if (import_list(tok, arg, cp->cpus, emsg, elen) < 0)
goto err;
@@ -3434,9 +3487,11 @@ int cpuset_import(struct cpuset *cp, con
cp->mem_exclusive_valid = 1;
cp->notify_on_release_valid = 1;
cp->memory_migrate_valid = 1;
+ cp->mem_hardwall_valid = 1;
cp->memory_pressure_enabled_valid = 1;
cp->memory_spread_page_valid = 1;
cp->memory_spread_slab_valid = 1;
+ cp->sched_load_balance = 1;
return 0;
err:
++++++ initialize_buffer.patch ++++++
---
libcpuset.c | 1 +
1 file changed, 1 insertion(+)
--- a/libcpuset.c
+++ b/libcpuset.c
@@ -3250,6 +3250,7 @@ int cpuset_latestcpu(pid_t pid)
else
snprintf(buf, sizeof(buf), "/proc/%d/stat", pid);
+ memset(buf, '\0', sizeof(buf));
if ((fd = open(buf, O_RDONLY)) < 0)
goto err;
if (read(fd, buf, sizeof(buf)) < 1)
++++++ libcpuset-agnostic-mountpoint.diff ++++++
Subject: Make libcpuset mountpoint agnostic.
Date: Wed Jun 19 09:23:00 CEST 2013
From: Mike Galbraith <mgalbraith(a)suse.de>
References: bnc#625079, bnc#834223
Addendum: s/cpuset/,cpuset in scan to make sure we're seeing the mount option
vs some dainbramaged path component.
Signed-off-by: Mike Galbraith <mgalbraith(a)suse.de>
---
libcpuset.c | 37 +++++++++++++++++++++++++++++--------
1 file changed, 29 insertions(+), 8 deletions(-)
--- a/libcpuset.c
+++ b/libcpuset.c
@@ -104,8 +104,8 @@ struct cpuset {
unsigned sched_load_balance_valid:1;
};
-/* Presumed cpuset file system mount point */
-static const char *cpusetmnt = "/dev/cpuset";
+/* Discovered cpuset file system mount point */
+static char cpusetmnt[PATH_MAX];
/* Stashed copy of cpunodemap[], mapping each cpu to its node. */
static const char *mapfile = "/var/run/cpunodemap";
@@ -194,11 +194,11 @@ static const char *sn_top_node_prefix =
#endif
/*
- * Check that cpusets supported, /dev/cpuset mounted.
+ * Check that cpusets supported, cpuset controler is mounted.
* If ok, return 0.
* If not, return -1 and set errno:
* ENOSYS - kernel doesn't support cpusets
- * ENODEV - /dev/cpuset not mounted
+ * ENODEV - cpuset controller not mounted
*/
static enum {
@@ -212,13 +212,34 @@ static int check()
{
if (check_state == check_notdone) {
struct stat statbuf;
+ FILE *mounts;
+ char buf[PATH_MAX], *start, *end;
+ int found = 0;
if (stat("/proc/self/cpuset", &statbuf) < 0) {
check_state = check_enosys;
goto done;
}
- if (stat("/dev/cpuset/tasks", &statbuf) < 0) {
+ mounts = fopen("/proc/mounts", "r");
+ if (mounts == NULL) {
+ check_state = check_enosys;
+ goto done;
+ }
+
+ while (fgets(buf, sizeof buf, mounts) != NULL) {
+ if (!strstr(buf, ",cpuset"))
+ continue;
+ start = strstr(buf, "/");
+ end = strstr(start, " ");
+ *end = '\0';
+ strcpy(cpusetmnt, start);
+ found = 1;
+ break;
+ }
+ fclose(mounts);
+
+ if (!found) {
check_state = check_enodev;
goto done;
}
@@ -495,7 +516,7 @@ static char *pathcat3(char *buf, int buf
*
* Put full path of cpuset 'name' in buffer 'buf'. If name
* starts with a slash (``/``) character, then this a path
- * relative to ``/dev/cpuset``, otherwise it is relative to
+ * relative to cpusetmnt, otherwise it is relative to
* the current tasks cpuset. Return 0 on success, else
* -1 on error, setting errno.
*/
@@ -2232,7 +2253,7 @@ int cpuset_collides_exclusive(const char
* EACCES - search permission denied on intervening directory
* ETIME - timed out - tasks remain after 'seconds' timeout
* EMFILE - too many open files
- * ENODEV - /dev/cpuset not mounted
+ * ENODEV - cpuset controller not mounted
* ENOENT - component of cpuset path doesn't exist
* ENOMEM - out of memory
* ENOSYS - kernel doesn't support cpusets
@@ -2609,7 +2630,7 @@ int cpuset_move_all(struct cpuset_pidlis
* EACCES - search permission denied on intervening directory
* ENOTEMPTY - tasks remain after multiple attempts to move them
* EMFILE - too many open files
- * ENODEV - /dev/cpuset not mounted
+ * ENODEV - cpuset controller not mounted
* ENOENT - component of cpuset path doesn't exist
* ENOMEM - out of memory
* ENOSYS - kernel doesn't support cpusets
++++++ libcpuset-handle-cgroup-mount.diff ++++++
Subject: libcpuset1, make it handle cpuset mounted as a cgroup controller
>From Mike Galbraith <mgalbraith(a)suse.de>
Date: Tue Sep 3 15:45:02 CEST 2013
References: bnc#625079, bnc#834223
Signed-off-by: Mike Galbraith <mgalbraith(a)suse.de>
---
libcpuset.c | 166 ++++++++++++++++++++++++++++++++++++++++++++----------------
1 file changed, 124 insertions(+), 42 deletions(-)
--- a/libcpuset.c
+++ b/libcpuset.c
@@ -107,6 +107,69 @@ struct cpuset {
/* Discovered cpuset file system mount point */
static char cpusetmnt[PATH_MAX];
+/* Is cpuset mounted as a cgroup controller? */
+static int cpusetmnt_is_cgroup;
+
+enum {
+ IDX_TASKS = 0,
+ IDX_CPUS,
+ IDX_CPU_EXCLUSIVE,
+ IDX_MEMS,
+ IDX_MEM_EXCLUSIVE,
+ IDX_MEM_HARDWALL,
+ IDX_MEMORY_MIGRATE,
+ IDX_MEMORY_PRESSURE,
+ IDX_MEMORY_PRESSURE_ENABLED,
+ IDX_MEMORY_SPREAD_PAGE,
+ IDX_MEMORY_SPREAD_SLAB,
+ IDX_SCHED_LOAD_BALANCE,
+ IDX_SCHED_RELAX_DOMAIN_LEVEL,
+ IDX_NOTIFY_ON_RELEASE,
+ IDX_RELEASE_AGENT,
+ IDX_NR_CPUSET_FILES,
+};
+
+static const char *cpuset_filenames[] =
+{
+ [IDX_TASKS] = "tasks",
+ [IDX_CPUS] = "cpus",
+ [IDX_CPU_EXCLUSIVE] = "cpu_exclusive",
+ [IDX_MEMS] = "mems",
+ [IDX_MEM_EXCLUSIVE] = "mem_exclusive",
+ [IDX_MEM_HARDWALL] = "mem_hardwall",
+ [IDX_MEMORY_MIGRATE] = "memory_migrate",
+ [IDX_MEMORY_PRESSURE] = "memory_pressure",
+ [IDX_MEMORY_PRESSURE_ENABLED] = "memory_pressure_enabled",
+ [IDX_MEMORY_SPREAD_PAGE] = "memory_spread_page",
+ [IDX_MEMORY_SPREAD_SLAB] = "memory_spread_slab",
+ [IDX_SCHED_LOAD_BALANCE] = "sched_load_balance",
+ [IDX_SCHED_RELAX_DOMAIN_LEVEL] = "sched_relax_domain_level",
+ [IDX_NOTIFY_ON_RELEASE] = "notify_on_release",
+ [IDX_RELEASE_AGENT] = "release_agent",
+};
+
+static const char *cgroup_filenames[] =
+{
+ [IDX_TASKS] = "tasks",
+ [IDX_CPUS] = "cpuset.cpus",
+ [IDX_CPU_EXCLUSIVE] = "cpuset.cpu_exclusive",
+ [IDX_MEMS] = "cpuset.mems",
+ [IDX_MEM_EXCLUSIVE] = "cpuset.mem_exclusive",
+ [IDX_MEM_HARDWALL] = "cpuset.mem_hardwall",
+ [IDX_MEMORY_MIGRATE] = "cpuset.memory_migrate",
+ [IDX_MEMORY_PRESSURE] = "cpuset.memory_pressure",
+ [IDX_MEMORY_PRESSURE_ENABLED] = "cpuset.memory_pressure_enabled",
+ [IDX_MEMORY_SPREAD_PAGE] = "cpuset.memory_spread_page",
+ [IDX_MEMORY_SPREAD_SLAB] = "cpuset.memory_spread_slab",
+ [IDX_SCHED_LOAD_BALANCE] = "cpuset.sched_load_balance",
+ [IDX_SCHED_RELAX_DOMAIN_LEVEL] = "cpuset.sched_relax_domain_level",
+ [IDX_NOTIFY_ON_RELEASE] = "notify_on_release",
+ [IDX_RELEASE_AGENT] = "release_agent",
+};
+
+/* Pointer to cpuset/cgroup_filenames, depending on detected mount type */
+static const char **filenames = &cpuset_filenames[0];
+
/* Stashed copy of cpunodemap[], mapping each cpu to its node. */
static const char *mapfile = "/var/run/cpunodemap";
@@ -234,6 +297,25 @@ static int check()
end = strstr(start, " ");
*end = '\0';
strcpy(cpusetmnt, start);
+ /*
+ * Now check for a -t cgroup vs -t cpuset mount,
+ * a cgroup mount prefixes files with "cpuset.".
+ * If neither is found, something is whacky, skip
+ * this mountpoint.
+ */
+ strcpy(buf, cpusetmnt);
+ strcat(buf, "/cpuset.cpus");
+ if (stat(buf, &statbuf) == 0) {
+ cpusetmnt_is_cgroup = 1;
+ filenames = cgroup_filenames;
+ } else {
+ strcpy(buf, cpusetmnt);
+ strcat(buf, "/cpus");
+ if (stat(buf, &statbuf) != 0) {
+ *cpusetmnt = '\0';
+ continue;
+ }
+ }
found = 1;
break;
}
@@ -1664,48 +1746,48 @@ int cpuset_cpu2node(int cpu)
static int apply_cpuset_settings(const char *path, const struct cpuset *cp)
{
if (cp->cpu_exclusive_valid &&
- store_flag(path, "cpu_exclusive", cp->cpu_exclusive) < 0)
+ store_flag(path, filenames[IDX_CPU_EXCLUSIVE], cp->cpu_exclusive) < 0)
goto err;
if (cp->mem_exclusive_valid &&
- store_flag(path, "mem_exclusive", cp->mem_exclusive) < 0)
+ store_flag(path, filenames[IDX_MEM_EXCLUSIVE], cp->mem_exclusive) < 0)
goto err;
if (cp->notify_on_release_valid &&
- store_flag(path, "notify_on_release", cp->notify_on_release) < 0)
+ store_flag(path, filenames[IDX_NOTIFY_ON_RELEASE], cp->notify_on_release) < 0)
goto err;
if (cp->memory_migrate_valid &&
- exists_flag(path, "memory_migrate")) {
- if (store_flag(path, "memory_migrate", cp->memory_migrate) < 0)
+ exists_flag(path, filenames[IDX_MEMORY_MIGRATE])) {
+ if (store_flag(path, filenames[IDX_MEMORY_MIGRATE], cp->memory_migrate) < 0)
goto err;
}
if (cp->mem_hardwall_valid &&
- exists_flag(path, "mem_hardwall")) {
- if (store_flag(path, "mem_hardwall", cp->mem_hardwall) < 0)
+ exists_flag(path, filenames[IDX_MEM_HARDWALL])) {
+ if (store_flag(path, filenames[IDX_MEM_HARDWALL], cp->mem_hardwall) < 0)
goto err;
}
if (cp->memory_pressure_enabled_valid &&
- exists_flag(path, "memory_pressure_enabled")) {
- if (store_flag(path, "memory_pressure_enabled", cp->memory_pressure_enabled) < 0)
+ exists_flag(path, filenames[IDX_MEMORY_PRESSURE_ENABLED])) {
+ if (store_flag(path, filenames[IDX_MEMORY_PRESSURE_ENABLED], cp->memory_pressure_enabled) < 0)
goto err;
}
if (cp->memory_spread_page_valid &&
- exists_flag(path, "memory_spread_page")) {
- if (store_flag(path, "memory_spread_page", cp->memory_spread_page) < 0)
+ exists_flag(path, filenames[IDX_MEMORY_SPREAD_PAGE])) {
+ if (store_flag(path, filenames[IDX_MEMORY_SPREAD_PAGE], cp->memory_spread_page) < 0)
goto err;
}
if (cp->memory_spread_slab_valid &&
- exists_flag(path, "memory_spread_slab")) {
- if (store_flag(path, "memory_spread_slab", cp->memory_spread_slab) < 0)
+ exists_flag(path, filenames[IDX_MEMORY_SPREAD_SLAB])) {
+ if (store_flag(path, filenames[IDX_MEMORY_SPREAD_SLAB], cp->memory_spread_slab) < 0)
goto err;
}
if (cp->sched_load_balance_valid &&
- exists_flag(path, "sched_load_balance")) {
- if (store_flag(path, "sched_load_balance", cp->sched_load_balance) < 0)
+ exists_flag(path, filenames[IDX_SCHED_LOAD_BALANCE])) {
+ if (store_flag(path, filenames[IDX_SCHED_LOAD_BALANCE], cp->sched_load_balance) < 0)
goto err;
}
- if (cp->cpus_valid && store_mask(path, "cpus", cp->cpus) < 0)
+ if (cp->cpus_valid && store_mask(path, filenames[IDX_CPUS], cp->cpus) < 0)
goto err;
- if (cp->mems_valid && store_mask(path, "mems", cp->mems) < 0)
+ if (cp->mems_valid && store_mask(path, filenames[IDX_MEMS], cp->mems) < 0)
goto err;
return 0;
err:
@@ -1940,59 +2022,59 @@ int cpuset_query(struct cpuset *cp, cons
fullpath(buf, sizeof(buf), relpath);
- if (load_flag(buf, &cp->cpu_exclusive, "cpu_exclusive") < 0)
+ if (load_flag(buf, &cp->cpu_exclusive, filenames[IDX_CPU_EXCLUSIVE]) < 0)
goto err;
cp->cpu_exclusive_valid = 1;
- if (load_flag(buf, &cp->mem_exclusive, "mem_exclusive") < 0)
+ if (load_flag(buf, &cp->mem_exclusive, filenames[IDX_MEM_EXCLUSIVE]) < 0)
goto err;
cp->mem_exclusive_valid = 1;
- if (load_flag(buf, &cp->notify_on_release, "notify_on_release") < 0)
+ if (load_flag(buf, &cp->notify_on_release, filenames[IDX_NOTIFY_ON_RELEASE]) < 0)
goto err;
cp->notify_on_release_valid = 1;
- if (exists_flag(buf, "memory_migrate")) {
- if (load_flag(buf, &cp->memory_migrate, "memory_migrate") < 0)
+ if (exists_flag(buf, filenames[IDX_MEMORY_MIGRATE])) {
+ if (load_flag(buf, &cp->memory_migrate, filenames[IDX_MEMORY_MIGRATE]) < 0)
goto err;
cp->memory_migrate_valid = 1;
}
- if (exists_flag(buf, "mem_hardwall")) {
- if (load_flag(buf, &cp->mem_hardwall, "mem_hardwall") < 0)
+ if (exists_flag(buf, filenames[IDX_MEM_HARDWALL])) {
+ if (load_flag(buf, &cp->mem_hardwall, filenames[IDX_MEM_HARDWALL]) < 0)
goto err;
cp->mem_hardwall_valid = 1;
}
- if (exists_flag(buf, "memory_pressure_enabled")) {
- if (load_flag(buf, &cp->memory_pressure_enabled, "memory_pressure_enabled") < 0)
+ if (exists_flag(buf, filenames[IDX_MEMORY_PRESSURE_ENABLED])) {
+ if (load_flag(buf, &cp->memory_pressure_enabled, filenames[IDX_MEMORY_PRESSURE_ENABLED]) < 0)
goto err;
cp->memory_pressure_enabled_valid = 1;
}
- if (exists_flag(buf, "memory_spread_page")) {
- if (load_flag(buf, &cp->memory_spread_page, "memory_spread_page") < 0)
+ if (exists_flag(buf, filenames[IDX_MEMORY_SPREAD_PAGE])) {
+ if (load_flag(buf, &cp->memory_spread_page, filenames[IDX_MEMORY_SPREAD_PAGE]) < 0)
goto err;
cp->memory_spread_page_valid = 1;
}
- if (exists_flag(buf, "memory_spread_slab")) {
- if (load_flag(buf, &cp->memory_spread_slab, "memory_spread_slab") < 0)
+ if (exists_flag(buf, filenames[IDX_MEMORY_SPREAD_SLAB])) {
+ if (load_flag(buf, &cp->memory_spread_slab, filenames[IDX_MEMORY_SPREAD_SLAB]) < 0)
goto err;
cp->memory_spread_slab_valid = 1;
}
- if (exists_flag(buf, "sched_load_balance")) {
- if (load_flag(buf, &cp->sched_load_balance, "sched_load_balance") < 0)
+ if (exists_flag(buf, filenames[IDX_SCHED_LOAD_BALANCE])) {
+ if (load_flag(buf, &cp->sched_load_balance, filenames[IDX_SCHED_LOAD_BALANCE]) < 0)
goto err;
cp->sched_load_balance_valid = 1;
}
- if (load_mask(buf, &cp->cpus, cpuset_cpus_nbits(), "cpus") < 0)
+ if (load_mask(buf, &cp->cpus, cpuset_cpus_nbits(), filenames[IDX_CPUS]) < 0)
goto err;
cp->cpus_valid = 1;
- if (load_mask(buf, &cp->mems, cpuset_mems_nbits(), "mems") < 0)
+ if (load_mask(buf, &cp->mems, cpuset_mems_nbits(), filenames[IDX_MEMS]) < 0)
goto err;
cp->mems_valid = 1;
@@ -2724,16 +2806,16 @@ int cpuset_migrate(pid_t pid, const char
fullpath(buf2, sizeof(buf2), relpath);
- if (load_flag(buf2, &memory_migrate_flag, "memory_migrate") < 0)
+ if (load_flag(buf2, &memory_migrate_flag, filenames[IDX_MEMORY_MIGRATE]) < 0)
return -1;
- if (store_flag(buf2, "memory_migrate", 1) < 0)
+ if (store_flag(buf2, filenames[IDX_MEMORY_MIGRATE], 1) < 0)
return -1;
- fullpath2(buf, sizeof(buf), relpath, "tasks");
+ fullpath2(buf, sizeof(buf), relpath, filenames[IDX_TASKS]);
r = __cpuset_move(pid, buf);
- store_flag(buf2, "memory_migrate", memory_migrate_flag);
+ store_flag(buf2, filenames[IDX_MEMORY_MIGRATE], memory_migrate_flag);
return r;
}
@@ -2751,19 +2833,19 @@ int cpuset_migrate_all(struct cpuset_pid
fullpath(buf2, sizeof(buf2), relpath);
- if (load_flag(buf2, &memory_migrate_flag, "memory_migrate") < 0)
+ if (load_flag(buf2, &memory_migrate_flag, filenames[IDX_MEMORY_MIGRATE]) < 0)
return -1;
- if (store_flag(buf2, "memory_migrate", 1) < 0)
+ if (store_flag(buf2, filenames[IDX_MEMORY_MIGRATE], 1) < 0)
return -1;
- fullpath2(buf, sizeof(buf), relpath, "tasks");
+ fullpath2(buf, sizeof(buf), relpath, filenames[IDX_TASKS]);
ret = 0;
for (i = 0; i < pl->npids; i++)
if (__cpuset_move(pl->pids[i], buf) < 0)
ret = -1;
- if (store_flag(buf2, "memory_migrate", memory_migrate_flag) < 0)
+ if (store_flag(buf2, filenames[IDX_MEMORY_MIGRATE], memory_migrate_flag) < 0)
ret = -1;
return ret;
}
--
To unsubscribe, e-mail: opensuse-commit+unsubscribe(a)opensuse.org
For additional commands, e-mail: opensuse-commit+help(a)opensuse.org
1
0
Hello community,
here is the log from the commit of package ypserv for openSUSE:Factory checked in at 2014-06-01 19:40:15
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/ypserv (Old)
and /work/SRC/openSUSE:Factory/.ypserv.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "ypserv"
Changes:
--------
--- /work/SRC/openSUSE:Factory/ypserv/ypserv.changes 2014-03-14 15:18:16.000000000 +0100
+++ /work/SRC/openSUSE:Factory/.ypserv.new/ypserv.changes 2014-06-01 19:40:18.000000000 +0200
@@ -1,0 +2,5 @@
+Tue May 27 16:15:52 CEST 2014 - kukuk(a)suse.de
+
+- Adjust for latest systemd changes
+
+-------------------------------------------------------------------
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ ypserv.spec ++++++
--- /var/tmp/diff_new_pack.5PFkgB/_old 2014-06-01 19:40:19.000000000 +0200
+++ /var/tmp/diff_new_pack.5PFkgB/_new 2014-06-01 19:40:19.000000000 +0200
@@ -19,7 +19,7 @@
Name: ypserv
BuildRequires: gdbm-devel
BuildRequires: openslp-devel
-BuildRequires: pkgconfig(systemd)
+BuildRequires: pkgconfig(libsystemd-daemon)
%{?systemd_requires}
Requires: gawk
Requires: make
--
To unsubscribe, e-mail: opensuse-commit+unsubscribe(a)opensuse.org
For additional commands, e-mail: opensuse-commit+help(a)opensuse.org
1
0
Hello community,
here is the log from the commit of package perl-Types-Serialiser for openSUSE:Factory checked in at 2014-06-01 19:40:13
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/perl-Types-Serialiser (Old)
and /work/SRC/openSUSE:Factory/.perl-Types-Serialiser.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "perl-Types-Serialiser"
Changes:
--------
--- /work/SRC/openSUSE:Factory/perl-Types-Serialiser/perl-Types-Serialiser.changes 2013-12-06 14:43:36.000000000 +0100
+++ /work/SRC/openSUSE:Factory/.perl-Types-Serialiser.new/perl-Types-Serialiser.changes 2014-06-01 19:40:16.000000000 +0200
@@ -1,0 +2,10 @@
+Tue May 27 07:14:53 UTC 2014 - ncutler(a)suse.com
+
+- checked license
+- updated to 1.0
+ - clarify that the second arg of FEEZE/THAW is the data
+ model/data format name, not the serialsier.
+ - clarify that FREEZE must not modify the data structure
+ to be serialised.
+
+-------------------------------------------------------------------
Old:
----
Types-Serialiser-0.03.tar.gz
New:
----
Types-Serialiser-1.0.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ perl-Types-Serialiser.spec ++++++
--- /var/tmp/diff_new_pack.lUkUjw/_old 2014-06-01 19:40:18.000000000 +0200
+++ /var/tmp/diff_new_pack.lUkUjw/_new 2014-06-01 19:40:18.000000000 +0200
@@ -1,7 +1,7 @@
#
# spec file for package perl-Types-Serialiser
#
-# Copyright (c) 2013 SUSE LINUX Products GmbH, Nuernberg, Germany.
+# Copyright (c) 2014 SUSE LINUX Products GmbH, Nuernberg, Germany.
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@@ -17,11 +17,11 @@
Name: perl-Types-Serialiser
-Version: 0.03
+Version: 1.0
Release: 0
%define cpan_name Types-Serialiser
-Summary: simple data types for common serialisation formats
-License: GPL-1.0+ or Artistic-1.0
+Summary: Simple data types for common serialisation formats
+License: Artistic-1.0 or GPL-2.0+
Group: Development/Libraries/Perl
Url: http://search.cpan.org/dist/Types-Serialiser/
Source: http://www.cpan.org/authors/id/M/ML/MLEHMANN/%{cpan_name}-%{version}.tar.gz
++++++ Types-Serialiser-0.03.tar.gz -> Types-Serialiser-1.0.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Types-Serialiser-0.03/Changes new/Types-Serialiser-1.0/Changes
--- old/Types-Serialiser-0.03/Changes 2013-10-29 14:08:05.000000000 +0100
+++ new/Types-Serialiser-1.0/Changes 2013-11-30 19:33:28.000000000 +0100
@@ -1,12 +1,17 @@
Revision history for Perl extension Types::Serialiser
-0.03 Tue Oct 29 14:08:00 CET 2013
+1.0 Sat Nov 30 19:33:19 CET 2013
+ - clarify that the seocnd arg of FEEZE/THAW is the data
+ model/data format name, not the serialsier.
+ - clarify that FREEZE must not modify the data structure to be serialised.
+
+0.03 Tue Oct 29 14:08:00 CET 2013
- work around an overloading bug in perls < 5.18 (reported by
Paul Howarth).
- remove Types::Serialiser::Boolean module, as it serves
no purpose anymore.
-0.02 Mon Oct 28 16:29:06 CET 2013
+0.02 Mon Oct 28 16:29:06 CET 2013
- document the Types::Serialisation protocol, in the hope
of other modules picking it up.
- alias JSON::PP::Boolean as class for booleans, without
@@ -16,6 +21,6 @@
- actually add a simple testcase.
- reintroduced common::sense to supprerss spurious warnings.
-0.01 Sun Oct 27 16:37:56 CET 2013
+0.01 Sun Oct 27 16:37:56 CET 2013
- original version; cloned from JSON-XS/CBOR-XS
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Types-Serialiser-0.03/MANIFEST new/Types-Serialiser-1.0/MANIFEST
--- old/Types-Serialiser-0.03/MANIFEST 2013-10-29 14:08:25.000000000 +0100
+++ new/Types-Serialiser-1.0/MANIFEST 2013-11-30 19:33:35.000000000 +0100
@@ -8,3 +8,4 @@
t/00_load.t
t/51_types.t
META.yml Module meta-data (added by MakeMaker)
+META.json Module JSON meta-data (added by MakeMaker)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Types-Serialiser-0.03/META.json new/Types-Serialiser-1.0/META.json
--- old/Types-Serialiser-0.03/META.json 1970-01-01 01:00:00.000000000 +0100
+++ new/Types-Serialiser-1.0/META.json 2013-11-30 19:33:35.000000000 +0100
@@ -0,0 +1,41 @@
+{
+ "abstract" : "unknown",
+ "author" : [
+ "unknown"
+ ],
+ "dynamic_config" : 1,
+ "generated_by" : "ExtUtils::MakeMaker version 6.8, CPAN::Meta::Converter version 2.120921",
+ "license" : [
+ "unknown"
+ ],
+ "meta-spec" : {
+ "url" : "http://search.cpan.org/perldoc?CPAN::Meta::Spec",
+ "version" : "2"
+ },
+ "name" : "Types-Serialiser",
+ "no_index" : {
+ "directory" : [
+ "t",
+ "inc"
+ ]
+ },
+ "prereqs" : {
+ "build" : {
+ "requires" : {
+ "ExtUtils::MakeMaker" : "0"
+ }
+ },
+ "configure" : {
+ "requires" : {
+ "ExtUtils::MakeMaker" : "0"
+ }
+ },
+ "runtime" : {
+ "requires" : {
+ "common::sense" : "0"
+ }
+ }
+ },
+ "release_status" : "stable",
+ "version" : "1.0"
+}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Types-Serialiser-0.03/META.yml new/Types-Serialiser-1.0/META.yml
--- old/Types-Serialiser-0.03/META.yml 2013-10-29 14:08:25.000000000 +0100
+++ new/Types-Serialiser-1.0/META.yml 2013-11-30 19:33:35.000000000 +0100
@@ -1,11 +1,22 @@
-# http://module-build.sourceforge.net/META-spec.html
-#XXXXXXX This is a prototype!!! It will change in the future!!! XXXXX#
-name: Types-Serialiser
-version: 0.03
-version_from: Serialiser.pm
-installdirs: site
+---
+abstract: unknown
+author:
+ - unknown
+build_requires:
+ ExtUtils::MakeMaker: 0
+configure_requires:
+ ExtUtils::MakeMaker: 0
+dynamic_config: 1
+generated_by: 'ExtUtils::MakeMaker version 6.8, CPAN::Meta::Converter version 2.120921'
+license: unknown
+meta-spec:
+ url: http://module-build.sourceforge.net/META-spec-v1.4.html
+ version: 1.4
+name: Types-Serialiser
+no_index:
+ directory:
+ - t
+ - inc
requires:
- common::sense: 0
-
-distribution_type: module
-generated_by: ExtUtils::MakeMaker version 6.17
+ common::sense: 0
+version: 1.0
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Types-Serialiser-0.03/README new/Types-Serialiser-1.0/README
--- old/Types-Serialiser-0.03/README 2013-10-29 14:08:25.000000000 +0100
+++ new/Types-Serialiser-1.0/README 2013-11-30 19:33:35.000000000 +0100
@@ -79,7 +79,7 @@
pointers is faster and guaranteed to work.
For historical reasons, the "Types::Serialiser::Boolean" stash is just
- an alias for "JSON::PP::Boolean". When printed, the classname withh
+ an alias for "JSON::PP::Boolean". When printed, the classname with
usually be "JSON::PP::Boolean", but isa tests and stash pointer
comparison will normally work correctly (i.e. Types::Serialiser::true
ISA JSON::PP::Boolean, but also ISA Types::Serialiser::Boolean).
@@ -98,29 +98,42 @@
first attempt to use the special "TO_CBOR" serialisation protocol), it
will look up the "FREEZE" method on the object.
+ Note that the "FREEZE" method will normally be called *during* encoding,
+ and *MUST NOT* change the data structure that is being encoded in any
+ way, or it might cause memory corruption or worse.
+
If it exists, it will call it with two arguments: the object to
- serialise, and a constant string that indicates the name of the
- serialisationformat. For example CBOR::XS uses "CBOR", and JSON and
- JSON::XS (or any other JSON serialiser), would use "JSON" as second
+ serialise, and a constant string that indicates the name of the data
+ model. For example CBOR::XS uses "CBOR", and the JSON and JSON::XS
+ modules (or any other JSON serialiser), would use "JSON" as second
argument.
The "FREEZE" method can then return zero or more values to identify the
object instance. The serialiser is then supposed to encode the class
name and all of these return values (which must be encodable in the
- format) using the relevant form for perl objects. In CBOR for example,
+ format) using the relevant form for Perl objects. In CBOR for example,
there is a registered tag number for encoded perl objects.
The values that "FREEZE" returns must be serialisable with the
serialiser that calls it. Therefore, it is recommended to use simple
types such as strings and numbers, and maybe array references and hashes
(basically, the JSON data model). You can always use a more complex
- format for a specific serialiser by checking the second argument.
+ format for a specific data model by checking the second argument, the
+ data model.
+
+ The "data model" is not the same as the "data format" - the data model
+ indicates what types and kinds of return values can be returned from
+ "FREEZE". For example, in "CBOR" it is permissible to return tagged CBOR
+ values, while JSON does not support these at all, so "JSON" would be a
+ valid (but too limited) data model name for "CBOR::XS". similarly, a
+ serialising format that supports more or less the same data model as
+ JSON could use "JSON" as data model without losing anything.
DECODING
When the decoder then encounters such an encoded perl object, it should
look up the "THAW" method on the stored classname, and invoke it with
- the classname, the constant string to identify the format, and all the
- return values returned by "FREEZE".
+ the classname, the constant string to identify the data model/data
+ format, and all the return values returned by "FREEZE".
EXAMPLES
See the "OBJECT SERIALISATION" section in the CBOR::XS manpage for more
@@ -129,15 +142,15 @@
Here is an example "FREEZE"/"THAW" method pair:
sub My::Object::FREEZE {
- my ($self, $serialiser) = @_;
+ my ($self, $model) = @_;
($self->{type}, $self->{id}, $self->{variant})
}
sub My::Object::THAW {
- my ($class, $serialiser, $type, $id, $variant) = @_;
+ my ($class, $model, $type, $id, $variant) = @_;
- $class-<new (type => $type, id => $id, variant => $variant)
+ $class->new (type => $type, id => $id, variant => $variant)
}
BUGS
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Types-Serialiser-0.03/Serialiser.pm new/Types-Serialiser-1.0/Serialiser.pm
--- old/Types-Serialiser-0.03/Serialiser.pm 2013-10-29 14:08:14.000000000 +0100
+++ new/Types-Serialiser-1.0/Serialiser.pm 2013-11-30 19:33:18.000000000 +0100
@@ -19,7 +19,7 @@
use common::sense; # required to suppress annoying warnings
-our $VERSION = 0.03;
+our $VERSION = '1.0';
=head1 SIMPLE SCALAR CONSTANTS
@@ -159,7 +159,7 @@
For historical reasons, the C<Types::Serialiser::Boolean> stash is
just an alias for C<JSON::PP::Boolean>. When printed, the classname
-withh usually be C<JSON::PP::Boolean>, but isa tests and stash pointer
+with usually be C<JSON::PP::Boolean>, but isa tests and stash pointer
comparison will normally work correctly (i.e. Types::Serialiser::true ISA
JSON::PP::Boolean, but also ISA Types::Serialiser::Boolean).
@@ -179,30 +179,41 @@
attempt to use the special C<TO_CBOR> serialisation protocol), it will
look up the C<FREEZE> method on the object.
-If it exists, it will call it with two arguments: the object to
-serialise, and a constant string that indicates the name of the
-serialisationformat. For example L<CBOR::XS> uses C<CBOR>, and L<JSON> and
-L<JSON::XS> (or any other JSON serialiser), would use C<JSON> as second
-argument.
+Note that the C<FREEZE> method will normally be called I<during> encoding,
+and I<MUST NOT> change the data structure that is being encoded in any
+way, or it might cause memory corruption or worse.
+
+If it exists, it will call it with two arguments: the object to serialise,
+and a constant string that indicates the name of the data model. For
+example L<CBOR::XS> uses C<CBOR>, and the L<JSON> and L<JSON::XS> modules
+(or any other JSON serialiser), would use C<JSON> as second argument.
The C<FREEZE> method can then return zero or more values to identify the
object instance. The serialiser is then supposed to encode the class name
and all of these return values (which must be encodable in the format)
-using the relevant form for perl objects. In CBOR for example, there is a
+using the relevant form for Perl objects. In CBOR for example, there is a
registered tag number for encoded perl objects.
The values that C<FREEZE> returns must be serialisable with the serialiser
that calls it. Therefore, it is recommended to use simple types such as
strings and numbers, and maybe array references and hashes (basically, the
JSON data model). You can always use a more complex format for a specific
-serialiser by checking the second argument.
+data model by checking the second argument, the data model.
+
+The "data model" is not the same as the "data format" - the data model
+indicates what types and kinds of return values can be returned from
+C<FREEZE>. For example, in C<CBOR> it is permissible to return tagged CBOR
+values, while JSON does not support these at all, so C<JSON> would be a
+valid (but too limited) data model name for C<CBOR::XS>. similarly, a
+serialising format that supports more or less the same data model as JSON
+could use C<JSON> as data model without losing anything.
=head2 DECODING
When the decoder then encounters such an encoded perl object, it should
look up the C<THAW> method on the stored classname, and invoke it with the
-classname, the constant string to identify the format, and all the return
-values returned by C<FREEZE>.
+classname, the constant string to identify the data model/data format, and
+all the return values returned by C<FREEZE>.
=head2 EXAMPLES
@@ -212,15 +223,15 @@
Here is an example C<FREEZE>/C<THAW> method pair:
sub My::Object::FREEZE {
- my ($self, $serialiser) = @_;
+ my ($self, $model) = @_;
($self->{type}, $self->{id}, $self->{variant})
}
sub My::Object::THAW {
- my ($class, $serialiser, $type, $id, $variant) = @_;
+ my ($class, $model, $type, $id, $variant) = @_;
- $class-<new (type => $type, id => $id, variant => $variant)
+ $class->new (type => $type, id => $id, variant => $variant)
}
=head1 BUGS
--
To unsubscribe, e-mail: opensuse-commit+unsubscribe(a)opensuse.org
For additional commands, e-mail: opensuse-commit+help(a)opensuse.org
1
0
Hello community,
here is the log from the commit of package doomsday for openSUSE:Factory checked in at 2014-06-01 19:40:10
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/doomsday (Old)
and /work/SRC/openSUSE:Factory/.doomsday.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "doomsday"
Changes:
--------
--- /work/SRC/openSUSE:Factory/doomsday/doomsday.changes 2014-05-02 10:53:07.000000000 +0200
+++ /work/SRC/openSUSE:Factory/.doomsday.new/doomsday.changes 2014-06-01 19:40:15.000000000 +0200
@@ -1,0 +2,11 @@
+Tue May 20 12:21:57 UTC 2014 - jengelh(a)inai.de
+
+- Update to new upstream release 1.14.3, which fixes:
+* Hexen: Hub maps reset after saving, causing invalid game world
+ state
+* Doom 2: Crash playing sci2.wad MAP13
+* Better compatibility with vanilla Doom renderer: dynamic
+ map hacks dependent on non-neighbor planes
+* Hexen: Saving error — "already exists"
+
+-------------------------------------------------------------------
Old:
----
doomsday-1.14.1.tar.gz
New:
----
doomsday-1.14.3.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ doomsday.spec ++++++
--- /var/tmp/diff_new_pack.Gi5q8V/_old 2014-06-01 19:40:16.000000000 +0200
+++ /var/tmp/diff_new_pack.Gi5q8V/_new 2014-06-01 19:40:16.000000000 +0200
@@ -17,9 +17,9 @@
Name: doomsday
-Version: 1.14.1
+Version: 1.14.3
Release: 0
-%define rver 1.14.1
+%define rver 1.14.3
Summary: The Doomsday Engine: DOOM/Hertic/Hexen port with pretty graphics
License: GPL-2.0+ and GPL-2.0
Group: Amusements/Games/3D/Shoot
++++++ doomsday-1.14.1.tar.gz -> doomsday-1.14.3.tar.gz ++++++
/work/SRC/openSUSE:Factory/doomsday/doomsday-1.14.1.tar.gz /work/SRC/openSUSE:Factory/.doomsday.new/doomsday-1.14.3.tar.gz differ: char 5, line 1
--
To unsubscribe, e-mail: opensuse-commit+unsubscribe(a)opensuse.org
For additional commands, e-mail: opensuse-commit+help(a)opensuse.org
1
0
Hello community,
here is the log from the commit of package xen for openSUSE:Factory checked in at 2014-06-01 18:58:23
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/xen (Old)
and /work/SRC/openSUSE:Factory/.xen.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "xen"
Changes:
--------
--- /work/SRC/openSUSE:Factory/xen/xen.changes 2014-05-15 21:31:30.000000000 +0200
+++ /work/SRC/openSUSE:Factory/.xen.new/xen.changes 2014-06-01 18:58:38.000000000 +0200
@@ -1,0 +2,44 @@
+Tue May 27 16:54:13 CEST 2014 - ohering(a)suse.de
+
+- bnc#879425: handle cache=unsafe from libvirt to disable flush in qdisk
+ libxl.add-option-to-disable-disk-cache-flushes-in-qdisk.patch
+ qemu-xen-upstream-qdisk-cache-unsafe.patch
+
+-------------------------------------------------------------------
+Tue May 27 16:50:22 CEST 2014 - ohering(a)suse.de
+
+- libxl: introduce an option for disabling the non-O_DIRECT workaround
+ recognize direct-io-safe in domU.cfg diskspec
+ libxl.introduce-an-option-to-disable-the-non-O_DIRECT-workaround.patch
+
+-------------------------------------------------------------------
+Tue May 27 16:44:06 CEST 2014 - ohering(a)suse.de
+
+- fate#316071: add discard support for file backed storage (qdisk)
+ update patch to allow more values in overloaded ->readwrite member
+
+-------------------------------------------------------------------
+Tue May 27 08:03:51 MDT 2014 - carnold(a)suse.com
+
+- bnc#826717 - VUL-0: CVE-2013-3495: XSA-59: xen: Intel VT-d
+ Interrupt Remapping engines can be evaded by native NMI interrupts
+ 537b5e50-VT-d-apply-quirks-at-device-setup-time-rather-than-only-at-boot.patch
+ 537b5e79-VT-d-extend-error-report-masking-workaround-to-newer-chipsets.patch
+- Upstream patches from Jan
+ 53709b77-Nested-VMX-load-current_vmcs-only-when-it-exists.patch
+ 53732f4f-x86-MCE-bypass-uninitialized-vcpu-in-vMCE-injection.patch
+ 537b5ede-move-domain-to-cpupool0-before-destroying-it.patch
+
+-------------------------------------------------------------------
+Tue May 20 16:34:37 MDT 2014 - carnold(a)suse.com
+
+- Update README.SuSE with information on the toolstack change
+
+-------------------------------------------------------------------
+Fri May 16 10:27:04 CEST 2014 - ohering(a)suse.de
+
+- fate#316071: add discard support for file backed storage (qdisk)
+ update to recognize option discard/no-discard instead of discard=0,1
+ to match upstream change
+
+-------------------------------------------------------------------
New:
----
53709b77-Nested-VMX-load-current_vmcs-only-when-it-exists.patch
53732f4f-x86-MCE-bypass-uninitialized-vcpu-in-vMCE-injection.patch
537b5e50-VT-d-apply-quirks-at-device-setup-time-rather-than-only-at-boot.patch
537b5e79-VT-d-extend-error-report-masking-workaround-to-newer-chipsets.patch
537b5ede-move-domain-to-cpupool0-before-destroying-it.patch
libxl.add-option-to-disable-disk-cache-flushes-in-qdisk.patch
libxl.introduce-an-option-to-disable-the-non-O_DIRECT-workaround.patch
qemu-xen-upstream-qdisk-cache-unsafe.patch
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ xen.spec ++++++
--- /var/tmp/diff_new_pack.JjJzfv/_old 2014-06-01 18:58:40.000000000 +0200
+++ /var/tmp/diff_new_pack.JjJzfv/_new 2014-06-01 18:58:40.000000000 +0200
@@ -15,6 +15,7 @@
# Please submit bugfixes or comments via http://bugs.opensuse.org/
#
+
# needssslcertforbuild
Name: xen
@@ -153,7 +154,7 @@
%endif
%endif
-Version: 4.4.0_18
+Version: 4.4.0_20
Release: 0
PreReq: %insserv_prereq %fillup_prereq
Summary: Xen Virtualization: Hypervisor (aka VMM aka Microkernel)
@@ -249,6 +250,11 @@
Patch35: 535fa503-x86-HVM-restrict-HVMOP_set_mem_type.patch
Patch36: 53636978-hvm_set_ioreq_page-releases-wrong-page-in-error-path.patch
Patch37: 53636ebf-x86-fix-guest-CPUID-handling.patch
+Patch38: 53709b77-Nested-VMX-load-current_vmcs-only-when-it-exists.patch
+Patch39: 53732f4f-x86-MCE-bypass-uninitialized-vcpu-in-vMCE-injection.patch
+Patch40: 537b5e50-VT-d-apply-quirks-at-device-setup-time-rather-than-only-at-boot.patch
+Patch41: 537b5e79-VT-d-extend-error-report-masking-workaround-to-newer-chipsets.patch
+Patch42: 537b5ede-move-domain-to-cpupool0-before-destroying-it.patch
# Upstream qemu
Patch250: VNC-Support-for-ExtendedKeyEvent-client-message.patch
Patch251: 0001-net-move-the-tap-buffer-into-TAPState.patch
@@ -372,6 +378,9 @@
Patch465: libxl.add-option-for-discard-support-to-xl-disk-conf.patch
Patch466: aarch64-rename-PSR_MODE_ELxx-to-match-linux-headers.patch
Patch467: xl-check-for-libvirt-managed-domain.patch
+Patch468: libxl.introduce-an-option-to-disable-the-non-O_DIRECT-workaround.patch
+Patch469: libxl.add-option-to-disable-disk-cache-flushes-in-qdisk.patch
+Patch470: qemu-xen-upstream-qdisk-cache-unsafe.patch
# Hypervisor and PV driver Patches
Patch501: x86-ioapic-ack-default.patch
Patch502: x86-cpufreq-report.patch
@@ -646,6 +655,11 @@
%patch35 -p1
%patch36 -p1
%patch37 -p1
+%patch38 -p1
+%patch39 -p1
+%patch40 -p1
+%patch41 -p1
+%patch42 -p1
# Upstream qemu patches
%patch250 -p1
%patch251 -p1
@@ -768,6 +782,9 @@
%patch465 -p1
%patch466 -p1
%patch467 -p1
+%patch468 -p1
+%patch469 -p1
+%patch470 -p1
# Hypervisor and PV driver Patches
%patch501 -p1
%patch502 -p1
++++++ 53709b77-Nested-VMX-load-current_vmcs-only-when-it-exists.patch ++++++
# Commit 99c03bc6a1f8c6722926d2db781ece045f9d09ae
# Date 2014-05-12 11:59:19 +0200
# Author Edmund H White <edmund.h.white(a)intel.com>
# Committer Jan Beulich <jbeulich(a)suse.com>
Nested VMX: load current_vmcs only when it exists
There may not have valid vmcs on current CPU. So only load it when it exists.
This original fixing is from Edmud <edmund.h.white(a)intel.com>.
Signed-off-by: Edmund H White <edmund.h.white(a)intel.com>
Signed-off-by: Yang Zhang <yang.z.zhang(a)Intel.com>
Acked-by: Kevin Tian <kevin.tian(a)intel.com>
Reviewed-by: Andrew Cooper <andrew.cooper3(a)citrix.com>
--- a/xen/arch/x86/hvm/vmx/vmcs.c
+++ b/xen/arch/x86/hvm/vmx/vmcs.c
@@ -828,8 +828,12 @@ void virtual_vmcs_enter(void *vvmcs)
void virtual_vmcs_exit(void *vvmcs)
{
+ struct vmcs_struct *cur = this_cpu(current_vmcs);
+
__vmpclear(pfn_to_paddr(domain_page_map_to_mfn(vvmcs)));
- __vmptrld(virt_to_maddr(this_cpu(current_vmcs)));
+ if ( cur )
+ __vmptrld(virt_to_maddr(cur));
+
}
u64 virtual_vmcs_vmread(void *vvmcs, u32 vmcs_encoding)
++++++ 53732f4f-x86-MCE-bypass-uninitialized-vcpu-in-vMCE-injection.patch ++++++
# Commit a07084525c126c596326dc1442dd218f522f51b4
# Date 2014-05-14 10:54:39 +0200
# Author Kai Huang <kai.huang(a)linux.intel.com>
# Committer Jan Beulich <jbeulich(a)suse.com>
x86/MCE: bypass uninitialized vcpu in vMCE injection
Dom0 may bring up less number of vCPUs than xen hypervisor actually created for
it, and in this case, on Intel platform, vMCE injection to dom0 will fail due to
injecting vMCE to uninitialized vcpu, and cause dom0 crash.
Signed-off-by: Kai Huang <kai.huang(a)linux.intel.com>
Acked-by: Christoph Egger <chegger(a)amazon.de>
--- a/xen/arch/x86/cpu/mcheck/vmce.c
+++ b/xen/arch/x86/cpu/mcheck/vmce.c
@@ -357,6 +357,10 @@ int inject_vmce(struct domain *d, int vc
if ( vcpu != VMCE_INJECT_BROADCAST && vcpu != v->vcpu_id )
continue;
+ /* Don't inject to uninitialized VCPU. */
+ if ( !v->is_initialised )
+ continue;
+
if ( (has_hvm_container_domain(d) ||
guest_has_trap_callback(d, v->vcpu_id, TRAP_machine_check)) &&
!test_and_set_bool(v->mce_pending) )
++++++ 537b5e50-VT-d-apply-quirks-at-device-setup-time-rather-than-only-at-boot.patch ++++++
# Commit 5786718fbaafbe47d72cc1512cd93de79b8fc2fa
# Date 2014-05-20 15:53:20 +0200
# Author Jan Beulich <jbeulich(a)suse.com>
# Committer Jan Beulich <jbeulich(a)suse.com>
VT-d: apply quirks at device setup time rather than only at boot
Accessing extended config space may not be possible at boot time, e.g.
when the memory space used by MMCFG is reserved only via ACPI tables,
but not in the E820/UEFI memory maps (which we need Dom0 to tell us
about). Consequently the change here still leaves the issue unaddressed
for systems where the extended config space remains inaccessible (due
to firmware bugs, i.e. not properly reserving the address space of
those regions).
With the respective messages now potentially getting logged more than
once, we ought to consider whether we should issue them only if we in
fact were required to do any masking (i.e. if the relevant mask bits
weren't already set).
This is CVE-2013-3495 / XSA-59.
Signed-off-by: Jan Beulich <jbeulich(a)suse.com>
Reviewed-by: Andrew Cooper <andrew.cooper3(a)citrix.com>
Acked-by: Xiantao Zhang <xiantao.zhang(a)intel.com>
Acked-by: Yang Zhang <yang.z.zhang(a)intel.com>
--- a/xen/drivers/passthrough/vtd/extern.h
+++ b/xen/drivers/passthrough/vtd/extern.h
@@ -99,7 +99,7 @@ void platform_quirks_init(void);
void vtd_ops_preamble_quirk(struct iommu* iommu);
void vtd_ops_postamble_quirk(struct iommu* iommu);
void me_wifi_quirk(struct domain *domain, u8 bus, u8 devfn, int map);
-void pci_vtd_quirk(struct pci_dev *pdev);
+void pci_vtd_quirk(const struct pci_dev *);
int platform_supports_intremap(void);
int platform_supports_x2apic(void);
--- a/xen/drivers/passthrough/vtd/iommu.c
+++ b/xen/drivers/passthrough/vtd/iommu.c
@@ -1483,6 +1483,9 @@ static int domain_context_mapping(
break;
}
+ if ( !ret && devfn == pdev->devfn )
+ pci_vtd_quirk(pdev);
+
return ret;
}
@@ -1922,6 +1925,8 @@ static int intel_iommu_enable_device(str
struct acpi_drhd_unit *drhd = acpi_find_matched_drhd_unit(pdev);
int ret = drhd ? ats_device(pdev, drhd) : -ENODEV;
+ pci_vtd_quirk(pdev);
+
if ( ret <= 0 )
return ret;
@@ -1993,12 +1998,7 @@ static int intel_iommu_remove_device(u8
static int __init setup_dom0_device(u8 devfn, struct pci_dev *pdev)
{
- int err;
-
- err = domain_context_mapping(pdev->domain, devfn, pdev);
- if ( !err && devfn == pdev->devfn )
- pci_vtd_quirk(pdev);
- return err;
+ return domain_context_mapping(pdev->domain, devfn, pdev);
}
void clear_fault_bits(struct iommu *iommu)
--- a/xen/drivers/passthrough/vtd/quirks.c
+++ b/xen/drivers/passthrough/vtd/quirks.c
@@ -385,7 +385,7 @@ void me_wifi_quirk(struct domain *domain
* - This can cause system failure upon non-fatal VT-d faults
* - Potential security issue if malicious guest trigger VT-d faults
*/
-void __init pci_vtd_quirk(struct pci_dev *pdev)
+void pci_vtd_quirk(const struct pci_dev *pdev)
{
int seg = pdev->seg;
int bus = pdev->bus;
++++++ 537b5e79-VT-d-extend-error-report-masking-workaround-to-newer-chipsets.patch ++++++
# Commit 04734664eb20c3bf239e473af182bb7ab901d779
# Date 2014-05-20 15:54:01 +0200
# Author Jan Beulich <jbeulich(a)suse.com>
# Committer Jan Beulich <jbeulich(a)suse.com>
VT-d: extend error report masking workaround to newer chipsets
Add two more PCI IDs to the set that has been taken care of with a
different workaround long before XSA-59, and (for constency with the
newer workarounds) log a message here too.
Also move the function wide comment to the cases it applies to; this
should really have been done by d061d200 ("VT-d: suppress UR signaling
for server chipsets").
This is CVE-2013-3495 / XSA-59.
Signed-off-by: Jan Beulich <jbeulich(a)suse.com>
Reviewed-by: Andrew Cooper <andrew.cooper3(a)citrix.com>
Acked-by: Xiantao Zhang <xiantao.zhang(a)intel.com>
Acked-by: Yang Zhang <yang.z.zhang(a)intel.com>
--- a/xen/drivers/passthrough/vtd/quirks.c
+++ b/xen/drivers/passthrough/vtd/quirks.c
@@ -379,12 +379,6 @@ void me_wifi_quirk(struct domain *domain
}
}
-/*
- * Mask reporting Intel VT-d faults to IOH core logic:
- * - Some platform escalates VT-d faults to platform errors
- * - This can cause system failure upon non-fatal VT-d faults
- * - Potential security issue if malicious guest trigger VT-d faults
- */
void pci_vtd_quirk(const struct pci_dev *pdev)
{
int seg = pdev->seg;
@@ -402,10 +396,20 @@ void pci_vtd_quirk(const struct pci_dev
switch ( pci_conf_read16(seg, bus, dev, func, PCI_DEVICE_ID) )
{
+ /*
+ * Mask reporting Intel VT-d faults to IOH core logic:
+ * - Some platform escalates VT-d faults to platform errors.
+ * - This can cause system failure upon non-fatal VT-d faults.
+ * - Potential security issue if malicious guest trigger VT-d faults.
+ */
+ case 0x0e28: /* Xeon-E5v2 (IvyBridge) */
case 0x342e: /* Tylersburg chipset (Nehalem / Westmere systems) */
+ case 0x3728: /* Xeon C5500/C3500 (JasperForest) */
case 0x3c28: /* Sandybridge */
val = pci_conf_read32(seg, bus, dev, func, 0x1AC);
pci_conf_write32(seg, bus, dev, func, 0x1AC, val | (1 << 31));
+ printk(XENLOG_INFO "Masked VT-d error signaling on %04x:%02x:%02x.%u\n",
+ seg, bus, dev, func);
break;
/* Tylersburg (EP)/Boxboro (MP) chipsets (NHM-EP/EX, WSM-EP/EX) */
++++++ 537b5ede-move-domain-to-cpupool0-before-destroying-it.patch ++++++
# Commit bac6334b51d9bcfe57ecf4a4cb5288348fcf044a
# Date 2014-05-20 15:55:42 +0200
# Author Juergen Gross <juergen.gross(a)ts.fujitsu.com>
# Committer Jan Beulich <jbeulich(a)suse.com>
move domain to cpupool0 before destroying it
Currently when a domain is destroyed it is removed from the domain_list
before all of it's resources, including the cpupool membership, are freed.
This can lead to a situation where the domain is still member of a cpupool
without for_each_domain_in_cpupool() (or even for_each_domain()) being
able to find it any more. This in turn can result in rejection of removing
the last cpu from a cpupool, because there seems to be still a domain in
the cpupool, even if it can't be found by scanning through all domains.
This situation can be avoided by moving the domain to be destroyed to
cpupool0 first and then remove it from this cpupool BEFORE deleting it from
the domain_list. As cpupool0 is always active and a domain without any cpupool
membership is implicitly regarded as belonging to cpupool0, this poses no
problem.
Signed-off-by: Juergen Gross <juergen.gross(a)ts.fujitsu.com>
Reviewed-by: Jan Beulich <jbeulich(a)suse.com>
Acked-by: George Dunlap <george.dunlap(a)eu.citrix.com>
--- a/xen/common/domain.c
+++ b/xen/common/domain.c
@@ -539,6 +539,8 @@ int domain_kill(struct domain *d)
BUG_ON(rc != -EAGAIN);
break;
}
+ if ( sched_move_domain(d, cpupool0) )
+ return -EAGAIN;
for_each_vcpu ( d, v )
unmap_vcpu_info(v);
d->is_dying = DOMDYING_dead;
@@ -721,8 +723,6 @@ static void complete_domain_destroy(stru
sched_destroy_domain(d);
- cpupool_rm_domain(d);
-
/* Free page used by xen oprofile buffer. */
#ifdef CONFIG_XENOPROF
free_xenoprof_pages(d);
@@ -770,6 +770,8 @@ void domain_destroy(struct domain *d)
if ( _atomic_read(old) != 0 )
return;
+ cpupool_rm_domain(d);
+
/* Delete from task list and task hashtable. */
TRACE_1D(TRC_SCHED_DOM_REM, d->domain_id);
spin_lock(&domlist_update_lock);
++++++ README.SuSE ++++++
--- /var/tmp/diff_new_pack.JjJzfv/_old 2014-06-01 18:58:41.000000000 +0200
+++ /var/tmp/diff_new_pack.JjJzfv/_new 2014-06-01 18:58:41.000000000 +0200
@@ -5,8 +5,8 @@
For more in-depth documentation of using Xen on SUSE, consult the
virtualization chapter in the SLES or SUSE Linux manual, or read up-to-date
-virtualization information, including a list of known issues, at
-http://www.novell.com/documentation/vmserver/.
+virtualization information, at
+https://www.suse.com/documentation/sles11/singlehtml/book_xen/book_xen.html
For more complete documentation on Xen itself, please install one of the
xen-doc-* packages and read the documentation installed into
@@ -30,13 +30,10 @@
graphical desktop environment like KDE or GNOME. The following optional
packages are needed to manage VMs graphically. Note that "Install Hypervisor
and Tools" installs all the packages below:
- vm-install (Optional, to install VMs)
+ virt-install (Optional, to install VMs)
virt-manager (Optional, to manage VMs graphically)
virt-viewer (Optional, to view VMs outside virt-manager)
-
-Additional packages:
- nbd-client (Optional, to access virtual disks stored on NBD servers)
- open-iscsi (Optional, to access virtual disks stored on iSCSI targets)
+ vm-install (Optional, to install VMs with xl only)
You then need to reboot your machine. Instead of booting a normal Linux
kernel, you will boot the Xen hypervisor and a slightly changed Linux kernel.
@@ -66,7 +63,7 @@
is unprivileged (that is, it cannot control other domains). A kernel used in
an unprivileged domain may be referred to as a domU kernel.
-Novell documentation will use the more industry-standard term "virtual
+SUSE documentation will use the more industry-standard term "virtual
machine", or "VM", rather than "domain" where possible. And to that end,
domain 0 will be called the "virtual machine server", since it essentially the
server on which the other VMs run. All other domains are simply "virtual
@@ -110,25 +107,8 @@
of the kernel-xen* packages later, a "XEN" option should exist in your Grub
bootloader. Select that to boot SUSE on top of Xen.
-If you want to add additional entries, or modify the existing ones, you will
-have to edit Grub yourself. All Xen entries in the Grub configuration file
-(usually /boot/grub/menu.lst) look something like this:
-
-title XEN
- root (hd0,5)
- kernel /xen.gz
- module /vmlinuz-xen <parameters>
- module /initrd-xen
-
-Replace (hd0,5) with the partition that holds your /boot directory in
-grub-speak, e.g., hda1 -> (hd0,0) and sda5 -> (hd2,4).
-
-Normally, xen.gz requires no parameters. If you want to add parameters,
-see below.
-
-Replace "<parameters>" with the kernel parameters that you want to pass to
-your kernel. These should be very similar, if not identical, to those passed
-to a normal kernel that you boot on bare iron.
+If you want to add additional entries, or modify the existing ones, you may
+run the YaST2 Boot Loader program.
Once you have booted this configuration successfully, you are running Xen with
a privileged kernel on top of it.
@@ -139,44 +119,40 @@
Normally, xen.gz requires no parameters. However, in special cases (such as
debugging or a dedicated VM server) you may wish to pass it parameters.
+Adding parameters to xen.gz can be done by editing the /etc/default/grub file.
+Add the following line to this file; GRUB_CMDLINE_XEN="<parameters>". The
+parameters may be valid options passed to xen.gz (the hypervisor). After
+editing this file, you must run 'grub2-mkconfig -o /boot/grub2/grub.cfg' for
+the changes to take effect and then reboot.
+
In particular in case of problems you may want to attach a serial terminal and
direct Xen to send its output not only to the screen, but also to that
terminal. In order to do so, add "console=vga,com<n> com<n>=<baud>" (without
the quotes and with <n> replaced by the serial port number - generally 1 or 2 -
and with <baud> replaced by the baud rate the serial terminal is configured
-for) to the xen.gz line.
+for) to the GRUB_CMDLINE_XEN line.
For a more complete discussion of possible parameters, see the user
documentation in the xen-doc-* packages.
-Init scripts
-------------
-Before you can create additional VMs (or use any other xm command) xend must
-be running. This init script is part of the xen-tools package, and it is
-activated at installation time. You can (de)activate it using insserv. You
-can also start it manually with "rcxend start".
-
-The deprecated xendomains script is also shipped, but disabled by default. In
-SLES 10 GA (xen 3.0.2) and older, this script allowed VMs to be started and
-stopped automatically when the machine starts and stops. In SLES 10 SP1 (xen
-3.0.4) and newer, the proper way to start and stop VMs automatically is to set
-the "on_xend_start" and "on_xend_stop" settings in the VMs configuration.
-(Deprecating xendomains was necessary because xend, not the configuration file
-in /etc/xen/vm, is now the authoritative source for the VM's settings.)
-Consult the online documentation for more information.
-
-
-Creating a VM with vm-install
------------------------------
-The vm-install program (part of the vm-install package, and accessible
+Creating a VM with virt-install
+-------------------------------
+The virt-install program (part of the virt-install package, and accessible
through YaST's Control Center) is the recommended method to create VMs. This
-program handles creating both the VM's configuration file and disk(s). It can
-help install any operating system, not just SUSE.
-
-From the command line, run "vm-install". If the DISPLAY environment variable
-is set and the supporting packages (python-gtk) are installed, a graphical
-wizard will start. Otherwise, a text wizard will start.
+program handles creating both the VM's libvirt XML definition and disk(s).
+It can help install any operating system, not just SUSE. Virt-install has both
+a command line only mode and a graphical wizard mode that may be used to define
+and start VM installations.
+
+Virt-install may be launched from the virt-manager VM management tool. After
+starting virt-manager either from the YaST Control Center or by starting
+it from the command line. The installation icon from the main virt-manager
+screen may be selected to begin the virt-install installation wizard.
+
+The use of virt-install or virt-manager requires the installation of the
+libvirt packages and the libvirt daemon must be running on the host unless
+you are managing a remote host.
Each VM needs to have its own root filesystem. The root filesystem can live
on a block device (e.g., a hard disk partition, or an LVM2 or EVMS volume) or
@@ -193,6 +169,29 @@
range of MAC addresses with the OUI of 00-16-3E. By using MACs from this
range you can be sure they will not conflict with any physical adapters.
+When the VM shuts down (because the installation -- or at least the first
+stage of it -- is done), the wizard finalizes the VM's configuration and
+restarts the VM.
+
+The creation of VMs can be automated; read the virt-install man page for more
+details. The installation of an OS within the VM can be automated if the OS
+supports it.
+
+
+Creating a VM with vm-install
+-----------------------------
+The vm-install program is also provided to create VMs. Like virt-install,
+this optional program handles creating both the VM's Libvirt XML definition
+and disk(s). It also creates a legacy configuration file for use with 'xl'.
+It can help install any operating system, not just SUSE.
+
+From the command line, run "vm-install". If the DISPLAY environment variable
+is set and the supporting packages (python-gtk) are installed, a graphical
+wizard will start. Otherwise, a text wizard will start. If vm-install is
+started with the '--use-xl' flag, it will not require libvirt nor attempt
+to communicate with libvirt when creating a VM and instead will only use the
+'xl' toolstack to start VM installations.
+
Once you have the VM configured, click "OK". The wizard will now create a
configuration file for the VM, and create a disk image. The disk image will
exist in /var/lib/xen/images, and a corresponding config file will exist in
@@ -210,7 +209,7 @@
Creating a VM Manually
----------------------
-If you create a VM manually (as opposed to using vm-install, which is the
+If you create a VM manually (as opposed to using virt-install, which is the
recommended way), you will need to create a disk (or reuse an existing one)
and a configuration file.
@@ -222,48 +221,68 @@
that might be present in the VM's disk. It is possible to manually copy the
kernel and ramdisk from the VM's disk (for example, after updating the kernel
within that VM) to the VM server's filesystem. However, an easier (and less
-error-prone) method is to use something called the "domUloader". Before a new
+error-prone) method is to use something called the "pygrub". Before a new
VM is started, this loader automatically copies the kernel and ramdisk into
the VM server's filesystem, so that it can be used to bootstrap the new VM.
-See /etc/xen/examples/xmexample.domUloader for an example.
Next, make a copy of one of the /etc/xen/examples/* files, and modify it to
-suit your needs. For paravirtualized VMs, start with
-/etc/xen/examples/xmexample1; for fully virtualized VMs, start with
-/etc/xen/examples/xmexample.hvm. You'll need to change (at very least) the
-"name" and "disk" parameters.
+suit your needs. You'll need to change (at very least) the "name" and "disk"
+parameters. See /etc/xen/examples/ for example configuration files.
Managing Virtual Machines
-------------------------
-VMs can be managed from the command line or from virt-manager.
+VMs can be managed from the command line using 'virsh' or from virt-manager.
-Before a VM can be started, xend must be informed of it. vm-install will
-automatically import new VM configurations into xend. However, if you copy a
-VM from another machine, or manually create a VM configuration file, you will
-need to import it into xend with a command like:
- xm new my-vm
-If your VM's configuration file is not located in /etc/xen/vm, you must
-specify the full path. This imports the configuration into xend (and
-therefore virt-manager becomes aware of it, also).
+VMs created by virt-install or vm-install (without vm-install's --use-xl flag)
+will automatically be defined in libvirt. VMs defined in libvirt may be managed
+by virt-manager or from the command line using the 'virsh' command. However,
+if you copy a VM from another machine and manually create a VM XML configuration
+file, you will need to import it into libvirt with a command like:
+ virsh define <path to>/my-vm.xml
+This imports the configuration into libvirt (and therefore virt-manager becomes
+aware of it, also).
Now to start the VM:
- xm start my-vm
-or start it graphically from virt-manager.
+ virsh start my-vm
+or start it from virt-manager's graphical menu.
-Have a look at running sessions with "xm list". Note the ID of the newly
-created VM. Attach to the VM's text console with "xm console <ID>" (replacing
-ID with the VM's ID). Attaching to multiple VM consoles is most conveniently
-done with the terminal multiplexer "screen".
-
-Have a look at the other xm commands by typing "xm help". Note that most xm
-commands must be done as root.
+Have a look at running sessions with "virsh list". Note the ID of the newly
+created VM. Attach to the VM's text console with "virsh console <ID>"
+(replacing ID with the VM's ID). Attaching to multiple VM consoles is most
+conveniently done with the terminal multiplexer "screen".
+
+Have a look at the other virsh commands by typing "virsh help". Note that most
+virsh commands must be done as root.
+
+
+Changes in the Xen VM Management Toolstack
+------------------------------------------
+With SUSE Linux Enterprise Server 12, the way VMs are managed has changed
+when compared with older SLES versions. Users familiar with the 'xm' command
+and the xend management daemon will notice that these are absent. The xm/xend
+toolstack has been replaced with the xl toolstack. The xl toolstack is
+intended to remain backwards compatible with existing xm domain configuration
+files. Most 'xm' commands can simply be replaced with 'xl'. One significant
+difference is that xl does not support the concept of Managed Domains. The xl
+command can only modifiy running VMs. Once the VM is shutdown, there is no
+preserved state information other than what is saved in the configuration
+file used to start the VM. In order to provide Managed Domains, users are
+encouraged to use libvirt and it's tools to create and modify VMs. These
+tools include the command line tool 'virsh' and the graphical tools
+virt-manager and virt-install.
+
+Warning: Using xl commands to modify libvirt managed domains will result in
+errors when virsh or virt-manager is used. Please use only virsh or
+virt-manager to manage libvirt managed domains. If you are not using libvirt
+managed domains then using xl commands is the correct way to modify running
+domains.
Using the Mouse via VNC in Fully Virtual Mode
---------------------------------------------
In a fully virtualized VM, the mouse may be emulated as a PS/2 mouse, USB
-mouse, or USB tablet. The vm-install tool selects the best emulation that is
+mouse, or USB tablet. The virt-install tool selects the best emulation that is
known to be automatically detected and supported by the operating system.
However, when accessing some fully virtualized operating systems via VNC, the
@@ -302,13 +321,6 @@
EndSection
After making these changes, restart gpm and X.
-To ensure the VM is emulating a USB tablet, add these lines to the
-configuration file in /etc/xen/vm:
- usb=1
- usbdevice='tablet'
-Then re-import the configuration into xend:
- xm new my-vm
-
HVM Console in Fully Virtual Mode
---------------------------------
@@ -411,10 +423,8 @@
To allow relocation of VMs (migration), the receiving machine listens on TCP
port 8002. You might want to put firewall rules in place in domain 0 to
-restrict this to machines which you trust. You have some access control in
-xend-config.sxp as well by tweaking the xend-relocation-hosts-allow
-setting. Relocating VMs with sensitive data is not a good idea in untrusted
-networks, since the data is not sent encrypted.
+restrict this to machines which you trust. Relocating VMs with sensitive data
+is not a good idea in untrusted networks, since the data is not sent encrypted.
The memory protections for the domUs are effective; so far no way to break out
of a virtual machine is known. A VM is an effective jail.
@@ -457,7 +467,7 @@
Troubleshooting
---------------
-First try to get Linux running on bare iron before trying with Xen.
+First try to get Linux running on bare metal before trying with Xen.
Be sure your Xen hypervisor (xen) and VM kernels (kernel-xen) are compatible.
The hypervisor and domain 0 kernel are a matched set, and usually must be
@@ -491,7 +501,7 @@
To something like this:
kernel (hd0,5)/xen-dbg.gz noreboot
After rebooting, the Xen hypervisor will write any error messages to the log
-file (viewable with the "xm dmesg" command).
+file (viewable with the "xl dmesg" command).
If problems persist, check if a newer version is available. Well-tested
versions will be shipped with SUSE and via YaST Online Update. More frequent
@@ -502,10 +512,20 @@
Upgrading the Host Operating System
-----------------------------------
When upgrading the host operating system from one major release to another
-(for example, SLES 10 to SLES 11 or openSUSE 11.4 to openSUSE 12.1) or when
-applying a service pack like SLES 11 SP2 to SLES 11 SP1 all running VMs must
+(for example, SLES 11 to SLES 12 or openSUSE 12.3 to openSUSE 13.1) or when
+applying a service pack like SLES 11 SP3 to SLES 11 SP2 all running VMs must
be shut down before the upgrade process is begun.
+On versions of SLES 11 and openSUSE 12 you are using the xm/xend toolstack.
+After upgrading to SLES 12 and newer openSUSE versions this toolstack will be
+replaced with the xl toolstack. The xl toolstack does not support Managed
+Domains. If you wish to continue using Managed Domains you must switch to
+using libvirt and its command line interface 'virsh'. You may also use
+virt-manager as a GUI interface to libvirt. After upgrading the host but
+before you can begin using libvirt on VMs that were previously managed by
+xm/xend, you must run a conversion tool called /usr/sbin/xen2libvirt for all
+VMs. Run 'xen2libvirt -h' to see the syntax for using this tool.
+
Memory Ballooning in VMs
------------------------
@@ -519,9 +539,10 @@
to take effect.
-Known Issues
-------------
-For a list of known issues and work-arounds, see
+Resources
+---------
+https://www.suse.com/documentation/sles11/singlehtml/book_xen/book_xen.html
+http://doc.opensuse.org/products/draft/SLES/SLES-xen_sd_draft/cha.xen.basics.html
http://www.novell.com/documentation/vmserver/.
@@ -540,10 +561,10 @@
In case you have remarks about, problems with, ideas for, or praise for Xen,
please report it back to the xen-devel list:
xen-devel(a)lists.xensource.com
-If you find issues with the packaging or setup done by Novell/SUSE, please
-report it to:
- http://www.suse.de/feedback/
+If you find issues with the packaging or setup done by SUSE, please report
+it through bugzilla:
+ https://bugzilla.novell.com
ENJOY!
- Your Novell SUSE Team.
+ Your SUSE Team.
++++++ libxl.add-option-for-discard-support-to-xl-disk-conf.patch ++++++
--- /var/tmp/diff_new_pack.JjJzfv/_old 2014-06-01 18:58:41.000000000 +0200
+++ /var/tmp/diff_new_pack.JjJzfv/_new 2014-06-01 18:58:41.000000000 +0200
@@ -1,55 +1,57 @@
References: FATE#316071
Subject: libxl: add option for discard support to xl disk configuration
-Handle new option discard=on|off for disk configuration. It is supposed
-to disable discard support if file based backing storage was
+Handle new boolean option discard/no-discard for disk configuration. It
+is supposed to disable discard support if file based backing storage was
intentionally created non-sparse to avoid fragmentation of the file.
-The option is a boolean and intended for the backend driver. A new
-boolean property "discard-enable" is written to the backend node. An
-upcoming patch for qemu will make use of this property. The kernel
-blkback driver may be updated as well to disable discard for phy based
-backing storage.
+The option intended for the backend driver. A new boolean property
+"discard-enable" is written to the backend node. An upcoming patch for
+qemu will make use of this property. The kernel blkback driver may be
+updated as well to disable discard for phy based backing storage.
-This change does not break ABI. Instead of adding a new member ->discard_enable
-to struct libxl_device_disk the existing ->readwrite member is reused.
+This change does not break ABI. Instead of adding a new member
+discard_enable to struct libxl_device_disk the existing readwrite member
+is reused.
Signed-off-by: Olaf Hering <olaf(a)aepfle.de>
---
- docs/misc/xl-disk-configuration.txt | 15 +++++++++++++++
+ docs/misc/xl-disk-configuration.txt | 17 +++++++++++++++++
tools/libxl/libxl.c | 2 ++
- tools/libxl/libxl.h | 11 +++++++++++
+ tools/libxl/libxl.h | 12 ++++++++++++
tools/libxl/libxlu_disk.c | 3 +++
tools/libxl/libxlu_disk_i.h | 2 +-
- tools/libxl/libxlu_disk_l.l | 4 ++++
- 6 files changed, 36 insertions(+), 1 deletion(-)
+ tools/libxl/libxlu_disk_l.l | 2 ++
+ 6 files changed, 37 insertions(+), 1 deletion(-)
Index: xen-4.4.0-testing/docs/misc/xl-disk-configuration.txt
===================================================================
--- xen-4.4.0-testing.orig/docs/misc/xl-disk-configuration.txt
+++ xen-4.4.0-testing/docs/misc/xl-disk-configuration.txt
-@@ -178,6 +178,21 @@ information to be interpreted by the exe
- These scripts are normally called "block-<script>".
+@@ -179,6 +179,23 @@ These scripts are normally called "block
-+discard=<boolean>
+
++discard / no-discard
+---------------
+
-+Description: Instruct backend to advertise discard support to frontend
-+Supported values: on, off, 0, 1
++Description: Request backend to advertise discard support to frontend
++Supported values: discard
++ no-discard
+Mandatory: No
-+Default value: on if, available for that backend typ
++Default value: discard
+
-+This option is an advisory setting for the backend driver, depending of the
-+value, to advertise discard support (TRIM, UNMAP) to the frontend. The real
-+benefit of this option is to be able to force it off rather than on. It allows
-+to disable "hole punching" for file based backends which were intentionally
-+created non-sparse to avoid fragmentation of the file.
++An advisory setting for the backend driver, specifying whether, to
++advertise discard support (TRIM, UNMAP) to the frontend. The real
++benefit of this option is to be able to force it off rather than on. It
++can be used to disable "hole punching" for file based backends which
++were intentionally created non-sparse to avoid fragmentation of the
++file.
+
+
-
============================================
DEPRECATED PARAMETERS, PREFIXES AND SYNTAXES
+ ============================================
Index: xen-4.4.0-testing/tools/libxl/libxl.c
===================================================================
--- xen-4.4.0-testing.orig/tools/libxl/libxl.c
@@ -58,7 +60,7 @@
flexarray_append(back, disk->readwrite ? "w" : "r");
flexarray_append(back, "device-type");
flexarray_append(back, disk->is_cdrom ? "cdrom" : "disk");
-+ if (disk->readwrite == LIBXL_HAVE_LIBXL_DEVICE_DISK_DISCARD_DISABLE_MAGIC)
++ if ((disk->readwrite & ~LIBXL_HAVE_LIBXL_DEVICE_DISK_DISCARD_DISABLE_MASK) == LIBXL_HAVE_LIBXL_DEVICE_DISK_DISCARD_DISABLE_MAGIC)
+ flexarray_append_pair(back, "discard-enable", "0");
flexarray_append(front, "backend-id");
@@ -67,7 +69,7 @@
===================================================================
--- xen-4.4.0-testing.orig/tools/libxl/libxl.h
+++ xen-4.4.0-testing/tools/libxl/libxl.h
-@@ -95,6 +95,17 @@
+@@ -95,6 +95,18 @@
#define LIBXL_HAVE_BUILDINFO_EVENT_CHANNELS 1
/*
@@ -79,7 +81,8 @@
+ * readwrite == MAGIC: disk is readwrite, backend driver should not offer
+ * discard to the frontend driver.
+ */
-+#define LIBXL_HAVE_LIBXL_DEVICE_DISK_DISCARD_DISABLE_MAGIC 0xdcadU
++#define LIBXL_HAVE_LIBXL_DEVICE_DISK_DISCARD_DISABLE_MAGIC 0x00000060U
++#define LIBXL_HAVE_LIBXL_DEVICE_DISK_DISCARD_DISABLE_MASK 0xffffff0fU
+
+/*
* libxl ABI compatibility
@@ -94,7 +97,7 @@
}
+ if (disk->readwrite && dpc.disable_discard)
-+ disk->readwrite = LIBXL_HAVE_LIBXL_DEVICE_DISK_DISCARD_DISABLE_MAGIC;
++ disk->readwrite = (disk->readwrite & LIBXL_HAVE_LIBXL_DEVICE_DISK_DISCARD_DISABLE_MASK) | LIBXL_HAVE_LIBXL_DEVICE_DISK_DISCARD_DISABLE_MAGIC;
+
if (!disk->vdev) {
xlu__disk_err(&dpc,0, "no vdev specified");
@@ -116,14 +119,12 @@
===================================================================
--- xen-4.4.0-testing.orig/tools/libxl/libxlu_disk_l.l
+++ xen-4.4.0-testing/tools/libxl/libxlu_disk_l.l
-@@ -173,6 +173,10 @@ backendtype=[^,]*,? { STRIP(','); setbac
+@@ -173,6 +173,8 @@ backendtype=[^,]*,? { STRIP(','); setbac
vdev=[^,]*,? { STRIP(','); SAVESTRING("vdev", vdev, FROMEQUALS); }
script=[^,]*,? { STRIP(','); SAVESTRING("script", script, FROMEQUALS); }
-+discard=on,? { DPC->disable_discard = 0; }
-+discard=1,? { DPC->disable_discard = 0; }
-+discard=off,? { DPC->disable_discard = 1; }
-+discard=0,? { DPC->disable_discard = 1; }
++discard,? { DPC->disable_discard = 0; }
++no-discard,? { DPC->disable_discard = 1; }
/* the target magic parameter, eats the rest of the string */
++++++ libxl.add-option-to-disable-disk-cache-flushes-in-qdisk.patch ++++++
https://bugzilla.novell.com/show_bug.cgi?id=879425
---
tools/libxl/libxl.c | 2 ++
tools/libxl/libxl.h | 12 ++++++++++++
tools/libxl/libxlu_disk.c | 2 ++
tools/libxl/libxlu_disk_i.h | 2 +-
tools/libxl/libxlu_disk_l.l | 1 +
5 files changed, 18 insertions(+), 1 deletion(-)
Index: xen-4.4.0-testing/tools/libxl/libxl.c
===================================================================
--- xen-4.4.0-testing.orig/tools/libxl/libxl.c
+++ xen-4.4.0-testing/tools/libxl/libxl.c
@@ -2484,6 +2484,8 @@ static void device_disk_add(libxl__egc *
flexarray_append_pair(back, "direct-io-safe", "1");
if ((disk->readwrite & ~LIBXL_HAVE_LIBXL_DEVICE_DISK_DISCARD_DISABLE_MASK) == LIBXL_HAVE_LIBXL_DEVICE_DISK_DISCARD_DISABLE_MAGIC)
flexarray_append_pair(back, "discard-enable", "0");
+ if ((disk->readwrite & ~LIBXL_HAVE_LIBXL_DEVICE_DISK_DISABLE_FLUSH_MASK) == LIBXL_HAVE_LIBXL_DEVICE_DISK_DISABLE_FLUSH_MAGIC)
+ flexarray_append_pair(back, "suse-diskcache-disable-flush", "1");
flexarray_append(front, "backend-id");
flexarray_append(front, libxl__sprintf(gc, "%d", disk->backend_domid));
Index: xen-4.4.0-testing/tools/libxl/libxl.h
===================================================================
--- xen-4.4.0-testing.orig/tools/libxl/libxl.h
+++ xen-4.4.0-testing/tools/libxl/libxl.h
@@ -118,6 +118,18 @@
#define LIBXL_HAVE_LIBXL_DEVICE_DISK_DISCARD_DISABLE_MASK 0xffffff0fU
/*
+ * The libxl_device_disk has no way to indicate that cache=unsafe is
+ * supposed to be used. Provide this knob without breaking the ABI.
+ * This is done by overloading struct libxl_device_disk->readwrite:
+ * readwrite == 0: disk is readonly, no discard
+ * readwrite == 1: disk is readwrite, backend driver may enable discard
+ * readwrite == MAGIC: disk is readwrite, backend driver should ignore
+ * flush requests from the frontend driver.
+ */
+#define LIBXL_HAVE_LIBXL_DEVICE_DISK_DISABLE_FLUSH_MAGIC 0x00006000U
+#define LIBXL_HAVE_LIBXL_DEVICE_DISK_DISABLE_FLUSH_MASK 0xffff0fffU
+
+/*
* libxl ABI compatibility
*
* The only guarantee which libxl makes regarding ABI compatibility
Index: xen-4.4.0-testing/tools/libxl/libxlu_disk.c
===================================================================
--- xen-4.4.0-testing.orig/tools/libxl/libxlu_disk.c
+++ xen-4.4.0-testing/tools/libxl/libxlu_disk.c
@@ -84,6 +84,8 @@ int xlu_disk_parse(XLU_Config *cfg,
disk->readwrite = (disk->readwrite & LIBXL_HAVE_LIBXL_DEVICE_DISK_DIRECT_IO_SAFE_MASK) | LIBXL_HAVE_LIBXL_DEVICE_DISK_DIRECT_IO_SAFE_MAGIC;
if (disk->readwrite && dpc.disable_discard)
disk->readwrite = (disk->readwrite & LIBXL_HAVE_LIBXL_DEVICE_DISK_DISCARD_DISABLE_MASK) | LIBXL_HAVE_LIBXL_DEVICE_DISK_DISCARD_DISABLE_MAGIC;
+ if (disk->readwrite && dpc.suse_diskcache_disable_flush)
+ disk->readwrite = (disk->readwrite & LIBXL_HAVE_LIBXL_DEVICE_DISK_DISABLE_FLUSH_MASK) | LIBXL_HAVE_LIBXL_DEVICE_DISK_DISABLE_FLUSH_MAGIC;
if (!disk->vdev) {
xlu__disk_err(&dpc,0, "no vdev specified");
Index: xen-4.4.0-testing/tools/libxl/libxlu_disk_i.h
===================================================================
--- xen-4.4.0-testing.orig/tools/libxl/libxlu_disk_i.h
+++ xen-4.4.0-testing/tools/libxl/libxlu_disk_i.h
@@ -10,7 +10,7 @@ typedef struct {
void *scanner;
YY_BUFFER_STATE buf;
libxl_device_disk *disk;
- int access_set, direct_io_safe, disable_discard, had_depr_prefix;
+ int access_set, suse_diskcache_disable_flush, direct_io_safe, disable_discard, had_depr_prefix;
const char *spec;
} DiskParseContext;
Index: xen-4.4.0-testing/tools/libxl/libxlu_disk_l.l
===================================================================
--- xen-4.4.0-testing.orig/tools/libxl/libxlu_disk_l.l
+++ xen-4.4.0-testing/tools/libxl/libxlu_disk_l.l
@@ -176,6 +176,7 @@ script=[^,]*,? { STRIP(','); SAVESTRING(
direct-io-safe,? { DPC->direct_io_safe = 1; }
discard,? { DPC->disable_discard = 0; }
no-discard,? { DPC->disable_discard = 1; }
+suse-diskcache-disable-flush,? { DPC->suse_diskcache_disable_flush = 1; }
/* the target magic parameter, eats the rest of the string */
++++++ libxl.introduce-an-option-to-disable-the-non-O_DIRECT-workaround.patch ++++++
xen-unstable commit 6ec48cf41b6656c98148380f39010063e62628c5
Frp,: Stefano Stabellini <stefano.stabellini(a)eu.citrix.com>
Date: Wed Apr 30 16:06:24 2014 +0100
Subject: libxl: introduce an option for disabling the non-O_DIRECT workaround
Document and implement a new option that permits disk backends which
would otherwise have to avoid O_DIRECT (because of the network memory
lifetime bug) to use it anyway. This is:
direct-io-safe in the xl domain disk config specification
direct_io_safe in the libxl disk API
direct-io-safe in the backend xenstore interface
Add a reference to xen/include/public/io/blkif.h in
docs/misc/vbd-interface.txt.
This change does not break ABI. Instead of adding a new member
direct_io_safe to struct libxl_device_disk the existing readwrite member
is reused.
Signed-off-by: Stefano Stabellini <stefano.stabellini(a)eu.citrix.com>
Signed-off-by: Ian Jackson <ian.jackson(a)eu.citrix.com>
Acked-by: Ian Campbell <ian.campbell(a)citrix.com>
Tested-by: Felipe Franciosi <felipe(a)paradoxo.org>
---
docs/misc/vbd-interface.txt | 6 +++++
docs/misc/xl-disk-configuration.txt | 38 ++++++++++++++++++++++++++++++++++++
tools/libxl/libxl.c | 2 +
tools/libxl/libxl.h | 11 ++++++++++
tools/libxl/libxlu_disk.c | 2 +
tools/libxl/libxlu_disk_i.h | 2 -
tools/libxl/libxlu_disk_l.l | 1
xen/include/public/io/blkif.h | 22 ++++++++++++++++++++
8 files changed, 83 insertions(+), 1 deletion(-)
Index: xen-4.4.0-testing/docs/misc/vbd-interface.txt
===================================================================
--- xen-4.4.0-testing.orig/docs/misc/vbd-interface.txt
+++ xen-4.4.0-testing/docs/misc/vbd-interface.txt
@@ -125,3 +125,9 @@ because they directly map the bottom 8 b
directly to the Linux guest's device number and throw away the rest;
they can crash due to minor number clashes. With these guests, the
workaround is not to supply problematic combinations of devices.
+
+
+Other frontend and backend options
+----------------------------------
+
+See xen/include/public/io/blkif.h for the full list of options.
Index: xen-4.4.0-testing/docs/misc/xl-disk-configuration.txt
===================================================================
--- xen-4.4.0-testing.orig/docs/misc/xl-disk-configuration.txt
+++ xen-4.4.0-testing/docs/misc/xl-disk-configuration.txt
@@ -178,6 +178,44 @@ information to be interpreted by the exe
These scripts are normally called "block-<script>".
+direct-io-safe
+--------------
+
+Description: Disables non-O_DIRECT workaround
+Supported values: absent, present
+Mandatory: No
+Default value: absent (workaround may be enabled)
+
+There is a memory lifetime bug in some driver domain (dom0) kernels
+which can cause crashes when using O_DIRECT. The bug occurs due to a
+mismatch between the backend-visible lifetime of pages used for the
+Xen PV network protocol and that expected by the backend kernel's
+networking subsystem. This can cause crashes when using certain
+backends with certain underlying storage.
+
+See:
+ http://lists.xen.org/archives/html/xen-devel/2012-12/msg01154.html
+
+For this reason, (this version of) the Xen libxl toolstack disables
+O_DIRECT when using the qemu-based Xen PV backend ("qdisk").
+
+However, this workaround has performance and scaling implications, and
+it is only necessary if the underlying device is a network filesystem.
+If the underlying device is not, then it is good to disable it; that
+is what this option is for.
+
+This option simply requests that the workaround be disabled. (However,
+not all backends versions which use the workaround understand this
+option, so this is on a best effort basis.)
+
+It's important to note that if you are storing the VM disk on a
+network filesystem or a network block device (NFS or ISCSI) it might
+not be safe to use this option. Otherwise specifying it is safe and
+can give better performances.
+
+If in the future the bug is fixed properly this option will then be
+silently ignored.
+
discard / no-discard
---------------
Index: xen-4.4.0-testing/tools/libxl/libxl.c
===================================================================
--- xen-4.4.0-testing.orig/tools/libxl/libxl.c
+++ xen-4.4.0-testing/tools/libxl/libxl.c
@@ -2480,6 +2480,8 @@ static void device_disk_add(libxl__egc *
flexarray_append(back, disk->readwrite ? "w" : "r");
flexarray_append(back, "device-type");
flexarray_append(back, disk->is_cdrom ? "cdrom" : "disk");
+ if ((disk->readwrite & ~LIBXL_HAVE_LIBXL_DEVICE_DISK_DIRECT_IO_SAFE_MASK) == LIBXL_HAVE_LIBXL_DEVICE_DISK_DIRECT_IO_SAFE_MAGIC)
+ flexarray_append_pair(back, "direct-io-safe", "1");
if ((disk->readwrite & ~LIBXL_HAVE_LIBXL_DEVICE_DISK_DISCARD_DISABLE_MASK) == LIBXL_HAVE_LIBXL_DEVICE_DISK_DISCARD_DISABLE_MAGIC)
flexarray_append_pair(back, "discard-enable", "0");
Index: xen-4.4.0-testing/tools/libxl/libxl.h
===================================================================
--- xen-4.4.0-testing.orig/tools/libxl/libxl.h
+++ xen-4.4.0-testing/tools/libxl/libxl.h
@@ -95,6 +95,17 @@
#define LIBXL_HAVE_BUILDINFO_EVENT_CHANNELS 1
/*
+ * The libxl_device_disk lacks some "cache" field, enabling directio
+ * is supported without breaking the ABI. This is done by overloading
+ * struct libxl_device_disk->readwrite:
+ * readwrite == 0: disk is readonly, no directio
+ * readwrite == 1: disk is readwrite, backend driver may enable directio
+ * readwrite == MAGIC: disk is readwrite, backend driver should use direct IO
+ */
+#define LIBXL_HAVE_LIBXL_DEVICE_DISK_DIRECT_IO_SAFE_MAGIC 0x00000600U
+#define LIBXL_HAVE_LIBXL_DEVICE_DISK_DIRECT_IO_SAFE_MASK 0xfffff0ffU
+
+/*
* The libxl_device_disk lacks discard_enable field, disabling discard
* is supported without breaking the ABI. This is done by overloading
* struct libxl_device_disk->readwrite:
Index: xen-4.4.0-testing/tools/libxl/libxlu_disk.c
===================================================================
--- xen-4.4.0-testing.orig/tools/libxl/libxlu_disk.c
+++ xen-4.4.0-testing/tools/libxl/libxlu_disk.c
@@ -80,6 +80,8 @@ int xlu_disk_parse(XLU_Config *cfg,
disk->format = LIBXL_DISK_FORMAT_EMPTY;
}
+ if (disk->readwrite && dpc.direct_io_safe)
+ disk->readwrite = (disk->readwrite & LIBXL_HAVE_LIBXL_DEVICE_DISK_DIRECT_IO_SAFE_MASK) | LIBXL_HAVE_LIBXL_DEVICE_DISK_DIRECT_IO_SAFE_MAGIC;
if (disk->readwrite && dpc.disable_discard)
disk->readwrite = (disk->readwrite & LIBXL_HAVE_LIBXL_DEVICE_DISK_DISCARD_DISABLE_MASK) | LIBXL_HAVE_LIBXL_DEVICE_DISK_DISCARD_DISABLE_MAGIC;
Index: xen-4.4.0-testing/tools/libxl/libxlu_disk_i.h
===================================================================
--- xen-4.4.0-testing.orig/tools/libxl/libxlu_disk_i.h
+++ xen-4.4.0-testing/tools/libxl/libxlu_disk_i.h
@@ -10,7 +10,7 @@ typedef struct {
void *scanner;
YY_BUFFER_STATE buf;
libxl_device_disk *disk;
- int access_set, disable_discard, had_depr_prefix;
+ int access_set, direct_io_safe, disable_discard, had_depr_prefix;
const char *spec;
} DiskParseContext;
Index: xen-4.4.0-testing/tools/libxl/libxlu_disk_l.l
===================================================================
--- xen-4.4.0-testing.orig/tools/libxl/libxlu_disk_l.l
+++ xen-4.4.0-testing/tools/libxl/libxlu_disk_l.l
@@ -173,6 +173,7 @@ backendtype=[^,]*,? { STRIP(','); setbac
vdev=[^,]*,? { STRIP(','); SAVESTRING("vdev", vdev, FROMEQUALS); }
script=[^,]*,? { STRIP(','); SAVESTRING("script", script, FROMEQUALS); }
+direct-io-safe,? { DPC->direct_io_safe = 1; }
discard,? { DPC->disable_discard = 0; }
no-discard,? { DPC->disable_discard = 1; }
Index: xen-4.4.0-testing/xen/include/public/io/blkif.h
===================================================================
--- xen-4.4.0-testing.orig/xen/include/public/io/blkif.h
+++ xen-4.4.0-testing/xen/include/public/io/blkif.h
@@ -97,6 +97,28 @@
*
* The type of the backing device/object.
*
+ *
+ * direct-io-safe
+ * Values: 0/1 (boolean)
+ * Default Value: 0
+ *
+ * The underlying storage is not affected by the direct IO memory
+ * lifetime bug. See:
+ * http://lists.xen.org/archives/html/xen-devel/2012-12/msg01154.html
+ *
+ * Therefore this option gives the backend permission to use
+ * O_DIRECT, notwithstanding that bug.
+ *
+ * That is, if this option is enabled, use of O_DIRECT is safe,
+ * in circumstances where we would normally have avoided it as a
+ * workaround for that bug. This option is not relevant for all
+ * backends, and even not necessarily supported for those for
+ * which it is relevant. A backend which knows that it is not
+ * affected by the bug can ignore this option.
+ *
+ * This option doesn't require a backend to use O_DIRECT, so it
+ * should not be used to try to control the caching behaviour.
+ *
*--------------------------------- Features ---------------------------------
*
* feature-barrier
++++++ qemu-xen-upstream-blkif-discard.patch ++++++
--- /var/tmp/diff_new_pack.JjJzfv/_old 2014-06-01 18:58:41.000000000 +0200
+++ /var/tmp/diff_new_pack.JjJzfv/_new 2014-06-01 18:58:41.000000000 +0200
@@ -1,5 +1,6 @@
References: FATE#316071
Subject: qemu-upstream: add discard support for xen_disk
+Git-commit: f31352041bdde436c3f6d07e1525a42e48dec215
Implement discard support for xen_disk. It makes use of the existing
discard code in qemu.
++++++ qemu-xen-upstream-qdisk-cache-unsafe.patch ++++++
https://bugzilla.novell.com/show_bug.cgi?id=879425
---
tools/qemu-xen-dir-remote/hw/block/xen_disk.c | 15 +++++++++++++++
1 file changed, 15 insertions(+)
Index: xen-4.4.0-testing/tools/qemu-xen-dir-remote/hw/block/xen_disk.c
===================================================================
--- xen-4.4.0-testing.orig/tools/qemu-xen-dir-remote/hw/block/xen_disk.c
+++ xen-4.4.0-testing/tools/qemu-xen-dir-remote/hw/block/xen_disk.c
@@ -113,6 +113,7 @@ struct XenBlkDev {
int requests_inflight;
int requests_finished;
+ gboolean cache_unsafe;
/* Persistent grants extension */
gboolean feature_discard;
gboolean feature_persistent;
@@ -725,6 +726,16 @@ static void blk_parse_discard(struct Xen
xenstore_write_be_int(&blkdev->xendev, "feature-discard", 1);
}
+static void blk_parse_cache_unsafe(struct XenBlkDev *blkdev)
+{
+ int enable;
+
+ blkdev->cache_unsafe = false;
+
+ if (xenstore_read_be_int(&blkdev->xendev, "suse-diskcache-disable-flush", &enable) == 0)
+ blkdev->cache_unsafe = !!enable;
+}
+
static int blk_init(struct XenDevice *xendev)
{
struct XenBlkDev *blkdev = container_of(xendev, struct XenBlkDev, xendev);
@@ -793,6 +804,7 @@ static int blk_init(struct XenDevice *xe
xenstore_write_be_int(&blkdev->xendev, "info", info);
blk_parse_discard(blkdev);
+ blk_parse_cache_unsafe(blkdev);
g_free(directiosafe);
return 0;
@@ -832,6 +844,9 @@ static int blk_connect(struct XenDevice
if (blkdev->feature_discard)
qflags |= BDRV_O_UNMAP;
+ if (blkdev->cache_unsafe)
+ qflags |= BDRV_O_NO_FLUSH;
+
/* init qemu block driver */
index = (blkdev->xendev.dev - 202 * 256) / 16;
blkdev->dinfo = drive_get(IF_XEN, 0, index);
--
To unsubscribe, e-mail: opensuse-commit+unsubscribe(a)opensuse.org
For additional commands, e-mail: opensuse-commit+help(a)opensuse.org
1
0
Hello community,
here is the log from the commit of package kernel-source for openSUSE:Factory checked in at 2014-06-01 18:58:23
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/kernel-source (Old)
and /work/SRC/openSUSE:Factory/.kernel-source.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "kernel-source"
Changes:
--------
--- /work/SRC/openSUSE:Factory/kernel-source/kernel-debug.changes 2014-05-27 18:58:41.000000000 +0200
+++ /work/SRC/openSUSE:Factory/.kernel-source.new/kernel-debug.changes 2014-06-01 18:58:25.000000000 +0200
@@ -1,0 +2,28 @@
+Wed May 28 17:39:51 CEST 2014 - jdelvare(a)suse.de
+
+- Update config files: Disable gpio-fan and ntc_thermistor drivers
+ Disable the gpio-fan and ntc_thermistor hwmon drivers on all
+ architectures where they are not used.
+- commit 96f5b60
+
+-------------------------------------------------------------------
+Wed May 28 14:31:02 CEST 2014 - jbeulich(a)suse.com
+
+- Update Xen patches to 3.15-rc7.
+- commit f8382bf
+
+-------------------------------------------------------------------
+Tue May 27 15:10:10 CEST 2014 - jeffm(a)suse.de
+
+- Update to 3.15-rc7.
+- Eliminated 1 patch.
+- Config changes:
+ - CX_ECAT=m (default n) for i386/x86_64
+ - The vendor supplying this hardware only uses 32/64-bit Atom CPUs.
+ This may need to be revisited if the hardware extends to different
+ architectures (ARM, probably).
+ - SENSORS_NTC_THERMISTOR=m (default n)
+ - Sensor chip that could be found essentially anywhere.
+- commit e9c45a3
+
+-------------------------------------------------------------------
kernel-default.changes: same change
kernel-desktop.changes: same change
kernel-docs.changes: same change
kernel-ec2.changes: same change
kernel-exynos.changes: same change
kernel-lpae.changes: same change
kernel-obs-build.changes: same change
kernel-obs-qa-xen.changes: same change
kernel-obs-qa.changes: same change
kernel-pae.changes: same change
kernel-source.changes: same change
kernel-syms.changes: same change
kernel-vanilla.changes: same change
kernel-xen.changes: same change
Old:
----
linux-3.15-rc6.tar.xz
New:
----
linux-3.15-rc7.tar.xz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ kernel-debug.spec ++++++
--- /var/tmp/diff_new_pack.WVEyML/_old 2014-06-01 18:58:35.000000000 +0200
+++ /var/tmp/diff_new_pack.WVEyML/_new 2014-06-01 18:58:35.000000000 +0200
@@ -19,8 +19,8 @@
# This makes the OBS store the project cert as %_sourcedir/_projectcert.crt
# needssslcertforbuild
-%define srcversion 3.15-rc6
-%define patchversion 3.15.0-rc6
+%define srcversion 3.15-rc7
+%define patchversion 3.15.0-rc7
%define variant %{nil}
%define vanilla_only 0
@@ -59,9 +59,9 @@
Summary: A Debug Version of the Kernel
License: GPL-2.0
Group: System/Kernel
-Version: 3.15.rc6
+Version: 3.15.rc7
%if 0%{?is_kotd}
-Release: <RELEASE>.g346029d
+Release: <RELEASE>.g96f5b60
%else
Release: 0
%endif
kernel-default.spec: same change
kernel-desktop.spec: same change
++++++ kernel-docs.spec ++++++
--- /var/tmp/diff_new_pack.WVEyML/_old 2014-06-01 18:58:35.000000000 +0200
+++ /var/tmp/diff_new_pack.WVEyML/_new 2014-06-01 18:58:35.000000000 +0200
@@ -16,7 +16,7 @@
#
-%define patchversion 3.15.0-rc6
+%define patchversion 3.15.0-rc7
%define variant %{nil}
%include %_sourcedir/kernel-spec-macros
@@ -25,9 +25,9 @@
Summary: Kernel Documentation
License: GPL-2.0
Group: Documentation/Man
-Version: 3.15.rc6
+Version: 3.15.rc7
%if 0%{?is_kotd}
-Release: <RELEASE>.g346029d
+Release: <RELEASE>.g96f5b60
%else
Release: 0
%endif
++++++ kernel-ec2.spec ++++++
--- /var/tmp/diff_new_pack.WVEyML/_old 2014-06-01 18:58:35.000000000 +0200
+++ /var/tmp/diff_new_pack.WVEyML/_new 2014-06-01 18:58:35.000000000 +0200
@@ -19,8 +19,8 @@
# This makes the OBS store the project cert as %_sourcedir/_projectcert.crt
# needssslcertforbuild
-%define srcversion 3.15-rc6
-%define patchversion 3.15.0-rc6
+%define srcversion 3.15-rc7
+%define patchversion 3.15.0-rc7
%define variant %{nil}
%define vanilla_only 0
@@ -59,9 +59,9 @@
Summary: The Amazon EC2 Xen Kernel
License: GPL-2.0
Group: System/Kernel
-Version: 3.15.rc6
+Version: 3.15.rc7
%if 0%{?is_kotd}
-Release: <RELEASE>.g346029d
+Release: <RELEASE>.g96f5b60
%else
Release: 0
%endif
kernel-exynos.spec: same change
kernel-lpae.spec: same change
++++++ kernel-obs-build.spec ++++++
--- /var/tmp/diff_new_pack.WVEyML/_old 2014-06-01 18:58:35.000000000 +0200
+++ /var/tmp/diff_new_pack.WVEyML/_new 2014-06-01 18:58:35.000000000 +0200
@@ -19,7 +19,7 @@
#!BuildIgnore: post-build-checks
-%define patchversion 3.15.0-rc6
+%define patchversion 3.15.0-rc7
%define variant %{nil}
%include %_sourcedir/kernel-spec-macros
@@ -45,9 +45,9 @@
Summary: package kernel and initrd for OBS VM builds
License: GPL-2.0
Group: SLES
-Version: 3.15.rc6
+Version: 3.15.rc7
%if 0%{?is_kotd}
-Release: <RELEASE>.g346029d
+Release: <RELEASE>.g96f5b60
%else
Release: 0
%endif
++++++ kernel-obs-qa-xen.spec ++++++
--- /var/tmp/diff_new_pack.WVEyML/_old 2014-06-01 18:58:35.000000000 +0200
+++ /var/tmp/diff_new_pack.WVEyML/_new 2014-06-01 18:58:35.000000000 +0200
@@ -17,7 +17,7 @@
# needsrootforbuild
-%define patchversion 3.15.0-rc6
+%define patchversion 3.15.0-rc7
%define variant %{nil}
%include %_sourcedir/kernel-spec-macros
@@ -36,9 +36,9 @@
Summary: Basic QA tests for the kernel
License: GPL-2.0
Group: SLES
-Version: 3.15.rc6
+Version: 3.15.rc7
%if 0%{?is_kotd}
-Release: <RELEASE>.g346029d
+Release: <RELEASE>.g96f5b60
%else
Release: 0
%endif
kernel-obs-qa.spec: same change
++++++ kernel-pae.spec ++++++
--- /var/tmp/diff_new_pack.WVEyML/_old 2014-06-01 18:58:35.000000000 +0200
+++ /var/tmp/diff_new_pack.WVEyML/_new 2014-06-01 18:58:35.000000000 +0200
@@ -19,8 +19,8 @@
# This makes the OBS store the project cert as %_sourcedir/_projectcert.crt
# needssslcertforbuild
-%define srcversion 3.15-rc6
-%define patchversion 3.15.0-rc6
+%define srcversion 3.15-rc7
+%define patchversion 3.15.0-rc7
%define variant %{nil}
%define vanilla_only 0
@@ -59,9 +59,9 @@
Summary: Kernel with PAE Support
License: GPL-2.0
Group: System/Kernel
-Version: 3.15.rc6
+Version: 3.15.rc7
%if 0%{?is_kotd}
-Release: <RELEASE>.g346029d
+Release: <RELEASE>.g96f5b60
%else
Release: 0
%endif
++++++ kernel-source.spec ++++++
--- /var/tmp/diff_new_pack.WVEyML/_old 2014-06-01 18:58:35.000000000 +0200
+++ /var/tmp/diff_new_pack.WVEyML/_new 2014-06-01 18:58:35.000000000 +0200
@@ -17,8 +17,8 @@
# icecream 0
-%define srcversion 3.15-rc6
-%define patchversion 3.15.0-rc6
+%define srcversion 3.15-rc7
+%define patchversion 3.15.0-rc7
%define variant %{nil}
%define vanilla_only 0
@@ -30,9 +30,9 @@
Summary: The Linux Kernel Sources
License: GPL-2.0
Group: Development/Sources
-Version: 3.15.rc6
+Version: 3.15.rc7
%if 0%{?is_kotd}
-Release: <RELEASE>.g346029d
+Release: <RELEASE>.g96f5b60
%else
Release: 0
%endif
++++++ kernel-syms.spec ++++++
--- /var/tmp/diff_new_pack.WVEyML/_old 2014-06-01 18:58:35.000000000 +0200
+++ /var/tmp/diff_new_pack.WVEyML/_new 2014-06-01 18:58:35.000000000 +0200
@@ -24,10 +24,10 @@
Summary: Kernel Symbol Versions (modversions)
License: GPL-2.0
Group: Development/Sources
-Version: 3.15.rc6
+Version: 3.15.rc7
%if %using_buildservice
%if 0%{?is_kotd}
-Release: <RELEASE>.g346029d
+Release: <RELEASE>.g96f5b60
%else
Release: 0
%endif
++++++ kernel-vanilla.spec ++++++
--- /var/tmp/diff_new_pack.WVEyML/_old 2014-06-01 18:58:35.000000000 +0200
+++ /var/tmp/diff_new_pack.WVEyML/_new 2014-06-01 18:58:35.000000000 +0200
@@ -19,8 +19,8 @@
# This makes the OBS store the project cert as %_sourcedir/_projectcert.crt
# needssslcertforbuild
-%define srcversion 3.15-rc6
-%define patchversion 3.15.0-rc6
+%define srcversion 3.15-rc7
+%define patchversion 3.15.0-rc7
%define variant %{nil}
%define vanilla_only 0
@@ -59,9 +59,9 @@
Summary: The Standard Kernel - without any SUSE patches
License: GPL-2.0
Group: System/Kernel
-Version: 3.15.rc6
+Version: 3.15.rc7
%if 0%{?is_kotd}
-Release: <RELEASE>.g346029d
+Release: <RELEASE>.g96f5b60
%else
Release: 0
%endif
kernel-xen.spec: same change
++++++ config.sh ++++++
--- /var/tmp/diff_new_pack.WVEyML/_old 2014-06-01 18:58:35.000000000 +0200
+++ /var/tmp/diff_new_pack.WVEyML/_new 2014-06-01 18:58:35.000000000 +0200
@@ -1,5 +1,5 @@
# The version of the main tarball to use
-SRCVERSION=3.15-rc6
+SRCVERSION=3.15-rc7
# variant of the kernel-source package, either empty or "-rt"
VARIANT=
# buildservice projects to build the kernel against
++++++ config.tar.bz2 ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/config/arm64/default new/config/arm64/default
--- old/config/arm64/default 2014-05-23 15:27:33.000000000 +0200
+++ new/config/arm64/default 2014-05-28 17:39:51.000000000 +0200
@@ -1,6 +1,6 @@
#
# Automatically generated file; DO NOT EDIT.
-# Linux/arm64 3.15.0-rc6 Kernel Configuration
+# Linux/arm64 3.15.0-rc7 Kernel Configuration
#
CONFIG_ARM64=y
CONFIG_64BIT=y
@@ -1012,7 +1012,6 @@
CONFIG_CAN_SJA1000_PLATFORM=m
CONFIG_CAN_C_CAN=m
CONFIG_CAN_C_CAN_PLATFORM=m
-# CONFIG_CAN_C_CAN_STRICT_FRAME_ORDERING is not set
CONFIG_CAN_CC770=m
CONFIG_CAN_CC770_ISA=m
CONFIG_CAN_CC770_PLATFORM=m
@@ -2503,6 +2502,7 @@
# CONFIG_SENSORS_LM95245 is not set
CONFIG_SENSORS_PC87360=m
CONFIG_SENSORS_PC87427=m
+CONFIG_SENSORS_NTC_THERMISTOR=m
CONFIG_SENSORS_NCT6775=m
# CONFIG_SENSORS_PCF8591 is not set
# CONFIG_PMBUS is not set
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/config/armv6hl/default new/config/armv6hl/default
--- old/config/armv6hl/default 2014-05-23 15:27:33.000000000 +0200
+++ new/config/armv6hl/default 2014-05-28 17:39:51.000000000 +0200
@@ -1,6 +1,6 @@
#
# Automatically generated file; DO NOT EDIT.
-# Linux/arm 3.15.0-rc6 Kernel Configuration
+# Linux/arm 3.15.0-rc7 Kernel Configuration
#
CONFIG_ARM=y
CONFIG_ARM_HAS_SG_CHAIN=y
@@ -1296,7 +1296,6 @@
CONFIG_CAN_SJA1000_PLATFORM=m
CONFIG_CAN_C_CAN=m
CONFIG_CAN_C_CAN_PLATFORM=m
-# CONFIG_CAN_C_CAN_STRICT_FRAME_ORDERING is not set
CONFIG_CAN_CC770=m
CONFIG_CAN_CC770_ISA=m
CONFIG_CAN_CC770_PLATFORM=m
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/config/armv7hl/default new/config/armv7hl/default
--- old/config/armv7hl/default 2014-05-23 15:27:33.000000000 +0200
+++ new/config/armv7hl/default 2014-05-28 17:39:51.000000000 +0200
@@ -1,6 +1,6 @@
#
# Automatically generated file; DO NOT EDIT.
-# Linux/arm 3.15.0-rc6 Kernel Configuration
+# Linux/arm 3.15.0-rc7 Kernel Configuration
#
CONFIG_ARM=y
CONFIG_ARM_HAS_SG_CHAIN=y
@@ -1476,7 +1476,6 @@
CONFIG_CAN_SJA1000_PLATFORM=m
CONFIG_CAN_C_CAN=m
CONFIG_CAN_C_CAN_PLATFORM=m
-# CONFIG_CAN_C_CAN_STRICT_FRAME_ORDERING is not set
CONFIG_CAN_CC770=m
CONFIG_CAN_CC770_ISA=m
CONFIG_CAN_CC770_PLATFORM=m
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/config/armv7hl/exynos new/config/armv7hl/exynos
--- old/config/armv7hl/exynos 2014-05-23 15:27:33.000000000 +0200
+++ new/config/armv7hl/exynos 2014-05-28 17:39:51.000000000 +0200
@@ -1,6 +1,6 @@
#
# Automatically generated file; DO NOT EDIT.
-# Linux/arm 3.15.0-rc6 Kernel Configuration
+# Linux/arm 3.15.0-rc7 Kernel Configuration
#
CONFIG_ARM=y
CONFIG_MIGHT_HAVE_PCI=y
@@ -1263,7 +1263,6 @@
CONFIG_CAN_SJA1000_PLATFORM=m
CONFIG_CAN_C_CAN=m
CONFIG_CAN_C_CAN_PLATFORM=m
-# CONFIG_CAN_C_CAN_STRICT_FRAME_ORDERING is not set
CONFIG_CAN_CC770=m
CONFIG_CAN_CC770_ISA=m
CONFIG_CAN_CC770_PLATFORM=m
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/config/armv7hl/lpae new/config/armv7hl/lpae
--- old/config/armv7hl/lpae 2014-05-23 15:27:33.000000000 +0200
+++ new/config/armv7hl/lpae 2014-05-28 17:39:51.000000000 +0200
@@ -1,6 +1,6 @@
#
# Automatically generated file; DO NOT EDIT.
-# Linux/arm 3.15.0-rc6 Kernel Configuration
+# Linux/arm 3.15.0-rc7 Kernel Configuration
#
CONFIG_ARM=y
CONFIG_ARM_HAS_SG_CHAIN=y
@@ -1363,7 +1363,6 @@
CONFIG_CAN_SJA1000_PLATFORM=m
CONFIG_CAN_C_CAN=m
CONFIG_CAN_C_CAN_PLATFORM=m
-# CONFIG_CAN_C_CAN_STRICT_FRAME_ORDERING is not set
CONFIG_CAN_CC770=m
CONFIG_CAN_CC770_ISA=m
CONFIG_CAN_CC770_PLATFORM=m
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/config/i386/debug new/config/i386/debug
--- old/config/i386/debug 2014-05-23 15:27:33.000000000 +0200
+++ new/config/i386/debug 2014-05-28 17:39:51.000000000 +0200
@@ -1,6 +1,6 @@
#
# Automatically generated file; DO NOT EDIT.
-# Linux/i386 3.15.0-rc6 Kernel Configuration
+# Linux/i386 3.15.0-rc7 Kernel Configuration
#
# CONFIG_64BIT is not set
CONFIG_X86_32=y
@@ -1400,7 +1400,6 @@
# CONFIG_CAN_TSCAN1 is not set
CONFIG_CAN_C_CAN=m
# CONFIG_CAN_C_CAN_PLATFORM is not set
-# CONFIG_CAN_C_CAN_STRICT_FRAME_ORDERING is not set
CONFIG_CAN_C_CAN_PCI=m
CONFIG_CAN_CC770=m
CONFIG_CAN_CC770_ISA=m
@@ -2420,6 +2419,7 @@
# CONFIG_CS89x0_PLATFORM is not set
CONFIG_NET_VENDOR_CISCO=y
CONFIG_ENIC=m
+CONFIG_CX_ECAT=m
CONFIG_DNET=m
CONFIG_NET_VENDOR_DEC=y
CONFIG_NET_TULIP=y
@@ -3713,7 +3713,7 @@
CONFIG_SENSORS_GL520SM=m
CONFIG_SENSORS_G760A=m
CONFIG_SENSORS_G762=m
-CONFIG_SENSORS_GPIO_FAN=m
+# CONFIG_SENSORS_GPIO_FAN is not set
CONFIG_SENSORS_HIH6130=m
CONFIG_SENSORS_IBMAEM=m
CONFIG_SENSORS_IBMPEX=m
@@ -3755,7 +3755,7 @@
CONFIG_SENSORS_LM95245=m
CONFIG_SENSORS_PC87360=m
CONFIG_SENSORS_PC87427=m
-CONFIG_SENSORS_NTC_THERMISTOR=m
+# CONFIG_SENSORS_NTC_THERMISTOR is not set
CONFIG_SENSORS_NCT6775=m
CONFIG_SENSORS_PCF8591=m
CONFIG_PMBUS=m
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/config/i386/default new/config/i386/default
--- old/config/i386/default 2014-05-23 15:27:33.000000000 +0200
+++ new/config/i386/default 2014-05-28 17:39:51.000000000 +0200
@@ -1,6 +1,6 @@
#
# Automatically generated file; DO NOT EDIT.
-# Linux/i386 3.15.0-rc6 Kernel Configuration
+# Linux/i386 3.15.0-rc7 Kernel Configuration
#
# CONFIG_64BIT is not set
CONFIG_X86_32=y
@@ -1395,7 +1395,6 @@
# CONFIG_CAN_TSCAN1 is not set
CONFIG_CAN_C_CAN=m
# CONFIG_CAN_C_CAN_PLATFORM is not set
-# CONFIG_CAN_C_CAN_STRICT_FRAME_ORDERING is not set
CONFIG_CAN_C_CAN_PCI=m
CONFIG_CAN_CC770=m
CONFIG_CAN_CC770_ISA=m
@@ -2418,6 +2417,7 @@
# CONFIG_CS89x0_PLATFORM is not set
CONFIG_NET_VENDOR_CISCO=y
CONFIG_ENIC=m
+CONFIG_CX_ECAT=m
CONFIG_DNET=m
CONFIG_NET_VENDOR_DEC=y
CONFIG_NET_TULIP=y
@@ -3736,7 +3736,7 @@
CONFIG_SENSORS_GL520SM=m
CONFIG_SENSORS_G760A=m
CONFIG_SENSORS_G762=m
-CONFIG_SENSORS_GPIO_FAN=m
+# CONFIG_SENSORS_GPIO_FAN is not set
CONFIG_SENSORS_HIH6130=m
CONFIG_SENSORS_IBMAEM=m
CONFIG_SENSORS_IBMPEX=m
@@ -3778,6 +3778,7 @@
CONFIG_SENSORS_LM95245=m
CONFIG_SENSORS_PC87360=m
CONFIG_SENSORS_PC87427=m
+# CONFIG_SENSORS_NTC_THERMISTOR is not set
CONFIG_SENSORS_NCT6775=m
CONFIG_SENSORS_PCF8591=m
CONFIG_PMBUS=m
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/config/i386/desktop new/config/i386/desktop
--- old/config/i386/desktop 2014-05-23 15:27:33.000000000 +0200
+++ new/config/i386/desktop 2014-05-28 17:39:51.000000000 +0200
@@ -1,6 +1,6 @@
#
# Automatically generated file; DO NOT EDIT.
-# Linux/i386 3.15.0-rc6 Kernel Configuration
+# Linux/i386 3.15.0-rc7 Kernel Configuration
#
# CONFIG_64BIT is not set
CONFIG_X86_32=y
@@ -1394,7 +1394,6 @@
CONFIG_CAN_PLX_PCI=m
CONFIG_CAN_C_CAN=m
# CONFIG_CAN_C_CAN_PLATFORM is not set
-# CONFIG_CAN_C_CAN_STRICT_FRAME_ORDERING is not set
CONFIG_CAN_C_CAN_PCI=m
CONFIG_CAN_CC770=m
CONFIG_CAN_CC770_ISA=m
@@ -2368,6 +2367,7 @@
CONFIG_CHELSIO_T4VF=m
CONFIG_NET_VENDOR_CISCO=y
CONFIG_ENIC=m
+CONFIG_CX_ECAT=m
CONFIG_DNET=m
CONFIG_NET_VENDOR_DEC=y
CONFIG_NET_TULIP=y
@@ -3630,7 +3630,7 @@
CONFIG_SENSORS_GL520SM=m
CONFIG_SENSORS_G760A=m
CONFIG_SENSORS_G762=m
-CONFIG_SENSORS_GPIO_FAN=m
+# CONFIG_SENSORS_GPIO_FAN is not set
CONFIG_SENSORS_HIH6130=m
CONFIG_SENSORS_IBMAEM=m
CONFIG_SENSORS_IBMPEX=m
@@ -3672,7 +3672,7 @@
CONFIG_SENSORS_LM95245=m
CONFIG_SENSORS_PC87360=m
CONFIG_SENSORS_PC87427=m
-CONFIG_SENSORS_NTC_THERMISTOR=m
+# CONFIG_SENSORS_NTC_THERMISTOR is not set
CONFIG_SENSORS_NCT6775=m
CONFIG_SENSORS_PCF8591=m
CONFIG_PMBUS=m
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/config/i386/ec2 new/config/i386/ec2
--- old/config/i386/ec2 2014-05-23 15:27:33.000000000 +0200
+++ new/config/i386/ec2 2014-05-28 17:39:51.000000000 +0200
@@ -1,6 +1,6 @@
#
# Automatically generated file; DO NOT EDIT.
-# Linux/i386 3.15.0-rc6 Kernel Configuration
+# Linux/i386 3.15.0-rc7 Kernel Configuration
#
# CONFIG_64BIT is not set
CONFIG_X86_32=y
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/config/i386/pae new/config/i386/pae
--- old/config/i386/pae 2014-05-23 15:27:33.000000000 +0200
+++ new/config/i386/pae 2014-05-28 17:39:51.000000000 +0200
@@ -1,6 +1,6 @@
#
# Automatically generated file; DO NOT EDIT.
-# Linux/i386 3.15.0-rc6 Kernel Configuration
+# Linux/i386 3.15.0-rc7 Kernel Configuration
#
# CONFIG_64BIT is not set
CONFIG_X86_32=y
@@ -1395,7 +1395,6 @@
CONFIG_CAN_PLX_PCI=m
CONFIG_CAN_C_CAN=m
# CONFIG_CAN_C_CAN_PLATFORM is not set
-# CONFIG_CAN_C_CAN_STRICT_FRAME_ORDERING is not set
CONFIG_CAN_C_CAN_PCI=m
CONFIG_CAN_CC770=m
CONFIG_CAN_CC770_ISA=m
@@ -2369,6 +2368,7 @@
CONFIG_CHELSIO_T4VF=m
CONFIG_NET_VENDOR_CISCO=y
CONFIG_ENIC=m
+CONFIG_CX_ECAT=m
CONFIG_DNET=m
CONFIG_NET_VENDOR_DEC=y
CONFIG_NET_TULIP=y
@@ -3631,7 +3631,7 @@
CONFIG_SENSORS_GL520SM=m
CONFIG_SENSORS_G760A=m
CONFIG_SENSORS_G762=m
-CONFIG_SENSORS_GPIO_FAN=m
+# CONFIG_SENSORS_GPIO_FAN is not set
CONFIG_SENSORS_HIH6130=m
CONFIG_SENSORS_IBMAEM=m
CONFIG_SENSORS_IBMPEX=m
@@ -3673,7 +3673,7 @@
CONFIG_SENSORS_LM95245=m
CONFIG_SENSORS_PC87360=m
CONFIG_SENSORS_PC87427=m
-CONFIG_SENSORS_NTC_THERMISTOR=m
+# CONFIG_SENSORS_NTC_THERMISTOR is not set
CONFIG_SENSORS_NCT6775=m
CONFIG_SENSORS_PCF8591=m
CONFIG_PMBUS=m
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/config/i386/vanilla new/config/i386/vanilla
--- old/config/i386/vanilla 2014-05-23 15:27:33.000000000 +0200
+++ new/config/i386/vanilla 2014-05-28 17:39:51.000000000 +0200
@@ -1,6 +1,6 @@
#
# Automatically generated file; DO NOT EDIT.
-# Linux/i386 3.15.0-rc6 Kernel Configuration
+# Linux/i386 3.15.0-rc7 Kernel Configuration
#
# CONFIG_64BIT is not set
CONFIG_X86_32=y
@@ -1392,7 +1392,6 @@
# CONFIG_CAN_TSCAN1 is not set
CONFIG_CAN_C_CAN=m
# CONFIG_CAN_C_CAN_PLATFORM is not set
-# CONFIG_CAN_C_CAN_STRICT_FRAME_ORDERING is not set
CONFIG_CAN_C_CAN_PCI=m
CONFIG_CAN_CC770=m
CONFIG_CAN_CC770_ISA=m
@@ -2415,6 +2414,7 @@
# CONFIG_CS89x0_PLATFORM is not set
CONFIG_NET_VENDOR_CISCO=y
CONFIG_ENIC=m
+CONFIG_CX_ECAT=m
CONFIG_DNET=m
CONFIG_NET_VENDOR_DEC=y
CONFIG_NET_TULIP=y
@@ -3731,7 +3731,7 @@
CONFIG_SENSORS_GL520SM=m
CONFIG_SENSORS_G760A=m
CONFIG_SENSORS_G762=m
-CONFIG_SENSORS_GPIO_FAN=m
+# CONFIG_SENSORS_GPIO_FAN is not set
CONFIG_SENSORS_HIH6130=m
CONFIG_SENSORS_IBMAEM=m
CONFIG_SENSORS_IBMPEX=m
@@ -3773,6 +3773,7 @@
CONFIG_SENSORS_LM95245=m
CONFIG_SENSORS_PC87360=m
CONFIG_SENSORS_PC87427=m
+# CONFIG_SENSORS_NTC_THERMISTOR is not set
CONFIG_SENSORS_NCT6775=m
CONFIG_SENSORS_PCF8591=m
CONFIG_PMBUS=m
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/config/i386/xen new/config/i386/xen
--- old/config/i386/xen 2014-05-23 15:27:33.000000000 +0200
+++ new/config/i386/xen 2014-05-28 17:39:51.000000000 +0200
@@ -1,6 +1,6 @@
#
# Automatically generated file; DO NOT EDIT.
-# Linux/i386 3.15.0-rc6 Kernel Configuration
+# Linux/i386 3.15.0-rc7 Kernel Configuration
#
# CONFIG_64BIT is not set
CONFIG_X86_32=y
@@ -1232,7 +1232,6 @@
CONFIG_CAN_PLX_PCI=m
CONFIG_CAN_C_CAN=m
# CONFIG_CAN_C_CAN_PLATFORM is not set
-# CONFIG_CAN_C_CAN_STRICT_FRAME_ORDERING is not set
CONFIG_CAN_C_CAN_PCI=m
CONFIG_CAN_CC770=m
CONFIG_CAN_CC770_ISA=m
@@ -2193,6 +2192,7 @@
CONFIG_CHELSIO_T4VF=m
CONFIG_NET_VENDOR_CISCO=y
CONFIG_ENIC=m
+CONFIG_CX_ECAT=m
CONFIG_DNET=m
CONFIG_NET_VENDOR_DEC=y
CONFIG_NET_TULIP=y
@@ -3439,7 +3439,7 @@
CONFIG_SENSORS_GL520SM=m
CONFIG_SENSORS_G760A=m
CONFIG_SENSORS_G762=m
-CONFIG_SENSORS_GPIO_FAN=m
+# CONFIG_SENSORS_GPIO_FAN is not set
CONFIG_SENSORS_HIH6130=m
CONFIG_SENSORS_IBMAEM=m
CONFIG_SENSORS_IBMPEX=m
@@ -3481,7 +3481,7 @@
CONFIG_SENSORS_LM95245=m
CONFIG_SENSORS_PC87360=m
CONFIG_SENSORS_PC87427=m
-CONFIG_SENSORS_NTC_THERMISTOR=m
+# CONFIG_SENSORS_NTC_THERMISTOR is not set
CONFIG_SENSORS_NCT6775=m
CONFIG_SENSORS_PCF8591=m
CONFIG_PMBUS=m
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/config/ppc/default new/config/ppc/default
--- old/config/ppc/default 2014-05-23 15:27:33.000000000 +0200
+++ new/config/ppc/default 2014-05-28 17:39:51.000000000 +0200
@@ -1,6 +1,6 @@
#
# Automatically generated file; DO NOT EDIT.
-# Linux/powerpc 3.15.0-rc6 Kernel Configuration
+# Linux/powerpc 3.15.0-rc7 Kernel Configuration
#
# CONFIG_PPC64 is not set
@@ -1864,6 +1864,7 @@
CONFIG_CHELSIO_T4VF=m
CONFIG_NET_VENDOR_CISCO=y
CONFIG_ENIC=m
+# CONFIG_CX_ECAT is not set
CONFIG_DNET=m
CONFIG_NET_VENDOR_DEC=y
CONFIG_NET_TULIP=y
@@ -3034,7 +3035,7 @@
# CONFIG_SENSORS_GL520SM is not set
# CONFIG_SENSORS_G760A is not set
CONFIG_SENSORS_G762=m
-CONFIG_SENSORS_GPIO_FAN=m
+# CONFIG_SENSORS_GPIO_FAN is not set
CONFIG_SENSORS_HIH6130=m
CONFIG_SENSORS_JC42=m
CONFIG_SENSORS_LINEAGE=m
@@ -3070,6 +3071,7 @@
CONFIG_SENSORS_LM95234=m
# CONFIG_SENSORS_LM95241 is not set
CONFIG_SENSORS_LM95245=m
+# CONFIG_SENSORS_NTC_THERMISTOR is not set
# CONFIG_SENSORS_PCF8591 is not set
CONFIG_PMBUS=m
CONFIG_SENSORS_PMBUS=m
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/config/ppc/vanilla new/config/ppc/vanilla
--- old/config/ppc/vanilla 2014-05-23 15:27:33.000000000 +0200
+++ new/config/ppc/vanilla 2014-05-28 17:39:51.000000000 +0200
@@ -1,6 +1,6 @@
#
# Automatically generated file; DO NOT EDIT.
-# Linux/powerpc 3.15.0-rc6 Kernel Configuration
+# Linux/powerpc 3.15.0-rc7 Kernel Configuration
#
# CONFIG_PPC64 is not set
@@ -1861,6 +1861,7 @@
CONFIG_CHELSIO_T4VF=m
CONFIG_NET_VENDOR_CISCO=y
CONFIG_ENIC=m
+# CONFIG_CX_ECAT is not set
CONFIG_DNET=m
CONFIG_NET_VENDOR_DEC=y
CONFIG_NET_TULIP=y
@@ -3029,7 +3030,7 @@
# CONFIG_SENSORS_GL520SM is not set
# CONFIG_SENSORS_G760A is not set
CONFIG_SENSORS_G762=m
-CONFIG_SENSORS_GPIO_FAN=m
+# CONFIG_SENSORS_GPIO_FAN is not set
CONFIG_SENSORS_HIH6130=m
CONFIG_SENSORS_JC42=m
CONFIG_SENSORS_LINEAGE=m
@@ -3065,6 +3066,7 @@
CONFIG_SENSORS_LM95234=m
# CONFIG_SENSORS_LM95241 is not set
CONFIG_SENSORS_LM95245=m
+# CONFIG_SENSORS_NTC_THERMISTOR is not set
# CONFIG_SENSORS_PCF8591 is not set
CONFIG_PMBUS=m
CONFIG_SENSORS_PMBUS=m
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/config/ppc64/debug new/config/ppc64/debug
--- old/config/ppc64/debug 2014-05-23 15:27:33.000000000 +0200
+++ new/config/ppc64/debug 2014-05-28 17:39:51.000000000 +0200
@@ -1,6 +1,6 @@
#
# Automatically generated file; DO NOT EDIT.
-# Linux/powerpc 3.15.0-rc6 Kernel Configuration
+# Linux/powerpc 3.15.0-rc7 Kernel Configuration
#
CONFIG_PPC64=y
@@ -2023,6 +2023,7 @@
CONFIG_CHELSIO_T4VF=m
CONFIG_NET_VENDOR_CISCO=y
CONFIG_ENIC=m
+# CONFIG_CX_ECAT is not set
CONFIG_DNET=m
CONFIG_NET_VENDOR_DEC=y
CONFIG_NET_TULIP=y
@@ -3182,7 +3183,7 @@
CONFIG_SENSORS_GL520SM=m
CONFIG_SENSORS_G760A=m
CONFIG_SENSORS_G762=m
-CONFIG_SENSORS_GPIO_FAN=m
+# CONFIG_SENSORS_GPIO_FAN is not set
CONFIG_SENSORS_HIH6130=m
CONFIG_SENSORS_IBMAEM=m
CONFIG_SENSORS_IBMPEX=m
@@ -3220,6 +3221,7 @@
CONFIG_SENSORS_LM95234=m
CONFIG_SENSORS_LM95241=m
CONFIG_SENSORS_LM95245=m
+# CONFIG_SENSORS_NTC_THERMISTOR is not set
CONFIG_SENSORS_PCF8591=m
CONFIG_PMBUS=m
CONFIG_SENSORS_PMBUS=m
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/config/ppc64/default new/config/ppc64/default
--- old/config/ppc64/default 2014-05-23 15:27:33.000000000 +0200
+++ new/config/ppc64/default 2014-05-28 17:39:51.000000000 +0200
@@ -1,6 +1,6 @@
#
# Automatically generated file; DO NOT EDIT.
-# Linux/powerpc 3.15.0-rc6 Kernel Configuration
+# Linux/powerpc 3.15.0-rc7 Kernel Configuration
#
CONFIG_PPC64=y
@@ -2013,6 +2013,7 @@
CONFIG_CHELSIO_T4VF=m
CONFIG_NET_VENDOR_CISCO=y
CONFIG_ENIC=m
+# CONFIG_CX_ECAT is not set
CONFIG_DNET=m
CONFIG_NET_VENDOR_DEC=y
CONFIG_NET_TULIP=y
@@ -3172,7 +3173,7 @@
CONFIG_SENSORS_GL520SM=m
CONFIG_SENSORS_G760A=m
CONFIG_SENSORS_G762=m
-CONFIG_SENSORS_GPIO_FAN=m
+# CONFIG_SENSORS_GPIO_FAN is not set
CONFIG_SENSORS_HIH6130=m
CONFIG_SENSORS_IBMAEM=m
CONFIG_SENSORS_IBMPEX=m
@@ -3210,6 +3211,7 @@
CONFIG_SENSORS_LM95234=m
CONFIG_SENSORS_LM95241=m
CONFIG_SENSORS_LM95245=m
+# CONFIG_SENSORS_NTC_THERMISTOR is not set
CONFIG_SENSORS_PCF8591=m
CONFIG_PMBUS=m
CONFIG_SENSORS_PMBUS=m
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/config/ppc64/vanilla new/config/ppc64/vanilla
--- old/config/ppc64/vanilla 2014-05-23 15:27:33.000000000 +0200
+++ new/config/ppc64/vanilla 2014-05-28 17:39:51.000000000 +0200
@@ -1,6 +1,6 @@
#
# Automatically generated file; DO NOT EDIT.
-# Linux/powerpc 3.15.0-rc6 Kernel Configuration
+# Linux/powerpc 3.15.0-rc7 Kernel Configuration
#
CONFIG_PPC64=y
@@ -2008,6 +2008,7 @@
CONFIG_CHELSIO_T4VF=m
CONFIG_NET_VENDOR_CISCO=y
CONFIG_ENIC=m
+# CONFIG_CX_ECAT is not set
CONFIG_DNET=m
CONFIG_NET_VENDOR_DEC=y
CONFIG_NET_TULIP=y
@@ -3165,7 +3166,7 @@
CONFIG_SENSORS_GL520SM=m
CONFIG_SENSORS_G760A=m
CONFIG_SENSORS_G762=m
-CONFIG_SENSORS_GPIO_FAN=m
+# CONFIG_SENSORS_GPIO_FAN is not set
CONFIG_SENSORS_HIH6130=m
CONFIG_SENSORS_IBMAEM=m
CONFIG_SENSORS_IBMPEX=m
@@ -3203,6 +3204,7 @@
CONFIG_SENSORS_LM95234=m
CONFIG_SENSORS_LM95241=m
CONFIG_SENSORS_LM95245=m
+# CONFIG_SENSORS_NTC_THERMISTOR is not set
CONFIG_SENSORS_PCF8591=m
CONFIG_PMBUS=m
CONFIG_SENSORS_PMBUS=m
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/config/ppc64le/debug new/config/ppc64le/debug
--- old/config/ppc64le/debug 2014-05-23 15:27:33.000000000 +0200
+++ new/config/ppc64le/debug 2014-05-28 17:39:51.000000000 +0200
@@ -1,6 +1,6 @@
#
# Automatically generated file; DO NOT EDIT.
-# Linux/powerpc 3.15.0-rc6 Kernel Configuration
+# Linux/powerpc 3.15.0-rc7 Kernel Configuration
#
CONFIG_PPC64=y
@@ -1996,6 +1996,7 @@
CONFIG_CHELSIO_T4VF=m
CONFIG_NET_VENDOR_CISCO=y
CONFIG_ENIC=m
+# CONFIG_CX_ECAT is not set
CONFIG_DNET=m
CONFIG_NET_VENDOR_DEC=y
CONFIG_NET_TULIP=y
@@ -3155,7 +3156,7 @@
CONFIG_SENSORS_GL520SM=m
CONFIG_SENSORS_G760A=m
CONFIG_SENSORS_G762=m
-CONFIG_SENSORS_GPIO_FAN=m
+# CONFIG_SENSORS_GPIO_FAN is not set
CONFIG_SENSORS_HIH6130=m
CONFIG_SENSORS_IBMAEM=m
CONFIG_SENSORS_IBMPEX=m
@@ -3193,6 +3194,7 @@
CONFIG_SENSORS_LM95234=m
CONFIG_SENSORS_LM95241=m
CONFIG_SENSORS_LM95245=m
+# CONFIG_SENSORS_NTC_THERMISTOR is not set
CONFIG_SENSORS_PCF8591=m
CONFIG_PMBUS=m
CONFIG_SENSORS_PMBUS=m
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/config/ppc64le/default new/config/ppc64le/default
--- old/config/ppc64le/default 2014-05-23 15:27:33.000000000 +0200
+++ new/config/ppc64le/default 2014-05-28 17:39:51.000000000 +0200
@@ -1,6 +1,6 @@
#
# Automatically generated file; DO NOT EDIT.
-# Linux/powerpc 3.15.0-rc6 Kernel Configuration
+# Linux/powerpc 3.15.0-rc7 Kernel Configuration
#
CONFIG_PPC64=y
@@ -1986,6 +1986,7 @@
CONFIG_CHELSIO_T4VF=m
CONFIG_NET_VENDOR_CISCO=y
CONFIG_ENIC=m
+# CONFIG_CX_ECAT is not set
CONFIG_DNET=m
CONFIG_NET_VENDOR_DEC=y
CONFIG_NET_TULIP=y
@@ -3145,7 +3146,7 @@
CONFIG_SENSORS_GL520SM=m
CONFIG_SENSORS_G760A=m
CONFIG_SENSORS_G762=m
-CONFIG_SENSORS_GPIO_FAN=m
+# CONFIG_SENSORS_GPIO_FAN is not set
CONFIG_SENSORS_HIH6130=m
CONFIG_SENSORS_IBMAEM=m
CONFIG_SENSORS_IBMPEX=m
@@ -3183,6 +3184,7 @@
CONFIG_SENSORS_LM95234=m
CONFIG_SENSORS_LM95241=m
CONFIG_SENSORS_LM95245=m
+# CONFIG_SENSORS_NTC_THERMISTOR is not set
CONFIG_SENSORS_PCF8591=m
CONFIG_PMBUS=m
CONFIG_SENSORS_PMBUS=m
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/config/ppc64le/vanilla new/config/ppc64le/vanilla
--- old/config/ppc64le/vanilla 2014-05-23 15:27:33.000000000 +0200
+++ new/config/ppc64le/vanilla 2014-05-28 17:39:51.000000000 +0200
@@ -1,6 +1,6 @@
#
# Automatically generated file; DO NOT EDIT.
-# Linux/powerpc 3.15.0-rc6 Kernel Configuration
+# Linux/powerpc 3.15.0-rc7 Kernel Configuration
#
CONFIG_PPC64=y
@@ -1981,6 +1981,7 @@
CONFIG_CHELSIO_T4VF=m
CONFIG_NET_VENDOR_CISCO=y
CONFIG_ENIC=m
+# CONFIG_CX_ECAT is not set
CONFIG_DNET=m
CONFIG_NET_VENDOR_DEC=y
CONFIG_NET_TULIP=y
@@ -3138,7 +3139,7 @@
CONFIG_SENSORS_GL520SM=m
CONFIG_SENSORS_G760A=m
CONFIG_SENSORS_G762=m
-CONFIG_SENSORS_GPIO_FAN=m
+# CONFIG_SENSORS_GPIO_FAN is not set
CONFIG_SENSORS_HIH6130=m
CONFIG_SENSORS_IBMAEM=m
CONFIG_SENSORS_IBMPEX=m
@@ -3176,6 +3177,7 @@
CONFIG_SENSORS_LM95234=m
CONFIG_SENSORS_LM95241=m
CONFIG_SENSORS_LM95245=m
+# CONFIG_SENSORS_NTC_THERMISTOR is not set
CONFIG_SENSORS_PCF8591=m
CONFIG_PMBUS=m
CONFIG_SENSORS_PMBUS=m
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/config/s390x/default new/config/s390x/default
--- old/config/s390x/default 2014-05-23 15:27:33.000000000 +0200
+++ new/config/s390x/default 2014-05-28 17:39:51.000000000 +0200
@@ -1,6 +1,6 @@
#
# Automatically generated file; DO NOT EDIT.
-# Linux/s390 3.15.0-rc6 Kernel Configuration
+# Linux/s390 3.15.0-rc7 Kernel Configuration
#
CONFIG_MMU=y
CONFIG_ZONE_DMA=y
@@ -1380,6 +1380,7 @@
# CONFIG_NET_CALXEDA_XGMAC is not set
# CONFIG_NET_VENDOR_CHELSIO is not set
# CONFIG_NET_VENDOR_CISCO is not set
+# CONFIG_CX_ECAT is not set
# CONFIG_DNET is not set
# CONFIG_NET_VENDOR_DEC is not set
# CONFIG_NET_VENDOR_DLINK is not set
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/config/s390x/vanilla new/config/s390x/vanilla
--- old/config/s390x/vanilla 2014-05-23 15:27:33.000000000 +0200
+++ new/config/s390x/vanilla 2014-05-28 17:39:51.000000000 +0200
@@ -1,6 +1,6 @@
#
# Automatically generated file; DO NOT EDIT.
-# Linux/s390 3.15.0-rc6 Kernel Configuration
+# Linux/s390 3.15.0-rc7 Kernel Configuration
#
CONFIG_MMU=y
CONFIG_ZONE_DMA=y
@@ -1376,6 +1376,7 @@
# CONFIG_NET_CALXEDA_XGMAC is not set
# CONFIG_NET_VENDOR_CHELSIO is not set
# CONFIG_NET_VENDOR_CISCO is not set
+# CONFIG_CX_ECAT is not set
# CONFIG_DNET is not set
# CONFIG_NET_VENDOR_DEC is not set
# CONFIG_NET_VENDOR_DLINK is not set
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/config/x86_64/debug new/config/x86_64/debug
--- old/config/x86_64/debug 2014-05-23 15:27:33.000000000 +0200
+++ new/config/x86_64/debug 2014-05-28 17:39:51.000000000 +0200
@@ -1,6 +1,6 @@
#
# Automatically generated file; DO NOT EDIT.
-# Linux/x86_64 3.15.0-rc6 Kernel Configuration
+# Linux/x86_64 3.15.0-rc7 Kernel Configuration
#
CONFIG_64BIT=y
CONFIG_X86_64=y
@@ -1354,7 +1354,6 @@
CONFIG_CAN_PLX_PCI=m
CONFIG_CAN_C_CAN=m
# CONFIG_CAN_C_CAN_PLATFORM is not set
-# CONFIG_CAN_C_CAN_STRICT_FRAME_ORDERING is not set
CONFIG_CAN_C_CAN_PCI=m
# CONFIG_CAN_CC770 is not set
@@ -2335,6 +2334,7 @@
CONFIG_CHELSIO_T4VF=m
CONFIG_NET_VENDOR_CISCO=y
CONFIG_ENIC=m
+CONFIG_CX_ECAT=m
CONFIG_DNET=m
CONFIG_NET_VENDOR_DEC=y
CONFIG_NET_TULIP=y
@@ -3586,7 +3586,7 @@
CONFIG_SENSORS_GL520SM=m
CONFIG_SENSORS_G760A=m
CONFIG_SENSORS_G762=m
-CONFIG_SENSORS_GPIO_FAN=m
+# CONFIG_SENSORS_GPIO_FAN is not set
CONFIG_SENSORS_HIH6130=m
CONFIG_SENSORS_IBMAEM=m
CONFIG_SENSORS_IBMPEX=m
@@ -3628,7 +3628,7 @@
CONFIG_SENSORS_LM95245=m
CONFIG_SENSORS_PC87360=m
CONFIG_SENSORS_PC87427=m
-CONFIG_SENSORS_NTC_THERMISTOR=m
+# CONFIG_SENSORS_NTC_THERMISTOR is not set
CONFIG_SENSORS_NCT6775=m
CONFIG_SENSORS_PCF8591=m
CONFIG_PMBUS=m
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/config/x86_64/default new/config/x86_64/default
--- old/config/x86_64/default 2014-05-23 15:27:33.000000000 +0200
+++ new/config/x86_64/default 2014-05-28 17:39:51.000000000 +0200
@@ -1,6 +1,6 @@
#
# Automatically generated file; DO NOT EDIT.
-# Linux/x86_64 3.15.0-rc6 Kernel Configuration
+# Linux/x86_64 3.15.0-rc7 Kernel Configuration
#
CONFIG_64BIT=y
CONFIG_X86_64=y
@@ -1359,7 +1359,6 @@
CONFIG_CAN_PLX_PCI=m
CONFIG_CAN_C_CAN=m
# CONFIG_CAN_C_CAN_PLATFORM is not set
-# CONFIG_CAN_C_CAN_STRICT_FRAME_ORDERING is not set
CONFIG_CAN_C_CAN_PCI=m
# CONFIG_CAN_CC770 is not set
@@ -2325,6 +2324,7 @@
CONFIG_CHELSIO_T4VF=m
CONFIG_NET_VENDOR_CISCO=y
CONFIG_ENIC=m
+CONFIG_CX_ECAT=m
CONFIG_DNET=m
CONFIG_NET_VENDOR_DEC=y
CONFIG_NET_TULIP=y
@@ -3576,7 +3576,7 @@
CONFIG_SENSORS_GL520SM=m
CONFIG_SENSORS_G760A=m
CONFIG_SENSORS_G762=m
-CONFIG_SENSORS_GPIO_FAN=m
+# CONFIG_SENSORS_GPIO_FAN is not set
CONFIG_SENSORS_HIH6130=m
CONFIG_SENSORS_IBMAEM=m
CONFIG_SENSORS_IBMPEX=m
@@ -3618,7 +3618,7 @@
CONFIG_SENSORS_LM95245=m
CONFIG_SENSORS_PC87360=m
CONFIG_SENSORS_PC87427=m
-CONFIG_SENSORS_NTC_THERMISTOR=m
+# CONFIG_SENSORS_NTC_THERMISTOR is not set
CONFIG_SENSORS_NCT6775=m
CONFIG_SENSORS_PCF8591=m
CONFIG_PMBUS=m
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/config/x86_64/desktop new/config/x86_64/desktop
--- old/config/x86_64/desktop 2014-05-23 15:27:33.000000000 +0200
+++ new/config/x86_64/desktop 2014-05-28 17:39:51.000000000 +0200
@@ -1,6 +1,6 @@
#
# Automatically generated file; DO NOT EDIT.
-# Linux/x86_64 3.15.0-rc6 Kernel Configuration
+# Linux/x86_64 3.15.0-rc7 Kernel Configuration
#
CONFIG_64BIT=y
CONFIG_X86_64=y
@@ -1358,7 +1358,6 @@
CONFIG_CAN_PLX_PCI=m
CONFIG_CAN_C_CAN=m
# CONFIG_CAN_C_CAN_PLATFORM is not set
-# CONFIG_CAN_C_CAN_STRICT_FRAME_ORDERING is not set
CONFIG_CAN_C_CAN_PCI=m
# CONFIG_CAN_CC770 is not set
@@ -2324,6 +2323,7 @@
CONFIG_CHELSIO_T4VF=m
CONFIG_NET_VENDOR_CISCO=y
CONFIG_ENIC=m
+CONFIG_CX_ECAT=m
CONFIG_DNET=m
CONFIG_NET_VENDOR_DEC=y
CONFIG_NET_TULIP=y
@@ -3575,7 +3575,7 @@
CONFIG_SENSORS_GL520SM=m
CONFIG_SENSORS_G760A=m
CONFIG_SENSORS_G762=m
-CONFIG_SENSORS_GPIO_FAN=m
+# CONFIG_SENSORS_GPIO_FAN is not set
CONFIG_SENSORS_HIH6130=m
CONFIG_SENSORS_IBMAEM=m
CONFIG_SENSORS_IBMPEX=m
@@ -3617,7 +3617,7 @@
CONFIG_SENSORS_LM95245=m
CONFIG_SENSORS_PC87360=m
CONFIG_SENSORS_PC87427=m
-CONFIG_SENSORS_NTC_THERMISTOR=m
+# CONFIG_SENSORS_NTC_THERMISTOR is not set
CONFIG_SENSORS_NCT6775=m
CONFIG_SENSORS_PCF8591=m
CONFIG_PMBUS=m
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/config/x86_64/ec2 new/config/x86_64/ec2
--- old/config/x86_64/ec2 2014-05-23 15:27:33.000000000 +0200
+++ new/config/x86_64/ec2 2014-05-28 17:39:51.000000000 +0200
@@ -1,6 +1,6 @@
#
# Automatically generated file; DO NOT EDIT.
-# Linux/x86_64 3.15.0-rc6 Kernel Configuration
+# Linux/x86_64 3.15.0-rc7 Kernel Configuration
#
CONFIG_64BIT=y
CONFIG_X86_64=y
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/config/x86_64/vanilla new/config/x86_64/vanilla
--- old/config/x86_64/vanilla 2014-05-23 15:27:33.000000000 +0200
+++ new/config/x86_64/vanilla 2014-05-28 17:39:51.000000000 +0200
@@ -1,6 +1,6 @@
#
# Automatically generated file; DO NOT EDIT.
-# Linux/x86_64 3.15.0-rc6 Kernel Configuration
+# Linux/x86_64 3.15.0-rc7 Kernel Configuration
#
CONFIG_64BIT=y
CONFIG_X86_64=y
@@ -1356,7 +1356,6 @@
CONFIG_CAN_PLX_PCI=m
CONFIG_CAN_C_CAN=m
# CONFIG_CAN_C_CAN_PLATFORM is not set
-# CONFIG_CAN_C_CAN_STRICT_FRAME_ORDERING is not set
CONFIG_CAN_C_CAN_PCI=m
# CONFIG_CAN_CC770 is not set
@@ -2322,6 +2321,7 @@
CONFIG_CHELSIO_T4VF=m
CONFIG_NET_VENDOR_CISCO=y
CONFIG_ENIC=m
+CONFIG_CX_ECAT=m
CONFIG_DNET=m
CONFIG_NET_VENDOR_DEC=y
CONFIG_NET_TULIP=y
@@ -3572,7 +3572,7 @@
CONFIG_SENSORS_GL520SM=m
CONFIG_SENSORS_G760A=m
CONFIG_SENSORS_G762=m
-CONFIG_SENSORS_GPIO_FAN=m
+# CONFIG_SENSORS_GPIO_FAN is not set
CONFIG_SENSORS_HIH6130=m
CONFIG_SENSORS_IBMAEM=m
CONFIG_SENSORS_IBMPEX=m
@@ -3614,7 +3614,7 @@
CONFIG_SENSORS_LM95245=m
CONFIG_SENSORS_PC87360=m
CONFIG_SENSORS_PC87427=m
-CONFIG_SENSORS_NTC_THERMISTOR=m
+# CONFIG_SENSORS_NTC_THERMISTOR is not set
CONFIG_SENSORS_NCT6775=m
CONFIG_SENSORS_PCF8591=m
CONFIG_PMBUS=m
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/config/x86_64/xen new/config/x86_64/xen
--- old/config/x86_64/xen 2014-05-23 15:27:33.000000000 +0200
+++ new/config/x86_64/xen 2014-05-28 17:39:51.000000000 +0200
@@ -1,6 +1,6 @@
#
# Automatically generated file; DO NOT EDIT.
-# Linux/x86_64 3.15.0-rc6 Kernel Configuration
+# Linux/x86_64 3.15.0-rc7 Kernel Configuration
#
CONFIG_64BIT=y
CONFIG_X86_64=y
@@ -1216,7 +1216,6 @@
CONFIG_CAN_PLX_PCI=m
CONFIG_CAN_C_CAN=m
# CONFIG_CAN_C_CAN_PLATFORM is not set
-# CONFIG_CAN_C_CAN_STRICT_FRAME_ORDERING is not set
CONFIG_CAN_C_CAN_PCI=m
# CONFIG_CAN_CC770 is not set
@@ -2163,6 +2162,7 @@
CONFIG_CHELSIO_T4VF=m
CONFIG_NET_VENDOR_CISCO=y
CONFIG_ENIC=m
+CONFIG_CX_ECAT=m
CONFIG_DNET=m
CONFIG_NET_VENDOR_DEC=y
CONFIG_NET_TULIP=y
@@ -3397,7 +3397,7 @@
CONFIG_SENSORS_GL520SM=m
CONFIG_SENSORS_G760A=m
CONFIG_SENSORS_G762=m
-CONFIG_SENSORS_GPIO_FAN=m
+# CONFIG_SENSORS_GPIO_FAN is not set
CONFIG_SENSORS_HIH6130=m
CONFIG_SENSORS_IBMAEM=m
CONFIG_SENSORS_IBMPEX=m
@@ -3439,7 +3439,7 @@
CONFIG_SENSORS_LM95245=m
CONFIG_SENSORS_PC87360=m
CONFIG_SENSORS_PC87427=m
-CONFIG_SENSORS_NTC_THERMISTOR=m
+# CONFIG_SENSORS_NTC_THERMISTOR is not set
CONFIG_SENSORS_NCT6775=m
CONFIG_SENSORS_PCF8591=m
CONFIG_PMBUS=m
++++++ linux-3.15-rc6.tar.xz -> linux-3.15-rc7.tar.xz ++++++
/work/SRC/openSUSE:Factory/kernel-source/linux-3.15-rc6.tar.xz /work/SRC/openSUSE:Factory/.kernel-source.new/linux-3.15-rc7.tar.xz differ: char 27, line 1
++++++ patches.fixes.tar.bz2 ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/patches.fixes/0001-memcg-fix-swapcache-charge-from-kernel-thread-contex.patch new/patches.fixes/0001-memcg-fix-swapcache-charge-from-kernel-thread-contex.patch
--- old/patches.fixes/0001-memcg-fix-swapcache-charge-from-kernel-thread-contex.patch 2014-05-19 10:37:44.000000000 +0200
+++ new/patches.fixes/0001-memcg-fix-swapcache-charge-from-kernel-thread-contex.patch 1970-01-01 01:00:00.000000000 +0100
@@ -1,116 +0,0 @@
-From: Michal Hocko <mhocko(a)suse.cz>
-Date: Fri, 16 May 2014 14:26:40 +0200
-Subject: [PATCH] memcg: fix swapcache charge from kernel thread context
-Patch-mainline: not-yet
-References: bnc#878306
-
-284f39afeaa4 (mm: memcg: push !mm handling out to page cache charge
-function) explicitly checks for page cache charges without any mm
-context (from kernel thread context[1]).
-
-This seemed to be the only possible case where memory could be charged
-without mm context so 03583f1a631c (memcg: remove unnecessary !mm check
-from try_get_mem_cgroup_from_mm()) removed the mm check from
-get_mem_cgroup_from_mm. This however caused another NULL ptr dereference
-during early boot when loopback kernel thread splices to tmpfs:
-
-Bug: unable to handle kernel NULL pointer dereference at 0000000000000360
-Ip: [<ffffffff81196aab>] get_mem_cgroup_from_mm.isra.42+0x2b/0x60
-PGD 5082067 PUD 83c3067 PMD 0
-Oops: 0000 [#1] SMP
-Modules linked in: btrfs dm_multipath dm_mod scsi_dh multipath raid10 raid456 async_raid6_recov async_memcpy async_pq raid6_pq async_xor xor async_tx raid1 raid0 md_mod parport_pc parport nls_utf8 isofs usb_storage iscsi_ibft iscsi_boot_sysfs arc4 ecb fan thermal nfs lockd fscache nls_iso8859_1 nls_cp437 sg st hid_generic usbhid af_packet sunrpc sr_mod cdrom ata_generic uhci_hcd virtio_net virtio_blk ehci_hcd usbcore ata_piix floppy processor button usb_common virtio_pci virtio_ring virtio edd squashfs loop
- ppa]
-Cpu: 0 PID: 97 Comm: loop1 Not tainted 3.15.0-rc5-5-default #1
-Hardware name: Bochs Bochs, BIOS Bochs 01/01/2011
-Task: ffff880039b7a390 ti: ffff880038efe000 task.ti: ffff880038efe000
-Rip: 0010:[<ffffffff81196aab>] [<ffffffff81196aab>] get_mem_cgroup_from_mm.isra.42+0x2b/0x60
-Rsp: 0018:ffff880038effa40 EFLAGS: 00010246
-Rax: 0000000000000000 RBX: ffffea00001e5140 RCX: 0000000000000020
-Rdx: ffff88003c365020 RSI: ffffea00001e5140 RDI: 0000000000000360
-Rbp: ffff880038effa78 R08: 0000000000000ab3 R09: ffff880039572248
-R10: 0000000000002ace R11: 0000000000000000 R12: 0000000000000010
-R13: 0000000000000000 R14: ffff880038c72448 R15: 00000000fffffffe
-Fs: 00007fb0042ed880(0000) GS:ffff88003c000000(0000) knlGS:0000000000000000
-Cs: 0010 DS: 0000 ES: 0000 CR0: 000000008005003b
-Cr2: 0000000000000360 CR3: 0000000005e2b000 CR4: 00000000000006f0
-Stack: ffffffff8119bae0 0000000000000000 0000000000000000 ffffea00001e5140
- 0000000000000001 00000000ffffffef ffffffff8119c04b 0000000000000000
- ffff880038c722f8 0000000000000ab3 ffffffff8115129b 00000000000001d7
-Call Trace:
- [<ffffffff8119bae0>] __mem_cgroup_try_charge_swapin+0x40/0xe0
- [<ffffffff8119c04b>] mem_cgroup_charge_file+0x8b/0xd0
- [<ffffffff8115129b>] shmem_getpage_gfp+0x66b/0x7b0
- [<ffffffff811518cf>] shmem_file_splice_read+0x18f/0x430
- [<ffffffff811ceff2>] splice_direct_to_actor+0xa2/0x1c0
- [<ffffffffa00019ea>] do_lo_receive+0x5a/0x60 [loop]
- [<ffffffffa0002158>] loop_thread+0x298/0x720 [loop]
- [<ffffffff810778d6>] kthread+0xc6/0xe0
- [<ffffffff815c0dbc>] ret_from_fork+0x7c/0xb0
-Code: 66 66 66 66 90 eb 24 66 0f 1f 84 00 00 00 00 00 f6 40 48 01 75 3a 48 8b 50 18 f6 c2 03 75 32 65 ff 02 ba 01 00 00 00 84 d2 75 25 <48> 8b 07 48 85 c0 74 10 48 8b 80 70 08 00 00 48 8b 40 60 48 85
-RIP [<ffffffff81196aab>] get_mem_cgroup_from_mm.isra.42+0x2b/0x60
- RSP <ffff880038effa40>
-Cr2: 0000000000000360
-
-This patch fixes the issue by reintroducing mm check into get_mem_cgroup_from_mm.
-We could do the same trick in __mem_cgroup_try_charge_swapin as we do
-for the regular page cache path but it is not worth troubles. The check
-is not that expensive and it is better to have get_mem_cgroup_from_mm
-more robust.
-
-[1] - http://marc.info/?l=linux-mm&m=139463617808941&w=2
-
-Fixes: 03583f1a631c (3.15-rc1)
-Signed-off-by: Michal Hocko <mhocko(a)suse.cz>
-
----
- mm/memcontrol.c | 26 +++++++++++++-------------
- 1 file changed, 13 insertions(+), 13 deletions(-)
-
-diff --git a/mm/memcontrol.c b/mm/memcontrol.c
-index 2cb81478d30c..2248a648a127 100644
---- a/mm/memcontrol.c
-+++ b/mm/memcontrol.c
-@@ -1061,9 +1061,17 @@ static struct mem_cgroup *get_mem_cgroup_from_mm(struct mm_struct *mm)
-
- rcu_read_lock();
- do {
-- memcg = mem_cgroup_from_task(rcu_dereference(mm->owner));
-- if (unlikely(!memcg))
-+ /*
-+ * Page cache or loopback insertions can happen without an
-+ * actual mm context, e.g. during disk probing on boot
-+ */
-+ if (unlikely(!mm))
- memcg = root_mem_cgroup;
-+ else {
-+ memcg = mem_cgroup_from_task(rcu_dereference(mm->owner));
-+ if (unlikely(!memcg))
-+ memcg = root_mem_cgroup;
-+ }
- } while (!css_tryget(&memcg->css));
- rcu_read_unlock();
- return memcg;
-@@ -3857,17 +3865,9 @@ int mem_cgroup_charge_file(struct page *page, struct mm_struct *mm,
- return 0;
- }
-
-- /*
-- * Page cache insertions can happen without an actual mm
-- * context, e.g. during disk probing on boot.
-- */
-- if (unlikely(!mm))
-- memcg = root_mem_cgroup;
-- else {
-- memcg = mem_cgroup_try_charge_mm(mm, gfp_mask, 1, true);
-- if (!memcg)
-- return -ENOMEM;
-- }
-+ memcg = mem_cgroup_try_charge_mm(mm, gfp_mask, 1, true);
-+ if (!memcg)
-+ return -ENOMEM;
- __mem_cgroup_commit_charge(memcg, page, 1, type, false);
- return 0;
- }
---
-2.0.0.rc2
-
++++++ patches.xen.tar.bz2 ++++++
++++ 5383 lines of diff (skipped)
++++++ series.conf ++++++
--- /var/tmp/diff_new_pack.WVEyML/_old 2014-06-01 18:58:37.000000000 +0200
+++ /var/tmp/diff_new_pack.WVEyML/_new 2014-06-01 18:58:37.000000000 +0200
@@ -178,7 +178,6 @@
########################################################
patches.suse/readahead-request-tunables.patch
patches.fixes/mm-Fix-assertion-mapping-nrpages-0-in-end_writeback.patch
- patches.fixes/0001-memcg-fix-swapcache-charge-from-kernel-thread-contex.patch
########################################################
# IPC patches
@@ -602,7 +601,7 @@
patches.xen/xen3-patch-3.12
patches.xen/xen3-patch-3.13
patches.xen/xen3-patch-3.14
- patches.xen/xen3-patch-3.15-rc5
+ patches.xen/xen3-patch-3.15-rc7
# ports of other patches
patches.xen/xen3-stack-unwind
++++++ source-timestamp ++++++
--- /var/tmp/diff_new_pack.WVEyML/_old 2014-06-01 18:58:37.000000000 +0200
+++ /var/tmp/diff_new_pack.WVEyML/_new 2014-06-01 18:58:37.000000000 +0200
@@ -1,3 +1,3 @@
-2014-05-26 12:06:25 +0200
-GIT Revision: 346029d151a21d9a7a20e74d75685096b2d6f29e
+2014-05-28 17:39:51 +0200
+GIT Revision: 96f5b6094e8b9774caf5ca1d0989fdf71b04cdf1
GIT Branch: master
--
To unsubscribe, e-mail: opensuse-commit+unsubscribe(a)opensuse.org
For additional commands, e-mail: opensuse-commit+help(a)opensuse.org
1
0
Hello community,
here is the log from the commit of package libkate for openSUSE:Factory checked in at 2014-06-01 18:58:20
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/libkate (Old)
and /work/SRC/openSUSE:Factory/.libkate.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "libkate"
Changes:
--------
--- /work/SRC/openSUSE:Factory/libkate/libkate.changes 2012-03-06 13:38:24.000000000 +0100
+++ /work/SRC/openSUSE:Factory/.libkate.new/libkate.changes 2014-06-01 18:58:21.000000000 +0200
@@ -1,0 +2,5 @@
+Wed May 28 05:51:19 UTC 2014 - crrodriguez(a)opensuse.org
+
+- Tell doxygen not to include timestamps to help build-compare
+
+-------------------------------------------------------------------
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ libkate.spec ++++++
--- /var/tmp/diff_new_pack.6NktKs/_old 2014-06-01 18:58:22.000000000 +0200
+++ /var/tmp/diff_new_pack.6NktKs/_new 2014-06-01 18:58:22.000000000 +0200
@@ -1,7 +1,7 @@
#
# spec file for package libkate
#
-# Copyright (c) 2012 SUSE LINUX Products GmbH, Nuernberg, Germany.
+# Copyright (c) 2014 SUSE LINUX Products GmbH, Nuernberg, Germany.
# Copyright (c) 2010 SUSE Dominique Leuenberger, Amsterdam, Netherlands
#
# All modifications and additions to the file contributed by third parties
@@ -17,7 +17,6 @@
#
-
Name: libkate
Version: 0.4.1
Release: 0
@@ -89,9 +88,9 @@
Summary: A karaoke and text codec for embedding in Ogg - Development Files
Group: Development/Libraries/C and C++
Requires: %{name}1 = %{version}
-Requires: liboggkate1 = %{version}
-Requires: libogg-devel
Requires: glibc-devel
+Requires: libogg-devel
+Requires: liboggkate1 = %{version}
%description devel
Kate is a codec for karaoke and text encapsulation for Ogg. Most of the
@@ -128,10 +127,10 @@
Group: Productivity/Multimedia/Other
Provides: katedj = 0.4.1
Obsoletes: katedj < 0.4.1
-Requires: %{name}-tools = %{version}
-Requires: python-wxWidgets
Requires: %{_bindir}/oggz-merge
Requires: %{_bindir}/oggz-rip
+Requires: %{name}-tools = %{version}
+Requires: python-wxWidgets
%py_requires
Recommends: %{_bindir}/oggz-known-codecs
%if %{?suse_version} >= 1130
@@ -146,6 +145,7 @@
%setup -q
%build
+echo 'HTML_TIMESTAMP=NO' >> doc/kate.doxygen.in
%configure \
--disable-static
%__make %{_smp_mflags}
--
To unsubscribe, e-mail: opensuse-commit+unsubscribe(a)opensuse.org
For additional commands, e-mail: opensuse-commit+help(a)opensuse.org
1
0
Hello community,
here is the log from the commit of package libquicktime for openSUSE:Factory checked in at 2014-06-01 18:58:18
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/libquicktime (Old)
and /work/SRC/openSUSE:Factory/.libquicktime.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "libquicktime"
Changes:
--------
--- /work/SRC/openSUSE:Factory/libquicktime/libquicktime.changes 2013-03-20 11:45:37.000000000 +0100
+++ /work/SRC/openSUSE:Factory/.libquicktime.new/libquicktime.changes 2014-06-01 18:58:19.000000000 +0200
@@ -1,0 +2,5 @@
+Wed May 28 05:56:42 UTC 2014 - crrodriguez(a)opensuse.org
+
+- disable timestamps in doxygen, make build-compare happy
+
+-------------------------------------------------------------------
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ libquicktime.spec ++++++
--- /var/tmp/diff_new_pack.PCAsxl/_old 2014-06-01 18:58:20.000000000 +0200
+++ /var/tmp/diff_new_pack.PCAsxl/_new 2014-06-01 18:58:20.000000000 +0200
@@ -1,7 +1,7 @@
#
# spec file for package libquicktime
#
-# Copyright (c) 2013 SUSE LINUX Products GmbH, Nuernberg, Germany.
+# Copyright (c) 2014 SUSE LINUX Products GmbH, Nuernberg, Germany.
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@@ -93,6 +93,7 @@
cp -v %{S:1} .
%build
+echo 'HTML_TIMESTAMP=NO' >> doc/Doxyfile.in
%configure \
--enable-gpl \
--docdir="%{_docdir}/%{name}-devel" \
--
To unsubscribe, e-mail: opensuse-commit+unsubscribe(a)opensuse.org
For additional commands, e-mail: opensuse-commit+help(a)opensuse.org
1
0
Hello community,
here is the log from the commit of package portaudio for openSUSE:Factory checked in at 2014-06-01 18:58:17
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/portaudio (Old)
and /work/SRC/openSUSE:Factory/.portaudio.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "portaudio"
Changes:
--------
--- /work/SRC/openSUSE:Factory/portaudio/portaudio.changes 2014-04-12 21:48:09.000000000 +0200
+++ /work/SRC/openSUSE:Factory/.portaudio.new/portaudio.changes 2014-06-01 18:58:18.000000000 +0200
@@ -1,0 +2,5 @@
+Wed May 28 05:38:09 UTC 2014 - crrodriguez(a)opensuse.org
+
+- disable timestamps in doxygen too, make build-compare happy
+
+-------------------------------------------------------------------
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ portaudio.spec ++++++
--- /var/tmp/diff_new_pack.V04h8u/_old 2014-06-01 18:58:19.000000000 +0200
+++ /var/tmp/diff_new_pack.V04h8u/_new 2014-06-01 18:58:19.000000000 +0200
@@ -1,7 +1,7 @@
#
# spec file for package portaudio
#
-# Copyright (c) 2012 SUSE LINUX Products GmbH, Nuernberg, Germany.
+# Copyright (c) 2014 SUSE LINUX Products GmbH, Nuernberg, Germany.
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@@ -67,6 +67,7 @@
sed -i "s/__DATE__/\"$FAKE_BUILDDATE\"/" qa/loopback/src/paqa.c src/common/pa_front.c
FAKE_BUILDTIME=$(LC_ALL=C date -u -r %{_sourcedir}/%{name}.changes '+%%H:%%M:%%S')
sed -i "s/__TIME__/\"$FAKE_BUILDTIME\"/" qa/loopback/src/paqa.c src/common/pa_front.c
+echo 'HTML_TIMESTAMP=NO' >> Doxyfile
%build
%configure --disable-static \
--
To unsubscribe, e-mail: opensuse-commit+unsubscribe(a)opensuse.org
For additional commands, e-mail: opensuse-commit+help(a)opensuse.org
1
0