http://rere.qmqm.pl/
Tu znajdziesz łatki do programu linux-2.6 (linux kernel - 2.6 series).
http://www.kernel.org/
Signed-off-by: Michał Mirosław <mirq-linux@rere.qmqm.pl>
Subject: [PATCH 2.6.23.1] Kill STP hello timer if STP is not enabled Quick CPU eater kill. This might be not the best fix possible. Without this patch, hello_timer is firing 250 times/sec and eating about 8% CPU time on my an otherwise idle system (dynticks enabled). 2.6.21.5 was even worse - 20% (HZ=1000). (br->hello_time was supposedly 0 when STP was disabled). Signed-off-by: Michał Mirosław <mirq-linux@rere.qmqm.pl>
Subject: [PATCH 01/02] Wrappers for 32-bit PIO to/from scatterlist Implement helpers for doing PIO transfers to/from scatter-gather buffers using 32-bit accesses. Includes kernel-doc for public interface. Signed-off-by: Michał Mirosław <mirq-linux@rere.qmqm.pl>
Subject: [PATCH 02/02] mmc/sdhci: use PIO - scatterlist wrappers Use sg_dwiter_*_io() in sdhci_*_block_pio(). This assumes that buffer sizes are multiple of 4 when transferring more than one block consecutively. Signed-off-by: Michał Mirosław <mirq-linux@rere.qmqm.pl>
Subject: [PATCH] EDAC: e752x: fix DRAM_NERR read/write race info->dram_nerr is read earlier in this function. If between that read and this update more error bits get set, then they will be cleared without checking. If that was the real intent here then writing 0xFFFF to E752X_DRAM_NERR gives more predictable results. Signed-off-by: Michał Mirosław <mirq-linux@rere.qmqm.pl>
From: =?UTF-8?q?Micha=C5=82=20Miros=C5=82aw?= <mirq-linux@rere.qmqm.pl> Subject: [PATCH v8] Gemini: Gigabit ethernet driver To: Hans Ulli Kroll <ulli.kroll@googlemail.com>, gemini-board-dev@lists.berlios.de Cc: Kevin Wilson <wkevils@gmail.com> In-Reply-To: <20120815113436.GB10075@rere.qmqm.pl> Driver for SL351x (Gemini) SoC ethernet peripheral. Based in part on work by Paulius Zaleckas and GPLd code from Raidsonic and other NAS vendors. Tested on Raidsonic IcyBox 4220-B (dual SATA NAS). Signed-off-by: Michał Mirosław <mirq-linux@rere.qmqm.pl> --- Against: v3.6-rc1+ Note for testers: you may tweak DEFAULT_RX_BUF_ORDER (=log2(buffer size), at most a page - so in range [6..12]) and RX_MAX_ALLOC_ORDER (max allocated rx buffer page order) to find best memory usage/performance settings apart from what is available via ethtool. For TX, there's not much you can do when offloads are disabled. MAC address needs to be set by userspace after parsing VCTL flash partition (mtd4 on my box). Later TODO: - netpoll (netconsole) - parse MAC address from flash settings and pass it through platform data - move TX completion to NAPI poll - implement rx copybreak Changes from v7: - rebase to v3.6-rc1+ - add MAINTAINERS entry Changes from v6: - Kconfig: build-test the driver on other platforms - fix RX multicast filter - fix DMA API abuse for RX buffers Changes from v5: - merge arch setup code into the patch - move platform data include to include/linux/platform_data/gemini_gmac.h - use new hw_features instead of ethtool_ops for offload setting - add some #ifdefs for build testing on other arches - a bit of cleanups Changes from v4: - rebased on upcoming 2.6.38 (removal of page_to_dma() and per-txq stats) - removed setting last_rx and trans_start as that's handled by net core - changed __raw_read/writel() to read/writel() - added setting of AHB_WEIGHT register (didn't improve anything, I'm afraid) - fixed DMA unmapping bug - added limit of packet size for TX offload (HW checks only 13 bits of mtu_size field) - reduced RX_MAX_ALLOC_ORDER as it caused a lot of order 4 allocation failures under load - cleanups Changes from v3: - fixed remaining tx_queue_len misuse bugs - bulk RX DMA page map/unmap - whitespace changes to make checkpatch happier (please ignore remaining complaints - long lines in .c and typedefs/whitespace/long lines in .h) Changes from v2: - converted to page buffers and napi_gro_frags() - later IRQ acking and NAPI exits - larger rings by default - tx-interrupt coalescing - MTU changing - jumbo frames support - ringparam and coalesce settings via ethtool - more fixes/cleanups Changes from v1: - fixed stats (now using u64_stats_sync; no-op on UP anyway) - pre-load mdio-gpio if built as module - disable TX checksum offload by default (unreliable HW) - convert to NAPI+GRO (netperf TCP STREAM RX test: before: 156mbit/s, now: 185mbit/s)
Date: Wed, 9 Dec 2009 08:34:12 +0100 Subject: [PATCH 0/7] mtrr: cleanups and CONFIG_EMBEDDED usage MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Cc: Thomas Gleixner <tglx@linutronix.de>, Ingo Molnar <mingo@redhat.com>, "H. Peter Anvin" <hpa@zytor.com>, x86@kernel.org A bit of code-cutting in MTRR handling for users of CONFIG_EMBEDDED. Patches generated on top of current linux-2.6.git (commit 2b876f9...), tested on 2.6.32 (Pentium4 machine only, all patches at once). size arch/x86/kernel/cpu/mtrr/built-in.o (stats based on 2.6.32) text data bss dec hex 13934 5340 8476 27750 6c66 before 13931 5216 8436 27583 6bbf after (PROCESSOR_SELECT=n) 11788 5188 8356 25332 62f4 after (CPU_SUP_INTEL=y only) Best Regards, Michał Mirosław Michał Mirosław (7): x86/mtrr: Remove mtrr_ops[] mtrr: constify struct mtrr_ops mtrr: Remove use_intel() x86/Kconfig.cpu: add CPU_SUP_AMD_32 and CPU_SUP_CENTAUR_32 mtrr: use CONFIG_CPU_SUP_* to select MTRR implementations mtrr: introduce HAVE_MTRR_VENDOR_SPECIFIC mtrr: mark mtrr_if as __read_mostly arch/x86/Kconfig | 3 ++ arch/x86/Kconfig.cpu | 9 ++++++ arch/x86/kernel/cpu/mtrr/Makefile | 4 ++- arch/x86/kernel/cpu/mtrr/amd.c | 7 +---- arch/x86/kernel/cpu/mtrr/centaur.c | 7 +---- arch/x86/kernel/cpu/mtrr/cyrix.c | 7 +---- arch/x86/kernel/cpu/mtrr/generic.c | 3 +- arch/x86/kernel/cpu/mtrr/main.c | 54 ++++++++++++----------------------- arch/x86/kernel/cpu/mtrr/mtrr.h | 23 +++++++++++---- arch/x86/kernel/cpu/mtrr/state.c | 10 +++--- 10 files changed, 60 insertions(+), 67 deletions(-)
Date: Wed, 9 Dec 2009 05:51:56 +0100 Subject: [PATCH 1/7] x86/mtrr: Remove mtrr_ops[] MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Cc: Thomas Gleixner <tglx@linutronix.de>, Ingo Molnar <mingo@redhat.com>, "H. Peter Anvin" <hpa@zytor.com>, x86@kernel.org Remove mtrr_ops[] - it's contents are always the same and all this registration thing only adds useless code. Signed-off-by: Michał Mirosław <mirq-linux@rere.qmqm.pl> --- arch/x86/kernel/cpu/mtrr/amd.c | 7 +------ arch/x86/kernel/cpu/mtrr/centaur.c | 7 +------ arch/x86/kernel/cpu/mtrr/cyrix.c | 7 +------ arch/x86/kernel/cpu/mtrr/main.c | 32 +++++--------------------------- arch/x86/kernel/cpu/mtrr/mtrr.h | 7 +++++-- 5 files changed, 13 insertions(+), 47 deletions(-)
Date: Wed, 9 Dec 2009 05:57:29 +0100 Subject: [PATCH 2/7] mtrr: constify struct mtrr_ops MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Cc: Thomas Gleixner <tglx@linutronix.de>, Ingo Molnar <mingo@redhat.com>, "H. Peter Anvin" <hpa@zytor.com>, x86@kernel.org Signed-off-by: Michał Mirosław <mirq-linux@rere.qmqm.pl> --- arch/x86/kernel/cpu/mtrr/amd.c | 2 +- arch/x86/kernel/cpu/mtrr/centaur.c | 2 +- arch/x86/kernel/cpu/mtrr/cyrix.c | 2 +- arch/x86/kernel/cpu/mtrr/generic.c | 2 +- arch/x86/kernel/cpu/mtrr/main.c | 2 +- arch/x86/kernel/cpu/mtrr/mtrr.h | 10 +++++----- 6 files changed, 10 insertions(+), 10 deletions(-)
Date: Wed, 9 Dec 2009 06:00:33 +0100 Subject: [PATCH 3/7] mtrr: Remove use_intel() MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Cc: Thomas Gleixner <tglx@linutronix.de>, Ingo Molnar <mingo@redhat.com>, "H. Peter Anvin" <hpa@zytor.com>, x86@kernel.org Remove use_intel() and use is_cpu(INTEL) instead. .use_intel_if is duplicating information already found in .vendor, as the only combinations used are: generic: use_intel_if == 1, vendor == INTEL amd/cyrix/centaur: use_intel_if == 0, vendor != INTEL Signed-off-by: Michał Mirosław <mirq-linux@rere.qmqm.pl> --- arch/x86/kernel/cpu/mtrr/generic.c | 1 - arch/x86/kernel/cpu/mtrr/main.c | 14 +++++++------- arch/x86/kernel/cpu/mtrr/mtrr.h | 2 -- arch/x86/kernel/cpu/mtrr/state.c | 10 +++++----- 4 files changed, 12 insertions(+), 15 deletions(-)
Date: Wed, 9 Dec 2009 06:04:39 +0100 Subject: [PATCH 4/7] x86/Kconfig.cpu: add CPU_SUP_AMD_32 and CPU_SUP_CENTAUR_32 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Cc: Thomas Gleixner <tglx@linutronix.de>, Ingo Molnar <mingo@redhat.com>, "H. Peter Anvin" <hpa@zytor.com>, x86@kernel.org Add CPU_SUP_AMD_32 and CPU_SUP_CENTAUR_32. Used later in selecting possible MTRR implementations. Signed-off-by: Michał Mirosław <mirq-linux@rere.qmqm.pl> --- arch/x86/Kconfig.cpu | 6 ++++++ 1 files changed, 6 insertions(+), 0 deletions(-)
Date: Wed, 9 Dec 2009 06:10:43 +0100 Subject: [PATCH 5/7] mtrr: use CONFIG_CPU_SUP_* to select MTRR implementations MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Cc: Thomas Gleixner <tglx@linutronix.de>, Ingo Molnar <mingo@redhat.com>, "H. Peter Anvin" <hpa@zytor.com>, x86@kernel.org Use CONFIG_CPU_SUP_* to select MTRR implementations. We let gcc optimize out the empty switch statement if only generic implementation is wanted. Signed-off-by: Michał Mirosław <mirq-linux@rere.qmqm.pl> --- arch/x86/kernel/cpu/mtrr/Makefile | 4 +++- arch/x86/kernel/cpu/mtrr/main.c | 10 ++++++++-- 2 files changed, 11 insertions(+), 3 deletions(-)
Date: Wed, 9 Dec 2009 06:17:52 +0100 Subject: [PATCH 6/7] mtrr: introduce HAVE_MTRR_VENDOR_SPECIFIC MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Cc: Thomas Gleixner <tglx@linutronix.de>, Ingo Molnar <mingo@redhat.com>, "H. Peter Anvin" <hpa@zytor.com>, x86@kernel.org In case that only generic MTRR implementation is needed, tell gcc to optimize out tests for other implementations. Also remove .vendor from mtrr_ops in this configuration. Signed-off-by: Michał Mirosław <mirq-linux@rere.qmqm.pl> --- arch/x86/Kconfig | 3 +++ arch/x86/Kconfig.cpu | 3 +++ arch/x86/kernel/cpu/mtrr/mtrr.h | 12 +++++++++++- 3 files changed, 17 insertions(+), 1 deletions(-)
Date: Wed, 9 Dec 2009 08:32:36 +0100 Subject: [PATCH 7/7] mtrr: mark mtrr_if as __read_mostly MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Cc: Thomas Gleixner <tglx@linutronix.de>, Ingo Molnar <mingo@redhat.com>, "H. Peter Anvin" <hpa@zytor.com>, x86@kernel.org Signed-off-by: Michał Mirosław <mirq-linux@rere.qmqm.pl> --- arch/x86/kernel/cpu/mtrr/main.c | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-)
Subject: RFC: pci_write_bits*() convenience functions There are a lot of code fragments in kernel looking like this: u16 buf; pci_read_config_word(pdev, offset, &buf); buf &= ~mask; buf |= value; pci_write_config_word(pdev, offset, buf); In in-kernel EDAC sources I found an implementation of pci_write_bits*() that allows above 5 lines to be easily converted to: pci_write_bits16(pdev, offset, value, mask); Since this sequence is common while initializing a device or sometimes during its normal operation I even wrote similar wrappers (see: driver for CB710 memory card reader, posted about a month ago to LKML and MMC mailinglists). I guess that there are more people hiding that could use this. This patch moves functions mentioned above to global include: linux/pci.h. I verified that no users in EDAC code rely on the mask != (u16)(-1) test and I think that plain pci_write_config_X() is better in cases where this test is known to evaluate to false. What's interesting, there are 2039 lines where pci_read_config_*() is used and in only about 161 the return value is checked (as of current linux-2.6.git tree: commit 3d44cc3e01..., quick grep test). Best Regards, Michał Mirosław (Please Cc: me on reply to list.)
Subject: RFC: pci_write_bits*() convenience functions v.2 This is a version of the pci_write_bits*() with error checking included. I don't know if you like the #defined function generator, but at least this avoids copy-and-paste errors in case this needs some changes in the future. Signed-off-by: Michał Mirosław <mirq-linux@rere.qmqm.pl>
Subject: [PATCH] Make errors printed from scsi_sysfs_add_sdev() mean something. This is an updated version of patch I wrote long time ago, but looks like it didn't get far. Patch against linux-2.6.git. And yes - printk() lines are longer than 80 chars - it shouldn't matter here (grep is happy ;). Signed-off-by: Michał Mirosław <mirq-linux@rere.qmqm.pl>
Trivial comment fix for include/linux/serial_reg.h Signed-off-by: Michał Mirosław <mirq-linux@rere.qmqm.pl>
sparc64: Fix wrong table entry range #defines. Signed-off-by: Michał Mirosław <mirq-linux@rere.qmqm.pl>
Copyright © 2005-2017 by Michał Mirosław; kontakt: webmajster@rere.qmqm.pl