aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* spi kerneldoc updateDavid Brownell2007-07-311-1/+57
| | | | | | | | | This adds kerneldoc to the SPI framework. The "spi_driver" and "spi_board_info" structs were previously not described. Signed-off-by: David Brownell <dbrownell@users.sourceforge.net> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* fix integer overflow warning in i2o_blockMeelis Roos2007-07-311-1/+1
| | | | | | | | | | | | | | | | | | drivers/message/i2o/i2o_block.c: In function 'i2o_block_transfer': drivers/message/i2o/i2o_block.c:837: warning: integer overflow in expression msg->u.head[1] = cpu_to_le32(I2O_CMD_PRIVATE << 24 | HOST_TID << 12 | tid); and I2O_CMD_PRIVATE is defined as 0xFF. This gets "0xFF0100 | tid" and fits into 32-bit unsigned but not into 32-bit signed integer properly. Target value is defined as u32 so the claculation does not fit during computation. Change local variable tid to u32 so the whole expression is of u32 type and fits well into u32 result. Signed-off-by: Meelis Roos <mroos@linux.ee> Cc: "Salyzyn, Mark" <mark_salyzyn@adaptec.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* ip2main warning fixAndrew Morton2007-07-311-1/+2
| | | | | | | | | | CONFIG_PCI=n: drivers/char/ip2/ip2main.c: In function `ip2_loadmain': drivers/char/ip2/ip2main.c:503: warning: unused variable `status' Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* UDF: fix UID and GID mount option ignoranceCyrill Gorcunov2007-07-313-4/+10
| | | | | | | | | | | | | | | | | | | | | | | | | This patch fix weird behaviour of UDF mounting procedure. To get UID changed (for now) we have to type mount -t udf -o uid=some_user,uid=ignore /dev/device /mnt/moun_point and specifying two uid at once is strange a bit. So with the patch we are able to mount without additional 'uid=ignore' option. The same for GID option is done. This patch will not break current mount scheme (with two option). Btw this does fix (I hope) the following [BUG 6124] mount of UDF fs ignores UID and GID options http://bugzilla.kernel.org/show_bug.cgi?id=6124 Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com> Cc: Jan Kara <jack@ucw.cz> Cc: Michael <auslands-kv@gmx.de> Cc: Eric Sandeen <sandeen@redhat.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* cciss: fix memory leakJesper Juhl2007-07-311-1/+4
| | | | | | | | | | | | | | | There's a memory leak in the cciss driver. in alloc_cciss_hba() we may leak sizeof(ctlr_info_t) bytes if a call to alloc_disk(1 << NWD_SHIFT) fails. This patch should fix the issue. Spotted by the Coverity checker. Signed-off-by: Jesper Juhl <jesper.juhl@gmail.com> Acked-by: Mike Miller <mike.miller@hp.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* Kconfig: remove top level menu "Code maturity level options"Al Boldi2007-07-311-4/+1
| | | | | | | | | | | | Remove the top level menu "Code maturity level options", and moves its options into menu "General setup". This makes Kconfig less cluttered and easier to setup. Signed-off-by: Al Boldi <a1426z@gawab.com> Acked-by: Sam Ravnborg <sam@ravnborg.org> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* Videopix Frame Grabber: Fix unreleased lock in vfc_debug()Matthias Kaehlcke2007-07-311-0/+1
| | | | | | | | | | Videopix Frame Grabber: vfc_debug() doesn't release the device lock when copy_from_user() fails Signed-off-by: Matthias Kaehlcke <matthias.kaehlcke@gmail.com> Acked-by: "David S. Miller" <davem@davemloft.net> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* rename setlease to generic_setleaseChristoph Hellwig2007-07-313-6/+6
| | | | | | | | | | | Make it a little more clear that this is the default implementation for the setleast operation. Signed-off-by: Christoph Hellwig <hch@lst.de> Cc: Steven Whitehouse <swhiteho@redhat.com> Acked-by: "J. Bruce Fields" <bfields@fieldses.org> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* sb1250-duart: __maybe_unused, etc. fixesMaciej W. Rozycki2007-07-311-8/+6
| | | | | | | | | | | | | This is a set of small fixes addressing points raised with the original driver submission. In particular, __maybe_unused is used rather than a local hack and sbd_ops is made const. Additionally I have made two local string variables automatic as rodata space was wasted for pointers unnecessarily. Signed-off-by: Maciej W. Rozycki <macro@linux-mips.org> Cc: Ralf Baechle <ralf@linux-mips.org> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* x86_64: include asm/bugs.h in bugs.c for check_bugs prototypeJosh Triplett2007-07-311-0/+1
| | | | | | | | | | | | C files should include the header files that prototype their functions. Eliminates a sparse warning: warning: symbol 'check_bugs' was not declared. Should it be static? Signed-off-by: Josh Triplett <josh@kernel.org> Cc: Andi Kleen <ak@suse.de> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* i386: include asm/bugs.h in bugs.c for check_bugs prototypeJosh Triplett2007-07-311-0/+1
| | | | | | | | | | | | C files should include the header files that prototype their functions. Eliminates a sparse warning: warning: symbol 'check_bugs' was not declared. Should it be static? Signed-off-by: Josh Triplett <josh@kernel.org> Cc: Andi Kleen <ak@suse.de> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* Typo fixes errror -> errorGabriel Craciunescu2007-07-313-4/+4
| | | | | | | | | | | Typo fixes errror -> error Signed-off-by: Gabriel Craciunescu <nix.or.die@googlemail.com> Cc: Jeff Garzik <jeff@garzik.org> Cc: Martin Schwidefsky <schwidefsky@de.ibm.com> Cc: Stephen Smalley <sds@tycho.nsa.gov> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* idr_remove_all: kill unused variableOleg Nesterov2007-07-311-2/+2
| | | | | | | | "error" is always equal to 0. Signed-off-by: Oleg Nesterov <oleg@tv-sign.ru> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* Fix a use after free bug in kernel->userspace relay file supportJesper Juhl2007-07-311-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Coverity spotted what looks like a real possible case of using a variable after it has been freed. The problem is in kernel/relay.c::relay_open_buf() If the code hits "goto free_buf;" it ends up in this code : free_buf: relay_destroy_buf(buf); <--- calls kfree() on 'buf'. free_name: kfree(tmpname); end: return buf; <-- use after free of 'buf'. I read through the callers and they all handle a NULL return from this function as an error (and hitting the 'free_buf' label only happens on failure to chan->cb->create_buf_file(), so that looks like a clear error to me). The patch simply sets 'buf' to NULL after the call to relay_destroy_buf(buf); - as far as I can see that should take care of the problem. The patch also corrects a reference to a documentation file while I was at it. Note from Mathieu: the documentation reference change should have been done in a separate patch, but I guess no one will really care. Signed-off-by: Jesper Juhl <jesper.juhl@gmail.com> Acked-by: "David J. Wilder" <wilder@us.ibm.com> Tested-by: "David J. Wilder" <wilder@us.ibm.com> Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@polymtl.ca> Cc: Tom Zanussi <zanussi@us.ibm.com> Cc: Karim Yaghmour <karim@opersys.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* kthread: silence bogus section mismatch warningSatyam Sharma2007-07-311-10/+2
| | | | | | | | | | | | | | | | | | WARNING: kernel/built-in.o(.text+0x16910): Section mismatch: reference to .init.text: (between 'kthreadd' and 'init_waitqueue_head') comes because kernel/kthread.c:kthreadd() is not __init but calls kthreadd_setup() which is __init. But this is ok, because kthreadd_setup() is only ever called at init time, and then kthreadd() proceeds into its "for (;;)" loop. We could mark kthreadd __init_refok, but kthreadd_setup() with just one callsite and 4 lines in it (it's been that small since 10ab825bdef8df51) doesn't need to be a separate function at all -- so let's just move those four lines at beginning of kthreadd() itself. Signed-off-by: Satyam Sharma <ssatyam@cse.iitk.ac.in> Acked-by: Randy Dunlap <randy.dunlap@oracle.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* fs: 9p/conv.c error path fixMariusz Kozlowski2007-07-311-0/+1
| | | | | | | | | | | | When buf_check_overflow() returns != 0 we will hit kfree(ERR_PTR(err)) and it will not be happy about it. Signed-off-by: Mariusz Kozlowski <m.kozlowski@tuxland.pl> Cc: Latchesar Ionkov <lucho@ionkov.net> Cc: Eric Van Hensbergen <ericvh@ericvh.myip.org> Cc: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* VFS: fix a race in lease-breaking during truncatedavid m. richter2007-07-311-7/+9
| | | | | | | | | | | | It is possible that another process could acquire a new file lease right after break_lease() is called during a truncate, but before lease-granting is disabled by the subsequent get_write_access(). Merely switching the order of the break_lease() and get_write_access() calls prevents this race. Signed-off-by: David M. Richter <richterd@citi.umich.edu> Signed-off-by: "J. Bruce Fields" <bfields@citi.umich.edu> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* use __val in __get_unalignedMike Frysinger2007-07-311-6/+6
| | | | | | | | | | Use "__val" rather than "val" in the __get_unaligned macro in asm-generic/unaligned.h. This way gcc wont warn if you happen to also name something in the same scope "val". Signed-off-by: Mike Frysinger <vapier@gentoo.org> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* hpet.txt: broken link fixDave Young2007-07-311-1/+1
| | | | | | | | The specification link in hpet document is broken. Signed-off-by: Dave Young <hidave.darkstar@gmail.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* ANON_INODES shouldn't be user visibleAdrian Bunk2007-07-311-11/+5
| | | | | | | | | | There doesn't seem to be a good reason for ANON_INODES being an user visible option. Signed-off-by: Adrian Bunk <bunk@stusta.de> Acked-by: Davide Libenzi <davidel@xmailserver.org> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* Remove one more leftover reference to devfsMichael Tokarev2007-07-311-2/+1
| | | | | | Signed-off-by: Michael Tokarev <mjt@tls.msk.ru> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* broken lilo check on make installGabriel C2007-07-311-1/+8
| | | | | | | | | | | | | | | | | | | | | | | | On make install I get the this error: ... sh /work/crazy/linux-git/linux-2.6/arch/i386/boot/install.sh 2.6.22-g4eb6bf6b arch/i386/boot/bzImage System.map "/boot" /work/crazy/linux-git/linux-2.6/arch/i386/boot/install.sh: line 54: /etc/lilo/install: No such file or directory make[1]: *** [install] Error 127 ... I don't use and don't have lilo installed on this system. The attached patch fixes the problem for me. Signed-off-by: Gabriel Craciunescu <nix.or.die@googlemail.com> Acked-by: H. Peter Anvin <hpa@zytor.com> Cc: Sam Ravnborg <sam@ravnborg.org> Cc: Andi Kleen <ak@suse.de> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* NCP: delete test of long-deceased CONFIG_NCPFS_DEBUGDENTRYRobert P. J. Day2007-07-311-3/+0
| | | | | | | Signed-off-by: Robert P. J. Day <rpjday@mindspring.com> Acked-by: Petr Vandrovec <petr@vandrovec.name> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* ipmi: Fix mem leak in try_init_dmi()Jesper Juhl2007-07-311-0/+1
| | | | | | | | | | | | | | | | | | This is only called at init time and only happens if the BIOS screws something up, so the leak is slight and it is probably not worth sending to 2.6.22.x. The driver would not initialize the interface in the case, and I have no reports of this happening. I have booted and run tests on a system with this patch. Note that the original patch was munged by the mailer, here's a new one. If we ever hit the "default:" case in the switch in try_init_dmi(), then we'll leak the storage allocated with kzalloc() and assigned to 'info'. Signed-off-by: Jesper Juhl <jesper.juhl@gmail.com> Signed-off-by: Corey Minyard <cminyard@mvista.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* docbook bad file referencesRandy Dunlap2007-07-311-2/+0
| | | | | | | | | | | Fix docbook warnings: Warning(linux-2.6.22-git12//drivers/base/power/main.c): no structured comments found Warning(linux-2.6.22-git12//include/linux/splice.h): no structured comments found Signed-off-by: Randy Dunlap <randy.dunlap@oracle.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* irq.h fix kernel-docRandy Dunlap2007-07-311-0/+1
| | | | | | | | | | Add kernel-doc entry in <linux/irq.h> for: Warning(linux-2.6.22-git12//include/linux/irq.h:177): No description found for parameter 'last_unhandled' Signed-off-by: Randy Dunlap <randy.dunlap@oracle.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* i2c.h kernel-doc additionsRandy Dunlap2007-07-311-0/+4
| | | | | | | | | | | | | | Add kernel-doc notation in <linux/i2c.h> for: Warning(linux-2.6.22-git12//include/linux/i2c.h:183): No description found for parameter 'driver' Warning(linux-2.6.22-git12//include/linux/i2c.h:183): No description found for parameter 'usage_count' Warning(linux-2.6.22-git12//include/linux/i2c.h:183): No description found for parameter 'list' Warning(linux-2.6.22-git12//include/linux/i2c.h:183): No description found for parameter 'released' Signed-off-by: Randy Dunlap <randy.dunlap@oracle.com> Cc: Jean Delvare <khali@linux-fr.org> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* serial: MPSC: Fix coding style and whitespace issuesMark A. Greer2007-07-311-401/+283
| | | | | | | | | Fix up mpsc.c to be aligned with Documentation/CodingStyle. Also fix up some whitespace issues. Signed-off-by: Mark A. Greer <mgreer@mvista.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* serial: MPSC: Remove duplicate SUPPORT_SYSRQ definitionMark A. Greer2007-07-311-4/+0
| | | | | | | | Remove the duplicate definition of SUPPORT_SYSRQ in mpsc driver. Signed-off-by: Mark A. Greer <mgreer@mvista.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* serial: MPSC: Stop rx engine when CREAD clearedStephane Chazelas2007-07-311-5/+8
| | | | | | | | | | | Currently, the MPSC driver doesn't stop recieving characters when the CREAD flag in termios->c_cflag is cleared. It should. Also, only start receiving if its not already started. Signed-off-by: Stephane Chazelas <stephane@artesyncp.com> Signed-off-by: Mark A. Greer <mgreer@mvista.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* serial: MPSC: Remove race between Rx stop & restartCarlos Sanchez2007-07-311-2/+14
| | | | | | | | | | | | | | | | The patch in commit ID f7232056bff5fe2d3bfeab35252a66ebaeb5bbde stops (aborts) the MPSC's receive engine just before restarting it. Unfortunately, it doesn't wait for the abort to complete before restarting it which creates a race between the abort and the restart. If the restart occurs first, the in-progress abort stops it again and the rx engine remains stopped. Instead, do the abort when the SDMA engine is being stopped. Make sure to wait for the abort to complete before continuing. Signed-off-by: Carlos Sanchez <carlos.sanchez@gecoinc.com> Signed-off-by: Mark A. Greer <mgreer@mvista.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* isofs: mounting to regular file may succeedKirill Kuvaldin2007-07-311-0/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | It turned out that mounting a corrupted ISO image to a regular file may succeed, e.g. if an image was prepared as follows: $ dd if=correct.iso of=bad.iso bs=4k count=8 We then can mount it to a regular file: # mount -o loop -t iso9660 bad.iso /tmp/file But mounting it to a directory fails with -ENOTDIR, simply because the root directory inode doesn't have S_IFDIR set and the condition in graft_tree() is met: if (S_ISDIR(nd->dentry->d_inode->i_mode) != S_ISDIR(mnt->mnt_root->d_inode->i_mode)) return -ENOTDIR This is because the root directory inode was read from an incorrect block. It's supposed to be read from sbi->s_firstdatazone, which is an absolute value and gets messed up in the case of an incorrect image. In order to somehow circumvent this we have to check that the root directory inode is actually a directory after all. Signed-off-by: Kirill Kuvaldin <kuvkir@epsmu.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* remove tx3912fbYoichi Yuasa2007-07-315-762/+0
| | | | | | | | | | Remove tx3912fb. Nino has already removed. It is no longer needed. Signed-off-by: Yoichi Yuasa <yoichi_yuasa@tripeaks.co.jp> Acked-by: Ralf Baechle <ralf@linux-mips.org> Cc: "Antonino A. Daplas" <adaplas@pol.net> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* serial: fix vr41xx_siu serial console supportYoichi Yuasa2007-07-312-1/+3
| | | | | | | | | The serial console can select only SERIAL_VR41XX=y. Signed-off-by: Yoichi Yuasa <yoichi_yuasa@tripeaks.co.jp> Cc: Ralf Baechle <ralf@linux-mips.org> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* serial: fix vr41xx_siu interface selectYoichi Yuasa2007-07-311-1/+2
| | | | | | | | | only PORT_VR41XX_SIU can select interface. Signed-off-by: Yoichi Yuasa <yoichi_yuasa@tripeaks.co.jp> Cc: Ralf Baechle <ralf@linux-mips.org> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* serial: fix section mismatch vr41xx_siuYoichi Yuasa2007-07-311-1/+1
| | | | | | | | | | | | Fix section mismatch vr41xx_siu. WARNING: drivers/built-in.o(.text+0x2ce4c): Section mismatch: reference to .init.text:uart_parse_options (between 'siu_console_setup' and 'siu_request_port') WARNING: drivers/built-in.o(.text+0x2ce70): Section mismatch: reference to .init.text:uart_set_options (between 'siu_console_setup' and 'siu_request_port') Signed-off-by: Yoichi Yuasa <yoichi_yuasa@tripeaks.co.jp> Cc: Ralf Baechle <ralf@linux-mips.org> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* pure_initcall ID inconsistencyMichael Buesch2007-07-311-1/+1
| | | | | | | | | pure_initcall uses the same ID as core_initcall. I guess that's a typo and it should use its own ID. Signed-off-by: Michael Buesch <mb@bu3sch.de> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* in-string typos of "error"Eddy L O Jansson2007-07-312-2/+2
| | | | | | | | | | | | One patch for two trivial typos of 'error' with three R's, appearing in message strings. There's a bunch more of the same in comments, not dealt with here. Signed-off-by: Eddy L O Jansson <eddy@klopper.net> Cc: Roman Zippel <zippel@linux-m68k.org> Cc: Roland Dreier <rolandd@cisco.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* Include serial_reg.h with userspace headersHerton Ronaldo Krzesinski2007-07-311-0/+1
| | | | | | | | | | | | | | | | | | | | As reported by Gustavo de Nardin <gustavodn@mandriva.com.br>, while trying to compile xosview (http://xosview.sourceforge.net/) with upstream kernel headers being used you get the following errors: serialmeter.cc:48:30: error: linux/serial_reg.h: No such file or directory serialmeter.cc: In member function 'virtual void SerialMeter::checkResources()': serialmeter.cc:71: error: 'UART_LSR' was not declared in this scope serialmeter.cc:71: error: 'UART_MSR' was not declared in this scope ... Signed-off-by: Herton Ronaldo Krzesinski <herton@mandriva.com.br> Cc: Gustavo de Nardin <gustavodn@mandriva.com.br> Cc: David Woodhouse <dwmw2@infradead.org> Cc: Russell King <rmk@arm.linux.org.uk> Cc: <stable@kernel.org> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* futex: pass nr_wake2 to futex_wake_opAndreas Schwab2007-07-311-1/+3
| | | | | | | | | | | | | | | The fourth argument of sys_futex is ignored when op == FUTEX_WAKE_OP, but futex_wake_op expects it as its nr_wake2 parameter. The only user of this operation in glibc is always passing 1, so this bug had no consequences so far. Signed-off-by: Andreas Schwab <schwab@suse.de> Cc: Ingo Molnar <mingo@elte.hu> Signed-off-by: Ulrich Drepper <drepper@redhat.com> Cc: <stable@kernel.org> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* Fix leak on /proc/lockdep_statsAlexey Dobriyan2007-07-311-1/+1
| | | | | | | Signed-off-by: Alexey Dobriyan <adobriyan@sw.ru> Cc: <stable@kernel.org> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* Fix leaks on /proc/{*/sched,sched_debug,timer_list,timer_stats}Alexey Dobriyan2007-07-314-4/+4
| | | | | | | | | | | On every open/close one struct seq_operations leaks. Kudos to /proc/slab_allocators. Signed-off-by: Alexey Dobriyan <adobriyan@sw.ru> Acked-by: Ingo Molnar <mingo@elte.hu> Cc: <stable@kernel.org> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* AFS: fix file lockingDavid Howells2007-07-311-47/+79
| | | | | | | | | | | | | | Fix file locking for AFS: (*) Start the lock manager thread under a mutex to avoid a race. (*) Made the locking non-fair: New readlocks will jump pending writelocks if there's a readlock currently granted on a file. This makes the behaviour similar to Linux's VFS locking. Signed-off-by: David Howells <dhowells@redhat.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* bpqether: fix rcu usagePaul E. McKenney2007-07-311-3/+3
| | | | | | | | | | | | | | | The rcu_dereference() primitive needs to be applied to an l-value in order to ensure that compiler writers don't get an opportunity to apply reordering optimizations that could result in multiple fetches or in other misbehavior. This patch pulls the rcu_dereference() calls in bpq_seq_next() up to the point at which the fetched pointers are still l-values, rather than after list_entry() has transformed them into r-values. Signed-off-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com> Cc: Jeff Garzik <jeff@garzik.org> Cc: Ralf Baechle <ralf@linux-mips.org> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* Fix user struct leakage with locked IPC shem segmentPavel Emelianov2007-07-311-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When user locks an ipc shmem segmant with SHM_LOCK ctl and the segment is already locked the shmem_lock() function returns 0. After this the subsequent code leaks the existing user struct: == ipc/shm.c: sys_shmctl() == ... err = shmem_lock(shp->shm_file, 1, user); if (!err) { shp->shm_perm.mode |= SHM_LOCKED; shp->mlock_user = user; } ... == Other results of this are: 1. the new shp->mlock_user is not get-ed and will point to freed memory when the task dies. 2. the RLIMIT_MEMLOCK is screwed on both user structs. The exploit looks like this: == id = shmget(...); setresuid(uid, 0, 0); shmctl(id, SHM_LOCK, NULL); setresuid(uid + 1, 0, 0); shmctl(id, SHM_LOCK, NULL); == My solution is to return 0 to the userspace and do not change the segment's user. Signed-off-by: Pavel Emelianov <xemul@openvz.org> Cc: <stable@kernel.org> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* kbuild: whitelist references from __dbe_table to .initRalf Baechle2007-07-311-0/+1
| | | | | | | | | | | | | | | | | This is needed on MIPS where the same mechanism as get_user() is used to intercept bus error exceptions for some hardware probes. Without this patch modpost will throw spurious warnings: LD vmlinux SYSMAP System.map SYSMAP .tmp_System.map MODPOST vmlinux WARNING: arch/mips/sgi-ip22/built-in.o(__dbe_table+0x0): Section mismatch: reference to .init.text: Signed-off-by: Ralf Baechle <ralf@linux-mips.org> Cc: Sam Ravnborg <sam@ravnborg.org> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* m68knommu: get rid of duplicate includeJesper Juhl2007-07-311-1/+0
| | | | | | | | | | Remove the duplicate inclusion of asm/irq.h from arch/m68knommu/platform/5206e/config.c Signed-off-by: Jesper Juhl <jesper.juhl@gmail.com> Acked-by: Greg Ungerer <gerg@uclinux.org> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* kdebug.h: forward-declare struct struct notifier_blockAndrew Morton2007-07-311-0/+2
| | | | | | | | | | | | | | | | | | | | | | alpha: In file included from kernel/notifier.c:1: include/linux/kdebug.h:14: warning: 'struct notifier_block' declared inside parameter list include/linux/kdebug.h:14: warning: its scope is only this definition or declaration, which is probably not what you want include/linux/kdebug.h:15: warning: 'struct notifier_block' declared inside parameter list kernel/notifier.c:529: error: conflicting types for 'register_die_notifier' include/linux/kdebug.h:14: error: previous declaration of 'register_die_notifier' was here kernel/notifier.c:533: error: conflicting types for 'register_die_notifier' include/linux/kdebug.h:14: error: previous declaration of 'register_die_notifier' was here kernel/notifier.c:536: error: conflicting types for 'unregister_die_notifier' include/linux/kdebug.h:15: error: previous declaration of 'unregister_die_notifier' was here kernel/notifier.c:539: error: conflicting types for 'unregister_die_notifier' include/linux/kdebug.h:15: error: previous declaration of 'unregister_die_notifier' was here Cc: Richard Henderson <rth@twiddle.net> Cc: Ivan Kokshaysky <ink@jurassic.park.msu.ru> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* spi_mpc83xx: support loopback modeAnton Vorontsov2007-07-311-2/+6
| | | | | | | | | This exposes the hardware loopback mode to drivers, primarily for testing. Signed-off-by: Anton Vorontsov <avorontsov@ru.mvista.com> Signed-off-by: David Brownell <dbrownell@users.sourceforge.net> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* spidev_test utilityAnton Vorontsov2007-07-311-0/+202
| | | | | | | | | | | | This is a simple utility used to test SPI functionality. It could stand growing options to support using other test data patterns; this initial version only issues full duplex transfers, which rules out 3WIRE or Microwire links. Signed-off-by: Anton Vorontsov <avorontsov@ru.mvista.com> Signed-off-by: David Brownell <dbrownell@users.sourceforge.net> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>