ChangeSet@1.2049, 2004-10-21 18:04:56-07:00, viro@parcelfarce.linux.theplanet.co.uk [PATCH] added typechecking ot sparc64 ioremap() ioremap() made inlined function on sparc64; that had caught one bogosity in drivers, actually - cpwatchdog.c passed sizeof(structure that was never declared) as the second argument to ioremap(). It went unnoticed since that argument was never used in the body of macro, so it disappeared without a trace... Signed-off-by: Al Viro <viro@parcelfarce.linux.theplanet.co.uk> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2048, 2004-10-21 18:04:43-07:00, viro@parcelfarce.linux.theplanet.co.uk [PATCH] sparc64 missing volatile in io.h prototypes A bunch of places passes volatile pointers to readb() et.al.; sparc64 has their arguments declared as void __iomem *. Prototypes changed to match other platforms. Signed-off-by: Al Viro <viro@parcelfarce.linux.theplanet.co.uk> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2047, 2004-10-21 18:04:30-07:00, viro@parcelfarce.linux.theplanet.co.uk [PATCH] ppc io.h annotations Signed-off-by: Al Viro <viro@parcelfarce.linux.theplanet.co.uk> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2046, 2004-10-21 18:04:17-07:00, viro@parcelfarce.linux.theplanet.co.uk [PATCH] alpha io_remap_page_range() compile fix Signed-off-by: Al Viro <viro@parcelfarce.linux.theplanet.co.uk> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2045, 2004-10-21 18:04:05-07:00, viro@parcelfarce.linux.theplanet.co.uk [PATCH] amd64 uaccess.h annotations sparse complains on casts from long to pointers; unsigned long is OK, though, and it's OK with all numeric cases. Signed-off-by: Al Viro <viro@parcelfarce.linux.theplanet.co.uk> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2044, 2004-10-21 18:03:52-07:00, viro@parcelfarce.linux.theplanet.co.uk [PATCH] amd64 io.h annotations Signed-off-by: Al Viro <viro@parcelfarce.linux.theplanet.co.uk> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2043, 2004-10-21 18:03:39-07:00, viro@parcelfarce.linux.theplanet.co.uk [PATCH] alpha writeq fixes Some drivers do ifdef on writeq; alpha has it as inline function, so they get confused. Signed-off-by: Al Viro <viro@parcelfarce.linux.theplanet.co.uk> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2042, 2004-10-21 18:03:27-07:00, viro@parcelfarce.linux.theplanet.co.uk [PATCH] fusion iomem annotations Signed-off-by: Al Viro <viro@parcelfarce.linux.theplanet.co.uk> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2041, 2004-10-21 18:03:14-07:00, viro@parcelfarce.linux.theplanet.co.uk [PATCH] aacraid iomem annotations Signed-off-by: Al Viro <viro@parcelfarce.linux.theplanet.co.uk> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2039, 2004-10-22 01:34:19+02:00, bzolnier@trik.(none) [ide] kill CONFIG_IDE_TASKFILE_IO It is not needed any longer: * PIO code is unified and converted to use scatterlists * taskfile code doesn't support falling back to PIO * it is much easier to convert non-taskfile version of __ide_do_rw_disk() to something sane than taskfile one Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com> ChangeSet@1.2038, 2004-10-22 01:22:42+02:00, bzolnier@trik.(none) [block] remove bio walking All users of this code were fixed to use scatterlists. Acked by Jens. Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com> ChangeSet@1.2036.1.26, 2004-10-21 15:26:51-07:00, torvalds@ppc970.osdl.org Make core-dumps have all the relevant regions in it. Based on input from Roland McGrath and Hugh Dickins. This simplifies the logic, and takes advantage of the "new" VM information in the form of vma->anon_vma. ChangeSet@1.2036.1.25, 2004-10-21 15:25:17-07:00, torvalds@ppc970.osdl.org Make drivers/char/mem.c use remap_pfn_range() Rather than the deprecated remap_page_range() function that can't handle all of the PFN range anyway. Also, since that will now mark the vma as being special, there's no need to do it in mmap_mem() any more. ChangeSet@1.2036.1.24, 2004-10-21 15:23:16-07:00, torvalds@ppc970.osdl.org remap_pfn_range: make the region special. VM_IO tells the rest fo the world that the pages may have side effects on reads/writes etc, and VM_RESERVED historically told swap-out not to bother with it. ChangeSet@1.2036.1.23, 2004-10-21 14:30:26-07:00, wli@holomorphy.com [PATCH] PA-RISC io_remap_page_range() fix It was pointed out to me that I typo'd and lost a backslash in the PA-RISC io_remap_page_range() definition. This patch corrects the one-character typo. ChangeSet@1.2036.1.22, 2004-10-21 12:38:55-07:00, paulkf@microgate.com [PATCH] ppp: disconnect on hangup (synctty) Here is the hangup implementation for ppp_synctty.c (same as patch previously for ppp_asynctty.c) Cc: Alan Cox <alan@lxorguk.ukuu.org.uk> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2036.1.20, 2004-10-21 11:22:34-07:00, paulkf@microgate.com [PATCH] ppp: terminate connection on hangup I reviewed, patched, and tested ppp_async.c to implement ldisc->hangup(). This correctly terminates the PPP connection on hangup. Paul Mackerras already did an excellent job of ensuring safe shutdown and I/O completion in ldisc->close so the change is trivial: just add the ldisc->hangup and call the existing close routine. Cc: Alan Cox <alan@lxorguk.ukuu.org.uk> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2036.1.18, 2004-10-21 10:59:06-07:00, bunk@stusta.de [PATCH] Another ISA PnP modem (USR0009) Below is a patch from Denis Zaitsev <zzz@anda.ru> with the following two adjustments: - applies with -p1 (not -p0) - USRobotics -> U.S. Robotics (consistent with the rest of the entries) Signed-off-by: Adrian Bunk <bunk@stusta.de> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2036.1.17, 2004-10-21 10:58:54-07:00, yuasa@hh.iij4u.or.jp [PATCH] mips: fixed MIPS Makefile The MIPS Makefile was changed so that the offset of data section may not be dependent on a specific machine header file. Signed-off-by: Yoichi Yuasa <yuasa@hh.iij4u.or.jp> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2036.1.16, 2004-10-21 10:58:41-07:00, dino@in.ibm.com [PATCH] stat shows wrong ppid One more place in fs/proc/array.c where ppid is wrong, which I missed in my previous mail to lkml. Signed-off-by: Dinakar Guniguntala <dino@in.ibm.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2036.1.15, 2004-10-21 10:58:29-07:00, s.esser@e-matters.de [PATCH] smbfs protocol fixes From: <Urban.Widmark@enlight.net> The memset is because it was previously possible to send always the same CIFS fragment and use this to increase the data counters. When the data counter "exceeds" the amount of bytes expected this will return the buffer only partially initialised... With findfirst etc requests this should allow leaking kernel memory content. The other thing is that the data is only returned when data_tot and parm_tot both "exceed" the expected values. Previously it was possible to create a sequence of CIFS fragments that allowed exceeding the counters. The calling functions then would believe they received a number of bytes that does not fit into the allocated buffer. Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2036.1.14, 2004-10-21 10:58:17-07:00, apw@shadowen.org [PATCH] vm_dirty_ratio initialisation fix When a system has a very large imbalance of overall memory size to ZONE_NORMAL (for example when large amounts of numa remap space are in use) page_writeback_init() may incorrectly set vm_dirty_ratio and dirty_background_ratio to zero; leading to divide by zero errors elsewhere. This patch bounds these at 1%. Signed-off-by: Andy Whitcroft <apw@shadowen.org> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2036.1.13, 2004-10-21 10:58:04-07:00, rddunlap@osdl.org [PATCH] cx88: discarded reference Error: ./drivers/media/video/cx88/cx88-video.o .data refers to 0000000000000b28 R_X86_64_64 .exit.text Signed-off-by: Randy Dunlap <rddunlap@osdl.org> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2036.1.12, 2004-10-21 10:57:52-07:00, rddunlap@osdl.org [PATCH] bt878: discarded reference Error: ./drivers/media/dvb/bt8xx/bt878.o .data refers to 0000000000000048 R_X86_64_64 .exit.text Signed-off-by: Randy Dunlap <rddunlap@osdl.org> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2036.1.11, 2004-10-21 10:57:40-07:00, rddunlap@osdl.org [PATCH] saa7134: discarded reference Error: ./drivers/media/video/saa7134/saa7134-core.o .data refers to 0000000000000028 R_X86_64_64 .exit.text Signed-off-by: Randy Dunlap <rddunlap@osdl.org> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2036.1.10, 2004-10-21 10:57:28-07:00, takata@linux-m32r.org [PATCH] m32r: update SIO driver to use module_param() Here is a patch for M32R SIO driver, which replaces deprecated MODULE_PARAM() with modern module_param(). * drivers/serial/m32r_sio.c: - Replace MODULE_PARAM() with module_param(). - Fix a typo: UARRT_RSA_BASE --> UART_RSA_BASE. Signed-off-by: Hirokazu Takata <takata@linux-m32r.org> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2036.1.9, 2004-10-21 10:57:15-07:00, werner@almesberger.net [PATCH] x86_64: no TIOCSBRK/TIOCCBRK in ia32 emulation In ia32 emulation, the amd64 kernel refuses the ioctls TIOCSBRK and TIOCCBRK with EINVAL. I've attached a patch that adds them to the compatibility list. Since all architectures have these ioctls ("m68knommu" inherits them from "m68k", "um" from its host) and use the same code, I think adding them to compat_ioctl.h is the correct choice (as opposed to adding them to arch/x86_64/ia32/ia32_ioctl.c). Signed-off-by: Werner Almesberger <werner@almesberger.net> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2036.1.8, 2004-10-21 10:57:03-07:00, olof@austin.ibm.com [PATCH] ppc64: fix CPU numa init code thinkos There seems to have been a couple of thinkos in the NUMA init code, in particular in find_cpu_node(): * Property size returned is in bytes, not words * Off-by-one error in loop iteration Signed-off-by: Nathan Lynch <nathanl@austin.ibm.com> Signed-off-by: Olof Johansson <olof@austin.ibm.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2036.1.7, 2004-10-21 10:56:51-07:00, paulus@samba.org [PATCH] ppc64: fix XICS startup function to enable as well When the generic IRQ patch went in, it changed the behaviour of setup_irq (compared to the previous ppc64 version) in that we now don't call the handler's enable function if it has a startup function. The XICS interrupt controller has a startup function, and so we weren't getting any interrupts through the XICS because they never got enabled. This patch adds a call to xics_enable_irq to xics_startup and fixes the problem. Signed-off-by: Paul Mackerras <paulus@samba.org> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2036.1.6, 2004-10-21 10:56:39-07:00, sfr@canb.auug.org.au [PATCH] ppc64: iSeries compile broken in 2.6.9-bk3 One of the iSeries specific files used HZ without including linux/param.h and previously got away with it. Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2036.1.5, 2004-10-21 10:56:27-07:00, mporter@kernel.crashing.org [PATCH] ppc32: fix ibm44x_common.c compile Fix ibm44x_common.c compile. Signed-off-by: Eugene Surovegin <ebs@ebshome.net> Signed-off-by: Matt Porter <mporter@kernel.crashing.org> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2036.1.4, 2004-10-21 10:56:14-07:00, roland@topspin.com [PATCH] ppc: fix build with O=$(output_dir) Recent changes to arch/ppc/boot/lib/Makefile cause CC arch/ppc/boot/lib/../../../../lib/zlib_inflate/infblock.o Assembler messages: FATAL: can't create arch/ppc/boot/lib/../../../../lib/zlib_inflate/infblock.o: No such file or directory when building a ppc kernel using O=$(output_dir) with CONFIG_ZLIB_INFLATE=n, because the $(output_dir)/lib/zlib_inflate directory doesn't get created. This patch, which makes arch/ppc/boot/lib/Makefile create the directory if needed, is one fix for the problem. Signed-off-by: Roland Dreier <roland@topspin.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2036.1.3, 2004-10-21 10:56:02-07:00, mporter@kernel.crashing.org [PATCH] ppc32: remove bogus PPC44x prefetch workaround This patch removes the bogus workaround for dcache prefetch beyond the end of the physical memory. Signed-off-by: Eugene Surovegin <ebs@ebshome.net> Signed-off-by: Matt Porter <mporter@kernel.crashing.org> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2036.1.2, 2004-10-21 10:55:50-07:00, aoki@sdl.hitachi.co.jp [PATCH] vm thrashing control tuning CONFIG_SWAP=n build fix Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2036.1.1, 2004-10-21 10:03:33-07:00, torvalds@evo.osdl.org Update tty layer to not mix kernel and user pointers. Instead, tty_io.c will always copy user space data to kernel space, leaving the drivers to worry only about normal kernel buffers. No more "from_user" flag, and having the user copy in each driver. This cleans up the code and also fixes a number of locking bugs. ChangeSet@1.2037, 2004-10-21 16:30:23+02:00, bzolnier@trik.(none) [ide] remove broken pdc4030 driver Sigh, I broke it by accident 16 months ago and nobody has noticed (I suspect that it was non-functional even earlier). Additionally, this driver: * should be converted to use scatterlists * has verbose debugging enabled by default * needs hacks all over IDE code * is guilty of crimes against ide_hwifs[] Just remove it for now. Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com> ChangeSet@1.2010.2.165, 2004-10-21 09:34:07+01:00, rddunlap@osdl.org MTD: dilnetpc: use %p for ptr printk arg. Use %p to print a pointer, so that its length doesn't matter and so that gcc won't complain. drivers/mtd/maps/dilnetpc.c:416: warning: long unsigned int format, pointer arg (arg 2) Signed-off-by: Randy Dunlap <rddunlap@osdl.org> Signed-off-by: David Woodhouse <dwmw2@infradead.org> ChangeSet@1.2036, 2004-10-20 17:44:41-07:00, torvalds@ppc970.osdl.org Fix posix timer direct user space access This makes us do the proper copy_to_user() for the new posix timers code. Acked by Christoph Lameter <clameter@sgi.com>. ChangeSet@1.2033, 2004-10-20 17:18:52-07:00, viro@parcelfarce.linux.theplanet.co.uk [PATCH] qla1820 iomem annotations Signed-off-by: Al Viro <viro@parcelfarce.linux.theplanet.co.uk> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2032, 2004-10-20 17:18:40-07:00, viro@parcelfarce.linux.theplanet.co.uk [PATCH] ioremap cleanups in aic7xxx ioremap() is capable of dealing with addresses that are not page-aligned; no need to duplicate that in driver. Signed-off-by: Al Viro <viro@parcelfarce.linux.theplanet.co.uk> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2031, 2004-10-20 17:18:25-07:00, viro@parcelfarce.linux.theplanet.co.uk [PATCH] aac7xxx iomem annotations aic7xxx annotations - trivial part Signed-off-by: Al Viro <viro@parcelfarce.linux.theplanet.co.uk> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2030, 2004-10-20 17:18:13-07:00, viro@parcelfarce.linux.theplanet.co.uk [PATCH] nsp32 iomem annotations Signed-off-by: Al Viro <viro@parcelfarce.linux.theplanet.co.uk> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2029, 2004-10-20 17:17:58-07:00, viro@parcelfarce.linux.theplanet.co.uk [PATCH] megaraid iomem annotations Signed-off-by: Al Viro <viro@parcelfarce.linux.theplanet.co.uk> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2028, 2004-10-20 17:17:45-07:00, viro@parcelfarce.linux.theplanet.co.uk [PATCH] ips iomem annotations Signed-off-by: Al Viro <viro@parcelfarce.linux.theplanet.co.uk> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2027, 2004-10-20 17:17:32-07:00, viro@parcelfarce.linux.theplanet.co.uk [PATCH] ipr iomem annotations Annotated. Original reused the structure that contained pointers into remapped iomem for storing offsets in such area, so we need to split that beast. Signed-off-by: Al Viro <viro@parcelfarce.linux.theplanet.co.uk> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2026, 2004-10-20 17:17:20-07:00, viro@parcelfarce.linux.theplanet.co.uk [PATCH] isurf iomem annotations Signed-off-by: Al Viro <viro@parcelfarce.linux.theplanet.co.uk> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2025, 2004-10-20 17:17:09-07:00, viro@parcelfarce.linux.theplanet.co.uk [PATCH] teles{0,pci} iomem annotations Signed-off-by: Al Viro <viro@parcelfarce.linux.theplanet.co.uk> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2024, 2004-10-20 17:16:54-07:00, viro@parcelfarce.linux.theplanet.co.uk [PATCH] kyro iomem annotations Signed-off-by: Al Viro <viro@parcelfarce.linux.theplanet.co.uk> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2023, 2004-10-20 17:16:42-07:00, viro@parcelfarce.linux.theplanet.co.uk [PATCH] skystar2 iomem annotations Signed-off-by: Al Viro <viro@parcelfarce.linux.theplanet.co.uk> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2022, 2004-10-20 17:16:29-07:00, viro@parcelfarce.linux.theplanet.co.uk [PATCH] sx.c iomem annotations and fixes a bunch of missing readb() and check of 64Kb alignment of physical address done on remapped one. Signed-off-by: Al Viro <viro@parcelfarce.linux.theplanet.co.uk> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2021, 2004-10-20 17:16:17-07:00, viro@parcelfarce.linux.theplanet.co.uk [PATCH] if_ppp.h __user annotation annotated ioctl structure Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2020, 2004-10-20 17:16:02-07:00, viro@parcelfarce.linux.theplanet.co.uk [PATCH] sparc32 kconfig fixes a) CONFIG_VT should set CONFIG_INPUT b) parport_pc and serial/8250 are broken for sparc32 same as for sparc64 Signed-off-by: Al Viro <viro@parcelfarce.linux.theplanet.co.uk> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2019, 2004-10-20 17:15:50-07:00, viro@parcelfarce.linux.theplanet.co.uk [PATCH] moxa iomem annotations Signed-off-by: Al Viro <viro@parcelfarce.linux.theplanet.co.uk> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2018, 2004-10-20 17:08:10-07:00, torvalds@ppc970.osdl.org Merge bk://bart.bkbits.net/ide-2.6 into ppc970.osdl.org:/home/torvalds/v2.6/linux ChangeSet@1.2010.2.164, 2004-10-21 01:05:56+01:00, dwmw2@shinybook.infradead.org JFFS2 updates - Reduce memory use by merging adjacent obsolete raw_node_refs - Error handling fixes - Respect kmalloc size limit in scan - NAND ECC updates Signed-Off-By: David Woodhouse <dwmw2@infradead.org> ChangeSet@1.2017, 2004-10-20 17:05:52-07:00, akpm@osdl.org [PATCH] i2o: missing bits from merge A couple of functions got themselves lost. cc: <Markus.Lidel@shadowconnect.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2016, 2004-10-20 17:05:35-07:00, akpm@osdl.org [PATCH] v4l: missing bits Missing parts of the v4l update Cc: Gerd Knorr <kraxel@bytesex.org> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2015, 2004-10-20 17:04:34-07:00, torvalds@ppc970.osdl.org Merge http://linux-watchdog.bkbits.net/linux-2.6-watchdog into ppc970.osdl.org:/home/torvalds/v2.6/linux ChangeSet@1.2010.5.3, 2004-10-20 16:38:33-07:00, davem@nuts.davemloft.net [SPARC64]: Update defconfig. Signed-off-by: David S. Miller <davem@davemloft.net> ChangeSet@1.2010.5.2, 2004-10-20 16:37:26-07:00, davem@nuts.davemloft.net [IEEE1394]: ohci1394.c/pcylynx.c need asm/irq.h Signed-off-by: David S. Miller <davem@davemloft.net> ChangeSet@1.2010.2.163, 2004-10-21 00:35:05+01:00, tglx@linutronix.de MTD: NAND flash driver updates. - Use new RS library for ECC - Add support for new NAND flash chips - New board support: - iPAQ H1910 - Renesas AG-AND devel board - Simtec S3C210 - Support for shared controllers on multiple chips. Signed-Off-By: Thomas Gleixner <tglx@linutronix.de> Signed-Off-By: David Woodhouse <dwmw2@infradead.org> ChangeSet@1.2010.5.1, 2004-10-20 16:33:46-07:00, davem@nuts.davemloft.net [SPARC64]: Make iomap.o obj-y instead of lib-y for module exports. Signed-off-by: David S. Miller <davem@davemloft.net> ChangeSet@1.2010.2.162, 2004-10-21 00:25:44+01:00, dwmw2@shinybook.infradead.org MTD userspace ABI: fix userspace compilation w.r.t. __user Signed-Off-By: David Woodhouse <dwmw2@infradead.org> ChangeSet@1.2010.2.161, 2004-10-21 00:23:10+01:00, tglx@linutronix.de MTD: M-Systems DiskOnChip translation layer (NFTL): fix unused variable. Signed-Off-By: Thomas Gleixner <tglx@linutronix.de> Signed-Off-By: David Woodhouse <dwmw2@infradead.org> ChangeSet@1.2010.2.160, 2004-10-21 00:17:33+01:00, dwmw2@shinybook.infradead.org MTD translation layer helper: set PF_NOFREEZE to allow sleep Patch from Todd Poynor Signed-Off-By: David Woodhouse <dwmw2@infradead.org> ChangeSet@1.2010.2.159, 2004-10-21 00:13:45+01:00, dwmw2@shinybook.infradead.org MTD: NOR flash chip driver updates Mostly from Eric Biederman for supporting BIOS flash. - Move support firmware hub style lock and unlock into fhw_lock.h (from cfi_cmdset_0002) - Move cfi_varsize_frob into cfi_util from cfi_cmdset_0001.c and cfi_cmdset_0002.c - reduce gen_probe probe failuers to a debug level message - Modify cfi_fixup to take a struct mtd_info instead of a struct map_info So that the fixup routines can modify the mtd functions. - Modify cfi_cmdset_0001() to allocate and initialize the mtd structure before calling cfi_fixup. - Modify cfi_cmdset_0002() to allocate and initialize the mtd structure before calling cfi_fixup. - Refactor the hard coded fixups in cfi_cmdset_0001 and cfi_cmdset_0002 so the improved cfi_fixup infrastructure. - Rewrote amd76xrom and ichxrom. They now report their starting physical address in their name. They now both handle multiple bankwidth configurations They both can create multipe mtd devices. They both now assume the rom windows are properly opened by the BIOS or whatever runs previous to them. Their code is now synchromized so it is almost identical, and could be a starting point for a x86_rom_probe. Signed-Off-By: David Woodhouse <dwmw2@infradead.org> ChangeSet@1.2010.2.158, 2004-10-21 00:00:02+01:00, dwmw2@shinybook.infradead.org New MTD map drivers. - Technology Systems TS-5500 board - Simtec BAST - IBM 440GX Ocotea Signed-Off-By: David Woodhouse <dwmw2@infradead.org> ChangeSet@1.2010.4.1, 2004-10-20 22:58:50+00:00, tony.luck@intel.com Merge ChangeSet@1.2010.2.157, 2004-10-20 23:53:32+01:00, tglx@linutronix.de MTD char device access -- return data when ECC errors happen. This is sane, as the driver returns the real data and the return value is for information of NAND aware filesystems. Userspace access to raw NAND is usually restricted to debugging tools which are aware of the NAND specific problems. Signed-Off-By: Thomas Gleixner <tglx@linutronix.de> Signed-Off-By: David Woodhouse <dwmw2@infradead.org> ChangeSet@1.2010.3.10, 2004-10-20 22:53:23+00:00, jbarnes@sgi.com [IA64-SGI] more sparse I/O accessor fixes I forgot to add 'const volatile' to the I/O read/write functions in the last patch, and also forgot to update the _relaxed variants. This patch fixes that by adding 'const volatile' to the sn2 specific read/write routines as well as the ia64 machine vector wrappers. Signed-off-by: Jesse Barnes <jbarnes@sgi.com> Signed-off-by: Tony Luck <tony.luck@intel.com> ChangeSet@1.2010.2.156, 2004-10-20 23:50:36+01:00, dwmw2@shinybook.infradead.org MTD map access: Fix calculation of the number of longs in a bus access Patch from Ben Dooks <ben-mtd@fluff.org> Signed-Off-By: David Woodhouse <dwmw2@infradead.org> ChangeSet@1.2010.2.155, 2004-10-20 23:37:43+01:00, dwmw2@shinybook.infradead.org MTD map driver update: ppc44x 'ebony' board - Update mporter email address - Include file fixups - Tglx's __iomem fixes Signed-Off-By: David Woodhouse <dwmw2@infradead.org> ChangeSet@1.2010.2.154, 2004-10-20 23:34:33+01:00, dwmw2@shinybook.infradead.org MTD map driver update: Alchemy DB1xxx boards - Change Pete Popov's email address - Tglx's __iomem fixes - Include file cleanups Signed-Off-By: David Woodhouse <dwmw2@infradead.org> ChangeSet@1.2010.2.153, 2004-10-20 23:30:22+01:00, dwmw2@shinybook.infradead.org MTD cmdlinepart: Allow partition definitions to be set from elsewhere ... by making mtdpart_setup() non-static Patch from Juha Yrj�l� committed by Jarkko Lavinen. Signed-Off-By: David Woodhouse <dwmw2@infradead.org> ChangeSet@1.2010.2.152, 2004-10-20 23:23:38+01:00, tglx@linutronix.de MTD updates for __iomem Signed-Off-By: Thomas Gleixner <tglx@linutronix.de> Signed-Off-By: David Woodhouse <dwmw2@infradead.org> ChangeSet@1.2010.2.151, 2004-10-20 23:04:05+01:00, tglx@linutronix.de Add DocBook documentation for MTD NAND drivers Signed-Off-By: Thomas Gleixner <tglx@linutronix.de> Signed-Off-By: David Woodhouse <dwmw2@infradead.org> ChangeSet@1.2010.2.150, 2004-10-20 22:55:08+01:00, tglx@linutronix.de Shared Reed-Solomon ECC library The attached patch contains a shared Reed-Solomon Library analogous to the shared zlib. (N)AND FLASH is gaining popularity and there are a lot of ASIC/SoC/FPGA controllers around which implement hardware support for Reed-Solomon error correction. As usual they use different implementations (polynomials etc.). So it's obvious to use a shared library for the common tasks of error correction. A short scan through the kernel revealed that at least the ftape driver uses Reed-Solomon error correction. It could be easily converted to use the shared library code. The encoder/decoder code is lifted from the GPL'd userspace RS-library written by Phil Karn. I modified/wrapped it to provide the different functions which we need in the MTD/NAND code. The library is tested in extenso under various MTD/NAND configurations. The lib should be usable for other purposes right out of the box. Adjustment for currently not implemented functionality is an easy task. I'm willing to take the maintainership of the library. Signed-Off-By: Thomas Gleixner <tglx@linutronix.de> Signed-Off-By: David Woodhouse <dwmw2@infradead.org> "No objections at all. Just keep the authorship notices." -- Phil Karn ChangeSet@1.2010.3.9, 2004-10-20 20:40:02+00:00, jbarnes@sgi.com [IA64-SGI] sparse cleanups & misc fixes for sn2 This is a big patch mostly because I trimmed shub_mmr.h down from 17M to 11k or so. It fixes a number of things sparse discovered and removes some dead code, fixes up some prototypes, etc. Of note: o sn_proc_fs.c was directly dereferencing user pointers, fixed o sn_hwperf.c was missing an include and was using asm-ia64 directly o the I/O routines were all missing proper sparse annotations o dead code in prominfo_proc.c has been removed o fix generic build by putting numionodes into asm/sn/io.h With this patch applied, the check build is pretty clean. The sn_console bit depends on some of the other changes, so it's included here. Signed-off-by: Jesse Barnes <jbarnes@sgi.com> Signed-off-by: Tony Luck <tony.luck@intel.com> ChangeSet@1.2010.3.8, 2004-10-20 20:29:33+00:00, jbarnes@sgi.com [IA64] fix sba_iommu build sba_iommu.c needs to include linux/nodemask.h for node_online now. Here's a patch to add it. Signed-off-by: Jesse Barnes <jbarnes@sgi.com> Signed-off-by: Tony Luck <tony.luck@intel.com> ChangeSet@1.2010.3.7, 2004-10-20 20:26:30+00:00, pfg@sgi.com [IA64-SGI] Mod to allow functions other than zero to use virtual channel 1. Signed-off-by: Patrick Gefre <pfg@sgi.com> Signed-off-by: Tony Luck <tony.luck@intel.com> ChangeSet@1.2010.3.6, 2004-10-20 20:23:20+00:00, jbarnes@sgi.com [IA64-SGI] snsc.c: snsc needs asm/sn/io.h The sn system controller driver needs asm/sn/io.h in order to build correctly (it was missing the numionodes declaration). Signed-off-by: Jesse Barnes <jbarnes@sgi.com> Signed-off-by: Tony Luck <tony.luck@intel.com> ChangeSet@1.2013, 2004-10-20 20:34:23+01:00, rmk@flint.arm.linux.org.uk [ARM] Add seqlocking to timers. Sometimes, it's useful to have locking. Especially when we're talking about time keeping. It would appear that shemminger's patch of 5th February 2003 completely missed updating _ANY_ ARM timer implementations and, because linux-arch didn't exist at the time, there appears to have been no notification to any architecture developer that maybe, just maybe, some work was required. One wonders how many other changes are in the kernel which architecture maintainers have missed. ChangeSet@1.2010.3.5, 2004-10-20 19:01:36+00:00, pfg@sgi.com [IA64] export sn_dma_mapping_error for libata Signed-off-by: Patrick Gefre <pfg@sgi.com> Signed-off-by: Tony Luck <tony.luck@intel.com> ChangeSet@1.2010.3.4, 2004-10-20 18:32:46+00:00, jbarnes@sgi.com [IA64] numa.c, discontig.c: sparse: use NULL, not 0 Clean up a couple of places that were using 0 instead of NULL, which is the more proper value. Signed-off-by: Jesse Barnes <jbarnes@sgi.com> Signed-off-by: Tony Luck <tony.luck@intel.com> ChangeSet@1.2010.3.3, 2004-10-20 18:28:59+00:00, jbarnes@sgi.com [IA64] mca.c: sparse cleanup Looks like we were casting a value into a union and sparse doesn't like that. Why not just assign it directly to the appropriate field? Signed-off-by: Jesse Barnes <jbarnes@sgi.com> Signed-off-by: Tony Luck <tony.luck@intel.com> ChangeSet@1.2010.3.2, 2004-10-20 18:23:39+00:00, hawkes@sgi.com [IA64] top level scheduler domain for ia64 Some have noticed that the overlapping sched domains code doesn't quite work as intended (it results in disjoint domains on some machines), and that a top level, machine spanning domain is needed. This patch from John Hawkes adds it to the ia64 code. This allows processes to run on all CPUs in large systems, though balancing is limited. It should go to Linus soon now otherwise large systems will only have ~16p (depending on topology) usable by the scheduler. I sanity checked it on a small system after rediffing John's original, and he's done some testing on very large systems. Nick, can you buy off on the sched.c change? Alternatively, do you want to send that fix separately John? Nick did indeed ACK this change, but it isn't dependent on this ia64 specific part ... so it's going to be submitted separately. Signed-off-by: John Hawkes <hawkes@sgi.com> Signed-off-by: Jesse Barnes <jbarnes@sgi.com> Signed-off-by: Tony Luck <tony.luck@intel.com> ChangeSet@1.2010.3.1, 2004-10-20 18:16:51+00:00, tony.luck@intel.com Merge intel.com:/data/home/aegl/BK/Linus into intel.com:/data/home/aegl/BK/linux-ia64-release-2.6.10 ChangeSet@1.2010.1.6, 2004-10-20 19:10:23+02:00, bzolnier@trik.(none) [ide] unify PIO code Use PIO code from ide-taskfile.c in ide-disk.c so: * drive status is checked after PIO read * request is failed if invalid data phase is detected during PIO write Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com> ChangeSet@1.2010.1.5, 2004-10-20 19:05:20+02:00, bzolnier@trik.(none) [ide] ide-disk: unify PIO write/multiwrite code Merge multwrite_intr() into write_intr(). The only change in functionality is that rq->errors is now also cleared for multiwrite PIO (if there is no error). Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com> ChangeSet@1.2010.2.148, 2004-10-20 10:00:37-07:00, torvalds@ppc970.osdl.org Merge bk://kernel.bkbits.net/davem/net-2.6 into ppc970.osdl.org:/home/torvalds/v2.6/linux ChangeSet@1.2010.1.4, 2004-10-20 18:52:39+02:00, bzolnier@trik.(none) [ide] sg PIO for fs requests Convert CONFIG_IDE_TASKFILE_IO=n code to use scatterlists for PIO transfers. Fixes longstanding 'data integrity on error' issue and makes barriers work with PIO. Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com> ChangeSet@1.2010.1.3, 2004-10-20 18:48:28+02:00, bzolnier@trik.(none) [ide] sg PIO for taskfile requests Use scatterlists for taskfile based PIO transfers instead of directly walking rq->[bio,cbio] lists. If CONFIG_IDE_TASKFILE_IO is defined this code will be used for fs requests. ide_pio_sector() is based on ata_pio_sector() from libata-core.c so kudos to Jeff. Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com> ChangeSet@1.2010.2.147, 2004-10-20 08:46:19-07:00, akpm@osdl.org [PATCH] typhoon build fix Fix incorrect attempt to doubly-initialise the ethtool ops. Cc: <jgarzik@redhat.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2010.2.146, 2004-10-20 08:46:04-07:00, kernel@linuxace.com [PATCH] doc: scsihosts parameter no longer exists The scsihosts boot parameter was removed in 2.5.73, but references to it still exist in docs. Cleanup below. Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2010.2.145, 2004-10-20 08:45:49-07:00, sct@redhat.com [PATCH] ext3 directio block leak fix The orphan list holds inodes that need to be truncated on recovery. In the O_DIRECT case, it's used if we extend the inode --- the truncate on recovery means we'll recover the newly-allocated disk blocks if we crash after the IO starts but before i_size is updated on disk. Now, the orphan list is *also* used to delete inodes that are unlinked but still-open. Those get truncated but also deleted on recovery. The orphan list is held both in memory and on disk. So the rules are that the inode can't be reclaimed while on the orphan list. There are only two cases --- either the inode is actively being written(O_DIRECT) or truncated (in which case the inode is by definition not going to be reused), or it's unlinked but still open (again, non-reclaimable). But in the case where you're truncating or write(O_DIRECT)ing a file that is *ALSO* unlinked, there's a problem --- the final unlink would put the inode on the orphan list, but the write/truncate would try to add/remove it. End result is that the inode disappears from the orphan list while it's still unlinked-but-in-use. That's just a leak-on-crash, it's not going to be detectable in normal use. But it's still a bug, and the way we fix it is for direct-IO and truncate not to do the ext3_orphan_del if the file is unlinked (ie. i_nlink==0). Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2010.2.144, 2004-10-20 08:45:34-07:00, andros@thnk.citi.umich.edu [PATCH] nfs4 lease: add the new lock manager callbacks to the documentation Add the new lock manager callbacks to the documentation Signed-off-by: Andy Adamson <andros@citi.umich.edu> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2010.2.143, 2004-10-20 08:45:19-07:00, andros@thnk.citi.umich.edu [PATCH] nfs4 lease: export remove_lease Export remove_lease(), an interface to time_out_leases() with an fl_break_time in the past. needed by nfsd Signed-off-by: Andy Adamson <andros@citi.umich.edu> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2010.2.142, 2004-10-20 08:45:03-07:00, andros@thnk.citi.umich.edu [PATCH] nfs4 lease: export setlease Export setlease(), a direct interface to __setlease() used by nfsd Signed-off-by: Andy Adamson <andros@citi.umich.edu> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2010.2.141, 2004-10-20 08:44:48-07:00, andros@thnk.citi.umich.edu [PATCH] nfs4 lease: use the inode i_writecount Use the inode i_writecount to test for handing out a F_RDLCK lease. Signed-off-by: Andy Adamson <andros@citi.umich.edu> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2010.2.140, 2004-10-20 08:44:33-07:00, andros@thnk.citi.umich.edu [PATCH] nfs4 lease: separate the lease processsing code nfsd will not have a file descriptor, nor an owner on the filp. nfsd also will not use signals. Seperate the lease processsing coe from fcntl_setlease() into a __setlease() call. Signed-off-by: Andy Adamson <andros@citi.umich.edu> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2010.2.139, 2004-10-20 08:44:22-07:00, andros@thnk.citi.umich.edu [PATCH] nfs4 lease: move the f_delown processing Move the f_delown processing from lease_modify() into a new default lock manager fl_release_private callback. Signed-off-by: Andy Adamson <andros@citi.umich.edu> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2010.2.138, 2004-10-20 08:44:07-07:00, andros@thnk.citi.umich.edu [PATCH] nfs4 lease: aeparate the lease initialization code Separate the lease initialization code from lease_alloc(). set the default lock manager ops. Signed-off-by: Andy Adamson <andros@citi.umich.edu> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2010.2.137, 2004-10-20 08:43:51-07:00, andros@thnk.citi.umich.edu [PATCH] nfs4 lease: add a lock manager break callback - Add a lock manager break callback to break_lease() for lock managers to initiate breaking a lease. - Move the break_lease() kill_fasync() call to a default lock manager fl_break callback Signed-off-by: Andy Adamson <andros@citi.umich.edu> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2010.2.136, 2004-10-20 08:43:39-07:00, andros@thnk.citi.umich.edu [PATCH] nfs4 lease: add a lock manager release private callback Add a lock manager release private callback to locks_free_lock() for lock manger lease clean-up. Signed-off-by: Andy Adamson <andros@citi.umich.edu> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2010.2.135, 2004-10-20 08:43:24-07:00, andros@thnk.citi.umich.edu [PATCH] nfs4 lease: add a lock manager copy lock callback The following patches provide an interface to the lease subsystem in the current VFS locking code. NFSv4 delegations and Samba op-locks share most architecture features. The version 4 NFS server delegation implementation should use leases to co-ordinate behavior between local, Samba, and NFS access. The main design points are - Seperate the fcntl interface from the file_lock FL_LEASE processing in fcntl_setlease, creating __setlease() called by fcntl_setlease() - Add new lock_manager callbacks to enable lease properties to be set, leases to be broken, and leases to be cleaned up: with default callbacks preserving the current fcntl_setlease properties. - Add a new interface, setlease() which also calls __setlease(), and remove_lease() for kernel lease managers (e.g. the v4 NFS server) This patch: Add a lock manager copy lock callback to locks_copy_lock() so that nfsd can set lease properties. Signed-off-by: Andy Adamson <andros@citi.umich.edu> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2010.2.134, 2004-10-20 08:43:11-07:00, jeffm@csh.rit.edu [PATCH] reiserfs: allow user_xattr and acl options to be ignored, with warning This patch uses the REISERFS_UNSUPPORTED_OPT flag to denote -o(no)acl, and -o(no)user_xattr as unsupported, but allowable, when support isn't built into the kernel. Signed-off-by: Jeff Mahoney <jeffm@novell.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2010.2.133, 2004-10-20 08:42:56-07:00, jeffm@csh.rit.edu [PATCH] reiserfs: support for REISERFS_UNSUPPORTED_OPT notation This patch adds a REISERFS_UNSUPPORTED_OPT flag to denote when a mount option is allowable, but is unsupported in the running configuration. This allows the potential for the set of mount options to be consistent, regardless of what features the kernel is compiled with. Rather than failing the mount, a warning is issued and the mount succeeds. Signed-off-by: Jeff Mahoney <jeffm@novell.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2010.2.132, 2004-10-20 08:42:41-07:00, kenneth.w.chen@intel.com [PATCH] Enable config_schedstats for all arches Config option CONFIG_SCHEDSTATS is currently enabled via arch specific Kconfig.debug. Only x86 and ppc arches has code to turn it on. Why not put it in generic lib/Kconfig.debug so it is done once to enable everyone? Signed-off-by: Ken Chen <kenneth.w.chen@intel.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2010.2.131, 2004-10-20 08:42:29-07:00, armin@melware.de [PATCH] Remove obsolete file Documentation/isdn/README.eicon The file Documentation/isdn/README.eicon is outdated and obsolete in kernel 2.6. This file includes description of the old Eicon ISDN driver in kernel 2.4, which was removed in 2.6. Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2010.2.130, 2004-10-20 08:42:17-07:00, bunk@stusta.de [PATCH] make CONFIG_PM_DEBUG depend on CONFIG_PM Signed-off-by: Chris Wright <chrisw@osdl.org> Signed-off-by: Adrian Bunk <bunk@stusta.de> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2010.2.129, 2004-10-20 08:42:02-07:00, bunk@stusta.de [PATCH] fix block/cciss.c with PROC_FS=n kernel/built-in.o(.text+0x1d42b): In function `crash_create_proc_entry': : undefined reference to `proc_vmcore' Signed-off-by: Adrian Bunk <bunk@stusta.de> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2010.2.128, 2004-10-20 08:41:42-07:00, kaos@ocs.com.au [PATCH] reference_init fix Treat .pci_fixup entries the same as .init code/data. Signed-off-by: Keith Owens <kaos@ocs.com.au> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2010.2.127, 2004-10-20 08:41:28-07:00, dean@arctic.org [PATCH] transmeta efficeon support and cpuid update This patch adds efficeon as a cpu option, and makes a small update to the transmeta cpuid code. (i wasn't sure if the various doc files are UTF-8... if they are, then the e should be a U-275 ;) The compile options may not be ideal, but they're probably close. i used -march=pentium3, but -march=pentium4 would have been good enough too. The cpuid update teaches transmeta.c about the extended processor revision present in cpuid level 0x80860002... the external documentation does not indicate how to break apart this field, and instructs only that the 32-bit value should be printed in hex (alas). Signed-off-by: dean gaudet <dean@arctic.org> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2010.2.126, 2004-10-20 08:41:12-07:00, macro@linux-mips.org [PATCH] "console=" parameter ignored I've noticed that under specific circumstances the "console=" kernel parameter is ignored. This happens when EARLY_PRINTK is enabled and the serial console is the only available. In this case unregister_console() when called for the early console sets preferred_console back to -1 replacing the value that was recorded by console_setup() -- the order of calls is as follows: 1. register_console() -- for the early console, 2. console_setup() -- recording the console index for the real console, 3. unregister_console() -- for the early console, erasing the console index recorded above, 4. register_console() -- for the real console, picking up the first device available, instead of the selected one. I've observed this problem with a DECstation system using ttyS3 -- its default console device from the firmware's point of view. The solution is to restore the setting of "console=" upon unregister_console(). This made a snapshot of 2.4.26 work for me. I wasn't able to test the changes with 2.6 because DECstation drivers don't support it yet, but the code responsible for console selection appears functionally the same. So I've concluded it needs the same change. Here's a patch. Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2010.2.125, 2004-10-20 08:40:58-07:00, castet.matthieu@free.fr [PATCH] bttv IRQ fix Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2010.2.124, 2004-10-20 08:40:45-07:00, ed@il.fontys.nl [PATCH] lockd: remove hardcoded maximum NLM cookie length At the moment, the NLM cookie length is fixed to 8 bytes, while 1024 is the theoretical maximum. FreeBSD uses 16 bytes, Mac OS X uses 20 bytes. Therefore we need to make the length dynamic (which I set to 32 bytes). This patch is based on an old patch for Linux 2.4.23-pre9, which I changed to patch properly (also added some stylish NIPQUAD fixes). From: Neil Brown <neilb@cse.unsw.edu.au> Further lockd tidyups. - NIPQUAD everywhere that is appropriate - use XDR_QUADLEN in more places as appropriate - discard QUADLEN which is a lockd-specific version of XDR_QUADLEN Signed-off-by: Neil Brown <neilb@cse.unsw.edu.au> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2010.2.123, 2004-10-20 08:40:33-07:00, neilb@cse.unsw.edu.au [PATCH] md: convert %Lu to %llu in printk While %Lu works with gcc, %llu is the correct usage. Signed-off-by: Neil Brown <neilb@cse.unsw.edu.au> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2010.2.122, 2004-10-20 08:40:18-07:00, manfred@colorfullife.com [PATCH] slab: reduce fragmentation due to kmem_cache_alloc_node Attached is a patch that fixes the fragmentation that Badri noticed with kmem_cache_alloc_node. kmem_cache_alloc_node tries to allocate memory from a given node. The current implementation contains two bugs: - the node aware code was used even for !CONFIG_NUMA systems. Fix: inline function that redefines kmem_cache_alloc_node as kmem_cache_alloc for !CONFIG_NUMA. - the code always allocated a new slab for each new allocation. This caused severe fragmentation. Fix: walk the slabp lists and search for a matching page instead of allocating a new page. - the patch also adds a new statistics field for node-local allocs. They should be rare - the codepath is quite slow, especially compared to the normal kmem_cache_alloc. Signed-Off-By: Manfred Spraul <manfred@colorfullife.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2010.2.121, 2004-10-20 08:40:03-07:00, marcelo.tosatti@cyclades.com [PATCH] Remove redundant AND from swp_type() There is a useless AND in swp_type() function. We just shifted right SWP_TYPE_SHIFT() bits the value from the swp_entry_t, and then we AND it with "(1 << 5) - 1" (which is a mask corresponding to the number of bits used by "type"). Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2010.2.120, 2004-10-20 08:39:44-07:00, dino@in.ibm.com [PATCH] ps shows wrong ppid /proc shows the wrong PID as parent in the following case Process A creates Threads 1 & 2 (using pthread_create) Thread 2 then forks and execs process B getppid() for Process B shows Process A (rightly) as parent, however /proc/B/status shows Thread 3 as PPid (incorrect). Signed-off-by: Dinakar Guniguntala <dino@in.ibm.com> Acked-by: Ingo Molnar <mingo@elte.hu> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2010.2.119, 2004-10-20 08:39:25-07:00, bunk@stusta.de [PATCH] #include <asm/bitops.h> -> #include <linux/bitops.h> There's no reason to directly #include <asm/bitops.h> since it's available on all architectures and also included by #include <linux/bitops.h>. This patch changes #include <asm/bitops.h> to #include <linux/bitops.h>. Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2010.2.118, 2004-10-20 08:38:41-07:00, haveblue@us.ibm.com [PATCH] remove weird pmd cast I don't know what this is trying to do. It might be some kind of artifact from when get_pgd_slow() was removed. The expanded expression with __pa() ends up looking something like this: (unsigned long)(u64)(u32)pmd-PAGE_OFFSET and that is just nutty because pmd is a pointer now, anyway. Attached patch removes the casts. Signed-off-by: Dave Hansen <haveblue@us.ibm.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2010.2.117, 2004-10-20 08:38:30-07:00, blaisorblade_spam@yahoo.it [PATCH] use container_of() for rb_entry() Use, in the rb_entry definition, the container_of macro instead of reinventing the wheel; compared to using offset_of() as I did in the prev. version, it has type safety checking. Signed-off-by: Paolo 'Blaisorblade' Giarrusso <blaisorblade_spam@yahoo.it> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2010.2.116, 2004-10-20 08:38:15-07:00, pavel@ucw.cz [PATCH] __init poisoning for i386 Overwrite __init section so calls to __init functions from normal code are caught, reliably. (Plus a fix from Dave Hansen) Signed-off-by: Dave Hansen <haveblue@us.ibm.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2010.2.115, 2004-10-20 08:38:01-07:00, akpm@osdl.org [PATCH] vmalloc_to_page() preempt cleanup remove unneeded preempt_disable/enable. pte_offset_map/unmap already does that. Signed-off-by: Ingo Molnar <mingo@elte.hu> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2010.2.114, 2004-10-20 08:37:45-07:00, juhl-lkml@dif.dk [PATCH] __copy_to_user return value checks in i2o_config.c Signed-off-by: Jesper Juhl <juhl-lkml@dif.dk> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2010.2.113, 2004-10-20 08:37:33-07:00, Matt_Domsch@dell.com [PATCH] modules: put srcversion checksum in each modinfo section Separate the module source and header checksum into a separate modinfo field srcversion. With CONFIG_MODULE_SRCVERSION_ALL=y, put srcversion into every module, not just those with MODULE_VERSION("something"). Patch by Rusty Russell, trivial merging and testing by Matt Domsch Signed-off-by: Matt Domsch <Matt_Domsch@dell.com> Signed-off-by: Rusty Russell <rusty@rustcorp.com.au> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2010.2.112, 2004-10-20 08:37:21-07:00, Matt_Domsch@dell.com [PATCH] idefloppy: suppress media not present errors Below is a patch to suppress printing uninformative errors from ide-floppy.c in response to commands to floppy drives in which no media is present. Without this patch, commands sent to ide-floppy devices without media inserted cause error messages on the console (KERN_ERR level) such as: ide-floppy: ide: I/O error, pc = 0 key = 2, asc = 3a asq = 0 ide-floppy: ide: I/O error, pc = 1b key = 2, asc = 3a asq = 0 ide-floppy: ide: I/O error, pc = 23 key = 2, asc = 3a asq = 0 ide-floppy: ide: I/O error, pc = 1e key = 2, asc = 3a asq = 0 ide-floppy: ide: I/O error, pc = 1e key = 2, asc = 3a asq = 0 Dell's Virtual Floppy (system management presents to the local system an IDE floppy device, which is actually a floppy device in a remote system connected over an IP link) exhibits this also, when connecting to a remote floppy drive with no media present. Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2010.2.111, 2004-10-20 08:37:06-07:00, colin@colino.net [PATCH] Warning fix in drivers/macintosh/macio-adb.c This one fixes another unitialized var warning (which is harmless, but whatever). Signed-off-by: Colin Leroy <colin@colino.net> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2010.2.110, 2004-10-20 08:36:51-07:00, aoki@sdl.hitachi.co.jp [PATCH] proc.txt cleanup In Documentation/filesystems/proc.txt, explanation of /proc/meminfo is described in section 1.3 (IDE devices in /proc/ide). I think that it should be described in section 1.2 (Kernel data). Signed-off-by: Hideo Aoki <aoki@sdl.hitachi.co.jp> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2010.2.109, 2004-10-20 08:36:36-07:00, aoki@sdl.hitachi.co.jp [PATCH] vm thrashing control tuning This patch adds "swap_token_timeout" parameter in /proc/sys/vm. The parameter means expired time of token. Unit of the value is HZ, and the default value is the same as current SWAP_TOKEN_TIMEOUT (i.e. HZ * 300). Signed-off-by: Hideo Aoki <aoki@sdl.hitachi.co.jp> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2010.2.108, 2004-10-20 08:36:22-07:00, Matt_Domsch@dell.com [PATCH] EDD: use EXTENDED READ command, add CONFIG_EDD_SKIP_MBR Some controller BIOSes have problems with the legacy int13 fn02 READ SECTORS command. int13 fn42 EXTENDED READ is used in preference by most boot loaders today, so lets use that. If EXTENDED READ fails or isn't supported, fall back to READ SECTORS. This hopefully resolves the three reports of BIOSes which would either long-pause (30+ seconds) or hang completely on the legacy READ SECTORS command. This also adds CONFIG_EDD_SKIP_MBR to eliminate reading the MBR on each BIOS-presented disk, in case there are further problems in this area. Signed-off-by: Matt Domsch <Matt_Domsch@dell.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2010.2.107, 2004-10-20 08:36:07-07:00, rsa@us.ibm.com [PATCH] hvc_console fix to prevent oops and late hangup and write operations This patch prevents execution of hvc_write() and hvc_hangup() after the tty layer has executed a final hvc_close() against a device. This patch provides a better method than was previously used. tty->driver_data is no longer invalidated so we'll no longer get oopses when the tty layer allows late hangup() and write() operations. - Removed silly tty->driver_data = NULL; from hvc_close which prevents possible oops in hvc_write() and hvc_hangup() due to improperly acting ldisc close ordering. - Added hp->count <= 0 check to hvc_write() and hvc_hangup() to prevent execution of these function after hvc_close() has been invoked by the tty layer. Same tty ldisc issues as above are the reason. - Added some comments to clarify the situation. - Awaiting a forth coming patch from Alan Cox which should clean up the close ordering and prevent the late hangup and write ops from happening. Signed-off-by: Ryan S. Arnold <rsa@us.ibm.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2010.2.106, 2004-10-20 08:35:52-07:00, yuasa@hh.iij4u.or.jp [PATCH] mips: added missing definition and fixed typo This patch had added missing definition and had fixed typo for VRC4173. Cc: Ralf Baechle <ralf@linux-mips.org> Signed-off-by: Yoichi Yuasa <yuasa@hh.iij4u.or.jp> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2010.2.105, 2004-10-20 08:35:37-07:00, ed@il.fontys.nl [PATCH] nfsd: Insecure port warning shows decimal IPv4 address print a couple of ipv4 addresses as dotted quads, not as hex. Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2010.2.104, 2004-10-20 08:35:22-07:00, olh@suse.de [PATCH] remove scsi ioctl from udf/lowlevel.c I'm not sure why these defines and typedefs exists, the driver compiles fine without it. Signed-off-by: Olaf Hering <olh@suse.de> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2010.2.103, 2004-10-20 08:35:07-07:00, baldrick@free.fr [PATCH] firmware_class: avoid double free The error exit path in request_firmware frees the allocated struct firmware *firmware, which is good. What is not so good is that the value of firmware has already been copied out to the caller as *firmware_p. The risk is that the caller will pass this to release_firmware, a double free. This is exactly what will happen if the caller copied the example code if(request_firmware(&fw_entry, $FIRMWARE, device) == 0) copy_fw_to_device(fw_entry->data, fw_entry->size); release(fw_entry); from the firmware documentation. Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2010.2.102, 2004-10-20 08:34:53-07:00, geert@linux-m68k.org [PATCH] Amifb: use new amifb:off logic to enhance audio experience Amiga frame buffer: We used to have a local hack in fbmem.c to always call the fbdev setup() routines, even when an fbdev was explicitly disabled on the kernel command line (video=xxx:off). This allowed amifb to suspend the monitor, but program the sync generator of the video controller in Denise/Lisa to a 31 kHz/70 Hz mode, increasing the maximum audio playback frequency. Thanks to the recently introduced fb_get_options() routine, we can kill the local hack and just use the return value of fb_get_options(). Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2010.2.101, 2004-10-20 08:34:38-07:00, geert@linux-m68k.org [PATCH] m68k: NULL vs. 0 cleanups A few more NULL vs. 0 cleanups, as detected by sparse. Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2010.2.100, 2004-10-20 08:34:23-07:00, geert@linux-m68k.org [PATCH] Amiga frame buffer: kill obsolete DMI Resolver code Kill remainings of the DMI Resolver support code that got removed somewhere between 2.0 and 2.2. Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2010.2.99, 2004-10-20 08:34:09-07:00, geert@linux-m68k.org [PATCH] Amifb: update pseudocolor bitfield lenghts Amiga frame buffer: The new convention (introduced in 2.6.9-rc1) requires that the usable color depth for pseudocolor visuals is indicated by the lengths of the color bitfields. Update amifb for this convention, and add a special case for HAM (Hold-and-Modify) mode (colormap has 16 (HAM6) or 64 (HAM8) entries). Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2010.2.98, 2004-10-20 08:33:54-07:00, geert@linux-m68k.org [PATCH] M68k: don't emit empty stack program header in vmlinux Recent versions of ld add an empty stack program header to the kernel image, which makes it incompatible with current m68k bootstrap loaders. Modify the linker script to make sure we see only the program headers that are really needed. (from Roman Zippel) Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2010.2.97, 2004-10-20 08:33:40-07:00, geert@linux-m68k.org [PATCH] m68k: minmax-removal arch/m68k/kernel/bios32.c M68k PCI: Removes unnecessary min/max macros and change calls to use kernel.h macros instead. Signed-off-by: Michael Veeck <michael.veeck@gmx.net> Signed-off-by: Maximilian Attems <janitor@sternwelten.at> Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2010.2.96, 2004-10-20 08:33:24-07:00, geert@linux-m68k.org [PATCH] Atari ACSI dependencies Atari ACSI: Correct a small problem in the dependencies of ATARI_BIONET and ATARI_PAMSNET (e.g. ATARI_ACSI=m shouldn't allow ATARI_BIONET=y). Signed-off-by: Adrian Bunk <bunk@fs.tum.de> Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2010.2.95, 2004-10-20 08:33:12-07:00, geert@linux-m68k.org [PATCH] m68k: MM off-by-one Fix off-by-one error in zone size calculation (from Didier Mequignon and Petr Stehlik) Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2010.2.94, 2004-10-20 08:32:59-07:00, janitor@sternwelten.at [PATCH] drivers: remove unused MOD_{DEC,INC}_USE_COUNT hch send in a patch to remove MOD_{DEC,INC}_USE_COUNT. Let's also remove useless references to it (comments, old ifdefs). Signed-off-by: maximilian attems <janitor@sternwelten.at> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2010.2.93, 2004-10-20 08:32:44-07:00, oleg@tv-sign.ru [PATCH] copy_thread(): unneeded child_tid initialization {set,clear}_child_tid initialized in copy_process() right after return from copy_thread(). These vars are not used in cleanup path if copy_thread() fails. grep -r _child_tid arch/ shows only ia64/kernel/asm-offsets.c, so i blindly patched non i386 archs too. Signed-off-by: Oleg Nesterov <oleg@tv-sign.ru> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2010.2.92, 2004-10-20 08:32:29-07:00, venkatesh.pallipadi@intel.com [PATCH] x86[64]: display phys_proc_id only when it is initialized phys_proc_id gets initialized only when (smp_num_siblings > 1). But gets printed even when (smp_num_siblings == 1). As a result we print incorrect physical processor id in /proc/cpuinfo, when HT is disabled. Signed-off-by:: "Venkatesh Pallipadi" <venkatesh.pallipadi@intel.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2010.2.91, 2004-10-20 08:32:14-07:00, hch@lst.de [PATCH] don't include <linux/irq.h> from drivers <linux/irq.h> is internals for the generic irq handler implementation, which is used on most but not all platforms. Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2010.2.90, 2004-10-20 08:31:59-07:00, oleg@tv-sign.ru [PATCH] detach_pid(): eliminate one find_pid() call Now there is no point in calling costly find_pid(type) if __detach_pid(type) returned non zero value. Acked-By: Kirill Korotaev <dev@sw.ru> Signed-off-by: Oleg Nesterov <oleg@tv-sign.ru> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2010.2.89, 2004-10-20 08:31:47-07:00, oleg@tv-sign.ru [PATCH] detach_pid(): restore optimization Kirill's kernel/pid.c rework broke optimization logic in detach_pid(). Non zero return from __detach_pid() was used to indicate, that this pid can probably be freed. Current version always (modulo idle threads) return non zero value, thus resulting in unneccesary pid_hash scanning. Also, uninlining __detach_pid() reduces pid.o text size from 2492 to 1600 bytes. Acked-By: Kirill Korotaev <dev@sw.ru> Signed-off-by: Oleg Nesterov <oleg@tv-sign.ru> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2010.2.88, 2004-10-20 08:31:31-07:00, clameter@sgi.com [PATCH] Posix compliant cpu clocks V6: mmtimer provides CLOCK_SGI_CYCLE * Add CLOCK_SGI_CYCLE provided by drivers/char/mmtimer Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2010.2.87, 2004-10-20 08:31:19-07:00, clameter@sgi.com [PATCH] Posix compliant cpu clocks POSIX clocks are to be implemented in the following way according to V3 of the Single Unix Specification: 1. CLOCK_PROCESS_CPUTIME_ID Implementations shall also support the special clockid_t value CLOCK_PROCESS_CPUTIME_ID, which represents the CPU-time clock of the calling process when invoking one of the clock_*() or timer_*() functions. For these clock IDs, the values returned by clock_gettime() and specified by clock_settime() represent the amount of execution time of the process associated with the clock. 2. CLOCK_THREAD_CPUTIME_ID Implementations shall also support the special clockid_t value CLOCK_THREAD_CPUTIME_ID, which represents the CPU-time clock of the calling thread when invoking one of the clock_*() or timer_*() functions. For these clock IDs, the values returned by clock_gettime() and specified by clock_settime() shall represent the amount of execution time of the thread associated with the clock. These times mentioned are CPU processing times and not the time that has passed since the startup of a process. Glibc currently provides its own implementation of these two clocks which is designed to return the time that passed since the startup of a process or a thread. Moreover Glibc's clocks are bound to CPU timers which is problematic when the frequency of the clock changes or the process is moved to a different processor whose cpu timer may not be fully synchronized to the cpu timer of the current CPU. This patchset results in a both clocks working reliably. The patch also implements the access to other the thread and process clocks of linux processes by using negative clockid's: 1. For CLOCK_PROCESS_CPUTIME_ID: -pid 2. For CLOCK_THREAD_CPUTIME_ID: -(pid + PID_MAX_LIMIT) This allows clock_getcpuclockid(pid) to return -pid and pthread_getcpuiclock(pid) to return -(pid + PID_MAX_LIMIT) to allow access to the corresponding clocks. Todo: - The timer API to generate events by a non tick based timer is not usable in its current state. The posix timer API seems to be only useful at this point to define clock_get/set. Need to revise this. - Implement timed interrupts in mmtimer after API is revised. The mmtimer patch is unchanged from V6 and stays as is in 2.6.9-rc3-mm2. But I expect to update the driver as soon as the interface to setup hardware timer interrupts is usable. Single Thread Testing CLOCK_THREAD_CPUTIME_ID= 0.494140878 resolution= 0.000976563 CLOCK_PROCESS_CPUTIME_ID= 0.494140878 resolution= 0.000976563 Multi Thread Testing Starting Thread: 0 1 2 3 4 5 6 7 8 9 Joining Thread: 0 1 2 3 4 5 6 7 8 9 0 Cycles= 0 Thread= 0.000000000ns Process= 0.495117441ns 1 Cycles=1000000 Thread= 0.140625072ns Process= 2.523438792ns 2 Cycles=2000000 Thread= 0.966797370ns Process= 8.512699671ns 3 Cycles=3000000 Thread= 0.806641038ns Process= 7.561527309ns 4 Cycles=4000000 Thread= 1.865235330ns Process= 12.891608163ns 5 Cycles=5000000 Thread= 1.604493009ns Process= 11.528326215ns 6 Cycles=6000000 Thread= 2.086915131ns Process= 13.500983475ns 7 Cycles=7000000 Thread= 2.245118337ns Process= 13.947272766ns 8 Cycles=8000000 Thread= 1.604493009ns Process= 12.252935961ns 9 Cycles=9000000 Thread= 2.160157356ns Process= 13.977546219ns Clock status at the end of the timer tests: Gettimeofday() = 1097084999.489938000 CLOCK_REALTIME= 1097084999.490116229 resolution= 0.000000040 CLOCK_MONOTONIC= 177.071675109 resolution= 0.000000040 CLOCK_PROCESS_CPUTIME_ID= 13.978522782 resolution= 0.000976563 CLOCK_THREAD_CPUTIME_ID= 0.497070567 resolution= 0.000976563 CLOCK_SGI_CYCLE= 229.967982280 resolution= 0.000000040 PROCESS clock of 1 (init)= 4.833986850 resolution= 0.000976563 THREAD clock of 1 (init)= 0.009765630 resolution= 0.000976563 Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2010.2.86, 2004-10-20 08:31:04-07:00, fhirtz@redhat.com [PATCH] Display committed memory limit and available in meminfo The following patch will have the committed memory limit (per the current overcommit ratio) and the amount of memory remaining under this limit displayed in meminfo. It's presently somewhat difficult to use the strict memory overcommit settings as it's somewhat difficult to determine the amount of memory remaining under the cap. This patch would make using strict overcommit a good bit simpler. Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2010.2.85, 2004-10-20 08:30:53-07:00, shemminger@osdl.org [PATCH] register_chrdev_region(), alloc_chrdev_region() const char A couple chrdev routines take a constant string and should be declared with const char *. Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2010.2.84, 2004-10-20 08:30:40-07:00, mahalcro@us.ibm.com [PATCH] BSD Secure Levels LSM: documentation This patch includes documentation on using the BSD Secure Levels LSM. Signed-off-by: Michael A. Halcrow <mahalcro@us.ibm.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2010.2.83, 2004-10-20 08:30:25-07:00, mahalcro@us.ibm.com [PATCH] BSD Secure Levels LSM: core This patch modifies Kconfig and Makefile to support building the BSD Secure Levels LSM, in addition to the module itself. Signed-off-by: Michael A. Halcrow <mahalcro@us.ibm.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2010.2.82, 2004-10-20 08:30:12-07:00, mahalcro@us.ibm.com [PATCH] BSD Secure Levels LSM: add time hooks I have received positive feedback from various individuals who have applied my BSD Secure Levels LSM patch, and so at this point I am submitting it to you with a request to merge it in. Nothing has changed in this patch since when I last posted it to the LKML, so I am not re-sending it there. This first patch adds hooks to catch attempts to set the system clock back. Signed-off-by: Michael A. Halcrow <mahalcro@us.ibm.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2010.2.81, 2004-10-20 08:30:01-07:00, roland@redhat.com [PATCH] move struct k_itimer out of linux/sched.h I don't know why struct k_itimer was ever declared in sched.h; perhaps at one time it was referenced by something else there. There is no need for it now. This patch moves the struct where it belongs, in linux/posix-timers.h. It has zero effect on anything except keeping the source easier to read. Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2010.2.80, 2004-10-20 08:29:47-07:00, jbglaw@lug-owl.de [PATCH] Document DEC VSXXX-AB digitizer as known working Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2010.2.79, 2004-10-20 08:29:31-07:00, mingo@elte.hu [PATCH] disk stats preempt safety The per-cpu disk stats are being updated in a non-preempt-safe manner in a couple of places. The patch introduces introduces preempt and non-preempt versions of the statistics code and updates the block code to use the appropriate ones. Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2010.2.78, 2004-10-20 08:29:19-07:00, zwane@linuxpower.ca [PATCH] Update 'noapic' description The 'noapic' kernel parameter only disables IOAPIC use and not all the APICs (which would include local APICs) in the system. Signed-off-by: Zwane Mwaikambo <zwane@fsmlabs.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2010.2.77, 2004-10-20 08:29:04-07:00, wli@holomorphy.com [PATCH] vm: convert users of remap_page_range() under sound/ to use remap_pfn_range() This patch converts all users of remap_page_range() under sound/ to use remap_pfn_range(), with the exception of maestro3 changelogs, which are likely expected to be preserved intact apart from additions (as most changelogs are), regardless of API changes. Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2010.2.76, 2004-10-20 08:28:49-07:00, wli@holomorphy.com [PATCH] vm: convert users of remap_page_range() under include/asm-*/ to use remap_pfn_range() This patch converts uses of remap_page_range() via io_remap_page_range() in include/asm-*/ to use remap_pfn_range(). io_remap_page_range() has a similar physical address overflow issue that needs to be addressed later. Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2010.2.75, 2004-10-20 08:28:33-07:00, wli@holomorphy.com [PATCH] vm: convert users of remap_page_range() under drivers/ and net/ to use remap_pfn_range() This patch converts all callers of remap_page_range() under arch/ and net/ to use remap_pfn_range() instead. Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2010.2.74, 2004-10-20 08:28:15-07:00, wli@holomorphy.com [PATCH] vm: convert references to remap_page_range() under arch/ and Documentation/ to remap_pfn_range() This patch converts all callers of remap_page_range() under arch/ and all references in Documentation/ to use remap_pfn_range(). Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2010.2.73, 2004-10-20 08:28:00-07:00, wli@holomorphy.com [PATCH] vm: introduce remap_pfn_range() to replace remap_page_range() This patch introduces remap_pfn_range(), destined to replace remap_page_range(), to which all callers of remap_page_range() are converted in the sequel. Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2010.2.72, 2004-10-20 08:27:48-07:00, neilb@cse.unsw.edu.au [PATCH] nfsd4: move code to truncate on open to separate function for OPEN with O_TRUNC, if the truncate fails, the open fails. for nfs4_open_upgrade, this means undo the get_write_access. for new OPENs, this means release the newly created stateid. Signed-off-by: Andy Adamson <andros@citi.umich.edu> Signed-off-by: J. Bruce Fields <bfields@citi.umich.edu> Signed-off-by: Neil Brown <neilb@cse.unsw.edu.au> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2010.2.71, 2004-10-20 08:27:34-07:00, neilb@cse.unsw.edu.au [PATCH] nfsd4: fix putrootfh return Thanks to Al Viro for noticing that putrootfh could return either a linux or an nfs error. Signed-off-by: J. Bruce Fields <bfields@citi.umich.edu> Signed-off-by: Neil Brown <neilb@cse.unsw.edu.au> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2010.2.70, 2004-10-20 08:27:19-07:00, neilb@cse.unsw.edu.au [PATCH] nfsd: clean up nfsd4_process_open2 Comments, dprintk cleanup Signed-off-by: Andy Adamson <andros@citi.umich.edu> Signed-off-by: J. Bruce Fields <bfields@citi.umich.edu> Signed-off-by: Neil Brown <neilb@cse.unsw.edu.au> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2010.2.69, 2004-10-20 08:27:05-07:00, neilb@cse.unsw.edu.au [PATCH] nfsd4: move some nfsd4_process_open2 code to nfs4_new_open Move most of the code in the new_open case of nfsd4_process_open2 to nfs4_new_open. Signed-off-by: Andy Adamson <andros@umich.edu> Signed-off-by: J. Bruce Fields <bfields@citi.umich.edu> Signed-off-by: Neil Brown <neilb@cse.unsw.edu.au> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2010.2.68, 2004-10-20 08:26:49-07:00, neilb@cse.unsw.edu.au [PATCH] nfsd4: move open_upgrade code into a separate function Move most of the code for the open_upgrade case into a separate nfs4_upgrade_open. Signed-off-by: Andy Adamson <andros@umich.edu> Signed-off-by: J. Bruce Fields <bfields@citi.umich.edu> Signed-off-by: Neil Brown <neilb@cse.unsw.edu.au> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2010.2.67, 2004-10-20 08:26:38-07:00, neilb@cse.unsw.edu.au [PATCH] nfsd4: reorganize "if" in nfsd4_process_open2 to make test clearer Reorganize "if" in nfsd4_process_open2 to make test clearer; there was no real reason to test for the negative here. Signed-off-by: Andy Adamson <andros@umich.edu> Signed-off-by: J. Bruce Fields <bfields@citi.umich.edu> Signed-off-by: Neil Brown <neilb@cse.unsw.edu.au> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2010.2.66, 2004-10-20 08:26:23-07:00, neilb@cse.unsw.edu.au [PATCH] nfsd4: move seqid decrement on reclaim to separate function Move seqid decrement on reclaim to separate function Signed-off-by: Andy Adamson <andros@citi.umich.edu> Signed-off-by: J. Bruce Fields <bfields@citi.umich.edu> Signed-off-by: Neil Brown <neilb@cse.unsw.edu.au> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2010.2.65, 2004-10-20 08:26:11-07:00, neilb@cse.unsw.edu.au [PATCH] nfsd: set OPEN_RESULT_LOCKTYPE_POSIX in open() We should set the OPEN_RESULT_LOCKTYPE_POSIX flag in the return to open, to indicate that we support locking. Signed-off-by: Andy Adamson <andros@citi.umich.edu> Signed-off-by: J. Bruce Fields <bfields@citi.umich.edu> Signed-off-by: Neil Brown <neilb@cse.unsw.edu.au> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2010.2.64, 2004-10-20 08:25:56-07:00, neilb@cse.unsw.edu.au [PATCH] nfsd4: move open owner checks from nfsd4_process_open2 into new function nfsd4_process_open2 has become a bit long and contorted. The following patches break nfsd4_process_open2 into smaller functions and add comments to describe logic flow, in preparation for delegation state. We begin by pulling out the code that searches for conflicting open owners into a separate function. Signed-off-by: Andy Adamson <andros@citi.umich.edu> Signed-off-by: J. Bruce Fields <bfields@citi.umich.edu> Signed-off-by: Neil Brown <neilb@cse.unsw.edu.au> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2010.2.63, 2004-10-20 08:25:41-07:00, neilb@cse.unsw.edu.au [PATCH] nfsd: remove incorrect stateid modification in nfsv4 open upgrade When we upgrade an open, we keep the same stateid and bump only the seqid. Signed-off-by: Andy Adamson <andros@umich.edu> Signed-off-by: J. Bruce Fields <bfields@citi.umich.edu> Signed-off-by: Neil Brown <neilb@cse.unsw.edu.au> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2010.2.62, 2004-10-20 08:25:26-07:00, neilb@cse.unsw.edu.au [PATCH] nfsd4: fix race in xdr encoding of lock_denied response. We take a reference on the stateowner, and copy the clientid, instead of just hoping no one destroys the stateowner before we reference it in nfsd4_encode_lock_denied. Signed-off-by: J. Bruce Fields <bfields@citi.umich.edu> Signed-off-by: Neil Brown <neilb@cse.unsw.edu.au> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2010.2.61, 2004-10-20 08:25:12-07:00, neilb@cse.unsw.edu.au [PATCH] nfsd4: revert awkward extension of state lock over xdr for replay encoding With the addition of a reference count, we no longer need the code that conditionally extended the nfs4 state lock over the xdr encode stage. Signed-off-by: J. Bruce Fields <bfields@citi.umich.edu> Signed-off-by: Neil Brown <neilb@cse.unsw.edu.au> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2010.2.60, 2004-10-20 08:24:58-07:00, neilb@cse.unsw.edu.au [PATCH] nfsd4: take a reference to preserve stateowner through xdr replay code Take a reference to preserve the stateowner through the xdr replay code, and simplify nfsd4_proc_compound a little. Signed-off-by: J. Bruce Fields <bfields@citi.umich.edu> Signed-off-by: Neil Brown <neilb@cse.unsw.edu.au> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2010.2.59, 2004-10-20 08:24:43-07:00, neilb@cse.unsw.edu.au [PATCH] nfsd4: reference count stateowners Reference-counting the nfsd4 stateowner structs will let us fix a race and simplify some of the xdr code a bit, and may also help us make the nfsd4 locking a little more fine-grained in the future. Signed-off-by: J. Bruce Fields <bfields@citi.umich.edu> Signed-off-by: Neil Brown <neilb@cse.unsw.edu.au> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2010.2.58, 2004-10-20 08:24:28-07:00, neilb@cse.unsw.edu.au [PATCH] nfsd: make sure getxattr inode op is non-NULL before calling it Make sure getxattr inode op is non-NULL before calling it. Also, security hook should probably be called before calling the getxattr op the first time. Signed-off-by: J. Bruce Fields <bfields@citi.umich.edu> Signed-off-by: Neil Brown <neilb@cse.unsw.edu.au> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2010.2.57, 2004-10-20 08:24:16-07:00, neilb@cse.unsw.edu.au [PATCH] nfsd4: don't take i_sem around call to ->getxattr The ->getxattr op doesn't take the i_sem (see Documentation/filesystems/Locking) Signed-off-by: J. Bruce Fields <bfields@citi.umich.edu> Signed-off-by: Neil Brown <neilb@cse.unsw.edu.au> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2010.2.56, 2004-10-20 08:24:01-07:00, neilb@cse.unsw.edu.au [PATCH] nfsd: separate a little of logic from fh_verify into new function Separate out the little bit of logic in fh_verify that checks the i_mode into a separate function. This is nicely encapsulated, fh_verify() is overly long anyway, and this change helps make a subsequent nfs4 named attribute change clearer. Signed-off-by: J. Bruce Fields <bfields@citi.umich.edu> Signed-off-by: Neil Brown <neilb@cse.unsw.edu.au> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2010.2.55, 2004-10-20 08:23:47-07:00, neilb@cse.unsw.edu.au [PATCH] nfsd4: nfsd oopsed when encountering a conflict with a local lock Bug Fix: Non NFSD conflicting byte-range locks were causing an Oops. Encode a zero length owner and zero clientid for non NFSD conflicting locks in the lock_denied response. Signed-off-by: Andy Adamson <andros@umich.edu> Signed-off-by: J. Bruce Fields <bfields@citi.umich.edu> Signed-off-by: Neil Brown <neilb@cse.unsw.edu.au> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2010.2.54, 2004-10-20 08:23:32-07:00, akpm@osdl.org [PATCH] select-cpio_list-or-source-directory-for-initramfs-image fix Kconfig barfs if it doesn't have leading spaces in the help. Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2010.2.53, 2004-10-20 08:23:20-07:00, azarah@nosferatu.za.org [PATCH] Select cpio_list or source directory for initramfs image Attached is a patch that adds CONFIG_INITRAMFS_SOURCE, enabling you to either specify a file as cpio_list, or a directory to generate a list from. It depreciate the INITRAMFS_LIST environment variable introduced not long ago. There are some issues (suggestions/patches welcome) that I am not sure about: 1) I put the menu entry under block devices, but I am not sure if this is the correct location? 2) There might be a better (or more correct) way to do this with kbuild? 3) Variable names and especially help text needs some love. 4) I am not sure if I am duplicating work in progress? Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2010.2.52, 2004-10-20 08:23:04-07:00, tharbaugh@lnxi.com [PATCH] gen_init_cpio uses external file list This patch makes gen_init_cpio generate the initramfs_data.cpio from a file which contains a list of entries: file, dir, nod. I swapped the order of filename/location for the file arguments so that it would be more uniform with the dir and node tyes. Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2010.2.51, 2004-10-20 08:22:51-07:00, akpm@osdl.org [PATCH] module_parm_array fixups Fix up various things which Rusty's patch broke or missed. Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2010.2.50, 2004-10-20 08:22:39-07:00, hunold@linuxtv.org [PATCH] V4L: follow changes in saa7146 - [V4L] mxb, dpc7146, hexium_orion, hexium_gemini: follow latest changes in saa7146 driver Signed-off-by: Michael Hunold <hunold@linuxtv.org> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2010.2.49, 2004-10-20 08:22:24-07:00, hunold@linuxtv.org [PATCH] DVB: frontend updates - [DVB] all: replace dvb_unregister_frontend_new() with dvb_unregister_frontend() - [DVB] sp887x: fix firmware download, patch by Jose Alberto Reguero - [DVB] tda1004x: add firmware loading via firmware_class() - [DVB] dvb_frontend: without hierachical coding, code_rate_LP is irrelevant, so we tolerate the otherwise invalid FEC_NONE setting - [DVB] ves1x93: fixed dropouts on older DVB cards, fix tuning issues (Andreas Share / Gregoire Favre), Signed-off-by: Michael Hunold <hunold@linuxtv.org> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2010.2.48, 2004-10-20 08:22:10-07:00, hunold@linuxtv.org [PATCH] DVB: misc driver updates - [DVB] av7110: convert MODULE_PARM() to module_param(), replace home-brewn waiting stuff in osd code with wait_event_interruptible_timeout() - [DVB] av7110: put a semaphore around osd calls to make sure they're properly serialized, timeout variable in arm_thread() must be int, not unsigned long - [DVB] av7110: add additional OSD window types (patch by Jeremy Jones), new ioctl OSD_GET_CAPABILITY/OSD_CAP_MEMSIZE; returns size of OSD memory - [DVB] av7110: put audio/video initialization into separate function init_av7110_av(); call this function after system initialization and after arm crash to restore the previous state; thanks to Soeren Sonnenburg <bugreports@nn7.de> for this patch. - [DVB] av7110, budget, ttusb-budget: remove dvb i2c remains, support kernel i2c - [DVB] av7110, budget: use msleep() instead of my_wait(), thanks to Kernel Janitors/Nishanth Aravamudan <nacc@us.ibm.com> - [DVB] av7110, budget: fix videodev has no release callback - [DVB] av7110: more sparse annotiations - [DVB] budget: add support for TerraTec Cinergy 1200 DVB-S - [DVB] budget: fix race condition in irq handler - [DVB] skystar2, av7110, ttusb-budget, budget: make i2c client_(un)register() functions static Signed-off-by: Michael Hunold <hunold@linuxtv.org> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2010.2.47, 2004-10-20 08:21:51-07:00, hunold@linuxtv.org [PATCH] DVB: new driver for mobile USB Budget DVB-T devices - [DVB] new driver for mobile USB Budget DVB-T devices, thanks to Patrick Boettcher Signed-off-by: Michael Hunold <hunold@linuxtv.org> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2010.2.46, 2004-10-20 08:21:38-07:00, hunold@linuxtv.org [PATCH] DVB: add frontend #2 - [DVB] add new driver for mobile DVB-T demodulator DiBcom 3000-MB - [DVB] add new drivers to Makefile Signed-off-by: Michael Hunold <hunold@linuxtv.org> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2010.2.45, 2004-10-20 08:21:25-07:00, hunold@linuxtv.org [PATCH] DVB: add frontend - [DVB] add new driver for Zarlink DVB-T MT352 frontend - [DVB] add new driver for Conexant 22702 DVB OFDM frontend Signed-off-by: Michael Hunold <hunold@linuxtv.org> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2010.2.44, 2004-10-20 08:21:12-07:00, hunold@linuxtv.org [PATCH] DVB: frontend conversion #4 - [DVB] nxt6000, sp887x: convert from dvb-i2c to kernel-i2c, MODULE_PARM() to module_param(), dvb_delay() to mdelay() - [DVB] sp887x: move from home-brewn firmware loading to firmware_class Signed-off-by: Michael Hunold <hunold@linuxtv.org> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2010.2.43, 2004-10-20 08:20:58-07:00, hunold@linuxtv.org [PATCH] DVB: frontend conversion #3 - [DVB] dvb_dummy_fe, grundig_29504-401, grundig_29504-491, mt312: convert from dvb-i2c to kernel-i2c, MODULE_PARM() to module_param(), dvb_delay() to mdelay() - [DVB] update frontend Kconfig Signed-off-by: Michael Hunold <hunold@linuxtv.org> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2010.2.42, 2004-10-20 08:20:42-07:00, hunold@linuxtv.org [PATCH] DVB: frontend conversion #2 - [DVB] alps_tdlb7, alps_tdmb7, at76c651, cx24110, dst: convert from dvb-i2c to kernel-i2c, MODULE_PARM() to module_param(), dvb_delay() to mdelay() - [DVB] alps_tdlb7: move from home-brewn firmware loading to firmware_class - [DVB] dst: use sysfs attributes for type and flags for per-card parameters Signed-off-by: Michael Hunold <hunold@linuxtv.org> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2010.2.41, 2004-10-20 08:20:30-07:00, hunold@linuxtv.org [PATCH] DVB: frontend conversion - [DVB] stv0299, tda1004x, ves1820, ves1x93: convert from dvb-i2c to kernel-i2c, MODULE_PARM() to module_param(), dvb_delay() to mdelay() - [DVB] tda1004x: move from home-brewn firmware loading to firmware_class - [DVB] stv0299: support Cinergy1200, patch by Uli Luckas Signed-off-by: Michael Hunold <hunold@linuxtv.org> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2010.2.40, 2004-10-20 08:20:16-07:00, hunold@linuxtv.org [PATCH] DVB: core update - [DVB] remove non-linux compatibility stuff from dvb_functions. rest in peace. - [DVB] remove home-brewn dvb-i2c stuff. rest in peace. - [DVB] convert MODULE_PARM() to module_param() - [DVB] convert dvb_delay() to mdelay() - [DVB] convert C++ comments to C comments - [DVB] dvb_ca_en50221: fix for matrix CAMs from Sjoerd Simons, use c99 initializers, Fix for aston CAM read timeout problems, Moved CAM CTRL IF reset to a better place, better debugging with multiple cards (Sjoerd Simons) - [DVB] dvb-frontend: patch by Wolfgang Fritz: suppress spurious events during tuning, Do not allow write (and related) ioctls when frontend is opened RDONLY, Properly lock the frontend module on open/close, patch by Christopher Pascoe: remove bogus up(fe->sem) on fe thread exit, patch by Christopher Pascoe: remove bogus up(fe->sem) on fe thread exit - [DVB] dvb-demux: using spin_lock instead of spin_lock_irq caused a race condition between irq/tasklet and user space task - [DVB] dvb-core: add sysfs/udev support using "class_simple", prevent Oops when PES filter is set with invalid pes_type, protect feed_list with spin_locks Signed-off-by: Michael Hunold <hunold@linuxtv.org> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2010.2.39, 2004-10-20 08:19:59-07:00, hunold@linuxtv.org [PATCH] DVB: skystar2 dvb bt8xx update - [DVB] convert drivers from dvb-i2c to kernel-i2c - [DVB] convert MODULE_PARM() to module_param() - [DVB] convert dvb_delay() to mdelay() - [DVB] dvb-bt8xx: convert home-brewn bttv i2c access to a real bttv sub-driver Signed-off-by: Michael Hunold <hunold@linuxtv.org> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2010.2.38, 2004-10-20 08:19:44-07:00, hunold@linuxtv.org [PATCH] DVB: documentation update - [DVB] add udev.txt which describes how to use dvb and udev/sysfs - [DVB] add Visionplus VisionDTV USB-Ter DVB-T adapter documentation - [DVB] update TT USB DEC documentation - [DVB] update various Kconfig entries - [DVB] remove obsolete firmware documentation Signed-off-by: Michael Hunold <hunold@linuxtv.org> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2010.2.37, 2004-10-20 08:19:08-07:00, hunold@linuxtv.org [PATCH] DVB: update saa7146 - [DVB] fix videodev has no release callback - [DVB] use PAGE_SIZE for pagetables, not home-brewn SAA7146_PGTABLE_SIZE - [DVB] use cpu_to_le32() at various places for endianess independency - [DVB] turn some error checks into BUG()s - [DVB] make saa7146_i2c_adapter_prepare() support an adapter class - [DVB] add support for V4L2_PIX_FMT_RGB32 pixelformat - [DVB] replace generic saa7146 i2c name by card specific name, suggested by Uli Luckas <luckas@musoft.de> Signed-off-by: Michael Hunold <hunold@linuxtv.org> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2010.2.36, 2004-10-20 08:18:54-07:00, kraxel@bytesex.org [PATCH] v4l: msp3400 cleanup This is a minor cleanup for the msp3400.c module: use the new msleep() function for delays. Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2010.2.35, 2004-10-20 08:18:39-07:00, kraxel@bytesex.org [PATCH] DVB/V4L dependency fix The problem is that dvb is way to much work-in-progress right now, it's almost impossible to build something which works on both mainline kernel + latest dvb cvs. Hope at least the interfaces are settled soon, for now I gave up on getting it work in mainline in short-term. The patch below compiles the DVB card configuration code only when VIDEO_CX88_DVB is enabled (which is commented right now in Kconfig due to being broken). Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2010.2.34, 2004-10-20 08:18:25-07:00, kraxel@bytesex.org [PATCH] v4l: cx88 driver update This is a major update of the cx88 driver. Main new feature is support for the MPEG PCI function of the cx2388x chips. The changes in detail: * A bunch of code restructions, to allow multiple modules (one per PCI function) work on top of the core module. * Add a new module with common code for the mpeg PCI function. * Add a new module to support mpeg encoder cards (connexant "blackbird" reference design). That one is not much tested yet and may have bugs. They can be easily workarounded by not loading the module through, it isn't needed to capture uncompressed video. * Add a new module to support DVB cards. That one is better tested than the blackbird one, but it needs additional cutting-edge stuff from the dvb project, thats why it is disabled in Kconfig for now. * Several cleanups along the way: use kthread, use msleep(), drop some 2.4.x compatibility code, move insmod options to 2.6 style, ... * adapt code to the video-buf changes. * suspend fixes. * as usual some new tv cards. Signed-off-by: Gerd Knorr <kraxel@bytesex.org> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2010.2.33, 2004-10-20 08:18:09-07:00, kraxel@bytesex.org [PATCH] v4l: bttv driver update This update for the bttv driver. Changes: * adapt the driver to video-buf changes. * It also added sanity checks for the bt878 risc code buffer sizes. * adds support for new tv cards. * cleanup i2c driver autoload. * misc cleanups (msleep, ...). * fix IRQ bug when stopping vbi capture. * drop check for cx2388x (bt878 successor) and the printk saying bttv doesn't support these. * set i2c class correctly for dvb cards. Signed-off-by: Gerd Knorr <kraxel@bytesex.org> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2010.2.32, 2004-10-20 08:17:57-07:00, kraxel@bytesex.org [PATCH] v4l: adapt saa7146 to video-buf changes. This patch adapts the saa7146 driver to the video-buf changes. Signed-off-by: Gerd Knorr <kraxel@bytesex.org> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2010.2.31, 2004-10-20 08:17:42-07:00, kraxel@bytesex.org [PATCH] v4l: avoid using struct file ptrs in video-buf This patch makes the video-buf helper module pass through a void pointer instead of a struct file pointer, that makes the code also usable when no file pointer is available. This is needed for when using the video-buf infrastructure to manage DMA buffers for DVB cards. The file pointer was used by the videobuf_queue_ops callbacks to get the drivers private data via file->private_data, now a pointer to the drivers's private data can be passed directly. Adaptions of the drivers follow with separate patches. Signed-off-by: Gerd Knorr <kraxel@bytesex.org> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2010.2.30, 2004-10-20 08:17:27-07:00, kraxel@bytesex.org [PATCH] v4l: tuner update This is a update for the analog tv tuner module, it adds support for two new tuner chips. Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2010.2.29, 2004-10-20 08:17:12-07:00, hugh@veritas.com [PATCH] lighten mmlist_lock Let's lighten the global spinlock mmlist_lock. What's it for? 1. Its original role is to guard mmlist. 2. It later got a second role, to prevent get_task_mm from raising mm_users from the dead, just after it went down to 0. Firstly consider the second: __exit_mm sets tsk->mm NULL while holding task_lock before calling mmput; so mmlist_lock only guards against the exceptional case, of get_task_mm on a kernel workthread which did AIO's use_mm (which transiently sets its tsk->mm without raising mm_users) on an mm now exiting. Well, I don't think get_task_mm should succeed at all on use_mm tasks. It's mainly used by /proc/pid and ptrace, seems at best confusing for those to present the kernel thread as having a user mm, which it won't have a moment later. Define PF_BORROWED_MM, set in use_mm, clear in unuse_mm (though we could just leave it), get_task_mm give NULL if set. Secondly consider the first: and what's mmlist for? 1. Its original role was for swap_out to scan: rmap ended that in 2.5.27. 2. In 2.4.10 it got a second role, for try_to_unuse to scan for swapoff. So, make mmlist a list of mms which maybe have pages on swap: add mm to mmlist when first swap entry is assigned in try_to_unmap_one (pageout), or in copy_page_range (fork); and mmput remove it from mmlist as before, except usually list_empty and there's no need to lock. drain_mmlist added to swapoff, to empty out the mmlist if no swap is then in use. mmput leave mm on mmlist until after its exit_mmap, so try_to_unmap_one can still add mm to mmlist without worrying about the mm_users 0 case; but try_to_unuse must avoid the mm_users 0 case (when an mm might be removed from mmlist, and freed, while it's down in unuse_process): use atomic_inc_return now all architectures support that. Some of the detailed comments in try_to_unuse have grown out of date: updated and trimmed some, but leave SWAP_MAP_MAX for another occasion. Signed-off-by: Hugh Dickins <hugh@veritas.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2010.2.28, 2004-10-20 08:16:56-07:00, hirofumi@mail.parknet.co.jp [PATCH] FAT: remove validity check of FAT first entry The low byte of FAT's first entry must have same value with media-field. So, I added that validity check for some case. In fact, in some case this check detected non-FAT filesystem. But in real world, unfortunately too many devices is writing a wrong value. This patch removes that validity check. Signed-off-by: OGAWA Hirofumi <hirofumi@mail.parknet.co.jp> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2010.2.27, 2004-10-20 08:16:45-07:00, hirofumi@mail.parknet.co.jp [PATCH] FAT: removal of C[FT]_LE_[WL] macro Signed-off-by: OGAWA Hirofumi <hirofumi@mail.parknet.co.jp> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2010.2.26, 2004-10-20 08:16:30-07:00, hirofumi@mail.parknet.co.jp [PATCH] FAT: check free_clusters value This patch make sure it's <= sbi->clusters. Signed-off-by: OGAWA Hirofumi <hirofumi@mail.parknet.co.jp> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2010.2.25, 2004-10-20 08:16:15-07:00, hirofumi@mail.parknet.co.jp [PATCH] FAT: merge fix Signed-off-by: OGAWA Hirofumi <hirofumi@mail.parknet.co.jp> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2010.2.24, 2004-10-20 08:16:00-07:00, hirofumi@mail.parknet.co.jp [PATCH] FAT: remove debug_pr() Signed-off-by: OGAWA Hirofumi <hirofumi@mail.parknet.co.jp> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2010.2.23, 2004-10-20 08:15:45-07:00, hirofumi@mail.parknet.co.jp [PATCH] FAT: Fix the race bitween fat_free() and fat_get_cluster() This patch fixes the race condition | fat_free | fat_get_cluster +------------------------------+----------------------- fat_cache_lookup() (get the copy of cache) fat_cache_inval_inode() (invalidate caches on inode) fat_cache_add() (update/add the getted cache) The above race has possible that invalidated cache is added. This patch fixes the race condition by adding the cache-id to copy of cache. Signed-off-by: OGAWA Hirofumi <hirofumi@mail.parknet.co.jp> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2010.2.22, 2004-10-20 08:15:30-07:00, hirofumi@mail.parknet.co.jp [PATCH] FAT: the inode hash from per module to per sb Signed-off-by: OGAWA Hirofumi <hirofumi@mail.parknet.co.jp> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2010.2.21, 2004-10-20 08:15:15-07:00, hirofumi@mail.parknet.co.jp [PATCH] FAT: cache lock from per sb to per inode Signed-off-by: OGAWA Hirofumi <hirofumi@mail.parknet.co.jp> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2010.2.20, 2004-10-20 08:15:04-07:00, hirofumi@mail.parknet.co.jp [PATCH] FAT: rewrite the cache for file allocation table lookup This rewrites the cache stuff for file allocation table (FAT). This cache stocks the more pieces of FAT-chain by counting the number of contiguous data blocks. And if cache hit, since a block number can calculate without looking FAT-chain up, fat_get_block() become more fast. But if data blocks was fragmenting, unfortunately this cache is unuseful. read from block device [1st]# time dd if=/dev/hda6 of=/dev/null bs=1M count=2048 2147483648 bytes transferred in 229.524189 seconds (9356241 bytes/sec) real 3m49.557s, user 0m0.026s, sys 1m20.414s [2nd]# time dd if=/dev/hda6 of=/dev/null bs=1M count=2048 2147483648 bytes transferred in 229.539358 seconds (9355623 bytes/sec) real 3m49.647s, user 0m0.036s, sys 1m20.144s read from full contiguous file with this patch [1st]# time dd if=data of=/dev/null bs=1M count=2048 2147483648 bytes transferred in 337.959477 seconds (6354264 bytes/sec) real 5m37.970s, user 0m0.031s, sys 1m21.915s [2nd]# time dd if=data of=/dev/null bs=1M count=2048 2147483648 bytes transferred in 225.401699 seconds (9527362 bytes/sec) real 3m45.476s, user 0m0.027s, sys 1m19.286s read from full fragmented file with this patch [1st]# time dd if=data of=/dev/null bs=1M count=2048 2147483647 bytes transferred in 1146.529081 seconds (1873030 bytes/sec) real 19m6.538s, user 0m0.020s, sys 1m32.774s [2nd]# time dd if=data of=/dev/null bs=1M count=2048 2147483647 bytes transferred in 1045.084822 seconds (2054841 bytes/sec) real 17m25.152s, user 0m0.022s, sys 1m34.801s read from full contiguous file without this patch [1st]# time dd if=data of=/dev/null bs=1M count=2048 2147483648 bytes transferred in 348.144707 seconds (6168365 bytes/sec) real 5m48.169s, user 0m0.019s, sys 1m29.962s [2nd]# time dd if=data of=/dev/null bs=1M count=2048 2147483648 bytes transferred in 324.017361 seconds (6627681 bytes/sec) real 5m24.038s, user 0m0.023s, sys 1m20.602s read from full fragmented file without this patch [1st]# time dd if=data of=/dev/null bs=1M count=2048 2147483647 bytes transferred in 1156.845693 seconds (1856327 bytes/sec) real 19m16.855s, user 0m0.031s, sys 1m32.172s [2nd]# time dd if=data of=/dev/null bs=1M count=2048 2147483647 bytes transferred in 1066.518713 seconds (2013545 bytes/sec) real 17m46.526s, user 0m0.023s, sys 1m33.630s Signed-off-by: OGAWA Hirofumi <hirofumi@mail.parknet.co.jp> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2010.2.19, 2004-10-20 08:14:52-07:00, hirofumi@mail.parknet.co.jp [PATCH] FAT: use hlist_head for fat_inode_hashtable Signed-off-by: OGAWA Hirofumi <hirofumi@mail.parknet.co.jp> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2010.2.18, 2004-10-20 08:14:40-07:00, hch@lst.de [PATCH] remove dead exports from fs/fat/ These were used by the defunct umsdos code only. Signed-off-by: OGAWA Hirofumi <hirofumi@mail.parknet.co.jp> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2010.2.17, 2004-10-20 08:14:28-07:00, wli@holomorphy.com [PATCH] sparc32: add atomic_sub_and_test() Add atomic_sub_and_test() to sparc32, implemented in terms of atomic_sub_return(), so reiser4 can be simultaneously microoptimized for x86 and made to pass compilation testing on sparc32. Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2010.2.16, 2004-10-20 08:14:12-07:00, kaigai@ak.jp.nec.com [PATCH] atomic_inc_return() for sparc64 This patch declares atomic_add_return() as an alias of __atomic_add(). atomic64_add_return(),atomic_sub_return() and atomic64_sub_return() are same. Signed-off-by: KaiGai, Kohei <kaigai@ak.jp.nec.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2010.2.15, 2004-10-20 08:13:58-07:00, kaigai@ak.jp.nec.com [PATCH] atomic_inc_return() for arm26 This patch implements atomic_inc_return() and so on for ARM26. Because Hugh says that SMP is not supported in arm26, it is implemented by normal operations between local_irq_save() and local_irq_restore() like another atomic operations. Signed-off-by: KaiGai, Kohei <kaigai@ak.jp.nec.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2010.2.14, 2004-10-20 08:13:44-07:00, kaigai@ak.jp.nec.com [PATCH] atomic_inc_return() for arm This patch declares atomic_inc_return() as the alias of atomic_add_return() and atomic_dec_return() as an alias of atomic_dec_return(). Signed-off-by: KaiGai, Kohei <kaigai@ak.jp.nec.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2010.2.13, 2004-10-20 08:13:29-07:00, kaigai@ak.jp.nec.com [PATCH] atomic_inc_return() for x86_64 Signed-off-by: KaiGai, Kohei <kaigai@ak.jp.nec.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2010.2.12, 2004-10-20 08:13:14-07:00, kaigai@ak.jp.nec.com [PATCH] atomic_inc_return() for i386 This patch implements atomic_inc_return() and so on for i386, and includes runtime check whether CPU is legacy 386. Signed-off-by: KaiGai, Kohei <kaigai@ak.jp.nec.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2010.2.11, 2004-10-20 08:13:00-07:00, dwmw2@infradead.org [PATCH] JFFS2: work around uninitialised use of usercompr field by old code. We didn't use the 'usercompr' field before recently. Unfortunately we didn't set it to zero either, so there's a lot of file systems out there with it set to 0x5a. Deal with that rather than getting confused. Signed-Off-By: David Woodhouse <dwmw2@infradead.org> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2010.2.10, 2004-10-20 08:12:46-07:00, rddunlap@osdl.org [PATCH] x86_64/io_apic init section fixups Code section errors in i386/io_apic.c found by scripts/reference_init.pl. Looks like they could cause problems for a few drivers or in a real hotplug environment. Error: ./arch/i386/kernel/io_apic.o .text refers to 000018ff R_386_PC32 .init.text call chain: snd_mpu401_acpi_resource acpi_register_gsi mp_register_gsi io_apic_set_pci_routing {A} ioapic_register_intr IO_APIC_irq_trigger find_irq_entry Error: ./arch/i386/kernel/io_apic.o .text refers to 00001967 R_386_PC32 .init.text (as above thru {A}, then:) IO_APIC_irq_trigger irq_trigger MPBIOS_trigger >> removing __init from this led to needing to remove __init from EISA_ELCR also. Signed-off-by: Randy Dunlap <rddunlap@osdl.org> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2010.2.9, 2004-10-20 08:12:34-07:00, gordon.jin@intel.com [PATCH] x86_64: correct copy_user_generic return value when exception happens Fix a bug that arch/x86_64/lib/copy_user:copy_user_generic will return a wrong value when exception happens. In the case the address is not 8-byte aligned (i.e. go into Lbad_alignment), if exception happens in Ls11, %rdx will be wrong number of copied bytes, then copy_user_generic returns wrong value. It also fixed a bug of zeroing wrong number of bytes of destination at this situation. (In Lzero_rest) Signed-off-by: Yanmin Zhang <yanmin.zhang@intel.com> Signed-off-by: Nanhai Zou <nanhai.zou@intel.com> Signed-off-by: Gordon Jin <gordon.jin@intel.com> Signed-off-by: Suresh Siddha <suresh.b.siddha@intel.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2010.2.8, 2004-10-20 08:12:20-07:00, ak@muc.de [PATCH] x86_64 Kconfig: Split CONFIG_NUMA_EMU and CONFIG_K8_NUMA Split CONFIG_NUMA_EMU and CONFIG_K8_NUMA because they are independent. Signed-off-by: Andi Kleen <ak@muc.de> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2010.2.7, 2004-10-20 08:12:05-07:00, ak@muc.de [PATCH] x86_64: fix IOAPIC on Nvidia boards Originally suggested by Zwane Mwaikumbo Ignore all ACPI timer overrides on all Nvidia boards. The fallback doesn't work and no Nvidia boards needs a timer override. But some buggy BIOS have it anyways. Also enable IO-APIC mode by default for Nvidia then. Thanks to Andy Currid for confirming this. Signed-off-by: Andi Kleen <ak@suse.de> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2010.2.6, 2004-10-20 08:11:53-07:00, ak@muc.de [PATCH] x86_64: add an option to configure oops stack dump Add an kstack= option to configure how much stack should be printed on a oops. Signed-off-by: Andi Kleen <ak@suse.de> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2010.2.5, 2004-10-20 08:11:41-07:00, ak@muc.de [PATCH] x86_64: add notsc option Add an notsc option so that it can be turned off again. This may be useful on the Summit, but will only work when there is a HPET fallback. Signed-off-by: Andi Kleen <ak@suse.de> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2010.2.4, 2004-10-20 08:11:26-07:00, ak@muc.de [PATCH] x86_64: use TSC on SMP EM64T machines x86-64 MP kernels always used HPET timing when available. This was done because AMD systems don't have synchronized TSCs in all cases. On Intel this is not true (except Summit), so use faster TSC timing for those. Also only enable HPET gettimeofday when there is more than one CPU online. Signed-off-by: Andi Kleen <ak@suse.de> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2010.2.3, 2004-10-20 08:11:14-07:00, ak@muc.de [PATCH] x86_64: intialize hpet char driver Initialize HPET char driver Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2010.2.2, 2004-10-20 08:10:56-07:00, ak@muc.de [PATCH] x86_64: drop old APIC workaround Suggested by Ingo Molnar. Drop APIC level workaround for old IO-APICs on x86-64 because it is a significant part of interrupt handling time. x86-64 only runs on modern chipsets that probably don't have this bug. Signed-off-by: Andi Kleen <ak@suse.de> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2010.2.1, 2004-10-20 08:10:43-07:00, rusty@rustcorp.com.au [PATCH] module_param_array() should take a pointer module_param_array() takes a variable to put the number of elements in. Looking through the uses, many people don't care, so they declare a dummy or share one variable between several parameters. The latter is problematic because sysfs uses that number to decide how many to display. The solution is to change the variable arg to a pointer, and if the pointer is NULL, use the "max" value. This change is fairly small, but fixing up the callers is a lot of (trivial) churn. Signed-off-by: Rusty Russell <rusty@rustcorp.com.au> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.2010.1.2, 2004-10-20 17:08:34+02:00, bzolnier@trik.(none) [ide] always allocate hwif->sg_table Allocate hwif->sg_table in hwif_init() so it can also be used for PIO. Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com> ChangeSet@1.2010.1.1, 2004-10-20 17:02:39+02:00, bzolnier@trik.(none) [ide] pmac: use more ide_hwif_t fields Use dmatable_dma, sg_table, sg_nents and sg_dma_direction fields of ide_hwif_t and remove their equivalents from pmac_ide_hwif_t. Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com> ChangeSet@1.2012, 2004-10-20 14:57:54+01:00, rmk@flint.arm.linux.org.uk [ARM] Export find_{first,next}_bit_{l,b}e ChangeSet@1.2011, 2004-10-20 14:47:09+01:00, rmk@flint.arm.linux.org.uk [ARM] Cleanup some quirks. - Ensure FIQs are enabled when cpu_idle() is called. - Remove unused members of irq_cpustat_t. - Remove unnecessary #ifndef CONFIG_SMP...#endif around irq_exit() macro. - Rename __stf/__clf such that it stresses that they affect only local state (as per local_irq_xxx). - Move THREAD_SIZE such that it can be used in current_thread_info() ChangeSet@1.1988.100.4, 2004-10-20 04:27:39-04:00, akpm@osdl.org [PATCH] sata_sil mod15 quirk with Seagate ST3120026AS From: <stuart@cybertherial.com> Hardware Environment: AMD64, sil3512 controller on m/b. Harddrive: Seagate 120GB ST3120026AS Problem Description: Drive would lock when writing large files, eg video from firewire, audio editing. Checked dmesg, was obviously the sata drive. Have added the drive to the blacklist in sata_sil.c and the problem seems to have disappeared. Is there a good test to verify that the mod15 bug is really the problem? Signed-off-by: Andrew Morton <akpm@osdl.org> ChangeSet@1.1988.104.1, 2004-10-19 23:45:13-07:00, davem@nuts.davemloft.net Merge ChangeSet@1.1988.81.20, 2004-10-20 06:43:58+00:00, suresh.b.siddha@intel.com [IA64] fallback to swiotlb for consistent DMA mappings Patch supplied by Suresh Siddha This is mainly needed for EM64T platforms and makes sense for ia64 too. Need of this was broughtup sometime(long time?) back on lkml. http://www.ussg.iu.edu/hypermail/linux/kernel/0406.3/0112.html Signed-off-by: Tony Luck <tony.luck@intel.com> ChangeSet@1.1988.81.19, 2004-10-20 06:39:59+00:00, kaos@sgi.com [IA64] Avoid a rare deadlock during unwind There is a rare deadlock condition during unwind script creation. If build_script() is interrupted in the middle of creating the script, it holds the script write lock. If the interrupt handler needs to call unwind for some failure condition, unwind will try to read the incomplete script and will deadlock on the script lock. The fix is to disable interrupts while building the script, so interrupt handlers never see partial scripts. Promoting spin_lock_irqsave() from script_new() to find_save_locs() changes the indentation, so the patch looks bigger than it really is. Signed-off-by: Keith Owens <kaos@sgi.com> Signed-off-by: Tony Luck <tony.luck@intel.com> ChangeSet@1.1988.81.18, 2004-10-20 06:37:21+00:00, tony.luck@intel.com [IA64] uninitialised flags element could cause crashes window is not zeroed, so the flags should be assigned, not modified. This can lead to crashes at boot if the IO and Memory resources overlap. Patch supplied by Matthew Wilcox Signed-off-by: Tony Luck <tony.luck@intel.com> ChangeSet@1.1988.81.17, 2004-10-20 06:32:04+00:00, arun.sharma@intel.com [IA64] Add missing prototypes to kill warnings in sys_ia32.c Signed-off-by: Arun Sharma <arun.sharma@intel.com> Signed-off-by: Tony Luck <tony.luck@intel.com> ChangeSet@1.1988.81.16, 2004-10-20 06:24:38+00:00, tony.luck@intel.com [IA64] Allow -mtune=merced for gcc 3.4 Patch submitted by H. J. Lu Gcc 3.4.2 fixed ia64 -mtune=merced regressions on Linux 2.6 kernel: http://gcc.gnu.org/bugzilla/show_bug.cgi?id=16278 I have been using this patch for several months now. Signed-off-by: Tony Luck <tony.luck@intel.com> ChangeSet@1.1988.92.45, 2004-10-19 23:15:03-07:00, yasuyuki.kozakai@toshiba.co.jp [NETFILTER]: Fix multiple bugs in ip6t_frag.c The first patch fixes following bugs in ip6t_frag.c, - Wrong cast the pointer to extension header. - header length of Fragment Header is statically 8 octets. Then the option --frag-len doesn't make sense. - There are endian issues where using frag->info. - Reserved fields are not 2 bit but 8bit + 2 bit. (see RFC2460) Signed-off-by: Yasuyuki KOZAKAI <yasuyuki.kozakai@toshiba.co.jp> Signed-off-by: Patrick McHardy <kaber@trash.net> Signed-off-by: David S. Miller <davem@davemloft.net> ChangeSet@1.1988.92.44, 2004-10-19 23:13:46-07:00, yasuyuki.kozakai@toshiba.co.jp [NETFILTER]: Fix checks in ip6t_multiport.c The first patch fixes following bugs in ip6t_multiport.c, - missing check the size of the preference data. - IP6T_INV_PROTO should check with not ip->flags but ip->invflags. Signed-off-by: Yasuyuki KOZAKAI <yasuyuki.kozakai@toshiba.co.jp> Signed-off-by: Patrick McHardy <kaber@trash.net> Signed-off-by: David S. Miller <davem@davemloft.net> ChangeSet@1.1988.92.43, 2004-10-19 23:12:10-07:00, yasuyuki.kozakai@toshiba.co.jp [NETFILTER]: Fix multiple bugs in ip6rt.c The first patch fixes the following bugs - Wrong cast the pointer to extension header. - Segments Left field in Routing Header isn't treated as 1 octet. Signed-off-by: Yasuyuki KOZAKAI <yasuyuki.kozakai@toshiba.co.jp> Signed-off-by: Patrick McHardy <kaber@trash.net> Signed-off-by: David S. Miller <davem@davemloft.net> ChangeSet@1.1988.92.42, 2004-10-19 23:10:47-07:00, okir@suse.de [NETFILTER]: Don't export common symbols from ipfwadm.ko Exported kernel symbols ip_conntrack_count and ip_conntrack_tcp_update were showing up both in ip_conntrack.ko and ipfwadm.ko, causing bogus dependencies in modules.dep. Signed-off-by: Olaf Kirch <okir@suse.de> Signed-off-by: Patrick McHardy <kaber@trash.net> Signed-off-by: David S. Miller <davem@davemloft.net> ChangeSet@1.1988.92.41, 2004-10-19 23:09:53-07:00, pablo@eurodev.net [NETFILTER]: Fix removing invalid proc file Signed-off-by: Pablo Neira <pablo@eurodev.net> Signed-off-by: Patrick McHardy <kaber@trash.net> Signed-off-by: David S. Miller <davem@davemloft.net> ChangeSet@1.1988.92.40, 2004-10-19 22:20:00-07:00, jmorris@redhat.com [CRYPTO]: Add Tnepres cipher support This patch adds support for the kerneli 'Tnepres' cipher, a reversed form of Serpent which was implemented due to problems with the specification. This allows people to maintain compatibility between old kerneli and current kernels. Signed-off-by: Ruben Garcia <ruben@ugr.es> Signed-off-by: Fruhwirth Clemens <clemens@endorphin.org> Signed-off-by: James Morris <jmorris@redhat.com> Signed-off-by: David S. Miller <davem@davemloft.net> ChangeSet@1.1988.92.39, 2004-10-19 22:15:55-07:00, davem@nuts.davemloft.net [CRYPTO]: Fix typo in Kconfig. Signed-off-by: David S. Miller <davem@davemloft.net> ChangeSet@1.1988.92.38, 2004-10-19 22:14:11-07:00, herbert@gondor.apana.org.au [TCP]: Fix new packet len calc in tcp_fragment() The following patch makes it allocate skb_headlen(skb) - len instead of skb->len - len. When skb is linear there is no difference. When it's non-linear we only ever copy the bytes in the header. Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au> Signed-off-by: David S. Miller <davem@davemloft.net> ChangeSet@1.1988.92.37, 2004-10-19 22:10:58-07:00, herbert@gondor.apana.org.au [NETLINK]: Yield in netlink_broadcast when congested. Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au> Signed-off-by: David S. Miller <davem@davemloft.net> ChangeSet@1.1988.92.36, 2004-10-19 22:00:45-07:00, davem@nuts.davemloft.net [NET]: Need to disable preempt in softirq check of netif_rx_ni. Signed-off-by: David S. Miller <davem@davemloft.net> ChangeSet@1.1988.92.35, 2004-10-19 21:56:42-07:00, herbert@gondor.apana.org.au [NET]: Make sure to copy TSO fields in copy_skb_header(). Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au> Signed-off-by: David S. Miller <davem@davemloft.net> ChangeSet@1.1988.92.34, 2004-10-19 21:54:41-07:00, herbert@gondor.apana.org.au [TCP]: Dump SYN_RECV sockets in tcpdiag Finally this patch adds the code to list SYN_RECV sockets. A future enhancement would be to do this for the GET operation as well. Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au> Signed-off-by: David S. Miller <davem@davemloft.net> ChangeSet@1.1988.92.33, 2004-10-19 21:53:43-07:00, herbert@gondor.apana.org.au [TCP]: Make tcpdiag_bc_run take tcpdiag_entry This patch adds a tcpdiag_entry struct and makes tcpdiag_bc_run use it instead of a struct sock. This will allow us to use tcpdiag_bc_run on struct open_request in the next patch. Please note that I've left the CONFIG_IPV6 defines in as to support ipv6 modules we'll need to modularise tcpdiag itself. I'll probably do that after this is all fixed. Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au> Signed-off-by: David S. Miller <davem@davemloft.net> ChangeSet@1.1988.92.32, 2004-10-19 21:52:35-07:00, herbert@gondor.apana.org.au [TCP]: Create tcpdiag_dump_sock The first one move tcpdiag_bc_run calls into one place so that we can change its parameters next. Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au> Signed-off-by: David S. Miller <davem@davemloft.net> ChangeSet@1.1988.92.31, 2004-10-19 21:50:43-07:00, ak@suse.de [TCP]: Remove bogus CONFIG_SYSCTL ifdef Modular IPv6 needs these variables always exported, even when CONFIG_SYSCTL is not enabled. Signed-off-by: Andi Kleen <ak@suse.de> Signed-off-by: David S. Miller <davem@davemloft.net> ChangeSet@1.1988.92.30, 2004-10-19 21:46:00-07:00, hadi@cyberus.ca [NET]: Add Mirred TC action. Signed-off-by: Jamal Hadi Salim <hadi@cyberus.ca> Signed-off-by: David S. Miller <davem@davemloft.net> ChangeSet@1.1988.92.29, 2004-10-19 21:42:56-07:00, davem@nuts.davemloft.net [NET]: More pktgen.c warnings not caught by Randys patch. Signed-off-by: David S. Miller <davem@davemloft.net> ChangeSet@1.1988.92.28, 2004-10-19 21:40:18-07:00, rddunlap@osdl.org [NET]: Fix sprintf type warnings on 64-bit in pktgen.c Signed-off-by: Randy Dunlap <rddunlap@osdl.org> Signed-off-by: David S. Miller <davem@davemloft.net> ChangeSet@1.1988.92.27, 2004-10-19 21:28:26-07:00, davem@nuts.davemloft.net [AF_UNIX]: Remove spurious len test in unix_mkname. Noticed by James Antill <james-linux-kernel@and.org> Signed-off-by: David S. Miller <davem@davemloft.net> ChangeSet@1.1988.92.26, 2004-10-19 21:25:30-07:00, solt2@dns.toxicfilms.tv [TCP]: Document tcp_tso_win_divisor in ip-sysctl.txt Signed-off-by: David S. Miller <davem@davemloft.net> ChangeSet@1.1988.92.25, 2004-10-19 21:20:49-07:00, tgraf@suug.ch [PKT_SCHED]: CBQ; Destroy filters before destroying classes. CBQ destroys its classes by traversing the hashtable and thus classes are not destroyed from root to leafs which means that class Y being a subclass of class X may be destroyed before X. This is a problem if a filter is attached to class X (parent) classifying into class Y (result). In case Y gets deleted before X the filter references an already deleted class while trying to unbind (cbq_unbind_filter). Therefore all filters must be destroyed before destroying classes. An additional BUG_TRAP has been added to document this not so obvious case. The BUG can be triggered with the following commands: qdisc add dev root handle 10:0 cbq bandwidth 100Mbit avpkt 1400 mpu 64 class add dev parent 10:0 classid 10:12 cbq bandwidth 100mbit rate 100mbit allot 1514 prio 3 maxburst 1 avpkt 500 bounded class add dev parent 10:12 classid 10:13 cbq bandwidth 100mbit rate 100mbit allot 1514 prio 3 maxburst 1 avpkt 500 bounded filter add dev parent 10:12 protocol ip prio 10 u32 match ip protocol 6 0xff flowid 10:13 qdisc del dev root The deletion ordering in the above case is: 10:0 -> 10:13 -> 10:12 Signed-off-by: Thomas Graf <tgraf@suug.ch> Signed-off-by: David S. Miller <davem@davemloft.net> ChangeSet@1.1988.103.2, 2004-10-19 21:17:36-07:00, davem@nuts.davemloft.net [SPARC]: Add entries for recently added system calls. Signed-off-by: David S. Miller <davem@davemloft.net> ChangeSet@1.1988.103.1, 2004-10-19 21:13:31-07:00, davem@nuts.davemloft.net [SPARC64]: Re-export force_sig to modules. Used by sparc envctl drivers, specifically envctl.c and bbc_envctrl.c under drivers/sbus/char/ Signed-off-by: David S. Miller <davem@davemloft.net> ChangeSet@1.1988.92.24, 2004-10-19 21:11:02-07:00, davem@nuts.davemloft.net [PKT_SCHED]: Fix sch_atm build. Move it over to use qstats/bstats. Signed-off-by: David S. Miller <davem@davemloft.net> ChangeSet@1.2010, 2004-10-19 18:27:56-07:00, torvalds@ppc970.osdl.org Merge http://lia64.bkbits.net/linux-ia64-release-2.6.10 into ppc970.osdl.org:/home/torvalds/v2.6/linux ChangeSet@1.1988.92.23, 2004-10-19 18:03:06-07:00, tgraf@suug.ch [PKT_SCHED]: Qdisc are not supposed to dump TCA_STATS themselves hfsc and htb qdisc are not supposed to copy TCA_STATS on their own and queue length statistic is already updated in generic code part. Signed-off-by: Thomas Graf <tgraf@suug.ch> Signed-off-by: David S. Miller <davem@davemloft.net> ChangeSet@1.1988.92.22, 2004-10-19 18:01:56-07:00, tgraf@suug.ch [PKT_SCHED]: Use generic rate estimator Adapts qdiscs to use generic estimator. Signed-off-by: Thomas Graf <tgraf@suug.ch> Signed-off-by: David S. Miller <davem@davemloft.net> ChangeSet@1.1988.92.21, 2004-10-19 18:01:02-07:00, tgraf@suug.ch [PKT_SCHED]: Introduce gen_replace_estimator Introduces gen_replace_estimator. Signed-off-by: Thomas Graf <tgraf@suug.ch> Signed-off-by: David S. Miller <davem@davemloft.net> ChangeSet@1.1988.92.20, 2004-10-19 18:00:00-07:00, tgraf@suug.ch [PKT_SCHED]: Use gnet_stats API to copy statistics into netlink message Adapts qdisc API to use new gnet_stats functions to copy statistics into netlink message. Signed-off-by: Thomas Graf <tgraf@suug.ch> Signed-off-by: David S. Miller <davem@davemloft.net> ChangeSet@1.1988.92.19, 2004-10-19 17:51:24-07:00, tgraf@suug.ch [PKT_SCHED]: Replace tc_stats with new gnet_stats in struct Qdisc Replaces tc_stats with gnet_stats replacements in struct Qdisc and adapts all qdiscs to use them. Signed-off-by: Thomas Graf <tgraf@suug.ch> Signed-off-by: David S. Miller <davem@davemloft.net> ChangeSet@1.2007, 2004-10-19 16:59:19-07:00, torvalds@ppc970.osdl.org Merge PCI updates ChangeSet@1.1988.102.12, 2004-10-19 16:46:21-07:00, greg@kroah.com I2C: convert from pci_module_init to pci_register_driver for all i2c drivers. Signed-off-by: Greg Kroah-Hartman <greg@kroah.com> ChangeSet@1.1988.102.11, 2004-10-19 16:19:10-07:00, kraxel@bytesex.org [PATCH] I2C: i2c bus power management support The patch below adds power management support to the i2c bus. It adds just two small functions which call down to the devices power management functions if they are present, so the i2c device drivers will receive the suspend and resume events. From: Gerd Knorr <kraxel@bytesex.org> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Greg Kroah-Hartman <greg@kroah.com> ChangeSet@1.1988.97.10, 2004-10-19 23:41:47+01:00, rmk@flint.arm.linux.org.uk [SERIAL] serial_reg.h update. This includes a fuller definition of the 8250 and compatible bits, and adding notes where the definition varies between different chips. This also fixes the following build error: drivers/serial/8250.c:185: error: `UART_FCR_R_TRIG_10' ChangeSet@1.1988.102.10, 2004-10-19 15:24:45-07:00, khali@linux-fr.org [PATCH] I2C: lm87 driver ported to Linux 2.6 This is my port of the lm87 driver to Linux 2.6. It is based on the preliminary work of Jeff Oliver. I then significantly improved the code, added functionality, tested the whole thing on a real motherboard, fixed a couple remaining bugs, and here we are. I'll port a number of improvements and fixes back to the 2.4 version of the driver after lm_sensors 2.8.8 is released (i.e. soon). Signed-off-by: Jean Delvare <khali@linux-fr.org> Signed-off-by: Greg Kroah-Hartman <greg@kroah.com> ChangeSet@1.1988.102.9, 2004-10-19 15:22:22-07:00, ben-linux@fluff.org [PATCH] I2C: S3C2410 I2C Bus driver Bus driver for the Samsung S3C2410 SoC onboard I2C controller Signed-off-by: Ben Dooks <ben-linux@fluff.org> Signed-off-by: Greg Kroah-Hartman <greg@kroah.com> ChangeSet@1.1988.102.8, 2004-10-19 15:22:05-07:00, khali@linux-fr.org [PATCH] I2C: Clean up i2c-amd756 and i2c-prosavage messages A number of messages in the i2c-amd756 and i2c-prosavage drivers have a leading ": " (especially the former). This is a legacy from lm_sensors' printks of the 2.4 times. This patch cleans them up. While I was there, I dropped a couple useless white spaces and dots as well. Signed-off-by: Jean Delvare <khali@linux-fr.org> Signed-off-by: Greg Kroah-Hartman <greg@kroah.com> ChangeSet@1.1988.102.7, 2004-10-19 15:21:48-07:00, khali@linux-fr.org [PATCH] I2C: Fix amd756 name This sets the proper name for busses supported by the i2c-amd756 driver. So far, all busses were named AMD756 regardless of the real hardware. Setting the real name is certainly less confusing for the user, and the sensors-detect script expects this too. Signed-off-by: Jean Delvare <khali@linux-fr.org> Signed-off-by: Greg Kroah-Hartman <greg@kroah.com> ChangeSet@1.1988.102.6, 2004-10-19 15:21:33-07:00, khali@linux-fr.org [PATCH] I2C: Update Kconfig for AMD bus drivers This updates the AMD entries i2c/busses/Kconfig in two ways: * Add missing PCI dependancy. * Reword the help so that users know exactly what is supported by each driver. Signed-off-by: Jean Delvare <khali@linux-fr.org> Signed-off-by: Greg Kroah-Hartman <greg@kroah.com> ChangeSet@1.1988.102.5, 2004-10-19 15:21:15-07:00, nacc@us.ibm.com [PATCH] I2C: replace schedule_timeout() with msleep_interruptible() in i2c-ibm_iic.c Use msleep_interruptible() instead of schedule_timeout() to guarantee the task delays as expected. Remove the unnecessary set_current_state() following the if, as schedule_timeout() [and thus, mlseep_interruptible()] is guaranteed to return in TASK_RUNNING. Signed-off-by: Nishanth Aravamudan <nacc@us.ibm.com> Signed-off-by: Greg Kroah-Hartman <greg@kroah.com> ChangeSet@1.1988.102.4, 2004-10-19 15:20:59-07:00, R.Marek@sh.cvut.cz [PATCH] I2C: fix it8712 detection Following patch fixes the bug introduced by me in VID VRM patch. Spotted (and later reviewed) by Jean Delvare. This bug is non-fatal, it8712 will be just treated as it was before my VID VRM patch. Tested on it8705 and it8712 hardware. Signed-off-by: Rudolf Marek <r.marek@sh.cvut.cz> Signed-off-by: Greg Kroah-Hartman <greg@kroah.com> ChangeSet@1.1988.102.3, 2004-10-19 15:20:22-07:00, khali@linux-fr.org [PATCH] I2C: Fourth auto-fan control interface proposal Here comes my fourth (and hopefully last) sysfs interface proposal for implementing auto-fan control in 2.6. Previous proposals have been discussed here: [1] http://archives.andrew.net.au/lm-sensors/msg07517.html [2] http://archives.andrew.net.au/lm-sensors/msg08049.html [3] http://archives.andrew.net.au/lm-sensors/msg18008.html The interface is still made up of two parts: per fan temp channels selection, and trip points selection. Changes from the third proposal: pwm[1-*]_enable value 2 is now used to explicitely state the auto pwm mode. This was proposed by Mark D. Studebaker [4]. [4] http://archives.andrew.net.au/lm-sensors/msg18011.html Temp channels selection ======================= Renamed files from fan[1-*]_auto_channels to pwm[1-*]_auto_channels_temp. The change from fan tp pwm is to match the recent renaming suggested by Mark M. Hoffman [5]. The "_temp" suffix is to leave some room for a "_fan" suffix at a later time if new chips drive auto pwm according to fan speeds instead of temperature. [5] http://archives.andrew.net.au/lm-sensors/msg18797.html Trip points =========== Trip points are now numbered (point1, point2, etc...) instead of named (_off, _min, _max, _full...). This solves the problem of various chips having a different number of trip points. The interface is still chip independent in that it doesn't require chip-specific knowledge to be used by user-space apps. The reason for this change is that newer chips tend to have more trip points. the LM63 has 8, the LM93 has no less than 12. Also, I read in the LM63 datasheet that ideal pwm vs temperature curve were parabolic in shape. Seems hard to achieve this if we arbitrarily lock the number of trip points to 3 ;) I also introduced an optional hysteresis temperature for trip points. The LM63 has this. Since it makes full sense I'd expect other chips to propose this as well. As before, there are two sets of files, each chip driver picks the one matching its internal model: trip points are either temperature channel-dependent (ADM1031...) or pwm channel-dependent (IT87xx...). If we ever come accross fan speed-driven pwm outputs where trip points are fan channel-dependent we may have to offer a third set of files. We'll see when/if this happens. I hope I have taken everyone's comments and advice into account and we can make this interface proposal part of the sysfs interface standard now. I'm sorry it took so long. Comments welcome. Signed-off-by: Jean Delvare <khali@linux-fr.org> Signed-off-by: Greg Kroah-Hartman <greg@kroah.com> ChangeSet@1.1988.102.2, 2004-10-19 15:14:51-07:00, khali@linux-fr.org [PATCH] I2C: Spare 1 byte in lm90 driver I just noticed the other day that the lm90 driver uses an u16 to store the value of the 8-bit alarms register. This is most probably due to the fact that I originally copied the lm90 driver from the lm83 driver, which actually has two 8-bit registers for alarms, and obviously forgot to change the variable type. Signed-off-by: Jean Delvare <khali@linux-fr.org> Signed-off-by: Greg Kroah-Hartman <greg@kroah.com> ChangeSet@1.1988.2.81, 2004-10-19 14:48:04-07:00, greg@kroah.com PCI: fix up pci_save/restore_state in via-agp due to api change. Signed-off-by: Greg Kroah-Hartman <greg@kroah.com> ChangeSet@1.1988.81.14, 2004-10-19 20:41:27+00:00, pfg@sgi.com [IA64-SGI] Fixes calling arg1 for bte_crb_error_handler() Signed-off-by: Patrick Gefre <pfg@sgi.com> Signed-off-by: Tony Luck <tony.luck@intel.com> ChangeSet@1.1988.81.13, 2004-10-19 20:38:23+00:00, holt@sgi.com [IA64-SGI] Distribute useage of BTE interfaces. During peak utilization periods, the first interface on a node has an inordinately large amount of contention. This is due to all cpus starting their scan for an interface at 0. This patch distributes that based upon the slice the requesting cpu is attached to. Signed-off-by: Robin Holt Signed-off-by: Tony Luck <tony.luck@intel.com> ChangeSet@1.1988.81.12, 2004-10-19 20:36:01+00:00, holt@sgi.com [IA64-SGI] Correct BTE notification timeouts on SN2. The SN2 Block Transfer Engine occassionally fails to send a notification that it has completed a transfer to the kernel. This patch adds a timeout mechanism which will detect the failure, reset the interface, and then retry the transfer. Signed-off-by: Robin Holt Signed-off-by: Tony Luck <tony.luck@intel.com> ChangeSet@1.1988.81.11, 2004-10-19 20:22:26+00:00, pfg@sgi.com [IA64-SGI] BUG_ON test was backwards Signed-off-by: Patrick Gefre <pfg@sgi.com> Signed-off-by: Tony Luck <tony.luck@intel.com> ChangeSet@1.1988.101.4, 2004-10-19 22:06:01+02:00, bzolnier@trik.(none) [ide] convert ide_hwif_t->ide_dma_begin() to ->dma_start() Make ->ide_dma_begin() functions void and rename them to ->dma_start(). Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com> ChangeSet@1.1988.101.3, 2004-10-19 22:00:15+02:00, bzolnier@trik.(none) [ide] add ide_hwif_t->dma_exec_cmd() * split off ->dma_exec_cmd() from ->ide_dma_[read,write] functions * choose command to execute by ->dma_exec_cmd() in higher layers and remove ->ide_dma_[read,write] * in Etrax ide.c driver REQ_DRIVE_TASKFILE requests weren't handled properly for drive->addressing == 0 * in trm290.c read and write commands were interchanged * in sgiioc4.c commands weren't sent to disk devices Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com> ChangeSet@1.1988.101.2, 2004-10-19 21:49:30+02:00, bzolnier@trik.(none) [ide] add ide_hwif_t->dma_setup() * tag REQ_DRIVE_TASKFILE write requests with REQ_RW * split off ->dma_setup() from ->ide_dma_[read,write] functions * use ->dma_setup() directly in ATAPI drivers and remove media checks from ->ide_dma_[read,write] * ->ide_dma_[read,write,begin] cannot fail now * in Etrax ide.c setup DMA for ATAPI devices before sending command to drive (so setup order is the same as for disks) Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com> ChangeSet@1.2005, 2004-10-19 12:25:16-07:00, torvalds@ppc970.osdl.org Merge bk://linux-dj.bkbits.net/cpufreq into ppc970.osdl.org:/home/torvalds/v2.6/linux ChangeSet@1.2004, 2004-10-19 12:21:19-07:00, torvalds@ppc970.osdl.org Merge arm integrator time.h removal ChangeSet@1.2002, 2004-10-19 12:08:58-07:00, torvalds@ppc970.osdl.org Merge ChangeSet@1.2001, 2004-10-19 12:05:46-07:00, torvalds@ppc970.osdl.org Merge bk://linux-dj.bkbits.net/agpgart into ppc970.osdl.org:/home/torvalds/v2.6/linux ChangeSet@1.1855.2.12, 2004-10-19 14:53:12-04:00, davej@dhcp83-103.boston.redhat.com [AGPGART] Fix incorrect VIA PT880 entry. There was a mistake in the list of IDs I got from VIA, which meant this chipset was incorrectly recognised. Signed-off-by: Dave Jones <davej@redhat.com> ChangeSet@1.1988.98.11, 2004-10-19 19:52:44+01:00, rmk@flint.arm.linux.org.uk [ARM] Add documentation for ARM kernel timer infrastructure. ChangeSet@1.1988.98.10, 2004-10-19 19:36:16+01:00, rmk@flint.arm.linux.org.uk [ARM] Add generic RTC implementation. This provides a number of helper functions and data structures for RTC implementations to make use of, including a standard implemention for /proc/driver/rtc and the rtc miscdevice. It supports runtime registration of RTC timekeeping sources. ChangeSet@1.1999, 2004-10-19 10:51:41-07:00, torvalds@ppc970.osdl.org Merge bk://gkernel.bkbits.net/net-drivers-2.6 into ppc970.osdl.org:/home/torvalds/v2.6/linux ChangeSet@1.1998, 2004-10-19 10:50:22-07:00, torvalds@ppc970.osdl.org Trivial Makefile merge ChangeSet@1.1988.101.1, 2004-10-19 19:46:59+02:00, bzolnier@trik.(none) [ide] add sg_init_one() helper and teach ide about it Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com> ChangeSet@1.1988.81.10, 2004-10-19 17:33:58+00:00, holt@sgi.com [IA64-SGI] Double spin_unlock in bte.c If all bte interfaces are in use, the current code will leave the bte pointer set when exiting from the loop trying to locate an interface to use. This results in two processes using the same interface and both trying to free the same one. With a premptible kernel, this results in the preempt count getting off. Signed-off-by: Robin Holt <holt@sgi.com> Signed-off-by: Tony Luck <tony.luck@intel.com> ChangeSet@1.1988.98.9, 2004-10-19 18:02:21+01:00, rmk@flint.arm.linux.org.uk [ARM] Sanitise Footbridge machine class. Footbridge was suffering from a little lack of care and attention; it still had the nasty arch.c file with all the associated #ifdef gross-ness that entailed. Re-jig footbridge support so that each machine type contains all the necessary support code, with a separate common implementation which they all share. ChangeSet@1.1988.2.80, 2004-10-19 09:54:42-07:00, greg@kroah.com Merge kroah.com:/home/greg/linux/BK/bleed-2.6 into kroah.com:/home/greg/linux/BK/pci-2.6 ChangeSet@1.1988.100.2, 2004-10-19 12:50:14-04:00, jgarzik@pobox.com Merge pobox.com:/spare/repo/libata-dev/ahci into pobox.com:/spare/repo/libata-2.6 ChangeSet@1.1988.98.8, 2004-10-19 17:49:21+01:00, ben-linux@org.rmk.(none) [ARM PATCH] 2132/1: Fix timer NULL pointer de-reference on suspend Patch from Ben Dooks Timer suspend code fails to check for NULL before calling the timer implementor's suspend or resume hooks. Signed-off-by: Ben Dooks ChangeSet@1.1988.2.79, 2004-10-19 09:36:24-07:00, dtor_core@ameritech.net [PATCH] ieee1394: SBP-2 - rename some constants to fix clash with new SCSI core defines. Acked by Ben Collins. Signed-off-by: Dmitry Torokhov <dtor@mail.ru> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.98.7, 2004-10-19 17:36:06+01:00, rmk@flint.arm.linux.org.uk Merge flint.arm.linux.org.uk:/usr/src/bk/linux-2.6-timer into flint.arm.linux.org.uk:/usr/src/bk/linux-2.6-rmk ChangeSet@1.1988.98.6, 2004-10-19 17:22:26+01:00, rmk@flint.arm.linux.org.uk [ARM] Fix missed udelay usage - assembly needs to call __udelay now. ChangeSet@1.1988.99.3, 2004-10-19 12:20:09-04:00, jgarzik@pobox.com Hand-merge typhoon and wavelan_cs conflicts, when merging viro's ETH* patches. ChangeSet@1.1988.98.5, 2004-10-19 17:15:34+01:00, rmk@flint.arm.linux.org.uk [ARM] Move machine specific boot variables to separate makefile. Move machine specific boot variables out of arch/arm/boot/Makefile into arch/arm/mach-*/Makefile.boot. ChangeSet@1.1988.2.78, 2004-10-19 09:10:04-07:00, torvalds@ppc970.osdl.org Merge bk://kernel.bkbits.net/gregkh/linux/usb-2.6 into ppc970.osdl.org:/home/torvalds/v2.6/linux ChangeSet@1.1988.98.4, 2004-10-19 17:02:04+01:00, rmk@flint.arm.linux.org.uk [ARM] Clean up footbridge configuration. ChangeSet@1.1988.98.3, 2004-10-19 16:53:05+01:00, rmk@flint.arm.linux.org.uk [ARM] Rehash iwmmxt signal handling. In the near future, VFP will want to save state onto the user stack. Therefore, separate out the iwmmxt specific parts, and implement a generic "safe copy to user space using random CPU instructions". This is necessary because iwmmxt and VFP both use special CPU instructions to load and/or save their state. ChangeSet@1.1988.99.2, 2004-10-19 11:47:30-04:00, jgarzik@pobox.com Merge pobox.com:/spare/repo/netdev-2.6/typhoon into pobox.com:/spare/repo/net-drivers-2.6 ChangeSet@1.1988.99.1, 2004-10-19 11:45:50-04:00, jgarzik@pobox.com Merge pobox.com:/spare/repo/netdev-2.6/wireless-ext into pobox.com:/spare/repo/net-drivers-2.6 ChangeSet@1.1988.98.2, 2004-10-19 16:44:21+01:00, rmk@flint.arm.linux.org.uk [ARM] Convert to constant-optimising udelay() implementation. This allows us to eliminate a multiplication when we have a constant delay value, as per x86. ChangeSet@1.1988.98.1, 2004-10-19 16:33:08+01:00, rmk@flint.arm.linux.org.uk [ARM] Add netconsole support to ARM AM79C961A driver. ChangeSet@1.1988.68.260, 2004-10-19 08:30:26-07:00, Markus.Lidel@shadowconnect.com [PATCH] i2o: message conversion fix for le32_to_cpu parameters - fixed incorrect parameters to le32_to_cpu which was introduced with the I2O message conversion patch Signed-off-by: Markus Lidel <Markus.Lidel@shadowconnect.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.259, 2004-10-19 08:30:14-07:00, Markus.Lidel@shadowconnect.com [PATCH] i2o: correct error code if bus is busy in i2o_scsi - corrected the error code in i2o_scsi_reply to return the correct error code DID_BUS_BUSY if bus is busy (original from Alan Cox) Signed-off-by: Markus Lidel <Markus.Lidel@shadowconnect.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.258, 2004-10-19 08:24:08-07:00, nacc@us.ibm.com [PATCH] net/mac89x0: replace schedule_timeout() with msleep_interruptible() Signed-off-by: Nishanth Aravamudan <nacc@us.ibm.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.257, 2004-10-19 08:23:55-07:00, janitor@sternwelten.at [PATCH] janitor: __FUNCTION__ string concatenation deprecated __FUNCTION__ string concatenation is deprecated Signed-off-by: Clemens Buchacher <drizzd@aon.at> Signed-off-by: Maximilian Attems <janitor@sternwelten.at> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.256, 2004-10-19 08:23:43-07:00, janitor@sternwelten.at [PATCH] janitor: replace dprintk with pr_debug in microcode.c Replaced dprintk with pr_debug from kernel.h Signed-off-by: Domen Puncer <domen@coderock.org> Signed-off-by: Maximilian Attems <janitor@sternwelten.at> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.255, 2004-10-19 08:23:30-07:00, janitor@sternwelten.at [PATCH] drivers/isdn: replace milliseconds() with msecs_to_jiffies() Signed-off-by: Nishanth Aravamudan <nacc@us.ibm.com> Signed-off-by: Maximilian Attems <janitor@sternwelten.at> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.254, 2004-10-19 08:23:18-07:00, janitor@sternwelten.at [PATCH] janitor: isdn/icn: change units of ICN_BOOT_TIMEOUT1 Change units of ICN_BOOT_TIMEOUT1 to msecs instead of jiffies for msleep_interruptible() in icn.c. Also, remove unused constant ICN_CHANLOCK_DELAY. Signed-off-by: Nishanth Aravamudan <nacc@us.ibm.com> Signed-off-by: Maximilian Attems <janitor@sternwelten.at> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.253, 2004-10-19 08:23:05-07:00, janitor@sternwelten.at [PATCH] janitor: replace dprintk with pr_debug in drivers/scsi/tpam/ Replaced dprintk, and deleted it out of tpam.h. Signed-off-by: Domen Puncer <domen@coderock.org> Signed-off-by: Maximilian Attems <janitor@sternwelten.at> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.252, 2004-10-19 08:22:53-07:00, janitor@sternwelten.at [PATCH] ieee1394: replace schedule_timeout() with msleep_interruptible() Signed-off-by: Nishanth Aravamudan <nacc@us.ibm.com> Signed-off-by: Maximilian Attems <janitor@sternwelten.at> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.251, 2004-10-19 08:22:40-07:00, janitor@sternwelten.at [PATCH] drivers/md: replace schedule_timeout() with msleep_interruptible() Signed-off-by: Nishanth Aravamudan <nacc@us.ibm.com> Signed-off-by: Maximilian Attems <janitor@sternwelten.at> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.250, 2004-10-19 08:22:28-07:00, janitor@sternwelten.at [PATCH] janitor: drivers/message: replace schedule_timeout() with msleep_interruptible() Use msleep_interruptible() instead of schedule_timeout() under drivers/message. Signed-off-by: Nishanth Aravamudan <nacc@us.ibm.com> Signed-off-by: Maximilian Attems <janitor@sternwelten.at> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.249, 2004-10-19 08:22:16-07:00, janitor@sternwelten.at [PATCH] janitor: drivers/media: replace schedule_timeout() with msleep() Signed-off-by: Nishanth Aravamudan <nacc@us.ibm.com> Signed-off-by: Maximilian Attems <janitor@sternwelten.at> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.248, 2004-10-19 08:22:03-07:00, janitor@sternwelten.at [PATCH] janitor: video/radeonfb: remove MS_TO_HZ() Removes definition of MS_TO_HZ() in favor of msecs_to_jiffies(). Signed-off-by: Nishanth Aravamudan <nacc@us.ibm.com> Signed-off-by: Maximilian Attems <janitor@sternwelten.at> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.247, 2004-10-19 08:21:51-07:00, janitor@sternwelten.at [PATCH] janitor: video/radeon_base: replace MS_TO_HZ() with msecs_to_jiffies() Replace MS_TO_HZ() with msecs_to_jiffies(). Signed-off-by: Nishanth Aravamudan <nacc@us.ibm.com> Signed-off-by: Maximilian Attems <janitor@sternwelten.at> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.246, 2004-10-19 08:21:39-07:00, janitor@sternwelten.at [PATCH] janitor: kill KERNEL_VERSION duplicate in videocodec.c Kill KERNEL_VERSION duplicate. Funny that it insn't even used in here Signed-off-by: Domen Puncer <domen@coderock.org> Signed-off-by: Maximilian Attems <janitor@sternwelten.at> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.245, 2004-10-19 08:21:27-07:00, janitor@sternwelten.at [PATCH] janitor: fix-typo-arm-dma arch/arm26/machine/dma.c caught by Domen Puncer <domen@coderock.org> Signed-off-by: Maximilian Attems <janitor@sternwelten.at> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.244, 2004-10-19 08:21:15-07:00, janitor@sternwelten.at [PATCH] janitor: mark __init/__exit static drivers/net/bsd_comp Signed-off-by: Maximilian Attems <janitor@sternwelten.at> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.243, 2004-10-19 08:21:02-07:00, janitor@sternwelten.at [PATCH] janitor: mark __init/__exit static drivers/net/ppp_deflate Signed-off-by: Maximilian Attems <janitor@sternwelten.at> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.242, 2004-10-19 08:20:50-07:00, janitor@sternwelten.at [PATCH] janitor: remove check_region from drivers/char/esp.c Signed-off-by: Maximilian Attems <janitor@sternwelten.at> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.241, 2004-10-19 08:20:38-07:00, janitor@sternwelten.at [PATCH] drivers/char: replace schedule_timeout() with msleep_interruptible() Replace lots of open-coded sleeps with msleep_interruptible() under drivers/char. Signed-off-by: Maximilian Attems <janitor@sternwelten.at> Signed-off-by: Nishanth Aravamudan <nacc@us.ibm.com> Signed-off-by: Rogier Wolff <R.E.Wolff@BitWizard.nl> Signed-off-by: Christoph Lameter <christoph@lameter.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.240, 2004-10-19 08:20:24-07:00, janitor@sternwelten.at [PATCH] janitor: char/sx: replace direct assignment with set_current_state() Signed-off-by: Nishanth Aravamudan <nacc@us.ibm.com> Signed-off-by: Maximilian Attems <janitor@sternwelten.at> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.239, 2004-10-19 08:20:11-07:00, janitor@sternwelten.at [PATCH] janitor: char/ipmi_si_intf: add set_current_state() Add set_current_state() before schedule_timeout() so a delay is achieved. Without the addition, schedule_timeout() returns immediately. Signed-off-by: Nishanth Aravamudan <nacc@us.ibm.com> Signed-off-by: Maximilian Attems <janitor@sternwelten.at> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.238, 2004-10-19 08:19:59-07:00, janitor@sternwelten.at [PATCH] janitor: char/fdc-io: replace direct assignment with set_current_state() Signed-off-by: Nishanth Aravamudan <nacc@us.ibm.com> Signed-off-by: Maximilian Attems <janitor@sternwelten.at> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.237, 2004-10-19 08:19:47-07:00, janitor@sternwelten.at [PATCH] janitor: char/sis-agp: replace schedule_timeout() with msleep() Signed-off-by: Nishanth Aravamudan <nacc@us.ibm.com> Signed-off-by: Maximilian Attems <janitor@sternwelten.at> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.236, 2004-10-19 08:19:34-07:00, janitor@sternwelten.at [PATCH] janitor: char/rio_linux: replace schedule_timeout() with msleep()/msleep_interruptible() Use msleep()/msleep_interruptible() [as appropriate] instead of schedule_timeout() to guarantee the task delays as expected. Signed-off-by: Nishanth Aravamudan <nacc@us.ibm.com> Signed-off-by: Maximilian Attems <janitor@sternwelten.at> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.235, 2004-10-19 08:19:22-07:00, janitor@sternwelten.at [PATCH] janitor: list_for_each: drivers-char-drm-radeon_mem.c s/for/list_for_each/ Signed-off-by: Domen Puncer <domen@coderock.org> Signed-off-by: Maximilian Attems <janitor@sternwelten.at> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.234, 2004-10-19 08:19:10-07:00, janitor@sternwelten.at [PATCH] janitor: remove old ifdefs fasttimer Patches to remove some old ifdefs. remove most of the #include <linux/version.h> kill compat cruft like #define ahd_pci_set_dma_mask pci_set_dma_mask Signed-off-by: Maximilian Attems <janitor@sternwelten.at> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.233, 2004-10-19 08:18:58-07:00, janitor@sternwelten.at [PATCH] janitor: remove old ifdefs dmascc Patches to remove some old ifdefs. remove most of the #include <linux/version.h> kill compat cruft like #define ahd_pci_set_dma_mask pci_set_dma_mask Signed-off-by: Maximilian Attems <janitor@sternwelten.at> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.232, 2004-10-19 08:18:46-07:00, janitor@sternwelten.at [PATCH] janitor: cpqarray remove unused include remove unused #include <linux/version.h> Old ifdefs were removed that used it's definition. Signed-off-by: Maximilian Attems <janitor@sternwelten.at> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.231, 2004-10-19 08:18:33-07:00, Markus.Lidel@shadowconnect.com [PATCH] i2o: quieten sparse 1-bit-bitfield warnings in i2o.h - Single-bit bitfields should be unsigned. Quell sparse warnings for these. (from Randy Dunlap) Signed-off-by: Randy Dunlap <rddunlap@osdl.org> Signed-off-by: Markus Lidel <Markus.Lidel@shadowconnect.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.230, 2004-10-19 08:18:19-07:00, Markus.Lidel@shadowconnect.com [PATCH] i2o: new functions to convert messages to a virtual address - added new function i2o_msg_in_to_virt and i2o_msg_out_to_virt, to turn an I2O message to a virtual address (original from Alan Cox) - replaced readl with le32_to_cpu where it is not necessary (original from Alan Cox) Signed-off-by: Markus Lidel <Markus.Lidel@shadowconnect.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.229, 2004-10-19 08:18:07-07:00, Markus.Lidel@shadowconnect.com [PATCH] i2o: added support for Promise controllers - added support for Promise I2O controllers, which need a different initialization sequence (original from Alan Cox) Signed-off-by: Markus Lidel <Markus.Lidel@shadowconnect.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.228, 2004-10-19 08:17:55-07:00, Markus.Lidel@shadowconnect.com [PATCH] i2o: code beautifying and cleanup - added KERN_* to printk where it was missing (original from Alan Cox) - removed unused code which was commented out already (original from Alan Cox) - make error messages more sane in i2o_block (original from Alan Cox) Signed-off-by: Markus Lidel <Markus.Lidel@shadowconnect.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.227, 2004-10-19 08:17:43-07:00, wli@holomorphy.com [PATCH] sparc32: early tick_ops The zaphod scheduler likes to call scheduler_tick() before time_init(). sparc32 oopses. Perhaps a scheduler bug, but this robustifies things. Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.226, 2004-10-19 08:17:30-07:00, wli@holomorphy.com [PATCH] profile: 512x Altix timer interrupt livelock fix I've been informed that /proc/profile livelocks some systems in the timer interrupt, usually at boot. The following patch attempts to amortize the atomic operations done on the profile buffer to address this stability concern. This patch has nothing to do with performance; kernels using periodic timer interrupts are under realtime constraints to complete whatever work they perform within timer interrupts before the next timer interrupt arrives lest they livelock, performing no work whatsoever apart from servicing timer interrupts. The latency of the cacheline bounce for prof_buffer contributes to the time spent in the timer interrupt, hence it must be amortized when remote access latencies or deviations from fair exclusive cacheline acquisition may cause cacheline bounces to take longer than the interval between timer ticks. What this patch does is to create a pair of per-cpu open-addressed hashtables indexed by profile buffer slot holding values representing the number of pending profile buffer hits for the profile buffer slot. When this hashtable overflows, one iterates over the hashtable accounting each of the pairs of profile buffer slots and hit counts to the global profile buffer. Zero is a legitimate profile buffer slot, so zero hit counts represent unused hashtable entries. The hashtable is furthermore protected from flush IPI's by interrupt disablement. In order to flush the pending profile hits for read_profile(), this patch flips betweeen the pairs of per-cpu profile buffer by signalling all cpus to flip via IPI at the time of read_profile(), followed by doing all the work to flush the profile hits from the older per-cpu buffers in the context of the caller of read_profile(), with exclusion provided by a semaphore ensuring that only one caller of profile_flip_buffers() may execute at a time, and using interrupt disablement to prevent buffer flip IPI's from altering the hashtables or flip state while an update is in progress. The flip state is per-cpu so that remote cpus need only disable interrupts locally for synchronization, which is both simple and busywait-free for remote cpus. The flip states all change in tandem when some cpu requests the hashtables be flipped, and the requester waits for the completion of smp_call_function() for notification that all cpus have finished flipping between their hashtables. The IPI handler merely toggles the flip state (which is an array index) between 0 and 1. This is expected to be a much stronger amortization than merely reducing the frequency of profile buffer access by a factor of the size of the hashtable because numerous hits may be held for each of its entries. This reduces what was before the patch a number of atomic increments equal to what after the patch becomes the sum of the hits held for each entry in the hashtable, to a number of atomic_add()'s equal to the number of entries in the per_cpu hashtable. This is nondeterministic, but as the profile hits tend to be concentrated in a very small number of profile buffer slots during any given timing interval, is likely to represent a very large number of atomic increments. This amortization of atomic increments does not depend on the hash function, only the sharp peakedness of the distribution of profile buffer hits. This algorithm has two advantages over full-size per-cpu profile buffers. The first is that the space footprint is much smaller. Per-cpu profile buffers would increase the space requirements by a factor of num_online_cpus(), where this algorithm only requires one page per cpu. The second is that reading the profile state is much faster, because the state that must be traversed is exactly the above space consumers, and the relative reduction in size concomitantly reduces the time required for a read operation. I also took the liberty of adding some commentary to the comments at the beginning of the file reflecting the major work done on profile.c in recent months and describing what the file implements. The reporters of this issue have verified that this resolves their timer interrupt livelock on 512x Altixen. In my own testing on 4x logical x86-64, this patch saw a rate of about 18 flushes per minute under load, or about one flush every 3 seconds, for about 38.4 atomic accesses to the profile buffer per second per cpu in one of the algorithm's worst cases, about 3.84% of the number of atomic profile buffer accesses per second per cpu as a normal kernel would commit. This represents a twenty-six-fold increase in the scalability on SMP systems with 4KB PAGE_SIZE, i.e. with a 4KB PAGE_SIZE, the number of atomic profile buffer accesses per second per cpu is reduced by a factor of 26, thereby increasing the number of cpus a system must have before it would experience a timer interrupt livelock by a factor of 26, with the proviso that cacheline bounces must take the same amount of time to service. This increase in the scalability of the kernel is expected to be much larger for ia64, which has a large PAGE_SIZE, because the distribution of profile buffer hits is so sharply peaked that doubling the hashtable size will much more than double the amortization factor. In fact, only 19 flushes were observed on a 64x Altix over an approximately 10 minute AIM7 run, and 1 flush on a 512x Altix over the course of an entire AIM7 run, for truly vast effective amortization factors. A prior version of this patch, which did not include the node-local hashtable allocation and bounded collision chains has been successfully tested on 64x and 512x ia64 vs 2.6.9-rc2, 8x ia64 vs. 2.6.9-rc2-mm1, 4x x86-64 vs. 2.6.9-rc2-mm1, and 6x sparc64 vs. 2.6.9-rc2-mm1. This patch minus the hashtable initialization fix has been successfully tested on 2x ppc64, 2x alpha, 8x ia64, 6x sparc64, and 4x x86-64, all vs. 2.6.9-rc2-mm1. This precise version of the patch has been successfully tested on 8x ia32 against 2.6.9-rc2-mm1 and 6x sparc64 vs. both 2.6.9-rc2-mm1 and 2.6.9-rc2-mm2. Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.225, 2004-10-19 08:17:18-07:00, jmorris@redhat.com [PATCH] SELinux: allow all filesystems to specify fscreate mount option The patch below allows all types of filesystems to specify the fscreate mount option (which is used to specify the security context of the filesystem itself). This was previously only available for filesystems with full xattr security labeling, but is also potentially required for filesystems with e.g. psuedo xattr labeling such as devpts and tmpfs. An example of use is to specify at mount time the fs security context of a tmpfs filesystem, overriding the default specified in policy for that filesystem. This patch has been in the Fedora kernel for some weeks with no problems. Signed-off-by: James Morris <jmorris@redhat.com> Signed-off-by: Stephen Smalley <sds@epoch.ncsc.mil> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.224, 2004-10-19 08:17:06-07:00, agruen@suse.de [PATCH] xattr: re-introduce validity check before xattr cache insert * ext[23]_xattr_list(): - Before inserting an xattr block into the cache, make sure that the block is not corrupted. The check got moved after inserting into the cache in the xattr consolidation patches, so corrupted blocks could become visible to cache users. - Take a variable out of the loop that calls the ->list handlers. * A few cosmetic changes. Signed-off-by: Andreas Gruenbacher <agruen@suse.de> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.223, 2004-10-19 08:16:53-07:00, jmorris@redhat.com [PATCH] xattr consolidation v3 - tmpfs This patch adds xattr support to tmpfs, and a security xattr handler. The purpose of this is to allow udev to be mounted on tmpfs, as used currently by Fedora. Original patch from: Luke Kenneth Casson Leighton <lkcl@lkcl.net>. Signed-off-by: James Morris <jmorris@redhat.com> Signed-off-by: Stephen Smalley <sds@epoch.ncsc.mil> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.222, 2004-10-19 08:16:41-07:00, jmorris@redhat.com [PATCH] xattr consolidation v3 - devpts This patch updates the devpts xattr handler code to the generic xattr API, also adds a GPL notice, author and copyright details. Signed-off-by: James Morris <jmorris@redhat.com> Signed-off-by: Stephen Smalley <sds@epoch.ncsc.mil> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.221, 2004-10-19 08:16:28-07:00, jmorris@redhat.com [PATCH] xattr consolidation v3 - ext2 This patch converts ext2 xattr and acl code to the new generic xattr API. Signed-off-by: James Morris <jmorris@redhat.com> Signed-off-by: Stephen Smalley <sds@epoch.ncsc.mil> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.220, 2004-10-19 08:16:16-07:00, jmorris@redhat.com [PATCH] xattr consolidation v3 - ext3 This patch converts the ext3 xattr and acl code to the generic xattr API. Signed-off-by: James Morris <jmorris@redhat.com> Signed-off-by: Stephen Smalley <sds@epoch.ncsc.mil> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.219, 2004-10-19 08:16:03-07:00, jmorris@redhat.com [PATCH] xattr consolidation v3 - LSM This patch replaces the dentry parameter with an inode in the LSM inode_{set|get|list}security hooks, in keeping with the ext2/ext3 code. dentries are not needed here. Signed-off-by: James Morris <jmorris@redhat.com> Signed-off-by: Stephen Smalley <sds@epoch.ncsc.mil> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.218, 2004-10-19 08:15:51-07:00, jmorris@redhat.com [PATCH] xattr consolidation v3 - generic xattr API This patch consolidates common xattr handling logic into the core fs code, with modifications suggested by Christoph Hellwig (hang off superblock, remove locking, use generic code as methods), for use by ext2, ext3 and devpts, as well as upcoming tmpfs xattr code. Signed-off-by: James Morris <jmorris@redhat.com> Signed-off-by: Stephen Smalley <sds@epoch.ncsc.mil> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.217, 2004-10-19 08:15:39-07:00, medaglia@undl.org.br [PATCH] Fix types.h This patch fixes troubles when compiling some applications that include <linux/byteorder/little_endian.h>, like xmms. Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.216, 2004-10-19 08:15:27-07:00, drepper@redhat.com [PATCH] Simplify last lib/idr.c change The last change to alloc_layer in lib/idr.c unnecessarily complicates the code and depending on the definition of spin_unlock will cause worse code to be generated than necessary. The following patch should improve the situation. Signed-off-by: Ulrich Drepper <drepper@redhat.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.215, 2004-10-19 08:15:14-07:00, haroldo.gamal@infolink.com.br [PATCH] smbfs does not honor uid, gid, file_mode and dir_mode supplied by user mount This patch fixes "Samba Bugzilla Bug 999". The last version (2.6.8.1) of smbfs kernel module do not honor uid, gid, file_mode and dir_mode supplied by user during mount. This bug is also logged as "Kernel Bug Tracker Bug 3330". To fully work, some modifications are needed to samba smbmount.c and smbmnt.c files. Those patches are available at Samba and Kernel Bug Tracker pages. After those patches, if the user do not supply any of the parameters above, the uid, gid, file_mode and dir_mode on the server will be used by the client. Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.214, 2004-10-19 08:15:02-07:00, nickpiggin@yahoo.com.au [PATCH] taint on bad_page Hugh and I both thought this would be generally useful. Signed-off-by: Nick Piggin <nickpiggin@yahoo.com.au> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.213, 2004-10-19 08:14:50-07:00, nickpiggin@yahoo.com.au [PATCH] taint: fix forced rmmod This taint didn't appear to be reported. Signed-off-by: Nick Piggin <nickpiggin@yahoo.com.au> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.212, 2004-10-19 08:14:38-07:00, ak@muc.de [PATCH] x86-64/i386: add mce tainting This patch adds machine check tainting. When a handled machine check occurs the oops gets a new 'M' flag. This is useful to ignore machines with hardware problems in oops reports. On i386 a thermal failure also sets this flag. Done for x86-64 and i386 so far. Signed-off-by: Andi Kleen <ak@suse.de> Signed-off-by: Nick Piggin <nickpiggin@yahoo.com.au> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.211, 2004-10-19 08:14:25-07:00, dipankar@in.ibm.com [PATCH] Document RCU based dcache lookup Finally some in-tree documentation for RCU-based dcache look-up. Signed-off-by: Dipankar Sarma <dipankar@in.ibm.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.210, 2004-10-19 08:14:13-07:00, dipankar@in.ibm.com [PATCH] Remove d_bucket Tested using dcachebench and hevy rename test. http://lse.sourceforge.net/locking/dcache/rename_test/ While going over dcache code, I realized that d_bucket which was introduced to prevent hash chain traversals from going into an infinite loop earlier, is no longer necessary. Originally, when RCU based lock-free lookup was first introduced, dcache hash chains used list_head. Hash chain traversal was terminated when dentry->next reaches the list_head in the hash bucket. However, if renames happen during a lock-free lookup, a dentry may move to different bucket and subsequent hash chain traversal from there onwards may not see the list_head in the original bucket at all. In fact, this would result in the list_head in the bucket interpreted as a list_head in dentry and bad things will happen after that. Once hlist based hash chains were introduced in dcache, the termination condition changed and lock-free traversal would be safe with NULL pointer based termination of hlists. This means that d_bucket check is no longer required. There still exist some theoritical livelocks like a dentry getting continuously moving and lock-free look-up never terminating. But that isn't really any worse that what we have. In return for these changes, we reduce the dentry size by the size of a pointer. That should make akpm and mpm happy. Signed-off-by: Dipankar Sarma <dipankar@in.ibm.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.209, 2004-10-19 08:14:01-07:00, dipankar@in.ibm.com [PATCH] Fix dcache lookup __d_lookup() has leftover stuff from earlier code to protect it against rename. The smp_rmb() there was needed for the sequence counter logic. Original dcache_rcu had : + move_count = dentry->d_move_count; + smp_rmb(); + if (dentry->d_name.hash != hash) continue; if (dentry->d_parent != parent) continue; This was to make sure that comparisons didn't happen before before the sequence counter was snapshotted. This logic is now gone and memory barrier is not needed. Removing this should also improve performance. The other change is the leftover smp_read_barrier_depends(), later converted to rcu_dereference(). Originally, the name comparison was not protected against d_move() and there could have been a mismatch of allocation size of the name string and dentry->d_name.len. This was avoided by making the qstr update in dentry atomic using a d_qstr pointer. Now, we do ->d_compare() or memcmp() with the d_lock held and it is safe against d_move(). So, there is no need to rcu_dereference() anything. In fact, the current code is meaningless. Signed-off-by: Dipankar Sarma <dipankar@in.ibm.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.208, 2004-10-19 08:13:49-07:00, schwidefsky@de.ibm.com [PATCH] cleanup: time.h, times.h, timex.h and jiffies.h This patch moves some definitions among time.h, times.h, timex.h and jiffies.h. The purpose is to sort all jiffies related functions to jiffies.h, to get rid of the cyclic dependency between time.h & timex.h and to move all #include lines to the start of the header files. Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.207, 2004-10-19 08:13:35-07:00, schwidefsky@de.ibm.com [PATCH] cleanup: remove unused definitions from timex.h The CLOCK_TICK_FACTOR and FINETUNE defines from <asm/timex.h> are not used anywhere. Kill them. Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.206, 2004-10-19 08:13:23-07:00, schwidefsky@de.ibm.com [PATCH] cleanup: move call to update_process_times. For non-smp kernels the call to update_process_times is done in the do_timer function. It is more consistent with smp kernels to move this call to the architecture file which calls do_timer. Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.205, 2004-10-19 08:13:09-07:00, hch@lst.de [PATCH] don't include <linux/sysctl.h> in <linux/security.h> security.h gets pulled in in lots of places, so use forward declarations for struct ctl_table instead of pulling sysctl in everywhere. Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.204, 2004-10-19 08:12:57-07:00, hch@lst.de [PATCH] mark inter_module_* deprecated These had been officially deprecated since Rusty's module rewrite, but never got the __deprecated marker. The only remaining users are drm and mtd, so we'll get some warnings for common builds. But maybe that's the only way to get the drm people to fix the mess :) Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.203, 2004-10-19 08:12:45-07:00, hch@lst.de [PATCH] remove MOD_INC_USE_COUNT/MOD_DEC_USE_COUNT They've been marked deprecated since 2.5.x and there's no more users. Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.202, 2004-10-19 08:12:33-07:00, agruen@suse.de [PATCH] Replace hard-coded MODVERDIR in modpost When building external modules, MODVERDIR is relative to the external module instead of in the kernel source tree. Use the MODVERDIR environment variable instead of the hard-coded path in modpost. Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.201, 2004-10-19 08:12:21-07:00, stelian@popies.net [PATCH] A simple FIFO implementation A simple ringbuffer implementation for various character drivers. Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.200, 2004-10-19 08:12:08-07:00, wli@holomorphy.com [PATCH] report per-process pagetable usage Andi Kleen requested that the number of pagetable pages in use by a process be reported in /proc/$PID/status; this patch implements that. Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.199, 2004-10-19 08:11:56-07:00, wli@holomorphy.com [PATCH] make console_conditional_schedule() __sched and use cond_resched() Relatively minor add-on (not necessarily tied to it or required to be taken or a fix for any bug). Since cond_resched() is using PREEMPT_ACTIVE now, it may be useful to update the open-coded instance of cond_resched() to use the generic call. Also, it should probably be __sched so the caller shows up in wchan. Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.198, 2004-10-19 08:11:44-07:00, wli@holomorphy.com [PATCH] procfs: fix task_mmu.c text size reporting Not all binfmts page align ->end_code and ->start_code, so the task_mmu statistics calculations need to perform this alignment themselves. Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.197, 2004-10-19 08:11:32-07:00, Natalie.Protasevich@unisys.com [PATCH] Incorrect PCI interrupt assignment on ES7000 for platform GSI In arch/i386/kernel/acpi/boot.c, platform GSI does not propagate back from mp_register_gsi() to a calling routine which results in IRQ to be set for wrong GSI. This causes most of the PCI slots on the first PCI module to fail. This patch fixes the problem by returning new GSI back to acpi_register_gsi(). Signed-off-by: Natalie Protasevich <Natalie.Protasevich@unisys.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.97.9, 2004-10-19 16:11:22+01:00, rmk@flint.arm.linux.org.uk [SERIAL] Keep trying to register our console device. Some serial drivers receive their serial port device information via the device model. This unfortunately means that the selected port may not be available when the console subsystem initialises, so we must keep trying to register the console after each port is added. ChangeSet@1.1988.68.196, 2004-10-19 08:11:20-07:00, raven@themaw.net [PATCH] autofs4: allow map update recognition Having recently repaired autofs' ability to recognise updates to maps dynamically I found I needed to reintroduce the directory inode lookup method (I broke the update recognition several versions ago, oops). This patch does this and applies cleanly against 2.6.9-rc1-mm4. As far as I can tell from testing it doesn't introduce any backward incompatibilities. Signed-off-by: Ian Kent <raven@themaw.net> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.195, 2004-10-19 08:11:08-07:00, zwane@linuxpower.ca [PATCH] Allow multiple inputs in alternative_input I had to use the following patch to allow multiple arguments to be passed down to the asm stub for alternative_input whilst writing alternatives for mwait code, it seems like a simple enough fix. Signed-off-by: Zwane Mwaikambo <zwane@linuxpower.ca> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.194, 2004-10-19 08:10:55-07:00, wli@holomorphy.com [PATCH] pidhashing: enforce PID_MAX_LIMIT in sysctls The pid_max sysctl doesn't enforce PID_MAX_LIMIT or sane lower bounds. RESERVED_PIDS + 1 is the minimum pid_max that won't break alloc_pidmap(), and PID_MAX_LIMIT may not be aligned to 8*PAGE_SIZE boundaries for unusual values of PAGE_SIZE, so this also rounds up PID_MAX_LIMIT to it. Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.193, 2004-10-19 08:10:43-07:00, wli@holomorphy.com [PATCH] pidhashing: lower PID_MAX_LIMIT for 32-bit machines /proc/ breaks when PID_MAX_LIMIT is elevated on 32-bit, so this patch lowers it there. Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.192, 2004-10-19 08:10:31-07:00, wli@holomorphy.com [PATCH] pidhashing: retain older vendor copyright I was informed that the vendor component of the copyright can't be clobbered without more care, so this patch retains the older vendor, updating it only to reflect the appropriate time period. Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.191, 2004-10-19 08:10:19-07:00, wli@holomorphy.com [PATCH] pidhashing: rewrite alloc_pidmap() Rewrite alloc_pidmap() to clarify control flow by eliminating all usage of goto, honor pid_max and first available pid after last_pid semantics, make only a single pass over the used portion of the pid bitmap, and update copyrights to reflect ongoing maintenance by Ingo and myself. Signed-off-by: William Irwin <wli@holomorphy.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.190, 2004-10-19 08:10:06-07:00, suresh.b.siddha@intel.com [PATCH] no exec: i386 and x86_64 cleanups Sync x86_64 noexec behaviour with i386. And remove all the confusing noexec related boot parameters. Signed-off-by: Suresh Siddha <suresh.b.siddha@intel.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.189, 2004-10-19 08:09:53-07:00, vandrove@vc.cvut.cz [PATCH] Add VIDIOC_S_CTRL_OLD to matroxfb For several months I'm receiving complaints from matroxfb users that v4lctl suddenly stops working for them on kernel upgrade. Problem is that VIDIOC_S_CTRL was renumbered, but all distros still use old VIDIOC_S_CTRL value (f.e. even xawtv-3.94 in Debian unstable still uses old VIDIOC_S_CTRL definition). So let's add this old VIDIOC_S_CTRL value (now named VIDIOC_S_CTRL_OLD) to matroxfb's v4l handling. Signed-off-by: Petr Vandrovec <vandrove@vc.cvut.cz> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.188, 2004-10-19 08:09:41-07:00, adaplas@hotpop.com [PATCH] fbdev: trivial fb_get_options fix for cyber2000fb and bw2fb Trivial fb_get_options fix for - cyber200fb - bw2fb Signed-off-by: Antonino Daplas <adaplas@pol.net> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.187, 2004-10-19 08:09:29-07:00, geert@linux-m68k.org [PATCH] FrameMaster II build fix fm2fb: Trivial fix for the breakage introduced by the addition of fb_get_options(). Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.186, 2004-10-19 08:09:17-07:00, benh@kernel.crashing.org [PATCH] rework radeonfb blanking This patch cleans up some old cruft in the manipulation of the LVDS interface registers and fixes the blanking code to work with various DVI flat panels. Since this is all very sensitive stuff, I'm posting the patch here for testing before submitting it upstream, though Andrew is welcome to put it in -mm. It also fix some problems with getting the right PLL setup on recent Mac laptops, replacing the old hard coded list of values with cleaner code that "probes" the PLL setup done by the firmware. Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.185, 2004-10-19 08:09:05-07:00, vandrove@vc.cvut.cz [PATCH] Assorted matroxfb fixes This small change does: (1) Properly document 'outputs' option. (2) Properly use accelerated characters drawing. fbcon used depth == 0 for character painting long ago, but it is fixed for several months. (3) Provide correct hints for fbcon about matroxfb/matroxfb_crtc2 hardware capabilities. Signed-off-by: Petr Vandrovec <vandrove@vc.cvut.cz> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.184, 2004-10-19 08:08:53-07:00, vandrove@vc.cvut.cz [PATCH] Remove big-endian mode from matroxfb One of the PowerPC developers, Kostas Georgiou, pointed out to me discussion back from 2001 that they would prefer little endian mode as majority of users runs XF4.x and not Xpmac. And apparently nobody runs Xpmac now, so we can safely remove big-endian mode from matroxfb completely. So let's simplify matroxfb a bit: Accelerator and ILOAD fifo is now always in little endian mode. This is what XFree does. Due to this change all #ifdefs based on endianness was removed from driver - except one which selects framebuffer endinaness (but there is no code in matroxfb which writes to framebuffer directly). It seems that while I was not looking m68k got ioremap, and all architectures now offer ioremap and ioremap_nocache. Let's kill code which mapped ioremap_nocache to ioremap, and ioremap to bus_to_virt for architectures which did not provide them. And this also fixes small typo - M_C2CTL should be 0x3C10 and not 0x3E10. Apparently Matrox notes about need to program this register during initialization are not so important... Signed-off-by: Petr Vandrovec <vandrove@vc.cvut.cz> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.183, 2004-10-19 08:08:40-07:00, adaplas@hotpop.com [PATCH] fbdev: split vesafb option vram into vtotal and vremap From: Gerd Knorr <kraxel@bytesex.org>: "IMHO the the only sane thing is to have two options for total + remapped memory as well. Otherwise we'll end up changing that back and forth like it happened for the size calculation stuff for quite some time ... The patch below does just that and also has the other vmode fix (vmode = yres * linelength /* instead of yres * xres * depth >> 3 */)." Signed-off-by: Antonino Daplas <adaplas@pol.net> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.182, 2004-10-19 08:08:28-07:00, adaplas@hotpop.com [PATCH] fbdev: fix framebuffer memory calculation for vesafb - use vesafb_fix.line_length * vesafb_defined.yres to calculate the minimum memory required for a video mode. From Aurelien Jacobs <aurel@gnuage.org>. - separately calculate the memory required for a video mode, memory to be remapped, and total memory (for MTRR). From Gerd Knorr <kraxel@bytesex.org>. - the 'vram' option is for memory to be remapped, not total memory. Signed-off-by: Antonino Daplas <adaplas@pol.net> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.181, 2004-10-19 08:08:16-07:00, venkatesh.pallipadi@intel.com [PATCH] Fix EDID_INFO in zero-page EDID_INFO is encroaching on the space meant for E820 map in zero-page. This will result in E820 map corruption on any system that has more=20 than 18 E820 entries and CONFIG_VIDEO_SELECT. Not sure how this bug=20 managed to hide for more than a year. Attached patch should fix the bug. Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.180, 2004-10-19 08:08:05-07:00, adaplas@hotpop.com [PATCH] fbcon unimap fix fbcon doesn't set a unimap at boot time, so special characters come out wrongly. This is the code sequence in take_over_console(). newcon->startup() oldcon->deinit() newcon->init() The previous console driver (ie, vgacon), via its deinit method, may release the unimap allocated by fbcon in fbcon_startup. This is the reason why calling con_set_default_unimap() in fbcon_init() works, but not in fbcon_startup(). Check if the default display has an allocated unimap, and if it has none, call con_set_default_unimap(). And if the target display has no allocated unimap, then call con_copy_unimap(), where the source unimap is from the default display. Signed-off-by: Antonino Daplas <adaplas@pol.net> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.179, 2004-10-19 08:07:53-07:00, tiwai@suse.de [PATCH] VGA console font problems on 2.6 kernel From: Egbert Eich <eich@suse.de> I would like to utilize kernel ioctls to save/restore console fonts in VGA text mode when running X. So far the Xserver takes care of this however there more and more problems with this: 1. On some platforms (IA64) we need to POST the BIOS before we even have a chance to access the hardware ourselves. This POSTing will usually undo any changes to the graphics hardware that the kernel may have done. 2. More and more drivers fully rely on BIOS support however the BIOS functions which could be used to save/restore register settings may be broken so the only way of mode save/restore is getting/setting the BIOS mode ID. I've hacked up some code for X however I ran into two problems: 1. con_font_get() in linux/drivers/char/vt.c seems to be broken as the font parameters (height, width, charcount) are never reported back. Therefore this function seems to be pretty useless. The fix is simple (please see below). 2. fb consoles seem to allow to install fonts per vt so that the user can have a different font on every console. The text console driver doesn't support this: the font is downloaded to the video card and will be used for all systems. Still the vga_con driver stores the font parameters per console with the effect that setting a font with different parameters on one console will result in the wron values when this font information is read back from another console. Appearantly this broken feature has been introduced in 2.6 as in the 2.4 kernel the vga_con font information is stored in one single global variable. The IA64 platform at least still heavily relies on the VGA text console. To be able to fix some VT switching issues with X on this platform I need these two issues resolved. Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.178, 2004-10-19 08:07:41-07:00, adaplas@hotpop.com [PATCH] fbdev: Add iomem annotations to vga16fb.c Add iomem annotations to vga16fb.c Signed-off-by: Antonino Daplas <adaplas@pol.net> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.177, 2004-10-19 08:07:29-07:00, adaplas@hotpop.com [PATCH] fbdev: Add iomem annotations to i810fb Add iomem annotations to i810fb. Signed-off-by: Antonino Daplas <adaplas@pol.net> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.176, 2004-10-19 08:07:17-07:00, adaplas@hotpop.com [PATCH] fbdev: Add iomem annotations to fbmem.c Add iomem annotations to fbmem.c Signed-off-by: Antonino Daplas <adaplas@pol.net> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.175, 2004-10-19 08:07:05-07:00, andreas@fjortis.info [PATCH] fbdev: Remove i810fb explicit agp initialization hack. When Antonino A. Daplas posted his "fbdev: Initialize i810fb after agpgart" patch he said that the ugly agp initialization hack for intel agp shouldn't be needed but that he couldn't test it. I have tested the framebuffer updates and additionally removed the initialization hack and it does indeed work. Signed-off-by: Andreas Henriksson <andreas@fjortis.info> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.174, 2004-10-19 08:06:52-07:00, benh@kernel.crashing.org [PATCH] radeonfb: Fix monitor probe logic Fix a small logic error in the monitor probe code when nothing was found. Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.173, 2004-10-19 08:06:40-07:00, adaplas@hotpop.com [PATCH] fbdev: fix scrolling corruption This patches fixes the following: - scrolling corruption if scrolling mode is SCROLL_PAN_MOVE. This bug was introduced by the tile blitting patch. - flashing cursor even when console is blanked Signed-off-by: Antonino Daplas <adaplas@pol.net> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.172, 2004-10-19 08:06:28-07:00, adaplas@hotpop.com [PATCH] fbdev: Add Tile Blitting support Hopefully, this patch fixes one last major regression for one particular driver, namely matroxfb. This drier has 2 versions, one for the kernel and another as a '2.4 backport' patch. This patch adds a tileblitting extension to fbcon. This extension, in summary, is basically a forward-port of the 2.4 fbdev/fbcon framework to 2.6 but without the fbcon dependency. Tile blitting is similar to bitblit, except that the basic unit is a tile (a bitmap of x-by-y dimensions). The display, instead of being described in terms of pixels and scanlines, are described as a region further subdivided into rectangular sections. In fbcon parlance, a tile is a character. Besides a possible fix for matroxfb, tileblitting can be advantageous for hardware that supports some kind of fontcaching mechanism. Also, in the unlikely chance that the console begins supporting multicolored fonts, tileblitting is probably more optimal than bitblitting because bitblitting will need to push more data through the bus. To enable support for this extension, a driver needs to: - enable CONFIG_FB_TILEBLITTING - set FBINFO_MISC_TILEBLITTING in info->flags - set the required function pointers in struct fb_tileops. The required operations are: - void (*fb_settile)(struct fb_info *info, struct fb_tilemap *map); tells driver about the tile characteristics (dimensions, bitdepth) and about the tilemap which is an array of bitmaps: display->fontdata - void (*fb_tilecopy)(struct fb_info *info, struct fb_tilearea *area); move a rectangular section of tiles (bmove) - void (*fb_tilefill)(struct fb_info *info, struct fb_tilerect *rect); fill a rectangular section with a tile (clear) - void (*fb_tileblit)(struct fb_info *info, struct fb_tileblit *blit); copy an array of tiles to a rectangular section (putcs) - void (*fb_tilecursor)(struct fb_info *info, struct fb_tilecursor *cursor); cursor function Changes: Addition of this extension necessitates cleanup of fbcon.c. The basic drawing functions in fbcon are bmove, clear, putcs and cursor (the fbcon_* set). The fbcon_* set are just wrappers to accel_* set. However, usage is not consistent, some functions call the fbcon_* set, others call the accel_* set. With this patch, a new fbcon-specific structure (struct fbcon_ops) is created. Depending on the setting of the hardware, this struct contains pointers to either the tileblitting set or the bitblitting set (formerly the accel_* set). The tileblitting set is new in this patch. The vast majority of functions in fbcon will need to only call the fbcon_* set. In turn, it calls functions in struct fbcon_ops. Knowledge of the blitting type is not required. The accel_* set is renamed to bit_* and is moved into a separate file, bitblit.c. The tile blitting set is in tileblit.c. In my case at least, the cleanup did produce an unexpected but beneficial side effect, a little more speedup. Not much, < 5%. Petr, if you have comments, suggestions, or you think this is a bad idea, let me know. Signed-off-by: Antonino Daplas <adaplas@pol.net> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.171, 2004-10-19 08:06:15-07:00, adaplas@hotpop.com [PATCH] fbdev: Pass struct device to class_simple_device_add Swsusp turns off the display when a power-management-enabled framebuffer driver is used. According to Nigel Cunningham <ncunningham@linuxmail.org>, the fix may involve the following: "...I thought the best approach would be to use device classes to find the struct dev for the frame buffer driver, and then use the same code I use for storage devices to avoid suspending the frame buffer until later..." Changes: - pass info->device to class_simple_device_add() - add struct device *device to struct fb_info - store struct device in framebuffer_alloc() - for drivers not using framebuffer_alloc(), store the struct during initalization - port i810fb and rivafb to use framebuffer_alloc() Signed-off-by: Antonino Daplas <adaplas@pol.net> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.170, 2004-10-19 08:06:02-07:00, adaplas@hotpop.com [PATCH] fbcon: Fix setup boot options of fbcon This patch fixes the 'fbcon=map:<option>" of fbcon. (This option has been present since 2.4, but got broken in 2.6). This particular option tells fbcon what framebuffer device gets mapped to what console. Syntax is: fbcon=map:abcd... where a, b, c, d,... are framebuffer numbers as it would appear in /proc/fb. Given only 2 valid fbdevs, 0 and 1, if fbcon=map:0110, then: tty1 = fb0 tty2 = fb1 tty3 = fb1 tty4 = fb0 (sequence repeats for the rest of the consoles) If an invalid framebuffer is used, then the console will be mapped to the first user-chosen framebuffer. Ie: fbcon=map:102 tty1 = fb1 tty2 = fb0 tty3 = fb1 < ChangeSet@1.1988.68.169, 2004-10-19 08:05:50-07:00, adaplas@hotpop.com [PATCH] fbdev: fix logo drawing failure for vga16fb This fixes the logo failing to draw in vga16fb due to faulty boolean logic. Signed-off-by: Antonino Daplas <adaplas@pol.net> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.168, 2004-10-19 08:05:38-07:00, adaplas@hotpop.com [PATCH] fbdev: remove unnecessary banshee_wait_idle from tdfxfb - This patch removes the unnecessary call to banshee_wait_idle() from tdfxfb_copyarea, imageblit and fillrect. Removal of the sync will garner an additional ~20% in scrolling speed. - Removes "inverse" which generates a compile warning if modular. Signed-off-by: Antonino Daplas <adaplas@pol.net> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.167, 2004-10-19 08:05:25-07:00, marcelo.tosatti@cyclades.com [PATCH] Adjust alignment of pagevec structure We can shrink the pagevec structure to cacheline align it. It is used all over VM reclaiming and mpage pagecache read code. Right now it is 140 bytes on 64-bit and 72 bytes on 32-bit. Thats just a little bit more than a power of 2 (which will cacheline align), so shrink it to be aligned: 64 bytes on 32bit and 124bytes on 64-bit. It now occupies two cachelines most of the time instead of three. I changed nr and cold to "unsigned short" because they'll never reach 2 ^ 16. Did some reaim benchmarking on 4way PIII (32byte cacheline), with 512MB RAM: #### stock 2.6.9-rc1-mm4 #### Peak load Test: Maximum Jobs per Minute 4144.44 (average of 3 runs) Quick Convergence Test: Maximum Jobs per Minute 4007.86 (average of 3 runs) Peak load Test: Maximum Jobs per Minute 4207.48 (average of 3 runs) Quick Convergence Test: Maximum Jobs per Minute 3999.28 (average of 3 runs) #### shrink-pagevec ##### Peak load Test: Maximum Jobs per Minute 4717.88 (average of 3 runs) Quick Convergence Test: Maximum Jobs per Minute 4360.59 (average of 3 runs) Peak load Test: Maximum Jobs per Minute 4493.18 (average of 3 runs) Quick Convergence Test: Maximum Jobs per Minute 4327.77 (average of 3 runs) Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.166, 2004-10-19 08:05:13-07:00, hch@lst.de [PATCH] generic acl support for ->permission Currently we every filesystem with Posix ACLs has it's own reimplemtation of the generic permission checking code with additonal ACL support. This patch - adds an optional callback to vfs_permission that filesystems can use for ACL support (and renames it to generic_permission because the old name was wrong - it wasn't like the other vfs_* functions at all) - uses it in ext2, ext3 and jfs. XFS will follow a little later as it's permission checking is burried under several layers of abstraction. From: Dave Kleikamp <shaggy@austin.ibm.com> jfs doesn't currently set MS_POSIXACL (it doesn't require the acl mount option), so this test would fail here. The patch below will set it. Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.165, 2004-10-19 08:05:00-07:00, hch@lst.de [PATCH] remove set_fs_root/set_fs_pwd Not exactly something we want modules to mess around with. Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.164, 2004-10-19 08:04:48-07:00, hch@lst.de [PATCH] remove wake_up_all_sync no user in sight Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.163, 2004-10-19 08:04:36-07:00, hch@lst.de [PATCH] unexport lookup_create Besides namei.c it's only used in the SN2 hwgraph code which can't be modular (and will be removed soon) Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.162, 2004-10-19 08:04:24-07:00, hch@lst.de [PATCH] unexport f_delown Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.161, 2004-10-19 08:04:12-07:00, hch@lst.de [PATCH] unexport files_lock and put_filp Rather lowlevel functions that modules shouldn't mess with and fortunately currently don't. Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.160, 2004-10-19 08:04:00-07:00, hch@lst.de [PATCH] unexport exit_mm Not exactly a thing we want done from modules, and no module uses it anyway. Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1997, 2004-10-19 08:03:51-07:00, greg@kroah.com merge ChangeSet@1.1988.68.159, 2004-10-19 08:03:48-07:00, hch@lst.de [PATCH] unexport do_execve/do_select These are basically shared code for native/32bit compat code, but as CONFIG_COMPAT is a bool there's no need to export them. Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.158, 2004-10-19 08:03:37-07:00, hch@lst.de [PATCH] unexport devfs_mk_symlink Only legit user is the partitioning code, in addition some uml code is still using despite the uml people beeing told to fix it at least two times. Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.157, 2004-10-19 08:03:25-07:00, hch@lst.de [PATCH] unexport is_subdir and shrink_dcache_anon Two dcache.c functions that shouldn't be used by filesystems directly (probably a leftover of the intermezzo mess). Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.156, 2004-10-19 08:03:14-07:00, hch@lst.de [PATCH] unexport proc_sys_root Only used by kernel/sysctl.c which absolutely can't be modular Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.155, 2004-10-19 08:03:02-07:00, hch@lst.de [PATCH] remove dead code and exports from signal.c Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.154, 2004-10-19 08:02:52-07:00, hch@lst.de [PATCH] remove pm_find, unexport pm_send cutting back some unused legacy PM code Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.153, 2004-10-19 08:02:40-07:00, hch@lst.de [PATCH] don't export shmem_file_setup Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.152, 2004-10-19 08:02:30-07:00, hch@lst.de [PATCH] remove posix_acl_masq_nfs_mode Completely unused but exported function in fs/posix_acl.c Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.151, 2004-10-19 08:02:18-07:00, hch@lst.de [PATCH] remove dead code from fs/mbcache.c mb_cache_entry_takeout and mb_cache_entry_dup are totally unused. Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.97.8, 2004-10-19 16:02:10+01:00, rmk@flint.arm.linux.org.uk [SERIAL] Convert 8250_pci to use new serial8250_register_port() This allows 8250 PCI ports to register with their correct device structures. ChangeSet@1.1988.68.150, 2004-10-19 08:02:05-07:00, hch@lst.de [PATCH] don't export blkdev_open and def_blk_ops Already since 2.4 all block devices use block_device_operations and shouldn't deal with file operations directly. Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.149, 2004-10-19 08:01:53-07:00, axboe@suse.de [PATCH] convert jiffies <-> msecs for io schedulers The various io schedulers don't convert to and from jiffies and ms in their sysfs exported values. This patch adds that. Signed-off-by: Jens Axboe <axboe@suse.de> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.148, 2004-10-19 08:01:41-07:00, axboe@suse.de [PATCH] cfq-v2 I/O scheduler update Here is the next incarnation of the CFQ io scheduler, so far known as CFQ v2 locally. It attempts to address some of the limitations of the original CFQ io scheduler (hence forth known as CFQ v1). Some of the problems with CFQ v1 are: - It does accounting for the lifetime of the cfq_queue, which is setup and torn down for the time when a process has io in flight. For a fork heavy work load (such as a kernel compile, for instance), new processes can effectively starve io of running processes. This is in part due to the fact that CFQ v1 gives preference to a new processes to get better latency numbers. Removing that heuristic is not an option exactly because of that. - It makes no attempts to address inter-cfq_queue fairness. - It makes no attempt to limit upper latency bound of a single request. - It only provides per-tgid grouping. You need to change the source to group on a different criteria. - It uses a mempool for the cfq_queues. Theoretically this could deadlock if io bound processes never exit. - The may_queue() logic can be unfair since it fluctuates quickly, thus leaving processes sleeping while new processes are allowed to allocate a request. CFQ v2 attempts to fix these issues. It uses the process io_context logic to maintain a cfq_queue lifetime of the duration of the process (and its io). This means we can now be a lot more clever in deciding which process is allowed to queue or dispatch io to the device. The cfq_io_context is per-process per-queue, this is an extension to what AS currently does in that we truly do have a unique per-process identifier for io grouping. Busy queues are sorted by service time used, sub sorted by in_flight requests. Queues that have no io in flight are also preferred at dispatch time. Accounting is done on completion time of a request, or with a fixed cost for tagged command queueing. Requests are fifo'ed like with deadline, to make sure that a single request doesn't stay in the io scheduler for ages. Process grouping is selectable at runtime. I provide 4 grouping criterias: process group, thread group id, user id, and group id. As usual, settings are sysfs tweakable in /sys/block/<dev>/queue/iosched axboe@apu:[.]s/block/hda/queue/iosched $ ls back_seek_max fifo_batch_expire find_best_crq queued back_seek_penalty fifo_expire_async key_type show_status clear_elapsed fifo_expire_sync quantum tagged In order, each of these settings control: back_seek_max back_seek_penalty: Useful logic stolen from AS that allow small backwards seeks in the io stream if we deem them useful. CFQ uses a strict ascending elevator otherwise. _max controls the maximum allowed backwards seek, defaulting to 16MiB. _penalty denotes how expensive we account a backwards seek compared to a forward seek. Default is 2, meaning it's twice as expensive. clear_elapsed: Really a debug switch, will go away in the future. It clears the maximum values for completion and dispatch time, shown in show_status. fifo_batch_expire fifo_batch_async fifo_batch_sync: The settings for the expiry fifo. batch_expire is how often we allow the fifo expire to control which request to select. Default is 125ms. _async is the deadline for async requests (typically writes), _sync is the deadline for sync requests (reads and sync writes). Defaults are, respectively, 5 seconds and 0.5 seconds. key_type: The grouping key. Can be set to pgid, tgid, uid, or gid. The current value is shown bracketed: axboe@apu:[.]s/block/hda/queue/iosched $ cat key_type [pgid] tgid uid gid Default is tgid. To set, simply echo any of the 4 words into the file. quantum: The amount of requests we select for dispatch when the driver asks for work to do and the current pending list is empty. Default is 4. queued: The minimum amount of requests a group is allowed to queue. Default is 8. show_status: Debug output showing the current state of the queues. tagged: Set this to 1 if the device is using tagged command queueing. This cannot be reliably detected by CFQ yet, since most drivers don't use the block layer (well it could, by looking at number of requests being between dispatch and completion. but not completely reliably). Default is 0. The patch is a little big, but works reliably here on my laptop. There are a number of other changes and fixes in there (like converting to hlist for hashes). The code is commented a lot better, CFQ v1 has basically no comments (reflecting that it was writting in one go, no touched or tuned much since then). This is of course only done to increase the AAF, akpm acceptance factor. Since I'm on the road, I cannot provide any really good numbers of CFQ v1 compared to v2, maybe someone will help me out there. Signed-off-by: Jens Axboe <axboe@suse.de> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.147, 2004-10-19 08:01:28-07:00, axboe@suse.de [PATCH] switchable and modular io schedulers This patch modularizes the io schedulers completely, allowing them to be modular. Additionally it enables online switching of io schedulers. See also http://lwn.net/Articles/102593/ . There's a scheduler file in the sysfs directory for the block device queue: axboe@router:/sys/block/hda/queue> ls iosched max_sectors_kb read_ahead_kb max_hw_sectors_kb nr_requests scheduler If you list the contents of the file, it will show available schedulers and the active one: axboe@router:/sys/block/hda/queue> cat scheduler [cfq] Lets load a few more. router:/sys/block/hda/queue # modprobe deadline-iosched router:/sys/block/hda/queue # modprobe as-iosched router:/sys/block/hda/queue # cat scheduler [cfq] deadline anticipatory Changing is done with router:/sys/block/hda/queue # echo deadline > scheduler router:/sys/block/hda/queue # cat scheduler cfq [deadline] anticipatory deadline is now the new active io scheduler for hda. Signed-off-by: Jens Axboe <axboe@suse.de> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.146, 2004-10-19 08:01:16-07:00, akpm@osdl.org [PATCH] unreachable code in ext3_direct_IO() davej points out that in this code local variable `ret' is already known to be positive non-zero, so this test is meaningless. Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.145, 2004-10-19 08:01:03-07:00, akpm@osdl.org [PATCH] jbd wakeup fix Processes can sleep in do_get_write_access(), waiting for buffers to be removed from the BJ_Shadow state. We did this by doing a wake_up_buffer() in the commit path and sleeping on the buffer in do_get_write_access(). With the filtered bit-level wakeup code this doesn't work properly any more - the wake_up_buffer() accidentally wakes up tasks which are sleeping in lock_buffer() as well. Those tasks now implicitly assume that the buffer came unlocked. Net effect: Bogus I/O errors when reading journal blocks, because the buffer isn't up to date yet. Hence the recently spate of journal_bmap() failure reports. The patch creates a new jbd-private BH flag purely for this wakeup function. So a wake_up_bit(..., BH_Unshadow) doesn't wake up someone who is waiting for a wake_up_bit(BH_Lock). JBD was the only user of wake_up_buffer(), so remove it altogether. Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.144, 2004-10-19 08:00:51-07:00, wli@holomorphy.com [PATCH] document wake_up_bit()'s requirement for preceding memory barriers Document the requirement to use a memory barrier prior to wake_up_bit(). Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.143, 2004-10-19 08:00:40-07:00, wli@holomorphy.com [PATCH] reduce number of parameters to __wait_on_bit() and __wait_on_bit_lock() Some of the parameters to __wait_on_bit() and __wait_on_bit_lock() are redundant, as the wait_bit_queue parameter holds the flags word and the bit number. This patch updates __wait_on_bit() and __wait_on_bit_lock() to fetch that information from the wait_bit_queue passed to them and so reduce the number of parameters so that -mregparm may be more effective. Incremental atop the complete out-of-lining of the contention cases and the fastcall and wait_on_bit_lock()/test_and_set_bit() fixes. Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.142, 2004-10-19 08:00:29-07:00, wli@holomorphy.com [PATCH] move wait ops' contention case completely out of line Move the slow paths of wait_on_bit() and wait_on_bit_lock() out of line. Also uninline wake_up_bit() to reduce the number of callsites generated, and adjust loop startup in __wait_on_bit_lock() to properly reflect its usage in the contention case. Incremental atop the fastcall and wait_on_bit_lock()/test_and_set_bit() fixes. Successfully tested on x86-64. Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.141, 2004-10-19 08:00:17-07:00, wli@holomorphy.com [PATCH] eliminate inode waitqueue hashtable Eliminate the inode waitqueue hashtable using bit_waitqueue() via wait_on_bit() and wake_up_bit() to locate the waitqueue head associated with a bit. Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.140, 2004-10-19 08:00:05-07:00, wli@holomorphy.com [PATCH] eliminate bh waitqueue hashtable Eliminate the bh waitqueue hashtable using bit_waitqueue() via wait_on_bit() and wake_up_bit() to locate the waitqueue head associated with a bit. Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.139, 2004-10-19 07:59:53-07:00, wli@holomorphy.com [PATCH] consolidate bit waiting code patterns Consolidate bit waiting code patterns for page waitqueues using __wait_on_bit() and __wait_on_bit_lock(). Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.138, 2004-10-19 07:59:41-07:00, wli@holomorphy.com [PATCH] standardize bit waiting data type Eliminate specialized page and bh waitqueue hashing structures in favor of a standardized structure, using wake_up_bit() to wake waiters using the standardized wait_bit_key structure. Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.137, 2004-10-19 07:59:28-07:00, wli@holomorphy.com [PATCH] move waitqueue functions to kernel/wait.c The following patch series consolidates the various instances of waitqueue hashing to use a uniform structure and share the per-zone hashtable among all waitqueue hashers. This is expected to increase the number of hashtable buckets available for waiting on bh's and inodes and eliminate statically allocated kernel data structures for greater node locality and reduced kernel image size. Some attempt was made to look similar to Oleg Nesterov's suggested API in order to provide some kind of credit for independent invention of something very similar (the original versions of these patches predated my public postings on the subject of filtered waitqueues). These patches have the further benefit and intention of enabling aio to use filtered wakeups by standardizing the data structure passed to wake functions so that embedded waitqueue elements in aio structures may be succesfully passed to the filtered wakeup wake functions, though this patch series doesn't implement that particular functionality. Successfully stress-tested on x86-64, and ia64 in recent prior versions. This patch: Move waitqueue -related functions not needing static functions in sched.c to kernel/wait.c Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.136, 2004-10-19 07:59:16-07:00, od@suse.de [PATCH] TIOCCONS security The ioctl TIOCCONS allows any user to redirect console output to another tty. This allows anyone to suppress messages to the console at will. AFAIK nowadays not many programs write to /dev/console, except for start scripts and the kernel (printk() above console log level). Still, I believe that administrators and operators would not like any user to be able to hijack messages that were written to the console. The only user of TIOCCONS that I am aware of is bootlogd/blogd, which runs as root. Please comment if there are other users. Is there any reason why normal users should be able to use TIOCCONS? Otherwise I would suggest to restrict access to root (CAP_SYS_ADMIN), e.g. with this patch. Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.135, 2004-10-19 07:59:03-07:00, pmarques@grupopie.com [PATCH] kallsyms data size reduction / lookup speedup This patch is an improvement over my first kallsyms speedup patch posted about 2 weeks ago. It changes scripts/kallsyms as to produce a different format for kallsyms_names and extra data to speedup lookups. The compression algorithm is quite simple: it uses all the char codes not actually used in symbols to build a lookup table that translates these codes into small strings. For instance, in my test runs the code 0xFE was being translated into "acpi_" giving a 4 byte save on every translation. The advantage of this algorithm is that to translate a symbol we only require information that is stored on that symbol position, and never need to go back on the compressed stream to get information from other symbols. To give an idea about the benefits of this algorithm here are some benchmark results on a P4 2.8GHz with a symbol table with 10000 entries: kallsyms_lookup average time: vanilla 1346.0 us speedup 14.4 us with this patch 0.5 us total data produced by scripts/kallsyms: uncompressed 169 Kb vanilla 134 Kb with this patch 91 Kb (speedup was my latest patch, that only changed the way kallsyms_lookup worked and not the data format) I removed a cond_resched() from the proc/kallsyms handling code path, because using stem compression, if the current position went backwards, the hole stream would be uncompressed up to the current position. It seemed that by removing this loop it would be safe to remove the conditional reschedule altogether. There is just one catch with this patch: the time it takes to compile the kernel goes up just a bit (about 0.8s on a P4 2.8GHz with defconfig). If this delay is not acceptable I can change the compression algorithm so that it can use the previous table (calculating a new table is what consumes most of the time, and not doing the actual compression) and check to see if it obtains a similar compression ratio. If it does, then this is a sign that the symbol patterns haven't changed that much and this table is still good to use. This would not only cut the time down to half on any compilation (because of the 2 pass symbol build method), but in frequent cases where a developer is compiling a single file and linking everything over and over again, the table optimization process would never run. I'm CC'ing Brent Casavant on this email, because last june he sent a patch trying a different approach that used a 32 entry symbol cache, because there was a problem with the time "top" took to read "proc/<pid>/wchan". I was hopping he would be willing to test this patch and comment on the results. Signed-off-by: Paulo Marques <pmarques@grupopie.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.134, 2004-10-19 07:58:51-07:00, dhowells@redhat.com [PATCH] implement in-kernel keys & keyring management The feature set the patch includes: - Key attributes: - Key type - Description (by which a key of a particular type can be selected) - Payload - UID, GID and permissions mask - Expiry time - Keyrings (just a type of key that holds links to other keys) - User-defined keys - Key revokation - Access controls - Per user key-count and key-memory consumption quota - Three std keyrings per task: per-thread, per-process, session - Two std keyrings per user: per-user and default-user-session - prctl() functions for key and keyring creation and management - Kernel interfaces for filesystem, blockdev, net stack access - JIT key creation by usermode helper There are also two utility programs available: (*) http://people.redhat.com/~dhowells/keys/keyctl.c A comprehensive key management tool, permitting all the interfaces available to userspace to be exercised. (*) http://people.redhat.com/~dhowells/keys/request-key An example shell script (to be installed in /sbin) for instantiating a key. Signed-Off-By: David Howells <dhowells@redhat.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.133, 2004-10-19 07:58:38-07:00, dhowells@redhat.com [PATCH] keys: new error codes for Alpha, MIPS, PA-RISC, Sparc & Sparc64 The attached patch adds the new error codes I added for key-related errors to those archs that don't make use of <asm-generic/errno.h>, including Alpha, MIPS, PA-RISC, Sparc and Sparc64. This is required to compile with CONFIG_KEYS on those platforms. Signed-Off-By: David Howells <dhowells@redhat.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.132, 2004-10-19 07:58:25-07:00, dhowells@redhat.com [PATCH] Add some key management specific error codes Here's a patch to add some new error codes specific to key management. Signed-Off-By: David Howells <dhowells@redhat.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.131, 2004-10-19 07:58:13-07:00, akpm@osdl.org [PATCH] reiserfs: rename struct key Rename resierfs's `struct key' to `struct reiserfs_key' to avoid namespace clashes. Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.130, 2004-10-19 07:58:00-07:00, colpatch@us.ibm.com [PATCH] Create nodemask_t The idea behind this patch is to create a nodemask_t as a node analog of cpumask_t. As NUMA machines become more common, the need for a standard, cross-platform bitmap of both online & possible nodes becomes more apparent. We believe we've worked out most of the kinks of the variable length bitmap types with the recent cpumask_t patches. Nodemasks are also currently far less widespread than cpumasks. Further, inclusion at this point in the kernel would mean consistency in node handling between 2.6 and 2.7. Future goals would be to get rid of the 'numnodes' variable used to count the number of online nodes, and replace with node_online_map. This would allow arbitrary node numbering and facilitate node hotplugging. (Nothing actually uses this yet, but several projects need it, and it does model a well-defined physical grouping). Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.129, 2004-10-19 07:57:46-07:00, petero2@telia.com [PATCH] cdrom: buffer sizing fix The problem is that some drives fail the "GET CONFIGURATION" command when asked to only return 8 bytes. This happens for example on my drive, which is identified as: hdc: HL-DT-ST DVD+RW GCA-4040N, ATAPI CD/DVD-ROM drive Since the cdrom_mmc3_profile() function already allocates 32 bytes for the reply buffer, this patch is enough to make the command succeed on my drive. Signed-off-by: Peter Osterlund <petero2@telia.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.128, 2004-10-19 07:57:34-07:00, petero2@telia.com [PATCH] CDRW packet writing support This patch implements CDRW packet writing as a kernel block device. Usage instructions are in the packet-writing.txt file. A hint: If you don't want to wait for a complete disc format, you can format just a part of the disc. For example: cdrwtool -d /dev/hdc -m 10240 This will format 10240 blocks, ie 20MB. Signed-off-by: Peter Osterlund <petero2@telia.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.127, 2004-10-19 07:57:21-07:00, petero2@telia.com [PATCH] packet-writing: add credits Nigel pointed out that the earlier patches contained attributions that are not present in this patch. The 2.4 patch contains: Nov 5 2001, Aug 8 2002. Modified by Andy Polyakov <appro@fy.chalmers.se> to support MMC-3 complaint DVD+RW units. and Nigel changed it to this in his 2.6 patch: Modified by Nigel Kukard <nkukard@lbsd.net> - support DVD+RW 2.4.x patch by Andy Polyakov <appro@fy.chalmers.se> The patch I sent you deleted most of the earlier work and moved the rest to cdrom.c, but the comments were not moved over, since the earlier authors didn't modify cdrom.c. Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.126, 2004-10-19 07:57:09-07:00, petero2@telia.com [PATCH] DVD+RW support This patch adds support for using DVD+RW drives as writable block devices. The patch is based on work from: Andy Polyakov <appro@fy.chalmers.se> - Wrote the 2.4 patch Nigel Kukard <nkukard@lbsd.net> - Initial porting to 2.6.x It works for me using an Iomega Super DVD 8x USB drive. Nov 5 2001, Aug 8 2002. Modified by Andy Polyakov <appro@fy.chalmers.se> to support MMC-3 complaint DVD+RW units. Modified by Nigel Kukard <nkukard@lbsd.net> - support DVD+RW 2.4.x patch by Andy Polyakov <appro@fy.chalmers.se> This patch implements CDRW packet writing as a kernel block device. Usage instructions are in the packet-writing.txt file. A hint: If you don't want to wait for a complete disc format, you can format just a part of the disc. For example: cdrwtool -d /dev/hdc -m 10240 This will format 10240 blocks, ie 20MB. Signed-off-by: Peter Osterlund <petero2@telia.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.97.7, 2004-10-19 15:50:24+01:00, rmk@flint.arm.linux.org.uk [SERIAL] Add new port registration/unregistration functions. serial8250_register_port()/serial8250_unregister_port() has the capability of registering ports with their struct device nodes, which allows sysfs to indicate which tty devices belong to which hardware devices. We also add a serial8250 platform device driver in an initial attempt at PM for ISA ports. However, I'm leaving out the platform device for the time being since adding that would cause potential oops issues. ChangeSet@1.1988.66.25, 2004-10-19 07:31:35-07:00, greg@kroah.com Merge kroah.com:/home/greg/linux/BK/bleed-2.6 into kroah.com:/home/greg/linux/BK/usb-2.6 ChangeSet@1.1988.97.6, 2004-10-19 15:22:21+01:00, rmk@flint.arm.linux.org.uk [SERIAL] Make port autoprobing set up->capabilities. Convert port autoprobing to set up->capabilities as it discovers various capabilities of the port. Warn when the detected capabilities do not match those in the uart_config table. ChangeSet@1.1988.66.24, 2004-10-19 07:14:46-07:00, greg@kroah.com USB: add serial ipw driver Based on a 2.4 tty usb driver from Roelf Diedericks <roelfd@inet.co.za> Cleaned up and ported to 2.6 and the usb-serial layer by me. Signed-off-by: Greg Kroah-Hartman <greg@kroah.com> ChangeSet@1.1988.97.5, 2004-10-19 15:10:06+01:00, rmk@flint.arm.linux.org.uk [SERIAL] Add explaination why we don't use RTS flow control. ChangeSet@1.1988.97.4, 2004-10-19 15:00:01+01:00, rmk@flint.arm.linux.org.uk [SERIAL] Clean up handling of LSR in receive function. It's pointless accessing the LSR value via a pointer all the time - it prevents the compiler optimising it. Also, ensure that we recognise a break sent during a kernel printk correctly. ChangeSet@1.1988.97.3, 2004-10-19 14:47:01+01:00, rmk@flint.arm.linux.org.uk [SERIAL] Add comment about frobbing the 950's ACR on TX disable. Add a bit of explaination why we only turn off the transmitter if we are called from uart_stop(). ChangeSet@1.1988.97.2, 2004-10-19 14:37:05+01:00, rmk@flint.arm.linux.org.uk [SERIAL] Convert TI16C750 flow control into a port capability. Add UART_CAP_AFE, and use this to enable TI16C750 flow control, but only if we have 32 bytes or more of FIFO. ChangeSet@1.1988.97.1, 2004-10-19 14:28:29+01:00, rmk@flint.arm.linux.org.uk [SERIAL] Add FCR setting to serial8250_config structure. This allows us to adapt the FCR for each port type in a much more flexible way, and allows us to set the transmit trigger levels. ChangeSet@1.1988.68.125, 2004-10-19 00:16:19-07:00, torvalds@ppc970.osdl.org Fix pci config syscall definitions. Including the proper header file showed that they didn't match the declared prototypes. ChangeSet@1.1988.68.124, 2004-10-18 23:58:48-07:00, torvalds@ppc970.osdl.org Don't use obsolete gcc named initializer syntax. The proper C99 syntax is much preferred. ChangeSet@1.1988.68.123, 2004-10-18 23:57:41-07:00, torvalds@ppc970.osdl.org Fix old-style fn declaration. ChangeSet@1.1988.68.122, 2004-10-18 23:37:38-07:00, axboe@suse.de [PATCH] return full SCSI status byte in SG_IO This has been around for a while. Return the full scsi result byte in rq->errors for SG_IO generated requests. Signed-off-by: Jens Axboe <axboe@suse.de> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.121, 2004-10-18 23:12:06-07:00, mingo@elte.hu [PATCH] fix & clean up zombie/dead task handling & preemption This patch fixes all the preempt-after-task->state-is-TASK_DEAD problems we had. Right now, the moment procfs does a down() that sleeps in proc_pid_flush() [it could] our TASK_DEAD state is zapped and we might be back to TASK_RUNNING to and we trigger this assert: schedule(); BUG(); /* Avoid "noreturn function does return". */ for (;;) ; I have split out TASK_ZOMBIE and TASK_DEAD into a separate p->exit_state field, to allow the detaching of exit-signal/parent/wait-handling from descheduling a dead task. Dead-task freeing is done via PF_DEAD. Tested the patch on x86 SMP and UP, but all architectures should work fine. Signed-off-by: Ingo Molnar <mingo@elte.hu> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.120, 2004-10-18 23:11:52-07:00, mingo@elte.hu [PATCH] sched: fix SCHED_SMT & numa=fake=2 lockup This patch fixes an interaction between the numa=fake=<domains> feature, the domain setup code and cpu_siblings_map[]. The bug leads to a bootup crash when using numa=fake=2 on a 2-way/4-way SMP+HT box. When SCHED_SMT is turned on the domains-setup code relies on siblings not spanning multiple domains (which makes perfect sense). But numa=fake=2 creates an assymetric 1101/0010 splitup between CPUs, which results in two siblings being on different nodes. The patch adds a check_siblings_map() function that checks the sibling maps and fixes them up if they violate this rule. (it also prints a warning in that case.) The patch also turns SCHED_DOMAIN_DEBUG back on - had this been enabled we'd have noticed this bug much earlier. From: Badari Pulavarty <pbadari@us.ibm.com> arch/x86_64/mm/numa.c: In function `numa_setup': arch/x86_64/mm/numa.c:332: error: `numa_fake' undeclared (first use in this function) arch/x86_64/mm/numa.c:332: error: (Each undeclared identifier is reported only once arch/x86_64/mm/numa.c:332: error: for each function it appears in.) Signed-off-by: Ingo Molnar <mingo@elte.hu> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.119, 2004-10-18 23:11:39-07:00, colpatch@us.ibm.com [PATCH] sched: remove NODE_BALANCE_RATE definitions NODE_BALANCE_RATE is defined all over the place, but used nowhere. Let's remove it. Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.118, 2004-10-18 23:11:27-07:00, colpatch@us.ibm.com [PATCH] sched_domains: Make SD_NODE_INIT per-arch #2 Here's yet another version of a patch to implement per-arch SD_*_INITs. This follows the same basic idea of my last patch, but 1) defines an arch-specific SD_NODE_INIT for the 4 NUMA arches (i386, x86_64, IA64 & PPC64), 2) defines *default* SD_CPU_INIT & SD_SIBLING_INIT for *all* arches, with the possibility of them being overridden by simply defining an arch-specific version in include/asm/topology.h. The motivation behind the third version of this patch is that Martin feels that there should be no "default" NUMA initializer because NUMA characteristics are *very* arch/platform specific, and hence a "default" NUMA initializer can only lead to confusion. I agree with most of that, but don't quite see as much harm in having a default as he does. Nevertheless, to keep him quiet, I've run up this version of the patch. Martin, please run this through your magic test suite and make sure I didn't break anything trivial. Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.117, 2004-10-18 23:11:14-07:00, pwil3058@bigpond.net.au [PATCH] CPU Scheduler: fix potential error in runqueue nr_uninterruptible count Problem: In the function try_to_wake_up(), when the runqueue's nr_uninterruptible field is decremented it's possible (on SMP systems) that the pointer no longer points to the runqueue that the task being woken was on when it went to sleep. This would cause the wrong runqueue's field to be decremented and the correct one tp remain unchanged. Fix: Save a pointer to the old runqueue at the beginning of the function and use it when decrementing nr_uninterruptible. Signed-off-by: Peter Williams <pwil3058@bigpond.net.au> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.116, 2004-10-18 23:11:02-07:00, akpm@osdl.org [PATCH] sched: print preempt count Better debugging output when the CPU scheduler detects atomicity errors. Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.115, 2004-10-18 23:10:50-07:00, nickpiggin@yahoo.com.au [PATCH] sched: fixes for ia64 domain setup Still having some trouble with ia64 domain setup on the Altixes. Jesse hasn't had much time to look into it, and I'm lacking an Altix, so I'm not sure if this is right or not... Anyway, it again does the right thing on the NUMAQ, and fixes some real bugs, so can you include it please? * Increase SD_NODES_PER_DOMAIN to 6 from 4 to better match Altix's topology. A setting of 4 will include this node, the other one in the brick, and the 2 nodes in the next closest brick, while 6 will catch 2 other bricks. Probably it could be increased even more. * Work correctly with sparse and not completely full node maps. * Nasty typo fixed in find_next_best_node: - val = node_distance(node, i); + val = node_distance(node, n); * Ensure all nodes are themselves a member of their numa balancing domain. This is more a precaution against creative implementations of node_distance.. but it makes the setup easier to verify without having to look at a table of node_distance's, which is possibly generated at runtime. So again, I'm not too sure if this will fix the Altix setup or not. But if you do a release, it will surely be less broken than it was before. Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.114, 2004-10-18 23:10:37-07:00, nickpiggin@yahoo.com.au [PATCH] sched: use CPU_DOWN_FAILED notifier Use CPU_DOWN_FAILED notifier in the sched-domains hotplug code. This goes with 4/8 "integrate cpu hotplug and sched domains" Signed-off-by: Nick Piggin <nickpiggin@yahoo.com.au> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.113, 2004-10-18 23:10:25-07:00, nickpiggin@yahoo.com.au [PATCH] sched: hotplug add a CPU_DOWN_FAILED notifier Introduce CPU_DOWN_FAILED notifier, so we can cope with a failure after a CPU_DOWN_PREPARE notice. This fixes 3/8 "add CPU_DOWN_PREPARE notifier" to be useful Signed-off-by: Nick Piggin <nickpiggin@yahoo.com.au> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.112, 2004-10-18 23:10:13-07:00, nickpiggin@yahoo.com.au [PATCH] sched: enable SD_LOAD_BALANCE Actually turn on SD_LOAD_BALANCE for the regular domains. Introduced by 5/8 "sched add load balance flag". Signed-off-by: Nick Piggin <nickpiggin@yahoo.com.au> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.111, 2004-10-18 23:10:00-07:00, nickpiggin@yahoo.com.au [PATCH] sched: fix domain debug for isolcpus Fix an oops in the domain debug code when isolated CPUs are specified. Introduced by 5/8 "sched add load balance flag" Signed-off-by: Nick Piggin <nickpiggin@yahoo.com.au> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.110, 2004-10-18 23:09:48-07:00, nickpiggin@yahoo.com.au [PATCH] sched: IA64 add disjoint NUMA domain support Implement disjoint NUMA domain setup for IA64 architecture. Most of the code was what was ripped out of kernel/sched.c, which was written by Jesse Barnes <jbarnes@sgi.com>. I fixed up the tricky NUMA groups initialistion. Signed-off-by: Nick Piggin <nickpiggin@yahoo.com.au> Signed-off-by: Ingo Molnar <mingo@elte.hu> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.109, 2004-10-18 23:09:35-07:00, nickpiggin@yahoo.com.au [PATCH] sched: make domain setup overridable Allow sched domain setup to be overridden by arch code. This functionality is needed again. From: Paul Jackson <pj@sgi.com> Builds of 2.6.9-rc1-mm5 ia64 NUMA configs fail, with many complaints that SD_NODE_INIT is defined twice, in asm/processor.h and linux/sched.h. I guess that the preprocessor conditionals were wrong when Nick added the per-arch override ability again of SD_NODE_INIT were wrong. At least this change lets me rebuild ia64 again. Signed-off-by: Nick Piggin <nickpiggin@yahoo.com.au> Signed-off-by: Ingo Molnar <mingo@elte.hu> Signed-off-by: Paul Jackson <pj@sgi.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.108, 2004-10-18 23:09:23-07:00, nickpiggin@yahoo.com.au [PATCH] sched: remove disjoint NUMA domains setup Remove the disjoint NUMA domains setup code. It was broken. Signed-off-by: Nick Piggin <nickpiggin@yahoo.com.au> Signed-off-by: Ingo Molnar <mingo@elte.hu> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.107, 2004-10-18 23:09:10-07:00, nickpiggin@yahoo.com.au [PATCH] sched: sched add load balance flag Introduce SD_LOAD_BALANCE flag for domains where we don't want to do load balancing (so we don't have to set up meaningless spans and groups). Use this for the initial dummy domain, and just leave isolated CPUs on the dummy domain. Signed-off-by: Nick Piggin <nickpiggin@yahoo.com.au> Signed-off-by: Ingo Molnar <mingo@elte.hu> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.106, 2004-10-18 23:08:58-07:00, akpm@osdl.org [PATCH] sched: arch_destroy_sched_domains warning fix kernel/sched.c:4114: warning: `arch_destroy_sched_domains' defined but not used Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.105, 2004-10-18 23:08:46-07:00, nickpiggin@yahoo.com.au [PATCH] sched: integrate cpu hotplug and sched domains Register a cpu hotplug notifier which reinitializes the scheduler domains hierarchy. The notifier temporarily attaches all running cpus to a "dummy" domain (like we currently do during boot) to avoid balancing. It then calls arch_init_sched_domains which rebuilds the "real" domains and reattaches the cpus to them. Also change __init attributes to __devinit where necessary. Signed-off-by: Nathan Lynch <nathanl@austin.ibm.com> Alterations from Nick Piggin: * Detach all domains in CPU_UP|DOWN_PREPARE notifiers. Reinitialise and reattach in CPU_ONLINE|DEAD|UP_CANCELED. This ensures the domains as seen from the scheduler won't become out of synch with the cpu_online_map. * This allows us to remove runtime cpu_online verifications. Do that. * Dummy domains are __devinitdata. * Remove the hackery in arch_init_sched_domains to work around the fact that the domains used to work with cpu_possible maps, but node_to_cpumask returned a cpu_online map. Signed-off-by: Nick Piggin <nickpiggin@yahoo.com.au> Signed-off-by: Ingo Molnar <mingo@elte.hu> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.104, 2004-10-18 23:08:34-07:00, nickpiggin@yahoo.com.au [PATCH] sched: add CPU_DOWN_PREPARE notifier Add a CPU_DOWN_PREPARE hotplug CPU notifier. This is needed so we can dettach all sched-domains before a CPU goes down, thus we can build domains from online cpumasks, and not have to check for the possibility of a CPU coming up or going down. Signed-off-by: Nick Piggin <nickpiggin@yahoo.com.au> Signed-off-by: Ingo Molnar <mingo@elte.hu> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.103, 2004-10-18 23:08:22-07:00, nickpiggin@yahoo.com.au [PATCH] sched: trivial sched changes The following patches properly intergrate sched domains and cpu hotplug (using Nathan's code), by having sched-domains *always* only represent online CPUs, and having hotplug notifier to keep them up to date. Then tackle Jesse's domain setup problem: the disjoint top-level domains were completely broken. The group-list builder thingy simply can't handle distinct sets of groups containing the same CPUs. The code is ugly and specific enough that I'm re-introducing the arch overridable domains. I doubt we'll get a proliferation of implementations, because the current generic code can do the job for everyone but SGI. I'd rather take a look at it again down the track if we need to rather than try to shoehorn this into the generic code. Nathan and I have tested the hotplug work. He's happy with it. I've tested the disjoint domain stuff (copied it to i386 for the test), and it does the right thing on the NUMAQ. I've asked Jesse to test it as well, but it should be fine - maybe just help me out and run a test compile on ia64 ;) This really gets sched domains into much better shape. Without further ado, the patches. This patch: Make a definition static and slightly sanitize ifdefs. Signed-off-by: Nick Piggin <nickpiggin@yahoo.com.au> Signed-off-by: Ingo Molnar <mingo@elte.hu> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.102, 2004-10-18 23:08:10-07:00, vladimir.grouzdev@Jaluna.COM [PATCH] xtime value may become incorrect The xtime value may become incorrect when the update_wall_time(ticks) function is called with "ticks" > 1. In such a case, the xtime variable is updated multiple times inside the loop but it is normalized only once outside of the loop. This bug was reported at: http://bugme.osdl.org/show_bug.cgi?id=3403 Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.101, 2004-10-18 23:07:58-07:00, jeffm@novell.com [PATCH] ReiserFS: Fix several missing reiserfs_write_unlock calls This patch fixes several missing reiserfs_write_unlock() calls on error paths not introduced by reiserfs-io-error-handling.diff Signed-off-by: Jeff Mahoney <jeffm@novell.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.100, 2004-10-18 23:07:45-07:00, jeffm@novell.com [PATCH] ReiserFS: Add I/O error handling to journal operations This patch allows ReiserFS to handle I/O errors in the journal (or journal flush) where it would have previously panicked. The new behavior is to mark the filesystem read-only, disallow new transactions to be started, and to allow existing transactions to complete (though not to commit). The resultant filesystem can be safely umounted, and checked via normal mechanisms. As it is a journaling filesystem, the filesystem itself will be in a similar state to the power being cut to the machine, once umounted. Signed-off-by: Jeff Mahoney <jeffm@novell.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.99, 2004-10-18 23:07:32-07:00, jeffm@novell.com [PATCH] ReiserFS: Cleanup access of journal (cosmetic) This patch cleans up fs/reiserfs/journal.c such that repeated uses of SB_JOURNAL(p_s_sb) are removed in favor of a local journal variable. The compiler won't care, and it makes the code much easier to read. Signed-off-by: Jeff Mahoney <jeffm@novell.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.98, 2004-10-18 23:07:20-07:00, jeffm@novell.com [PATCH] ReiserFS: Cleanup internal use of bh macros This patch cleans up ReiserFS's use of buffer head flags. All direct access of BH_* are made into macro calls, and all reiserfs-specific BH_* macro implementations have been removed and replaced with the BUFFER_FNS implementations found in linux/buffer_head.h Signed-off-by: Jeff Mahoney <jeffm@novell.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.97, 2004-10-18 23:07:08-07:00, geraldsc@de.ibm.com [PATCH] s390: add support to read z/VM monitor records Add support to read z/VM monitor records. Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.96, 2004-10-18 23:06:56-07:00, edrossma@us.ibm.com [PATCH] s390: crypto device driver crypto driver changes: - Add support for zero-pad and crypto express II (CEX2C). Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.95, 2004-10-18 23:06:44-07:00, wein@de.ibm.com [PATCH] s390: z/VM log reader Add an interface to read from the z/VM recording system services. Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.94, 2004-10-18 23:06:31-07:00, arndb@de.ibm.com [PATCH] s390: z/VM watchdog timer Add support for z/VM watchdog timer. Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.93, 2004-10-18 23:06:18-07:00, schwidefsky@de.ibm.com [PATCH] s390: qeth layer 2 support From: Frank Pavlic <pavlic@de.ibm.com> From: Thomas Spatzier <tspat@de.ibm.com> qeth network driver changes: - Add Layer 2 support for OSA-Express. Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.92, 2004-10-18 23:06:06-07:00, aherrman@de.ibm.com [PATCH] s390: zfcp host adapter zfcp host adapter change: - Return -EIO if wait_event_interruptible_timeout was interrupted. - Reduce stack uage of zfcp_cfdc_dev_ioctl. - Make zfcp_sg_list_[alloc,free] more consistent. - Store driver version to zfcp_data structure. - Add missing FSF states and make corresponding log messages consistent. - Always wait for completion in zfcp_scsi_command_sync. - Add Andreas to authors list. - Add timeout for cfdc upload/download. - Add support for temporary units (units not registered to the scsi stack). - Allow sending of ELS commands to ports by their d_id. - Increase port refcount while link test is running. Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.91, 2004-10-18 23:05:54-07:00, blaisorblade_spam@yahoo.it [PATCH] uml: readd linux Makefile target Since people are used to doing "make linux ARCH=um" and to use "linux" as the kernel image, make it be an hard link to vmlinux. This should hurt the less possible the users (actually nothing) while not slowing down the build. Acked-by: Jeff Dike <jdike@addtoit.com> Signed-off-by: Paolo 'Blaisorblade' Giarrusso <blaisorblade_spam@yahoo.it> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.90, 2004-10-18 23:05:42-07:00, takata@linux-m32r.org [PATCH] m32r: fix a compile error of M32R SIO driver Here is a patch to fix a compile error of m32r-sio.c. * include/asm-m32r/termbits.h: - Add CTVB definition. This modification is derived from new-serial-flow-control.patch; "[Patch] new serial flow control" (Oct. 4, 2004) http://www.uwsg.iu.edu/hypermail/linux/kernel/0410.0/0853.html Signed-off-by: Hirokazu Takata <takata@linux-m32r.org> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.89, 2004-10-18 23:05:30-07:00, takata@linux-m32r.org [PATCH] m32r: update arch/m32r/mm/fault.c to fix a compile error Here is a patch to update arch/m32r/mm/fault.c in order to fix a compile error of -mm kernel for m32r. * arch/m32r/mm/fault.c: - Add the third parameter of expand_stack(). This modification is derived from enforce-a-gap-between-heap-and-stack.patch; "heap-stack-gap for 2.6" (Sep. 25, 2004) http://www.uwsg.iu.edu/hypermail/linux/kernel/0409.3/0435.html Signed-off-by: Hirokazu Takata <takata@linux-m32r.org> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.88, 2004-10-18 23:05:18-07:00, takata@linux-m32r.org [PATCH] m32r: fix sys_tas system call for m32r This patch fixes a sys_tas system call for m32r. - This patch fixes an Oops at sys_tas() in case CONFIG_SMP && CONFIG_PREEMPT. > Unable to handle kernel paging request at virtual address XXXXXXXX It is because a page fault happens at the spin_locked region in sys_tas() and in_atomic() checks preempt_count, but spin_lock() already counts up the preemt_count. arch/m32r/kernel/sys_m32r.c: 32 /* 33 * sys_tas() - test-and-set 34 * linuxthreads testing version 35 */ 36 #ifndef CONFIG_SMP 37 asmlinkage int sys_tas(int *addr) 38 { 39 int oldval; 40 unsigned long flags; 41 42 if (!access_ok(VERIFY_WRITE, addr, sizeof (int))) 43 return -EFAULT; 44 local_irq_save(flags); 45 oldval = *addr; 46 *addr = 1; 47 local_irq_restore(flags); 48 return oldval; 49 } 50 #else /* CONFIG_SMP */ 51 #include <linux/spinlock.h> 52 53 static spinlock_t tas_lock = SPIN_LOCK_UNLOCKED; 54 55 asmlinkage int sys_tas(int *addr) 56 { 57 int oldval; 58 59 if (!access_ok(VERIFY_WRITE, addr, sizeof (int))) 60 return -EFAULT; 61 62 spin_lock(&tas_lock); 63 oldval = *addr; /* <<< ATTENTION >>> * A page fault may happen here, because "addr" points an * user-space area. */ 64 *addr = 1; 65 spin_unlock(&tas_lock); 66 67 return oldval; 68 } 69 #endif /* CONFIG_SMP */ arch/mm/fault.c: 137 /* 138 * If we're in an interrupt or have no user context or are runni ng in an 139 * atomic region then we must not take the fault.. 140 */ 141 if (in_atomic() || !mm) 142 goto bad_area_nosemaphore; - sys_tas() is used for user-level mutual exclusion for the m32r, which is prepared to implement a linuxthreads library. The above problem may be happened in a program, which uses pthread_mutex_lock(), calls sys_tas(). The current m32r instruction set has no user-level locking functions for mutual exclusion. # I hope it will be fixed in the future... - This patch fixes the problem by using _raw_spin_lock() instead of spin_lock(). spin_lock() increments up preemt_count, on the contrary, _raw_sping_lock() does not. # I think this fix is just a temporary work around, and # it is preferable to be rewrite to make it simpler by using # asm() function or something... * arch/m32r/kernel/sys_m32r.c: - Fix sys_tas() for CONFIG_SMP && CONFIG_PREEMPT. Signed-off-by: Hayato Fujiwara <fujiwara@linux-m32r.org> Signed-off-by: Hirokazu Takata <takata@linux-m32r.org> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.87, 2004-10-18 23:05:06-07:00, takata@linux-m32r.org [PATCH] m32r: SIO driver Here is a patch to support the M32R SIO (serial IO) driver. This driver supports the M32R serial ports. - Supports two types M32R serial interfaces; M32R_SIO and M32R_PLDSIO. - With SMP safeness. Currently the M32R_PLDSIO serial interface, which is implemented on a PLD on the M3T-M32700UT evaluation board, has slightly different specification from the integrated peripheral SIO (M32R_SIO). Now we can select them by CONFIG_ option. It is a serial-core based driver, based on drivers/serial/8250.c. Any comments or suggestions will be appreciated. Signed-off-by: Hirokazu Takata <takata@linux-m32r.org> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.86, 2004-10-18 23:04:53-07:00, takata@linux-m32r.org [PATCH] m32r: AR camera driver Here is a patch for the Renesas AR camera driver for m32r. - AR (artificial retina) camera is newly supported. AR camera module: Renesas M64278E-800, VGA(640x480 pixcels) http://www.renesas.com/avs/resource/japan/jpn/pdf/assp/rjj01f0005_psmobile.pdf Signed-off-by: Hayato Fujiwara <fujiwara@linux-m32r.org> Signed-off-by: Hirokazu Takata <takata@linux-m32r.org> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.85, 2004-10-18 23:04:40-07:00, takata@linux-m32r.org [PATCH] m32r: update include/asm-m32r/m32102.h Here is a patch to update include/asm-m32r/m32102.h. * include/asm-m32r/m32102.h: - Add macro definitions for DMA controller. - Cosmetics; rearrange indentations. Signed-off-by: Hirokazu Takata <takata@linux-m32r.org> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.84, 2004-10-18 23:04:28-07:00, takata@linux-m32r.org [PATCH] m32r: new CF/PCMCIA driver for m32r This patch is for the new M32R CF/PCMCIA drivers. It is moved from arch/m32r/drivers/ and some part are updated for 2.6 kernel. Signed-off-by: Hayato Fujiwara <fujiwara@linux-m32r.org> Signed-off-by: Hirokazu Takata <takata@linux-m32r.org> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.83, 2004-10-18 23:04:16-07:00, takata@linux-m32r.org [PATCH] m32r: ds1302 driver This is a DS1302 real-time clock driver. It is moved from arch/m32r/drivers/, has been originally taken from arch/cris/arch-v10/drivers/ds1302.c. Currently, this driver supports only m32r target boards. Maybe some work will be required to support other target. Signed-off-by: Hayato Fujiwara <fujiwara@linux-m32r.org> Signed-off-by: Hirokazu Takata <takata@linux-m32r.org> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.82, 2004-10-18 23:04:03-07:00, agx@sigxcpu.org [PATCH] Mac swsusp driver fixes Allow swsusp work with macintosh's own thermal sensor drivers enabled. Contributions from Nathan Hand <nathanh@manu.com.au> Signed-Of-By: Guido Guenther <agx@sigcpu.org> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.81, 2004-10-18 23:03:51-07:00, venkatesh.pallipadi@intel.com [PATCH] S3 suspend/resume with noexec v2 This patch is required for S3 suspend-resume on noexec capable systems. On these systems, we need to save and restore MSR_EFER during S3 suspend-resume. Signed-off-by: "Venkatesh Pallipadi" <venkatesh.pallipadi@intel.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.80, 2004-10-18 23:03:39-07:00, oliver@neukum.org [PATCH] additional documentation for power management This is additional documentation for power management. Pavel Machek has given his acknowledgement. Signed-Off-By: Oliver Neukum <oliver@neukum.name> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.79, 2004-10-18 23:03:26-07:00, pavel@ucw.cz [PATCH] swsusp: Documentation update Documentation update. Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.78, 2004-10-18 23:03:14-07:00, pavel@ucw.cz [PATCH] swsusp: add comments at critical places apm.c needs save_processor_state and friends. Add a comment to keep people from removing it. Describe a way to make swsusp work on non-PSE machines. Document purpose of acpi_restore_state. Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.77, 2004-10-18 23:03:02-07:00, pavel@ucw.cz [PATCH] swsusp: fix process start times after resume Currently, process start times change after swsusp (because they are derived from jiffies and current time, oops). This should fix it. Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.76, 2004-10-18 23:02:50-07:00, rddunlap@osdl.org [PATCH] i386/io_apic init section fixups Code section errors in i386/io_apic.c found by scripts/reference_init.pl. Looks like they could cause problems for a few drivers or in a real hotplug environment. Error: ./arch/i386/kernel/io_apic.o .text refers to 000018ff R_386_PC32 .init.text call chain: snd_mpu401_acpi_resource acpi_register_gsi mp_register_gsi io_apic_set_pci_routing {A} ioapic_register_intr IO_APIC_irq_trigger find_irq_entry Error: ./arch/i386/kernel/io_apic.o .text refers to 00001967 R_386_PC32 .init.text (as above thru {A}, then:) IO_APIC_irq_trigger irq_trigger MPBIOS_trigger >> removing __init from this led to needing to remove __init from EISA_ELCR also. Signed-off-by: Randy Dunlap <rddunlap@osdl.org> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.75, 2004-10-18 23:02:38-07:00, mingo@elte.hu [PATCH] fix nosmp & pcibios_fixup_irqs() interaction Fix interaction between nosmp and pcibios_fixup_irqs(). When we boot with nosmp we dont have all the mptable info, so IO_APIC_get_PCI_irq_vector() doesnt work and devices just end up getting a wrong interrupt. From: Oleg Nesterov <oleg@tv-sign.ru> Acked-by: Ingo Molnar <mingo@elte.hu> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.74, 2004-10-18 23:02:26-07:00, suresh.b.siddha@intel.com [PATCH] Disable SW irqbalance/irqaffinity for E7520/E7320/E7525 v2 As part of the workaround for the "Interrupt message re-ordering across hub interface" errata (page #16 in http://developer.intel.com/design/chipsets/specupdt/30288402.pdf), BIOS may enable hardware IRQ balancing for E7520/E7320/E7525(revision ID 0x9 and below) based platforms. Add pci quirks to disable SW irqbalance/affinity on those platforms. Move balanced_irq_init() to late_initcall so that kirqd will be started after pci quirks. Signed-off-by: Suresh Siddha <suresh.b.siddha@intel.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.73, 2004-10-18 23:02:14-07:00, oleg@tv-sign.ru [PATCH] Fix show_trace() in irq context with CONFIG_4KSTACKS - valid_stack_ptr() erroneously assumes that stack always lives in task_struct->thread_info. - the main loop in show_trace() does not recalc ebp after stack switching. With CONFIG_FRAME_POINTER every call to print_context_stack() will produce the same output. With this patch, show_trace() does not use task argument in the main loop. Instead, it converts stack to thread_info* context, and passes it to print_context_stack() and (implicitly) to valid_stack_ptr(). valid_stack_ptr() now does bounds checking against proper context. Signed-off-by: Oleg Nesterov <oleg@tv-sign.ru> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.72, 2004-10-18 23:02:02-07:00, suresh.b.siddha@intel.com [PATCH] share i386/x86_64 intel cache descriptors table Some cache descriptors are missing from x86_64 table. So instead of copying from i386 code, here is a patch to share the table between i386 and x86_64. Signed-off-by: Suresh Siddha <suresh.b.siddha@intel.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.71, 2004-10-18 23:01:49-07:00, trini@kernel.crashing.org [PATCH] sh: fix EMBEDDED_RAMDISK with O= The following fixes EMBEDDED_RAMDISK to work with O=. The problem was that we couldn't find the linker script, since we needed to specify the patch to the source tree for it. I've tested this with the ramdisk set to both 'ramdisk.gz' and '../ramdisk.gz'. Signed-off-by: Tom Rini <trini@kernel.crashing.org> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.70, 2004-10-18 23:01:37-07:00, paul.mundt@nokia.com [PATCH] sh: ST40 updates This includes some ST40 updates from the ST tree. The most notable change is the ST40GX1 fixes for INTC2-based interrupts. Signed-off-by: Alex Bennee <kernel-hacker@bennee.com> Signed-off-by: Paul Mundt <paul.mundt@nokia.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.69, 2004-10-18 23:01:25-07:00, paul.mundt@nokia.com [PATCH] sh: sh-sci updates sh-sci updates all around the board. Support for the newly added subtypes, some compilation cleanups, etc. Signed-off-by: Paul Mundt <paul.mundt@nokia.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.68, 2004-10-18 23:01:13-07:00, paul.mundt@nokia.com [PATCH] sh: CTP/PCI-SH03 board support This adds support for the CTP/PCI-SH03 board from Interface. Signed-off-by: Saito.K <ksaito@interface.co.jp> Signed-off-by: Paul Mundt <paul.mundt@nokia.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.67, 2004-10-18 23:01:00-07:00, paul.mundt@nokia.com [PATCH] sh: SE73180 board support This adds support for the SH73180 Solution Engine. Signed-off-by: Hiroshi DOYU <Hiroshi_DOYU@montavista.co.jp> Signed-off-by: Paul Mundt <paul.mundt@nokia.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.66, 2004-10-18 23:00:48-07:00, paul.mundt@nokia.com [PATCH] sh: Broken-out CPU subtype probing Previously we could do subtype parsing and cache configuration in the same location.. but with the introduction of things like the SH7705 where we use SH-3 style probing with SH-4 style caches, this is no longer the case. As such, we move the probe code to a saner place. Signed-off-by: Paul Mundt <paul.mundt@nokia.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.65, 2004-10-18 23:00:35-07:00, paul.mundt@nokia.com [PATCH] sh: oprofile support for SH7750/SH7750S The SH7750 and SH7750S have hardware performance counters, this adds an oprofile driver for those. Signed-off-by: Paul Mundt <paul.mundt@nokia.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.64, 2004-10-18 23:00:22-07:00, paul.mundt@nokia.com [PATCH] sh: PCI updates This updates some of the PCI drivers. SH7751, the sh03 board-specific PCI code, and some ST40 PCI updates are grouped in this. Signed-off-by: Paul Mundt <paul.mundt@nokia.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.63, 2004-10-18 23:00:10-07:00, paul.mundt@nokia.com [PATCH] sh: cleanup + merge This adds other random bits of sh cleanup. This includes Kconfig updates, some exported symbols to satisfy module builds, cleanup of some whitespace damage, some compile fixes, and some general header and mach-type cleanup. Signed-off-by: Tom Rini <trini@kernel.crashing.org> Signed-off-by: Paul Mundt <paul.mundt@nokia.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.62, 2004-10-18 22:59:56-07:00, paul.mundt@nokia.com [PATCH] sh: SH4-202 MicroDev board support This adds support for the SH4-202 MicroDev from SuperH, Inc. Signed-off-by: Paul Mundt <paul.mundt@nokia.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.61, 2004-10-18 22:59:44-07:00, paul.mundt@nokia.com [PATCH] sh: SH-4 optimized memcpy() This adds support for an SH-4 optimized memcpy(). Written by Stuart Menefy <stuart.menefy@st.com>. Signed-off-by: Paul Mundt <paul.mundt@nokia.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.60, 2004-10-18 22:59:31-07:00, paul.mundt@nokia.com [PATCH] sh: EDOSK7705 board support This adds support for the edosk7705 board from Renesas. Signed-off-by: Paul Mundt <paul.mundt@nokia.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.59, 2004-10-18 22:59:19-07:00, paul.mundt@nokia.com [PATCH] sh: SCBRR calculation fixes for early printk() The early printk() code was using a fixed PCLK value that was only sane in the SH7750 case. This updates the SCBRR value calculation to use CONFIG_SH_PCLK_FREQ instead and thus works on other subtypes as well (tested on SH4-202). Signed-off-by: Paul Mundt <paul.mundt@nokia.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.58, 2004-10-18 22:59:07-07:00, paul.mundt@nokia.com [PATCH] sh: DMA API updates This updates some of the sh DMA drivers and core API. Previously modules had to register for the channels they were interested in, but now it's dealt with transparently by the API with only the number of physical channels needing to be specified by each module. Signed-off-by: Paul Mundt <paul.mundt@nokia.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.57, 2004-10-18 22:58:55-07:00, paul.mundt@nokia.com [PATCH] sh: defconfig updates Nothing exciting here.. random defconfig updates, as well as a few new ones for microdev and ctp/pci-sh03. Signed-off-by: Paul Mundt <paul.mundt@nokia.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.56, 2004-10-18 22:58:43-07:00, paul.mundt@nokia.com [PATCH] sh: consistent API cleanup This gets rid of the hardcoded workarounds for the Dreamcast in the dma-mapping code, and now wraps into the common consistent_alloc() and consistent_free() routines if the ones in the machvec aren't interested in handling it. Signed-off-by: Paul Mundt <paul.mundt@nokia.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.55, 2004-10-18 22:58:30-07:00, paul.mundt@nokia.com [PATCH] sh: Use asm-offsets This basically follows the same change as for sh64 and adds asm-offsets to sh. Some hardcoded thread_info struct offsets get cleaned up by this. Signed-off-by: Paul Mundt <paul.mundt@nokia.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.54, 2004-10-18 22:58:17-07:00, paul.mundt@nokia.com [PATCH] sh: SH7705 subtype cleanup + 32k cache support This fixes up the existing SH7705 support and enables the 32k cache mode for the processor. Signed-off-by: Alex Song <songqf9@yahoo.ca> Signed-off-by: Paul Mundt <paul.mundt@nokia.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.53, 2004-10-18 22:58:05-07:00, paul.mundt@nokia.com [PATCH] sh: SH73180 subtype support This adds support for the SH73180 subtype (sh4a). Signed-off-by: Hiroshi DOYU <Hiroshi_DOYU@montavista.co.jp> Signed-off-by: Paul Mundt <paul.mundt@nokia.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.52, 2004-10-18 22:57:51-07:00, paulus@samba.org [PATCH] ppc32: fix cpu voltage change delay This patch fixes a problem where my new powerbook would sometimes hang or crash when changing CPU speed. We had schedule_timeout(HZ/1000) in there, intended to provide a delay of one millisecond. However, even with HZ=1000, it was (I believe) only waiting for the next jiffy before proceeding, which could be less than a millisecond. Changing the code to use msleep, and specifying a time of 1 jiffy + 1ms has fixed the problem. (When I looked at the msleep code, it appeared to me that msleep(1) with HZ=1000 would sleep for between 0 and 1ms.) Ben also asked me to remove the code that changes the AACK delay enable, after looking in the Darwin sources and seeing that Darwin does not change this in its corresponding code. Signed-off-by: Paul Mackerras <paulus@samba.org> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.51, 2004-10-18 22:57:39-07:00, mporter@kernel.crashing.org [PATCH] ppc32: configure PPC440GX L2 cache based on CPU rev This patch enables/disables the PPC440GX L2 cache based on errata which prevents reliable operation on certain CPU revisions and speed grades. Signed-off-by: Eugene Surovegin <ebs@ebshome.net> Signed-off-by: Matt Porter <mporter@kernel.crashing.org> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.50, 2004-10-18 22:57:27-07:00, mporter@kernel.crashing.org [PATCH] ppc32: add gen550.h Add a missing include file for gen550. Signed-off-by: Matt Porter <mporter@kernel.crashing.org> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.49, 2004-10-18 22:57:14-07:00, mporter@kernel.crashing.org [PATCH] ppc32: use gen550 for PPC44x progress/ppc-stub Use gen550 for early PPC progress messages and for the in-kernel ppc-stub.c on PPC44x. Signed-off-by: Matt Porter <mporter@kernel.crashing.org> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.48, 2004-10-18 22:57:02-07:00, akonovalov@ru.mvista.com [PATCH] ppc32: Xilinx ML300 board support (very basic) Adds minimal Xilinx ML300 board support (enough to boot with ramdisk). The only peripheral devices supported are 16x50 compatible UARTs. Signed-off-by: Andrei Konovalov <akonovalov@ru.mvista.com> Acked-by: Benjamin Herrenschmidt <benh@kernel.crashing.org> Acked-by: Matt Porter <mporter@kernel.crashing.org> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.47, 2004-10-18 22:56:50-07:00, axboe@suse.de [PATCH] invalidate page race fix invalidate_inode_pages() and invalidate_inode_pages2() can mark pages not uptodate while read() is trying to read from them. This is interpreted as an I/O error. Fix that by teaching the invalidate code to leave the page alone if someone else has a ref on it. Signed-off-by: Jens Axboe <axboe@suse.de> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.46, 2004-10-18 22:56:37-07:00, mingo@elte.hu [PATCH] doc: remove references to hardirq.c The patch below removes stale references to kernel/hardirq.c in comments, remnants of the earlier iterations of the generic irq subsystem code. Signed-off-by: Ingo Molnar <mingo@elte.hu> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.45, 2004-10-18 22:56:25-07:00, mingo@elte.hu [PATCH] generic irq subsystem: ppc64 port ppc64 port of generic hardirq handling. Signed-off-by: Ingo Molnar <mingo@elte.hu> Signed-off-by: Christoph Hellwig <hch@lst.de> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.44, 2004-10-18 22:56:12-07:00, mingo@elte.hu [PATCH] generic irq subsystem: ppc port ppc32 port of generic hardirq handling. Signed-off-by: Ingo Molnar <mingo@elte.hu> Signed-off-by: Christoph Hellwig <hch@lst.de> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.43, 2004-10-18 22:55:59-07:00, mingo@elte.hu [PATCH] generic irq subsystem: x86_64 port x86_64 port of generic hardirq handling. Signed-off-by: Ingo Molnar <mingo@elte.hu> Signed-off-by: Christoph Hellwig <hch@lst.de> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.42, 2004-10-18 22:55:47-07:00, mingo@elte.hu [PATCH] generic irq subsystem: x86 port x86 port of generic hardirq handling. akpm: (in response to build errors) - remove APIC_MISMATCH_DEBUG altogether. Just make it synonymous with CONFIG_X86_IO_APIC - Move the definition of irq_mis_count over to io_apic.c Signed-off-by: Ingo Molnar <mingo@elte.hu> Signed-off-by: Christoph Hellwig <hch@lst.de> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.41, 2004-10-18 22:55:37-07:00, mingo@elte.hu [PATCH] generic irq subsystem: core The main goal of this patch is to consolidate all the different but still fundamentally similar arch/*/kernel/irq.c code into the kernel/irq/ subsystem. There are 4 new files in the kernel/irq/ directory: - handle.c: core bits: __do_IRQ() and handle_IRQ_event(), callable from arch-specific irq.c code. - manage.c: the main driver apis - spurious.c: the handling of buggy interrupt sources. - autoprobe.c: probing of interrupts - older code but still in use. - proc.c: /proc/irq/ code. - internals.h for irq-core-internal interfaces not visible to drivers nor arch PIC code. An architecture enables the generic hardirq code by defining CONFIG_GENERIC_HARDIRQS in its arch Kconfig. People doing this conversion should check out the x86/x64/ppc/ppc64 patches for details - the conversion is quite straightforward but every converted function (i.e. every function removed from the arch irq.c) _must_ be matched to the generic version and if there is any detail that the generic code should do it has to be added to the generic code. All of the currently converted 4 architectures were converted like that, and the generic code was extended/fixed along the way. Other changes related to this patchset: - clean up the irq include files (linux/irq.h, linux/interrupt.h, linux/hardirq.h) and consolidate asm-*/[hard]irq.h. Note, to keep all non-touched architectures in an untouched state this consolidation is done carefully and strictly under CONFIG_GENERIC_HARDIRQS. Once the consolidation is done we can do a couple of final cleanups to reach the following logical splitup of 3 include files: linux/interrupt.h: driver-visible APIs and details linux/irq.h: core irq and arch-PIC code, internals asm-*/irq.h: arch PIC and irq delivery details the following include files will likely vanish: linux/hardirq.h merges into linux/irq.h asm-*/hardirq.h: merges into asm-*/irq.h asm-*/hw_irq.h: merges into asm-*/irq.h Christoph would like to do these once the current wave of cleanups gets in. Signed-off-by: Ingo Molnar <mingo@elte.hu> Signed-off-by: Christoph Hellwig <hch@lst.de> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.40, 2004-10-18 22:55:24-07:00, gkurz@meiosys.com [PATCH] fork() bug invalidates file descriptors Take a process P1 that spawns a thread T (aka. a clone with CLONE_FILES). If P1 forks another process P2 (aka. not a clone) while T is blocked in a open() that should return file descriptor FD, then FD will be unusable in P2. This leads to strange behaviors in the context of P2: close(FD) returns EBADF, while dup2(a_valid_fd, FD) returns EBUSY and of course FD is never returned again by any syscall... testcase: #include <errno.h> #include <fcntl.h> #include <sched.h> #include <signal.h> #include <string.h> #include <sys/stat.h> #include <sys/types.h> #include <unistd.h> #include <asm/page.h> #define FIFO "/tmp/bug_fifo" #define FD 0 /* * This program is meant to show that calling fork() while a clone spawned * with CLONE_FILES is blocked in open() makes a fd number unusable in the * child. * * * Parent Clone Child * | * clone(CLONE_FILES)- ChangeSet@1.1988.68.39, 2004-10-18 22:55:12-07:00, mingo@elte.hu [PATCH] fix the prof=schedule feature Fix mismerge of the "prof=schedule" feature. Without this patch the output is a boring empty profile. Signed-off-by: Ingo Molnar <mingo@elte.hu> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.38, 2004-10-18 22:55:00-07:00, mason@suse.com [PATCH] reiserfs: small filesystem fix On small filesystems (<128M), make sure not to reference bitmap blocks that don't exist. Thanks to Jan Kara for finding this bug. Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.37, 2004-10-18 22:54:48-07:00, hugh@veritas.com [PATCH] __set_page_dirty_nobuffers mappings Marcelo noticed that the BUG_ON in __set_page_dirty_nobuffers doesn't make much sense: it lost its way in 2.6.7, amidst so many page_mappings! It's supposed to be checking that, although page->mapping may suddenly go NULL from truncation, and although tmpfs swizzles page_mapping(page) between tmpfs inode address_space and swapper_space, there's sufficient stabilization while here in __set_page_dirty_nobuffers that the mapping after we locked mapping->tree_lock is the same as the mapping before we locked mapping->tree_lock i.e. the lock we hold is the right one. Signed-off-by: Hugh Dickins <hugh@veritas.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.36, 2004-10-18 22:54:38-07:00, roland@redhat.com [PATCH] exec: fix posix-timers leak and pending signal loss I've found some problems with exec and fixed them with this patch to de_thread. The second problem is that a multithreaded exec loses all pending signals. This is violation of POSIX rules. But a moment's thought will show it's also just not desireable: if you send a process a SIGTERM while it's in the middle of calling exec, you expect either the original program in that process or the new program being exec'd to handle that signal or be killed by it. As it stands now, you can try to kill a process and have that signal just evaporate if it's multithreaded and calls exec just then. I really don't know what the rationale was behind the de_thread code that allocates a new signal_struct. It doesn't make any sense now. The other code there ensures that the old signal_struct is no longer shared. Except for posix-timers, all the state there is stuff you want to keep. So my changes just keep the old structs when they are no longer shared, and all the right state is retained (after clearing out posix-timers). The final bug is that the cumulative statistics of dead threads and dead child processes are lost in the abandoned signal_struct. This is also fixed by holding on to it instead of replacing it. Signed-off-by: Roland McGrath <roland@redhat.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.35, 2004-10-18 22:54:26-07:00, Lev_Makhlis@bmc.com [PATCH] show aggregate per-process counters in /proc/PID/stat 2 Add up resource usage counters for live and dead threads to show aggregate per-process usage in /proc/<pid>/stat. This mirrors the new getrusage() semantics. /proc/<pid>/task/<tid>/stat still has the per-thread usage. After moving the counter aggregation loop inside a task->sighand lock to avoid nasty race conditions, it has survived stress-testing with '(while true; do sleep 1 & done) & top -d 0.1' Signed-off-by: Lev Makhlis <mlev@despammed.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.34, 2004-10-18 22:54:14-07:00, albert@users.sourceforge.net [PATCH] distinct tgid/tid CPU usage This patch adjusts /proc/*/stat to have distinct per-process and per-thread CPU usage, faults, and wchan. Signed-off-by: Albert Cahalan <albert@users.sf.net> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.33, 2004-10-18 22:54:02-07:00, arnd@arndb.de [PATCH] add missing linux/syscalls.h includes I found that the prototypes for sys_waitid and sys_fcntl in <linux/syscalls.h> don't match the implementation. In order to keep all prototypes in sync in the future, now include the header from each file implementing any syscall. Signed-off-by: Arnd Bergmann <arnd@arndb.de> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.32, 2004-10-18 22:53:48-07:00, mingo@elte.hu [PATCH] softirqs: fix latency of softirq processing The attached patch fixes a local_bh_enable() buglet: we first enabled softirqs then did we do local_softirq_pending() - often this is preemptible code. So this task could be preempted and there's no guarantee that softirq processing will occur (except the periodic timer tick). The race window is small but existent. This could result in packet processing latencies or timer expiration latencies - hard to detect and annoying bugs. The fix is to invoke softirqs with softirqs enabled but preemption still disabled. Patch is against 2.6.9-rc2-mm1. Signed-off-by: Ingo Molnar <mingo@elte.hu> Cc: <davem@davemloft.net> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.31, 2004-10-18 22:53:35-07:00, roland@redhat.com [PATCH] fix PTRACE_ATTACH race with real parent's wait calls There is a race between PTRACE_ATTACH and the real parent calling wait. For a moment, the task is put in PT_PTRACED but with its parent still pointing to its real_parent. In this circumstance, if the real parent calls wait without the WUNTRACED flag, he can see a stopped child status, which wait should never return without WUNTRACED when the caller is not using ptrace. Here it is not the caller that is using ptrace, but some third party. This patch avoids this race condition by adding the PT_ATTACHED flag to distinguish a real parent from a ptrace_attach parent when PT_PTRACED is set, and then having wait use this flag to confirm that things are in order and not consider the child ptraced when its ->ptrace flags are set but its parent links have not yet been switched. (ptrace_check_attach also uses it similarly to rule out a possible race with a bogus ptrace call by the real parent during ptrace_attach.) While looking into this, I noticed that every arch's sys_execve has: current->ptrace &= ~PT_DTRACE; with no locking at all. So, if an exec happens in a race with PTRACE_ATTACH, you could wind up with ->ptrace not having PT_PTRACED set because this store clobbered it. That will cause later BUG hits because the parent links indicate ptracedness but the flag is not set. The patch corrects all the places I found to use task_lock around diddling ->ptrace when it's possible to be racing with ptrace_attach. (The ptrace operation code itself doesn't have this issue because it already excludes anyone else being in ptrace_attach.) Signed-off-by: Roland McGrath <roland@redhat.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.30, 2004-10-18 22:53:22-07:00, roland@redhat.com [PATCH] add WCONTINUED support to wait4 syscall POSIX specifies the new WCONTINUED flag for waitpid, not just for waitid. I overlooked this addition when I implemented waitid. The real work was already done to support waitid, but waitpid needs to report the results Signed-off-by: Roland McGrath <roland@redhat.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.29, 2004-10-18 22:53:09-07:00, roland@redhat.com [PATCH] make rlimit settings per-process instead of per-thread POSIX specifies that the limit settings provided by getrlimit/setrlimit are shared by the whole process, not specific to individual threads. This patch changes the behavior of those calls to comply with POSIX. I've moved the struct rlimit array from task_struct to signal_struct, as it has the correct sharing properties. (This reduces kernel memory usage per thread in multithreaded processes by around 100/200 bytes for 32/64 machines respectively.) I took a fairly minimal approach to the locking issues with the newly shared struct rlimit array. It turns out that all the code that is checking limits really just needs to look at one word at a time (one rlim_cur field, usually). It's only the few places like getrlimit itself (and fork), that require atomicity in accessing a whole struct rlimit, so I just used a spin lock for them and no locking for most of the checks. If it turns out that readers of struct rlimit need more atomicity where they are now cheap, or less overhead where they are now atomic (e.g. fork), then seqcount is certainly the right thing to use for them instead of readers using the spin lock. Though it's in signal_struct, I didn't use siglock since the access to rlimits never needs to disable irqs and doesn't overlap with other siglock uses. Instead of adding something new, I overloaded task_lock(task->group_leader) for this; it is used for other things that are not likely to happen simultaneously with limit tweaking. To me that seems preferable to adding a word, but it would be trivial (and arguably cleaner) to add a separate lock for these users (or e.g. just use seqlock, which adds two words but is optimal for readers). Most of the changes here are just the trivial s/->rlim/->signal->rlim/. I stumbled across what must be a long-standing bug, in reparent_to_init. It does: memcpy(current->rlim, init_task.rlim, sizeof(*(current->rlim))); when surely it was intended to be: memcpy(current->rlim, init_task.rlim, sizeof(current->rlim)); As rlim is an array, the * in the sizeof expression gets the size of the first element, so this just changes the first limit (RLIMIT_CPU). This is for kernel threads, where it's clear that resetting all the rlimits is what you want. With that fixed, the setting of RLIMIT_FSIZE in nfsd is superfluous since it will now already have been reset to RLIM_INFINITY. The other subtlety is removing: tsk->rlim[RLIMIT_CPU].rlim_cur = RLIM_INFINITY; in exit_notify, which was to avoid a race signalling during self-reaping exit. As the limit is now shared, a dying thread should not change it for others. Instead, I avoid that race by checking current->state before the RLIMIT_CPU check. (Adding one new conditional in that path is now required one way or another, since if not for this check there would also be a new race with self-reaping exit later on clearing current->signal that would have to be checked for.) The one loose end left by this patch is with process accounting. do_acct_process temporarily resets the RLIMIT_FSIZE limit while writing the accounting record. I left this as it was, but it is now changing a limit that might be shared by other threads still running. I left this in a dubious state because it seems to me that processing accounting may already be more generally a dubious state when it comes to NPTL threads. I would think you would want one record per process, with aggregate data about all threads that ever lived in it, not a separate record for each thread. I don't use process accounting myself, but if anyone is interested in testing it out I could provide a patch to change it this way. One final note, this is not 100% to POSIX compliance in regards to rlimits. POSIX specifies that RLIMIT_CPU refers to a whole process in aggregate, not to each individual thread. I will provide patches later on to achieve that change, assuming this patch goes in first. Signed-off-by: Roland McGrath <roland@redhat.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.28, 2004-10-18 22:52:55-07:00, mingo@elte.hu [PATCH] i386 entry.S cleanups Remove the unused lcall7/lcall27 code. Signed-off-by: Ingo Molnar <mingo@elte.hu> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.27, 2004-10-18 22:52:43-07:00, pavel@ucw.cz [PATCH] acpi proc: error handling Propagate the software_suspend() return value. Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.26, 2004-10-18 22:52:31-07:00, pavel@ucw.cz [PATCH] swsusp: progress in percent swsusp currently has very poor progress indication. Thanks to Erik Rigtorp <erik@rigtorp.com>, we have percentages there, so people know how long wait to expect. Please apply, From: Erik Rigtorp <erik@rigtorp.com> Signed-off-by: Pavel Machek <pavel@suse.cz> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.25, 2004-10-18 22:52:19-07:00, andrea@novell.com [PATCH] parport_pc superio chip fixes This patch fixes some troubles that somebody reported me with the superio chips. In short rmmod parport_pc && cat /proc/iomem was good enough for crashing the box hard on some machine (and hwscan --printer was doing just that). The way the oops triggers is that iomem tries to vsprintf the p->name, but the p->name was a static string in the module address (now unloaded). The reason is that the superio chip scanning leaves up to two persistent ranges claimed. But the second (legacy) pass has no way to notice the resources are already reclaimed. Plus if the superio->io was different than the "io" variable (the range to scan for superio chips) the "io" range would generate a leak of the original "io" range too. I simply make sure to always release the requested space during the superio scan, and I make sure not to istantiate new ranges in the p->base that would cause the later parport scan to fail too (plus leaving up to leaked resources). The previous code that was returning values and was leaving garbage in there made no sense to me. My best guess (assuming I didn't misread it ;) is that probably somebody added the request_region without realizing they're pointing to the very same address that would be requested later (and nobody does accesses on those ranges until later, so it was very safe to claim it later). Disclaimer: I don't have the specs of the winbond and smsc at hand, I just guessed what they do from the code (nothing checks superio->io except get_superio_dma get_superio_irq, which made the thing enough self explainatory to fix it without specs) Signed-off-by: Andrea Arcangeli <andrea@novell.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.24, 2004-10-18 22:52:07-07:00, rohit.seth@intel.com [PATCH] add sys_setaltroot() Add a new system call setaltroot(2). Currently, using the altroot feature is accessible only via the set_personality() system call. It is accessible to user space only if there is more than one exec domain in the system. This patch allows using the altroot feature on systems where there is only one exec domain. It is possible to work around the issue by adding a dummy exec domain, but it was rejected for not being very elegant. If this feature is implemented in userspace, it adds a 16% overhead on a test case which greps for a single word in the kernel source tree. Signed-off-by: Zou Nanhai <nanhai.zou@intel.com> Signed-off-by: Gordon Jin <gordon.jin@intel.com> Signed-off-by: Arun Sharma <arun.sharma@intel.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.23, 2004-10-18 22:43:26-07:00, torvalds@ppc970.osdl.org Wrap <linux/compiler.h> inside '#ifndef __ASSEMBLY__' None of the compatibility defines make sense for assembly files, and gcc has trouble with vararg macros when using "-traditional" (which is used for asm), to the point of ICE'ing. ChangeSet@1.1988.68.22, 2004-10-18 22:27:41-07:00, torvalds@ppc970.osdl.org Add copyright notice on ppc64 iomap files. Paul cares. I think there's something in the water at IBM that makes people sticklers ;) ChangeSet@1.1988.68.21, 2004-10-18 22:23:22-07:00, benh@kernel.crashing.org [PATCH] ppc64: Fix iSeries build (ouch !) The move of iomap out of eeh inadvertently broke iSeries ... Fixed like this. Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.20, 2004-10-18 22:23:09-07:00, benh@kernel.crashing.org [PATCH] ppc32/64: FPU/vector register restore after signal This fixes some issues with restoring the altivec and/or FPU registers upon return from a signal or when setting a context. It also add a proper stack backlink to the signal frames created for 64 bits applications. Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> ChangeSet@1.1988.68.19, 2004-10-18 22:16:52-07:00, torvalds@ppc970.osdl.org Older gcc's ICE on missing (unused) varags macro name. ChangeSet@1.1988.66.23, 2004-10-18 17:07:29-07:00, greg@kroah.com USB: add bulk_in_size for usb-serial devices. Don't know why I didn't do it before... Signed-off-by: Greg Kroah-Hartman <greg@kroah.com> ChangeSet@1.1988.68.17, 2004-10-18 16:41:51-07:00, torvalds@ppc970.osdl.org Merge bk://gkernel.bkbits.net/libata-2.6 into ppc970.osdl.org:/home/torvalds/v2.6/linux ChangeSet@1.1988.68.16, 2004-10-18 15:50:44-07:00, torvalds@ppc970.osdl.org Add fake '__builtin_warning()' for the gcc case. Allows us to do compile-time sparse warnings of our own. ChangeSet@1.1988.95.3, 2004-10-18 23:02:02+01:00, ben-linux@org.rmk.(none) [ARM PATCH] 2145/1: S3C2410 - GPIO ID register update Patch from Ben Dooks Update the include/asm-arm/arch-s3c2410/regs-gpio.h with GSTATUS1 register information Signed-off-by: Ben Dooks ChangeSet@1.1988.95.2, 2004-10-18 22:56:50+01:00, ben-linux@org.rmk.(none) [ARM PATCH] 2144/1: S3C2410 - s3c2440 fixes and clock updates Patch from Ben Dooks Fixes the following problems and ommisions: - added variable for base crystal rate - moved clock variables into clock.c - fixed bug in identifying s3c2440 cpus - added initial support for new uart registration - removed base blocks from include/asm/arch/hardware.h Signed-off-by: Ben Dooks ChangeSet@1.1988.66.22, 2004-10-18 14:52:07-07:00, petkov@uni-muenster.de [PATCH] USB: remove calls to usb_unlink_urb() in net/kaweth.c Hi there Greg, here's another one. Signed-off-by: Borislav Petkov <petkov@uni-muenster.de> Signed-off-by: Greg Kroah-Hartman <greg@kroah.com> ChangeSet@1.1988.66.21, 2004-10-18 14:51:42-07:00, petkov@uni-muenster.de [PATCH] USB: remove calls to usb_unlink_urb() in net/pegasus.c Signed-off-by: Borislav Petkov <petkov@uni-muenster.de> Signed-off-by: Greg Kroah-Hartman <greg@kroah.com> ChangeSet@1.1988.66.20, 2004-10-18 14:51:13-07:00, petkov@uni-muenster.de [PATCH] USB: remove calls to usb_unlink_urb in net/usbnet.c Signed-off-by: Borislav Petkov <petkov@uni-muenster.de> Signed-off-by: Greg Kroah-Hartman <greg@kroah.com> ChangeSet@1.1988.89.6, 2004-10-18 17:49:29-04:00, bzolnier@gmail.com [PATCH] make ATAPI PIO work If "BSY=0, DRQ=0" condition happens on ATAPI just complete the command as this condition happens for: * the end of the PIO transfer (ie. REQUEST_SENSE seems to return only 18 of 96 requested bytes) * unsupported ATAPI commands (ie. REPORT_LUNS) Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com> ChangeSet@1.1988.89.5, 2004-10-18 17:49:16-04:00, bzolnier@gmail.com [PATCH] arbitrary size ATAPI PIO support bugfixes * sg was incorrectly used instead of qc->sg in __atapi_pio_bytes() * due to obvious typo qc->curbytes wasn't zeroed in ata_qc_new_init() Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com> ChangeSet@1.1988.95.1, 2004-10-18 22:48:44+01:00, ben-linux@org.rmk.(none) [ARM PATCH] 2131/1: Add _iomem to the IO string functions Patch from Ben Dooks This patch stops mtd from generating problems of casting pointers to ints, due to the memcpy_fromio and related functions all taking `unsigned long` for their IO addresses. Replace `unsigned long` with `void __iomem *` Compiled clean on arch-s3c2410 Signed-off-by: Ben Dooks ChangeSet@1.1988.68.14, 2004-10-18 16:48:22-05:00, jejb@titanic.il.steeleye.com Merge titanic.il.steeleye.com:/home/jejb/BK/scsi-target-2.6 into titanic.il.steeleye.com:/home/jejb/BK/scsi-for-linus-2.6 ChangeSet@1.1988.66.19, 2004-10-18 14:42:08-07:00, hj.oertel@surfeu.de [PATCH] USB: usb/serial RM vendor/product id for ftdi_sio Hello, this is a small patch of the USB ftdi_sio driver against linux-2.6.8.1. I only added a new vendor and product id for the RM-CANview, a CAN fieldbus interface: http://www.rmcan.com/site/en/products/gateways/usb/index.htm Thanks Heinz Signed-off-by: Heinz-Juergen Oertel <oe@port.de> Signed-off-by: Greg Kroah-Hartman <greg@kroah.com> ChangeSet@1.1988.66.18, 2004-10-18 14:41:41-07:00, ak@sensi.org [PATCH] USB: USB CDC OBEX driver Also, as the full patch isn't going in, can you please apply this tiny part of it? Somehow the header descriptor was omitted from the CDC ACM driver, but it's present on my phone (thus giving me the "ignoring extra header" error when it's plugged in) and in the CDC spec (section 5.2.3.1). Signed-off-by: Alex Kanavin <ak@sensi.org> Signed-Off-By: Oliver Neukum <oliver@neukum.name> Signed-off-by: Greg Kroah-Hartman <greg@kroah.com> ChangeSet@1.1988.93.21, 2004-10-18 22:18:15+01:00, linux@de.rmk.(none) [PCMCIA] 15-get_firstnext_region.diff pcmcia_get_{first,next}_region are tricky: they're used only by ds.c, but to keep backwards compatibility proper wrappers are needed (for the moment). However, match_region() doesn't work without knowing about ds.c's handle, it seems... but wait: while (list != NULL) { if (!(handle->Attributes & INFO_MTD_CLIENT) || (strcmp(handle->dev_info, list->dev_info) == 0)) { *match = list->info; return CS_SUCCESS; } list = list->info.next; } as ds.c's handle doesn't have INFO_MTD_CLIENT, the if always succeeds -- allowing is to simplify it for ds.c. However, this means we need special functions for ds.c. It's not too large, fortunately. ChangeSet@1.1988.93.20, 2004-10-18 22:12:54+01:00, linux@de.rmk.(none) [PCMCIA] 14-access_configuration.diff Add a wrapper around pcmcia_access_configuration_register, and use pccard_access_configuration_register in ds.c ChangeSet@1.1988.93.19, 2004-10-18 22:06:57+01:00, linux@de.rmk.(none) [PCMCIA] 13-get_status.diff Add a wrapper around pcmcia_get_status, and use pccard_get_status in ds.c ChangeSet@1.1988.93.18, 2004-10-18 22:02:25+01:00, linux@de.rmk.(none) [PCMCIA] 12-reset_card.diff pcmcia_reset_card doesn't need to know about the handle, but add a wrapper for backwards compatibility anyways. ChangeSet@1.1988.66.17, 2004-10-18 13:58:20-07:00, phil@ipom.com [PATCH] USB Storage: unusual_dev modification The following patch changes the 0x059f/0xa601/0x0200 per the report from Torsten Eriksson. It adds comments to the uncommented entry and changes the subclass. Signed-off-by: Phil Dibowitz <phil@ipom.com> Signed-off-by: Greg Kroah-Hartman <greg@kroah.com> ChangeSet@1.1988.66.16, 2004-10-18 13:57:50-07:00, stern@rowland.harvard.edu [PATCH] USB Storage: new unusual_devs entry Here's another USB mass storage device that incorrectly reports the total number of disk blocks. Please apply. Signed-off-by: Alan Stern <stern@rowland.harvard.edu> Signed-off-by: Greg Kroah-Hartman <greg@kroah.com> ChangeSet@1.1988.85.15, 2004-10-18 15:57:44-05:00, jejb@mulgrave.(none) aic7xxx and aic79xx: fix sleeping while holding a lock From: Luben Tuikov <luben_tuikov@adaptec.com> Fix sleeping while holding a lock on host removal and on killing the DV thread. Signed-off-by: Luben Tuikov <luben_tuikov@adaptec.com> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com> ChangeSet@1.1988.93.17, 2004-10-18 21:57:39+01:00, linux@de.rmk.(none) [PCMCIA] 11-configuration_info.diff Add a wrapper around pcmcia_get_configuration_info, and use pccard_get_configuration_info in ds.c ChangeSet@1.1988.66.15, 2004-10-18 13:57:23-07:00, phil@ipom.com [PATCH] USB Storage: Fix Kyocera order This removes a duplicate entry and fixes order. Trivial. Signed-off-by: Phil Dibowitz <phil@ipom.com> Signed-off-by: Greg Kroah-Hartman <greg@kroah.com> ChangeSet@1.1988.66.14, 2004-10-18 13:56:54-07:00, phil@ipom.com [PATCH] USB Storage: Remove unusual_devs entries for Genesys Drives Here's a patch to remove the three Genesys disk entries in unusual_devs. They don't appear to be needed anymore because: 1. The inquiries now request the right amount of data 2. MODE_XLATE, according to Alan, isn't used in 2.6 Signed-off-by: Phil Dibowitz <phil@ipom.com> Signed-off-by: Greg Kroah-Hartman <greg@kroah.com> ChangeSet@1.1988.66.13, 2004-10-18 13:56:31-07:00, phil@ipom.com [PATCH] USB Storage: Remove unusual_dev entry for IBM Storage Key This removes the 0a16/8888/0100 unusual_devs entry for an IBM USB Storag key. It does not appear to be needed and caused issues for Buddha Henry <spanishbuddha@hotmail.com>, who has tested with this patch and his device works properly. Signed-off-by: Phil Dibowitz <phil@ipom.com> Signed-off-by: Greg Kroah-Hartman <greg@kroah.com> ChangeSet@1.1988.66.12, 2004-10-18 13:55:59-07:00, phil@ipom.com [PATCH] USB Storage: unusual_devs patch for winward music disk The following is needed for Winward Music Disk. I narrowed the range of the original patch which was sent by Stephan Walter. From: Stephan Walter <stephan.walter@epfl.ch> Signed-off-by: Phil Dibowitz <phil@ipom.com> Signed-off-by: Greg Kroah-Hartman <greg@kroah.com> ChangeSet@1.1988.66.11, 2004-10-18 13:55:35-07:00, phil@ipom.com [PATCH] USB Storage: unusual_devs patch for new tekom entry Stephan Fuhrmann sent in the entry for a device needing the new RESIDUE flag. Here is an appropriate tested patch. From: Stephan Fuhrmann <atomenergie@t-online.de> Signed-off-by: Phil Dibowitz <phil@ipom.com> Signed-off-by: Greg Kroah-Hartman <greg@kroah.com> ChangeSet@1.1988.66.10, 2004-10-18 13:55:12-07:00, phil@ipom.com [PATCH] USB Storage: Unusual_dev patch for Finepix 1300 and 1400's. There are several cameras (1300s and 1400s) with the same bcdDevice number (1000). Most of them are 8070 devices, but some of them are UFI devices (similar to 8070 devices but don't clear the sense data after an INQUIRY or REQUEST SENSE). Furthermore if the devices that truely do act like 8070 devices are overridden to be UFI, they find more than one LUN. Specifiying UFI and SINGLE_LUN seems to satisfy all kinds of devices that claim device number 1000. From: Pavel Machek <pavel@ucw.cz> Signed-off-by: Phil Dibowitz <phil@ipom.com> Signed-off-by: Greg Kroah-Hartman <greg@kroah.com> ChangeSet@1.1988.93.16, 2004-10-18 21:52:52+01:00, linux@de.rmk.(none) [PCMCIA] 10-get_window.diff Change calling conventions to pcmcia_get_window, and use this function directly in ds.c, but keep the existing wrappers pcmcia_get_{first,next}_window in pcmcia_compat.c ChangeSet@1.1988.93.15, 2004-10-18 21:48:09+01:00, linux@de.rmk.(none) [PCMCIA] 09-pcmcia_compat.diff Move the compatibility pcmcia_* functions which take a "handle" as argument to a new file, pcmcia_compat.c, which is built into "ds" a.k.a. "pcmcia.ko". This makes sense as only 16-bit PCMCIA drivers have a valid handle. ChangeSet@1.1988.68.13, 2004-10-18 15:43:05-05:00, jejb@titanic.il.steeleye.com SCSI: fix Suspend I/O block/unblock path From: James.Smart@Emulex.Com urther testing is showing that we are having some i/o threads prematurely die with the following message: "rejecting I/O to device being removed" Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com> ChangeSet@1.1988.93.14, 2004-10-18 21:41:52+01:00, linux@de.rmk.(none) [PCMCIA] 08-validate_cis.diff Add a wrapper around pcmcia_validate_cis, and use pccard_validate_cis in ds.c ChangeSet@1.1988.93.13, 2004-10-18 21:36:49+01:00, linux@de.rmk.(none) [PCMCIA] 07-read_tuple.diff Rename the "internal" read_tuple to pccard_read_tuple, and update it to better calling conventions. ChangeSet@1.1988.93.12, 2004-10-18 21:31:46+01:00, linux@de.rmk.(none) [PCMCIA] 06-parse_tuple.diff Add a wrapper around pcmcia_parse_tuple, and use pccard_parse_tuple in ds.c ChangeSet@1.1988.93.11, 2004-10-18 21:26:54+01:00, linux@de.rmk.(none) [PCMCIA] 05-get_tuple_data.diff Add a wrapping around pcmcia_get_tuple_data, and use pccard_get_tuple_data wherever possible. ChangeSet@1.1988.93.10, 2004-10-18 21:21:54+01:00, linux@de.rmk.(none) [PCMCIA] 04-get_firstnext_tuple.diff Add wrappings around pcmcia_get_{first,next}_tuple, and use the new pccard_get_first,next_tuple calls wherever possible. ChangeSet@1.1988.93.9, 2004-10-18 21:16:49+01:00, linux@de.rmk.(none) [PCMCIA] 03-replace_cis.diff pcmcia_replace_cis doesn't need to know about the handle or a sub- function, as the cis can only be replaced as a whole. Also, remove bogus entries in cs_internal.h ChangeSet@1.1988.93.8, 2004-10-18 21:10:47+01:00, linux@de.rmk.(none) [PCMCIA] 02-adjust_resource_info.diff pcmcia_adjust_resource_info is only called from ds.c and doesn't need to know about a valid handle. ChangeSet@1.1988.93.7, 2004-10-18 21:05:10+01:00, linux@de.rmk.(none) [PCMCIA] 01-lookup_bus.diff pcmcia_lookup_bus is only called from ds.c, and doesn't need to know about a handle -- just about the struct pcmcia_socket. ChangeSet@1.1988.85.14, 2004-10-18 14:52:20-05:00, mike.miller@hp.com [PATCH] cciss: fixes for clustering This patch changes our open specifically for clustering software. We must allow root to access any volume or device with a LUN ID. We also modified our revalidate function for this reason. If a logical is reserved, we must register it with the OS with size=0. Then the backup system can call BLKRRPART after breaking the reservation to set the device to the correct size. We also must register a controller with no logical volumes for the online utilities to function. This is the way we've done it since the 2.2 kernel. Which doesn't neccesarily make it right, but we have legacy apps to consider. Signed off by: Mike Miller <mike.miller@hp.com> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com> ChangeSet@1.1988.93.6, 2004-10-18 19:56:24+01:00, linux@de.rmk.(none) [PCMCIA] 06-Kconfig_PCMCIA.diff After noting three things, namely 1.) CardBus cards work without ds a.k.a. pcmcia loaded, 2.) ds a.k.a pcmcia cannot be built as module if pcmcia_core is built in, and 3.) some commenting in drivers/pcmcia/Kconfig was obsolete [to use 32-bit cards, you don't need pcmcia-cs], I wrote this patch which introduces more config options for fine- grained tuning of what to built as what and what not to built. In future, 16-bit-specific code in pcmcia_core may be surrounded by CONFIG_PCMCIA. Also, I'll try to remove the dependency of yenta_socket on cardbus. ChangeSet@1.1988.93.5, 2004-10-18 19:50:15+01:00, linux@de.rmk.(none) [PCMCICA] 05-obsolete_parts_of_cs.diff Some parts of cs.c are not used by any PCMCIA socket or card driver or the PCMCIA subsystem itself. Mark them CONFIG_PCMCIA_OBSOLETE. Also, define pcmcia_get_window static as it was supposed to be. ChangeSet@1.1988.92.17, 2004-10-18 11:50:06-07:00, torvalds@ppc970.osdl.org Linux 2.6.9 TAG: v2.6.9