Hello community, here is the log from the commit of package kmod for openSUSE:Factory checked in at 2012-06-25 14:00:27 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/kmod (Old) and /work/SRC/openSUSE:Factory/.kmod.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "kmod", Maintainer is "" Changes: -------- --- /work/SRC/openSUSE:Factory/kmod/kmod.changes 2012-04-23 09:15:20.000000000 +0200 +++ /work/SRC/openSUSE:Factory/.kmod.new/kmod.changes 2012-06-25 14:16:18.000000000 +0200 @@ -1,0 +2,15 @@ +Wed Jun 20 08:41:03 UTC 2012 - rmila...@suse.com + +- Update to new upstream release 9 +* build-sys: allow compressed modules in testsuite +* build-sys: Make dirs writable on rootfs creation +* depmod: use ferror and fclose to check for error +* depmod: return error when index is truncated due to ENOSPC +* depmod: fix coding-style issue in array declaration +* depmod: fail if any index could not be created +* depmod: don't return error if modules.builtin don't exist +* libkmod-util: split function for usec conversion +* libkmod-util: add missing stdbool.h include +- Fix broken testsuites on 32bit systems. + add: fix-32bits.diff +------------------------------------------------------------------- Old: ---- kmod-8.tar.sign kmod-8.tar.xz New: ---- fix-32bits.diff kmod-9.tar.sign kmod-9.tar.xz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ kmod.spec ++++++ --- /var/tmp/diff_new_pack.Q6Gnt2/_old 2012-06-25 14:16:20.000000000 +0200 +++ /var/tmp/diff_new_pack.Q6Gnt2/_new 2012-06-25 14:16:20.000000000 +0200 @@ -21,7 +21,7 @@ Summary: Utilities to load modules into the kernel License: LGPL-2.1+ and GPL-2.0+ Group: System/Kernel -Version: 8 +Version: 9 Release: 0 Url: http://www.politreco.com/2011/12/announce-kmod-2/ @@ -30,6 +30,7 @@ Source: %name-%version.tar.xz Source2: %name-%version.tar.sign Patch1: kmod-so-version.diff +Patch2: fix-32bits.diff BuildRoot: %{_tmppath}/%{name}-%{version}-build BuildRequires: autoconf @@ -86,7 +87,8 @@ %prep %setup -q -%patch -P 1 -p1 +%patch1 -p1 +%patch2 -p1 %build autoreconf -fi @@ -130,6 +132,8 @@ %postun -n %lname -p /sbin/ldconfig +%clean + %files %defattr(-,root,root) %{_bindir}/kmod ++++++ fix-32bits.diff ++++++ diff --git a/testsuite/init_module.c b/testsuite/init_module.c index 814998a..ed8b9fc 100644 --- a/testsuite/init_module.c +++ b/testsuite/init_module.c @@ -16,6 +16,7 @@ */ #include <assert.h> +#include <elf.h> #include <errno.h> #include <dirent.h> #include <fcntl.h> @@ -206,6 +207,12 @@ static inline bool module_is_inkernel(const char *modname) return ret; } +static uint8_t elf_identify(void *mem) +{ + uint8_t *p = mem; + return p[EI_CLASS]; +} + TS_EXPORT long init_module(void *mem, unsigned long len, const char *args); /* @@ -225,6 +232,8 @@ long init_module(void *mem, unsigned long len, const char *args) const void *buf; uint64_t bufsize; int err; + uint8_t class; + off_t offset; init_retcodes(); @@ -237,13 +246,20 @@ long init_module(void *mem, unsigned long len, const char *args) kmod_elf_unref(elf); /* - * We couldn't find the module's name inside the ELF file. Just exit - * as if it was successful + * We couldn't find the parse the ELF file. Just exit as if it was + * successful */ if (err < 0) return 0; - modname = (char *)buf + offsetof(struct module, name); + /* We need to open both 32 and 64 bits module - hack! */ + class = elf_identify(mem); + if (class == ELFCLASS64) + offset = MODULE_NAME_OFFSET_64; + else + offset = MODULE_NAME_OFFSET_32; + + modname = (char *)buf + offset; mod = find_module(modules, modname); if (mod != NULL) { errno = mod->errcode; diff --git a/testsuite/stripped-module.h b/testsuite/stripped-module.h index 9f97dae..19862f3 100644 --- a/testsuite/stripped-module.h +++ b/testsuite/stripped-module.h @@ -13,6 +13,7 @@ struct list_head { }; #define MODULE_NAME_LEN (64 - sizeof(unsigned long)) + struct module { enum module_state state; @@ -24,4 +25,8 @@ struct module char name[MODULE_NAME_LEN]; }; +/* padding */ +#define MODULE_NAME_OFFSET_64 4 + 4 + 2 * 8 +#define MODULE_NAME_OFFSET_32 4 + 2 * 4 + #endif ++++++ kmod-so-version.diff ++++++ --- /var/tmp/diff_new_pack.Q6Gnt2/_old 2012-06-25 14:16:20.000000000 +0200 +++ /var/tmp/diff_new_pack.Q6Gnt2/_new 2012-06-25 14:16:20.000000000 +0200 @@ -1,28 +1,13 @@ -From: Jan Engelhardt <jeng...@medozas.de> -Upstream: this patch is too complex for upstream to handle - -Change the kmod Makefile from using -version-info to -version-number -to make it clear that the kmod project is not trying to subvert the -libtool "interface" number concept, but in fact does not do -libtool-style counting. - -References: <alpine.lnx.2.01.1202070049200.12...@frira.zrqbmnf.qr> -References: http://lists.gnu.org/archive/html/libtool/2012-02/msg00011.html - ---- - Makefile.am | 6 +----- - 1 file changed, 1 insertion(+), 5 deletions(-) - -Index: kmod-8/Makefile.am +Index: kmod-9/Makefile.am =================================================================== ---- kmod-8.orig/Makefile.am -+++ kmod-8/Makefile.am +--- kmod-9.orig/Makefile.am ++++ kmod-9/Makefile.am @@ -33,10 +33,6 @@ SED_PROCESS = \ %.pc: %.pc.in Makefile $(SED_PROCESS) -LIBKMOD_CURRENT=3 --LIBKMOD_REVISION=2 +-LIBKMOD_REVISION=3 -LIBKMOD_AGE=1 - noinst_LTLIBRARIES = libkmod/libkmod-util.la -- To unsubscribe, e-mail: opensuse-commit+unsubscr...@opensuse.org For additional commands, e-mail: opensuse-commit+h...@opensuse.org