31 Dec, 2006
22 commits
-
(akpm: macros are wonderful)
Signed-off-by: Al Viro
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds -
RAID_UNKNOWN is used even when PROC_FS=n, so move it outside of the
CONFIG_PROC_FS block.drivers/block/cciss.c:1910: error: 'RAID_UNKNOWN' undeclared (first use in this function)
Signed-off-by: Randy Dunlap
Cc:
Cc: Jens Axboe
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds -
Recent cleanup of slab.h broke SLOB allocator: the routine kmem_cache_init
has now the __init attribute for both slab.c and slob.c. This routine
cannot be removed after init in the case of slob.c -- it serves as a timer
callback.Provide a separate timer callback routine, call it once from kmem_cache_init,
keep the __init attribute on the latter.Signed-off-by: Dimitri Gorokhovik
Cc: Christoph Lameter
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds -
ramfs doesn't provide the .set_dirty_page a_op, and when the BLOCK layer is
not configured in, 'set_page_dirty' makes a call via a NULL pointer.Signed-off-by: Dimitri Gorokhovik
Cc:
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds -
mod_sysfs_setup() doesn't return error when kobject_add_dir() failed.
Signed-off-by: Akinobu Mita
Cc: Greg KH
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds -
Signed-off-by: Andreas Schwab
Cc: "Yu, Luming"
Cc: Benjamin Herrenschmidt
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds -
Remove the __resched_legal() check: it is conceptually broken. The biggest
problem it had is that it can mask buggy cond_resched() calls. A
cond_resched() call is only legal if we are not in an atomic context, with
two narrow exceptions:- if the system is booting
- a reacquire_kernel_lock() down() done while PREEMPT_ACTIVE is setBut __resched_legal() hid this and just silently returned whenever
these primitives were called from invalid contexts. (Same goes for
cond_resched_locked() and cond_resched_softirq()).Furthermore, the __legal_resched(0) call was buggy in that it caused
unnecessarily long softirq latencies via cond_resched_softirq(). (which is
only called from softirq-off sections, hence the code did nothing.)The fix is to resurrect the efficiency of the might_sleep checks and to
only allow the narrow exceptions.Signed-off-by: Ingo Molnar
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds -
include/linux/utsrelease.h and include/linux/version.h aren't removed any
more by mrproper in kernel 2.6.20-rc2. The patch below fixes this.The definition of MRPROPER_FILES looks weird: generated-headers looks like
a misspelling of generated_headers, but that one is a Makefile target, not
a variable or a file, so I don't see how including it in MRPROPER_FILES
could have any effect.Signed-off-by: Mikael Pettersson
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds -
While trying to develop a line discipline I found a couple of things worth
mentioning in Documentation/tty.txt which weren't, so I decided to add
them. It would be nice if someone more knowledgeable than me in that area
would look over them, in case I got something wrong.Signed-off-by: Tilman Schmidt
Cc: Alan Cox
Cc: Theodore Ts'o
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds -
Many spinlock recursion was in the isicom driver. Eliminate it.
Signed-off-by: Jiri Slaby
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds -
The apple fn keys don't work anymore with 2.6.20-rc1.
The reason is that USB_HID_POWERBOOK appears in several files although
USB_HIDINPUT_POWERBOOK is the thing to be used.The patch fixes this.
Cc: Greg KH
Cc: Dmitry Torokhov
Cc: Benjamin Herrenschmidt
Cc: Jiri Kosina
Cc: Marcel Holtmann
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds -
Update to maintainers list.
My employer has changed the domain from lsil to lsi.Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds -
Commit bed8bdfd ("IB: kmemdup() cleanup") introduced one bad conversion to
kmemdup() in mthca_alloc_fmr(), where the structure allocated and the
structure copied are not the same size. Revert this back to the original
kmalloc()/memcpy() code.Reported-by: Dotan Barak .
Signed-off-by: Michael S. Tsirkin
Signed-off-by: Roland Dreier
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds -
tty_driver->owner is not set, so if somebody remove mxser_module, it might
oops (and doesn't tell the user: no way, it's in use). Set the .owner value.Cc:
Signed-off-by: Jiri Slaby
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds -
Don't have macros between a function's kernel-doc block and the function
definition. This is not valid for kernel-doc.Warning(/var/linsrc/linux-2.6.20-rc1-git8//drivers/pci/probe.c:653): No description found for parameter 'IORESOURCE_PCI_FIXED'
Signed-off-by: Randy Dunlap
Cc: Greg KH
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds -
Due to the changes to make the kernel relocateable a new file is created
during the build process.[jirislaby@gmail.com: The .gitigonre was intended to be in arch/ subtree]
Signed-off-by: Thomas Meyer
Signed-off-by: Jiri Slaby
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds -
constrained_alloc(), which is called to detect where oom is from, checks
passed zone_list(). If zone_list doesn't include all nodes, it thinks oom
is from mempolicy.But there is memory-less-node. memory-less-node's zones are never included
in zonelist[].contstrained_alloc() should get memory_less_node into count. Otherwise, it
always thinks 'oom is from mempolicy'. This means that current process
dies at any time. This patch fix it.Signed-off-by: KAMEZAWA Hiroyuki
Cc: Paul Jackson
Cc: Christoph Lameter
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds -
Fix suspend hang: rcutorture threads need to be nofreeze.
Signed-off-by: Ingo Molnar
Acked-by: Paul E. McKenney
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds -
WARN_ON() ever triggering is a kernel bug. Do not try to paper over this
fact by suggesting to the user that this is 'only' a warning, as the
following recent commit does:commit 30e25b71e725b150585e17888b130e3324f8cf7c
Author: Jeremy Fitzhardinge
Date: Fri Dec 8 02:36:24 2006 -0800[PATCH] Fix generic WARN_ON message
A warning is a warning, not a BUG.
( it might make sense to rename BUG() to CRASH() and BUG_ON() to
CRASH_ON(), but that does not change the fact that WARN_ON()
signals a kernel bug. )i and others objected to this change during lkml review:
http://marc.theaimsgroup.com/?l=linux-kernel&m=116115160710533&w=2
still the change slipped upstream - grumble :)
Also, use the standard "BUG: " format to make it easier to grep logs and
to make it easier to google for kernel bugs.Signed-off-by: Ingo Molnar
Cc: Jeremy Fitzhardinge
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds -
Choose rpa_vscsi.c over iseries_vscsi.c when building both pseries and
iseries. This fixes a link error.Signed-off-by: Judith Lebzelter
Acked-by: Stephen Rothwell
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds -
lockdep found a AB BC CA lock inversion in retry-based AIO:
1) The task struct's alloc_lock (A) is acquired in process context with
interrupts enabled. An interrupt might arrive and call wake_up() which
grabs the wait queue's q->lock (B).2) When performing retry-based AIO the AIO core registers
aio_wake_function() as the wake funtion for iocb->ki_wait. It is called
with the wait queue's q->lock (B) held and then tries to add the iocb to
the run list after acquiring the ctx_lock (C).3) aio_kick_handler() holds the ctx_lock (C) while acquiring the
alloc_lock (A) via lock_task() and unuse_mm(). Lockdep emits a warning
saying that we're trying to connect the irq-safe q->lock to the
irq-unsafe alloc_lock via ctx_lock.This fixes the inversion by calling unuse_mm() in the AIO kick handing path
after we've released the ctx_lock. As Ben LaHaise pointed out __put_ioctx
could set ctx->mm to NULL, so we must only access ctx->mm while we have the
lock.Signed-off-by: Zach Brown
Signed-off-by: Suparna Bhattacharya
Acked-by: Benjamin LaHaise
Cc: "Chen, Kenneth W"
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds -
set_param_str() cannot use kstrdup() to duplicate the parameter. That's
fine when the driver is compiled as a module but it sure is not when built
into the kernel as the kernel parameters are parsed before the kmalloc
slabs are setup.Signed-off-by: Sebastien Dugué
Acked-by: Corey Minyard
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds
30 Dec, 2006
5 commits
-
* 'for-linus' of git://git390.osdl.marist.edu/pub/scm/linux-2.6:
[S390] cio: fix stsch_reset.
[S390] Change max. buffer size for monwriter device. -
* 'master' of master.kernel.org:/pub/scm/linux/kernel/git/mchehab/v4l-dvb: (28 commits)
V4L/DVB (5010): Cx88: Fix leadtek_eeprom tagging
V4L/DVB (5012): Usbvision fix: It was using "&&" instead "&"
V4L/DVB (5001): Add two required headers on kernel 2.6.20-rc1
V4L/DVB (5014): Allyesconfig build fixes on some non x86 arch
V4L/DVB (4997): Bttv: delete duplicated ioremap()
V4L/DVB (4996): Msp3400: fix kthread_run error check
V4L/DVB (4995): Vivi: fix kthread_run() error check
V4L/DVB (4994): Vivi: fix use after free in list_for_each()
V4L/DVB (4992): Fix typo in saa7134-dvb.c
V4L/DVB (4991): Cafe_ccic.c: fix NULL dereference
V4L/DVB (4990): Cpia2/cpia2_usb.c: fix error-path leak
V4L/DVB (4988): Cx2341x audio_properties is an u16, not u8
V4L/DVB (4984): LOG_STATUS should show the real temporal filter value.
V4L/DVB (4983): Force temporal filter to 0 when scaling to prevent ghosting.
V4L/DVB (4982): Fix broken audio mode handling for line-in in msp3400.
V4L/DVB (4980): Fixes bug 7267: PAL/60 is not working
V4L/DVB (4979): Fixes compilation when CONFIG_V4L1_COMPAT is not selected
V4L/DVB (4973): Dvb-core: fix printk type warning
V4L/DVB (4972): Dvb-core: fix bug in CRC-32 checking on 64-bit systems
V4L/DVB (4970): Usbvision memory fixes
... -
* 'upstream-linus' of master.kernel.org:/pub/scm/linux/kernel/git/jgarzik/netdev-2.6: (42 commits)
r8169: extraneous Cmd{Tx/Rx}Enb write
forcedeth: modified comment header
NetXen: Reducing ring sizes for IOMMU issue.
NetXen: Fix for PPC machines.
NetXen: work queue fixes.
NetXen: Link status message correction for quad port cards.
NetXen: Multiple adapter fix.
NetXen: Using correct CHECKSUM flag.
NetXen: driver reload fix for newer firmware.
NetXen: Adding new device ids.
PHY probe not working properly for ibm_emac (PPC4xx)
ep93xx: some minor cleanups to the ep93xx eth driver
sky2: phy power down needs PCI config write enabled
sky2: power management/MSI workaround
sky2: dual port NAPI problem
via-velocity uses INET interfaces
e1000: Do not truncate TSO TCP header with 82544 workaround
myri10ge: handle failures in suspend and resume
myri10ge: no need to save MSI and PCIe state in the driver
myri10ge: make msi configurable at runtime through sysfs
... -
* 'netxen-ioctl' of master.kernel.org:/pub/scm/linux/kernel/git/jgarzik/netdev-2.6:
netxen: remove private ioctl -
The VM layer (on the face of it, fairly reasonably) expected that when
it does a ->writepage() call to the filesystem, it would write out the
full page at that point in time. Especially since it had earlier marked
the whole page dirty with "set_page_dirty()".But that isn't actually the case: ->writepage() does not actually write
a page, it writes the parts of the page that have been explicitly marked
dirty before, *and* that had not got written out for other reasons since
the last time we told it they were dirty.That last caveat is the important one.
Which _most_ of the time ends up being the whole page (since we had
called "set_page_dirty()" on the page earlier), but if the filesystem
had done any dirty flushing of its own (for example, to honor some
internal write ordering guarantees), it might end up doing only a
partial page IO (or none at all) when ->writepage() is actually called.That is the correct thing in general (since we actually often _want_
only the known-dirty parts of the page to be written out), but the
shared dirty page handling had implicitly forgotten about these details,
and had a number of cases where it was doing just the "->writepage()"
part, without telling the low-level filesystem that the whole page might
have been re-dirtied as part of being mapped writably into user space.Since most of the time the FS did actually write out the full page, we
didn't notice this for a loong time, and this needed some really odd
patterns to trigger. But it caused occasional corruption with rtorrent
and with the Debian "apt" database, because both use shared mmaps to
update the end result.This fixes it. Finally. After way too much hair-pulling.
Acked-by: Nick Piggin
Acked-by: Martin J. Bligh
Acked-by: Martin Michlmayr
Acked-by: Martin Johansson
Acked-by: Ingo Molnar
Acked-by: Andrei Popa
Cc: High Dickins
Cc: Andrew Morton ,
Cc: Peter Zijlstra
Cc: Segher Boessenkool
Cc: David Miller
Cc: Arjan van de Ven
Cc: Gordon Farquharson
Cc: Guillaume Chazarain
Cc: Theodore Tso
Cc: Kenneth Cheng
Cc: Tobias Diedrich
Signed-off-by: Linus Torvalds
28 Dec, 2006
13 commits
-
Copy inline assembly of stsch and add "memory" to clobber list in order
to prevent gcc from optimizing away the checking of the global variable
"pgm_check_occured".Signed-off-by: Michael Holzheu
Signed-off-by: Martin Schwidefsky -
Reduce the max. buffer size for the monwriter device to prevent a
possible problem with the z/VM monitor service.Signed-off-by: Melissa Howland
Signed-off-by: Martin Schwidefsky -
reference to .init.text: from .text between 'cx88_card_setup'
(at offset 0x68c) and 'cx88_risc_field'
Caused by leadtek_eeprom() being declared __devinit and called from
a non-devinit context.Signed-off-by: Jean Delvare
Signed-off-by: Michael Krufky
Signed-off-by: Mauro Carvalho Chehab -
Signed-off-by: Alexey Dobriyan
Signed-off-by: Mauro Carvalho Chehab -
include/media/ir-common.h:78: error: field 'work' has incomplete type
drivers/media/common/ir-functions.c: In function 'ir_rc5_timer_end':
drivers/media/common/ir-functions.c:301: error: 'jiffies' undeclared (first use in this function)
drivers/media/common/ir-functions.c:301: error: (Each undeclared identifier is reported only once)
drivers/media/common/ir-functions.c:301: error: for each function it appears in.)
drivers/media/common/ir-functions.c:347: error: 'HZ' undeclared (first use in this function)Signed-off-by: Mauro Carvalho Chehab
-
- CAFE_CCIC needs to depend on PCI, else "allyesconfig" breaks
on systems without PCI
- em28xx-video can't udelay(2500) else "allyesconfig" breaks
on systems that refuse to spin that long (I saw it on ARM)Signed-off-by: David Brownell
Signed-off-by: Mauro Carvalho Chehab -
ioremap() is called twice to same resource.
The returen value of first one is not error-checked.
second one is complely ignored.Signed-off-by: Akinobu Mita
Signed-off-by: Mauro Carvalho Chehab -
The return value of kthread_run() should be checked by IS_ERR().
Signed-off-by: Akinobu Mita
Signed-off-by: Mauro Carvalho Chehab -
The return value of kthread_run() should be checked by IS_ERR().
Signed-off-by: Akinobu Mita
Signed-off-by: Mauro Carvalho Chehab -
Freeing data including list_head in list_for_each() is not safe.
Signed-off-by: Akinobu Mita
Signed-off-by: Mauro Carvalho Chehab -
Fix a typo (use_frontent -> use_frontend) in saa7134-dvb.c.
Signed-off-by: Stephan Berberig
Signed-off-by: Mauro Carvalho Chehab -
We shouldn't dereference "cam" when we already know it's NULL.
Spotted by the Coverity checker.Signed-off-by: Adrian Bunk
Signed-off-by: Mauro Carvalho Chehab -
Free previously allocated memory (in array elements) if kmalloc() returns
NULL in submit_urbs().Signed-off-by: Amit Choudhary
Signed-off-by: Andrew Morton
Signed-off-by: Mauro Carvalho Chehab