Andrew Morton [Tue, 30 Dec 2003 07:48:44 +0000 (23:48 -0800)]
[PATCH] shrink_slab acounts for seeks incorrectly
wli points out that shrink_slab inverts the sense of shrinker->seeks: those
caches which require more seeks to reestablish an object are shrunk harder.
That's wrong - they should be shrunk less.
So fix that up, but scaling the result so that the patch is actually a no-op
at this time, because all caches use DEFAULT_SEEKS (2).
Andrew Morton [Tue, 30 Dec 2003 07:48:27 +0000 (23:48 -0800)]
[PATCH] fix pci_update_resource() / IORESOURCE_UNSET on PPC
From: Harald Welte <laforge@gnumonks.org>
[disclaimer: This was posted on the linuxppc list before, BenH asked me=20
to re-post it to lkml]
The prism54 (http://prism54.org) driver for my cardbus adapter works
with 2.4.x, but not 2.6.x on a Titanium G4 Powerbook IV.
On 2.6.x the error message was
PCI:0001:02:00.0 Resource 0 [00000000-00001fff] is unassigned
After investigating differences in the PCI code of 2.4.x and 2.6.x, i
noticed that 2.4.x/arc/ppc/kernel/pci.c:pcibios_update_resource()
contained a couple of lines that unset the IORESOURCE_UNSET bitflag.
In 2.6.x, this is handled by the generic PCI core in
drivers/pci/setup-res.c:pci_update_resource() code. However, the code
is missing the 'res->flags &=3D ~IORESOURCE_UNSET' part.
The below fix re-adds that section from 2.4.x.=20
I'm not sure wether this belongs into the arch-independent PCI api.
Anyway, on PPC it seems to be needed for certain cardbus devices.
Andrew Morton [Tue, 30 Dec 2003 07:48:19 +0000 (23:48 -0800)]
[PATCH] (workaround): avoid raid1 crash during resync with qlogic controllers
qlogic's 16k maximum I/O size bites again. Neil says:
The problems we fixed were all to do with normal IO. This one is resync
IO.
The problem here is that raid1 always does resync in RESYNC_BLOCK_SIZE
(=64k) IOs and if the device doesn't cope - tough.
The simple fix is to #define RESYNC_BLOCK_SIZE to PAGE_SIZE in md/raid1.c
The better fix is to rewrite the raid1 resync code to use bio_add_page.
This means we have to build the read request and the write requests at the
same time, and then when a bio_add_page fails, we back-out the last page
from the bios that have one too many, and then do the read followed by the
writes.
I have some code the nearly does this, but I haven't got it actually
working yet and I am on leave until mid January.
Andrew Morton [Tue, 30 Dec 2003 07:48:11 +0000 (23:48 -0800)]
[PATCH] Remove iso9660 check for sbsector < 660Mb
From: Jon Burgess <mplayer@jburgess.uklinux.net>
The iso9660 filesystem code checks that the "sbsector" option is
positioned within the first 660Mb of the disk.
Today the iso9660 filesystem is used on DVD's which are much bigger than
660Mb and this check prevents the sbsector option being used to specify
the location of the superblock of multisession DVD's.
With this check removed I can mount the second session on a DVD-R by
specifying the sbsector, even though the firmware on that drive returns
bogus data for the TOC.
If an invalid large sector number is entered then a "request beyond end
of device" error is reported elsewhere in the block code, but appears to
do no damage.
Andrew Morton [Tue, 30 Dec 2003 07:47:37 +0000 (23:47 -0800)]
[PATCH] hugepage pagetable freeing fix
From: "Seth, Rohit" <rohit.seth@intel.com>
We recently covered a bug in mm/mmap.c on IA-64. While unmapping a address
space, unmap_region calls free_pgtables to possibly free the pages that are
used for page tables. Currently no distinction is made between freeing a
region that is mapped by normal pages vs the pages that are mapped by
hugepages. Architecture specific code needs to handle cases where PTEs
corresponding to a region that is mapped by hugepages is properly getting
unmapped. Attached please find a patch that makes the required changes in
generic part of kernel. We will need to send a separate IA-64 patch to use
this new semantics. Currently, so not to disturb the PPC (as that is the
only arch that had ARCH_HAS_HUGEPAGE_ONLY_RANGE defined) we are mapping back
the definition of new function hugetlb_free_pgtables to free_pgtables.
"Incorrect number of segments after building list" message.
The macro __BVEC_START assumes a bi_idx of zero when the dm code can
submit a bio with a non-zero bi_idx.
The code has been tested on an 8 way / 8gb OSDL STP machine with a 197G
lvm volume running dbt2 test.
Andrew Morton [Tue, 30 Dec 2003 07:46:56 +0000 (23:46 -0800)]
[PATCH] change two annoying messages from framebuffer drivers
From: Michael Hunold <hunold@convergence.de>
the Linux-on-a-CD system Knoppix has nearly all framebuffer drivers for
2.4.23 compiled in. Additionally, it surpresses most kernel messages by
lowering the kernel log level.
Two framebuffer drivers (clgenfb.c and hgafb.c), however, use KERN_ERR
to say that their particular card has *not* been found which is very
annoying.
Especially the clgenfb.c driver simply says on bootup:
> Couldn't find PCI device
which can really confuse newbie users.
I've already send a patch that fixes this for 2.4 -- Marcelo and Geert
Uytterhoeven have already ack'ed it.
The same change should be done for 2.6, too IMHO.
The appended patch replaces two KERN_ERR with KERN_INFO and additionally
makes the cirrusfb.c message more descriptive.
Andrew Morton [Tue, 30 Dec 2003 07:46:31 +0000 (23:46 -0800)]
[PATCH] Fix memleak on execve failure
From: IWAMOTO Toshihiro <iwamoto@valinux.co.jp>
I found linux-2.6.0-test11 leaks memory when execve fails. I've also
checked the bitkeeper tree and the problem seems to be unchanged.
The attached patch is a partial backout of bitkeeper rev. 1.87 of
fs/exec.c. I guess the original change was a simple mistake.
(free_arg_pages() is a NOP when CONFIG_MMU is defined).
Andrew Morton [Tue, 30 Dec 2003 07:46:23 +0000 (23:46 -0800)]
[PATCH] lib/inflate.c fix
From: "H. Peter Anvin" <hpa@zytor.com>
This patch fixes the "non-terminating inflate" problem that Russell King
complained about on LKML earlier today.
I chose to use "goto" much like zlib does, in order to not require
setjmp/longjmp inside the kernel. It's a bit ugly, but it also lets each
function chose how it needs to be terminated on error, which is a good
thing.
- uses just printk() instead of unneeded fat_fs_panic()
- removes the debug printk
- less verbose on error path
- uses correct a error number on error path
Andrew Morton [Tue, 30 Dec 2003 07:45:07 +0000 (23:45 -0800)]
[PATCH] FAT: Fix the tailing dots on the utf8 path (2/10)
From: OGAWA Hirofumi <hirofumi@mail.parknet.co.jp>
Michal Rokos <m.rokos@sh.cvut.cz>
The problem is: even if vfat_striptail_len() counts len of name without
trailing dots and sets len to the correct value, utf8_mbstowcs() doesn't
care about len and takes whole name. So dirs and files with dots can be
created on vfat fs.
Andrew Morton [Tue, 30 Dec 2003 07:44:33 +0000 (23:44 -0800)]
[PATCH] Put fixmaps into /proc/pid/maps via a pseudo-vma
From: David Mosberger <davidm@napali.hpl.hp.com>
This patch makes /proc/PID/maps report the range from FIXADDR_USER_START to
FIXADDR_USER_END as a final pseudo-vma. This is consistent with the notion
that reading /proc/PID/maps tells you about every page containing data that
the process can in fact access, and with things such as ptrace allowing
access to this memory. Without this, userland tools that want to look at all
of a process's accessible pages need special-case knowledge about things such
as the vsyscall DSO page. With this change, existing code that iterates over
the /proc/PID/maps lines will cover those pages like any other. For example,
this lets gdb's "gcore" command synthesize a core file from a live process
that contains the vsyscall DSO page as a real core dump would, using its
existing generic iterator code and no new special cases.
Andrew Morton [Tue, 30 Dec 2003 07:44:09 +0000 (23:44 -0800)]
[PATCH] Fix via686a/KX133 TSC failure
From: Chris Bajumpaa <cbajumpa@or8.net>
This patch fixes a problem with the TSC failing on via686a/KX133
motherboards either reverting to using the pit or deadlocking the machine
alltogether under heavy load. (Specifically Abit KA7/KA7-100).
Message from the log:
Dec 18 18:20:37 grinder kernel: Losing too many ticks!
Dec 18 18:20:37 grinder kernel: TSC cannot be used as a timesource. (Are
you running with SpeedStep?)
Dec 18 18:20:37 grinder kernel: Falling back to a sane timesource.
The snippet of code that was missing from timer_tsc.c comes from
timer_pit.c.
Andrew Morton [Tue, 30 Dec 2003 07:44:00 +0000 (23:44 -0800)]
[PATCH] make gconfig warning removal
From: "Maciej Soltysiak" <solt@dns.toxicfilms.tv>
make gconfig causes this:
scripts/kconfig/gconf.c: In function `on_treeview1_button_press_event':
scripts/kconfig/gconf.c:1175: warning: passing arg 1 of
`gtk_widget_grab_focus' from incompatible pointer type
The fatfs was ignoring the I/O error on two points. If I/O error
happen while checking a free block entries, this checks the all
entries, and reports an I/O error on each entry.
This problem became cause of the disk full by syslogd.
Andrew Morton [Tue, 30 Dec 2003 07:43:36 +0000 (23:43 -0800)]
[PATCH] Fix Summit EBDA parsing
From: Matthew Dobson <colpatch@us.ibm.com>
The code to parse the EBDA (Extended BIOS Data Area) for Summit boxen is
broken because it does not handle Lookout boxen (external boxes full of
additional PCI slots). This patch cleans up some ugliness in
arch/i386/kernel/summit.c as well as fixing the code to handle Lookout boxen
and various other configurations of PCI buses. Without this, Summit PCI bus
to node mappings are totally hosed with Lookout boxen attatched. This patch
depends upon the GENERICARCH fix.
Andrew Morton [Tue, 30 Dec 2003 07:43:28 +0000 (23:43 -0800)]
[PATCH] Fix X86_GENERICARCH & NUMA compile error
From: Matthew Dobson <colpatch@us.ibm.com>
Trying to build a kernel with both CONFIG_X86_GENERICARCH and
CONFIG_NUMA on results in a compile error. This patch fixes that build
problem by adding a config option for NUMA on Summit which is used to
correctly conditionally compile arch/i386/kernel/summit.c and properly
ifdef the function calls used in generic code. Please apply.
Running make -j24 bzImage
arch/i386/mach-generic/built-in.o: In function `mps_oem_check':
arch/i386/mach-generic/built-in.o(.text+0x3ce): undefined reference to
`setup_summit'
arch/i386/mach-generic/built-in.o: In function `acpi_madt_oem_check':
arch/i386/mach-generic/built-in.o(.text+0x468): undefined reference to
`setup_summit'
make: *** [.tmp_vmlinux1] Error 1
Andrew Morton [Tue, 30 Dec 2003 07:43:19 +0000 (23:43 -0800)]
[PATCH] isdn/eicon/eicon_mod.c build fix
From: Adrian Bunk <bunk@fs.tum.de>
CC [M] drivers/isdn/eicon/eicon_mod.o
drivers/isdn/eicon/eicon_mod.c: In function `eicon_exit':
drivers/isdn/eicon/eicon_mod.c:1362: warning: implicit declaration of
function `mca_mark_as_unused'
Andrew Morton [Tue, 30 Dec 2003 07:43:11 +0000 (23:43 -0800)]
[PATCH] Add signal state inheritance control to SELinux
From: Stephen Smalley <sds@epoch.ncsc.mil>
This patch against 2.6.0 adds a control to the SELinux module over the
inheritance of signal-related state upon security context transitions in
order to protect the new security context. If the permission is not
granted by the policy for a given pair of contexts, then transitions
between them will clear itimers, flush all pending signals, forcibly
flush signal handlers, and unblock all signals. Roland McGrath provided
input and feedback on the patch.
Please apply, or let James Morris and me know if you'd like this to be
resubmitted later. Thanks.
Andrew Morton [Tue, 30 Dec 2003 07:43:03 +0000 (23:43 -0800)]
[PATCH] Remove use of nameidata by selinux_inode_permission
From: Stephen Smalley <sds@epoch.ncsc.mil>
This patch removes the use of nameidata by selinux_inode_permission, as this
appears to be unsafe in certain cases (e.g. path_walk call from
rpc_lookup_parent), leading to an Oops if d_path is subsequently called by
avc_audit on the (mnt,dentry) pair to generate a pathname for an audit
message.
The change does not affect the ability of SELinux to perform its permission
check (which only requires the inode), only the set of information that is
available for audit messages. We'll investigate better approaches for the
SELinux audit generation in the future.
Andrew Morton [Tue, 30 Dec 2003 07:42:55 +0000 (23:42 -0800)]
[PATCH] Reduce SELinux check on KDSKBENT/SENT ioctls
From: Stephen Smalley <sds@epoch.ncsc.mil>
This patch reduces the full capability check in the SELinux module for the
KDSKBENT/SENT ioctls to only check the corresponding SELinux permission,
avoiding a change to the Linux permissions model for these operations.
Andrew Morton [Tue, 30 Dec 2003 07:42:46 +0000 (23:42 -0800)]
[PATCH] Fix SELinux build for "make O=..."
From: Stephen Smalley <sds@epoch.ncsc.mil>
This patch fixes the SELinux build for "make O=..." by removing the use of
-include and eliminating the global.h file, adding appropriate individual
#include's to the various files in the security/selinux/ss subdirectory.
The compilation error was reported by Sam Ravnborg and again by Adrian
Bunk.
Andrew Morton [Tue, 30 Dec 2003 07:42:38 +0000 (23:42 -0800)]
[PATCH] dvb Kconfig fix
From: Michael Hunold <hunold@convergence.de>
> Thomas Meyer <tantalus@gmx.ch> wrote:
>>there seems to be a problem with a DVB driver.
>>Dec 29 17:15:30 jupiter kernel: dvb_ttpci: Unknown symbol request_firmware
The dvb-ttpci/av7110 driver needs the firmware_class stuff to work now.
IMHO the appropriate fix is to let the driver automatically select the
firmware loader via Kconfig's SELECT facility.
The dvb-ttusb-dec driver should behave like this, too. (It currently
depends on the FW_LOADER, which is not "the right thing" (tm))
Andrew Morton [Tue, 30 Dec 2003 07:41:48 +0000 (23:41 -0800)]
[PATCH] dvb: Update av7110 driver
From: Michael Hunold <hunold@linuxtv.org>
av7110: follow changes in saa7146_core regarding saa7146_set_gpio() and
saa7146_wait_for_debi_done() function
av7110: increased I2C speed to 275 kHz, follow introduction of
SAA7146_I2C_SHORT_DELAY flag to speed up I2C access
budget: make budget-ci use this gpio function and the new wait_...()
function, this fixes
BORROWED_FROM_AV7110_H_BUT_REALLY_BELONGS_IN_SAA7146_DEFS_H remark
budget: use alternative values for BRS setup on budget cards (by Rober
Schlabbach)
budget: remote control table should be filled completely. at least populate
the entries that come with the standard Hauppauge RC (Jamie Honan)
ttpci-eeprom: add proper MODULE_LICENSE("GPL") so we don't taint the kernel
anymore
Andrew Morton [Tue, 30 Dec 2003 07:41:39 +0000 (23:41 -0800)]
[PATCH] dvb: Update DVB frontend drivers
From: Michael Hunold <hunold@linuxtv.org>
alps_tdmb7, cx24110: use correct delay values, don't divide by HZ when using
dvb_delay(), found by Artur Skawina
alps_tdmb7: set FE_HAS_LOCK only when all low-order bits are valid
mt312: patch for the mt312 module, targeting the VP310: reduced heat,
implement "auto" inversion mode, remove debugging verbosity, add module
parameter for debugging (Augusto Cardoso)
nxt6000: code review and beautification, use per i2c-adapater void pointer
for private data in nxt_attach() / nxt_detach, fix frontend private data
handling. patch by Mikael Rosbacke <rosbacke at nada.kth.se>
sp887x: firmware loader implementation contributed by Martin Stubbs, C99
comile fixes by Wolfgang Thiel
stv0299: Added new module parameter to choose between BER and UCBLOCKs error
monitoring since the STV0299 can't do both at once, Added modifications based
on the recommended settings in the SU1278 datasheet.
tda1004x: remove FE_CAN_INVERSION_AUTO
ves1820:completed nokia board support, increased some delays to get constant
results,set default pwm value to 0x48 for boards which don't have an eeprom
(by Andreas Oberritter)
Andrew Morton [Tue, 30 Dec 2003 07:41:22 +0000 (23:41 -0800)]
[PATCH] dvb: Update Skystar2 DVB driver
From: Michael Hunold <hunold@linuxtv.org>
Complete revamp of the original driver: code beautification + linux coding
sytle, full diseqc support, hardware filtering support, support for different
card revisions and lots of other stuff.
Andrew Morton [Tue, 30 Dec 2003 07:40:31 +0000 (23:40 -0800)]
[PATCH] fix non-ia32 `make rpm'
From: "Zhu, Yi" <yi.zhu@intel.com>
The "make rpm" rule in top Makefile isn't aware of the enviorment ARCH. For
example, people issue "make ARCH=ia64" to compile the ia64 kernel on i386
platform for cross compilation. This works pretty well now. But if one uses
"make rpm ARCH=ia64", it will fail. Because current rpm rule in Makefile and
mkspec are not aware of ARCH.
Daniele Venzano [Mon, 29 Dec 2003 17:59:18 +0000 (12:59 -0500)]
[netdrvr sis900] add suspend/resume support
The attached patch adds support for suspend/resume to the sis900 driver.
With this patch on resume the NIC is fully configured and operational,
before a module reload was needed because of the complete lack of
suspend/resume callbacks.
I added two functions, sis900_suspend and sis900_resume, with their
pointers in struct pci_driver. A vector of 16 u32 was then needed to the
to keep PCI data during suspend. I added it in struct sis900_private.
I updated the revision number to reflect my changes.
Looking at the code I also killed three typos.
The patch doesn't touch any other code.
Since I don't know anything on ethernet drivers the rule 'works for me'
is fully valid.
Andrew Morton [Mon, 29 Dec 2003 13:55:33 +0000 (05:55 -0800)]
[PATCH] dm: fix block device resizing
From: Joe Thornber <thornber@sistina.com>
When setting the size of a Device-Mapper device in the gendisk entry, also
try to set the size of the corresponding block_device entry's inode. This is
necessary to allow online device/filesystem resizing to work correctly.
[Kevin Corry]
Andrew Morton [Mon, 29 Dec 2003 13:55:25 +0000 (05:55 -0800)]
[PATCH] name_to_dev_t() fix
From: viro@parcelfarce.linux.theplanet.co.uk
When we register disks, we mangle the disk names that contain slashes (e.g.
cciss/c0d0) replacing them with '!' in corresponding sysfs names. So
name_to_dev_t() should mangle the name in the same way before looking for it
in /sys/block.
Andrew Morton [Mon, 29 Dec 2003 13:55:17 +0000 (05:55 -0800)]
[PATCH] Kernel Locking Documentation update
From: Rusty Russell <rusty@rustcorp.com.au>
Entirely revised, and largely rewritten. Has a continuing example now, which
I think makes things clearer. Also covers Read Copy Update. This version
further deprecates rwlock_t, shuffles sections for better organization.
Andrew Morton [Mon, 29 Dec 2003 13:55:09 +0000 (05:55 -0800)]
[PATCH] VIA audio fixes
From: Alan Cox <alan@redhat.com>
VIA audio had a fix from 2.4 missing so any user could spam the system log. Also
include a fix for a bug which is pending 2.4 fixing too and causes a bogus
warning to be displayed on close of audio file handle.
Andrew Morton [Mon, 29 Dec 2003 13:54:21 +0000 (05:54 -0800)]
[PATCH] Rename legacy_bus to platform_bus
From: Jeff Garzik <jgarzik@pobox.com>
I've seen this patch floating around. Not sure the origin, but it's
surfaced on lkml and also when I was poking around handhelds.org CVS for
iPAQ patches: on non-PCs, particularly system-on-chip devices but not
just there, you have a custom "platform bus" that is the root of pretty
much all other devices and buses.
It's something I wanted to make sure people didn't forget; to make sure
the legacy_bus didn't get "legacied out of existence." ;-)
Andrew Morton [Mon, 29 Dec 2003 13:54:13 +0000 (05:54 -0800)]
[PATCH] synchronize use of mm->core_waiters
From: Roland McGrath <roland@redhat.com>
I believe I have identified a failure mode that Linus saw a couple weeks
back when tracking down some other fork/exit sorts of races. We saw this
come up on rare occasions with the RHEL3 kernel's backport of the new code
(while trying to track down other race failure modes we have yet to fix, sigh).
I am talking about the following scenario:
> Btw, even with the fix, doing a "while : ; ./crash t 10 ; done" will
> eventually result in a stuck process:
>
> 1415 tty1 D 0:00 ./crash
>
> This is some kind of deadlock: most of the fifty threads are in "D"
> state, with a trace something like
>
> [<c011fbe3>] schedule+0x360/0x7f8
> [<c0120539>] wait_for_completion+0xd4/0x1c3
> [<c0128c9e>] do_exit+0x627/0x6a4
> [<c0128ddd>] do_group_exit+0x3d/0x177
> [<c0130c13>] dequeue_signal+0x2d/0x84
> [<c0133911>] get_signal_to_deliver+0x390/0x575
> [<c010a541>] do_signal+0x6c/0xf1
> [<c01200be>] default_wake_function+0x0/0x12
> [<c01200be>] default_wake_function+0x0/0x12
> [<c013d50f>] do_futex+0x6d/0x7d
> [<c013d635>] sys_futex+0x116/0x12f
> [<c010a601>] do_notify_resume+0x3b/0x3d
> [<c010a82e>] work_notifysig+0x13/0x15
>
> except for one that is trying to core-dump:
>
> [<c0120539>] wait_for_completion+0xd4/0x1c3
> [<c01200be>] default_wake_function+0x0/0x12
> [<c01200be>] default_wake_function+0x0/0x12
> [<c02101aa>] rwsem_wake+0x86/0x12d
> [<c01738af>] coredump_wait+0xa8/0xaa
> [<c0173a26>] do_coredump+0x175/0x26c
>
> and three that are just doing a regular "exit()" system call:
>
> [<c011fbe3>] schedule+0x360/0x7f8
> [<c011e19a>] recalc_task_prio+0x90/0x1aa
> [<c0120539>] wait_for_completion+0xd4/0x1c3
> [<c01200be>] default_wake_function+0x0/0x12
> [<c01200be>] default_wake_function+0x0/0x12
> [<c0210207>] rwsem_wake+0xe3/0x12d
> [<c0128c9e>] do_exit+0x627/0x6a4
> [<c0128d4d>] next_thread+0x0/0x53
> [<c010a7e3>] syscall_call+0x7/0xb
>
> However, the rest of the system is totally unaffected by this deadlock:
> it's only deadlocked withing the thread group itself, nobody else cares.
What happens here is a race between an exiting thread checking
mm->core_waiters in __exit_mm, and the thread taking the core-dump signal
(in coredump_wait) examining the first thread's ->mm pointer and
incrementing mm->core_waiters to account for it. There is no
synchronization at all in __exit_mm's use of mm->core_waiters. If the
coredump_wait thread reads tsk->mm when tsk is in __exit_mm between
checking mm->core_waiters and clearing tsk->mm, then it will increment
mm->core_waiters and the total count will later exceed the number of
threads that will ever decrement it and synchronize. Hence it blocks forever.
The following patch fixes the problem by using mm->mmap_sem in __exit_mm.
The read lock must be held around checking mm->core_waiters and clearing
tsk->mm so that coredump_wait (which gets the write lock) cannot come in
between and do bogus bookkeeping.
Andrew Morton [Mon, 29 Dec 2003 13:54:05 +0000 (05:54 -0800)]
[PATCH] DAC960 request queue per disk
From: Dave Olien <dmo@osdl.org>
Here's a patch that changes the DAC960 driver from having one request
queue for ALL disks on the controller, to having a request queue for
each logical disk. This turns out to make little difference for deadline
scheduler, nor for AS scheduler under light IO load. But under AS
scheduler with heavy IO, it makes about a 40% difference on dbt2
workload. Here are the measured numbers:
The 2.6.0-test11-D kernel version includes this mutli-queue patch to the
DAC960 driver.
For non-cached dbt2 workload (heavy IO load)
Scheduler kernel/driver NOTPM(bigger is better)
AS 2.6.0-test11-D 1598
AS 2.6.0-test11 973
deadline 2.6.0-test11 1640
deadline 2.6.0-test11-D 1645
For cached dbt2 workload (lighter IO load)
AS 2.6.0-test11-D 4993
AS 2.6.-test6-mm4 4976, 4890, 4972
deadline 2.6.0-test11-D 4998
Can this be included in 2.6.0? I know it's not a "critical patch"
in the sense that something won't work without it. On the other hand,
the change is isolated to a driver.
Andrew Morton [Mon, 29 Dec 2003 13:53:57 +0000 (05:53 -0800)]
[PATCH] fix userspace compiles with nbd.h
From: Paul Clements <Paul.Clements@SteelEye.com>
A previous "cleanup" on the nbd.h header file broke userspace compiles.
I've added an #ifdef __KERNEL__ so that userspace doesn't need to worry
about the nbd_device structure, which is only used in-kernel. The patch
allows me to compile my nbd tools with the 2.6 nbd.h.
Andrew Morton [Mon, 29 Dec 2003 13:53:42 +0000 (05:53 -0800)]
[PATCH] nr_slab accounting fix
From: Manfred Spraul <manfred@colorfullife.com>
if alloc_slabmgmt fails, then kmem_freepages() calls sub_page_state(),
altough nr_slab was not yet increased. The attached patch fixes that by
moving the inc_page_state into kmem_getpages().
Andrew Morton [Mon, 29 Dec 2003 13:53:02 +0000 (05:53 -0800)]
[PATCH] Allow unimap change on non fg console
From: Kurt Garloff <garloff@suse.de>
The comment in front of vt_ioctl() reads
/*
* We handle the console-specific ioctl's here. We allow the
* capability to modify any console, not just the fg_console.=20
*/
Unfortunately, this does not apply to PIO_UNIMAPCLR, nor
GIO_/PIO_UNIMAP. They always operate on the current foreground
console, which is inconsistent at least. For most ioctls, the
comment is applicable.
It also causes problems, as setfont can't do the full job on
the non-fg consoles. (OK, our setfont is slightly changed to
even try it ... as you know.)
The attached patch does fix this.
I have a similar patch for 2.4, but it never got merged :-(
because not many people seem to care and I submitted in the middle
of the 2.4 series ...
It has been in UnitedLinux/SUSE kernels for ages, though.
Andrew Morton [Mon, 29 Dec 2003 13:52:48 +0000 (05:52 -0800)]
[PATCH] list_empty_careful() documentation.
From: Ingo Molnar <mingo@elte.hu>
I'd also suggest the following patch below, to clarify the use of
unsynchronized list_empty(). list_empty_careful() can only be safe in the
very specific case of "one-shot" list entries which might be removed by
another CPU. (but nothing else can happen to them and this is their only
final state.) list_empty_careful() is otherwise completely unsynchronized
on both the compiler and CPU level and is not 'SMP safe' in any way.
Andrew Morton [Mon, 29 Dec 2003 13:52:31 +0000 (05:52 -0800)]
[PATCH] more correct get_compat_timespec interface
From: Joe Korty <joe.korty@ccur.com>
The API for get_compat_timespec / put_compat_timespec is incorrect, it
forces a caller with const args to (incorrectly) cast. The posix message
queue patch is one such caller.