Hello community,

here is the log from the commit of package microcode_ctl.1443 for 
openSUSE:12.3:Update checked in at 2013-03-20 12:52:59
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:12.3:Update/microcode_ctl.1443 (Old)
 and      /work/SRC/openSUSE:12.3:Update/.microcode_ctl.1443.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "microcode_ctl.1443", Maintainer is ""

Changes:
--------
New Changes file:

--- /dev/null   2013-02-26 18:15:11.936010755 +0100
+++ 
/work/SRC/openSUSE:12.3:Update/.microcode_ctl.1443.new/microcode_ctl.changes    
    2013-03-20 12:53:01.000000000 +0100
@@ -0,0 +1,368 @@
+-------------------------------------------------------------------
+Wed Mar 13 18:03:13 UTC 2013 - crrodrig...@opensuse.org
+- bnc#809348
+- Update microcode to version 20130222 
+- No changelog available.
+
+-------------------------------------------------------------------
+Fri Oct 26 12:51:49 UTC 2012 - crrodrig...@opensuse.org
+
+- Drop systemd units that loaded the microcode module 
+  it is loaded automatically nowdays.
+- reload the microcode on pacakge update.
+ 
+
+-------------------------------------------------------------------
+Thu Oct 18 13:12:40 UTC 2012 - tr...@suse.de
+
+- Update to latest AMD microcode version: 2012-01-17
+
+-------------------------------------------------------------------
+Tue Oct  2 13:26:19 UTC 2012 - tr...@suse.de
+
+- Update to Intel microcode 20120606-v2.
+  An fixed version of the previous released one.
+
+-------------------------------------------------------------------
+Wed Jun 20 00:29:22 UTC 2012 - crrodrig...@opensuse.org
+
+- Update to microcode 20120606, as usual, there is no information
+ about the problems that has been fixed.
+
+-------------------------------------------------------------------
+Sat Jun  9 00:04:53 UTC 2012 - crrodrig...@opensuse.org
+
+- Microcode autoload available in recent kernels is not 
+  very useful without this package, use proper Supplements
+  to ensure it gets installed in the supported machines
+
+-------------------------------------------------------------------
+Tue Jun  5 10:04:36 UTC 2012 - cfarr...@suse.com
+
+- license update: GPL-2.0+ and SUSE-Firmware
+  SPDX format
+
+-------------------------------------------------------------------
+Tue Apr 24 19:49:09 UTC 2012 - je...@suse.com
+
+- Update AMD microcode to 2012-01-17.
+  - Autoloading on fam15 and newer have a _famXX suffix, which is
+    causing warnings during boot on new systems (bnc#758499).
+
+-------------------------------------------------------------------
+Tue Dec 13 00:31:02 UTC 2011 - crrodrig...@opensuse.org
+
+- Update to microcode 20111110 
+- First steps for autoloading, currently only working with systemd
+  * add script that generates microcode in a form understanable
+    by the kernel.
+  * add microcode.conf to modules-load.d so the module is
+    loaded at boot with systemd which in turn will load
+    updated microcode automatically.
+    The kernel will in the near future autoload the module when 
+    a supported CPU is detected (WIP)
+  * Axe all init scripts and systemd service files. this has
+    to be handled in udev/kernel. (WIP)
+
+-------------------------------------------------------------------
+Tue Nov 22 18:53:50 UTC 2011 - crrodrig...@opensuse.org
+
+- Add a systemd.service in the meanwhile we sort out 
+  if this has to be automatically handled by the kernel
+
+-------------------------------------------------------------------
+Tue Oct 11 15:14:21 UTC 2011 - crrodrig...@opensuse.org
+
+- Update microcode to 20110915, Intel does not disclose 
+  what this fixes.
+
+-------------------------------------------------------------------
+Sun Jun 26 20:46:37 UTC 2011 - a...@suse.de
+
+- Update microcode to 20110428, Intel does not disclose
+  what this fixes.
+
+-------------------------------------------------------------------
+Sun May 22 02:07:20 UTC 2011 - crrodrig...@opensuse.org
+
+- Open all FD with O_CLOEXEC 
+
+-------------------------------------------------------------------
+Tue May 10 02:04:01 UTC 2011 - crrodrig...@opensuse.org
+
+- microcode.init, do not load microcode on Virtual Machines
+  ugly error messages shown in syslog otherwise.
+
+-------------------------------------------------------------------
+Tue Jan 18 14:17:54 UTC 2011 - tr...@novell.com
+
+- Revive microcode.ctl service as 2.6.37 does not throw cpu add
+  uevents. This is a workaround for 11.4 and will get reverted
+  as soon as we go for 2.6.38 where cpu driver autoloading patches
+  are included.
+- Service will be forced to be enabled on all Intel and all
+  AMD new than fam 10h.
+- Add AMD microcode patch and logic to get it loaded
+
+-------------------------------------------------------------------
+Sun Dec 19 03:34:19 UTC 2010 - cristian.rodrig...@opensuse.org
+
+- Update microcode to 20101123, Intel does not disclose
+  what this fixes. 
+
+-------------------------------------------------------------------
+Tue Sep 21 15:25:49 UTC 2010 - cristian.rodrig...@opensuse.org
+
+- Update Intel microcode to version 20100914, vendor
+  does not provide information regarding what it fixes. 
+
+-------------------------------------------------------------------
+Mon May 31 19:25:24 UTC 2010 - cristian.rodrig...@opensuse.org
+
+- udev rules back into /lib/udev ,as suggested by Kay 
+
+-------------------------------------------------------------------
+Mon May 31 16:00:04 UTC 2010 - cristian.rodrig...@opensuse.org
+
+- udev rules must live in %{_sysconfdir} otherwise it wont work.
+
+-------------------------------------------------------------------
+Sat May 29 19:54:49 UTC 2010 - cristian.rodrig...@opensuse.org
+
+- merge both Fedora and Debian improvements, most notably:
+  * microcode.dat is now considered firmware, and installed in /lib/firmware
+  * package no longer includes an init script microcode is loaded
+    using udev rules. 
+
+-------------------------------------------------------------------
+Mon May 17 18:08:23 UTC 2010 - cristian.rodrig...@opensuse.org
+
+- the microcode.dat file is a %config file 
+
+-------------------------------------------------------------------
+Fri Feb 12 13:38:10 UTC 2010 - tr...@novell.com
+
+- Updated microcode file to: 20100209
+
+-------------------------------------------------------------------
+Tue Feb  2 14:40:48 CET 2010 - r...@suse.de
+
+- Updated microcode file to: 20090927
+  Fate#306807 (again) 
+
+-------------------------------------------------------------------
+Wed Sep  2 17:12:33 CEST 2009 - p...@suse.de
+
+- Updated microcode file to: 20090330
+  Fate: 306807
+
+-------------------------------------------------------------------
+Wed Oct 15 09:51:57 CEST 2008 - bwa...@suse.de
+
+- Fix syntax error in microcode.init (bnc#435518).
+- Add rpmlintrc.
+- Fix %install-no-mkdir-buildroot warning of rpmlint.
+
+-------------------------------------------------------------------
+Wed Sep 17 18:51:17 CEST 2008 - tr...@suse.de
+
+- Updated microcode file to: 20080910
+  Fate: 303949
+
+-------------------------------------------------------------------
+Wed Aug 13 09:22:16 CEST 2008 - bwa...@suse.de
+
+- exit with "skipped" status when the microcode module does not
+  exist for a given kernel like the (old) VMI flavour (bnc#415117)
+
+-------------------------------------------------------------------
+Thu Jul 24 00:17:55 CEST 2008 - bwa...@suse.de
+
+- remove dependency on kernel since that's no real functional
+  dependency
+
+-------------------------------------------------------------------
+Mon May  5 17:20:50 CEST 2008 - bwa...@suse.de
+
+- return '4' for status, which is not implemented (bnc#383794)
+
+-------------------------------------------------------------------
+Sun Apr  6 17:27:51 CEST 2008 - bwa...@suse.de
+
+- update microcode version to 20080401 (bnc#374261)
+
+-------------------------------------------------------------------
+Thu Feb 21 10:18:58 CET 2008 - bwa...@suse.de
+
+- update microcode version to 20080220 (bnc#363537)
++++ 171 more lines (skipped)
++++ between /dev/null
++++ and 
/work/SRC/openSUSE:12.3:Update/.microcode_ctl.1443.new/microcode_ctl.changes

New:
----
  amd-ucode-2012-09-10.tar.bz2
  intel-microcode2ucode.c
  microcode-20130222.tgz
  microcode-ctl-cloexec.patch
  microcode.ctl_1.17-13.diff.gz
  microcode_ctl-1.17-suse_rh_paths.patch
  microcode_ctl-1.17.tar.bz2
  microcode_ctl.changes
  microcode_ctl.spec

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ microcode_ctl.spec ++++++
#
# spec file for package microcode_ctl
#
# Copyright (c) 2013 SUSE LINUX Products GmbH, Nuernberg, Germany.
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.

# Please submit bugfixes or comments via http://bugs.opensuse.org/
#


Name:           microcode_ctl
%define intel_version 20130222
%define amd_version 2012-09-10
ExclusiveArch:  %ix86 x86_64
Url:            http://www.urbanmyth.org/microcode/
Summary:        Microcode Updates for Intel and AMD64 x86/x86_64 CPUs
License:        GPL-2.0+ and SUSE-Firmware
Group:          Hardware/Other
Version:        1.17
Release:        0
Source0:        microcode_ctl-%{version}.tar.bz2
Source2:        microcode-%{intel_version}.tgz
Source3:        amd-ucode-%{amd_version}.tar.bz2
Source5:        intel-microcode2ucode.c
Patch0:         microcode.ctl_1.17-13.diff.gz
Patch1:         microcode_ctl-1.17-suse_rh_paths.patch
Patch2:         microcode-ctl-cloexec.patch
Supplements:    modalias(devname:cpu/microcode)
Supplements:    modalias(char-major-10-184)
Supplements:    modalias(x86cpu:vendor:0002:family:*:model:*:feature:*)
Supplements:    modalias(x86cpu:vendor:0000:family:*:model:*:feature:*)
BuildRoot:      %{_tmppath}/%{name}-%{version}-build

%description
This utility allows updating the microcode of Intel and AMD x86 and x86-64
CPUs.

%prep
%setup -q -a 3 -a 2
%patch0 -p1
%patch1
%patch2

%build
make CFLAGS="$RPM_OPT_FLAGS -I."
%{__cc} -fwhole-program %{optflags} %{S:5} -o generate_microcode
./generate_microcode microcode.dat

%install
%makeinstall
# AMD
install -D -m 0644 amd-ucode-%{amd_version}/microcode_amd.bin 
$RPM_BUILD_ROOT/lib/firmware/amd-ucode/microcode_amd.bin
install -m 0644 amd-ucode-%{amd_version}/microcode_amd_fam*.bin 
$RPM_BUILD_ROOT/lib/firmware/amd-ucode/
install -D -m 0644 amd-ucode-%{amd_version}/README 
$RPM_BUILD_ROOT/%{_defaultdocdir}/microcode_ctl/amd/README
install -D -m 0644 amd-ucode-%{amd_version}/LICENSE 
$RPM_BUILD_ROOT/%{_defaultdocdir}/microcode_ctl/amd/LICENSE
install -D -m 0644 amd-ucode-%{amd_version}/INSTALL 
$RPM_BUILD_ROOT/%{_defaultdocdir}/microcode_ctl/amd/INSTALL
install -D -m 0755 generate_microcode %{buildroot}%{_bindir}/generate_microcode
for file in intel-ucode/*; do
install -D -m 0644 $file %{buildroot}/lib/firmware/$file
done

%post
#if this fails, the user must either reboot or reload manually.
test -f /sys/devices/system/cpu/microcode/reload && /bin/echo 1 > 
/sys/devices/system/cpu/microcode/reload || exit 0

%clean
rm -rf $RPM_BUILD_ROOT;

%files
%defattr(-,root,root)
%{_bindir}/generate_microcode
/sbin/microcode_ctl
%dir /lib/firmware/amd-ucode
%dir /lib/firmware/intel-ucode
/lib/firmware/intel-ucode/*
/lib/firmware/amd-ucode/microcode_amd.bin
/lib/firmware/amd-ucode/microcode_amd_fam*.bin
%{_mandir}/man8/microcode_ctl.8.gz
%{_defaultdocdir}/microcode_ctl

%changelog
++++++ intel-microcode2ucode.c ++++++
/*
 * Convert Intel microcode.dat into individual ucode files
 * named: intel-ucode/$family-$model-$stepping
 *
 * The subdir intel-ucode/ is created in the current working
 * directory. We get multiple ucodes in the same file, so they
 * are appended to an existing file. Make sure the directory
 * is empty before every run of the converter.
 *
 * Kay Sievers <kay.siev...@vrfy.org>
 */


#ifndef _GNU_SOURCE
# define _GNU_SOURCE 1
#endif

#include <stdio.h>
#include <unistd.h>
#include <stdlib.h>
#include <string.h>
#include <time.h>
#include <limits.h>
#include <stdbool.h>
#include <inttypes.h>
#include <fcntl.h>
#include <errno.h>
#include <sys/stat.h>

struct microcode_header_intel {
        unsigned int hdrver;
        unsigned int rev;
        unsigned int date;
        unsigned int sig;
        unsigned int cksum;
        unsigned int ldrver;
        unsigned int pf;
        unsigned int datasize;
        unsigned int totalsize;
        unsigned int reserved[3];
};

union mcbuf {
        struct microcode_header_intel hdr;
        unsigned int i[0];
        char c[0];
};

int main(int argc, char *argv[])
{
        char *filename = "/lib/firmware/microcode.dat";
        FILE *f;
        char line[LINE_MAX];
        char buf[4000000];
        union mcbuf *mc;
        size_t bufsize, count, start;
        int rc = EXIT_SUCCESS;

        if (argv[1] != NULL)
                filename = argv[1];

        count = 0;
        mc = (union mcbuf *) buf;
        f = fopen(filename, "re");
        if (f == NULL) {
                printf("open %s: %m\n", filename);
                rc = EXIT_FAILURE;
                goto out;
        }

        while (fgets(line, sizeof(line), f) != NULL) {
                if (sscanf(line, "%x, %x, %x, %x",
                    &mc->i[count],
                    &mc->i[count + 1],
                    &mc->i[count + 2],
                    &mc->i[count + 3]) != 4)
                        continue;
                count += 4;
        }
        fclose(f);

        bufsize = count * sizeof(int);
        printf("%s: %lu(%luk) bytes, %zu integers\n",
               filename,
               bufsize,
               bufsize / 1024,
               count);

        if (bufsize < sizeof(struct microcode_header_intel))
                goto out;

        mkdir("intel-ucode", 0750);

        start = 0;
        for (;;) {
                size_t size;
                unsigned int family, model, stepping;
                unsigned int year, month, day;

                mc = (union mcbuf *) &buf[start];

                if (mc->hdr.totalsize)
                        size = mc->hdr.totalsize;
                else
                        size = 2000 + sizeof(struct microcode_header_intel);

                if (mc->hdr.ldrver != 1 || mc->hdr.hdrver != 1) {
                        printf("unknown version/format:\n");
                        rc = EXIT_FAILURE;
                        break;
                }

                /*
                 *  0- 3 stepping
                 *  4- 7 model
                 *  8-11 family
                 * 12-13 type
                 * 16-19 extended model
                 * 20-27 extended family
                 */
                family = (mc->hdr.sig >> 8) & 0xf;
                if (family == 0xf)
                        family += (mc->hdr.sig >> 20) & 0xff;
                model = (mc->hdr.sig >> 4) & 0x0f;
                if (family == 0x06)
                        model += ((mc->hdr.sig >> 16) & 0x0f) << 4;
                stepping = mc->hdr.sig & 0x0f;

                year = mc->hdr.date & 0xffff;
                month = mc->hdr.date >> 24;
                day = (mc->hdr.date >> 16) & 0xff;

                asprintf(&filename, "intel-ucode/%02x-%02x-%02x", family, 
model, stepping);
                printf("\n");
                printf("%s\n", filename);
                printf("signature: 0x%02x\n", mc->hdr.sig);
                printf("flags:     0x%02x\n", mc->hdr.pf);
                printf("revision:  0x%02x\n", mc->hdr.rev);
                printf("date:      %04x-%02x-%02x\n", year, month, day);
                printf("size:      %zu\n", size);

                f = fopen(filename, "ae");
                if (f == NULL) {
                        printf("open %s: %m\n", filename);
                        rc = EXIT_FAILURE;
                        goto out;
                }
                if (fwrite(mc, size, 1, f) != 1) {
                        printf("write %s: %m\n", filename);
                        rc = EXIT_FAILURE;
                        goto out;
                }
                fclose(f);
                free(filename);

                start += size;
                if (start >= bufsize)
                        break;
        }
        printf("\n");
out:
        return rc;
}
++++++ microcode-ctl-cloexec.patch ++++++
--- microcode_ctl.c.orig
+++ microcode_ctl.c
@@ -10,6 +10,7 @@
  *
  */
 
+#define _GNU_SOURCE
 #include <fcntl.h>
 #include <stdio.h>
 #include <stdlib.h>
@@ -66,7 +67,7 @@ static int do_update(char *device, char
                return ENOMEM;
        }
 
-       if( (fp=fopen(filename, "r")) == NULL){
+       if( (fp=fopen(filename, "re")) == NULL){
                if(print_error_messages)
                        fprintf(stderr,
                                "%s: cannot open source file '%s' errno=%d 
(%s)\n",
@@ -117,7 +118,7 @@ static int do_update(char *device, char
        if(print_normal_messages)
                fprintf(stderr, "%s: writing microcode (length: %d)\n",  
progname, length);
        
-       if((outfd = open(device, O_WRONLY)) == -1){
+       if((outfd = open(device, O_WRONLY|O_CLOEXEC)) == -1){
                if(print_error_messages)
                        fprintf(stderr, "%s: cannot open %s for writing 
errno=%d (%s)\n",
                                progname, device, errno, strerror(errno));
++++++ microcode.ctl_1.17-13.diff.gz ++++++
++++ 1927 lines (skipped)

++++++ microcode_ctl-1.17-suse_rh_paths.patch ++++++
Index: Makefile
===================================================================
--- Makefile.orig       2010-05-29 17:38:49.000000000 +0200
+++ Makefile    2010-05-29 21:42:56.932967000 +0200
@@ -24,34 +24,22 @@ endif
 DESTDIR                =
 PREFIX         = /usr
 
-INSDIR         = $(PREFIX)/sbin
+INSDIR         = /sbin
 MANDIR         = $(PREFIX)/share/man/man8
-MICDIR         = /usr/share/misc
-
-RCFILE         = microcode_ctl.start
-RCFILEFINAL    = microcode_ctl
-# this is a bit nasty...
-RCDIR          = $(shell if [ -d /etc/init.d ]; then echo "/etc"; else echo 
"/etc/rc.d"; fi)
-RCHOMEDIR      = init.d
-RCFILETO       = $(RCDIR)/$(RCHOMEDIR)
+MICDIR         = /lib/firmware
 
 all: microcode_ctl
 
 microcode_ctl: microcode_ctl.c
        $(CC) $(CFLAGS) -o $(PROGRAM) microcode_ctl.c
-       echo "$(RCDIR)/$(RCHOMEDIR)/microcode_ctl" > microcode-filelist
 
 clean:
        rm -f $(PROGRAM) microcode_ctl.o microcode-filelist
 
 install:
-       $(INS) -s -m 755 $(PROGRAM) $(DESTDIR)$(INSDIR)
-
-ifndef DESTDIR
-               chkconfig --add $(RCFILEFINAL)
-else
-               echo "MAKE: Skipping chkconfig operation (rpm build?)"
-endif
+       mkdir -p $(DESTDIR){$(MICDIR),$(INSDIR),$(MANDIR)}
+       $(INS) -m 644 microcode_ctl.8 $(DESTDIR)$(MANDIR)
+       $(INS) -m 755 $(PROGRAM) $(DESTDIR)$(INSDIR)
 
 device:
        mkdir -p $(DESTDIR)/dev/cpu
Index: microcode_ctl.c
===================================================================
--- microcode_ctl.c.orig        2010-05-29 17:38:49.000000000 +0200
+++ microcode_ctl.c     2010-05-29 17:44:47.376445000 +0200
@@ -26,7 +26,7 @@ static int print_error_messages=1;
 #define FILENAME_MAXLEN 2048
 
 #define MICROCODE_DEVICE_DEFAULT       "/dev/cpu/microcode"
-#define MICROCODE_FILE_DEFAULT         "/usr/share/misc/intel-microcode.dat"
+#define MICROCODE_FILE_DEFAULT         "/lib/firmware/microcode.dat"
 
 
 static void usage(FILE *file)
-- 
To unsubscribe, e-mail: opensuse-commit+unsubscr...@opensuse.org
For additional commands, e-mail: opensuse-commit+h...@opensuse.org

Reply via email to