[PATCH] Fix speakers on Acer Predator Helios 500 Ryzen laptops
On an Acer Predator Helios 500 (Ryzen version), the laptop's speakers don't work out of the box. The problem can be worked around with hdajackretask, remapping the "Black Headphone, Right side" pin (0x21) to the Internal speaker. This patch adds a quirk to change this mapping by default. Signed-off-by: Bernhard Rosenkraenzer diff -up linux-5.0-rc8/sound/pci/hda/patch_realtek.c.0006~ linux-5.0-rc8/sound/pci/hda/patch_realtek.c --- linux-5.0-rc8/sound/pci/hda/patch_realtek.c.0006~ 2019-02-25 01:46:45.0 +0100 +++ linux-5.0-rc8/sound/pci/hda/patch_realtek.c 2019-02-25 17:55:27.032586591 +0100 @@ -1857,6 +1857,7 @@ enum { ALC1220_FIXUP_CLEVO_P950, ALC1220_FIXUP_SYSTEM76_ORYP5, ALC1220_FIXUP_SYSTEM76_ORYP5_PINS, + ALC299_FIXUP_PREDATOR_SPK, }; static void alc889_fixup_coef(struct hda_codec *codec, @@ -6627,6 +6628,13 @@ static const struct hda_fixup alc269_fix .chained = true, .chain_id = ALC285_FIXUP_LENOVO_HEADPHONE_NOISE }, + [ALC299_FIXUP_PREDATOR_SPK] = { + .type = HDA_FIXUP_PINS, + .v.pins = (const struct hda_pintbl[]) { + { 0x21, 0x90170150 }, /* use as headset mic, without its own jack detect */ + { } + } + }, }; static const struct snd_pci_quirk alc269_fixup_tbl[] = { @@ -6643,6 +6651,7 @@ static const struct snd_pci_quirk alc269 SND_PCI_QUIRK(0x1025, 0x079b, "Acer Aspire V5-573G", ALC282_FIXUP_ASPIRE_V5_PINS), SND_PCI_QUIRK(0x1025, 0x102b, "Acer Aspire C24-860", ALC286_FIXUP_ACER_AIO_MIC_NO_PRESENCE), SND_PCI_QUIRK(0x1025, 0x106d, "Acer Cloudbook 14", ALC283_FIXUP_CHROME_BOOK), + SND_PCI_QUIRK(0x1025, 0x1246, "Acer Predator Helios 500", ALC299_FIXUP_PREDATOR_SPK), SND_PCI_QUIRK(0x1025, 0x128f, "Acer Veriton Z6860G", ALC286_FIXUP_ACER_AIO_MIC_NO_PRESENCE), SND_PCI_QUIRK(0x1025, 0x1290, "Acer Veriton Z4860G", ALC286_FIXUP_ACER_AIO_MIC_NO_PRESENCE), SND_PCI_QUIRK(0x1025, 0x1291, "Acer Veriton Z4660G", ALC286_FIXUP_ACER_AIO_MIC_NO_PRESENCE), @@ -7037,6 +7046,7 @@ static const struct hda_model_fixup alc2 {.id = ALC255_FIXUP_DELL_HEADSET_MIC, .name = "alc255-dell-headset"}, {.id = ALC295_FIXUP_HP_X360, .name = "alc295-hp-x360"}, {.id = ALC225_FIXUP_HEADSET_JACK, .name = "alc-sense-combo"}, + {.id = ALC299_FIXUP_PREDATOR_SPK, .name = "predator-spk"}, {} }; #define ALC225_STANDARD_PINS \ @@ -7421,6 +7431,8 @@ static const struct snd_hda_pin_quirk al ALC225_STANDARD_PINS, {0x12, 0xb7a60130}, {0x17, 0x90170110}), + SND_HDA_PIN_QUIRK(0x10221457, 0x1028, "Acer", ALC299_FIXUP_PREDATOR_SPK, + { 0x21, 0x90170150 }), {} };
Re: 4.17.x won't boot due to "x86/boot/compressed/64: Handle 5-level paging boot if kernel is above 4G"
On Tuesday, July 03, 2018 16:02 CEST, Thomas Gleixner wrote: > On Tue, 3 Jul 2018, Kirill A. Shutemov wrote: > > On Tue, Jul 03, 2018 at 01:24:49PM +0200, Gabriel C wrote: > > > 2018-07-01 23:32 GMT+02:00 Benjamin Gilbert : > > > > On Sun, Jul 01, 2018 at 05:15:59PM -0400, Benjamin Gilbert wrote: > > > >> 4.17 kernels built with the CoreOS Container Linux toolchain and > > > >> kconfig, > > > >> up to and including 4.17.3, fail to boot on AMD64 running in (at least) > > > >> QEMU/KVM. No messages are shown post-GRUB; the VM instantly reboots. > > > >> Reverting commit 194a9749c73d ("x86/boot/compressed/64: Handle 5-level > > > >> paging boot if kernel is above 4G") fixes it. I've attached our kernel > > > >> config for reference, and am happy to test patches, provide sample QCOW > > > >> images, etc. > > > > > > > > > > Also see https://bugzilla.kernel.org/show_bug.cgi?id=200385 , > > > > > > 0a1756bd2897951c03c1cb671bdfd40729ac2177 is acting up > > > too with the same symptoms > > > > I tracked it down to -flto in LDFLAGS. I'll look more into this. > > And what sets -flto in LDFLAGS? I can't find anything in the kernel > build/Makefiles. The kernel doesn't use -flto by default. Some people (and distros) set -flto in CFLAGS and LDFLAGS manually hoping to get a few extra optimizations. This never caused any problems before 0a1756bd - would be nice to keep it working. ttyl bero
Re: 4.17.x won't boot due to "x86/boot/compressed/64: Handle 5-level paging boot if kernel is above 4G"
On Tuesday, July 03, 2018 16:02 CEST, Thomas Gleixner wrote: > On Tue, 3 Jul 2018, Kirill A. Shutemov wrote: > > On Tue, Jul 03, 2018 at 01:24:49PM +0200, Gabriel C wrote: > > > 2018-07-01 23:32 GMT+02:00 Benjamin Gilbert : > > > > On Sun, Jul 01, 2018 at 05:15:59PM -0400, Benjamin Gilbert wrote: > > > >> 4.17 kernels built with the CoreOS Container Linux toolchain and > > > >> kconfig, > > > >> up to and including 4.17.3, fail to boot on AMD64 running in (at least) > > > >> QEMU/KVM. No messages are shown post-GRUB; the VM instantly reboots. > > > >> Reverting commit 194a9749c73d ("x86/boot/compressed/64: Handle 5-level > > > >> paging boot if kernel is above 4G") fixes it. I've attached our kernel > > > >> config for reference, and am happy to test patches, provide sample QCOW > > > >> images, etc. > > > > > > > > > > Also see https://bugzilla.kernel.org/show_bug.cgi?id=200385 , > > > > > > 0a1756bd2897951c03c1cb671bdfd40729ac2177 is acting up > > > too with the same symptoms > > > > I tracked it down to -flto in LDFLAGS. I'll look more into this. > > And what sets -flto in LDFLAGS? I can't find anything in the kernel > build/Makefiles. The kernel doesn't use -flto by default. Some people (and distros) set -flto in CFLAGS and LDFLAGS manually hoping to get a few extra optimizations. This never caused any problems before 0a1756bd - would be nice to keep it working. ttyl bero
[PATCH] Add delay-init quirk for Corsair K70 LUX keyboards
Without this patch, K70 LUX keyboards don't work, saying usb 3-3: unable to read config index 0 descriptor/all usb 3-3: can't read configurations, error -110 usb usb3-port3: unable to enumerate USB device Signed-off-by: Bernhard Rosenkraenzer <bernhard.rosenkran...@linaro.org> --- drivers/usb/core/quirks.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/drivers/usb/core/quirks.c b/drivers/usb/core/quirks.c index a6aaf2f193a4..37c418e581fb 100644 --- a/drivers/usb/core/quirks.c +++ b/drivers/usb/core/quirks.c @@ -221,6 +221,9 @@ static const struct usb_device_id usb_quirk_list[] = { /* Corsair Strafe RGB */ { USB_DEVICE(0x1b1c, 0x1b20), .driver_info = USB_QUIRK_DELAY_INIT }, + /* Corsair K70 LUX */ + { USB_DEVICE(0x1b1c, 0x1b36), .driver_info = USB_QUIRK_DELAY_INIT }, + /* MIDI keyboard WORLDE MINI */ { USB_DEVICE(0x1c75, 0x0204), .driver_info = USB_QUIRK_CONFIG_INTF_STRINGS }, -- 2.15.0
[PATCH] Add delay-init quirk for Corsair K70 LUX keyboards
Without this patch, K70 LUX keyboards don't work, saying usb 3-3: unable to read config index 0 descriptor/all usb 3-3: can't read configurations, error -110 usb usb3-port3: unable to enumerate USB device Signed-off-by: Bernhard Rosenkraenzer --- drivers/usb/core/quirks.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/drivers/usb/core/quirks.c b/drivers/usb/core/quirks.c index a6aaf2f193a4..37c418e581fb 100644 --- a/drivers/usb/core/quirks.c +++ b/drivers/usb/core/quirks.c @@ -221,6 +221,9 @@ static const struct usb_device_id usb_quirk_list[] = { /* Corsair Strafe RGB */ { USB_DEVICE(0x1b1c, 0x1b20), .driver_info = USB_QUIRK_DELAY_INIT }, + /* Corsair K70 LUX */ + { USB_DEVICE(0x1b1c, 0x1b36), .driver_info = USB_QUIRK_DELAY_INIT }, + /* MIDI keyboard WORLDE MINI */ { USB_DEVICE(0x1c75, 0x0204), .driver_info = USB_QUIRK_CONFIG_INTF_STRINGS }, -- 2.15.0
[PATCH v3] Perf on Android
This is another attempt at getting perf ot work on Android - it's rebased to 3.7-rc6 and cleaned up from the earlier version. Also adds support for Android 4.2. Signed-off-by: Bernhard Rosenkraenzer --- tools/perf/Makefile | 17 +- tools/perf/builtin-record.c | 33 +++ tools/perf/builtin-test.c | 7 +++ tools/perf/compat-android.h | 106 tools/perf/config/feature-tests.mak | 13 + tools/perf/util/util.h | 2 + 6 files changed, 175 insertions(+), 3 deletions(-) create mode 100644 tools/perf/compat-android.h diff --git a/tools/perf/Makefile b/tools/perf/Makefile index 00deed4d..f74ea4b 100644 --- a/tools/perf/Makefile +++ b/tools/perf/Makefile @@ -104,7 +104,7 @@ ifdef PARSER_DEBUG endif CFLAGS = -fno-omit-frame-pointer -ggdb3 -funwind-tables -Wall -Wextra - std=gnu99 $(CFLAGS_WERROR) $(CFLAGS_OPTIMIZE) $(EXTRA_WARNINGS) $(EXTRA_CFLAGS) $(PARSER_DEBUG_CFLAGS) -EXTLIBS = -lpthread -lrt -lelf -lm +EXTLIBS = -lpthread -lelf -lm ALL_CFLAGS = $(CFLAGS) -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 - D_GNU_SOURCE ALL_LDFLAGS = $(LDFLAGS) STRIP ?= strip @@ -471,7 +471,14 @@ FLAGS_LIBELF=$(ALL_CFLAGS) $(ALL_LDFLAGS) $(EXTLIBS) ifneq ($(call try-cc,$(SOURCE_LIBELF),$(FLAGS_LIBELF)),y) FLAGS_GLIBC=$(ALL_CFLAGS) $(ALL_LDFLAGS) ifneq ($(call try-cc,$(SOURCE_GLIBC),$(FLAGS_GLIBC)),y) - msg := $(error No gnu/libc-version.h found, please install glibc- dev[el]/glibc-static); + ifeq ($(call try-cc,$(SOURCE_BIONIC),$(FLAGS_GLIBC)),y) + # Found Bionic instead of glibc... + # That works too, but needs a bit of special treatment + BASIC_CFLAGS += -DANDROID -DHAVE_STRLCPY -include $(CURDIR)/compat- android.h + ANDROID := 1 + else + msg := $(error No gnu/libc-version.h found, please install glibc- dev[el]/glibc-static); + endif else NO_LIBELF := 1 NO_DWARF := 1 @@ -486,6 +493,10 @@ else endif # SOURCE_LIBELF endif # NO_LIBELF +ifneq ($(ANDROID),1) +EXTLIBS += -lrt +endif + ifndef NO_LIBUNWIND # for linking with debug library, run like: # make DEBUG=1 LIBUNWIND_DIR=/opt/libunwind/ @@ -920,7 +931,7 @@ $(LIB_FILE): $(LIB_OBJS) # libtraceevent.a $(LIBTRACEEVENT): - $(QUIET_SUBDIR0)$(TRACE_EVENT_DIR) $(QUIET_SUBDIR1) O=$(OUTPUT) libtraceevent.a + $(QUIET_SUBDIR0)$(TRACE_EVENT_DIR) $(QUIET_SUBDIR1) CFLAGS="$(ALL_CFLAGS)" O=$(OUTPUT) libtraceevent.a $(LIBTRACEEVENT)-clean: $(QUIET_SUBDIR0)$(TRACE_EVENT_DIR) $(QUIET_SUBDIR1) O=$(OUTPUT) clean diff --git a/tools/perf/builtin-record.c b/tools/perf/builtin-record.c index e9231659..451db23 100644 --- a/tools/perf/builtin-record.c +++ b/tools/perf/builtin-record.c @@ -27,10 +27,43 @@ #include "util/cpumap.h" #include "util/thread_map.h" +#include #include #include #include +#ifdef ANDROID +/* While stdlib.h has a prototype for it, + Bionic doesn't actually implement on_exit() */ +#ifndef ATEXIT_MAX +#define ATEXIT_MAX 32 +#endif +static int __on_exit_count = 0; +typedef void (*on_exit_func_t)(int, void*); +static on_exit_func_t __on_exit_funcs[ATEXIT_MAX]; +static void *__on_exit_args[ATEXIT_MAX]; +static int __exitcode = 0; +static void __handle_on_exit_funcs(); +static int on_exit(on_exit_func_t function, void *arg); +#define exit(x) (exit)(__exitcode = (x)) + +static int on_exit(on_exit_func_t function, void *arg) { + if(__on_exit_count == ATEXIT_MAX) + return ENOMEM; + else if(__on_exit_count == 0) + atexit(__handle_on_exit_funcs); + __on_exit_funcs[__on_exit_count] = function; + __on_exit_args[__on_exit_count++] = arg; + return 0; +} + +static void __handle_on_exit_funcs() { + for(int i=0; i<__on_exit_count; i++) { + __on_exit_funcs[i](__exitcode, __on_exit_args[i]); + } +} +#endif + enum write_mode_t { WRITE_FORCE, WRITE_APPEND diff --git a/tools/perf/builtin-test.c b/tools/perf/builtin-test.c index 484f26c..70a9cd6 100644 --- a/tools/perf/builtin-test.c +++ b/tools/perf/builtin-test.c @@ -471,10 +471,17 @@ static int test__basic_mmap(void) .watermark = 0, }; cpu_set_t cpu_set; +#ifndef ANDROID const char *syscall_names[] = { "getsid", "getppid", "getpgrp", "getpgid", }; pid_t (*syscalls[])(void) = { (void *)getsid, getppid, getpgrp, (void*)getpgid }; +#else + /* No getsid() on Android */ + const char *syscall_names[] = { "getppid", "getpgrp", + "getpgid", }; + pid_t (*syscalls[])(void) = { getppid, ge
[PATCH v3] Perf on Android
This is another attempt at getting perf ot work on Android - it's rebased to 3.7-rc6 and cleaned up from the earlier version. Also adds support for Android 4.2. Signed-off-by: Bernhard Rosenkraenzer bernhard.rosenkran...@linaro.org --- tools/perf/Makefile | 17 +- tools/perf/builtin-record.c | 33 +++ tools/perf/builtin-test.c | 7 +++ tools/perf/compat-android.h | 106 tools/perf/config/feature-tests.mak | 13 + tools/perf/util/util.h | 2 + 6 files changed, 175 insertions(+), 3 deletions(-) create mode 100644 tools/perf/compat-android.h diff --git a/tools/perf/Makefile b/tools/perf/Makefile index 00deed4d..f74ea4b 100644 --- a/tools/perf/Makefile +++ b/tools/perf/Makefile @@ -104,7 +104,7 @@ ifdef PARSER_DEBUG endif CFLAGS = -fno-omit-frame-pointer -ggdb3 -funwind-tables -Wall -Wextra - std=gnu99 $(CFLAGS_WERROR) $(CFLAGS_OPTIMIZE) $(EXTRA_WARNINGS) $(EXTRA_CFLAGS) $(PARSER_DEBUG_CFLAGS) -EXTLIBS = -lpthread -lrt -lelf -lm +EXTLIBS = -lpthread -lelf -lm ALL_CFLAGS = $(CFLAGS) -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 - D_GNU_SOURCE ALL_LDFLAGS = $(LDFLAGS) STRIP ?= strip @@ -471,7 +471,14 @@ FLAGS_LIBELF=$(ALL_CFLAGS) $(ALL_LDFLAGS) $(EXTLIBS) ifneq ($(call try-cc,$(SOURCE_LIBELF),$(FLAGS_LIBELF)),y) FLAGS_GLIBC=$(ALL_CFLAGS) $(ALL_LDFLAGS) ifneq ($(call try-cc,$(SOURCE_GLIBC),$(FLAGS_GLIBC)),y) - msg := $(error No gnu/libc-version.h found, please install glibc- dev[el]/glibc-static); + ifeq ($(call try-cc,$(SOURCE_BIONIC),$(FLAGS_GLIBC)),y) + # Found Bionic instead of glibc... + # That works too, but needs a bit of special treatment + BASIC_CFLAGS += -DANDROID -DHAVE_STRLCPY -include $(CURDIR)/compat- android.h + ANDROID := 1 + else + msg := $(error No gnu/libc-version.h found, please install glibc- dev[el]/glibc-static); + endif else NO_LIBELF := 1 NO_DWARF := 1 @@ -486,6 +493,10 @@ else endif # SOURCE_LIBELF endif # NO_LIBELF +ifneq ($(ANDROID),1) +EXTLIBS += -lrt +endif + ifndef NO_LIBUNWIND # for linking with debug library, run like: # make DEBUG=1 LIBUNWIND_DIR=/opt/libunwind/ @@ -920,7 +931,7 @@ $(LIB_FILE): $(LIB_OBJS) # libtraceevent.a $(LIBTRACEEVENT): - $(QUIET_SUBDIR0)$(TRACE_EVENT_DIR) $(QUIET_SUBDIR1) O=$(OUTPUT) libtraceevent.a + $(QUIET_SUBDIR0)$(TRACE_EVENT_DIR) $(QUIET_SUBDIR1) CFLAGS=$(ALL_CFLAGS) O=$(OUTPUT) libtraceevent.a $(LIBTRACEEVENT)-clean: $(QUIET_SUBDIR0)$(TRACE_EVENT_DIR) $(QUIET_SUBDIR1) O=$(OUTPUT) clean diff --git a/tools/perf/builtin-record.c b/tools/perf/builtin-record.c index e9231659..451db23 100644 --- a/tools/perf/builtin-record.c +++ b/tools/perf/builtin-record.c @@ -27,10 +27,43 @@ #include util/cpumap.h #include util/thread_map.h +#include stdlib.h #include unistd.h #include sched.h #include sys/mman.h +#ifdef ANDROID +/* While stdlib.h has a prototype for it, + Bionic doesn't actually implement on_exit() */ +#ifndef ATEXIT_MAX +#define ATEXIT_MAX 32 +#endif +static int __on_exit_count = 0; +typedef void (*on_exit_func_t)(int, void*); +static on_exit_func_t __on_exit_funcs[ATEXIT_MAX]; +static void *__on_exit_args[ATEXIT_MAX]; +static int __exitcode = 0; +static void __handle_on_exit_funcs(); +static int on_exit(on_exit_func_t function, void *arg); +#define exit(x) (exit)(__exitcode = (x)) + +static int on_exit(on_exit_func_t function, void *arg) { + if(__on_exit_count == ATEXIT_MAX) + return ENOMEM; + else if(__on_exit_count == 0) + atexit(__handle_on_exit_funcs); + __on_exit_funcs[__on_exit_count] = function; + __on_exit_args[__on_exit_count++] = arg; + return 0; +} + +static void __handle_on_exit_funcs() { + for(int i=0; i__on_exit_count; i++) { + __on_exit_funcs[i](__exitcode, __on_exit_args[i]); + } +} +#endif + enum write_mode_t { WRITE_FORCE, WRITE_APPEND diff --git a/tools/perf/builtin-test.c b/tools/perf/builtin-test.c index 484f26c..70a9cd6 100644 --- a/tools/perf/builtin-test.c +++ b/tools/perf/builtin-test.c @@ -471,10 +471,17 @@ static int test__basic_mmap(void) .watermark = 0, }; cpu_set_t cpu_set; +#ifndef ANDROID const char *syscall_names[] = { getsid, getppid, getpgrp, getpgid, }; pid_t (*syscalls[])(void) = { (void *)getsid, getppid, getpgrp, (void*)getpgid }; +#else + /* No getsid() on Android */ + const char *syscall_names[] = { getppid, getpgrp, + getpgid, }; + pid_t (*syscalls[])(void) = { getppid, getpgrp, (void*)getpgid }; +#endif #define nsyscalls
[tip:perf/core] perf tools: Add on_exit implementation
Commit-ID: 78da39faf7c903bb6e3c20a726fde1bf98d10af8 Gitweb: http://git.kernel.org/tip/78da39faf7c903bb6e3c20a726fde1bf98d10af8 Author: Bernhard Rosenkraenzer AuthorDate: Mon, 8 Oct 2012 09:43:26 +0300 Committer: Arnaldo Carvalho de Melo CommitDate: Mon, 8 Oct 2012 17:38:25 -0300 perf tools: Add on_exit implementation on_exit() is only available in new versions of glibc. It is not implemented in Bionic and will lead to linking errors when compiling for Android. Implement a wrapper for on_exit using atexit. The implementation for on_exit is the one sent by Bernhard Rosenkraenzer in https://lkml.org/lkml/2012/8/23/316. The configuration part from the Makefile is different than the one from the original patch. Signed-off-by: Bernhard Rosenkraenzer Signed-off-by: Irina Tirdea Cc: David Ahern Cc: Ingo Molnar Cc: Irina Tirdea Cc: Jiri Olsa Cc: Namhyung Kim Cc: Paul Mackerras Cc: Pekka Enberg Cc: Peter Zijlstra Cc: Steven Rostedt Link: http://lkml.kernel.org/r/1349678613-7045-2-git-send-email-irina.tir...@gmail.com Signed-off-by: Arnaldo Carvalho de Melo --- tools/perf/Makefile |6 ++ tools/perf/builtin-record.c | 32 tools/perf/config/feature-tests.mak | 11 ++- 3 files changed, 48 insertions(+), 1 deletions(-) diff --git a/tools/perf/Makefile b/tools/perf/Makefile index d80a333..a7d8745 100644 --- a/tools/perf/Makefile +++ b/tools/perf/Makefile @@ -753,6 +753,12 @@ ifndef NO_STRLCPY endif endif +ifndef NO_ON_EXIT + ifeq ($(call try-cc,$(SOURCE_ON_EXIT),),y) + BASIC_CFLAGS += -DHAVE_ON_EXIT + endif +endif + ifndef NO_BACKTRACE ifeq ($(call try-cc,$(SOURCE_BACKTRACE),),y) BASIC_CFLAGS += -DBACKTRACE_SUPPORT diff --git a/tools/perf/builtin-record.c b/tools/perf/builtin-record.c index e9231659..73b5d7f 100644 --- a/tools/perf/builtin-record.c +++ b/tools/perf/builtin-record.c @@ -31,6 +31,38 @@ #include #include +#ifndef HAVE_ON_EXIT +#ifndef ATEXIT_MAX +#define ATEXIT_MAX 32 +#endif +static int __on_exit_count = 0; +typedef void (*on_exit_func_t) (int, void *); +static on_exit_func_t __on_exit_funcs[ATEXIT_MAX]; +static void *__on_exit_args[ATEXIT_MAX]; +static int __exitcode = 0; +static void __handle_on_exit_funcs(void); +static int on_exit(on_exit_func_t function, void *arg); +#define exit(x) (exit)(__exitcode = (x)) + +static int on_exit(on_exit_func_t function, void *arg) +{ + if (__on_exit_count == ATEXIT_MAX) + return -ENOMEM; + else if (__on_exit_count == 0) + atexit(__handle_on_exit_funcs); + __on_exit_funcs[__on_exit_count] = function; + __on_exit_args[__on_exit_count++] = arg; + return 0; +} + +static void __handle_on_exit_funcs(void) +{ + int i; + for (i = 0; i < __on_exit_count; i++) + __on_exit_funcs[i] (__exitcode, __on_exit_args[i]); +} +#endif + enum write_mode_t { WRITE_FORCE, WRITE_APPEND diff --git a/tools/perf/config/feature-tests.mak b/tools/perf/config/feature-tests.mak index 4add41b..eaeb0fd 100644 --- a/tools/perf/config/feature-tests.mak +++ b/tools/perf/config/feature-tests.mak @@ -203,4 +203,13 @@ int main(void) return audit_open(); } endef -endif \ No newline at end of file +endif + +define SOURCE_ON_EXIT +#include + +int main(void) +{ + return on_exit(NULL, NULL); +} +endef -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
[tip:perf/core] perf tools: Add on_exit implementation
Commit-ID: 78da39faf7c903bb6e3c20a726fde1bf98d10af8 Gitweb: http://git.kernel.org/tip/78da39faf7c903bb6e3c20a726fde1bf98d10af8 Author: Bernhard Rosenkraenzer bernhard.rosenkran...@linaro.org AuthorDate: Mon, 8 Oct 2012 09:43:26 +0300 Committer: Arnaldo Carvalho de Melo a...@redhat.com CommitDate: Mon, 8 Oct 2012 17:38:25 -0300 perf tools: Add on_exit implementation on_exit() is only available in new versions of glibc. It is not implemented in Bionic and will lead to linking errors when compiling for Android. Implement a wrapper for on_exit using atexit. The implementation for on_exit is the one sent by Bernhard Rosenkraenzer in https://lkml.org/lkml/2012/8/23/316. The configuration part from the Makefile is different than the one from the original patch. Signed-off-by: Bernhard Rosenkraenzer bernhard.rosenkran...@linaro.org Signed-off-by: Irina Tirdea irina.tir...@intel.com Cc: David Ahern dsah...@gmail.com Cc: Ingo Molnar mi...@kernel.org Cc: Irina Tirdea irina.tir...@intel.com Cc: Jiri Olsa jo...@redhat.com Cc: Namhyung Kim namhy...@kernel.org Cc: Paul Mackerras pau...@samba.org Cc: Pekka Enberg penb...@kernel.org Cc: Peter Zijlstra a.p.zijls...@chello.nl Cc: Steven Rostedt rost...@goodmis.org Link: http://lkml.kernel.org/r/1349678613-7045-2-git-send-email-irina.tir...@gmail.com Signed-off-by: Arnaldo Carvalho de Melo a...@redhat.com --- tools/perf/Makefile |6 ++ tools/perf/builtin-record.c | 32 tools/perf/config/feature-tests.mak | 11 ++- 3 files changed, 48 insertions(+), 1 deletions(-) diff --git a/tools/perf/Makefile b/tools/perf/Makefile index d80a333..a7d8745 100644 --- a/tools/perf/Makefile +++ b/tools/perf/Makefile @@ -753,6 +753,12 @@ ifndef NO_STRLCPY endif endif +ifndef NO_ON_EXIT + ifeq ($(call try-cc,$(SOURCE_ON_EXIT),),y) + BASIC_CFLAGS += -DHAVE_ON_EXIT + endif +endif + ifndef NO_BACKTRACE ifeq ($(call try-cc,$(SOURCE_BACKTRACE),),y) BASIC_CFLAGS += -DBACKTRACE_SUPPORT diff --git a/tools/perf/builtin-record.c b/tools/perf/builtin-record.c index e9231659..73b5d7f 100644 --- a/tools/perf/builtin-record.c +++ b/tools/perf/builtin-record.c @@ -31,6 +31,38 @@ #include sched.h #include sys/mman.h +#ifndef HAVE_ON_EXIT +#ifndef ATEXIT_MAX +#define ATEXIT_MAX 32 +#endif +static int __on_exit_count = 0; +typedef void (*on_exit_func_t) (int, void *); +static on_exit_func_t __on_exit_funcs[ATEXIT_MAX]; +static void *__on_exit_args[ATEXIT_MAX]; +static int __exitcode = 0; +static void __handle_on_exit_funcs(void); +static int on_exit(on_exit_func_t function, void *arg); +#define exit(x) (exit)(__exitcode = (x)) + +static int on_exit(on_exit_func_t function, void *arg) +{ + if (__on_exit_count == ATEXIT_MAX) + return -ENOMEM; + else if (__on_exit_count == 0) + atexit(__handle_on_exit_funcs); + __on_exit_funcs[__on_exit_count] = function; + __on_exit_args[__on_exit_count++] = arg; + return 0; +} + +static void __handle_on_exit_funcs(void) +{ + int i; + for (i = 0; i __on_exit_count; i++) + __on_exit_funcs[i] (__exitcode, __on_exit_args[i]); +} +#endif + enum write_mode_t { WRITE_FORCE, WRITE_APPEND diff --git a/tools/perf/config/feature-tests.mak b/tools/perf/config/feature-tests.mak index 4add41b..eaeb0fd 100644 --- a/tools/perf/config/feature-tests.mak +++ b/tools/perf/config/feature-tests.mak @@ -203,4 +203,13 @@ int main(void) return audit_open(); } endef -endif \ No newline at end of file +endif + +define SOURCE_ON_EXIT +#include stdio.h + +int main(void) +{ + return on_exit(NULL, NULL); +} +endef -- To unsubscribe from this list: send the line unsubscribe linux-kernel in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
[PATCHv2 1/1] perf: Port to Android
commit 4dc79eed16e3bb03b3cf92fcc6127e107e7537aa Author: Bernhard Rosenkraenzer Date: Sat Jun 23 06:18:05 2012 +0200 perf: Port to Android Adapt perf to deal with some missing functions in Bionic etc. Change-Id: I0cda2aad3edba26e1be3aebc9475a229ea9e8356 Signed-off-by: Bernhard Rosenkraenzer diff --git a/tools/perf/Makefile b/tools/perf/Makefile index 92271d3..d15cdae 100644 --- a/tools/perf/Makefile +++ b/tools/perf/Makefile @@ -117,7 +117,7 @@ ifndef PERF_DEBUG endif CFLAGS = -fno-omit-frame-pointer -ggdb3 -Wall -Wextra -std=gnu99 $(CFLAGS_WERROR) $(CFLAGS_OPTIMIZE) -D_FORTIFY_SOURCE=2 $(EXTRA_WARNINGS) $(EXTRA_CFLAGS) -EXTLIBS = -lpthread -lrt -lelf -lm +EXTLIBS = -lpthread -lelf -lm ALL_CFLAGS = $(CFLAGS) -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 - D_GNU_SOURCE ALL_LDFLAGS = $(LDFLAGS) STRIP ?= strip @@ -474,12 +474,23 @@ FLAGS_LIBELF=$(ALL_CFLAGS) $(ALL_LDFLAGS) $(EXTLIBS) ifneq ($(call try-cc,$(SOURCE_LIBELF),$(FLAGS_LIBELF)),y) FLAGS_GLIBC=$(ALL_CFLAGS) $(ALL_LDFLAGS) ifneq ($(call try-cc,$(SOURCE_GLIBC),$(FLAGS_GLIBC)),y) - msg := $(error No gnu/libc-version.h found, please install glibc- dev[el]/glibc-static); + ifeq ($(call try-cc,$(SOURCE_BIONIC),$(FLAGS_GLIBC)),y) + # Found Bionic instead of glibc... + # That works too, but needs a bit of special treatment + BASIC_CFLAGS += -DANDROID -include compat-android.h + ANDROID := 1 + else + msg := $(error No gnu/libc-version.h found, please install glibc- dev[el]/glibc-static); + endif else msg := $(error No libelf.h/libelf found, please install libelf- dev/elfutils-libelf-devel); endif endif +ifneq ($(ANDROID),1) +EXTLIBS += -lrt +endif + ifneq ($(call try-cc,$(SOURCE_ELF_MMAP),$(FLAGS_COMMON)),y) BASIC_CFLAGS += -DLIBELF_NO_MMAP endif diff --git a/tools/perf/builtin-record.c b/tools/perf/builtin-record.c index be4e1ee..3a1d0cc 100644 --- a/tools/perf/builtin-record.c +++ b/tools/perf/builtin-record.c @@ -27,10 +27,43 @@ #include "util/cpumap.h" #include "util/thread_map.h" +#include #include #include #include +#ifdef ANDROID +/* While stdlib.h has a prototype for it, + Bionic doesn't actually implement on_exit() */ +#ifndef ATEXIT_MAX +#define ATEXIT_MAX 32 +#endif +static int __on_exit_count = 0; +typedef void (*on_exit_func_t)(int, void*); +static on_exit_func_t __on_exit_funcs[ATEXIT_MAX]; +static void *__on_exit_args[ATEXIT_MAX]; +static int __exitcode = 0; +static void __handle_on_exit_funcs(); +static int on_exit(on_exit_func_t function, void *arg); +#define exit(x) (exit)(__exitcode = (x)) + +static int on_exit(on_exit_func_t function, void *arg) { + if(__on_exit_count == ATEXIT_MAX) + return ENOMEM; + else if(__on_exit_count == 0) + atexit(__handle_on_exit_funcs); + __on_exit_funcs[__on_exit_count] = function; + __on_exit_args[__on_exit_count++] = arg; + return 0; +} + +static void __handle_on_exit_funcs() { + for(int i=0; i<__on_exit_count; i++) { + __on_exit_funcs[i](__exitcode, __on_exit_args[i]); + } +} +#endif + enum write_mode_t { WRITE_FORCE, WRITE_APPEND diff --git a/tools/perf/builtin-test.c b/tools/perf/builtin-test.c index 223ffdc..6dbd2ee 100644 --- a/tools/perf/builtin-test.c +++ b/tools/perf/builtin-test.c @@ -469,10 +469,17 @@ static int test__basic_mmap(void) .watermark = 0, }; cpu_set_t cpu_set; +#ifndef ANDROID const char *syscall_names[] = { "getsid", "getppid", "getpgrp", "getpgid", }; pid_t (*syscalls[])(void) = { (void *)getsid, getppid, getpgrp, (void*)getpgid }; +#else + /* No getsid() on Android */ + const char *syscall_names[] = { "getppid", "getpgrp", + "getpgid", }; + pid_t (*syscalls[])(void) = { getppid, getpgrp, (void*)getpgid }; +#endif #define nsyscalls ARRAY_SIZE(syscall_names) int ids[nsyscalls]; unsigned int nr_events[nsyscalls], diff --git a/tools/perf/builtin.h b/tools/perf/builtin.h index b382bd5..1521a275 100644 --- a/tools/perf/builtin.h +++ b/tools/perf/builtin.h @@ -1,6 +1,7 @@ #ifndef BUILTIN_H #define BUILTIN_H +#include "compat-android.h" #include "util/util.h" #include "util/strbuf.h" diff --git a/tools/perf/compat-android.h b/tools/perf/compat-android.h new file mode 100644 index 000..9a33f49 --- /dev/null +++ b/tools/perf/compat-android.h @@ -0,0 +1,96 @@ +/* Android compatibility header + * Provides missing bits in Bionic on Android, ignored + * on regular Linux. + * + * W
[PATCHv2 1/1] perf: Port to Android
commit 4dc79eed16e3bb03b3cf92fcc6127e107e7537aa Author: Bernhard Rosenkraenzer bernhard.rosenkran...@linaro.org Date: Sat Jun 23 06:18:05 2012 +0200 perf: Port to Android Adapt perf to deal with some missing functions in Bionic etc. Change-Id: I0cda2aad3edba26e1be3aebc9475a229ea9e8356 Signed-off-by: Bernhard Rosenkraenzer bernhard.rosenkran...@linaro.org diff --git a/tools/perf/Makefile b/tools/perf/Makefile index 92271d3..d15cdae 100644 --- a/tools/perf/Makefile +++ b/tools/perf/Makefile @@ -117,7 +117,7 @@ ifndef PERF_DEBUG endif CFLAGS = -fno-omit-frame-pointer -ggdb3 -Wall -Wextra -std=gnu99 $(CFLAGS_WERROR) $(CFLAGS_OPTIMIZE) -D_FORTIFY_SOURCE=2 $(EXTRA_WARNINGS) $(EXTRA_CFLAGS) -EXTLIBS = -lpthread -lrt -lelf -lm +EXTLIBS = -lpthread -lelf -lm ALL_CFLAGS = $(CFLAGS) -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 - D_GNU_SOURCE ALL_LDFLAGS = $(LDFLAGS) STRIP ?= strip @@ -474,12 +474,23 @@ FLAGS_LIBELF=$(ALL_CFLAGS) $(ALL_LDFLAGS) $(EXTLIBS) ifneq ($(call try-cc,$(SOURCE_LIBELF),$(FLAGS_LIBELF)),y) FLAGS_GLIBC=$(ALL_CFLAGS) $(ALL_LDFLAGS) ifneq ($(call try-cc,$(SOURCE_GLIBC),$(FLAGS_GLIBC)),y) - msg := $(error No gnu/libc-version.h found, please install glibc- dev[el]/glibc-static); + ifeq ($(call try-cc,$(SOURCE_BIONIC),$(FLAGS_GLIBC)),y) + # Found Bionic instead of glibc... + # That works too, but needs a bit of special treatment + BASIC_CFLAGS += -DANDROID -include compat-android.h + ANDROID := 1 + else + msg := $(error No gnu/libc-version.h found, please install glibc- dev[el]/glibc-static); + endif else msg := $(error No libelf.h/libelf found, please install libelf- dev/elfutils-libelf-devel); endif endif +ifneq ($(ANDROID),1) +EXTLIBS += -lrt +endif + ifneq ($(call try-cc,$(SOURCE_ELF_MMAP),$(FLAGS_COMMON)),y) BASIC_CFLAGS += -DLIBELF_NO_MMAP endif diff --git a/tools/perf/builtin-record.c b/tools/perf/builtin-record.c index be4e1ee..3a1d0cc 100644 --- a/tools/perf/builtin-record.c +++ b/tools/perf/builtin-record.c @@ -27,10 +27,43 @@ #include util/cpumap.h #include util/thread_map.h +#include stdlib.h #include unistd.h #include sched.h #include sys/mman.h +#ifdef ANDROID +/* While stdlib.h has a prototype for it, + Bionic doesn't actually implement on_exit() */ +#ifndef ATEXIT_MAX +#define ATEXIT_MAX 32 +#endif +static int __on_exit_count = 0; +typedef void (*on_exit_func_t)(int, void*); +static on_exit_func_t __on_exit_funcs[ATEXIT_MAX]; +static void *__on_exit_args[ATEXIT_MAX]; +static int __exitcode = 0; +static void __handle_on_exit_funcs(); +static int on_exit(on_exit_func_t function, void *arg); +#define exit(x) (exit)(__exitcode = (x)) + +static int on_exit(on_exit_func_t function, void *arg) { + if(__on_exit_count == ATEXIT_MAX) + return ENOMEM; + else if(__on_exit_count == 0) + atexit(__handle_on_exit_funcs); + __on_exit_funcs[__on_exit_count] = function; + __on_exit_args[__on_exit_count++] = arg; + return 0; +} + +static void __handle_on_exit_funcs() { + for(int i=0; i__on_exit_count; i++) { + __on_exit_funcs[i](__exitcode, __on_exit_args[i]); + } +} +#endif + enum write_mode_t { WRITE_FORCE, WRITE_APPEND diff --git a/tools/perf/builtin-test.c b/tools/perf/builtin-test.c index 223ffdc..6dbd2ee 100644 --- a/tools/perf/builtin-test.c +++ b/tools/perf/builtin-test.c @@ -469,10 +469,17 @@ static int test__basic_mmap(void) .watermark = 0, }; cpu_set_t cpu_set; +#ifndef ANDROID const char *syscall_names[] = { getsid, getppid, getpgrp, getpgid, }; pid_t (*syscalls[])(void) = { (void *)getsid, getppid, getpgrp, (void*)getpgid }; +#else + /* No getsid() on Android */ + const char *syscall_names[] = { getppid, getpgrp, + getpgid, }; + pid_t (*syscalls[])(void) = { getppid, getpgrp, (void*)getpgid }; +#endif #define nsyscalls ARRAY_SIZE(syscall_names) int ids[nsyscalls]; unsigned int nr_events[nsyscalls], diff --git a/tools/perf/builtin.h b/tools/perf/builtin.h index b382bd5..1521a275 100644 --- a/tools/perf/builtin.h +++ b/tools/perf/builtin.h @@ -1,6 +1,7 @@ #ifndef BUILTIN_H #define BUILTIN_H +#include compat-android.h #include util/util.h #include util/strbuf.h diff --git a/tools/perf/compat-android.h b/tools/perf/compat-android.h new file mode 100644 index 000..9a33f49 --- /dev/null +++ b/tools/perf/compat-android.h @@ -0,0 +1,96 @@ +/* Android compatibility header + * Provides missing bits in Bionic on Android, ignored + * on regular Linux. + * + * Written by bernhard.rosenkran...@linaro.org
[PATCH] 2.6.23-mm1 gdth doesn't compile with CONFIG_ISA && !CONFIG_EISA
gdth_irq_tab is defined only in #ifdef CONFIG_EISA, but used in gdth_init_isa() Signed-off-by: Bernhard Rosenkraenzer <[EMAIL PROTECTED]> --- linux-2.6.23/drivers/scsi/gdth.c.ark2007-10-13 20:51:32.0 +0200 +++ linux-2.6.23/drivers/scsi/gdth.c2007-10-13 20:52:05.0 +0200 @@ -288,7 +288,7 @@ static struct timer_list gdth_timer; #ifdef CONFIG_ISA static unchar gdth_drq_tab[4] = {5,6,7,7};/* DRQ table */ #endif -#ifdef CONFIG_EISA +#if defined(CONFIG_EISA) || defined(CONFIG_ISA) static unchar gdth_irq_tab[6] = {0,10,11,12,14,0};/* IRQ table */ #endif static unchar gdth_polling; /* polling if TRUE */ - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
[PATCH] 2.6.23-mm1 gdth doesn't compile with CONFIG_ISA !CONFIG_EISA
gdth_irq_tab is defined only in #ifdef CONFIG_EISA, but used in gdth_init_isa() Signed-off-by: Bernhard Rosenkraenzer [EMAIL PROTECTED] --- linux-2.6.23/drivers/scsi/gdth.c.ark2007-10-13 20:51:32.0 +0200 +++ linux-2.6.23/drivers/scsi/gdth.c2007-10-13 20:52:05.0 +0200 @@ -288,7 +288,7 @@ static struct timer_list gdth_timer; #ifdef CONFIG_ISA static unchar gdth_drq_tab[4] = {5,6,7,7};/* DRQ table */ #endif -#ifdef CONFIG_EISA +#if defined(CONFIG_EISA) || defined(CONFIG_ISA) static unchar gdth_irq_tab[6] = {0,10,11,12,14,0};/* IRQ table */ #endif static unchar gdth_polling; /* polling if TRUE */ - To unsubscribe from this list: send the line unsubscribe linux-kernel in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: [alsa-devel] [PARTIAL PATCH] snd-hda-intel on Medion WIM2160
On Thursday 13 September 2007, Takashi Iwai wrote: > > The patch below fixes it, but unfortunately, Medion MD2 uses the same PCI > > (and subvendor/subdevice) ID -- so the patch quite likely breaks Medion > > MD2 support. > > In that case, try to reset board_config after > snd_hda_check_board_config() but before setup_preset(). See > patch_alc885() for example (appeariny in the latest ALSA tree, also in > mm tree). Will do... > Otherwise it looks OK to me. But, what is the primary difference in > the setup between MD2 and WIM2160? I don't know -- I made it work by trial and error (I don't have access to any hardware specs or the likes). By some more trial and error, I could minimize the patch some more - it's down to editing the init_verbs and mixers. In the mixers, this one seems to be the key: HDA_BIND_MUTE("Master Playback Switch", 0x0c, 2, HDA_INPUT) Maybe we can get it to work with both MD2 and WIM2160 by using the MD2 mixers with this one added. I'm not familiar enough with sound drivers in general to fiddle with the verbs and be reasonably sure I'm not breaking the MD2. --- linux-2.6.22/sound/pci/hda/patch_realtek.c.wim2160snd~ 2007-09-14 15:51:28.0 +0200 +++ linux-2.6.22/sound/pci/hda/patch_realtek.c 2007-09-14 15:53:21.0 +0200 @@ -169,6 +169,7 @@ ALC883_ACER, ALC883_MEDION, ALC883_MEDION_MD2, + ALC883_MEDION_WIM2160, ALC883_LAPTOP_EAPD, ALC883_LENOVO_101E_2ch, ALC883_LENOVO_NB0763, @@ -6235,6 +6236,32 @@ { } /* end */ }; +static struct snd_kcontrol_new alc883_medion_wim2160_mixer[] = { + HDA_CODEC_VOLUME("Master Playback Volume", 0x0c, 0x0, HDA_OUTPUT), + HDA_BIND_MUTE("Master Playback Switch", 0x0c, 2, HDA_INPUT), + HDA_CODEC_MUTE("Headphone Playback Switch", 0x14, 0x0, HDA_OUTPUT), + HDA_CODEC_VOLUME("CD Playback Volume", 0x0b, 0x04, HDA_INPUT), + HDA_CODEC_MUTE("CD Playback Switch", 0x0b, 0x04, HDA_INPUT), + HDA_CODEC_VOLUME("Mic Playback Volume", 0x0b, 0x0, HDA_INPUT), + HDA_CODEC_MUTE("Mic Playback Switch", 0x0b, 0x0, HDA_INPUT), + HDA_CODEC_VOLUME("iMic Playback Volume", 0x0b, 0x1, HDA_INPUT), + HDA_CODEC_MUTE("iMic Playback Switch", 0x0b, 0x1, HDA_INPUT), + HDA_CODEC_VOLUME("Capture Volume", 0x08, 0x0, HDA_INPUT), + HDA_CODEC_MUTE("Capture Switch", 0x08, 0x0, HDA_INPUT), + HDA_CODEC_VOLUME_IDX("Capture Volume", 1, 0x09, 0x0, HDA_INPUT), + HDA_CODEC_MUTE_IDX("Capture Switch", 1, 0x09, 0x0, HDA_INPUT), + { + .iface = SNDRV_CTL_ELEM_IFACE_MIXER, + /* .name = "Capture Source", */ + .name = "Input Source", + .count = 2, + .info = alc883_mux_enum_info, + .get = alc883_mux_enum_get, + .put = alc883_mux_enum_put, + }, + { } /* end */ +}; + static struct snd_kcontrol_new alc883_chmode_mixer[] = { { .iface = SNDRV_CTL_ELEM_IFACE_MIXER, @@ -6640,6 +6667,7 @@ [ALC883_ACER] = "acer", [ALC883_MEDION] = "medion", [ALC883_MEDION_MD2] = "medion-md2", + [ALC883_MEDION_WIM2160] = "medion-wim2160", [ALC883_LAPTOP_EAPD] = "laptop-eapd", [ALC883_LENOVO_101E_2ch] = "lenovo-101e", [ALC883_LENOVO_NB0763] = "lenovo-nb0763", @@ -6684,7 +6712,8 @@ SND_PCI_QUIRK(0x103c, 0x2a61, "HP Nettle", ALC888_6ST_HP), SND_PCI_QUIRK(0x103c, 0x2a60, "HP Lucknow", ALC888_3ST_HP), SND_PCI_QUIRK(0x103c, 0x2a4f, "HP Samba", ALC888_3ST_HP), - SND_PCI_QUIRK(0x17c0, 0x4071, "MEDION MD2", ALC883_MEDION_MD2), + //SND_PCI_QUIRK(0x17c0, 0x4071, "MEDION MD2", ALC883_MEDION_MD2), + SND_PCI_QUIRK(0x17c0, 0x4071, "Medion WIM2160", ALC883_MEDION_WIM2160), {} }; @@ -6814,6 +6843,20 @@ .unsol_event = alc883_medion_md2_unsol_event, .init_hook = alc883_medion_md2_automute, }, + [ALC883_MEDION_WIM2160] = { + .mixers = { alc883_medion_wim2160_mixer }, + .init_verbs = { alc883_init_verbs, alc883_lenovo_nb0763_verbs}, + .num_dacs = ARRAY_SIZE(alc883_dac_nids), + .dac_nids = alc883_dac_nids, + .dig_out_nid = ALC883_DIGOUT_NID, + .num_adc_nids = ARRAY_SIZE(alc883_adc_nids), + .adc_nids = alc883_adc_nids, + .num_channel_mode = ARRAY_SIZE(alc883_3ST_2ch_modes), + .channel_mode = alc883_3ST_2ch_modes, + .input_mux = _capture_source, + .unsol_event = alc883_medion_md2_unsol_event, + .init_hook = alc883_medion_md2_automute, + }, [ALC883_LAPTOP_EAPD] = { .mixers = { alc883_base_mixer, alc883_chmode_mixer },
Re: [alsa-devel] [PARTIAL PATCH] snd-hda-intel on Medion WIM2160
On Thursday 13 September 2007, Takashi Iwai wrote: The patch below fixes it, but unfortunately, Medion MD2 uses the same PCI (and subvendor/subdevice) ID -- so the patch quite likely breaks Medion MD2 support. In that case, try to reset board_config after snd_hda_check_board_config() but before setup_preset(). See patch_alc885() for example (appeariny in the latest ALSA tree, also in mm tree). Will do... Otherwise it looks OK to me. But, what is the primary difference in the setup between MD2 and WIM2160? I don't know -- I made it work by trial and error (I don't have access to any hardware specs or the likes). By some more trial and error, I could minimize the patch some more - it's down to editing the init_verbs and mixers. In the mixers, this one seems to be the key: HDA_BIND_MUTE(Master Playback Switch, 0x0c, 2, HDA_INPUT) Maybe we can get it to work with both MD2 and WIM2160 by using the MD2 mixers with this one added. I'm not familiar enough with sound drivers in general to fiddle with the verbs and be reasonably sure I'm not breaking the MD2. --- linux-2.6.22/sound/pci/hda/patch_realtek.c.wim2160snd~ 2007-09-14 15:51:28.0 +0200 +++ linux-2.6.22/sound/pci/hda/patch_realtek.c 2007-09-14 15:53:21.0 +0200 @@ -169,6 +169,7 @@ ALC883_ACER, ALC883_MEDION, ALC883_MEDION_MD2, + ALC883_MEDION_WIM2160, ALC883_LAPTOP_EAPD, ALC883_LENOVO_101E_2ch, ALC883_LENOVO_NB0763, @@ -6235,6 +6236,32 @@ { } /* end */ }; +static struct snd_kcontrol_new alc883_medion_wim2160_mixer[] = { + HDA_CODEC_VOLUME(Master Playback Volume, 0x0c, 0x0, HDA_OUTPUT), + HDA_BIND_MUTE(Master Playback Switch, 0x0c, 2, HDA_INPUT), + HDA_CODEC_MUTE(Headphone Playback Switch, 0x14, 0x0, HDA_OUTPUT), + HDA_CODEC_VOLUME(CD Playback Volume, 0x0b, 0x04, HDA_INPUT), + HDA_CODEC_MUTE(CD Playback Switch, 0x0b, 0x04, HDA_INPUT), + HDA_CODEC_VOLUME(Mic Playback Volume, 0x0b, 0x0, HDA_INPUT), + HDA_CODEC_MUTE(Mic Playback Switch, 0x0b, 0x0, HDA_INPUT), + HDA_CODEC_VOLUME(iMic Playback Volume, 0x0b, 0x1, HDA_INPUT), + HDA_CODEC_MUTE(iMic Playback Switch, 0x0b, 0x1, HDA_INPUT), + HDA_CODEC_VOLUME(Capture Volume, 0x08, 0x0, HDA_INPUT), + HDA_CODEC_MUTE(Capture Switch, 0x08, 0x0, HDA_INPUT), + HDA_CODEC_VOLUME_IDX(Capture Volume, 1, 0x09, 0x0, HDA_INPUT), + HDA_CODEC_MUTE_IDX(Capture Switch, 1, 0x09, 0x0, HDA_INPUT), + { + .iface = SNDRV_CTL_ELEM_IFACE_MIXER, + /* .name = Capture Source, */ + .name = Input Source, + .count = 2, + .info = alc883_mux_enum_info, + .get = alc883_mux_enum_get, + .put = alc883_mux_enum_put, + }, + { } /* end */ +}; + static struct snd_kcontrol_new alc883_chmode_mixer[] = { { .iface = SNDRV_CTL_ELEM_IFACE_MIXER, @@ -6640,6 +6667,7 @@ [ALC883_ACER] = acer, [ALC883_MEDION] = medion, [ALC883_MEDION_MD2] = medion-md2, + [ALC883_MEDION_WIM2160] = medion-wim2160, [ALC883_LAPTOP_EAPD] = laptop-eapd, [ALC883_LENOVO_101E_2ch] = lenovo-101e, [ALC883_LENOVO_NB0763] = lenovo-nb0763, @@ -6684,7 +6712,8 @@ SND_PCI_QUIRK(0x103c, 0x2a61, HP Nettle, ALC888_6ST_HP), SND_PCI_QUIRK(0x103c, 0x2a60, HP Lucknow, ALC888_3ST_HP), SND_PCI_QUIRK(0x103c, 0x2a4f, HP Samba, ALC888_3ST_HP), - SND_PCI_QUIRK(0x17c0, 0x4071, MEDION MD2, ALC883_MEDION_MD2), + //SND_PCI_QUIRK(0x17c0, 0x4071, MEDION MD2, ALC883_MEDION_MD2), + SND_PCI_QUIRK(0x17c0, 0x4071, Medion WIM2160, ALC883_MEDION_WIM2160), {} }; @@ -6814,6 +6843,20 @@ .unsol_event = alc883_medion_md2_unsol_event, .init_hook = alc883_medion_md2_automute, }, + [ALC883_MEDION_WIM2160] = { + .mixers = { alc883_medion_wim2160_mixer }, + .init_verbs = { alc883_init_verbs, alc883_lenovo_nb0763_verbs}, + .num_dacs = ARRAY_SIZE(alc883_dac_nids), + .dac_nids = alc883_dac_nids, + .dig_out_nid = ALC883_DIGOUT_NID, + .num_adc_nids = ARRAY_SIZE(alc883_adc_nids), + .adc_nids = alc883_adc_nids, + .num_channel_mode = ARRAY_SIZE(alc883_3ST_2ch_modes), + .channel_mode = alc883_3ST_2ch_modes, + .input_mux = alc883_capture_source, + .unsol_event = alc883_medion_md2_unsol_event, + .init_hook = alc883_medion_md2_automute, + }, [ALC883_LAPTOP_EAPD] = { .mixers = { alc883_base_mixer, alc883_chmode_mixer },
[PATCH] Make wistron-btns recognize special keys on Medion WIM2160 notebooks
The patch below adds support for Medion WIM2160 notebooks to the wistron-btns driver. Signed-off-by: Bernhard Rosenkraenzer <[EMAIL PROTECTED]> --- linux-2.6.22/drivers/input/misc/wistron_btns.c.ark 2007-09-07 22:47:49.0 + +++ linux-2.6.22/drivers/input/misc/wistron_btns.c 2007-09-07 22:54:19.0 + @@ -536,6 +536,13 @@ { KE_END, FE_MAIL_LED | FE_WIFI_LED | FE_UNTESTED } }; +static struct key_entry keymap_medion_wim2160[] __initdata = { + { KE_WIFI, 0x30 }, + { KE_KEY, 0x11, {KEY_PROG1} }, + { KE_KEY, 0x12, {KEY_PROG2} }, + { KE_END, 0 } +}; + static struct key_entry keymap_wistron_md2900[] __initdata = { { KE_KEY, 0x01, {KEY_HELP} }, { KE_KEY, 0x02, {KEY_CONFIG} }, @@ -917,6 +924,15 @@ }, .driver_data = keymap_fs_amilo_d88x0 }, + { + .callback = dmi_matched, + .ident = "Medion WIM2160", + .matches = { + DMI_MATCH(DMI_SYS_VENDOR, "MEDION"), + DMI_MATCH(DMI_PRODUCT_NAME, "WIM2160"), + }, + .driver_data = keymap_medion_wim2160 + }, { NULL, } }; - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
[PATCH] Make wistron-btns recognize special keys on Medion WIM2160 notebooks
The patch below adds support for Medion WIM2160 notebooks to the wistron-btns driver. Signed-off-by: Bernhard Rosenkraenzer [EMAIL PROTECTED] --- linux-2.6.22/drivers/input/misc/wistron_btns.c.ark 2007-09-07 22:47:49.0 + +++ linux-2.6.22/drivers/input/misc/wistron_btns.c 2007-09-07 22:54:19.0 + @@ -536,6 +536,13 @@ { KE_END, FE_MAIL_LED | FE_WIFI_LED | FE_UNTESTED } }; +static struct key_entry keymap_medion_wim2160[] __initdata = { + { KE_WIFI, 0x30 }, + { KE_KEY, 0x11, {KEY_PROG1} }, + { KE_KEY, 0x12, {KEY_PROG2} }, + { KE_END, 0 } +}; + static struct key_entry keymap_wistron_md2900[] __initdata = { { KE_KEY, 0x01, {KEY_HELP} }, { KE_KEY, 0x02, {KEY_CONFIG} }, @@ -917,6 +924,15 @@ }, .driver_data = keymap_fs_amilo_d88x0 }, + { + .callback = dmi_matched, + .ident = Medion WIM2160, + .matches = { + DMI_MATCH(DMI_SYS_VENDOR, MEDION), + DMI_MATCH(DMI_PRODUCT_NAME, WIM2160), + }, + .driver_data = keymap_medion_wim2160 + }, { NULL, } }; - To unsubscribe from this list: send the line unsubscribe linux-kernel in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
[PARTIAL PATCH] snd-hda-intel on Medion WIM2160
Hi, On Medion WIM2160 notebooks (soundchip PCI ID 8086:27d8/17c0:4071), snd-hda-intel loads and everything acts like it's working, but there's no sound. The master volume is muted and there's no way to unmute it. The patch below fixes it, but unfortunately, Medion MD2 uses the same PCI (and subvendor/subdevice) ID -- so the patch quite likely breaks Medion MD2 support. WIM2160's soundchip has revision ID 02 - if MD2 uses something else, maybe that can be used to identify them and do the right thing. (I don't have an MD2...). ttyl bero --- linux-2.6.22/sound/pci/hda/patch_realtek.c.wim2160snd~ 2007-07-09 01:32:17.0 +0200 +++ linux-2.6.22/sound/pci/hda/patch_realtek.c 2007-09-09 20:28:55.0 +0200 @@ -159,6 +159,7 @@ ALC883_ACER, ALC883_MEDION, ALC883_MEDION_MD2, + ALC883_MEDION_WIM2160, ALC883_LAPTOP_EAPD, ALC883_LENOVO_101E_2ch, ALC883_LENOVO_NB0763, @@ -5995,6 +5996,32 @@ { } /* end */ }; +static struct snd_kcontrol_new alc883_medion_wim2160_mixer[] = { + HDA_CODEC_VOLUME("Master Playback Volume", 0x0c, 0x0, HDA_OUTPUT), + HDA_BIND_MUTE("Master Playback Switch", 0x0c, 2, HDA_INPUT), + HDA_CODEC_MUTE("Headphone Playback Switch", 0x14, 0x0, HDA_OUTPUT), + HDA_CODEC_VOLUME("CD Playback Volume", 0x0b, 0x04, HDA_INPUT), + HDA_CODEC_MUTE("CD Playback Switch", 0x0b, 0x04, HDA_INPUT), + HDA_CODEC_VOLUME("Mic Playback Volume", 0x0b, 0x0, HDA_INPUT), + HDA_CODEC_MUTE("Mic Playback Switch", 0x0b, 0x0, HDA_INPUT), + HDA_CODEC_VOLUME("iMic Playback Volume", 0x0b, 0x1, HDA_INPUT), + HDA_CODEC_MUTE("iMic Playback Switch", 0x0b, 0x1, HDA_INPUT), + HDA_CODEC_VOLUME("Capture Volume", 0x08, 0x0, HDA_INPUT), + HDA_CODEC_MUTE("Capture Switch", 0x08, 0x0, HDA_INPUT), + HDA_CODEC_VOLUME_IDX("Capture Volume", 1, 0x09, 0x0, HDA_INPUT), + HDA_CODEC_MUTE_IDX("Capture Switch", 1, 0x09, 0x0, HDA_INPUT), + { + .iface = SNDRV_CTL_ELEM_IFACE_MIXER, + /* .name = "Capture Source", */ + .name = "Input Source", + .count = 2, + .info = alc883_mux_enum_info, + .get = alc883_mux_enum_get, + .put = alc883_mux_enum_put, + }, + { } /* end */ +}; + static struct snd_kcontrol_new alc883_chmode_mixer[] = { { .iface = SNDRV_CTL_ELEM_IFACE_MIXER, @@ -6364,6 +6391,7 @@ [ALC883_ACER] = "acer", [ALC883_MEDION] = "medion", [ALC883_MEDION_MD2] = "medion-md2", + [ALC883_MEDION_WIM2160] = "medion-wim2160", [ALC883_LAPTOP_EAPD]= "laptop-eapd", [ALC883_LENOVO_101E_2ch] = "lenovo-101e", [ALC883_LENOVO_NB0763] = "lenovo-nb0763", @@ -6401,6 +6429,7 @@ SND_PCI_QUIRK(0x17aa, 0x3bfd, "Lenovo NB0763", ALC883_LENOVO_NB0763), SND_PCI_QUIRK(0x17aa, 0x2085, "Lenovo NB0763", ALC883_LENOVO_NB0763), - SND_PCI_QUIRK(0x17c0, 0x4071, "MEDION MD2", ALC883_MEDION_MD2), + //SND_PCI_QUIRK(0x17c0, 0x4071, "MEDION MD2", ALC883_MEDION_MD2), + SND_PCI_QUIRK(0x17c0, 0x4071, "Medion WIM2160", ALC883_MEDION_WIM2160), {} }; @@ -6530,6 +6559,19 @@ .unsol_event = alc883_medion_md2_unsol_event, .init_hook = alc883_medion_md2_automute, }, + [ALC883_MEDION_WIM2160] = { + .mixers = { alc883_medion_wim2160_mixer }, + .init_verbs = { alc883_init_verbs, alc883_lenovo_nb0763_verbs}, + .num_dacs = ARRAY_SIZE(alc883_dac_nids), + .dac_nids = alc883_dac_nids, + .num_adc_nids = ARRAY_SIZE(alc883_adc_nids), + .adc_nids = alc883_adc_nids, + .num_channel_mode = ARRAY_SIZE(alc883_3ST_2ch_modes), + .channel_mode = alc883_3ST_2ch_modes, + .input_mux = _lenovo_nb0763_capture_source, + .unsol_event = alc883_medion_md2_unsol_event, + .init_hook = alc883_medion_md2_automute, + }, [ALC883_LAPTOP_EAPD] = { .mixers = { alc883_base_mixer, alc883_chmode_mixer }, - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
[PARTIAL PATCH] snd-hda-intel on Medion WIM2160
Hi, On Medion WIM2160 notebooks (soundchip PCI ID 8086:27d8/17c0:4071), snd-hda-intel loads and everything acts like it's working, but there's no sound. The master volume is muted and there's no way to unmute it. The patch below fixes it, but unfortunately, Medion MD2 uses the same PCI (and subvendor/subdevice) ID -- so the patch quite likely breaks Medion MD2 support. WIM2160's soundchip has revision ID 02 - if MD2 uses something else, maybe that can be used to identify them and do the right thing. (I don't have an MD2...). ttyl bero --- linux-2.6.22/sound/pci/hda/patch_realtek.c.wim2160snd~ 2007-07-09 01:32:17.0 +0200 +++ linux-2.6.22/sound/pci/hda/patch_realtek.c 2007-09-09 20:28:55.0 +0200 @@ -159,6 +159,7 @@ ALC883_ACER, ALC883_MEDION, ALC883_MEDION_MD2, + ALC883_MEDION_WIM2160, ALC883_LAPTOP_EAPD, ALC883_LENOVO_101E_2ch, ALC883_LENOVO_NB0763, @@ -5995,6 +5996,32 @@ { } /* end */ }; +static struct snd_kcontrol_new alc883_medion_wim2160_mixer[] = { + HDA_CODEC_VOLUME(Master Playback Volume, 0x0c, 0x0, HDA_OUTPUT), + HDA_BIND_MUTE(Master Playback Switch, 0x0c, 2, HDA_INPUT), + HDA_CODEC_MUTE(Headphone Playback Switch, 0x14, 0x0, HDA_OUTPUT), + HDA_CODEC_VOLUME(CD Playback Volume, 0x0b, 0x04, HDA_INPUT), + HDA_CODEC_MUTE(CD Playback Switch, 0x0b, 0x04, HDA_INPUT), + HDA_CODEC_VOLUME(Mic Playback Volume, 0x0b, 0x0, HDA_INPUT), + HDA_CODEC_MUTE(Mic Playback Switch, 0x0b, 0x0, HDA_INPUT), + HDA_CODEC_VOLUME(iMic Playback Volume, 0x0b, 0x1, HDA_INPUT), + HDA_CODEC_MUTE(iMic Playback Switch, 0x0b, 0x1, HDA_INPUT), + HDA_CODEC_VOLUME(Capture Volume, 0x08, 0x0, HDA_INPUT), + HDA_CODEC_MUTE(Capture Switch, 0x08, 0x0, HDA_INPUT), + HDA_CODEC_VOLUME_IDX(Capture Volume, 1, 0x09, 0x0, HDA_INPUT), + HDA_CODEC_MUTE_IDX(Capture Switch, 1, 0x09, 0x0, HDA_INPUT), + { + .iface = SNDRV_CTL_ELEM_IFACE_MIXER, + /* .name = Capture Source, */ + .name = Input Source, + .count = 2, + .info = alc883_mux_enum_info, + .get = alc883_mux_enum_get, + .put = alc883_mux_enum_put, + }, + { } /* end */ +}; + static struct snd_kcontrol_new alc883_chmode_mixer[] = { { .iface = SNDRV_CTL_ELEM_IFACE_MIXER, @@ -6364,6 +6391,7 @@ [ALC883_ACER] = acer, [ALC883_MEDION] = medion, [ALC883_MEDION_MD2] = medion-md2, + [ALC883_MEDION_WIM2160] = medion-wim2160, [ALC883_LAPTOP_EAPD]= laptop-eapd, [ALC883_LENOVO_101E_2ch] = lenovo-101e, [ALC883_LENOVO_NB0763] = lenovo-nb0763, @@ -6401,6 +6429,7 @@ SND_PCI_QUIRK(0x17aa, 0x3bfd, Lenovo NB0763, ALC883_LENOVO_NB0763), SND_PCI_QUIRK(0x17aa, 0x2085, Lenovo NB0763, ALC883_LENOVO_NB0763), - SND_PCI_QUIRK(0x17c0, 0x4071, MEDION MD2, ALC883_MEDION_MD2), + //SND_PCI_QUIRK(0x17c0, 0x4071, MEDION MD2, ALC883_MEDION_MD2), + SND_PCI_QUIRK(0x17c0, 0x4071, Medion WIM2160, ALC883_MEDION_WIM2160), {} }; @@ -6530,6 +6559,19 @@ .unsol_event = alc883_medion_md2_unsol_event, .init_hook = alc883_medion_md2_automute, }, + [ALC883_MEDION_WIM2160] = { + .mixers = { alc883_medion_wim2160_mixer }, + .init_verbs = { alc883_init_verbs, alc883_lenovo_nb0763_verbs}, + .num_dacs = ARRAY_SIZE(alc883_dac_nids), + .dac_nids = alc883_dac_nids, + .num_adc_nids = ARRAY_SIZE(alc883_adc_nids), + .adc_nids = alc883_adc_nids, + .num_channel_mode = ARRAY_SIZE(alc883_3ST_2ch_modes), + .channel_mode = alc883_3ST_2ch_modes, + .input_mux = alc883_lenovo_nb0763_capture_source, + .unsol_event = alc883_medion_md2_unsol_event, + .init_hook = alc883_medion_md2_automute, + }, [ALC883_LAPTOP_EAPD] = { .mixers = { alc883_base_mixer, alc883_chmode_mixer }, - To unsubscribe from this list: send the line unsubscribe linux-kernel in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: [patch-mm 01/25] NOHZ: Fix nox x86 dyntick idle handling
On Saturday 16 June 2007, Thomas Gleixner wrote: > +#if defined(CONFIG_NO_HZ) && !defined(CONFIG_NONIRQ_WAKEUP) > + /* Make sure that timer wheel updates are propagated */ > + if (!in_interrupt() && idle_cpu(smp_processor_id()) && !need_resched()) > + tick_nohz_stop_sched_tick();a > +#endif > preempt_enable_no_resched(); > } The bit above breaks the build for a CONFIG_NO_HZ build without CONFIG_NONIRQ_WAKEUP -- please remove the extra "a" after tick_nohz_stop_sched_tick(); before applying this. Regards, bero - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: [patch-mm 01/25] NOHZ: Fix nox x86 dyntick idle handling
On Saturday 16 June 2007, Thomas Gleixner wrote: +#if defined(CONFIG_NO_HZ) !defined(CONFIG_NONIRQ_WAKEUP) + /* Make sure that timer wheel updates are propagated */ + if (!in_interrupt() idle_cpu(smp_processor_id()) !need_resched()) + tick_nohz_stop_sched_tick();a +#endif preempt_enable_no_resched(); } The bit above breaks the build for a CONFIG_NO_HZ build without CONFIG_NONIRQ_WAKEUP -- please remove the extra a after tick_nohz_stop_sched_tick(); before applying this. Regards, bero - To unsubscribe from this list: send the line unsubscribe linux-kernel in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: 2.6.21-rc5-mm[12]: Oops on bootup in xor_see_2
On Saturday 31 March 2007, Neil Brown wrote: > > > Code: 44 89 74 24 48 0f 20 c6 0f 06 0f 11 04 24 0f 11 4c 24 10 0f 11 54 > > > 24 20 0f > > > 11 5c 24 30 0f 18 82 00 01 00 00 0f 18 82 20 01 00 00 <00> 00 00 > > > 00 00 00 > > > 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 > > > - > > Them bytes that look like '00' are mostly supposed to look like 'F0' - > an x86 'noop'. > > Apparently a bin-utils bug. An alpha of OpenSUSE-10.3 was compiling > kernels like this. I'm told it has been fixed. > > What distro/gcc version/binutils version was this compiled on? You're right -- I'm using the current Ark Linux 2007.1 experimental build (always the latest stuff) - the update to binutils 2.17.50.0.13 broke it, after upgrading binutils to 2.17.50.0.14 everything is working perfectly again. Thanks bero - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: 2.6.21-rc5-mm[12]: Oops on bootup in xor_see_2
On Saturday 31 March 2007, Neil Brown wrote: Code: 44 89 74 24 48 0f 20 c6 0f 06 0f 11 04 24 0f 11 4c 24 10 0f 11 54 24 20 0f 11 5c 24 30 0f 18 82 00 01 00 00 0f 18 82 20 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 - Them bytes that look like '00' are mostly supposed to look like 'F0' - an x86 'noop'. Apparently a bin-utils bug. An alpha of OpenSUSE-10.3 was compiling kernels like this. I'm told it has been fixed. What distro/gcc version/binutils version was this compiled on? You're right -- I'm using the current Ark Linux 2007.1 experimental build (always the latest stuff) - the update to binutils 2.17.50.0.13 broke it, after upgrading binutils to 2.17.50.0.14 everything is working perfectly again. Thanks bero - To unsubscribe from this list: send the line unsubscribe linux-kernel in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
2.6.21-rc5-mm[12]: Oops on bootup in xor_see_2
I'm getting this Oops when booting an 2.6.21-rc5-mm1 or 2.6.21-rc5-mm2 on an Acer Aspire 1501 LMi in 32 bit mode (2.6.21-rc4-mm1 + hotfixes works perfectly): xor: automatically using best checksumming function: pIII_sse BUG: unable to handle kernel NULL pointer dereference at virtual address 0010 printing eip: c02cb724 *pde= Oops: 0002 [#1] last sysfs file: Modules linked in: CPU: 0 EIP: 0060:[] Not tainted VLI EFLAGS: 00010212 (2.6.12-rc5-mm2) EIP is at xor_sse_2+0x34/0x200 eax: 0010 ebx: fffea4df ecx: df8c3000 edx: df8c esi: 8005003b edi: c03ebce0 ebp: df8c3000 esp: dfd01ef8 ds: 007b es: 007b fs: 00d8 gs: ss: 0068 Process swapper (pid: 1, ti=dfd00 task=c146aa10 task:ti=dfd0 Stack: c13f1800 fffea4df c02caa83 c03ebce0 df8c c011bd7b Call Trace: [] do_xor_speed+0x53/0xf0 [] printk+0x1b/0x20 [] calibrate_xor_block+0x2e/0x1b0 [] kernel_init+0x92/0x1c0 [] ret_from_fork+0x6/0x1c [] kernel_init+0x0/0x1c0 [] kernel_init+0x0/0x1c0 [] kernel_thread_helper+0x7/0x10 === Code: 44 89 74 24 48 0f 20 c6 0f 06 0f 11 04 24 0f 11 4c 24 10 0f 11 54 24 20 0f 11 5c 24 30 0f 18 82 00 01 00 00 0f 18 82 20 01 00 00 <00> 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
2.6.21-rc5-mm[12]: Oops on bootup in xor_see_2
I'm getting this Oops when booting an 2.6.21-rc5-mm1 or 2.6.21-rc5-mm2 on an Acer Aspire 1501 LMi in 32 bit mode (2.6.21-rc4-mm1 + hotfixes works perfectly): xor: automatically using best checksumming function: pIII_sse BUG: unable to handle kernel NULL pointer dereference at virtual address 0010 printing eip: c02cb724 *pde= Oops: 0002 [#1] last sysfs file: Modules linked in: CPU: 0 EIP: 0060:[c02cb724] Not tainted VLI EFLAGS: 00010212 (2.6.12-rc5-mm2) EIP is at xor_sse_2+0x34/0x200 eax: 0010 ebx: fffea4df ecx: df8c3000 edx: df8c esi: 8005003b edi: c03ebce0 ebp: df8c3000 esp: dfd01ef8 ds: 007b es: 007b fs: 00d8 gs: ss: 0068 Process swapper (pid: 1, ti=dfd00 task=c146aa10 task:ti=dfd0 Stack: c13f1800 fffea4df c02caa83 c03ebce0 df8c c011bd7b Call Trace: [c02caa83] do_xor_speed+0x53/0xf0 [c011bd7b] printk+0x1b/0x20 [c02cac02] calibrate_xor_block+0x2e/0x1b0 [c03fe7a2] kernel_init+0x92/0x1c0 [c0103dee] ret_from_fork+0x6/0x1c [c03fe710] kernel_init+0x0/0x1c0 [c03fe710] kernel_init+0x0/0x1c0 [c0104937] kernel_thread_helper+0x7/0x10 === Code: 44 89 74 24 48 0f 20 c6 0f 06 0f 11 04 24 0f 11 4c 24 10 0f 11 54 24 20 0f 11 5c 24 30 0f 18 82 00 01 00 00 0f 18 82 20 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 - To unsubscribe from this list: send the line unsubscribe linux-kernel in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
[PATCH] 2.6.20-rc6-mm1: Fix compile if PREEMPT_RCU is set, but RCU_TRACE isn't
2.6.20-rc6-mm1 fails to compile if CONFIG_PREEMPT_RCU is set and CONFIG_RCU_TRACE isn' -- the fix is fairly obvious. Signed-off-by: Bernhard Rosenkraenzer <[EMAIL PROTECTED]> --- --- linux-2.6.19/kernel/rcupreempt.c.ark2007-01-28 23:38:07.0 +0100 +++ linux-2.6.19/kernel/rcupreempt.c2007-01-28 23:38:12.0 +0100 @@ -619,7 +619,7 @@ synchronize_rcu(); } -#ifdef RCU_TRACE +#ifdef CONFIG_RCU_TRACE int *rcupreempt_flipctr(int cpu) { return _cpu(rcu_flipctr, cpu)[0]; - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
[PATCH] 2.6.20-rc6-mm1: Fix compile if PREEMPT_RCU is set, but RCU_TRACE isn't
2.6.20-rc6-mm1 fails to compile if CONFIG_PREEMPT_RCU is set and CONFIG_RCU_TRACE isn' -- the fix is fairly obvious. Signed-off-by: Bernhard Rosenkraenzer [EMAIL PROTECTED] --- --- linux-2.6.19/kernel/rcupreempt.c.ark2007-01-28 23:38:07.0 +0100 +++ linux-2.6.19/kernel/rcupreempt.c2007-01-28 23:38:12.0 +0100 @@ -619,7 +619,7 @@ synchronize_rcu(); } -#ifdef RCU_TRACE +#ifdef CONFIG_RCU_TRACE int *rcupreempt_flipctr(int cpu) { return per_cpu(rcu_flipctr, cpu)[0]; - To unsubscribe from this list: send the line unsubscribe linux-kernel in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: 2.6.11-mm3 - DRM/i915 broken
On Monday 14 March 2005 22:54, Brice Goglin wrote: > DRM/i915 does not work on my Dell Dimension 3000 (i865 chipset). > It's the first -mm kernel I try on this box. I don't whether previous -mm > worked or not. Anyway, 2.6.11 works great. You may want to try compiling without CONFIG_4KSTACKS. I've run into (not 100% reproducable) problems with i855 [and i865 is using a lot of the same code] and 4K stacks before... LLaP bero - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: bug in kernel
On Monday 14 March 2005 15:48, Evgeniy wrote: > #include > #include > main(){ > int err; > err=read(0,NULL,6); > printf("%d %d\n",err,errno); > } On my box (2.6.11), that does exactly what it is supposed to do -- "-1 14" 14 == EFAULT == "Bad Address", which is what NULL is... Btw, printf("%d %d %s\n", err, errno, strerror(errno)); gives you a more readable error, that would immediately show you did get the right error. - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: bug in kernel
On Monday 14 March 2005 15:48, Evgeniy wrote: #include stdio.h #include errno.h main(){ int err; err=read(0,NULL,6); printf(%d %d\n,err,errno); } On my box (2.6.11), that does exactly what it is supposed to do -- -1 14 14 == EFAULT == Bad Address, which is what NULL is... Btw, printf(%d %d %s\n, err, errno, strerror(errno)); gives you a more readable error, that would immediately show you did get the right error. - To unsubscribe from this list: send the line unsubscribe linux-kernel in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: 2.6.11-mm3 - DRM/i915 broken
On Monday 14 March 2005 22:54, Brice Goglin wrote: DRM/i915 does not work on my Dell Dimension 3000 (i865 chipset). It's the first -mm kernel I try on this box. I don't whether previous -mm worked or not. Anyway, 2.6.11 works great. You may want to try compiling without CONFIG_4KSTACKS. I've run into (not 100% reproducable) problems with i855 [and i865 is using a lot of the same code] and 4K stacks before... LLaP bero - To unsubscribe from this list: send the line unsubscribe linux-kernel in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
2.6.11-mm3 breaks compile of drivers/char/esp.c
drivers/char/esp.c: In function 'rs_stop': drivers/char/esp.c:213: error: 'struct esp_struct' has no member named 'lock' drivers/char/esp.c:219: error: 'struct esp_struct' has no member named 'lock' drivers/char/esp.c: In function 'rs_start': drivers/char/esp.c:230: error: 'struct esp_struct' has no member named 'lock' drivers/char/esp.c:236: error: 'struct esp_struct' has no member named 'lock' [...] Obvious "fix" is to revert the changes to esp.c code. - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
2.6.11-mm3 breaks compile of drivers/char/esp.c
drivers/char/esp.c: In function 'rs_stop': drivers/char/esp.c:213: error: 'struct esp_struct' has no member named 'lock' drivers/char/esp.c:219: error: 'struct esp_struct' has no member named 'lock' drivers/char/esp.c: In function 'rs_start': drivers/char/esp.c:230: error: 'struct esp_struct' has no member named 'lock' drivers/char/esp.c:236: error: 'struct esp_struct' has no member named 'lock' [...] Obvious fix is to revert the changes to esp.c code. - To unsubscribe from this list: send the line unsubscribe linux-kernel in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
2.6.11-rc5-mm1: (seemingly non-fatal) NULL pointer dereference on startup
I got this right after the initramfs script was finished and the root filesystem was mounted: Unable to handle kernel NULL pointer dereference at virtual address printing eip: c02f52fa *pde = Oops: 0002 [#1] PREEMPT Modules linked in: CPU:0 EIP:0060:[]Not tainted VLI EFLAGS: 00010246 (2.6.11-0.rc5.1ark) EIP is at __down+0x10a/0x130 eax: ebx: cf63652c ecx: cfd6d020 edx: esi: 0286 edi: cfbcd000 ebp: cfbb3020 esp: cfbcddc0 ds: 007b es: 007b ss: 0068 Process hotplug (pid: 286, threadinfo=cfbcd000 task=cfbb3020) Stack: cf636534 0001 cfbb3020 c0116cb0 00100100 00200200 cfbcde04 9bbf6ac4 d70e78df cf727d14 cfbcdf54 cfbcde6c cffe4140 c02f51c7 0010 cf6364bc c01711ad cf727d14 cfbcde6c c016c7b6 cf6364bc 0001 cf6349fa cfbcde6c Call Trace: [] default_wake_function+0x0/0x20 [] __down_failed+0x7/0xc [] .text.lock.namei+0x8/0x1db [] permission+0xe6/0xf0 [] link_path_walk+0x882/0xf80 [] __up+0x1c/0x20 [] .text.lock.namei+0x22/0x1db [] link_path_walk+0x9c1/0xf80 [] handle_mm_fault+0x1ea/0x540 [] path_lookup+0x83/0x150 [] open_namei+0x8f/0x620 [] filp_open+0x3b/0x70 [] get_unused_fd+0x2c/0xd0 [] sys_open+0x57/0xf0 [] syscall_call+0x7/0xb Code: ff 21 e0 ff 48 14 8b 40 08 a8 08 75 19 c7 45 00 00 00 00 00 83 c4 24 5b5e 5f 5d c3 e8 00 07 00 00 e9 73 ff ff ff e8 f6 06 00 00 <00> 00 00 00 00 00 eb da 0f 0b a4 00 7b 48 30 c0 eb 8e 0f 0b a5 Same box, same kernel, with hotplug disabled boots up fine and produces a similar oops later: Unable to handle kernel NULL pointer dereference at virtual address printing eip: c02f52fa *pde = Oops: 0002 [#1] PREEMPT Modules linked in: usbkbd usbhid snd_cmipci gameport snd_pcm snd_page_alloc snd_opl3_lib snd_timer snd_hwdep snd_mpu401_uart snd_rawmidi snd_seq_device snd soundcore psmouse binfmt_misc lp parport md5 ipv6 8139too mii af_packet 8250 serial_core ide_cd cdrom ohci_hcd usbcore video thermal sony_acpi processor pcc_acpi fan container button battery ac genrtc CPU:0 EIP:0060:[]Not tainted VLI EFLAGS: 00210246 (2.6.11-0.rc5.1ark) EIP is at __down+0x10a/0x130 eax: ebx: c0346644 ecx: cda20540 edx: esi: 00200286 edi: c6b6f000 ebp: c4c68020 esp: c6b6fed4 ds: 007b es: 007b ss: 0068 Process iwconfig (pid: 3080, threadinfo=c6b6f000 task=c4c68020) Stack: c034664c 0001 c4c68020 c0116cb0 00100100 00200200 30746973 0001 cfe71ee0 cfe71ee0 c55006e0 c55006e0 c02f51c7 c4c68020 c02f6c94 c019279f c019288f c55006e0 Call Trace: [] default_wake_function+0x0/0x20 [] __down_failed+0x7/0xc [] .text.lock.kernel_lock+0x28/0x37 [] de_put+0xf/0xa0 [] proc_delete_inode+0x5f/0xc0 [] proc_delete_inode+0x0/0xc0 [] generic_delete_inode+0xb5/0x190 [] iput+0x3c/0x90 [] dput+0x6b/0x2b0 [] __fput+0x11e/0x1c0 [] filp_close+0x52/0xa0 [] sys_close+0x58/0xa0 [] sysenter_past_esp+0x54/0x75 Code: ff 21 e0 ff 48 14 8b 40 08 a8 08 75 19 c7 45 00 00 00 00 00 83 c4 24 5b5e 5f 5d c3 e8 00 07 00 00 e9 73 ff ff ff e8 f6 06 00 00 <00> 00 00 00 00 00 eb da 0f 0b a4 00 7b 48 30 c0 eb 8e 0f 0b a5 - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
2.6.11-rc5-mm1: (seemingly non-fatal) NULL pointer dereference on startup
I got this right after the initramfs script was finished and the root filesystem was mounted: Unable to handle kernel NULL pointer dereference at virtual address printing eip: c02f52fa *pde = Oops: 0002 [#1] PREEMPT Modules linked in: CPU:0 EIP:0060:[c02f52fa]Not tainted VLI EFLAGS: 00010246 (2.6.11-0.rc5.1ark) EIP is at __down+0x10a/0x130 eax: ebx: cf63652c ecx: cfd6d020 edx: esi: 0286 edi: cfbcd000 ebp: cfbb3020 esp: cfbcddc0 ds: 007b es: 007b ss: 0068 Process hotplug (pid: 286, threadinfo=cfbcd000 task=cfbb3020) Stack: cf636534 0001 cfbb3020 c0116cb0 00100100 00200200 cfbcde04 9bbf6ac4 d70e78df cf727d14 cfbcdf54 cfbcde6c cffe4140 c02f51c7 0010 cf6364bc c01711ad cf727d14 cfbcde6c c016c7b6 cf6364bc 0001 cf6349fa cfbcde6c Call Trace: [c0116cb0] default_wake_function+0x0/0x20 [c02f51c7] __down_failed+0x7/0xc [c01711ad] .text.lock.namei+0x8/0x1db [c016c7b6] permission+0xe6/0xf0 [c016d762] link_path_walk+0x882/0xf80 [c010218c] __up+0x1c/0x20 [c01711c7] .text.lock.namei+0x22/0x1db [c016d8a1] link_path_walk+0x9c1/0xf80 [c014e2ea] handle_mm_fault+0x1ea/0x540 [c016dee3] path_lookup+0x83/0x150 [c016e7ef] open_namei+0x8f/0x620 [c015d49b] filp_open+0x3b/0x70 [c015d4fc] get_unused_fd+0x2c/0xd0 [c015d677] sys_open+0x57/0xf0 [c01030d1] syscall_call+0x7/0xb Code: ff 21 e0 ff 48 14 8b 40 08 a8 08 75 19 c7 45 00 00 00 00 00 83 c4 24 5b5e 5f 5d c3 e8 00 07 00 00 e9 73 ff ff ff e8 f6 06 00 00 00 00 00 00 00 00 eb da 0f 0b a4 00 7b 48 30 c0 eb 8e 0f 0b a5 Same box, same kernel, with hotplug disabled boots up fine and produces a similar oops later: Unable to handle kernel NULL pointer dereference at virtual address printing eip: c02f52fa *pde = Oops: 0002 [#1] PREEMPT Modules linked in: usbkbd usbhid snd_cmipci gameport snd_pcm snd_page_alloc snd_opl3_lib snd_timer snd_hwdep snd_mpu401_uart snd_rawmidi snd_seq_device snd soundcore psmouse binfmt_misc lp parport md5 ipv6 8139too mii af_packet 8250 serial_core ide_cd cdrom ohci_hcd usbcore video thermal sony_acpi processor pcc_acpi fan container button battery ac genrtc CPU:0 EIP:0060:[c02f52fa]Not tainted VLI EFLAGS: 00210246 (2.6.11-0.rc5.1ark) EIP is at __down+0x10a/0x130 eax: ebx: c0346644 ecx: cda20540 edx: esi: 00200286 edi: c6b6f000 ebp: c4c68020 esp: c6b6fed4 ds: 007b es: 007b ss: 0068 Process iwconfig (pid: 3080, threadinfo=c6b6f000 task=c4c68020) Stack: c034664c 0001 c4c68020 c0116cb0 00100100 00200200 30746973 0001 cfe71ee0 cfe71ee0 c55006e0 c55006e0 c02f51c7 c4c68020 c02f6c94 c019279f c019288f c55006e0 Call Trace: [c0116cb0] default_wake_function+0x0/0x20 [c02f51c7] __down_failed+0x7/0xc [c02f6c94] .text.lock.kernel_lock+0x28/0x37 [c019279f] de_put+0xf/0xa0 [c019288f] proc_delete_inode+0x5f/0xc0 [c0192830] proc_delete_inode+0x0/0xc0 [c017b225] generic_delete_inode+0xb5/0x190 [c017a27c] iput+0x3c/0x90 [c01774bb] dput+0x6b/0x2b0 [c015f39e] __fput+0x11e/0x1c0 [c015d792] filp_close+0x52/0xa0 [c015d838] sys_close+0x58/0xa0 [c010307b] sysenter_past_esp+0x54/0x75 Code: ff 21 e0 ff 48 14 8b 40 08 a8 08 75 19 c7 45 00 00 00 00 00 83 c4 24 5b5e 5f 5d c3 e8 00 07 00 00 e9 73 ff ff ff e8 f6 06 00 00 00 00 00 00 00 00 eb da 0f 0b a4 00 7b 48 30 c0 eb 8e 0f 0b a5 - To unsubscribe from this list: send the line unsubscribe linux-kernel in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: bug in redhat gcc 2.96
On Wed, 9 May 2001, Dan Kegel wrote: > OH. I kept looking for a package called 'kgcc'. Silly me. > > Guess it's time for a "How to compile a kernel on Red Hat 7.1" FAQ. The answer is that you can safely use gcc 2.96. No need to install kgcc or any other old compiler. LLaP bero - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: bug in redhat gcc 2.96
On Wed, 9 May 2001, Dan Kegel wrote: OH. I kept looking for a package called 'kgcc'. Silly me. Guess it's time for a How to compile a kernel on Red Hat 7.1 FAQ. The answer is that you can safely use gcc 2.96. No need to install kgcc or any other old compiler. LLaP bero - To unsubscribe from this list: send the line unsubscribe linux-kernel in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
[PATCH] MatroxFB support can't be compiled into kernel in 2.4.0-ac11
Subject says it all - works as a module, but can't be compiled into the kernel because of duplicate definitions, caused by several files including matroxfb_base.h which in turn defines global_disp. Patch attached. LLaP bero --- linux/drivers/video/matrox/matroxfb_base.h.bero Fri Jan 26 13:39:54 2001 +++ linux/drivers/video/matrox/matroxfb_base.h Fri Jan 26 13:40:22 2001 @@ -589,7 +589,11 @@ #else extern struct matrox_fb_info matroxfb_global_mxinfo; +#ifdef MODULE struct display global_disp; +#else +extern struct display global_disp; +#endif #define ACCESS_FBINFO(x) (matroxfb_global_mxinfo.x) #define ACCESS_FBINFO2(info, x) (matroxfb_global_mxinfo.x) --- linux/drivers/video/matrox/matroxfb_base.c.bero Fri Jan 26 13:40:40 2001 +++ linux/drivers/video/matrox/matroxfb_base.c Fri Jan 26 13:41:29 2001 @@ -98,6 +98,10 @@ #include #include +#ifndef MODULE +struct display global_disp; +#endif + #ifdef CONFIG_PPC unsigned char nvram_read_byte(int); static int default_vmode = VMODE_NVRAM;
[PATCH] MatroxFB support can't be compiled into kernel in 2.4.0-ac11
Subject says it all - works as a module, but can't be compiled into the kernel because of duplicate definitions, caused by several files including matroxfb_base.h which in turn defines global_disp. Patch attached. LLaP bero --- linux/drivers/video/matrox/matroxfb_base.h.bero Fri Jan 26 13:39:54 2001 +++ linux/drivers/video/matrox/matroxfb_base.h Fri Jan 26 13:40:22 2001 @@ -589,7 +589,11 @@ #else extern struct matrox_fb_info matroxfb_global_mxinfo; +#ifdef MODULE struct display global_disp; +#else +extern struct display global_disp; +#endif #define ACCESS_FBINFO(x) (matroxfb_global_mxinfo.x) #define ACCESS_FBINFO2(info, x) (matroxfb_global_mxinfo.x) --- linux/drivers/video/matrox/matroxfb_base.c.bero Fri Jan 26 13:40:40 2001 +++ linux/drivers/video/matrox/matroxfb_base.c Fri Jan 26 13:41:29 2001 @@ -98,6 +98,10 @@ #include linux/matroxfb.h #include asm/uaccess.h +#ifndef MODULE +struct display global_disp; +#endif + #ifdef CONFIG_PPC unsigned char nvram_read_byte(int); static int default_vmode = VMODE_NVRAM;
Re: `rmdir .` doesn't work in 2.4
On Mon, 8 Jan 2001, Benson Chow wrote: > Not very portable at all... > > hpux = HP/UX 10.2 > > hpux:~/foo$ rmdir . > rmdir: cannot remove .. or . Same on FreeBSD, by the way bash-2.04# uname -a FreeBSD freebsd.redhat.de 5.0-20001112-CURRENT FreeBSD 5.0-20001112-CURRENT #0: Sun Nov 12 14:04:55 GMT 2000 [EMAIL PROTECTED]:/usr/src/sys/compile/BERO i386 bash-2.04# mkdir test bash-2.04# cd test bash-2.04# rmdir . rmdir: .: Invalid argument LLaP bero - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] Please read the FAQ at http://www.tux.org/lkml/
Re: `rmdir .` doesn't work in 2.4
On Mon, 8 Jan 2001, Benson Chow wrote: Not very portable at all... hpux = HP/UX 10.2 hpux:~/foo$ rmdir . rmdir: cannot remove .. or . Same on FreeBSD, by the way bash-2.04# uname -a FreeBSD freebsd.redhat.de 5.0-20001112-CURRENT FreeBSD 5.0-20001112-CURRENT #0: Sun Nov 12 14:04:55 GMT 2000 [EMAIL PROTECTED]:/usr/src/sys/compile/BERO i386 bash-2.04# mkdir test bash-2.04# cd test bash-2.04# rmdir . rmdir: .: Invalid argument LLaP bero - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] Please read the FAQ at http://www.tux.org/lkml/
Re: Signal 11
On Thu, 14 Dec 2000, Linus Torvalds wrote: > If you ask any gcc folks, the main reason they think this was a really > stupid thing to do was exactly that the 2.96 thing is incompatible BOTH > with the 2.95.x release _and_ the upcoming 3.0 release. The same thing is true of *any* gcc release. For example, C++-ABI wise, 2.95.x is incompatible BOTH with egcs 1.1.x _and_ the upcoming 3.0 release. > > Like what - gcc 2.5.8 ? The problem is not in general that the snapshot is any > > buggier than before, but that the bugs are in different places. egcs and gcc295 > > both caused X compile problems too. > > gcc-2.95.2 is at least a real release, from a branch that is actively > maintained Not very actively. Please take the time to compare the activity in gcc_2_95_branch with the patches in the current "2.96" version in rawhide. > - so a 2.95.3 is likely to happen reasonably soon, fixing as > many problems as possible _without_ being incompatible like the snapshots > are. It will be incompatible with any non-2.95.x-version, and I don't think 2.96-68 is any more buggy than the current 2.95 branch. The initial 2.96 "release" did have some odd bugs; all the known ones have been fixed. > Or just stay at 2.91.66 (egcs). This may be good for the kernel, but it's not acceptable for C++. Also, there's no support for some of the platforms we have to work with, such as ia64 and S/390 - using different compilers for different architectures isn't a real solution either. > As to X compile problems - neither egcs nor 2.95.2 appears to have any > trouble with the CVS tree. Neither does 2.96-68. LLaP bero - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] Please read the FAQ at http://www.tux.org/lkml/
Re: Signal 11
On Thu, 14 Dec 2000, Linus Torvalds wrote: If you ask any gcc folks, the main reason they think this was a really stupid thing to do was exactly that the 2.96 thing is incompatible BOTH with the 2.95.x release _and_ the upcoming 3.0 release. The same thing is true of *any* gcc release. For example, C++-ABI wise, 2.95.x is incompatible BOTH with egcs 1.1.x _and_ the upcoming 3.0 release. Like what - gcc 2.5.8 ? The problem is not in general that the snapshot is any buggier than before, but that the bugs are in different places. egcs and gcc295 both caused X compile problems too. gcc-2.95.2 is at least a real release, from a branch that is actively maintained Not very actively. Please take the time to compare the activity in gcc_2_95_branch with the patches in the current "2.96" version in rawhide. - so a 2.95.3 is likely to happen reasonably soon, fixing as many problems as possible _without_ being incompatible like the snapshots are. It will be incompatible with any non-2.95.x-version, and I don't think 2.96-68 is any more buggy than the current 2.95 branch. The initial 2.96 "release" did have some odd bugs; all the known ones have been fixed. Or just stay at 2.91.66 (egcs). This may be good for the kernel, but it's not acceptable for C++. Also, there's no support for some of the platforms we have to work with, such as ia64 and S/390 - using different compilers for different architectures isn't a real solution either. As to X compile problems - neither egcs nor 2.95.2 appears to have any trouble with the CVS tree. Neither does 2.96-68. LLaP bero - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] Please read the FAQ at http://www.tux.org/lkml/
de4x5 hangs in 2.4.0-test11-pre7
The de4x5 driver crashed on me twice today (on a 2 CPU x86 box); The network went down for no visible reason (nothing in syslog or on the console). The network card is a 00:0b.0 Ethernet controller: Digital Equipment Corporation DECchip 21142/43 (rev 41) Subsystem: Compu-Shack: Unknown device 4235) Subsystem: Unknown device 4942:4c4c I/O ports at b800 [size=64] Shutting down networking, removing the module and re-inserting it produces: eth0: DC21143 at 0xd000 (PCI bus 0, device 11), h/w address 00:00:cb:56:48:9b, eth0: Using generic MII device control. If the board doesn't operate, please mail the following dump to the author: MII device address: 5 MII CR: 3000 MII SR: 7809 MII ID0: 15 MII ID1: f430 MII ANA: 1e1 MII ANC: 0 MII 16: 158 MII 17: 608 MII 18: 10 and requires IRQ10 (provided by PCI BIOS). de4x5.c:V0.545 1999/11/28 [EMAIL PROTECTED] eth0: media is 100Mb/s. and eth0: DC21143 at 0xd000 (PCI bus 0, device 11), h/w address 00:00:cb:56:48:9b, eth0: Using generic MII device control. If the board doesn't operate, please mail the following dump to the author: MII device address: 5 MII CR: 3000 MII SR: 7809 MII ID0: 15 MII ID1: f430 MII ANA: 1e1 MII ANC: 0 MII 16: 158 MII 17: 408 MII 18: 10 and requires IRQ17 (provided by PCI BIOS). de4x5.c:V0.545 1999/11/28 [EMAIL PROTECTED] eth0: media is 100Mb/s. LLaP bero - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] Please read the FAQ at http://www.tux.org/lkml/
Re: Defective Red Hat Distribution poorly represents Linux
On Mon, 20 Nov 2000, Tigran Aivazian wrote: > Try Red Hat 7.0 -- it is certainly better. True, no distribution is > perfect but over the years I've developed my own CD image upgrade.iso > which goes directly after installing latest Red Hat distribution. It is > full of things like BRS, dict(1), 'alias md="mkdir -p"' or "set > editing-mode vi" which should be installed by default but for some reason > aren't. Is this thing available for download somewhere? I'd definitely like to see what we should be doing differently. "set editing-mode vi" definitely won't make it into the base distribution though, it's impossible for total newbies to handle (and people who like it usually know how to turn it on themselves). LLaP bero - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] Please read the FAQ at http://www.tux.org/lkml/
Re: Defective Red Hat Distribution poorly represents Linux
Wrong list, but this needs to be set straight. Please send any further problem reports about Red Hat Linux to http://bugzilla.redhat.com/bugzilla > I was terribly wrong. This Red Hat version is irrevocably defective. With the exception that it works for everyone else. > (1) It will not create a bootable disk because it forgets > to load scsi_mod.o, and sd_mod.o before it loads > aic7xxx.o This doesn't happen here. It's supposed to use modprobe, which automatically finds these dependencies. > /etc/conf.modules was found to contain only aic7xxx > as an alias for scsi_hostadapter. How did you install that? >From a relatively fresh 6.2 install (this box doesn't have any SCSI controllers or soundcards): # cat /etc/conf.modules alias eth0 3c90x alias parport_lowlevel parport_pc > (3) It "sort of" worked. However, network daemons kept > dropping core. X would eventually crash, leaving the > terminal in an unusable state, etc. Are you sure the hardware is ok? Applications that usually work well dumping core is usually a sign of bad memory or overheated CPUs. See http://www.bitwizard.nl/sig11/ for more detailed information. It's either this, or you've added customizations that don't work, or you've used a CD someone has tampered with. We know of _many_ servers running Red Hat Linux 6.2 with an uptime ever since they first installed. > (4) It is impossible to build a known working kernel on the > machine because the linker, `ld` crashes: Same as (3). I've been using 6.2 until 7 was released, I usually compile about 25 packages a day, and I've never seen ld crashing. - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] Please read the FAQ at http://www.tux.org/lkml/
Oops in 2.4.0-test11-pre4 (SMP x86)
I just got this on a dual Pentium III-700 system, running 2.4.0-test11-pre4; no special patches applied except for commenting out the printk line generating the tons of "APIC error on CPU0" messages generated on Gigabyte P2D boards: Unexpected IRQ trap at vector 6c kernel BUG at smp.c:281 ksymoops 2.3.4 on i686 2.4.0-test11. Options used -V (default) -k /proc/ksyms (specified) -l /proc/modules (default) -o /lib/modules/2.4.0-test11/ (default) -m /boot/System.map-2.4.0-test11 (specified) invalid operand: CPU:1 EIP:0010:[] Using defaults from ksymoops -t elf32-i386 -a i386 EFLAGS: 00010086 eax: 0019 ebx: 0001 ecx: dbff6000 edx: 0001 esi: c010b130 edi: dbff6000 ebp: e000 esp: dbff7f64 ds: 0018 es: 0018 ss: 0018 Process swapper (pid: 0, stackpage=dbff7000) Stack: c02090c5 c0209225 0119 dbff6000 c010b130 c0206d31 dbff6000 dbff6000 0001 c010b130 dbff6000 e000 c0100018 dbff0018 008d c010b15e 0010 0246 c010af72 0002 Call Trace: [] [] [] [] [] [] [] [] [] Code: 0f 0b 83 c4 0c 8d 34 dd 00 00 00 00 8b 86 40 8d 23 c0 39 05 >>EIP; c0177cdd<= Trace; c02090c5 Trace; c0209225 Trace; c010b130 Trace; c0206d31 Trace; c010b130 Trace; c0100018 Trace; c010b15e Trace; c010af72 Trace; c012693f Code; c0177cdd <_EIP>: Code; c0177cdd<= 0: 0f 0b ud2a <= Code; c0177cdf 2: 83 c4 0c add$0xc,%esp Code; c0177ce2 5: 8d 34 dd 00 00 00 00 lea0x0(,%ebx,8),%esi Code; c0177ce9 c: 8b 86 40 8d 23 c0 mov0xc0238d40(%esi),%eax Code; c0177cef 12: 39 05 00 00 00 00 cmp%eax,0x0 Kernel panic: Attempted to kill the idle task! - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] Please read the FAQ at http://www.tux.org/lkml/
Oops in 2.4.0-test11-pre4 (SMP x86)
I just got this on a dual Pentium III-700 system, running 2.4.0-test11-pre4; no special patches applied except for commenting out the printk line generating the tons of "APIC error on CPU0" messages generated on Gigabyte P2D boards: Unexpected IRQ trap at vector 6c kernel BUG at smp.c:281 ksymoops 2.3.4 on i686 2.4.0-test11. Options used -V (default) -k /proc/ksyms (specified) -l /proc/modules (default) -o /lib/modules/2.4.0-test11/ (default) -m /boot/System.map-2.4.0-test11 (specified) invalid operand: CPU:1 EIP:0010:[c0177cdd] Using defaults from ksymoops -t elf32-i386 -a i386 EFLAGS: 00010086 eax: 0019 ebx: 0001 ecx: dbff6000 edx: 0001 esi: c010b130 edi: dbff6000 ebp: e000 esp: dbff7f64 ds: 0018 es: 0018 ss: 0018 Process swapper (pid: 0, stackpage=dbff7000) Stack: c02090c5 c0209225 0119 dbff6000 c010b130 c0206d31 dbff6000 dbff6000 0001 c010b130 dbff6000 e000 c0100018 dbff0018 008d c010b15e 0010 0246 c010af72 0002 Call Trace: [c02090c5] [c0209225] [c010b130] [c0206d31] [c010b130] [c0100018] [c010b15e] [c010af72] [c012693f] Code: 0f 0b 83 c4 0c 8d 34 dd 00 00 00 00 8b 86 40 8d 23 c0 39 05 EIP; c0177cdd shm_put_super+8d/e0 = Trace; c02090c5 stext_lock+5f4d/5f7c Trace; c0209225 vide+131/13c0 Trace; c010b130 sys_execve+20/60 Trace; c0206d31 stext_lock+3bb9/5f7c Trace; c010b130 sys_execve+20/60 Trace; c0100018 startup_32+18/cc Trace; c010b15e sys_execve+4e/60 Trace; c010af72 cpu_idle+12/70 Trace; c012693f printk+14f/1a0 Code; c0177cdd shm_put_super+8d/e0 _EIP: Code; c0177cdd shm_put_super+8d/e0 = 0: 0f 0b ud2a = Code; c0177cdf shm_put_super+8f/e0 2: 83 c4 0c add$0xc,%esp Code; c0177ce2 shm_put_super+92/e0 5: 8d 34 dd 00 00 00 00 lea0x0(,%ebx,8),%esi Code; c0177ce9 shm_put_super+99/e0 c: 8b 86 40 8d 23 c0 mov0xc0238d40(%esi),%eax Code; c0177cef shm_put_super+9f/e0 12: 39 05 00 00 00 00 cmp%eax,0x0 Kernel panic: Attempted to kill the idle task! - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] Please read the FAQ at http://www.tux.org/lkml/
Re: Defective Red Hat Distribution poorly represents Linux
Wrong list, but this needs to be set straight. Please send any further problem reports about Red Hat Linux to http://bugzilla.redhat.com/bugzilla I was terribly wrong. This Red Hat version is irrevocably defective. With the exception that it works for everyone else. (1) It will not create a bootable disk because it forgets to load scsi_mod.o, and sd_mod.o before it loads aic7xxx.o This doesn't happen here. It's supposed to use modprobe, which automatically finds these dependencies. /etc/conf.modules was found to contain only aic7xxx as an alias for scsi_hostadapter. How did you install that? From a relatively fresh 6.2 install (this box doesn't have any SCSI controllers or soundcards): # cat /etc/conf.modules alias eth0 3c90x alias parport_lowlevel parport_pc (3) It "sort of" worked. However, network daemons kept dropping core. X would eventually crash, leaving the terminal in an unusable state, etc. Are you sure the hardware is ok? Applications that usually work well dumping core is usually a sign of bad memory or overheated CPUs. See http://www.bitwizard.nl/sig11/ for more detailed information. It's either this, or you've added customizations that don't work, or you've used a CD someone has tampered with. We know of _many_ servers running Red Hat Linux 6.2 with an uptime ever since they first installed. (4) It is impossible to build a known working kernel on the machine because the linker, `ld` crashes: Same as (3). I've been using 6.2 until 7 was released, I usually compile about 25 packages a day, and I've never seen ld crashing. - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] Please read the FAQ at http://www.tux.org/lkml/
Re: Defective Red Hat Distribution poorly represents Linux
On Mon, 20 Nov 2000, Tigran Aivazian wrote: Try Red Hat 7.0 -- it is certainly better. True, no distribution is perfect but over the years I've developed my own CD image upgrade.iso which goes directly after installing latest Red Hat distribution. It is full of things like BRS, dict(1), 'alias md="mkdir -p"' or "set editing-mode vi" which should be installed by default but for some reason aren't. Is this thing available for download somewhere? I'd definitely like to see what we should be doing differently. "set editing-mode vi" definitely won't make it into the base distribution though, it's impossible for total newbies to handle (and people who like it usually know how to turn it on themselves). LLaP bero - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] Please read the FAQ at http://www.tux.org/lkml/
de4x5 hangs in 2.4.0-test11-pre7
The de4x5 driver crashed on me twice today (on a 2 CPU x86 box); The network went down for no visible reason (nothing in syslog or on the console). The network card is a 00:0b.0 Ethernet controller: Digital Equipment Corporation DECchip 21142/43 (rev 41) Subsystem: Compu-Shack: Unknown device 4235) Subsystem: Unknown device 4942:4c4c I/O ports at b800 [size=64] Shutting down networking, removing the module and re-inserting it produces: eth0: DC21143 at 0xd000 (PCI bus 0, device 11), h/w address 00:00:cb:56:48:9b, eth0: Using generic MII device control. If the board doesn't operate, please mail the following dump to the author: MII device address: 5 MII CR: 3000 MII SR: 7809 MII ID0: 15 MII ID1: f430 MII ANA: 1e1 MII ANC: 0 MII 16: 158 MII 17: 608 MII 18: 10 and requires IRQ10 (provided by PCI BIOS). de4x5.c:V0.545 1999/11/28 [EMAIL PROTECTED] eth0: media is 100Mb/s. and eth0: DC21143 at 0xd000 (PCI bus 0, device 11), h/w address 00:00:cb:56:48:9b, eth0: Using generic MII device control. If the board doesn't operate, please mail the following dump to the author: MII device address: 5 MII CR: 3000 MII SR: 7809 MII ID0: 15 MII ID1: f430 MII ANA: 1e1 MII ANC: 0 MII 16: 158 MII 17: 408 MII 18: 10 and requires IRQ17 (provided by PCI BIOS). de4x5.c:V0.545 1999/11/28 [EMAIL PROTECTED] eth0: media is 100Mb/s. LLaP bero - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] Please read the FAQ at http://www.tux.org/lkml/
APIC errors w/ 2.4.0-test11-pre2
Hi, after booting a 2.4.0 (any testx-release I've tried so far, including test11-pre2) on a Dual-Pentium III box, the system works ok, but the console gets filled with APIC error on CPU0: 08(08) every couple of seconds, occasionally some lines in between say APIC error on CPU0: 08(02) and APIC error on CPU0: 02(08) This doesn't happen with 2.2.x, but I've seen "unexpected IRQ vector 208 on CPU0" in 2.2.18 occasionally (nowhere near as often, maybe once a month). This is an ASUS P2-D board (Intel 440BX chipset), 2 Pentium III-700 processors. The same kernel works perfectly on a similar (but slower) system, Gigabyte P2B-D board (Intel 440BX chipset), 2 Pentium III-450 processors. LLaP bero - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] Please read the FAQ at http://www.tux.org/lkml/
Re: What is up with Redhat 7.0?
On Sat, 30 Sep 2000, Marc Lehmann wrote: > OTOH, [EMAIL PROTECTED] might get pressed into not doing incompatible > changes, We're doing no such thing. If we did this sort of thing, he would have been pressed into releasing glibc 2.2 in time. [EMAIL PROTECTED] did have some influence on choosing the glibc for 7.0 though, so we're confident no major changes will be necessary. > This might not > mean anything, however, since redhat was most probably ignoring their > own people (e.g. from cygnus) who I really believe didn't support their > decision. The opposite is the case. They didn't want to have to support a dead branch (2.1/2.95). > Redhat might just hack their libc to be redhat-7.0 compatible > later... That's what we'll do if any incompatible changes will be necessary - fortunately glibc supports versioning. LLaP bero - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] Please read the FAQ at http://www.tux.org/lkml/
Re: What is up with Redhat 7.0?
On Fri, 29 Sep 2000, Alec Smith wrote: > Congratulations, you got further than I did. I couldn't even get that > disaster known as RH7.0 to even install. It died with some error about not > being able to detect free disk space after formatting the paritions... Please report this at http://bugzilla.redhat.com/bugzilla, along with details about your hardware - we didn't see this on any of our test machines, and neither did our beta testers. LLaP bero - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] Please read the FAQ at http://www.tux.org/lkml/
Re: What is up with Redhat 7.0?
On Fri, 29 Sep 2000, David M. Rector wrote: > Has anyone tried Redhat 7.0 yet? Sure... > What a mess. Not quite... > 1) It would not compile stock kernels out of the box. (ends at > compress.S) with a fatal error. Either use the kernel compiler (kgcc) or patch the file to be compatible with newer gccs. > 2) Trying to compile the kernel source for 2.2.16 that comes with the > redhat disk (which is very different than the stock 2.2.16) causes my > system come to a screeching halt, no messages, no errors, crashed solid. I can't reproduce this... Do you get any helpful info from SysRq? Anything in syslog? LLaP bero - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] Please read the FAQ at http://www.tux.org/lkml/
Re: What is up with Redhat 7.0?
On Sat, 30 Sep 2000, Marc Lehmann wrote: > Which still makes it an broken, experimental, unreleased and unofficial > compiler, with all the consequences I said. I agree about the "unreleased and unofficial" part, but it's not quite that broken and experimental. Everything that is shipped with Red Hat Linux (the distribution itself, Powertools, the extra CDs for Europe, etc) compiles and works without problems. Some programs needed patches, but that was much like updating from egcs 1.1.2 to gcc 2.95 - stricter checks for clean code. > > possible, but 2.95 isnt binary compatible with anything past or future and > > Not true, Why not? Its C++ part definitely isn't binary compatible with the previous (egcs 1.1.2) version and the future (gcc 2.96) version. The C part is, and so is the C part of the 2.96 compiler in Red Hat Linux 7. (We're still fully LSB compliant.) Also, it's GPL code, so anyone who wants to use it on other distributions can just take libstdc++; people providing binary-only software can include whatever version of libstdc++ they used with the binary and LD_PRELOAD it, or even link it statically. This is much like saying everyone who ships gcc 2.95.x is just trying to make everybody not use Red Hat Linux because we never shipped it, and therefore aren't shipping the libstdc++ used by 2.95.x. > but even if it were, 2.95 is compatible to all other distributions At the moment, yes. Once the next gcc is released, they'll start updating, and 2.95 would be incompatible. We don't break binary compatibility in minor releases (which is why even 6.2 still used egcs 1.1.2 even though gcc 2.95 was better), so we'll stick with a similar compiler throughout the 7.x series. Keeping 2.95 all the time wouldn't do much to increase binary compatibility when everyone else starts updating. > And the next gcc release will be worse, so where is the logic behind > choosing a compiler not compatibly to ANYTHING, except if trying to force > customers to stick to redhat? It was a purely technical decision, made by the compiler engineers at Cygnus and our development. We wanted ia64 support (using 2 different compilers for the 7.0 release, just on different architectures, wouldn't be nice), the new ia32 backend, as well as the more complete C++ implementation and ISO C99 compliance. We don't want to stick with 2.95 for the next year or two, so this was the only way to go. > gcc-2.96 (remember that this thing is not precisely defined as no such > release exists) produces worse code, So the new ia32 backend isn't better than the old one? Why? And if the old one was so much better, why was it replaced? > It would be better than a world where I cannot switch to another > distribution because vendors only support redhat and the binaries will not > run on the "competitors" linux' distros, forcing me to use redhat binutils, > redhat gcc, redhat libc and so on. Either link statically to libstdc++ (c++ is the only part of the compiler which is not fully ABI compatible), or just install the libstdc++-3-libc6.2-2-2.10.0.so file from Red Hat Linux, possibly even to a different directory with LD_PRELOAD or the likes set. This won't break anything. > Well, if redhat really tried to do this they failed miserably. OTOH, maybe > the redhat people doing that were drugged, because every child could > deduce that using an experimental snapshot that is has a non-fixed and > changing ABI will not help binary compatibility. When the decision was made (and I still think it was the right decision - especially because of ia64 compatibility), there was still some hope that gcc 2.96 would be ready by release time. If it's of any help, I can put up all potentially incompatible libraries as a plain tarfile somewhere, along with detailed instructions on how to use them for compatibility on other systems. Breaking compatibility has never been one of our intentions. LLaP bero - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] Please read the FAQ at http://www.tux.org/lkml/
Re: What is up with Redhat 7.0?
On Fri, 29 Sep 2000, David M. Rector wrote: Has anyone tried Redhat 7.0 yet? Sure... What a mess. Not quite... 1) It would not compile stock kernels out of the box. (ends at compress.S) with a fatal error. Either use the kernel compiler (kgcc) or patch the file to be compatible with newer gccs. 2) Trying to compile the kernel source for 2.2.16 that comes with the redhat disk (which is very different than the stock 2.2.16) causes my system come to a screeching halt, no messages, no errors, crashed solid. I can't reproduce this... Do you get any helpful info from SysRq? Anything in syslog? LLaP bero - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] Please read the FAQ at http://www.tux.org/lkml/
Re: What is up with Redhat 7.0?
On Fri, 29 Sep 2000, Alec Smith wrote: Congratulations, you got further than I did. I couldn't even get that disaster known as RH7.0 to even install. It died with some error about not being able to detect free disk space after formatting the paritions... Please report this at http://bugzilla.redhat.com/bugzilla, along with details about your hardware - we didn't see this on any of our test machines, and neither did our beta testers. LLaP bero - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] Please read the FAQ at http://www.tux.org/lkml/