diff --git a/0001-hwdb-keymaps-for-Samsung-900X3E-900X3F.patch b/0001-hwdb-keymaps-for-Samsung-900X3E-900X3F.patch new file mode 100644 index 00000000..d3acf899 --- /dev/null +++ b/0001-hwdb-keymaps-for-Samsung-900X3E-900X3F.patch @@ -0,0 +1,40 @@ +From 77e8ff6974ffaa6c9954e3d2264d9aa75ef25233 Mon Sep 17 00:00:00 2001 +From: Kieran Clancy +Date: Thu, 27 Feb 2014 16:02:57 +1030 +Subject: [PATCH] hwdb: keymaps for Samsung 900X3E/900X3F + +Keymaps for Samsung 900X3E and 900X3F should be the same as for other +models in the series. + +I have also moved the comment for '# Series 9' to the right place +--- + hwdb/60-keyboard.hwdb | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git hwdb/60-keyboard.hwdb hwdb/60-keyboard.hwdb +index edfa842..bd8fd10 100644 +--- hwdb/60-keyboard.hwdb ++++ hwdb/60-keyboard.hwdb +@@ -897,9 +897,10 @@ keyboard:dmi:bvn*:bvr*:bd*:svn[sS][aA][mM][sS][uU][nN][gG]*:pn*550P*:pvr* + KEYBOARD_KEY_a8=! # Fn Lock - Function lock on + KEYBOARD_KEY_a9=! # Fn Lock - Function lock off + ++# Series 7 / 9 + keyboard:dmi:bvn*:bvr*:bd*:svn[sS][aA][mM][sS][uU][nN][gG]*:pn*700Z*:pvr* + keyboard:dmi:bvn*:bvr*:bd*:svn[sS][aA][mM][sS][uU][nN][gG]*:pn*700G*:pvr* +-keyboard:dmi:bvn*:bvr*:bd*:svn[sS][aA][mM][sS][uU][nN][gG]*:pn*900X[34][CDG]*:pvr* ++keyboard:dmi:bvn*:bvr*:bd*:svn[sS][aA][mM][sS][uU][nN][gG]*:pn*900X[34][CDEFG]*:pvr* + keyboard:dmi:bvn*:bvr*:bd*:svn[sS][aA][mM][sS][uU][nN][gG]*:pn*940X3G*:pvr* + KEYBOARD_KEY_ce=!prog1 # Fn+F1 launch settings + KEYBOARD_KEY_a0=!mute # Fn+F6 mute +@@ -909,7 +910,6 @@ keyboard:dmi:bvn*:bvr*:bd*:svn[sS][aA][mM][sS][uU][nN][gG]*:pn*940X3G*:pvr* + KEYBOARD_KEY_96=!kbdillumup # Fn+F10 keyboard backlight up + KEYBOARD_KEY_b3=!prog3 # Fn+F11 fan/cooling mode changer + +-# Series 9 + keyboard:dmi:bvn*:bvr*:bd*:svn[sS][aA][mM][sS][uU][nN][gG]*:pn*900X[34][AB]*:pvr* + KEYBOARD_KEY_ce=! # Fn+F8 keyboard backlight up + KEYBOARD_KEY_8d=! # Fn+F7 keyboard backlight down +-- +1.7.9.2 + diff --git a/0001-let-systemctl-completion-ignore-at-names.patch b/0001-let-systemctl-completion-ignore-at-names.patch new file mode 100644 index 00000000..ea89c56a --- /dev/null +++ b/0001-let-systemctl-completion-ignore-at-names.patch @@ -0,0 +1,11 @@ +--- systemd-210/shell-completion/bash/systemctl ++++ systemd-210/shell-completion/bash/systemctl 2014-08-20 15:01:04.502736981 +0000 +@@ -43,7 +43,7 @@ __filter_units_by_property () { + local units=("$@") + local props + IFS=$'\n' read -rd '' -a props < \ +- <(__systemctl $mode show --property "$property" -- "${units[@]}") ++ <(__systemctl $mode show --property "$property" -- "${units[@]}" 2> /dev/null) + for ((i=0; $i < ${#units[*]}; i++)); do + if [[ "${props[i]}" = "$property=$value" ]]; then + echo " ${units[i]}" diff --git a/0001-nspawn-fix-truncation-of-machine-names-in-interface-.patch b/0001-nspawn-fix-truncation-of-machine-names-in-interface-.patch new file mode 100644 index 00000000..4378b91f --- /dev/null +++ b/0001-nspawn-fix-truncation-of-machine-names-in-interface-.patch @@ -0,0 +1,31 @@ +Based on 4212a3375e03fd12cb407b34cab59dbe4ed9f4eb Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= +Date: Sun, 3 Aug 2014 01:28:21 -0400 +Subject: [PATCH] nspawn: fix truncation of machine names in interface names + +Based on patch by Michael Marineau : + +When deriving the network interface name from machine name strncpy was +not properly null terminating the string and the maximum string size as +returned by strlen() is actually IFNAMSIZ-1, not IFNAMSIZ. +--- + src/nspawn/nspawn.c | 8 ++------ + 1 file changed, 2 insertions(+), 6 deletions(-) + +--- src/nspawn/nspawn.c ++++ src/nspawn/nspawn.c 2014-08-22 10:18:20.390235611 +0000 +@@ -1383,12 +1383,8 @@ static int setup_veth(pid_t pid, char if + + /* Use two different interface name prefixes depending whether + * we are in bridge mode or not. */ +- if (arg_network_bridge) +- memcpy(iface_name, "vb-", 3); +- else +- memcpy(iface_name, "ve-", 3); +- +- strncpy(iface_name+3, arg_machine, IFNAMSIZ - 3); ++ snprintf(iface_name, IFNAMSIZ, "%s-%s", ++ arg_network_bridge ? "vb" : "ve", arg_machine); + + r = sd_rtnl_open(&rtnl, 0); + if (r < 0) { diff --git a/0002-Add-hwdb-entry-for-Samsung-Series-7-Ultra.patch b/0002-Add-hwdb-entry-for-Samsung-Series-7-Ultra.patch new file mode 100644 index 00000000..30dc17d0 --- /dev/null +++ b/0002-Add-hwdb-entry-for-Samsung-Series-7-Ultra.patch @@ -0,0 +1,31 @@ +From 15f392394e75ffb7f318920008fd1bbe4e82b488 Mon Sep 17 00:00:00 2001 +From: Scott Thrasher +Date: Wed, 26 Mar 2014 18:48:13 -0700 +Subject: [PATCH] Add hwdb entry for Samsung Series 7 Ultra + +--- + hwdb/60-keyboard.hwdb | 8 ++++++++ + 1 file changed, 8 insertions(+) + +diff --git hwdb/60-keyboard.hwdb hwdb/60-keyboard.hwdb +index bd8fd10..832c686 100644 +--- hwdb/60-keyboard.hwdb ++++ hwdb/60-keyboard.hwdb +@@ -924,6 +924,14 @@ keyboard:dmi:bvn*:bvr*:bd*:svn[sS][aA][mM][sS][uU][nN][gG]*:pn*90X3A*:pvr* + KEYBOARD_KEY_96=!kbdillumup # Fn+F8 keyboard backlight up + KEYBOARD_KEY_d5=!wlan # Fn+F12 Wi-Fi toggle + ++# Series 7 Ultra ++keyboard:dmi:bvn*:bvr*:bd*:svn[sS][aA][mM][sS][uU][nN][gG]*:pn*7[34]0U3E*:pvr* ++ KEYBOARD_KEY_ce=!prog1 # Fn+F1 launch settings ++ KEYBOARD_KEY_97=!kbdillumdown # Fn+F9 keyboard backlight down ++ KEYBOARD_KEY_96=!kbdillumup # Fn+F10 keyboard backlight up ++ KEYBOARD_KEY_b3=!prog3 # Fn+F11 fan/cooling mode changer ++ KEYBOARD_KEY_d5=!wlan # Fn+F12 wlan/airplane switch ++ + # SQ1US + keyboard:dmi:bvn*:bvr*:bd*:svn[sS][aA][mM][sS][uU][nN][gG]*:pnSQ1US:pvr* + KEYBOARD_KEY_d4=menu +-- +1.7.9.2 + diff --git a/0002-switch-root-umount-the-old-root-correctly.patch b/0002-switch-root-umount-the-old-root-correctly.patch new file mode 100644 index 00000000..df79c8f0 --- /dev/null +++ b/0002-switch-root-umount-the-old-root-correctly.patch @@ -0,0 +1,26 @@ +Based on 23f25b1496c31ef4c20b8f3ee8328f7b1d5f3a54 Mon Sep 17 00:00:00 2001 +From: Dan Dedrick +Date: Tue, 29 Jul 2014 15:31:23 -0400 +Subject: [PATCH] switch-root: umount the old root correctly + +The unmount occurs after the pivot_root, so the path used to unmount +should take into account the new root directory. This will allow the +umount to actually succeed. +--- + src/core/switch-root.c | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +--- src/core/switch-root.c ++++ src/core/switch-root.c 2014-08-22 11:22:50.230735231 +0000 +@@ -122,9 +122,9 @@ int switch_root(const char *new_root) { + + /* Immediately get rid of the old root. Since we are + * running off it we need to do this lazily. */ +- if (umount2(temporary_old_root, MNT_DETACH) < 0) { ++ if (umount2("/mnt", MNT_DETACH) < 0) { + r = -errno; +- log_error("Failed to umount old root dir %s: %m", temporary_old_root); ++ log_error("Failed to umount old root dir /mnt: %m"); + goto fail; + } + diff --git a/0003-bootchart-it-s-not-OK-to-return-1-from-a-main-progra.patch b/0003-bootchart-it-s-not-OK-to-return-1-from-a-main-progra.patch new file mode 100644 index 00000000..9796af4f --- /dev/null +++ b/0003-bootchart-it-s-not-OK-to-return-1-from-a-main-progra.patch @@ -0,0 +1,27 @@ +From 4155f7d4be5053d5f34a26e5437fd85e1fe00fa3 Mon Sep 17 00:00:00 2001 +From: Lennart Poettering +Date: Mon, 11 Aug 2014 18:23:47 +0200 +Subject: [PATCH] bootchart: it's not OK to return -1 from a main program + +--- + src/bootchart/bootchart.c | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git src/bootchart/bootchart.c src/bootchart/bootchart.c +index c0e176d..8ef5ad1 100644 +--- src/bootchart/bootchart.c ++++ src/bootchart/bootchart.c +@@ -380,8 +380,8 @@ int main(int argc, char *argv[]) { + + sampledata = new0(struct list_sample_data, 1); + if (sampledata == NULL) { +- log_error("Failed to allocate memory for a node: %m"); +- return -1; ++ log_oom(); ++ return EXIT_FAILURE; + } + + sampledata->sampletime = gettime_ns(); +-- +1.7.9.2 + diff --git a/0003-keymap-Fix-HP-Pavillon-DV7.patch b/0003-keymap-Fix-HP-Pavillon-DV7.patch new file mode 100644 index 00000000..33908a82 --- /dev/null +++ b/0003-keymap-Fix-HP-Pavillon-DV7.patch @@ -0,0 +1,28 @@ +From efb4bf4e419e14a13eead6289ea40165579a816f Mon Sep 17 00:00:00 2001 +From: Martin Pitt +Date: Tue, 5 Aug 2014 12:29:27 +0200 +Subject: [PATCH] keymap: Fix HP Pavillon DV7 + +Properly disable scan code 94 instead of producing KEY_0. + +https://launchpad.net/bugs/1322770 +--- + hwdb/60-keyboard.hwdb | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git hwdb/60-keyboard.hwdb hwdb/60-keyboard.hwdb +index cbbbf2c..5c3d4ca 100644 +--- hwdb/60-keyboard.hwdb ++++ hwdb/60-keyboard.hwdb +@@ -368,7 +368,7 @@ keyboard:dmi:bvn*:bvr*:bd*:svnHewlett-Packard*:pnHP*Pavilion*dv7*Notebook*PC:pvr + KEYBOARD_KEY_b7=print + KEYBOARD_KEY_c2=media # FIXME: quick play + KEYBOARD_KEY_c6=break +- KEYBOARD_KEY_94=0 ++ KEYBOARD_KEY_94=reserved + + # Elitebook + keyboard:dmi:bvn*:bvr*:bd*:svnHewlett-Packard*:pn*Compaq*:pvr* +-- +1.7.9.2 + diff --git a/0004-hwdb-update-format-description-and-document-reloadin.patch b/0004-hwdb-update-format-description-and-document-reloadin.patch new file mode 100644 index 00000000..a65a46f0 --- /dev/null +++ b/0004-hwdb-update-format-description-and-document-reloadin.patch @@ -0,0 +1,60 @@ +From fa9d4be3f1f4a792b2f3624c2a08fe9cc6ce6e54 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= +Date: Thu, 7 Aug 2014 21:48:57 -0400 +Subject: [PATCH] hwdb: update format description and document reloading + +https://bugs.freedesktop.org/show_bug.cgi?id=82311 +--- + hwdb/60-keyboard.hwdb | 32 +++++++++++++++++++++++--------- + 1 file changed, 23 insertions(+), 9 deletions(-) + +diff --git hwdb/60-keyboard.hwdb hwdb/60-keyboard.hwdb +index 5c3d4ca..ef0ebc5 100644 +--- hwdb/60-keyboard.hwdb ++++ hwdb/60-keyboard.hwdb +@@ -28,19 +28,33 @@ + # driver, is the firmware-provided string exported + # by the kernel DMI modalias. + # +-# Scan codes are specified as: +-# KEYBOARD_KEY_= +-# The scan code should be expressed in hex lowercase and in +-# full bytes, a multiple of 2 digits. The key codes are retrieved +-# and normalized from the kernel input API header. ++# Scan codes are specified as: ++# KEYBOARD_KEY_= ++# The scan code should be expressed in hex lowercase. The key codes ++# are retrieved and normalized from the kernel input API header. + # +-# A '!' as the first charcter of the key identifier string +-# will add the scan code to the AT keyboard's list of scan codes +-# where the driver will synthesize a release event and not expect +-# it to be generated by the hardware. ++# An '!' as the first character of the key identifier string ++# will add the scan code to the AT keyboard's list of scan codes ++# where the driver will synthesize a release event and not expect ++# it to be generated by the hardware. + # + # To debug key presses and access scan code mapping data of + # an input device use the commonly available tool: evtest(1). ++# ++# To update this file, create a new file ++# /etc/udev/hwdb.d/70-keyboad.hwdb ++# and add your rules there. To load the new rules execute (as root): ++# udevadm hwdb --update ++# udevadm trigger /dev/input/eventXX ++# where /dev/input/eventXX is the keyboard in question. If in ++# doubt, simply use /dev/input/event* to reload all input rules. ++# ++# If your changes are generally applicable, open a bug report on ++# http://bugs.freedesktop.org/enter_bug.cgi?product=systemd ++# and include your new rules, a description of the device, and the ++# output of ++# udevadm info /dev/input/eventXX ++# (or /dev/input/event*). + + ########################################## + # Acer +-- +1.7.9.2 + diff --git a/0004-login-set_controller-should-fail-if-prepare_vt-fails.patch b/0004-login-set_controller-should-fail-if-prepare_vt-fails.patch new file mode 100644 index 00000000..848a73d3 --- /dev/null +++ b/0004-login-set_controller-should-fail-if-prepare_vt-fails.patch @@ -0,0 +1,134 @@ +Based on baccf3e40bab6c0b69992ae29c396930de4660c9 Mon Sep 17 00:00:00 2001 +From: Olivier Brunel +Date: Fri, 8 Aug 2014 20:45:43 +0200 +Subject: [PATCH] login: set_controller should fail if prepare_vt fails + +If controllers can expect logind to have "prepared" the VT (e.g. set it to +graphics mode, etc) then TakeControl() should fail if said preparation +failed (and session_restore_vt() was called). + +(David: fixed up !CONFIG_VT case and errno-numbers) +--- + src/login/logind-session.c | 47 +++++++++++++++++++++++++++++++++------------ + src/login/logind-session.h | 2 - + 2 files changed, 36 insertions(+), 13 deletions(-) + +--- src/login/logind-session.c ++++ src/login/logind-session.c 2014-08-26 10:14:21.014235811 +0000 +@@ -950,8 +950,8 @@ int session_kill(Session *s, KillWho who + static int session_open_vt(Session *s) { + char path[sizeof("/dev/tty") + DECIMAL_STR_MAX(s->vtnr)]; + +- if (!s->vtnr) +- return -1; ++ if (s->vtnr < 1) ++ return -ENODEV; + + if (s->vtfd >= 0) + return s->vtfd; +@@ -975,22 +975,38 @@ static int session_vt_fn(sd_event_source + return 0; + } + +-void session_mute_vt(Session *s) { ++int session_mute_vt(Session *s) { + int vt, r; + struct vt_mode mode = { 0 }; + sigset_t mask; + ++ if (s->vtnr < 1) ++ return 0; ++ + vt = session_open_vt(s); + if (vt < 0) +- return; ++ return vt; ++ ++ r = fchown(vt, s->user->uid, -1); ++ if (r < 0) { ++ r = -errno; ++ log_error("Cannot change owner of /dev/tty%u: %m", s->vtnr); ++ goto error; ++ } + + r = ioctl(vt, KDSKBMODE, K_OFF); +- if (r < 0) ++ if (r < 0) { ++ r = -errno; ++ log_error("Cannot set K_OFF on /dev/tty%u: %m", s->vtnr); + goto error; ++ } + + r = ioctl(vt, KDSETMODE, KD_GRAPHICS); +- if (r < 0) ++ if (r < 0) { ++ r = -errno; ++ log_error("Cannot set KD_GRAPHICS on /dev/tty%u: %m", s->vtnr); + goto error; ++ } + + sigemptyset(&mask); + sigaddset(&mask, SIGUSR1); +@@ -1007,14 +1023,17 @@ void session_mute_vt(Session *s) { + mode.relsig = SIGUSR1; + mode.acqsig = SIGUSR1; + r = ioctl(vt, VT_SETMODE, &mode); +- if (r < 0) ++ if (r < 0) { ++ r = -errno; ++ log_error("Cannot set VT_PROCESS on /dev/tty%u: %m", s->vtnr); + goto error; ++ } + +- return; ++ return 0; + + error: +- log_error("cannot mute VT %u for session %s (%d/%d)", s->vtnr, s->id, r, errno); + session_restore_vt(s); ++ return r; + } + + void session_restore_vt(Session *s) { +@@ -1037,6 +1056,8 @@ void session_restore_vt(Session *s) { + mode.mode = VT_AUTO; + ioctl(vt, VT_SETMODE, &mode); + ++ fchown(vt, 0, -1); ++ + close_nointr_nofail(vt); + s->vtfd = -1; + } +@@ -1091,8 +1112,6 @@ int session_set_controller(Session *s, c + return r; + } + +- session_swap_controller(s, t); +- + /* When setting a session controller, we forcibly mute the VT and set + * it into graphics-mode. Applications can override that by changing + * VT state after calling TakeControl(). However, this serves as a good +@@ -1101,7 +1120,11 @@ int session_set_controller(Session *s, c + * exits. + * If logind crashes/restarts, we restore the controller during restart + * or reset the VT in case it crashed/exited, too. */ +- session_mute_vt(s); ++ r = session_mute_vt(s); ++ if (r < 0) ++ return r; ++ ++ session_swap_controller(s, t); + + return 0; + } +--- src/login/logind-session.h ++++ src/login/logind-session.h 2014-08-25 17:19:29.042236429 +0000 +@@ -172,7 +172,7 @@ SessionClass session_class_from_string(c + const char *kill_who_to_string(KillWho k) _const_; + KillWho kill_who_from_string(const char *s) _pure_; + +-void session_mute_vt(Session *s); ++int session_mute_vt(Session *s); + void session_restore_vt(Session *s); + + bool session_is_controller(Session *s, const char *sender); diff --git a/0005-sd-resolve-fix-allocation-if-query-ids-never-reuse-t.patch b/0005-sd-resolve-fix-allocation-if-query-ids-never-reuse-t.patch new file mode 100644 index 00000000..5dfa4ed5 --- /dev/null +++ b/0005-sd-resolve-fix-allocation-if-query-ids-never-reuse-t.patch @@ -0,0 +1,45 @@ +Based on 85529c815b47c22839e0f148af67fd37e977cbfa Mon Sep 17 00:00:00 2001 +From: Lennart Poettering +Date: Tue, 12 Aug 2014 19:29:27 +0200 +Subject: [PATCH] sd-resolve: fix allocation if query ids, never reuse them + +--- + src/libsystemd/sd-resolve/sd-resolve.c | 12 ++++-------- + 1 file changed, 4 insertions(+), 8 deletions(-) + +--- src/libsystemd/sd-resolve/sd-resolve.c ++++ src/libsystemd/sd-resolve/sd-resolve.c 2014-08-22 14:18:24.838235343 +0000 +@@ -81,7 +81,7 @@ struct sd_resolve { + pthread_t workers[WORKERS_MAX]; + unsigned n_valid_workers; + +- unsigned current_id, current_index; ++ unsigned current_id; + sd_resolve_query* queries[QUERIES_MAX]; + unsigned n_queries; + +@@ -892,21 +892,17 @@ static int alloc_query(sd_resolve *resol + if (r < 0) + return r; + +- while (resolve->queries[resolve->current_index]) { +- resolve->current_index++; ++ while (resolve->queries[resolve->current_id % QUERIES_MAX]) + resolve->current_id++; + +- resolve->current_index %= QUERIES_MAX; +- } +- +- q = resolve->queries[resolve->current_index] = new0(sd_resolve_query, 1); ++ q = resolve->queries[resolve->current_id % QUERIES_MAX] = new0(sd_resolve_query, 1); + if (!q) + return -ENOMEM; + + resolve->n_queries++; + + q->resolve = resolve; +- q->id = resolve->current_id; ++ q->id = resolve->current_id++; + + *_q = q; + return 0; diff --git a/0006-login-share-VT-signal-handler-between-sessions.patch b/0006-login-share-VT-signal-handler-between-sessions.patch new file mode 100644 index 00000000..599aa261 --- /dev/null +++ b/0006-login-share-VT-signal-handler-between-sessions.patch @@ -0,0 +1,246 @@ +Based on 92683ad2e28c79891e4123d9a421b018dc58870c Mon Sep 17 00:00:00 2001 +From: David Herrmann +Date: Mon, 11 Aug 2014 18:17:54 +0200 +Subject: [PATCH] login: share VT-signal handler between sessions + +sd-event does not allow multiple handlers for a single signal. However, +logind sets up signal handlers for each session with VT_PROCESS set (that +is, it has an active controller). Therefore, registering multiple such +controllers will fail. + +Lets make the VT-handler global, as it's mostly trivial, anyway. This way, +the sessions don't have to take care of that and we can simply acknowledge +all VT-switch requests as we always did. +--- + src/libsystemd/sd-event/sd-event.c | 5 +- + src/login/logind-session.c | 26 +------------ + src/login/logind-session.h | 1 + src/login/logind.c | 70 +++++++++++++++++++++++++++++++++++++ + src/shared/util.c | 18 +++++++++ + src/shared/util.h | 1 + 6 files changed, 94 insertions(+), 27 deletions(-) + +--- src/libsystemd/sd-event/sd-event.c ++++ src/libsystemd/sd-event/sd-event.c 2014-08-26 11:02:54.500683967 +0000 +@@ -839,7 +839,6 @@ _public_ int sd_event_add_signal( + assert_return(sig > 0, -EINVAL); + assert_return(sig < _NSIG, -EINVAL); + assert_return(callback, -EINVAL); +- assert_return(ret, -EINVAL); + assert_return(e->state != SD_EVENT_FINISHED, -ESTALE); + assert_return(!event_pid_changed(e), -ECHILD); + +@@ -877,7 +876,9 @@ _public_ int sd_event_add_signal( + } + } + +- *ret = s; ++ if (ret) ++ *ret = s; ++ + return 0; + } + +--- src/login/logind-session.c ++++ src/login/logind-session.c 2014-08-25 17:22:46.000000000 +0000 +@@ -153,8 +153,6 @@ void session_free(Session *s) { + + hashmap_remove(s->manager->sessions, s->id); + +- s->vt_source = sd_event_source_unref(s->vt_source); +- + free(s->state_file); + free(s); + } +@@ -966,19 +964,9 @@ static int session_open_vt(Session *s) { + return s->vtfd; + } + +-static int session_vt_fn(sd_event_source *source, const struct signalfd_siginfo *si, void *data) { +- Session *s = data; +- +- if (s->vtfd >= 0) +- ioctl(s->vtfd, VT_RELDISP, 1); +- +- return 0; +-} +- + int session_mute_vt(Session *s) { + int vt, r; + struct vt_mode mode = { 0 }; +- sigset_t mask; + + if (s->vtnr < 1) + return 0; +@@ -1008,20 +996,12 @@ int session_mute_vt(Session *s) { + goto error; + } + +- sigemptyset(&mask); +- sigaddset(&mask, SIGUSR1); +- sigprocmask(SIG_BLOCK, &mask, NULL); +- +- r = sd_event_add_signal(s->manager->event, &s->vt_source, SIGUSR1, session_vt_fn, s); +- if (r < 0) +- goto error; +- + /* Oh, thanks to the VT layer, VT_AUTO does not work with KD_GRAPHICS. + * So we need a dummy handler here which just acknowledges *all* VT + * switch requests. */ + mode.mode = VT_PROCESS; +- mode.relsig = SIGUSR1; +- mode.acqsig = SIGUSR1; ++ mode.relsig = SIGRTMIN; ++ mode.acqsig = SIGRTMIN + 1; + r = ioctl(vt, VT_SETMODE, &mode); + if (r < 0) { + r = -errno; +@@ -1045,8 +1025,6 @@ void session_restore_vt(Session *s) { + if (vt < 0) + return; + +- s->vt_source = sd_event_source_unref(s->vt_source); +- + ioctl(vt, KDSETMODE, KD_TEXT); + + if (read_one_line_file("/sys/module/vt/parameters/default_utf8", &utf8) >= 0 && *utf8 == '1') +--- src/login/logind-session.h ++++ src/login/logind-session.h 2014-08-25 00:00:00.000000000 +0000 +@@ -98,7 +98,6 @@ struct Session { + Seat *seat; + unsigned int vtnr; + int vtfd; +- sd_event_source *vt_source; + + pid_t leader; + uint32_t audit_id; +--- src/login/logind.c ++++ src/login/logind.c 2014-08-26 11:18:41.422235366 +0000 +@@ -25,6 +25,7 @@ + #include + #include + #include ++#include + #include + + #include "sd-daemon.h" +@@ -714,6 +715,47 @@ static int manager_connect_bus(Manager * + return 0; + } + ++static int manager_vt_switch(sd_event_source *src, const struct signalfd_siginfo *si, void *data) { ++ Manager *m = data; ++ Session *active, *iter; ++ ++ /* ++ * We got a VT-switch signal and we have to acknowledge it immediately. ++ * Preferably, we'd just use m->seat0->active->vtfd, but unfortunately, ++ * old user-space might run multiple sessions on a single VT, *sigh*. ++ * Therefore, we have to iterate all sessions and find one with a vtfd ++ * on the requested VT. ++ * As only VTs with active controllers have VT_PROCESS set, our current ++ * notion of the active VT might be wrong (for instance if the switch ++ * happens while we setup VT_PROCESS). Therefore, read the current VT ++ * first and then use s->active->vtnr as reference. Note that this is ++ * not racy, as no further VT-switch can happen as long as we're in ++ * synchronous VT_PROCESS mode. ++ */ ++ ++ assert(m->seat0); ++ seat_read_active_vt(m->seat0); ++ ++ active = m->seat0->active; ++ if (!active || active->vtnr < 1) { ++ log_warning("Received VT_PROCESS signal without a registered session on that VT."); ++ return 0; ++ } ++ ++ if (active->vtfd >= 0) { ++ ioctl(active->vtfd, VT_RELDISP, 1); ++ } else { ++ LIST_FOREACH(sessions_by_seat, iter, m->seat0->sessions) { ++ if (iter->vtnr == active->vtnr && iter->vtfd >= 0) { ++ ioctl(iter->vtfd, VT_RELDISP, 1); ++ break; ++ } ++ } ++ } ++ ++ return 0; ++} ++ + static int manager_connect_console(Manager *m) { + int r; + +@@ -744,6 +786,34 @@ static int manager_connect_console(Manag + return r; + } + ++ /* ++ * SIGRTMIN is used as global VT-release signal, SIGRTMIN + 1 is used ++ * as VT-acquire signal. We ignore any acquire-events (yes, we still ++ * have to provide a valid signal-number for it!) and acknowledge all ++ * release events immediately. ++ */ ++ ++ if (SIGRTMIN + 1 > SIGRTMAX) { ++ log_error("Not enough real-time signals available: %u-%u", SIGRTMIN, SIGRTMAX); ++ return -EINVAL; ++ } ++ ++ r = ignore_signals(SIGRTMIN + 1, -1); ++ if (r < 0) { ++ log_error("Cannot ignore SIGRTMIN + 1: %s", strerror(-r)); ++ return r; ++ } ++ ++ r = sigprocmask_many(SIG_BLOCK, SIGRTMIN, -1); ++ if (r < 0) { ++ log_error("Cannot block SIGRTMIN: %s", strerror(-r)); ++ return r; ++ } ++ ++ r = sd_event_add_signal(m->event, NULL, SIGRTMIN, manager_vt_switch, m); ++ if (r < 0) ++ return r; ++ + return 0; + } + +--- src/shared/util.c ++++ src/shared/util.c 2014-08-26 10:20:14.000000000 +0000 +@@ -2434,6 +2434,24 @@ void sigset_add_many(sigset_t *ss, ...) + va_end(ap); + } + ++int sigprocmask_many(int how, ...) { ++ va_list ap; ++ sigset_t ss; ++ int sig; ++ ++ assert_se(sigemptyset(&ss) == 0); ++ ++ va_start(ap, how); ++ while ((sig = va_arg(ap, int)) > 0) ++ assert_se(sigaddset(&ss, sig) == 0); ++ va_end(ap); ++ ++ if (sigprocmask(how, &ss, NULL) < 0) ++ return -errno; ++ ++ return 0; ++} ++ + char* gethostname_malloc(void) { + struct utsname u; + +--- src/shared/util.h ++++ src/shared/util.h 2014-08-26 10:21:08.000000000 +0000 +@@ -390,6 +390,7 @@ char* dirname_malloc(const char *path); + void rename_process(const char name[8]); + + void sigset_add_many(sigset_t *ss, ...); ++int sigprocmask_many(int how, ...); + + bool hostname_is_set(void); + diff --git a/0007-journald-also-increase-the-SendBuffer-of-dev-log-to-.patch b/0007-journald-also-increase-the-SendBuffer-of-dev-log-to-.patch new file mode 100644 index 00000000..54b97960 --- /dev/null +++ b/0007-journald-also-increase-the-SendBuffer-of-dev-log-to-.patch @@ -0,0 +1,23 @@ +Based on 5e8b767df6e18444d5aff2987b5e5603361ed528 Mon Sep 17 00:00:00 2001 +From: Lennart Poettering +Date: Wed, 13 Aug 2014 18:53:05 +0200 +Subject: [PATCH] journald: also increase the SendBuffer of /dev/log to 8M + +http://lists.freedesktop.org/archives/systemd-devel/2014-August/021825.html +--- + units/systemd-journald.socket | 6 ++++++ + 1 file changed, 6 insertions(+) + +--- units/systemd-journald.socket ++++ units/systemd-journald.socket 2014-08-22 14:31:11.022236471 +0000 +@@ -23,4 +23,10 @@ ListenDatagram=/dev/log + SocketMode=0666 + PassCredentials=yes + PassSecurity=yes ++ ++# Increase both the send and receive buffer, so that things don't ++# block early. Note that journald internally uses the this socket both ++# for receiving syslog messages, and for forwarding them to any other ++# syslog, hence we bump both values. + ReceiveBuffer=8M ++SendBuffer=8M diff --git a/0008-hwdb-update.patch b/0008-hwdb-update.patch new file mode 100644 index 00000000..062b229b --- /dev/null +++ b/0008-hwdb-update.patch @@ -0,0 +1,1425 @@ +From cccc74971fe3c853832d742a15eac94f365603b6 Mon Sep 17 00:00:00 2001 +From: Lennart Poettering +Date: Wed, 20 Aug 2014 00:38:39 +0200 +Subject: [PATCH] update hwdb + +--- + hwdb/20-OUI.hwdb | 177 +++++++++++- + hwdb/20-pci-vendor-model.hwdb | 592 ++++++++++++++++++++++++++++++++++++++++- + hwdb/20-usb-vendor-model.hwdb | 12 + + 3 files changed, 776 insertions(+), 5 deletions(-) + +diff --git hwdb/20-OUI.hwdb hwdb/20-OUI.hwdb +index f9501be..e0c5fed 100644 +--- hwdb/20-OUI.hwdb ++++ hwdb/20-OUI.hwdb +@@ -21371,7 +21371,7 @@ OUI:000A2F* + ID_OUI_FROM_DATABASE=Artnix Inc. + + OUI:000A30* +- ID_OUI_FROM_DATABASE=Johnson Controls-ASG ++ ID_OUI_FROM_DATABASE=Visteon Corporation + + OUI:000A31* + ID_OUI_FROM_DATABASE=HCV Consulting +@@ -51601,6 +51601,9 @@ OUI:00E666* + OUI:00E6D3* + ID_OUI_FROM_DATABASE=NIXDORF COMPUTER CORP. + ++OUI:00E6E8* ++ ID_OUI_FROM_DATABASE=Netzin Technology Corporation,.Ltd. ++ + OUI:00E8AB* + ID_OUI_FROM_DATABASE=Meggitt Training Systems, Inc. + +@@ -51616,6 +51619,9 @@ OUI:00F051* + OUI:00F403* + ID_OUI_FROM_DATABASE=Orbis Systems Oy + ++OUI:00F46F* ++ ID_OUI_FROM_DATABASE=Samsung Elec Co.,Ltd ++ + OUI:00F4B9* + ID_OUI_FROM_DATABASE=Apple + +@@ -51856,6 +51862,9 @@ OUI:0498F3* + OUI:0499E6* + ID_OUI_FROM_DATABASE=Shenzhen Yoostar Technology Co., Ltd + ++OUI:049B9C* ++ ID_OUI_FROM_DATABASE=Eadingcore Intelligent Technology Co., Ltd. ++ + OUI:049C62* + ID_OUI_FROM_DATABASE=BMT Medical Technology s.r.o. + +@@ -52720,6 +52729,9 @@ OUI:08E84F* + OUI:08EA44* + ID_OUI_FROM_DATABASE=Aerohive Networks, Inc. + ++OUI:08EB29* ++ ID_OUI_FROM_DATABASE=Jiangsu Huitong Group Co.,Ltd. ++ + OUI:08EB74* + ID_OUI_FROM_DATABASE=Humax + +@@ -52729,6 +52741,9 @@ OUI:08EBED* + OUI:08EDB9* + ID_OUI_FROM_DATABASE=Hon Hai Precision Ind. Co.,Ltd. + ++OUI:08EE8B* ++ ID_OUI_FROM_DATABASE=Samsung Elec Co.,Ltd ++ + OUI:08EF3B* + ID_OUI_FROM_DATABASE=MCS Logic Inc. + +@@ -52969,6 +52984,9 @@ OUI:0CAC05* + OUI:0CAF5A* + ID_OUI_FROM_DATABASE=GENUS POWER INFRASTRUCTURES LIMITED + ++OUI:0CB319* ++ ID_OUI_FROM_DATABASE=Samsung Elec Co.,Ltd ++ + OUI:0CB4EF* + ID_OUI_FROM_DATABASE=Digience Co.,Ltd. + +@@ -53036,7 +53054,7 @@ OUI:0CD996* + ID_OUI_FROM_DATABASE=CISCO SYSTEMS, INC. + + OUI:0CD9C1* +- ID_OUI_FROM_DATABASE=Johnson Controls-ASG ++ ID_OUI_FROM_DATABASE=Visteon Corporation + + OUI:0CDA41* + ID_OUI_FROM_DATABASE=Hangzhou H3C Technologies Co., Limited +@@ -53434,6 +53452,9 @@ OUI:10F96F* + OUI:10F9EE* + ID_OUI_FROM_DATABASE=Nokia Corporation + ++OUI:10FACE* ++ ID_OUI_FROM_DATABASE=Reacheng Communication Technology Co.,Ltd ++ + OUI:10FBF0* + ID_OUI_FROM_DATABASE=KangSheng LTD. + +@@ -55417,6 +55438,9 @@ OUI:2C441B* + OUI:2C44FD* + ID_OUI_FROM_DATABASE=Hewlett Packard + ++OUI:2C5089* ++ ID_OUI_FROM_DATABASE=Shenzhen Kaixuan Visual Technology Co.,Limited ++ + OUI:2C534A* + ID_OUI_FROM_DATABASE=Shenzhen Winyao Electronic Limited + +@@ -55774,6 +55798,9 @@ OUI:306E5C* + OUI:3071B2* + ID_OUI_FROM_DATABASE=Hangzhou Prevail Optoelectronic Equipment Co.,LTD. + ++OUI:307350* ++ ID_OUI_FROM_DATABASE=Inpeco SA ++ + OUI:307512* + ID_OUI_FROM_DATABASE=Sony Mobile Communications AB + +@@ -55972,6 +55999,9 @@ OUI:343111* + OUI:3431C4* + ID_OUI_FROM_DATABASE=AVM GmbH + ++OUI:3438AF* ++ ID_OUI_FROM_DATABASE=Inlab Software GmbH ++ + OUI:3440B5* + ID_OUI_FROM_DATABASE=IBM + +@@ -56323,12 +56353,18 @@ OUI:3826CD* + OUI:3828EA* + ID_OUI_FROM_DATABASE=Fujian Netcom Technology Co., LTD + ++OUI:382C4A* ++ ID_OUI_FROM_DATABASE=ASUSTek COMPUTER INC. ++ + OUI:382DD1* + ID_OUI_FROM_DATABASE=Samsung Electronics Co.,Ltd + + OUI:3831AC* + ID_OUI_FROM_DATABASE=WEG + ++OUI:383BC8* ++ ID_OUI_FROM_DATABASE=2wire ++ + OUI:383F10* + ID_OUI_FROM_DATABASE=DBL Technology Ltd. + +@@ -56416,6 +56452,9 @@ OUI:388EE7* + OUI:3891FB* + ID_OUI_FROM_DATABASE=Xenox Holding BV + ++OUI:389496* ++ ID_OUI_FROM_DATABASE=Samsung Elec Co.,Ltd ++ + OUI:389592* + ID_OUI_FROM_DATABASE=Beijing Tendyron Corporation + +@@ -56605,6 +56644,9 @@ OUI:3C1A79* + OUI:3C1CBE* + ID_OUI_FROM_DATABASE=JADAK LLC + ++OUI:3C1E13* ++ ID_OUI_FROM_DATABASE=HANGZHOU SUNRISE TECHNOLOGY CO., LTD ++ + OUI:3C25D7* + ID_OUI_FROM_DATABASE=Nokia Corporation + +@@ -57343,6 +57385,9 @@ OUI:446C24* + OUI:446D57* + ID_OUI_FROM_DATABASE=Liteon Technology Corporation + ++OUI:446D6C* ++ ID_OUI_FROM_DATABASE=Samsung Elec Co.,Ltd ++ + OUI:44700B* + ID_OUI_FROM_DATABASE=IFFU + +@@ -57778,6 +57823,9 @@ OUI:4C09B4* + OUI:4C0B3A* + ID_OUI_FROM_DATABASE=TCT Mobile Limited + ++OUI:4C0BBE* ++ ID_OUI_FROM_DATABASE=Microsoft ++ + OUI:4C0DEE* + ID_OUI_FROM_DATABASE=JABIL CIRCUIT (SHANGHAI) LTD. + +@@ -58372,6 +58420,9 @@ OUI:50ED94* + OUI:50F003* + ID_OUI_FROM_DATABASE=Open Stack, Inc. + ++OUI:50F43C* ++ ID_OUI_FROM_DATABASE=Leeo Inc ++ + OUI:50F520* + ID_OUI_FROM_DATABASE=Samsung Electronics Co.,Ltd + +@@ -58405,6 +58456,9 @@ OUI:540536* + OUI:54055F* + ID_OUI_FROM_DATABASE=Alcatel Lucent + ++OUI:54098D* ++ ID_OUI_FROM_DATABASE=deister electronic GmbH ++ + OUI:54112F* + ID_OUI_FROM_DATABASE=Sulzer Pump Solutions Finland Oy + +@@ -59137,6 +59191,9 @@ OUI:5C93A2* + OUI:5C95AE* + ID_OUI_FROM_DATABASE=Apple + ++OUI:5C966A* ++ ID_OUI_FROM_DATABASE=RTNET ++ + OUI:5C969D* + ID_OUI_FROM_DATABASE=Apple + +@@ -59905,6 +59962,9 @@ OUI:64AE0C* + OUI:64AE88* + ID_OUI_FROM_DATABASE=Polytec GmbH + ++OUI:64B21D* ++ ID_OUI_FROM_DATABASE=Chengdu Phycom Tech Co., Ltd. ++ + OUI:64B310* + ID_OUI_FROM_DATABASE=Samsung Electronics Co.,Ltd + +@@ -59917,6 +59977,9 @@ OUI:64B473* + OUI:64B64A* + ID_OUI_FROM_DATABASE=ViVOtech, Inc. + ++OUI:64B853* ++ ID_OUI_FROM_DATABASE=Samsung Elec Co.,Ltd ++ + OUI:64B9E8* + ID_OUI_FROM_DATABASE=Apple + +@@ -60208,6 +60271,9 @@ OUI:68974B* + OUI:6897E8* + ID_OUI_FROM_DATABASE=Society of Motion Picture & Television Engineers + ++OUI:6899CD* ++ ID_OUI_FROM_DATABASE=Cisco ++ + OUI:689C5E* + ID_OUI_FROM_DATABASE=AcSiP Technology Corp. + +@@ -60325,6 +60391,9 @@ OUI:68F06D* + OUI:68F125* + ID_OUI_FROM_DATABASE=Data Controls Inc. + ++OUI:68F728* ++ ID_OUI_FROM_DATABASE=LCFC(HeFei) Electronics Technology co., ltd ++ + OUI:68F895* + ID_OUI_FROM_DATABASE=Redflow Limited + +@@ -61081,12 +61150,18 @@ OUI:744D79* + OUI:745327* + ID_OUI_FROM_DATABASE=COMMSEN CO., LIMITED + ++OUI:74547D* ++ ID_OUI_FROM_DATABASE=Cisco SPVTG ++ + OUI:745612* + ID_OUI_FROM_DATABASE=ARRIS Group, Inc. + + OUI:745798* + ID_OUI_FROM_DATABASE=TRUMPF Laser GmbH + Co. KG + ++OUI:745C9F* ++ ID_OUI_FROM_DATABASE=TCT mobile ltd. ++ + OUI:745E1C* + ID_OUI_FROM_DATABASE=PIONEER CORPORATION + +@@ -62446,6 +62521,9 @@ OUI:842615* + OUI:84262B* + ID_OUI_FROM_DATABASE=Alcatel-Lucent + ++OUI:842690* ++ ID_OUI_FROM_DATABASE=BEIJING THOUGHT SCIENCE CO.,LTD. ++ + OUI:8427CE* + ID_OUI_FROM_DATABASE=Corporation of the Presiding Bishop of The Church of Jesus Christ of Latter-day Saints + +@@ -62506,6 +62584,9 @@ OUI:844F03* + OUI:845181* + ID_OUI_FROM_DATABASE=Samsung Electronics Co.,Ltd + ++OUI:8455A5* ++ ID_OUI_FROM_DATABASE=Samsung Elec Co.,Ltd ++ + OUI:84569C* + ID_OUI_FROM_DATABASE=Coho Data, Inc., + +@@ -62611,6 +62692,9 @@ OUI:849CA6* + OUI:849DC5* + ID_OUI_FROM_DATABASE=Centera Photonics Inc. + ++OUI:84A466* ++ ID_OUI_FROM_DATABASE=Samsung Electronics Co.,Ltd ++ + OUI:84A6C8* + ID_OUI_FROM_DATABASE=Intel Corporate + +@@ -62824,6 +62908,9 @@ OUI:886B76* + OUI:88708C* + ID_OUI_FROM_DATABASE=Lenovo Mobile Communication Technology Ltd. + ++OUI:8870EF* ++ ID_OUI_FROM_DATABASE=SC Professional Trading Co., Ltd. ++ + OUI:887398* + ID_OUI_FROM_DATABASE=K2E Tekpoint + +@@ -62998,6 +63085,9 @@ OUI:8C006D* + OUI:8C04FF* + ID_OUI_FROM_DATABASE=Technicolor USA Inc. + ++OUI:8C0551* ++ ID_OUI_FROM_DATABASE=Koubachi AG ++ + OUI:8C078C* + ID_OUI_FROM_DATABASE=FLOW DATA INC + +@@ -63181,6 +63271,9 @@ OUI:8C8E76* + OUI:8C90D3* + ID_OUI_FROM_DATABASE=Alcatel Lucent + ++OUI:8C9109* ++ ID_OUI_FROM_DATABASE=Toyoshima Electric Technoeogy(Suzhou) Co.,Ltd. ++ + OUI:8C9236* + ID_OUI_FROM_DATABASE=Aus.Linx Technology Co., Ltd. + +@@ -64249,6 +64342,9 @@ OUI:98F8C1* + OUI:98F8DB* + ID_OUI_FROM_DATABASE=Marini Impianti Industriali s.r.l. + ++OUI:98FAE3* ++ ID_OUI_FROM_DATABASE=Xiaomi inc. ++ + OUI:98FB12* + ID_OUI_FROM_DATABASE=Grand Electronics (HK) Ltd + +@@ -64804,6 +64900,9 @@ OUI:A0A130* + OUI:A0A23C* + ID_OUI_FROM_DATABASE=GPMS + ++OUI:A0A3E2* ++ ID_OUI_FROM_DATABASE=Actiontec Electronics, Inc ++ + OUI:A0A763* + ID_OUI_FROM_DATABASE=Polytron Vertrieb GmbH + +@@ -64819,6 +64918,9 @@ OUI:A0B100* + OUI:A0B3CC* + ID_OUI_FROM_DATABASE=Hewlett Packard + ++OUI:A0B4A5* ++ ID_OUI_FROM_DATABASE=Samsung Elec Co.,Ltd ++ + OUI:A0B5DA* + ID_OUI_FROM_DATABASE=HongKong THTF Co., Ltd + +@@ -65116,6 +65218,9 @@ OUI:A49A58* + OUI:A49B13* + ID_OUI_FROM_DATABASE=Burroughs Payment Systems, Inc. + ++OUI:A49D49* ++ ID_OUI_FROM_DATABASE=Ketra, Inc. ++ + OUI:A49EDB* + ID_OUI_FROM_DATABASE=AutoCrib, Inc. + +@@ -65389,6 +65494,9 @@ OUI:A8776F* + OUI:A87B39* + ID_OUI_FROM_DATABASE=Nokia Corporation + ++OUI:A87C01* ++ ID_OUI_FROM_DATABASE=Samsung Elec Co.,Ltd ++ + OUI:A87E33* + ID_OUI_FROM_DATABASE=Nokia Danmark A/S + +@@ -65479,6 +65587,9 @@ OUI:A8CCC5* + OUI:A8CE90* + ID_OUI_FROM_DATABASE=CVC + ++OUI:A8D0E3* ++ ID_OUI_FROM_DATABASE=Systech Electronics Ltd. ++ + OUI:A8D0E5* + ID_OUI_FROM_DATABASE=Juniper Networks + +@@ -65488,6 +65599,9 @@ OUI:A8D236* + OUI:A8D3C8* + ID_OUI_FROM_DATABASE=Wachendorff Elektronik GmbH & Co. KG + ++OUI:A8D88A* ++ ID_OUI_FROM_DATABASE=Wyconn ++ + OUI:A8E018* + ID_OUI_FROM_DATABASE=Nokia Corporation + +@@ -65602,6 +65716,9 @@ OUI:AC3613* + OUI:AC3870* + ID_OUI_FROM_DATABASE=Lenovo Mobile Communication Technology Ltd. + ++OUI:AC3A7A* ++ ID_OUI_FROM_DATABASE=Roku ++ + OUI:AC3C0B* + ID_OUI_FROM_DATABASE=Apple + +@@ -66049,6 +66166,9 @@ OUI:B09074* + OUI:B09134* + ID_OUI_FROM_DATABASE=Taleo + ++OUI:B09137* ++ ID_OUI_FROM_DATABASE=ISis ImageStream Internet Solutions, Inc ++ + OUI:B0973A* + ID_OUI_FROM_DATABASE=E-Fuel Corporation + +@@ -66271,6 +66391,9 @@ OUI:B435F7* + OUI:B43741* + ID_OUI_FROM_DATABASE=Consert, Inc. + ++OUI:B43934* ++ ID_OUI_FROM_DATABASE=Pen Generations, Inc. ++ + OUI:B439D6* + ID_OUI_FROM_DATABASE=ProCurve Networking by HP + +@@ -66397,6 +66520,9 @@ OUI:B4A4E3* + OUI:B4A5A9* + ID_OUI_FROM_DATABASE=MODI GmbH + ++OUI:B4A828* ++ ID_OUI_FROM_DATABASE=Shenzhen Concox Information Technology Co., Ltd ++ + OUI:B4A82B* + ID_OUI_FROM_DATABASE=Histar Digital Electronics Co., Ltd. + +@@ -67114,6 +67240,9 @@ OUI:BCBAE1* + OUI:BCBBC9* + ID_OUI_FROM_DATABASE=Kellendonk Elektronik GmbH + ++OUI:BCBC46* ++ ID_OUI_FROM_DATABASE=SKS Welding Systems GmbH ++ + OUI:BCC168* + ID_OUI_FROM_DATABASE=DinBox Sverige AB + +@@ -67840,6 +67969,9 @@ OUI:C819F7* + OUI:C81AFE* + ID_OUI_FROM_DATABASE=DLOGIC GmbH + ++OUI:C81B6B* ++ ID_OUI_FROM_DATABASE=Innova Security ++ + OUI:C81E8E* + ID_OUI_FROM_DATABASE=ADV Security (S) Pte Ltd + +@@ -68530,6 +68662,9 @@ OUI:D01AA7* + OUI:D01CBB* + ID_OUI_FROM_DATABASE=Beijing Ctimes Digital Technology Co., Ltd. + ++OUI:D02212* ++ ID_OUI_FROM_DATABASE=IEEE REGISTRATION AUTHORITY - Please see MAM public listing for more information. ++ + OUI:D022BE* + ID_OUI_FROM_DATABASE=Samsung Electro Mechanics co.,LTD. + +@@ -69259,6 +69394,9 @@ OUI:D831CF* + OUI:D8337F* + ID_OUI_FROM_DATABASE=Office FA.com Co.,Ltd. + ++OUI:D83C69* ++ ID_OUI_FROM_DATABASE=Tinno Mobile Technology Corp ++ + OUI:D842AC* + ID_OUI_FROM_DATABASE=Shanghai Feixun Communication Co.,Ltd. + +@@ -69349,6 +69487,9 @@ OUI:D88039* + OUI:D881CE* + ID_OUI_FROM_DATABASE=AHN INC. + ++OUI:D88466* ++ ID_OUI_FROM_DATABASE=Extreme Networks ++ + OUI:D88A3B* + ID_OUI_FROM_DATABASE=UNIT-EM + +@@ -69376,6 +69517,9 @@ OUI:D89760* + OUI:D8977C* + ID_OUI_FROM_DATABASE=Grey Innovation + ++OUI:D897BA* ++ ID_OUI_FROM_DATABASE=PEGATRON CORPORATION ++ + OUI:D89D67* + ID_OUI_FROM_DATABASE=Hewlett Packard + +@@ -69442,6 +69586,9 @@ OUI:D8C7C8* + OUI:D8C99D* + ID_OUI_FROM_DATABASE=EA DISPLAY LIMITED + ++OUI:D8CB8A* ++ ID_OUI_FROM_DATABASE=Micro-Star INTL CO., LTD. ++ + OUI:D8CF9C* + ID_OUI_FROM_DATABASE=Apple + +@@ -69505,6 +69652,9 @@ OUI:D8EE78* + OUI:D8F0F2* + ID_OUI_FROM_DATABASE=Zeebo Inc + ++OUI:D8F710* ++ ID_OUI_FROM_DATABASE=Libre Wireless Technologies Inc. ++ + OUI:D8FB11* + ID_OUI_FROM_DATABASE=AXACORE + +@@ -69749,7 +69899,7 @@ OUI:DCD87F* + ID_OUI_FROM_DATABASE=Shenzhen JoinCyber Telecom Equipment Ltd + + OUI:DCDA4F* +- ID_OUI_FROM_DATABASE=GET Technology,INC ++ ID_OUI_FROM_DATABASE=GETCK TECHNOLOGY, INC + + OUI:DCDECA* + ID_OUI_FROM_DATABASE=Akyllor +@@ -69763,6 +69913,9 @@ OUI:DCE578* + OUI:DCE71C* + ID_OUI_FROM_DATABASE=AUG Elektronik GmbH + ++OUI:DCEC06* ++ ID_OUI_FROM_DATABASE=Heimi Network Technology Co., Ltd. ++ + OUI:DCF05D* + ID_OUI_FROM_DATABASE=Letta Teknoloji + +@@ -69856,6 +70009,9 @@ OUI:E039D7* + OUI:E03C5B* + ID_OUI_FROM_DATABASE=SHENZHEN JIAXINJIE ELECTRON CO.,LTD + ++OUI:E03E44* ++ ID_OUI_FROM_DATABASE=Broadcom Corporation ++ + OUI:E03E4A* + ID_OUI_FROM_DATABASE=Cavanagh Group International + +@@ -70378,6 +70534,9 @@ OUI:E4F4C6* + OUI:E4F7A1* + ID_OUI_FROM_DATABASE=Datafox GmbH + ++OUI:E4F8EF* ++ ID_OUI_FROM_DATABASE=Samsung Elec Co.,Ltd ++ + OUI:E4FA1D* + ID_OUI_FROM_DATABASE=PAD Peripheral Advanced Design Inc. + +@@ -70549,6 +70708,9 @@ OUI:E8802E* + OUI:E880D8* + ID_OUI_FROM_DATABASE=GNTEK Electronics Co.,Ltd. + ++OUI:E887A3* ++ ID_OUI_FROM_DATABASE=Loxley Public Company Limited ++ + OUI:E8892C* + ID_OUI_FROM_DATABASE=ARRIS Group, Inc. + +@@ -70627,6 +70789,9 @@ OUI:E8C320* + OUI:E8CBA1* + ID_OUI_FROM_DATABASE=Nokia Corporation + ++OUI:E8CC18* ++ ID_OUI_FROM_DATABASE=D-Link International ++ + OUI:E8CC32* + ID_OUI_FROM_DATABASE=Micronet LTD + +@@ -71008,6 +71173,9 @@ OUI:F015A0* + OUI:F01C13* + ID_OUI_FROM_DATABASE=LG Electronics + ++OUI:F01C2D* ++ ID_OUI_FROM_DATABASE=Juniper Networks ++ + OUI:F01FAF* + ID_OUI_FROM_DATABASE=Dell Inc + +@@ -71398,6 +71566,9 @@ OUI:F4472A* + OUI:F44848* + ID_OUI_FROM_DATABASE=Amscreen Group Ltd + ++OUI:F44E05* ++ ID_OUI_FROM_DATABASE=Cisco ++ + OUI:F44EFD* + ID_OUI_FROM_DATABASE=Actions Semiconductor Co.,Ltd.(Cayman Islands) + +diff --git hwdb/20-pci-vendor-model.hwdb hwdb/20-pci-vendor-model.hwdb +index a6a2754..3bcdbc0 100644 +--- hwdb/20-pci-vendor-model.hwdb ++++ hwdb/20-pci-vendor-model.hwdb +@@ -10478,6 +10478,9 @@ pci:v00001014d0000034Asv00001014sd000004C8* + pci:v00001014d0000034Asv00001014sd00000C49* + ID_MODEL_FROM_DATABASE=PCI-E IPR SAS Adapter (ASIC) (PCIe3 x 8 Cache SAS RAID Internal Adapter 6GB(2CCD)) + ++pci:v00001014d0000044B* ++ ID_MODEL_FROM_DATABASE=GenWQE Accelerator Adapter ++ + pci:v00001014d000004AA* + ID_MODEL_FROM_DATABASE=Flash Adapter 90 (PCIe2 0.9TB) + +@@ -26387,6 +26390,9 @@ pci:v000010DEd00000FE2* + pci:v000010DEd00000FE3* + ID_MODEL_FROM_DATABASE=GK107M [GeForce GT 745M] + ++pci:v000010DEd00000FE3sv0000103Csd00002B16* ++ ID_MODEL_FROM_DATABASE=GK107M [GeForce GT 745M] (GeForce GT 745A) ++ + pci:v000010DEd00000FE3sv000017AAsd00003675* + ID_MODEL_FROM_DATABASE=GK107M [GeForce GT 745M] (GeForce GT 745A) + +@@ -26420,6 +26426,9 @@ pci:v000010DEd00000FF1* + pci:v000010DEd00000FF2* + ID_MODEL_FROM_DATABASE=GK107GL [GRID K1] + ++pci:v000010DEd00000FF3* ++ ID_MODEL_FROM_DATABASE=GK107GL [Quadro K420] ++ + pci:v000010DEd00000FF5* + ID_MODEL_FROM_DATABASE=GK107GL [GRID K1 Tesla USM] + +@@ -26546,6 +26555,9 @@ pci:v000010DEd00001029* + pci:v000010DEd0000103A* + ID_MODEL_FROM_DATABASE=GK110GL [Quadro K6000] + ++pci:v000010DEd0000103C* ++ ID_MODEL_FROM_DATABASE=GK110GL [Quadro K5200] ++ + pci:v000010DEd00001040* + ID_MODEL_FROM_DATABASE=GF119 [GeForce GT 520] + +@@ -26981,6 +26993,12 @@ pci:v000010DEd00001140sv00001028sd000005F4* + pci:v000010DEd00001140sv00001028sd0000064E* + ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce 820M) + ++pci:v000010DEd00001140sv00001028sd00000652* ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce 820M) ++ ++pci:v000010DEd00001140sv00001028sd00000662* ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce 820M) ++ + pci:v000010DEd00001140sv00001028sd0000068D* + ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce 820M) + +@@ -27239,9 +27257,15 @@ pci:v000010DEd00001140sv0000152Dsd00000982* + pci:v000010DEd00001140sv0000152Dsd00000983* + ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce GT 630M) + ++pci:v000010DEd00001140sv0000152Dsd00001005* ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce GT 820M) ++ + pci:v000010DEd00001140sv0000152Dsd00001012* + ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce 710M) + ++pci:v000010DEd00001140sv0000152Dsd00001019* ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce 820M) ++ + pci:v000010DEd00001140sv0000152Dsd00001030* + ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce GT 630M) + +@@ -27254,6 +27278,9 @@ pci:v000010DEd00001140sv0000152Dsd00001067* + pci:v000010DEd00001140sv0000152Dsd00001072* + ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce GT 720M) + ++pci:v000010DEd00001140sv0000152Dsd00001086* ++ ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (GeForce 820M) ++ + pci:v000010DEd00001140sv000017AAsd00002200* + ID_MODEL_FROM_DATABASE=GF117M [GeForce 610M/710M/820M / GT 620M/625M/630M/720M] (NVS 5200M) + +@@ -27578,6 +27605,9 @@ pci:v000010DEd000011B0sv000010DEsd0000101B* + pci:v000010DEd000011B1* + ID_MODEL_FROM_DATABASE=GK104GL [GRID K2 Tesla USM] + ++pci:v000010DEd000011B4* ++ ID_MODEL_FROM_DATABASE=GK104GL [Quadro K4200] ++ + pci:v000010DEd000011B6* + ID_MODEL_FROM_DATABASE=GK104GLM [Quadro K3100M] + +@@ -27863,6 +27893,9 @@ pci:v000010DEd00001295sv0000103Csd00002B0F* + pci:v000010DEd00001295sv0000103Csd00002B11* + ID_MODEL_FROM_DATABASE=GK208M [GeForce 710M] (GeForce GT 710A) + ++pci:v000010DEd00001295sv0000103Csd00002B20* ++ ID_MODEL_FROM_DATABASE=GK208M [GeForce 710M] (GeForce 810A) ++ + pci:v000010DEd00001295sv0000103Csd00002B21* + ID_MODEL_FROM_DATABASE=GK208M [GeForce 710M] (GeForce GT 810A) + +@@ -27887,6 +27920,9 @@ pci:v000010DEd000012BA* + pci:v000010DEd00001340* + ID_MODEL_FROM_DATABASE=GM108M [GeForce 830M] + ++pci:v000010DEd00001340sv0000103Csd00002B2B* ++ ID_MODEL_FROM_DATABASE=GM108M [GeForce 830M] (GeForce 830A) ++ + pci:v000010DEd00001341* + ID_MODEL_FROM_DATABASE=GM108M [GeForce 840M] + +@@ -27926,6 +27962,15 @@ pci:v000010DEd00001392* + pci:v000010DEd00001393* + ID_MODEL_FROM_DATABASE=GM107M [GeForce 840M] + ++pci:v000010DEd000013B3* ++ ID_MODEL_FROM_DATABASE=GM107GLM [Quadro K2200M] ++ ++pci:v000010DEd000013BA* ++ ID_MODEL_FROM_DATABASE=GM107GL [Quadro K2200] ++ ++pci:v000010DEd000013BB* ++ ID_MODEL_FROM_DATABASE=GM107GL [Quadro K620] ++ + pci:v000010DF* + ID_VENDOR_FROM_DATABASE=Emulex Corporation + +@@ -29291,6 +29336,9 @@ pci:v00001103d00000622* + pci:v00001103d00000640* + ID_MODEL_FROM_DATABASE=RocketRAID 640 4 Port SATA-III Controller + ++pci:v00001103d00000644* ++ ID_MODEL_FROM_DATABASE=RocketRAID 644 4 Port SATA-III Controller (eSATA) ++ + pci:v00001103d00001720* + ID_MODEL_FROM_DATABASE=RocketRAID 1720 (2x SATA II RAID Controller) + +@@ -40325,6 +40373,12 @@ pci:v00001360d00000205* + pci:v00001360d00000206* + ID_MODEL_FROM_DATABASE=GPS180PEX GPS Receiver (PCI Express) + ++pci:v00001360d00000207* ++ ID_MODEL_FROM_DATABASE=GLN180PEX GPS/GLONASS receiver (PCI Express) ++ ++pci:v00001360d00000208* ++ ID_MODEL_FROM_DATABASE=GPS180AMC GPS Receiver (PCI Express / MicroTCA / AdvancedMC) ++ + pci:v00001360d00000301* + ID_MODEL_FROM_DATABASE=TCR510PCI IRIG Timecode Reader + +@@ -41525,6 +41579,9 @@ pci:v000013F6d00008788sv00001043sd00008428* + pci:v000013F6d00008788sv00001043sd00008467* + ID_MODEL_FROM_DATABASE=CMI8788 [Oxygen HD Audio] (CMI8786 (Xonar DG)) + ++pci:v000013F6d00008788sv00001043sd000085F4* ++ ID_MODEL_FROM_DATABASE=CMI8788 [Oxygen HD Audio] (Virtuoso 100 (Xonar Essence STX II)) ++ + pci:v000013F6d00008788sv000013F6sd00008782* + ID_MODEL_FROM_DATABASE=CMI8788 [Oxygen HD Audio] (PCI 2.0 HD Audio) + +@@ -45905,6 +45962,9 @@ pci:v000014E4d000043A0* + pci:v000014E4d000043A9* + ID_MODEL_FROM_DATABASE=BCM43217 802.11b/g/n + ++pci:v000014E4d000043AA* ++ ID_MODEL_FROM_DATABASE=BCM43131 802.11b/g/n ++ + pci:v000014E4d000043B1* + ID_MODEL_FROM_DATABASE=BCM4352 802.11ac Wireless Network Adapter + +@@ -46884,7 +46944,7 @@ pci:v000014F1d00008852* + ID_MODEL_FROM_DATABASE=CX23885 PCI Video and Audio Decoder + + pci:v000014F1d00008852sv00000070sd00008010* +- ID_MODEL_FROM_DATABASE=CX23885 PCI Video and Audio Decoder (Hauppauge WinTV HVR-1400 ExpressCard) ++ ID_MODEL_FROM_DATABASE=CX23885 PCI Video and Audio Decoder (WinTV HVR-1400 ExpressCard) + + pci:v000014F1d00008852sv0000107Dsd00006F22* + ID_MODEL_FROM_DATABASE=CX23885 PCI Video and Audio Decoder (WinFast PxTV1200) +@@ -46898,6 +46958,9 @@ pci:v000014F1d00008852sv0000153Bsd0000117E* + pci:v000014F1d00008852sv000018ACsd0000DB78* + ID_MODEL_FROM_DATABASE=CX23885 PCI Video and Audio Decoder (FusionHDTV DVB-T Dual Express) + ++pci:v000014F1d00008852sv00004254sd00009580* ++ ID_MODEL_FROM_DATABASE=CX23885 PCI Video and Audio Decoder (T9580) ++ + pci:v000014F1d00008880* + ID_MODEL_FROM_DATABASE=CX23887/8 PCIe Broadcast Audio and Video Decoder with 3D Comb + +@@ -47438,6 +47501,18 @@ pci:v00001542* + pci:v00001542d00009260* + ID_MODEL_FROM_DATABASE=RCIM-II Real-Time Clock & Interrupt Module + ++pci:v00001542d00009272* ++ ID_MODEL_FROM_DATABASE=Pulse Width Modulator Card ++ ++pci:v00001542d00009277* ++ ID_MODEL_FROM_DATABASE=5 Volt Delta Sigma Converter Card ++ ++pci:v00001542d00009278* ++ ID_MODEL_FROM_DATABASE=10 Volt Delta Sigma Converter Card ++ ++pci:v00001542d00009287* ++ ID_MODEL_FROM_DATABASE=Analog Output Card ++ + pci:v00001543* + ID_VENDOR_FROM_DATABASE=SILICON Laboratories + +@@ -49505,6 +49580,9 @@ pci:v000016B8* + pci:v000016BE* + ID_VENDOR_FROM_DATABASE=Creatix Polymedia GmbH + ++pci:v000016C3* ++ ID_VENDOR_FROM_DATABASE=Synopsys, Inc. ++ + pci:v000016C6* + ID_VENDOR_FROM_DATABASE=Micrel-Kendin + +@@ -53936,6 +54014,9 @@ pci:v0000416Cd00000100* + pci:v0000416Cd00000200* + ID_MODEL_FROM_DATABASE=CPC + ++pci:v00004254* ++ ID_VENDOR_FROM_DATABASE=DVBSky ++ + pci:v00004321* + ID_VENDOR_FROM_DATABASE=Tata Power Strategic Electronics Division + +@@ -59621,6 +59702,12 @@ pci:v00008086d000015A2* + pci:v00008086d000015A3* + ID_MODEL_FROM_DATABASE=Ethernet Connection (3) I218-V + ++pci:v00008086d000015B7* ++ ID_MODEL_FROM_DATABASE=Ethernet Connection (2) I219-V ++ ++pci:v00008086d000015B8* ++ ID_MODEL_FROM_DATABASE=Ethernet Connection (2) I219-LM ++ + pci:v00008086d00001600* + ID_MODEL_FROM_DATABASE=Broadwell-U Host Bridge -OPI + +@@ -69614,6 +69701,9 @@ pci:v00008086d00003B23* + pci:v00008086d00003B25* + ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset SATA RAID Controller + ++pci:v00008086d00003B25sv0000103Csd00003118* ++ ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset SATA RAID Controller (HP Smart Array B110i SATA RAID Controller) ++ + pci:v00008086d00003B26* + ID_MODEL_FROM_DATABASE=5 Series/3400 Series Chipset 2 port SATA IDE Controller + +@@ -70718,6 +70808,489 @@ pci:v00008086d000065FA* + pci:v00008086d000065FF* + ID_MODEL_FROM_DATABASE=5100 Chipset DMA Engine + ++pci:v00008086d00006F00* ++ ID_MODEL_FROM_DATABASE=Broadwell DMI2 ++ ++pci:v00008086d00006F01* ++ ID_MODEL_FROM_DATABASE=Broadwell PCI Express Root Port 0 ++ ++pci:v00008086d00006F02* ++ ID_MODEL_FROM_DATABASE=Broadwell PCI Express Root Port 1 ++ ++pci:v00008086d00006F03* ++ ID_MODEL_FROM_DATABASE=Broadwell PCI Express Root Port 1 ++ ++pci:v00008086d00006F04* ++ ID_MODEL_FROM_DATABASE=Broadwell PCI Express Root Port 2 ++ ++pci:v00008086d00006F05* ++ ID_MODEL_FROM_DATABASE=Broadwell PCI Express Root Port 2 ++ ++pci:v00008086d00006F06* ++ ID_MODEL_FROM_DATABASE=Broadwell PCI Express Root Port 2 ++ ++pci:v00008086d00006F07* ++ ID_MODEL_FROM_DATABASE=Broadwell PCI Express Root Port 2 ++ ++pci:v00008086d00006F08* ++ ID_MODEL_FROM_DATABASE=Broadwell PCI Express Root Port 3 ++ ++pci:v00008086d00006F09* ++ ID_MODEL_FROM_DATABASE=Broadwell PCI Express Root Port 3 ++ ++pci:v00008086d00006F0A* ++ ID_MODEL_FROM_DATABASE=Broadwell PCI Express Root Port 3 ++ ++pci:v00008086d00006F0B* ++ ID_MODEL_FROM_DATABASE=Broadwell PCI Express Root Port 3 ++ ++pci:v00008086d00006F10* ++ ID_MODEL_FROM_DATABASE=Broadwell IIO Debug ++ ++pci:v00008086d00006F11* ++ ID_MODEL_FROM_DATABASE=Broadwell IIO Debug ++ ++pci:v00008086d00006F12* ++ ID_MODEL_FROM_DATABASE=Broadwell IIO Debug ++ ++pci:v00008086d00006F13* ++ ID_MODEL_FROM_DATABASE=Broadwell IIO Debug ++ ++pci:v00008086d00006F14* ++ ID_MODEL_FROM_DATABASE=Broadwell IIO Debug ++ ++pci:v00008086d00006F15* ++ ID_MODEL_FROM_DATABASE=Broadwell IIO Debug ++ ++pci:v00008086d00006F16* ++ ID_MODEL_FROM_DATABASE=Broadwell IIO Debug ++ ++pci:v00008086d00006F17* ++ ID_MODEL_FROM_DATABASE=Broadwell IIO Debug ++ ++pci:v00008086d00006F18* ++ ID_MODEL_FROM_DATABASE=Broadwell IIO Debug ++ ++pci:v00008086d00006F19* ++ ID_MODEL_FROM_DATABASE=Broadwell IIO Debug ++ ++pci:v00008086d00006F1A* ++ ID_MODEL_FROM_DATABASE=Broadwell IIO Debug ++ ++pci:v00008086d00006F1B* ++ ID_MODEL_FROM_DATABASE=Broadwell IIO Debug ++ ++pci:v00008086d00006F1C* ++ ID_MODEL_FROM_DATABASE=Broadwell IIO Debug ++ ++pci:v00008086d00006F1D* ++ ID_MODEL_FROM_DATABASE=Broadwell R2PCIe Agent ++ ++pci:v00008086d00006F1E* ++ ID_MODEL_FROM_DATABASE=Broadwell Ubox ++ ++pci:v00008086d00006F1F* ++ ID_MODEL_FROM_DATABASE=Broadwell Ubox ++ ++pci:v00008086d00006F20* ++ ID_MODEL_FROM_DATABASE=Broadwell-DE Crystal Beach DMA Channel 0 ++ ++pci:v00008086d00006F21* ++ ID_MODEL_FROM_DATABASE=Broadwell-DE Crystal Beach DMA Channel 1 ++ ++pci:v00008086d00006F22* ++ ID_MODEL_FROM_DATABASE=Broadwell-DE Crystal Beach DMA Channel 2 ++ ++pci:v00008086d00006F23* ++ ID_MODEL_FROM_DATABASE=Broadwell-DE Crystal Beach DMA Channel 3 ++ ++pci:v00008086d00006F24* ++ ID_MODEL_FROM_DATABASE=Broadwell-DE Crystal Beach DMA Channel 4 ++ ++pci:v00008086d00006F25* ++ ID_MODEL_FROM_DATABASE=Broadwell-DE Crystal Beach DMA Channel 5 ++ ++pci:v00008086d00006F26* ++ ID_MODEL_FROM_DATABASE=Broadwell-DE Crystal Beach DMA Channel 6 ++ ++pci:v00008086d00006F27* ++ ID_MODEL_FROM_DATABASE=Broadwell-DE Crystal Beach DMA Channel 7 ++ ++pci:v00008086d00006F28* ++ ID_MODEL_FROM_DATABASE=Broadwell Adress Map/VTd_Misc/System Management ++ ++pci:v00008086d00006F29* ++ ID_MODEL_FROM_DATABASE=Broadwell IIO Hot Plug ++ ++pci:v00008086d00006F2A* ++ ID_MODEL_FROM_DATABASE=Broadwell IIO RAS/Control Status/Global Errors ++ ++pci:v00008086d00006F2C* ++ ID_MODEL_FROM_DATABASE=Broadwell I/O APIC ++ ++pci:v00008086d00006F30* ++ ID_MODEL_FROM_DATABASE=Broadwell Home Agent 0 ++ ++pci:v00008086d00006F32* ++ ID_MODEL_FROM_DATABASE=Broadwell QPI Link 0 ++ ++pci:v00008086d00006F33* ++ ID_MODEL_FROM_DATABASE=Broadwell QPI Link 1 ++ ++pci:v00008086d00006F34* ++ ID_MODEL_FROM_DATABASE=Broadwell R2PCIe Agent ++ ++pci:v00008086d00006F36* ++ ID_MODEL_FROM_DATABASE=Broadwell R3 QPI Link 0/1 ++ ++pci:v00008086d00006F37* ++ ID_MODEL_FROM_DATABASE=Broadwell R3 QPI Link 0/1 ++ ++pci:v00008086d00006F38* ++ ID_MODEL_FROM_DATABASE=Broadwell Home Agent 1 ++ ++pci:v00008086d00006F39* ++ ID_MODEL_FROM_DATABASE=Broadwell IO Performance Monitoring ++ ++pci:v00008086d00006F3A* ++ ID_MODEL_FROM_DATABASE=Broadwell QPI Link 2 ++ ++pci:v00008086d00006F3E* ++ ID_MODEL_FROM_DATABASE=Broadwell R3 QPI Link 2 ++ ++pci:v00008086d00006F3F* ++ ID_MODEL_FROM_DATABASE=Broadwell R3 QPI Link 2 ++ ++pci:v00008086d00006F40* ++ ID_MODEL_FROM_DATABASE=Broadwell QPI Link 2 ++ ++pci:v00008086d00006F41* ++ ID_MODEL_FROM_DATABASE=Broadwell R3 QPI Link 2 ++ ++pci:v00008086d00006F43* ++ ID_MODEL_FROM_DATABASE=Broadwell QPI Link 2 ++ ++pci:v00008086d00006F45* ++ ID_MODEL_FROM_DATABASE=Broadwell QPI Link 2 Debug ++ ++pci:v00008086d00006F46* ++ ID_MODEL_FROM_DATABASE=Broadwell QPI Link 2 Debug ++ ++pci:v00008086d00006F47* ++ ID_MODEL_FROM_DATABASE=Broadwell QPI Link 2 Debug ++ ++pci:v00008086d00006F60* ++ ID_MODEL_FROM_DATABASE=Broadwell Home Agent 1 ++ ++pci:v00008086d00006F68* ++ ID_MODEL_FROM_DATABASE=Broadwell Target Address/Thermal/RAS ++ ++pci:v00008086d00006F6A* ++ ID_MODEL_FROM_DATABASE=Broadwell Channel Target Address Decoder ++ ++pci:v00008086d00006F6B* ++ ID_MODEL_FROM_DATABASE=Broadwell Channel Target Address Decoder ++ ++pci:v00008086d00006F6C* ++ ID_MODEL_FROM_DATABASE=Broadwell Channel Target Address Decoder ++ ++pci:v00008086d00006F6D* ++ ID_MODEL_FROM_DATABASE=Broadwell Channel Target Address Decoder ++ ++pci:v00008086d00006F6E* ++ ID_MODEL_FROM_DATABASE=Broadwell DDRIO Channel 2/3 Broadcast ++ ++pci:v00008086d00006F6F* ++ ID_MODEL_FROM_DATABASE=Broadwell DDRIO Global Broadcast ++ ++pci:v00008086d00006F70* ++ ID_MODEL_FROM_DATABASE=Broadwell Home Agent 0 Debug ++ ++pci:v00008086d00006F71* ++ ID_MODEL_FROM_DATABASE=Broadwell Memory Controller 0 - Target Address/Thermal/RAS ++ ++pci:v00008086d00006F76* ++ ID_MODEL_FROM_DATABASE=Broadwell R3 QPI Link Debug ++ ++pci:v00008086d00006F78* ++ ID_MODEL_FROM_DATABASE=Broadwell Home Agent 1 Debug ++ ++pci:v00008086d00006F79* ++ ID_MODEL_FROM_DATABASE=Broadwell Target Address/Thermal/RAS ++ ++pci:v00008086d00006F7D* ++ ID_MODEL_FROM_DATABASE=Broadwell Ubox ++ ++pci:v00008086d00006F7E* ++ ID_MODEL_FROM_DATABASE=Broadwell R3 QPI Link Debug ++ ++pci:v00008086d00006F80* ++ ID_MODEL_FROM_DATABASE=Broadwell QPI Link 0 ++ ++pci:v00008086d00006F81* ++ ID_MODEL_FROM_DATABASE=Broadwell R3 QPI Link 0/1 ++ ++pci:v00008086d00006F83* ++ ID_MODEL_FROM_DATABASE=Broadwell QPI Link 0 ++ ++pci:v00008086d00006F85* ++ ID_MODEL_FROM_DATABASE=Broadwell QPI Link 0 Debug ++ ++pci:v00008086d00006F86* ++ ID_MODEL_FROM_DATABASE=Broadwell QPI Link 0 Debug ++ ++pci:v00008086d00006F87* ++ ID_MODEL_FROM_DATABASE=Broadwell QPI Link 0 Debug ++ ++pci:v00008086d00006F88* ++ ID_MODEL_FROM_DATABASE=Broadwell Power Control Unit ++ ++pci:v00008086d00006F8A* ++ ID_MODEL_FROM_DATABASE=Broadwell Power Control Unit ++ ++pci:v00008086d00006F90* ++ ID_MODEL_FROM_DATABASE=Broadwell QPI Link 1 ++ ++pci:v00008086d00006F93* ++ ID_MODEL_FROM_DATABASE=Broadwell QPI Link 1 ++ ++pci:v00008086d00006F95* ++ ID_MODEL_FROM_DATABASE=Broadwell QPI Link 1 Debug ++ ++pci:v00008086d00006F96* ++ ID_MODEL_FROM_DATABASE=Broadwell QPI Link 1 Debug ++ ++pci:v00008086d00006F98* ++ ID_MODEL_FROM_DATABASE=Broadwell Power Control Unit ++ ++pci:v00008086d00006F99* ++ ID_MODEL_FROM_DATABASE=Broadwell Power Control Unit ++ ++pci:v00008086d00006F9A* ++ ID_MODEL_FROM_DATABASE=Broadwell Power Control Unit ++ ++pci:v00008086d00006F9C* ++ ID_MODEL_FROM_DATABASE=Broadwell Power Control Unit ++ ++pci:v00008086d00006FA0* ++ ID_MODEL_FROM_DATABASE=Broadwell Home Agent 0 ++ ++pci:v00008086d00006FA8* ++ ID_MODEL_FROM_DATABASE=Broadwell Memory Controller 0 - Target Address/Thermal/RAS ++ ++pci:v00008086d00006FAA* ++ ID_MODEL_FROM_DATABASE=Broadwell Memory Controller 0 - Channel Target Address Decoder ++ ++pci:v00008086d00006FAB* ++ ID_MODEL_FROM_DATABASE=Broadwell Memory Controller 0 - Channel Target Address Decoder ++ ++pci:v00008086d00006FAC* ++ ID_MODEL_FROM_DATABASE=Broadwell Memory Controller 0 - Channel Target Address Decoder ++ ++pci:v00008086d00006FAD* ++ ID_MODEL_FROM_DATABASE=Broadwell Memory Controller 0 - Channel Target Address Decoder ++ ++pci:v00008086d00006FAE* ++ ID_MODEL_FROM_DATABASE=Broadwell DDRIO Channel 0/1 Broadcast ++ ++pci:v00008086d00006FAF* ++ ID_MODEL_FROM_DATABASE=Broadwell DDRIO Global Broadcast ++ ++pci:v00008086d00006FB0* ++ ID_MODEL_FROM_DATABASE=Broadwell Memory Controller 0 - Channel 0 Thermal Control ++ ++pci:v00008086d00006FB1* ++ ID_MODEL_FROM_DATABASE=Broadwell Memory Controller 0 - Channel 1 Thermal Control ++ ++pci:v00008086d00006FB2* ++ ID_MODEL_FROM_DATABASE=Broadwell Memory Controller 0 - Channel 0 Error ++ ++pci:v00008086d00006FB3* ++ ID_MODEL_FROM_DATABASE=Broadwell Memory Controller 0 - Channel 1 Error ++ ++pci:v00008086d00006FB4* ++ ID_MODEL_FROM_DATABASE=Broadwell Memory Controller 0 - Channel 2 Thermal Control ++ ++pci:v00008086d00006FB5* ++ ID_MODEL_FROM_DATABASE=Broadwell Memory Controller 0 - Channel 3 Thermal Control ++ ++pci:v00008086d00006FB6* ++ ID_MODEL_FROM_DATABASE=Broadwell Memory Controller 0 - Channel 2 Error ++ ++pci:v00008086d00006FB7* ++ ID_MODEL_FROM_DATABASE=Broadwell Memory Controller 0 - Channel 3 Error ++ ++pci:v00008086d00006FB8* ++ ID_MODEL_FROM_DATABASE=Broadwell DDRIO Channel 2/3 Interface ++ ++pci:v00008086d00006FB9* ++ ID_MODEL_FROM_DATABASE=Broadwell DDRIO Channel 2/3 Interface ++ ++pci:v00008086d00006FBA* ++ ID_MODEL_FROM_DATABASE=Broadwell DDRIO Channel 2/3 Interface ++ ++pci:v00008086d00006FBB* ++ ID_MODEL_FROM_DATABASE=Broadwell DDRIO Channel 2/3 Interface ++ ++pci:v00008086d00006FBC* ++ ID_MODEL_FROM_DATABASE=Broadwell DDRIO Channel 0/1 Interface ++ ++pci:v00008086d00006FBD* ++ ID_MODEL_FROM_DATABASE=Broadwell DDRIO Channel 0/1 Interface ++ ++pci:v00008086d00006FBE* ++ ID_MODEL_FROM_DATABASE=Broadwell DDRIO Channel 0/1 Interface ++ ++pci:v00008086d00006FBF* ++ ID_MODEL_FROM_DATABASE=Broadwell DDRIO Channel 0/1 Interface ++ ++pci:v00008086d00006FC0* ++ ID_MODEL_FROM_DATABASE=Broadwell Power Control Unit ++ ++pci:v00008086d00006FC1* ++ ID_MODEL_FROM_DATABASE=Broadwell Power Control Unit ++ ++pci:v00008086d00006FC2* ++ ID_MODEL_FROM_DATABASE=Broadwell Power Control Unit ++ ++pci:v00008086d00006FC3* ++ ID_MODEL_FROM_DATABASE=Broadwell Power Control Unit ++ ++pci:v00008086d00006FC4* ++ ID_MODEL_FROM_DATABASE=Broadwell Power Control Unit ++ ++pci:v00008086d00006FC5* ++ ID_MODEL_FROM_DATABASE=Broadwell Power Control Unit ++ ++pci:v00008086d00006FC6* ++ ID_MODEL_FROM_DATABASE=Broadwell Power Control Unit ++ ++pci:v00008086d00006FC7* ++ ID_MODEL_FROM_DATABASE=Broadwell Power Control Unit ++ ++pci:v00008086d00006FC8* ++ ID_MODEL_FROM_DATABASE=Broadwell Power Control Unit ++ ++pci:v00008086d00006FC9* ++ ID_MODEL_FROM_DATABASE=Broadwell Power Control Unit ++ ++pci:v00008086d00006FCA* ++ ID_MODEL_FROM_DATABASE=Broadwell Power Control Unit ++ ++pci:v00008086d00006FCB* ++ ID_MODEL_FROM_DATABASE=Broadwell Power Control Unit ++ ++pci:v00008086d00006FCC* ++ ID_MODEL_FROM_DATABASE=Broadwell Power Control Unit ++ ++pci:v00008086d00006FCD* ++ ID_MODEL_FROM_DATABASE=Broadwell Power Control Unit ++ ++pci:v00008086d00006FCE* ++ ID_MODEL_FROM_DATABASE=Broadwell Power Control Unit ++ ++pci:v00008086d00006FCF* ++ ID_MODEL_FROM_DATABASE=Broadwell Power Control Unit ++ ++pci:v00008086d00006FD0* ++ ID_MODEL_FROM_DATABASE=Broadwell Memory Controller 1 - Channel 0 Thermal Control ++ ++pci:v00008086d00006FD1* ++ ID_MODEL_FROM_DATABASE=Broadwell Memory Controller 1 - Channel 1 Thermal Control ++ ++pci:v00008086d00006FD2* ++ ID_MODEL_FROM_DATABASE=Broadwell Memory Controller 1 - Channel 0 Error ++ ++pci:v00008086d00006FD3* ++ ID_MODEL_FROM_DATABASE=Broadwell Memory Controller 1 - Channel 1 Error ++ ++pci:v00008086d00006FD4* ++ ID_MODEL_FROM_DATABASE=Broadwell Memory Controller 1 - Channel 2 Thermal Control ++ ++pci:v00008086d00006FD5* ++ ID_MODEL_FROM_DATABASE=Broadwell Memory Controller 1 - Channel 3 Thermal Control ++ ++pci:v00008086d00006FD6* ++ ID_MODEL_FROM_DATABASE=Broadwell Memory Controller 1 - Channel 2 Error ++ ++pci:v00008086d00006FD7* ++ ID_MODEL_FROM_DATABASE=Broadwell Memory Controller 1 - Channel 3 Error ++ ++pci:v00008086d00006FE0* ++ ID_MODEL_FROM_DATABASE=Broadwell Caching Agent ++ ++pci:v00008086d00006FE1* ++ ID_MODEL_FROM_DATABASE=Broadwell Caching Agent ++ ++pci:v00008086d00006FE2* ++ ID_MODEL_FROM_DATABASE=Broadwell Caching Agent ++ ++pci:v00008086d00006FE3* ++ ID_MODEL_FROM_DATABASE=Broadwell Caching Agent ++ ++pci:v00008086d00006FE4* ++ ID_MODEL_FROM_DATABASE=Broadwell Caching Agent ++ ++pci:v00008086d00006FE5* ++ ID_MODEL_FROM_DATABASE=Broadwell Caching Agent ++ ++pci:v00008086d00006FE6* ++ ID_MODEL_FROM_DATABASE=Broadwell Caching Agent ++ ++pci:v00008086d00006FE7* ++ ID_MODEL_FROM_DATABASE=Broadwell Caching Agent ++ ++pci:v00008086d00006FE8* ++ ID_MODEL_FROM_DATABASE=Broadwell Caching Agent ++ ++pci:v00008086d00006FE9* ++ ID_MODEL_FROM_DATABASE=Broadwell Caching Agent ++ ++pci:v00008086d00006FEA* ++ ID_MODEL_FROM_DATABASE=Broadwell Caching Agent ++ ++pci:v00008086d00006FEB* ++ ID_MODEL_FROM_DATABASE=Broadwell Caching Agent ++ ++pci:v00008086d00006FEC* ++ ID_MODEL_FROM_DATABASE=Broadwell Caching Agent ++ ++pci:v00008086d00006FED* ++ ID_MODEL_FROM_DATABASE=Broadwell Caching Agent ++ ++pci:v00008086d00006FEE* ++ ID_MODEL_FROM_DATABASE=Broadwell Caching Agent ++ ++pci:v00008086d00006FEF* ++ ID_MODEL_FROM_DATABASE=Broadwell Caching Agent ++ ++pci:v00008086d00006FF0* ++ ID_MODEL_FROM_DATABASE=Broadwell Caching Agent ++ ++pci:v00008086d00006FF1* ++ ID_MODEL_FROM_DATABASE=Broadwell Caching Agent ++ ++pci:v00008086d00006FF8* ++ ID_MODEL_FROM_DATABASE=Broadwell Caching Agent ++ ++pci:v00008086d00006FF9* ++ ID_MODEL_FROM_DATABASE=Broadwell Caching Agent ++ ++pci:v00008086d00006FFA* ++ ID_MODEL_FROM_DATABASE=Broadwell Caching Agent ++ ++pci:v00008086d00006FFB* ++ ID_MODEL_FROM_DATABASE=Broadwell Caching Agent ++ ++pci:v00008086d00006FFC* ++ ID_MODEL_FROM_DATABASE=Broadwell Caching Agent ++ ++pci:v00008086d00006FFD* ++ ID_MODEL_FROM_DATABASE=Broadwell Caching Agent ++ ++pci:v00008086d00006FFE* ++ ID_MODEL_FROM_DATABASE=Broadwell Caching Agent ++ + pci:v00008086d00007000* + ID_MODEL_FROM_DATABASE=82371SB PIIX3 ISA [Natoma/Triton II] + +@@ -73838,8 +74411,23 @@ pci:v0000D161d0000800A* + pci:v0000D161d0000800B* + ID_MODEL_FROM_DATABASE=Wildcard TE134 single-span T1/E1/J1 card + ++pci:v0000D161d0000800C* ++ ID_MODEL_FROM_DATABASE=Wildcard A8A 8-port analog card ++ ++pci:v0000D161d0000800D* ++ ID_MODEL_FROM_DATABASE=Wildcard A8B 8-port analog card (PCI-Express) ++ + pci:v0000D161d0000800E* +- ID_MODEL_FROM_DATABASE=Wildcard TE435P quad-span T1/E1/J1 card 3.3V (PCI-Express) ++ ID_MODEL_FROM_DATABASE=Wildcard TE235/TE435 quad-span T1/E1/J1 card (PCI-Express) ++ ++pci:v0000D161d0000800F* ++ ID_MODEL_FROM_DATABASE=Wildcard A4A 4-port analog card ++ ++pci:v0000D161d00008010* ++ ID_MODEL_FROM_DATABASE=Wildcard A4B 4-port analog card (PCI-Express) ++ ++pci:v0000D161d00008013* ++ ID_MODEL_FROM_DATABASE=Wildcard TE236/TE436 quad-span T1/E1/J1 card + + pci:v0000D161d0000B410* + ID_MODEL_FROM_DATABASE=Wildcard B410 quad-BRI card +diff --git hwdb/20-usb-vendor-model.hwdb hwdb/20-usb-vendor-model.hwdb +index ed6b2b1..d87313c 100644 +--- hwdb/20-usb-vendor-model.hwdb ++++ hwdb/20-usb-vendor-model.hwdb +@@ -11243,6 +11243,9 @@ usb:v04A9p3261* + usb:v04A9p3262* + ID_MODEL_FROM_DATABASE=PowerShot A2600 + ++usb:v04A9p3263* ++ ID_MODEL_FROM_DATABASE=PowerShot SX275 HS ++ + usb:v04A9p3264* + ID_MODEL_FROM_DATABASE=PowerShot A1400 + +@@ -11261,6 +11264,9 @@ usb:v04A9p3276* + usb:v04A9p3277* + ID_MODEL_FROM_DATABASE=PowerShot SX510 HS + ++usb:v04A9p3278* ++ ID_MODEL_FROM_DATABASE=PowerShot S200 ++ + usb:v04A9p327D* + ID_MODEL_FROM_DATABASE=Powershot ELPH 115 IS / IXUS 132 + +@@ -11666,6 +11672,9 @@ usb:v04B4p2050* + usb:v04B4p2830* + ID_MODEL_FROM_DATABASE=Opera1 DVB-S (cold state) + ++usb:v04B4p3813* ++ ID_MODEL_FROM_DATABASE=NANO BIOS Programmer ++ + usb:v04B4p4235* + ID_MODEL_FROM_DATABASE=Monitor 02 Driver + +@@ -33116,6 +33125,9 @@ usb:v0B48p300D* + usb:v0B48p300E* + ID_MODEL_FROM_DATABASE=TT-connect C-2400 + ++usb:v0B48p3012* ++ ID_MODEL_FROM_DATABASE=TT-connect CT2-4650 CI ++ + usb:v0B48p3014* + ID_MODEL_FROM_DATABASE=TT-TVStick CT2-4400 + +-- +1.7.9.2 + diff --git a/0008-mount-setup-fix-counting-of-early-mounts-without-SMA.patch b/0008-mount-setup-fix-counting-of-early-mounts-without-SMA.patch new file mode 100644 index 00000000..b189c671 --- /dev/null +++ b/0008-mount-setup-fix-counting-of-early-mounts-without-SMA.patch @@ -0,0 +1,32 @@ +From 7c96ab1d2484ab2df3c6a84f1a1d2e076f469085 Mon Sep 17 00:00:00 2001 +From: Lennart Poettering +Date: Wed, 13 Aug 2014 20:01:19 +0200 +Subject: [PATCH] mount-setup: fix counting of early mounts without SMACK + +http://lists.freedesktop.org/archives/systemd-devel/2014-August/021772.html +--- + src/core/mount-setup.c | 7 ++++++- + 1 file changed, 6 insertions(+), 1 deletion(-) + +diff --git src/core/mount-setup.c src/core/mount-setup.c +index 206f89a..cc2633e 100644 +--- src/core/mount-setup.c ++++ src/core/mount-setup.c +@@ -63,8 +63,13 @@ typedef struct MountPoint { + + /* The first three entries we might need before SELinux is up. The + * fourth (securityfs) is needed by IMA to load a custom policy. The +- * other ones we can delay until SELinux and IMA are loaded. */ ++ * other ones we can delay until SELinux and IMA are loaded. When ++ * SMACK is enabled we need smackfs, too, so it's a fifth one. */ ++#ifdef HAVE_SMACK + #define N_EARLY_MOUNT 5 ++#else ++#define N_EARLY_MOUNT 4 ++#endif + + static const MountPoint mount_table[] = { + { "sysfs", "/sys", "sysfs", NULL, MS_NOSUID|MS_NOEXEC|MS_NODEV, +-- +1.7.9.2 + diff --git a/0009-journald-Fix-off-by-one-error-in-Missed-X-kernel-mes.patch b/0009-journald-Fix-off-by-one-error-in-Missed-X-kernel-mes.patch new file mode 100644 index 00000000..864b9982 --- /dev/null +++ b/0009-journald-Fix-off-by-one-error-in-Missed-X-kernel-mes.patch @@ -0,0 +1,29 @@ +From b9c488f60050248b35640f28e4d00958702ba1c3 Mon Sep 17 00:00:00 2001 +From: Eelco Dolstra +Date: Wed, 6 Aug 2014 13:14:51 +0200 +Subject: [PATCH] journald: Fix off-by-one error in "Missed X kernel messages" + warning + +On receiving a message, "kernel_seqnum" is set to "serial + 1". So +subtracting 1 will cause messages like "Missed 0 kernel messages", +which should be "Missed 1 kernel messages". +--- + src/journal/journald-kmsg.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git src/journal/journald-kmsg.c src/journal/journald-kmsg.c +index 9935986..fb8ea08 100644 +--- src/journal/journald-kmsg.c ++++ src/journal/journald-kmsg.c +@@ -152,7 +152,7 @@ static void dev_kmsg_record(Server *s, char *p, size_t l) { + /* Did we lose any? */ + if (serial > *s->kernel_seqnum) + server_driver_message(s, SD_MESSAGE_JOURNAL_MISSED, "Missed %"PRIu64" kernel messages", +- serial - *s->kernel_seqnum - 1); ++ serial - *s->kernel_seqnum); + + /* Make sure we never read this one again. Note that + * we always store the next message serial we expect +-- +1.7.9.2 + diff --git a/0010-machine_kill-Don-t-kill-the-unit-when-killing-the-le.patch b/0010-machine_kill-Don-t-kill-the-unit-when-killing-the-le.patch new file mode 100644 index 00000000..cd65acf9 --- /dev/null +++ b/0010-machine_kill-Don-t-kill-the-unit-when-killing-the-le.patch @@ -0,0 +1,32 @@ +From 9d685ca8193c0da3ad5746be3871f5350179a3b3 Mon Sep 17 00:00:00 2001 +From: Eelco Dolstra +Date: Thu, 14 Aug 2014 19:59:16 +0200 +Subject: [PATCH] machine_kill(): Don't kill the unit when killing the leader + +If "machinectl poweroff" or "machinectl reboot" is used on a +systemd-nspawn container started with --keep-unit and --register, it +should *only* send the appropriate signal to the leader PID (i.e. the +container's systemd process). It shouldn't fall through to +manager_kill_unit() to also send the signal to the unit. The latter +ends up killing systemd-nspawn, which takes down the container +prematurely. +--- + src/machine/machine.c | 2 ++ + 1 file changed, 2 insertions(+) + +diff --git src/machine/machine.c src/machine/machine.c +index 1c9177e..13d3448 100644 +--- src/machine/machine.c ++++ src/machine/machine.c +@@ -493,6 +493,8 @@ int machine_kill(Machine *m, KillWho who, int signo) { + + if (kill(m->leader, signo) < 0) + return -errno; ++ ++ return 0; + } + + /* Otherwise make PID 1 do it for us, for the entire cgroup */ +-- +1.7.9.2 + diff --git a/0011-units-fix-BindsTo-logic-when-applied-relative-to-ser.patch b/0011-units-fix-BindsTo-logic-when-applied-relative-to-ser.patch new file mode 100644 index 00000000..7dee5011 --- /dev/null +++ b/0011-units-fix-BindsTo-logic-when-applied-relative-to-ser.patch @@ -0,0 +1,93 @@ +From ff50244582bf69e8489bba6ce59a21663d7f8274 Mon Sep 17 00:00:00 2001 +From: Lennart Poettering +Date: Mon, 18 Aug 2014 22:21:42 +0200 +Subject: [PATCH] units: fix BindsTo= logic when applied relative to services + with Type=oneshot +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +Start jobs for Type=oneshot units are successful when the unit state +transition activating → inactive took place. In such a case all units +that BindsTo= on it previously would continue to run, even though the unit +they dependet on was actually already gone. +--- + src/core/unit.c | 48 ++++++++++++++++++++++++++++++++++++++++++++---- + 1 file changed, 44 insertions(+), 4 deletions(-) + +diff --git src/core/unit.c src/core/unit.c +index a5f6b2e..950b83a 100644 +--- src/core/unit.c ++++ src/core/unit.c +@@ -1471,12 +1471,44 @@ static void unit_check_unneeded(Unit *u) { + if (unit_active_or_pending(other)) + return; + +- log_info_unit(u->id, "Service %s is not needed anymore. Stopping.", u->id); ++ log_info_unit(u->id, "Unit %s is not needed anymore. Stopping.", u->id); + + /* Ok, nobody needs us anymore. Sniff. Then let's commit suicide */ + manager_add_job(u->manager, JOB_STOP, u, JOB_FAIL, true, NULL, NULL); + } + ++static void unit_check_binds_to(Unit *u) { ++ bool stop = false; ++ Unit *other; ++ Iterator i; ++ ++ assert(u); ++ ++ if (u->job) ++ return; ++ ++ if (unit_active_state(u) != UNIT_ACTIVE) ++ return; ++ ++ SET_FOREACH(other, u->dependencies[UNIT_BINDS_TO], i) { ++ if (other->job) ++ continue; ++ ++ if (!UNIT_IS_INACTIVE_OR_FAILED(unit_active_state(other))) ++ continue; ++ ++ stop = true; ++ } ++ ++ if (!stop) ++ return; ++ ++ log_info_unit(u->id, "Unit %s is bound to inactive service. Stopping, too.", u->id); ++ ++ /* A unit we need to run is gone. Sniff. Let's stop this. */ ++ manager_add_job(u->manager, JOB_STOP, u, JOB_FAIL, true, NULL, NULL); ++} ++ + static void retroactively_start_dependencies(Unit *u) { + Iterator i; + Unit *other; +@@ -1788,11 +1820,19 @@ void unit_notify(Unit *u, UnitActiveState os, UnitActiveState ns, bool reload_su + manager_recheck_journal(m); + unit_trigger_notify(u); + +- /* Maybe we finished startup and are now ready for being +- * stopped because unneeded? */ +- if (u->manager->n_reloading <= 0) ++ if (u->manager->n_reloading <= 0) { ++ /* Maybe we finished startup and are now ready for ++ * being stopped because unneeded? */ + unit_check_unneeded(u); + ++ /* Maybe we finished startup, but something we needed ++ * has vanished? Let's die then. (This happens when ++ * something BindsTo= to a Type=oneshot unit, as these ++ * units go directly from starting to inactive, ++ * without ever entering started.) */ ++ unit_check_binds_to(u); ++ } ++ + unit_add_to_dbus_queue(u); + unit_add_to_gc_queue(u); + } +-- +1.7.9.2 + diff --git a/0012-util-try-to-be-a-bit-more-NFS-compatible-when-checki.patch b/0012-util-try-to-be-a-bit-more-NFS-compatible-when-checki.patch new file mode 100644 index 00000000..becc7844 --- /dev/null +++ b/0012-util-try-to-be-a-bit-more-NFS-compatible-when-checki.patch @@ -0,0 +1,36 @@ +From 70421bdce2719d76efffd8afdc28433c75aac5a2 Mon Sep 17 00:00:00 2001 +From: Lennart Poettering +Date: Mon, 18 Aug 2014 23:15:51 +0200 +Subject: [PATCH] util: try to be a bit more NFS compatible when checking + whether an FS is writable + +https://bugs.freedesktop.org/show_bug.cgi?id=81169 +--- + src/shared/path-util.c | 11 ++++++++++- + 1 file changed, 10 insertions(+), 1 deletion(-) + +diff --git src/shared/path-util.c src/shared/path-util.c +index 57554cd..67566bc 100644 +--- src/shared/path-util.c ++++ src/shared/path-util.c +@@ -533,7 +533,16 @@ int path_is_read_only_fs(const char *path) { + if (statvfs(path, &st) < 0) + return -errno; + +- return !!(st.f_flag & ST_RDONLY); ++ if (st.f_flag & ST_RDONLY) ++ return true; ++ ++ /* On NFS, statvfs() might not reflect whether we can actually ++ * write to the remote share. Let's try again with ++ * access(W_OK) which is more reliable, at least sometimes. */ ++ if (access(path, W_OK) < 0 && errno == EROFS) ++ return true; ++ ++ return false; + } + + int path_is_os_tree(const char *path) { +-- +1.7.9.2 + diff --git a/1063-udev-path_id-suppress-ID_PATH-for-devices-with-an-un.patch b/1063-udev-path_id-suppress-ID_PATH-for-devices-with-an-un.patch new file mode 100644 index 00000000..06966c4c --- /dev/null +++ b/1063-udev-path_id-suppress-ID_PATH-for-devices-with-an-un.patch @@ -0,0 +1,96 @@ +Based on e98bbfd2074e2b1079b7059341eac25741baf319 Mon Sep 17 00:00:00 2001 +From: Kay Sievers +Date: Mon, 4 Aug 2014 18:15:34 +0200 +Subject: [PATCH] udev: path_id - suppress ID_PATH for devices with an unknown + parent device type + +https://bugs.launchpad.net/ubuntu/+source/systemd/+bug/1321816 +--- + src/udev/udev-builtin-path_id.c | 38 +++++++++++++++++++++++++++----------- + 1 file changed, 27 insertions(+), 11 deletions(-) + +--- src/udev/udev-builtin-path_id.c ++++ src/udev/udev-builtin-path_id.c 2014-08-22 14:08:59.250235369 +0000 +@@ -524,7 +524,8 @@ static int builtin_path_id(struct udev_d + { + struct udev_device *parent; + char *path = NULL; +- bool some_transport = false; ++ bool supported_transport = false; ++ bool supported_parent = false; + + /* S390 ccw bus */ + parent = udev_device_get_parent_with_subsystem_devtype(dev, "ccw", NULL); +@@ -545,47 +546,62 @@ static int builtin_path_id(struct udev_d + handle_scsi_tape(parent, &path); + } else if (streq(subsys, "scsi")) { + parent = handle_scsi(parent, &path); +- some_transport = true; ++ supported_transport = true; + } else if (streq(subsys, "cciss")) { + parent = handle_cciss(parent, &path); +- some_transport = true; ++ supported_transport = true; + } else if (streq(subsys, "usb")) { + parent = handle_usb(parent, &path); +- some_transport = true; ++ supported_transport = true; + } else if (streq(subsys, "bcma")) { + parent = handle_bcma(parent, &path); +- some_transport = true; ++ supported_transport = true; + } else if (streq(subsys, "serio")) { + path_prepend(&path, "serio-%s", udev_device_get_sysnum(parent)); + parent = skip_subsystem(parent, "serio"); + } else if (streq(subsys, "pci")) { + path_prepend(&path, "pci-%s", udev_device_get_sysname(parent)); + parent = skip_subsystem(parent, "pci"); ++ supported_parent = true; + } else if (streq(subsys, "platform")) { + path_prepend(&path, "platform-%s", udev_device_get_sysname(parent)); + parent = skip_subsystem(parent, "platform"); +- some_transport = true; ++ supported_transport = true; ++ supported_parent = true; + } else if (streq(subsys, "acpi")) { + path_prepend(&path, "acpi-%s", udev_device_get_sysname(parent)); + parent = skip_subsystem(parent, "acpi"); ++ supported_parent = true; + } else if (streq(subsys, "xen")) { + path_prepend(&path, "xen-%s", udev_device_get_sysname(parent)); + parent = skip_subsystem(parent, "xen"); ++ supported_parent = true; + } else if (streq(subsys, "scm")) { + path_prepend(&path, "scm-%s", udev_device_get_sysname(parent)); + parent = skip_subsystem(parent, "scm"); +- some_transport = true; ++ supported_transport = true; ++ supported_parent = true; + } + + parent = udev_device_get_parent(parent); + } + + /* +- * Do not return a single-parent-device-only for block +- * devices, they might have entire buses behind it which +- * do not get unique IDs only by using the parent device. ++ * Do return devices with have an unknown type of parent device, they ++ * might produce conflicting IDs below multiple independent parent ++ * devices. + */ +- if (!some_transport && streq(udev_device_get_subsystem(dev), "block")) { ++ if (!supported_parent) { ++ free(path); ++ path = NULL; ++ } ++ ++ /* ++ * Do not return a have-only a single-parent block devices, some ++ * have entire hidden buses behind it, and not create predictable ++ * IDs that way. ++ */ ++ if (streq(udev_device_get_subsystem(dev), "block") && !supported_transport) { + free(path); + path = NULL; + } diff --git a/systemd-mini.changes b/systemd-mini.changes index d691713d..6a8f2c70 100644 --- a/systemd-mini.changes +++ b/systemd-mini.changes @@ -1,3 +1,53 @@ +------------------------------------------------------------------- +Tue Aug 26 12:13:42 UTC 2014 - werner@suse.de + +- Add upstream patches for hwdb + 0001-hwdb-keymaps-for-Samsung-900X3E-900X3F.patch + 0002-Add-hwdb-entry-for-Samsung-Series-7-Ultra.patch + 0003-keymap-Fix-HP-Pavillon-DV7.patch + 0004-hwdb-update-format-description-and-document-reloadin.patch + 0008-hwdb-update.patch + +------------------------------------------------------------------- +Tue Aug 26 11:25:57 UTC 2014 - werner@suse.de + +- Port back and add the missed upstream patches from 2014/08/22 + 0004-login-set_controller-should-fail-if-prepare_vt-fails.patch + 0006-login-share-VT-signal-handler-between-sessions.patch + +------------------------------------------------------------------- +Fri Aug 22 15:12:23 UTC 2014 - werner@suse.de + +- Add upstream patches + 0001-nspawn-fix-truncation-of-machine-names-in-interface-.patch + 0002-switch-root-umount-the-old-root-correctly.patch + 0003-bootchart-it-s-not-OK-to-return-1-from-a-main-progra.patch + 0005-sd-resolve-fix-allocation-if-query-ids-never-reuse-t.patch + 0007-journald-also-increase-the-SendBuffer-of-dev-log-to-.patch + 0008-mount-setup-fix-counting-of-early-mounts-without-SMA.patch + 0009-journald-Fix-off-by-one-error-in-Missed-X-kernel-mes.patch + 0010-machine_kill-Don-t-kill-the-unit-when-killing-the-le.patch + 0011-units-fix-BindsTo-logic-when-applied-relative-to-ser.patch + 0012-util-try-to-be-a-bit-more-NFS-compatible-when-checki.patch + 1063-udev-path_id-suppress-ID_PATH-for-devices-with-an-un.patch + +------------------------------------------------------------------- +Fri Aug 22 01:29:06 UTC 2014 - crrodriguez@opensuse.org + +- man pages from section 3 are developer docs, move them to + the -devel package. + +------------------------------------------------------------------- +Wed Aug 20 15:06:25 UTC 2014 - werner@suse.de + +- Add patch 0001-let-systemctl-completion-ignore-at-names.patch to + remove error messages for tab completion for systemctl isolate (bnc#892162) + +------------------------------------------------------------------- +Mon Aug 18 14:40:55 UTC 2014 - werner@suse.de + +- Disable the usage of the systemd groups wheel and adm (bnc#892300) + ------------------------------------------------------------------- Fri Aug 8 12:47:48 UTC 2014 - rmilasan@suse.com diff --git a/systemd-mini.spec b/systemd-mini.spec index 98a2cf3c..887777cd 100644 --- a/systemd-mini.spec +++ b/systemd-mini.spec @@ -40,6 +40,7 @@ %bcond_with blkrrpart %bcond_with udevsettle %endif +%bcond_with systemgrps Name: systemd-mini Url: http://www.freedesktop.org/wiki/Software/systemd @@ -761,6 +762,42 @@ Patch365: 0003-keymap-Annotate-all-micmute-workarounds.patch Patch366: tomcat6-var-lock-subsys-legacy.patch # PATCH-FIX-UPSTREAM added at 2014/08/01 Patch367: 0007-hwdb-update.patch +# PATCH-FIX-SUSE Remove error messages for tab completion for systemctl isolate (bnc#892162) +Patch368: 0001-let-systemctl-completion-ignore-at-names.patch +# PATCH-FIX-UPSTREAM added at 2014/08/22 +Patch369: 0001-nspawn-fix-truncation-of-machine-names-in-interface-.patch +# PATCH-FIX-UPSTREAM added at 2014/08/22 +Patch370: 0002-switch-root-umount-the-old-root-correctly.patch +# PATCH-FIX-UPSTREAM added at 2014/08/22 +Patch371: 0003-bootchart-it-s-not-OK-to-return-1-from-a-main-progra.patch +# PATCH-FIX-UPSTREAM added at 2014/08/22 +Patch372: 0004-login-set_controller-should-fail-if-prepare_vt-fails.patch +# PATCH-FIX-UPSTREAM added at 2014/08/22 +Patch373: 0005-sd-resolve-fix-allocation-if-query-ids-never-reuse-t.patch +# PATCH-FIX-UPSTREAM added at 2014/08/22 +Patch374: 0006-login-share-VT-signal-handler-between-sessions.patch +# PATCH-FIX-UPSTREAM added at 2014/08/22 +Patch375: 0007-journald-also-increase-the-SendBuffer-of-dev-log-to-.patch +# PATCH-FIX-UPSTREAM added at 2014/08/22 +Patch376: 0008-mount-setup-fix-counting-of-early-mounts-without-SMA.patch +# PATCH-FIX-UPSTREAM added at 2014/08/22 +Patch377: 0009-journald-Fix-off-by-one-error-in-Missed-X-kernel-mes.patch +# PATCH-FIX-UPSTREAM added at 2014/08/22 +Patch378: 0010-machine_kill-Don-t-kill-the-unit-when-killing-the-le.patch +# PATCH-FIX-UPSTREAM added at 2014/08/22 +Patch379: 0011-units-fix-BindsTo-logic-when-applied-relative-to-ser.patch +# PATCH-FIX-UPSTREAM added at 2014/08/22 +Patch380: 0012-util-try-to-be-a-bit-more-NFS-compatible-when-checki.patch +# PATCH-FIX-UPSTREAM added at 2014/08/25 +Patch381: 0001-hwdb-keymaps-for-Samsung-900X3E-900X3F.patch +# PATCH-FIX-UPSTREAM added at 2014/08/25 +Patch382: 0002-Add-hwdb-entry-for-Samsung-Series-7-Ultra.patch +# PATCH-FIX-UPSTREAM added at 2014/08/25 +Patch383: 0003-keymap-Fix-HP-Pavillon-DV7.patch +# PATCH-FIX-UPSTREAM added at 2014/08/25 +Patch384: 0004-hwdb-update-format-description-and-document-reloadin.patch +# PATCH-FIX-UPSTREAM added at 2014/08/25 +Patch385: 0008-hwdb-update.patch # UDEV PATCHES # ============ @@ -892,6 +929,8 @@ Patch1060: 1060-udev-use-device-mapper-target-name-for-btrfs-device-ready.p Patch1061: 1061-rules-allow-systemd-to-manage-loop-device-partitions.patch # PATCH-FIX-SUSE 1062-rules-set-default-permissions-for-GenWQE-devices.patch (bnc#890977) Patch1062: 1062-rules-set-default-permissions-for-GenWQE-devices.patch +# PATCH-FIX-UPSTREAM 1063-udev-path_id-suppress-ID_PATH-for-devices-with-an-un.patch +Patch1063: 1063-udev-path_id-suppress-ID_PATH-for-devices-with-an-un.patch %description Systemd is a system and service manager, compatible with SysV and LSB @@ -1418,6 +1457,24 @@ cp %{SOURCE7} m4/ %patch365 -p0 %patch366 -p1 %patch367 -p0 +%patch368 -p1 +%patch369 -p0 +%patch370 -p0 +%patch371 -p0 +%patch372 -p0 +%patch373 -p0 +%patch374 -p0 +%patch375 -p0 +%patch376 -p0 +%patch377 -p0 +%patch378 -p0 +%patch379 -p0 +%patch380 -p0 +%patch381 -p0 +%patch382 -p0 +%patch383 -p0 +%patch384 -p0 +%patch385 -p0 # udev patches %patch1001 -p1 @@ -1503,6 +1560,10 @@ cp %{SOURCE7} m4/ %patch1060 -p1 %patch1061 -p0 %patch1062 -p1 +%patch1063 -p0 + +# remove patch backups +find -name '*.orig' -exec rm -f '{}' \+ # ensure generate files are removed rm -f units/emergency.service @@ -1904,8 +1965,10 @@ if read ID < /etc/machine-id > /dev/null 2>&1 ; then chgrp systemd-journal %{_localstatedir}/log/journal/$ID > /dev/null 2>&1 || : chmod g+s %{_localstatedir}/log/journal/$ID > /dev/null 2>&1 || : fi +%if %{with systemgrps} getent group wheel && setfacl -Rnm g:wheel:rx,d:g:wheel:rx %{_localstatedir}/log/journal/ > /dev/null 2>&1 || : getent group adm && setfacl -Rnm g:adm:rx,d:g:adm:rx %{_localstatedir}/log/journal/ > /dev/null 2>&1 || : +%endif # Try to read default runlevel from the old inittab if it exists if [ ! -e /etc/systemd/system/default.target -a -e /etc/inittab ]; then @@ -2065,8 +2128,10 @@ exit 0 %if %{with permission} %set_permissions %{_localstatedir}/log/journal/ %endif +%if %{with systemgrps} getent group wheel && setfacl -Rnm g:wheel:rx,d:g:wheel:rx %{_localstatedir}/log/journal/ > /dev/null 2>&1 || : getent group adm && setfacl -Rnm g:adm:rx,d:g:adm:rx %{_localstatedir}/log/journal/ > /dev/null 2>&1 || : +%endif if [ "$1" -eq 1 ]; then # tell journal to start logging on disk if directory didn't exist before systemctl --no-block restart systemd-journal-flush.service >/dev/null 2>&1 || : @@ -2283,7 +2348,6 @@ exit 0 %exclude %{_mandir}/man*/*udev*.[0-9]* %exclude %{_mandir}/man8/systemd-journal-gatewayd.* %{_mandir}/man1/*.1* -%{_mandir}/man3/*.3* %{_mandir}/man5/*.5* %{_mandir}/man7/*.7* %{_mandir}/man8/*.8* @@ -2345,6 +2409,9 @@ exit 0 %{_libdir}/pkgconfig/libsystemd-login.pc %{_libdir}/pkgconfig/libsystemd-id128.pc %{_libdir}/pkgconfig/libsystemd-journal.pc +%if ! 0%{?bootstrap} +%{_mandir}/man3/*.3* +%endif %files sysvinit %defattr(-,root,root,-) diff --git a/systemd.changes b/systemd.changes index d691713d..6a8f2c70 100644 --- a/systemd.changes +++ b/systemd.changes @@ -1,3 +1,53 @@ +------------------------------------------------------------------- +Tue Aug 26 12:13:42 UTC 2014 - werner@suse.de + +- Add upstream patches for hwdb + 0001-hwdb-keymaps-for-Samsung-900X3E-900X3F.patch + 0002-Add-hwdb-entry-for-Samsung-Series-7-Ultra.patch + 0003-keymap-Fix-HP-Pavillon-DV7.patch + 0004-hwdb-update-format-description-and-document-reloadin.patch + 0008-hwdb-update.patch + +------------------------------------------------------------------- +Tue Aug 26 11:25:57 UTC 2014 - werner@suse.de + +- Port back and add the missed upstream patches from 2014/08/22 + 0004-login-set_controller-should-fail-if-prepare_vt-fails.patch + 0006-login-share-VT-signal-handler-between-sessions.patch + +------------------------------------------------------------------- +Fri Aug 22 15:12:23 UTC 2014 - werner@suse.de + +- Add upstream patches + 0001-nspawn-fix-truncation-of-machine-names-in-interface-.patch + 0002-switch-root-umount-the-old-root-correctly.patch + 0003-bootchart-it-s-not-OK-to-return-1-from-a-main-progra.patch + 0005-sd-resolve-fix-allocation-if-query-ids-never-reuse-t.patch + 0007-journald-also-increase-the-SendBuffer-of-dev-log-to-.patch + 0008-mount-setup-fix-counting-of-early-mounts-without-SMA.patch + 0009-journald-Fix-off-by-one-error-in-Missed-X-kernel-mes.patch + 0010-machine_kill-Don-t-kill-the-unit-when-killing-the-le.patch + 0011-units-fix-BindsTo-logic-when-applied-relative-to-ser.patch + 0012-util-try-to-be-a-bit-more-NFS-compatible-when-checki.patch + 1063-udev-path_id-suppress-ID_PATH-for-devices-with-an-un.patch + +------------------------------------------------------------------- +Fri Aug 22 01:29:06 UTC 2014 - crrodriguez@opensuse.org + +- man pages from section 3 are developer docs, move them to + the -devel package. + +------------------------------------------------------------------- +Wed Aug 20 15:06:25 UTC 2014 - werner@suse.de + +- Add patch 0001-let-systemctl-completion-ignore-at-names.patch to + remove error messages for tab completion for systemctl isolate (bnc#892162) + +------------------------------------------------------------------- +Mon Aug 18 14:40:55 UTC 2014 - werner@suse.de + +- Disable the usage of the systemd groups wheel and adm (bnc#892300) + ------------------------------------------------------------------- Fri Aug 8 12:47:48 UTC 2014 - rmilasan@suse.com diff --git a/systemd.spec b/systemd.spec index 13707cf4..cfdfe49d 100644 --- a/systemd.spec +++ b/systemd.spec @@ -38,6 +38,7 @@ %bcond_with blkrrpart %bcond_with udevsettle %endif +%bcond_with systemgrps Name: systemd Url: http://www.freedesktop.org/wiki/Software/systemd @@ -756,6 +757,42 @@ Patch365: 0003-keymap-Annotate-all-micmute-workarounds.patch Patch366: tomcat6-var-lock-subsys-legacy.patch # PATCH-FIX-UPSTREAM added at 2014/08/01 Patch367: 0007-hwdb-update.patch +# PATCH-FIX-SUSE Remove error messages for tab completion for systemctl isolate (bnc#892162) +Patch368: 0001-let-systemctl-completion-ignore-at-names.patch +# PATCH-FIX-UPSTREAM added at 2014/08/22 +Patch369: 0001-nspawn-fix-truncation-of-machine-names-in-interface-.patch +# PATCH-FIX-UPSTREAM added at 2014/08/22 +Patch370: 0002-switch-root-umount-the-old-root-correctly.patch +# PATCH-FIX-UPSTREAM added at 2014/08/22 +Patch371: 0003-bootchart-it-s-not-OK-to-return-1-from-a-main-progra.patch +# PATCH-FIX-UPSTREAM added at 2014/08/22 +Patch372: 0004-login-set_controller-should-fail-if-prepare_vt-fails.patch +# PATCH-FIX-UPSTREAM added at 2014/08/22 +Patch373: 0005-sd-resolve-fix-allocation-if-query-ids-never-reuse-t.patch +# PATCH-FIX-UPSTREAM added at 2014/08/22 +Patch374: 0006-login-share-VT-signal-handler-between-sessions.patch +# PATCH-FIX-UPSTREAM added at 2014/08/22 +Patch375: 0007-journald-also-increase-the-SendBuffer-of-dev-log-to-.patch +# PATCH-FIX-UPSTREAM added at 2014/08/22 +Patch376: 0008-mount-setup-fix-counting-of-early-mounts-without-SMA.patch +# PATCH-FIX-UPSTREAM added at 2014/08/22 +Patch377: 0009-journald-Fix-off-by-one-error-in-Missed-X-kernel-mes.patch +# PATCH-FIX-UPSTREAM added at 2014/08/22 +Patch378: 0010-machine_kill-Don-t-kill-the-unit-when-killing-the-le.patch +# PATCH-FIX-UPSTREAM added at 2014/08/22 +Patch379: 0011-units-fix-BindsTo-logic-when-applied-relative-to-ser.patch +# PATCH-FIX-UPSTREAM added at 2014/08/22 +Patch380: 0012-util-try-to-be-a-bit-more-NFS-compatible-when-checki.patch +# PATCH-FIX-UPSTREAM added at 2014/08/25 +Patch381: 0001-hwdb-keymaps-for-Samsung-900X3E-900X3F.patch +# PATCH-FIX-UPSTREAM added at 2014/08/25 +Patch382: 0002-Add-hwdb-entry-for-Samsung-Series-7-Ultra.patch +# PATCH-FIX-UPSTREAM added at 2014/08/25 +Patch383: 0003-keymap-Fix-HP-Pavillon-DV7.patch +# PATCH-FIX-UPSTREAM added at 2014/08/25 +Patch384: 0004-hwdb-update-format-description-and-document-reloadin.patch +# PATCH-FIX-UPSTREAM added at 2014/08/25 +Patch385: 0008-hwdb-update.patch # UDEV PATCHES # ============ @@ -887,6 +924,8 @@ Patch1060: 1060-udev-use-device-mapper-target-name-for-btrfs-device-ready.p Patch1061: 1061-rules-allow-systemd-to-manage-loop-device-partitions.patch # PATCH-FIX-SUSE 1062-rules-set-default-permissions-for-GenWQE-devices.patch (bnc#890977) Patch1062: 1062-rules-set-default-permissions-for-GenWQE-devices.patch +# PATCH-FIX-UPSTREAM 1063-udev-path_id-suppress-ID_PATH-for-devices-with-an-un.patch +Patch1063: 1063-udev-path_id-suppress-ID_PATH-for-devices-with-an-un.patch %description Systemd is a system and service manager, compatible with SysV and LSB @@ -1413,6 +1452,24 @@ cp %{SOURCE7} m4/ %patch365 -p0 %patch366 -p1 %patch367 -p0 +%patch368 -p1 +%patch369 -p0 +%patch370 -p0 +%patch371 -p0 +%patch372 -p0 +%patch373 -p0 +%patch374 -p0 +%patch375 -p0 +%patch376 -p0 +%patch377 -p0 +%patch378 -p0 +%patch379 -p0 +%patch380 -p0 +%patch381 -p0 +%patch382 -p0 +%patch383 -p0 +%patch384 -p0 +%patch385 -p0 # udev patches %patch1001 -p1 @@ -1498,6 +1555,10 @@ cp %{SOURCE7} m4/ %patch1060 -p1 %patch1061 -p0 %patch1062 -p1 +%patch1063 -p0 + +# remove patch backups +find -name '*.orig' -exec rm -f '{}' \+ # ensure generate files are removed rm -f units/emergency.service @@ -1899,8 +1960,10 @@ if read ID < /etc/machine-id > /dev/null 2>&1 ; then chgrp systemd-journal %{_localstatedir}/log/journal/$ID > /dev/null 2>&1 || : chmod g+s %{_localstatedir}/log/journal/$ID > /dev/null 2>&1 || : fi +%if %{with systemgrps} getent group wheel && setfacl -Rnm g:wheel:rx,d:g:wheel:rx %{_localstatedir}/log/journal/ > /dev/null 2>&1 || : getent group adm && setfacl -Rnm g:adm:rx,d:g:adm:rx %{_localstatedir}/log/journal/ > /dev/null 2>&1 || : +%endif # Try to read default runlevel from the old inittab if it exists if [ ! -e /etc/systemd/system/default.target -a -e /etc/inittab ]; then @@ -2060,8 +2123,10 @@ exit 0 %if %{with permission} %set_permissions %{_localstatedir}/log/journal/ %endif +%if %{with systemgrps} getent group wheel && setfacl -Rnm g:wheel:rx,d:g:wheel:rx %{_localstatedir}/log/journal/ > /dev/null 2>&1 || : getent group adm && setfacl -Rnm g:adm:rx,d:g:adm:rx %{_localstatedir}/log/journal/ > /dev/null 2>&1 || : +%endif if [ "$1" -eq 1 ]; then # tell journal to start logging on disk if directory didn't exist before systemctl --no-block restart systemd-journal-flush.service >/dev/null 2>&1 || : @@ -2278,7 +2343,6 @@ exit 0 %exclude %{_mandir}/man*/*udev*.[0-9]* %exclude %{_mandir}/man8/systemd-journal-gatewayd.* %{_mandir}/man1/*.1* -%{_mandir}/man3/*.3* %{_mandir}/man5/*.5* %{_mandir}/man7/*.7* %{_mandir}/man8/*.8* @@ -2340,6 +2404,9 @@ exit 0 %{_libdir}/pkgconfig/libsystemd-login.pc %{_libdir}/pkgconfig/libsystemd-id128.pc %{_libdir}/pkgconfig/libsystemd-journal.pc +%if ! 0%{?bootstrap} +%{_mandir}/man3/*.3* +%endif %files sysvinit %defattr(-,root,root,-)