commit 4c91aedb75d1b87deccf16d58f67fb46402d7d44 Author: Linus Torvalds Date: Tue Jun 28 22:57:29 2005 -0700 Linux v2.6.13-rc1 Ok, a lot of things were pending after the 2.6.12 release, let's try to start calming things down again. commit b9a05d1d51e27681e8a1162d8f11c1820915e921 Author: Jeff Garzik Date: Wed Jun 29 01:17:55 2005 -0400 [PATCH] ieee80211.h build fix This crept in with the resync-to-mainline. Nothing uses 802.11-crypt in mainline, so we can safely comment it out for now. Signed-off-by: Jeff Garzik Signed-off-by: Linus Torvalds commit a839688362e32f01608838516036697e30618b39 Merge: 2fa938b8a3964c21b23d9d095091e7abc88249c5 12dc2fdd3e6067f5137e4a6d8af0b1a994952f52 Author: Linus Torvalds Date: Tue Jun 28 21:24:32 2005 -0700 Merge rsync://rsync.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6 commit 2fa938b8a3964c21b23d9d095091e7abc88249c5 Author: Dave Jones Date: Tue Jun 28 20:08:29 2005 -0400 [PATCH] sis 760 support. This patch adds the SiS 760 ID to the amd64-agp driver, so that agpgart can be used on Athlon64 boards based on this chip. Signed-off-by: Daniel Drake Signed-off-by: Dave Jones Signed-off-by: Linus Torvalds commit 2668fb91cbfbd5e6799017a3579f20309aac758b Author: William Lee Irwin III Date: Tue Jun 28 20:45:31 2005 -0700 [PATCH] sparc32: Kconfig fixups Something reverted most of the arch/sparc/Kconfig changes, leaving arch/sparc/ unconfigurable. This patch re-removes the parts made redundant by drivers/Kconfig in addition to a mysterious, spurious second instance of source "mm/Kconfig". cvs strikes again? Signed-off-by: William Irwin Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 84da7c0844f8ab7668559c61e4f0af416fc58cf6 Author: Randy Dunlap Date: Tue Jun 28 20:45:30 2005 -0700 [PATCH] Doc/Submitting: corrections, additions Corrections to Documentation/Submitting{Drivers,Patches} - update LANANA info. - fix some typos - update 2.2 kernel maintainer info. - update 'dontdiff' info. - update URLs for patch scripts - add Trivial Patch Monkey URL - add more references for submitting patches Signed-off-by: Randy Dunlap Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 6623e6205e36c310367009f3b01f5cbe7cc0005d Author: Mauro Carvalho Chehab Date: Tue Jun 28 20:45:28 2005 -0700 [PATCH] V4L: documentation changes - mostly new cards included New cards included. V4L1 api renamed. Message included informing it is obsoleted by V4L2 API. V4L2 api included. Mark all 7135 cards as 7133. Signed-off-by: Luc Saillard . Signed-off-by: Nickolay V Shmyrev Signed-off-by: Hermann Pitton Signed-off-by: Michael Krufky Signed-off-by: Mauro Carvalho Chehab Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 115d6f3fd25991f2a7de1ff4d758086209b1ed12 Author: Mauro Carvalho Chehab Date: Tue Jun 28 20:45:27 2005 -0700 [PATCH] V4L: API new webcam formats included Add Philips Webcam format. Signed-off-by: Mauro Carvalho Chehab Signed-off-by: Luc Saillard . Signed-off-by: Nickolay V Shmyrev Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 060d3027f26aab9adeac8ff6d1184bca67c7d174 Author: Mauro Carvalho Chehab Date: Tue Jun 28 20:45:25 2005 -0700 [PATCH] v4l: bttv new insmod parameters * bttv-driver.c, bttvp.h: - New bttv module params: - uv_ratio : allow a ratio of saturation between u and v. If you have a ratio of 40 and a saturation of 100, usat will be 80 and vstat 120. Useful to correct a bad color balance. - full_luma_range : provide a better contrast in using the full range 0-253 of values instead of 16-253. - coring : to have a better black level. - radio range is now defined on tuner-core.c. Cleaning up. * bttvp.h: - Fix gcc 4.0 compilation Signed-off-by: Jorik Jonker Signed-off-by: Sylvain Meyer Signed-off-by: Mauro Carvalho Chehab Signed-off-by: Nickolay V Shmyrev Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 586b0cab2516640fec4dffc3049c4d8bca188f89 Author: Mauro Carvalho Chehab Date: Tue Jun 28 20:45:21 2005 -0700 [PATCH] v4l: tuner improvements *tuner-core.c: - some tuner_info msgs will be generated only if insmod opt tuner_debug enabled. - Implemented tuner-core support for VIDIO_S_TUNER to allow changing mono/stereo mode - Remove unneeded config options. - I2C_CLIENT_MULTI option removed. - support for Philips FMD12ME hybrid tuner - allow to initialize with another tuner - Move PHILIPS_FMD initialization code to set_type function, * tda8290: - Fix dumb error in tda8290 tunning. - Radio tuner uses high-precision step instead of 62.5 KHz. *tea5767.c: - tuner_info msgs will be generated only if insmod tuner option tuner_debug enabled. - some cleanups for better reading. - Radio tuner uses high-precision step instead of 62.5 KHz. - Changing radio mode stereo/mono for tea5767 working. *tuner-simple.c: - TNF9533-D/IF UHF fixup. - Radio tuners now uses high-precision step instead of 62.5 KHz. *mt20xx.c: - Radio tuner uses high-precision step instead of 62.5 KHz. *tda9887.c: - tab and blank spaces corrections. Signed-off-by: Mauro Carvalho Chehab Signed-off-by: Gerd Knorr Signed-off-by: Nickolay V Shmyrev Signed-off-by: Hartmut Hackmann Signed-off-by: Michael Krufky Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 96b6aba08762f09e5dfa616854cb80ce054a7bf8 Author: Mauro Carvalho Chehab Date: Tue Jun 28 20:45:20 2005 -0700 [PATCH] V4L maintainer patch This patch updates maintainer info for BTTV and V4L. Signed-off-by: Mauro Carvalho Chehab Acked-by: Gerd Knorr Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 200803dfe4ff772740d63db725ab2f1b185ccf92 Author: Alan Cox Date: Tue Jun 28 20:45:18 2005 -0700 [PATCH] irqpoll Anyone reporting a stuck IRQ should try these options. Its effectiveness varies we've found in the Fedora case. Quite a few systems with misdescribed IRQ routing just work when you use irqpoll. It also fixes up the VIA systems although thats now fixed with the VIA quirk (which we could just make default as its what Redmond OS does but Linus didn't like it historically). A small number of systems have jammed IRQ sources or misdescribes that cause an IRQ that we have no handler registered anywhere for. In those cases it doesn't help. Signed-off-by: Alan Cox Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 21fe3471c3aaa5c489c5d3a4d705291eb7511248 Author: Mingming Cao Date: Tue Jun 28 20:45:16 2005 -0700 [PATCH] ext3: reduce allocate-with-reservation lock latencies Currently in ext3 block reservation code, the global filesystem reservation tree lock (rsv_block) is hold during the process of searching for a space to make a new reservation window, including while scaning the block bitmap to verify if the avalible window has a free block. Holding the lock during bitmap scan is unnecessary and could possibly cause scalability issue and latency issues. This patch tries to address this by dropping the lock before scan the bitmap. Before that we need to reserve the open window in case someone else is targetting at the same window. Question was should we reserve the whole free reservable space or just the window size we need. Reserve the whole free reservable space will possibly force other threads which intended to do block allocation nearby move to another block group(cause bad layout). In this patch, we just reserve the desired size before drop the lock and scan the block bitmap. This patch fixed a ext3 reservation latency issue seen on a cvs check out test. Patch is tested with many fsx, tiobench, dbench and untar a kernel test. Signed-Off-By: Mingming Cao Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit fb3cc4320e1fd87143683b540e459a2e20fdc9bb Author: Nick Piggin Date: Tue Jun 28 20:45:15 2005 -0700 [PATCH] blk: light iocontext ops get_io_context needlessly turned off interrupts and checked for racing io context creations. Both of which aren't needed, because the io context can only be created while in process context of the current process. Also, split the function in 2. A light version, current_io_context does not elevate the reference count specifically, but can be used when in process context, because the process holds a reference itself. Signed-off-by: Nick Piggin Cc: Jens Axboe Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit d6344532a26a318c128102507f6328aaafe02d4d Author: Nick Piggin Date: Tue Jun 28 20:45:14 2005 -0700 [PATCH] blk: reduce locking Change around locking a bit for a result of 1-2 less spin lock unlock pairs in request submission paths. Signed-off-by: Nick Piggin Cc: Jens Axboe Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 450991bc1026135ee30482a4a806d069915ab2f6 Author: Nick Piggin Date: Tue Jun 28 20:45:13 2005 -0700 [PATCH] blk: __make_request efficiency In the case where the request is not able to be merged by the elevator, don't retake the lock and retry the merge mechanism after allocating a new request. Instead assume that the chance of a merge remains slim, and now that we've done most of the work allocating a request we may as well just go with it. Also be rid of the GFP_ATOMIC allocation: we've got working mempools for the block layer now, so let's save atomic memory for things like networking. Lastly, in get_request_wait, do an initial get_request call before going into the waitqueue. This is reported to help efficiency. Signed-off-by: Nick Piggin Cc: Jens Axboe Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 69f63c5c34d0b34ee2cbf10c5ff7fcff0404879e Author: KAMBAROV, ZAUR Date: Tue Jun 28 20:45:12 2005 -0700 [PATCH] coverity: tty_ldisc_ref return null check We add a check of the return value of tty_ldisc_ref(), which is checked 7 out of 8 times, e.g.: 149 ld = tty_ldisc_ref(tty); 150 if (ld != NULL) { 151 if (ld->set_termios) 152 (ld->set_termios)(tty, &old_termios); 153 tty_ldisc_deref(ld); 154 } This defect was found automatically by Coverity Prevent, a static analysis tool. (akpm: presumably `ld' is never NULL. Oh well) Signed-off-by: Zaur Kambarov Cc: Alan Cox Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit c7f1721ef284c6e8257c7471a02148db76105036 Author: KAMBAROV, ZAUR Date: Tue Jun 28 20:45:11 2005 -0700 [PATCH] coverity: fs/ext3/super.c: match_int return check The return value of "match_int" is checked 27 out of 28 times In lib/parser.c 142 /** 143 * match_int: - scan a decimal representation of an integer from a substring_t 144 * @s: substring_t to be scanned 145 * @result: resulting integer on success 146 * 147 * Description: Attempts to parse the &substring_t @s as a decimal integer. On 148 * success, sets @result to the integer represented by the string and returns 0. 149 * Returns either -ENOMEM or -EINVAL on failure. 150 */ 151 int match_int(substring_t *s, int *result) 152 { 153 return match_number(s, result, 0); 154 } Signed-off-by: Zaur Kambarov Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit ec471dc484b8ca5352903ee28796b8b248313547 Author: KAMBAROV, ZAUR Date: Tue Jun 28 20:45:10 2005 -0700 [PATCH] coverity: fs/udf/namei.c null check "dir" was dereferenced before null check Signed-off-by: Zaur Kambarov Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 9c101fd439dab60d6eba76afb35fd2696f42c63d Author: KAMBAROV, ZAUR Date: Tue Jun 28 20:45:08 2005 -0700 [PATCH] coverity: ipmi_msghandler() channels array overrun fix We fix the check in 1084, which was 1084 if (addr->channel > IPMI_NUM_CHANNELS) { 1085 spin_lock_irqsave(&intf->counter_lock, flags); 1086 intf->sent_invalid_commands++; 1087 spin_unlock_irqrestore(&intf->counter_lock, flags); 1088 rv = -EINVAL; 1089 goto out_err; 1090 } addr->channel is used in 1092 if (intf->channels[addr->channel].medium Definitions involved: 221 struct ipmi_channel channels[IPMI_MAX_CHANNELS]; 134 #define IPMI_MAX_CHANNELS 8 In /linux-2.6.12-rc6/include/linux/ipmi.h 148 #define IPMI_NUM_CHANNELS 0x10 Signed-off-by: Zaur Kambarov Cc: Corey Minyard Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit a77e3362a224212d9d3b9e6fdec44df2eef6cf92 Author: KAMBAROV, ZAUR Date: Tue Jun 28 20:45:06 2005 -0700 [PATCH] coverity: i386: scsi_lib buffer overrun fix The check in 627 BUG_ON(index > SG_MEMPOOL_NR); with SG_MEMPOOL_NR defined in 32 #define SG_MEMPOOL_NR (sizeof(scsi_sg_pools)/sizeof(struct scsi_host_sg_pool)) was not sufficient. sgp, set in 629 sgp = scsi_sg_pools + index; is dereferenced in 630 mempool_free(sgl, sgp->pool); Signed-off-by: Zaur Kambarov Cc: Cc: James Bottomley Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit a8f5034540195307362d071a8b387226b410469f Author: KAMBAROV, ZAUR Date: Tue Jun 28 20:45:06 2005 -0700 [PATCH] coverity: i386: build.c: negative return to unsigned fix Variable "c" was declared as an unsigned int, but used in: 125 for (i=0 ; (c=read(fd, buf, sizeof(buf)))>0 ; i+=c ) 126 if (write(1, buf, c) != c) 127 die("Write call failed"); (akpm: read() can return -1. If it does, we fill the disk up with garbage). Signed-off-by: Zaur Kambarov Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 4cceb4d13abaedbd52e54053367c793ed4aedb6b Author: GOTO Masanori Date: Tue Jun 28 20:45:05 2005 -0700 [PATCH] headers: include linux/types.h for usb_ch9.h This patch for usb_ch9.h includes linux/types.h instead of asm/types.h so that __le16 and so on is explicitly defined. It also cleans up non standard // comment. Signed-off-by: GOTO Masanori Cc: Greg KH Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 3607d1dfc80dcfbd3a6f236c70aa0d8eb7292278 Author: GOTO Masanori Date: Tue Jun 28 20:45:04 2005 -0700 [PATCH] headers: include linux/compiler.h for __user This patch lets i2c-dev.h include linux/compiler.h so that __user is defined. Signed-off-by: GOTO Masanori Cc: Greg KH Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 12822bc272e857544476cef9175462711899008b Author: GOTO Masanori Date: Tue Jun 28 20:45:03 2005 -0700 [PATCH] headers: enable ppc64 ___arch__swab16 and ___arch__swab32 This patch cleans up asm-ppc64/byteorder.h to enable ___arch__swab16 and ___arch__swab32 which are marked TODO currently. It removes ___arch__swab64 because ppc64 does not have short instruction combinations for swab64, the recent gcc generates enough smart code that is equivalent to hand assembled code under my tests. Signed-off-by: GOTO Masanori Cc: Paul Mackerras Cc: Benjamin Herrenschmidt Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit c016e2257acd00a7ffd87fa1eec896138563d1aa Author: Sébastien Dugu Date: Tue Jun 28 20:44:59 2005 -0700 [PATCH] aio-retry-fix: fix aio retry work queueing In the case of buffered AIO, in the aio retry path (aio_run_iocb), when the retry method returns EIOCBRETRY the kicked iocb is added to the context run list but is never queued onto the work queue. The request therefore is never completed. This patch fixes that by adding the appropriate call to aio_queue_work in aio_run_aiocb so that subsequent retries will be handled by the aio worker thread. Signed-off-by: Sébastien Dugué Acked-by: Benjamin LaHaise Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 334a13ec3d01a1a4b4f2249735b793105cb4a519 Author: Christoph Hellwig Date: Tue Jun 28 20:44:58 2005 -0700 [PATCH] really remove xattr_acl.h Looks like it sneaked back with the NFS ACL merge.. Signed-off-by: Christoph Hellwig Cc: Trond Myklebust Cc: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit aade0e82739f4b24c5b952de68c8d794459ad531 Author: Adrian Bunk Date: Tue Jun 28 20:44:56 2005 -0700 [PATCH] drivers/isdn/: make some code static This patch makes some needlessly global code static. Signed-off-by: Adrian Bunk Signed-off-by: Armin Schindler Signed-off-by: Karsten Keil Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 687a21cee17000177b1935896b9b475acf136678 Author: Pekka J Enberg Date: Tue Jun 28 20:44:55 2005 -0700 [PATCH] rename wakeup_bdflush to wakeup_pdflush Signed-off-by: Pekka Enberg Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 05133fc498e788e1c1ca4e906f9e05d9779fd63b Author: Andrew Morton Date: Tue Jun 28 20:44:54 2005 -0700 [PATCH] swabb.h warning fixes In file included from drivers/media/dvb/ttpci/av7110_hw.c:38: include/linux/byteorder/swabb.h:96: warning: type qualifiers ignored on function return type include/linux/byteorder/swabb.h:110: warning: type qualifiers ignored on function return type In file included from drivers/media/dvb/ttpci/av7110_v4l.c:36: include/linux/byteorder/swabb.h:96: warning: type qualifiers ignored on function return type include/linux/byteorder/swabb.h:110: warning: type qualifiers ignored on function return type In file included from drivers/media/dvb/ttpci/av7110_av.c:37: include/linux/byteorder/swabb.h:96: warning: type qualifiers ignored on function return type include/linux/byteorder/swabb.h:110: warning: type qualifiers ignored on function return type drivers/isdn/icn/icn.c:719:4: warning: #warning TODO test headroom or use skb->nb to flag ACK In file included from drivers/media/dvb/ttpci/av7110_ca.c:39: include/linux/byteorder/swabb.h:96: warning: type qualifiers ignored on function return type include/linux/byteorder/swabb.h:110: warning: type qualifiers ignored on function return type In file included from drivers/media/dvb/ttpci/av7110.c:41: include/linux/byteorder/swabb.h:96: warning: type qualifiers ignored on function return type include/linux/byteorder/swabb.h:110: warning: type qualifiers ignored on function return type Does declaring a function to return a const value actually mean something to gcc? Dunno. Kill it and replace sone `__inline__'s with `inline' too. Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit b79646e3dd51b389b2a570b454f8e2fb7a613e37 Author: Andrew Morton Date: Tue Jun 28 20:44:53 2005 -0700 [PATCH] hisax warning fixes drivers/isdn/hisax/hfc4s8s_l1.c:317: warning: type qualifiers ignored on function return type drivers/isdn/hisax/hfc4s8s_l1.c:329: warning: type qualifiers ignored on function return type Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit b92eac01c3c6ad5dab5c74d3bc32ac8e9bf4dae7 Author: Stanislaw W. Gruszka Date: Tue Jun 28 20:44:51 2005 -0700 [PATCH] request_firmware(): avoid race conditions Avoid race occurs when some process have open file descriptor for class device attributes and already firmware allocated memory are freed. Don't allow negative loading timeout. Signed-off-by: Stanislaw W. Gruszka Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit bcc8ca09920755520ba8a1e2d9f72fe8ff892643 Author: Emmanuel Colbus Date: Tue Jun 28 20:44:49 2005 -0700 [PATCH] Adapt drivers/char/vt_ioctl.c to non-x86 This code uses the x86 (non-AMD-ELAN) value of CLOCK_TICK_RATE instead of CLOCK_TICK_RATE itself, which is wrong for other archs. Signed-off-by: Emmanuel Colbus Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit f01b1b0baa454825ed95c28d2a6a71bbf4510836 Author: Oleg Nesterov Date: Tue Jun 28 20:44:47 2005 -0700 [PATCH] ITIMER_REAL: fix possible deadlock and race As Steven Rostedt pointed out, there are 2 problems with ITIMER_REAL timers. 1. do_setitimer() does not call del_timer_sync() in case when the timer is not pending (it_real_value() returns 0). This is wrong, the timer may still be running, and it can rearm itself. 2. It calls del_timer_sync() with tsk->sighand->siglock held. This is deadlockable, because timer's handler needs this lock too. Signed-off-by: Oleg Nesterov Acked-by: Steven Rostedt Cc: Ingo Molnar Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit b36bbb6c3d5244eaf52241ec69f79494137f2db0 Author: Lennert Buytenhek Date: Tue Jun 28 20:44:46 2005 -0700 [PATCH] ixp4xx/ixp2000 watchdog driver typo Fix the same typo in the ixp4xx and ixp2000 watchdog drivers. Signed-off-by: Lennert Buytenhek Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 45ae36cbce9c7f55615e2b5f8faf23c7a06d0bd2 Author: Luc Van Oostenryck Date: Tue Jun 28 20:44:44 2005 -0700 [PATCH] drivers/char/tipar.c: off by one array access In the setup function, the delay variable is initialized with ints[2], but ints is declared as: int ints[2]; Since the module parameter should correspond to: tipar=timeout,delay I suppose that the following patch fix the problem. Signed-off-by: Luc Van Oostenryck Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 47f176fdaf8924bc83fddcf9658f2fd3ef60d573 Author: Luca Falavigna Date: Tue Jun 28 20:44:42 2005 -0700 [PATCH] Using msleep() instead of HZ Use msleep() in a few places. Signed-off-by: Luca Falavigna Acked-by: Ingo Molnar Acked-by: Jeff Garzik Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 8d451687ca57371d303c5554b377d7f5c2ac6ae0 Author: Wen-chien Jesse Sung Date: Tue Jun 28 20:44:41 2005 -0700 [PATCH] fix semaphore handling in __unregister_chrdev_region This up() should be down() instead. Signed-off-by: Wen-chien Jesse Sung Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 12dc2fdd3e6067f5137e4a6d8af0b1a994952f52 Author: David S. Miller Date: Tue Jun 28 16:27:32 2005 -0700 [NET]: drivers/net/slip.c needs linux/delay.h For msleep_interruptible(). Signed-off-by: David S. Miller commit 9666dae51013b064e7d77fc36b5cee98dd167ed5 Author: Patrick McHardy Date: Tue Jun 28 16:04:44 2005 -0700 [NETFILTER]: Fix connection tracking bug in 2.6.12 In 2.6.12 we started dropping the conntrack reference when a packet leaves the IP layer. This broke connection tracking on a bridge, because bridge-netfilter defers calling some NF_IP_* hooks to the bridge layer for locally generated packets going out a bridge, where the conntrack reference is no longer available. This patch keeps the reference in this case as a temporary solution, long term we will remove the defered hook calling. No attempt is made to drop the reference in the bridge-code when it is no longer needed, tc actions could already have sent the packet anywhere. Signed-off-by: Patrick McHardy Signed-off-by: David S. Miller commit bcd61272db5e643b6d9c01c9d5085b914d9f19df Author: Arnd Bergmann Date: Tue Jun 28 15:58:50 2005 -0700 [NET]: Add missing include to linux/netdevice.h linux/etherdevice.h can't be included standalone at the moment, which is required in order to sort the header files in the recommended alphabetic order. This patch fixes that and is needed to build spider_net. Signed-off-by: Arnd Bergmann Signed-off-by: David S. Miller commit ff593c592a5d674822dce31143635b025f6415b2 Author: Denis Vlasenko Date: Tue Jun 28 15:49:06 2005 -0700 [NET]: Micro optimization in eth_header() Signed-off-by: Denis Vlasenko Signed-off-by: David S. Miller commit 7fe40f73d7591b38f129fe6a9c0fa46e0b192d09 Author: YOSHIFUJI Hideaki Date: Tue Jun 28 15:46:24 2005 -0700 [IPV6]: remove more unused IPV6_AUTHHDR things. Remove two more unused IPV6_AUTHHDR option things, which I failed to remove them last time, plus, mark IPV6_AUTHHDR obsolete. Signed-off-by: YOSHIFUJI Hideaki Signed-off-by: David S. Miller commit fb3d89498d268c8dedc1ab5b15fa64f536564577 Author: Neil Horman Date: Tue Jun 28 15:40:02 2005 -0700 [IPVS]: Close race conditions on ip_vs_conn_tab list modification In an smp system, it is possible for an connection timer to expire, calling ip_vs_conn_expire while the connection table is being flushed, before ct_write_lock_bh is acquired. Since the list iterator loop in ip_vs_con_flush releases and re-acquires the spinlock (even though it doesn't re-enable softirqs), it is possible for the expiration function to modify the connection list, while it is being traversed in ip_vs_conn_flush. The result is that the next pointer gets set to NULL, and subsequently dereferenced, resulting in an oops. Signed-off-by: Neil Horman Acked-by: JulianAnastasov Signed-off-by: David S. Miller commit 689be43945e9ca7dd704522e55af1b8a73a994d3 Author: David S. Miller Date: Tue Jun 28 15:25:31 2005 -0700 [NET]: Remove gratuitous use of skb->tail in network drivers. Many drivers use skb->tail unnecessarily. In these situations, the code roughly looks like: dev = dev_alloc_skb(...); [optional] skb_reserve(skb, ...); ... skb->tail ... But even if the skb_reserve() happens, skb->data equals skb->tail. So it doesn't make any sense to use anything other than skb->data in these cases. Another case was the s2io.c driver directly mucking with the skb->data and skb->tail pointers. It really just wanted to do an skb_reserve(), so that's what the code was changed to do instead. Another reason I'm making this change as it allows some SKB cleanups I have planned simpler to merge. In those cleanups, skb->head, skb->tail, and skb->end pointers are removed, and replaced with skb->head_room and skb->tail_room integers. Signed-off-by: David S. Miller Acked-by: Jeff Garzik commit f835e471b557c45d2e5701ea5215f6e739b4eb39 Author: Robert Olsson Date: Tue Jun 28 15:00:39 2005 -0700 [IPV4]: Broken memory allocation in fib_trie This should help up the insertion... but the resize is more crucial. and complex and needs some thinking. Signed-off-by: Robert Olsson Signed-off-by: David S. Miller commit 7e568e62e9d4674d487cdc11f369e49e56ce6703 Merge: adb2705a89e8b41abcf29c0ed86f4ce93ab36734 50273978975ee62938b7ca612e281927cd789c13 Author: Linus Torvalds Date: Tue Jun 28 15:00:08 2005 -0700 Merge master.kernel.org:/home/rmk/linux-2.6-arm commit adb2705a89e8b41abcf29c0ed86f4ce93ab36734 Merge: f340c0d1a3f40fdcba69cd291530a4debc58748f 8644d2a42bdba2d513f71c07eaf1b6f9b718b8eb Author: Linus Torvalds Date: Tue Jun 28 14:59:07 2005 -0700 Merge master.kernel.org:/pub/scm/linux/kernel/git/gregkh/pci-2.6 commit f340c0d1a3f40fdcba69cd291530a4debc58748f Author: Ingo Molnar Date: Tue Jun 28 16:40:42 2005 +0200 [PATCH] Tweak idle thread setup semantics This patch tweaks idle thread setup semantics a bit: instead of setting NEED_RESCHED in init_idle(), we do an explicit schedule() before calling into cpu_idle(). This patch, while having no negative side-effects, enables wider use of cond_resched()s. (which might happen in the stock kernel too, but it's particulary important for voluntary-preempt) Signed-off-by: Ingo Molnar Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 082cf69eb82681f4eacb3a5653834c7970714bef Author: Jens Axboe Date: Tue Jun 28 16:35:11 2005 +0200 [PATCH] ll_rw_blk: prevent huge request allocations Currently we cap request allocations at q->nr_requests, but we allow a batching io context to allocate up to 32 more (default setting). This can flood the queue with request allocations, with only a few batching processes. The real fix would be to limit the number of batchers, but as that isn't currently tracked, I suggest we just cap the maximum number of allocated requests to eg 50% over the limit. This was observed in real life, users typically see this as vmstat bo numbers going off the wall with seconds of no queueing afterwards. Behaviour this bursty is not beneficial. Signed-off-by: Jens Axboe Signed-off-by: Linus Torvalds commit f8b58edf3acf0dcc186b8330939000ecf709368a Author: Neil Brown Date: Mon Jun 27 22:29:34 2005 -0700 [PATCH] md: bio leak fix insert a missing bio_put when writting the md superblock. Without this we have a steady growth in the "bio" slab. Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 314b6a4d80a7a5217c86ffdca926b6f406da0e0e Author: Alexey Dobriyan Date: Mon Jun 27 22:29:33 2005 -0700 [PATCH] kexec: fix sparse warnings Signed-off-by: Alexey Dobriyan Cc: Eric Biederman Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 97afa0a25afb43a82954662773a9d48d61b2996a Author: Andrew Morton Date: Mon Jun 27 22:29:31 2005 -0700 [PATCH] cciss_ioctl() warning fix Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 50273978975ee62938b7ca612e281927cd789c13 Author: Ben Dooks Date: Tue Jun 28 22:42:06 2005 +0100 [PATCH] ARM: 2763/1: S3C24XX - mark IRQ_LCD as valid Patch from Ben Dooks Fix the IRQ_LCD so that it is marked as valid since we no longer de-mux this in the main IRQ handler. Signed-off-by: Ben Dooks Signed-off-by: Russell King commit 2f85a42964dd43fed3a339701db046bee5a8b903 Author: Vlad Yasevich Date: Tue Jun 28 13:24:23 2005 -0700 [SCTP] Make init & delayed sack timeouts configurable by user. Signed-off-by: Vlad Yasevich Signed-off-by: Sridhar Samudrala Signed-off-by: David S. Miller commit 7a1af5d7bb94af16b980a53330436b9fadc12435 Author: Maxime Bizon Date: Tue Jun 28 13:21:12 2005 -0700 [IPV4]: ipconfig.c: fix dhcp timeout behaviour I think there is a small bug in ipconfig.c in case IPCONFIG_DHCP is set and dhcp is used. When a DHCPOFFER is received, ip address is kept until we get DHCPACK. If no ack is received, ic_dynamic() returns negatively, but leaves the offered ip address in ic_myaddr. This makes the main loop in ip_auto_config() break and uses the maybe incomplete configuration. Not sure if it's the best way to do, but the following trivial patch correct this. Signed-off-by: Maxime Bizon Signed-off-by: David S. Miller commit 2c2910a401f1ce2ac9136171e7522e731e1a2a8c Author: Dietmar Eggemann Date: Tue Jun 28 13:06:23 2005 -0700 [IPV4]: Snmpv2 Mib IP counter ipInAddrErrors support I followed Thomas' proposal to see every martian destination as a case where the ipInAddrErrors counter has to be incremented. There are two advantages by doing so: (1) The relation between the ipInReceive counter and all the other ipInXXX counters is more accurate in the case the RTN_UNICAST code check fails and (2) it makes the code in ip_route_input_slow easier. Signed-off-by: Dietmar Eggemann Signed-off-by: David S. Miller commit f2be64b3b15f52ceb83ff26abc10705a31ae5352 Author: Tony Lindgren Date: Tue Jun 28 21:01:16 2005 +0100 [PATCH] ARM: 2760/1: Add a warning on dynamic tick timekeeping on some platforms Patch from Tony Lindgren This patch was suggested by RMK, and adds a warning on the accuracy of timekeeping when using dynamic tick on some platforms. Depending on the timer implementation, dynamic tick may affect the accuracy of timekeeping. Currently at least OMAP is known to have accurate timekeeping with dynamic tick. Signed-off-by: Tony Lindgren Signed-off-by: Russell King commit 072cd703b6a2a3adc14fbc2d969424c7022a7892 Author: Ben Dooks Date: Tue Jun 28 21:01:03 2005 +0100 [PATCH] ARM: 2762/1: S3C24XX Audio platform data Patch from Ben Dooks This provides the s3c24xx audio platform data which can be supplied from any of the board specific drivers. Signed-off-by: Ben Dooks Signed-off-by: Russell King commit fa0ebff62a8a25952a082641db0ed6b1cfc6c38c Author: Richard Purdie Date: Tue Jun 28 21:01:03 2005 +0100 [PATCH] ARM: 2761/1: OProfile: Add call graphing support for arm Patch from Richard Purdie Add functions to generate backtraces of both kernel and user processes which allows oprofile's call graphing functionality to be used on arm. This requires unstripped binaries/libs which use a frame pointer. Signed-off-by: Richard Purdie Signed-off-by: Zwane Mwaikambo Signed-off-by: Russell King commit ae9cda5d65f3d8a495241cbdcc2d56f721c83cc3 Author: YOSHIFUJI Hideaki Date: Tue Jun 28 13:00:30 2005 -0700 [IPV6]: Don't dump temporary addresses twice Each IPv6 Temporary Address (w/ CONFIG_IPV6_PRIVACY) is dumped twice to netlink. Because temporary addresses are listed in idev->addr_list, there's no need to dump idev->tempaddr separately. Signed-off-by: YOSHIFUJI Hideaki Signed-off-by: David S. Miller commit 8a47077a0b5aa2649751c46e7a27884e6686ccbf Author: Patrick McHardy Date: Tue Jun 28 12:56:45 2005 -0700 [NETLINK]: Missing padding fields in dumped structures Plug holes with padding fields and initialized them to zero. Signed-off-by: Patrick McHardy Signed-off-by: David S. Miller commit 9ef1d4c7c7aca1cd436612b6ca785b726ffb8ed8 Author: Patrick McHardy Date: Tue Jun 28 12:55:30 2005 -0700 [NETLINK]: Missing initializations in dumped data Mostly missing initialization of padding fields of 1 or 2 bytes length, two instances of uninitialized nlmsgerr->msg of 16 bytes length. Signed-off-by: Patrick McHardy Signed-off-by: David S. Miller commit b3563c4fbff906991a1b4ef4609f99cca2a0de6a Author: Patrick McHardy Date: Tue Jun 28 12:54:43 2005 -0700 [NETLINK]: Clear padding in netlink messages Signed-off-by: Patrick McHardy Signed-off-by: David S. Miller commit 4095ebf1e641b0f37ee1cd04c903bb85cf4ed25b Author: Harald Welte Date: Tue Jun 28 12:49:30 2005 -0700 [NETFILTER]: ipt_CLUSTERIP: fix ARP mangling This patch adds mangling of ARP requests (in addition to replies), since ARP caches are made from snooping both requests and replies. Signed-off-by: Harald Welte Signed-off-by: David S. Miller commit 85c1937b2693a0d4e39bb2644d720ed3703b9830 Author: David S. Miller Date: Tue Jun 28 12:39:40 2005 -0700 [EBTABLES]: Fix thinkos in ebt_log.c When converting over the skb_header_pointer(), I converted parts of this module incorrectly. Kill the 'u' union in ebt_log() and all the bogus references to it. Signed-off-by: David S. Miller commit 61998bcb4bf0efa0276e88c7853091e482a826f4 Merge: c36ad397a30fcf9369d82584324cc24189eb6b1c 0a139e79976b9eb60517edec63406236a789f812 Author: Linus Torvalds Date: Tue Jun 28 10:20:11 2005 -0700 Merge head 'upstream-20050628-1' of rsync://rsync.kernel.org/pub/scm/linux/kernel/git/jgarzik/libata-dev commit 8644d2a42bdba2d513f71c07eaf1b6f9b718b8eb Merge: 1cde8a16815bd85c8137d1ea556398983c597c11 99f95e5286df2f69edab8a04c7080d986ee4233b Author: Greg KH Date: Mon Jun 27 22:07:56 2005 -0700 Merge rsync://rsync.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6 commit 1cde8a16815bd85c8137d1ea556398983c597c11 Author: Greg Kroah-Hartman Date: Thu Jun 23 17:35:56 2005 -0700 [PATCH] PCI: use the MCFG table to properly access pci devices (x86-64) Now that we have access to the whole MCFG table, let's properly use it for all pci device accesses (as that's what it is there for, some boxes don't put all the busses into one entry.) If, for some reason, the table is incorrect, we fallback to the "old style" of mmconfig accesses, namely, we just assume the first entry in the table is the one for us, and blindly use it. Signed-off-by: Greg Kroah-Hartman commit d57e26ceb7dbf44cd08128cb6146116d4281b58b Author: Greg Kroah-Hartman Date: Thu Jun 23 17:35:56 2005 -0700 [PATCH] PCI: use the MCFG table to properly access pci devices (i386) Now that we have access to the whole MCFG table, let's properly use it for all pci device accesses (as that's what it is there for, some boxes don't put all the busses into one entry.) If, for some reason, the table is incorrect, we fallback to the "old style" of mmconfig accesses, namely, we just assume the first entry in the table is the one for us, and blindly use it. Signed-off-by: Greg Kroah-Hartman commit 545493917dc90298e1c38f018ad893f5518928e7 Author: Greg Kroah-Hartman Date: Thu Jun 23 17:35:56 2005 -0700 [PATCH] PCI: add proper MCFG table parsing to ACPI core. This patch is the first step in properly handling the MCFG PCI table. It defines the structures properly, and saves off the table so that the pci mmconfig code can access it. It moves the parsing of the table a little later in the boot process, but still before the information is needed. Signed-off-by: Greg Kroah-Hartman commit d18c3db58bc544fce6662ca7edba616ca9788a70 Author: Greg Kroah-Hartman Date: Thu Jun 23 17:35:56 2005 -0700 [PATCH] PCI: make drivers use the pci shutdown callback instead of the driver core callback. Now we can change the pci core to always set this pointer, as pci drivers should use it, not the driver core callback. Signed-off-by: Greg Kroah-Hartman commit 4002307d2b563a6ab317ca4d7eb1d201a6673d37 Author: Keith Moore Date: Thu Jun 2 12:42:37 2005 +0200 [PATCH] cpqphp: fix oops during unload without probe drivers/pci/hotplug/cpqphp_core.c calls cpqphp_event_start_thread() in one_time_init(), which is called whenever the hardware is probed. Unfortunately, cpqphp_event_stop_thread() is *always* called when the module is unloaded. If the hardware is never probed, then cpqphp_event_stop_thread() tries to manipulate a couple of uninitialized mutexes. Signed-off-by: Keith Moore Signed-off-by: Greg Kroah-Hartman commit 70549ad9cf074e12f12cdc931b29b2616dfb873a Author: Greg Kroah-Hartman Date: Mon Jun 6 23:07:46 2005 -0700 [PATCH] PCI: clean up the MSI code a bit. Mostly just cleans up the irq handling logic to be smaller and a bit more descriptive as to what it really does. Signed-off-by: Greg Kroah-Hartman commit bb4a61b6eaee01707f24deeefc5d7136f25f75c5 Author: Andrew Morton Date: Mon Jun 6 23:07:46 2005 -0700 [PATCH] PCI: fix up errors after dma bursting patch and CONFIG_PCI=n With CONFIG_PCI=n: In file included from include/linux/pci.h:917, from lib/iomap.c:6: include/asm/pci.h:104: warning: `enum pci_dma_burst_strategy' declared inside parameter list include/asm/pci.h:104: warning: its scope is only this definition or declaration, which is probably not what you want. include/asm/pci.h: In function `pci_dma_burst_advice': include/asm/pci.h:106: dereferencing pointer to incomplete type include/asm/pci.h:106: `PCI_DMA_BURST_INFINITY' undeclared (first use in this function) include/asm/pci.h:106: (Each undeclared identifier is reported only once include/asm/pci.h:106: for each function it appears in.) make[1]: *** [lib/iomap.o] Error 1 Signed-off-by: Andrew Morton Signed-off-by: Greg Kroah-Hartman commit e24c2d963a604d9eaa560c90371fa387d3eec8f1 Author: David S. Miller Date: Thu Jun 2 12:55:50 2005 -0700 [PATCH] PCI: DMA bursting advice After seeing, at best, "guesses" as to the following kind of information in several drivers, I decided that we really need a way for platforms to specifically give advice in this area for what works best with their PCI controller implementation. Basically, this new interface gives DMA bursting advice on PCI. There are three forms of the advice: 1) Burst as much as possible, it is not necessary to end bursts on some particular boundary for best performance. 2) Burst on some byte count multiple. A DMA burst to some multiple of number of bytes may be done, but it is important to end the burst on an exact multiple for best performance. The best example of this I am aware of are the PPC64 PCI controllers, where if you end a burst mid-cacheline then chip has to refetch the data and the IOMMU translations which hurts performance a lot. 3) Burst on a single byte count multiple. Bursts shall end exactly on the next multiple boundary for best performance. Sparc64 and Alpha's PCI controllers operate this way. They disconnect any device which tries to burst across a cacheline boundary. Actually, newer sparc64 PCI controllers do not have this behavior. That is why the "pdev" is passed into the interface, so I can add code later to check which PCI controller the system is using and give advice accordingly. Signed-off-by: David S. Miller Signed-off-by: Greg Kroah-Hartman commit 2311b1f2bbd36fa5f366a7448c718b2556e0f02c Author: Michael Ellerman Date: Fri May 13 17:44:10 2005 +1000 [PATCH] PCI: fix-pci-mmap-on-ppc-and-ppc64.patch This is an updated version of Ben's fix-pci-mmap-on-ppc-and-ppc64.patch which is in 2.6.12-rc4-mm1. It fixes the patch to work on PPC iSeries, removes some debug printks at Ben's request, and incorporates your fix-pci-mmap-on-ppc-and-ppc64-fix.patch also. Originally from Benjamin Herrenschmidt This patch was discussed at length on linux-pci and so far, the last iteration of it didn't raise any comment. It's effect is a nop on architecture that don't define the new pci_resource_to_user() callback anyway. It allows architecture like ppc who put weird things inside of PCI resource structures to convert to some different value for user visible ones. It also fixes mmap'ing of IO space on those archs. Signed-off-by: Benjamin Herrenschmidt Signed-off-by: Michael Ellerman Signed-off-by: Andrew Morton Signed-off-by: Greg Kroah-Hartman commit a0d399a808916d22c1c222c6b5ca4e8edd6d91a9 Author: Kenji Kaneshige Date: Thu Apr 28 00:25:59 2005 -0700 [PATCH] ACPI based I/O APIC hot-plug: acpiphp support This patch adds PCI based I/O xAPIC hot-add support to ACPIPHP driver. When PCI root bridge is hot-added, all PCI based I/O xAPICs under the root bridge are hot-added by this patch. Hot-remove support is TBD. Signed-off-by: Kenji Kaneshige Signed-off-by: Andrew Morton Signed-off-by: Greg Kroah-Hartman commit 0e888adc41ffc02b700ade715c182a17e766af84 Author: Kenji Kaneshige Date: Thu Apr 28 00:25:58 2005 -0700 [PATCH] ACPI based I/O APIC hot-plug: ia64 support This is an ia64 implementation of acpi_register_ioapic() and acpi_unregister_ioapic() interfaces. Signed-off-by: Kenji Kaneshige Signed-off-by: Andrew Morton Signed-off-by: Greg Kroah-Hartman commit b1bb248a5d2230a3d8ef42199c742194a8580b15 Author: Kenji Kaneshige Date: Thu Apr 28 00:25:58 2005 -0700 [PATCH] ACPI based I/O APIC hot-plug: add interfaces This patch adds the following new interfaces for I/O xAPIC hotplug. The implementation of these interfaces depends on each architecture. o int acpi_register_ioapic(acpi_handle handle, u64 phys_addr, u32 gsi_base); This new interface is to add a new I/O xAPIC specified by phys_addr and gsi_base pair. phys_addr is the physical address to which the I/O xAPIC is mapped and gsi_base is global system interrupt base of the I/O xAPIC. acpi_register_ioapic returns 0 on success, or negative value on error. o int acpi_unregister_ioapic(acpi_handle handle, u32 gsi_base); This new interface is to remove a I/O xAPIC specified by gsi_base. acpi_unregister_ioapic returns 0 on success, or negative value on error. Signed-off-by: Kenji Kaneshige Signed-off-by: Andrew Morton Signed-off-by: Greg Kroah-Hartman commit 8d50e332c8bd4f4e8cc76e8ed7326aa6f18182aa Author: Rajesh Shah Date: Thu Apr 28 00:25:57 2005 -0700 [PATCH] acpi hotplug: decouple slot power state changes from physical hotplug Current acpiphp code does not distinguish between the physical presence and power state of a device/slot. That is, if a device has to be disabled, it also tries to physically ejects the device. This patch decouples power state from physical presence. You can now echo to the corresponding sysfs power control file to repeatedly enable and disable a device without having to physically re-insert it. Signed-off-by: Rajesh Shah Signed-off-by: Andrew Morton Signed-off-by: Greg Kroah-Hartman commit 8e7561cfbdf00fb1cee694cef0e825d0548aedbc Author: Rajesh Shah Date: Thu Apr 28 00:25:56 2005 -0700 [PATCH] acpi hotplug: aCPI based root bridge hot-add acpiphp changes to support acpi based root bridge hot-add. Signed-off-by: Rajesh Shah Signed-off-by: Andrew Morton Signed-off-by: Greg Kroah-Hartman commit 2f523b15901f654a9448bbd47ebe1e783ec3195b Author: Rajesh Shah Date: Thu Apr 28 00:25:55 2005 -0700 [PATCH] acpi hotplug: fix slot power-down problem with acpiphp Earlier I reported that Matthew's acpiphp rewrite had problem in powering down slot on my i386 system. The following patch is needed to get the acpiphp rewrite properly powering down the slot. Signed-off-by: Dely Sy Signed-off-by: Andrew Morton Signed-off-by: Greg Kroah-Hartman commit 364d5094a43ff2ceff3d19e40c4199771cb6cb8f Author: Rajesh Shah Date: Thu Apr 28 00:25:54 2005 -0700 [PATCH] acpi hotplug: clean up notify handlers on acpiphp unload A root bridge may not have directly attached hotpluggable slots under it. Instead, it may have p2p bridges with slots under it. In this case, we need to clean up the p2p bridges and slots properly too. Patch below applies on top of the original patch, and fixes this problem. Without this, acpiphp leaves behind notify handlers on module unload, and subsequent module load attempts don't work properly too. Patch was tested on an ia64 Tiger4 box. Signed-off-by: Rajesh Shah Signed-off-by: Andrew Morton Signed-off-by: Greg Kroah-Hartman commit 42f49a6ae5dca90cd0594475502bf1c43ff1dc07 Author: Rajesh Shah Date: Thu Apr 28 00:25:53 2005 -0700 [PATCH] acpi hotplug: convert acpiphp to use generic resource code This patch converts acpiphp to use the generic PCI resource assignment code. It's quite large, but most of it is deleting the acpiphp_pci and acpiphp_res files. It's tested on an hp Integrity rx8620 (which won't work without this patch). Testers with other hardware welcomed. Signed-off-by: Matthew Wilcox Signed-off-by: Andrew Morton Signed-off-by: Greg Kroah-Hartman commit 4ce448e5fae62689b06027b46f470b944e5c2193 Author: Rajesh Shah Date: Thu Apr 28 00:25:53 2005 -0700 [PATCH] acpi bridge hotadd: Export the interface to get PCI id for an ACPI handle Export an acpi interface to get PCI domain/bus/devfn information from the corresponding namespace handle. Used by acpiphp code to transpate the device handle of the hot-plugged root bridge to the corresponding pci location information. Signed-off-by: Rajesh Shah Signed-off-by: Andrew Morton Signed-off-by: Greg Kroah-Hartman commit 3fb02738b0fd36f47710a2bf207129efd2f5daa2 Author: Rajesh Shah Date: Thu Apr 28 00:25:52 2005 -0700 [PATCH] acpi bridge hotadd: Allow ACPI .add and .start operations to be done independently Create new interfaces to recursively add an acpi namespace object to the acpi device list, and recursively start the namespace object. This is needed for ACPI based hotplug of a root bridge hierarchy where the add operation must be performed first and the start operation must be performed separately after the hot-plugged devices have been properly configured. Signed-off-by: Rajesh Shah Signed-off-by: Andrew Morton Signed-off-by: Greg Kroah-Hartman commit f7d473d919627262816459f8dba70d72812be074 Author: Rajesh Shah Date: Thu Apr 28 00:25:51 2005 -0700 [PATCH] acpi bridge hotadd: Read bridge resources when fixing up the bus Read bridge io/mem/pfmem ranges when fixing up the bus so that bus resources are tracked. This is required to properly support pci end device and bridge hotplug. Signed-off-by: Rajesh Shah Signed-off-by: Andrew Morton Signed-off-by: Greg Kroah-Hartman commit 542df5de56a23bf2d94b75e2b304ab0e5a5508a8 Author: Rajesh Shah Date: Thu Apr 28 00:25:50 2005 -0700 [PATCH] acpi bridge hotadd: Remove hot-plugged devices that could not be allocated resources When hot-plugging an I/O hierarchy that contains many bridges and leaf devices, it's possible that there are not enough resources to start all the device present. If we fail to assign a resource, clear the corresponding value in the pci_dev structure, so other code can take corrective action. Signed-off-by: Rajesh Shah Signed-off-by: Andrew Morton Signed-off-by: Greg Kroah-Hartman commit 091ca9f06382e46d77213c35a97f7d0be9e350d2 Author: Rajesh Shah Date: Thu Apr 28 00:25:49 2005 -0700 [PATCH] acpi bridge hotadd: Make the PCI remove routines safe for failed hot-plug When a root bridge hierarchy is hot-plugged, resource requirements for the new devices may be greater than what the root bridge is decoding. In this case, we want to remove devices that did not get needed resources. These devices have been scanned into bus specific lists but not yet added to the global device list. Make sure the pci remove functions can handle this case. Signed-off-by: Rajesh Shah Signed-off-by: Andrew Morton Signed-off-by: Greg Kroah-Hartman commit 6ef6f0e33c4645fc8d23201ad5a6a289b4303cbb Author: Rajesh Shah Date: Thu Apr 28 00:25:49 2005 -0700 [PATCH] acpi bridge hotadd: Link newly created pci child bus to its parent on creation When a pci child bus is created, add it to the parent's children list immediately rather than waiting till pci_bus_add_devices(). For hot-plug bridges/devices, pci_bus_add_devices() may be called much later, after they have been properly configured. In the meantime, this allows us to use the normal pci bus search functions for the hot-plug bridges/buses. Signed-off-by: Rajesh Shah Signed-off-by: Andrew Morton Signed-off-by: Greg Kroah-Hartman commit e4ea9bb7e9f177e03a917b1f1213de0315f819ee Author: Rajesh Shah Date: Thu Apr 28 00:25:48 2005 -0700 [PATCH] acpi bridge hotadd: Take the PCI lock when modifying pci bus or device lists With root bridge and pci bridge hot-plug, new buses and devices can be added or removed at run time. Protect the pci bus and device lists with the pci lock when doing so. Signed-off-by: Rajesh Shah Signed-off-by: Andrew Morton Signed-off-by: Greg Kroah-Hartman commit cc57450f5c044270d2cf1dd437c1850422262109 Author: Rajesh Shah Date: Thu Apr 28 00:25:47 2005 -0700 [PATCH] acpi bridge hotadd: Prevent duplicate bus numbers when scanning PCI bridge When hot-plugging a root bridge, as we try to assign bus numbers we may find that the hotplugged hieratchy has more PCI to PCI bridges (i.e. bus requirements) than available. Make sure we don't step over an existing bus when that happens. Signed-off-by: Rajesh Shah Signed-off-by: Andrew Morton Signed-off-by: Greg Kroah-Hartman commit 71c3511c22e8e0648094672abec898b3bf84c18b Author: Rajesh Shah Date: Thu Apr 28 00:25:46 2005 -0700 [PATCH] acpi bridge hotadd: Make pcibios_fixup_bus() hot-plug safe PCI scan code calls the arch specific pcibios_fixup_bus() each time it scans a new bridge. For root bridge hot-plug, the bridge and it's attached devices may not have been configured properly yet, so it's not safe to claim those resources at this time. This code goes away when we clean up the way pci resources are claimed (in pci_enable_device()), so this is only a stopgap fix. Signed-off-by: Rajesh Shah Signed-off-by: Andrew Morton Signed-off-by: Greg Kroah-Hartman commit fab3fb0ac8c83072465b28ca859c420da6c6511c Author: Rajesh Shah Date: Thu Apr 28 00:25:45 2005 -0700 [PATCH] acpi bridge hotadd: Fix pci_enable_device() for p2p bridges When checking if a PCI to PCI bridge should be enabled to decode memory and/or IO resources, we need to look at all device resources not just the first 6. This is needed to allow PCI bridges to pass down memory and IO accesses to child devices even when the bridge itself does not consume resources in its PCI BARs. Signed-off-by: Rajesh Shah Signed-off-by: Andrew Morton Signed-off-by: Greg Kroah-Hartman commit c431ada45d65b305a6aab4557067e564b23ce5a5 Author: Rajesh Shah Date: Thu Apr 28 00:25:45 2005 -0700 [PATCH] acpi bridge hotadd: ACPI based root bridge hot-add When you hot-plug a (root) bridge hierarchy, it may have p2p bridges and devices attached to it that have not been configured by firmware. In this case, we need to configure the devices before starting them. This patch separates device start from device scan so that we can introduce the configuration step in the middle. I kept the existing semantics for pci_scan_bus() since there are a huge number of callers to that function. Also, I have no way of testing the changes I made to the parisc files, so this needs review by those folks. Sorry for the massive cross-post, this touches files in many different places. Signed-off-by: Rajesh Shah Signed-off-by: Andrew Morton Signed-off-by: Greg Kroah-Hartman commit efe1ec27837d6639eae82e1f5876910ba6433c3f Author: Amit Gud Date: Tue Apr 12 19:04:27 2005 +0530 [PATCH] pci: remove deprecates Replace pci_find_device() with more safer pci_get_device(). Signed-off-by: Amit Gud Signed-off-by: Greg Kroah-Hartman commit 881a8c120acf7ec09c90289e2996b7c70f51e996 Author: Amit Gud Date: Tue Apr 12 19:03:33 2005 +0530 [PATCH] pci: remove deprecates Replace pci_find_device() with more safer pci_get_device(). Signed-off-by: Amit Gud Signed-off-by: Greg Kroah-Hartman commit 120bb4246a99cc6e9cc976573fcbcd0ee9d544ef Author: jayalk@intworks.biz Date: Mon Mar 21 20:20:42 2005 -0800 [PATCH] PCI Allow OutOfRange PIRQ table address I updated this to remove unnecessary variable initialization, make check_routing be inline only and not __init, switch to strtoul, and formatting fixes as per Randy Dunlap's recommendations. I updated this to change pirq_table_addr to a long, and to add a warning msg if the PIRQ table wasn't found at the specified address, as per thread with Matthew Wilcox. In our hardware situation, the BIOS is unable to store or generate it's PIRQ table in the F0000h-100000h standard range. This patch adds a pci kernel parameter, pirqaddr to allow the bootloader (or BIOS based loader) to inform the kernel where the PIRQ table got stored. A beneficial side-effect is that, if one's BIOS uses a static address each time for it's PIRQ table, then pirqaddr can be used to avoid the $pirq search through that address block each time at boot for normal PIRQ BIOSes. Signed-off-by: Jaya Kumar Signed-off-by: Greg Kroah-Hartman commit c36ad397a30fcf9369d82584324cc24189eb6b1c Merge: c903e41e67046e7f52bbc404bd5aa654d12540cc 99f95e5286df2f69edab8a04c7080d986ee4233b Author: Jeff Garzik Date: Tue Jun 28 00:46:22 2005 -0400 Merge /spare/repo/linux-2.6/ commit 0a139e79976b9eb60517edec63406236a789f812 Author: Tejun Heo Date: Sun Jun 26 23:52:50 2005 +0900 [PATCH] libata: ahci: remove ata_port_start/stop() calls This patch removes unnecessary ata_port_start/stop() calls from ahci_port_start/stop(). Signed-off-by: Tejun Heo commit 62ba2841f2a51848f7cb0499edae3f6803764f2c Author: Tejun Heo Date: Sun Jun 26 23:27:19 2005 +0900 [PATCH] libata: lengthen COMMRESET delay This patch lengthens the delay between DET setting and clearing for COMMRESET from 400us to 1ms. I couldn't find any requiremen regarding the duration of COMMRESET in SATA I/II specs but AHCI-1.1 10.4.2 states that it should be at least 1ms. Signed-off-by: Tejun Heo commit e922256ae4bb6ef954bd7e0740d9753460e0ab72 Author: Jeff Garzik Date: Tue Jun 28 00:03:37 2005 -0400 libata: update DMA blacklist Contributions from Alan Cox and maximilian attems. commit 99f95e5286df2f69edab8a04c7080d986ee4233b Author: Andrew Morton Date: Mon Jun 27 20:14:05 2005 -0700 [PATCH] cfq build fix drivers/block/cfq-iosched.c: In function 'cfq_put_queue': drivers/block/cfq-iosched.c:303: sorry, unimplemented: inlining failed in call to 'cfq_pending_requests': function body not available drivers/block/cfq-iosched.c:1080: sorry, unimplemented: called from here drivers/block/cfq-iosched.c: In function '__cfq_may_queue': drivers/block/cfq-iosched.c:1955: warning: the address of 'cfq_cfqq_must_alloc_slice', will always evaluate as 'true' make[1]: *** [drivers/block/cfq-iosched.o] Error 1 make: *** [drivers/block/cfq-iosched.o] Error 2 Cc: Jeff Garzik Cc: Jens Axboe Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit c903e41e67046e7f52bbc404bd5aa654d12540cc Author: Komuro Date: Mon Jun 27 23:23:05 2005 -0400 drivers/net/at1700: remove incorrect comment "Allied Telesis RE1000 Plus" is not supported at all by kernel 2.6.12. Signed-off-by: komurojun-mbn@nifty.com commit 8b2af8f0ca807eb13b59dc5961d2e99fc2b1bd87 Author: Edward Falk Date: Wed Jun 15 14:26:39 2005 -0700 [PATCH] Minor libata documentation patch I fleshed out libata.tmpl a bit while I was taking notes. commit 6e5a32754c67f0d156c2f196d604b2e9129a1fd5 Merge: b6d00f0de9e932e2884b3b7af8e43c0a61a271ee 63b614522cba5a015923c0e8f284be6e01c13f1a Author: Linus Torvalds Date: Mon Jun 27 20:10:18 2005 -0700 Merge rsync://rsync.kernel.org/pub/scm/linux/kernel/git/davem/sparc-2.6 commit cac8c81a59bd3b6815871b3172e8ccf15a3431e0 Author: Tobias Klauser Date: Mon May 16 19:15:11 2005 +0200 [PATCH] Use pci_set_dma_mask() instead of direct assignment of DMA mask The amd8111e driver directly assigns the DMA mask to the dma_mask member of the struct pci_dev instead of using pci_set_dma_mask(). This makes the call to pci_dma_supported() redundant as pci_set_dma_mask() does this check. I do not own this device so I only compile-tested this patch. Signed-off-by: Tobias Klauser commit 5f13e7ec5c1d98f4a63a3a79e66b2b121051f5ac Author: David Brownell Date: Mon May 16 08:53:52 2005 -0700 [PATCH] smc91x needs settable IRQ trigger type For boards that invert the SMC91x IRQ line (maybe an FPGA inverts it), the set_irq_type() call can't assume IRQT_RISING. These particular boards currently use OMAP-specific calls to change the trigger type, but the boards break when set_irq_type() stops being a NOP. Signed-off-by: David Brownell commit a5fe736eaf9bae1b45317313de04b564441b94f2 Author: Jeff Garzik Date: Mon Jun 27 22:47:18 2005 -0400 Update is_multicast_ether_addr() definition; net/ieee80211.h cleanups. commit 1bad3f4050b2a641bbfeaddb2717b28247311e9c Merge: 747802ab478399f13ff57751c2ebd22577be4eeb c7b645f934e52a54af58142d91fb51f881f8ce26 Author: Jeff Garzik Date: Mon Jun 27 22:05:03 2005 -0400 Merge /spare/repo/linux-2.6/ commit b6d00f0de9e932e2884b3b7af8e43c0a61a271ee Author: Dominik Brodowski Date: Mon Jun 27 16:29:02 2005 -0700 [PATCH] ACPI-based PCI resources: PCMCIA bugfix, but resources missing in trees Don't auto-configure yenta sockets for PCMCIA devices if it is connected to the root PCI bus on the x86 or x86_64 architectures. Previously, this was handled by the "ioport_resource"/"iomem_resource" check a few lines below, but with the new ACPI-based resource handling this doesn't catch all cases any longer. pci-yenta-cardbus-fix.patch and this patch should solve the initialization time trouble. However, the ACPI-based PCI resource handling is badly broken, IMHO: - many resources of devices don't show up in the resource trees ( /proc/iomem and /proc/ioports) any longer. This means that PCMCIA, but also possibly other subsystems (ISA, PnP, ...) do not know which resources it cannot use. - verify_root_windows() should fail if there are no iomem _or_ ioport resources, not only if there are no iomem _and_ ioport resources. Signed-off-by: Dominik Brodowski Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 3248ff43f86493368b321376d447d84fa9a2737d Author: Dominik Brodowski Date: Mon Jun 27 16:29:01 2005 -0700 [PATCH] pcmcia: export modalias in sysfs Provide a "modalias" entry in sysfs for PCMCIA devices. Signed-off-by: Dominik Brodowski Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 57b6281cea59639cce995745f1dc42fe9da2c533 Author: Dominik Brodowski Date: Mon Jun 27 16:29:01 2005 -0700 [PATCH] pcmcia: 8 and 16 bit access for static_map The PCMCIA card services layer is never setting the i/o map attributes when SS_CAP_STATIC_MAP is specified. Net result, sockets' set_io_map() calls always see requests with most flags clear, meaning 8 bit access. For hardware that always autosizes, that won't matter; and all current STATIC_MAP drivers ignore those attributes. A new driver (for at91rm9200) suffers badly from this, since this forces everything into 8 bit mode and that breaks both (a) cards requiring 16 bit access, and (b) ide-cs; but of course 8-bit cards work OK (as does accessing card attributes). So this patch arranges to pass the attributes down, matching the behavior for non-static mappings (using the first/only I/O window). Signed-off-by: David Brownell Signed-off-by: Dominik Brodowski Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 1a8ceafce5f1e68c28c7ba52fd7e72ab0008eb46 Author: Dominik Brodowski Date: Mon Jun 27 16:29:00 2005 -0700 [PATCH] pcmcia: properly handle all errors of register_chrdev register_chrdev() can return errors (negative) other then -EBUSY, so check for any negative error code. Signed-off-by: Randy Dunlap Signed-off-by: Dominik Brodowski Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit a9a55243d4a5f41b0035d36457b87463aa232807 Author: Jar Date: Mon Jun 27 16:28:58 2005 -0700 [PATCH] pcmcia: documentation fix Fix example hash generator in Documentation. Signed-off-by: Dominik Brodowski Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 2ad0a0a793cbd87a87488d59abc744374669498f Author: Dominik Brodowski Date: Mon Jun 27 16:28:58 2005 -0700 [PATCH] pcmcia: resource handling fixes - properly bail out in set_cis_map if call to socket driver's set_mem_map failed - don't abort do_mem_probe cycle if one entry failed (!CONFIG_PCMCIA_PROBE) - don't do iomem probing in chunks larger than 0x800000 (1 << 23) as yenta_socket and vrc4173_cardu.c fail to set_mem_map for windows equal to or larger than (1 << 24). Signed-off-by: Dominik Brodowski Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit f861bd23076efc4c86063721b9021d82481fd6b2 Author: Dominik Brodowski Date: Mon Jun 27 16:28:57 2005 -0700 [PATCH] pcmcia: select crc32 in Kconfig for PCMCIA PCMCIA needs CRC32. Signed-off-by: Dominik Brodowski Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit aecab27aeabaa897d69fc082686df314329830de Author: Dominik Brodowski Date: Mon Jun 27 16:28:56 2005 -0700 [PATCH] pcmcia: mod_devicetable.h fix for different sizes in kernel- and userspace The size of pointers may differ between (userspace) modpost and (kernelspace) modules -- so fix mod_devicetable.h to reflect this possibility. Signed-off-by: Dominik Brodowski Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 0c7ab67602e65b3ba7aaa81f023b034cd7458ec6 Author: Dominik Brodowski Date: Mon Jun 27 16:28:56 2005 -0700 [PATCH] pcmcia: synclink_cs IRQ_INFO2_INFO is gone Remove the IRQ_INFO2_VALID flag in synclink_cs -- I overlooked it when removing all other users in PCMCIA drivers for 2.6.11. Thanks to Marcelo Tosatti for noticing it. Signed-off-by: Dominik Brodowski Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit f354942cb301fed273f423fb5c4f57bde3efc5b2 Author: Dominik Brodowski Date: Mon Jun 27 16:28:55 2005 -0700 [PATCH] pcmcia: use request_region in i82365 randy_dunlap Convert deprecated check_region() calls to request/release region. Add return value check on one request_region(). I suspect that it may do an extra release_region(), which should generate a warning message from the kernel. Signed-off-by: randy_dunlap Signed-off-by: Dominik Brodowski Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 378a33a686d457fa5a38d6ad134f5385a9cc7860 Author: Dominik Brodowski Date: Mon Jun 27 16:28:54 2005 -0700 [PATCH] pcmcia: release_class Properly wait for the class refcount to reach zero. Signed-off-by: Dominik Brodowski Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 3448139b41b9e3b8799eed7d427cd50789dadc3e Author: Dominik Brodowski Date: Mon Jun 27 16:28:54 2005 -0700 [PATCH] pcmcia: ds.c cleanup Clean up ds.c Signed-off-by: Dominik Brodowski Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 33519ddd43f4adc221ee7b2801dedd19ac97540b Author: Dominik Brodowski Date: Mon Jun 27 16:28:53 2005 -0700 [PATCH] pcmcia: cs.c cleanup Clean up cs.c Signed-off-by: Dominik Brodowski Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 1a8d46631e166a3c79fe1466ce8cfc4721fdf780 Author: Dominik Brodowski Date: Mon Jun 27 16:28:53 2005 -0700 [PATCH] pcmcia: move pcmcia resource handling out of cs.c Move the 16-bit PCMICA resource handling from pcmcia_core.o to pcmcia.o. Signed-off-by: Dominik Brodowski Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit e6ea0b9ec5131ac360581d6924fed536758bd024 Author: Dominik Brodowski Date: Mon Jun 27 16:28:52 2005 -0700 [PATCH] pcmcia: rename some functions Rename some functions in drivers/pcmcia/ to show they belong to the PCMCIA subsystem. Signed-off-by: Dominik Brodowski Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 3b659fb862db02c77ea7e6db7e70b6e888681579 Author: Dominik Brodowski Date: Mon Jun 27 16:28:51 2005 -0700 [PATCH] pcmcia: remove unneeded includes in ds.c Remove unnecessary includes in ds.c and pcmcia_ioctl.c Signed-off-by: Dominik Brodowski Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit dc109497bd5799770fedfc6503119808497b3677 Author: Dominik Brodowski Date: Mon Jun 27 16:28:50 2005 -0700 [PATCH] pcmcia: merge struct pcmcia_bus_socket into struct pcmcia_socket Merge struct pcmcia_bus_socket into struct pcmcia_socket. Signed-off-by: Dominik Brodowski Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit b5e43913cfe95a18ad8929585a0bb58e46cf3390 Author: Dominik Brodowski Date: Mon Jun 27 16:28:50 2005 -0700 [PATCH] pcmcia: make PCMCIA status a bitfield make pcmcia_bus_socket->state a bitfield, and rename it pcmcia_state to prepare for struct pcmcia_bus_socket integration into struct pcmcia_socket. Signed-off-by: Dominik Brodowski Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 90c6cdd1fa8dd4d69af792541a37b38576aa9b5a Author: Dominik Brodowski Date: Mon Jun 27 16:28:49 2005 -0700 [PATCH] pcmcia: clean up cs ds callback struct pcmcia_callback isn't needed for each socket, one is enough for all sockets. Signed-off-by: Dominik Brodowski Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit e7a480d229461e54a0b3b0439b2bf0e652545e3d Author: Dominik Brodowski Date: Mon Jun 27 16:28:47 2005 -0700 [PATCH] pcmcia: move PCMCIA ioctl to a separate file Move all PCMCIA_IOCTL-related code to a different file. Signed-off-by: Dominik Brodowski From: Richard Purdie The pcmcia-move-pcmcia-ioctl-to-a-separate-file patch was corrupted in -mm2 causing this problem. Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 9a5555b81fde402119a6b4f2b38d3373d272ff69 Author: Dominik Brodowski Date: Mon Jun 27 16:28:47 2005 -0700 [PATCH] pcmcia: add a config option for the PCMICA ioctl Add a new config option to control the building of the PCMCIA IOCTL. Currently, it is not yet made public, though the help text is there already. Signed-off-by: Dominik Brodowski Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 3c29976a6469b81a7858812dc2d4b8430d74004a Author: Dominik Brodowski Date: Mon Jun 27 16:28:46 2005 -0700 [PATCH] pcmcia: mark parent bridge windows as resources available for PCMCIA devices Automatically mark the parent PCI-PCI bridge windows as resources available for PCMCIA usage. Signed-off-by: Dominik Brodowski Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 22916638b124e859b595099bd0c86a1e09e767fb Author: Dominik Brodowski Date: Mon Jun 27 16:28:46 2005 -0700 [PATCH] pcmcia: update resource database adjust routines to use unsigned long values Make adjust_io and adjust_memory independent of adjust_t to allow for IO resources > x86's IO_SPACE_LIMIT. Signed-off-by: Dominik Brodowski Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 5085cb26503a662a5cfdf53ce96fd606c1fbe9ba Author: Dominik Brodowski Date: Mon Jun 27 16:28:45 2005 -0700 [PATCH] pcmcia: add some Documentation Add some information useful for PCMCIA device driver authors to Documentation/pcmcia/, and reference it in dmesg in case of hash mismatches. Also add a reference to pcmciautils to Documentation/Changes. With recent changes, you don't need to concern yourself with pcmcia-cs even if you have PCMCIA hardware, so the example above the list needed to be adapted as well. Signed-off-by: Dominik Brodowski Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit f4d7510d3d3b4501c94b4b00cf42fd58d49aeddd Author: Jun Komuro Date: Mon Jun 27 16:28:44 2005 -0700 [PATCH] pcmcia: more IDs for TDK multifunction cards Add new pcmcia id_table for fmvj18x_cs and serial_cs. (TDK multi-function card (NetPartner9610 and MobileNetworker3200)) Signed-off-by: Jun Komuro Signed-off-by: Dominik Brodowski Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 22f3a8f5fc94be4dd31c4c5ec1d1dc2b9c83a8ac Author: David Brownell Date: Mon Jun 27 16:28:43 2005 -0700 [PATCH] pcmcia id_table for sl811.cs Catch up with some PCMCIA API changes: - Docs say that as of 2.6.11 the PCMCIA IRQInfo2 field is ignored, but it's not yet removed from the API; stop using it anyway. - As of 2.6.13 PCMCIA finally hotplugs and does driver binding without "cardmgr"; add a MODULE_DEVICE_TABLE to support this. Signed-off-by: David Brownell Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 4af48c8c16dfc37400f63633373dd180b5540ead Author: Dominik Brodowski Date: Mon Jun 27 16:28:42 2005 -0700 [PATCH] pcmcia: id_table for synclink_cs.c Add pcmcia_device_id table. Signed-off-by: Dominik Brodowski Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit a4ed3598987845e8d45672899084df1f8448718c Author: Dominik Brodowski Date: Mon Jun 27 16:28:42 2005 -0700 [PATCH] pcmcia: id_table for pdaudiocf.c Add pcmcia_device_id table. Signed-off-by: Dominik Brodowski Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 77b73f9b00e3bea43ab4d30ae70fb85660dd07f1 Author: Dominik Brodowski Date: Mon Jun 27 16:28:41 2005 -0700 [PATCH] pcmcia: id_table for wl3501_cs.c Add pcmcia_device_id table. Signed-off-by: Dominik Brodowski Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 707997343a1e5193fff74798af572a4d03740476 Author: Dominik Brodowski Date: Mon Jun 27 16:28:41 2005 -0700 [PATCH] pcmcia: id_table for sedlbauer_cs.c Add pcmcia_device_id table. Signed-off-by: Dominik Brodowski Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit aba14100055325c5af432fe3fd1aa5521cec3e0c Author: Dominik Brodowski Date: Mon Jun 27 16:28:40 2005 -0700 [PATCH] pcmcia: id_table for nsp_cs.c Add pcmcia_device_id table. Signed-off-by: Dominik Brodowski Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 070812734facccf2d891eec0da2497ec3824e616 Author: Dominik Brodowski Date: Mon Jun 27 16:28:40 2005 -0700 [PATCH] pcmcia: id_table for ixj_pcmcia.c Add pcmcia_device_id table. Signed-off-by: Dominik Brodowski Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 02ae38cfc5a49dde1ce979e710eec1d02279cb53 Author: Dominik Brodowski Date: Mon Jun 27 16:28:39 2005 -0700 [PATCH] pcmcia: id_table for elsa_cs.c Add pcmcia_device_id table. Signed-off-by: Dominik Brodowski Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 88eca2e526d087797a529aad478e5e6b42188415 Author: Dominik Brodowski Date: Mon Jun 27 16:28:39 2005 -0700 [PATCH] pcmcia: id_table for dtl1_cs.c Add pcmcia_device_id table. Signed-off-by: Dominik Brodowski Acked-by: Marcel Holtmann Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 7fb22bb4d044f11a675c6947eac4923b84e0289e Author: Dominik Brodowski Date: Mon Jun 27 16:28:38 2005 -0700 [PATCH] pcmcia: id_table for com20020_cs.c Add pcmcia_device_id table. Signed-off-by: Dominik Brodowski Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 279c936153199e105b96429dec11233ae153667c Author: Dominik Brodowski Date: Mon Jun 27 16:28:38 2005 -0700 [PATCH] pcmcia: id_table for btuart_cs.c Add pcmcia_device_id table. Signed-off-by: Dominik Brodowski Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit a01c3ed48e3319f9a4eb4e43b8c6abe00f1a1389 Author: Dominik Brodowski Date: Mon Jun 27 16:28:37 2005 -0700 [PATCH] pcmcia: id_table for bt3c_cs.c Add pcmcia_device_id table. Signed-off-by: Dominik Brodowski Acked-by: Marcel Holtmann Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 7f70cb6d9f8b0fd97215250cff797ff8c3b24f1d Author: Dominik Brodowski Date: Mon Jun 27 16:28:35 2005 -0700 [PATCH] pcmcia: id_table for bluecard_cs.c Add pcmcia_device_id table. Signed-off-by: Dominik Brodowski Acked-by: Marcel Holtmann Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit a13bcf0d5abaf21a1eb7a988915ab97152f57f78 Author: Dominik Brodowski Date: Mon Jun 27 16:28:35 2005 -0700 [PATCH] pcmcia: id_table for avm_cs.c Add pcmcia_device_id table. Signed-off-by: Dominik Brodowski Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit c594c12cefa7c49f99d82cd2ccbcbf8baeb773ed Author: Dominik Brodowski Date: Mon Jun 27 16:28:34 2005 -0700 [PATCH] pcmcia: id_table for avma1_cs.c Add pcmcia_device_id table. Signed-off-by: Dominik Brodowski Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 4a17a119381a5467144b18eaa954ba324e8a140b Author: Dominik Brodowski Date: Mon Jun 27 16:28:34 2005 -0700 [PATCH] pcmcia: id_table for atmel_cs.c Add pcmcia_device_id table. Signed-off-by: Dominik Brodowski Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit e9a07afd9e7507ac02349b2ff59c579686dcd0fd Author: Dominik Brodowski Date: Mon Jun 27 16:28:33 2005 -0700 [PATCH] pcmcia: id_table for vxpocket.c Add pcmcia_device_id table. Signed-off-by: Dominik Brodowski Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 11d28a30219671607a235a518f395659599a748e Author: Dominik Brodowski Date: Mon Jun 27 16:28:32 2005 -0700 [PATCH] pcmcia: id_table for pcmciamtd.c Add pcmcia_device_id table to pcmciamtd. The binding of anonymus cards (i.e. those who do neither report MANFID, CARDID, FUNCID nor product strings) is protected by a new config option. Signed-off-by: Dominik Brodowski Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 9c7046cd06c66bd81b285d15e422faeecdc9ca82 Author: Jun Komuro Date: Mon Jun 27 16:28:30 2005 -0700 [PATCH] pcmcia: add a few more IDs for pcnet_cs Add new pcmcia id_table for pcnet_cs. (Allied, Laneed, NextCom and Telecom Device) Signed-off-by: Jun Komuro Signed-off-by: Dominik Brodowski Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit ce8a0037e110c1f4ec2fac7a3d791043e4e38cfc Author: Dominik Brodowski Date: Mon Jun 27 16:28:30 2005 -0700 [PATCH] pcmcia: id_table for pcnet_cs.c Add pcmcia_device_id table. Signed-off-by: Dominik Brodowski Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 476835afd7fefa353e932e160c14effc67e2ba6e Author: Dominik Brodowski Date: Mon Jun 27 16:28:29 2005 -0700 [PATCH] pcmcia: id_table for parport_cs.c Add pcmcia_device_id table. Signed-off-by: Dominik Brodowski Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit f8f7cc03bcb52e3f4894635aa1e7b9fca2f9ec67 Author: Dominik Brodowski Date: Mon Jun 27 16:28:29 2005 -0700 [PATCH] pcmcia: more IDs for ide_cs Add another ID for ide-cs Signed-off-by: Dominik Brodowski Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit f70b7d40d85a50c1f6d35350942501c4b0558335 Author: Dominik Brodowski Date: Mon Jun 27 16:28:28 2005 -0700 [PATCH] pcmcia: id_table for ide_cs.c Add pcmcia_device_id table. Signed-off-by: Dominik Brodowski Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit ff07bb19d0f605d08a9649a3f94acf3e4a79819c Author: Dominik Brodowski Date: Mon Jun 27 16:28:28 2005 -0700 [PATCH] pcmcia: id_table for xirc2ps_cs.c Add pcmcia_device_id table. Signed-off-by: Dominik Brodowski Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 7422c56da9d985234e0b62307cbbd0dcf9b97593 Author: Dominik Brodowski Date: Mon Jun 27 16:28:27 2005 -0700 [PATCH] pcmcia: id_table for orinoco_cs Add pcmcia_device_id table. Signed-off-by: Dominik Brodowski Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 5c672220694345ee5c3f2cf0becd3bd27dd663ad Author: Dominik Brodowski Date: Mon Jun 27 16:28:27 2005 -0700 [PATCH] pcmcia: id_table for smc91c92_cs.c Add pcmcia_device_id table. Signed-off-by: Dominik Brodowski Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 7a5a6eeb6de79ab36ef1fceae8cc3c334b43fddc Author: Dominik Brodowski Date: Mon Jun 27 16:28:26 2005 -0700 [PATCH] pcmcia: id_table for qlogic_stub.c Add pcmcia_device_id table. Signed-off-by: Dominik Brodowski Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 2a355d07f2196d1d17aeebaa29a743f90e53dbd7 Author: Dominik Brodowski Date: Mon Jun 27 16:28:25 2005 -0700 [PATCH] pcmcia: id_table for sym53c500_cs.c Add pcmcia_device_id table. Signed-off-by: Dominik Brodowski Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit b942123bcd6430afbb4d4c541bd6df996f02a68f Author: Dominik Brodowski Date: Mon Jun 27 16:28:25 2005 -0700 [PATCH] pcmcia: id_table for wavelan_cs Add pcmcia_device_id table. Signed-off-by: Dominik Brodowski Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit f57ea2a23245ba6db68f6a84ae903b3901965ade Author: Dominik Brodowski Date: Mon Jun 27 16:28:24 2005 -0700 [PATCH] pcmcia: id_table for ray_cs Add pcmcia_device_id table. Signed-off-by: Dominik Brodowski Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 0a10d73dad86a023f343f80cc9cb71ea4e140192 Author: Dominik Brodowski Date: Mon Jun 27 16:28:24 2005 -0700 [PATCH] pcmcia: id_table for teles_cs Add pcmcia_device_id table. Signed-off-by: Dominik Brodowski Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit a58e26cb1163353d8a9b9cfd0d3f35df34f63141 Author: Dominik Brodowski Date: Mon Jun 27 16:28:23 2005 -0700 [PATCH] pcmcia: id_table for nmclan_cs Add pcmcia_device_id table. Signed-off-by: Dominik Brodowski Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 5d402e95ebf8cc2fbf0e59e8424d65fe7847ad34 Author: Dominik Brodowski Date: Mon Jun 27 16:28:23 2005 -0700 [PATCH] pcmcia: id_table for netwave_cs Add pcmcia_device_id table. Signed-off-by: Dominik Brodowski Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 469bf2b9389c9265ac0920da5b1a5c71fe496213 Author: Dominik Brodowski Date: Mon Jun 27 16:28:22 2005 -0700 [PATCH] pcmcia: id_table for ibmtr_cs Add pcmcia_device_id table. Signed-off-by: Dominik Brodowski Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit cda4de8e1e51d55f02c64210ddbaca73997f890d Author: Dominik Brodowski Date: Mon Jun 27 16:28:22 2005 -0700 [PATCH] pcmcia: id_table for fmvj18x_cs Add pcmcia_device_id table. Signed-off-by: Dominik Brodowski Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 2d1fb37621f40863929b60950406ec84d52bba16 Author: Dominik Brodowski Date: Mon Jun 27 16:28:21 2005 -0700 [PATCH] pcmcia: id_table for fdomain_stub Add pcmcia_device_id table. Signed-off-by: Dominik Brodowski Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit c414f7550fedc0860a6cc65491006be49ac80edd Author: Dominik Brodowski Date: Mon Jun 27 16:28:20 2005 -0700 [PATCH] pcmcia: id_table for axnet_cs Add pcmcia_device_id table. Signed-off-by: Dominik Brodowski Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 7018d06d2371d67bdc995160fe2d38c6421b7c74 Author: Dominik Brodowski Date: Mon Jun 27 16:28:20 2005 -0700 [PATCH] pcmcia: id_table for airo_cs Add pcmcia_device_id table. Signed-off-by: Dominik Brodowski Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 2dc27daa58ac579bff7d60043a23abd5e237cdda Author: Dominik Brodowski Date: Mon Jun 27 16:28:19 2005 -0700 [PATCH] pcmcia: id_table for aha152x Add pcmcia_device_id table. Signed-off-by: Dominik Brodowski Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 7ffec58c1e35c1e8f716c64e4860dbb00be4b221 Author: Dominik Brodowski Date: Mon Jun 27 16:28:19 2005 -0700 [PATCH] pcmcia: id_table for 3c589_cs Add pcmcia_device_id table. Signed-off-by: Dominik Brodowski Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 270b6e94181d838194f621e773b9ab534371e618 Author: Dominik Brodowski Date: Mon Jun 27 16:28:18 2005 -0700 [PATCH] pcmcia: id_table for 3c574_cs Add pcmcia_device_id table. Signed-off-by: Dominik Brodowski Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 325aa29fe50eabe487efe360426c01eb42825e60 Author: Dominik Brodowski Date: Mon Jun 27 16:28:18 2005 -0700 [PATCH] pcmcia: id_table for serial_cs Add pcmcia_device_id table. Signed-off-by: Dominik Brodowski Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit e2f0b5344161dabfab102ac0a54f330f61477972 Author: Dominik Brodowski Date: Mon Jun 27 16:28:17 2005 -0700 [PATCH] pcmcia: rescan bus always upon echoing into setup_done Always rescan the devices upon echo'ing something to available_resources_setup_done. This is needed for proper "coldplug" support. Signed-off-by: Dominik Brodowski Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit e94e15f70559962f60915a09d44658b73a453fe2 Author: Dominik Brodowski Date: Mon Jun 27 16:28:15 2005 -0700 [PATCH] pcmcia: cleanups From: Adrian Bunk This patch contains the following cleanups: - make needlessly global code static - remove the following unneeded EXPORT_SYMBOL's: - ds.c: pcmcia_report_error - ds.c: pcmcia_bus_type Signed-off-by: Adrian Bunk Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit daa9517d9eccc3598b2b0cdfa0b016ae4a4fcdce Author: Dominik Brodowski Date: Mon Jun 27 16:28:14 2005 -0700 [PATCH] pcmcia: request CIS via firmware interface Use the firmware method to load replacement CIS tables. It is recommended that the /lib/firmware/cis/ points to /etc/pcmcia/cis or the other way round so that both old-style cardmgr and new-style hotplug/firmware can access these "overwrite" files Signed-off-by: Dominik Brodowski Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 90829cfe1df2466c98a831f6c44f71026665cec1 Author: Dominik Brodowski Date: Mon Jun 27 16:28:12 2005 -0700 [PATCH] pcmcia: file2alias Create PCMCIA entries in modules.alias Signed-off-by: Dominik Brodowski Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit a5b5577898d9330a78dea1c9e75da1540c36bf72 Author: Dominik Brodowski Date: Mon Jun 27 16:28:10 2005 -0700 [PATCH] pcmcia: allow function-ID based match The "func_id"-based matching is very fuzzy and can lead to false positives. Therefore, it should be tried to avoid relying on these matches. Until most/all existing func_id-based matches are replaced by manf_id/card_id/prod_id matches (a patch which will ask to send the appropriate card information to the PCMCIA mailing list will be added once other, more pressing issues are adressed), we need to emulate cardmgr behaviour by allowing func_id matches if no manf_id/card_id/prod_id match occurs. This can only be done in userspace because of modules possibly loaded with long delays. So, add a per-device sysfs file for this purpose. Signed-off-by: Dominik Brodowski Signed-off-by: Brice Goglin Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit f602ff7eb4e44e7245bfeeba4d078144703fcd76 Author: Dominik Brodowski Date: Mon Jun 27 16:28:09 2005 -0700 [PATCH] pcmcia: match "anonymous" cards If a card doesn't provide _any_ information about itself, assume it is a so-called "anonymous" card. pcmciamtd will bind to it if it is configured to do so. Signed-off-by: Dominik Brodowski Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit ff1fa9ef3c9fb23a6baa06b63f4bdf3de089b29a Author: Dominik Brodowski Date: Mon Jun 27 16:28:09 2005 -0700 [PATCH] pcmcia: CIS overrid via sysfs The one thing which surprises me in this patch that cis->Length needs to be set to count+1. Without it, it doesn't work, but with it, it doesn't make sense to me. Signed-off-by: Dominik Brodowski Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 7f299bccb422d707be3b074f9a669b34cb207a14 Author: Dominik Brodowski Date: Mon Jun 27 16:28:08 2005 -0700 [PATCH] pcmcia: export CIS in sysfs Export the CIS to userspace using a sysfs binary file in /sys/class/pcmcia_socket/pcmcia_scoket%n/ Signed-off-by: Dominik Brodowski Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit ea7b38825bba66a81745a706da70a1c81adc95bd Author: Dominik Brodowski Date: Mon Jun 27 16:28:07 2005 -0700 [PATCH] pcmcia: match for fake CIS Add another match flag for devices needing a CIS override. The driver will only probe/attach if the CIS has been replaced before. Signed-off-by: Dominik Brodowski Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 23a83bfe6ab51c745d109d979c78a96fe3e93f5c Author: Dominik Brodowski Date: Mon Jun 27 16:28:07 2005 -0700 [PATCH] pcmcia: check for invalid crc32 hashes in id_tables Check for invalid crc32 hashes in drivers' id_tables if CONFIG_PCMCIA_DEBUG is set. Signed-off-by: Dominik Brodowski Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 1ad275e3e7d253d44f03868e85977c908e334fed Author: Dominik Brodowski Date: Mon Jun 27 16:28:06 2005 -0700 [PATCH] pcmcia: device and driver matching The actual matching of pcmcia drivers and pcmcia devices. The original version of this was written by David Woodhouse. Signed-off-by: Dominik Brodowski Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 3ee13937525f6044d769b1a84d5db5669ac1959e Author: Dominik Brodowski Date: Mon Jun 27 16:28:05 2005 -0700 [PATCH] pcmcia: hotplug event for PCMCIA socket devices Generate hotplug event for PCMCIA sockets being registered. Signed-off-by: Dominik Brodowski Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 840c2ac5d3c1d50e8a181e3f661da814e89c8cf8 Author: Dominik Brodowski Date: Mon Jun 27 16:28:04 2005 -0700 [PATCH] pcmcia: hotplug event for PCMCIA devices Export information to /sbin/hotplug for PCMCIA devices: card_id, manf_id, func_id, bus_id (like pcmcia1.0) and crc32-hashes of the prod_id strings. Why not the prod_id strings themselves? a) They may contain all sorts of strange and difficult to handle characters, like " ". b) It's impossible to pass multiple strings to userspace. Signed-off-by: Dominik Brodowski Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 7925407aa02653ba462b1d8b0b1229b99aee5411 Author: Ivan Kokshaysky Date: Mon Jun 27 16:28:02 2005 -0700 [PATCH] pci: yenta cardbus fix On Mon, Jun 20, 2005 at 07:15:34PM +1000, Grant Coady wrote: > Yenta: CardBus bridge found at 0000:00:0b.0 [1179:0001] > yenta 0000:00:0b.0: Preassigned resource 0 busy, reconfiguring... In -mm1 the cardbus resources might be assigned in pci_assign_unassigned_resources() pass. From your dmesg: PCI: Bus 2, cardbus bridge: 0000:00:0b.0 IO window: 00002000-00002fff IO window: 00003000-00003fff PREFETCH window: 12000000-13ffffff MEM window: 14000000-15ffffff Then yenta_allocate_res() tries to assign these resources again and, naturally, fails. This adds check for already assigned cardbus resources. Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 3c803e8e2f15d02c5ad0a3888eea2bbd31dc59c5 Author: Linus Torvalds Date: Mon Jun 27 17:49:45 2005 -0700 Commit the manual part of the input layer merge. git did actually warn me about the fact that I hadn't actually done an "update-cache" on these two files, but the warning was at the bottom of a list of all the files that _did_ change in the merge, so I never noticed. My bad. commit c47abbbffd17a7e774ec1ef952a1c3621a9cb13b Author: Alan Cox Date: Mon Jun 27 15:24:31 2005 -0700 [PATCH] ide: sensible probing for PCI systems Old ISA/VESA systems sometimes put tertiary IDE controllers at addresses 0x1e8, 0x168, 0x1e0 or 0x160. Linux thus probes these addresses on x86 systems. Unfortunately some PCI systems now use these addresses for other purposes which leads to users seeing minute plus hangs during boot or even crashes. The following patch (again has been in Fedora for a while) only probes the obscure legacy ISA ports on machinea that are pre-PCI. This seems to keep everyone happy and if there is someone with that utterly weird corner case the ide= command line still provides a get out of jail card. Unsurprisingly we've not found anyone so affected. Signed-off-by: Alan Cox Acked-by: Bartlomiej Zolnierkiewicz Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit da9091ee3b5f9808c64abb925cefe7b100018614 Author: Alan Cox Date: Mon Jun 27 15:24:30 2005 -0700 [PATCH] ide: it8212 backport for Bartlomiej IDE This lets you throw out the iteraid stuff that has ended up back in due to stupid goings on in the IDE world. Its the same heavily tested code shipped in Fedora/Red Hat products but without the other dependancies on the Bartlomiej IDE layer. Pre-requisite: the ide-disk patch I sent to handle pure LBA devices. Obviously you lose things like hot unplug with the Bartlomiej IDE layer at the moment but that won't matter to most users. The patch does the following - Add IT8211/12 to pci_ids.h - Add Makefile/Kconfig entry - Add it8212 driver No core IDE code is touched by this diff Embedded system testing and the ability to force raid mode off by David Howells Made possible by the ite reference code, documentation and also several clarifications and pieces of assistance provided by ITE themselves Signed-off-by: Alan Cox Acked-by: Bartlomiej Zolnierkiewicz Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit bb732d7b3699afe8859f27e93000860bb4103cca Author: Alan Cox Date: Mon Jun 27 15:24:29 2005 -0700 [PATCH] ide: fix crashes with hotplug serverworks You can't install the base kernel on a Stratus box because of the overuse of __init. Affects both IDE layers identically. It isn't the only misuser of __init so more review of other drivers (or fixing ide_register code to know about hotplug v non-hotplug chipsets) would be good. Original issue found by Stratus and their patch was the inspiration for this trivial one. Signed-off-by: Alan Cox Acked-by: Bartlomiej Zolnierkiewicz Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit b39b01ffb75e14ed76510e4229ffb575007df0fb Author: Alan Cox Date: Mon Jun 27 15:24:27 2005 -0700 [PATCH] ide: fix the HPT366 driver layer The highpoint driver is unreadable, buggy and crashes on some chipsets. The -ac one is more readable (but not ideal) and doesn't crash all over the place. Been in Fedora for some time. Backported from the Fedora one to the old Bartlomiej IDE core. No other dependencies. Signed-off-by: Alan Cox Acked-by: Bartlomiej Zolnierkiewicz Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit b189346cd10e28fa080347591066f0688405faee Author: Alan Cox Date: Mon Jun 27 15:24:26 2005 -0700 [PATCH] ide: ide-generic, allow for capture of other unsupported devices The ide-generic driver gives you DMA at bios tuned speed so can actually run a lot of unsupported devices quite well. It has a pci table so that it doesn't grab disks owned by other drivers but no way to override this. The patch adds an option ide-generic-all which makes the driver grab everything going that is IDE class. The diff is messy because I put the special case as case 0 to make the if conditional and long term maintenance easier. This has been in Fedora for some time. Signed-off-by: Alan Cox Acked-by: Bartlomiej Zolnierkiewicz Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 68ad9910b0525d0194f9c316c7cb14adbf8e0c0c Author: Alan Cox Date: Mon Jun 27 15:24:25 2005 -0700 [PATCH] ide: IDE timing violation on reset Pretty much theoretical for non MMIO thankfully. We _must_ use OUTBSYNC for commands or they may be posted and thus ruin the 400nS required delay. Signed-off-by: Alan Cox Acked-by: Bartlomiej Zolnierkiewicz Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 58ecd15652979f2001dc296dcfd303cc1bd33ce7 Author: Alan Cox Date: Mon Jun 27 15:24:24 2005 -0700 [PATCH] ide: samsung SN-124 works perfectly well with DMA Been in Red Hat products for ages Signed-off-by: Alan Cox Acked-by: Bartlomiej Zolnierkiewicz Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 6efd936046b123303ace4330fd2f26195ad7b1c4 Author: Alan Cox Date: Mon Jun 27 15:24:22 2005 -0700 [PATCH] ide: fix ide-disk inability to handle LBA only devices. Years old bug, has to be fixed for it8212 to work Signed-off-by: Alan Cox Acked-by: Bartlomiej Zolnierkiewicz Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 63b614522cba5a015923c0e8f284be6e01c13f1a Author: David S. Miller Date: Mon Jun 27 17:04:45 2005 -0700 [SPARC64]: Get rid of fast IRQ feature. The only real user was the assembler floppy interrupt handler, which does not need to be in assembly. This makes it so that there are less pieces of code which know about the internal layout of ivector_table[] and friends. Signed-off-by: David S. Miller commit b445e26cbf784cdba10f2b6c3e2cd3ee7bab360a Author: David S. Miller Date: Mon Jun 27 15:42:04 2005 -0700 [SPARC64]: Avoid membar instructions in delay slots. In particular, avoid membar instructions in the delay slot of a jmpl instruction. UltraSPARC-I, II, IIi, and IIe have a bug, documented in the UltraSPARC-IIi User's Manual, Appendix K, Erratum 51 The long and short of it is that if the IMU unit misses on a branch or jmpl, and there is a store buffer synchronizing membar in the delay slot, the chip can stop fetching instructions. If interrupts are enabled or some other trap is enabled, the chip will unwedge itself, but performance will suffer. We already had a workaround for this bug in a few spots, but it's better to have the entire tree sanitized for this rule. Signed-off-by: David S. Miller commit c7b645f934e52a54af58142d91fb51f881f8ce26 Author: Keshavamurthy Anil S Date: Mon Jun 27 15:17:16 2005 -0700 [PATCH] kprobes/ia64: refuse kprobe on ivt code Not safe to insert kprobes on IVT code. This patch checks to see if the address on which Kprobes is being inserted is in ivt code and if it is in ivt code then refuse to register kprobe. Signed-off-by: Anil S Keshavamurthy Acked-by: David Mosberger Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit a528e21c235862cc1ae50e7809eb9116dc40ea0c Author: Rusty Lynch Date: Mon Jun 27 15:17:15 2005 -0700 [PATCH] kprobes/ia64: refuse inserting kprobe on slot 1 Without the ability to atomically write 16 bytes, we can not update the middle slot of a bundle, slot 1, unless we stop the machine first. This patch will ensure the ability to robustly insert and remove a kprobe by refusing to insert a kprobe on slot 1 until a mechanism is in place to safely handle this case. Signed-off-by: Rusty Lynch Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 97f7943d70ff0e1e92ea627c44cfacfdae65dbc4 Author: Rusty Lynch Date: Mon Jun 27 15:17:15 2005 -0700 [PATCH] Return probe redesign: ppc64 specific implementation The following is a patch provided by Ananth Mavinakayanahalli that implements the new PPC64 specific parts of the new function return probe design. NOTE: Since getting Ananth's patch, I changed trampoline_probe_handler() to consume each of the outstanding return probem instances (feedback on my original RFC after Ananth cut a patch), and also added the arch_init() function (adding arch specific initialization.) I have cross compiled but have not testing this on a PPC64 machine. Changes include: * Addition of kretprobe_trampoline to act as a dummy function for instrumented functions to return to, and for the return probe infrastructure to place a kprobe on on, gaining control so that the return probe handler can be called, and so that the instruction pointer can be moved back to the original return address. * Addition of arch_init(), allowing a kprobe to be registered on kretprobe_trampoline * Addition of trampoline_probe_handler() which is used as the pre_handler for the kprobe inserted on kretprobe_implementation. This is the function that handles the details for calling the return probe handler function and returning control back at the original return address * Addition of arch_prepare_kretprobe() which is setup as the pre_handler for a kprobe registered at the beginning of the target function by kernel/kprobes.c so that a return probe instance can be setup when a caller enters the target function. (A return probe instance contains all the needed information for trampoline_probe_handler to do it's job.) * Hooks added to the exit path of a task so that we can cleanup any left-over return probe instances (i.e. if a task dies while inside a targeted function then the return probe instance was reserved at the beginning of the function but the function never returns so we need to mark the instance as unused.) Signed-off-by: Rusty Lynch Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 9508dbfe39112813612085c00d55bacd398eddc6 Author: Rusty Lynch Date: Mon Jun 27 15:17:12 2005 -0700 [PATCH] Return probe redesign: ia64 specific implementation The following patch implements function return probes for ia64 using the revised design. With this new design we no longer need to do some of the odd hacks previous required on the last ia64 return probe port that I sent out for comments. Note that this new implementation still does not resolve the problem noted by Keith Owens where backtrace data is lost after a return probe is hit. Changes include: * Addition of kretprobe_trampoline to act as a dummy function for instrumented functions to return to, and for the return probe infrastructure to place a kprobe on on, gaining control so that the return probe handler can be called, and so that the instruction pointer can be moved back to the original return address. * Addition of arch_init(), allowing a kprobe to be registered on kretprobe_trampoline * Addition of trampoline_probe_handler() which is used as the pre_handler for the kprobe inserted on kretprobe_implementation. This is the function that handles the details for calling the return probe handler function and returning control back at the original return address * Addition of arch_prepare_kretprobe() which is setup as the pre_handler for a kprobe registered at the beginning of the target function by kernel/kprobes.c so that a return probe instance can be setup when a caller enters the target function. (A return probe instance contains all the needed information for trampoline_probe_handler to do it's job.) * Hooks added to the exit path of a task so that we can cleanup any left-over return probe instances (i.e. if a task dies while inside a targeted function then the return probe instance was reserved at the beginning of the function but the function never returns so we need to mark the instance as unused.) Signed-off-by: Rusty Lynch Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit ba8af12f432c4f00ddb0bc1068b57b20aac93ecf Author: Rusty Lynch Date: Mon Jun 27 15:17:10 2005 -0700 [PATCH] Return probe redesign: x86_64 specific changes The following patch contains the x86_64 specific changes for the new return probe design. Changes include: * Removing the architecture specific functions for querying a return probe instance off a stack address * Complete rework onf arch_prepare_kretprobe() and trampoline_probe_handler() * Removing trampoline_post_handler() * Adding arch_init() so that now we handle registering the return probe trampoline instead of kernel/kprobes.c doing it NOTE: Note that with this new design, the dependency on calculating a pointer to the task off the stack pointer no longer exist (resolving the problem of interruption stacks as pointed out in the original feedback to this port.) Signed-off-by: Rusty Lynch Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 4bdbd37f6d01abc4c002bb8de90ea2c3bc7abe7e Author: Rusty Lynch Date: Mon Jun 27 15:17:09 2005 -0700 [PATCH] Return probe redesign: i386 specific changes The following patch contains the i386 specific changes for the new return probe design. Changes include: * Removing the architecture specific functions for querying a return probe instance off a stack address * Complete rework onf arch_prepare_kretprobe() and trampoline_probe_handler() * Removing trampoline_post_handler() * Adding arch_init() so that now we handle registering the return probe trampoline instead of kernel/kprobes.c doing it Signed-off-by: Rusty Lynch Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 802eae7c800fb7f583e6c06afa363585af2bef00 Author: Rusty Lynch Date: Mon Jun 27 15:17:08 2005 -0700 [PATCH] Return probe redesign: architecture independent changes The following is the second version of the function return probe patches I sent out earlier this week. Changes since my last submission include: * Fix in ppc64 code removing an unneeded call to re-enable preemption * Fix a build problem in ia64 when kprobes was turned off * Added another BUG_ON check to each of the architecture trampoline handlers My initial patch description ==> From my experiences with adding return probes to x86_64 and ia64, and the feedback on LKML to those patches, I think we can simplify the design for return probes. The following patch tweaks the original design such that: * Instead of storing the stack address in the return probe instance, the task pointer is stored. This gives us all we need in order to: - find the correct return probe instance when we enter the trampoline (even if we are recursing) - find all left-over return probe instances when the task is going away This has the side effect of simplifying the implementation since more work can be done in kernel/kprobes.c since architecture specific knowledge of the stack layout is no longer required. Specifically, we no longer have: - arch_get_kprobe_task() - arch_kprobe_flush_task() - get_rp_inst_tsk() - get_rp_inst() - trampoline_post_handler() * Instead of splitting the return probe handling and cleanup logic across the pre and post trampoline handlers, all the work is pushed into the pre function (trampoline_probe_handler), and then we skip single stepping the original function. In this case the original instruction to be single stepped was just a NOP, and we can do without the extra interruption. The new flow of events to having a return probe handler execute when a target function exits is: * At system initialization time, a kprobe is inserted at the beginning of kretprobe_trampoline. kernel/kprobes.c use to handle this on it's own, but ia64 needed to do this a little differently (i.e. a function pointer is really a pointer to a structure containing the instruction pointer and a global pointer), so I added the notion of arch_init(), so that kernel/kprobes.c:init_kprobes() now allows architecture specific initialization by calling arch_init() before exiting. Each architecture now registers a kprobe on it's own trampoline function. * register_kretprobe() will insert a kprobe at the beginning of the targeted function with the kprobe pre_handler set to arch_prepare_kretprobe (still no change) * When the target function is entered, the kprobe is fired, calling arch_prepare_kretprobe (still no change) * In arch_prepare_kretprobe() we try to get a free instance and if one is available then we fill out the instance with a pointer to the return probe, the original return address, and a pointer to the task structure (instead of the stack address.) Just like before we change the return address to the trampoline function and mark the instance as used. If multiple return probes are registered for a given target function, then arch_prepare_kretprobe() will get called multiple times for the same task (since our kprobe implementation is able to handle multiple kprobes at the same address.) Past the first call to arch_prepare_kretprobe, we end up with the original address stored in the return probe instance pointing to our trampoline function. (This is a significant difference from the original arch_prepare_kretprobe design.) * Target function executes like normal and then returns to kretprobe_trampoline. * kprobe inserted on the first instruction of kretprobe_trampoline is fired and calls trampoline_probe_handler() (no change here) * trampoline_probe_handler() consumes each of the instances associated with the current task by calling the registered handler function and marking the instance as unused until an instance is found that has a return address different then the trampoline function. (change similar to my previous ia64 RFC) * If the task is killed with some left-over return probe instances (meaning that a target function was entered, but never returned), then we just free any instances associated with the task. (Not much different other then we can handle this without calling architecture specific functions.) There is a known problem that this patch does not yet solve where registering a return probe flush_old_exec or flush_thread will put us in a bad state. Most likely the best way to handle this is to not allow registering return probes on these two functions. (Significant change) This patch series applies to the 2.6.12-rc6-mm1 kernel, and provides: * kernel/kprobes.c changes * i386 patch of existing return probes implementation * x86_64 patch of existing return probe implementation * ia64 implementation * ppc64 implementation (provided by Ananth) This patch implements the architecture independant changes for a reworking of the kprobes based function return probes design. Changes include: * Removing functions for querying a return probe instance off a stack address * Removing the stack_addr field from the kretprobe_instance definition, and adding a task pointer * Adding architecture specific initialization via arch_init() * Removing extern definitions for the architecture trampoline functions (this isn't needed anymore since the architecture handles the initialization of the kprobe in the return probe trampoline function.) Signed-off-by: Rusty Lynch Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 9ec4b1f356b3bad928ae8e2aa9caebfa737d52df Author: Ananth N Mavinakayanahalli Date: Mon Jun 27 15:17:01 2005 -0700 [PATCH] kprobes: fix single-step out of line - take2 Now that PPC64 has no-execute support, here is a second try to fix the single step out of line during kprobe execution. Kprobes on x86_64 already solved this problem by allocating an executable page and using it as the scratch area for stepping out of line. Reuse that. Signed-off-by: Ananth N Mavinakayanahalli Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit d3b8a1a8496c83bc4a3cc76505c29255af15572c Merge: 60564a313a5738960064d6c555ec066d9332f278 0ed0c0c48c508578c30aa58f755ca0d692636906 Author: Linus Torvalds Date: Mon Jun 27 15:13:26 2005 -0700 Merge master.kernel.org:/pub/scm/linux/kernel/git/gregkh/usb-2.6 commit 60564a313a5738960064d6c555ec066d9332f278 Author: Mike Miller Date: Mon Jun 27 14:36:50 2005 -0700 [PATCH] cciss: remove partition info from CCISS_GETLUNINFO This patch fulfills a promise I made to Christoph sometime back. I am removing the partition info from the CCISS_GETLUNINFO ioctl as I was informed my "driver had no damn business reading that structure." ;) The application folks are to use /proc or /sys for partition info from now on. I am only aware of a few apps that use this ioctl and I'm not sure they ever used the partition info. Signed-off-by: Mike Miller Acked-by: Jeff Garzik Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit cd6fb584cf7f18ec6b221192b57d712ecc8c1859 Author: Mike Miller Date: Mon Jun 27 14:36:49 2005 -0700 [PATCH] cciss: pci domain info pass 2 This is pass 2 of my patch to add pci domain info to an existing ioctl. This time I insert the domain between dev_fn and board_id as Willy suggested and change the var to unsigned short to ease Christoph's concerns. Although I thought unsigned int was the correct var type for this. I also thought it didn't matter where I inserted it in the structure. Signed-off-by: Mike Miller Acked-by: Jeff Garzik Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 3de0a70bd926ff974adb27a38d4fd1049f05e54e Author: Mike Miller Date: Mon Jun 27 14:36:48 2005 -0700 [PATCH] cciss: pci id fix This patch fixes a PCI ID I got wrong before. It also adds support for another new SAS controller due out this summer. I didn't have a marketing name prior to my last submission. Also modifies the copyright date range. Signed-off-by: Mike Miller Acked-by: Jeff Garzik Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 21c121ccd5559a07089d1aef9ca6c04c6d8b6758 Author: Roland Dreier Date: Mon Jun 27 14:36:47 2005 -0700 [PATCH] MAINTAINERS: Update Roland Dreier's email Cisco bought Topspin, so I'm now a shiny happy Cisco employee. Update my entry in MAINTAINERS. Signed-off-by: Roland Dreier Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 48442962ebccec92d8a65f465420423cd2ce0bc8 Author: Roland Dreier Date: Mon Jun 27 14:36:47 2005 -0700 [PATCH] IB: Fix pack/unpack when size_bits == 64 Fix handling of fields with size_bits == 64. Pointed out by Hal Rosenstock. Signed-off-by: Roland Dreier Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit dae4c1d2362292ccd3318ff67d18aa5c22ee820c Author: Roland Dreier Date: Mon Jun 27 14:36:46 2005 -0700 [PATCH] IB: Fix race in sa_query Use a copy of the id we'll return to the consumer so that we don't dereference query->sa_query after calling send_mad(). A completion may occur very quickly and end up freeing the query before we get to do anything after send_mad(). Signed-off-by: Roland Dreier Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit cae54bdf6f8b643e0e7a36ed531951f19e14fe56 Author: Roland Dreier Date: Mon Jun 27 14:36:46 2005 -0700 [PATCH] IB/mthca: Bump version It's about time for a version bump. Signed-off-by: Roland Dreier Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit ed878458eeff9754d66f1b0325df6ebbfcdce668 Author: Roland Dreier Date: Mon Jun 27 14:36:45 2005 -0700 [PATCH] IB/mthca: Align FW command mailboxes to 4K Future versions of Mellanox HCA firmware will require command mailboxes to be aligned to 4K. Support this by using a pci_pool to allocate all mailboxes. This has the added benefit of shrinking the source and text of mthca. Signed-off-by: Roland Dreier Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 80fd8238734c852a8ed1ea39f8444a2df33bd161 Author: Roland Dreier Date: Mon Jun 27 14:36:45 2005 -0700 [PATCH] IB/mthca: Encapsulate command interface init Encapsulate mthca command interface initialization/cleanup. Signed-off-by: Roland Dreier Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 761f9eb8c31f72692aad118e51e2a59a80467088 Author: Roland Dreier Date: Mon Jun 27 14:36:44 2005 -0700 [PATCH] IB/mthca: Fix memory leak on error path Free page_list buffer on error path of mthca_reg_phys_mr(). Signed-off-by: Roland Dreier Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit d56d6f9502a15ef64395cb3a6fc7bfdc365b1e3d Author: Roland Dreier Date: Mon Jun 27 14:36:43 2005 -0700 [PATCH] IB/mthca: Split off MTT allocation Split allocation of MTT range from creation of MR. This will be useful for implementing shared memory regions and userspace verbs. Signed-off-by: Roland Dreier Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit a03a5a67b243e9a24805ee18272ad25e5b2ca92c Author: Roland Dreier Date: Mon Jun 27 14:36:43 2005 -0700 [PATCH] IB/mthca: Move mthca_is_memfree checks Make mthca_table_put() and mthca_table_put_range() NOPs if the device is not mem-free, so that we don't have to have "if (mthca_is_memfree())" tests in the callers of these functions. This makes our code more readable and maintainable, and saves a couple dozen bytes of text in ib_mthca.ko as well. Signed-off-by: Roland Dreier Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit a852092e8cb305595ff630dfc3e9b25966a98276 Author: Roland Dreier Date: Mon Jun 27 14:36:42 2005 -0700 [PATCH] IB/mthca: Fix memset size Fix memset to use sizeof *props instead of just sizeof props. Signed-off-by: Roland Dreier Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 9e6970b5e96c3281e26b7d2e4e1839f356d5f5ff Author: Roland Dreier Date: Mon Jun 27 14:36:42 2005 -0700 [PATCH] IB/mthca: Enable unreliable connected transport Add support for unreliable connected (UC) transport to mthca driver: - Add attributes for UC to modify QP table. - Add support for posting UC work requests. Signed-off-by: Roland Dreier Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 34a4a753d15f905158d77fb81adc9c19a02a4639 Author: Roland Dreier Date: Mon Jun 27 14:36:41 2005 -0700 [PATCH] IB/mthca: Set RDMA/atomic capabilities correctly mthca apparently had the meanings of the max_rd_atomic and max_dest_rd_atomic QP attributes backwards. max_rd_atomic limits the maximum number of outstanding RDMA/atomic requests as an initiator (on a send queue), and max_dest_rd_atomic specifies the resources allocated to handle RMDA/atomic requests from the remote end of the connection. We were programming our QP context with these values swapped. Signed-off-by: Roland Dreier Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit cd123d7fcfde319bd723d14d975d60319a1b2ad8 Author: Roland Dreier Date: Mon Jun 27 14:36:40 2005 -0700 [PATCH] IB/mthca: Set QP static rate correctly Fix offset of static_rate in QP context. Pointed out by Dror Goldenberg. Signed-off-by: Roland Dreier Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 64dc81fca7f6d5c51e50ffa850640ad8358acd1f Author: Roland Dreier Date: Mon Jun 27 14:36:40 2005 -0700 [PATCH] IB/mthca: Use dma_alloc_coherent instead of pci_alloc_consistent Switch all allocations of coherent memory from pci_alloc_consistent() to dma_alloc_coherent(), so that we can pass GFP_KERNEL. This should help when the system is low on memory. Signed-off-by: Roland Dreier Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit bb2af78bcdbb8801791de33f1775c98b9178daab Author: Roland Dreier Date: Mon Jun 27 14:36:39 2005 -0700 [PATCH] IB/mthca: Clean up CQ debug Clean up CQ debugging code: make dump_cqe print on one line, and only dump error CQ entries for local operation errors. Signed-off-by: Roland Dreier Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 177214af2946e86ce89324f379720ec0dc8d4a9e Author: Bernhard Fischer Date: Mon Jun 27 14:36:39 2005 -0700 [PATCH] IB/mthca: Clean up error messages - Fix incorrect cut-n-paste in error messages. - Add missing newlines in error messages. - Use DRV_NAME instead of "ib_mthca" in a couple of places. Signed-off-by: Roland Dreier Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit cd4e8fb49d2326364971a56f5a4b664a976f3712 Author: Tom Duffy Date: Mon Jun 27 14:36:37 2005 -0700 [PATCH] IB/mthca: Add Sun copyright notice Add Sun copyright to files modified by Tom Duffy. Signed-off-by: Tom Duffy Signed-off-by: Roland Dreier Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit ffaa8bd6c904d1ab79b677905067349a5ff51d84 Author: Andrea Arcangeli Date: Mon Jun 27 14:36:36 2005 -0700 [PATCH] seccomp: tsc disable I believe at least for seccomp it's worth to turn off the tsc, not just for HT but for the L2 cache too. So it's up to you, either you turn it off completely (which isn't very nice IMHO) or I recommend to apply this below patch. This has been tested successfully on x86-64 against current cogito repository (i686 compiles so I didn't bother testing ;). People selling the cpu through cpushare may appreciate this bit for a peace of mind. There's no way to get any timing info anymore with this applied (gettimeofday is forbidden of course). The seccomp environment is completely deterministic so it can't be allowed to get timing info, it has to be deterministic so in the future I can enable a computing mode that does a parallel computing for each task with server side transparent checkpointing and verification that the output is the same from all the 2/3 seller computers for each task, without the buyer even noticing (for now the verification is left to the buyer client side and there's no checkpointing, since that would require more kernel changes to track the dirty bits but it'll be easy to extend once the basic mode is finished). Eliminating a cold-cache read of the cr4 global variable will save one cacheline during the tlb flush while making the code per-cpu-safe at the same time. Thanks to Mikael Pettersson for noticing the tlb flush wasn't per-cpu-safe. The global tlb flush can run from irq (IPI calling do_flush_tlb_all) but it'll be transparent to the switch_to code since the IPI won't make any change to the cr4 contents from the point of view of the interrupted code and since it's now all per-cpu stuff, it will not race. So no need to disable irqs in switch_to slow path. Signed-off-by: Andrea Arcangeli Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 6ae3db110e62b0846aae1b5c6e661484ee3a5ed1 Author: Benjamin Herrenschmidt Date: Mon Jun 27 14:36:35 2005 -0700 [PATCH] ppc64: Add missing exports This patch adds a couple of missing symbol exports. flush_dcache_page is used by the AGP driver and rtc_lock by the RTC driver. Signed-off-by: Benjamin Herrenschmidt Signed-off-by: Nick Piggin Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 8c8709334cec803368a432a33e0f2e116d48fe07 Author: Benjamin Herrenschmidt Date: Mon Jun 27 14:36:34 2005 -0700 [PATCH] ppc32: Remove CONFIG_PMAC_PBOOK This patch removes CONFIG_PMAC_PBOOK (PowerBook support). This is now split into CONFIG_PMAC_MEDIABAY for the actual hotswap bay that some powerbooks have, CONFIG_PM for power management related code, and just left out of any CONFIG_* option for some generally useful stuff that can be used on non-laptops as well. Signed-off-by: Benjamin Herrenschmidt Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit fcd16cc084f2b98ab64d27721abdb941f3d9c4cb Author: Benjamin Herrenschmidt Date: Mon Jun 27 14:36:33 2005 -0700 [PATCH] ppc32: remove obsolete macserial driver The macserial driver has been obsoleted by the new pmac_zilog driver for a while now and probably doesn't even work anymore on recent kernels. This patch removes it. Signed-off-by: Benjamin Herrenschmidt Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit e4ee69c8c1e7ff9790fbce29c7be50db57323a6f Author: Benjamin Herrenschmidt Date: Mon Jun 27 14:36:32 2005 -0700 [PATCH] ppc32: Bump PMU interrupt priority The Power Management Unit on PowerMacs is very sensitive to timeouts during async message exchanges. It uses rather crude protocol based on a shift register with an interrupt and is almost continuously exchanging messages with the host CPU on laptops. This patch adds a routine to the open_pic driver to be able to select a PMU driver so that it bumps it's interrupt priority to above the normal level. This will allow PMU interrupts to occur while another interrupt is pending, and thus reduce the risk of machine beeing abruptly shutdown by the PMU due to a timeout in PMU communication caused by excessive interrupt latency. The problem is very rare, and usually just doesn't happen, but it is still useful to make things even more robust. Signed-off-by: Benjamin Herrenschmidt Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit bb1657468152c5e5232c7bf35cf0e9c41b5d9910 Author: Marcelo Tosatti Date: Mon Jun 27 13:09:00 2005 -0300 [PATCH] 8xx: avoid "dcbst" misbehaviour with unpopulated TLB The proposed _tlbie call at update_mmu_cache() is safe because: Addresses for which update_mmu_cache() gets invocated are never inside the static kernel virtual mapping, meaning that there is no risk for the _tlbie() here to be thrashing the pinned entry, as Dan suspected. The intermediate TLB state in which this bug can be triggered is not visible by userspace or any other contexts, except the page fault handling path. So there is no need to worry about userspace dcbxxx users. The other solution to this is to avoid dcbst misbehaviour in the first place, which involves changing in-kernel "dcbst" callers to use 8xx specific SPR's. Summary: On 8xx, cache control instructions (particularly "dcbst" from flush_dcache_icache) fault as write operation if there is an unpopulated TLB entry for the address in question. To workaround that, we invalidate the TLB here, thus avoiding dcbst misbehaviour. Signed-off-by: Marcelo Tosatti Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit d4b3a80e399c989028acd5185c792fab82eda035 Author: Yoichi Yuasa Date: Mon Jun 27 14:36:30 2005 -0700 [PATCH] mips: fixed try_to_freeze build error arch/mips/kernel/signal.c: In function 'do_signal': arch/mips/kernel/signal.c:460: error: too many arguments to function 'try_to_freeze' Signed-off-by: Yoichi Yuasa Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 3212c6be251219c0f4c2df0c93e122ff5be0d9dc Author: Bob Picco Date: Mon Jun 27 14:36:28 2005 -0700 [PATCH] fix WANT_PAGE_VIRTUAL in memmap_init I spotted this issue while in memmap_init last week. I can't say the change has any test coverage by me. start_pfn was formerly used in main "for" loop. The fix is replace start_pfn with pfn. Signed-off-by: Bob Picco Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 9c4142a133f7efee08238722b157656c3da7ca97 Author: Kumar Gala Date: Mon Jun 27 14:36:16 2005 -0700 [PATCH] ppc32: Fix compiling of sandpoint platform Lost a curly brace in translation. Everything is better now. Signed-off-by: Matt McClintock Signed-off-by: Kumar Gala Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 747802ab478399f13ff57751c2ebd22577be4eeb Author: Stephen Hemminger Date: Mon Jun 27 11:33:16 2005 -0700 [PATCH] skge: version and copyright. Bump version and copyright year. Signed-off-by: Stephen Hemminger commit 19a33d4e6be2b627487676a69638e189e833675f Author: Stephen Hemminger Date: Mon Jun 27 11:33:15 2005 -0700 [PATCH] skge: Rx buffer optimization Optimize the receive buffer management code to replenish the buffers immediately (like tg3). Signed-off-by: Stephen Hemmminger commit d25f5a6774c3c567b11f8637a787603a62d102b1 Author: Stephen Hemminger Date: Mon Jun 27 11:33:14 2005 -0700 [PATCH] skge: handle Tx/Rx arbiter timeout Need to handle receive and transmit packet arbiter timeouts. Transmit arbiter timeouts happens when Gigabit sends to 100Mbit port on same switch and pause occurs. Signed-off-by: Stephen Hemminger commit 7e676d9136d89d0cdf661de4b9a5f8955af94e03 Author: Stephen Hemminger Date: Mon Jun 27 11:33:13 2005 -0700 [PATCH] skge: add PHY related debug messages Cleanup messages (for debug) about PHY interrrupts, because when user can't get driver working that is often the problem. Use a consistent way of enabling interrupts by port. Signed-off-by: Stephen Hemminger commit 45bada65c2a0bcc00729646071e66042ced64998 Author: Stephen Hemminger Date: Mon Jun 27 11:33:12 2005 -0700 [PATCH] skge: make Genesis/Broadcom code work Rewrite the code for handling the Broadcom PHY to something that works. Remove link polling because Broadcom and Yukon don't need it. When I wrote initial code, didn't have a genesis chipset based board to test, so it was a non-working guess. Signed-off-by: Stephen Hemminger commit 31b619c5abaa5512e7b41f190f9b7903b902f29a Author: Stephen Hemminger Date: Mon Jun 27 11:33:11 2005 -0700 [PATCH] skge: cleanup ethtool mode support Unify mapping of supported modes based on hardware. Signed-off-by: Stephen Hemminger commit 89bf5f231f776443a9d65da0f774aa3632534749 Author: Stephen Hemminger Date: Mon Jun 27 11:33:10 2005 -0700 [PATCH] skge: remove XM phy (untested code) Remove support for the non-Broadcom genesis based boards. The code is untested, and probably won't work as is. The newer boards are all Yukon based, and only old Genesis board I can find uses Broadcom. Signed-off-by: Stephen Hemminger commit c506a5090272752932be6ac0c29ffcbca38f2404 Author: Stephen Hemminger Date: Mon Jun 27 11:33:09 2005 -0700 [PATCH] skge: remove Yukon2 related special cases Remove the bits and pieces added relating to Yukon II chipset. The Yukon 2 will be in a separate driver. Signed-off-by: Stephen Hemminger commit b18f2091bc9f93548ea63752278fceaeacedab20 Author: Stephen Hemminger Date: Mon Jun 27 11:33:08 2005 -0700 [PATCH] skge: remove unused declarations Get rid of definitions for chip versions and PHY chips that this driver does not support. Signed-off-by: Stephen Hemminger commit 4707953454677f985289b4e4bcbea41f0cc651c2 Author: Stephen Hemminger Date: Mon Jun 27 11:33:07 2005 -0700 [PATCH] skge: eliminate Yukon2 hooks The Yukon chips don't support TSO, and Yukon2 will be a separate driver. Signed-off-by: Stephen Hemminger commit 981d0377d94f4d611f1c73429c0c32b35b56855f Author: Stephen Hemminger Date: Mon Jun 27 11:33:06 2005 -0700 [PATCH] skge: replace chip_rev() accessor Replace inline accessor functions for chip revision and number of ports with simple structure members. Signed-off-by: Stephen Hemminger commit 467b3417f9985b9a83ccebef2d4e07e3e8a9495e Author: Stephen Hemminger Date: Mon Jun 27 11:33:05 2005 -0700 [PATCH] skge: use pci_read_config_word Rather than accessing PCI config space through MMIO space, use the standard PCI functions. Signed-off-by: Stephen Hemminger commit 6b0c1480491a9e2d9d34368e09e6acddbb173515 Author: Stephen Hemminger Date: Mon Jun 27 11:33:04 2005 -0700 [PATCH] skge: function amd macro name change The inlines and macro's needed some cleanup's and fixes: * change name of macro SKGEMAC_REG to SK_REG to better reflect usage and fix comments * ditto for SK_GEXM_REG -> SK_XMAC_REG and SKGEGMA_REG -> SK_GMA_REG * change skge_gm_ to just gm_ since it is just a local function and long names look ugly. * change skge_xm_ to just xm_ * fix xm_write32 to write as two u16's with correct byte order * fix xm_outaddr to correctly use offset Signed-off-by: Stephen Hemminger commit 275834d1095dcd52d0fefd0d3f7d0320552fe277 Author: Stephen Hemminger Date: Mon Jun 27 11:33:03 2005 -0700 [PATCH] skge: PCI_DEVICE() macro Use PCI_DEVICE() macro. Signed-off-by: Stephen Hemminger commit 955660652af35524974cf4623c02bc99a3785949 Author: Stephen Hemminger Date: Mon Jun 27 11:33:02 2005 -0700 [PATCH] skge: whietspace cleanup Cleanup whitespace around if() and switch() and end of lines Signed-off-by: Stephen Hemminger commit d498a2c76568d3bb5add06390f077b1a423b0794 Merge: 8b789b7d7e9b12b086d6d2f0759073a11447c7e7 ec9f47cd6a14ca069bb7552a984c0a338fc7262b Author: Linus Torvalds Date: Mon Jun 27 15:04:08 2005 -0700 Merge master.kernel.org:/home/rmk/linux-2.6-serial commit 8b789b7d7e9b12b086d6d2f0759073a11447c7e7 Merge: 61cca8c72eb284e80876bafdea057055f6e793e4 b46ffaefe3c251897de23e5a534dd922c969d67b Author: Linus Torvalds Date: Mon Jun 27 15:00:10 2005 -0700 Merge master.kernel.org:/home/rmk/linux-2.6-arm commit 61cca8c72eb284e80876bafdea057055f6e793e4 Merge: e494f6333bef20fd9d8689062260c5d0136a3ea0 e254e9bff5283aad1af6d74d2a312ee011b84d61 Author: Linus Torvalds Date: Mon Jun 27 14:55:50 2005 -0700 Merge 'upstream' branch of rsync://rsync.kernel.org/pub/scm/linux/kernel/git/jgarzik/netdev-2.6 commit e494f6333bef20fd9d8689062260c5d0136a3ea0 Merge: 3bd19078c215d15e20b4447d9c4aa0065813b207 0c144d0d0303917000cc918e63567b5ded22d5e2 Author: Linus Torvalds Date: Mon Jun 27 14:54:50 2005 -0700 Merge 'upstream' branch of rsync://rsync.kernel.org/pub/scm/linux/kernel/git/jgarzik/libata-dev commit 3bd19078c215d15e20b4447d9c4aa0065813b207 Merge: 3e0777b8fa96f7073ed5d13d3bc1d573b766bef9 3e90928d81449ee10a06bc306916503d5c284a25 Author: Linus Torvalds Date: Mon Jun 27 14:53:48 2005 -0700 Merge 'upstream' branch of rsync://rsync.kernel.org/pub/scm/linux/kernel/git/jgarzik/misc-2.6 commit 3e0777b8fa96f7073ed5d13d3bc1d573b766bef9 Merge: a94130e00038ebeb2f66901a4a4a9e05a03051c1 e5119885f00874453e837e3407014b73de2f4741 Author: Linus Torvalds Date: Mon Jun 27 14:47:31 2005 -0700 Merge rsync://rsync.kernel.org/pub/scm/linux/kernel/git/dtor/input.git manually Some manual fixups required due to clashes with the PF_FREEZE cleanups. commit 0ed0c0c48c508578c30aa58f755ca0d692636906 Author: Alan Stern Date: Wed Jun 15 15:49:48 2005 -0400 [PATCH] USB: usbcore: inverted test for resuming interfaces This one-liner fixes a test for interfaces that are already resumed. It would be nice if this could get into 2.6.12, but it's not critical since it only affects people doing selective (runtime) suspend/resume. Signed-off-by: Alan Stern Signed-off-by: Greg Kroah-Hartman commit 822e14ac222d1dad3f5393b75603f0455aebbefc Author: David Brownell Date: Mon Jun 13 06:55:03 2005 -0700 [PATCH] USB: resolve ethernet gadget build glitch on pxa This fixes a build error on pxa25x processes with pxa2xx_udc and CONFIG_USB_ETH=m # CONFIG_USB_ETH_RNDIS is not set The error is because on that CPU there's no status transfer support except with RNDIS. Workaround, enable the RNDIS support too. Signed-off-by: Ian Campbell Signed-off-by: David Brownell Signed-off-by: Greg Kroah-Hartman commit e3bc8b4e00d0ce219165d469409f2770698574f6 Author: David Brownell Date: Wed Jun 15 08:04:30 2005 -0700 [PATCH] USB: usbnet debug message fix One debug message won't print the right value; OSDL bugid 4545. Signed-off-by: David Brownell Signed-off-by: Greg Kroah-Hartman commit 86dbde9cbdfe8bc2c2dfe5d33027d3acc55e0470 Author: Matthew Dharm Date: Mon Jun 6 17:22:42 2005 -0700 [PATCH] USB Storage: retry hard errors This patch started life as as527, and was rediffed by me. Since the IDE interface doesn't convey much information about types of errors, many USB-IDE adapters report all low-level errors with SK = 0x04, which is supposed to be used only for non-recoverable errors. As a result the SCSI midlayer doesn't retry the command. But quite often a retry would succeed, whereas an unnecessary retry doesn't really hurt anything. This patch uses a recently-implemented flag to tell the SCSI midlayer that such hardware errors should be retried. Signed-off-by: Alan Stern Signed-off-by: Matthew Dharm Signed-off-by: Greg Kroah-Hartman commit 4d07ef762fc8d6d35ecc1511a3b953a733a61a5f Author: Matthew Dharm Date: Mon Jun 6 17:21:41 2005 -0700 [PATCH] USB Storage: port reset on transport error This patch causes a port reset whenever there's a transport error or abort. If that fails it reverts back to doing a mass-storage device reset. It started life as as497 and was rediffed by me. This makes error recovery a lot quicker and more reliable. Signed-off-by: Alan Stern Signed-off-by: Matthew Dharm Signed-off-by: Greg Kroah-Hartman commit 5203ad441310a4c2abd4fb79015a6bdadc2a5a4f Author: Matthew Dharm Date: Mon Jun 6 17:19:29 2005 -0700 [PATCH] USB Storage: endpoint toggles and reset delays This patch does two things to help reset recovery. It started life as as496 and was rediffed by me. First, the patch checks the result of a CLEAR_HALT request and doesn't reset the endpoint's data toggle unless the request succeeded. Second, it reduces the timeout for a device reset from 20 seconds to 5 seconds. If all goes well, then I've finally figured quilt out and this patch should apply cleanly. Signed-off-by: Alan Stern Signed-off-by: Matthew Dharm Signed-off-by: Greg Kroah-Hartman commit 01205a0e60bb5a66d768b881fb8355981b912510 Author: Domen Puncer Date: Sun Jun 5 14:46:16 2005 +0200 [PATCH] USB: usblp: 2x up() in usblp_read up(&usblp->sem) was called twice in a row in this code path. Signed-off-by: Domen Puncer Signed-off-by: Greg Kroah-Hartman commit c11372da33c9d38cb35867915f15c74778e1a3a4 Author: Vincent Vanackere Date: Sun Jun 5 12:21:43 2005 +0200 [PATCH] USB: fix atiremote input doesn`t register `device` & `driver` section in sysfs (/sys/class/input/event#) > On Sun, Apr 10, 2005 at 07:21:28PM +0600, Viktor A. Danilov wrote: > > > > PROBLEM: aiptek input doesn`t register `device` & `driver` section in sysfs (/sys/class/input/event#) > > REASON: `dev` - field not filled... > > SOLUTION: in linux/drivers/usb/input/aiptek.c write > > aiptek->inputdev.dev = &intf->dev; > > before calling > > input_register_device(&aiptek->inputdev); The following (tested) patch fixes the exact same issue with the ATI Remote input driver. Signed-off-by: Greg Kroah-Hartman commit 16367877949a91b11bcc6f37b94d0033388b4256 Author: Kiril Jovchev Date: Sun Jun 5 01:52:33 2005 +0300 [PATCH] USB: add support for Creative WebCam mini to stv680 driver Added support for Creative WebCam Go Mini. Camera has STV680 chip and just different Product ID(0x4007) and Vendor ID (0x041e). Signed-off-by: Kiril Jovchev Signed-off-by: Greg Kroah-Hartman commit 2c45b6feb394337b4b468229632b8737375caf1d Author: C. Adam Oldham Date: Thu Jun 2 17:16:34 2005 -0400 [PATCH] USB: Fix race condition in usblp_write Initialize status fields in the read and write urbs to prevent a race condition with open/read/close - open/write/close sequences. Fixes bug #4432 at bugzilla.kernel.org Signed-off-by: Adam Oldham Signed-off-by: Greg Kroah-Hartman commit 5da0106f0b9b13afa4a902c01d4c98b002df55ff Author: David Brownell Date: Tue May 31 10:21:11 2005 -0700 [PATCH] USB: wireless usb declarations This provides declarations for new requests, descriptors, and bitfields as defined in the Wireless USB 1.0 spec. Device support will involve a new "Wire Adapter" device class, connecting a USB Host to a cluster of wireless USB devices. There will be two adapter types: * Host Wireless Adapter (HWA): the downstream link is wireless, which connects a wireless USB host to wireless USB devices (not unlike like a hub) including to the second type of adapter. * Device Wireless Adapter (DWA): the upstream link is wireless, for connecting existing USB devices through wired links into the cluser. All wireless USB devices will need persistent (and secure!) key storage, and it's probable that Linux -- or device firmware -- will need to be involved with that to bootstrap the initial secure key exchange. Some user interface is required in that initial key exchange, and since the most "hands-off" one is a wired USB link, I suspect wireless operation will usually not be the only mode for wireless USB devices. (Plus, devices can recharge batteries using wired USB...) All other key exchange protocols need error prone user interactions, like copying and/or verifying keys. It'll likely be a while before we have commercial Wireless USB hardware, much less Linux implementations that know how to use it. Signed-off-by: David Brownell Signed-off-by: Greg Kroah-Hartman commit 77078570abe0848c3076b4f7d42f79b1407f3e8f Author: David Brownell Date: Sat May 28 10:46:18 2005 -0700 [PATCH] USB: ehci-hcd - fix page pointer allocation in itd_patch() The itd_patch() function is responsible for allocating entries in the buffer page pointer list of the iTD. Particularly, a new page pointer is needed every time when buffer data crosses a page boundary. However, there is a bug in the allocation logic: the function does not allocate a new entry when the current transaction is the first transaction in the iTD (as indicated by first!=0). The consequence is that, when the data of the first transaction begins somewhere at the end of a page so that it actually does cross the page boundary, no new page pointer is allocated. This means that the data at the end of the first transaction (beyond the page boundary) will be accessed by the HC using the second page pointer, which is zero. Furthermore, the first page pointer will be later overwritten by the page pointers of the other transactions, which will garble it because the value is or-ed into the iTD field. All this particular check (for !first) does is cause incorrect behaviour, so it should be entirely removed (and with it the variable first that is not used for anything else). Signed-off-by: Clemens Ladisch Signed-off-by: David Brownell Signed-off-by: Greg Kroah-Hartman commit e07fefa6b212f43c40fdbc1a62de690d91a4b617 Author: Alan Stern Date: Tue May 31 16:33:21 2005 -0400 [PATCH] USB UHCI: Detect invalid ports This patch changes the way uhci-hcd detects valid ports. The specification doesn't mention any way to find out how many ports a controller has, so the driver has to use some heuristics, reading the port status and control register and deciding whether the value makes sense. With this patch the driver will recognize a typical failure mode (all bits set to one) for nonexistent ports and won't assume there are always at least 2 ports -- such an assumption seems silly if the heuristics have already shown that the ports don't exist. Signed-off-by: Alan Stern Signed-off-by: Greg Kroah-Hartman commit 486e2df6ce213d0c776befdf3fe5ffc61dd61688 Author: David Brownell Date: Tue May 24 17:51:52 2005 -0700 [PATCH] USB gadget: drain rndis response queue on disconnect Drain the rndis response queue on disconnect. This fixes a problem in which an rndis response left in the queue from a previous session could cause a subsequent session to fail. Signed-off-by: Andy Lowe Signed-off-by: David Brownell Signed-off-by: Greg Kroah-Hartman commit 45e45ab45c266642276d01e56d9fb5dccbfad960 Author: David Brownell Date: Mon May 16 08:26:38 2005 -0700 [PATCH] USB: fix drivers/usb/gadget/ether.c compile error This fixes a compile glitch with CONFIG_USB_ETH_RNDIS disabled, and replaces some inline #ifdeffery (and other code) with inline functions which can evaluate to constants. Signed-off-by: David Brownell Signed-off-by: Greg Kroah-Hartman commit 391eca9d8892a940ff8dbfee2ca78942e05c2d37 Author: Alan Stern Date: Tue May 10 15:34:16 2005 -0400 [PATCH] USB: dummy_hcd: add suspend/resume support This patch adds support to dummy_hcd for suspending and resuming the root hub and the emulated platform devices. Signed-off-by: Alan Stern Signed-off-by: Greg Kroah-Hartman commit cc095b0b5b653dca3e106710a72ba28b5bb7456b Author: Alan Stern Date: Tue May 10 15:28:38 2005 -0400 [PATCH] USB: dummy_hcd: sparse cleanups This patch fixes the byte-ordering issue for setup packets in the dummy_hcd driver and cleans up a few things that sparse -Wbitwise dislikes. Signed-off-by: Alan Stern Signed-off-by: Greg Kroah-Hartman commit f0706930091902641929f2229bfb106144782c94 Author: Duncan Sands Date: Sat May 28 22:06:20 2005 +0200 [PATCH] USB: usbatm kcalloc cleanup you seem to have applied the original, not the new improved one with whiter teeth that uses kcalloc instead of kmalloc + memset. Here's a patch that goes on top of the one you applied. Signed-off-by: Duncan Sands Signed-off-by: Greg Kroah-Hartman commit 843c944fb86e5e31ee7b319172e657ea22301322 Author: Andrew Morton Date: Mon May 30 01:09:06 2005 -0700 [PATCH] USB: fix usbatm gcc-2.95.x bug Work around the gcc-2.95.x macro expansion bug. Cc: Duncan Sands Signed-off-by: Andrew Morton Signed-off-by: Greg Kroah-Hartman commit 65412e48e21ff4fdaf2aea1565ef4fb3ef5262ce Author: Duncan Sands Date: Fri May 27 10:00:08 2005 +0200 [PATCH] USB ATM: avoid oops on bind failure; plug memory leak Zero the entire instance, not just the struct usbatm_data head. Make sure the just allocated urb is freed if we fail to allocate a buffer. Based on a patch by Stanislaw W. Gruszka. Signed-off-by: Duncan Sands Acked-by: Pete Zaitcev Signed-off-by: Greg Kroah-Hartman commit e20d6645f794b51835e6f740a5b6f95c7e3fd843 Author: Duncan Sands Date: Thu May 26 14:32:51 2005 +0200 [PATCH] USB ATM: reduce log spamming Reduce the number of "unknown vpi/vci" debug messages to (usually) at most one per-urb, rather than one per-cell. This is only an issue when (a) many packets come in but no connection is open; and (b) CONFIG_USB_DEBUG is set. Signed-off-by: Duncan Sands Signed-off-by: Greg Kroah-Hartman commit 86699e35923366ccb5c3451d24e94deb9dd0af29 Author: Duncan Sands Date: Wed May 11 20:15:37 2005 +0200 [PATCH] USB ATM: bits and bobs Makefile and Kconfig entries for the new drivers. Signed-off-by: Duncan Sands Signed-off-by: Greg Kroah-Hartman commit 0bb3cf37df1b59a1fed079e7f8f140ef9ec73130 Author: Duncan Sands Date: Wed May 11 20:17:09 2005 +0200 [PATCH] USB ATM: generic DSL modem driver xusbatm Doesn't do any firmware loading etc, just transmission and reception. The user needs to take care of modem initialization, and load the module with parameters giving the endpoints to use and so forth. Signed-off-by: Duncan Sands Signed-off-by: Greg Kroah-Hartman commit 1b0e614652344a2d39eb336f3dc07651782883bf Author: Duncan Sands Date: Wed May 11 20:19:29 2005 +0200 [PATCH] USB ATM: driver for the Conexant AccessRunner chipset cxacru Driver for modems based on the Conexant AccessRunner chipset. Original patch by Josep Comas, much reworked by Roman Kagan. Signed-off-by: Duncan Sands Signed-off-by: Greg Kroah-Hartman commit 48da7267ff1631b0bff1eab15db86adace11ea91 Author: Duncan Sands Date: Wed May 11 20:20:40 2005 +0200 [PATCH] USB ATM: port speedtch to new usbatm core Port the speedtch driver to the new usbatm core. The code is much the same as before, just reorganized, though I threw in some minor improvements (a new module parameter for choosing the altsetting, more robust urb failure handling, ...) while I was there. Signed-off-by: Duncan Sands Signed-off-by: Greg Kroah-Hartman commit 9574507c98087951866ef30c8bf876e23ca4b99e Author: Andrew Morton Date: Wed May 11 20:24:03 2005 +0200 [PATCH] USB: fix speedtch.c merge with next patch. Signed-off-by: Andrew Morton Signed-off-by: Greg Kroah-Hartman commit c59bba75fa500f13ef14215d599ee0d7faa1b954 Author: Duncan Sands Date: Wed May 11 20:24:03 2005 +0200 [PATCH] USB ATM: new usbatm core Rework the core usbatm code: minidrivers (i.e. drivers for particular modems) now register themselves with the usbatm core, supplying methods for binding/unbinding etc. The design was inspired by usb-serial and usbnet. At the same time, more common code from the speedtch and cxacru (patch 3/5) drivers was generalized and moved into the core. The transmission and reception parts have been unified and simplified. Since this is a major change and I don't like underscores in file names, usb_atm.[ch] has been renamed usbatm.[ch]. Many thanks to Roman Kagan, who did a lot of the coding. Signed-off-by: Duncan Sands Signed-off-by: Greg Kroah-Hartman commit d49d431744007cec0ee1a3ade96f9e0f100c7907 Author: David Brownell Date: Sat May 7 13:21:50 2005 -0700 [PATCH] USB: misc ehci updates Various minor EHCI updates * Dump some more info in the debug dumps, notably the product description (e.g. chip vendor), BIOS handhake flags, and debug port status (when it's not managed by the HCD). * Minor updates to the BIOS handoff code: always flag the HCD as owned by Linux (in case BIOS doesn't grab it "early"), and on the buggy-BIOS path always match the "early handoff" code and forcibly disable SMI IRQs. * For the disabled 64bit DMA support, there's now a constant to use for the mask; use it. Signed-off-by: David Brownell Signed-off-by: Greg Kroah-Hartman commit 9198769363d4dc1d63d49ecb2e2b189aceb42d94 Author: David Brownell Date: Sat May 7 13:20:19 2005 -0700 [PATCH] USB: pxa2xx_udc updates This has several small updates to the px2xx UDC driver: * small fixes from Eugeny S. Mints - local_irq_save() around potential endpoint disable race - fix handling of enqueue to OUT endpoints (potential oops) * add shutdown() method to disable any D+ pullup * rename methods accessing raw signals, referencing the signals * describes itself as for "pxa25x", since pxa27x is different Signed-off-by: David Brownell Signed-off-by: Greg Kroah-Hartman commit 988199fe34411b413d5a388fc751c91eb4686f36 Author: David Brownell Date: Sat May 7 13:05:52 2005 -0700 [PATCH] USB: goku_udc updates (sparse, SETUP api change) Sparse updates; and the API change for SETUP packets being in USB byteorder. Signed-off-by: David Brownell Signed-off-by: Greg Kroah-Hartman commit 320f34595c3cf37d180a087a935c050e4ac0e4d5 Author: David Brownell Date: Sat May 7 13:05:18 2005 -0700 [PATCH] USB: net2280 updates (sparse, SETUP api change) This is mostly "sparse" related updates, one of which was a missing le32_to_cpu() should have affected big-endian hardware. Notable is the API change: setup packets are now provided in USB byte order. This affects only big-endian hardware, and the gadget drivers have been updated in a separate patch. Signed-off-by: David Brownell Signed-off-by: Greg Kroah-Hartman commit 1bbc169621cbe502b9143a27eb12802a0f1d43a0 Author: David Brownell Date: Sat May 7 13:05:13 2005 -0700 [PATCH] USB: gadget driver updates (SETUP api change) This updates most of the gadget framework to expect SETUP packets use USB byteorder (matching the annotation in and usage in the host side stack): - definition in - gadget drivers: Ethernet/RNDIS, serial/ACM, file_storage, gadgetfs. - dummy_hcd It also includes some other similar changes as suggested by "sparse", which was used to detect byteorder bugs. Signed-off-by: David Brownell Signed-off-by: Greg Kroah-Hartman commit 028b271b687714f9fc7a1e89bb79f1fbeef154ee Author: David Brownell Date: Fri May 6 07:02:01 2005 -0700 [PATCH] USB: Kconfig fixes for usb/gadget This prevents gadget drivers from being selected when no controller has been selected, by adding an additional boolean and depending on it. It's mostly to help "allmodconfig". Signed-off-by: David Brownell Signed-off-by: Greg Kroah-Hartman commit 4244f72436ab77c3c29a6447af81734ab3925d85 Author: Florian Echtler Date: Fri May 6 19:05:39 2005 +0200 [PATCH] USB: upgrade of the idmouse driver Signed-off-by: Florian Echtler Signed-off-by: Andreas Deresch Signed-off-by: Greg Kroah-Hartman commit 685eb93f086eb15d9fb1e82c7400fd750f564640 Author: Alan Stern Date: Tue May 3 16:27:26 2005 -0400 [PATCH] USB dummy_hcd: Use root-hub interrupts instead of polling This patch makes the dummy_hcd driver use emulated root-hub interrupts instead of polling. It's in the spirit of similar changes being made to the other HCDs. Signed-off-by: Alan Stern Signed-off-by: Greg Kroah-Hartman commit f1c39fad7d1bbea31744138cd3a532ff346cd4ab Author: Alan Stern Date: Tue May 3 16:24:04 2005 -0400 [PATCH] USB dummy_hcd: Centralize link state computations This patch adds to the dummy_hcd driver a new routine for keeping track of all changes in the state of the emulated USB link. The logic is now kept in one spot instead of spread around, and it's easier to verify and update the code. The behavior of the port features has been corrected in a few respects as well (for instance, if the POWER feature is clear then none of the other features can be set). Also added is support for the (relatively new) _connect() and _disconnect() calls of the Gadget API. Signed-off-by: Alan Stern Signed-off-by: Greg Kroah-Hartman commit d9b762510c186584a6be0d3ece03e8a4b2ac13a8 Author: Alan Stern Date: Tue May 3 16:15:43 2005 -0400 [PATCH] USB dummy_hcd: Use separate pdevs for HC and UDC This patch makes the dummy_hcd driver create separate platform devices for the emulated host controller and emulated device controller. This gives a more accurate simulation and will permit testing of situations where only one of the two devices is suspended. This also changes the name of the host controller platform device to match the name of the driver. That way the normal platform bus probe mechanism will handle binding the driver to the device. Signed-off-by: Alan Stern Signed-off-by: Greg Kroah-Hartman commit c2db8b5e5692a6f35913a829607ee6efde3c7cbd Author: Alan Stern Date: Fri Apr 29 16:30:48 2005 -0400 [PATCH] USB: dummy_hcd: USB_PORT_FEAT changed to USB_PORT_STAT This patch makes some cosmetic changes to dummy_hcd: Minor alterations of comments and whitespace. Replace USB_PORT_FEAT_xxx with USB_PORT_STAT_xxx. This is appropriate as the values are stored in a status variable and they aren't feature indices. Also it allows the elimination of a bunch of awkward bit shift operations. Signed-off-by: Alan Stern Signed-off-by: Greg Kroah-Hartman commit 5742b0c95026c817d9c266174ca39a909e8d38ca Author: Alan Stern Date: Mon May 2 11:25:17 2005 -0400 [PATCH] USB dummy_hcd: Partial OTG emulation Partial OTG support for dummy_hcd, mostly as a framework for further work. It emulates the new OTG flags in the host and peripheral frameworks, if that option is configured. But it's incomplete: - Resetting the peripheral needs to clear the OTG state bits; a second enumeration won't work correctly. - This stops modeling HNP right when roles should switch the first time. It should probably disconnect, then set the usb_bus.is_b_host and usb_gadget.is_a_peripheral flags; then it'd enumerate almost normally, except for the role reversal. Roles could then switch a second time, back to "normal" (with those flags cleared). - SRP should be modeled as "resume from port-unpowered", which is a state that usbcore doesn't yet use. HNP can be triggered by enabling the OTG whitelist and configuring a gadget driver that's not in that list; or by configuring Gadget Zero to identify itself as the HNP test device. Sent-by: David Brownell Signed-off-by: Alan Stern Signed-off-by: Greg Kroah-Hartman commit 65111084c63d7674dc37833e8eb59cfdaa4d0bda Author: David Brownell Date: Thu Apr 28 13:52:31 2005 -0700 [PATCH] USB: more omap_udc updates (dma and omap1710) More omap_udc updates: * OMAP 1710 updates - new UDC bit for clearing endpoint toggle, affecting CLEAR_HALT - new OTG bits affecting wakeup * Fix the bug Vladimir noted, that IN-DMA transfer code path kicks in for under 1024 bytes (not "up to 1024 bytes") * Handle transceiver setup more intelligently - use transceiver whenever one's available; this can be handy for GPIO based, loopback, or transceiverless configs - cleanup correctly after the "unrecognized HMC" case * DMA performance tweaks - allow burst/pack for memory access - use 16 bit DMA access most of the time on TIPB * Add workarounds for some DMA errata (not observed "in the wild"): - DMA CSAC/CDAC reads returning zero - RX/TX DMA config registers bit 12 always reads as zero (TI patch) * More "sparse" warnings removed, notably "changing" the SETUP packet to return data in USB byteorder (an API change, null effect on OMAP except for these warnings). Signed-off-by: David Brownell Signed-off-by: Greg Kroah-Hartman commit 907cba35f7f24587f0eff60073e1f4e1e01c976d Author: David Brownell Date: Thu Apr 28 13:48:09 2005 -0700 [PATCH] USB: ethernet gadget updates (mostly cleanup) Some cleanup for the the Ethernet part of the Ethernet/RNDIS gadget driver: - Remove remnants of ancient endpoint init logic; this is simpler, clearer - Save a smidgeon of space in the object file - Get rid of some #ifdeffery, mostly by using some newish inlines - Reset more driver state as part of USB reset - Remove a needless wrapper around an RNDIS call - Improve and comment the status interrupt handling: * RNDIS sometimes needs to queue these transfers (rarely in normal cases, but reproducibly while Windows was deadlocking its USB stack) * Mark requests as busy/not - Enable the SET_NETDEV_DEV() call; sysfs seems to behave sanely now This is a net shrink of source code. Signed-off-by: David Brownell Signed-off-by: Greg Kroah-Hartman commit 340600ab4cf0cc41efd01a65af97ebb7d35a7f85 Author: David Brownell Date: Thu Apr 28 13:45:25 2005 -0700 [PATCH] USB: rndis updates (mostly cleanup) Some bugfixes and lots of cleanup (net code shrink): - On reset, force the RNDIS state machine its initial state - Hook up the RNDIS (outgoing) filters to the CDC mechanism - Lots of cleanup: * Eliminate duplicate copy of OID table; * Unify handlying of the OID "query" response data pointer; * Reduce code duplication for calculating query response lengths; * Remove some checks for "can't happen" errors; * Get rid of debugging #ifdefs by making the debug flag an integer level Most of the patch, by volume, relates to those query response cleanups. It incidentally shaves off a few hundred bytes of object code. Signed-off-by: David Brownell Signed-off-by: Greg Kroah-Hartman commit 247f3105636caa9d1d8a4c3dfb755de42633bc80 Author: Alan Stern Date: Mon Apr 25 11:28:04 2005 -0400 [PATCH] USB HCDs: no longer need to register root hub This patch changes the host controller drivers; they no longer need to register their root hubs because usbcore will take care of it for them. Signed-off-by: Alan Stern Signed-off-by: Greg Kroah-Hartman commit 8ec8d20b21f00a36343ca0ebd6c6be9421724a1e Author: Alan Stern Date: Mon Apr 25 11:25:17 2005 -0400 [PATCH] usbcore: register root hub in usb_add_hcd This patch makes usbcore automatically allocate and register the root hub device for a new host controller when the controller is registered. This way the HCDs don't all have to include the same boilerplate code. As a pleasant side benefit, the register_root_hub routine can now be made static and not EXPORTed. Signed-off-by: Alan Stern Signed-off-by: Greg Kroah-Hartman commit bc96c0ad1ed0c938fefc0423aa99f086c5a2a1ea Author: Alan Stern Date: Mon Apr 25 11:21:31 2005 -0400 [PATCH] ohci-omap, sl811, dummy: remove hub_set_power_budget This patch changes the HCDs that used the old hub_set_power_budget call, making them use the new hcd->power_budget field instead. Signed-off-by: Alan Stern Acked-by: David Brownell Signed-off-by: Greg Kroah-Hartman commit 2532178a68b5ce4e421d50ea1b1dcc0a1359f19d Author: Alan Stern Date: Mon Apr 25 11:14:31 2005 -0400 [PATCH] UHCI: Don't store device pointer in QH or TD This patch simplifies the uhci-hcd driver by removing the device pointer currently stored in the QH and TD structures. Those pointers weren't being used for anything other than to increment the device's reference count, which is unnecessary since the device is used only when an URB completes, and outstanding URBs take their own reference to the device. As a useful side effect, this change means that uhci-hcd no longer needs to have the root-hub device available in the start routine. Signed-off-by: Alan Stern Signed-off-by: Greg Kroah-Hartman commit 7d35b9298539d2818c51fe9070b08cf9876016f4 Author: Alan Stern Date: Mon Apr 25 11:18:32 2005 -0400 [PATCH] usbcore: Remove hub_set_power_budget This patch removes the hub_set_power_budget routine, which was used by a couple of HCDs to indicate that the root hub was running on battery power. In its place is a new field added to struct usb_hcd, which HCDs can set before the root hub is registered. Special-case code in the hub driver knows to look at this field when configuring a root hub. Signed-off-by: Alan Stern Acked-by: David Brownell Signed-off-by: Greg Kroah-Hartman commit f58f97fa9d258e4110ee1257a63cd1af51787f69 Author: Colin Leroy Date: Sun May 1 11:29:10 2005 +0200 [PATCH] USB: check for device in zd1201_resume My patch adding PM support for zd1201 didn't check for the device on resume, which can oops if the device has been removed. This patch fixes it. Signed-off-by: Colin Leroy Signed-off-by: Greg Kroah-Hartman commit a3c900bb8cbacfecf0be51313e43f330663266a1 Author: Colin Leroy Date: Sun Apr 24 16:37:15 2005 -0700 [PATCH] USB: PM support for zd1201 This patch enables power management (suspend, resume) support for zd1201. It fixes problems after wakeup for me, but these problems did not appear everytime without this patch. it's a bit empirical, based on what the usbnet does, so maybe not correct... Maybe someone can give it a look before it's applied. Signed-off-by: Colin Leroy Signed-off-by: Andrew Morton Signed-off-by: Greg Kroah-Hartman commit 507ca9bc0476662f3463888d583864834eab1e11 Author: Greg Kroah-Hartman Date: Sat Apr 23 12:49:16 2005 -0700 [PATCH] USB: add ability for usb-serial drivers to determine if their write urb is currently being used. This removes a lot of racy and buggy code by trying to check the status of the urb. Signed-off-by: Greg Kroah-Hartman commit f4df0e334a9fc731689e8ba4f42a0d72a7491348 Author: David Brownell Date: Sat Apr 23 12:49:16 2005 -0700 [PATCH] USB: add reboot notifier to ohci Adds a reboot notifier to OHCI, mostly to benefit kexec; plus minor #include tweaks. Signed-off-by: David Brownell Signed-off-by: Greg Kroah-Hartman commit ff7c79e4f37821235b51fb8e19088c08938cc8fc Author: David Brownell Date: Fri Apr 22 13:17:00 2005 -0700 [PATCH] USB: usbtest updates Updates to "usbtest" driver: * Improve some diagnostics. One path that never generated diagnostics before should now generate two ... unless you hit a GCC bug that all my compilers seem to have, go figure. * Add suspend/resume support, so this behaves when the Linux host being used for testing suspends. * Don't test the "zero byte ep0 read" case unless real-world relevance for the testing is is irrelevant. Signed-off-by: David Brownell Signed-off-by: Greg Kroah-Hartman commit 884b600f63dc7c646f415a5d8f356df1f66ff6f2 Author: Oliver Neukum Date: Thu Apr 21 21:28:02 2005 +0200 [PATCH] USB: fix acm trouble with terminals This patch fixes lost LF when ACM device is used with getty/login/bash, in case of a modem which takes calls. Signed-off-by: Pete Zaitcev Signed-off-by: Oliver Neukum Signed-off-by: Greg Kroah-Hartman commit d5926ae7a827bdd06b588ffbc56fd4525cd9214a Author: Alan Stern Date: Thu Apr 21 15:56:37 2005 -0400 [PATCH] usbcore support for root-hub IRQ instead of polling This is a revised version of an earlier patch to add support to usbcore for driving root hubs by interrupts rather than polling. There's a temporary flag added to struct usb_hcd, marking devices whose drivers are aware of the new mechanism. By default that flag doesn't get set so drivers will continue to see the same polling behavior as before. This way we can convert the HCDs one by one to use interrupt-based event reporting, and the temporary flag can be removed when they're all done. Also included is a small change to the hcd_disable_endpoint routine. Although endpoints normally shouldn't be disabled while a controller is suspended, it's legal to do so when the controller's driver is being rmmod'ed. Lastly the patch adds a new callback, .hub_irq_enable, for use by HCDs where the root hub's port-change interrupts are level-triggered rather than edge-triggered. The callback is invoked each time khubd has finished processing a root hub, to let the HCD know that the interrupt can safely be re-enabled. Signed-off-by: Alan Stern Signed-off-by: Greg Kroah-Hartman commit 02597d2deec2a3de0e2b52c1f83904b65626a0d5 Author: Alan Stern Date: Thu Apr 28 14:51:27 2005 -0400 [PATCH] USB UHCI: Add shutdown method After all the discussion you might not be interested in this still, but nevertheless here it is. This patch adds a shutdown method to the uhci-hcd driver. Its prerequisite is the patch you wrote adding shutdown support for PCI. Signed-off-by: Alan Stern Signed-off-by: Greg Kroah-Hartman commit c074b416b94c0aa4a371f24bf6cc13d8cf1fab59 Author: Alan Stern Date: Fri Apr 22 14:39:12 2005 -0400 [PATCH] USB UHCI: improved reset handling This patch improves the strategy uhci-hcd uses for performing controller resets and checking whether they are needed. The HCRESET command doesn't affect the Suspend, Resume, or Reset bits in the port status & control registers, so the driver must clear them by itself. This means the code to figure out how many ports there are has to be moved to an earlier spot in the driver. The R/WC bits in the USBLEGSUP register can be set by the hardware even in the absence of BIOS meddling with legacy support features. Hence it's not a good idea to check them while trying to determine whether the BIOS has altered the controller's state. Signed-off-by: Alan Stern Signed-off-by: Greg Kroah-Hartman commit 6c1b445c226dd82d0961725dec8051b95003723a Author: Alan Stern Date: Thu Apr 21 16:04:58 2005 -0400 [PATCH] USB UHCI: Use root-hub IRQs while suspended This patch, which has as478b as a prerequisite, enables the uhci-hcd driver to take advantage of root-hub IRQs rather than polling during the time it is suspended. (Unfortunately the hardware doesn't support port-change interrupts while the controller is running.) It also turns off the driver's private timer while the controller is suspended, as it isn't needed then. The combined elimination of polling interrupts and timer interrupts ought to be enough to allow some systems to save a noticeable amount of power while they are otherwise idle. Signed-off-by: Alan Stern Signed-off-by: Greg Kroah-Hartman commit 4daaa87c8f19c5f1978470e9e91b74d9e0fb0f8e Author: Alan Stern Date: Sat Apr 9 17:30:08 2005 -0400 [PATCH] USB UHCI: Fix up loose ends This patch tidies up a few loose ends left by the preceding patches. It indicates the controller supports remote wakeup whenever the PM capability is present -- which shouldn't cause any harm if the assumption turns out to be wrong. It refuses to suspend the controller if the root hub is still active, and it refuses to resume the root hub if the controller is suspended. It adds checks for a dead controller in several spots, and it adds memory barriers as needed to insure that I/O operations are completed before moving on. Actually I'm not certain the last part is being done correctly. With code like this: outw(..., ...); mb(); udelay(5); do we know for certain that the outw() will complete _before_ the delay begins? If not, how should this be written? Signed-off-by: Alan Stern Signed-off-by: Greg Kroah-Hartman commit a8bed8b6be75bc5a46aa599ab360d5f1db291c8f Author: Alan Stern Date: Sat Apr 9 17:29:00 2005 -0400 [PATCH] USB UHCI: Add root-hub suspend/resume support This patch implements (finally!) separate suspend and resume routines for the root hub and the controller in the UHCI driver. It also changes the sequence used to reset the controller during initial probing, so as to preserve the existing state during a Resume-From-Disk. (This new sequence is what should be used in the PCI Quirks code for early USB handoffs, incidentally.) Lastly it adds a notion of the controller being "inaccessible" while in a PCI low-power state, when normal I/O operations shouldn't be allowed. Signed-off-by: Alan Stern Signed-off-by: Greg Kroah-Hartman commit c8f4fe4358c5e0a79b4bd47b814d19f1d1d06f21 Author: Alan Stern Date: Sat Apr 9 17:27:32 2005 -0400 [PATCH] USB UHCI: Add root hub states This patch starts making some serious changes to the UHCI driver. There's a set of private states for the root hub, and the internal routines for suspending and resuming work completely differently, with transitions based on the new states. Now the driver distinguishes between a privately auto-stopped state and a publicly suspended state, and it will properly suspend controllers with broken resume-detect interrupts instead of resetting them. Signed-off-by: Alan Stern Signed-off-by: Greg Kroah-Hartman commit f5946f8220a866dcdb8edc6abe23c1443e252425 Author: Alan Stern Date: Sat Apr 9 17:26:00 2005 -0400 [PATCH] USB UHCI: Minor improvements This patch makes a few small improvements in the UHCI driver. Some code is moved between different source files and a more useful pointer is passed to a callback routine. Signed-off-by: Alan Stern Signed-off-by: Greg Kroah-Hartman commit 014e73c99aa408f3766afe8d11a1caa3a708b736 Author: Alan Stern Date: Sat Apr 9 17:24:42 2005 -0400 [PATCH] USB UHCI: subroutine reordering This patch moves a few subroutines around in the uhci-hcd source file. Nothing else is changed. Signed-off-by: Alan Stern Signed-off-by: Greg Kroah-Hartman commit 72ebddb59a644732ff0240cdf5d216952a2b0c6b Author: David Brownell Date: Mon Apr 11 18:34:17 2005 -0700 [PATCH] USB: turn a user mode driver error into a hard error This patch turns a user mode driver error into a hard error, and updates the relevant diagnostic slightly to help troubleshooting. gphoto was known to have this problem, hopefully it is now fixed (they have had plenty of warning...) This had been left as a soft error to give various user mode drivers a change to be properly fixed, with the statement that starting in about 2.6.10 it would be changed. It had been mostly safe as a soft error ... but that can not be guaranteed. Now that a year has passed, it's time to really insist that the user mode drivers finally fix their relevant bugs. Signed-off-by: David Brownell Signed-off-by: Andrew Morton Signed-off-by: Greg Kroah-Hartman commit 589a0083a3c9e9610e54984998a46c07a2584b55 Author: Olav Kongas Date: Thu Apr 21 17:12:59 2005 +0300 [PATCH] USB: Fix oops at rmmod after failed probe in isp116x-hcd This patch fixes an oops triggered at rmmod of isp116x-hcd after the probe() has failed. Also, it extends the error message printed, if the driver cannot detect "Chip's Clock Ready" after a software reset. As Ian Campbell recently reported, this happens if the chip's H_WAKEUP pin is not pulled low during software reset. Several people have already had this issue, hence the update to the error message. Also, extend the error message about the failed clock detection after the software reset. Signed-off-by: Olav Kongas commit 4808a1c0261176f9c7e28e7f108d41a381a7d0fc Author: Olav Kongas Date: Sat Apr 9 22:57:39 2005 +0300 [PATCH] USB: Add isp116x-hcd USB host controller driver This patch provides an "isp116x-hcd" driver for Philips' ISP1160/ISP1161 USB host controllers. The driver: - is relatively small, meant for use on embedded platforms. - runs usbtests 1-14 without problems for days. - has been in use by 6-7 different people on ARM and PPC platforms, running a range of devices including USB hubs. - supports suspend/resume of both the platform device and the root hub; supports remote wakeup of the root hub (but NOT the platform device) by USB devices. - does NOT support ISO transfers (nobody has asked for them). - is PIO-only. Signed-off-by: Olav Kongas Signed-off-by: Greg Kroah-Hartman commit 313980c92724cf42877a7bdafdef439ee9d68ccb Author: David Brownell Date: Mon Apr 11 15:38:25 2005 -0700 [PATCH] USB: omap_udc updates (mostly cleanups) Various USB patches, mostly for portability: - Fifo mode 1 didn't work previously (oopsed), so now it's fixed and (why not) defines even more endpoints for composite devices. - OMAP 1710 doesn't have an internal transceiver. - Small PM update: if the USB link is suspended, don't disconnect on entry to deep sleep. - Be more correct about handling zero length control reads. OMAP seems to mis-handle that protocol peculiarity though; best avoided. - Platform device resources (for UDC and OTG controllers) now use physical addresses, so /proc/iomem is more consistent. - Minor cleanups, notably (by volume) for "sparse" NULL warnings. Signed-off-by: David Brownell commit d794ac7ae3613c2abfb678617ac7d74c8ff0099c Author: Alan Stern Date: Mon Apr 18 12:43:25 2005 -0400 [PATCH] USB: g_file_storage: export "stall" parameter This patch changes the g_file_storage driver to make the "stall" module parameter generally available; currently it is available only if the testing version of the module has been configured. It also fixes a typo in a comment -- thanks, Pat! Signed-off-by: Alan Stern Signed-off-by: Greg Kroah-Hartman commit 76f4af8efc72b6091d230cbe718cedca06d2d79e Author: Alan Stern Date: Tue Apr 5 11:56:54 2005 -0400 [PATCH] USB: g_file_storage: Consolidate min()s This patch simplifies the g_file_storage driver by consolidating a bunch of min() calculations at a single spot. Signed-off-by: Alan Stern Signed-off-by: Greg Kroah-Hartman commit a94130e00038ebeb2f66901a4a4a9e05a03051c1 Author: Dave Jones Date: Mon Jun 27 01:39:28 2005 -0400 [PATCH] fix silly config option. CONFIG_CONFIG_TUNER_MULTI_I2C probably isn't what the author meant to create. Signed-off-by: Dave Jones Signed-off-by: Linus Torvalds commit 96c51ce94e8415d2dfb08358bbd50e1589111f33 Author: Jens Axboe Date: Mon Jun 27 14:49:39 2005 +0200 [PATCH] CFQ io scheduler: scheduler switch oops If cfq is managing a queue and a new scheduler is later selected, it is possible for the cfqd unplug_work work to be queued after the kblockd work struct has been flushed. The problem is the ordering of cfq_shutdown_timer_wq() and blk_put_queue() in cfq_put_cfqd(). The latter may rearm the work, leaving cfq_kick_queue() with dead data. Signed-off-by: Jens Axboe Signed-off-by: Linus Torvalds commit 52a5e15f665385ac99607d6b9e0c3dbdf17c5cfa Author: Jens Axboe Date: Mon Jun 27 10:56:58 2005 +0200 [PATCH] CFQ io scheduler, add ioprio documentation Add ioprio documentation Signed-off-by: Jens Axboe Signed-off-by: Linus Torvalds commit 3b18152c327707ae6a2eeba4cfb66457143753bc Author: Jens Axboe Date: Mon Jun 27 10:56:24 2005 +0200 [PATCH] CFQ io scheduler updates - Adjust slice values - Instead of one async queue, one is defined per priority level. This prevents kernel threads (such as reiserfs/x and others) that run at higher io priority from conflicting with others. Previously, it was a coin toss what io prio the async queue got, it was defined by who first set up the queue. - Let a time slice only begin, when the previous slice is completely done. Previously we could be somewhat unfair to a new sync slice, if the previous slice was async and had several ios queued. This might need a little tweaking if throughput suffers a little due to this, allowing perhaps an overlap of a single request or so. - Optimize the calling of kblockd_schedule_work() by doing it only when it is strictly necessary (no requests in driver and work left to do). - Correct sync vs async logic. A 'normal' process can be purely async as well, and a flusher can be purely sync as well. Sync or async is now a property of the class defined and requests pending. Previously writers could be considered sync, when they were really async. - Get rid of the bit fields in cfqq and crq, use flags instead. - Various other cleanups and fixes Signed-off-by: Jens Axboe Signed-off-by: Linus Torvalds commit 3d25f3566bb606720a67caef77b16190df10dd98 Author: Jens Axboe Date: Mon Jun 27 10:55:49 2005 +0200 [PATCH] Fix cfq_find_next_crq() In cfq_find_next_crq(), cfq tries to find the next request by choosing one of two requests before and after the current one. Currently, when choosing the next request, if there's no next request, the next candidate is NULL, resulting in selection of the previous request. This results in weird scheduling. Once we reach the end, we always seek backward. The correct behavior is using the first request as the next candidate. cfq_choose_req() already has logics for handling wrapped requests. Signed-off-by: Tejun Heo Signed-off-by: Jens Axboe Signed-off-by: Linus Torvalds commit 22e2c507c301c3dbbcf91b4948b88f78842ee6c9 Author: Jens Axboe Date: Mon Jun 27 10:55:12 2005 +0200 [PATCH] Update cfq io scheduler to time sliced design This updates the CFQ io scheduler to the new time sliced design (cfq v3). It provides full process fairness, while giving excellent aggregate system throughput even for many competing processes. It supports io priorities, either inherited from the cpu nice value or set directly with the ioprio_get/set syscalls. The latter closely mimic set/getpriority. This import is based on my latest from -mm. Signed-off-by: Jens Axboe Signed-off-by: Linus Torvalds commit b46ffaefe3c251897de23e5a534dd922c969d67b Author: Deepak Saxena Date: Mon Jun 27 21:48:48 2005 +0100 [PATCH] ARM: 2759/1: Fix IXP4xx debug code (again) Patch from Deepak Saxena Accidently swapped the order of movne and orrne. Bad. Signed-off-by: Deepak Saxena Signed-off-by: Russell King commit eb4e10d091b369027ec205163e06f7eec335996f Author: Michael Burian Date: Mon Jun 27 15:58:39 2005 +0100 [PATCH] ARM: 2758/1: Fix comment in file header to read "ARM" instead i386 Patch from Michael Burian This does not look like an include file for "i386", so use "ARM" instead. Signed-off-by: Michael Burian Signed-off-by: Russell King commit f3bb742640338eca0d8c3fa8071df89168efbf0a Author: Russell King Date: Mon Jun 27 14:49:10 2005 +0100 [PATCH] ARM: Update mach-types Signed-off-by: Russell King commit c79ebfa8d2c126815e67cbf0dc2cb185dcae59f9 Author: Russell King Date: Mon Jun 27 14:23:38 2005 +0100 [PATCH] ARM: Fix speeling eroor in io.h Signed-off-by: Russell King commit a013053d4965d9a45300938e713a4b512e0257d8 Author: Russell King Date: Mon Jun 27 14:16:47 2005 +0100 [PATCH] ARM: Move memmap freeing into init.c It doesn't make sense for this to be in mm-armv.c now that 26-bit ARM support is no longer integrated into arch/arm. Signed-off-by: Russell King commit a343e6075a396e07eeff52c0da5629c8fd396be2 Author: Russell King Date: Mon Jun 27 14:08:56 2005 +0100 [PATCH] ARM: Move PGD kernel page table initialisation It doesn't make sense to have the PGD kernel pointers initialisation separate from the PGD user pointers, especially when we clean the data cache over the whole range. Signed-off-by: Russell King commit 2ea83398b75309d8fdc999c4bb252e72d7e4fd9d Author: Russell King Date: Mon Jun 27 14:04:05 2005 +0100 [PATCH] ARM: Add VST idle loop call This call allows the dynamic tick support to reprogram the timer immediately before the CPU idles. Signed-off-by: Russell King commit 99bcc0590806c4f7a4ecf1a11add335b56cde963 Author: Russell King Date: Mon Jun 27 13:59:43 2005 +0100 [PATCH] ARM: Add missed AAEC2000 file My scripts missed committing this file. Signed-off-by: Russell King commit ec9f47cd6a14ca069bb7552a984c0a338fc7262b Author: Russell King Date: Mon Jun 27 11:12:54 2005 +0100 [PATCH] Serial: Split 8250 port table Add separate files for the different 8250 ISA-based serial boards. Looking across all the various architectures, it seems reasonable that we can key the availability of the configuration options for these beasts to the bus-related symbols (iow, CONFIG_ISA). We also standardise the base baud/uart clock rate for these boards - I'm sure that isn't architecture specific, but is solely dependent on the crystal fitted on the board (which should be the same no matter what type of machine its fitted into.) Signed-off-by: Russell King commit addcc4a10f10ffde88b2ee6dc3af46fab6dff1e2 Author: Russell King Date: Mon Jun 27 10:29:26 2005 +0100 [PATCH] Serial: Remove {un,}register_serial from 68328serial.c 68328serial.c does not make use of register_serial/unregister_serial, which is traditionally used to register 8250-compatible UARTs with the 8250-compatible serial driver. Acked-by: David McCullough Signed-off-by: Russell King commit 3e90928d81449ee10a06bc306916503d5c284a25 Author: Tobias Klauser Date: Sun May 29 01:17:29 2005 +0200 [PATCH] sound/oss/via82cxxx_audio: Use the DMA_32BIT_MASK constant Use the DMA_32BIT_MASK constant from dma-mapping.h when calling pci_set_dma_mask() or pci_set_consistent_dma_mask() See http://marc.theaimsgroup.com/?t=108001993000001&r=1&w=2 for details Signed-off-by: Tobias Klauser Signed-off-by: Domen Puncer commit 0c144d0d0303917000cc918e63567b5ded22d5e2 Author: Philip Pokorny Date: Sat May 28 01:24:47 2005 -0700 [PATCH] libata fix read capacity handling for more than 2TB This is a multi-part message in MIME format. commit e254e9bff5283aad1af6d74d2a312ee011b84d61 Author: John W. Linville Date: Wed Jun 8 15:11:57 2005 -0400 [PATCH] b44: check link state during open Check the link state during b44_open. This closes a 1 HZ window that existed after b44_open ran but before the b44_timer handler ran, during which ethtool would report "Link detected: yes" no matter what the link state actually was. Signed-off-by: John W. Linville commit 1fe2cb32763457a829d33b38ec117ffe5c98e045 Author: Adam Belay Date: Mon Jun 20 14:28:41 2005 -0700 [PATCH] fix tulip suspend/resume #2 This patch allows the tulip driver to suspend and resume properly. It was originally written by Karsten Keil and then modified by Adam Belay. Signed-off-by: Karsten Keil Signed-off-by: Adam Belay Signed-off-by: Andrew Morton commit 05ab195c9803946931390faa6cfb714bd1c1e3dc Author: Olaf Hering Date: Thu May 26 01:16:51 2005 +0200 [PATCH] uninitialized variable in prism54 isl38xx_trigger_device drivers/net/wireless/prism54/isl_38xx.c:131: warning: 'current_time.tv_sec' is used uninitialized in this function drivers/net/wireless/prism54/isl_38xx.c:131: warning: 'current_time.tv_usec' is used uninitialized in this function Signed-off-by: Olaf Hering commit ae0a97bfda598088b6f97db9d9f65cd6c4f439c6 Author: YOSHIFUJI Hideaki Date: Wed May 25 16:07:04 2005 +0900 [PATCH] NETDEV: fix receiving multicast frames. Some USB ethernet drivers did not accept multicast frames appropriately. IPv6 did not work with those drivers without this patch. Signed-off-by: YOSHIFUJI Hideaki commit e8d997952bbea4f408f56a55f18667f2817dbb44 Author: YOSHIFUJI Hideaki Date: Wed May 25 16:06:59 2005 +0900 [PATCH] NETDEV: Elecom (Laneed) LD-USBL/TX support. Elecom (Laneed) LD-USBL/TX support. Signed-off-by: YOSHIFUJI Hideaki commit 7b24017e9b4506d2f83e768bf2766cc1c4a3ee54 Author: Randy Dunlap Date: Mon Jun 13 12:31:53 2005 -0700 [PATCH] 3c523: needs a license Module needs a license to prevent kernel tainting. Signed-off-by: Randy Dunlap diffstat:= drivers/net/3c523.c | 1 + 1 files changed, 1 insertion(+) commit 0bbaf069f053957e8d733784e18a2992afd1dd3c Author: Kumar Gala Date: Mon Jun 20 10:54:21 2005 -0500 [PATCH] gianfar: Add support enhanced TSEC features on the MPC 8548 Jeff, Just incase this got lost in the recent netdev mailing list transition here is a nicer version of Andy's patch for gianfar. - kumar * TCP/IP/UDP checksumming and verification * VLAN tag insertion/extraction * Larger multicast hash-table * Padding to align IP headers Also added: * msg lvl support * Some whitespace cleanup Signed-off-by: Andy Fleming Signed-off-by: Kumar Gala commit be83668a253149d99085ca4afe6cd8dc8a43fcd0 Author: Nicolas Pitre Date: Sun Jun 19 23:56:21 2005 -0400 [PATCH] smc91x: plug race between TX tasklet and driver reset The race causes a kernel oops when smc_hardware_send_pkt() tries to dereference pending_tx_skb which would have been freed from one of the driver reset paths just after the tx_task tasklet has been scheduled. This race is possible on SMP but was uncovered by the kernel RT work. Signed-off-by: Nicolas Pitre commit ed4030d114efff53e2605ea4d07d39835b68b605 Author: Denis Vlasenko Date: Fri Jun 17 08:23:17 2005 +0300 [PATCH] via-rhine trivial whitespace patch --Boundary-00=_F5lsC5eH1wGW5o9 Content-Type: text/plain; charset="koi8-r" Content-Transfer-Encoding: 7bit Content-Disposition: inline Hi Jeff, In some messages in via-rhine.c there is a leading space for no apparent reason. This patch removes it. -- vda --Boundary-00=_F5lsC5eH1wGW5o9 Content-Type: text/x-diff; charset="koi8-r"; name="via-rhine.c.diff" Content-Transfer-Encoding: 7bit Content-Disposition: attachment; filename="via-rhine.c.diff" commit 2b02893ed13ec6a5799099844b5a84d8cd631dbd Author: Malli Chilakala Date: Fri Jun 17 17:46:06 2005 -0700 [PATCH] e1000: Driver version, white space, comments & other Driver version, white space, comments & other Signed-off-by: Mallikarjuna R Chilakala Signed-off-by: Ganesh Venkatesan Signed-off-by: John Ronciak commit 3893d54731b599fed2e6cdd477580c0fadea415a Author: Malli Chilakala Date: Fri Jun 17 17:44:49 2005 -0700 [PATCH] e1000: Included proposals to false late collisions due to H/W latencies Included proposals to false late collisions due to H/W latencies Signed-off-by: Mallikarjuna R Chilakala Signed-off-by: Ganesh Venkatesan Signed-off-by: John Ronciak commit 6921368f64c59b2a1d4659a958c69458c94d8b75 Author: Malli Chilakala Date: Fri Jun 17 17:44:20 2005 -0700 [PATCH] e1000: Ethtool set speed/duplex validates parameters for consistency Ethtool set speed/duplex validates parameters for consistency Signed-off-by: Mallikarjuna R Chilakala Signed-off-by: Ganesh Venkatesan Signed-off-by: John Ronciak commit d439d4b7ac24b341a40a98995f6a6d3ef586eaf7 Author: Malli Chilakala Date: Fri Jun 17 17:43:56 2005 -0700 [PATCH] e1000: Enable ethtool phys_id feature for 82573 controllers Enable ethtool phys_id feature for 82573 controllers Signed-off-by: Mallikarjuna R Chilakala Signed-off-by: Ganesh Venkatesan Signed-off-by: John Ronciak commit 683a38f374d65128c8dd392a724513f9b8818bf7 Author: Malli Chilakala Date: Fri Jun 17 17:43:25 2005 -0700 [PATCH] e1000: Fixed VLAN tag processing error for big-endian architectures Fixed VLAN tag processing error for big-endian architectures Signed-off-by: Mallikarjuna R Chilakala Signed-off-by: Ganesh Venkatesan Signed-off-by: John Ronciak commit 012609a877bbb7508e273d642b245d7633bc45a4 Author: Malli Chilakala Date: Fri Jun 17 17:43:06 2005 -0700 [PATCH] e1000: Ethtool cleanup patch from Stephen Hemminger Ethtool cleanup patch from Stephen Hemminger * use ADVERTISED_xxx fields when setting advertised fields * don't hardcode constant for advertised field Signed-off-by: Mallikarjuna R Chilakala Signed-off-by: Ganesh Venkatesan Signed-off-by: John Ronciak commit 4564327b46a8c6400cd10d6dd041f6b984539f88 Author: Malli Chilakala Date: Fri Jun 17 17:42:42 2005 -0700 [PATCH] e1000: Fixed the loopback test failure for 82573 based adapters Fixed the loopback test failure for 82573 based adapters Signed-off-by: Mallikarjuna R Chilakala Signed-off-by: Ganesh Venkatesan Signed-off-by: John Ronciak commit b01f66910b8b36b2fe9e8051222ea418ad040cea Author: Malli Chilakala Date: Fri Jun 17 17:42:29 2005 -0700 [PATCH] e1000: Fixed register and loopback test failures with 82573 controllers Fixed register and loopback test failures with 82573 controllers Signed-off-by: Mallikarjuna R Chilakala Signed-off-by: Ganesh Venkatesan Signed-off-by: John Ronciak commit c6963ef571eb59b29629714c6ba3070dcca0468d Author: Malli Chilakala Date: Fri Jun 17 17:42:07 2005 -0700 [PATCH] e1000: Cleanup debug message printed when Tx Unit hang is detected Cleanup debug message printed when Tx Unit hang is detected Signed-off-by: Mallikarjuna R Chilakala Signed-off-by: Ganesh Venkatesan Signed-off-by: John Ronciak commit 60490fe030f3969a8706d94c7cf8469be6330678 Author: Malli Chilakala Date: Fri Jun 17 17:41:45 2005 -0700 [PATCH] e1000: Use netdev_priv() to get to netdev->priv Use netdev_priv() to get to netdev->priv - from shemminger@osdl.org Signed-off-by: Mallikarjuna R Chilakala Signed-off-by: Ganesh Venkatesan Signed-off-by: John Ronciak commit 70cf362ba988b4e6c9027cd7acff158e46a95b15 Author: Malli Chilakala Date: Fri Jun 17 17:40:41 2005 -0700 [PATCH] e1000: Use correct WOL settings for 82544 adapters Use correct WOL settings for 82544 adapters Signed-off-by: Mallikarjuna R Chilakala Signed-off-by: Ganesh Venkatesan Signed-off-by: John Ronciak commit 97876fc66fc2405f1a2ec09eb6a0206e5168d2d9 Author: Malli Chilakala Date: Fri Jun 17 17:40:19 2005 -0700 [PATCH] e1000: Synchronize phy access between stats update and MII_IOCTL Synchronize phy access between stats update and MII_IOCTL Signed-off-by: Mallikarjuna R Chilakala Signed-off-by: Ganesh Venkatesan Signed-off-by: John Ronciak commit 0685c31b58a69e41393e974f6e6b8e0a4eadcf0b Author: Malli Chilakala Date: Fri Jun 17 17:31:44 2005 -0700 [PATCH] e100: NAPI performance enhancements NAPI performance enhancements - Fixed issues with shared interrupts and NAPI resulting in bad performance. Signed-off-by: Mallikarjuna R Chilakala Signed-off-by: Ganesh Venkatesan Signed-off-by: John Ronciak commit f92d872876617cddbb0532291034f88941e855fd Author: Malli Chilakala Date: Fri Jun 17 17:30:22 2005 -0700 [PATCH] e100: e100_eeprom_load was called after e100_phy_init e100_eeprom_load was called after e100_phy_init causing phy_init not to use values set in EEPROM - from emann@mrv.com Signed-off-by: Mallikarjuna R Chilakala Signed-off-by: Ganesh Venkatesan Signed-off-by: John Ronciak commit 648951451e6d2d532d4ace2f8e9c5cdf1d563e83 Author: Malli Chilakala Date: Fri Jun 17 17:27:41 2005 -0700 [PATCH] e100: fixed e100 MDI/MDI-X issues Added patch from Eran Mann to fix following e100 MDI/MDI-X issues * MDI/MDI-X autodetection should never be enabled for 82551ER/QM chips * enabling this feature based on eeprom settings Signed-off-by: Mallikarjuna R Chilakala Signed-off-by: Ganesh Venkatesan Signed-off-by: John Ronciak commit 9758d0f028b4c73a5222168a5ffc340606ecbea1 Merge: 0dd3c7814750adc58ed3e7b79e1943a14a790db6 1a9fe638ebdcb28bded8ec2f71d0a339ebf438ea Author: Jeff Garzik Date: Mon Jun 27 00:27:47 2005 -0400 Merge /spare/repo/netdev-2.6/ branch 'orinoco' commit 1a9fe638ebdcb28bded8ec2f71d0a339ebf438ea Author: Jeff Garzik Date: Mon Jun 27 00:27:07 2005 -0400 wireless/orinoco: remove changelog, bump version commit 98c4cae1dafcf1abbfebc0189ff27df586a838b0 Author: Christoph Hellwig Date: Sun Jun 19 01:28:06 2005 +0200 [PATCH] orinoco: monitor mode support Patch from Pavel Roskin commit 8f2abf4430ef2a131926a537ee6325dc43b0ec28 Author: Christoph Hellwig Date: Sun Jun 19 01:28:02 2005 +0200 [PATCH] orinoco: always use 802.11 header for rx processing If the frame has ToDS flag set, mark it by setting skb->pkt_type to PACKET_OTHERHOST, so that applications unaware of promiscous mode won't get uplink (STA->AP) packets for STA->STA transmissions relayed by the AP. Thanks to John Denker and David Gibson for finding the problem and the solution. Patch from Pavel Roskin commit 95dd91fbd8d3c788ef93bc94b4b600889e04dba1 Author: Christoph Hellwig Date: Sun Jun 19 01:27:56 2005 +0200 [PATCH] orinoco: scanning support Patch from Pavel Roskin commit 16739b065f4b0965d975f5c756204c7aa911cd61 Author: Christoph Hellwig Date: Sun Jun 19 01:27:51 2005 +0200 [PATCH] orinoco: manual roaming for Symbol and Intersilfirmware Patch from Pavel Roskin commit 1fab2e8b7a9dd0226e42ad5d3688edd5065bd231 Author: Christoph Hellwig Date: Sun Jun 19 01:27:40 2005 +0200 [PATCH] orinoco: basic ethtool support I completely reimplemented this based on ethtool_ops, CVS has an ioctl-based version. commit 620554e406e3cc01434c658a1e597162d7e56fd6 Author: Christoph Hellwig Date: Sun Jun 19 01:27:33 2005 +0200 [PATCH] orinoco: wireless API 15 support (patch from Moustafa Youssef, updated by Jim Carter and Pavel Roskin). commit 5d558b7f36cc577d31b770d8987681ec6e6545e7 Author: Christoph Hellwig Date: Sun Jun 19 01:27:28 2005 +0200 [PATCH] orinoco: include We need constants from this header in the next patches. commit 279385949ebb41ad166fd37505fe552cdb74ed59 Author: Christoph Hellwig Date: Sun Jun 19 01:27:20 2005 +0200 [PATCH] bring over ieee80211.h from mainline the prototypes and inlines aren't actually needed, but let's not diverge from -mm too far. commit 0dd3c7814750adc58ed3e7b79e1943a14a790db6 Author: dmitry pervushin Date: Mon Jun 20 15:32:54 2005 -0700 [PATCH] cs89x0.c: support for Philips' pnx0105 network adapter This patch is to provide support for cs89x0-based network device on Philips' pnx0105 board. Signed-off-by: dmitry pervushin Signed-off-by: Andrew Morton commit 7aa55fcec236daed20dd362c99229184691d0e7f Author: Adrian Bunk Date: Tue Jun 21 01:47:06 2005 -0700 [PATCH] drivers/net/skfp/: cleanups This patch contains the following cleanups: - make needlessly global code static - remove the completely unused smtparse.c - remove the following unused global functions: - drvfbi.c: init_dma - drvfbi.c: dis_dma - drvfbi.c: get_rom_byte - drvfbi.c: mac_drv_vpd_read - drvfbi.c: mac_drv_pci_fix - fplustm.c: mac_set_func_addr - fplustm.c: mac_del_multicast - hwmtm.c: mac_drv_rx_frag - pcmplc.c: pcm_set_lct_short - smt.c: smt_please_reconnect - smt.c: smt_change_t_neg - smtdef.c: smt_set_defaults Signed-off-by: Adrian Bunk Signed-off-by: Andrew Morton commit 9b25978ef8ebe010f582489117f8a7a43a6b44a3 Author: Hideki Yamane Date: Mon Jun 27 00:18:32 2005 -0400 [netdrvr] tulip: add pci id commit f49d16ef2d6f008119d4ee2c895781fb229bad68 Author: Manfred Spraul Date: Sun Jun 26 11:36:52 2005 +0200 [PATCH] forcedeth: Add support for new device id This is a multi-part message in MIME format. commit 8f767fc83cf4e4f1241b5a0b949b54088d075411 Author: Manfred Spraul Date: Sat Jun 18 16:27:19 2005 +0200 [PATCH] forcedeth: Poll for link changes This is a multi-part message in MIME format. commit 9992d4aa6b3b169a7903e029fc2c3eaa4b4055a1 Author: Manfred Spraul Date: Sun Jun 5 17:36:11 2005 +0200 [PATCH] forcedeth: add two new pci ids This is a multi-part message in MIME format. commit a3948663ed89c2f17e37cd0936d964341edb193e Author: Tobias Klauser Date: Mon Jun 20 23:49:08 2005 +0200 [PATCH] drivers/block/sx8.c: Use the DMA_{64, 32}BIT_MASK constants Use the DMA_{64,32}BIT_MASK constants from dma-mapping.h when calling pci_set_dma_mask() or pci_set_consistent_dma_mask() These patches include dma-mapping.h explicitly because it caused errors on some architectures otherwise. See http://marc.theaimsgroup.com/?t=108001993000001&r=1&w=2 for details Signed-off-by: Tobias Klauser Signed-off-by: Domen Puncer commit 4f2ad81104a18946c64215adffce50c2a659fddd Author: Nishanth Aravamudan Date: Mon Jun 20 23:53:40 2005 +0200 [PATCH] net/lanstreamer: replace schedule_timeout() with ssleep()/msleep_interruptible() Use ssleep() / msleep_interruptible() [as appropriate] instead of schedule_timeout() to guarantee the task delays as expected. Signed-off-by: Nishanth Aravamudan Signed-off-by: Maximilian Attems Signed-off-by: Domen Puncer commit f17697a37ccd2128f37250d2e7715c59931dc458 Author: Nishanth Aravamudan Date: Mon Jun 20 23:54:12 2005 +0200 [PATCH] net/pcnet32: replace schedule_timeout() with msleep_interruptible() Use msleep_interruptible() instead of schedule_timeout() to guarantee the task delays as expected. Signed-off-by: Nishanth Aravamudan Signed-off-by: Maximilian Attems Signed-off-by: Domen Puncer commit 0da8b1454815862e03dae1a199936832a6e67868 Author: Nishanth Aravamudan Date: Mon Jun 20 23:54:25 2005 +0200 [PATCH] net/farsync: add set_current_state() before schedule_timeout() Insert set_current_state() before schedule_timeout() so the function delays as expected. Without the addition, schedule_timeout() will return immediately. Signed-off-by: Nishanth Aravamudan Signed-off-by: Maximilian Attems Signed-off-by: Domen Puncer commit a26c074c1cf130df95e9c297ef98fdd98348acf0 Author: Nishanth Aravamudan Date: Mon Jun 20 23:54:27 2005 +0200 [PATCH] net/sb1000: replace nicedelay() with ssleep() Use ssleep() instead of nicedelay() to guarantee the task delays as expected. Remove the prototype and definition of nicedelay(). This is a very weird function, because it is called to sleep in terms of usecs, but always sleeps for 1 second, completely ignoring the parameter. I have gone ahead and followed suit, just sleeping for a second in all cases, but maybe someone with the hardware could tell me if perhaps the paramter *should* matter. Additionally, nicedelay() is called in TASK_INTERRUPTIBLE state, but doesn't deal with signals in case these longer delays do not complete, so I believe ssleep() is more appropriate. Signed-off-by: Nishanth Aravamudan Signed-off-by: Domen Puncer commit 62595eb9066ea09f7f8a789a38bec16d70ee0321 Author: Domen Puncer Date: Mon Jun 20 23:54:37 2005 +0200 [PATCH] wireless: char* -> char[] conversion in airo.c This conversion makes code from line 7101 right: if (copy_to_user(com.data, swversion, sizeof(swversion))) size output (before, after): 55416 2228 160 57804 e1cc drivers/net/wireless/airo.o 55412 2228 160 57800 e1c8 drivers/net/wireless/airo.o more outputs from Alexey Dobriyan: 2.95.3: text data bss dec hex filename before 51118 2156 160 53434 d0ba drivers/net/wireless/airo.o after 51118 2156 160 53434 d0ba drivers/net/wireless/airo.o 3.3.5-20050130: before 46999 2156 160 49315 c0a3 drivers/net/wireless/airo.o after 46994 2156 160 49310 c09e drivers/net/wireless/airo.o 4.1.0-20050522: before 45555 2220 160 47935 bb3f drivers/net/wireless/airo.o after 45550 2220 160 47930 bb3a drivers/net/wireless/airo.o Signed-off-by: Domen Puncer commit 020f46a39eb7b99a575b9f4d105fce2b142acdf1 Merge: 41b6c37326cb24efc86fba94bcaa37f2cc23f1cd 4da62fc70d7cbcf8fa606a8c806d9dc8faa0ceae Author: Linus Torvalds Date: Sun Jun 26 19:16:33 2005 -0700 Merge rsync://rsync.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6 commit 41b6c37326cb24efc86fba94bcaa37f2cc23f1cd Merge: 5f6b5517bfcae217d52a7607b1bebc3a257f45d1 26799e675e47c5aa3104628e2081a7299ea46557 Author: Linus Torvalds Date: Sun Jun 26 17:28:24 2005 -0700 Merge master.kernel.org:/home/rmk/linux-2.6-arm commit 4da62fc70d7cbcf8fa606a8c806d9dc8faa0ceae Author: pageexec Date: Sun Jun 26 16:00:19 2005 -0700 [IPVS]: Fix for overflows From: $subject was fixed in 2.4 already, 2.6 needs it as well. The impact of the bugs is a kernel stack overflow and privilege escalation from CAP_NET_ADMIN via the IP_VS_SO_SET_STARTDAEMON/IP_VS_SO_GET_DAEMON ioctls. People running with 'root=all caps' (i.e., most users) are not really affected (there's nothing to escalate), but SELinux and similar users should take it seriously if they grant CAP_NET_ADMIN to other users. Signed-off-by: Andrew Morton Signed-off-by: David S. Miller commit 5f6b5517bfcae217d52a7607b1bebc3a257f45d1 Author: Sascha Hauer Date: Mon Jun 20 15:32:51 2005 -0700 [PATCH] DM9000 network driver bugfix This patch fixes two bugs in the dm9000 network driver: - Don't read one byte too much in 8bit mode. - release correct resource Signed-off-by: Jochen Karrer Signed-off-by: Sascha Hauer Cc: Jeff Garzik Signed-off-by: Andrew Morton commit 1db1a8740abc90f4715a48cd970506686e6da5b1 Author: Ismail Donmez Date: Mon Jun 20 15:32:52 2005 -0700 [PATCH] Documentation/networking/dmfe.txt: Make documentation nicer Patch indents dmfe.txt to look like other docs. It adds a tip about CNET cards using Davicom chipsets. Also it removes parts where it refers to how to build driver out-of-kernel which seems to be cruft from times where the driver was out of the kernel. Signed-off-by: Ismail Donmez Signed-off-by: Domen Puncer Cc: Jeff Garzik Signed-off-by: Andrew Morton commit 400de2c0c4f4a2cc2e0270353e7eb512c1899a0c Author: Denis Vlasenko Date: Mon Jun 20 15:33:04 2005 -0700 [PATCH] fealnx.c calls dev_kfree_skb from atomic context Signed-off-by: Andrew Morton commit 1cc68ae0cf9e3384d9eef6985b312bf2bf1161b3 Author: Pavel Machek Date: Mon Jun 20 15:33:04 2005 -0700 [PATCH] fix int vs. pm_message_t confusion in airo Fix int vs. pm_message_t confusion in airo. Should change no code. Signed-off-by: Pavel Machek Cc: Jeff Garzik Signed-off-by: Andrew Morton commit feea1db26e5babbedf1f4f36223e21b2f2d6f499 Author: Maciej W. Rozycki Date: Mon Jun 20 15:33:03 2005 -0700 [PATCH] defxx: Use irqreturn_t for the interrupt handler This is a fix for the interrupt handler in the defxx driver to use irqreturn_t. Beside the obvious fix of returning a proper status at all, it actually checks board registers as appropriate for determining if an interrupt has been recorded in the bus-specific interface logic. The patch also includes an obvious one-line fix for SET_NETDEV_DEV needed for the EISA variation, for which I've decided there is no point in sending separately. Signed-off-by: Maciej W. Rozycki Cc: Jeff Garzik Signed-off-by: Andrew Morton commit 16b110c3fd760620b4a787db6ed512fe531ab1b5 Author: Andrew Morton Date: Mon Jun 20 15:32:59 2005 -0700 [PATCH] dmfe warning fix drivers/net/tulip/dmfe.c: In function `dmfe_parse_srom': drivers/net/tulip/dmfe.c:1805: warning: passing arg 1 of `__le16_to_cpup' from incompatible pointer type drivers/net/tulip/dmfe.c:1817: warning: passing arg 1 of `__le32_to_cpup' from incompatible pointer type drivers/net/tulip/dmfe.c:1817: warning: passing arg 1 of `__le32_to_cpup' from incompatible pointer type This is basically a guess: Cc: Jeff Garzik Signed-off-by: Andrew Morton commit f04e3f092a855ce798f274b38712b90d51b73bca Author: Adrian Bunk Date: Mon May 16 21:13:03 2005 +0200 [PATCH] document that 8139TOO supports 8129/8130 The 8129/8130 support is a sub-option that is not visible if the user hasn't enabled the 8139 support. Let's make it a bit easier for users to find the driver for their nic. Signed-off-by: Adrian Bunk commit d470e3b483dcf79c16463bc740738dca76a035a9 Author: David S. Miller Date: Sun Jun 26 15:31:51 2005 -0700 [NETLINK]: Fix two socket hashing bugs. 1) netlink_release() should only decrement the hash entry count if the socket was actually hashed. This was causing hash->entries to underflow, which resulting in all kinds of troubles. On 64-bit systems, this would cause the following conditional to erroneously trigger: err = -ENOMEM; if (BITS_PER_LONG > 32 && unlikely(hash->entries >= UINT_MAX)) goto err; 2) netlink_autobind() needs to propagate the error return from netlink_insert(). Otherwise, callers will not see the error as they should and thus try to operate on a socket with a zero pid, which is very bad. However, it should not propagate -EBUSY. If two threads race to autobind the socket, that is fine. This is consistent with the autobind behavior in other protocols. So bug #1 above, combined with this one, resulted in hangs on netlink_sendmsg() calls to the rtnetlink socket. We'd try to do the user sendmsg() with the socket's pid set to zero, later we do a socket lookup using that pid (via the value we stashed away in NETLINK_CB(skb).pid), but that won't give us the user socket, it will give us the rtnetlink socket. So when we try to wake up the receive queue, we dive back into rtnetlink_rcv() which tries to recursively take the rtnetlink semaphore. Thanks to Jakub Jelink for providing backtraces. Also, thanks to Herbert Xu for supplying debugging patches to help track this down, and also finding a mistake in an earlier version of this fix. Signed-off-by: David S. Miller commit a9fc25108995f1f59ee30026818d7ec2bb016fbe Author: Nishanth Aravamudan Date: Sun May 1 23:34:57 2005 -0700 [PATCH] net/slip: replace schedule_timeout() with msleep_interruptible() Use msleep_interruptible() instead of schedule_timeout() to guarantee the task delays as expected. commit 6835d09ad286db5df472dc91aae0a69128e7258b Author: Adrian Bunk Date: Mon May 2 03:47:00 2005 +0200 [PATCH] drivers/net/ewrk3.c: remove dead code This patch removes some obviously dead code found by the Coverity checker. Signed-off-by: Adrian Bunk commit 854608d824dc2c8e14c373e0c46cefda5386ed8a Author: Adrian Bunk Date: Mon May 2 03:46:52 2005 +0200 [PATCH] drivers/net/skfp/: fix LITTLE_ENDIAN This patch fixes the LITTLE_ENDIAN #define and a function prototype. Signed-off-by: Adrian Bunk commit de70b4c87b8f1d484cf533536c0c6ce2e05101cf Author: Adrian Bunk Date: Mon May 2 03:46:43 2005 +0200 [PATCH] drivers/net/tokenring/: cleanups This patch contains the follwing cleanups: - make needlessly global code static - remove obsolete Emacs settings Signed-off-by: Adrian Bunk commit 32e9e25ef20789c24ffa1f41489a13932cf82c77 Author: David S. Miller Date: Sun Jun 26 15:28:10 2005 -0700 [ATALK]: Include asm/byteorder.h in linux/atalk.h We're using __be16 in userland visible types, so we have to include asm/byteorder.h so that works. Signed-off-by: David S. Miller commit 64053beeb5a5f9cd79903a8c3dd35d1ef0a4685f Author: Robert Olsson Date: Sun Jun 26 15:27:10 2005 -0700 [PKTGEN]: Fix random packet sizes causing panic Signed-off-by: Robert Olsson Signed-off-by: David S. Miller commit 93ad4fb04f5dd82fe8ace1db7617c9dcb954cf60 Author: Andreas Mohr Date: Mon Apr 11 16:47:43 2005 -0700 [PATCH] pcnet_cs.c: IRQ handler optimization During some performance diagnostics I stumbled on this slightly wasteful code in pcnet_cs.c which I made the patch included at the bottom for (two minor comment fixes included). Improvement: instead of *always* calculating lea 0x2c0(%edx),%ebx and then additionally doing the mov %edx,0xc0(%ebx) addition *if we need it*, we now do the *whole* calculation of mov %edx,0x380(%ebx) *only* if we need it. This even manages to save us a whole 16-byte alignment buffer loss in this compilation case. Result: slightly improves IRQ handler performance in both shared and non-shared IRQ case, which should make my rusty P3/700 a slight bit happier. Thank you for your support, Andreas Mohr old asm result (using gcc 3.3.5): 000015a0 : 15a0: 55 push %ebp 15a1: 89 e5 mov %esp,%ebp 15a3: 53 push %ebx 15a4: 8d 9a c0 02 00 00 lea 0x2c0(%edx),%ebx 15aa: e8 fc ff ff ff call 15ab 15af: 83 f8 01 cmp $0x1,%eax 15b2: 74 03 je 15b7 15b4: 5b pop %ebx 15b5: 5d pop %ebp 15b6: c3 ret 15b7: 31 d2 xor %edx,%edx 15b9: 89 93 c0 00 00 00 mov %edx,0xc0(%ebx) 15bf: eb f3 jmp 15b4 15c1: eb 0d jmp 15d0 15c3: 90 nop 15c4: 90 nop 15c5: 90 nop 15c6: 90 nop 15c7: 90 nop 15c8: 90 nop 15c9: 90 nop 15ca: 90 nop 15cb: 90 nop 15cc: 90 nop 15cd: 90 nop 15ce: 90 nop 15cf: 90 nop 000015d0 : new asm result: 000015a0 : 15a0: 55 push %ebp 15a1: 89 e5 mov %esp,%ebp 15a3: 53 push %ebx 15a4: 89 d3 mov %edx,%ebx 15a6: e8 fc ff ff ff call 15a7 15ab: 83 f8 01 cmp $0x1,%eax 15ae: 74 03 je 15b3 15b0: 5b pop %ebx 15b1: 5d pop %ebp 15b2: c3 ret 15b3: 31 d2 xor %edx,%edx 15b5: 89 93 80 03 00 00 mov %edx,0x380(%ebx) 15bb: eb f3 jmp 15b0 15bd: 8d 76 00 lea 0x0(%esi),%esi 000015c0 : Signed-off-by: Andrew Morton commit 1e7f0bd8c8f2d0496ad338be5e69ff4395d77da4 Author: Domen Puncer Date: Sun Jun 26 18:22:14 2005 -0400 drivers/net/: Use the DMA_{64,32}BIT_MASK constants Use the DMA_{64,32}BIT_MASK constants from dma-mapping.h when calling pci_set_dma_mask() or pci_set_consistent_dma_mask() This patch includes dma-mapping.h explicitly because it caused errors on some architectures otherwise. See http://marc.theaimsgroup.com/?t=108001993000001&r=1&w=2 for details Signed-off-by: Tobias Klauser Signed-off-by: Domen Puncer commit 60fe7403209179fccd6629172c4b36acc69c5db6 Author: Adrian Bunk Date: Sun Jun 26 15:21:15 2005 -0700 [TCP]: Let TCP_CONG_ADVANCED default to n It doesn't seem to make much sense to let an "If unsure, say N." option default to y. Signed-off-by: Adrian Bunk Signed-off-by: David S. Miller commit 6c3607676c12d77d70cc712310f52fbc6af5895d Author: David S. Miller Date: Sun Jun 26 15:20:20 2005 -0700 [IPV4]: Fix thinko in TCP_CONG_BIC default. Since it is tristate when we offer it as a choice, we should definte it also as tristate when forcing it as the default. Otherwise kconfig warns. Signed-off-by: David S. Miller commit 5ccabb9b45aff50e41d27a5f384ae2d2dd7640de Author: Magnus Damm Date: Tue Apr 5 20:05:50 2005 +0200 [PATCH] arlan: module parameter fixes Make sure the code compiles with and without ARLAN_ENTRY_EXIT_DEBUGGING. Only provide parameter descriptions when parameters are defined. Remove "arlan_"-prefix to shape up built-in parameter names: arlan.arlan_debug -> arlan.debug arlan.arlan_EEPROM_bad -> arlan.EEPROM_bad arlan.arlan_entry_and_exit_debug -> arlan.entry_and_exit_debug arlan.arlan_entry_debug -> arlan.entry_debug arlan.arlan_exit_debug -> arlan.exit_debug Signed-off-by: Magnus Damm commit 12b279f9c0cb70695865dc336161512fa6e75d50 Author: Tobias Klauser Date: Mon Apr 4 18:10:18 2005 +0200 [PATCH] net/sis900: Use the DMA_32BIT_MASK constant Use the DMA_32BIT_MASK constant from dma-mapping.h when calling pci_set_dma_mask() or pci_set_consistent_dma_mask() instead of custom macros. This patch includes dma-mapping.h explicitly because it caused errors on some architectures otherwise. See http://marc.theaimsgroup.com/?t=108001993000001&r=1&w=2 for details Signed-off-by: Tobias Klauser commit e8c0eee96801f3c3f577b377b89ab01ab36ba7b6 Merge: 97f568d8e3dc031b092e6086c0534d5411fb2cf5 aef7b83c92dd0b7e994805440655d1d64147287b Author: Jeff Garzik Date: Sun Jun 26 18:09:43 2005 -0400 Merge /spare/repo/netdev-2.6/ branch 'register-netdev' commit aef7b83c92dd0b7e994805440655d1d64147287b Merge: b1fc5505e0dbcc3fd7c75bfe6bee39ec50080963 8678887e7fb43cd6c9be6c9807b05e77848e0920 Author: Jeff Garzik Date: Sun Jun 26 18:06:06 2005 -0400 Merge /spare/repo/linux-2.6/ commit 97f568d8e3dc031b092e6086c0534d5411fb2cf5 Author: Stephen Hemminger Date: Sun Jun 26 18:02:44 2005 -0400 8139cp: safer spin loop for get_statistics The spin loop in 8139cp is limited to 100 iterations when pulling hardware stats. There is no allowance for processor speed so on a fast machine, the stats may not be available that fast. Also, if the board doesn't return soon enough make sure turn the address back off to prevent later updates when memory has gone away. commit 223d47278a77091b62e7d063e95860f63ca55e20 Author: Kumar Gala Date: Sun Jun 26 17:58:51 2005 -0400 gianfar: Update Marvell PHY name This patch updates the name identifier to list both of the Marvell PHYs that are supported. Signed-off-by: Kumar Gala commit 169a3e66637c667b43dab7c319ffd5c99804cad8 Author: Jay Vosburgh Date: Sun Jun 26 17:54:11 2005 -0400 bonding: xor/802.3ad improved slave hash Add support for alternate slave selection algorithms to bonding balance-xor and 802.3ad modes. Default mode (what we have now: xor of MAC addresses) is "layer2", new choice is "layer3+4", using IP and port information for hashing to select peer. Originally submitted by Jason Gabler for balance-xor mode; modified by Jay Vosburgh to additionally support 802.3ad mode. Jason's original comment is as follows: The attached patch to the Linux Etherchannel Bonding driver modifies the driver's "balance-xor" mode as follows: - alternate hashing policy support for mode 2 * Added kernel parameter "xmit_policy" to allow the specification of different hashing policies for mode 2. The original mode 2 policy is the default, now found in xmit_hash_policy_layer2(). * Added xmit_hash_policy_layer34() This patch was inspired by hashing policies implemented by Cisco, Foundry and IBM, which are explained in Foundry documentation found at: http://www.foundrynet.com/services/documentation/sribcg/Trunking.html#112750 Signed-off-by: Jason Gabler Signed-off-by: Jay Vosburgh commit c3ade5cad07f4d67f2e16a28f3c73d9483a55e0e Author: Jay Vosburgh Date: Sun Jun 26 17:52:20 2005 -0400 bonding: gratuitous ARP Add support for generating gratuitous ARPs in bonding active-backup mode when failovers occur. Includes support for VLAN tagging the ARPs as needed. Signed-off-by: Jay Vosburgh commit 12755c16a9e4fa2fd5b0ca1963e83d671a6251da Author: Ralf Baechle Date: Sun Jun 26 17:45:52 2005 -0400 Tulip fixes for Cobalt Qube/RaQ commit 26799e675e47c5aa3104628e2081a7299ea46557 Author: Lennert Buytenhek Date: Sun Jun 26 22:24:19 2005 +0100 [PATCH] ARM: 2757/1: remove ixdp2400_init_irq from ixdp2800 code Patch from Lennert Buytenhek Compiling one kernel that supports both ixdp2400 and ixdp2800 gives an error, as a copy of the ixdp2400 irq init routing accidentally ended up in ixdp2800.c somehow. Signed-off-by: Lennert Buytenhek Signed-off-by: Deepak Saxena Signed-off-by: Russell King commit baaf7ed1797de1defce3e3a03f3c9c49cdf3b534 Author: Lennert Buytenhek Date: Sun Jun 26 22:24:17 2005 +0100 [PATCH] ARM: 2756/1: add ixp2000 msf mapping Patch from Lennert Buytenhek Add a mapping for the ixp2400 and ixp2800 msf unit. The msf is the ixp2000's 'media and switch fabric' unit, which handles the networking part of the chip. Signed-off-by: Lennert Buytenhek Signed-off-by: Deepak Saxena Signed-off-by: Russell King commit 67603be482a0361a13c2238b79172849ee2e307c Author: Lennert Buytenhek Date: Sun Jun 26 22:24:16 2005 +0100 [PATCH] ARM: 2755/1: describe ixp2000 virtual memory map layout Patch from Lennert Buytenhek Add a comment to asm/arch-ixp2000/ixp2000-regs.h describing the ixp2000 virtual memory map layout. Signed-off-by: Lennert Buytenhek Signed-off-by: Deepak Saxena Signed-off-by: Russell King commit 15aca90363719f11f200f510a13d18bda9dea789 Author: Lennert Buytenhek Date: Sun Jun 26 22:24:14 2005 +0100 [PATCH] ARM: 2754/1: move ixp2000 VMALLOC_END up Patch from Lennert Buytenhek As the ixdp cpld mappings now live at 0xfe000000, we can push VMALLOC_END upwards to 0xfb000000, where the first iotable mapping begins. Signed-off-by: Lennert Buytenhek Signed-off-by: Deepak Saxena Signed-off-by: Russell King commit 91f6a589fb6bb4ce6b6b196e910d3b907e1d0a40 Author: Lennert Buytenhek Date: Sun Jun 26 22:24:13 2005 +0100 [PATCH] ARM: 2753/1: move ixdp* cpld mappings Patch from Lennert Buytenhek All ixdp platforms currently have a cpld mapped in at 0xfafff000. Since this address is not 1M-aligned, a regular page mapping will be used instead of a section mapping, which opens up the possibility of triggering ixp2400 erratum #66 as we only do the XCB=101 workaround thing for section mappings. There is still a lot of space higher up in the virtual memory map for 1M mappings, so move the cpld mapping to 0xfe000000 and make it 1M big so that a section mapping will be used for it. Signed-off-by: Lennert Buytenhek Signed-off-by: Deepak Saxena Signed-off-by: Russell King commit 8b0ee07e108b2eefdab5bb73f33223f18926c3b2 Merge: 4638aef40ba9ebb9734caeed1f373c24015259fd 8678887e7fb43cd6c9be6c9807b05e77848e0920 Author: Jeff Garzik Date: Sun Jun 26 17:11:03 2005 -0400 Merge upstream (approx. 2.6.12-git8) into 'janitor' branch of netdev-2.6. commit 8678887e7fb43cd6c9be6c9807b05e77848e0920 Merge: bf82322ec5d5faa8bfd8f163909244d8c6b562d5 9a18664506dbce5e23f3c5de7b1c5a042dd26520 Author: Linus Torvalds Date: Sun Jun 26 09:55:39 2005 -0700 Merge 'drm-3264' branch of rsync://rsync.kernel.org/pub/scm/linux/kernel/git/airlied/drm-2.6 commit bf82322ec5d5faa8bfd8f163909244d8c6b562d5 Merge: 7d681b23d6cc14a8c026ea6756242cb522cbbcae 6921e3310486a6e5ac3f36efcc7351347503c71a Author: Linus Torvalds Date: Sun Jun 26 09:53:42 2005 -0700 Merge 'drm-fixes' branch of rsync://rsync.kernel.org/pub/scm/linux/kernel/git/airlied/drm-2.6 commit 09b8b5f843afc21daf710cc610e5ca890ee94696 Author: Russell King Date: Sun Jun 26 17:06:36 2005 +0100 [PATCH] ARM: Add SA_TIMER flag to timer interrupts VST needs to know which timer handler is for the timer interrupt. Mark all timer interrupts with the SA_TIMER flag. Signed-off-by: Russell King commit 7d681b23d6cc14a8c026ea6756242cb522cbbcae Author: Kumar Gala Date: Sun Jun 26 09:14:01 2005 -0500 [PATCH] ppc32: Fix MPC83xx IPIC external interrupt pending register offset The pending registers for IRQ1-IRQ7 were pointing to the interrupt pending register instead of the external one. Signed-off-by: Tony Li Signed-off-by: Kumar Gala Signed-off-by: Linus Torvalds commit 340ea3972ffc6c9f90b3ac38b70eade1c8efbf5b Author: Adrian Bunk Date: Sun Jun 26 03:27:22 2005 -0700 [PATCH] remove redundant info from SubmittingPatches Since the Trivial Patch Monkey is mentioned both in steps 4. and 5., I removed it from step4 (Select e-mail destination), since it should go under 'Select your CC list'. Signed-off-by: Cosmin Nicolaescu Signed-off-by: Adrian Bunk Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit bdb94f3a78366d46bc73c8c8d8fe0dfb9522ff36 Author: Andrew Morton Date: Sun Jun 26 03:27:21 2005 -0700 [PATCH] arm: swsusp build fix Another swsusp fixup. Cc: Russell King Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 34f18a9887afaeb6e50168df512e1118f7d73542 Author: Andrew Morton Date: Sun Jun 26 03:27:20 2005 -0700 [PATCH] jffs2 build fix Missed conversion in the swsusp cleanup. Cc: Russell King Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 6921e3310486a6e5ac3f36efcc7351347503c71a Author: Dave Airlie Date: Sun Jun 26 21:05:59 2005 +1000 drm: fix radeon irq properly After the previous fix in 2.6.12, this patch should properly fix the radeon IRQ handling code. From: Benjamin Herrenschmidt Signed-off-by: Dave Airlie commit 6f0dcb72d6a053fff9288b742d3bcc9b23f0f6db Author: Linus Torvalds Date: Sat Jun 25 20:09:12 2005 -0700 Fix up try_to_freeze() usage in arch/i386/kernel/signal.c The parentheses were missing. Noted by Pavel Machek. commit 2031d0f586839bc68f35bcf8580b18947f8491d4 Merge: 98e7f29418a4931f97e6b78d1ef3a47103fe6cd5 3e1d1d28d99dabe63c64f7f40f1ca1d646de1f73 Author: Linus Torvalds Date: Sat Jun 25 17:16:53 2005 -0700 Merge Christoph's freeze cleanup patch commit 3e1d1d28d99dabe63c64f7f40f1ca1d646de1f73 Author: Christoph Lameter Date: Fri Jun 24 23:13:50 2005 -0700 [PATCH] Cleanup patch for process freezing 1. Establish a simple API for process freezing defined in linux/include/sched.h: frozen(process) Check for frozen process freezing(process) Check if a process is being frozen freeze(process) Tell a process to freeze (go to refrigerator) thaw_process(process) Restart process frozen_process(process) Process is frozen now 2. Remove all references to PF_FREEZE and PF_FROZEN from all kernel sources except sched.h 3. Fix numerous locations where try_to_freeze is manually done by a driver 4. Remove the argument that is no longer necessary from two function calls. 5. Some whitespace cleanup 6. Clear potential race in refrigerator (provides an open window of PF_FREEZE cleared before setting PF_FROZEN, recalc_sigpending does not check PF_FROZEN). This patch does not address the problem of freeze_processes() violating the rule that a task may only modify its own flags by setting PF_FREEZE. This is not clean in an SMP environment. freeze(process) is therefore not SMP safe! Signed-off-by: Christoph Lameter Signed-off-by: Linus Torvalds commit 98e7f29418a4931f97e6b78d1ef3a47103fe6cd5 Author: Adrian Bunk Date: Sat Jun 25 14:59:37 2005 -0700 [PATCH] schedule the obsolete raw driver for removal Since kernel 2.6.3 the Kconfig text explicitely stated this driver was obsolete. (trolling for IBMers) Signed-off-by: Adrian Bunk Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit c33ed271263f5fb6ca5ab888b98a55ae5d138c0b Author: Domen Puncer Date: Sat Jun 25 14:59:36 2005 -0700 [PATCH] list_for_each_entry: fs-dquot.c Make code more readable with list_for_each_entry_safe. Signed-off-by: Domen Puncer Signed-off-by: Maximilian Attems Signed-off-by: Domen Puncer Acked-by: Jan Kara Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 97998d8fdb5530edd466b006423a422ea790cf23 Author: Adrian Bunk Date: Sat Jun 25 14:59:35 2005 -0700 [PATCH] drivers/char/rio/: kill rio_udelay There's no need for a function that only calls udelay. Signed-off-by: Adrian Bunk Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit d660a7403a801018dc65208dbcba4463c3038b1f Author: Adrian Bunk Date: Sat Jun 25 14:59:35 2005 -0700 [PATCH] MAINTAINERS: document that uclinux-dev@uclinux.org is subscribers-only Signed-off-by: Adrian Bunk Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 9fd5559c1f916f284b5b0866148e076866de6f99 Author: Alexey Dobriyan Date: Sat Jun 25 14:59:34 2005 -0700 [PATCH] DCO: use IANA-reserved second level domain name Signed-off-by: Alexey Dobriyan Signed-off-by: Domen Puncer Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 6a72c7ba2e6df945484d7a85d7a82237270957fd Author: Nishanth Aravamudan Date: Sat Jun 25 14:59:33 2005 -0700 [PATCH] serial/68328serial: replace schedule_timeout() with msleep_interruptible() Use msleep_interruptible() instead of schedule_timeout() in send_break() to guarantee the task delays as expected. Change @duration's units to milliseconds, and modify arguments in callers appropriately. Signed-off-by: Nishanth Aravamudan Signed-off-by: Domen Puncer Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 5d582b4ef6df853ca2da46135855cd6536c0205b Author: Nishanth Aravamudan Date: Sat Jun 25 14:59:32 2005 -0700 [PATCH] serial/68360serial: replace schedule_timeout() with msleep_interruptible() Use msleep_interruptible() instead of schedule_timeout() in send_break() to guarantee the task delays as expected. Change @duration's units to milliseconds, and modify arguments in callers appropriately. Signed-off-by: Nishanth Aravamudan Signed-off-by: Domen Puncer Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit f353488ce48e7a0311fe764284096481b455fbe9 Author: Tobias Klauser Date: Sat Jun 25 14:59:30 2005 -0700 [PATCH] Remove duplicate file in Documentation/networking The files wanpipe.txt and wan-router.txt in Documentation/networking contain the exact same information (diff between the two shows no document is "Linux WAN Router Utilities Package" and therefor the name wan-router.txt is more appropriate. Signed-off-by: Tobias Klauser Signed-off-by: Domen Puncer Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 301a716446a8b24898808d0430c2ed0dce55890e Author: Tobias Klauser Date: Sat Jun 25 14:59:29 2005 -0700 [PATCH] Remove duplicate file in Documentation/networking (00-INDEX) wanpipe.txt and wan-router.txt in Documentation/networking contain the exact same information (diff between the two shows no Documentation/networking/00-INDEX as pointed out by Randy Dunlap. Signed-off-by: Tobias Klauser Signed-off-by: Domen Puncer Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit c9ff7d6644827a7cc1b2ecf636112c4703f32633 Author: Tobias Klauser Date: Sat Jun 25 14:59:28 2005 -0700 [PATCH] Remove duplicate file in Documentation/networking (drivers_net_wan_Kconfig) wanpipe.txt and wan-router.txt in Documentation/networking contain the exact same information (diff between the two shows no drivers/net/wan/Kconfig. Signed-off-by: Tobias Klauser Signed-off-by: Domen Puncer Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 4f11842ebbb3b98a88c38ef6c18345ccc792a54b Author: Tobias Klauser Date: Sat Jun 25 14:59:27 2005 -0700 [PATCH] sound/oss/cmpci: Use the DMA_32BIT_MASK constant Use the DMA_32BIT_MASK constant from dma-mapping.h when calling pci_set_dma_mask() or pci_set_consistent_dma_mask() See http://marc.theaimsgroup.com/?t=108001993000001&r=1&w=2 for details Signed-off-by: Tobias Klauser Signed-off-by: Domen Puncer Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 738c7b4f7f36ce2c547d0a2c2aa397aae904510f Author: Tobias Klauser Date: Sat Jun 25 14:59:27 2005 -0700 [PATCH] sound/oss/es1370: Use the DMA_32BIT_MASK constant Use the DMA_32BIT_MASK constant from dma-mapping.h when calling pci_set_dma_mask() or pci_set_consistent_dma_mask() See http://marc.theaimsgroup.com/?t=108001993000001&r=1&w=2 for details Signed-off-by: Tobias Klauser Signed-off-by: Domen Puncer Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 3ee538a2e867c7fbdb2a5940b610682d5d08e8be Author: Tobias Klauser Date: Sat Jun 25 14:59:26 2005 -0700 [PATCH] sound/oss/es1371: Use the DMA_32BIT_MASK constant Use the DMA_32BIT_MASK constant from dma-mapping.h when calling pci_set_dma_mask() or pci_set_consistent_dma_mask() See http://marc.theaimsgroup.com/?t=108001993000001&r=1&w=2 for details Signed-off-by: Tobias Klauser Signed-off-by: Domen Puncer Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit caac3a444ce3b5a8d76069abfbb699d2a65b3f09 Author: Tobias Klauser Date: Sat Jun 25 14:59:25 2005 -0700 [PATCH] sound/oss/esssolo1: Use the DMA_32BIT_MASK constant Use the DMA_32BIT_MASK constant from dma-mapping.h when calling pci_set_dma_mask() or pci_set_consistent_dma_mask() See http://marc.theaimsgroup.com/?t=108001993000001&r=1&w=2 for details Signed-off-by: Tobias Klauser Signed-off-by: Domen Puncer Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit f90e7185ee00c1faa9d07b2f669d124772fdba17 Author: Christophe Lucas Date: Sat Jun 25 14:59:24 2005 -0700 [PATCH] printk: arch/i386/mm/pgtable.c printk() calls should include appropriate KERN_* constant. Signed-off-by: Christophe Lucas Signed-off-by: Domen Puncer Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit ee48dd579977c35f35760bc893115e649b026306 Author: Christophe Lucas Date: Sat Jun 25 14:59:24 2005 -0700 [PATCH] printk: arch/i386/mm/ioremap.c printk() calls should include appropriate KERN_* constant. Signed-off-by: Christophe Lucas Signed-off-by: Domen Puncer Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 48b9d03c5f20a0585bb6f7d8c4abad3661df5d75 Author: J.A. Magallon Date: Sat Jun 25 14:59:22 2005 -0700 [PATCH] Kill signed chars scripts/ is full of mismatches between char* params an signed char* arguments, and viceversa. gcc4 now complaints loud about this. Patch below deletes all those 'signed'. Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit f14c6fd0fc9fbaf242254c84ba2632decb25e91a Author: Olaf Hering Date: Sat Jun 25 14:59:21 2005 -0700 [PATCH] update comment about gzip scratch size fix a comment about the array size. Signed-off-by: Olaf Hering Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit dfa1a55335a0e822b36607d25c980c4e2a8e5e87 Author: Nikita Danilov Date: Sat Jun 25 14:59:20 2005 -0700 [PATCH] ll_merge_requests_fn() cleanup ll_merge_requests_fn() assigns total_{phys,hw}_segments twice. Fix this and a typo. Signed-off-by: Nikita Danilov Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 672c3fd9069e5a138f9d4afc9aeb5aa34aacce32 Author: Adrian Bunk Date: Sat Jun 25 14:59:18 2005 -0700 [PATCH] drivers/isdn/hisax/: possible cleanups This patch contains the following possible cleanups: - make needlessly global code static - remove the compiled but unused st5481_hdlc.{c,h} - kill enternow.h - enternow_pci.c: kill InByte/OutByte/BYTE - isdnl2.c: kill FreeSkb - remove or #if 0 the following unused functions: - config.c: IsdnCardState - ipacx.c: ipacx_new_ph - ipacx.c: dch_bh - ipacx.c: setup_ipacx - isdnl2.c: IsRR Signed-off-by: Adrian Bunk Acked-by: Kai Germaschewski Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 8b3d4a2a3ef9488d4477e8823106abfd6039eb66 Author: Adrian Bunk Date: Sat Jun 25 14:59:17 2005 -0700 [PATCH] drivers/cdrom/cm206.c: cleanups This patch contains the following cleanups: - make needlessly global functions static - remove the following unused global function: - cm206_delay Signed-off-by: Adrian Bunk Cc: Jens Axboe Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 995c6ed2b1bb309eb45c3006779dc90fb3f4150d Author: Adrian Bunk Date: Sat Jun 25 14:59:16 2005 -0700 [PATCH] drivers/char/ip2*: cleanups This patch contains the following cleanups: - i2cmd.c: #if 0 the unused function i2cmdUnixFlags - i2cmd.c: make the needlessly global funciton i2cmdBaudDef static - ip2main.c: remove dead code that wasn't reachable due to an #ifdef Signed-off-by: Adrian Bunk Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 0933ad9c233b09ee5fd636525ed07c149c879980 Author: Jesper Juhl Date: Sat Jun 25 14:59:15 2005 -0700 [PATCH] kfree cleanups for drivers/firmware/ Here's a patch with kfree() cleanups for drivers/firmware/efivars.c Patch removes redundant NULL checks before kfree and also makes a small whitespace cleanup - moves two statements on same line to separate lines. Signed-off-by: Jesper Juhl Acked-by: Matt Domsch Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 0159f76d9f5839c3c92bc3a91c865e94d5e489a8 Author: Jesper Juhl Date: Sat Jun 25 14:59:14 2005 -0700 [PATCH] kfree cleanups in ixj.c This patch removes redundant checks for NULL pointer before kfree() in drivers/telephony/ Signed-off-by: Jesper Juhl Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 89e0b1134e46195c64bbad21010799ba567bf7f2 Author: Jesper Juhl Date: Sat Jun 25 14:59:14 2005 -0700 [PATCH] remove pointless NULL check before kfree in sony535.c There's no need to check for NULL, kfree() can cope. Signed-off-by: Jesper Juhl Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 07d46de415fba309a5648f078fdda118d489646b Author: Adrian Bunk Date: Sat Jun 25 14:59:13 2005 -0700 [PATCH] update Computone MAINTAINERS entry This patch states that Michael still maintains this driver and removes a no longer mailing list. Signed-off-by: Adrian Bunk Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 9e84d1c36a505765c12e90289c9dbd575332840b Author: Adrian Bunk Date: Sat Jun 25 14:59:12 2005 -0700 [PATCH] i386: cleanup boot_cpu_logical_apicid variables There are currently two different boot_cpu_logical_apicid variables: - a global one in mpparse.c - a static one in smpboot.c Of these two, only the one in smpboot.c might be used (through boot_cpu_apicid). This patch therefore removes the one in mpparse.c . Signed-off-by: Adrian Bunk Signed-off-by: Andrey Panin Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit b6260cd354ec2b3ec026d6c899dc01e442b5e6cc Author: Adrian Bunk Date: Sat Jun 25 14:59:11 2005 -0700 [PATCH] change the SOUND_PRIME handling SOUND_PRIME (for OSS) is a tristate. This doesn't make much sense if most users are checking for SOUND_PRIME!=0. This patch changes the semantics of SOUND_PRIME to being a limit for all OSS modules, IOW: SOUND_PRIME=m does now say that all OSS drivers can only be modular. As a side effect, since SOUND_PRIME already depends on SOUND, there's no longer a reason for drivers depending on SOUND_PRIME to additionally depend on SOUND. Signed-off-by: Adrian Bunk Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 93d17d3d84b7147e8f07aeeb15ec01aa92c6b564 Author: Adrian Bunk Date: Sat Jun 25 14:59:10 2005 -0700 [PATCH] drivers/block/ll_rw_blk.c: cleanups This patch contains the following cleanups: - make needlessly global code static - remove the following unused global functions: - blkdev_scsi_issue_flush_fn - __blk_attempt_remerge - remove the following unused EXPORT_SYMBOL's: - blk_phys_contig_segment - blk_hw_contig_segment - blkdev_scsi_issue_flush_fn - __blk_attempt_remerge Signed-off-by: Adrian Bunk Acked-by: Jens Axboe Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit e8e1c7292ee9b64c35b3f6d7f905ca5e854aea95 Author: Adrian Bunk Date: Sat Jun 25 14:59:09 2005 -0700 [PATCH] drivers/char/mwave/tp3780i.c: remove dead code This patch removes some dead code found by the Coverity checker. Signed-off-by: Adrian Bunk Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 67da54cf5d577c9dda835d0cf42379657d15d6c9 Author: Adrian Bunk Date: Sat Jun 25 14:59:08 2005 -0700 [PATCH] drivers/video/matrox/matroxfb_misc.c: remove dead code This patch removes some obviously dead code found by the Coverity checker. This patch was already ACK'ed by Petr Vandrovec. Signed-off-by: Adrian Bunk Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit db407163773a8447dd869ee98348e05c81b4c337 Author: Adrian Bunk Date: Sat Jun 25 14:59:07 2005 -0700 [PATCH] fs/ncpfs/: remove unused #ifdef USE_OLD_SLOW_DIRECTORY_LISTING code This patch removes some unused #ifdef USE_OLD_SLOW_DIRECTORY_LISTING code. Signed-off-by: Adrian Bunk Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 94c9eca223048ae15df1989fae50eefda9daae7e Author: Adrian Bunk Date: Sat Jun 25 14:59:06 2005 -0700 [PATCH] fs/jffs/: cleanups This patch contains the following cleanups: - make needlessly global functions static - provide some debugging helper functions only for appropriate values of CONFIG_JFFS_FS_VERBOSE Signed-off-by: Adrian Bunk Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit f15313bf42337ade55376303932d8b6a62e6be43 Author: Adrian Bunk Date: Sat Jun 25 14:59:05 2005 -0700 [PATCH] drivers/char/rocket.c: cleanups This patch contains the following cleanups: - make needlessly global code static - remove the TRUE/FALSE macros Signed-off-by: Adrian Bunk Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 681ea4b930768444e9d88651c1362b0bf6d2a42b Author: Adrian Bunk Date: Sat Jun 25 14:59:04 2005 -0700 [PATCH] drivers/char/nvram.c: possible cleanups This patch contains the following possible cleanups: - make the needlessly global function __nvram_set_checksum static - #if 0 the unused global function nvram_set_checksum - remove the EXPORT_SYMBOL's for both functions Signed-off-by: Adrian Bunk Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 3b01b47cf95682d02676efa5d0b48e759db405b3 Author: Adrian Bunk Date: Sat Jun 25 14:59:03 2005 -0700 [PATCH] drivers/char/mwave/3780i.c: cleanups This patch contains the following cleanups: - make a needlessly global function static - #if 0 the unused global function dsp3780I_ReadGenCfg Signed-off-by: Adrian Bunk Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit dbc6b5f55908d7351380bca69393f5839508ad3f Author: Adrian Bunk Date: Sat Jun 25 14:59:03 2005 -0700 [PATCH] drivers/char/istallion.c: remove an unneeded variable This patch removes an unneeded global variable. Signed-off-by: Adrian Bunk Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit f25ad2d3b886e61d7ec03a3bdefc22871c14e9da Author: Adrian Bunk Date: Sat Jun 25 14:59:02 2005 -0700 [PATCH] sound/oss/sscape.c: remove dead code The Coverity checker found that sscape_sb_enable never get's assigned any value different from 0, and therefore some code paths are impossible. This patch removes this variable and the dead code paths. Signed-off-by: Adrian Bunk Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit a4cd16e2e8f0924d8e3a2391edc51556cad26d99 Author: Adrian Bunk Date: Sat Jun 25 14:59:01 2005 -0700 [PATCH] drivers/scsi/dpt*: remove version.h dependencies This patch removes version.h dependencies. Signed-off-by: Adrian Bunk Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit a1ae13a4dd1ad732f6fb55a55dec93524feca8bc Author: Jesper Juhl Date: Sat Jun 25 14:59:01 2005 -0700 [PATCH] cosmetic fixes for example programs in Documentation/cdrom/sbpcd This patch makes a few minor changes to the example programs in Documentation/cdrom/sbpcd to kill off some warnings and build failures. Signed-off-by: Jesper Juhl Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 8c0e33c133021ee241e9d51255b9fb18eb34ef0e Author: Nick Wilson Date: Sat Jun 25 14:59:00 2005 -0700 [PATCH] Use ALIGN to remove duplicate code This patch makes use of ALIGN() to remove duplicate round-up code. Signed-off-by: Nick Wilson Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit f45494480f31342125870c1a184999d7c5a59471 Author: Domen Puncer Date: Sat Jun 25 14:58:59 2005 -0700 [PATCH] x86_64: coding style and whitespace fixups Remove some of the unnecessary differences between arch/i386 and arch/x86_64. This patch fixes more whitespace issues, some miscellaneous typos, a wrong URL and a factually incorrect statement about the current boot sector code. Signed-off-by: Domen Puncer Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 23712b2fbf6b845289c1d41d929be0931fab2759 Author: Domen Puncer Date: Sat Jun 25 14:58:58 2005 -0700 [PATCH] lib/sha1.c: fix sparse warning lib/sha1.c:44:10: warning: cast to restricted type Signed-off-by: Alexey Dobriyan Signed-off-by: Domen Puncer Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit ae49fe8655010616fa422273b34a1bfeaee57c1c Author: Domen Puncer Date: Sat Jun 25 14:58:57 2005 -0700 [PATCH] printk: drivers/char/ftape/compressor/zftape-compress.c printk() calls should include appropriate KERN_* constant. Signed-off-by: Christophe Lucas Signed-off-by: Domen Puncer Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 56003191c466b8ef4b174da60f25ae58e92493f8 Author: Domen Puncer Date: Sat Jun 25 14:58:56 2005 -0700 [PATCH] printk: drivers/char/applicom.c printk() calls should include appropriate KERN_* constant. Signed-off-by: Christophe Lucas Signed-off-by: Domen Puncer Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit a4bfde5abd4a0f5498a268dba17ffc91d91964d6 Author: Domen Puncer Date: Sat Jun 25 14:58:55 2005 -0700 [PATCH] serial/icom: Remove custom msescs_to_jiffies() macro Remove the MSECS_TO_JIFFIES() macro because msescs_to_jiffies() from jiffies.h should be used. The macro isn't referenced anywhere anyway. Signed-off-by: Tobias Klauser Signed-off-by: Domen Puncer Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit c97f97b374fe07bc300dea629cba14612442c26d Author: Adrian Bunk Date: Sat Jun 25 14:58:55 2005 -0700 [PATCH] drivers/char/mwave/tp3780i.c: remove kernel 2.2 #if's This patch removes #if's for kernel 2.2 . Signed-off-by: Adrian Bunk Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit f040ffab7488c02c0806ec8808fa619d463560f9 Author: Adrian Bunk Date: Sat Jun 25 14:58:54 2005 -0700 [PATCH] sound/oss/rme96xx.c: remove kernel 2.2 #if's This patch removes #if's for kernel 2.2 . Signed-off-by: Adrian Bunk Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 4f00945a8e35e46b98f3ec4adae747397393e3ee Author: Dave Jones Date: Sat Jun 25 14:58:53 2005 -0700 [PATCH] nm256 oss build failure static declaration follows non static Signed-off-by: Dave Jones Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 155542c271ba76fec37146b26aea1001019eb60d Author: Adrian Bunk Date: Sat Jun 25 14:58:53 2005 -0700 [PATCH] sound/oss/: cleanups This patch contains cleanups including the following: - make needlessly global code static Signed-off-by: Adrian Bunk Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 4b8497276a96928bcb5947cc44e61f8b69fe66ac Author: Adrian Bunk Date: Sat Jun 25 14:58:52 2005 -0700 [PATCH] drivers/char/isicom.c: section fixes This patch fixes the following bugs: - __exit unregister_ioregion and unregister_drivers were called by __init isicom_init - __init isicom_init was called by __devinit isicom_setup Signed-off-by: Adrian Bunk Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 9a5f04bf798254390f89445ecf0b6f4c70ddc1f8 Author: Jesper Juhl Date: Sat Jun 25 14:58:51 2005 -0700 [PATCH] selinux: kfree cleanup kfree(NULL) is legal. Signed-off-by: Jesper Juhl Acked-by: Stephen Smalley Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit a2ba192c96d12447472e105890a9cd1b97952747 Author: Adrian Bunk Date: Sat Jun 25 14:58:50 2005 -0700 [PATCH] drivers/scsi/initio.c: cleanups This patch contains the following cleanups: - make needlessly global code static - remove or #if 0 the following unused functions: - tul_pop_pend_scb - tul_device_reset - tul_reset_scsi_bus Signed-off-by: Adrian Bunk Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 09417379be9b126e10ae7dcd7afc20b666146266 Author: Jesper Juhl Date: Sat Jun 25 14:58:49 2005 -0700 [PATCH] remove redundant NULL checks before kfree() in sound/ and avoid casting pointers about to be kfree()'ed Checking a pointer for NULL before calling kfree() on it is redundant, kfree() deals with NULL pointers just fine. This patch removes such checks from sound/ This patch also makes another, but closely related, change. It avoids casting pointers about to be kfree()'ed. Signed-off-by: Jesper Juhl Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 4ae6673e029d609da7ef4311440d6de501d6967a Author: Jesper Juhl Date: Sat Jun 25 14:58:48 2005 -0700 [PATCH] get rid of redundant NULL checks before kfree() in arch/i386/ Signed-off-by: Jesper Juhl Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 5a6b454f8024bac68495b6cd51615feb0b54baa9 Author: Jesper Juhl Date: Sat Jun 25 14:58:48 2005 -0700 [PATCH] remove redundant NULL check before before kfree() in kernel/sysctl.c Signed-off-by: Jesper Juhl Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 486fd404fbc840e28a959d2f2842b6c46ed6b250 Author: Adrian Bunk Date: Sat Jun 25 14:58:47 2005 -0700 [PATCH] small partitions/msdos cleanups This patch makes the following changes to the msdos partition code: - remove CONFIG_NEC98_PARTITION leftovers - make parse_bsd static This patch was already ACK'ed by Andries Brouwer. Signed-off-by: Adrian Bunk Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 40086ea17e8cf12112438b3a855f44b26f7cb385 Author: Domen Puncer Date: Sat Jun 25 14:58:46 2005 -0700 [PATCH] arch/i386/crypto/aes.c: fix sparse warnings Signed-off-by: Alexey Dobriyan Signed-off-by: Domen Puncer Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit c7c5844526f55b93fc9a44170cb7568c9bc95c4a Author: Domen Puncer Date: Sat Jun 25 14:58:46 2005 -0700 [PATCH] arch/i386/mm/fault.c: fix sparse warnings Signed-off-by: Alexey Dobriyan Signed-off-by: Domen Puncer Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 77617bd8068470556049ebcdd0625acc7ab71a2b Author: Domen Puncer Date: Sat Jun 25 14:58:45 2005 -0700 [PATCH] arch/i386/kernel/apm.c: fix sparse warnings Signed-off-by: Alexey Dobriyan Signed-off-by: Domen Puncer Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 3f3ae3471f4c5921274c3869eef21b5611e85b50 Author: Domen Puncer Date: Sat Jun 25 14:58:44 2005 -0700 [PATCH] arch/i386/kernel/traps.c: fix sparse warnings Signed-off-by: Alexey Dobriyan Signed-off-by: Domen Puncer Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 29a1d2d1bc5a473eb88489251033b3c5651d2011 Author: Domen Puncer Date: Sat Jun 25 14:58:43 2005 -0700 [PATCH] init/do_mounts_initrd.c: fix sparse warning Signed-off-by: Alexey Dobriyan Signed-off-by: Domen Puncer Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 96ec3efdcbaea4f403f2a5f1204edbf903a01961 Author: Domen Puncer Date: Sat Jun 25 14:58:43 2005 -0700 [PATCH] kernel/timer: fix msleep_interruptible() comment The comment for msleep_interruptible() is wrong, as it will ignore wait-queue events, but will wake up early for signals. Signed-off-by: Nishanth Aravamudan Signed-off-by: Domen Puncer Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit b20f3ae5f0efe1812d2a1278e2127a335884d445 Author: Domen Puncer Date: Sat Jun 25 14:58:42 2005 -0700 [PATCH] char/tty_io: replace schedule_timeout() with msleep_interruptible() Use msleep_interruptible() instead of schedule_timeout() in send_break() to guarantee the task delays as expected. Change @duration's units to milliseconds, and modify arguments in callers appropriately. Patch is compile-tested. Signed-off-by: Nishanth Aravamudan Signed-off-by: Domen Puncer Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit d8eddb620499dc638aeb4d5d3751974ca697ab39 Author: Domen Puncer Date: Sat Jun 25 14:58:41 2005 -0700 [PATCH] char/ds1620: use msleep() instead of schedule_timeout() Not sure why any driver needs to sleep for *two* ticks, so let's fix it. Use msleep() instead of schedule_timeout() to guarantee the task delays as expected. Signals are never checked for by the callers or in the function itself, so use TASK_UNINTERRUPTIBLE instead of TASK_INTERRUPTIBLE. The delay is presumed to have been written when HZ==100, and thus has been multiplied by 10 to pass to msleep(). Signed-off-by: Nishanth Aravamudan Signed-off-by: Domen Puncer Acked-by: Russell King Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit d2a457cf26020fb7aa992915388001eb983d0aa8 Author: M.Baris Demiray Date: Sat Jun 25 14:58:40 2005 -0700 [PATCH] riotty.c cleanups and warning fix Fix a bunch of whitespace oddities and use `unsigned long' for a jiffies-holding variable. Signed-off-by: M.Baris Demiray Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 2b1ee233f52c247d3a074ce660ece08bf097a47b Author: randy_dunlap Date: Sat Jun 25 14:58:39 2005 -0700 [PATCH] au1100fb: convert to C99 inits. au1100: use C99 struct init. Signed-off-by: randy_dunlap Acked-by: Russell King Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 09dbb4768c962ac00f9ff416328a7e6bfbd92b21 Author: randy_dunlap Date: Sat Jun 25 14:58:39 2005 -0700 [PATCH] x86-64: add memcpy/memset prototypes Put function prototypes for memset() and memcpy() ahead of where there are used, to kill sparse warnings: arch/x86_64/boot/compressed/../../../../lib/inflate.c:317:3: warning: undefined identifier 'memset' arch/x86_64/boot/compressed/../../../../lib/inflate.c:601:11: warning: undefined identifier 'memcpy' arch/x86_64/boot/compressed/misc.c:151:2: warning: undefined identifier 'memcpy' arch/x86_64/boot/compressed/../../../../lib/inflate.c:317:3: warning: call with no type! arch/x86_64/boot/compressed/../../../../lib/inflate.c:601:17: warning: call with no type! arch/x86_64/boot/compressed/misc.c:151:9: warning: call with no type! Signed-off-by: randy_dunlap Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 23b34f46fb762796e5c9c37e50d5a6cb56fd71fe Author: Adrian Bunk Date: Sat Jun 25 14:58:38 2005 -0700 [PATCH] drivers/isdn/act2000/capi.c: #if 0 an unused function This patch #if 0's an unused function. Signed-off-by: Adrian Bunk Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 08e51533a0a26c236879ad33b2798c16328051d9 Author: Adrian Bunk Date: Sat Jun 25 14:58:37 2005 -0700 [PATCH] drivers/isdn/hardware/avm/: misc cleanups This patch contains the following cleanups: - make some needlessly global functions static - b1dma.c __init/__exit the functions b1dma_{init,exit} Signed-off-by: Adrian Bunk Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 35a26f150927300042e2d71aa80375b6c5295fbd Author: Adrian Bunk Date: Sat Jun 25 14:58:36 2005 -0700 [PATCH] unexport mca_find_device_by_slot I didn't find any possible modular usage of mca_find_device_by_slot in the kernel, and this patch therefore removes the EXPORT_SYMBOL. This patch should be safe since mca-legacy is nothing drivers should move to. Signed-off-by: Adrian Bunk Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 3e206b0a66fcaf39dbef92640ce6a63d51fc5c53 Author: Adrian Bunk Date: Sat Jun 25 14:58:35 2005 -0700 [PATCH] drivers/isdn/i4l/: possible cleanups This patch contains the following possible cleanups: - make needlessly global code static - remove the following unused global function: - isdn_audio.c: isdn_audio_2adpcm_flush - remove the following unused struct: - isdn_net.c: isdn_concap_demand_dial_dops Signed-off-by: Adrian Bunk Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 886cca3a0fda659e17c730c20929134014ebe1f2 Author: Adrian Bunk Date: Sat Jun 25 14:58:35 2005 -0700 [PATCH] drivers/isdn/pcbit/: possible cleanups This patch contains the following possible cleanups: - make some needlessly global functions static - remove the following unused global functions: - callbacks.c: cb_out_3 - capi.c: capi_decode_disc_conf Signed-off-by: Adrian Bunk Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit e3ca5e762c2aca373f1762cbc622ebe20fd20869 Author: Adrian Bunk Date: Sat Jun 25 14:58:34 2005 -0700 [PATCH] drivers/isdn/sc/: possible cleanups This patch contains the following possible cleanips: - make some needlessly global code static - remove the compiled but completely unused debug.c - remove or #if 0 the following unused global functions: - command.c: loopback - command.c: loadproc - init.c: irq_supported - packet.c: print_skb - shmem.c: memset_shmem - timer.c: trace_timer Signed-off-by: Adrian Bunk Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 594dd2c98101a5dc279153ec806d554e6b8a1e35 Author: Nico Golde Date: Sat Jun 25 14:58:33 2005 -0700 [PATCH] cpufreq: governors documentation fixes I corrected a small error and enhanced the govenor.txt file with the ondemand daemon because the kernel configs link to the documentation but ondemand wasn't documentated. Feel free to include the patch in the attachment. Cc: Dominik Brodowski Cc: Dave Jones Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 70c1a0a49b75854fbc78713bf753b5b4c6f0a421 Author: Jon Smirl Date: Sat Jun 25 14:58:32 2005 -0700 [PATCH] fbdev: remove unneeded fbsysfs printk Remove unneeded fbsysfs printk. Signed-off-by: Jon Smirl Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 5ed5dc6cb40b163aa19e14eda0957dcc09167b80 Author: Jurriaan on adsl-gate Date: Sat Jun 25 14:58:31 2005 -0700 [PATCH] font selection Kconfig fixes We're accidentally selecting the new fonts by default. Don't. Signed-off-by: Jurriaan Kalkman Signed-off-by: Geert Uytterhoeven Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit d7496cb75ec75b1e74283a481fb02f5d7ce7bdeb Author: Dave Jones Date: Sat Jun 25 14:58:30 2005 -0700 [PATCH] Fix vesafb/mtrr scaling problem. vesafb will do really silly things like.. mtrr: type mismatch for e0000000,8000000 old: write-back new: write-combining mtrr: type mismatch for e0000000,4000000 old: write-back new: write-combining mtrr: type mismatch for e0000000,2000000 old: write-back new: write-combining mtrr: type mismatch for e0000000,1000000 old: write-back new: write-combining mtrr: type mismatch for e0000000,800000 old: write-back new: write-combining mtrr: type mismatch for e0000000,400000 old: write-back new: write-combining mtrr: type mismatch for e0000000,200000 old: write-back new: write-combining mtrr: type mismatch for e0000000,100000 old: write-back new: write-combining mtrr: type mismatch for e0000000,80000 old: write-back new: write-combining mtrr: type mismatch for e0000000,40000 old: write-back new: write-combining mtrr: type mismatch for e0000000,20000 old: write-back new: write-combining mtrr: type mismatch for e0000000,10000 old: write-back new: write-combining mtrr: type mismatch for e0000000,8000 old: write-back new: write-combining mtrr: type mismatch for e0000000,4000 old: write-back new: write-combining mtrr: type mismatch for e0000000,2000 old: write-back new: write-combining mtrr: type mismatch for e0000000,1000 old: write-back new: write-combining mtrr: size and base must be multiples of 4 kiB mtrr: size: 0x800 base: 0xe0000000 mtrr: size and base must be multiples of 4 kiB mtrr: size: 0x400 base: 0xe0000000 mtrr: size and base must be multiples of 4 kiB mtrr: size: 0x200 base: 0xe0000000 mtrr: size and base must be multiples of 4 kiB mtrr: size: 0x100 base: 0xe0000000 mtrr: size and base must be multiples of 4 kiB mtrr: size: 0x80 base: 0xe0000000 mtrr: size and base must be multiples of 4 kiB mtrr: size: 0x40 base: 0xe0000000 mtrr: size and base must be multiples of 4 kiB mtrr: size: 0x20 base: 0xe0000000 mtrr: size and base must be multiples of 4 kiB mtrr: size: 0x10 base: 0xe0000000 mtrr: size and base must be multiples of 4 kiB mtrr: size: 0x8 base: 0xe0000000 mtrr: size and base must be multiples of 4 kiB mtrr: size: 0x4 base: 0xe0000000 mtrr: size and base must be multiples of 4 kiB mtrr: size: 0x2 base: 0xe0000000 mtrr: size and base must be multiples of 4 kiB mtrr: size: 0x1 base: 0xe0000000 Stop scaling down at PAGE_SIZE. Also fix up some broken indentation. Signed-off-by: Dave Jones Cc: Alexey Dobriyan Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 72414d3f1d22fc3e311b162fca95c430048d38ce Author: Maneesh Soni Date: Sat Jun 25 14:58:28 2005 -0700 [PATCH] kexec code cleanup o Following patch provides purely cosmetic changes and corrects CodingStyle guide lines related certain issues like below in kexec related files o braces for one line "if" statements, "for" loops, o more than 80 column wide lines, o No space after "while", "for" and "switch" key words o Changes: o take-2: Removed the extra tab before "case" key words. o take-3: Put operator at the end of line and space before "*/" Signed-off-by: Maneesh Soni Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 4f339ecb30c759f94a29992d4635d9194132b6cf Author: Alexander Nyberg Date: Sat Jun 25 14:58:27 2005 -0700 [PATCH] kdump: Save trap information for later analysis If we are faulting in kernel it is quite possible this will lead to a panic. Save trap number, cr2 (in case of page fault) and error_code in the current thread (these fields already exist for signal delivery but are not used here). This helps later kdump crash analyzing from user-space (a script has been submitted to dig this info out in gdb). Signed-off-by: Alexander Nyberg Cc: Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 6e274d144302068a00794ec22e73520c0615cb6f Author: Alexander Nyberg Date: Sat Jun 25 14:58:26 2005 -0700 [PATCH] kdump: Use real pt_regs from exception Makes kexec_crashdump() take a pt_regs * as an argument. This allows to get exact register state at the point of the crash. If we come from direct panic assertion NULL will be passed and the current registers saved before crashdump. This hooks into two places: die(): check the conditions under which we will panic when calling do_exit and go there directly with the pt_regs that caused the fatal fault. die_nmi(): If we receive an NMI lockup while in the kernel use the pt_regs and go directly to crash_kexec(). We're probably nested up badly at this point so this might be the only chance to escape with proper information. Signed-off-by: Alexander Nyberg Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 86b1ae38c0a62409dc862a28e3f08920f55f944b Author: Hariprasad Nellitheertha Date: Sat Jun 25 14:58:25 2005 -0700 [PATCH] kdump: sysrq trigger mechanism for kexec based crashdumps Add a sysrq-trigger mechanism for kexec based crashdumps. Alt-Sysrq-c triggers a kexec based crashdump. Signed-off-by: Hariprasad Nellitheertha Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 315c215c0a7324894541d43b0e720f20cafca92e Author: Vivek Goyal Date: Sat Jun 25 14:58:24 2005 -0700 [PATCH] kdump: cleanups for dump file access in linear raw format Removed the dependency on backup region. Now all the information is encoded in ELF format. /dev/oldmem is a dummy interface. User space tool need to be intelligent enough to parse the elf headers and read the relevant memory areas with the help of /dev/oldmem. Signed-off-by: Vivek Goyal Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 50b1fdbd81edcc8bd343ca44aca2b87a29e2f15c Author: Vivek Goyal Date: Sat Jun 25 14:58:23 2005 -0700 [PATCH] kdump: Accessing dump file in linear raw format (/dev/oldmem) Hariprasad Nellitheertha This patch contains the code that enables us to access the previous kernel's memory as /dev/oldmem. Signed-off-by: Eric Biederman Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 72658e9d5004fc0dd807bea9eda49e6a52e40103 Author: Vivek Goyal Date: Sat Jun 25 14:58:22 2005 -0700 [PATCH] kdump: Parse elf32 headers and export through /proc/vmcore o Adds support for parsing core ELF32 headers. o I am expecting ELF32 support to go away down the line. This patch has been introduced for testing purposes as gdb can not parse ELF64 headers for i386. When a decent user space solution is available, ELF32 support can go away. Signed-off-by: Vivek Goyal Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 666bfddbe8b8fd4fd44617d6c55193d5ac7edb29 Author: Vivek Goyal Date: Sat Jun 25 14:58:21 2005 -0700 [PATCH] kdump: Access dump file in elf format (/proc/vmcore) From: "Vivek Goyal" o Support for /proc/vmcore interface. This interface exports elf core image either in ELF32 or ELF64 format, depending on the format in which elf headers have been stored by crashed kernel. o Added support for CONFIG_VMCORE config option. o Removed the dependency on /proc/kcore. From: "Eric W. Biederman" This patch has been refactored to more closely match the prevailing style in the affected files. And to clearly indicate the dependency between /proc/kcore and proc/vmcore.c From: Hariprasad Nellitheertha This patch contains the code that provides an ELF format interface to the previous kernel's memory post kexec reboot. Signed off by Hariprasad Nellitheertha Signed-off-by: Eric Biederman Signed-off-by: Vivek Goyal Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 2030eae52b416a9a9f0ffda74c982b7f1e19496d Author: Vivek Goyal Date: Sat Jun 25 14:58:20 2005 -0700 [PATCH] Retrieve elfcorehdr address from command line This patch adds support for retrieving the address of elf core header if one is passed in command line. Signed-off-by: Vivek Goyal Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 60e64d46a58236e3c718074372cab6a5b56a3b15 Author: Vivek Goyal Date: Sat Jun 25 14:58:19 2005 -0700 [PATCH] kdump: Routines for copying dump pages This patch provides the interfaces necessary to read the dump contents, treating it as a high memory device. Signed off by Hariprasad Nellitheertha Signed-off-by: Eric Biederman Signed-off-by: Vivek Goyal Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 5f016456c96868c27df248a54d1cc919e7b70a23 Author: Vivek Goyal Date: Sat Jun 25 14:58:19 2005 -0700 [PATCH] kdump: Kconfig - config option CONFIG_CRASH_DUMP - Made it dependent on HIGHMEM. This is required as capture kernel treats the previous kernel's memory as high memmory and stitches a PTE for accessing it. Signed-off-by: Vivek Goyal Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 92aa63a5a1bf2e7b0c79e6716d24b76dbbdcf951 Author: Vivek Goyal Date: Sat Jun 25 14:58:18 2005 -0700 [PATCH] kdump: Retrieve saved max pfn This patch retrieves the max_pfn being used by previous kernel and stores it in a safe location (saved_max_pfn) before it is overwritten due to user defined memory map. This pfn is used to make sure that user does not try to read the physical memory beyond saved_max_pfn. Signed-off-by: Vivek Goyal Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit d58831e4163699de204dea199be2e903bf5d6eff Author: Vivek Goyal Date: Sat Jun 25 14:58:17 2005 -0700 [PATCH] kdump documentation update to introduce use of irqpoll o Specify "irqpoll" command line option which loading second kernel. This helps in reducing driver initialization failures in second kernel due to shared interrupts. o Enabled LAPIC/IOAPIC support for UP kernels in second kernel. This reduces the chances of devices sharing the irq and hence reduces the chances of driver initialization failures in second kernel. o Build a UP capture kernel and disabled SMP support. Signed-off-by: Vivek Goyal Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit b089f4a68eccd9782c89262c0d7cae146d5a8a40 Author: Vivek Goyal Date: Sat Jun 25 14:58:15 2005 -0700 [PATCH] kdump: Documentation for Kdump This patch contains the documentation for the kexec based crash dump tool. Quick kdump-howto ================================================================ 1) Download and build kexec-tools. 2) Download and build the latest kexec/kdump (-mm) kernel patchset. Two kernels need to be built in order to get this feature working. A) First kernel: a) Enable "kexec system call" feature: CONFIG_KEXEC=y b) Physical load address (use default): CONFIG_PHYSICAL_START=0x100000 c) Enable "sysfs file system support": CONFIG_SYSFS=y d) Boot into first kernel with the command line parameter "crashkernel=Y@X": For example: "crashkernel=64M@16M". B) Second kernel: a) Enable "kernel crash dumps" feature: CONFIG_CRASH_DUMP=y b) Physical load addreess, use same load address as X in "crashkernel" kernel parameter in d) above, e.g., 16 MB or 0x1000000. CONFIG_PHYSICAL_START=0x1000000 c) Enable "/proc/vmcore support" (Optional, in Pseudo filesystems). CONFIG_PROC_VMCORE=y 3) Boot into the first kernel. 4) Load the second kernel to be booted using: kexec -p --crash-dump --args-linux --append="root= maxcpus=1 init 1" 5) System reboots into the second kernel when a panic occurs. A module can be written to force the panic, for testing purposes. 6) See Documentation/kdump.txt for how to read the first kernel's memory image and how to analyze it. Signed-off-by: Hariprasad Nellitheertha Signed-off-by: Eric Biederman Signed-off-by: Vivek Goyal Signed-off-by: randy_dunlap Signed-off-by: Maneesh Soni Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit a3ea8ac8468f5c7fc65684331dfba3260d5b2d93 Author: Vivek Goyal Date: Sat Jun 25 14:58:14 2005 -0700 [PATCH] Kexec: Kexec on panic fix with nmi watchdog enabled o Problem: Kexec on panic hangs if first kernel is booted with nmi_watchdog command line parameter. This problem occurs because kexec crash shutdown code replaces the NMI callback handler. This handler saves the cpu register states and halts the cpu. If system is booted with nmi_watchdog parameter, then crashing cpu also runs this nmi handler and halts itself. o This patch fixes the problem by keeping a track of crashing cpu and not executing the new nmi handler on crashing cpu. o There is a dependence on smp_processor_id() function which might return insane value for cpu, if cpu field of thread_info is corrupted. Signed-off-by: Vivek Goyal Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 4d55476c3f889e0f30d88e22da4682b5f10394ff Author: Vivek Goyal Date: Sat Jun 25 14:58:13 2005 -0700 [PATCH] kdump: NMI handler segment selector, stack pointer fix CPU does not save ss and esp on stack if execution was already in kernel mode at the time of NMI occurrence. This leads to saving of erractic values for ss and esp. This patch fixes the issue. Signed-off-by: Vivek Goyal Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 625f1c8219d95300ed32e4c67eb62a50ded095ba Author: Vivek Goyal Date: Sat Jun 25 14:58:12 2005 -0700 [PATCH] Kdump: Export crash notes section address through sysfs o Following patch exports kexec global variable "crash_notes" to user space through sysfs as kernel attribute in /sys/kernel. Signed-off-by: Maneesh Soni Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit cf13f0eaffa31bf6a145c53c589654b11c72ddc7 Author: Heiko Carstens Date: Sat Jun 25 14:58:11 2005 -0700 [PATCH] kexec: s390 support Add kexec support for s390 architecture. From: Milton Miller - Fix passing of first argument to relocate_kernel assembly. - Fix Kconfig description. - Remove wrong comment and comments that describe obvious things. - Allow only KEXEC_TYPE_DEFAULT as image type -> dump not supported. Acked-by: Martin Schwidefsky Signed-off-by: Heiko Carstens Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit fce0d5740322b98b863f9e609f5a9bd4c06703af Author: R Sharada Date: Sat Jun 25 14:58:10 2005 -0700 [PATCH] ppc64: kexec support for ppc64 This patch implements the kexec support for ppc64 platforms. A couple of notes: 1) We copy the pages in virtual mode, using the full base kernel and a statically allocated stack. At kexec_prepare time we scan the pages and if any overlap our (0, _end[]) range we return -ETXTBSY. On PowerPC 64 systems running in LPAR (logical partitioning) mode, only a small region of memory, referred to as the RMO, can be accessed in real mode. Since Linux runs with only one zone of memory in the memory allocator, and it can be orders of magnitude more memory than the RMO, looping until we allocate pages in the source region is not feasible. Copying in virtual means we don't have to write a hash table generation and call hypervisor to insert translations, instead we rely on the pinned kernel linear mapping. The kernel already has move to linked location built in, so there is no requirement to load it at 0. If we want to load something other than a kernel, then a stub can be written to copy a linear chunk in real mode. 2) The start entry point gets passed parameters from the kernel. Slaves are started at a fixed address after copying code from the entry point. All CPUs get passed their firmware assigned physical id in r3 (most calling conventions use this register for the first argument). This is used to distinguish each CPU from all other CPUs. Since firmware is not around, there is no other way to obtain this information other than to pass it somewhere. A single CPU, referred to here as the master and the one executing the kexec call, branches to start with the address of start in r4. While this can be calculated, we have to load it through a gpr to branch to this point so defining the register this is contained in is free. A stack of unspecified size is available at r1 (also common calling convention). All remaining running CPUs are sent to start at absolute address 0x60 after copying the first 0x100 bytes from start to address 0. This convention was chosen because it matches what the kernel has been doing itself. (only gpr3 is defined). Note: This is not quite the convention of the kexec bootblock v2 in the kernel. A stub has been written to convert between them, and we may adjust the kernel in the future to allow this directly without any stub. 3) Destination pages can be placed anywhere, even where they would not be accessible in real mode. This will allow us to place ram disks above the RMO if we choose. Signed-off-by: Milton Miller Signed-off-by: R Sharada Signed-off-by: Paul Mackerras Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit f4c82d5132b0592f5d6befc5b652cbd4b08f12ff Author: R Sharada Date: Sat Jun 25 14:58:08 2005 -0700 [PATCH] ppc64 kexec: native hash clear Add code to clear the hash table and invalidate the tlb for native (SMP, non-LPAR) mode. Supports 16M and 4k pages. Signed-off-by: Milton Miller Signed-off-by: R Sharada Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 70765aa4bdb8862a49fcf5b28f3deaf561cf5ae7 Author: Eric W. Biederman Date: Sat Jun 25 14:58:07 2005 -0700 [PATCH] kexec: kexec ppc support I have tweaked this patch slightly to handle an empty list of pages to relocate passed to relocate_new_kernel. And I have added ppc_md.machine_crash_shutdown. To keep up with the changes in the generic kexec infrastructure. From: Albert Herranz The following patch adds support for kexec on the ppc32 platform. Non-OpenFirmware based platforms are likely to work directly without additional changes on the kernel side. The kexec-tools userland package may need to be slightly updated, though. For OpenFirmware based machines, additional work is still needed on the kernel side before kexec support is ready. Benjamin Herrenschmidt is kindly working on that part. In order for a ppc platform to use the kexec kernel services it must implement some ppc_md hooks. Otherwise, kexec will be explicitly disabled, as suggested by benh. There are 3+1 new ppc_md hooks that a platform supporting kexec may implement. Two of them are mandatory for kexec to work. See include/asm-ppc/machdep.h for details. - machine_kexec_prepare(image) This function is called to make any arrangements to the image before it is loaded. This hook _MUST_ be provided by a platform in order to activate kexec support for that platform. Otherwise, the platform is considered to not support kexec and the kexec_load system call will fail (that makes all existing platforms by default non-kexec'able). - machine_kexec_cleanup(image) This function is called to make any cleanups on image after the loaded image data it is freed. This hook is optional. A platform may or may not provide this hook. - machine_kexec(image) This function is called to perform the _actual_ kexec. This hook _MUST_ be provided by a platform in order to activate kexec support for that platform. If a platform provides machine_kexec_prepare but forgets to provide machine_kexec, a kexec will fall back to a reboot. A ready-to-use machine_kexec_simple() generic function is provided to, hopefully, simplify kexec adoption for embedded platforms. A platform may call this function from its specific machine_kexec hook, like this: void myplatform_kexec(struct kimage *image) { machine_kexec_simple(image); } - machine_shutdown() This function is called to perform any machine specific shutdowns, not already done by drivers. This hook is optional. A platform may or may not provide this hook. An example (trimmed) platform specific module for a platform supporting kexec through the existing machine_kexec_simple follows: /* ... */ #ifdef CONFIG_KEXEC int myplatform_kexec_prepare(struct kimage *image) { /* here, we can place additional preparations */ return 0; /* yes, we support kexec */ } void myplatform_kexec(struct kimage *image) { machine_kexec_simple(image); } #endif /* CONFIG_KEXEC */ /* ... */ void __init platform_init(unsigned long r3, unsigned long r4, unsigned long r5, unsigned long r6, unsigned long r7) { /* ... */ #ifdef CONFIG_KEXEC ppc_md.machine_kexec_prepare = myplatform_kexec_prepare; ppc_md.machine_kexec = myplatform_kexec; #endif /* CONFIG_KEXEC */ /* ... */ } The kexec ppc kernel support has been heavily tested on the GameCube Linux port, and, as reported in the fastboot mailing list, it has been tested too on a Moto 82xx ppc by Rick Richardson. Signed-off-by: Albert Herranz Signed-off-by: Eric Biederman Acked-by: Benjamin Herrenschmidt Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 5f5609df0c943b005847d3b2765d6dd47b624011 Author: Eric W. Biederman Date: Sat Jun 25 14:58:04 2005 -0700 [PATCH] crashdump: x86_64: crashkernel option This is the x86_64 implementation of the crashkernel option. It reserves a window of memory very early in the bootup process, so we never use it for anything but the kernel to switch to when the running kernel panics. In addition to reserving this memory a resource structure is registered so looking at /proc/iomem it is clear what happened to that memory. ISSUES: Is it possible to implement this in a architecture generic way? What should be done with architectures that always use an iommu and thus don't report their RAM memory resources in /proc/iomem? Signed-off-by: Eric Biederman Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 5234f5eb04abbbfa306ccfbc2ccbb6e73f515b15 Author: Eric W. Biederman Date: Sat Jun 25 14:58:02 2005 -0700 [PATCH] kexec: x86_64 kexec implementation This is the x86_64 implementation of machine kexec. 32bit compatibility support has been implemented, and machine_kexec has been enhanced to not care about the changing internal kernel paget table structures. From: Alexander Nyberg build fix Signed-off-by: Eric Biederman Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit d89559589a588d1a654329d8cd9a3ad33aaad9be Author: Eric W. Biederman Date: Sat Jun 25 14:58:02 2005 -0700 [PATCH] kexec: x86_64: factor out apic shutdown code Factor out the apic and smp shutdown code from machine_restart so it can be called by in the kexec reboot path as well. Signed-off-by: Eric Biederman Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 1bc3b91aeed71a904e431d12ca90e9b6bcb42c91 Author: Eric W. Biederman Date: Sat Jun 25 14:58:01 2005 -0700 [PATCH] crashdump: x86 crashkernel option This is the x86 implementation of the crashkernel option. It reserves a window of memory very early in the bootup process, so we never use it for anything but the kernel to switch to when the running kernel panics. In addition to reserving this memory a resource structure is registered so looking at /proc/iomem it is clear what happened to that memory. ISSUES: Is it possible to implement this in a architecture generic way? What should be done with architectures that always use an iommu and thus don't report their RAM memory resources in /proc/iomem? Signed-off-by: Eric Biederman Signed-off-by: Vivek Goyal Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 63d30298efc387c72557d11e2a7b467554c05a64 Author: Eric W. Biederman Date: Sat Jun 25 14:58:00 2005 -0700 [PATCH] kexec: x86 shutdown APICs during crash_shutdown In the case of a crash/panic an architecture specific function machine_crash_shutdown is called. This patch adds to the x86 machine_crash function the standard kernel code for shutting down apics. Every line of code added to that function increases the risk that we will call code after a kernel panic that is not safe. This patch should not make it to the stable kernel without a being reviewed a lot more. It is unclear how much a hardned kernel can take when it comes to misconfigured apics. So since a normal kernel has problems this patch does a clean shutdown. It is my expectation this patch will be dropped from future generations of the kexec work. But for the moment it is a crutch to keep from breaking everything. Signed-off-by: Eric Biederman Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 2c818b45a202b8f632b4031edcba8599efda42b7 Author: Eric W. Biederman Date: Sat Jun 25 14:57:59 2005 -0700 [PATCH] kexec: x86: snapshot registers during crash shutdown After the kernel panics if we wish to generate an entire machine core file it is very nice to know the register state at the time the machine crashed. After long discussion it was realized that if you are going to be saving the information anyway it is reasonable to store the information in a format that it will be used and recognized in so the register state is stored in the standard ELF note format. Signed-off-by: Eric Biederman Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit c4ac4263a019c791e906f284bb03891d3c25a845 Author: Eric W. Biederman Date: Sat Jun 25 14:57:58 2005 -0700 [PATCH] crashdump: x86: add NMI handler to capture other CPUs One of the dangers when switching from one kernel to another is what happens to all of the other cpus that were running in the crashed kernel. In an attempt to avoid that problem this patch adds a nmi handler and attempts to shoot down the other cpus by sending them non maskable interrupts. The code then waits for 1 second or until all known cpus have stopped running and then jumps from the running kernel that has crashed to the kernel in reserved memory. The kernel spin loop is used for the delay as that should behave continue to be safe even in after a crash. Signed-off-by: Eric Biederman Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 5033cba087f6ac773002123aafbea1aad4267682 Author: Eric W. Biederman Date: Sat Jun 25 14:57:56 2005 -0700 [PATCH] kexec: x86 kexec core This is the i386 implementation of kexec. Signed-off-by: Eric Biederman Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit dd2a13054ffc25783a74afb5e4a0f2115e45f9cd Author: Eric W. Biederman Date: Sat Jun 25 14:57:55 2005 -0700 [PATCH] kexec: x86: factor out apic shutdown code Factor out the apic and smp shutdown code from machine_restart so it can be called by in the kexec reboot path as well. By switching to the bootstrap cpu by default on reboot I can delete/simplify some motherboard fixups well. Signed-off-by: Eric Biederman Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 50cccc699ed849d31c9e3f7643db33edade20e4e Author: Vivek Goyal Date: Sat Jun 25 14:57:55 2005 -0700 [PATCH] Kexec on panic vmlinux initrd fix This is a minor bug fix in kexec to resolve the problem of loading panic kernel with initrd. o Problem: Loading a capture kenrel fails if initrd is also being loaded. This has been observed for vmlinux image for kexec on panic case. o This patch fixes the problem. In segment location and size verification logic, minor correction has been done. Segment memory end (mend) should be mstart + memsz - 1. This one byte offset was source of failure for initrd loading which was being loaded at hole boundary. Signed-off-by: Vivek Goyal Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit dc009d92435f99498cbc579ce76bf28e837e2c14 Author: Eric W. Biederman Date: Sat Jun 25 14:57:52 2005 -0700 [PATCH] kexec: add kexec syscalls This patch introduces the architecture independent implementation the sys_kexec_load, the compat_sys_kexec_load system calls. Kexec on panic support has been integrated into the core patch and is relatively clean. In addition the hopefully architecture independent option crashkernel=size@location has been docuemented. It's purpose is to reserve space for the panic kernel to live, and where no DMA transfer will ever be setup to access. Signed-off-by: Eric Biederman Signed-off-by: Alexander Nyberg Signed-off-by: Adrian Bunk Signed-off-by: Vivek Goyal Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit d0537508a9921efced238b20967e50e519ac34af Author: Eric W. Biederman Date: Sat Jun 25 14:57:52 2005 -0700 [PATCH] kexec: x86_64: add CONFIG_PHYSICAL_START For one kernel to report a crash another kernel has created we need to have 2 kernels loaded simultaneously in memory. To accomplish this the two kernels need to built to run at different physical addresses. This patch adds the CONFIG_PHYSICAL_START option to the x86_64 kernel so we can do just that. You need to know what you are doing and the ramifications are before changing this value, and most users won't care so I have made it depend on CONFIG_EMBEDDED bzImage kernels will work and run at a different address when compiled with this option but they will still load at 1MB. If you need a kernel loaded at a different address as well you need to boot a vmlinux. Signed-off-by: Eric Biederman Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 8a9190853c34289d9181acd9c620c76143bf88ca Author: Vivek Goyal Date: Sat Jun 25 14:57:51 2005 -0700 [PATCH] kexec: reserve Bootmem fix for booting nondefault location kernel This patch fixes a problem with reserving memory during boot up of a kernel built for non-default location. Currently boot memory allocator reserves the memory required by kernel image, boot allocaotor bitmap etc. It assumes that kernel is loaded at 1MB (HIGH_MEMORY hard coded to 1024*1024). But kernel can be built for non-default locatoin, hence existing hardcoding will lead to reserving unnecessary memory. This patch fixes it. Signed-off-by: Vivek Goyal Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 3d345e3fc9e9177deb7c82e5c79e32d77eb63cce Author: Eric W. Biederman Date: Sat Jun 25 14:57:49 2005 -0700 [PATCH] kexec: x86: add CONFIG_PYSICAL_START For one kernel to report a crash another kernel has created we need to have 2 kernels loaded simultaneously in memory. To accomplish this the two kernels need to built to run at different physical addresses. This patch adds the CONFIG_PHYSICAL_START option to the x86 kernel so we can do just that. You need to know what you are doing and the ramifications are before changing this value, and most users won't care so I have made it depend on CONFIG_EMBEDDED bzImage kernels will work and run at a different address when compiled with this option but they will still load at 1MB. If you need a kernel loaded at a different address as well you need to boot a vmlinux. Signed-off-by: Eric Biederman Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 5ded01e83ec3b60191b03b9f88f53acd4e6112f5 Author: Eric W. Biederman Date: Sat Jun 25 14:57:48 2005 -0700 [PATCH] kexec: x86_64: vmlinux: fix physical addresses The vmlinux on x86_64 does not report the correct physical address of the kernel. Instead in the physical address field it currently reports the virtual address of the kernel. This is patch is a bug fix that corrects vmlinux to report the proper physical addresses. This is potentially a help for crash dump analysis tools. This definitiely allows bootloaders that load vmlinux as a standard ELF executable. Bootloaders directly loading vmlinux become of practical importance when we consider the kexec on panic case. Signed-off-by: Eric Biederman Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit ad0d75ebacdbf1004d004803df0ba371c6bdbe2a Author: Eric W. Biederman Date: Sat Jun 25 14:57:47 2005 -0700 [PATCH] kexec: x86: vmlinux: fix physical addresses The vmlinux on i386 does not report the correct physical address of the kernel. Instead in the physical address field it currently reports the virtual address of the kernel. This is patch is a bug fix that corrects vmlinux to report the proper physical addresses. This is potentially a help for crash dump analysis tools. This definitiely allows bootloaders that load vmlinux as a standard ELF executable. Bootloaders directly loading vmlinux become of practical importance when we consider the kexec on panic case. Signed-off-by: Eric Biederman Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 60bad7fadf59313a6359f8828bb0087884ad001a Author: Eric W. Biederman Date: Sat Jun 25 14:57:46 2005 -0700 [PATCH] kexec: vmlinux: fix physical addresses In vmlinux.lds.h the code is carefull to define every section so vmlinux properly reports the correct physical load address of code, as well as it's virtual address. The new SECURITY_INIT definition fails to follow that convention and and causes incorrect physical address to appear in the vmlinux if there are any security initcalls. This patch updates the SECURITY_INIT to follow the convention in the rest of the file. Signed-off-by: Eric Biederman Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 208fb93162d51faa69b9774fa7809858d84fd9dc Author: Eric W. Biederman Date: Sat Jun 25 14:57:45 2005 -0700 [PATCH] kexec: x86_64: restore apic virtual wire mode on shutdown When coming out of apic mode attempt to set the appropriate apic back into virtual wire mode. This improves on previous versions of this patch by by never setting bot the local apic and the ioapic into veritual wire mode. This code looks at data from the mptable to see if an ioapic has an ExtInt input to make this decision. A future improvement is to figure out which apic or ioapic was in virtual wire mode at boot time and to remember it. That is potentially a more accurate method, of selecting which apic to place in virutal wire mode. Signed-off-by: Eric Biederman Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 650927ef8ab1e9b05b77a3f32ca7adcedaae9306 Author: Eric W. Biederman Date: Sat Jun 25 14:57:44 2005 -0700 [PATCH] kexec: x86: resture apic virtual wire mode on shutdown When coming out of apic mode attempt to set the appropriate apic back into virtual wire mode. This improves on previous versions of this patch by by never setting bot the local apic and the ioapic into veritual wire mode. This code looks at data from the mptable to see if an ioapic has an ExtInt input to make this decision. A future improvement is to figure out which apic or ioapic was in virtual wire mode at boot time and to remember it. That is potentially a more accurate method, of selecting which apic to place in virutal wire mode. Signed-off-by: Eric Biederman Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 719e711050482be667dafd39ec787859d353931c Author: Eric W. Biederman Date: Sat Jun 25 14:57:43 2005 -0700 [PATCH] kexec: x86_64: add i8259 shutdown method From: Eric W. Biederman Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit cee5dab4856f51c5cad3aecc630ad0a4d2217a85 Author: Eric W. Biederman Date: Sat Jun 25 14:57:43 2005 -0700 [PATCH] kexec: x86: i8259 shutdown: disable interrupts From: Eric W. Biederman This patch disables interrupt generation from the legacy pic on reboot. Now that there is a sys_device class it should not be called while drivers are still using interrupts. There is a report about this breaking ACPI power off on some systems. http://bugme.osdl.org/show_bug.cgi?id=4041 However the final comment seems to exonerate this code. So until I get more information I believe that was a false positive. Signed-off-by: Eric Biederman Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 70adada4282b52130ef31c7722d3fd8d94dacbc2 Author: Eric W. Biederman Date: Sat Jun 25 14:57:42 2005 -0700 [PATCH] kexec: x86_64: e820 64bit fix From: Eric W. Biederman It is ok to reserve resources > 4G on x86_64 struct resource is 64bit now :) Signed-off-by: Eric Biederman Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 9635b47d910223745258768418003580ef7dba17 Author: Eric W. Biederman Date: Sat Jun 25 14:57:41 2005 -0700 [PATCH] kexec: x86: local apic fix From: "Maciej W. Rozycki" Fix a kexec problem whcih causes local APIC detection failure. The problem is detect_init_APIC() is called early, before the command line have been processed. Therefore "lapic" (and "nolapic") have not been seen, yet. Signed-off-by: Maciej W. Rozycki Signed-off-by: Eric Biederman Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 8f43d03fe2c4962c11d8227ac9505e590bad758b Author: Eric W. Biederman Date: Sat Jun 25 14:57:40 2005 -0700 [PATCH] kexec: x86: rename APIC_MODE_EXINT From: "Maciej W. Rozycki" Rename APIC_MODE_EXINT to APIC_MODE_EXTINT - I think it should be named after what the mode is called in documentation. From: "Eric W. Biederman" I have reduced this patch to just the name change in the header. And integrated the changes into the patches that add those lines. Otherwise I ran into some ugly dependencies. Signed-off-by: Maciej W. Rozycki Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit f8cbd99bd3a023db8d6356d19a5f6f539d367327 Author: Ingo Molnar Date: Sat Jun 25 14:57:39 2005 -0700 [PATCH] sched: voluntary kernel preemption This patch adds a new preemption model: 'Voluntary Kernel Preemption'. The 3 models can be selected from a new menu: (X) No Forced Preemption (Server) ( ) Voluntary Kernel Preemption (Desktop) ( ) Preemptible Kernel (Low-Latency Desktop) we still default to the stock (Server) preemption model. Voluntary preemption works by adding a cond_resched() (reschedule-if-needed) call to every might_sleep() check. It is lighter than CONFIG_PREEMPT - at the cost of not having as tight latencies. It represents a different latency/complexity/overhead tradeoff. It has no runtime impact at all if disabled. Here are size stats that show how the various preemption models impact the kernel's size: text data bss dec hex filename 3618774 547184 179896 4345854 424ffe vmlinux.stock 3626406 547184 179896 4353486 426dce vmlinux.voluntary +0.2% 3748414 548640 179896 4476950 445016 vmlinux.preempt +3.5% voluntary-preempt is +0.2% of .text, preempt is +3.5%. This feature has been tested for many months by lots of people (and it's also included in the RHEL4 distribution and earlier variants were in Fedora as well), and it's intended for users and distributions who dont want to use full-blown CONFIG_PREEMPT for one reason or another. Signed-off-by: Ingo Molnar Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit f704f56af95bec3c1ca719d64d0becef74d40899 Author: Ingo Molnar Date: Sat Jun 25 14:57:38 2005 -0700 [PATCH] enable PREEMPT_BKL on !PREEMPT+SMP too The only sane way to clean up the current 3 lock_kernel() variants seems to be to remove the spinlock-based BKL implementations altogether, and to keep the semaphore-based one only. If we dont want to do that for whatever reason then i'm afraid we have to live with the current complexity. (but i'm open for other cleanup suggestions as well.) To explore this possibility we'll (at a minimum) have to know whether the semaphore-based BKL works fine on plain SMP too. The patch below enables this. The patch may make sense in isolation as well, as it might bring performance benefits: code that would formerly spin on the BKL spinlock will now schedule away and give up the CPU. It might introduce performance regressions as well, if any performance-critical code uses the BKL heavily and gets overscheduled due to the semaphore. I very much hope there is no such performance-critical codepath left though. Signed-off-by: Ingo Molnar Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit cc19ca86a023fcd552c78e77a7be6ce271f92a28 Author: Ingo Molnar Date: Sat Jun 25 14:57:36 2005 -0700 [PATCH] consolidate PREEMPT options into kernel/Kconfig.preempt This patch consolidates the CONFIG_PREEMPT and CONFIG_PREEMPT_BKL preemption options into kernel/Kconfig.preempt. This, besides reducing source-code, also enables more centralized tweaking of preemption related options. Signed-off-by: Ingo Molnar Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 7f1867a5b3dc3034cbea403b229d65eed4a7f62e Author: Dinakar Guniguntala Date: Sat Jun 25 14:57:36 2005 -0700 [PATCH] Dynamic sched domains: ia64 changes ia64 changes similar to kernel/sched.c. Signed-off-by: Dinakar Guniguntala Acked-by: Paul Jackson Acked-by: Nick Piggin Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 85d7b94981e2e919697bc235aad7367b33c3864b Author: Dinakar Guniguntala Date: Sat Jun 25 14:57:34 2005 -0700 [PATCH] Dynamic sched domains: cpuset changes Adds the core update_cpu_domains code and updated cpusets documentation Signed-off-by: Dinakar Guniguntala Acked-by: Paul Jackson Acked-by: Nick Piggin Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 1a20ff27ef75d866730ee796acd811a925af762f Author: Dinakar Guniguntala Date: Sat Jun 25 14:57:33 2005 -0700 [PATCH] Dynamic sched domains: sched changes The following patches add dynamic sched domains functionality that was extensively discussed on lkml and lse-tech. I would like to see this added to -mm o The main advantage with this feature is that it ensures that the scheduler load balacing code only balances against the cpus that are in the sched domain as defined by an exclusive cpuset and not all of the cpus in the system. This removes any overhead due to load balancing code trying to pull tasks outside of the cpu exclusive cpuset only to be prevented by the tasks' cpus_allowed mask. o cpu exclusive cpusets are useful for servers running orthogonal workloads such as RT applications requiring low latency and HPC applications that are throughput sensitive o It provides a new API partition_sched_domains in sched.c that makes dynamic sched domains possible. o cpu_exclusive cpusets sets are now associated with a sched domain. Which means that the users can dynamically modify the sched domains through the cpuset file system interface o ia64 sched domain code has been updated to support this feature as well o Currently, this does not support hotplug. (However some of my tests indicate hotplug+preempt is currently broken) o I have tested it extensively on x86. o This should have very minimal impact on performance as none of the fast paths are affected Signed-off-by: Dinakar Guniguntala Acked-by: Paul Jackson Acked-by: Nick Piggin Acked-by: Matthew Dobson Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 37e4ab3f0cba13adf3535d373fd98e5ee47b5410 Author: Olivier Croquette Date: Sat Jun 25 14:57:32 2005 -0700 [PATCH] Changing RT priority without CAP_SYS_NICE Presently, a process without the capability CAP_SYS_NICE can not change its own policy, which is OK. But it can also not decrease its RT priority (if scheduled with policy SCHED_RR or SCHED_FIFO), which is what this patch changes. The rationale is the same as for the nice value: a process should be able to require less priority for itself. Increasing the priority is still not allowed. This is for example useful if you give a multithreaded user process a RT priority, and the process would like to organize its internal threads using priorities also. Then you can give the process the highest priority needed N, and the process starts its threads with lower priorities: N-1, N-2... The POSIX norm says that the permissions are implementation specific, so I think we can do that. In a sense, it makes the permissions consistent whatever the policy is: with this patch, process scheduled by SCHED_FIFO, SCHED_RR and SCHED_OTHER can all decrease their priority. From: Ingo Molnar cleaned up and merged to -mm. Signed-off-by: Ingo Molnar Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit a3464a102a69a4e00efb0a763e274ce290995b4b Author: Chen Shang Date: Sat Jun 25 14:57:31 2005 -0700 [PATCH] sched: micro-optimize task requeueing in schedule() micro-optimize task requeueing in schedule() & clean up recalc_task_prio(). Signed-off-by: Ingo Molnar Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 77391d71681d05d2f4502f91ad62618522abf624 Author: Nick Piggin Date: Sat Jun 25 14:57:30 2005 -0700 [PATCH] sched: relax pinned balancing The maximum rebalance interval allowed by the multiprocessor balancing backoff is often not large enough to handle corner cases where there are lots of tasks pinned on a CPU. Suresh reported: I see system livelock's if for example I have 7000 processes pinned onto one cpu (this is on the fastest 8-way system I have access to). After this patch, the machine is reported to go well above this number. Signed-off-by: Nick Piggin Acked-by: Ingo Molnar Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 476d139c218e44e045e4bc6d4cc02b010b343939 Author: Nick Piggin Date: Sat Jun 25 14:57:29 2005 -0700 [PATCH] sched: consolidate sbe sbf Consolidate balance-on-exec with balance-on-fork. This is made easy by the sched-domains RCU patches. As well as the general goodness of code reduction, this allows the runqueues to be unlocked during balance-on-fork. schedstats is a problem. Maybe just have balance-on-event instead of distinguishing fork and exec? Signed-off-by: Nick Piggin Acked-by: Ingo Molnar Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 674311d5b411e9042df4fdf7aef0b3c8217b6240 Author: Nick Piggin Date: Sat Jun 25 14:57:27 2005 -0700 [PATCH] sched: RCU domains One of the problems with the multilevel balance-on-fork/exec is that it needs to jump through hoops to satisfy sched-domain's locking semantics (that is, you may traverse your own domain when not preemptable, and you may traverse others' domains when holding their runqueue lock). balance-on-exec had to potentially migrate between more than one CPU before finding a final CPU to migrate to, and balance-on-fork needed to potentially take multiple runqueue locks. So bite the bullet and make sched-domains go completely RCU. This actually simplifies the code quite a bit. From: Ingo Molnar schedstats RCU fix, and a nice comment on for_each_domain, from Ingo. Signed-off-by: Ingo Molnar Signed-off-by: Nick Piggin Acked-by: Ingo Molnar Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 3dbd5342074a1e570ec84edf859deb9be588006d Author: Nick Piggin Date: Sat Jun 25 14:57:26 2005 -0700 [PATCH] sched: multilevel sbe sbf The fundamental problem that Suresh has with balance on exec and fork is that it only tries to balance the top level domain with the flag set. This was worked around by removing degenerate domains, but is still a problem if people want to start using more complex sched-domains, especially multilevel NUMA that ia64 is already using. This patch makes balance on fork and exec try balancing over not just the top most domain with the flag set, but all the way down the domain tree. Signed-off-by: Nick Piggin Acked-by: Ingo Molnar Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 245af2c7870bd5940f7bfad19a0a03b32751fbc5 Author: Suresh Siddha Date: Sat Jun 25 14:57:25 2005 -0700 [PATCH] sched: remove degenerate domains Remove degenerate scheduler domains during the sched-domain init. For example on x86_64, we always have NUMA configured in. On Intel EM64T systems, top most sched domain will be of NUMA and with only one sched_group in it. With fork/exec balances(recent Nick's fixes in -mm tree), we always endup taking wrong decisions because of this topmost domain (as it contains only one group and find_idlest_group always returns NULL). We will endup loading HT package completely first, letting active load balance kickin and correct it. In general, this patch also makes sense with out recent Nick's fixes in -mm. From: Nick Piggin Modified to account for more than just sched_groups when scanning for degenerate domains by Nick Piggin. And allow a runqueue's sd to go NULL rather than keep a single degenerate domain around (this happens when you run with maxcpus=1). Signed-off-by: Suresh Siddha Signed-off-by: Nick Piggin Acked-by: Ingo Molnar Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 41c7ce9ad9a859871dffbe7dbc8b1f9571724e3c Author: Nick Piggin Date: Sat Jun 25 14:57:24 2005 -0700 [PATCH] sched: null domains Fix the last 2 places that directly access a runqueue's sched-domain and assume it cannot be NULL. That allows the use of NULL for domain, instead of a dummy domain, to signify no balancing is to happen. No functional changes. Signed-off-by: Nick Piggin Acked-by: Ingo Molnar Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 4866cde064afbb6c2a488c265e696879de616daa Author: Nick Piggin Date: Sat Jun 25 14:57:23 2005 -0700 [PATCH] sched: cleanup context switch locking Instead of requiring architecture code to interact with the scheduler's locking implementation, provide a couple of defines that can be used by the architecture to request runqueue unlocked context switches, and ask for interrupts to be enabled over the context switch. Also replaces the "switch_lock" used by these architectures with an oncpu flag (note, not a potentially slow bitflag). This eliminates one bus locked memory operation when context switching, and simplifies the task_running function. Signed-off-by: Nick Piggin Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 48c08d3f8ff94fa118187e4d8d4a5707bb85e59d Author: Ingo Molnar Date: Sat Jun 25 14:57:22 2005 -0700 [PATCH] sched: uninline task_timeslice "Chen, Kenneth W" uninline task_timeslice() - reduces code footprint noticeably, and it's slowpath code. Signed-off-by: Ingo Molnar Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 687f1661d302bc70ce906594a6d3f615ef075a50 Author: Nick Piggin Date: Sat Jun 25 14:57:21 2005 -0700 [PATCH] sched: sched tuning Do some basic initial tuning. Signed-off-by: Nick Piggin Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 68767a0ae428801649d510d9a65bb71feed44dd1 Author: Nick Piggin Date: Sat Jun 25 14:57:20 2005 -0700 [PATCH] sched: schedstats update for balance on fork Add SCHEDSTAT statistics for sched-balance-fork. Signed-off-by: Nick Piggin Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 147cbb4bbe991452698f0772d8292f22825710ba Author: Nick Piggin Date: Sat Jun 25 14:57:19 2005 -0700 [PATCH] sched: balance on fork Reimplement the balance on exec balancing to be sched-domains aware. Use this to also do balance on fork balancing. Make x86_64 do balance on fork over the NUMA domain. The problem that the non sched domains aware blancing became apparent on dual core, multi socket opterons. What we want is for the new tasks to be sent to a different socket, but more often than not, we would first load up our sibling core, or fill two cores of a single remote socket before selecting a new one. This gives large improvements to STREAM on such systems. Signed-off-by: Nick Piggin Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit cafb20c1f9976a70d633bb1e1c8c24eab00e4e80 Author: Nick Piggin Date: Sat Jun 25 14:57:17 2005 -0700 [PATCH] sched: no aggressive idle balancing Remove the very aggressive idle stuff that has recently gone into 2.6 - it is going against the direction we are trying to go. Hopefully we can regain performance through other methods. Signed-off-by: Nick Piggin Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit a3f21bce1fefdf92a4d1705e888d390b10f3ac6f Author: Nick Piggin Date: Sat Jun 25 14:57:15 2005 -0700 [PATCH] sched: tweak affine wakeups Do less affine wakeups. We're trying to reduce dbt2-pgsql idle time regressions here... make sure we don't don't move tasks the wrong way in an imbalance condition. Also, remove the cache coldness requirement from the calculation - this seems to induce sharp cutoff points where behaviour will suddenly change on some workloads if the load creeps slightly over or under some point. It is good for periodic balancing because in that case have otherwise have no other context to determine what task to move. But also make a minor tweak to "wake balancing" - the imbalance tolerance is now set at half the domain's imbalance, so we get the opportunity to do wake balancing before the more random periodic rebalancing gets preformed. Signed-off-by: Nick Piggin Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 7897986bad8f6cd50d6149345aca7f6480f49464 Author: Nick Piggin Date: Sat Jun 25 14:57:13 2005 -0700 [PATCH] sched: balance timers Do CPU load averaging over a number of different intervals. Allow each interval to be chosen by sending a parameter to source_load and target_load. 0 is instantaneous, idx > 0 returns a decaying average with the most recent sample weighted at 2^(idx-1). To a maximum of 3 (could be easily increased). So generally a higher number will result in more conservative balancing. Signed-off-by: Nick Piggin Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 99b61ccf0bf0e9a85823d39a5db6a1519caeb13d Author: Nick Piggin Date: Sat Jun 25 14:57:12 2005 -0700 [PATCH] sched: less aggressive idle balancing Remove the special casing for idle CPU balancing. Things like this are hurting for example on SMT, where are single sibling being idle doesn't really warrant a really aggressive pull over the NUMA domain, for example. Signed-off-by: Nick Piggin Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit db935dbd43c4290d710304662cc908f733afea06 Author: Nick Piggin Date: Sat Jun 25 14:57:11 2005 -0700 [PATCH] sched: add debugging These conditions should now be impossible, and we need to fix them if they happen. Signed-off-by: Nick Piggin Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 3950745131e23472fb5ace2ee4a2093e7590ec69 Author: Nick Piggin Date: Sat Jun 25 14:57:09 2005 -0700 [PATCH] sched: fix SMT scheduling problems SMT balancing has a couple of problems. Firstly, active_load_balance is too complex - basically it should be a dumb helper for when the periodic balancer has determined there is an imbalance, but gets stuck because the task is running. So rip out all its "smarts", and just make it move one task to the target CPU. Second, the busy CPU's sched-domain tree was being used for active balancing. This means that it may not see that nr_balance_failed has reached a critical level. So use the target CPU's sched-domain tree for this. We can do this because we hold its runqueue lock. Lastly, reset nr_balance_failed to a point where we allow cache hot migration. This will help ensure active load balancing is successful. Thanks to Suresh Siddha for pointing out these issues. Signed-off-by: Nick Piggin Signed-off-by: Suresh Siddha Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 16cfb1c04c3cbe3759f339d3333e7e1e7d59712a Author: Nick Piggin Date: Sat Jun 25 14:57:08 2005 -0700 [PATCH] sched: reduce active load balancing Fix up active load balancing a bit so it doesn't get called when it shouldn't. Reset the nr_balance_failed counter at more points where we have found conditions to be balanced. This reduces too aggressive active balancing seen on some workloads. Signed-off-by: Nick Piggin Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 8102679447da7fcbcb5226ee0207c3a034bc6d5f Author: Nick Piggin Date: Sat Jun 25 14:57:07 2005 -0700 [PATCH] sched: improve load balancing pinned tasks John Hawkes explained the problem best: A large number of processes that are pinned to a single CPU results in every other CPU's load_balance() seeing this overloaded CPU as "busiest", yet move_tasks() never finds a task to pull-migrate. This condition occurs during module unload, but can also occur as a denial-of-service using sys_sched_setaffinity(). Several hundred CPUs performing this fruitless load_balance() will livelock on the busiest CPU's runqueue lock. A smaller number of CPUs will livelock if the pinned task count gets high. Expanding slightly on John's patch, this one attempts to work out whether the balancing failure has been due to too many tasks pinned on the runqueue. This allows it to be basically invisible to the regular blancing paths (ie. when there are no pinned tasks). We can use this extra knowledge to shut down the balancing faster, and ensure the migration threads don't start running which is another problem observed in the wild. Signed-off-by: Nick Piggin Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit e0f364f4069f76a3613a797c388832822d179076 Author: Nick Piggin Date: Sat Jun 25 14:57:06 2005 -0700 [PATCH] sched: cleanup wake_idle New sched-domains code means we don't get spans with offline CPUs in them. Signed-off-by: Nick Piggin Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 44f410a7ce593e7e75667b93494223998069f3f1 Author: Jon Smirl Date: Sat Jun 25 14:57:05 2005 -0700 [PATCH] hpet: do_div fix We don't need to use do_div() on a 32-bit quantity. Signed-off-by: Jon Smirl Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 6283d58e7464f82b1c1c33943f0bd51c1e83899a Author: Qu Fuping Date: Sat Jun 25 14:55:44 2005 -0700 [PATCH] reiserfs: do not ignore i/io error on readpage Reiserfs's readpage does not notice i/o errors. This patch makes reiserfs_readpage to return -EIO when i/o error appears. This patch makes reiserfs to not ignore I/O error on readpage. Signed-off-by: Qu Fuping Signed-off-by: Vladimir V. Saveliev Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 442ff702233287df3f50ec3a7fd0a73d7367cf5a Author: Jean-Christophe Dubois Date: Sat Jun 25 14:55:43 2005 -0700 [PATCH] mconf.c needs locale.h This is failing on my cross-compilation environment (From a solaris system) using gcc-3.4.1 (as the compiler can't find a prototype for the setlocale() function). Signed-off-by: Jean-Christophe Dubois Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit b0cfbd995d091b10841eeb948976f5d1fbf13cdd Author: Badari Pulavarty Date: Sat Jun 25 14:55:42 2005 -0700 [PATCH] fix for generic_file_write iov problem Here is the fix for the problem described in http://bugzilla.kernel.org/show_bug.cgi?id=4721 Basically, problem is generic_file_buffered_write() is accessing beyond end of the iov[] vector after handling the last vector. If we happen to cross page boundary, we get a fault. I think this simple patch is good enough. If we really don't want to depend on the "count", then we need pass nr_segs to filemap_set_next_iovec() and decrement it and check it. Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 8ae0b77811d97552b3b3c745e97de18849583bf7 Author: Hugh Dickins Date: Sat Jun 25 14:55:41 2005 -0700 [PATCH] fix fsync(dir) return value for ram-based filesystems Any filesystem which is using simple_dir_operations will retunr -EINVAL for fsync() on a directory. Make it return zero instead. Signed-off-by: Hugh Dickins Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 6f9beccb95a47a15e446f64fbb7041dc6edce4d9 Author: Kylene Jo Hall Date: Sat Jun 25 14:55:41 2005 -0700 [PATCH] tpm: fix misc name memory problem I was using invalid memory for the miscdevice.name. This patch fixes the problem which was manifested by an ugly entry in /proc/misc. Signed-off-by: Kylene Hall Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 1dda8abe6feb906306a627b170654ddd8addcdac Author: Kylene Jo Hall Date: Sat Jun 25 14:55:40 2005 -0700 [PATCH] tpm: Fix pubek parsing Fix parsing of the PUBEK for display which was leading to showing the wrong modulus length and modulus. Signed-off-by: Kylene Hall Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit daacdfa6e7d6e57c5d1b8e72b1c863feb53d8a82 Author: Kylene Jo Hall Date: Sat Jun 25 14:55:39 2005 -0700 [PATCH] tpm: Support new National TPMs This patch is work to support new National TPMs that problems were reported with on Thinkpad T43 and Thinkcentre S51. Thanks to Jens and Gang for their debugging work on these issues. Signed-off-by: Kylene Hall Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit b2b18660066997420b716c1881a6be8b82700d97 Author: Paul E. McKenney Date: Sat Jun 25 14:55:38 2005 -0700 [PATCH] RCU: clean up a few remaining synchronize_kernel() calls 2.6.12-rc6-mm1 has a few remaining synchronize_kernel()s, some (but not all) in comments. This patch changes these synchronize_kernel() calls (and comments) to synchronize_rcu() or synchronize_sched() as follows: - arch/x86_64/kernel/mce.c mce_read(): change to synchronize_sched() to handle races with machine-check exceptions (synchronize_rcu() would not cut it given RCU implementations intended for hardcore realtime use. - drivers/input/serio/i8042.c i8042_stop(): change to synchronize_sched() to handle races with i8042_interrupt() interrupt handler. Again, synchronize_rcu() would not cut it given RCU implementations intended for hardcore realtime use. - include/*/kdebug.h comments: change to synchronize_sched() to handle races with NMIs. As before, synchronize_rcu() would not cut it... - include/linux/list.h comment: change to synchronize_rcu(), since this comment is for list_del_rcu(). - security/keys/key.c unregister_key_type(): change to synchronize_rcu(), since this is interacting with RCU read side. - security/keys/process_keys.c install_session_keyring(): change to synchronize_rcu(), since this is interacting with RCU read side. Signed-off-by: "Paul E. McKenney" Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit ae67cd643e9e64217fd92457324625c67fec6e35 Author: Alexey Dobriyan Date: Sat Jun 25 14:55:36 2005 -0700 [PATCH] Makefile: s/gcc-option/cc-option/ Fixes http://bugme.osdl.org/show_bug.cgi?id=4726 Signed-off-by: Alexey Dobriyan Cc: Sam Ravnborg Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 4d0145a7deab4027a0f0a7de74c2d103b8f029cf Author: Lee Nicks Date: Sat Jun 25 14:55:36 2005 -0700 [PATCH] compilation errors in drivers/serial/mpsc.c The following patch fix gcc 4 compilation errors in drivers/serial/mpsc.c Signed-off-by: Lee Nicks Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 66a464dbc8e0345b6f972b92bf1118e043d7c987 Author: Michael Holzheu Date: Sat Jun 25 14:55:33 2005 -0700 [PATCH] s390: debug feature changes This patch changes the memory allocation method for the s390 debug feature. Trace buffers had been allocated using the get_free_pages() function before. Therefore it was not possible to get big memory areas in a running system due to memory fragmentation. Now the trace buffers are subdivided into several subbuffers with pagesize. Therefore it is now possible to allocate more memory for the trace buffers and more trace records can be written. In addition to that, dynamic specification of the size of the trace buffers is implemented. It is now possible to change the size of a trace buffer using a new debugfs file instance. When writing a number into this file, the trace buffer size is changed to 'number * pagesize'. In the past all the traces could be obtained from userspace by accessing files in the "proc" filesystem. Now with debugfs we have a new filesystem which should be used for debugging purposes. This patch moves the debug feature from procfs to debugfs. Since the interface of debug_register() changed, all device drivers, which use the debug feature had to be adjusted. Signed-off-by: Martin Schwidefsky Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 6b979de395c7e1b7e59f74a870e1d1911853eccb Author: Christian Borntraeger Date: Sat Jun 25 14:55:32 2005 -0700 [PATCH] s390: add vmcp interface Add interface to issue VM control program commands. Signed-off-by: Martin Schwidefsky Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 77fa22450de00d535de2cc8be653983560828000 Author: Heiko Carstens Date: Sat Jun 25 14:55:30 2005 -0700 [PATCH] s390: improved machine check handling Improved machine check handling. Kernel is now able to receive machine checks while in kernel mode (system call, interrupt and program check handling). Also register validation is now performed. Signed-off-by: Martin Schwidefsky Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit f901e5d1e06b3326c100c5d0df43656311befb81 Author: Cornelia Huck Date: Sat Jun 25 14:55:29 2005 -0700 [PATCH] s/390: compile fix for dcssblk Fix compile breakage in the dcss block driver introduced by the attribute changes. Signed-off-by: Cornelia Huck Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit c551288e34cff0a78b3103ce2e12099dffa41071 Author: Cornelia Huck Date: Sat Jun 25 14:55:28 2005 -0700 [PATCH] s/390: use klist in dasd driver Convert the dasd driver to use the new klist interface. Signed-off-by: Cornelia Huck Cc: Greg KH Cc: Martin Schwidefsky Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit b0744bd2925a4a24865963322534107d2ad553f9 Author: Cornelia Huck Date: Sat Jun 25 14:55:27 2005 -0700 [PATCH] s/390: Use klist in cio Convert the common I/O layer to use the klist interfaces. This patch has been adapted from the previous version to the changed interface semantics. Also, gcc 4.0 compile warnings have been removed. Signed-off-by: Cornelia Huck Cc: Greg KH Cc: Martin Schwidefsky Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 84dd8d7e9c080b4db66b00b8bc36ccf09a90f824 Author: Paolo 'Blaisorblade' Giarrusso Date: Sat Jun 25 14:55:26 2005 -0700 [PATCH] uml: add profile_pc for i386 Cope with a conditional i386 definition, which is wrong for UML. Before we just used that one, but it wasn't defined for CONFIG_SMP, so in that case we got link errors. Signed-off-by: Paolo 'Blaisorblade' Giarrusso Cc: Jeff Dike Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 29d56cfe3ca599ddc3ae9156e7e469c044d97b96 Author: Jeff Dike Date: Sat Jun 25 14:55:25 2005 -0700 [PATCH] uml: hot-unplug code cleanup Clean up the hot-unplugging code. There is now an id procedure which is called to figure out what device we're talking to. The error messages from that are now done from mconsole_remove instead of the driver. remove is now called with the device number, after it has been checked, so doesn't need to do sanity checking on it. Signed-off-by: Jeff Dike Cc: Paolo Giarrusso Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit fc47a0d18a1994b4a18d2235fcde1b75dfa72552 Author: Jeff Dike Date: Sat Jun 25 14:55:24 2005 -0700 [PATCH] uml: time initialization tidying user_time_init_skas and user_time_init_tt were essentially the same. So, this merges them, deleting the mode-specific functions and declarations. Signed-off-by: Jeff Dike Cc: Paolo Giarrusso Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 026549d28469f7d4ca7e5a4707f0d2dc4f2c164c Author: Jeff Dike Date: Sat Jun 25 14:55:23 2005 -0700 [PATCH] uml: always disable kmalloc during shutdown kmalloc wasn't being disabled during panic. This patch ensures that, no matter how UML is exiting, it is disabled. This matters because part of the cleanup is to remove the umid file, which involves readdir, which calls malloc. This must map to libc malloc, rather than kmalloc or vmalloc. Signed-off-by: Jeff Dike Cc: Paolo Giarrusso Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit a6f4e3cf75538a75ee4fab620e3c8466f2154458 Author: Jeff Dike Date: Sat Jun 25 14:55:22 2005 -0700 [PATCH] uml: fix timer initialization In skas mode, the call to uml_idle_timer permanently shut off the virtual timer, resulting in no timer ticks to anything but the idle thread. This is likely the cause of the soft lockups that are seen sporadically in recent UMLs. Signed-off-by: Jeff Dike Cc: Paolo Giarrusso Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit e0877f07e85a46e4fde32bd84f08551d360839fe Author: Jeff Dike Date: Sat Jun 25 14:55:21 2005 -0700 [PATCH] uml: fork cleanup Fix the do_fork calling convention: normal arch pass the regs and the new sp value to do_fork instead of NULL. Currently the arch-independent code ignores these values, while the UML code (actually it's copy_thread) gets the right values by itself. With this patch, things are fixed up. Signed-off-by: Paolo 'Blaisorblade' Giarrusso Signed-off-by: Jeff Dike Cc: Paolo Giarrusso Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 41f2148a67f28803d64bf5ff538591af90a5ab57 Author: Jesper Juhl Date: Sat Jun 25 14:55:20 2005 -0700 [PATCH] uml: kfree cleanup Here's a small patch to remove a few unnessesary NULL pointer checks before kfree() in arch/um/drivers/daemon_user.c Signed-off-by: Jesper Juhl Signed-off-by: Jeff Dike Cc: Paolo Giarrusso Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 350d5bd84ecda038bb482ab5f2596bdca68109d9 Author: Andrew Morton Date: Sat Jun 25 14:55:19 2005 -0700 [PATCH] uml: fix sizeof usage Size of pointer doesn't seem right, but maybe my solution isn't either (sig_size maybe?). Signed-off-by: Domen Puncer Signed-off-by: Jeff Dike Cc: Paolo Giarrusso Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 2a96206559a8c3a18478a6288ac426d716bbd99c Author: Pavel Machek Date: Sat Jun 25 14:55:18 2005 -0700 [PATCH] Update video-after-suspend documentation Update video-after-suspend documentation; few more machines are added. Signed-off-by: Pavel Machek Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 19c324397a55edf122822f829779b46b9cb385dd Author: Pavel Machek Date: Sat Jun 25 14:55:17 2005 -0700 [PATCH] swsusp: only allow it when it makes sense Show swsuspend only on .config where it can compile. I got this on PPC32 && SMP: kernel/power/smp.c:24: error: storage size of `ctxt' isn't known Also mark swsusp as no longer experimental. Signed-off-by: Olaf Hering Signed-off-by: Pavel Machek Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 21d6b7e18f70c847c867aafb3109405b48424388 Author: pavel@ucw.cz Date: Sat Jun 25 14:55:16 2005 -0700 [PATCH] suspend: PCI power managment reference implementation Added reference implementation of suspend and resume routines. From: Shaohua Li build fix Signed-off-by: Pavel Machek Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit ac25575203c11145066ea5cb583354cb5f0a8ade Author: Shaohua Li Date: Sat Jun 25 14:55:15 2005 -0700 [PATCH] CPU hotplug printk fix In the cpu hotplug case, per-cpu data possibly isn't initialized even the system state is 'running'. As the comments say in the original code, some console drivers assume per-cpu resources have been allocated. radeon fb is one such driver, which uses kmalloc. After a CPU is down, the per-cpu data of slab is freed, so the system crashed when printing some info. Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 8d783b3e02002bce8cf9d4e4a82922ee7e59b1e5 Author: Pavel Machek Date: Sat Jun 25 14:55:14 2005 -0700 [PATCH] swsusp: clean assembly parts This patch fixes register saving so that each register is only saved once, and adds missing saving of %cr8 on x86-64. Some reordering so that save/restore is more logical/safer (segment registers should be restored after gdt). Signed-off-by: Pavel Machek Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit c61978b30322c83a94d7e4857fa5b9996b7d7931 Author: Pavel Machek Date: Sat Jun 25 14:55:14 2005 -0700 [PATCH] swsusp: fix nr_copy_pages The following patch moves the recalculation of nr_copy_pages so that the right number is used in the calculation of the size of memory and swap needed. It prevents swsusp from attempting to suspend if there is not enough memory and/or swap (which is unlikely anyway). Signed-off-by: Rafael J. Wysocki Signed-off-by: Pavel Machek Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 2e4d5822dc71f01bf515b8f6f4e41ae12ee785b8 Author: Pavel Machek Date: Sat Jun 25 14:55:12 2005 -0700 [PATCH] swsusp: cleanup whitespace The following patch cleans up whitespace in swsusp.c (a bit): - removes any trailing whitespace - adds spaces after if, for, for_each_pbe, for_each_zone etc., wherever necessary. Signed-off-by: Rafael J. Wysocki Signed-off-by: Pavel Machek Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 8f9bdf15c059c5d84db9c395705bf79b30762420 Author: Pavel Machek Date: Sat Jun 25 14:55:12 2005 -0700 [PATCH] swsusp: kill unneccessary does_collide_order The following patch removes the unnecessary function does_collide_order(). This function is no longer necessary, as currently there are only 0-order allocations in swsusp, and the use of it is confusing. Signed-off-by: Rafael J. Wysocki Signed-off-by: Pavel Machek Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 620b03276488c3cf103caf1e326bd21f00d3df84 Author: Pavel Machek Date: Sat Jun 25 14:55:11 2005 -0700 [PATCH] properly stop devices before poweroff Without this patch, Linux provokes emergency disk shutdowns and similar nastiness. It was in SuSE kernels for some time, IIRC. Signed-off-by: Pavel Machek Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 5ce47e59c9688d8480ae41100117d8188c191401 Author: Pavel Machek Date: Sat Jun 25 14:55:10 2005 -0700 [PATCH] acpi: fix video docs This fixes typos/formatting in video_extension.txt. Signed-off-by: Pavel Machek Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 343c3f642898cb2cb5c3e4f948e3e0a1bbc0351b Author: Pavel Machek Date: Sat Jun 25 14:55:09 2005 -0700 [PATCH] s-t-RAM: load gdt the right way Sleep code uses wrong version of lgdt, that does the wrong thing when gdt is beyond 16MB or so. Signed-off-by: Pavel Machek Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 648be3188135add682349e86d46d07cc11c8eb57 Author: Pavel Machek Date: Sat Jun 25 14:55:09 2005 -0700 [PATCH] swsusp: kill config_pm_disk CONFIG_PM_DISK is long gone, but it still managed to survived at few places. Signed-off-by: Pavel Machek Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit fc5fb2c609c6acef15a8b062063e9135fb08b4d2 Author: Pavel Machek Date: Sat Jun 25 14:55:07 2005 -0700 [PATCH] swsusp: documentation updates This updates documentation and fixes pointers in MAINTAINERS file. Signed-off-by: Pavel Machek Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 5a72e04df5470df0ec646029d31e5528167ab1a7 Author: Li Shaohua Date: Sat Jun 25 14:55:06 2005 -0700 [PATCH] suspend/resume SMP support Using CPU hotplug to support suspend/resume SMP. Both S3 and S4 use disable/enable_nonboot_cpus API. The S4 part is based on Pavel's original S4 SMP patch. Signed-off-by: Li Shaohua Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit fb69c3907ead36b9e9f41ea6f0d0e0ae10a38a47 Author: Nathan Lynch Date: Sat Jun 25 14:55:05 2005 -0700 [PATCH] generate hotplug events for cpu online We already do kobject_hotplug for cpu offline; this adds a kobject_hotplug call for the online case. This is being requested by developers of an application which wants to be notified about both kinds of events. Signed-off-by: Nathan Lynch Cc: Rusty Russell Cc: Greg KH Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit a9fa06c26f7b7914c8cdf4d309b74df3151cc227 Author: Shaohua Li Date: Sat Jun 25 14:55:05 2005 -0700 [PATCH] set cpu_state for CPU hotplug (ia64) Dead CPU notifies online CPU that it's dead using cpu_state variable. After switching to physical cpu hotplug, we forgot setting the variable. This patch fixes it. Currently only __cpu_die uses it. We changed other locations for consistency in case others use it. Signed-off-by: Shaohua Li Acked-by: Ashok Raj Cc: "Luck, Tony" Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit a02c4cb67e4ccd5ce7a13c7f04c2fedb06c35431 Author: Ashok Raj Date: Sat Jun 25 14:55:03 2005 -0700 [PATCH] x86_64: Provide ability to choose using shortcuts for IPI in flat mode. This patch provides an option to switch broadcast or use mask version for sending IPI's. If CONFIG_HOTPLUG_CPU is defined, we choose not to use broadcast shortcuts by default, otherwise we choose broadcast mode as default. both cases, one can change this via startup cmd line option, to choose no-broadcast mode. no_ipi_broadcast=1 This is provided on request from Andi Kleen, since he doesnt agree with replacing IPI shortcuts as a solution for CPU hotplug. Without removing broadcast IPI's, it would mean lots of new code for __cpu_up() path, which would acheive the same results. Signed-off-by: Ashok Raj Acked-by: Andi Kleen Acked-by: Zwane Mwaikambo Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 884d9e40b4089014f40c49e86ac6505842db2b53 Author: Ashok Raj Date: Sat Jun 25 14:55:02 2005 -0700 [PATCH] x86_64: Dont use broadcast shortcut to make it cpu hotplug safe. Broadcast IPI's provide un-expected behaviour for cpu hotplug. CPU's in offline state also end up receiving the IPI. Once the cpus become online they receive these stale IPI's which are bad and introduce unexpected behaviour. This is easily avoided by not sending a broadcast and addressing just the CPU's in online map. Doing prelim cycle counts it appears there is no big overhead and numbers seem around 0x3000-0x3900 on an average on x86 and x86_64 systems with CPUS running 3G, both for broadcast and mask version of the API's. The shortcuts are useful only for flat mode (where the perf shows no degradation), and in cluster mode, its unicast anyway. Its simpler to just not use broadcast anymore. Signed-off-by: Ashok Raj Acked-by: Andi Kleen Acked-by: Zwane Mwaikambo Signed-off-by: Shaohua Li Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit cb0cd8d49a9b81aff7a02e2ed826b5cfdfe9a172 Author: Ashok Raj Date: Sat Jun 25 14:55:01 2005 -0700 [PATCH] x86_64: CPU hotplug sibling map cleanup This patch is a minor cleanup to the cpu sibling/core map. It is required that this setup happens on a per-cpu bringup time. Signed-off-by: Ashok Raj Acked-by: Andi Kleen Acked-by: Zwane Mwaikambo Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 76e4f660d9f4c6d1bb473f72be2988c35eaca948 Author: Ashok Raj Date: Sat Jun 25 14:55:00 2005 -0700 [PATCH] x86_64: CPU hotplug support Experimental CPU hotplug patch for x86_64 ----------------------------------------- This supports logical CPU online and offline. - Test with maxcpus=1, and then kick other cpu's off to test if init code is all cleaned up. CONFIG_SCHED_SMT works as well. - idle threads are forked on demand from keventd threads for clean startup TBD: 1. Not tested on a real NUMA machine (tested with numa=fake=2) 2. Handle ACPI pieces for physical hotplug support. Signed-off-by: Ashok Raj Acked-by: Andi Kleen Acked-by: Zwane Mwaikambo Signed-off-by: Shaohua.li Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit e6982c671c560da4a0bc5c908cbcbec12bd5991d Author: Ashok Raj Date: Sat Jun 25 14:54:58 2005 -0700 [PATCH] x86_64: Change init sections for CPU hotplug support This patch adds __cpuinit and __cpuinitdata sections that need to exist past boot to support cpu hotplug. Caveat: This is done *only* for EM64T CPU Hotplug support, on request from Andi Kleen. Much of the generic hotplug code in kernel, and none of the other archs that support CPU hotplug today, i386, ia64, ppc64, s390 and parisc dont mark sections with __cpuinit, but only mark them as __devinit, and __devinitdata. If someone is motivated to change generic code, we need to make sure all existing hotplug code does not break, on other arch's that dont use __cpuinit, and __cpudevinit. Signed-off-by: Ashok Raj Acked-by: Andi Kleen Acked-by: Zwane Mwaikambo Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 52a119feaad92d44a0e97d01b22afbcbaf3fc079 Author: Ashok Raj Date: Sat Jun 25 14:54:57 2005 -0700 [PATCH] make smp_prepare_cpu to a weak function I really wish smp_prepare_cpu() would disappear eventually. In the interim this is ideally a weak function, so we dont end up changing several places to define this dummy in headers. Today since the dummy declaration is done only in drivers/base/cpu.c but the function is called in kernel/power/smp.c i get undefined reference in my cpu hotplug code for x86_64 under development. Signed-off-by: Ashok Raj Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit e1367daf3eed5cd619ee88c9907e1e6ddaa58406 Author: Li Shaohua Date: Sat Jun 25 14:54:56 2005 -0700 [PATCH] cpu state clean after hot remove Clean CPU states in order to reuse smp boot code for CPU hotplug. Signed-off-by: Li Shaohua Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 0bb3184df537002a742bafddf3f4fb482b7fe610 Author: Li Shaohua Date: Sat Jun 25 14:54:55 2005 -0700 [PATCH] init call cleanup Trival patch for CPU hotplug. In CPU identify part, only did cleaup for intel CPUs. Need do for other CPUs if they support S3 SMP. Signed-off-by: Li Shaohua Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit d720803a9365d360b3e5ea02033f0c11b5b1226a Author: Li Shaohua Date: Sat Jun 25 14:54:54 2005 -0700 [PATCH] sibling map initializing rework Make sibling map init per-cpu. Hotplug CPU may change the map at runtime. Signed-off-by: Li Shaohua Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 6fe940d6c300886de4ff1454d8ffd363172af433 Author: Li Shaohua Date: Sat Jun 25 14:54:53 2005 -0700 [PATCH] sep initializing rework Make SEP init per-cpu, so it is hotplug safe. Signed-off-by: Li Shaohua Signed-off-by: Ashok Raj Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 67664c8f7e74def5adf66298a1245d82af72db2c Author: Ashok Raj Date: Sat Jun 25 14:54:52 2005 -0700 [PATCH] i386: Dont use IPI broadcast when using cpu hotplug. This patch introduces a startup parameter no_broadcast. When we enable CONFIG_HOTPLUG_CPU, we dont want to use broadcast shortcut as it has ill effects on a offline cpu. If we issue broadcast, the IPI is also delivered to offline cpus, or partially up cpu causing stale IPI's to be handled, which is a problem and can cause undesirable effects. Introduces a new startup cmdline option no_ipi_broadcast, that can be switched at cmdline if necessary. Signed-off-by: Ashok Raj Acked-by: Shaohua Li Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit f370513640492641b4046bfd9a6e4714f6ae530d Author: Zwane Mwaikambo Date: Sat Jun 25 14:54:50 2005 -0700 [PATCH] i386 CPU hotplug (The i386 CPU hotplug patch provides infrastructure for some work which Pavel is doing as well as for ACPI S3 (suspend-to-RAM) work which Li Shaohua is doing) The following provides i386 architecture support for safely unregistering and registering processors during runtime, updated for the current -mm tree. In order to avoid dumping cpu hotplug code into kernel/irq/* i dropped the cpu_online check in do_IRQ() by modifying fixup_irqs(). The difference being that on cpu offline, fixup_irqs() is called before we clear the cpu from cpu_online_map and a long delay in order to ensure that we never have any queued external interrupts on the APICs. There are additional changes to s390 and ppc64 to account for this change. 1) Add CONFIG_HOTPLUG_CPU 2) disable local APIC timer on dead cpus. 3) Disable preempt around irq balancing to prevent CPUs going down. 4) Print irq stats for all possible cpus. 5) Debugging check for interrupts on offline cpus. 6) Hacky fixup_irqs() to redirect irqs when cpus go off/online. 7) play_dead() for offline cpus to spin inside. 8) Handle offline cpus set in flush_tlb_others(). 9) Grab lock earlier in smp_call_function() to prevent CPUs going down. 10) Implement __cpu_disable() and __cpu_die(). 11) Enable local interrupts in cpu_enable() after fixup_irqs() 12) Don't fiddle with NMI on dead cpu, but leave intact on other cpus. 13) Program IRQ affinity whilst cpu is still in cpu_online_map on offline. Signed-off-by: Zwane Mwaikambo Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit d92de65cab5980c16d4a1c326c1ef9a591892883 Author: Shaohua Li Date: Sat Jun 25 14:54:49 2005 -0700 [PATCH] variable overflow after hundreds round of hotplug CPU I'm doing the cpu hotplug stress test and found a variable ('ready') is overflow after several hundreds rounds of cpu hotplug. Here is a fix. Signed-off-by: Shaohua Li Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit a13db56624c2a9d6c0dae0a693b25b0e58de9ea3 Author: Shaohua Li Date: Sat Jun 25 14:54:48 2005 -0700 [PATCH] CPU hotplug: fix hpet sectioning With hpet enabled, cpu hotplug uses some routines marked with __init. Signed-off-by: Shaohua Li Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 1249c5138f573890eae0c01f13d627094edcd55c Author: Andrey Panin Date: Sat Jun 25 14:54:47 2005 -0700 [PATCH] dmi: spring cleanup Whitespace and CodingStyle cleanup. No functionality changes. Signed-off-by: Andrey Panin Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit b625883f24d018c989173aeb727f6de954fb154d Author: Andrey Panin Date: Sat Jun 25 14:54:46 2005 -0700 [PATCH] dmi: remove central blacklist Since last dmi quirk looks useless (it just prints 404 compliant url) we can finally remove central dmi blacklist. Signed-off-by: Andrey Panin Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 0f8133a8db81ff824a4abbe5bb0f15bf034d31c3 Author: Andrey Panin Date: Sat Jun 25 14:54:45 2005 -0700 [PATCH] dmi: move ACPI sleep quirk This patch moves ACPI sleep quirk out of dmi_scan.c Signed-off-by: Andrey Panin Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit aea00143a8db8c0b31dca85bff3c325444d93f0f Author: Andrey Panin Date: Sat Jun 25 14:54:42 2005 -0700 [PATCH] dmi: move ACPI boot quirk This patch moves ACPI boot quirks out of dmi_scan.c Signed-off-by: Andrey Panin Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 856509d5da74aefeabe92a8df039cc472f4f7c5f Author: Michael Ellerman Date: Sat Jun 25 14:54:42 2005 -0700 [PATCH] ppc64: Fix compile warnings in arch/ppc64/kernel/lparcfg.c Stephen's patch to remove LparData.h missed an include in lparcfg.c This fixes a few compile warnings. Signed-off-by: Michael Ellerman Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 2ec19faf617e61d56fb8da78ccb3ef895c00fae7 Author: Kumar Gala Date: Sat Jun 25 14:54:41 2005 -0700 [PATCH] ppc32: remove some unnecessary includes of bootmem.h Continue the Good Fight: Limit bootmem.h include creep. Signed-off-by: Jon Loeliger Signed-off-by: Kumar Gala Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 912eaa7198827df3cae7d0c9768fd08e84a09675 Author: Kumar Gala Date: Sat Jun 25 14:54:39 2005 -0700 [PATCH] I2C-MPC: Remove OCP device model support All consumers of the driver MPC10x, MPC52xx, MPC824x, MPC83xx, and MPC85xx are all using platform devices. We can get ride of the dead code to support using this driver with the old OCP based model Signed-off-by: Kumar Gala Cc: Greg KH Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 3d9077afea4927e488282da7189de9159db20c17 Author: Kumar Gala Date: Sat Jun 25 14:54:39 2005 -0700 [PATCH] ppc32: Remove FSL OCP support Support for the OCP device model on Freescale (FSL) PPC's is no longer used. All FSL PPC's that were using OCP have be converted to using the platform device model. Signed-off-by: Kumar Gala Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 33d9e9b56d5ccd7776fdfe3ecce4a2793dee6fd3 Author: Kumar Gala Date: Sat Jun 25 14:54:37 2005 -0700 [PATCH] ppc32: Add support for Freescale e200 (Book-E) core The e200 core is a Book-E core (similar to e500) that has a unified L1 cache and is not cache coherent on the bus. The e200 core also adds a separate exception level for debug exceptions. Part of this patch helps to cleanup a few cases that are true for all Freescale Book-E parts, not just e500. Signed-off-by: Kim Phillips Signed-off-by: Kumar Gala Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 62aa751d16399637325852bc0a1fcf13c2476dd7 Author: Kumar Gala Date: Sat Jun 25 14:54:36 2005 -0700 [PATCH] ppc32: Check return of ppc_sys_get_pdata before accessing pointer Ensure that the returned pointer from ppc_sys_get_pdata is not NULL before we start using it. This handles any cases where we have variants of processors on the same board with different functionality. Signed-off-by: Kumar Gala Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 09ffd94fb15d85fbf9eebb8180f50264b264d6fe Author: Lorenzo Hernández García-Hierro Date: Sat Jun 25 14:54:35 2005 -0700 [PATCH] selinux: add executable heap check This patch,based on sample code by Roland McGrath, adds an execheap permission check that controls the ability to make the heap executable so that this can be prevented in almost all cases (the X server is presently an exception, but this will hopefully be resolved in the future) so that even programs with execmem permission will need to have the anonymous memory mapped in order to make it executable. The only reason that we use a permission check for such restriction (vs. making it unconditional) is that the X module loader presently needs it; it could possibly be made unconditional in the future when X is changed. The policy patch for the execheap permission is available at: http://pearls.tuxedo-es.org/patches/selinux/policy-execheap.patch Signed-off-by: Lorenzo Hernandez Garcia-Hierro Acked-by: James Morris Acked-by: Stephen Smalley Cc: Ingo Molnar Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 6b9921976f0861e04828b3aff66696c1f3fd900d Author: Lorenzo Hernandez García-Hierro Date: Sat Jun 25 14:54:34 2005 -0700 [PATCH] selinux: add executable stack check This patch adds an execstack permission check that controls the ability to make the main process stack executable so that attempts to make the stack executable can still be prevented even if the process is allowed the existing execmem permission in order to e.g. perform runtime code generation. Note that this does not yet address thread stacks. Note also that unlike the execmem check, the execstack check is only applied on mprotect calls, not mmap calls, as the current security_file_mmap hook is not passed the necessary information presently. The original author of the code that makes the distinction of the stack region, is Ingo Molnar, who wrote it within his patch for /proc//maps markers. (http://marc.theaimsgroup.com/?l=linux-kernel&m=110719881508591&w=2) The patches also can be found at: http://pearls.tuxedo-es.org/patches/selinux/policy-execstack.patch http://pearls.tuxedo-es.org/patches/selinux/kernel-execstack.patch policy-execstack.patch is the patch that needs to be applied to the policy in order to support the execstack permission and exclude it from general_domain_access within macros/core_macros.te. kernel-execstack.patch adds such permission to the SELinux code within the kernel and adds the proper permission check to the selinux_file_mprotect() hook. Signed-off-by: Lorenzo Hernandez Garcia-Hierro Acked-by: James Morris Acked-by: Stephen Smalley Cc: Ingo Molnar Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 2d15cab85b85a56cc886037cab43cc292923ff22 Author: Hugh Dickins Date: Sat Jun 25 14:54:33 2005 -0700 [PATCH] mm: fix remap_pte_range BUG Out-of-tree user of remap_pfn_range hit kernel BUG at mm/memory.c:1112! It passes an unrounded size to remap_pfn_range, which was okay before 2.6.12, but misses remap_pte_range's new end condition. An audit of all the other ptwalks confirms that this is the only one so exposed. Signed-off-by: Hugh Dickins Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 1e8a81c5a37907bc082025d3468718116dca1eeb Author: Hifumi Hisashi Date: Sat Jun 25 14:54:32 2005 -0700 [PATCH] Fix the error handling in direct I/O Fix a bug on error handling in the direct I/O function. Currently, if a file is opened with the O_DIRECT|O_SYNC flag, the write() syscall cannot receive the EIO error after an I/O error (SCSI cable is disconnected etc.). Return values of other points that call generic_osync_inode() are treated appropriately. Signed-off-by: Hisashi Hifumi Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit b4819b593740a6d11db07b52e0fe35975b29a185 Author: Yoichi Yuasa Date: Sat Jun 25 14:54:31 2005 -0700 [PATCH] mips: add MIPS-specific support for flatmem/discontigmem 2.6.12-git6 doesn't boot on some MIPS machines. They need the support of flat memory and discontig memory. Signed-off-by: Yoichi Yuasa Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 7919a693bd735ed0aa93fc359ae09a588cfeb3bc Author: Russell King Date: Sat Jun 25 14:54:30 2005 -0700 [PATCH] Serial: remove unnecessary register_serial/unregister_serial A couple of drivers declare register_serial/unregister_serial prototypes but don't use them. FRV contains a commented out call to register_serial. Since these are deprecated, remove these unnecessary references. Signed-off-by: Russell King Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 821fe94727e72d63e1abd1bc0b044c72dfad9fb6 Author: Dave Jones Date: Sat Jun 25 14:54:29 2005 -0700 [PATCH] gcc4 compile fix for recent ia64 xpc changes Gcc4 doesn't like volatile casts as lvalues. Make the structure members volatile instead. Signed-off-by: Dave Jones Cc: "Luck, Tony" Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 7e0fa31dbf5968ce1e94f73c04a9402170432ecf Author: Dmitry Torokhov Date: Sat Jun 25 14:54:28 2005 -0700 [PATCH] I8K: add new BIOS signatures I8K: add BIOS signatures of a newer Dell laptops, also there can be more than one temperature sensor reported by BIOS. Lifted from driver 1.25 on Massimo Dal Zotto's site. Signed-off-by: Dmitry Torokhov Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 8378b92405dd606c6f3a0b1e303b67c8f8c9f743 Author: Dmitry Torokhov Date: Sat Jun 25 14:54:27 2005 -0700 [PATCH] I8K: initialization code cleanup; formatting I8K: use module_{init|exit} instead of old style #ifdef MODULE code, some formatting changes. Signed-off-by: Dmitry Torokhov Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 352f8f8bfbfb401c8af4c685beaafeb95c27fdd1 Author: Dmitry Torokhov Date: Sat Jun 25 14:54:26 2005 -0700 [PATCH] I8K: convert to seqfile I8K: Change proc code to use seq_file. Signed-off-by: Dmitry Torokhov Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit e70c9d5e61c6cb2272c866fc1303e62975006752 Author: Dmitry Torokhov Date: Sat Jun 25 14:54:25 2005 -0700 [PATCH] I8K: use standard DMI interface I8K: Change to use stock dmi infrastructure instead of homegrown parsing code. The driver now requires box's DMI data to match list of supported models so driver can be safely compiled-in by default without fear of it poking into random SMM BIOS code. DMI checks can be ignored with i8k.ignore_dmi option. Signed-off-by: Dmitry Torokhov Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit dec63ec32ea486ab915138e8790084c22a3f7bf6 Author: Dmitry Torokhov Date: Sat Jun 25 14:54:23 2005 -0700 [PATCH] I8K: pass through lindent I8K: pass through Lindent to change 4 spaces identation to TABs Signed-off-by: Dmitry Torokhov Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 3f5f7e2eeb539da95157d7fa8c94fb2f3284b9cc Author: Dmitry Torokhov Date: Sat Jun 25 14:54:22 2005 -0700 [PATCH] Toshiba driver cleanup Toshiba legacy driver cleanup: - use module_init/module_exit for initialization instead of using #ifdef MODULE and calling tosh_init manually from drivers/char/misc.c - do not explicitly initialize static variables - some whitespace and formatting cleanups Signed-off-by: Dmitry Torokhov Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 5cdb7b48d0d5963e40bb6621bfa7b2d5fddc4562 Author: Mauro Carvalho Chehab Date: Sat Jun 25 14:54:22 2005 -0700 [PATCH] cx88 build fix static declaration of cx88_pci_irqs follows non-static. Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit b659980014a7f45bfd6a1da9039a0498a28b7a63 Author: Uwe Bugla Date: Sat Jun 25 14:54:21 2005 -0700 [PATCH] dvb-bt8xx.txt fixes Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 4208ff04a2dea2f55111a6cdc7e21f6ec3aef29f Merge: 43df5eac00734436e2bc5a5c11488b1a7accecc7 8749af68216e1ebf6460992fce548f400ecf63a4 Author: Linus Torvalds Date: Sat Jun 25 16:03:08 2005 -0700 Merge master.kernel.org:/home/rmk/linux-2.6-arm commit 8749af68216e1ebf6460992fce548f400ecf63a4 Author: Russell King Date: Sat Jun 25 19:39:45 2005 +0100 [PATCH] ARM: Generic Dynamic Tick Timer support for ARM, take 4 This patch adds support for Dynamic Tick Timer for ARM. Dynamic Tick is also known as VST (Variable Scheduling Timeouts). Dynamic Tick has been in use in the OMAP tree since last October. The patch is not intrusive, and does not do anything unless CONFIG_NO_IDLE_HZ is defined. This patch has the following fixed based on comments from RMK: - Time is updated before calling interrupt handlers. - Added new interrupt flag SA_TIMER to avoid duplicate timer interrupts - Moved struct dyn_tick_timer to time.h until we at some point probably have an arch independent dyn-tick.h - Cleaned up testing for DYN_TICK_ENABLED in irq.c I've cleaned up this patch to fix some remaining issues: - Call the timer tick handler with irqs disabled, as it would be from a normal interrupt - if we have a dyn_tick, we better implement all methods. - generic timer_dyn_reprogram() call, to be called before sleeping - added command line option - "dyntick=" to allow boot-time control of this feature -- rmk Signed-off-by: Tony Lindgren Signed-off-by: Russell King commit 321ab6a5fab812658626aee6bce2617f8cfb3a55 Author: Lennert Buytenhek Date: Sat Jun 25 19:30:04 2005 +0100 [PATCH] ARM: 2752/1: disable ixp2000 PCI I/O software workaround on chips that don't need it Patch from Lennert Buytenhek The later ixp2000 models don't need the PCI I/O workaround that we currently perform. Add a config option to disable the workaround, and panic on boot if a kernel without the workaround is booted on a buggy chip. As only pre-production ixp2000s need the workaround, the default is for it not to be configured in. Signed-off-by: Lennert Buytenhek Signed-off-by: Deepak Saxena Signed-off-by: Russell King commit 3cd9e19ebc91593c9f076410d6f979be188f01a0 Author: Russell King Date: Sat Jun 25 19:29:34 2005 +0100 [PATCH] ARM: Fix discontigmem The merge of sparsemem broke ARM discontigmem. Fix it. Signed-off-by: Russell King commit 43df5eac00734436e2bc5a5c11488b1a7accecc7 Merge: 7be426c6e3a8ad7dcc8791589cea8af7aaafdf6f e55c57e0b51c68d78845549505057169c6c3cba6 Author: Linus Torvalds Date: Sat Jun 25 10:25:13 2005 -0700 Merge rsync://rsync.kernel.org/pub/scm/linux/kernel/git/davem/sparc-2.6 commit 7be426c6e3a8ad7dcc8791589cea8af7aaafdf6f Author: Linus Torvalds Date: Sat Jun 25 10:01:36 2005 -0700 ACPI: Make sure we call acpi_register_gsi() even for default PCI interrupt assignment That's the part that keeps track of the ELCR register, and we want to make sure that the PCI interrupts are properly marked level/low. commit 8144f56bd1e49015f94b8da99b24c4d04643b66d Author: Lennert Buytenhek Date: Sat Jun 25 16:58:22 2005 +0100 [PATCH] ARM: 2751/1: ixp2000 gpio cleanup broke ixdp2800 build Patch from Lennert Buytenhek The ixp2000 gpio cleanup broke the ixdp2800 build as it moved some gpio-related functions from arch/platform.h to arch/gpio.h and the ixdp2x00 support code used those functions but didn't include the latter header file. Signed-off-by: Lennert Buytenhek Signed-off-by: Russell King commit ea23d1ac7e380aefc00d691c7c9a3e747bc2531f Author: Lennert Buytenhek Date: Sat Jun 25 16:58:21 2005 +0100 [PATCH] ARM: 2750/1: add i2c platform device for enp2611 on-board i2c bus Patch from Lennert Buytenhek On the enp2611, GPIO 7 and 6 are connected to an on-board i2c bus that attaches to the SODIMM module slot (for SPD) and an LM84 temperature sensor. Add a platform device for this i2c bus. Signed-off-by: Lennert Buytenhek Signed-off-by: Russell King commit 456b6b863a6a1a80e369e42568817747a427b072 Author: Lennert Buytenhek Date: Sat Jun 25 16:58:21 2005 +0100 [PATCH] ARM: 2749/1: update ixp2000 defconfigs to 2.6.12-git6 Patch from Lennert Buytenhek Update the defconfigs for the ixp2000 platforms to 2.6.12-git6. Signed-off-by: Lennert Buytenhek Signed-off-by: Russell King commit 5f70eaa0d5768775a7492f3e3841fcca94bb0d13 Author: David S. Miller Date: Fri Jun 24 20:21:01 2005 -0700 [TG3]: Update driver version and reldate. Signed-off-by: David S. Miller commit bbe832c09233738c100145fd535b6b8fc97640f6 Author: Michael Chan Date: Fri Jun 24 20:20:04 2005 -0700 [TG3]: Refinements to new locking strategy. 1. Move tp->irq_sync = 0 to before the interrupt mailbox IO in tg3_enable_ints() so that the interrupt handler will always see irq_sync == 0 when interrupts are enabled. 2. Remove the tg3_enable_ints() call in tg3_reset_hw(). Interrupts are always enabled explicitly or through tg3_netif_start(). This is to prevent interrupts being enabled while poll is disabled. 3. Update trans_start with jiffies in tg3_netif_stop() to prevent false NETDEV WATCHDOG. 4. Pass in the proper irq_sync parameter to tg3_full_lock() depending on netif_running() in some of the ethtool set calls. Signed-off-by: Michael Chan Signed-off-by: David S. Miller commit f47c11eeccc8820010992eb32dbe7370a08f8bd3 Author: David S. Miller Date: Fri Jun 24 20:18:35 2005 -0700 [TG3]: Eliminate all hw IRQ handler spinlocks. Move all driver spinlocks to be taken at sw IRQ context only. This fixes the skb_copy() we were doing with hw IRQs disabled (which is illegal and triggers a BUG() with HIGHMEM enabled). It also simplifies the locking all over the driver tremendously. We accomplish this feat by creating a special sequence to synchronize with the hw IRQ handler using a binary state and synchronize_irq(). This idea is from Herbert Xu. Thanks to Michael Chan for helping to track down all of the race conditions in initial versions of this code. Signed-off-by: David S. Miller commit cd024c8baf9756759c57f0a19be639da8d3d4f8c Author: David S. Miller Date: Fri Jun 24 20:17:10 2005 -0700 [TG3]: Fix missing memory barriers and SD_STATUS_UPDATED bit clearing. There must be a rmb() between reading the status block tag and calling tg3_has_work(). This was missing in tg3_mis() and tg3_interrupt_tagged(). tg3_poll() got it right. Also, SD_STATUS_UPDATED must be cleared in the status block right before we call tg3_has_work(). Only tg3_poll() got this wrong. Based upon patches and commentary from Grant Grundler and Michael Chan. Signed-off-by: David S. Miller commit e55c57e0b51c68d78845549505057169c6c3cba6 Author: David S. Miller Date: Fri Jun 24 20:11:03 2005 -0700 [SPARC64]: Report any user access faults in termios accessors. Signed-off-by: David S. Miller commit 37616578539a47d9ace5e907ae73ea93a8cde740 Author: William Lee Irwin III Date: Fri Jun 24 20:06:18 2005 -0700 [SPARC]: sunzilog warning fixes From: William Lee Irwin III This small patch silences some iomem-related warnings in sunzilog.c by declaring mapped_addr as void __iomem * and inserting a cast in one case. Signed-off-by: Andrew Morton Signed-off-by: David S. Miller commit c54d7e03c3a21b38c587f671704c5a12aa3987fc Author: David S. Miller Date: Fri Jun 24 19:57:07 2005 -0700 [SUNRPC]: Fix {s,}size_t printf format strings in xprt.c Signed-off-by: David S. Miller commit a6484045fdd4154f8c8ee8c1dda4e32854c047e0 Author: David S. Miller Date: Fri Jun 24 18:07:51 2005 -0700 [TCP]: Do not present confusing congestion control options by default. Create TCP_CONG_ADVANCED option, akin to IP_ADVANCED_ROUTER, which when disabled will bypass all of the congestion control Kconfig options and leave the user with a safe default. That safe default is currently BIC-TCP with new Reno as a fallback. Signed-off-by: David S. Miller commit bb298ca3ce92574d57c4e49b329421425ea7d279 Author: David S. Miller Date: Fri Jun 24 17:50:53 2005 -0700 [IPV4]: Move FIB lookup algorithm choice under IP_ADVANCED_ROUTING Most users need not be concerned with a complex choice of what FIB lookup algorithm to use. So give them the safe default of IP_FIB_HASH if IP_ADVANCED_ROUTING is disabled. Signed-off-by: David S. Miller commit f7704347a74fceaf79c89f8b8dbdd0111013e4d6 Author: David S. Miller Date: Fri Jun 24 17:39:03 2005 -0700 [PKT_SCHED]: Make TEXTSEARCH* options only selected. Do not present these confusing new options to the user unless he picked some facility that makes use of it, such as NET_EMATCH_TEXT. Signed-off-by: David S. Miller commit b3e112bcc19abd8e9657dca34a87316786e096f3 Merge: f647a27417d2adc43d8c96d3d6f837422fbc076e 0a8b80c52f44a6e84206618a8a450ba13a5809dc Author: Linus Torvalds Date: Fri Jun 24 15:33:30 2005 -0700 Merge master.kernel.org:/home/rmk/linux-2.6-serial commit f647a27417d2adc43d8c96d3d6f837422fbc076e Merge: 75043cb5b386e5a01fd03b88f647dd992de02f97 2966207c7e5945947c4db3a48aa4fa819807c5be Author: Linus Torvalds Date: Fri Jun 24 15:32:01 2005 -0700 Merge master.kernel.org:/home/rmk/linux-2.6-arm commit 2966207c7e5945947c4db3a48aa4fa819807c5be Author: Lennert Buytenhek Date: Fri Jun 24 23:11:31 2005 +0100 [PATCH] ARM: 2748/1: ixp2000 implementation of the iomap api Patch from Lennert Buytenhek A number of ixp2000 models have a bug where the byte lanes for PCI I/O transactions are swapped. We already work around this in our versions of {in,out}{b,w,l}, but we also need to perform these workarounds in a custom implementation of the new iomap API, provided in this patch. Signed-off-by: Lennert Buytenhek Signed-off-by: Deepak Saxena Signed-off-by: Russell King commit 7533fca8e866ee7355ca53f1216e3fa4c718f991 Author: Lennert Buytenhek Date: Fri Jun 24 23:11:31 2005 +0100 [PATCH] ARM: 2747/1: allow platforms to provide their own iomap implementation Patch from Lennert Buytenhek This patch conditionalises the io{read,write}{8,16,32} defines and the prototypes for ioport_map/ioport_unmap in asm-arm/io.h on ioread8 not already having been defined. This is done so that platforms can provide their own implementation of the iomap API, ixp2000 for example needs this. Signed-off-by: Lennert Buytenhek Signed-off-by: Deepak Saxena Signed-off-by: Russell King commit 75043cb5b386e5a01fd03b88f647dd992de02f97 Author: Alexey Dobriyan Date: Fri Jun 24 20:52:52 2005 +0000 [PATCH] fs/qnx4/*: fix sparse warnings This patch fixes sparse warnings in the qnx4fs (and might even make qnx4fs work on big-endian boxes) Signed-off-by: Alexey Dobriyan Signed-off-by: Domen Puncer Signed-off-by: Anders Larsen Signed-off-by: Linus Torvalds commit 79042f087b5ac7bba819de03dc3e7462bab8aad9 Author: Catalin Marinas Date: Fri Jun 24 21:27:39 2005 +0100 [PATCH] ARM: 2698/1: Enable kernel r/w access to user pages on ARMv6 Patch from Catalin Marinas cpu_v6_set_pte() sets the kernel access rights to r/o for user pages (L_PTE_USER) when neither L_PTE_WRITE nor L_PTE_DIRTY are set. This causes a kernel data abort when writing the TLS value in the 0xffff0000 page. This patch enables the kernel r/w access. Signed-off-by: Catalin Marinas Signed-off-by: Russell King commit 5932ae3f5d610fd8d047ef4693bab9f084e5c56d Author: Deepak Saxena Date: Fri Jun 24 20:54:35 2005 +0100 [PATCH] ARM: 2745/1: Fix IXP4xx debug macros Patch from Deepak Saxena Current IXP4xx debug macros do not work in the small window between the MMU being enabled and the call to map_io() b/c the standard peripheral mapping is not properly setup for use with the low-level debug code. This patch creates a new section-aligned mapping for the UART specifically for use with the debug macros. Signed-off-by: Deepak Saxena Signed-off-by: Russell King commit c4982887cacf2122bc256e901598b58caf4a34be Author: Lennert Buytenhek Date: Fri Jun 24 20:54:35 2005 +0100 [PATCH] ARM: 2744/1: ixp2000 gpio irq support Patch from Lennert Buytenhek This patch cleans up the ixp2000 gpio irq code and implements the set_irq_type method for gpio irqs so that users can select for which events (falling edge/rising edge/level low/level high) on the gpio pin they want the corresponding gpio irq to be triggered. Signed-off-by: Lennert Buytenhek Signed-off-by: Deepak Saxena Signed-off-by: Russell King commit c6b56949de86694d837750a0a89c766b9871e81c Author: Lennert Buytenhek Date: Fri Jun 24 20:54:34 2005 +0100 [PATCH] ARM: 2740/1: ixp2000 align{b,w} need to parenthesize their arguments Patch from Lennert Buytenhek Two macros that are used on the ixp2000 to fixup byte lane enables for I/O space accesses, align{b,w}, use their arguments without parenthesizing them. Signed-off-by: Lennert Buytenhek Signed-off-by: Russell King commit 0a8b80c52f44a6e84206618a8a450ba13a5809dc Author: Russell King Date: Fri Jun 24 19:48:22 2005 +0100 [PATCH] Serial: Eliminate magic numbers Use the existing macros instead. Signed-off-by: Yoichi Yuasa Signed-off-by: Andrew Morton Signed-off-by: Russell King commit 793ae77469121227cd910c4b99f24be1de34bcca Author: Linus Torvalds Date: Fri Jun 24 10:39:17 2005 -0700 Add "memory" clobbers to the x86 inline asm of strncmp and friends They don't actually clobber memory, but gcc doesn't even know they _read_ memory, so can apparently re-order memory accesses around them. Which obviously does the wrong thing if the memory access happens to change the memory that the compare function is accessing.. Verified to fix a strange boot problem by Jens Axboe. commit 59a49e38711a146dc0bef4837c825b5422335460 Merge: 52c1da39534fb382c061de58b65f678ad74b59f5 f2d368fa3ef90f2159d9e542303901ebf68144dd Author: Linus Torvalds Date: Fri Jun 24 00:31:46 2005 -0700 Merge rsync://rsync.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6 commit 52c1da39534fb382c061de58b65f678ad74b59f5 Author: Adrian Bunk Date: Thu Jun 23 22:05:33 2005 -0700 [PATCH] make various thing static Another rollup of patches which give various symbols static scope Signed-off-by: Adrian Bunk Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit d763b7a4736e219528f77bf6bc75dd78b1d75c03 Author: Carsten Otte Date: Thu Jun 23 22:05:31 2005 -0700 [PATCH] xip: description Signed-off-by: Carsten Otte Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit fe77ba6f4f97690baa4c756611a07f3cc033f6ae Author: Carsten Otte Date: Thu Jun 23 22:05:29 2005 -0700 [PATCH] xip: madvice/fadvice: execute in place Make sys_madvice/fadvice return sane with xip. Signed-off-by: Carsten Otte Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit eb6fe0c388e43b02e261f0fdee60e42f6298d7f7 Author: Carsten Otte Date: Thu Jun 23 22:05:28 2005 -0700 [PATCH] xip: reduce code duplication This patch reworks filemap_xip.c with the goal to reduce code duplication from mm/filemap.c. It applies agains 2.6.12-rc6-mm1. Instead of implementing the aio functions, this one implements the synchronous read/write functions only. For readv and writev, the generic fallback is used. For aio, we rely on the application doing the fallback. Since our "synchronous" function does memcpy immediately anyway, there is no performance difference between using the fallbacks or implementing each operation. Signed-off-by: Carsten Otte Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 6d79125bba55ee82701f1c7d4ebbc1aa20ecbe4e Author: Carsten Otte Date: Thu Jun 23 22:05:26 2005 -0700 [PATCH] xip: ext2: execute in place These are the ext2 related parts. Ext2 now uses the xip_* file operations along with the get_xip_page aop when mounted with -o xip. Signed-off-by: Carsten Otte Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit ceffc078528befc008c6f2c2c4decda79eabd534 Author: Carsten Otte Date: Thu Jun 23 22:05:25 2005 -0700 [PATCH] xip: fs/mm: execute in place - generic_file* file operations do no longer have a xip/non-xip split - filemap_xip.c implements a new set of fops that require get_xip_page aop to work proper. all new fops are exported GPL-only (don't like to see whatever code use those except GPL modules) - __xip_unmap now uses page_check_address, which is no longer static in rmap.c, and defined in linux/rmap.h - mm/filemap.h is now much more clean, plainly having just Linus' inline funcs moved here from filemap.c - fix includes in filemap_xip to make it build cleanly on i386 Signed-off-by: Carsten Otte Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 420edbcc09008342c7b2665453f6b370739aadb0 Author: Carsten Otte Date: Thu Jun 23 22:05:23 2005 -0700 [PATCH] xip: bdev: execute in place This is the block device related part. The block device operation direct_access now has a struct block_device as first parameter. Signed-off-by: Carsten Otte Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 3d41088fa327782b14b5659dbcfff62ec704c23c Author: Martin Waitz Date: Thu Jun 23 22:05:21 2005 -0700 [PATCH] DocBook: update comments This patch updates some comments to match code changes. Signed-off-by: Martin Waitz Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 363412b4f70a2ba19c76a01da7580472399312d4 Author: Martin Waitz Date: Thu Jun 23 22:05:20 2005 -0700 [PATCH] DocBook: only use tabular style for long synopsis There was a complaint that function declarations are shown tabular in the documentation since switching to xmlto. This patch disables tabular mode when the function fits in one line. Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 597f6eea75ff3d089e6a627c07e1bf28923b8e7e Author: Jiri Slaby Date: Thu Jun 23 22:05:18 2005 -0700 [PATCH] docbook build fix Fix documentation build with `make O=' Cc: Martin Waitz Cc: Sam Ravnborg Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit c988d2b2845495373f666a381d354a7f80981d62 Author: Matt Domsch Date: Thu Jun 23 22:05:15 2005 -0700 [PATCH] modules: add version and srcversion to sysfs This patch adds version and srcversion files to /sys/module/${modulename} containing the version and srcversion fields of the module's modinfo section (if present). /sys/module/e1000 |-- srcversion `-- version This patch differs slightly from the version posted in January, as it now uses the new kstrdup() call in -mm. Why put this in sysfs? a) Tools like DKMS, which deal with changing out individual kernel modules without replacing the whole kernel, can behave smarter if they can tell the version of a given module. The autoinstaller feature, for example, which determines if your system has a "good" version of a driver (i.e. if the one provided by DKMS has a newer verson than that provided by the kernel package installed), and to automatically compile and install a newer version if DKMS has it but your kernel doesn't yet have that version. b) Because sysadmins manually, or with tools like DKMS, can switch out modules on the file system, you can't count on 'modinfo foo.ko', which looks at /lib/modules/${kernelver}/... actually matching what is loaded into the kernel already. Hence asking sysfs for this. c) as the unbind-driver-from-device work takes shape, it will be possible to rebind a driver that's built-in (no .ko to modinfo for the version) to a newly loaded module. sysfs will have the currently-built-in version info, for comparison. d) tech support scripts can then easily grab the version info for what's running presently - a question I get often. There has been renewed interest in this patch on linux-scsi by driver authors. As the idea originated from GregKH, I leave his Signed-off-by: intact, though the implementation is nearly completely new. Compiled and run on x86 and x86_64. From: Matthew Dobson build fix From: Thierry Vignaud build fix From: Matthew Dobson warning fix Signed-off-by: Greg Kroah-Hartman Signed-off-by: Matt Domsch Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit f5bec39639d386e1893dc440dd536761136ab36b Author: Mauro Carvalho Chehab Date: Thu Jun 23 22:05:13 2005 -0700 [PATCH] v4l: fix I2C detect after normal_i2c_range() This patch is necessary to correct I2C detect after normal_i2c_range removal in gregkh-i2c-i2c-address_range_removal.patch. Signed-off-by: Mauro Carvalho Chehab Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit ac19ecc6fa57b0ea320f01831175ff163f47d6a2 Author: Mauro Carvalho Chehab Date: Thu Jun 23 22:05:09 2005 -0700 [PATCH] v4l: update for SAA7134 cards This patch adds support for various SAA7134 cards and brings some fixes. Signed-off-by: Mauro Carvalho Chehab Signed-off-by: Fabrice Aeschbacher Signed-off-by: Hermann Pitton . Signed-off-by: Nickolay V Shmyrev Signed-off-by: Adrian Bunk Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 56fc08ca375491b965cb76fad65bfb98973e80d8 Author: Mauro Carvalho Chehab Date: Thu Jun 23 22:05:07 2005 -0700 [PATCH] v4l: update for tuner cards and some V4L chips Tuner improvements and additions. TEA5767 FM tuner added. Several small fixes. Signed-off-by: Mauro Carvalho Chehab Signed-off-by: Nickolay V Shmyrev Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit b45009b0288a96a3458f4f8e93cb776678d41875 Author: Mauro Carvalho Chehab Date: Thu Jun 23 22:05:03 2005 -0700 [PATCH] v4l: CX88 cards update This patch adds support for various CX88 cards and allows specifying card addresses. Signed-off-by: Mauro Carvalho Chehab Signed-off-by: Michael Krufky Signed-off-by: cybercide@f2s.com Signed-off-by: Catalin Climov Signed-off-by: Nickolay V Shmyrev Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 2d03e289ea4b13d78ce55f1ea0b0d45b8f1b34c3 Author: Mauro Carvalho Chehab Date: Thu Jun 23 22:04:58 2005 -0700 [PATCH] bttv update This patch synchronizes current bttv support on V4L with linux kernel and adds support to Adlink RTV24 card. It is asked that *every* patch to V4L stuff to be first submitted to video4linux-list@redhat.com. From: "J.A. Magallon" struct bttv defined after usage. Signed-off-by: Mauro Carvalho Chehab Signed-off-by: Peter Skipworth Signed-off-by: Nickolay V Shmyrev Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 3c1d0185db6a44b6304c404f4da1a1a98746ca46 Author: Michael Krufky Date: Thu Jun 23 22:04:56 2005 -0700 [PATCH] v4l: support tuner for Thomson DDT 7611 (ATSC/NTSC) Add support for tuner#60: Thomson DDT 7611 (ATSC/NTSC) Change tuner in card#28 (DViCO FusionHDTV3 Gold-T) from tuner=52 (Tuner Thomson DDT 7610) to tuner=60 (Tuner Thomson DDT 7611) Signed-off-by: Michael Krufky Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 80d34362f391840dcb10c0ec261f765871a586f7 Author: Michael Krufky Date: Thu Jun 23 22:04:55 2005 -0700 [PATCH] DViCO FusionHDTV3 Gold-T documentation fix Even though it says DViCO FusionHDTV3 Gold-Q on the box, Gold-T is printed on the card. This fix corrects the error in all places, and corrects the tuner name Thomson DDT 7611 (ATSC/NTSC) in the documentation. This applies against 2.6.12-rc5-mm2 after applying Manueal Capinha's patch "Add support for PixelView Ultra Pro in v4l" (because of the change from card=27 to card=28) Signed-off-by: Michael Krufky Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 239df2e2b0e1f4f69fdf76fb67e865824029e8ab Author: Manuel Capinha Date: Thu Jun 23 22:04:53 2005 -0700 [PATCH] v4l: add support for PixelView Ultra Pro The following patch adds support for the PixelView Ultra Pro video capture card in v4l. - It removes the remote control key definitions from ir-kbd-gpio.c and moves them to ir-common.c so that they can be shared between bt878 and cx88 based cards. - The patch also moves the FUSIONHDTV_3_GOLD_Q card from number 27 to 28 to regain compatibility with the V4L cvs. Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit d81ef559daf2a8afa9292035d58b00e7cb23dd1a Author: Mauro Carvalho Chehab Date: Thu Jun 23 22:04:51 2005 -0700 [PATCH] Video for Linux Documentation This patch synchronizes documentation from V4L CVS with current kernel release. Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 59dcd9480d93aebdf41e29c46e6a8b4ceeaca75d Author: Mauro Carvalho Chehab Date: Thu Jun 23 22:04:50 2005 -0700 [PATCH] v4l: PAL-M support fix for CX88 chipsets This patch fixes PAL-M chroma subcarrier frequency (FSC) to its correct value of 3.5756115 MHz and adjusts horizontal total samples for PAL-M, according with formula Line Draw Time / (4*FSC). Signed-off-by: Mauro Carvalho Chehab Cc: Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit f246a8172a9e403b78c34568f766990f1506a0ab Author: Michael Schimek Date: Thu Jun 23 22:04:47 2005 -0700 [PATCH] v4l: saa7134 ntsc vbi fix This patch fixes NTSC VBI capturing in the saa7134 driver. Signed-off-by: Michael H. Schimek Cc: Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 93b43f13b5bfeac09ef5743edf39eeeee3f4eeae Author: Peter Skipworth Date: Thu Jun 23 22:04:45 2005 -0700 [PATCH] BTTV support for Adlink RTV24 capture card The bttv module currently lacks support for the Adlink RTV24 capture card. The following patch adds support for the Adlink RTV24 video capture card to the bttv module. Cc: Gerd Knorr Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 097b750e6c0209b4b951996826ca0bd6707e357a Author: Michael Krufky Date: Thu Jun 23 22:04:43 2005 -0700 [PATCH] Fix for cx88-cards.c for DVICO-FusionHDTV 3 GOLD Q This patch allows full analog functionality for the DViCO FusionHDTV3 Gold-Q, 18ac:d820 which has a Conexant cx23882, Thompson7611, and LG 3202. It does NOT yet support digital decoding or digital audio without the internal analog audio jack connected to the sound board, but it works perfectly in analog mode. Signed-off-by: Michael Krufky Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit d6988588e13616587aa879c2e0bd7cd811705e5d Author: Adrian Bunk Date: Thu Jun 23 22:04:41 2005 -0700 [PATCH] VIDEO_CX88_DVB must select DVB_CX22702 VIDEO_CX88_DVB must select DVB_CX22702 (due to its cx22702_attach usage). This patch fixes kernel Bugzilla #4594 (http://bugzilla.kernel.org/show_bug.cgi?id=4594). Signed-off-by: Adrian Bunk Acked-by: Johannes Stezenbach Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit c9c12b790e1dad2e6c2a9b2e62e97297aa8dd93a Author: Alexey Dobriyan Date: Thu Jun 23 22:04:37 2005 -0700 [PATCH] saa7134: mark little endian ptr > - *ptr = sg_dma_address(list) - list->offset; > + *ptr = cpu_to_le32(sg_dma_address(list) - list->offset); Clearly mark pointers to little-endian things. Signed-off-by: Alexey Dobriyan Acked-by: Gerd Knorr Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit a20758fa3238134ec9ac0a7e02446d9861dfe943 Author: Gerd Knorr Date: Thu Jun 23 22:04:34 2005 -0700 [PATCH] v4l: saa7134 byteorder fix Fix byteorder bug in the saa7134 driver. With that ObviouslyCorrect[tm] patch applied the driver reportly works on powerpc. Signed-off-by: Gerd Knorr Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 0964a3d3f1aa96468091924f6b0c391a46dc6d0b Author: NeilBrown Date: Thu Jun 23 22:04:32 2005 -0700 [PATCH] knfsd: nfsd4 reboot dirname fix Set the recovery directory via /proc/fs/nfsd/nfs4recoverydir. It may be changed any time, but is used only on startup. Signed-off-by: Andy Adamson Signed-off-by: J. Bruce Fields Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit c7b9a45927e74c81d6562153f7fde9d32da00159 Author: NeilBrown Date: Thu Jun 23 22:04:30 2005 -0700 [PATCH] knfsd: nfsd4: reboot recovery This patch adds the code to create and remove client subdirectories from the recovery directory, as described in the previous patch comment. Signed-off-by: Andy Adamson Signed-off-by: J. Bruce Fields Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 190e4fbf96037e5e526ba3210f2bcc2a3b6fe964 Author: NeilBrown Date: Thu Jun 23 22:04:25 2005 -0700 [PATCH] knfsd: nfsd4: initialize recovery directory NFSv4 clients are required to know what state they have on the server so that they can reclaim it on server reboot. However, it is possible for pathalogical combinations of server reboots and network partitions to leave a client in a state where it cannot know whether it has lost its state on the server. For this reason, rfc3530 requires that we store some information about clients to stable storage. So we maintain a directory /var/lib/nfs/v4recovery with a subdirectory for each client with active state. We leave open the possibility of including files underneath each such subdirectory with information about the client, but for now the subdirectories are empty. We create a client subdirectory whenever a client makes its first non-reclaim open_confirm. We remove a client subdirectory whenever either a) its lease expires, or b) the grace period ends without it reclaiming anything. When handling reclaims, we allow the reclaim if and only if the client doing the reclaim has a subdirectory. This patch adds just the code to scan the recovery directory on nfsd startup. Signed-off-by: Andy Adamson Signed-off-by: J. Bruce Fields Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit cb36d6345752fa24827044c68e15f6708a40d9f6 Author: NeilBrown Date: Thu Jun 23 22:04:23 2005 -0700 [PATCH] knfsd: nfsd4: remove cb_parsed The cb_parsed field is only used by probe_callback, to determine whether the callback information has been filled in by setclientid. But there is no way that probe_callback() can be called without that having already happened, so that check is superfluous, as is cb_parsed. Signed-off-by: J. Bruce Fields Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 3e9e3dbe0fe36c824ce2c5d7b05997c87a64bbdc Author: NeilBrown Date: Thu Jun 23 22:04:20 2005 -0700 [PATCH] knfsd: nfsd4: allow multiple lockowners >From the language of rfc3530 section 8.1.3 (e.g., the suggestion that a "process id" might be a reasonable lockowner value) it's conceivable that a client might want to use the same lockowner string on multiple files, so we may as well allow that. We expect each use of open_to_lockowner to create a distinct seqid stream, though. For now we're also allowing multiple uses of open_to_lockowner with the same open, though it seems unlikely clients would actually do that. Also add a comment reminding myself of some very non-scalable data structures. Signed-off-by: J. Bruce Fields Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit ea1da636e956ad1591a74904f23d98bbc26a644b Author: NeilBrown Date: Thu Jun 23 22:04:17 2005 -0700 [PATCH] knfsd: nfsd4: rename state list fields Trivial renaming patch: I can never remember, while looking at various lists relating the nfsd4 state structures, which are the "heads" and which are items on other lists, or which structures are actually on the various lists. The following convention helps me: given structures foo and bar, with foo containing the head of a list of bars, use "bars" for the name of the head of the list contained in the struct foo, and use "per_foo" for the entries in the struct bars. Already done for struct nfs4_file; go ahead and do it for the other nfsd4 state structures. Signed-off-by: J. Bruce Fields Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 21ab45a480ec7705d177e959ebf452d62340c004 Author: NeilBrown Date: Thu Jun 23 22:04:14 2005 -0700 [PATCH] knfsd: nfsd4: miscellaneous setclientid_confirm cleanup Minor cleanup, remove some unnecessary printk's. Signed-off-by: J. Bruce Fields Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 7c79f7377cd4f2a50d51475f4c7966a3e60596a7 Author: NeilBrown Date: Thu Jun 23 22:04:13 2005 -0700 [PATCH] knfsd: nfsd4: setclientid_confirm comments Trivial whitespace and comment fixes. Signed-off-by: J. Bruce Fields Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 08e8987c37cd04d2df211c1e019d8f165d44266e Author: NeilBrown Date: Thu Jun 23 22:04:11 2005 -0700 [PATCH] knfsd: nfsd4: setclientid_confirm gotoectomy Change from "goto" to "else if" format in setclientid_confirm. From: Fred Isaman Signed-off-by: J. Bruce Fields Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 22de4d837439071a0bec897485d3911383b6ffad Author: NeilBrown Date: Thu Jun 23 22:04:09 2005 -0700 [PATCH] knfsd: nfsd4: fix setclientid_confirm error return NFS4_INVAL is not a valid error for setclientid_confirm, and INUSE is the more logical error here anyway. From: Fred Isaman Signed-off-by: J. Bruce Fields Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 1a69c179a28a9bb9f4d086927b192d5cffe88e50 Author: NeilBrown Date: Thu Jun 23 22:04:08 2005 -0700 [PATCH] knfsd: nfsd4: fix setclientid_confirm cases Setclientid_confirm code confused states 1 and 3 (numbering from the IMPLEMENTATION section of rfc3530, section 14.2.33). Fix this. State 1 allows the client to change the callback channel on the fly. We don't implement this currently, so just turn off the callback channel in this case. From: Fred Isaman Signed-off-by: J. Bruce Fields Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 31f4a6c127f619886bf97f643e546f7788248f3f Author: NeilBrown Date: Thu Jun 23 22:04:06 2005 -0700 [PATCH] knfsd: nfsd4: fix uncomfirmed list Setclientid code assumes there is only one match in unconfirmed list. Make sure that assumption holds. From: Fred Isaman Signed-off-by: J. Bruce Fields Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit fd39ca9a808c6026989bc2188868a0574eb37108 Author: NeilBrown Date: Thu Jun 23 22:04:03 2005 -0700 [PATCH] knfsd: nfsd4: make needlessly global code static This patch contains the following possible cleanups: - make needlessly global code static Signed-off-by: Adrian Bunk Signed-off-by: J. Bruce Fields Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit a76b4319ca85b5e3a8098470c623a272d40271cd Author: NeilBrown Date: Thu Jun 23 22:04:01 2005 -0700 [PATCH] knfsd: nfsd4: grace period end For the purposes of reboot recovery, we want to do some work during the transition period at the end of the grace period. Some of that work must be guaranteed to have a certain relationship with the end of the grace period, so we want to control the transition there. Our approach is to modify the in_grace() checks to consult a global variable instead of checking the time directly, to schedule the first run of the laundromat thread at the end of the grace period, and to set the global end-of-grace-period there. Signed-off-by: J. Bruce Fields Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 28ce6054f1de89834e5e9522f9e451cd88a35f85 Author: NeilBrown Date: Thu Jun 23 22:03:56 2005 -0700 [PATCH] knfsd: nfsd4: add find_{un}conf_by_str functions to simplify setclientid Minor setclientid cleanup Signed-off-by: J. Bruce Fields Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit a55370a3c0106106a975c5a09cee800611d0cf50 Author: NeilBrown Date: Thu Jun 23 22:03:52 2005 -0700 [PATCH] knfsd: nfsd4: reboot hash For the purposes of reboot recovery we keep a directory with subdirectories each having a name that is the ascii hex representation of the md5 sum of a client identifier for an active client. This adds the code to calculate that name. We also use it for the purposes of comparing clients, so if someone ever manages to find two client names that are md5 collisions, then we'll return clid_inuse to the second. Signed-off-by: Andy Adamson Signed-off-by: J. Bruce Fields Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 7dea9d280c96f90382ec5d5709433e66a0993ec9 Author: NeilBrown Date: Thu Jun 23 22:03:42 2005 -0700 [PATCH] knfsd: nfsd4: setclientid simplification We can be a little more concise here. Signed-off-by: J. Bruce Fields Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit bd0b1e954e3ba3e5d2cab941458cf98206471bd2 Author: NeilBrown Date: Thu Jun 23 22:03:35 2005 -0700 [PATCH] knfsd: nfsd4: idmap initialization Adopt standard kernel style by defining a no-op function instead of putting ifdef's in the code where the function is called. Signed-off-by: J. Bruce Fields Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 707d4ab7b3aa6d1f7a7d2cd123fb83ba9a528205 Author: NeilBrown Date: Thu Jun 23 22:03:32 2005 -0700 [PATCH] knfsd: nfsd4: remove nfs4_reclaim_init nfs4_reclaim_init is no longer performing any useful function. Signed-off-by: J. Bruce Fields Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit ac4d8ff2a57179de3ef7834c6ab3fac430b0a05d Author: NeilBrown Date: Thu Jun 23 22:03:30 2005 -0700 [PATCH] knfsd: nfsd4: clean up state initialization Separate out stuff that needs initialization on startup from stuff that only needs initialization on module init from static data. Signed-off-by: J. Bruce Fields Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 76a3550ec50ed86885a10a767ebaebb7c9104721 Author: NeilBrown Date: Thu Jun 23 22:03:26 2005 -0700 [PATCH] knfsd: nfsd4: rename nfs4_state_init Somewhat gratuitous rename to simplify following patch. Signed-off-by: J. Bruce Fields Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 7b190fecfa33d72bcf74c9473134c2ad14ae9545 Author: NeilBrown Date: Thu Jun 23 22:03:23 2005 -0700 [PATCH] knfsd: nfsd4: delegation recovery Allow recovery of delegations after reboot. Signed-off-by: J. Bruce Fields Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit d99a05adf8490cc171b7709554936b8f3ac9e362 Author: NeilBrown Date: Thu Jun 23 22:03:21 2005 -0700 [PATCH] knfsd: nfsd4: simplify lease changing The only way the protocol gives to change the lease time on the fly is to simulate a reboot. We don't have that completely right in the current code; among other things, we should probably put lockd in grace too while we do this. For now, let's just keep this simple, and wait till the next time nfsd starts to register any changes in lease time. If the administrator really wants to change the lease time *now*, they can go ahead and bring nfsd down and then back up again after changing the lease time. Also remove the "if (reclaim_str_hashtbl_size == 0)" case, a shortcut which skips the grace period if we know of no clients in need of recovery. This isn't going to work well with nlm. Signed-off-by: J. Bruce Fields Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 58da282b733cff4caef805c6555c7a3b90772946 Author: NeilBrown Date: Thu Jun 23 22:03:19 2005 -0700 [PATCH] knfsd: nfsd4: create separate laundromat workqueue We're running the laundromat work on the default kevent worker thread. But the laundromat takes the nfsv4 state semaphore, which is used for way too much stuff, and the potential for deadlocks is high. Better to have this on a separate workqueue. Signed-off-by: J. Bruce Fields Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit dfc8356570b6fcb4035c7d916ade5bbbe6c3b50a Author: NeilBrown Date: Thu Jun 23 22:03:16 2005 -0700 [PATCH] knfsd: nfsd4: nfs4_check_open_reclaim cleanup Minor cleanup. Signed-off-by: J. Bruce Fields Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 5ba266d6323e957588712f6a7d31252cd6b797bb Author: NeilBrown Date: Thu Jun 23 22:03:15 2005 -0700 [PATCH] knfsd: nfsd4: fix probe_callback rpc_create_client was modified recently to do its own (synchronous) NULL ping of the server. We'd rather do that on our own, asynchronously, so that we don't have to block the nfsd thread doing the probe, and so that setclientid handling (hence, client mounts) can proceed normally whether the callback is succesful or not. (We can still function fine without the callback channel--we just won't be able to give out delegations till it's verified to work.) Signed-off-by: J. Bruce Fields Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 7e06b7f9e9537cb826f3cff95816fc4384b67806 Author: NeilBrown Date: Thu Jun 23 22:03:13 2005 -0700 [PATCH] knfsd: nfs4: hold filp while reading or writing We're trying to read and write from a struct file that we may not hold a reference to any more (since a close could be processed as soon as we drop the state lock). Signed-off-by: J. Bruce Fields Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 46be925fa6f4796e732e16a020fa0ef9d48ea7c8 Author: NeilBrown Date: Thu Jun 23 22:03:11 2005 -0700 [PATCH] knfsd: lockd: flush signals on shutdown Silence another annoying "failed to contact portmap (errno -512)" on shutdown. Signed-off-by: J. Bruce Fields Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 13cd21845d6a9729ca95e36ae6e8c669623fbfd4 Author: NeilBrown Date: Thu Jun 23 22:03:10 2005 -0700 [PATCH] nfsd4: reference count struct nfs4_file Add a struct kref to each nfs4_file and take a reference to it from each stateid and delegation that refers to it. The atomicity guarantees are overkill given that all this stuff is done under the single nfsd4 state lock, but a) we'd like finer-grained locking some day, and b) this simplifies the cleanup of the structures a bit, something that has previously been a bit complicated and bug-prone. Signed-off-by: J. Bruce Fields Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 8beefa249371f55432394ac96864c83b0b309c28 Author: NeilBrown Date: Thu Jun 23 22:03:08 2005 -0700 [PATCH] nfsd4: rename nfs4_file fields Trivial renaming patch: I can never remember, while looking at various lists relating the nfsd4 state structures, which are the "heads" and which are items on other lists, or which structures are actually on the various lists. The following convention helps me: given structures foo and bar, with foo containing the head of a list of bars, use "bars" for the name of the head of the list contained in the struct foo, and use "per_foo" for the entries in the struct bars. Go ahead and do this for struct nfs4_file. Signed-off-by: J. Bruce Fields Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 6fa305ded4cc859deb4727ad9b25df0bbc064e99 Author: NeilBrown Date: Thu Jun 23 22:03:06 2005 -0700 [PATCH] nfsd4: remove debugging counters These remaining debugging counters haven't proved that useful. Signed-off-by: J. Bruce Fields Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 5b2d21c1965859acc881dd862b6ebbfae67cdc14 Author: NeilBrown Date: Thu Jun 23 22:03:04 2005 -0700 [PATCH] nfsd4: slabify delegations Allocate delegations from a slab cache. Signed-off-by: J. Bruce Fields Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 5ac049ac66416bbe84923f7c2384f23f6ee4aa88 Author: NeilBrown Date: Thu Jun 23 22:03:03 2005 -0700 [PATCH] nfsd4: slabify stateids Allocate stateid's from a slab cache. Signed-off-by: J. Bruce Fields Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit e60d4398a7c20fbe9c4a6cc39d7188ef9f65d2f1 Author: NeilBrown Date: Thu Jun 23 22:03:01 2005 -0700 [PATCH] nfsd4: slabify nfs4_files The structures the server uses to keep track of various pieces of nfsv4 state (open files, outstanding delegations, etc.) are likely to be allocated and deallocated frequently and seem reasonable candidates for slab caches. While we're at it, the slab code keeps statistics that help catch leaks and such, so we may as well take this chance to eliminate some debugging counters that we've been keeping ourselves. Start with the struct nfs4_file. Signed-off-by: J. Bruce Fields Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit c815afc73eeef089922449857ca4ed4d2e8950cb Author: NeilBrown Date: Thu Jun 23 22:03:00 2005 -0700 [PATCH] nfsd4: block metadata ops during grace period We currently return err_grace if a user attempts a non-reclaim open during the grace period. But we also need to prevent renames and removes, at least, to ensure clients have the chance to recover state on files before they are moved or deleted. Of course, local users could also do renames and removes during the lease period, and there's not much we can do about that. This at least will help with remote users. Signed-off-by: J. Bruce Fields Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 496400014f22c4dbdbc1e89249a2feba46939708 Author: NeilBrown Date: Thu Jun 23 22:02:58 2005 -0700 [PATCH] nfsd4: fix fh_expire_type We're returning NFS4_FH_NOEXPIRE_WITH_OPEN | NFS4_FH_VOL_RENAME for the fh_expire_type attribute. This is incorrect: 1. The spec actually only allows NOEXPIRE_WITH_OPEN when VOLATILE_ANY is also set. 2. Filehandles for open files can expire, if the file is removed and there is a reboot. 3. Filehandles are only volatile on rename in the nosubtree check case. Unfortunately, there's no way to indicate that we only expire on remove. So our only choice is FH4_VOLATILE_ANY. Although it's redundant, we also set FH4_VOL_RENAME in the subtree check case, since subtreecheck does actually cause problems in practice and it seems possibly useful to give clients some way to distinguish that case. Fix a mispelled #define while we're at it. Signed-off-by: J. Bruce Fields Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 0dd3c19212961453817f219cd6200981c38564bc Author: NeilBrown Date: Thu Jun 23 22:02:56 2005 -0700 [PATCH] nfsd4: support CLAIM_DELEGATE_CUR Add OPEN claim type NFS4_OPEN_CLAIM_DELEGATE_CUR to nfsd4_open(). A delegation stateid and a name are provided. OPEN with O_CREAT is not legal with this claim type; otherwise, use the NFS4_OPEN_CLAIM_NULL code path to lookup the filename to be opened. Signed-off-by: Andy Adamson Signed-off-by: J. Bruce Fields Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit c44c5eeb2c022ddac98a8543c08dc8ff820561dc Author: NeilBrown Date: Thu Jun 23 22:02:54 2005 -0700 [PATCH] nfsd4: add open state code for CLAIM_DELEGATE_CUR State logic for OPEN with claim type CLAIM_DELEGATE_CUR, which the NFSv4 client uses to report local OPENs on a delegated file back to the NFSv4 server. nfs4_check_deleg() performs input delegation stateid lookup and sanity check. Signed-off-by: Andy Adamson Signed-off-by: J. Bruce Fields Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 567d98292e81033182e3da4c33b41ada9c113447 Author: NeilBrown Date: Thu Jun 23 22:02:53 2005 -0700 [PATCH] nfsd4: don't reopen for delegated client We don't really need to be doing a separate open for every stateid. And in the case of an open from a client that already has a delegation on a file, it unnecessarily results in a delegation recall. Signed-off-by: J. Bruce Fields Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 4a6e43e6d4e43723699879f421d321e39eab5e41 Author: NeilBrown Date: Thu Jun 23 22:02:50 2005 -0700 [PATCH] nfsd4: nfs4_check_delegmode Additional minor code reshuffling to prepare for claim_deleg_cur support. Signed-off-by: Andy Adamson Signed-off-by: J. Bruce Fields Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 52f4fb43063c182f3ef7e257ab336a8be8066bb0 Author: NeilBrown Date: Thu Jun 23 22:02:49 2005 -0700 [PATCH] nfsd4: find_delegation_file() Factor out a bit of common code that will be useful elsewhere. Signed-off-by: J. Bruce Fields Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 0c0a400d1debb172c596b24ab82efab4975990a9 Author: John Levon Date: Thu Jun 23 22:02:47 2005 -0700 [PATCH] oprofile: report anonymous region samples The below patch passes samples from anonymous regions to userspace instead of just dropping them. This provides the support needed for reporting anonymous-region code samples (today: basic accumulated results; later: Java and other dynamically compiled code). As this changes the format, an upgrade to the just-released 0.9 release of the userspace tools is required. This patch is based upon an earlier one by Will Cohen Signed-off-by: John Levon Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 391cd727eac2e10be7685efd739a3ea9de87393c Author: Mauro Carvalho Chehab Date: Thu Jun 23 22:02:43 2005 -0700 [PATCH] tuner-core.c improvments and Ymec Tvision TVF8533MF support tuner-core.c, tuner.h: - tuner-core changed to support multiple I2C devices used on some adapters; - Kconfig now has an option (CONFIG_TUNER_MULTI_I2C) to enable this new behavor; - By default, even enabling CONFIG_TUNER_MULTI_I2C, tuner-core emulates the old behavor, using first I2C device for both FM and TV; - There is a new i2c command (TUNER_SET_ADDR) to allow tuner clients to select I2C address for FM or TV tuner; - Tuner I2C dettach now generates a warning on syslog if failed. tuner-simple.c: - TVision TVF-8531MF and TVF-5533 MF tuner included. It uses, by default, I2C on 0xC2 address for TV and on 0xC0 for Radio. Both TV and FM Radio mode are working. Signed-off-by: Mauro Carvalho Chehab Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 55f51efdb696ff6e9d2056377d05268a97f3d4e4 Author: Johannes Stezenbach Date: Thu Jun 23 22:02:41 2005 -0700 [PATCH] dvb: flexcop: add BCM3510 ATSC frontend support for Air2PC card Added support for the Broadcom BCM3510 ATSC (8VSB/16VSB & ITU J83 AnnexB FEC QAM64/256) demodulator used in the first generation of Air2PC ATSC PCI-cards/USB-boxes made by B2C2. Signed-off-by: Patrick Boettcher Signed-off-by: Johannes Stezenbach Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit cc89c229d9d7ec63cd33e960c20e75b77bc987d0 Author: Johannes Stezenbach Date: Thu Jun 23 22:02:39 2005 -0700 [PATCH] dvb: dvb_frontend: use time_after() Use time_after() macro. Signed-off-by: Marcelo Feitoza Parisi Signed-off-by: Domen Puncer Signed-off-by: Johannes Stezenbach Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit f756ead1366092b73467fe3b1fb23f61034e94f9 Author: Johannes Stezenbach Date: Thu Jun 23 22:02:38 2005 -0700 [PATCH] dvb-usb: fix init error checking Fix error checking during initialization. Thanks to Gerolf Wendland for discovering. Signed-off-by: Patrick Boettcher Signed-off-by: Johannes Stezenbach Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 776338e121b9db3156bfb4e21622a0219bbab9d4 Author: Johannes Stezenbach Date: Thu Jun 23 22:02:35 2005 -0700 [PATCH] dvb: Add generalized dvb-usb driver Add generalized dvb-usb driver which supports a wide variety of devices. Signed-off-by: Patrick Boettcher Signed-off-by: Johannes Stezenbach Signed-off-by: Randy Dunlap Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit b6a235b1186dda0800c8bedc2526830a4a36b44e Author: Johannes Stezenbach Date: Thu Jun 23 22:02:29 2005 -0700 [PATCH] dvb: drop obsolete dibusb driver Remove the dibusb driver which has been obsoleted by the generalized dvb-usb driver. Signed-off-by: Patrick Boettcher Signed-off-by: Johannes Stezenbach Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 3e05d2b8d3dd34b0237f489e991ed081cb0bf007 Author: Yani Ioannou Date: Thu Jun 23 22:02:28 2005 -0700 [PATCH] tpm: device attribute fixes This patch updates all the device attribute callbacks that weren't updated with the new parameter, I guess because they weren't in Greg's tree (including drivers/pcmcia/ds.c). Without the patch these callbacks are probably broken (and generate a warning along the lines of "assignment from incompatible pointer type"). Please see http://lkml.org/lkml/2005/5/19/40 for the scripts I used to update the attributes automatically. Signed-off-by: Yani Ioannou Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit f52bdbe9fcf2453d402376e22de1eca6dfc96890 Author: Andrew Morton Date: Thu Jun 23 22:02:26 2005 -0700 [PATCH] i2o build fix LD .tmp_vmlinux1 drivers/built-in.o: In function `i2o_cfg_parms': config-osm.c:(.text+0x12764a): undefined reference to `i2o_parm_issue' Cc: Markus Lidel Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 718c31831aa134a97f6fef215c208cea80a8b480 Author: Markus Lidel Date: Thu Jun 23 22:02:24 2005 -0700 [PATCH] I2O: Limit max sector workaround for Promise controllers Set max sectors to 256 for Promise controllers. Signed-off-by: Markus Lidel Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit f33213ecf49c98da4e85121b592c3bea8057c2e6 Author: Markus Lidel Date: Thu Jun 23 22:02:23 2005 -0700 [PATCH] I2O: Lindent run and replacement of printk through osm printing functions Lindent run and replaced printk() through the corresponding osm_*() function Signed-off-by: Markus Lidel Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 9e87545f06930c1d294423a8091d1077e7444a47 Author: Markus Lidel Date: Thu Jun 23 22:02:21 2005 -0700 [PATCH] I2O: second code cleanup of sparse warnings and unneeded syncronization Changes: - Added header "core.h" for i2o_core.ko internal definitions - More sparse fixes - Changed display of TID's in sysfs attributes from XXX to 0xXXX - Use the right functions for accessing I/O and normal memory - Removed error handling of SCSI device errors and let the SCSI layer take care of it - Added new device / removed device handling to SCSI-OSM - Make status access volatile - Cleaned up activation of I2O controller - Removed unnecessary wmb() and rmb() calls - Use own struct i2o_io for I/O memory instead of struct i2o_dma Signed-off-by: Markus Lidel Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit b2aaee33fbb354a2f08121aa1c1be55841102761 Author: Markus Lidel Date: Thu Jun 23 22:02:19 2005 -0700 [PATCH] I2O: Adaptec specific SG_IO access, firmware access through sysfs and 2400A workaround Changes: - Provide SG_IO access to BLOCK and EXECUTIVE class on Adaptec controllers - Use PRIVATE messages in SCSI-OSM because on some controllers normal SCSI class commands like READ or READ CAPACITY cause errors - Use new DMA and SG list creation function - Added workaround to limit sectors per request for Adaptec 2400A controllers Signed-off-by: Markus Lidel Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit f10378fff658f61307496e0ae00095041725cf07 Author: Markus Lidel Date: Thu Jun 23 22:02:16 2005 -0700 [PATCH] I2O: new sysfs attributes and Adaptec specific block device access and 64-bit DMA support Changes: - Added Bus-OSM which could be used by user space programs to reset a channel on the controller - Make ioctl's in Config-OSM obsolete in prefer for sysfs attributes and move those to its own file - Added sysfs attribute for firmware read and write access for I2O controllers - Added special handling of firmware read and write access for Adaptec controllers - Added vendor id and product id as sysfs-attribute to Executive classes - Added automatic notification of LCT change handling to Exec-OSM - Added flushing function to Block-OSM for later barrier implementation - Use PRIVATE messages for Block access on Adaptec controllers, which are faster then BLOCK class access - Cleaned up support for Promise controller - New messages are now detected using the IRQ status register as suggested by the I2O spec - Added i2o_dma_high() and i2o_dma_low() functions - Added facility for SG tablesize calculation when using 32-bit and 64-bit DMA addresses - Added i2o_dma_map_single() and i2o_dma_map_sg() which could build the SG list for 32-bit as well as 64-bit DMA addresses Signed-off-by: Markus Lidel Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit f88e119c4b824a5017456fa094950d0f4092d96c Author: Markus Lidel Date: Thu Jun 23 22:02:14 2005 -0700 [PATCH] I2O: first code cleanup of spare warnings and unused functions Changes: - Removed unnecessary checking of NULL before calling kfree() - Make some functions static - Changed pr_debug() into osm_debug() - Use i2o_msg_in_to_virt() for getting a pointer to the message frame - Cleaned up some comments - Changed some le32_to_cpu() into readl() where necessary - Make error messages of OSM's look the same - Cleaned up error handling in i2o_block_end_request() - Removed unused error handling of failed messages in Block-OSM, which are not allowed by the I2O spec - Corrected the blocksize detection in i2o_block - Added hrt and lct sysfs-attribute to controller - Call done() function in SCSI-OSM after freeing DMA buffers - Removed unneeded variable for message size calculation in i2o_scsi_queuecommand() - Make some changes to remove sparse warnings - Reordered some functions - Cleaned up controller initialization - Replaced some magic numbers by defines - Removed unnecessary dma_sync_single_for_cpu() call on coherent DMA - Removed some unused fields in i2o_controller and removed some unused functions Signed-off-by: Markus Lidel Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 61fbfa8129c1771061a0e9f47747854293081c5b Author: Markus Lidel Date: Thu Jun 23 22:02:11 2005 -0700 [PATCH] I2O: bugfixes and compability enhancements Changes: - Fixed sysfs bug where user and parent links where added to the I2O device itself - Fixed bug when calculating TID for the event handler and cleaned up the workflow of i2o_driver_dispatch() - Fixed oops when no I2O device could be found for an event delivered to Exec-OSM - Fixed initialization of spinlock in Exec-OSM - Fixed memory leak in i2o_cfg_passthru() and i2o_cfg_passthru() - Removed MTRR support - Added PCI ID of Promise SX6000 with firmware >= 1.20.x.x - Turn of caching for ioremapped memory of in_queue - Added initialization sequence for Promise controllers - Moved definition of u8 / u16 / u32 for raidutils before first use Signed-off-by: Markus Lidel Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 34d6e07570ef74b965131452a862b13dfa779188 Author: Kylene Jo Hall Date: Thu Jun 23 22:02:10 2005 -0700 [PATCH] tpm: improve output in sysfs files when the TPM fails Since after reconsideration this is more debug output than an error (the TPM is operating correctly given the current state) I have changed the statements to dbg rather than err. Also this patch corrects a memory leak if the error path is taken in the tpm_show_pubek function. Signed-off-by: Kylene Hall Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit e234bc970451edc4021637fe2979b887da873f9a Author: Kylene Hall Date: Thu Jun 23 22:02:08 2005 -0700 [PATCH] tpm: add debugging output Signed-off-by: Kylene Hall Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit e1a23c6671f2bfd6e5e112848f01334ca39ea2b1 Author: Kylene Hall Date: Thu Jun 23 22:02:06 2005 -0700 [PATCH] tpm: replace odd LPC init function Realized the tpm_lpc_init function isn't really necessary. Replaced it with vendor specific logic to find out the address the BIOS mapped the TPM to. This patch removes the tpm_lpc_init function, enums associated with it and calls to it. The patch also implements the replacement functionality. Signed-off-by: Kylene Hall Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit a6df7da8f7ee99e6fd1995fad852bacb978a6447 Author: Kylene Hall Date: Thu Jun 23 22:02:04 2005 -0700 [PATCH] tpm: TPMs on additional LPC bus Add support for TPMs on additional LPC buses. Signed-off-by: Kylene Hall Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 5e976d5557d3dd1e835b8be52e6201556dcfa052 Author: Kylene Hall Date: Thu Jun 23 22:02:03 2005 -0700 [PATCH] tpm: locking fixes Add a missing lock in the register hardware and fix a misplaced lock release release. Signed-off-by: Kylene Hall Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit d9e5b6bf9cf19e6e9f2825228136ea17bc9a051a Author: Kylene Hall Date: Thu Jun 23 22:02:02 2005 -0700 [PATCH] tpm: add cancel function This patch provides the logic to check if an operation has been canceled while waiting for the response to arrive. Signed-off-by: Kylene Hall Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 6659ca2ab6730c3bbb9fa495f2327b95b955decd Author: Kylene Hall Date: Thu Jun 23 22:02:00 2005 -0700 [PATCH] tpm: sysfs owernship changes In the current driver all sysfs files end up owned by the base driver module rather than the module that actually owns the device this is a problem if the module is unloaded and the file is open. This patch fixes all that and lumps the files into an attribute_group. Signed-off-by: Kylene Hall Signed-off-by: Yani Ioannou Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 81179bb6a54c2c626b4cbcc084ca974bb2d7f2a3 Author: Kylene Hall Date: Thu Jun 23 22:01:59 2005 -0700 [PATCH] tpm: remove unnecessary __force Remove the unnecessary use of __force. Signed-off-by: Kylene Hall Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit e2fe90666a84e6a11c541424dfa9eec20cfe5fc1 Author: Kylene Hall Date: Thu Jun 23 22:01:57 2005 -0700 [PATCH] tpm: use to_pci_dev Changes the container_of calls to 'to_pci_dev' as suggested previously. Signed-off-by: Kylene Hall Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit fe3fd48384af79e7619d3c6b0a020f801ef63c3b Author: Kylene Hall Date: Thu Jun 23 22:01:56 2005 -0700 [PATCH] tpm: fix timer initialization Fix the timer to be inited and modified properly. This work depends on the fixing of the msleep stuff which in patch 1 of this set. Signed-of-by: Kylene Hall Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 2df7111fc6b0e050b06123379821ece2f8dd5bbc Author: Kylene Hall Date: Thu Jun 23 22:01:54 2005 -0700 [PATCH] tpm: large stack objects Remove some large objects be declared on the the stack. Signed-off-by: Kylene Hall Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 5b44bd58063f7839f42a4047843e93e1fbf73cda Author: Kylene Hall Date: Thu Jun 23 22:01:53 2005 -0700 [PATCH] tpm: read return code issue Replace an erroneous return code for the read function when no data is available. Signed-of-by: Kylene Hall Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit f87ea32ae2a986acc5258ad736ab0b55937c9489 Author: Kylene Hall Date: Thu Jun 23 22:01:51 2005 -0700 [PATCH] tpm: remove unnecessary module stuff Description: Remove unnecessary (empty) module definitions. Signed-off-by: Kylene Hall Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit dff37e4b0ad7bca3616f829c84bcf4ddd385d2c4 Author: Kylene Hall Date: Thu Jun 23 22:01:50 2005 -0700 [PATCH] tpm: address missing const defs Add "const" to several static arrays that were missing it in their definitions. Signed-off-by: Kylene Hall Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 3122a88a242454efe72930e56a3e4d56ee534f3c Author: Kylene Hall Date: Thu Jun 23 22:01:48 2005 -0700 [PATCH] tpm: Fix concerns with TPM driver -- use enums Convert #defines to named enums where that preference has been indicated by other kernel developers. Signed-off-by: Kylene Hall Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 700d8bdcd0fa815b08638b1e4d43b66d60cc6a8d Author: Nishanth Aravamudan Date: Thu Jun 23 22:01:47 2005 -0700 [PATCH] char/tpm: use msleep(), clean-up timers, The TPM driver unnecessarily uses timers when it simply needs to maintain a maximum delay via time_before(). msleep() is used instead of schedule_timeout() to guarantee the task delays as expected. While compile-testing, I found a typo in the driver, using tpm_chp instead of tpm_chip. Remove the now unused timer callback function and change TPM_TIMEOUT's units to milliseconds. Patch is compile-tested. Signed-off-by: Nishanth Aravamudan Acked-by: Kylene Hall Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 6a94f9209762a6eb286f668e1346ad87985cc765 Author: Andrew Morton Date: Thu Jun 23 22:01:45 2005 -0700 [PATCH] ipmi: add 32-bit ioctl translations for 64-bit platforms ) From: Corey Minyard This contains the patch for supporting 32-bit compatible ioctls on x86_64 systems. The current x86_64 driver will not work with 32-bit applications. Signed-off-by: Jordan Hargave Signed-off-by: Corey Minyard Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 77cf3973f22c7e7158f5e2c3c3d6809125b77e4b Author: Corey Minyard Date: Thu Jun 23 22:01:44 2005 -0700 [PATCH] ipmi: use completions, not semaphores, in powerdown code Don't use semaphores for IPC in the poweroff code, use completions instead. Signed-off-by: Corey Minyard Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 3b6259432dee81f928c22c48c080d5f6325ed92e Author: Corey Minyard Date: Thu Jun 23 22:01:42 2005 -0700 [PATCH] ipmi: add power cycle capability This patch to adds "power cycle" functionality to the IPMI power off module ipmi_poweroff. It also contains changes to support procfs control of the feature. The power cycle action is considered an optional chassis control in the IPMI specification. However, it is definitely useful when the hardware supports it. A power cycle is usually required in order to reset a firmware in a bad state. This action is critical to allow remote management of servers. The implementation adds power cycle as optional to the ipmi_poweroff module. It can be modified dynamically through the proc entry mentioned above. During a power down and enabled, the power cycle command is sent to the BMC firmware. If it fails either due to non-support or some error, it will retry to send the command as power off. Signed-off-by: Christopher A. Poblete Signed-off-by: Corey Minyard Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 8f43f84f13a49fe5f0f7d1595082b6d7ec6daa85 Author: Corey Minyard Date: Thu Jun 23 22:01:40 2005 -0700 [PATCH] ipmi: timer shutdown cleanup Clean up the timer shutdown handling in the IPMI driver. Signed-off-by: Corey Minyard Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 845e78a15726f238fe1398b8c07754726cd726a7 Author: Corey Minyard Date: Thu Jun 23 22:01:39 2005 -0700 [PATCH] ipmi: doc updates This cleans up the IPMI documentation to fix some problems and make it more accurate for the current drivers. Signed-off-by: Corey Minyard Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit bdd5b29c6bc835dab71148afd5952f9cd278eef1 Author: Jan Kara Date: Thu Jun 23 22:01:37 2005 -0700 [PATCH] Make reiserfs BUG on too big transaction Make reiserfs BUG() when somebody tries to start a larger transaction than it's allowed (currently the code just silently deadlocks). Signed-off-by: Jan Kara Acked-by: Chris Mason Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 7282bee78798294bb1f0211a842cdb9f4872db3d Author: Chris Zankel Date: Thu Jun 23 22:01:33 2005 -0700 [PATCH] xtensa: Architecture support for Tensilica Xtensa Part 8 The attached patches provides part 8 of an architecture implementation for the Tensilica Xtensa CPU series. Signed-off-by: Chris Zankel Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit e344b63eeec7850b5e900e10c8a6c61d083fd3a4 Author: Chris Zankel Date: Thu Jun 23 22:01:30 2005 -0700 [PATCH] xtensa: Architecture support for Tensilica Xtensa Part 7 The attached patches provides part 7 of an architecture implementation for the Tensilica Xtensa CPU series. Signed-off-by: Chris Zankel Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 9a8fd5589902153a134111ed7a40f9cca1f83254 Author: Chris Zankel Date: Thu Jun 23 22:01:26 2005 -0700 [PATCH] xtensa: Architecture support for Tensilica Xtensa Part 6 The attached patches provides part 6 of an architecture implementation for the Tensilica Xtensa CPU series. Signed-off-by: Chris Zankel Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 3f65ce4d141e435e54c20ed2379d983d362a2cb5 Author: Chris Zankel Date: Thu Jun 23 22:01:24 2005 -0700 [PATCH] xtensa: Architecture support for Tensilica Xtensa Part 5 The attached patches provides part 5 of an architecture implementation for the Tensilica Xtensa CPU series. Signed-off-by: Chris Zankel Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 249ac17e96811acc3c6402317dd5d5c89d2cbf68 Author: Chris Zankel Date: Thu Jun 23 22:01:20 2005 -0700 [PATCH] xtensa: Architecture support for Tensilica Xtensa Part 4 The attached patches provides part 4 of an architecture implementation for the Tensilica Xtensa CPU series. Signed-off-by: Chris Zankel Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 5a0015d62668e64c8b6e02e360fbbea121bfd5e6 Author: Chris Zankel Date: Thu Jun 23 22:01:16 2005 -0700 [PATCH] xtensa: Architecture support for Tensilica Xtensa Part 3 The attached patches provides part 3 of an architecture implementation for the Tensilica Xtensa CPU series. Signed-off-by: Chris Zankel Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 4bedea94545165364618d403d03b61d797acba0b Author: Chris Zankel Date: Thu Jun 23 22:01:12 2005 -0700 [PATCH] xtensa: Architecture support for Tensilica Xtensa Part 2 The attached patches provides part 2 of an architecture implementation for the Tensilica Xtensa CPU series. Signed-off-by: Chris Zankel Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 8e1a6dd2fddcc73c9e933758361e3d9c076c688a Author: Chris Zankel Date: Thu Jun 23 22:01:10 2005 -0700 [PATCH] xtensa: Architecture support for Tensilica Xtensa Part 1 The attached patches provides part 1 of an architecture implementation for the Tensilica Xtensa CPU series. Signed-off-by: Chris Zankel Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 48b415ca13bac91f83db3b9d362fd5ae0ce275cb Author: Chris Zankel Date: Thu Jun 23 22:01:07 2005 -0700 [PATCH] xtensa: Tensilica Xtensa CPU arch maintainer record Start of a patch series which adds support for the xtensa architecture to Linux. The Xtensa architecture is highly configurable and usually buried inside an SOC device. So, if you buy a new printer, digital camera, or cell phone, there is a chance that there is an Xtensa inside even though you don't know it (sometimes as a small audio-engine or as a control CPU). Linux hasn't been adopted widely with Xtensa yet, but with Linux growing in the embedded space, I am sure it will become much more important. The attached patch supplies the maintainer record for an architecture implementation for the Tensilica Xtensa CPU series. Signed-off-by: Chris Zankel Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 556a2a45bce1740f035befaa7201e4ad836c7257 Author: Jan Kara Date: Thu Jun 23 22:01:06 2005 -0700 [PATCH] quota: reiserfs: improve quota credit estimates Use improved credits estimates for quota operations. Also reserve space for a quota operation in a transaction only if filesystem was mounted with some quota option. Signed-off-by: Jan Kara Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 1f54587bea84a35125c95e19b98c2f464c50871b Author: Jan Kara Date: Thu Jun 23 22:01:04 2005 -0700 [PATCH] quota: ext3: Improve quota credit estimates Use improved credits estimates for quota operations. Also reserve a space for a quota operation in a transaction only if filesystem was mounted with some quota options. Signed-off-by: Jan Kara Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 4e5117ba0af4582b6ec9164874f719d7f3f1eb2b Author: Jan Kara Date: Thu Jun 23 22:01:03 2005 -0700 [PATCH] quota: improve credits estimates Improve estimates on the number of needed credits for quota transaction. Now we distinguish blocks that might need to be allocated and blocks that only need to be rewritten. Also we distinguish deleting of a quota structure and creating of a new one. Signed-off-by: Jan Kara Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit bd6a1f16fffdfe010fdc2979fd01f12357816762 Author: Jan Kara Date: Thu Jun 23 22:01:01 2005 -0700 [PATCH] reiserfs: add checking of journal_begin() return value Check return values of journal_begin() and journal_end() in the quota code for reiserfs. Signed-off-by: Jan Kara Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 92198f7eaa5df3479341dd8fa20c2c81aa3b1e25 Author: Christoph Hellwig Date: Thu Jun 23 22:00:59 2005 -0700 [PATCH] pass iocb to dio_iodone_t XFS will have to look at iocb->private to fix aio+dio. No other filesystem is using the blockdev_direct_IO* end_io callback. Signed-off-by: Christoph Hellwig Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 16c29b67fb3bbacfc2a71f9e5f7d85728ef45efa Author: Michael Halcrow Date: Thu Jun 23 22:00:58 2005 -0700 [PATCH] eCryptfs: export user key type Export this symbol to GPL modules for eCryptfs: an out-of-tree GPL'ed filesystem. Signed off by: Michael Halcrow Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 3e30148c3d524a9c1c63ca28261bc24c457eb07a Author: David Howells Date: Thu Jun 23 22:00:56 2005 -0700 [PATCH] Keys: Make request-key create an authorisation key The attached patch makes the following changes: (1) There's a new special key type called ".request_key_auth". This is an authorisation key for when one process requests a key and another process is started to construct it. This type of key cannot be created by the user; nor can it be requested by kernel services. Authorisation keys hold two references: (a) Each refers to a key being constructed. When the key being constructed is instantiated the authorisation key is revoked, rendering it of no further use. (b) The "authorising process". This is either: (i) the process that called request_key(), or: (ii) if the process that called request_key() itself had an authorisation key in its session keyring, then the authorising process referred to by that authorisation key will also be referred to by the new authorisation key. This means that the process that initiated a chain of key requests will authorise the lot of them, and will, by default, wind up with the keys obtained from them in its keyrings. (2) request_key() creates an authorisation key which is then passed to /sbin/request-key in as part of a new session keyring. (3) When request_key() is searching for a key to hand back to the caller, if it comes across an authorisation key in the session keyring of the calling process, it will also search the keyrings of the process specified therein and it will use the specified process's credentials (fsuid, fsgid, groups) to do that rather than the calling process's credentials. This allows a process started by /sbin/request-key to find keys belonging to the authorising process. (4) A key can be read, even if the process executing KEYCTL_READ doesn't have direct read or search permission if that key is contained within the keyrings of a process specified by an authorisation key found within the calling process's session keyring, and is searchable using the credentials of the authorising process. This allows a process started by /sbin/request-key to read keys belonging to the authorising process. (5) The magic KEY_SPEC_*_KEYRING key IDs when passed to KEYCTL_INSTANTIATE or KEYCTL_NEGATE will specify a keyring of the authorising process, rather than the process doing the instantiation. (6) One of the process keyrings can be nominated as the default to which request_key() should attach new keys if not otherwise specified. This is done with KEYCTL_SET_REQKEY_KEYRING and one of the KEY_REQKEY_DEFL_* constants. The current setting can also be read using this call. (7) request_key() is partially interruptible. If it is waiting for another process to finish constructing a key, it can be interrupted. This permits a request-key cycle to be broken without recourse to rebooting. Signed-Off-By: David Howells Signed-Off-By: Benoit Boissinot Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 8589b4e00e352f983259140f25a262d973be6bc5 Author: David Howells Date: Thu Jun 23 22:00:53 2005 -0700 [PATCH] Keys: Use RCU to manage session keyring pointer The attached patch uses RCU to manage the session keyring pointer in struct signal_struct. This means that searching need not disable interrupts and get a the sighand spinlock to access this pointer. Furthermore, by judicious use of rcu_read_(un)lock(), this patch also avoids the need to take and put refcounts on the session keyring itself, thus saving on even more atomic ops. Signed-Off-By: David Howells Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 7888e7ff4ee579442128d7d12a9c9dbf2cf7de6a Author: David Howells Date: Thu Jun 23 22:00:51 2005 -0700 [PATCH] Keys: Pass session keyring to call_usermodehelper() The attached patch makes it possible to pass a session keyring through to the process spawned by call_usermodehelper(). This allows patch 3/3 to pass an authorisation key through to /sbin/request-key, thus permitting better access controls when doing just-in-time key creation. Signed-Off-By: David Howells Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 76d8aeabfeb1c42641a81c44280177b9a08670d8 Author: David Howells Date: Thu Jun 23 22:00:49 2005 -0700 [PATCH] keys: Discard key spinlock and use RCU for key payload The attached patch changes the key implementation in a number of ways: (1) It removes the spinlock from the key structure. (2) The key flags are now accessed using atomic bitops instead of write-locking the key spinlock and using C bitwise operators. The three instantiation flags are dealt with with the construction semaphore held during the request_key/instantiate/negate sequence, thus rendering the spinlock superfluous. The key flags are also now bit numbers not bit masks. (3) The key payload is now accessed using RCU. This permits the recursive keyring search algorithm to be simplified greatly since no locks need be taken other than the usual RCU preemption disablement. Searching now does not require any locks or semaphores to be held; merely that the starting keyring be pinned. (4) The keyring payload now includes an RCU head so that it can be disposed of by call_rcu(). This requires that the payload be copied on unlink to prevent introducing races in copy-down vs search-up. (5) The user key payload is now a structure with the data following it. It includes an RCU head like the keyring payload and for the same reason. It also contains a data length because the data length in the key may be changed on another CPU whilst an RCU protected read is in progress on the payload. This would then see the supposed RCU payload and the on-key data length getting out of sync. I'm tempted to drop the key's datalen entirely, except that it's used in conjunction with quota management and so is a little tricky to get rid of. (6) Update the keys documentation. Signed-Off-By: David Howells Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 7286aa9b9ab35f20b1ff16d867f4535701df99b5 Author: Andrea Arcangeli Date: Thu Jun 23 22:00:45 2005 -0700 [PATCH] ppc64: fix seccomp with 32-bit userland The seccomp check has to happen when entering the syscall and not when exiting it or regs->gpr[0] contains garabge during signal handling in ppc64_rt_sigreturn (this actually might be a bug too, but an orthogonal one, since we really have to run the check before invoking the syscall and not after it). Signed-off-by: Andrea Arcangeli Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit f2d368fa3ef90f2159d9e542303901ebf68144dd Author: David S. Miller Date: Thu Jun 23 23:55:41 2005 -0700 [PKT_SCHED]: Make NET_EMATCH_TEXT select TEXTSEARCh Signed-off-by: David S. Miller commit 65df877ab2e2328a4704af218efaed0a45176c86 Author: David S. Miller Date: Thu Jun 23 23:49:52 2005 -0700 [LIB]: textsearch.o needs to be obj-y not lib-y. It exports symbols. Signed-off-by: David S. Miller commit a8acfbac75c2ffdd66fb5dfcdb7ab5aaced94fd8 Author: David S. Miller Date: Thu Jun 23 23:45:02 2005 -0700 [TCP]: Need to declare 'tcp_reno' in net/tcp.h Signed-off-by: David S. Miller commit 9b200b02a6c9cddca5132d64aa41156bbcddcbaa Author: Jesper Juhl Date: Thu Jun 23 21:06:56 2005 -0700 [SLIP]: Simplify sl_free_bufs() We can avoid assignments to the local variable 'tmp' and actually get rid of tmp alltogether in sl_free_bufs(). This patch does that. This is safe since both kfree() and slhc_free() handles NULL pointers gracefully. Signed-off-by: Jesper Juhl Signed-off-by: David S. Miller commit d675c989ed2d4ba23dff615330b04371aea83534 Author: Thomas Graf Date: Thu Jun 23 21:00:58 2005 -0700 [PKT_SCHED]: Packet classification based on textsearch (ematch) Signed-off-by: Thomas Graf Signed-off-by: David S. Miller commit 3fc7e8a6d842f72d16d2623b1022814a635ab961 Author: Thomas Graf Date: Thu Jun 23 21:00:17 2005 -0700 [NET]: skb_find_text() - Find a text pattern in skb data Finds a pattern in the skb data according to the specified textsearch configuration. Use textsearch_next() to retrieve subsequent occurrences of the pattern. Returns the offset to the first occurrence or UINT_MAX if no match was found. Signed-off-by: Thomas Graf Signed-off-by: David S. Miller commit 677e90eda3bd8cfde0b748daaa46476162a03950 Author: Thomas Graf Date: Thu Jun 23 20:59:51 2005 -0700 [NET]: Zerocopy sequential reading of skb data Implements sequential reading for both linear and non-linear skb data at zerocopy cost. The data is returned in chunks of arbitary length, therefore random access is not possible. Usage: from := 0 to := 128 state := undef data := undef len := undef consumed := 0 skb_prepare_seq_read(skb, from, to, &state) while (len = skb_seq_read(consumed, &data, &state)) != 0 do /* do something with 'data' of length 'len' */ if abort then /* abort read if we don't wait for * skb_seq_read() to return 0 */ skb_abort_seq_read(&state) return endif /* not necessary to consume all of 'len' */ consumed += len done Signed-off-by: Thomas Graf Signed-off-by: David S. Miller commit 6408f79cce401e1bfecf923e7156f84f96e021e3 Author: Thomas Graf Date: Thu Jun 23 20:59:16 2005 -0700 [LIB]: Naive finite state machine based textsearch A finite state machine consists of n states (struct ts_fsm_token) representing the pattern as a finite automation. The data is read sequentially on a octet basis. Every state token specifies the number of recurrences and the type of value accepted which can be either a specific character or ctype based set of characters. The available type of recurrences include 1, (0|1), [0 n], and [1 n]. The algorithm differs between strict/non-strict mode specyfing whether the pattern has to start at the first octect. Strict mode is enabled by default and can be disabled by inserting TS_FSM_HEAD_IGNORE as the first token in the chain. The runtime performance of the algorithm should be around O(n), however while in strict mode the average runtime can be better. Signed-off-by: Thomas Graf Signed-off-by: David S. Miller commit df3fb93ad9ec0b20c785c0ad82d42d159a1af272 Author: Thomas Graf Date: Thu Jun 23 20:58:37 2005 -0700 [LIB]: Knuth-Morris-Pratt textsearch algorithm Implements a linear-time string-matching algorithm due to Knuth, Morris, and Pratt [1]. Their algorithm avoids the explicit computation of the transition function DELTA altogether. Its matching time is O(n), for n being length(text), using just an auxiliary function PI[1..m], for m being length(pattern), precomputed from the pattern in time O(m). The array PI allows the transition function DELTA to be computed efficiently "on the fly" as needed. Roughly speaking, for any state "q" = 0,1,...,m and any character "a" in SIGMA, the value PI["q"] contains the information that is independent of "a" and is needed to compute DELTA("q", "a") [2]. Since the array PI has only m entries, whereas DELTA has O(m|SIGMA|) entries, we save a factor of |SIGMA| in the preprocessing time by computing PI rather than DELTA. [1] Cormen, Leiserson, Rivest, Stein Introdcution to Algorithms, 2nd Edition, MIT Press [2] See finite automation theory Signed-off-by: Thomas Graf Signed-off-by: David S. Miller commit 2de4ff7bd658c97fb357efa3095a509674dacb5a Author: Thomas Graf Date: Thu Jun 23 20:49:30 2005 -0700 [LIB]: Textsearch infrastructure. The textsearch infrastructure provides text searching facitilies for both linear and non-linear data. Individual search algorithms are implemented in modules and chosen by the user. Signed-off-by: Thomas Graf Signed-off-by: David S. Miller commit 5f8ef48d240963093451bcf83df89f1a1364f51d Author: Stephen Hemminger Date: Thu Jun 23 20:37:36 2005 -0700 [TCP]: Allow choosing TCP congestion control via sockopt. Allow using setsockopt to set TCP congestion control to use on a per socket basis. Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit 51b0bdedb8e784d0d969a6b77151911130812400 Author: Stephen Hemminger Date: Thu Jun 23 20:14:40 2005 -0700 [NET]: Separate two usages of netdev_max_backlog. Separate out the two uses of netdev_max_backlog. One controls the upper bound on packets processed per softirq, the new name for this is netdev_budget; the other controls the limit on packets queued via netif_rx. Increase the max_backlog default to account for faster processors. Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit 31aa02c53c84658f6694f319f09e232ede27be5a Author: Stephen Hemminger Date: Thu Jun 23 20:12:48 2005 -0700 [NET]: Eliminate netif_rx massive packet drops. Eliminate the throttling behaviour when the netif receive queue fills because it behaves badly when using high speed networks under load. The throttling cause multiple packet drops that cause TCP to go into slow start mode. The same effective patch has been part of BIC TCP and H-TCP as well as part of Web100. The existing code drops 100's of packets when the queue fills; this changes it to individual packet drop-tail. Signed-off-by: Stephen Hemmminger Signed-off-by: David S. Miller commit 34008d8c631d067caffa136313260525f3ae48a2 Author: Stephen Hemminger Date: Thu Jun 23 20:10:00 2005 -0700 [NET]: Remove obsolete netif_rx congestion sensing mechanism. Remove the congestion sensing mechanism from netif_rx, and always return either full or empty. Almost no driver checks the return value from netif_rx, and those that do only use it for debug messages. The original design of netif_rx was to do flow control based on the receive queue, but NAPI has supplanted this and no driver uses the feedback. Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit c1ebcdb8c422cd73f54bcd2b9953e443a47667e5 Author: Stephen Hemminger Date: Thu Jun 23 20:08:59 2005 -0700 [NET]: Remove obsolete fastroute stats. Remove last vestiages of fastroute code that is no longer used. Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit 16822e62053e73fa7def9decc38a7e287d27d980 Merge: a39451c17f53bbae053555670c7b678d46bcebba e608a8072b10258aa18c2e33324def225199ba1d Author: Linus Torvalds Date: Thu Jun 23 17:27:24 2005 -0700 Merge rsync://rsync.kernel.org/pub/scm/linux/kernel/git/aegl/linux-2.6 commit a39451c17f53bbae053555670c7b678d46bcebba Merge: adb7ee3746b579a7fa7af7c4ec2c8164bc910ed4 0e57976b6376f7fda6bef8b7dee2a3c8819ec9e9 Author: Linus Torvalds Date: Thu Jun 23 17:26:31 2005 -0700 Merge rsync://rsync.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6 commit adb7ee3746b579a7fa7af7c4ec2c8164bc910ed4 Merge: f46f6b20cb01508f5020142ff91021f8fb39550b 691027b91be99413dc60fab0902b366434555015 Author: Linus Torvalds Date: Thu Jun 23 17:19:56 2005 -0700 Merge master.kernel.org:/home/rmk/linux-2.6-arm commit f46f6b20cb01508f5020142ff91021f8fb39550b Merge: a8ad86f2dc46356f87be1327dabc18bdbda32f50 67f7654ea1f11fac1cf4a33bf9a5d9079d122e70 Author: Linus Torvalds Date: Thu Jun 23 16:58:55 2005 -0700 Merge master.kernel.org:/home/rmk/linux-2.6-serial commit e608a8072b10258aa18c2e33324def225199ba1d Author: David Mosberger-Tang Date: Wed Jun 22 22:24:00 2005 -0700 [IA64] Fix pfn_to_nid() so the kernel compiles again for !CONFIG_DISCONTIGMEM. Signed-off-by: David Mosberger-Tang Signed-off-by: Tony Luck commit 67f7654ea1f11fac1cf4a33bf9a5d9079d122e70 Author: Russell King Date: Thu Jun 23 22:26:43 2005 +0100 [PATCH] Serial: Bugs are not capabilities Signed-off-by: Russell King commit 691027b91be99413dc60fab0902b366434555015 Author: Ben Dooks Date: Thu Jun 23 21:56:48 2005 +0100 [PATCH] ARM: 2730/1: S3C2410 default configuration update Patch from Ben Dooks Add support for the DM9000 and bring default configuration up-to-date with the latest 2.6.12 kernel release Signed-off-by: Ben Dooks Signed-off-by: Russell King commit d97a666f36cf051e1b1c60505be3d6e9b51f785f Author: Ben Dooks Date: Thu Jun 23 21:56:47 2005 +0100 [PATCH] ARM: 2729/1: DM9000 platform support for S3C2410 machines (BAST, VR1000) Patch from Ben Dooks Add platform_device information for DM9000 chip(s) on the Simtec BAST and the VR1000 board. Signed-off-by: Ben Dooks Signed-off-by: Russell King commit d9dc58049d3ed5c63c1a6ac82c217558b4ec623a Author: Ben Dooks Date: Thu Jun 23 21:56:46 2005 +0100 [PATCH] ARM: 2728/1: S3C2410 - fix constant warning on serial device name Patch from Ben Dooks Remove warning of casting `const char *` to a `char *` type. Signed-off-by: Ben Dooks Signed-off-by: Russell King commit c1241c4c3a1507d76c7b987130f2f02f53ecc09f Author: Nicolas Pitre Date: Thu Jun 23 21:56:46 2005 +0100 [PATCH] ARM: 2722/1: remove reliance on udivdi3 for nwfpe Patch from Nicolas Pitre Signed-off-by: Nicolas Pitre Signed-off-by: Russell King commit bf1b8ab6f21e1adbab1abd1b4e71c35fe65dc5fe Author: Nicolas Pitre Date: Thu Jun 23 21:56:45 2005 +0100 [PATCH] ARM: 2721/1: remove reliance on udivdi3 for pxafb driver Patch from Nicolas Pitre Signed-off-by: Nicolas Pitre Signed-off-by: Russell King commit 0e57976b6376f7fda6bef8b7dee2a3c8819ec9e9 Author: John Heffner Date: Thu Jun 23 12:29:07 2005 -0700 [TCP]: Add Scalable TCP congestion control module. This patch implements Tom Kelly's Scalable TCP congestion control algorithm for the modular framework. The algorithm has some nice scaling properties, and has been used a fair bit in research, though is known to have significant fairness issues, so it's not really suitable for general purpose use. Signed-off-by: John Heffner Signed-off-by: David S. Miller commit a7868ea68d29eb2c037952aeb3b549cf05749a18 Author: Baruch Even Date: Thu Jun 23 12:28:11 2005 -0700 [TCP]: Add H-TCP congestion control module. H-TCP is a congestion control algorithm developed at the Hamilton Institute, by Douglas Leith and Robert Shorten. It is extending the standard Reno algorithm with mode switching is thus a relatively simple modification. H-TCP is defined in a layered manner as it is still a research platform. The basic form includes the modification of beta according to the ratio of maxRTT to min RTT and the alpha=2*factor*(1-beta) relation, where factor is dependant on the time since last congestion. The other layers improve convergence by adding appropriate factors to alpha. The following patch implements the H-TCP algorithm in it's basic form. Signed-Off-By: Baruch Even Signed-off-by: David S. Miller commit b87d8561d8667d221b728ccdcb18eb95b16a687b Author: Stephen Hemminger Date: Thu Jun 23 12:27:19 2005 -0700 [TCP]: Add TCP Vegas congestion control module. TCP Vegas code modified for the new TCP infrastructure. Vegas now uses microsecond resolution timestamps for better estimation of performance over higher speed links. Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit 835b3f0c0d7e1f716c45ec576662eac7a68b8548 Author: Daniele Lacamera <(root at danielinux.net)net> Date: Thu Jun 23 12:26:34 2005 -0700 [TCP]: Add TCP Hybla congestion control module. TCP Hybla congestion avoidance. - "In heterogeneous networks, TCP connections that incorporate a terrestrial or satellite radio link are greatly disadvantaged with respect to entirely wired connections, because of their longer round trip times (RTTs). To cope with this problem, a new TCP proposal, the TCP Hybla, is presented and discussed in the paper[1]. It stems from an analytical evaluation of the congestion window dynamics in the TCP standard versions (Tahoe, Reno, NewReno), which suggests the necessary modifications to remove the performance dependence on RTT.[...]"[1] [1]: Carlo Caini, Rosario Firrincieli, "TCP Hybla: a TCP enhancement for heterogeneous networks", International Journal of Satellite Communications and Networking Volume 22, Issue 5 , Pages 547 - 566. September 2004. Signed-off-by: Daniele Lacamera (root at danielinux.net)net Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit a628d29b56d3f420bf3ff1d7543a9caf3ce3b994 Author: John Heffner Date: Thu Jun 23 12:24:58 2005 -0700 [TCP]: Add High Speed TCP congestion control module. Sally Floyd's high speed TCP congestion control. This is useful for comparison and research. Signed-off-by: John Heffner Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit 8727076289ec55298a05cabddf02b374d13c1624 Author: Stephen Hemminger Date: Thu Jun 23 12:24:09 2005 -0700 [TCP]: Add TCP Westwood congestion control module. This is the existing 2.6.12 Westwood code moved from tcp_input to the new congestion framework. A lot of the inline functions have been eliminated to try and make it clearer. Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit 83803034f4233d810c4adc52008921da060c55d1 Author: Stephen Hemminger Date: Thu Jun 23 12:23:25 2005 -0700 [TCP]: Add TCP BIC congestion control module. TCP BIC congestion control reworked to use the new congestion control infrastructure. This version is more up to date than the BIC code in 2.6.12; it incorporates enhancements from BICTCP 1.1, to handle low latency links. Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit 9d7bcfc6b8586ee5a52043f061e0411965e71b88 Author: Stephen Hemminger Date: Thu Jun 23 12:22:36 2005 -0700 [TCP]: Update sysctl and congestion control documentation. Update the documentation to remove the old sysctl values and include the new congestion control infrastructure. Includes changes to tcp.txt by Ian McDonald. Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit 056ede6cface66b400cd3b8e60ed077cc5b85c18 Author: Stephen Hemminger Date: Thu Jun 23 12:21:28 2005 -0700 [TCP]: Report congestion control algorithm in tcp_diag. Enhancement to the tcp_diag interface used by the iproute2 ss command to report the tcp congestion control being used by a socket. Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit 7c99c909fa69a183c1b80bd64fb9f0d11459aff3 Author: Stephen Hemminger Date: Thu Jun 23 12:20:36 2005 -0700 [TCP]: Change tcp_diag to use the existing __RTA_PUT() macro. Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit 317a76f9a44b437d6301718f4e5d08bd93f98da7 Author: Stephen Hemminger Date: Thu Jun 23 12:19:55 2005 -0700 [TCP]: Add pluggable congestion control algorithm infrastructure. Allow TCP to have multiple pluggable congestion control algorithms. Algorithms are defined by a set of operations and can be built in or modules. The legacy "new RENO" algorithm is used as a starting point and fallback. Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit a8ad86f2dc46356f87be1327dabc18bdbda32f50 Author: Russell King Date: Thu Jun 23 14:23:35 2005 +0100 [PATCH] Add removal schedule of register_serial/unregister_serial to appropriate file commit 4749f32da939d4e4160541b2cadc22492bb507ec Author: Adrian Bunk Date: Thu Jun 23 11:36:56 2005 +0200 [PATCH] better USB_MON dependencies This makes the USB_MON less confusing. Signed-off-by: Adrian Bunk Signed-off-by: Linus Torvalds commit 24665cd00dd06c741ef6268515ca9e6d3cda5c57 Merge: fed2fc18a4567d613cd35115322257c6c6c710e9 d7152fe14cad075d6dd4ee4194acd131aed0244e Author: Linus Torvalds Date: Thu Jun 23 09:49:55 2005 -0700 Merge rsync://rsync.kernel.org/pub/scm/linux/kernel/git/paulus/ppc64-2.6 commit fed2fc18a4567d613cd35115322257c6c6c710e9 Author: Telemaque Ndizihiwe Date: Thu Jun 23 00:10:33 2005 -0700 [PATCH] sys_open() cleanup Clean up tortured logic in sys_open(). Signed-off-by: Telemaque Ndizihiwe Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 64ccd715d3cf498318b14b646ce5f97e7ab15bb5 Author: Alexey Dobriyan Date: Thu Jun 23 00:10:33 2005 -0700 [PATCH] Convert users to tty_unregister_ldisc() tty_register_ldisc(N_FOO, NULL) => tty_unregister_ldisc(N_FOO) Signed-off-by: Alexey Dobriyan Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit bfb07599da289881d3bcbb601a110e997fc7444b Author: Alexey Dobriyan Date: Thu Jun 23 00:10:32 2005 -0700 [PATCH] Introduce tty_unregister_ldisc() It's a bit strange to see tty_register_ldisc call in modules' exit functions. Signed-off-by: Alexey Dobriyan Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 790a19cd5711133f40daad7c55bf148de2b1d12c Author: Andrew Morton Date: Thu Jun 23 00:10:31 2005 -0700 [PATCH] pwc-uncompress warning fix drivers/usb/media/pwc/pwc-uncompress.c: In function `pwc_decompress': drivers/usb/media/pwc/pwc-uncompress.c:140: warning: unreachable code at beginning of switch statement Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 9235e68be8bf8974b65a9bf733c9d12a52307839 Author: Eric Piel Date: Thu Jun 23 00:10:29 2005 -0700 [PATCH] IDE CD reports current speed The current ide-cd driver reports the CDROM speed (as found in /proc/sys/dev/cdrom/info) as the current speed when loading the driver. Changing the speed of the cdrom drive (by "eject -x" for instance) doesn't update the speed reported by the kernel. Updating the info could be valuable for the user as it's the only way to know if the drive accepted the request or discarded it. It could even be used to list all the available speeds of the drive. The attached patch modifies the ide-cd driver so that after every speed change request the new speed is updated. Please note that the actual modification is very little but I had to touch quite a few lines in order to avoid to pre-declare the sub-functions. Signed-off-by: Eric Piel Acked-by: Jens Axboe Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 451512f3aed64573e912e68c94f240fec0e44438 Author: Jesper Juhl Date: Thu Jun 23 00:10:28 2005 -0700 [PATCH] add note about verify_area removal to feature-removal-schedule.txt Add note about the soon-to-come removal of verify_area() to Documentation/feature-removal-schedule.txt. Signed-off-by: Jesper Juhl Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit c43dc2fd885b5658cfd7cedb7bcca20910c517a4 Author: Benjamin LaHaise Date: Thu Jun 23 00:10:27 2005 -0700 [PATCH] aio: make wait_queue ->task ->private In the upcoming aio_down patch, it is useful to store a private data pointer in the kiocb's wait_queue. Since we provide our own wake up function and do not require the task_struct pointer, it makes sense to convert the task pointer into a generic private pointer. Signed-off-by: Benjamin LaHaise Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 63e6880918e75dcb92d60aff218a76e063a471ef Author: Benjamin LaHaise Date: Thu Jun 23 00:10:27 2005 -0700 [PATCH] aio: fix do_sync_(read|write) to properly handle aio retries When do_sync_(read|write) encounters an aio method that makes use of the retry mechanism, they fail to correctly retry the operation. This fixes that by adding the appropriate sleep and retry mechanism. Signed-off-by: Benjamin LaHaise Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 4452ea509e29df2f019bed2f7a1e0f5eea092b26 Author: Andrew Morton Date: Thu Jun 23 00:10:26 2005 -0700 [PATCH] dpt_i2o: fix waitqueue abuse The driver plays with waitqueue internals and fails to compile after Ben's "aio: make wait_queue ->task ->private" patch. Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 152becd26e0563aefdbc4fd1fe491928efe92d1f Author: Anton Altaparmakov Date: Thu Jun 23 00:10:21 2005 -0700 [PATCH] Bug in error recovery in fs/buffer.c::__block_prepare_write() fs/buffer.c::__block_prepare_write() has broken error recovery. It calls the get_block() callback with "create = 1" and if that succeeds it immediately clears buffer_new on the just allocated buffer (which has buffer_new set). The bug is that if an error occurs and get_block() returns != 0, we break from this loop and go into recovery code. This code has this comment: /* Error case: */ /* * Zero out any newly allocated blocks to avoid exposing stale * data. If BH_New is set, we know that the block was newly * allocated in the above loop. */ So the intent is obviously good in that it wants to clear just allocated and hence not zeroed buffers. However the code recognises allocated buffers by checking for buffer_new being set. Unfortunately __block_prepare_write() as discussed above already cleared buffer_new on all allocated buffers thus no buffers will be cleared during error recovery and old data will be leaked. The simplest way I can see to fix this is to make the current recovery code work by _not_ clearing buffer_new after calling get_block() in __block_prepare_write(). We cannot safely allow buffer_new buffers to "leak out" of __block_prepare_write(), thus we simply do a quick loop over the buffers clearing buffer_new on each of them if it is set just before returning "success" from __block_prepare_write(). Signed-off-by: Anton Altaparmakov Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 9a59f452abe11f569e13ec16c51e6d61c54b9838 Author: Christoph Hellwig Date: Thu Jun 23 00:10:19 2005 -0700 [PATCH] remove This file duplicates , using slightly different names. Signed-off-by: Christoph Hellwig Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit f9fd27a253d5e0b23531d12ce7ad15b6535d4486 Author: Christoph Hellwig Date: Thu Jun 23 00:10:19 2005 -0700 [PATCH] acl endianess annotations Signed-off-by: Christoph Hellwig Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 30aaa80885df5d1518d498a450e73282cea8d8b1 Author: William Lee Irwin III Date: Thu Jun 23 00:10:18 2005 -0700 [PATCH] use drivers/Kconfig for sparc32 Kconfig is spitting out massive numbers of errors and so on. This patch switches arch/sparc/Kconfig to use drivers/Kconfig so those stop. Signed-off-by: William Irwin Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 45778ca819accab1a4a3378b3566cab0f189164f Author: Christoph Lameter Date: Thu Jun 23 00:10:17 2005 -0700 [PATCH] Remove f_error field from struct file The following patch removes the f_error field and all checks of f_error. Trond said: f_error was introduced for NFS, and made sense when we were guaranteed always to have a file pointer around when write errors occurred. Since then, we have (for various reasons) had to introduce the nfs_open_context in order to track the file read/write state, and it made sense to move our f_error tracking there too. Signed-off-by: Christoph Lameter Acked-by: Trond Myklebust Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 280dedb8d64ccfe1166ae03d3b254fc3b65de6a5 Author: Bjorn Helgaas Date: Thu Jun 23 00:10:16 2005 -0700 [PATCH] PCDP: handle tables that don't supply baud rate The HCDP specs (i.e., PCDP revision < 3) allow zero as a default value for baud rate and data bits. So if firmware doesn't supply them, let early_serial_console_init() probe for them rather than telling it the baud rate is zero. Also, update the URL for the PCDP spec. Signed-off-by: Bjorn Helgaas Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit bb93e3a52f8db7210258a1a2134cced0b78a46e1 Author: Arnd Bergmann Date: Thu Jun 23 00:10:15 2005 -0700 [PATCH] block: add unlocked_ioctl support for block devices This patch allows block device drivers to convert their ioctl functions to unlocked_ioctl() like character devices and other subsystems. All functions that were called with the BKL held before are still used that way, but I would not be surprised if it could be removed from the ioctl functions in drivers/block/ioctl.c themselves. As a side note, I found that compat_blkdev_ioctl() acquires the BKL as well, which looks like a bug. I have checked that every user of disk->fops->compat_ioctl() in the current git tree gets the BKL itself, so it could easily be removed from compat_blkdev_ioctl(). Signed-off-by: Arnd Bergmann Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 0d77e5a2c23da734f5a7925f64afa1c2ed92e0f9 Author: Stephen Rothwell Date: Thu Jun 23 00:10:14 2005 -0700 [PATCH] compat: introduce compat_time_t This patch is based on work by Carlos O'Donell and Matthew Wilcox. It introduces/updates the compat_time_t type and uses it for compat siginfo structures. I have built this on ppc64 and x86_64. Signed-off-by: Stephen Rothwell Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit fa912bcb06d5dc9525d8912a145db2bf4b7668c5 Author: Daniel Ritz Date: Thu Jun 23 00:10:12 2005 -0700 [PATCH] yenta TI: turn off interrupts during card power-on #2 - make boot-up card recognition more reliable (ie. redo interrogation always if there is no valid 'card inserted' state) (and yes, i saw it happening on an o2micro controller that both CB_CBARD and CB_16BITCARD bits were set at the same time) - also redo interrogation before probing the ISA interrupts. it's safer to do the probing with the socket in a clean state. - make card insert detect more reliable. yenta_get_status() now returns SS_PENDING as long as the card is not completley inserted and one of the voltage bits is set. also !CB_CBARD doesn't mean CB_16BITCARD. there is CB_NOTACARD as well, so make an explicit check for CB_16BITCARD. - for TI bridges: disable IRQs during power-on. in all-serial and tied interrupt mode the interrupts are always disabled for single-slot controllers. for two-slot contollers the disabling is only done when the other slot is empty. to force disabling there is a new module parameter now: pwr_irqs_off=Y (which is a regression for working setups. that's why it's an option, only use when required) - modparm to disable ISA interrupt probing (isa_probe, defaults to on) - remove unneeded code/cleanups (ie. merge yenta_events() into yenta_interrupts()) Signed-off-by: Daniel Ritz Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 7007cab53176dc906e67b4efa62f20ff1432805a Author: Michal Schmidt Date: Thu Jun 23 00:10:09 2005 -0700 [PATCH] Add offset.h to dontdiff include/asm/offset.h is a generated file on x86_64 and mips. Let's add it to Documentation/dontdiff. Signed-off-by: Michal Schmidt Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit d9ad7ef1979d65a4200847ec91be5b9ad961eba8 Author: TINNES Julien RD-MAPS-ISS Date: Thu Jun 23 00:10:08 2005 -0700 [PATCH] Potential null pointer dereference in amiga serial driver A pointer is dereferenced before it is null-checked. Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 17abee3d50685b8ef4e38d37abacf8b650a3a387 Author: Thierry Vignaud Date: Thu Jun 23 00:10:07 2005 -0700 [PATCH] gconfig: only show scrollbars if needed gconfig: only show scrollbars if needed (which is more user friendly): Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit b78755abcdf1d7667c51580a3783e16e981ed926 Author: Manfred Spraul Date: Thu Jun 23 00:10:06 2005 -0700 [PATCH] ipcsem: remove superflous decrease variable from sys_semtimedop Patrick noticed that the initial scan of the semaphore operations logs decrease and increase operations seperately, but then both cases are or'ed together and decrease is never used. The attached patch removes the decrease parameter - it shrinks sys_semtimedop() by 56 bytes. Signed-Of-By: Manfred Spraul Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 0030cbf06c669b65e124414af51b5010fc53b760 Author: Matthias Urlichs Date: Thu Jun 23 00:10:05 2005 -0700 [PATCH] Turn off sibling call optimization w/ frame pointers Frame pointers are supposed to enable debuggers to reliably tell where a call comes from. That is defeated by GCC's sibling call optimization (aka tail recursion elimination). This patch turns this optimization off when compiling with frame pointers. Signed-Off-By: Matthias Urlichs Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 71a2224d7d1cefc23a1ac80bba421cc069cc3257 Author: Christoph Lameter Date: Thu Jun 23 00:10:05 2005 -0700 [PATCH] Optimize sys_times for a single thread process Avoid taking the tasklist_lock in sys_times if the process is single threaded. In a NUMA system taking the tasklist_lock may cause a bouncing cacheline if multiple independent processes continually call sys_times to measure their performance. Signed-off-by: Christoph Lameter Signed-off-by: Shai Fultheim Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit b030a4dd609e167da7f73c2d1fa5af864a0aea17 Author: Pekka Enberg Date: Thu Jun 23 00:10:03 2005 -0700 [PATCH] Remove eventpoll macro obfuscation This patch gets rid of some macro obfuscation from fs/eventpoll.c by removing slab allocator wrappers and converting macros to static inline functions. Signed-off-by: Pekka Enberg Acked-by: Davide Libenzi Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 46c271bedd2c8444b1d05bc44928beec0c07debc Author: Peter Osterlund Date: Thu Jun 23 00:10:02 2005 -0700 [PATCH] Improve CD/DVD packet driver write performance This patch improves write performance for the CD/DVD packet writing driver. The logic for switching between reading and writing has been changed so that streaming writes are no longer interrupted by read requests. Signed-off-by: Peter Osterlund Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit dfb388bf8a328f206bba33933dd97230f412238b Author: Oleg Nesterov Date: Thu Jun 23 00:10:02 2005 -0700 [PATCH] factor out common code in sys_fsync/sys_fdatasync This patch consolidates sys_fsync and sys_fdatasync. Signed-off-by: Oleg Nesterov Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 01890a4c120f68366441bf5e193d1b9dd543d4d0 Author: Benjamin LaHaise Date: Thu Jun 23 00:10:01 2005 -0700 [PATCH] mempool - only init waitqueue in slow path Here's a small patch to improve the performance of mempool_alloc by only initializing the wait queue when we're about to wait. Signed-off-by: Benjamin LaHaise Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 8476994af7bd9352ecdf61ba760f7397f54e30a1 Author: Jan Beulich Date: Thu Jun 23 00:10:00 2005 -0700 [PATCH] apply quotation handling to Makefile.build Adding quotation handling to rule_cc_o_c in scripts/Makefile.build as used elsewhere. Signed-off-by: Jan Beulich Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 11c80c8367db0a9d342529ed74464670cd86a1f6 Author: Jan Beulich Date: Thu Jun 23 00:09:59 2005 -0700 [PATCH] adjust per_cpu definition in non-SMP case Fix (in the architectures I'm actually building for) the UP definition of per_cpu so that the cpu specified may be any expression, not just an identifier or a suffix expression. Signed-off-by: Jan Beulich Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit c7ea4b31fd962b4baadb42c0b8d7c6851c584102 Author: Jan Beulich Date: Thu Jun 23 00:09:59 2005 -0700 [PATCH] ide-floppy adjustments Fix a build problem when IDEFLOPPY_DEBUG_BUGS is turned off, and eliminate an access to memory that is no longer allocated (causing systems to fail booting when CONFIG_DEBUG_PAGEALLOC is turned on). Signed-off-by: Jan Beulich Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit ef3daeda7b58f046f94b26637d500354038d39f4 Author: Yoav Zach Date: Thu Jun 23 00:09:58 2005 -0700 [PATCH] Don't force O_LARGEFILE for 32 bit processes on ia64 In ia64 kernel, the O_LARGEFILE flag is forced when opening a file. This is problematic for execution of 32 bit processes, which are not largefile aware, either by SW emulation or by HW execution. For such processes, the problem is two-fold: 1) When trying to open a file that is larger than 4G the operation should fail, but it's not 2) Writing to offset larger than 4G should fail, but it's not The proposed patch takes advantage of the way 32 bit processes are identified in ia64 systems. Such processes have PER_LINUX32 for their personality. With the patch, the ia64 kernel will not enforce the O_LARGEFILE flag if the current process has PER_LINUX32 set. The behavior for all other architectures remains unchanged. Signed-off-by: Yoav Zach Acked-by: Tony Luck Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 44e58a6a0bd604f46be9d808408a1cd880cc9b19 Author: Martin Schitter Date: Thu Jun 23 00:09:55 2005 -0700 [PATCH] parport: NetMos nm9855 fix kernel 2.6.12-rc2 adopted some code by Bjorn Helgaas supporting NetMos combo controller cards. this implementation doesn't work for nm9855 based cards! there are two reasons: a) the module 'parport_pc' doesn't want to give the resonsibility for the netmos_9855 to 'parport_serial' and can not handle the serial lines -- trivial to fix... http://lists.infradead.org/pipermail/linux-parport/2005-February/000250.html http://lkml.org/lkml/2005/3/24/199 b) the support for the nm9855 in 'parport_serial' still doesn't work because of wrong assumptions about the relevant BARs port address layout for this chip: 0000:00:09.0 Communication controller: NetMos Technology PCI 9855 Multi-I/O Controller (rev 01) (= 9710:9855) Subsystem: LSI Logic / Symbios Logic 1P4S (= 1000:0014) Flags: medium devsel, IRQ 177 I/O ports at a800 [size=8] (= parport) I/O ports at a400 [size=8] I/O ports at a000 [size=8] (= serial) I/O ports at 9800 [size=8] (= serial) I/O ports at 9400 [size=8] (= serial) I/O ports at 9000 [size=16] (= serial) the following patch will fix the problem. Cc: Bjorn Helgaas Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 328007b70c8e99c62eef5bc310d8a21d0e937342 Author: Pat Gefre Date: Thu Jun 23 00:09:54 2005 -0700 [PATCH] Altix: shut off xmit intr if done xmitting Small mod to shut off the xmit interrupt if we have nothing to transmit. Signed-off-by: Patrick Gefre Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 618f06362ae3f60f95d7b0e666de25ee6ae35679 Author: Kirill Korotaev Date: Thu Jun 23 00:09:54 2005 -0700 [PATCH] O(1) sb list traversing on syncs This patch removes O(n^2) super block loops in sync_inodes(), sync_filesystems() etc. in favour of using __put_super_and_need_restart() which I introduced earlier. We faced a noticably long freezes on sb syncing when there are thousands of super blocks in the system. Signed-Off-By: Kirill Korotaev Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 4fea2838aa00b9e59efde974dcdb455608192811 Author: Kirill Korotaev Date: Thu Jun 23 00:09:51 2005 -0700 [PATCH] Software suspend and recalc sigpending bug fix This patch fixes recalc_sigpending() to work correctly with tasks which are being freezed. The problem is that freeze_processes() sets PF_FREEZE and TIF_SIGPENDING flags on tasks, but recalc_sigpending() called from e.g. sys_rt_sigtimedwait or any other kernel place will clear TIF_SIGPENDING due to no pending signals queued and the tasks won't be freezed until it recieves a real signal or freezed_processes() fail due to timeout. Signed-Off-By: Kirill Korotaev Signed-Off-By: Alexey Kuznetsov Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit af4d2ecbf007b7df3db7a41eedccdc05b8006d0b Author: Kirill Korotaev Date: Thu Jun 23 00:09:50 2005 -0700 [PATCH] Fix of bogus file max limit messages This patch fixes incorrect and bogus kernel messages that file-max limit reached when the allocation fails Signed-Off-By: Kirill Korotaev Signed-Off-By: Denis Lunev Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit c663e5d80ebec426916ad2aa5400c7ec99aa572e Author: Christoph Hellwig Date: Thu Jun 23 00:09:49 2005 -0700 [PATCH] add some comments to lookup_create() In a duplicate of lookup_create in the af_unix code Al commented what's going on nicely, so let's bring that over to lookup_create before the copy is going away (I'll send a patch soon) Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 70f09f1fdf38cd7fca39913978d18cf998ab2c80 Author: Alexey Dobriyan Date: Thu Jun 23 00:09:47 2005 -0700 [PATCH] Document the fact that linux-arm-kernel is subscribers-only. "Non-members are not allowed to post messages to this list. Blame the original poster for cross-posting to subscriber-only mailing lists. " Signed-off-by: Alexey Dobriyan Acked-by: Russell King Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit acfa1823d33859b0db77701726c9ca5ccc6e6f25 Author: Andreas Dilger Date: Thu Jun 23 00:09:45 2005 -0700 [PATCH] Support for dx directories in ext3_get_parent (NFSD) Henrik Grubbstrom noted: The 2.6.10 ext3_get_parent attempts to use ext3_find_entry to look up the entry "..", which fails for dx directories since ".." is not present in the directory hash table. The patch below solves this by looking up the dotdot entry in the dx_root block. Typical symptoms of the above bug are intermittent claims by nfsd that files or directories are missing on exported ext3 filesystems. cf https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=3D150759 and https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=3D144556 ext3_get_parent() is IMHO the wrong place to fix this bug as it introduces a lot of internals from htree into that function. Instead, I think this should be fixed in ext3_find_entry() as in the below patch. This has the added advantage that it works for any callers of ext3_find_entry() and not just ext3_lookup_parent(). Signed-off-by: Andreas Dilger Signed-off-by: Henrik Grubbstrom Cc: Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit d6e711448137ca3301512cec41a2c2ce852b3d0a Author: Alan Cox Date: Thu Jun 23 00:09:43 2005 -0700 [PATCH] setuid core dump Add a new `suid_dumpable' sysctl: This value can be used to query and set the core dump mode for setuid or otherwise protected/tainted binaries. The modes are 0 - (default) - traditional behaviour. Any process which has changed privilege levels or is execute only will not be dumped 1 - (debug) - all processes dump core when possible. The core dump is owned by the current user and no security is applied. This is intended for system debugging situations only. Ptrace is unchecked. 2 - (suidsafe) - any binary which normally would not be dumped is dumped readable by root only. This allows the end user to remove such a dump but not access it directly. For security reasons core dumps in this mode will not overwrite one another or other files. This mode is appropriate when adminstrators are attempting to debug problems in a normal environment. (akpm: > > +EXPORT_SYMBOL(suid_dumpable); > > EXPORT_SYMBOL_GPL? No problem to me. > > if (current->euid == current->uid && current->egid == current->gid) > > current->mm->dumpable = 1; > > Should this be SUID_DUMP_USER? Actually the feedback I had from last time was that the SUID_ defines should go because its clearer to follow the numbers. They can go everywhere (and there are lots of places where dumpable is tested/used as a bool in untouched code) > Maybe this should be renamed to `dump_policy' or something. Doing that > would help us catch any code which isn't using the #defines, too. Fair comment. The patch was designed to be easy to maintain for Red Hat rather than for merging. Changing that field would create a gigantic diff because it is used all over the place. ) Signed-off-by: Alan Cox Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 8b0914ea7475615c7c8965c1ac8fe4069270f25c Author: Prasanna S Panchamukhi Date: Thu Jun 23 00:09:41 2005 -0700 [PATCH] jprobes: allow a jprobe to coexist with muliple kprobes Presently either multiple kprobes or only one jprobe could be inserted. This patch removes the above limitation and allows one jprobe and multiple kprobes to coexist at the same address. However multiple jprobes cannot coexist with multiple kprobes. Currently I am working on the prototype to allow multiple jprobes coexist with multiple kprobes. Signed-off-by: Ananth N Mavinakayanhalli Signed-off-by: Prasanna S Panchamukhi Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 852caccc89d3883522e87a91bfa89fd9c9cfe15a Author: Anil S Keshavamurthy Date: Thu Jun 23 00:09:40 2005 -0700 [PATCH] Kprobes/ia64: temporary disarming of reentrant probe This patch includes IA64 architecture specific changes(ported form i386) to support temporary disarming on reentrancy of probes. In case of reentrancy we single step without calling user handler. Signed-of-by: Anil S Keshavamurth Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit e539c2331414e73a5a1b79fb57369d79447c1cf8 Author: Prasanna S Panchamukhi Date: Thu Jun 23 00:09:39 2005 -0700 [PATCH] kprobes: Temporary disarming of reentrant probe for sparc64 This patch includes sparc64 architecture specific changes to support temporary disarming on reentrancy of probes. Signed-of-by: Prasanna S Panchamukhi Cc: "David S. Miller" Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 42cc20600a3450efcf1f724fa3891ffbff4fcb2b Author: Prasanna S Panchamukhi Date: Thu Jun 23 00:09:38 2005 -0700 [PATCH] kprobes: Temporary disarming of reentrant probe for ppc64 This patch includes ppc64 architecture specific changes to support temporary disarming on reentrancy of probes. Signed-of-by: Prasanna S Panchamukhi Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit aa3d7e3d782bbcf567b1da6101d8fbff7cf7e7a6 Author: Prasanna S Panchamukhi Date: Thu Jun 23 00:09:37 2005 -0700 [PATCH] kprobes: Temporary disarming of reentrant probe for x86_64 This patch includes x86_64 architecture specific changes to support temporary disarming on reentrancy of probes. Signed-of-by: Prasanna S Panchamukhi Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 417c8da6511b54843e6b557d94d8112d80e32156 Author: Prasanna S Panchamukhi Date: Thu Jun 23 00:09:37 2005 -0700 [PATCH] kprobes: Temporary disarming of reentrant probe for i386 This patch includes i386 architecture specific changes to support temporary disarming on reentrancy of probes. Signed-of-by: Prasanna S Panchamukhi Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit ea32c65cc2d2294c04e9f81d0578a6f51febfdbf Author: Prasanna S Panchamukhi Date: Thu Jun 23 00:09:36 2005 -0700 [PATCH] kprobes: Temporary disarming of reentrant probe In situations where a kprobes handler calls a routine which has a probe on it, then kprobes_handler() disarms the new probe forever. This patch removes the above limitation by temporarily disarming the new probe. When the another probe hits while handling the old probe, the kprobes_handler() saves previous kprobes state and handles the new probe without calling the new kprobes registered handlers. kprobe_post_handler() restores back the previous kprobes state and the normal execution continues. However on x86_64 architecture, re-rentrancy is provided only through pre_handler(). If a routine having probe is referenced through post_handler(), then the probes on that routine are disarmed forever, since the exception stack is gets changed after the processor single steps the instruction of the new probe. This patch includes generic changes to support temporary disarming on reentrancy of probes. Signed-of-by: Prasanna S Panchamukhi Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 89cb14c0dd0e4a7d0315d19f449389c4d49237ee Author: Keshavamurthy Anil S Date: Thu Jun 23 00:09:35 2005 -0700 [PATCH] Kprobes/IA64: check jprobe break before handling Once the jprobe instrumented function returns, it executes a jprobe_break which is a break instruction with __IA64_JPROBE_BREAK value. The current patch checks for this break value, before assuming that jprobe instrumented function just completed. The previous code was not checking for this value and that was a bug. Signed-off-by: Anil S Keshavamurthy Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 708de8f11c2901cc49fd7725baf4a0fbd7264e73 Author: Anil S Keshavamurthy Date: Thu Jun 23 00:09:34 2005 -0700 [PATCH] Kprobes IA64: safe register kprobe The current kprobes does not yet handle register kprobes on some of the following kind of instruction which needs to be emulated in a special way. 1) mov r1=ip 2) chk -- Speculation check instruction This patch attempts to fail register_kprobes() when user tries to insert kprobes on the above kind of instruction. Signed-off-by: Anil S Keshavamurthy Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 1674eafcbd3e3c68556cf19fbf4a2c30f7add729 Author: Anil S Keshavamurthy Date: Thu Jun 23 00:09:33 2005 -0700 [PATCH] Kprobes IA64: cmp ctype unc support The current Kprobes when patching the original instruction with the break instruction tries to retain the original qualifying predicate(qp), however for cmp.crel.ctype where ctype == unc, which is a special instruction always needs to be executed irrespective of qp. Hence, if the instruction we are patching is of this type, then we should not copy the original qp to the break instruction, this is because we always want the break fault to happen so that we can emulate the instruction. This patch is based on the feedback given by David Mosberger Signed-off-by: Anil S Keshavamurthy Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit a5403183d84d419651672f1aee5ff2273d185efa Author: Anil S Keshavamurthy Date: Thu Jun 23 00:09:32 2005 -0700 [PATCH] Kprobes IA64: arch_prepare_kprobes() cleanup arch_prepare_kprobes() was doing lots of functionality in just one single function. This patch attempts to clean up arch_prepare_kprobes() by moving specific sub task to the following (new)functions 1)valid_kprobe_addr() -->> validate the given kprobe address 2)get_kprobe_inst(slot..)->> Retrives the instruction for a given slot from the bundle 3)prepare_break_inst() -->> Prepares break instruction within the bundle 3a)update_kprobe_inst_flag()-->>Updates the internal flags, required for proper emulation of the instruction at later point in time. Signed-off-by: Anil S Keshavamurthy Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 13608d6433eb34840224ef632cc444f3eb59bc13 Author: Rusty Lynch Date: Thu Jun 23 00:09:31 2005 -0700 [PATCH] Kprobes ia64 qp fix Fix a bug where a kprobe still fires when the instruction is predicated off. So given the p6=0, and we have an instruction like: (p6) move loc1=0 we should not be triggering the kprobe. This is handled by carrying over the qp section of the original instruction into the break instruction. Signed-off-by: Anil S Keshavamurthy Signed-off-by: Rusty Lynch Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 8bc76772ad653bcaad1b0af72aafb6072ef0fa87 Author: Rusty Lynch Date: Thu Jun 23 00:09:30 2005 -0700 [PATCH] Kprobes ia64 cleanup A cleanup of the ia64 kprobes implementation such that all of the bundle manipulation logic is concentrated in arch_prepare_kprobe(). With the current design for kprobes, the arch specific code only has a chance to return failure inside the arch_prepare_kprobe() function. This patch moves all of the work that was happening in arch_copy_kprobe() and most of the work that was happening in arch_arm_kprobe() into arch_prepare_kprobe(). By doing this we can add further robustness checks in arch_arm_kprobe() and refuse to insert kprobes that will cause problems. Signed-off-by: Rusty Lynch Signed-off-by: Anil S Keshavamurthy Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit cd2675bf65455a45b54228b7acc0c6a26a164cb6 Author: Anil S Keshavamurthy Date: Thu Jun 23 00:09:29 2005 -0700 [PATCH] Kprobes/IA64: support kprobe on branch/call instructions This patch is required to support kprobe on branch/call instructions. Signed-off-by: Anil S Keshavamurthy Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit b2761dc262b428475890fffd979687051beb12ba Author: Anil S Keshavamurthy Date: Thu Jun 23 00:09:28 2005 -0700 [PATCH] Kprobes/IA64: architecture specific JProbes support This patch adds IA64 architecture specific JProbes support on top of Kprobes Signed-off-by: Anil S Keshavamurthy Signed-off-by: Rusty Lynch Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit fd7b231ff98578308d8f5fb76a25a369ce1074ae Author: Anil S Keshavamurthy Date: Thu Jun 23 00:09:28 2005 -0700 [PATCH] Kprobes/IA64: arch specific handling This is an IA64 arch specific handling of Kprobes Signed-off-by: Anil S Keshavamurthy Signed-off-by: Rusty Lynch Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 7213b2521889eb087eed8abaa48d1a692575da3e Author: Anil S Keshavamurthy Date: Thu Jun 23 00:09:27 2005 -0700 [PATCH] Kprobes/IA64: kdebug die notification mechanism As many of you know that kprobes exist in the main line kernel for various architecture including i386, x86_64, ppc64 and sparc64. Attached patches following this mail are a port of Kprobes and Jprobes for IA64. I have tesed this patches for kprobes and Jprobes and this seems to work fine. I have tested this patch by inserting kprobes on various slots and various templates including various types of branch instructions. I have also tested this patch using the tool http://marc.theaimsgroup.com/?l=linux-kernel&m=111657358022586&w=2 and the kprobes for IA64 works great. Here is list of TODO things and pathes for the same will appear soon. 1) Support kprobes on "mov r1=ip" type of instruction 2) Support Kprobes and Jprobes to exist on the same address 3) Support Return probes 3) Architecture independent cleanup of kprobes This patch adds the kdebug die notification mechanism needed by Kprobes. For break instruction on Branch type slot, imm21 is ignored and value zero is placed in IIM register, hence we need to handle kprobes for switch case zero. Signed-off-by: Anil S Keshavamurthy Signed-off-by: Rusty Lynch From: Rusty Lynch At the point in traps.c where we recieve a break with a zero value, we can not say if the break was a result of a kprobe or some other debug facility. This simple patch changes the informational string to a more correct "break 0" value, and applies to the 2.6.12-rc2-mm2 tree with all the kprobes patches that were just recently included for the next mm cut. Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 0aa55e4d7db822059fe8132fe9f2b7773c48216c Author: Hien Nguyen Date: Thu Jun 23 00:09:26 2005 -0700 [PATCH] kprobes: moves lock-unlock to non-arch kprobe_flush_task This patch moves the lock/unlock of the arch specific kprobe_flush_task() to the non-arch specific kprobe_flusk_task(). Signed-off-by: Hien Nguyen Acked-by: Prasanna S Panchamukhi Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 7e1048b11c5afe79aac46a42e3ccec86b8365c6d Author: Rusty Lynch Date: Thu Jun 23 00:09:25 2005 -0700 [PATCH] Move kprobe [dis]arming into arch specific code The architecture independent code of the current kprobes implementation is arming and disarming kprobes at registration time. The problem is that the code is assuming that arming and disarming is a just done by a simple write of some magic value to an address. This is problematic for ia64 where our instructions look more like structures, and we can not insert break points by just doing something like: *p->addr = BREAKPOINT_INSTRUCTION; The following patch to 2.6.12-rc4-mm2 adds two new architecture dependent functions: * void arch_arm_kprobe(struct kprobe *p) * void arch_disarm_kprobe(struct kprobe *p) and then adds the new functions for each of the architectures that already implement kprobes (spar64/ppc64/i386/x86_64). I thought arch_[dis]arm_kprobe was the most descriptive of what was really happening, but each of the architectures already had a disarm_kprobe() function that was really a "disarm and do some other clean-up items as needed when you stumble across a recursive kprobe." So... I took the liberty of changing the code that was calling disarm_kprobe() to call arch_disarm_kprobe(), and then do the cleanup in the block of code dealing with the recursive kprobe case. So far this patch as been tested on i386, x86_64, and ppc64, but still needs to be tested in sparc64. Signed-off-by: Rusty Lynch Signed-off-by: Anil S Keshavamurthy Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 73649dab0fd524cb8545a8cb83c6eaf77b107105 Author: Rusty Lynch Date: Thu Jun 23 00:09:23 2005 -0700 [PATCH] x86_64 specific function return probes The following patch adds the x86_64 architecture specific implementation for function return probes. Function return probes is a mechanism built on top of kprobes that allows a caller to register a handler to be called when a given function exits. For example, to instrument the return path of sys_mkdir: static int sys_mkdir_exit(struct kretprobe_instance *i, struct pt_regs *regs) { printk("sys_mkdir exited\n"); return 0; } static struct kretprobe return_probe = { .handler = sys_mkdir_exit, }; return_probe.kp.addr = (kprobe_opcode_t *) kallsyms_lookup_name("sys_mkdir"); if (register_kretprobe(&return_probe)) { printk(KERN_DEBUG "Unable to register return probe!\n"); /* do error path */ } unregister_kretprobe(&return_probe); The way this works is that: * At system initialization time, kernel/kprobes.c installs a kprobe on a function called kretprobe_trampoline() that is implemented in the arch/x86_64/kernel/kprobes.c (More on this later) * When a return probe is registered using register_kretprobe(), kernel/kprobes.c will install a kprobe on the first instruction of the targeted function with the pre handler set to arch_prepare_kretprobe() which is implemented in arch/x86_64/kernel/kprobes.c. * arch_prepare_kretprobe() will prepare a kretprobe instance that stores: - nodes for hanging this instance in an empty or free list - a pointer to the return probe - the original return address - a pointer to the stack address With all this stowed away, arch_prepare_kretprobe() then sets the return address for the targeted function to a special trampoline function called kretprobe_trampoline() implemented in arch/x86_64/kernel/kprobes.c * The kprobe completes as normal, with control passing back to the target function that executes as normal, and eventually returns to our trampoline function. * Since a kprobe was installed on kretprobe_trampoline() during system initialization, control passes back to kprobes via the architecture specific function trampoline_probe_handler() which will lookup the instance in an hlist maintained by kernel/kprobes.c, and then call the handler function. * When trampoline_probe_handler() is done, the kprobes infrastructure single steps the original instruction (in this case just a top), and then calls trampoline_post_handler(). trampoline_post_handler() then looks up the instance again, puts the instance back on the free list, and then makes a long jump back to the original return instruction. So to recap, to instrument the exit path of a function this implementation will cause four interruptions: - A breakpoint at the very beginning of the function allowing us to switch out the return address - A single step interruption to execute the original instruction that we replaced with the break instruction (normal kprobe flow) - A breakpoint in the trampoline function where our instrumented function returned to - A single step interruption to execute the original instruction that we replaced with the break instruction (normal kprobe flow) Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit b94cce926b2b902b79380ccba370d6f9f2980de0 Author: Hien Nguyen Date: Thu Jun 23 00:09:19 2005 -0700 [PATCH] kprobes: function-return probes This patch adds function-return probes to kprobes for the i386 architecture. This enables you to establish a handler to be run when a function returns. 1. API Two new functions are added to kprobes: int register_kretprobe(struct kretprobe *rp); void unregister_kretprobe(struct kretprobe *rp); 2. Registration and unregistration 2.1 Register To register a function-return probe, the user populates the following fields in a kretprobe object and calls register_kretprobe() with the kretprobe address as an argument: kp.addr - the function's address handler - this function is run after the ret instruction executes, but before control returns to the return address in the caller. maxactive - The maximum number of instances of the probed function that can be active concurrently. For example, if the function is non- recursive and is called with a spinlock or mutex held, maxactive = 1 should be enough. If the function is non-recursive and can never relinquish the CPU (e.g., via a semaphore or preemption), NR_CPUS should be enough. maxactive is used to determine how many kretprobe_instance objects to allocate for this particular probed function. If maxactive <= 0, it is set to a default value (if CONFIG_PREEMPT maxactive=max(10, 2 * NR_CPUS) else maxactive=NR_CPUS) For example: struct kretprobe rp; rp.kp.addr = /* entrypoint address */ rp.handler = /*return probe handler */ rp.maxactive = /* e.g., 1 or NR_CPUS or 0, see the above explanation */ register_kretprobe(&rp); The following field may also be of interest: nmissed - Initialized to zero when the function-return probe is registered, and incremented every time the probed function is entered but there is no kretprobe_instance object available for establishing the function-return probe (i.e., because maxactive was set too low). 2.2 Unregister To unregiter a function-return probe, the user calls unregister_kretprobe() with the same kretprobe object as registered previously. If a probed function is running when the return probe is unregistered, the function will return as expected, but the handler won't be run. 3. Limitations 3.1 This patch supports only the i386 architecture, but patches for x86_64 and ppc64 are anticipated soon. 3.2 Return probes operates by replacing the return address in the stack (or in a known register, such as the lr register for ppc). This may cause __builtin_return_address(0), when invoked from the return-probed function, to return the address of the return-probes trampoline. 3.3 This implementation uses the "Multiprobes at an address" feature in 2.6.12-rc3-mm3. 3.4 Due to a limitation in multi-probes, you cannot currently establish a return probe and a jprobe on the same function. A patch to remove this limitation is being tested. This feature is required by SystemTap (http://sourceware.org/systemtap), and reflects ideas contributed by several SystemTap developers, including Will Cohen and Ananth Mavinakayanahalli. Signed-off-by: Hien Nguyen Signed-off-by: Prasanna S Panchamukhi Signed-off-by: Frederik Deweerdt Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 2fa389c5eb8c97d621653184d2adf5fdbd4a3167 Author: Christoph Hellwig Date: Thu Jun 23 00:09:16 2005 -0700 [PATCH] quota: sanitize dentry handling in vfs_quota_on_mount Use lookup_one_len instead of opencoding a simplified lookup using lookup_hash with a fake hash. Also there's no need anymore for the d_invalidate as we have a completely valid dentry now. Signed-off-by: Christoph Hellwig Acked-by: Jan Kara Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 84de856ed30c568c2bb7b9ac0679772bd2737d9b Author: Christoph Hellwig Date: Thu Jun 23 00:09:16 2005 -0700 [PATCH] quota: consolidate code surrounding vfs_quota_on_mount Move some code duplicated in both callers into vfs_quota_on_mount Signed-off-by: Christoph Hellwig Acked-by: Jan Kara Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit df164db5fd16888ddbe2a63a47b2f6dda9a428b5 Author: Alexander Nyberg Date: Thu Jun 23 00:09:13 2005 -0700 [PATCH] avoid resursive oopses Prevent recursive faults in do_exit() by leaving the task alone and wait for reboot. This may allow a more graceful shutdown and possibly save the original oops. Signed-off-by: Alexander Nyberg Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 5f45f1a78fbac3cc859ec10c5366e97d20d40fa2 Author: Christoph Hellwig Date: Thu Jun 23 00:09:12 2005 -0700 [PATCH] remove duplicate get_dentry functions in various places Various filesystem drivers have grown a get_dentry() function that's a duplicate of lookup_one_len, except that it doesn't take a maximum length argument and doesn't check for \0 or / in the passed in filename. Switch all these places to use lookup_one_len. Signed-off-by: Christoph Hellwig Cc: Greg KH Cc: Paul Jackson Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit ac20427ef6aa63da663bdc88b71d16f7394f5e23 Author: Neil Horman Date: Thu Jun 23 00:09:11 2005 -0700 [PATCH] add check to /proc/devices read routines Patch to add check to get_chrdev_list and get_blkdev_list to prevent reads of /proc/devices from spilling over the provided page if more than 4096 bytes of string data are generated from all the registered character and block devices in a system Signed-off-by: Neil Horman Cc: Christoph Hellwig Cc: Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 3bc1ee3e8f1c05c0f64a479c6d56eb34a6190599 Author: Pekka Enberg Date: Thu Jun 23 00:09:09 2005 -0700 [PATCH] remove redundant vm_flags clearing from madvise.c This patch removes redundant VM_ClearReadHint from mm/madvice.c which was left there by Prasanna's patch. Signed-off-by: Pekka Enberg Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit be5b4fbd017d12e0d09ea0528a5839ce2ed2c8c8 Author: Jesper Juhl Date: Thu Jun 23 00:09:09 2005 -0700 [PATCH] preempt_count is int - remove cast and don't assign to unsigned type In kernel/sched.c the return value from preempt_count() is cast to an int. That made sense when preempt_count was defined as different types on is not needed and should go away. The patch removes the cast. In kernel/timer.c the return value from preempt_count() is assigned to a variable of type u32 and then that unsigned value is later compared to preempt_count(). Since preempt_count() returns an int, an int is what should be used to store its return value. Storing the result in an unsigned 32bit integer made a tiny bit of sense back when preempt_count was different types on different archs, but no more - let's not play signed vs unsigned comparison games when we don't have to. The patch modifies the code to use an int to hold the value. While I was around that bit of code I also made two changes to a nearby (related) printk() - I modified it to specify the loglevel explicitly and also broke the line into a few pieces to avoid it being longer than 80 chars and clarified the text a bit. Signed-off-by: Jesper Juhl Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit dcd497f99a1ef29a7c5e76142965be77e9dacabd Author: Jesper Juhl Date: Thu Jun 23 00:09:07 2005 -0700 [PATCH] streamline preempt_count type across archs The preempt_count member of struct thread_info is currently either defined as int, unsigned int or __s32 depending on arch. This patch makes the type of preempt_count an int on all archs. Having preempt_count be an unsigned type prevents the catching of preempt_count < 0 bugs, and using int on some archs and __s32 on others is not exactely "neat" - much nicer when it's just int all over. A previous version of this patch was already ACK'ed by Robert Love, and the only change in this version of the patch compared to the one he ACK'ed is that this one also makes sure the preempt_count member is consistently commented. Signed-off-by: Jesper Juhl Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 35a82d1a53e1a9ad54efafcc940f9335beaed5c3 Author: Nick Piggin Date: Thu Jun 23 00:09:06 2005 -0700 [PATCH] optimise loop driver a bit Looks like locking can be optimised quite a lot. Increase lock widths slightly so lo_lock is taken fewer times per request. Also it was quite trivial to cover lo_pending with that lock, and remove the atomic requirement. This also makes memory ordering explicitly correct, which is nice (not that I particularly saw any mem ordering bugs). Test was reading 4 250MB files in parallel on ext2-on-tmpfs filesystem (1K block size, 4K page size). System is 2 socket Xeon with HT (4 thread). intel:/home/npiggin# umount /dev/loop0 ; mount /dev/loop0 /mnt/loop ; /usr/bin/time ./mtloop.sh Before: 0.24user 5.51system 0:02.84elapsed 202%CPU (0avgtext+0avgdata 0maxresident)k 0.19user 5.52system 0:02.88elapsed 198%CPU (0avgtext+0avgdata 0maxresident)k 0.19user 5.57system 0:02.89elapsed 198%CPU (0avgtext+0avgdata 0maxresident)k 0.22user 5.51system 0:02.90elapsed 197%CPU (0avgtext+0avgdata 0maxresident)k 0.19user 5.44system 0:02.91elapsed 193%CPU (0avgtext+0avgdata 0maxresident)k After: 0.07user 2.34system 0:01.68elapsed 143%CPU (0avgtext+0avgdata 0maxresident)k 0.06user 2.37system 0:01.68elapsed 144%CPU (0avgtext+0avgdata 0maxresident)k 0.06user 2.39system 0:01.68elapsed 145%CPU (0avgtext+0avgdata 0maxresident)k 0.06user 2.36system 0:01.68elapsed 144%CPU (0avgtext+0avgdata 0maxresident)k 0.06user 2.42system 0:01.68elapsed 147%CPU (0avgtext+0avgdata 0maxresident)k Signed-off-by: Nick Piggin Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit ab4af03a4054bd78bcabfb2214c9597201beae35 Author: Greg Edwards Date: Thu Jun 23 00:09:05 2005 -0700 [PATCH] CON_CONSDEV bit not set correctly on last console According to include/linux/console.h, CON_CONSDEV flag should be set on the last console specified on the boot command line: 86 #define CON_PRINTBUFFER (1) 87 #define CON_CONSDEV (2) /* Last on the command line */ 88 #define CON_ENABLED (4) 89 #define CON_BOOT (8) This does not currently happen if there is more than one console specified on the boot commandline. Instead, it gets set on the first console on the command line. This can cause problems for things like kdb that look for the CON_CONSDEV flag to see if the console is valid. Additionaly, it doesn't look like CON_CONSDEV is reassigned to the next preferred console at unregister time if the console being unregistered currently has that bit set. Example (from sn2 ia64): elilo vmlinuz root= console=ttyS0 console=ttySG0 in this case, the flags on ttySG console struct will be 0x4 (should be 0x6). Attached patch against bk fixes both issues for the cases I looked at. It uses selected_console (which gets incremented for each console specified on the command line) as the indicator of which console to set CON_CONSDEV on. When adding the console to the list, if the previous one had CON_CONSDEV set, it masks it out. Tested on ia64 and x86. The problem with the current behavior is it breaks overriding the default from the boot line. In the ia64 case, there may be a global append line defining console=a in elilo.conf. Then you want to boot your kernel, and want to override the default by passing console=b on the boot line. elilo constructs the kernel cmdline by starting with the value of the global append line, then tacks on whatever else you specify, which puts console=b last. Signed-off-by: Greg Edwards Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit dfe52244e004f5103478966cd88351feb5c50d79 Author: Robert Love Date: Thu Jun 23 00:09:04 2005 -0700 [PATCH] kstrdup: convert a few existing implementations Convert a bunch of strdup() implementations and their callers to the new kstrdup(). A few remain, for example see sound/core, and there are tons of open coded strdup()'s around. Sigh. But this is a start. Signed-off-by: Robert Love Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 543537bd922692bc978e2e356fcd8bfc9c2ee7d5 Author: Paulo Marques Date: Thu Jun 23 00:09:02 2005 -0700 [PATCH] create a kstrdup library function This patch creates a new kstrdup library function and changes the "local" implementations in several places to use this function. Most of the changes come from the sound and net subsystems. The sound part had already been acknowledged by Takashi Iwai and the net part by David S. Miller. I left UML alone for now because I would need more time to read the code carefully before making changes there. Signed-off-by: Paulo Marques Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 991114c6fa6a21d1fa4d544abe78592352860c82 Author: Alexander Viro Date: Thu Jun 23 00:09:01 2005 -0700 [PATCH] fix for prune_icache()/forced final iput() races Based on analysis and a patch from Russ Weight There is a race condition that can occur if an inode is allocated and then released (using iput) during the ->fill_super functions. The race condition is between kswapd and mount. For most filesystems this can only happen in an error path when kswapd is running concurrently. For isofs, however, the error can occur in a more common code path (which is how the bug was found). The logic here is "we want final iput() to free inode *now* instead of letting it sit in cache if fs is going down or had not quite come up". The problem is with kswapd seeing such inodes in the middle of being killed and happily taking over. The clean solution would be to tell kswapd to leave those inodes alone and let our final iput deal with them. I.e. add a new flag (I_FORCED_FREEING), set it before write_inode_now() there and make prune_icache() leave those alone. Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit f972be33ce6a08b5f096ba013c7459a3a82f5f39 Author: Oleg Nesterov Date: Thu Jun 23 00:09:00 2005 -0700 [PATCH] posix-timers: use try_to_del_timer_sync() sys_timer_settime/sys_timer_delete needs to delete k_itimer->real.timer synchronously while holding ->it_lock, which is also locked in posix_timer_fn. This patch removes timer_active/set_timer_inactive which plays with timer_list's internals in favour of using try_to_del_timer_sync(), which was introduced in the previous patch. Signed-off-by: Oleg Nesterov Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit fd450b7318b75343fd76b3d95416853e34e72c95 Author: Oleg Nesterov Date: Thu Jun 23 00:08:59 2005 -0700 [PATCH] timers: introduce try_to_del_timer_sync() This patch splits del_timer_sync() into 2 functions. The new one, try_to_del_timer_sync(), returns -1 when it hits executing timer. It can be used in interrupt context, or when the caller hold locks which can prevent completion of the timer's handler. NOTE. Currently it can't be used in interrupt context in UP case, because ->running_timer is used only with CONFIG_SMP. Should the need arise, it is possible to kill #ifdef CONFIG_SMP in set_running_timer(), it is cheap. Signed-off-by: Oleg Nesterov Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 55c888d6d09a0df236adfaf8ccf06ff5d0646775 Author: Oleg Nesterov Date: Thu Jun 23 00:08:56 2005 -0700 [PATCH] timers fixes/improvements This patch tries to solve following problems: 1. del_timer_sync() is racy. The timer can be fired again after del_timer_sync have checked all cpus and before it will recheck timer_pending(). 2. It has scalability problems. All cpus are scanned to determine if the timer is running on that cpu. With this patch del_timer_sync is O(1) and no slower than plain del_timer(pending_timer), unless it has to actually wait for completion of the currently running timer. The only restriction is that the recurring timer should not use add_timer_on(). 3. The timers are not serialized wrt to itself. If CPU_0 does mod_timer(jiffies+1) while the timer is currently running on CPU 1, it is quite possible that local interrupt on CPU_0 will start that timer before it finished on CPU_1. 4. The timers locking is suboptimal. __mod_timer() takes 3 locks at once and still requires wmb() in del_timer/run_timers. The new implementation takes 2 locks sequentially and does not need memory barriers. Currently ->base != NULL means that the timer is pending. In that case ->base.lock is used to lock the timer. __mod_timer also takes timer->lock because ->base can be == NULL. This patch uses timer->entry.next != NULL as indication that the timer is pending. So it does __list_del(), entry->next = NULL instead of list_del() when the timer is deleted. The ->base field is used for hashed locking only, it is initialized in init_timer() which sets ->base = per_cpu(tvec_bases). When the tvec_bases.lock is locked, it means that all timers which are tied to this base via timer->base are locked, and the base itself is locked too. So __run_timers/migrate_timers can safely modify all timers which could be found on ->tvX lists (pending timers). When the timer's base is locked, and the timer removed from ->entry list (which means that _run_timers/migrate_timers can't see this timer), it is possible to set timer->base = NULL and drop the lock: the timer remains locked. This patch adds lock_timer_base() helper, which waits for ->base != NULL, locks the ->base, and checks it is still the same. __mod_timer() schedules the timer on the local CPU and changes it's base. However, it does not lock both old and new bases at once. It locks the timer via lock_timer_base(), deletes the timer, sets ->base = NULL, and unlocks old base. Then __mod_timer() locks new_base, sets ->base = new_base, and adds this timer. This simplifies the code, because AB-BA deadlock is not possible. __mod_timer() also ensures that the timer's base is not changed while the timer's handler is running on the old base. __run_timers(), del_timer() do not change ->base anymore, they only clear pending flag. So del_timer_sync() can test timer->base->running_timer == timer to detect whether it is running or not. We don't need timer_list->lock anymore, this patch kills it. We also don't need barriers. del_timer() and __run_timers() used smp_wmb() before clearing timer's pending flag. It was needed because __mod_timer() did not lock old_base if the timer is not pending, so __mod_timer()->list_add() could race with del_timer()->list_del(). With this patch these functions are serialized through base->lock. One problem. TIMER_INITIALIZER can't use per_cpu(tvec_bases). So this patch adds global struct timer_base_s { spinlock_t lock; struct timer_list *running_timer; } __init_timer_base; which is used by TIMER_INITIALIZER. The corresponding fields in tvec_t_base_s struct are replaced by struct timer_base_s t_base. It is indeed ugly. But this can't have scalability problems. The global __init_timer_base.lock is used only when __mod_timer() is called for the first time AND the timer was compile time initialized. After that the timer migrates to the local CPU. Signed-off-by: Oleg Nesterov Acked-by: Ingo Molnar Signed-off-by: Renaud Lienhart Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit bdd646a44672115c986593956aa4ef105485a184 Author: Nick Piggin Date: Thu Jun 23 00:08:54 2005 -0700 [PATCH] blk: unplug later get_request_wait needn't unplug the device immediately. Signed-off-by: Nick Piggin Cc: Jens Axboe Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit fde6ad22480cdc2eaa102b805a3ed3ee1d36a376 Author: Nick Piggin Date: Thu Jun 23 00:08:53 2005 -0700 [PATCH] blk: branch hints Sprinkle around a few branch hints in the block layer. Signed-off-by: Nick Piggin Cc: Jens Axboe Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 250dccc00805e755a6d80a73557034253da0831f Author: Nick Piggin Date: Thu Jun 23 00:08:52 2005 -0700 [PATCH] blk: no memory barrier This memory barrier is not needed because the waitqueue will only get waiters on it in the following situations: rq->count has exceeded the threshold - however all manipulations of ->count are performed under the runqueue lock, and so we will correctly pick up any waiter. Memory allocation for the request fails. In this case, there is no additional help provided by the memory barrier. We are guaranteed to eventually wake up waiters because the request allocation mempool guarantees that if the mem allocation for a request fails, there must be some requests in flight. They will wake up waiters when they are retired. Signed-off-by: Nick Piggin Cc: Jens Axboe Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 040c928c47b591d1cd9977cd6431cae213528b45 Author: Tejun Heo Date: Thu Jun 23 00:08:51 2005 -0700 [PATCH] blk: cleanup generic tag support error messages Add KERN_ERR and __FUNCTION__ to generic tag error messages, and add a comment in blk_queue_end_tag() which explains the silent failure path. Signed-off-by: Tejun Heo Acked-by: Jens Axboe Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit f7d37d028dfba90b1b747f8ac685bf0959aeda8b Author: Tejun Heo Date: Thu Jun 23 00:08:50 2005 -0700 [PATCH] blk: remove BLK_TAGS_{PER_LONG|MASK} Replace BLK_TAGS_PER_LONG with BITS_PER_LONG and remove unused BLK_TAGS_MASK. Signed-off-by: Tejun Heo Acked-by: Jens Axboe Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit fa72b903f75e4f0f0b2c2feed093005167da4023 Author: Tejun Heo Date: Thu Jun 23 00:08:49 2005 -0700 [PATCH] blk: remove blk_queue_tag->real_max_depth optimization blk_queue_tag->real_max_depth was used to optimize out unnecessary allocations/frees on tag resize. However, the whole thing was very broken - tag_map was never allocated to real_max_depth resulting in access beyond the end of the map, bits in [max_depth..real_max_depth] were set when initializing a map and copied when resizing resulting in pre-occupied tags. As the gain of the optimization is very small, well, almost nill, remove the whole thing. Signed-off-by: Tejun Heo Acked-by: Jens Axboe Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 2bf0fdad51c6710bf15d0bf4b9b30b8498fe4ddd Author: Tejun Heo Date: Thu Jun 23 00:08:48 2005 -0700 [PATCH] blk: use find_first_zero_bit() in blk_queue_start_tag() blk_queue_start_tag() hand-coded searching for the first zero bit in the tag map. Replace it with find_first_zero_bit(). With this patch, blk_queue_star_tag() doesn't need to fill remains of tag map with 1, thus allowing it to work properly with the next remove_real_max_depth patch. Signed-off-by: Tejun Heo Acked-by: Jens Axboe Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 15d20bfd606c4b4454aeaa05fc86f77994e48c92 Author: Domen Puncer Date: Thu Jun 23 00:08:47 2005 -0700 [PATCH] ptrace_h8300: condition bugfix Assignment doesn't make much sense here as condition would always be true. Signed-off-by: Domen Puncer Signed-off-by: Yoshinori Sato Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 76381fee7e8feb4c22be636aa5d4765dbe4fbf9e Author: Vincent Hanquez Date: Thu Jun 23 00:08:46 2005 -0700 [PATCH] xen: x86_64: use more usermode macro Make use of the user_mode macro where it's possible. This is useful for Xen because it will need only to redefine only the macro to a hypervisor call. Signed-off-by: Vincent Hanquez Cc: Ian Pratt Cc: Andi Kleen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit e9129e56e9ec50c0689eb4cf7a3ca132f1e776db Author: Vincent Hanquez Date: Thu Jun 23 00:08:46 2005 -0700 [PATCH] xen: x86_64: Add macro for debugreg Add 2 macros to set and get debugreg on x86_64. This is useful for Xen because it will need only to redefine each macro to a hypervisor call. Signed-off-by: Vincent Hanquez Cc: Ian Pratt Cc: Andi Kleen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 717b594a415bfaf2dbd5e8266636488f2564c689 Author: Vincent Hanquez Date: Thu Jun 23 00:08:45 2005 -0700 [PATCH] xen: x86: Use more usermode macro Use the user_mode macro where it's possible. Signed-off-by: Vincent Hanquez Cc: Ian Pratt Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit fa1e1bdf78d405f9905b8290ee9211e7a7bbc99b Author: Vincent Hanquez Date: Thu Jun 23 00:08:44 2005 -0700 [PATCH] xen: x86: Rename usermode macro Rename user_mode to user_mode_vm and add a user_mode macro similar to the x86-64 one. This is useful for Xen because the linux xen kernel does not runs on the same priviledge that a vanilla linux kernel, and with this we just need to redefine user_mode(). Signed-off-by: Vincent Hanquez Cc: Ian Pratt Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 1cc6f12e03ebc064b74161c684f987284ce9d0cc Author: Vincent Hanquez Date: Thu Jun 23 00:08:43 2005 -0700 [PATCH] xen: x86: Use new macro for debugreg Make use of the 2 new macro set_debugreg and get_debugreg. Signed-off-by: Vincent Hanquez Cc: Ian Pratt Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit f5012310e35bd62fd39fce338ee44422c975ff3c Author: Vincent Hanquez Date: Thu Jun 23 00:08:42 2005 -0700 [PATCH] xen: x86: add macro for debugreg Add 2 macros to set and get debugreg on x86. This is useful for Xen because it will need only to redefine each macro to a hypervisor call. Signed-off-by: Vincent Hanquez Cc: Ian Pratt Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 701067c4661ebcdc155cc8f696acb24c016c058b Author: Natalie Protasevich Date: Thu Jun 23 00:08:41 2005 -0700 [PATCH] x86_64: avoid wasting IRQs I suggest to change the way IRQs are handed out to PCI devices. Currently, each I/O APIC pin gets associated with an IRQ, no matter if the pin is used or not. It is expected that each pin can potentually be engaged by a device inserted into the corresponding PCI slot. However, this imposes severe limitation on systems that have designs that employ many I/O APICs, only utilizing couple lines of each, such as P64H2 chipset. It is used in ES7000, and currently, there is no way to boot the system with more that 9 I/O APICs. The simple change below allows to boot a system with say 64 (or more) I/O APICs, each providing 1 slot, which otherwise impossible because of the IRQ gaps created for unused lines on each I/O APIC. It does not resolve the problem with number of devices that exceeds number of possible IRQs, but eases up a tension for IRQs on any large system with potentually large number of devices. I only implemented this for the ACPI boot, since if the system is this big and using newer chipsets it is probably (better be!) an ACPI based system :). The change is completely "mechanical" and does not alter any internal structures or interrupt model/implementation. The patch works for both i386 and x86_64 archs. It works with MSIs just fine, and should not intervene with implementations like shared vectors, when they get worked out and incorporated. To illustrate, below is the interrupt distribution for 2-cell ES7000 with 20 I/O APICs, and an Ethernet card in the last slot, which should be eth1 and which was not configured because its IRQ exceeded allowable number (it actially turned out huge - 480!): zorro-tb2:~ # cat /proc/interrupts CPU0 CPU1 CPU2 CPU3 CPU4 CPU5 CPU6 CPU7 0: 65716 30012 30007 30002 30009 30010 30010 30010 IO-APIC-edge timer 4: 373 0 725 280 0 0 0 0 IO-APIC-edge serial 8: 0 0 0 0 0 0 0 0 IO-APIC-edge rtc 9: 0 0 0 0 0 0 0 0 IO-APIC-level acpi 14: 39 3 0 0 0 0 0 0 IO-APIC-edge ide0 16: 108 13 0 0 0 0 0 0 IO-APIC-level uhci_hcd:usb1 18: 0 0 0 0 0 0 0 0 IO-APIC-level uhci_hcd:usb3 19: 15 0 0 0 0 0 0 0 IO-APIC-level uhci_hcd:usb2 23: 3 0 0 0 0 0 0 0 IO-APIC-level ehci_hcd:usb4 96: 4240 397 18 0 0 0 0 0 IO-APIC-level aic7xxx 97: 15 0 0 0 0 0 0 0 IO-APIC-level aic7xxx 192: 847 0 0 0 0 0 0 0 IO-APIC-level eth0 NMI: 0 0 0 0 0 0 0 0 LOC: 273423 274528 272829 274228 274092 273761 273827 273694 ERR: 7 MIS: 0 Even though the system doesn't have that many devices, some don't get enabled only because of IRQ numbering model. This is the IRQ picture after the patch was applied: zorro-tb2:~ # cat /proc/interrupts CPU0 CPU1 CPU2 CPU3 CPU4 CPU5 CPU6 CPU7 0: 44169 10004 10004 10001 10004 10003 10004 6135 IO-APIC-edge timer 4: 345 0 0 0 0 244 0 0 IO-APIC-edge serial 8: 0 0 0 0 0 0 0 0 IO-APIC-edge rtc 9: 0 0 0 0 0 0 0 0 IO-APIC-level acpi 14: 39 0 3 0 0 0 0 0 IO-APIC-edge ide0 17: 4425 0 9 0 0 0 0 0 IO-APIC-level aic7xxx 18: 15 0 0 0 0 0 0 0 IO-APIC-level aic7xxx, uhci_hcd:usb3 21: 231 0 0 0 0 0 0 0 IO-APIC-level uhci_hcd:usb1 22: 26 0 0 0 0 0 0 0 IO-APIC-level uhci_hcd:usb2 23: 3 0 0 0 0 0 0 0 IO-APIC-level ehci_hcd:usb4 24: 348 0 0 0 0 0 0 0 IO-APIC-level eth0 25: 6 192 0 0 0 0 0 0 IO-APIC-level eth1 NMI: 0 0 0 0 0 0 0 0 LOC: 107981 107636 108899 108698 108489 108326 108331 108254 ERR: 7 MIS: 0 Not only we see the card in the last I/O APIC, but we are not even close to using up available IRQs, since we didn't waste any. Signed-off-by: Natalie Protasevich Acked-by: Andi Kleen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 32ecd42b6f94d3ee320a22827b46bd19ccf924e5 Author: Jan Beulich Date: Thu Jun 23 00:08:38 2005 -0700 [PATCH] eliminate duplicate rdpmc definition Eliminate duplicate definition of rdpmc in x86-64's mtrr.h. Signed-off-by: Jan Beulich Cc: Andi Kleen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 0928d6ef7f204979749fb241a90a04a35dae133a Author: Roland McGrath Date: Thu Jun 23 00:08:37 2005 -0700 [PATCH] x86_64: never block forced SIGSEGV This is the x86_64 version of the signal fix I just posted for i386. This problem was first noticed on PPC and has already been fixed there. But the exact same issue applies to other platforms in the same way. The signal blocking for sa_mask and the handled signal takes place after the handler setup. When the stack is bogus, the handler setup forces a SIGSEGV. But then this will be blocked, and returning to user mode will fault again and iterate. This patch fixes the problem by checking whether signal handler setup failed, and not doing the signal-blocking if so. This copies what was done in the ppc code. I think all architectures' signal handler setup code follows this pattern and needs the change. Signed-off-by: Roland McGrath Cc: Andi Kleen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit a3a00751ad8970c13d0563c2e92ee68c655a8e6b Author: john stultz Date: Thu Jun 23 00:08:36 2005 -0700 [PATCH] x86_64: fix hpet for systems that don't support legacy replacement Currently the x86-64 HPET code assumes the entire HPET implementation from the spec is present. This breaks on boxes that do not implement the optional legacy timer replacement functionality portion of the spec. This patch fixes this issue, allowing x86-64 systems that cannot use the HPET for the timer interrupt and RTC to still use the HPET as a time source. I've tested this patch on a system systems without HPET, with HPET but without legacy timer replacement, as well as HPET with legacy timer replacement. This version adds a minor check to cap the HPET counter value in gettimeoffset_hpet to avoid possible time inconsistencies. Please ignore the A2 version I sent to you earlier. Acked-by: Andi Kleen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit c0a88c987878e533fc21fbf684198021a3b2c279 Author: Alexander Nyberg Date: Thu Jun 23 00:08:35 2005 -0700 [PATCH] x86_64: i8259.c iso99 structure initialization Cc: Andi Kleen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit c92c6ffdb16990872acf4ce8b24f82f98fcbbb68 Author: Andrew Morton Date: Thu Jun 23 00:08:35 2005 -0700 [PATCH] mtrr size-and-base debugging Consolidate the mtrr sanity checking, add a dump_stack(). Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit a3a255e744dfa672e741dc24306491139d0de2d8 Author: Andrew Morton Date: Thu Jun 23 00:08:34 2005 -0700 [PATCH] x86: cpu_khz type fix x86_64's cpu_khz is unsigned int and there is no reason why x86 needs to use unsigned long. So make cpu_khz unsigned int on x86 as well. Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 129f69465b411592247c408f93d7106939223be1 Author: Alexey Dobriyan Date: Thu Jun 23 00:08:33 2005 -0700 [PATCH] Remove i386_ksyms.c, almost. * EXPORT_SYMBOL's moved to other files * #include , where needed * #include's in i386_ksyms.c cleaned up * After copy-paste, redundant due to Makefiles rules preprocessor directives removed: #ifdef CONFIG_FOO EXPORT_SYMBOL(foo); #endif obj-$(CONFIG_FOO) += foo.o * Tiny reformat to fit in 80 columns Signed-off-by: Alexey Dobriyan Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit a9ed8817966dd723754a990f1003264a21b5747e Author: Alexey Dobriyan Date: Thu Jun 23 00:08:32 2005 -0700 [PATCH] x86: #include asm/uaccess.h in asm/checksum.h csum_and_copy_to_user is static inline and uses VERIFY_WRITE. Patch allows to remove asm/uaccess.h from i386_ksyms.c without dependency surprises. Signed-off-by: Alexey Dobriyan Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 80bb82afea9eeb94ae3bfed418d079930da5d3b3 Author: Aleksey Gorelov Date: Thu Jun 23 00:08:29 2005 -0700 [PATCH] VIA 82C586B IRQ routing fix According to the VIA 82C586B datasheet (still available from http://gkernel.sourceforge.net/specs/via/586b.pdf.bz2) this chip need a special PIRQ mapping. Signed-off-by: Karsten Keil Signed-off-by: Aleksey Gorelov Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit c434b7a6aedfe428ad17cd61b21b125a7b7a29ce Author: Natalie Protasevich Date: Thu Jun 23 00:08:29 2005 -0700 [PATCH] x86: avoid wasting IRQs for PCI devices I have submitted the patch for x86_64, this is submission for i386. The patch changes the way IRQs are handed out to PCI devices. Currently, each I/O APIC pin gets associated with an IRQ, no matter if the pin is used or not. This imposes severe limitation on systems that have designs that employ many I/O APICs, only utilizing couple lines of each, such as P64H2 chipset. It is used in ES7000, and currently, there is no way to boot the system with more that 9 I/O APICs. The simple change below allows to boot a system with say 64 (or more) I/O APICs, each providing 1 slot, which otherwise impossible because of the IRQ gaps created for unused lines on each I/O APIC. It does not resolve the problem with number of devices that exceeds number of possible IRQs, but eases up a tension for IRQs on any large system with potentually large number of devices. Signed-off-by: Natalie Protasevich Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit b5d23e5b8c7ecd97d32f6ad7680d9909977580a7 Author: Christoph Lameter Date: Thu Jun 23 00:08:27 2005 -0700 [PATCH] ia64: Selectable Timer Interrupt Frequency It allows a selectable timer interrupt frequency of 100, 250 and 1000 HZ. Reducing the timer frequency may have important performance benefits on large systems. Signed-off-by: Christoph Lameter Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 59121003721a8fad11ee72e646fd9d3076b5679c Author: Christoph Lameter Date: Thu Jun 23 00:08:25 2005 -0700 [PATCH] i386: Selectable Frequency of the Timer Interrupt Make the timer frequency selectable. The timer interrupt may cause bus and memory contention in large NUMA systems since the interrupt occurs on each processor HZ times per second. Signed-off-by: Christoph Lameter Signed-off-by: Shai Fultheim Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 799d19f6ec5ca2102c61122f5219a17f1c4e961a Author: Jan Beulich Date: Thu Jun 23 00:08:24 2005 -0700 [PATCH] allow early printk to use more than 25 lines Allow early printk code to take advantage of the full size of the screen, not just the first 25 lines. Signed-off-by: Jan Beulich Acked-by: Andi Kleen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 7fbb4f6e6873593a2defb8f66512f55d08d88106 Author: Jan Beulich Date: Thu Jun 23 00:08:23 2005 -0700 [PATCH] adjust i386 watchdog tick calculation Get the i386 watchdog tick calculation into a state where it can also be used on CPUs with frequencies beyond 4GHz, and it consolidates the calculation into a single place (for potential furture adjustments). Signed-off-by: Jan Beulich Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit ca05fea6db5259c6d62e517c41d448a4249175f4 Author: Natalie Protasevich Date: Thu Jun 23 00:08:22 2005 -0700 [PATCH] Do not enforce unique IO_APIC_ID check for xAPIC systems (i386) This patch is per Andi's request to remove NO_IOAPIC_CHECK from genapic and use heuristics to prevent unique I/O APIC ID check for systems that don't need it. The patch disables unique I/O APIC ID check for Xeon-based and other platforms that don't use serial APIC bus for interrupt delivery. Andi stated that AMD systems don't need unique IO_APIC_IDs either. Signed-off-by: Natalie Protasevich Cc: Andi Kleen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 7c1def1652c6c1a95eafca2991baace34afaed0f Author: Roland McGrath Date: Thu Jun 23 00:08:21 2005 -0700 [PATCH] i386: never block forced SIGSEGV This problem was first noticed on PPC and has already been fixed there. But the exact same issue applies to other platforms in the same way. The signal blocking for sa_mask and the handled signal takes place after the handler setup. When the stack is bogus, the handler setup forces a SIGSEGV. But then this will be blocked, and returning to user mode will fault again and iterate. This patch fixes the problem by checking whether signal handler setup failed, and not doing the signal-blocking if so. This copies what was done in the ppc code. I think all architectures' signal handler setup code follows this pattern and needs the change. Signed-off-by: Roland McGrath Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 1946089a109251655c5438d92c539bd2930e71ea Author: Christoph Lameter Date: Thu Jun 23 00:08:19 2005 -0700 [PATCH] NUMA aware block device control structure allocation Patch to allocate the control structures for for ide devices on the node of the device itself (for NUMA systems). The patch depends on the Slab API change patch by Manfred and me (in mm) and the pcidev_to_node patch that I posted today. Does some realignment too. Signed-off-by: Justin M. Forbes Signed-off-by: Christoph Lameter Signed-off-by: Pravin Shelar Signed-off-by: Shobhit Dayal Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 8c5a09082f4e61a176382e96a831a0636b918602 Author: Christoph Lameter Date: Thu Jun 23 00:08:18 2005 -0700 [PATCH] x86/x86_64: pcibus_to_node Define pcibus_to_node to be able to figure out which NUMA node contains a given PCI device. This defines pcibus_to_node(bus) in include/linux/topology.h and adjusts the macros for i386 and x86_64 that already provided a way to determine the cpumask of a pci device. x86_64 was changed to not build an array of cpumasks anymore. Instead an array of nodes is build which can be used to generate the cpumask via node_to_cpumask. Signed-off-by: Christoph Lameter Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit e164f5573bef0e6caf53519719cf0228c9c15ce3 Author: Christoph Lameter Date: Thu Jun 23 00:08:17 2005 -0700 [PATCH] ppc64: pcibus_to_node fix asm-generic/topology.h must also be included if CONFIG_NUMA is set in order to provide the fall back pcibus_to_node function. Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 4a35293667f8691b45fdb72770f087c086fb9702 Author: Hirokazu Takata Date: Thu Jun 23 00:08:14 2005 -0700 [PATCH] m32r: build fix for asm-m32r/topology.h Use asm-generic/topology.h to fix yet another pcibus_to_node() build error. Cc: Christoph Lameter Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 8a9e1b0f564615bd92ba50162623e25c2904e564 Author: Venkatesh Pallipadi Date: Thu Jun 23 00:08:13 2005 -0700 [PATCH] Platform SMIs and their interferance with tsc based delay calibration Issue: Current tsc based delay_calibration can result in significant errors in loops_per_jiffy count when the platform events like SMIs (System Management Interrupts that are non-maskable) are present. This could lead to potential kernel panic(). This issue is becoming more visible with 2.6 kernel (as default HZ is 1000) and on platforms with higher SMI handling latencies. During the boot time, SMIs are mostly used by BIOS (for things like legacy keyboard emulation). Description: The psuedocode for current delay calibration with tsc based delay looks like (0) Estimate a value for loops_per_jiffy (1) While (loops_per_jiffy estimate is accurate enough) (2) wait for jiffy transition (jiffy1) (3) Note down current tsc (tsc1) (4) loop until tsc becomes tsc1 + loops_per_jiffy (5) check whether jiffy changed since jiffy1 or not and refine loops_per_jiffy estimate Consider the following cases Case 1: If SMIs happen between (2) and (3) above, we can end up with a loops_per_jiffy value that is too low. This results in shorted delays and kernel can panic () during boot (Mostly at IOAPIC timer initialization timer_irq_works() as we don't have enough timer interrupts in a specified interval). Case 2: If SMIs happen between (3) and (4) above, then we can end up with a loops_per_jiffy value that is too high. And with current i386 code, too high lpj value (greater than 17M) can result in a overflow in delay.c:__const_udelay() again resulting in shorter delay and panic(). Solution: The patch below makes the calibration routine aware of asynchronous events like SMIs. We increase the delay calibration time and also identify any significant errors (greater than 12.5%) in the calibration and notify it to user. Patch below changes both i386 and x86-64 architectures to use this new and improved calibrate_delay_direct() routine. Signed-off-by: Venkatesh Pallipadi Signed-off-by: Adrian Bunk Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 0f8e2d62fa04441cd12c08ce521e84e5bd3f8a46 Author: Ian Campbell Date: Thu Jun 23 00:08:10 2005 -0700 [PATCH] use ${CROSS_COMPILE}installkernel in arch/*/boot/install.sh The attached patch causes the various arch specific install.sh scripts to look for ${CROSS_COMPILE}installkernel rather than just installkernel (in both /sbin/ and ~/bin/ where the script already did this). This allows you to have e.g. arm-linux-installkernel as a handy way to install on your cross target. It also prevents the script picking up on the host /sbin/installkernel which causes the script to fall through and do the install itself (which is what I actually use myself, with $INSTALL_PATH set). I don't believe it causes back-compatibility problems since calling the host installkernel was never likely to work or be what you wanted when cross compiling anyway. If $CROSS_COMPILE isn't set then nothing changes. I only use ARM and i386 myself but I figured it couldn't hurt to do the whole lot. I've cc'd those who I hope are the arch maintainers for files that I've touched. Signed-off-by: Ian Campbell Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit d0e7feb03d5ac48069c2fd57bbba61522e0ca493 Author: H. Peter Anvin Date: Thu Jun 23 00:08:09 2005 -0700 [PATCH] biarch compiler support for i386 This allows the i386 architecture to be built on a system with a biarch compiler that defaults to x86-64, merely by specifying ARCH=i386. As previously discussed, this uses the equivalent logic to the ppc port. Signed-Off-By: H. Peter Anvin Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 6f4e1e5061c44a93337338af4bf9bed10ee9f32e Author: Martin J. Bligh Date: Thu Jun 23 00:08:08 2005 -0700 [PATCH] add page_state info to show_mem This helps a lot when debugging out of memory stuff - useful especially to see if all the memory is sucked into slab, etc. Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit bbfceef47fb9467424113a004070bf37a806a97c Author: Matt Tolentino Date: Thu Jun 23 00:08:07 2005 -0700 [PATCH] add x86-64 specific support for sparsemem This patch adds in the necessary support for sparsemem such that x86-64 kernels may use sparsemem as an alternative to discontigmem for NUMA kernels. Note that this does no preclude one from continuing to build NUMA kernels using discontigmem, but merely allows the option to build NUMA kernels with sparsemem. Interestingly, the use of sparsemem in lieu of discontigmem in NUMA kernels results in reduced text size for otherwise equivalent kernels as shown in the example builds below: text data bss dec hex filename 2371036 765884 1237108 4374028 42be0c vmlinux.discontig 2366549 776484 1302772 4445805 43d66d vmlinux.sparse Signed-off-by: Matt Tolentino Signed-off-by: Dave Hansen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 2b97690f4cd960779fb351b7cd9974390afabb36 Author: Matt Tolentino Date: Thu Jun 23 00:08:06 2005 -0700 [PATCH] reorganize x86-64 NUMA and DISCONTIGMEM config options In order to use the alternative sparsemem implmentation for NUMA kernels, we need to reorganize the config options. This patch effectively abstracts out the CONFIG_DISCONTIGMEM options to CONFIG_NUMA in most cases. Thus, the discontigmem implementation may be employed as always, but the sparsemem implementation may be used alternatively. Signed-off-by: Matt Tolentino Signed-off-by: Dave Hansen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 1035faf1b19efb83d5626985240f52cd149dd39b Author: Matt Tolentino Date: Thu Jun 23 00:08:05 2005 -0700 [PATCH] add x86-64 Kconfig options for sparsemem Add the requisite arch specific Kconfig options to enable the use of the sparsemem implementation for NUMA kernels on x86-64. Signed-off-by: Matt Tolentino Signed-off-by: Dave Hansen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 073326634bec2f36e165583d21fb0a9fad47ac0a Author: Matt Tolentino Date: Thu Jun 23 00:08:03 2005 -0700 [PATCH] remove direct ref to contig_page_data for x86-64 This patch pulls out all remaining direct references to contig_page_data from arch/x86-64, thus saving an ifdef in one case. Signed-off-by: Matt Tolentino Signed-off-by: Dave Hansen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 145e664231648121026d470094c200851a446a73 Author: Andy Whitcroft Date: Thu Jun 23 00:08:03 2005 -0700 [PATCH] ppc64: sparsemem memory model Provide the architecture specific implementation for SPARSEMEM for PPC64 systems. Signed-off-by: Andy Whitcroft Signed-off-by: Dave Hansen Signed-off-by: Mike Kravetz (in part) Signed-off-by: Martin Bligh Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 74b30be2e183bd9a12d0350698996e3d1969f290 Author: Andy Whitcroft Date: Thu Jun 23 00:08:02 2005 -0700 [PATCH] ppc64: add memory present Provide hooks for PPC64 to allow memory models to be informed of installed memory areas. This allows SPARSEMEM to instantiate mem_map for the populated areas. Signed-off-by: Andy Whitcroft Signed-off-by: Dave Hansen Signed-off-by: Martin Bligh Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 510f8fa7ba18320d408dd3093663e58f5664f2f0 Author: Andy Whitcroft Date: Thu Jun 23 00:08:01 2005 -0700 [PATCH] ppc64: add early_pfn_to_nid Provide an implementation of early_pfn_to_nid for PPC64. This is used by memory models to determine the node from which to take allocations before the memory allocators are fully initialised. Signed-off-by: Andy Whitcroft Signed-off-by: Dave Hansen Signed-off-by: Martin Bligh Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 29751f6991e845f7d002a6ae520bf996b38c8dcd Author: Andy Whitcroft Date: Thu Jun 23 00:08:00 2005 -0700 [PATCH] sparsemem hotplug base Make sparse's initalization be accessible at runtime. This allows sparse mappings to be created after boot in a hotplug situation. This patch is separated from the previous one just to give an indication how much of the sparse infrastructure is *just* for hotplug memory. The section_mem_map doesn't really store a pointer. It stores something that is convenient to do some math against to get a pointer. It isn't valid to just do *section_mem_map, so I don't think it should be stored as a pointer. There are a couple of things I'd like to store about a section. First of all, the fact that it is !NULL does not mean that it is present. There could be such a combination where section_mem_map *is* NULL, but the math gets you properly to a real mem_map. So, I don't think that check is safe. Since we're storing 32-bit-aligned structures, we have a few bits in the bottom of the pointer to play with. Use one bit to encode whether there's really a mem_map there, and the other one to tell whether there's a valid section there. We need to distinguish between the two because sometimes there's a gap between when a section is discovered to be present and when we can get the mem_map for it. Signed-off-by: Dave Hansen Signed-off-by: Andy Whitcroft Signed-off-by: Jack Steiner Signed-off-by: Bob Picco Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 641c767389b19859a45e6de46d8e18cd935bdb60 Author: Andy Whitcroft Date: Thu Jun 23 00:07:59 2005 -0700 [PATCH] sparsemem swiss cheese numa layouts The part of the sparsemem patch which modifies memmap_init_zone() has recently become a problem. It changes behavior so that there is a call to pfn_to_page() for each individual page inside of a node's range: node_start_pfn through node_end_pfn. It used to simply do this once, at the beginning of the node, but having sparsemem's non-contiguous mem_map[]s inside of a node made it necessary to change. Mike Kravetz recently wrote a patch which made the NUMA code accept some new kinds of layouts. The system's memory was laid out like this, with node 0's memory in two pieces: one before and one after node 1's memory: Node 0: +++++ +++++ Node 1: +++++ Previous behavior before Mike's patch was to assign nodes like this: Node 0: 00000 XXXXX Node 1: 11111 Where the 'X' areas were simply thrown away. The new behavior was to make the pg_data_t span node 0 across all of its areas, including areas that are really node 1's: Node 0: 000000000000000 Node 1: 11111 This wastes a little bit of mem_map space, but ends up being OK, and more fully utilizes the system's memory. memmap_init_zone() initializes all of the "struct page"s for node 0, even for the "hole", but those never get used, because there is no pfn_to_page() that resolves to those pages. However, only calling pfn_to_page() once, memmap_init_zone() always uses the pages that were allocated for node0->node_mem_map because: struct page *start = pfn_to_page(start_pfn); // effectively start = &node->node_mem_map[0] for (page = start; page < (start + size); page++) { init_page_here();... page++; } Slow, and wasteful, but generally harmless. But, modify that to call pfn_to_page() for each loop iteration (like sparsemem does): for (pfn = start_pfn; pfn < < (start_pfn + size); pfn++++) { page = pfn_to_page(pfn); } And you end up trying to initialize node 1's pages too early, along with bogus data from node 0. This patch checks for those weird layouts and declines to touch the pages, making the more frequent pfn_to_page() calls OK to do. Signed-off-by: Dave Hansen Signed-off-by: Andy Whitcroft Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 05b79bdcb48c18cd9b580c39e3efb9a1ab078151 Author: Andy Whitcroft Date: Thu Jun 23 00:07:57 2005 -0700 [PATCH] sparsemem memory model for i386 Provide the architecture specific implementation for SPARSEMEM for i386 SMP and NUMA systems. Signed-off-by: Andy Whitcroft Signed-off-by: Dave Hansen Signed-off-by: Martin Bligh Signed-off-by: Adrian Bunk Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit d41dee369bff3b9dcb6328d4d822926c28cc2594 Author: Andy Whitcroft Date: Thu Jun 23 00:07:54 2005 -0700 [PATCH] sparsemem memory model Sparsemem abstracts the use of discontiguous mem_maps[]. This kind of mem_map[] is needed by discontiguous memory machines (like in the old CONFIG_DISCONTIGMEM case) as well as memory hotplug systems. Sparsemem replaces DISCONTIGMEM when enabled, and it is hoped that it can eventually become a complete replacement. A significant advantage over DISCONTIGMEM is that it's completely separated from CONFIG_NUMA. When producing this patch, it became apparent in that NUMA and DISCONTIG are often confused. Another advantage is that sparse doesn't require each NUMA node's ranges to be contiguous. It can handle overlapping ranges between nodes with no problems, where DISCONTIGMEM currently throws away that memory. Sparsemem uses an array to provide different pfn_to_page() translations for each SECTION_SIZE area of physical memory. This is what allows the mem_map[] to be chopped up. In order to do quick pfn_to_page() operations, the section number of the page is encoded in page->flags. Part of the sparsemem infrastructure enables sharing of these bits more dynamically (at compile-time) between the page_zone() and sparsemem operations. However, on 32-bit architectures, the number of bits is quite limited, and may require growing the size of the page->flags type in certain conditions. Several things might force this to occur: a decrease in the SECTION_SIZE (if you want to hotplug smaller areas of memory), an increase in the physical address space, or an increase in the number of used page->flags. One thing to note is that, once sparsemem is present, the NUMA node information no longer needs to be stored in the page->flags. It might provide speed increases on certain platforms and will be stored there if there is room. But, if out of room, an alternate (theoretically slower) mechanism is used. This patch introduces CONFIG_FLATMEM. It is used in almost all cases where there used to be an #ifndef DISCONTIG, because SPARSEMEM and DISCONTIGMEM often have to compile out the same areas of code. Signed-off-by: Andy Whitcroft Signed-off-by: Dave Hansen Signed-off-by: Martin Bligh Signed-off-by: Adrian Bunk Signed-off-by: Yasunori Goto Signed-off-by: Bob Picco Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit af705362ab6018071310c5fcd436a6b457517d5f Author: Andy Whitcroft Date: Thu Jun 23 00:07:53 2005 -0700 [PATCH] generify memory present Allow architectures to indicate that they will be providing hooks to indice installed memory areas, memory_present(). Provide prototypes for the i386 implementation. Signed-off-by: Andy Whitcroft Signed-off-by: Dave Hansen Signed-off-by: Martin Bligh Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit b159d43fbf7eaaac6ecc647f51cf4257332db47b Author: Andy Whitcroft Date: Thu Jun 23 00:07:52 2005 -0700 [PATCH] generify early_pfn_to_nid Provide a default implementation for early_pfn_to_nid returning node 0. Allow architectures to override this with their own implementation out of asm/mmzone.h. Signed-off-by: Andy Whitcroft Signed-off-by: Dave Hansen Signed-off-by: Martin Bligh Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 368a0a3afad08069b2679ecaff80fc18c10a6e2a Author: Mike Kravetz Date: Thu Jun 23 00:07:51 2005 -0700 [PATCH] ppc64: Kconfig memory models This patch changes some of the default behavior in the ppc64 Kconfig file that was recently changed/added to 2.6.12-rc2-mm1 by Dave Hansen in preparation for SPARSEMEM. Patch allows the display of both FLAT and DISCONTIG models on pseries. As before, default is DISCONTIG for SMP and PSERIES and FLAT for others. Signed-off-by: Mike Kravetz Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 785dcd44b60ec8ede76fed0af54333ab5f3e848c Author: Dave Hansen Date: Thu Jun 23 00:07:50 2005 -0700 [PATCH] mm/Kconfig: give DISCONTIG more help text This gives DISCONTIGMEM a bit more help text to explain what it does, not just when to choose it. Signed-off-by: Dave Hansen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit e1785e85b9c81c67b581b511ee4efac6c81e9edb Author: Dave Hansen Date: Thu Jun 23 00:07:49 2005 -0700 [PATCH] mm/Kconfig: hide "Memory Model" selection menu I got some feedback from users who think that the new "Memory Model" menu is a little invasive. This patch will hide that menu, except when CONFIG_EXPERIMENTAL is enabled *or* when an individual architecture wants it. An individual arch may want to enable it because they've removed their arch-specific DISCONTIG prompt in favor of the mm/Kconfig one. Signed-off-by: Dave Hansen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 074ccf8016b61f4b40066f8d737ab31e17a6afd1 Author: Dave Hansen Date: Thu Jun 23 00:07:48 2005 -0700 [PATCH] mm/Kconfig: kill unused ARCH_FLATMEM_DISABLE This used to be used to disable FLATMEM selection, but I decided to change it to be done generically when DISCONTIG is enabled. The option is unused, so this kills it. Signed-off-by: Dave Hansen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 44d0f805c77902a22dda244fd092b4567066b2b9 Author: Dave Hansen Date: Thu Jun 23 00:07:47 2005 -0700 [PATCH] sparsemem: fix minor "defaults" issue in mm/Kconfig The following patch applies on top of 2.6.12-rc2-mm1. It fixes a minor user interaction issue, and an early reference to SPARSEMEM. This "choice" menu would always default to FLATMEM, as it was listed first. Move it to the end so that the other defaults have a chance first. Signed-off-by: Dave Hansen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 93b7504e3e6c1d98586854806e51bea329ea3aa9 Author: Dave Hansen Date: Thu Jun 23 00:07:47 2005 -0700 [PATCH] Introduce new Kconfig option for NUMA or DISCONTIG There is some confusion that arose when working on SPARSEMEM patch between what is needed for DISCONTIG vs. NUMA. Multiple pg_data_t's are needed for DISCONTIGMEM or NUMA, independently. All of the current NUMA implementations require an implementation of DISCONTIG. Because of this, quite a lot of code which is really needed for NUMA is actually under DISCONTIG #ifdefs. For SPARSEMEM, we changed some of these #ifdefs to CONFIG_NUMA, but that broke the DISCONTIG=y and NUMA=n case. Introducing this new NEED_MULTIPLE_NODES config option allows code that is needed for both NUMA or DISCONTIG to be separated out from code that is specific to DISCONTIG. One great advantage of this approach is that it doesn't require every architecture to be converted over. All of the current implementations should "just work", only the ones implementing SPARSEMEM will have to be fixed up. The change to free_area_init() makes it work inside, or out of the new config option. Signed-off-by: Dave Hansen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 0e19243e9a19ef8e5994852671bd06bb51630811 Author: Dave Hansen Date: Thu Jun 23 00:07:45 2005 -0700 [PATCH] update all defconfigs for ARCH_DISCONTIGMEM_ENABLE This will at least suppress one prompt that users would have received the first time they compile with the new DISCONTIG arch option. They'll still get the "Memory Model" prompt, but 99% of them will have the default work there. Signed-off-by: Dave Hansen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 3f22ab276b931b72ea04b184c155b34d0362bfc3 Author: Dave Hansen Date: Thu Jun 23 00:07:43 2005 -0700 [PATCH] make each arch use mm/Kconfig For all architectures, this just means that you'll see a "Memory Model" choice in your architecture menu. For those that implement DISCONTIGMEM, you may eventually want to make your ARCH_DISCONTIGMEM_ENABLE a "def_bool y" and make your users select DISCONTIGMEM right out of the new choice menu. The only disadvantage might be if you have some specific things that you need in your help option to explain something about DISCONTIGMEM. Signed-off-by: Dave Hansen Signed-off-by: Adrian Bunk Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 3a9da7655d2d5b7f790a370328cf093440c80496 Author: Dave Hansen Date: Thu Jun 23 00:07:42 2005 -0700 [PATCH] create mm/Kconfig for arch-independent memory options With sparsemem being introduced, we need a central place for new memory-related .config options: mm/Kconfig. This allows us to remove many of the duplicated arch-specific options. The new option, CONFIG_FLATMEM, is there to enable us to detangle NUMA and DISCONTIGMEM. This is a requirement for sparsemem because sparsemem uses the NUMA code without the presence of DISCONTIGMEM. The sparsemem patches use CONFIG_FLATMEM in generic code, so this patch is a requirement before applying them. Almost all places that used to do '#ifndef CONFIG_DISCONTIGMEM' should use '#ifdef CONFIG_FLATMEM' instead. Signed-off-by: Andy Whitcroft Signed-off-by: Dave Hansen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 5b505b90b2d54e526cc8d123bdef3b98c9f0bbc6 Author: Dave Hansen Date: Thu Jun 23 00:07:41 2005 -0700 [PATCH] sparsemem base: teach discontig about sparse ranges discontig.c has some assumptions that mem_map[]s inside of a node are contiguous. Teach it to make sure that each region that it's bringing online is actually made up of valid ranges of ram. Written-by: Andy Whitcroft Signed-off-by: Dave Hansen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 348f8b6c4837a07304d2f72b11ce8d96588065e0 Author: Dave Hansen Date: Thu Jun 23 00:07:40 2005 -0700 [PATCH] sparsemem base: reorganize page->flags bit operations Generify the value fields in the page_flags. The aim is to allow the location and size of these fields to be varied. Additionally we want to move away from fixed allocations per field whilst still enforcing the overall bit utilisation limits. We rely on the compiler to spot and optimise the accessor functions. Signed-off-by: Andy Whitcroft Signed-off-by: Dave Hansen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 6f167ec721108c9282d54424516a12c805e3c306 Author: Dave Hansen Date: Thu Jun 23 00:07:39 2005 -0700 [PATCH] sparsemem base: simple NUMA remap space allocator Introduce a simple allocator for the NUMA remap space. This space is very scarce, used for structures which are best allocated node local. This mechanism is also used on non-NUMA ia64 systems with a vmem_map to keep the pgdat->node_mem_map initialized in a consistent place for all architectures. Issues: o alloc_remap takes a node_id where we might expect a pgdat which was intended to allow us to allocate the pgdat's using this mechanism; which we do not yet do. Could have alloc_remap_node() and alloc_remap_nid() for this purpose. Signed-off-by: Andy Whitcroft Signed-off-by: Dave Hansen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit c2ebaa425e6630adcbf757b004d257dd4204925b Author: Dave Hansen Date: Thu Jun 23 00:07:38 2005 -0700 [PATCH] sparsemem base: early_pfn_to_nid() (works before sparse is initialized) The following four patches provide the last needed changes before the introduction of sparsemem. For a more complete description of what this will do, please see this patch: http://www.sr71.net/patches/2.6.11/2.6.11-bk7-mhp1/broken-out/B-sparse-150-sparsemem.patch or previous posts on the subject: http://marc.theaimsgroup.com/?t=110868540700001&r=1&w=2 http://marc.theaimsgroup.com/?l=linux-mm&m=109897373315016&w=2 Three of these are i386-only, but one of them reorganizes the macros used to manage the space in page->flags, and will affect all platforms. There are analogous patches to the i386 ones for ppc64, ia64, and x86_64, but those will be submitted by the normal arch maintainers. The combination of the four patches has been test-booted on a variety of i386 hardware, and compiled for ppc64, i386, and x86-64 with about 17 different .configs. It's also been runtime-tested on ia64 configs (with more patches on top). This patch: We _know_ which node pages in general belong to, at least at a very gross level in node_{start,end}_pfn[]. Use those to target the allocations of pages. Signed-off-by: Andy Whitcroft Signed-off-by: Dave Hansen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 408fde81c1bff15c875a3618481e93a01dcc79ea Author: Dave Hansen Date: Thu Jun 23 00:07:37 2005 -0700 [PATCH] remove non-DISCONTIG use of pgdat->node_mem_map This patch effectively eliminates direct use of pgdat->node_mem_map outside of the DISCONTIG code. On a flat memory system, these fields aren't currently used, neither are they on a sparsemem system. There was also a node_mem_map(nid) macro on many architectures. Its use along with the use of ->node_mem_map itself was not consistent. It has been removed in favor of two new, more explicit, arch-independent macros: pgdat_page_nr(pgdat, pagenr) nid_page_nr(nid, pagenr) I called them "pgdat" and "nid" because we overload the term "node" to mean "NUMA node", "DISCONTIG node" or "pg_data_t" in very confusing ways. I believe the newer names are much clearer. These macros can be overridden in the sparsemem case with a theoretically slower operation using node_start_pfn and pfn_to_page(), instead. We could make this the only behavior if people want, but I don't want to change too much at once. One thing at a time. This patch removes more code than it adds. Compile tested on alpha, alpha discontig, arm, arm-discontig, i386, i386 generic, NUMAQ, Summit, ppc64, ppc64 discontig, and x86_64. Full list here: http://sr71.net/patches/2.6.12/2.6.12-rc1-mhp2/configs/ Boot tested on NUMAQ, x86 SMP and ppc64 power4/5 LPARs. Signed-off-by: Dave Hansen Signed-off-by: Martin J. Bligh Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 29c31a3bf257e0723423f1f0f9afd1b840434c75 Merge: ee98689be1b054897ff17655008c3048fe88be94 b2b3d8247951f298897b395599849957ee271c55 Author: Linus Torvalds Date: Thu Jun 23 09:25:04 2005 -0700 Merge 'misc-fixes' branch of master.kernel.org:/pub/scm/linux/kernel/git/jgarzik/netdev-2.6 commit 55d3b282b90620e02e825304a9433732a84c58a5 Author: Russell King Date: Thu Jun 23 15:05:41 2005 +0100 [PATCH] Serial: Mobility's 16550A ports need a helping hand The Mobility 16550A serial ports don't behave the same as standard 16550A ports, and need a helping hand to get them going once the transmitter has drained and been disabled. Signed-off-by: Russell King commit bc54fd1ad3c5972be339a08528ab631326ed2b38 Author: Dave Airlie Date: Thu Jun 23 22:46:46 2005 +1000 Add missing license texts from Tungsten Graphics. From: Alan Hourihane Signed-off-by: David Airlie commit cfd9e15f78fc6efe88ea8cb0722a731b331cfd80 Author: Dave Airlie Date: Thu Jun 23 22:43:00 2005 +1000 Currently DRM depends on PCI this will need to change for ffb on Sparc to be fixed but at the moment it is true. Signed-off-by: Geert Uytterhoeven Signed-off-by: Dave Airlie commit 9a18664506dbce5e23f3c5de7b1c5a042dd26520 Author: Dave Airlie Date: Thu Jun 23 21:29:18 2005 +1000 drm: 32/64-bit DRM ioctl compatibility patch The patch is against a 2.6.11 kernel tree. I am running this with a 32-bit X server (compiled up from X.org CVS as of a couple of weeks ago) and 32-bit DRI libraries and clients. All the userland stuff is identical to what I am using under a 32-bit kernel on my G4 powerbook (which is a 32-bit machine of course). I haven't tried compiling up a 64-bit X server or clients yet. In the compatibility routines I have assumed that the kernel can safely access user addresses after set_fs(KERNEL_DS). That is, where an ioctl argument structure contains pointers to other structures, and those other structures are already compatible between the 32-bit and 64-bit ABIs (i.e. they only contain things like chars, shorts or ints), I just check the address with access_ok() and then pass it through to the 64-bit ioctl code. I believe this approach may not work on sparc64, but it does work on ppc64 and x86_64 at least. One tricky area which may need to be revisited is the question of how to handle the handles which we pass back to userspace to identify mappings. These handles are generated in the ADDMAP ioctl and then passed in as the offset value to mmap. However, offset values for mmap seem to be generated in other ways as well, particularly for AGP mappings. The approach I have ended up with is to generate a fake 32-bit handle only for _DRM_SHM mappings. The handles for other mappings (AGP, REG, FB) are physical addresses which are already limited to 32 bits, and generating fake handles for them created all sorts of problems in the mmap/nopage code. This patch has been updated to use the new compatibility ioctls. From: Paul Mackerras Signed-off-by: Dave Airlie commit 4ba5e35daa90871fcb9b01f5ad1e5723343cc0a9 Author: Russell King Date: Thu Jun 23 10:43:04 2005 +0100 [PATCH] Serial: Convert 8250 revision-based bug fixes to bug bitmask For some 8250 port types, we used to check the type of the port, and then determine whether the chip revision means the device is buggy. Instead, introduce a bit array, and set the appropriate bit(s) when we discover a buggy device. Signed-off-by: Russell King commit b2b3d8247951f298897b395599849957ee271c55 Author: Mitch Williams Date: Thu Jun 23 03:41:00 2005 -0400 e1000: fix spinlock bug This patch fixes an obvious and nasty bug where we could exit the transmit routine while holding tx_lock. Signed-off-by: Mitch Williams commit d7152fe14cad075d6dd4ee4194acd131aed0244e Author: David Gibson Date: Thu Jun 23 17:14:39 2005 +1000 [PATCH] Maple powerdown patch Currently reset and powerdown are not implemented on the Maple board, and attempting to do so will (incorrectly return). This implements the proper communication with the service processor, allowing correct reset and powerdown on the Maple board, by communicating with the service processor. If somehow it's unable to communicate with the service processor it will loop forever instead. Note that powerdown on the Maple will power down the CPUs, but not the fans or other board components due to hardware and firmware limitations. Signed-off-by: David Gibson Signed-off-by: Frank Rowand Signed-off-by: Paul Mackerras commit dad32bbf43b496bcd32a83f73a1e7fd0a02cfd3e Author: John Rose Date: Thu Jun 23 17:09:54 2005 +1000 [PATCH] pSeries - read irqs dynamically For I/O DLPAR to work properly, the kernel needs to allow for dynamic assignment of the irq field of the pci_dev structure upon dynamic bus addition. This patch moves the assignment of that field from pSeries_final_fixup() to pcibios_fixup_bus(), which enables dynamic assignment for the children of a newly added bus. Currently, pci_devs receive their irq numbers in one of two ways. The irq line is either read at boot for all pci_devs, or read by the rpaphp module at slot enable time. The latter is no longer sufficient for DLPAR addition of slots that don't qualify as PCI-hotplug capable. This solution handles the cases of boot and dynamic add. Signed-off-by: John Rose Signed-off-by: Paul Mackerras commit ee98689be1b054897ff17655008c3048fe88be94 Merge: 060de20e82195d404f7dc6a914685730376fdc80 d377e85b537a5e166272f937da6ba84350676b6e Author: Linus Torvalds Date: Wed Jun 22 23:18:10 2005 -0700 Merge master.kernel.org:/pub/scm/linux/kernel/git/gregkh/driver-2.6 commit 060de20e82195d404f7dc6a914685730376fdc80 Merge: b7c84c6ada2be942eca6722edb2cfaad412cd5de 2c4ee8f907fc4a3c69273a958f853bf4b358eb49 Author: Linus Torvalds Date: Wed Jun 22 23:11:50 2005 -0700 Merge rsync://rsync.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6 commit 8f586b2243198194240626fd9695da5564ffa7ee Author: Mike Strosaker Date: Thu Jun 23 16:09:41 2005 +1000 [PATCH] correct printing to operator panel This patch corrects the printing of progress indicators to the op panel on p/iSeries ppc64 systems. Each discrete reference code should begin with a form feed char to clear the op panel, and the first and second lines should be separated with a CR/LF sequence. Padding with spaces is not necessary. Also, capitalize the hex value printed on the first line, to be consistent with the values printed by firmware, service processor, etc. It turns out that there's an ibm,form-feed property; this patch uses it in the pSeries-specific progress routine. This patch also checks the number of rows and the specific width of each row (the second row on power5 systems can actually hold 80 characters). If the displayed text is too wide for the physical display, it can be viewed in the ASM menus, or by selecting option 14 on the op panel. Signed-off-by: Mike Strosaker Signed-off-by: Paul Mackerras commit d377e85b537a5e166272f937da6ba84350676b6e Author: Greg Kroah-Hartman Date: Wed Jun 22 16:09:05 2005 -0700 [PATCH] driver core: Fix up the device_attach() error handling in bus_add_device() Don't error out if something "bad" happens when trying to bind a driver to a device. We want the sysfs attributes to be present for later when we try to tear down the device. Signed-off-by: Greg Kroah-Hartman commit 479f6ea85e513551510ad52f37e69e1c596ad356 Author: Stelian Pop Date: Wed Jun 22 17:53:28 2005 +0200 [PATCH] USB: fix hid core to return proper error code from probe Drivers need to return -ENODEV when they can't bind to a device. Anything else stops the "bind a device to a driver" search. From: Stelian Pop Signed-off-by: Greg Kroah-Hartman commit 2c4ee8f907fc4a3c69273a958f853bf4b358eb49 Author: Nishanth Aravamudan Date: Wed Jun 22 22:19:52 2005 -0700 [LTPC]: Replace schedule_timeout() with ssleep()/msleep() Use ssleep() / msleep() [as appropriate] instead of schedule_timeout() to guarantee the task delays as expected. Signed-off-by: Nishanth Aravamudan Acked-by: Arnaldo Carvalho de Melo Signed-off-by: Maximilian Attems Signed-off-by: Domen Puncer Signed-off-by: David S. Miller commit ebc3f64b864fc16a594c2e63bf55a55c7d42084b Author: Shaun Pereira Date: Wed Jun 22 22:16:17 2005 -0700 [X25]: Fast select with no restriction on response This patch is a follow up to patch 1 regarding "Selective Sub Address matching with call user data". It allows use of the Fast-Select-Acceptance optional user facility for X.25. This patch just implements fast select with no restriction on response (NRR). What this means (according to ITU-T Recomendation 10/96 section 6.16) is that if in an incoming call packet, the relevant facility bits are set for fast-select-NRR, then the called DTE can issue a direct response to the incoming packet using a call-accepted packet that contains call-user-data. This patch allows such a response. The called DTE can also respond with a clear-request packet that contains call-user-data. However, this feature is currently not implemented by the patch. How is Fast Select Acceptance used? By default, the system does not allow fast select acceptance (as before). To enable a response to fast select acceptance, After a listen socket in created and bound as follows socket(AF_X25, SOCK_SEQPACKET, 0); bind(call_soc, (struct sockaddr *)&locl_addr, sizeof(locl_addr)); but before a listen system call is made, the following ioctl should be used. ioctl(call_soc,SIOCX25CALLACCPTAPPRV); Now the listen system call can be made listen(call_soc, 4); After this, an incoming-call packet will be accepted, but no call-accepted packet will be sent back until the following system call is made on the socket that accepts the call ioctl(vc_soc,SIOCX25SENDCALLACCPT); The network (or cisco xot router used for testing here) will allow the application server's call-user-data in the call-accepted packet, provided the call-request was made with Fast-select NRR. Signed-off-by: Shaun Pereira Signed-off-by: Andrew Morton Signed-off-by: David S. Miller commit cb65d506c34c86df5bcef939ce5a8666a451bd8b Author: Shaun Pereira Date: Wed Jun 22 22:15:01 2005 -0700 [X25]: Selective sub-address matching with call user data. From: Shaun Pereira This is the first (independent of the second) patch of two that I am working on with x25 on linux (tested with xot on a cisco router). Details are as follows. Current state of module: A server using the current implementation (2.6.11.7) of the x25 module will accept a call request/ incoming call packet at the listening x.25 address, from all callers to that address, as long as NO call user data is present in the packet header. If the server needs to choose to accept a particular call request/ incoming call packet arriving at its listening x25 address, then the kernel has to allow a match of call user data present in the call request packet with its own. This is required when multiple servers listen at the same x25 address and device interface. The kernel currently matches ALL call user data, if present. Current Changes: This patch is a follow up to the patch submitted previously by Andrew Hendry, and allows the user to selectively control the number of octets of call user data in the call request packet, that the kernel will match. By default no call user data is matched, even if call user data is present. To allow call user data matching, a cudmatchlength > 0 has to be passed into the kernel after which the passed number of octets will be matched. Otherwise the kernel behavior is exactly as the original implementation. This patch also ensures that as is normally the case, no call user data will be present in the Call accepted / call connected packet sent back to the caller Future Changes on next patch: There are cases however when call user data may be present in the call accepted packet. According to the X.25 recommendation (ITU-T 10/96) section 5.2.3.2 call user data may be present in the call accepted packet provided the fast select facility is used. My next patch will include this fast select utility and the ability to send up to 128 octets call user data in the call accepted packet provided the fast select facility is used. I am currently testing this, again with xot on linux and cisco. Signed-off-by: Shaun Pereira (With a fix from Alexey Dobriyan ) Signed-off-by: Andrew Morton Signed-off-by: David S. Miller commit 68d318720052154bc6b2513b0f15d0d947cc53c9 Author: James Lamanna Date: Wed Jun 22 22:12:57 2005 -0700 [EBTABLES]: vfree() checking cleanups From: jlamanna@gmail.com ebtables.c vfree() checking cleanups. Signed-off by: James Lamanna Signed-off-by: Domen Puncer Signed-off-by: David S. Miller commit 285b3afefacff14bc98e5754b8b48a0a2b42f0df Author: Nishanth Aravamudan Date: Wed Jun 22 22:11:44 2005 -0700 [ATALK] aarp: replace schedule_timeout() with msleep() From: Nishanth Aravamudan Use msleep() instead of schedule_timeout() to guarantee the task delays as expected. The current code is not wrong, but it does not account for early return due to signals, so I think msleep() should be appropriate. Signed-off-by: Nishanth Aravamudan Signed-off-by: Domen Puncer Signed-off-by: David S. Miller commit 7abaa27c1c54208bd76fa8bae55839c034aebfb2 Author: Chuck Short Date: Wed Jun 22 22:10:23 2005 -0700 [IPV4]: Fix route.c gcc4 warnings Signed-off by: Chuck Short Signed-off-by: David S. Miller commit fbeec2e1552949002065435c9829dc244ad85407 Author: Jeff Moyer Date: Wed Jun 22 22:05:59 2005 -0700 [NETPOLL]: allow multiple netpoll_clients to register against one interface This patch provides support for registering multiple netpoll clients to the same network device. Only one of these clients may register an rx_hook, however. In practice, this restriction has not been problematic. It is worth mentioning, though, that the current design can be easily extended to allow for the registration of multiple rx_hooks. The basic idea of the patch is that the rx_np pointer in the netpoll_info structure points to the struct netpoll that has rx_hook filled in. Aside from this one case, there is no need for a pointer from the struct net_device to an individual struct netpoll. A lock is introduced to protect the setting and clearing of the np_rx pointer. The pointer will only be cleared upon netpoll client module removal, and the lock should be uncontested. Signed-off-by: Jeff Moyer Signed-off-by: David S. Miller commit 115c1d6e61b70851d9a363328c3b8d4c2559a1d3 Author: Jeff Moyer Date: Wed Jun 22 22:05:31 2005 -0700 [NETPOLL]: Introduce a netpoll_info struct This patch introduces a netpoll_info structure, which the struct net_device will now point to instead of pointing to a struct netpoll. The reason for this is two-fold: 1) fields such as the rx_flags, poll_owner, and poll_lock should be maintained per net_device, not per netpoll; and 2) this is a first step in providing support for multiple netpoll clients to register against the same net_device. The struct netpoll is now pointed to by the netpoll_info structure. As such, the previous behaviour of the code is preserved. Signed-off-by: Jeff Moyer Signed-off-by: David S. Miller commit 6ca4f65e6b390d09e1de7280cf9fd4f5d8e4b48b Author: Jeff Moyer Date: Wed Jun 22 22:04:55 2005 -0700 [NETPOLL]: Set poll_owner to -1 before unlocking in netpoll_poll_unlock() This trivial patch moves the assignment of poll_owner to -1 inside of the lock. This fixes a potential SMP race in the code. Signed-off-by: Jeff Moyer Signed-off-by: David S. Miller commit b7c84c6ada2be942eca6722edb2cfaad412cd5de Author: Christoph Lameter Date: Wed Jun 22 20:26:07 2005 -0700 [PATCH] boot_pageset must not be freed. The boot_pageset needs to be preserved for hotplugging and for off line processors and nodes. Otherwise pointers will point into memory that has now a different use. /proc/zoneinfo is currently showing strange results if processors / nodes are not present. Signed-off-by: Christoph Lameter Signed-off-by: Linus Torvalds commit ae209cf10086b97e92e39af7cec0f84b21b6fca3 Author: Arnd Bergmann Date: Thu Jun 23 09:43:54 2005 +1000 [PATCH] ppc64: Add driver for BPA iommu Implementation of software load support for the BE iommu. This is very different from other iommu code on ppc64, since we only do a static mapping. The mapping is currently hardcoded but should really be read from the firmware, but they don't set up the device nodes yet. There is a single 512MB DMA window for PCI, USB and ethernet at 0x20000000 for our RAM. The Cell processor can put the I/O page table either in memory like the hashed page table (hardware load) or have the operating system write the entries into memory mapped CPU registers (software load). I use the software load mechanism because I know that all I/O page table entries for the amount of installed physical memory fit into the IO TLB cache. At the point when we get machines with more than 4GB of installed memory, we can either use hardware I/O page table access like the other platforms do or dynamically update the I/O TLB entries when a page fault occurs in the I/O subsystem. The software load can then use the macros that I have implemented for the static mapping in order to do the TLB cache updates. Signed-off-by: Arnd Bergmann Signed-off-by: Paul Mackerras commit cebf589c822b5de87098b57644024d16f8dbc1bb Author: Arnd Bergmann Date: Thu Jun 23 09:43:43 2005 +1000 [PATCH] ppc64: Add driver for BPA interrupt controllers Add support for the integrated interrupt controller on BPA CPUs. There is one of those for each SMT thread. The mapping of interrupt numbers to HW interrupt sources is described in arch/ppc64/kernel/bpa_iic.h. This version hardcodes the 'Spider' chip as the secondary interrupt controller. That is not really generic for the architecture, but at the moment it is the only secondary PIC that exists. A little more work will be needed on this as soon as we have boards with multiple external interrupt controllers. Signed-off-by: Arnd Bergmann Signed-off-by: Paul Mackerras commit fef1c772fa154c16e0a54577e9ecb5480f7b937e Author: Arnd Bergmann Date: Thu Jun 23 09:43:37 2005 +1000 [PATCH] ppc64: add BPA platform type This adds the basic support for running on BPA machines. So far, this is only the IBM workstation, and it will not run on others without a little more generalization. It should be possible to configure a kernel for any combination of CONFIG_PPC_BPA with any of the other multiplatform targets. Signed-off-by: Arnd Bergmann Signed-off-by: Paul Mackerras commit 031f7edecf46d731673a5dd19ecb0de38f1a2219 Author: Utz Bacher Date: Thu Jun 23 09:43:34 2005 +1000 [PATCH] ppc64: add a watchdog driver for rtas Add a watchdog using the RTAS OS surveillance service. This is provided as a simpler alternative to rtasd. The added value is that it works with standard watchdog client programs and can therefore also do user space monitoring. On BPA, rtasd is not really useful because the hardware does not have much to report with event-scan. The driver should also work on other platforms that support the OS surveillance rtas calls. Signed-off-by: Arnd Bergmann Signed-off-by: Paul Mackerras commit 5f5b4e669a59be1cf8fc9d6d04ff1ccad8ab6de0 Author: Utz Bacher Date: Thu Jun 23 09:43:31 2005 +1000 [PATCH] ppc64: add a minimal nvram driver The firmware provides the location and size of the nvram in the device tree, so it does not really contain any hardware specific bits and could be used on other machines as well. Signed-off-by: Arnd Bergmann Signed-off-by: Paul Mackerras commit 6566c6f1f18d42affe73ccdd403e290b64d10473 Author: Arnd Bergmann Date: Thu Jun 23 09:43:28 2005 +1000 [PATCH] ppc64: pSeries_progress -> rtas_progress The pSeries_progress function is called from some places in the rtas code, which may also be used by non-pSeries platforms. Though pSeries is currently the only platform type that implements display-character, the code is actually generic enough to be part of the rtas subsystem. I hit a bug here because the generic rtas code tried calling ppc_md.progress, which points to an __init function on most platforms. We could also clear the ppc_md.progress pointer when freeing the init memory to make it more explicit that ppc_md.progress must not be called after bootup. Signed-off-by: Arnd Bergmann Signed-off-by: Paul Mackerras commit c5a3c2e52af1bcb118022ffac9a0fd1d42d43bd3 Author: Arnd Bergmann Date: Thu Jun 23 09:43:23 2005 +1000 [PATCH] ppc64: Split out generic rtas code from pSeries_pci.c. BPA is using rtas for PCI but should not be confused by pSeries code. This also avoids some #ifdefs. Other platforms that want to use rtas_pci.c could create their own platform_pci.c with platform specific fixups. Signed-off-by: Arnd Bergmann Signed-off-by: Paul Mackerras commit 773bf9c469c01f01280c9bd45ec2462dd94d08a0 Author: Arnd Bergmann Date: Thu Jun 23 09:43:18 2005 +1000 [PATCH] ppc64: rename pSeries rtc functions into rtas_* The rtc rtas functions are not pSeries specific but can also be used by BPA and other SLOF based platforms Signed-off-by: Arnd Bergmann Signed-off-by: Paul Mackerras commit 10f7e7c15e6ce41799c5dba6925ae4bf8048c870 Author: Arnd Bergmann Date: Thu Jun 23 09:43:07 2005 +1000 [PATCH] ppc64: consolidate calibrate_decr implementations pSeries and maple have almost the same code for calibrate_decr, and BPA would need yet another copy. Instead, I'm moving the code to arch/ppc64/kernel/time.c. Some of the related declarations were missing from header files, so I'm moving those as well. It makes sense to merge this with the pmac function of the same name, so we end up having just one implemetation for iSeries and one for Open Firmware based machines. Signed-off-by: Arnd Bergmann Signed-off-by: Paul Mackerras commit a4936044001694f033fe4ea94d6034d51a6b465c Merge: 9092131f7ea2f9e92a510ae13ac4d20165aa921c 92a8cbed29eb9bf6e8eec16ca29d54015bc0e8a2 Author: Linus Torvalds Date: Wed Jun 22 14:51:06 2005 -0700 Merge master.kernel.org:/home/rmk/linux-2.6-arm commit f31f5f051269746179b01017fc5e3dcf6b37c67e Author: Eric Dumazet Date: Wed Jun 22 14:32:51 2005 -0700 [NET]: dont use strlen() but the result from a prior sprintf() Small patch to save an unecessary call to strlen() : sprintf() gave us the length, just trust it. Signed-off-by: Eric Dumazet Signed-off-by: David S. Miller commit 9092131f7ea2f9e92a510ae13ac4d20165aa921c Merge: f1b04770b0d073a9d70e5b3b873d274c1c19e1f6 eadf4598e7ec37a234e70e965bd335860e58bda4 Author: Linus Torvalds Date: Wed Jun 22 14:32:15 2005 -0700 Merge rsync://client.linux-nfs.org/pub/linux/nfs-2.6 commit 92a8cbed29eb9bf6e8eec16ca29d54015bc0e8a2 Author: Russell King Date: Wed Jun 22 21:47:25 2005 +0100 [PATCH] ARM: Remove explicit page-alignments in memory init Since meminfo.bank[] array contains page-aligned start/size, we no longer need to explicitly round up/down the addresses when converting to PFNs. Signed-off-by: Russell King commit 3a66941106855215127f8bf1afd06099b72dc75b Author: Russell King Date: Wed Jun 22 21:43:10 2005 +0100 [PATCH] ARM: Ensure memory information is page aligned Ensure that meminfo.bank[] array contains page-aligned start/size information. Signed-off-by: Russell King commit 6a17944ca12229036a6d8d48be1b5eb51204fcf8 Author: Herbert Xu Date: Wed Jun 22 13:29:03 2005 -0700 [CRYPTO]: Use CPU cycle counters in tcrypt After using this facility for a while to test my changes to the cipher crypt() layer, I realised that I should've listend to Dave and made this thing use CPU cycle counters :) As it is it's too jittery for me to feel safe about relying on the results. So here is a patch to make it use CPU cycles by default but fall back to jiffies if the user specifies a non-zero sec value. Signed-off-by: Herbert Xu Signed-off-by: David S. Miller commit dce907c00ff246a1fbb2b619964753ebc046591d Author: Herbert Xu Date: Wed Jun 22 13:27:51 2005 -0700 [CRYPTO]: Use template keys for speed tests if possible The existing keys used in the speed tests do not pass the 3DES quality check. This patch makes it use the template keys instead. Other algorithms can supply template keys through the same interface if needed. Signed-off-by: Herbert Xu Signed-off-by: David S. Miller commit ebfd9bcf16e4aaddcfe2d1b76b50e3dd6d3242e2 Author: Harald Welte Date: Wed Jun 22 13:27:23 2005 -0700 [CRYPTO]: Add cipher speed tests From: Reyk Floeter I recently had the requirement to do some benchmarking on cryptoapi, and I found reyk's very useful performance test patch [1]. However, I could not find any discussion on why that extension (or something providing a similar feature but different implementation) was not merged into mainline. If there was such a discussion, can someone please point me to the archive[s]? I've now merged the old patch into 2.6.12-rc1, the result can be found attached to this email. [1] http://lists.logix.cz/pipermail/padlock/2004/000010.html Signed-off-by: Harald Welte Signed-off-by: Herbert Xu Signed-off-by: David S. Miller commit 3cc3816f93e3f94f88503da8e6090302fa986bd6 Author: Herbert Xu Date: Wed Jun 22 13:26:36 2005 -0700 [CRYPTO]: Kill unnecessary strncpy from tcrypt It seems that bad code tends to get copied (see test_cipher_speed). So let's kill this idiom before it spreads any further. Signed-off-by: Herbert Xu Signed-off-by: David S. Miller commit ef2736fc741316913a457abd3731053071c86241 Author: Herbert Xu Date: Wed Jun 22 13:26:03 2005 -0700 [CRYPTO]: White space and coding style clean up in tcrypt Signed-off-by: Herbert Xu Signed-off-by: David S. Miller commit b46a58fd4e3cdd107ffccedaa5e233deeb94c5c0 Author: Russell King Date: Wed Jun 22 21:25:58 2005 +0100 [PATCH] ARM: Use list_for_each_entry() for dmabounce Convert dmabounce.c to use list_for_each_entry() instead of list_for_each() + list_entry(). Signed-off-by: Russell King commit f1b04770b0d073a9d70e5b3b873d274c1c19e1f6 Author: Kumar Gala Date: Wed Jun 22 15:10:02 2005 -0500 [PATCH] ppc32: Fix building MPC8555 CDS Adding support for MPC8548 w/o PCI support, broke building MPC8555 CDS by trying to remove a loop variable that was used when PCI is enabled. Signed-off-by: Kumar Gala Signed-off-by: Linus Torvalds Date: Wed Jun 22 17:16:39 2005 +0000 [PATCH] NFS: Add debugging code to NFSv4 readdir Signed-off-by: Trond Myklebust commit 6ebf3656fd18430d90fbb3199b31d08178c37134 Author: Manoj Naik Date: Wed Jun 22 17:16:39 2005 +0000 [PATCH] NFSv4: Map a couple of NFSv4 errors to EINVAL. This shows up on running tar over NFSv4. Signed-off-by: Manoj Naik Signed-off-by: Trond Myklebust commit 97d312d037e63e7c8ac004ffe3072f82a6d45495 Author: Manoj Naik Date: Wed Jun 22 17:16:39 2005 +0000 [PATCH] NFSv4: add support for rdattr_error in NFSv4 readdir requests. Request RDATTR_ERROR as an attribute in readdir to distinguish between a directory being within an absent filesystem or one (or more) of its entries. Signed-off-by: Manoj Naik Signed-off-by: Trond Myklebust commit 8d0a8a9d0ec790086c64d210af413ac351d89e35 Author: Trond Myklebust Date: Wed Jun 22 17:16:32 2005 +0000 [PATCH] NFSv4: Clean up nfs4 lock state accounting Ensure that lock owner structures are not released prematurely. Signed-off-by: Trond Myklebust commit ecdbf769b2cb8903e07cd482334c714d89fd1146 Author: Trond Myklebust Date: Wed Jun 22 17:16:31 2005 +0000 [PATCH] NLM: fix a client-side race on blocking locks. If the lock blocks, the server may send us a GRANTED message that races with the reply to our LOCK request. Make sure that we catch the GRANTED by queueing up our request on the nlm_blocked list before we send off the first LOCK rpc call. Signed-off-by: Trond Myklebust commit 4f15e2b1f4f3a56e46201714b39436c32218d547 Author: Trond Myklebust Date: Wed Jun 22 17:16:31 2005 +0000 [PATCH] NLM: cleanup for blocked locks. Signed-off-by: Trond Myklebust commit 80fec4c62e2cf544ac26e53f3e0d2f73df6820b9 Author: Trond Myklebust Date: Wed Jun 22 17:16:31 2005 +0000 [PATCH] VFS: Ensure that all the on-stack struct file_lock call fl_release_private Signed-off-by: Trond Myklebust commit 3da28eb1c6545fe73263a24eba0996217490e1eb Author: Trond Myklebust Date: Wed Jun 22 17:16:31 2005 +0000 [PATCH] NFS: Replace nfs_page insertion sort with a radix sort Signed-off-by: Trond Myklebust commit c6a556b88adfacd2af90be84357c8165d716c27d Author: Trond Myklebust Date: Wed Jun 22 17:16:30 2005 +0000 [PATCH] NFS: Make searching and waiting on busy writeback requests more efficient. Basically copies the VFS's method for tracking writebacks and applies it to the struct nfs_page. Signed-off-by: Trond Myklebust commit ab0a3dbedc51037f3d2e22ef67717a987b3d15e2 Author: Trond Myklebust Date: Wed Jun 22 17:16:30 2005 +0000 [PATCH] NFS: Write optimization for short files and small O_SYNC writes. Use stable writes if we can see that we are only going to put a single write on the wire. Signed-off-by: Trond Myklebust commit fe51beecc55d0b0dce289e4758e7c529a642f63e Author: Trond Myklebust Date: Wed Jun 22 17:16:30 2005 +0000 [PATCH] NFS: Ensure that fstat() always returns the correct mtime Even if the file is open for writes. Signed-off-by: Trond Myklebust commit 7d52e86274e09fce8ac8f963e3605a84d0a305a7 Author: Trond Myklebust Date: Wed Jun 22 17:16:30 2005 +0000 [PATCH] NFS: Cleanup of caching code, and slight optimization of writes. Unless we're doing O_APPEND writes, we really don't care about revalidating the file length. Just make sure that we catch any page cache invalidations. Signed-off-by: Trond Myklebust commit 951a143b3fcf15cfa9d38250b7462f821db241db Author: Trond Myklebust Date: Wed Jun 22 17:16:30 2005 +0000 [PATCH] NFS: Fix the file size revalidation Instead of looking at whether or not the file is open for writes before we accept to update the length using the server value, we should rather be looking at whether or not we are currently caching any writes. Failure to do so means in particular that we're not updating the file length correctly after obtaining a POSIX or BSD lock. Signed-off-by: Trond Myklebust commit 08e9eac42edab63bce14b5c8419771f3c92aa3f4 Author: Trond Myklebust Date: Wed Jun 22 17:16:29 2005 +0000 [PATCH] NFSv4: Fix up races in nfs4_proc_setattr() If we do not hold a valid stateid that is open for writes, there is little point in doing an extra open of the file, as the RFC does not appear to mandate this... Make setattr use the correct stateid if we're holding mandatory byte range locks. Signed-off-by: Trond Myklebust commit 202b50dc127cf4714ffdcc6a64f1648373f9414f Author: Trond Myklebust Date: Wed Jun 22 17:16:29 2005 +0000 [PATCH] NFSv4: Ensure that propagate NFSv4 state errors to the reclaim code Signed-off-by: Trond Myklebust commit f0dd2136da6d2070e12bfa6d199b136318e666c7 Author: Trond Myklebust Date: Wed Jun 22 17:16:29 2005 +0000 [PATCH] NFS: Clean up readdir changes. Signed-off-by: Trond Myklebust commit 00a926422765064cb28e218d4837411c88bf6a3e Author: Olivier Galibert Date: Wed Jun 22 17:16:29 2005 +0000 [PATCH] NFS: Hide NFS server-generated readdir cookies from userland NFSv3 currently returns the unsigned 64-bit cookie directly to userspace. The following patch causes the kernel to generate loff_t offsets for the benefit of userland. The current server-generated READDIR cookie is cached in the nfs_open_context instead of in filp->f_pos, so we still end up work correctly under directory insertions/deletion. Signed-off-by: Olivier Galibert Signed-off-by: Trond Myklebust commit ae3884621bf5b4caff7785b9a417f262202965b2 Author: Chuck Lever Date: Wed Jun 22 17:16:28 2005 +0000 [PATCH] RPC: kick off socket connect operations faster Make the socket transport kick the event queue to start socket connects immediately. This should improve responsiveness of applications that are sensitive to slow mount operations (like automounters). We are now also careful to cancel the connect worker before destroying the xprt. This eliminates a race where xprt_destroy can finish before the connect worker is even allowed to run. Test-plan: Destructive testing (unplugging the network temporarily). Connectathon with UDP and TCP. Hard-code impossibly small connect timeout. Version: Fri, 29 Apr 2005 15:32:01 -0400 Signed-off-by: Chuck Lever Signed-off-by: Trond Myklebust commit 20e5ac828dfd23b9080159c62a34f32d2dcd92fc Author: Chuck Lever Date: Wed Jun 22 17:16:28 2005 +0000 [PATCH] RPC: TCP reconnects are too slow When the network layer reports a connection close, the RPC task waiting to reconnect should be notified so it can retry immediately instead of waiting for the normal connection establishment timeout. This reverts a change made in 2.6.6 as part of adding client support for RPC over TCP socket idle timeouts. Test-plan: Destructive testing with NFS over TCP mounts. Version: Fri, 29 Apr 2005 15:31:46 -0400 Signed-off-by: Chuck Lever Signed-off-by: Trond Myklebust commit 0f9dc2b16884bb5957d010ed8e9114e771a05916 Author: Trond Myklebust Date: Wed Jun 22 17:16:28 2005 +0000 [PATCH] RPC: Clean up socket autodisconnect Cancel autodisconnect requests inside xprt_transmit() in order to avoid races. Use more efficient del_singleshot_timer_sync() Signed-off-by: Trond Myklebust commit 14b218a8e4f110206c46e586a3da372f665631e7 Author: Trond Myklebust Date: Wed Jun 22 17:16:28 2005 +0000 [PATCH] RPC: Ensure rpc calls respects the RPC_NOINTR flag For internal purposes, the rpc_clnt_sigmask() call is replaced by a call to rpc_task_sigmask(), which ensures that the current task sigmask respects both the client cl_intr flag and the per-task NOINTR flag. Problem noted by Jiaying Zhang. Signed-off-by: Trond Myklebust commit 455a396710b71a743b28da2ed2185e5a9b38e26f Author: Trond Myklebust Date: Wed Jun 22 17:16:28 2005 +0000 [PATCH] NFSv4: Fix an Oops in the callback code. The changeset "trond.myklebust@fys.uio.no|ChangeSet|20050322152404|16979" (RPC: Ensure XDR iovec length is initialized correctly in call_header) causes the NFSv4 callback code to BUG() due to an incorrectly initialized scratch buffer. Signed-off-by: Trond Myklebust commit c56c2750229154f6a1cfee533e0a911da3923b5a Author: Reuben Farrelly Date: Wed Jun 22 17:16:28 2005 +0000 [PATCH] NFSv4: Fix build warning From: Reuben Farrelly With gcc-4.0: fs/nfs/nfs4proc.c:2976: error: static declaration of 'nfs4_file_inode_operations' follows non-static declaration fs/nfs/nfs4_fs.h:179: error: previous declaration of 'nfs4_file_inode_operations' was here Signed-off-by: Andrew Morton Signed-off-by: Trond Myklebust commit 3e9d41543b16e6117267edc0ca058c40f888d81a Author: Andrew Morton Date: Wed Jun 22 17:16:28 2005 +0000 [PATCH] NFSv4: empty array fix Older gcc's don't like this. fs/nfs/nfs4proc.c:2194: field `data' has incomplete type Signed-off-by: Andrew Morton Signed-off-by: Trond Myklebust commit b7ef19560f496fd3942e41e728950e5b5c9a461b Author: Adrian Bunk Date: Wed Jun 22 17:16:28 2005 +0000 [PATCH] NFSv4: fs/nfs/nfs4proc.c: small simplification The Coverity checker noticed that such a simplification was possible. Signed-off-by: Adrian Bunk Signed-off-by: Trond Myklebust commit 213484254c65e3c39c59df454132748b1367f816 Author: Andreas Gruenbacher Date: Wed Jun 22 17:16:28 2005 +0000 [PATCH] fix nfsacl pointer arithmetic and pg_class initialization bugs * Pointer arithmetic bug: p is in word units. This fixes a memory corruption with big acls. * Initialize pg_class to prevent a NULL pointer access. Signed-off-by: Andreas Gruenbacher Signed-off-by: Trond Myklebust commit 458818ed76d3f495f9f32373c936456c9427f759 Author: Trond Myklebust Date: Wed Jun 22 17:16:27 2005 +0000 [PATCH] NFS: Fix up v3 ACL caching code Initialize the inode cache values correctly. Clean up __nfs3_forget_cached_acls() Signed-off-by: Trond Myklebust commit 5c6a9f7d92291c832d47e792ed1fafa44acb066e Author: Andreas Gruenbacher Date: Wed Jun 22 17:16:27 2005 +0000 [PATCH] NFS: Cache the NFSv3 acls. Attach acls to inodes in the icache to avoid unnecessary GETACL RPC round-trips. As long as the client doesn't retrieve any acls itself, only the default acls of exiting directories and the default and access acls of new directories will end up in the cache, which preserves some memory compared to always caching the access and default acl of all files. Signed-off-by: Andreas Gruenbacher Acked-by: Olaf Kirch Signed-off-by: Andrew Morton Signed-off-by: Trond Myklebust commit 055ffbea0596942579b0dae71d5dab78de8135f6 Author: Andreas Gruenbacher Date: Wed Jun 22 17:16:27 2005 +0000 [PATCH] NFS: Fix handling of the umask when an NFSv3 default acl is present. NFSv3 has no concept of a umask on the server side: The client applies the umask locally, and sends the effective permissions to the server. This behavior is wrong when files are created in a directory that has a default ACL. In this case, the umask is supposed to be ignored, and only the default ACL determines the file's effective permissions. Usually its the server's task to conditionally apply the umask. But since the server knows nothing about the umask, we have to do it on the client side. This patch tries to fetch the parent directory's default ACL before creating a new file, computes the appropriate create mode to send to the server, and finally sets the new file's access and default acl appropriately. Many thanks to Buck Huppmann for sending the initial version of this patch, as well as for arguing why we need this change. Signed-off-by: Andreas Gruenbacher Acked-by: Olaf Kirch Signed-off-by: Andrew Morton Signed-off-by: Trond Myklebust commit b7fa0554cf1ba6d6895cd0a5b02989a26e0bc704 Author: Andreas Gruenbacher Date: Wed Jun 22 17:16:27 2005 +0000 [PATCH] NFS: Add support for NFSv3 ACLs This adds acl support fo nfs clients via the NFSACL protocol extension, by implementing the getxattr, listxattr, setxattr, and removexattr iops for the system.posix_acl_access and system.posix_acl_default attributes. This patch implements a dumb version that uses no caching (and thus adds some overhead). (Another patch in this patchset adds caching as well.) Signed-off-by: Andreas Gruenbacher Acked-by: Olaf Kirch Signed-off-by: Andrew Morton Signed-off-by: Trond Myklebust commit a257cdd0e2179630d3201c32ba14d7fcb3c3a055 Author: Andreas Gruenbacher Date: Wed Jun 22 17:16:26 2005 +0000 [PATCH] NFSD: Add server support for NFSv3 ACLs. This adds functions for encoding and decoding POSIX ACLs for the NFSACL protocol extension, and the GETACL and SETACL RPCs. The implementation is compatible with NFSACL in Solaris. Signed-off-by: Andreas Gruenbacher Acked-by: Olaf Kirch Signed-off-by: Andrew Morton Signed-off-by: Trond Myklebust commit 9ba02638e4be28dd4ff724202a640264427c62d1 Author: Andreas Gruenbacher Date: Wed Jun 22 17:16:24 2005 +0000 [PATCH] RPC: Allow the sunrpc server to multiplex serveral programs on a single port The NFS and NFSACL programs run on the same RPC transport. This patch adds support for this by converting svc_program into a chained list of programs (server-side). Signed-off-by: Andreas Gruenbacher Signed-off-by: Olaf Kirch Signed-off-by: Andrew Morton Signed-off-by: Trond Myklebust commit a838cc49d9a7d5652262a6d1b628628cadffa877 Author: Andreas Gruenbacher Date: Wed Jun 22 17:16:24 2005 +0000 [PATCH] NFSD: Add NFS3ERR_NOTSUPP to the nfsd error mapping table Add the missing NFS3ERR_NOTSUPP error code (defined in NFSv3) to the system-to-protocol-error table in nfsd. The nfsacl extension uses this error code. Signed-off-by: Andreas Gruenbacher Signed-off-by: Olaf Kirch Signed-off-by: Andrew Morton Signed-off-by: Trond Myklebust commit bd8100e7eda87507649c6ba4cb32173b34e49986 Author: Andreas Gruenbacher Date: Wed Jun 22 17:16:24 2005 +0000 [PATCH] RPC: Encode and decode arbitrary XDR arrays Signed-off-by: Andreas Gruenbacher Acked-by: Olaf Kirch Signed-off-by: Trond Myklebust commit 7e06b53d796a3740307b54aa2799077f8a0c84e7 Author: Trond Myklebust Date: Wed Jun 22 17:16:24 2005 +0000 [PATCH] RPC: fix accounting bug in the case of a truncated RPC message Signed-off-by: Trond Myklebust commit e053d1ab62c8ef0eff3dd4c95448cad3c6d2fbf4 Author: Olaf Kirch Date: Wed Jun 22 17:16:24 2005 +0000 [PATCH] RPC: Lazy RPC receive buffer allocation Signed-off-by: Olaf Kirch Signed-off-by: Andreas Gruenbacher Signed-off-by: Trond Myklebust commit 007e251f2b2760f738c92adc8c80cbae0bed3ce5 Author: Andreas Gruenbacher Date: Wed Jun 22 17:16:23 2005 +0000 [PATCH] RPC: Allow multiple RPC client programs to share the same transport Signed-off-by: Andreas Gruenbacher Acked-by: Olaf Kirch Signed-off-by: Trond Myklebust commit cdf477068e6db0c3e19df96f46abb85202de138c Author: Andreas Gruenbacher Date: Wed Jun 22 17:16:23 2005 +0000 [PATCH] RPC: Return -EPFNOSUPPORT for RPC programs that are unavailable Signed-off-by: Andreas Gruenbacher Signed-off-by: Olaf Kirch Signed-off-by: Trond Myklebust commit 6a19275ada9137435da58990c8f8d3f58e170bf1 Author: J. Bruce Fields Date: Wed Jun 22 17:16:23 2005 +0000 [PATCH] RPC: [PATCH] improve rpcauthauth_create error returns Currently we return -ENOMEM for every single failure to create a new auth. This is actually accurate for auth_null and auth_unix, but for auth_gss it's a bit confusing. Allow rpcauth_create (and the ->create methods) to return errors. With this patch, the user may sometimes see an EINVAL instead. Whee. Signed-off-by: J. Bruce Fields Signed-off-by: Trond Myklebust commit 438b6fdebf2a2e8573e7290bc176feb4d4475f43 Author: J. Bruce Fields Date: Wed Jun 22 17:16:23 2005 +0000 [PATCH] RPC: Don't fall back from krb5p to krb5i We shouldn't be silently falling back from krb5p to krb5i. Signed-off-by: J. Bruce Fields Signed-off-by: Trond Myklebust commit e50a1c2e1f816c81eed6a589019052cb44189267 Author: J. Bruce Fields Date: Wed Jun 22 17:16:23 2005 +0000 [PATCH] NFSv4: client-side caching NFSv4 ACLs Add nfs4_acl field to the nfs_inode, and use it to cache acls. Only cache acls of size up to a page. Also prepare for up to a page of acl data even when the user doesn't pass in a buffer, as when they want to get the acl length to decide what size buffer to allocate. Signed-off-by: J. Bruce Fields Signed-off-by: Trond Myklebust commit 4b580ee3dc00f9828a9a7aad2724f448fdc94075 Author: J. Bruce Fields Date: Wed Jun 22 17:16:23 2005 +0000 [PATCH] NFSv4: ACL support for the NFSv4 client: write Client-side write support for NFSv4 ACLs. Signed-off-by: J. Bruce Fields Signed-off-by: Trond Myklebust commit 23ec6965c20db96bc8ea7af0ec178f074dd31c40 Author: J. Bruce Fields Date: Wed Jun 22 17:16:22 2005 +0000 [PATCH] NFSv4: Client-side xdr for writing NFSv4 acls Client-side support for NFSv4 acls: xdr encoding and decoding routines for writing acls Signed-off-by: J. Bruce Fields Signed-off-by: Trond Myklebust commit aa1870af92d8f6d6db0883696516a83ff2b695a6 Author: J. Bruce Fields Date: Wed Jun 22 17:16:22 2005 +0000 [PATCH] NFSv4: ACL support for the NFSv4 client: read Client-side support for NFSv4 ACLs. Exports the raw xdr code via the system.nfs4_acl extended attribute. It is up to userspace to decode the acl (and to provide correctly xdr'd acls on setxattr), and to convert to/from POSIX ACLs if desired. This patch provides only the read support. Signed-off-by: J. Bruce Fields Signed-off-by: Trond Myklebust commit 029d105e66e5a90850d5a09dad76815d0bcfcaa3 Author: J. Bruce Fields Date: Wed Jun 22 17:16:22 2005 +0000 [PATCH] NFSv4: Client-side xdr for reading NFSv4 acls Client-side support for NFSv4 acls: xdr encoding and decoding routines for reading acls Signed-off-by: J. Bruce Fields Signed-off-by: Trond Myklebust commit 96928206961be05f22c3839f0097b610cc485b5d Author: J. Bruce Fields Date: Wed Jun 22 17:16:22 2005 +0000 [PATCH] NFSv4: fix fattr size calculations Make nfs4 fattr size calculations more explicit, revising them downward a bit in the process. Signed-off-by: J. Bruce Fields Signed-off-by: Trond Myklebust commit 6b3b5496d7b261d6c9202008dc528e52dbd11e57 Author: J. Bruce Fields Date: Wed Jun 22 17:16:22 2005 +0000 [PATCH] NFSv4: Add {get,set,list}xattr methods for nfs4 Add {get,set,list}xattr methods for nfs4. The new methods are no-ops, to be used by subsequent ACL patch. Signed-off-by: J. Bruce Fields Signed-off-by: Trond Myklebust commit ada70d9425bcc5e376fef8591e4e76e204c0834c Author: Trond Myklebust Date: Wed Jun 22 17:16:22 2005 +0000 [PATCH] NFS: Add hooks to allow common NFS attribute code to clear cached acls Signed-off-by: Trond Myklebust commit 92cfc62cb8412c9563860b1bf70cd4701f03092e Author: J. Bruce Fields Date: Wed Jun 22 17:16:22 2005 +0000 [PATCH] NFS: Allow NFS versions to support different sets of inode operations. ACL support will require supporting additional inode operations in v4 (getxattr, setxattr, listxattr). This patch allows different protocol versions to support different inode operations by adding a file_inode_ops to the nfs_rpc_ops (to match the existing dir_inode_ops). Signed-off-by: J. Bruce Fields Signed-off-by: Trond Myklebust commit 464a98bd70bae8c559cfc82af799faf44824ce64 Author: Trond Myklebust Date: Wed Jun 22 17:16:21 2005 +0000 [PATCH] NFS: cleanup: shrink struct nfs_open_context Remove the wait queue, and replace the functions that depended on it with wait_on_bit(). Signed-off-by: Trond Myklebust commit 96651ab341cde0fee940ec837f323d711cbfa7d5 Author: Trond Myklebust Date: Wed Jun 22 17:16:21 2005 +0000 [PATCH] RPC: Shrink struct rpc_task by switching to wait_on_bit() Signed-off-by: Trond Myklebust commit a656db998785324a818005bcf71bae6dcbbb3cf5 Author: Trond Myklebust Date: Wed Jun 22 17:16:21 2005 +0000 [PATCH] NFS: Remove unused NFS inode field readdir_timestamp. Signed-off-by: Trond Myklebust commit 4ce79717ce32a9f88c1ddce4b9658556cb59d37a Author: Trond Myklebust Date: Wed Jun 22 17:16:21 2005 +0000 [PATCH] NFS: Header file cleanup... - Move NFSv4 state definitions into a private header file. - Clean up gunk in nfs_fs.h Signed-off-by: Trond Myklebust commit 9085bbcb76421a90bea28f4d3d03fa9977319c49 Author: Trond Myklebust Date: Wed Jun 22 17:16:20 2005 +0000 [PATCH] NFS: Kill annoying mount version mismatch printks Ensure that we fix up the missing fields in the nfs_mount_data with sane defaults for older versions of mount, and return errors in the cases where we cannot. Convert a bunch of annoying warnings into dprintks() Return -EPROTONOSUPPORT rather than EIO if mount() tries to set NFSv3 without it actually being compiled in. Signed-off-by: Trond Myklebust commit 5ee0ed7d3ab620a764740fb018f469d45f561931 Author: Trond Myklebust Date: Wed Jun 22 17:16:20 2005 +0000 [PATCH] RPC: Make rpc_create_client() probe server for RPC program+version support Ensure that we don't create an RPC client without checking that the server does indeed support the RPC program + version that we are trying to set up. This enables us to immediately return an error to "mount" if it turns out that the server is only supporting NFSv2, when we requested NFSv3 or NFSv4. Signed-off-by: Trond Myklebust commit 5b616f5d596c0b056129f8aeafbc08409b3cd050 Author: Trond Myklebust Date: Wed Jun 22 17:16:20 2005 +0000 [PATCH] RPC: Make rpc_create_client() destroy the transport on failure. This saves us a couple of lines of cleanup code for each call. Signed-off-by: Trond Myklebust commit 334ccfd545bba9690515f2c5c167d5adb161989b Author: Trond Myklebust Date: Wed Jun 22 17:16:19 2005 +0000 [PATCH] RPC: Ensure XDR iovec length is initialized correctly in call_header Fix up call_header() so that it calls xdr_adjust_iovec(). Fix calculation of the scratch buffer length in xdr_init_encode(). Signed-off-by: Trond Myklebust commit d05fdb0cec75415b2d9eb95748386e67414e49c3 Author: Trond Myklebust Date: Wed Jun 22 17:16:19 2005 +0000 [PATCH] RPC: Fix a race with rpc_restart_call() If the task->tk_exit() wants to restart the RPC call after delaying then the current RPC code will clobber the timer by calling rpc_delete_timer() immediately after re-entering the loop in __rpc_execute(). Problem noticed by Oleg Nesterov Signed-off-by: Trond Myklebust commit bdf042486a01aefaf29d74be1b4526daa70a5f0f Author: Russell King Date: Wed Jun 22 20:58:29 2005 +0100 [PATCH] ARM: Factor out common pmd_populate functionality Both pmd_populate variants set two pmd entries before ensuring that they are flushed from the cache. Separate this functionality into __pmd_populate(). Signed-off-by: Russell King commit dd7f0b80926befc8c70a873b5b0c0c7b5fd1e7b9 Author: Harald Welte Date: Wed Jun 22 12:38:33 2005 -0700 [NETFILTER]: Fix "iptables -D" rule deletion with ipt_CLUSTERIP target. The patch just changes the order of structure members. Signed-off-by: Harald Welte Signed-off-by: David S. Miller commit 5d927eb0101eb791fb2d4f72b49a2da5faf01941 Author: Harald Welte Date: Wed Jun 22 12:37:50 2005 -0700 [NETFILTER]: Fix handling of ICMP packets (RELATED) in ipt_CLUSTERIP target. Signed-off-by: Harald Welte Signed-off-by: David S. Miller commit e00d349e7781a92cf35b242259c9e5341a9661bb Author: Russell King Date: Wed Jun 22 20:26:05 2005 +0100 [PATCH] ARM: Move signal return code into vector page Move the signal return code into the vector page instead of placing it on the user mode stack, which will allow us to avoid flushing the instruction cache on signals, as well as eventually allowing non-exec stack. Signed-off-by: Russell King commit fb7a0e36532bc231bea8adfb1dddc3961eb38940 Merge: 4e93d3e8859c834ee18dfd33051d24df8669d0c0 29516d75a0b09e0a0328dd55c98a342515c9615a Author: Linus Torvalds Date: Wed Jun 22 12:22:12 2005 -0700 Merge kernel.org/pub/scm/linux/kernel/git/aegl/linux-2.6.git Do arch/ia64/defconfig by hand. commit 4e93d3e8859c834ee18dfd33051d24df8669d0c0 Merge: a0cd30fd26a398c0c6e50c6760610d4529f17a84 0087e5ef577d0d6e664be7ab4be513b6a482e7ec Author: Linus Torvalds Date: Wed Jun 22 10:42:54 2005 -0700 Merge master.kernel.org:/pub/scm/linux/kernel/git/gregkh/i2c-2.6 commit a0cd30fd26a398c0c6e50c6760610d4529f17a84 Merge: 94eb7f4cefaf3ed8e97504ce4f3946bdb908e501 e5c515b4532f4aac2b1136612d8c3ecd1891f431 Author: Linus Torvalds Date: Wed Jun 22 10:41:59 2005 -0700 Merge master.kernel.org:/pub/scm/linux/kernel/git/gregkh/w1-2.6 commit 94eb7f4cefaf3ed8e97504ce4f3946bdb908e501 Author: James Morris Date: Wed Jun 22 12:55:42 2005 -0400 [PATCH] Update my credits entry commit b53542073927878b18d642f6bf794adef6d45a18 Author: Kumar Gala Date: Wed Jun 22 09:58:03 2005 -0500 [PATCH] Fix extra double quote in IPV4 Kconfig Kconfig option had an extra double quote at the end of the line which was causing in warning when building. Signed-off-by: Kumar Gala Signed-off-by: Linus Torvalds commit 2b6b22f3815b2937f272d3666bd18665d3f7f5a8 Author: James Courtier-Dutton Date: Sat Jun 18 13:50:22 2005 +0200 [ALSA] emu10k1: Add more card identification entries. EMU10K1/EMU10K2 driver Signed-off-by: James Courtier-Dutton commit b3e28ce98a22a4ecc8101128fe18665ab29d3236 Author: Takashi Iwai Date: Fri Jun 17 11:54:50 2005 +0200 [ALSA] Add dxs_support for Soltek SL-K8Tpro-939 VIA82xx driver Added dxs_support entry for Soltek SL-K8Tpro-939. Signed-off-by: Takashi Iwai commit dabbed6f729d806092851150ca3dd9efe2b64b58 Author: Matt Date: Tue Jun 14 10:19:34 2005 +0200 [ALSA] SigmaTel HDA SPDIF and input mux updates HDA Codec driver Adds SPDIF in/out support to the SigmaTel HDA codecs. Now builds the input mux control element names from the defcfg regs. Signed-off-by: Matt Signed-off-by: Takashi Iwai commit ee3b4c60f452f8e24fe30ae73cb97da1beda0ca2 Author: Takashi Iwai Date: Tue Jun 14 10:18:20 2005 +0200 [ALSA] via82xx - Fix info text about dxs_support option VIA82xx driver Fixed the info text about dxs_support option (suggest dxs_support=5). Signed-off-by: Takashi Iwai commit e9edcee061a80181f0d6e7cada07e1898c14718e Author: Takashi Iwai Date: Mon Jun 13 14:16:38 2005 +0200 [ALSA] hda-codec - More fix of ALC880 codec support Documentation,HDA Codec driver,HDA generic driver,HDA Intel driver - Fix some invalid configurations, typos in the last patch - Make init_verbs chainable, so that different configs can share the same init_verbs - Reorder and clean up the source codes in patch_realtek.c - Add the pin default configuration parser, used commonly in cmedia and realtek patch codes. - Add 'auto' model to ALC880 for auto-configuration from BIOS Use this model as default, and 3-stack as fallback Signed-off-by: Takashi Iwai commit b636a71d9b9525ee51ca872d461817a5bd5c39fd Author: Takashi Iwai Date: Mon Jun 13 14:13:09 2005 +0200 [ALSA] Add const prefix Control Midlevel Add const prefix to snd_kcontrol_new_t pointer for better protection. Signed-off-by: Takashi Iwai commit 16ded525389c31256bcc9fd44352ab799b60b7fc Author: Takashi Iwai Date: Fri Jun 10 19:58:24 2005 +0200 [ALSA] hda-codec - Add support of more models with ALC codecs HDA Codec driver,HDA Intel driver Merged the work of pshou for the support of more models with ALC codecs: ALC880 ASUS, Uniwill, FSC1734, generic 6-stack, and ALC260 HP. Tests with the real hardwares are appreciated. The codec patch is cleaned up: The preset configuration of codecs are stored in the table and copied to the spec instance. Added/fixed comments. Signed-off-by: Takashi Iwai commit 5ecd7022f52872db32eddf85a527064ed7b522a3 Author: Takashi Iwai Date: Fri Jun 10 19:54:23 2005 +0200 [ALSA] hda-codec - Allow sub_device=0 in board config check HDA Codec driver Allow sub_device=0 in board config check. This means that every device with the given sub vendor ID will match. Signed-off-by: Takashi Iwai commit 05acb863a27e7f82d81c422b977415fa80b99f96 Author: Takashi Iwai Date: Fri Jun 10 19:50:25 2005 +0200 [ALSA] hda-codec - Clean up and fix ALC-codec support code HDA Codec driver Clean up and fix ALC-codec support code. The last addition of bound volume is fixed now to handle correctly the bound 'mute switches'. The analog loopback should work better. The init verbs are fixed together with this change. The numbers are replaced with macros for better readability. Signed-off-by: Takashi Iwai commit 4b3acaf5b56f53ef259a6ddf8e17dcb529631d9b Author: Takashi Iwai Date: Fri Jun 10 19:48:10 2005 +0200 [ALSA] hda-codec - Feed front signals to all surrounds HDA Codec driver Feed front signals to all surround channels if no data is given for surround channels. It seems that CLFE works as expected (only center outputs) even if connected from the front line - at least on my test system. If this change causes problems on other system (e.g. only the left channel is transferred to the center channel), please let me know... Signed-off-by: Takashi Iwai commit 3e289f16ec2e08bbb37ce57a31386ed135887da4 Author: Takashi Iwai Date: Fri Jun 10 19:45:09 2005 +0200 [ALSA] hda-codec - Print all AMP IN values HDA generic driver Print all AMP IN values when multiple nodes are connected. Signed-off-by: Takashi Iwai commit 1ccc67d692c52dcc02e70206338ff36ac145a939 Author: Takashi Iwai Date: Wed Jun 8 14:49:31 2005 +0200 [ALSA] Disable MPU401 on SIS7018 Trident driver Disable MPU401 support on SIS7018 since it results in kernel freeze. Signed-off-by: Takashi Iwai commit 41e41f1f3495c6a7443977d2842d6911e3dcf31c Author: Takashi Iwai Date: Wed Jun 8 14:48:49 2005 +0200 [ALSA] Fix the analog loopback volumes of ALC codecs HDA Codec driver Fix the analog loopback volumes of ALC codecs. Signed-off-by: Takashi Iwai commit ead9b7c39984f509dc42d81200109c01a0b689c2 Author: Takashi Iwai Date: Wed Jun 8 14:48:19 2005 +0200 [ALSA] Fix the PCM mixer switch for AD1986A HDA Codec driver Fix the PCM mixer switch for AD1986a (it was a typo). Signed-off-by: Takashi Iwai commit 4a19faee6332fad8f81eaa98cf0e3be15a2366c4 Author: Takashi Iwai Date: Wed Jun 8 14:43:58 2005 +0200 [ALSA] Fix the handling of amp cache in hda-codec HDA Codec driver Fixed the handling of amp cache in hda-codec driver. The confliction of cache values with different indices should be fixed now. Signed-off-by: Takashi Iwai commit 96d078154bca743512102e370a03fb71d56478f5 Author: Jaroslav Kysela Date: Tue Jun 7 08:56:24 2005 +0200 [ALSA] via82xx - fixed entry for Umax AB 595T (VIA K8N800A - VT8237) VIA82xx driver As the original reporter noted, the NO_VRA must be used for loud volumes. Signed-off-by: Jaroslav Kysela commit c82bf829c01079e77286481884eacb229310b4f0 Author: James Courtier-Dutton Date: Sat Jun 4 15:03:06 2005 +0200 [ALSA] ca0106: Fix 96000 Hz audio playback. CA0106 driver Signed-off-by: James Courtier-Dutton commit 5470440a2a1f5e8afe7df306fdbf26e6b1143975 Author: Takashi Iwai Date: Fri Jun 3 11:27:00 2005 +0200 [ALSA] Add documentation for HDSP MADI Documentation Added documentation for HDSP MADI driver by Winfried Ritsch. Signed-off-by: Takashi Iwai commit 763f356cd8de9e158836d236b3fd9dd149d696f9 Author: Takashi Iwai Date: Fri Jun 3 11:25:34 2005 +0200 [ALSA] Add HDSP MADI driver HDSPM driver,PCI drivers,RME9652 driver Added RME Hammerfall DSP MADI driver by Winfried Ritsch. (Moved from alsa-driver tree to mainline.) Signed-off-by: Takashi Iwai commit 375389288ae55754bd7d009a30f2bb0453a5b369 Author: Christoph Schulz Date: Fri Jun 3 08:28:31 2005 +0200 [ALSA] cs4236-irq-handling-fix.patch CS4236+ driver Background: The card/chipset supports an external MIDI interrupt. By default, this interrupt isn't used (because the isapnp mechanism chooses a configuration without an assigned interrupt). If the user wishes to explicitly select an interrupt via the mpu_irq parameter for such a configured device, it doesn't work: The driver always shows: isapnp MPU: port=0x330, irq=-1 (note the 'irq=-1') Problem: The driver only allows to set the irq if pnp_irq_valid returns true for this particular pnp device. This, however, is only true if an interrupt has already been assigned (pnp_valid_irq returns true if the flag IORESOURCE_IRQ is set and IORESOURCE_UNSET is not set). If no interrupt has been assigned so far, IORESOURCE_UNSET is set and pnp_irq_valid returns false, thereby inhibiting the selection of a valid irq. Solution: Don't check for a valid (= already assigned) irq at the point of calling pnp_resource_change. Tested successfully on Linux 2.6.11. Signed-off-by: Andrew Morton Signed-off-by: Jaroslav Kysela commit 5ac0fab95c09497bed24640eb3f09893127d6d65 Author: Jaroslav Kysela Date: Tue May 31 16:59:39 2005 +0200 [ALSA] OSS PCM emulation - The 2nd final fix for SNDCTL_DSP_GETOPTR problem ALSA<-OSS emulation The problem was negative/wrong result (info.bytes) in a specific condition at playback startup. Signed-off-by: Jaroslav Kysela commit 98c7f2121d4263867710df3b5124980e25261188 Author: Takashi Iwai Date: Tue May 31 16:52:58 2005 +0200 [ALSA] Add FSC T3010 quirk Intel8x0 driver Added ac97_quirk for FSC T3010. Signed-off-by: Takashi Iwai commit fb4bd0adc4b5b6538933b098a67851d8f99b5ca3 Author: Jaroslav Kysela Date: Tue May 31 15:44:23 2005 +0200 [ALSA] OSS PCM emulation - The final fix for SNDCTL_DSP_GETOPTR problem ALSA<-OSS emulation The problem was negative result (info.bytes) in a specific condition at playback startup. Signed-off-by: Jaroslav Kysela commit 21cb2a2ec5818cbba01bcb7f24388670322c77f9 Author: Takashi Iwai Date: Tue May 31 14:35:31 2005 +0200 [ALSA] Fix races between PCM drain and other ops PCM Midlevel Fix semaphore races between PCM drain and other ops. Signed-off-by: Takashi Iwai commit ce43fbaececc82196d321671159483b3287de128 Author: Takashi Iwai Date: Mon May 30 20:33:44 2005 +0200 [ALSA] hda-intel - Fix Oops in the error path HDA Intel driver Fixed Oops in the error path from probe function of snd-hda-intel driver. Signed-off-by: Takashi Iwai commit b6a969155b04416185f368bd4e2f1d49b17c1ee1 Author: Takashi Iwai Date: Mon May 30 18:27:03 2005 +0200 [ALSA] Add write support to snd-page-alloc proc file Documentation,Memalloc module,RME HDSP driver,RME9652 driver Add the write support to snd-page-alloc proc file for buffer pre-allocation. Removed the pre-allocation codes via module options. Signed-off-by: Takashi Iwai commit 4d572776d4dfa2d5385a2ec3acec3cc059149e13 Author: Jesper Juhl Date: Mon May 30 17:30:32 2005 +0200 [ALSA] Remove redundant NULL checks before kfree Timer Midlevel,ALSA sequencer,ALSA<-OSS sequencer,Digigram VX core I2C tea6330t,GUS Library,VIA82xx driver,VIA82xx-modem driver CA0106 driver,CS46xx driver,EMU10K1/EMU10K2 driver,YMFPCI driver Digigram VX Pocket driver,Common EMU synth,USB generic driver,USB USX2Y Checking a pointer for NULL before calling kfree() on it is redundant, kfree() deals with NULL pointers just fine. This patch removes such checks from sound/ This patch also makes another, but closely related, change. It avoids casting pointers about to be kfree()'ed. Signed-off-by: Jesper Juhl Signed-off-by: Takashi Iwai commit 6fd8b87f0e1e5de436ba020bd5806fe9ad738269 Author: James Courtier-Dutton Date: Mon May 30 17:20:19 2005 +0200 [ALSA] AC97 - renamed vendor/device to subvendor/subdevice where appropriate Intel8x0 driver To avoid confusion, the structure members vendor/device were renamed to subvendor/subdevice, because we compare them with PCI subsystem vendor and subsystem device. Signed-off-by: James Courtier-Dutton commit 69ad07cf98d0ef65cac67bac2ea4381bb499bea8 Author: Jaroslav Kysela Date: Mon May 30 14:48:16 2005 +0200 [ALSA] AC97 - renamed vendor/device to subvendor/subdevice where appropriate AC97 Codec,ATIIXP driver,VIA82xx driver To avoid confusion, the structure members vendor/device were renamed to subvendor/subdevice, because we compare them with PCI subsystem vendor and subsystem device. Signed-off-by: Jaroslav Kysela commit 745cac56ba6b0222d97a4bf0e347149f20518bf1 Author: Jaroslav Kysela Date: Mon May 30 11:49:05 2005 +0200 [ALSA] via82xx - added 0x1071/0x8399 to while list VIA82xx driver - 0x1071, 0x8399 == VIA_DXS_ENABLE - Umax AB 595T (VIA K8N800A - VT8237) - reporter: Honza Machacek Signed-off-by: Jaroslav Kysela commit 5cbff89cbc1087870c32ecb0b7f1965f93ec5401 Author: Sasha Khapyorsky Date: Mon May 30 08:09:56 2005 +0200 [ALSA] Modem support for ALI5451 ALI5451 driver This patch adds modem support for ali5451. Since it is same pci device all is done in ali5451.c. Signed-off-by: Sasha Khapyorsky Signed-off-by: Jaroslav Kysela commit 299676b1d792ca643f37ff4f3275694a841739b7 Author: Tobias Klauser Date: Sun May 29 15:21:02 2005 +0200 [ALSA] sound/pci/ca0106: Use the DMA_32BIT_MASK constant CA0106 driver Use the DMA_32BIT_MASK constant from dma-mapping.h when calling pci_set_dma_mask() or pci_set_consistent_dma_mask() See http://marc.theaimsgroup.com/?t=108001993000001&r=1&w=2 for details Signed-off-by: Tobias Klauser Signed-off-by: Domen Puncer Signed-off-by: Jaroslav Kysela commit 83a5b72ad7c7cbd0d155d922733b2429f46801bf Author: Sasha Khapyorsky Date: Sun May 29 15:10:07 2005 +0200 [ALSA] PCI modem drivers update ATIIXP-modem driver,Intel8x0-modem driver,VIA82xx-modem driver Modem drivers (atiixp-modem, intel8x0m, via82xx-modem) migration for using MC97 generic modem mixer for off-hook operation. Signed-off-by: Sasha Khapyorsky Signed-off-by: Jaroslav Kysela commit 87d61c290b5de63cc18ed5ec8103e30fe297373e Author: Sasha Khapyorsky Date: Sun May 29 15:08:23 2005 +0200 [ALSA] MC97 modem mixer in sound/pci/ac97 AC97 Codec Simple MC97 modem mixer with two common controls: Off-hook and CID, and Si3056 MC specific control: Modem Speaker. Signed-off-by: Sasha Khapyorsky Signed-off-by: Jaroslav Kysela commit 8fabab15dc64d4aaed0e9dddf3482c128a0347a2 Author: James Courtier-Dutton Date: Sat May 28 16:35:49 2005 +0200 [ALSA] Be more specific with which I2C channel to use. CA0106 driver Signed-off-by: James Courtier-Dutton commit 883130b476e7f8baa608dabe52c455ac351f7c39 Author: James Courtier-Dutton Date: Sat May 28 13:28:21 2005 +0200 [ALSA] Implement S32_LE(24bit) and 96000 capture rates etc. CA0106 driver Signed-off-by: James Courtier-Dutton commit ed144f3cdcf8f9b9280e04ca1a831c85a8fbb488 Author: James Courtier-Dutton Date: Fri May 27 23:28:27 2005 +0200 [ALSA] Add Mic capture support. CA0106 driver Notes: This adds a new mixer item to switch between Mic and Line-in. Signed-off-by: James Courtier-Dutton commit 7199acdc74dc16d2e75f83b8c65301ad19c40ef3 Author: James Courtier-Dutton Date: Fri May 27 22:07:23 2005 +0200 [ALSA] Implement support for Line-in capture on SB Live 24bit. CA0106 driver Notes: MIC capture not tested yet. Signed-off-by: James Courtier-Dutton commit da04b128cf0d74dd4cab270c53d9264e70f9203e Merge: fae6ec69c84d71b1d5bda9ede1a262c1681684aa 2a5a68b840cbab31baab2d9b2e1e6de3b289ae1e Author: Jaroslav Kysela Date: Wed Jun 22 12:19:24 2005 +0200 Merge with rsync://rsync.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git commit 052162198b89e64d37c20238412674152d614997 Author: Russell King Date: Wed Jun 22 09:56:57 2005 +0100 [PATCH] ARM: Allow clps7500 to build without parsing "acorn" tag Signed-off-by: Russell King commit ebe2a9ffa148746bae62d0f7188590a85f29f9ed Author: Russell King Date: Wed Jun 22 09:55:04 2005 +0100 [PATCH] ARM: Allow riscpc to parse "acorn" boot info tag Signed-off-by: Russell King commit 522c37b9d3bc2554264c2d7cbba439571a2043fb Author: Russell King Date: Wed Jun 22 09:52:26 2005 +0100 [PATCH] ARM: Fix sa1111.c build error caused by klist changes Signed-off-by: Russell King commit 0087e5ef577d0d6e664be7ab4be513b6a482e7ec Author: Andrew Morton Date: Mon Jun 20 14:25:45 2005 -0700 [PATCH] I2C: fix ds1374 build Not all architectures implement asm/rtc.h Signed-off-by: Andrew Morton Signed-off-by: Greg Kroah-Hartman commit 7c7a530463ced6011789937b24dc2bfba43c706b Author: Jean Delvare Date: Thu Jun 16 19:24:14 2005 +0200 [PATCH] I2C: w83781d: remove non-i2c sensor chips This patch removes the support for the W83697HF and W83627THF chips from the w83781d driver. These chips have no I2C/SMBus interface and are better supported by the Super-I/O-based w83627hf driver. Documentation was updated to reflect the support drop. Signed-off-by: Grant Coady Signed-off-by: Jean Delvare Signed-off-by: Greg Kroah-Hartman commit a45cfe2cd7450e56b4f44802b34faaf2a78a6cdb Author: Greg KH Date: Thu Jun 9 17:39:09 2005 +0200 [PATCH] I2C: fix up ds1374.c driver so it will build. Signed-off-by: Greg Kroah-Hartman commit bdca3f0aedde85552099aa95ab1449bf81e4f6f5 Author: Randy Vinson Date: Fri Jun 3 14:43:56 2005 -0700 [PATCH] I2C: Add support for Maxim/Dallas DS1374 Real-Time Clock Chip (2/2) This change provides support for the DS1374 Real-Time Clock chip present on the MPC8349ADS board. It depends on a previous patch which adds I2C support for the DS1374. Signed-off-by: Randy Vinson Signed-off-by: Greg Kroah-Hartman commit c124a78d8c7475ecc43f385f34112b638c4228d9 Author: Randy Vinson Date: Fri Jun 3 14:36:06 2005 -0700 [PATCH] I2C: Add support for Maxim/Dallas DS1374 Real-Time Clock Chip (1/2) Add support for Maxim/Dallas DS1374 Real-Time Clock Chip This change adds support for the Maxim/Dallas DS1374 RTC chip. This chip is an I2C-based RTC that maintains a simple 32-bit binary seconds count with battery backup support. Signed-off-by: Randy Vinson Signed-off-by: Greg Kroah-Hartman commit 69dd204b6b45987dbf9ce7058cd238d355865281 Author: bgardner@wabtec.com Date: Tue Jun 7 08:55:38 2005 -0500 [PATCH] I2C: add new pca9539 driver This is an i2c driver for the Philips PCA9539 (16 bit I/O port). It uses the new i2c-sysfs interfaces. The patch includes documentation. It depends on the patch that renames "i2c-sysfs.h" to "hwmon-sysfs.h" Signed-off-by: Ben Gardner Signed-off-by: Greg Kroah-Hartman commit 10c08f8100ee2c4d27b862635574cdf4ef439e67 Author: Jean Delvare Date: Mon Jun 6 19:34:45 2005 +0200 [PATCH] I2C: rename i2c-sysfs.h to hwmon-sysfs.h This patch renames the new linux/i2c-sysfs.h header file to linux/hwmon-sysfs.h. This names seems to be more appropriate since this file defines macros and structures not related to i2c but to hardware monitoring drivers. The patch also updates the five hardware monitoring driver which include that header file already. Signed-off-by: Jean Delvare Signed-off-by: Greg Kroah-Hartman commit c3bc4caedd84ad03360cb9ec04b6c44ab314588b Author: BGardner@Wabtec.com Date: Fri Jun 3 13:03:27 2005 -0400 [PATCH] max6875: new i2c device driver This patch adds support for the MAX6875/MAX6874 chips. Signed-off-by: Ben Gardner Signed-off-by: Greg Kroah-Hartman commit 20ad93d4e5cf5f0616198b5919ee9f304119dd4b Author: Jean Delvare Date: Sun Jun 5 11:53:25 2005 +0200 [PATCH] I2C: drivers/i2c/chips/it87.c: use dynamic sysfs callbacks This patch modifies the it87 hardware monitoring driver to take benefit of the new sysfs callback features introduced by Yani Ioannou, making the code much clearer and the resulting driver significantly smaller. From: Yani Ioannou Signed-off-by: Jean Delvare Signed-off-by: Greg Kroah-Hartman commit bc51ae1159c0c9a34d2400a8449e1fca3ee965b4 Author: Jean Delvare Date: Sun Jun 5 20:32:27 2005 +0200 [PATCH] I2C: lm63 uses new sysfs callbacks I updated the lm63 hardware monitoring driver to take benefit of Yani Ioannou's new sysfs callback capabilities. Signed-off-by: Jean Delvare Signed-off-by: Greg Kroah-Hartman commit 1a86c05121a3f56b4b928ed43f9f8ffc1376d802 Author: Jean Delvare Date: Sun Jun 5 21:16:39 2005 +0200 [PATCH] I2C: lm83 uses new sysfs callbacks I updated the lm83 hardware monitoring driver to take benefit of Yani Ioannou's new sysfs callback capabilities. Signed-off-by: Jean Delvare Signed-off-by: Greg Kroah-Hartman commit 30d7394b1a3df0e7cc145a543846109babd4d53b Author: Jean Delvare Date: Sun Jun 5 21:27:28 2005 +0200 [PATCH] I2C: lm90 uses new sysfs callbacks I updated the lm90 hardware monitoring driver to take benefit of Yani Ioannou's new sysfs callback capabilities. Signed-off-by: Jean Delvare Signed-off-by: Greg Kroah-Hartman commit a0ef14837a2298a4748e2a3e8e206f086dd3b21a Author: Grant Coady Date: Fri Jun 3 10:05:19 2005 +1000 [PATCH] I2C: add adm9240 driver documentation This patch adds adm9240 driver doc, with thanks to Rudolf Marek for review. Signed-off-by: Grant Coady Acked-by: Rudolf Marek Signed-off-by: Greg Kroah-Hartman commit eb071cbbc38efa4b1d707f540de2ec6283ab0894 Author: Jean Delvare Date: Sat Jun 4 13:17:43 2005 +0200 [PATCH] I2C: pcf8574 driver cleanup I found a possible cleanup in the pcf8574 driver. We don't need to store the read value in our private data structure, as we then never use it again. I asked Aurelien and he is fine with the change. Please apply, thanks. Signed-off-by: Jean Delvare Signed-off-by: Greg Kroah-Hartman commit 5d740fe9fefda41292b5cabe70f4f8eff9f8aad0 Author: R.Marek@sh.cvut.cz Date: Sat May 28 11:26:24 2005 +0000 [PATCH] I2C: KConfig update - some EXPERIMENTAL removal Following patch removes EXPERIMENTAL flag from some of I2C bus and chip drivers. It is removed when the driver is in kernel at least from 2.6.3 and I generally think there is no problem with it. Also this patch adds SiS 745 to help option of sis96x and it also fixes nForce2 driver entry to reflect current state. Signed-off-by: Rudolf Marek Signed-off-by: Greg Kroah-Hartman commit 828621dda6381093ceafbe9381b6118cae3f9b13 Author: R.Marek@sh.cvut.cz Date: Thu May 26 12:42:29 2005 +0000 [PATCH] I2C: documentation update 3/3 This patch adds information about available userspace utillities for system health monitoring drivers. Signed-off-by: Rudolf Marek Signed-off-by: Greg Kroah-Hartman commit 7f15b66468b7003d5241e352a007e73be5519b20 Author: R.Marek@sh.cvut.cz Date: Thu May 26 12:42:19 2005 +0000 [PATCH] I2C: documentation update 2/3 This patch adds missing documentation for system health monitoring chips. I would like to thank all people, who helped me with this project. Signed-off-by: Rudolf Marek Signed-off-by: Greg Kroah-Hartman commit 2bf34a1ca9d570dd4fab4d95c4de82d873ecf718 Author: R.Marek@sh.cvut.cz Date: Thu May 26 12:42:11 2005 +0000 [PATCH] I2C: documentation update 1/3 This patch just changes the extension of Documentation/i2c/chips/smsc47b397.txt to none - to conform with naming in i2c subsystem directory. Signed-off-by: Rudolf Marek Signed-off-by: Greg Kroah-Hartman commit 72cd799544f2b36c2f07ceaeed6d984cb130d4f3 Author: David Brownell Date: Tue May 24 17:34:51 2005 -0700 [PATCH] I2C: add i2c driver for TPS6501x This adds an I2C driver for the TPS6501x series of power management chips. It's used on many OMAP based boards, and this driver has been widely used in the Linux-OMAP trees over the last year or so. Signed-off-by: David Brownell Signed-off-by: Greg Kroah-Hartman commit cc0b07ed479fd92806aef7d6dbc58b6dc6da3796 Author: Jean Delvare Date: Sun May 22 09:39:11 2005 +0200 [PATCH] I2C: Sensors mailing list has moved The following patch updates all references to the sensors mailing list, so as to reflect the fact that the list recently moved to a new home and changed addresses. I'll work out a similar patch for Linux 2.4 soon. Signed-off-by: Jean Delvare Signed-off-by: Greg Kroah-Hartman commit 7f02d56e54f2a8afaa01974df650ace9dc15d0cd Author: Sylvain Munaut Date: Wed May 18 19:39:57 2005 +0200 [PATCH] i2c: Race fix for i2c-mpc.c i2c: Race fix for i2c-mpc.c The problem was that the clock speed and driver data is initialized after the i2c adapter was added. This caused the i2c bus to start working at a wrong speed. (Mostly noticable on the second bus on mpc5200) With this patch we've tried to keep the i2c adapter working perfectly all the time it is included in the system. Initialize before added, Remove garbage after deleleted. Submitted-by: Asier Llano Palacios Signed-off-by: Sylvain Munaut Signed-off-by: Kumar Gala Signed-off-by: Greg Kroah-Hartman commit d68a861d857c11a017a8f755fa250afaf8b1bcdb Author: Tobias Klauser Date: Thu May 19 21:41:47 2005 +0200 [PATCH] I2C: Spelling fixes for drivers/i2c/i2c-dev.c This patch fixes a misspelling in a comment section. Signed-off-by: Tobias Klauser Signed-off-by: Greg Kroah-Hartman commit a551acc2cb1f13a9bd728b8cf86f9adafefdcfb2 Author: Tobias Klauser Date: Thu May 19 21:40:38 2005 +0200 [PATCH] I2C: Spelling fixes for drivers/i2c/i2c-core.c This patch fixes a misspelling in a comment section. Signed-off-by: Tobias Klauser Signed-off-by: Greg Kroah-Hartman commit 614e24be139c0ae70378349e6c6f0e21751e56bf Author: Tobias Klauser Date: Thu May 19 21:39:06 2005 +0200 [PATCH] I2C: Spelling fixes for drivers/i2c/busses/i2c-parport.c This patch fixes a double "the" in a comment section. Signed-off-by: Tobias Klauser Signed-off-by: Greg Kroah-Hartman commit 46b615f453202dbcf66452b500ab69c0e2148593 Author: Tobias Klauser Date: Thu May 19 22:27:23 2005 +0200 [PATCH] I2C: Spelling fixes for drivers/i2c/algos/i2c-algo-pca.c This patch fixes the some misspellings and a trailing whitespace in the comments. Signed-off-by: Tobias Klauser Signed-off-by: Greg Kroah-Hartman commit 6f637a6494a1872c613fe68f64ea4831c3e5b037 Author: Greg Kroah-Hartman Date: Tue Jun 21 21:01:59 2005 -0700 [PATCH] I2C: fix up some sysfs device attribute file parameters Signed-off-by: Greg Kroah-Hartman commit 563db2fe9e0843da9d1d85d824f022be0ada4a3c Author: Jean Delvare Date: Tue May 17 22:38:57 2005 +0200 [PATCH] I2C: Kill another macro abuse in via686a This patch kills another macro abuse in the via686a hardware monitoring driver. Using a macro just to alias an array is quite useless, isn't it? Signed-off-by: Jean Delvare Signed-off-by: Greg Kroah-Hartman commit 057923f0f5ba346fc128ae0a1c3842d8c12bd7f0 Author: Jean Delvare Date: Tue May 17 18:09:36 2005 +0200 [PATCH] I2C: chips/Kconfig corrections Here are some corrections for drivers/i2c/chips/Kconfig. Signed-off-by: Alexey Fisher Signed-off-by: Jean Delvare Signed-off-by: Greg Kroah-Hartman commit 6afe15595031bb9801af6207feed0bafc25b6e6b Author: Grant Coady Date: Tue May 17 17:16:02 2005 +1000 [PATCH] I2C: driver adm1021: remove die_code This patch removes die_code from adm1021 as nothing within the driver uses it. Signed-off-by: Grant Coady Signed-off-by: Greg Kroah-Hartman commit be8992c249e42398ee905450688c135ab761674c Author: Jean Delvare Date: Mon May 16 19:00:52 2005 +0200 [PATCH] I2C: Coding style cleanups to via686a The via686a hardware monitoring driver has infamous coding style at the moment. I'd like to clean up the mess before I start working on other changes to this driver. Is the following patch acceptable? No code change, only coding style (indentation, alignments, trailing white space, a few parentheses and a typo). Signed-off-by: Jean Delvare Signed-off-by: Greg Kroah-Hartman commit 68188ba7de2db9999ff08a4544a78b2f10eb08bd Author: Jean Delvare Date: Mon May 16 18:52:38 2005 +0200 [PATCH] I2C: Kill common macro abuse in chip drivers This patch kills a common macro abuse in i2c chip drivers: defining ALARMS_FROM_REG returning its argument unchanged. Dropping the macro makes the code somewhat more readable IMHO. Signed-off-by: Jean Delvare Signed-off-by: Greg Kroah-Hartman commit ff3240946d6a3d9f2ecf273f7330e09eec5484eb Author: Dominik Hackl Date: Mon May 16 18:12:18 2005 +0200 [PATCH] I2C: include of jiffies.h for some i2c drivers This patch includes jiffies.h in two i2c drivers. (jiffies.h is needed for the time_after function.) Signed-off-by: Dominik Hackl Signed-off-by: Greg Kroah-Hartman commit 8e8f9289cc5b781d583d5aed935abf060207bbd3 Author: Grant Coady Date: Fri May 13 20:26:10 2005 +1000 [PATCH] I2C: adm9240 driver cleanup This patch adds an info print of detected VRM stolen from Sebastian Witt's atxp1 sriver. ADM9240 already has vrm accessor removed. Write no-op and whitespace fixes removed :) Couple of comments changed, tested on 2.6.11.9. Signed-off-by: Grant Coady Signed-off-by: Greg Kroah-Hartman commit 937df8df907ce63b0f7e19adf6e3cdef1687fac3 Author: Grant Coady Date: Thu May 12 11:59:29 2005 +1000 [PATCH] I2C: sysfs names: rename to cpu0_vid, take 3 This small patch changes two drivers, adm1025 and adm1026, to report vid as cpu0_vid sysfs name as used by the other drivers. Added duplicated names and six month warning for old names to be removed as requested. Compile tested. Signed-off-by: Grant Coady Signed-off-by: Greg Kroah-Hartman commit abc01922477104e8d72b494902aff37135c409e7 Author: Grant Coady Date: Thu May 12 13:41:51 2005 +1000 [PATCH] I2C: Setting w83627hf fan divisor 128 fails. Jarkko Lavinen provided patch to fix: "couldn't set the divisor 128 through fan1_div sysfs entry even though the chip supports it and setting divisors 1..64 worked. This was due to POWER_TO_REG() only checking 2's powers 0 till 5 but not 6." This patch applies that fix to w83627hf and w83781d drivers. Signed-off-by: Grant Coady Signed-off-by: Greg Kroah-Hartman commit b9826b3ee8faa468a26782e3bf37716a73d96730 Author: Grant Coady Date: Fri May 6 17:40:51 2005 +1000 [PATCH] I2C: remove from via686a In my cross-reference checking of sysfs names, the via686a needs special case treatment as it the only driver expands S_IWUSR to 00200 with gcc -E. (00200 is the correct value for S_IWUSR). This is caused by the driver including , it compiles fine without that header but I am unable to test drive the change. Signed-off-by: Grant Coady Signed-off-by: Greg Kroah-Hartman commit 815f55f280fb2781ba1c2a350516b73e55119c60 Author: Jean Delvare Date: Sat May 7 22:58:46 2005 +0200 [PATCH] I2C: Remove redundancy from i2c-core.c Call i2c_transfer() from i2c_master_send() and i2c_master_recv() to avoid the redundant code that was in all three functions. It also removes unnecessary debug statements as suggested by Jean Delvare. This is important for the non-blocking interfaces because they will have to handle a non-blocking interface in this area. Having it in one place greatly simplifies the changes. Signed-off-by: Corey Minyard Signed-off-by: Jean Delvare Signed-off-by: Greg Kroah-Hartman commit 30aedcb33970367e50b5edf373e9cd1a5cebcbe1 Author: Kumar Gala Date: Tue May 3 18:50:38 2005 -0500 [PATCH] I2C: Allow for sharing of the interrupt line for i2c-mpc.c I2C-MPC: Allow for sharing of the interrupt line On the MPC8548 devices we have multiple I2C-MPC buses however they are on the same interrupt line. Made request_irq pass SA_SHIRQ now so the second bus can register for the same IRQ. Signed-off-by: Kumar Gala Signed-off-by: Greg Kroah-Hartman commit 44bbe87e9017efa050bb1b506c6822f1f3bb94d7 Author: Steven Cole Date: Tue May 3 18:21:25 2005 -0600 [PATCH] Spelling fixes for drivers/i2c. Here are some spelling corrections for drivers/i2c. occured -> occurred intialization -> initialization Everytime -> Every time transfering -> transferring relevent -> relevant continous -> continuous neccessary -> necessary explicitely -> explicitly Celcius -> Celsius differenciate -> differentiate Signed-off-by: Steven Cole Signed-off-by: Greg Kroah-Hartman commit ec5ce552d946a55c1e504054627c9068fb7afb8a Author: Jean Delvare Date: Tue Apr 26 22:09:43 2005 +0200 [PATCH] I2C: Add support for the LPC47M15x and LPC47M192 chips to smsc47m1 This simple patch adds support for the SMSC LPC47M15x and LPC47M192 chips to the smsc47m1 hardware monitoring driver. These chips are compatible with the other ones already supported by the driver, so I see no reason not to support them, especially when the Linux 2.4 version of the driver does already. I also modified the info printks to name the chips by their real name. Signed-off-by: Jean Delvare Signed-off-by: Greg Kroah-Hartman commit b9110b1c893f45ec66ae39e359decdfad84525be Author: Jean Delvare Date: Mon May 2 23:08:22 2005 +0200 [PATCH] I2C: Fix bugs in the new w83627ehf driver These are the fixes for the bug you spotted in my new w83627ehf driver: - Explicit division by 0. Signed-off-by: Jean Delvare Signed-off-by: Greg Kroah-Hartman commit 08e7e2789e0da49eadeb17121e24af22efeee84b Author: Jean Delvare Date: Mon Apr 25 22:43:25 2005 +0200 [PATCH] I2C: New hardware monitoring driver: w83627ehf This is a new hardware monitoring driver, w83627ehf, which supports the Winbond W83627EHF Super-I/O chip. The driver is not complete, but already usable. It only implements fan speed and temperature monitoring, while the chip also supports voltage inputs with VID, PWM output and temperature sensor selection. I have no more time to work on this, but anyone with supported hardware could add the missing functionalities later. This driver is largely derived from the w83627hf driver. Thanks to Leon Moonen and Steve Cliffe for tesing the preliminary versions of my driver and reporting the problems they encountered. Thanks to Grant Coady for noticing and fixing various corner cases in the fan management. This third version of the driver hopefully addresses all the issues the original version had. Signed-off-by: Jean Delvare Signed-off-by: Greg Kroah-Hartman commit 40b5cda28aafe3744d8808c21f7959e472a9ecb1 Author: Grant Coady Date: Sat Apr 30 21:41:29 2005 +1000 [PATCH] I2C: add new hardware monitor driver: adm9240 Completion of Michiel Rook's port of adm9240 to 2.6 with addition of auto fan clock divider based on Jean Delvare's algorithm, and replaces scaling macros with static inlines. Signed-off-by: Grant Coady Signed-off-by: Greg Kroah-Hartman commit a551ef79d9413727f76d22dc47b5b15d1d03073b Author: Jean Delvare Date: Sat Apr 16 18:49:22 2005 +0200 [PATCH] I2C: #include cleanup Hi Alexey, > Files that don't use CONFIG_* stuff shouldn't include config.h > Files that use CONFIG_* stuff should include config.h > > It's that simple. ;-) I agree. This won't change anything though, as all drivers include either device.h or module.h, which in turn include config.h. But you are still correct, so I approve your patch. For completeness, I would propose the following on top of your own patch: i2c bus drivers do not need to define DEBUG themselves, as the Kconfig system takes care of it. Signed-off-by: Jean Delvare Signed-off-by: Greg Kroah-Hartman commit f0bb60e7b1a0a26c25d8cbf81dda7afbc8bd2982 Author: Alexey Dobriyan Date: Sat Apr 16 18:10:02 2005 +0000 [PATCH] I2C: drivers/i2c/*: #include cleanup Files that don't use CONFIG_* stuff shouldn't include config.h Files that use CONFIG_* stuff should include config.h It's that simple. ;-) Signed-off-by: Alexey Dobriyan Signed-off-by: Greg Kroah-Hartman commit da17838c5e7256976c34c5d051dc8fb3c6f364b7 Author: Ladislav Michl Date: Wed May 11 10:32:54 2005 +0200 [PATCH] ds1337: export ds1337_do_command Signed-off-by: Ladislav Michl Signed-off-by: Greg Kroah-Hartman commit 912b9c0c52b95696165e84d67fdab2af81a2213e Author: Ladislav Michl Date: Tue May 10 14:08:04 2005 +0200 [PATCH] ds1337 driver works also with ds1339 chip On Wed, May 04, 2005 at 12:07:11PM +0200, Jean Delvare wrote: > Additionally, I would welcome an additional patch documenting the fact > that the ds1337 driver will work fine with the Dallas DS1339 real-time > clock chip. Document the fact that ds1337 driver works also with DS1339 real-time clock chip. Signed-off-by: Ladislav Michl Signed-off-by: Greg Kroah-Hartman commit 86919833dbeac668762ae7056ead2d35d070f622 Author: Ladislav Michl Date: Wed May 4 08:14:38 2005 +0200 [PATCH] I2C: ds1337: search by bus number Chip is searched by bus number rather than its own proprietary id. Signed-off-by: Ladislav Michl Signed-off-by: James Chapman Signed-off-by: Greg Kroah-Hartman commit 00588243053bb40d0406c7843833f8fae81294ab Author: Ladislav Michl Date: Wed May 4 08:13:54 2005 +0200 [PATCH] I2C: ds1337: i2c_transfer() checking i2c_transfer returns number of sucessfully transfered messages. Change error checking to accordingly. (ds1337_set_datetime never returned sucess) Signed-off-by: Ladislav Michl Signed-off-by: James Chapman Signed-off-by: Greg Kroah-Hartman commit 0b46e334d77b2d3b8b3aa665c81c4afbe9f1f458 Author: Ladislav Michl Date: Wed May 4 08:13:13 2005 +0200 [PATCH] I2C: ds1337: Make time format consistent with other RTC drivers Make time format consistent with other RTC drivers. Signed-off-by: Ladislav Michl Signed-off-by: James Chapman Signed-off-by: Greg Kroah-Hartman commit d01b79d0613ebb6810bb48baf6e53e9319701fea Author: Ladislav Michl Date: Fri Apr 8 15:06:39 2005 +0200 [PATCH] I2C: ds1337 3/4 dev_{dbg,err} functions should print client's device name. data->id can be dropped from message, because device is determined by bus it hangs on (it has fixed address). Signed-off-by: Ladislav Michl Signed-off-by: Greg Kroah-Hartman commit 6069ffde15472da9d041a58df490d388bb175d51 Author: Ladislav Michl Date: Fri Apr 8 15:02:16 2005 +0200 [PATCH] I2C: ds1337 2/4 Use correct macros to convert between bdc and bin. See linux/bcd.h Signed-off-by: Ladislav Michl Signed-off-by: Greg Kroah-Hartman commit 3e9d0ba1305cd7c6efd2ab3a003e58a27da1796b Author: Ladislav Michl Date: Fri Apr 8 15:00:21 2005 +0200 [PATCH] I2C: ds1337 1/4 Use i2c_transfer to send message, so we get proper bus locking. Signed-off-by: Ladislav Michl Signed-off-by: Greg Kroah-Hartman commit 69113efac29e5f1b7a03dd4fdca5ede6901f4eb8 Author: Greg K-H Date: Tue Apr 5 18:00:47 2005 +0200 [PATCH] I2C: mark all functions static in atxp1 driver Signed-off-by: Greg Kroah-Hartman commit 9cb7d18433ea6db04b3999e8d0b8f52fba551c2d Author: Sebastian Witt Date: Wed Apr 13 22:27:53 2005 +0200 [PATCH] I2C: add new atxp1 driver Adds support for the Attansic ATXP1 I2C device, found on some x86 plattforms to change CPU and other voltages. Depends on the previous i2c-vid.h patch. Signed-off-by: Sebastian Witt Signed-off-by: Greg Kroah-Hartman commit 3886246a257e828248ce1e72ced00408a3557f0d Author: Sebastian Witt Date: Wed Apr 13 22:25:39 2005 +0200 [PATCH] I2C: i2c-vid.h: Support for VID to reg conversion Adds conversion from VID (mV) to register value. Used by the atxp1 I2C module. Removed uneeded switch case. Signed-off-by: Sebastian Witt Signed-off-by: Greg Kroah-Hartman commit 792f156d61d327671f58829dc04ad5609152e393 Author: Clemens Koller Date: Mon Apr 11 11:49:14 2005 +0200 [PATCH] I2C: rtc8564.c remove duplicate include [PATCH] I2C rtc8564.c remove duplicate include Trivial fix: removes duplicate include line. Signed-off-by: Clemens Koller Signed-off-by: Greg Kroah-Hartman commit 68cc9d0b714d7d533c0cfc257a62f7f7f4f22a11 Author: Jean Delvare Date: Sat Apr 2 20:04:41 2005 +0200 [PATCH] I2C: Merge unused address lists in some video drivers On top of my previous patch which removes the use of address ranges in video i2c drivers, this one can save an additional few bytes of memory. Most of these drivers which do not use I2C_CLIENT_INSMOD initialize the unused address lists in a less than optimal way. This patch simply optimizes this, by using a single one-element list instead of 3 different lists with two elements each. This saves an average 63 bytes on these drivers. Signed-off-by: Jean Delvare Signed-off-by: Greg Kroah-Hartman diff -ruN linux-2.6.12-rc1-bk5.orig/drivers/media/video/adv7170.c linux-2.6.12-rc1-bk5/drivers/media/video/adv7170.c commit b3d5496ea5915fa4848fe307af9f7097f312e932 Author: Jean Delvare Date: Sat Apr 2 20:31:02 2005 +0200 [PATCH] I2C: Kill address ranges in non-sensors i2c chip drivers Some months ago, you killed the address ranges mechanism from all sensors i2c chip drivers (both the module parameters and the in-code address lists). I think it was a very good move, as the ranges can easily be replaced by individual addresses, and this allowed for significant cleanups in the i2c core (let alone the impressive size shrink for all these drivers). Unfortunately you did not do the same for non-sensors i2c chip drivers. These need the address ranges even less, so we could get rid of the ranges here as well for another significant i2c core cleanup. Here comes a patch which does just that. Since the process is exactly the same as what you did for the other drivers set already, I did not split this one in parts. A documentation update is included. The change saves 308 bytes in the i2c core, and an average 1382 bytes for chip drivers which use I2C_CLIENT_INSMOD, 126 bytes for those which do not. This change is required if we want to merge the sensors and non-sensors i2c code (and we want to do this). Signed-off-by: Jean Delvare Signed-off-by: Greg Kroah-Hartman Index: gregkh-2.6/Documentation/i2c/writing-clients =================================================================== commit e5c515b4532f4aac2b1136612d8c3ecd1891f431 Author: Evgeniy Polyakov Date: Fri Jun 10 14:53:22 2005 +0400 [PATCH] w1: fix compiler warnings Signed-off-by: Evgeniy Polyakov commit 6adf87bd7b7832105b9c6bc08adf6a4d229f1e79 Author: Evgeniy Polyakov Date: Sat Jun 4 01:29:25 2005 +0400 [PATCH] w1: reconnect feature. I've created reconnect feature - if on start there are no registered families all new devices will have defailt family, later when driver for appropriate family is loaded, slaves, which were faound earlier, will still have defult family instead of right one. Reconnect feature will force control thread to run through all master devices and all slaves found and search for slaves with default family id and try to reconnect them. It does not store newly registered family and does not check only those slaves which have reg_num.family the same as being registered one - all slaves with default family are reconnected. Signed-off-by: Evgeniy Polyakov Signed-off-by: Greg Kroah-Hartman commit 4754639d88e922af451b399af09ac1bb442c35e5 Author: Evgeniy Polyakov Date: Sat Jun 4 01:31:47 2005 +0400 [PATCH] w1: Updates the w1 documentation (w1.generic) Updates the w1 documentation (w1.generic) Signed-off-by: Ben Gardner Signed-off-by: Evgeniy Polyakov Signed-off-by: Greg Kroah-Hartman commit 99c5bfe993af1af37ddd615e72207dc7220dc526 Author: Evgeniy Polyakov Date: Sat Jun 4 01:31:26 2005 +0400 [PATCH] w1: Adds a default family so that new slave families will show up in sysfs. Adds a default family so that new slave families will show up in sysfs. Signed-off-by: Ben Gardner Signed-off-by: Evgeniy Polyakov Signed-off-by: Greg Kroah-Hartman commit 2a9d0c178158da4a9bcf22311a414c26a8102d13 Author: Evgeniy Polyakov Date: Sat Jun 4 01:31:02 2005 +0400 [PATCH] w1: Adds a sysfs entry (w1_master_search) that allows you to disable/enable periodic searches. Adds a sysfs entry (w1_master_search) that allows you to disable/enable periodic searches. Signed-off-by: Ben Gardner Signed-off-by: Evgeniy Polyakov Signed-off-by: Greg Kroah-Hartman commit 6b729861831177b270a2932a13e79cb41d673146 Author: Evgeniy Polyakov Date: Sat Jun 4 01:30:43 2005 +0400 [PATCH] w1: Added the triplet w1 master method and changes w1_search() to use it. Adds the triplet w1 master method and changes w1_search() to use it. Signed-off-by: Ben Gardner Signed-off-by: Evgeniy Polyakov Signed-off-by: Greg Kroah-Hartman commit be57ce267fd558c52d2389530c15618681b7cfa7 Author: Evgeniy Polyakov Date: Sat Jun 4 01:21:46 2005 +0400 [PATCH] w1: Cleans up usage of touch_bit/w1_read_bit/w1_write_bit. Cleans up usage of touch_bit/w1_read_bit/w1_write_bit. Signed-off-by: Ben Gardner Signed-off-by: Evgeniy Polyakov Signed-off-by: Greg Kroah-Hartman commit 4e470aa9642d49230bcdfbb393cf5a81da333aba Author: Evgeniy Polyakov Date: Fri May 20 22:50:33 2005 +0400 [PATCH] w1_therm: removed duplicated family id. We can access family id through w1_family structure. Signed-off-by: Evgeniy Polyakov commit c7b2b2a723174d22a743180d5367f0028226031b Author: Greg Kroah-Hartman Date: Tue Jun 21 21:01:59 2005 -0700 [PATCH] w1: fix build issues Signed-off-by: Greg Kroah-Hartman commit ca775c629a366ded01aae69da8410f70aaf85de1 Author: Evgeniy Polyakov Date: Fri May 20 22:49:08 2005 +0400 [PATCH] w1: new family structure. Removed some fields which are not required. First step for writing operations. Now only read and read name remain. Patch depends on w1 cleanups patch. Signed-off-by: Evgeniy Polyakov Signed-off-by: Greg Kroah-Hartman commit 7785925dd8e0d2f389d4a9168f1683c6b249a552 Author: Evgeniy Polyakov Date: Fri May 20 22:33:25 2005 +0400 [PATCH] w1: cleanups. - white space changes. - list_for_each_entry/list_for_each_entry_safe and reverse changes. - small coding style changes. - removed redundant NULL checks. - use attribute group and macros instead of direct device attributes. Patch is havily based on work from Adrian Bunk and Dmitry Torokhov, thanks guys. Signed-off-by: Evgeniy Polyakov Signed-off-by: Greg Kroah-Hartman commit 85e941cc9f10316080a16b121d24d329e5c2a65d Author: Evgeniy Polyakov Date: Mon May 2 14:26:42 2005 +0400 [PATCH] w1_smem: support for new simple rom family [0x81 id]. Support for new simple rom family [0x81 id]. It is the same as existing 0x01 family, which is used in ds9490* w1 adapters. Patch is on top of new-thermal-sensor-families patch. Signed-off-by: Evgeniy Polyakov Signed-off-by: Greg Kroah-Hartman commit 718a538f945a84244a460df434c3f6f04701957b Author: Evgeniy Polyakov Date: Sun Apr 17 22:58:14 2005 +0400 [PATCH] w1_therm: support for ds18b20, ds1822 thermal sensors. Support for ds18b20, ds1822 thermal sensors. Based on code from Tiziano M_ller . Patch is against 2.6.12-rc2 and should be applied without problems on top of any later kernels since w1_therm driver was not changed. Signed-off-by: Evgeniy Polyakov Signed-off-by: Greg Kroah-Hartman commit 2a5a68b840cbab31baab2d9b2e1e6de3b289ae1e Merge: 990a8baf568ca1d0ae65e59783ff821794118d07 e1a40fa907498030b6e432c0dbcb06d7a9f14ee3 Author: Linus Torvalds Date: Tue Jun 21 19:51:18 2005 -0700 Merge rsync://oss.sgi.com/git/xfs-2.6 commit 990a8baf568ca1d0ae65e59783ff821794118d07 Author: Jesper Juhl Date: Tue Jun 21 17:17:30 2005 -0700 [PATCH] md: remove unneeded NULL checks before kfree This patch removes some unneeded checks of pointers being NULL before calling kfree() on them. kfree() handles NULL pointers just fine, checking first is pointless. Signed-off-by: Jesper Juhl Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 8a5e9cf1d6626586ff08e49f400a006a9f0c3275 Author: NeilBrown Date: Tue Jun 21 17:17:29 2005 -0700 [PATCH] md: make sure md/bitmap doesn't try to write a page with active writeback Due to the use of write-behind, it is possible for md to write a page to the bitmap file that is still completing writeback. This is not allowed. With this patch, we detect those cases and either force a sync write, or back off and try later, as appropriate. Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 39730960d94306d7be414e8d54f4e5c071af1278 Author: NeilBrown Date: Tue Jun 21 17:17:28 2005 -0700 [PATCH] Two small fixes for md verion-1 superblocks. 1/ Must typecast int to (sector_t) before inverting or we might not invert enough bits. 2/ When "bitmap_offset" was added to mdp_superblock_1, we didn't increase the count of words-used (96 to 100). Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 7bfa19f2748000d646dbdf8f48258cfe1d257b52 Author: NeilBrown Date: Tue Jun 21 17:17:28 2005 -0700 [PATCH] md: allow md to update multiple superblocks in parallel. currently, md updates all superblocks (one on each device) in series. It waits for one write to complete before starting the next. This isn't a big problem as superblock updates don't happen that often. However it is neater to do it in parallel, and if the drives in the array have gone to "sleep" after a period of idleness, then waking them is parallel is faster (and someone else should be worrying about power drain). Futher, we will need parallel superblock updates for a future patch which keeps the intent-logging bitmap near the superblock. Also remove the silly code that retired superblock updates 100 times. This simply never made sense. Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit a654b9d8f851f4ca02649d5825cbe6c608adb10c Author: NeilBrown Date: Tue Jun 21 17:17:27 2005 -0700 [PATCH] md: allow md intent bitmap to be stored near the superblock. This provides an alternate to storing the bitmap in a separate file. The bitmap can be stored at a given offset from the superblock. Obviously the creator of the array must make sure this doesn't intersect with data.... After is good for version-0.90 superblocks. Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 3d310eb7b3df1252e8595d059d982b0a9825a137 Author: NeilBrown Date: Tue Jun 21 17:17:26 2005 -0700 [PATCH] md: fix deadlock due to md thread processing delayed requests. Before completing a 'write' the md superblock might need to be updated. This is best done by the md_thread. The current code schedules this up and queues the write request for later handling by the md_thread. However some personalities (Raid5/raid6) will deadlock if the md_thread tries to submit requests to its own array. So this patch changes things so the processes submitting the request waits for the superblock to be written and then submits the request itself. This fixes a recently-created deadlock in raid5/raid6 Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 41158c7eb22312cfaa256744e1553bb4042ff085 Author: NeilBrown Date: Tue Jun 21 17:17:25 2005 -0700 [PATCH] md: optimise reconstruction when re-adding a recently failed drive. When an array is degraded, bit in the intent-bitmap are never cleared. So if a recently failed drive is re-added, we only need to reconstruct the block that are still reflected in the bitmap. This patch adds support for this re-adding. Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 289e99e8ed8f36e386bf7de49947311c17ae1482 Author: NeilBrown Date: Tue Jun 21 17:17:24 2005 -0700 [PATCH] md: initialise sync_blocks in raid1 resync Otherwise it could have a random value and might BUG. This fixes a BUG during resync problem in raid1 introduced by the bitmap-based-intent-loggin patches. Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit ab7a30c7051ee32d0d72415fe0a16d60eba38a0d Author: NeilBrown Date: Tue Jun 21 17:17:23 2005 -0700 [PATCH] md: fix bug when raid1 attempts a partial reconstruct. The logic here is wrong. if fullsync is 0, it WILL BUG. Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 191ea9b2c7cc3ebbe0678834ab710d7d95ad3f9a Author: NeilBrown Date: Tue Jun 21 17:17:23 2005 -0700 [PATCH] md: raid1 support for bitmap intent logging Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit aa3163f81654fa057039258e32a6811147bf0c14 Author: NeilBrown Date: Tue Jun 21 17:17:22 2005 -0700 [PATCH] md: don't skip bitmap pages due to lack of bit that we just cleared. When looking for pages that need cleaning we skip pages that don't have BITMAP_PAGE_CLEAN set. But if it is the 'current' page we will have cleared that bit ourselves, so skipping it is wrong. So: move the 'skip this page' inside 'if page != lastpage'. Also fold call of file_page_offset into the one place where the value (bit) is used. Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 77ad4bc706fe6c52ab953f31c287a6af712d080c Author: NeilBrown Date: Tue Jun 21 17:17:21 2005 -0700 [PATCH] md: enable the bitmap write-back daemon and wait for it. Currently we don't wait for updates to the bitmap to be flushed to disk properly. The infrastructure all there, but it isn't being used.... A separate kernel thread (bitmap_writeback_daemon) is needed to wait for each page as we cannot get callbacks when a page write completes. Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit bfb39fba4e8cdda091f9ebee29fbb8331c4bb605 Author: NeilBrown Date: Tue Jun 21 17:17:20 2005 -0700 [PATCH] md: check return value of write_page, rather than ignore it Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit a2cff26ad18a8794722fb0d3c019d93e14fce3f1 Author: NeilBrown Date: Tue Jun 21 17:17:20 2005 -0700 [PATCH] md: improve debug-printing of bitmap superblock. - report sync_size properly - need /2 to convert sectors to KB - move everything over 2 spaces to allow proper spelling of "events cleared". Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit fc7ca163a448dfb23f44c9a47ebc8cbe52cf49df Author: akpm@osdl.org Date: Tue Jun 21 17:17:19 2005 -0700 [PATCH] md printk fix A u64 is not an unsigned long long. On power4 it is `long', and printk warns. Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit cdbb4cc2e5c30895709163d8544057db21ee23e0 Author: NeilBrown Date: Tue Jun 21 17:17:18 2005 -0700 [PATCH] md: make sure md bitmap is cleared on a clean start. As the array-wide clean bit (in the superblock) is set more agressively than the bits in the bitmap are cleared, it is possible to have an array which is clean despite there being bits set in the bitmap. These bits will currently never get cleared, as they can only be cleared by a resync pass, which never happens. No, when reading bits from disk, be aware of whether the whole array is known to be in sync, and act accordingly. Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit bc7f77de2cd81718dd789a2cfe68a7cf1b48f016 Author: NeilBrown Date: Tue Jun 21 17:17:17 2005 -0700 [PATCH] md: minor code rearrangement in bitmap_init_from_disk Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit d80a138c013f81c1b9383c83983934e34e380a2d Author: NeilBrown Date: Tue Jun 21 17:17:17 2005 -0700 [PATCH] md: print correct pid for newly created bitmap-writeback-daemon. The debugging message printed the wrong pid, which didn't help remove bugs.... Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 5f40402d96cb21df912e5bbb3fffa5e1afc81e98 Author: NeilBrown Date: Tue Jun 21 17:17:16 2005 -0700 [PATCH] md: call bitmap_daemon_work regularly bitmap_daemon_work clears bits in the bitmap for blocks that haven't been written to for a while. It needs to be called regularly to make sure the bitmap doesn't endup full of ones .... but it wasn't. So call it from the increasingly-inaptly-named md_check_recovery Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 78d742d876bdf7263d0d966fbe9593559fd904a7 Author: NeilBrown Date: Tue Jun 21 17:17:15 2005 -0700 [PATCH] md: a couple of tidyups relating to the bitmap file. 1/ When init from disk, it is a BUG if there is nowhere to init from, 2/ use seq_path to print path in /proc/mdstat Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 32a7627cf3a35396a8e834faf34e38ae9f3b1309 Author: NeilBrown Date: Tue Jun 21 17:17:14 2005 -0700 [PATCH] md: optimised resync using Bitmap based intent logging With this patch, the intent to write to some block in the array can be logged to a bitmap file. Each bit represents some number of sectors and is set before any update happens, and only cleared when all writes relating to all sectors are complete. After an unclean shutdown, information in this bitmap can be used to optimise resync - only sectors which could be out-of-sync need to be updated. Also if a drive is removed and then added back into an array, the recovery can make use of the bitmap to optimise reconstruction. This is not implemented in this patch. Currently the bitmap is stored in a file which must (obviously) be stored on a separate device. The patch only provided infrastructure. It does not update any personalities to bitmap intent logging. Md arrays can still be used with no bitmap file. This patch has minimal impact on such arrays. Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 57afd89f98a990747445f01c458ecae64263b2f8 Author: NeilBrown Date: Tue Jun 21 17:17:13 2005 -0700 [PATCH] md: improve the interface to sync_request 1/ change the return value (which is number-of-sectors synced) from 'int' to 'sector_t'. The number of sectors is usually easily small enough to fit in an int, but if resync needs to abort, it may want to return the total number of remaining sectors, which could be large. Also errors cannot be returned as negative numbers now, so use 0 instead 2/ Add a 'skipped' return parameter to allow the array to report that it skipped the sectors. This allows md to take this into account in the speed calculations. Currently there is no important skipping, but the bitmap-based-resync that is coming will use this. Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 06d91a5fe0b50c9060e70bdf7786f8a3c66249db Author: NeilBrown Date: Tue Jun 21 17:17:12 2005 -0700 [PATCH] md: improve locking on 'safemode' and move superblock writes When md marks the superblock dirty before a write, it calls generic_make_request (to write the superblock) from within generic_make_request (to write the first dirty block), which could cause problems later. With this patch, the superblock write is always done by the helper thread, and write request are delayed until that write completes. Also, the locking around marking the array dirty and writing the superblock is improved to avoid possible races. Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit fca4d848f0e6fafdc2b25f8a0cf1e76935f13ac2 Author: NeilBrown Date: Tue Jun 21 17:17:11 2005 -0700 [PATCH] md: merge md_enter_safemode into md_check_recovery md_enter_safemode checks if it is time to mark the md superblock as 'clean'. i.e. if all writes have completed and a suitable delay has passed. This is currently called from md_handle_safemode which in-turn is called (almost) every time md_check_recovery is called, and from the end of md_do_sync which causes the mddev->thread to run, which will always call md_check_recovery as well. So it doesn't need to be a separate function and fits quite well into md_check_recovery. The "almost" is because multipathd calls md_check_recovery but not md_handle_safemode. This is OK because the code from md_enter_safemode is a no-op if mddev->safemode == 0, which it always is for a multipathd (providing we don't allow it to be set to 2 on a signal...) Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit c361777fb9347a4d16b82272f7d3b234e94bef2d Author: NeilBrown Date: Tue Jun 21 17:17:10 2005 -0700 [PATCH] md: make sure recovery happens when add_new_disk is used for hot_add Currently if add_new_disk is used to hot-add a drive to a degraded array, recovery doesn't start ... because we didn't tell it to. Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 6ea9c07c6c6d1c14d9757dd8470dc4c85bbe9f28 Author: NeilBrown Date: Tue Jun 21 17:17:09 2005 -0700 [PATCH] md: cause md/raid1 to "repack" working devices when number of drives is changed i.e. missing or failed drives are moved to the end of the list. The means a 3 drive md array with the first drive missing can be shrunk to a two drive array. Currently that isn't possible. Also, the "last_used" device number might be out-of-range after the number of devices is reduced, so we set it to 0. Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 58a606431a704b5c240c1429a5526fac81c9800a Author: James Simmons Date: Tue Jun 21 17:17:08 2005 -0700 [PATCH] fbdev: fill in the access_align field. Several drivers miss filling in the access_align field. So this patch has them fill it in. Signed-off-by: James Simmons Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit f1ab5dac251bb4514607918b0019a3b3f5f5fb48 Author: James Simmons Date: Tue Jun 21 17:17:07 2005 -0700 [PATCH] fbdev: stack reduction Shrink the stack when calling the drawing alignment functions. Signed-off-by: James Simmons Cc: "Antonino A. Daplas" Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 303b86d9913eca0cbfc3c5cb41e7006f6e13b755 Author: Jurriaan Date: Tue Jun 21 17:17:06 2005 -0700 [PATCH] New framebuffer fonts + updated 12x22 font available Improve the fonts for use with the framebuffer. I've added all the characters marked 'FIXME' in the sun12x22 font and created a 10x18 font (based on the sun12x22 font) and a 7x14 font (based on the vga8x16 font). This patch is non-intrusive, no options are enabled by default so most users won't notice a thing. I am placing my changes under the GPL, however, I've not seen any copyright notices on the sun12x22 font and the vga8x16 font which I derived my new fonts from so I don't know what the copyright status is. Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit d5881eb4883ef7dd28a4dcea237714817c4b2f8e Author: James Simmons Date: Tue Jun 21 17:17:05 2005 -0700 [PATCH] fbdev: new pci id for chipsfb Patch adds pci ID for CT 69000 chipset. Signed-off-by: James Simmons Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 1154ea7dcd8eed758fb5ec47393a79d5a1f0bc43 Author: Jaya Kumar Date: Tue Jun 21 17:17:04 2005 -0700 [PATCH] Framebuffer driver for Arc LCD board Add support for the Arc monochrome LCD board. The board uses KS108 controllers to drive individual 64x64 LCD matrices. The board can be paneled in a variety of setups such as 2x1=128x64, 4x4=256x256 and so on. The board/host interface is through GPIO. Signed-off-by: Jaya Kumar Cc: "Antonino A. Daplas" Cc: Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 4ff45f515144d232c83bf55c53f54deecb750296 Author: Sylvain Meyer Date: Tue Jun 21 17:17:03 2005 -0700 [PATCH] intelfb documentation Add a small documentation of the driver parameters. Signed-off-by: Sylvain Meyer Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit df529338d9c5d9329e503955795c89472e1ba6e6 Author: Sylvain Meyer Date: Tue Jun 21 17:17:02 2005 -0700 [PATCH] intelfb: fix accel detection when changing video modes Changed the tests in intelfb_set_par to check also the parameter var.accel_flags. If null, do nothing about ring buffers. Now, the DirectFB i830 driver could nicely work even if intelfb is hw accelerated. Just change the /etc/fb.modes file to disable console hw acceleration when starting a DirectFB app. Signed-off-by: Sylvain Meyer Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 27aef2d49f9d82c58e65d72abcd636168ec19ac9 Author: Sylvain Meyer Date: Tue Jun 21 17:17:01 2005 -0700 [PATCH] intelfb: Add voffset option to avoid conficts with Xorg i810 driver - Add voffset option to avoid conficts with Xorg i810 driver Signed-off-by: Sylvain Meyer Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit f18cd8f7053a1e6755d1c1396884b2bfa1577e54 Author: James Simmons Date: Tue Jun 21 17:17:00 2005 -0700 [PATCH] VGA to fbcon fix. Currently when going from vgacon to fbcon the VT screenbuffer are often different sizes. In the case when they are different sizes a new VT screenbuffer is allocated and the contents are copied into the new buffer. Currently the amount copied from VGA text memory to the new screenbuf is the size of the framebuffer console. If the framebuffer console new VT screen buffer is greater than the VGA text memory size then we get some of the VGA BIOS contents as well. This patch will only allow you to copy up to the size of VGA text memory now. The rest is filled with erase characters. Initial patch by Jordan Crouse Signed-off-by: James Simmons Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 8d7f085342ddf20194b6e00c42b80968f15104db Author: Alexey Dobriyan Date: Tue Jun 21 17:16:59 2005 -0700 [PATCH] pm3fb typo fix Signed-off-by: Alexey Dobriyan Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit f5a9951c94e7a285a3d00648e3d790a7f016bd11 Author: James Simmons Date: Tue Jun 21 17:16:58 2005 -0700 [PATCH] fbdev: iomove removal Since no one is using the inbuf, outbuf of struct fb_pixmap I removed their use in the framebuffer console. The idea is instead move the pixmap functionality below the accelerated functions intead of on top as the way it is now. If there is no objection please apply. This is against Linus latestr GIT tree. Thank you. Signed-off-by: James Simmons Cc: "Antonino A. Daplas" Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 5a3b5899f190a365eed806302f4b58a493233f96 Author: Andrew Morton Date: Tue Jun 21 17:16:57 2005 -0700 [PATCH] intelfbdrv naming fix Can't use this fancy name, because it's used to generate a sysfs filename: kobject_register failed for Intel(R) 830M/845G/852GM/855GM/865G/915G Framebuffer Driver (-13) [] kobject_register+0x43/0x70 [] bus_add_driver+0x52/0xa0 [] pci_device_shutdown+0x0/0x20 [] pci_register_driver+0x61/0x80 [] intelfb_init+0x59/0x70 [] do_initcalls+0x2c/0xc0 [] kern_mount+0x15/0x17 [] init+0x0/0x100 [] init+0x2a/0x100 [] kernel_thread_helper+0x0/0x18 [] kernel_thread_helper+0x5/0x18 Cc: "Antonino A. Daplas" Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 78c03717c415d81879e4dac2e452d1a0d3738a80 Author: Gerd Knorr Date: Tue Jun 21 17:16:56 2005 -0700 [PATCH] some vesafb fixes Fix the size passed to release_mem_region in an error path. Also adjust the message printed when vesafb cannot load; the comment there already says this must not be fatal, so the message should also not mention the word 'abort' otherwise indicating a problem to worry about in the log. Signed-off-by: Jan Beulich Signed-off-by: Gerd Knorr Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 27f931dac93057bbae691f66a49b11ff2f483bee Author: Andrew Morton Date: Tue Jun 21 17:16:55 2005 -0700 [PATCH] s1d13xxxfb linkage fix s1d13xxxfb_remove() is referenced from s1d13xxxfb_probe(), which is marked __devinit(). So s1d13xxxfb_remove() cannot be marked __devexit. Does this all make sense? Clearly the __devexit section will still be in core when the __devinit code is run, if the driver was loaded as a module. But I suppose that if the driver is statically linked, the __devexit section might be dropped early in boot. Still, we wouldn't drop __devexit prior to initcall completion, at which point the __devinit code has all been run anyway. verdict: this code was legal and made sense. Is this a generic problem, or an arm-specific problem? UPD include/linux/compile.h CC init/version.o LD init/built-in.o LD .tmp_vmlinux1 `.exit.text' referenced in section `.init.text' of drivers/built-in.o: defined in discarded section `.exit.text' of drivers/built-in.o Cc: Russell King Cc: Rusty Russell Cc: Greg KH Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit e6afbe59710f65d92d00de1f3adb5514ef634110 Author: Keenan Pepper Date: Tue Jun 21 17:16:54 2005 -0700 [PATCH] Bring back Tux on Chips 65550 framebuffer I don't see any reason why the framebuffer should need to be cleared, and it makes Tux vanish. Cc: Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 9769f4eb3fad2dd53a5d24c81ee5f7f05450742b Author: Jeremy White Date: Tue Jun 21 17:16:53 2005 -0700 [PATCH] isofs: show hidden files, add granularity for assoc/hidden files flags The current isofs treatment of hidden files is flawed in two ways. First, it does not provide sufficient granularity; it hides both 'hidden' files and 'associated' files (resource fork for Mac files). Second, the default behavior to completely strip hidden files, while an admirable implementation of the spec, is a poor choice given the real world use of hidden files as a poor mans copy protection scheme for MSDOS and Windows based systems. A longer description of this is available here: http://www.uwsg.iu.edu/hypermail/linux/kernel/0205.3/0267.html This patch was originally built after a few private conversations with Alan Cox; I shamefully failed to persist in seeing it go forward, I hope to make amends now. This patch introduces granularity by allowing explicit control for both hidden and associated files. It also reverses the default so that by default, hidden files are treated as regular files on the iso9660 file system. This allow Wine to process Windows CDs, including those that are hybrid Mac/Windows CDs properly and completely, without our having to go muck up peoples fstabs as we do now. (I have tested this with such a hybrid + hidden CD and have verified that this patch works as claimed). Signed-off-by: Jeremy White Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit f2966632a134e865db3c819346a1dc7d96e05309 Author: Andrew Morton Date: Tue Jun 21 17:16:51 2005 -0700 [PATCH] rock: handle directory overflows Handle the case where the variable-sized part of a rock-ridge directory entry overhangs the end of the buffer which we allocated for it. Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 642217c17b9a56c7e4cf48f6a13dfd5e4a4c2e10 Author: Andrew Morton Date: Tue Jun 21 17:16:51 2005 -0700 [PATCH] rock: rename union members The silly thing does: struct foo { ... }; ... #define foo 42 so you can no longer refer to `struct foo' in C code. Rename the structures. Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit e595447e177b39aa6c96baaa57b30cde2d8b9df7 Author: Andrew Morton Date: Tue Jun 21 17:16:50 2005 -0700 [PATCH] rock.c: handle corrupted directories The bug in rock.c is that it's totally trusting of the contents of the directories. If the directory says there's a continuation 10000 bytes into this 4k block then we cheerily poke around in memory we don't own and oops. So change rock_continue() to apply various sanity checks, at least ensuring that the offset+length remain within the bounds for the header part of a struct rock_ridge directory entry. Note that the kernel can still overindex the buffer due to the variable size of the rock-ridge directory entries. We cannot check that in rock_continue() unless we go parse the directory entry's signature and work out its size. Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 9eb7f2c67c41d2cd730aedcd23e5baca09211d03 Author: Andrew Morton Date: Tue Jun 21 17:16:49 2005 -0700 [PATCH] isofs: remove debug stuff isofs/inode.c: - Remove some crufty leak detection code - coding style cleanups - kfree(NULL) is permitted. Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit a089221c5e8a5ae8d74a919c8c7a4d2f68bd59e5 Author: Andrew Morton Date: Tue Jun 21 17:16:48 2005 -0700 [PATCH] rock: lindent rock.h So we have a couple of rock-ridge bugs. First up, rotoroot the poor thing into something which it is possible to work on. Feed rock.h through Lindent, tidy a couple of things by hand. Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 7373909de403d229979842081c63917452e39402 Author: Andrew Morton Date: Tue Jun 21 17:16:47 2005 -0700 [PATCH] rock: comment tidies Be a bit more standard in comment layout. Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit ba40aaf04314ec5efd090e69518033fc55f450fa Author: Andrew Morton Date: Tue Jun 21 17:16:46 2005 -0700 [PATCH] rock: remove MAYBE_CONTINUE - remove the MAYBE_CONTINUE macro - kfree(NULL) is OK. Signed-off-by: Adrian Bunk Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 76ab07ebc3ca69e2f14ccbed0de3a9dda9adc6da Author: Andrew Morton Date: Tue Jun 21 17:16:46 2005 -0700 [PATCH] rock: remove SETUP_ROCK_RIDGE - Remove the SETUP_ROCK_RIDGE macro. - In rock_ridge_symlink_readpage(), rename raw_inode to raw_de. It points at a directory entry, not an inode. Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 04f7aa9c7dc615c690cede9a80c83625ad2efef7 Author: Andrew Morton Date: Tue Jun 21 17:16:45 2005 -0700 [PATCH] rock: remove CHECK_CE Remove the CHECK_CE macro Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit a40ea8f22e59c038ffdf219251a67311b9f6e362 Author: Andrew Morton Date: Tue Jun 21 17:16:44 2005 -0700 [PATCH] rock: remove CONTINUE_DECLS Remove the CONTINUE_DECLS macro. Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 12121714fbf36023d5892034d0c97df54a451543 Author: Andrew Morton Date: Tue Jun 21 17:16:44 2005 -0700 [PATCH] rock: remove CHECK_SP Remove the CHECK_SP macro. Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 7fa393a1d3d9485e428a3c74b5599190c14b13db Author: Andrew Morton Date: Tue Jun 21 17:16:43 2005 -0700 [PATCH] rock: manual tidies Fix stuff which Lindent got wrong, rework a few deeply-nested blocks. Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 1d372116383f79e42a3eb010c7d6ec3dd28767b3 Author: Andrew Morton Date: Tue Jun 21 17:16:42 2005 -0700 [PATCH] rock: lindent it Trying to turn rock.c into something which humans can read so we can fix some bugs. Start out by feeding it through scripts/Lindent. Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 8a96619145840c6eb50d85759f72d9337db411f7 Author: Ian Kent Date: Tue Jun 21 17:16:41 2005 -0700 [PATCH] autofs4: subversion bump to identify these changes Signed-off-by: Ian Kent Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 1684b2bba6972749bc9acee57585acd6c78050b2 Author: Ian Kent Date: Tue Jun 21 17:16:41 2005 -0700 [PATCH] autofs4: bad lookup fix For browsable autofs maps, a mount request that arrives at the same time an expire is happening can fail to perform the needed mount. This happens becuase the directory exists and so the revalidate succeeds when we need it to fail so that lookup is called on the same dentry to do the mount. Instead lookup is called on the next path component which should be whithin the mount, but the parent isn't mounted. The solution is to allow the revalidate to continue and perform the mount as no directory creation (at mount time) is needed for browsable mount entries. Signed-off-by: Ian Kent Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit cc9acc885819696c0ed00f4f0f0cda0c7583f116 Author: Ian Kent Date: Tue Jun 21 17:16:39 2005 -0700 [PATCH] autofs4: post expire race fix At the tail end of an expire it's possible for a process to enter autofs4_wait, with a waitq type of NFY_NONE but find that the expire is finished. In this cause autofs4_wait will try to create a new wait but not notify the daemon leading to a hang. As the wait type is meant to delay mount requests from revalidate or lookup during an expire and the expire is done all we need to do is check if the dentry is a mountpoint. If it's not then we're done. Signed-off-by: Ian Kent Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 9b1e3afd6d56937ced3914971621d0f053ea9178 Author: Ian Kent Date: Tue Jun 21 17:16:38 2005 -0700 [PATCH] autofs4: avoid panic on bind mount of autofs owned directory While this is not a solution to bind and move mounts on autofs owned directories it is necessary to fix the trady error handling. At least it avoids the kernel panic I observed checking out bug #4589. Signed-off-by: Ian Kent Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 8818760512424f60ad9fafb7a087b007a9274eb3 Author: Max Asbock Date: Tue Jun 21 17:16:36 2005 -0700 [PATCH] ibmasm driver: fix race in command refcount logic This patch fixes a race in the command reference counting logic by putting spinlocks around kobject_put() in the command_put function. - Also added debug messages. - Changed a memcpy to memcpy_fromio since we are reading from io space. Signed-off-by: Max Asbock Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 278d72ae8803ffcd16070c95fe1d53f4466dc741 Author: Max Asbock Date: Tue Jun 21 17:16:34 2005 -0700 [PATCH] ibmasm driver: redesign handling of remote control events This patch rewrites the handling of remote control events. Rather than making them available from a special file in the ibmasmfs, now the events from the RSA card get translated into kernel input events and injected into the input subsystem. The driver now will generate two /dev/input/eventX nodes -- one for the keyboard and one for the mouse. The mouse node generates absolute events more like a touch pad than a mouse. Signed-off-by: Vernon Mauery Signed-off-by: Max Asbock Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit b8acb808468a88a188d7c5aba3681c583a5785f9 Author: Max Asbock Date: Tue Jun 21 17:16:33 2005 -0700 [PATCH] ibmasm driver: correctly wake up sleeping threads Due to my incomplete understanding of the wait_event_interruptible() function threads waiting for service processor events were not woken up. This patch fixes that problem. Signed-off-by: Max Asbock Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit f5ccc842318efcd7c05dee3203dfdbbafae47bd6 Author: Max Asbock Date: Tue Jun 21 17:16:32 2005 -0700 [PATCH] ibmasm driver: fix command buffer size First of a series of patches for the ibmasm driver. (that is the driver for the IBM xSeries RSA service processor) To summarize what they do: [1] change a #define for the buffer size for commands [2] Fix a bug where threads in the event handling code calling wait_event_interruptible() weren't woken up as expected. [3] Redesigned how remote mouse and keyboard events received by the driver are handled. [4] Fixed a race in the command reference counting logic. This patch: - change a #define for the buffer size for commands Signed-off-by: Max Asbock Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 2b071886170df456e230c38a3e504da4a11fff79 Author: Heiko Carstens Date: Tue Jun 21 17:16:31 2005 -0700 [PATCH] s390: pending interrupt after ipl from reader Wait for interrupt and clear status pending after resetting the reader. Signed-off-by: Martin Schwidefsky Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit e9b9a04796eade5241452a913ec6f3433437b4f5 Author: Heiko Carstens Date: Tue Jun 21 17:16:30 2005 -0700 [PATCH] s390: memory detection > 32GB The kernel takes a very long time to boot if the memory size is bigger then 32767 MB. The memory size is contained in a structure created by an sclp call. The kernel accesses the field with a LH instrution which performs a sign extension of a 16 bit word. In the case of a memory size with bit 2^15 set this results in a very large value and the memory detection just loops for a long time. In addition if more then 64 GB are used on a 64 bit system the memory size is read from an incorrect storage location. Use zero-extention to read the 16 bit memory size and the correct offset to read the 4 byte memory size on 64 bit. Signed-off-by: Martin Schwidefsky Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 447570cfde680d5bf09c47b9c8d1dcf5bcb18f10 Author: Heiko Carstens Date: Tue Jun 21 17:16:29 2005 -0700 [PATCH] s390: cmm sender parameter visibility Make cmm module parameter "sender" visible in sysfs. Signed-off-by: Martin Schwidefsky Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 77eb65cbc18d86a9c334964ed4c3d178f5560918 Author: Heiko Carstens Date: Tue Jun 21 17:16:28 2005 -0700 [PATCH] s390: kernel stack overflow panic die() doesn't return, therefore print registers and then panic instead. Signed-off-by: Martin Schwidefsky Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 14651c798a2a4d15ccc53d064df28bfd0283bad6 Author: Martin Schwidefsky Date: Tue Jun 21 17:16:28 2005 -0700 [PATCH] s390: #ifdefs in compat_ioctls Remove superflous #if .. #endif pairs from compat_ioctl.c. Signed-off-by: Martin Schwidefsky Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 6fd6e4a44ff9ff406bcff69050b508f186507df1 Author: Cornelia Huck Date: Tue Jun 21 17:16:27 2005 -0700 [PATCH] s390: cio documentation Some clarifications in the cio documentation. Signed-off-by: Martin Schwidefsky Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 5bdfcfcc0780f58b927a164dfd54d1e1b6767347 Author: Cornelia Huck Date: Tue Jun 21 17:16:26 2005 -0700 [PATCH] s390: cio max channels checks Fix max channel check in cio_ignore display function. Signed-off-by: Martin Schwidefsky Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 60b2737de1b1ddfdb90f3ba622634eb49d6f3603 Author: Paolo 'Blaisorblade' Giarrusso Date: Tue Jun 21 17:16:25 2005 -0700 [PATCH] uml: fix linkage of tt mode against NPTL With Al Viro To make sure switcheroo() can execute when we remap all the executable image, we used a trick to make it use a local copy of errno... this trick does not work with NPTL glibc, only with LinuxThreads, so use another (simpler) one to make it work anyway. Hopefully, a lot improved thanks to merging with the version of Al Viro (which had his part of problems, though, i.e. removing a fix to another bug and not fixing the problem on i386). Signed-off-by: Paolo 'Blaisorblade' Giarrusso Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit b77d6adc922b8bbf8b16b67f567958c42962cf88 Author: Paolo 'Blaisorblade' Giarrusso Date: Tue Jun 21 17:16:24 2005 -0700 [PATCH] uml: make hw_controller_type->release exist only for archs needing it With Chris Wedgwood As suggested by Chris, we can make the "just added" method ->release conditional to UML only (better: to archs requesting it, i.e. only UML currently), so that other archs don't get this unneeded crud, and if UML won't need it any more we can kill this. Signed-off-by: Paolo 'Blaisorblade' Giarrusso CC: Ingo Molnar Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit faec1e99ba9ca7371d9aee1656938373133c4b21 Author: Paolo 'Blaisorblade' Giarrusso Date: Tue Jun 21 17:16:21 2005 -0700 [PATCH] uml: complete hw_controller_type->release conversion This occurrence of free_irq_by_irq_and_dev() was missed when converting UML to the use of hw_controller_type->release. Signed-off-by: Paolo 'Blaisorblade' Giarrusso Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit dbce706e2550253c5ab6043f4f5dfde0cd02470f Author: Paolo 'Blaisorblade' Giarrusso Date: Tue Jun 21 17:16:19 2005 -0700 [PATCH] uml: add and use generic hw_controller_type->release With Chris Wedgwood Currently UML must explicitly call the UML-specific free_irq_by_irq_and_dev() for each free_irq call it's done. This is needed because ->shutdown and/or ->disable are only called when the last "action" for that irq is removed. Instead, for UML shared IRQs (UML IRQs are very often, if not always, shared), for each dev_id some setup is done, which must be cleared on the release of that fd. For instance, for each open console a new instance (i.e. new dev_id) of the same IRQ is requested(). Exactly, a fd is stored in an array (pollfds), which is after read by a host thread and passed to poll(). Each event registered by poll() triggers an interrupt. So, for each free_irq() we must remove the corresponding host fd from the table, which we do via this -release() method. In this patch we add an appropriate hook for this, and remove all uses of it by pointing the hook to the said procedure; this is safe to do since the said procedure. Also some cosmetic improvements are included. This is heavily based on some work by Chris Wedgwood, which however didn't get the patch merged for something I'd call a "misunderstanding" (the need for this patch wasn't cleanly explained, thus adding the generic hook was felt as undesirable). Signed-off-by: Paolo 'Blaisorblade' Giarrusso CC: Ingo Molnar Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 5757b284a300e0e5d2173750906625b6470bd9f0 Author: Hirokazu Takata Date: Tue Jun 21 17:16:17 2005 -0700 [PATCH] m32r: Use asm-generic/div64.h The current include/asm-m32r/div64.h of 2.6.12-rc5 looks buggy. Here is a patch for updating it to use asm-generic/div64.h for m32r like other architectures. Signed-off-by: Hitoshi Yamamoto Signed-off-by: Hirokazu Takata Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 960c2a89a051333d2e6793a416d9a33c4b116b41 Author: Hirokazu Takata Date: Tue Jun 21 17:16:16 2005 -0700 [PATCH] m32r: Update defconfig files Signed-off-by: Hirokazu Takata Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 0adbb44a146d6dff3f74ea7a9d3826f8942ed709 Author: Hirokazu Takata Date: Tue Jun 21 17:16:16 2005 -0700 [PATCH] m32r: Remove include/asm-m32r/m32102peri.h This patch removes an obsolete header file include/asm-m32r/m32102peri.h. In this header, there are some undesirable single character types, like V. And the header is almost no longer used. Signed-off-by: Hayato Fujiwara Signed-off-by: Hirokazu Takata Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 1cc1265e9a8579be0029cd675ec22a6151893e04 Author: Hirokazu Takata Date: Tue Jun 21 17:16:15 2005 -0700 [PATCH] m32r: Cleanup arch/m32r/mm/extable.c Signed-off-by: Hirokazu Takata Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 934bb7f88eb398f62314fa63ba72ac6dcd21192a Author: Hirokazu Takata Date: Tue Jun 21 17:16:14 2005 -0700 [PATCH] m32r: Update m32r_cfc.[ch] to support Mappi-III platform This patch is for the M32R CF/PCMCIA drivers to support a new platform, Mappi-III evaluation board. Signed-off-by: Mamoru Sakugawa Signed-off-by: Hirokazu Takata Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 6f973b001a9b511900fb73d816adf77d8755838c Author: Hirokazu Takata Date: Tue Jun 21 17:16:13 2005 -0700 [PATCH] m32r: Update setup_xxxxx.c Change coding styles of hw_interrupt_type struct's initialization portions. Signed-off-by: Hirokazu Takata Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 2368086344c3d67b0f4aecac39d620fb9b8795c3 Author: Hirokazu Takata Date: Tue Jun 21 17:16:10 2005 -0700 [PATCH] m32r: Support M3A-2170(Mappi-III) platform This patchset is for supporting a new m32r platform, M3A-2170(Mappi-III) evaluation board. An M32R chip multiprocessor is equipped on the board. http://http://www.linux-m32r.org/eng/platform/platform.html * arch/m32r/Kconfig: Support Mappi-III platform. * arch/m32r/kernel/Makefile: ditto. * arch/m32r/kernel/io_mappi3.c: ditto. * arch/m32r/kernel/setup.c: ditto. * arch/m32r/kernel/setup_mappi3.c: ditto. * include/asm-m32r/m32102.h: ditto. * include/asm-m32r/m32r.h: ditto. * include/asm-m32r/mappi3/mappi3_pld.h: ditto. * include/asm-m32r/ide.h: CF support for Mappi-III. * arch/m32r/kernel/setup_mappi3.c: ditto. * arch/m32r/mappi3/defconfig.smp: A default config file for Mappi-III. * arch/m32r/mappi3/dot.gdbinit: A default .gdbinit file for Mappi-III. * arch/m32r/boot/compressed/m32r_sio.c: Modified for Mappi-III - At boot time, m32r-g00ff bootloader makes MMU off for Mappi-III, on the contrary it makes MMU on for Mappi-II. * arch/m32r/kernel/io_mappi2.c: Update comments. * arch/m32r/kernel/setup_mappi2.c: ditto. Signed-off-by: Mamoru Sakugawa Signed-off-by: Hirokazu Takata Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit d4c477ca5448f19afaaf6c0cfd655009ea9e614d Author: Brent Casavant Date: Tue Jun 21 17:16:01 2005 -0700 [PATCH] ioc4: PCI bus speed detection Several hardware features of SGI's IOC4 I/O controller chip require timing-related driver calculations dependent upon the PCI bus speed. This patch enables the core IOC4 driver code to detect the actual bus speed and store a value that can later be used by the IOC4 subdrivers as needed. Signed-off-by: Brent Casavant Acked-by: Pat Gefre Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit e5d310b349b2cbcc0dab31139c92201f332695bb Author: Brent Casavant Date: Tue Jun 21 17:16:01 2005 -0700 [PATCH] ioc4: CONFIG split The SGI IOC4 I/O controller chip drivers are currently all configured by CONFIG_BLK_DEV_SGIIOC4. This is undesirable as not all IOC4 hardware features are needed by all systems. This patch adds two configuration variables, CONFIG_SGI_IOC4 for core IOC4 driver support (see patch 1/3 in this series for further explanation) and CONFIG_SERIAL_SGI_IOC4 to independently enable serial port support. Signed-off-by: Brent Casavant Acked-by: Pat Gefre Acked-by: Jeremy Higdon Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 22329b511a97557b293583194037d1f4c71e1504 Author: Brent Casavant Date: Tue Jun 21 17:15:59 2005 -0700 [PATCH] ioc4: Core driver rewrite This series of patches reworks the configuration and internal structure of the SGI IOC4 I/O controller device drivers. These changes are motivated by several factors: - The IOC4 chip PCI resources are of mixed use between functions (i.e. multiple functions are handled in the same address range, sometimes within the same register), muddling resource ownership and initialization issues. Centralizing this ownership in a core driver is desirable. - The IOC4 chip implements multiple functions (serial, IDE, others not yet implemented in the mainline kernel) but is not a multifunction PCI device. In order to properly handle device addition and removal as well as module insertion and deletion, an intermediary IOC4-specific driver layer is needed to handle these operations cleanly. - All IOC4 drivers are currently enabled by a single CONFIG value. As not all systems need all IOC4 functions, it is desireable to enable these drivers independently. - The current IOC4 core driver will trigger loading of all function-level drivers, as it makes direct calls to them. This situation should be reversed (i.e. function-level drivers cause loading of core driver) in order to maintain a clear and least-surprise driver loading model. - IOC4 hardware design necessitates some driver-level dependency on the PCI bus clock speed. Current code assumes a 66MHz bus, but the speed should be autodetected and appropriate compensation taken. This patch series effects the above changes by a newly and better designed IOC4 core driver with which the function-level drivers can register and deregister themselves upon module insertion/removal. By tracking these modules, device addition/removal is also handled properly. PCI resource management and ownership issues are centralized in this core driver, and IOC4-wide configuration actions such as bus speed detection are also handled in this core driver. This patch: The SGI IOC4 I/O controller chip implements multiple functions, though it is not a multi-function PCI device. Additionally, various PCI resources of the IOC4 are shared by multiple hardware functions, and thus resource ownership by driver is not clearly delineated. Due to the current driver design, all core and subordinate drivers must be loaded, or none, which is undesirable if not all IOC4 hardware features are being used. This patch reorganizes the IOC4 drivers so that the core driver provides a subdriver registration service. Through appropriate callbacks the subdrivers can now handle device addition and removal, as well as module insertion and deletion (though the IOC4 IDE driver requires further work before module deletion will work). The core driver now takes care of allocating PCI resources and data which must be shared between subdrivers, to clearly delineate module ownership of these items. Signed-off-by: Brent Casavant Acked-by: Pat Gefre Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit e400bae98499583767da58fb0a1b9ad3e24fcb86 Author: Yoichi Yuasa Date: Tue Jun 21 17:15:56 2005 -0700 [PATCH] mips: add vr41xx gpio support Add vr41xx gpio support. Signed-off-by: Yoichi Yuasa Cc: Ralf Baechle Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 9b843cda193c56f5e12fedeaf95e0126b706d57b Author: Anton Blanchard Date: Tue Jun 21 17:15:55 2005 -0700 [PATCH] ppc64: set/clear SMT capable bit at boot Allow the SMT bit to be set/reset at boot, like the ALTIVEC bit. This means we will enable SMT on unknown cpus that support it. Signed-off-by: Anton Blanchard Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 515bae9cdc6a78eda0879e1f158056d73ec808b7 Author: Anton Blanchard Date: Tue Jun 21 17:15:55 2005 -0700 [PATCH] ppc64: Mark kernel hptes dirty We dont use the hardware referenced and changed bits and setting them early avoids a store to memory. We already do this for userspace hptes but not kernel ones. Do it. Signed-off-by: Anton Blanchard Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit ac5b33c9bcf1c05ae949b026a51d7f8f9573591c Author: Stephen Rothwell Date: Tue Jun 21 17:15:54 2005 -0700 [PATCH] ppc64: tidy up vio devices fake parent Currently we dynamically allocate the fake parent device for all devices on the vio bus. This patch statically allocates it. This also allows us to reuse it for the iSeries "generic" vio device (that is used for passing to dma routines when communicating with the hypervisor without a device involved). Also unexport vio_bus_type as it is never used in modules. Signed-off-by: Stephen Rothwell Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 145d01e4287b8cbf50f87c3283e33bf5c84e8468 Author: Stephen Rothwell Date: Tue Jun 21 17:15:52 2005 -0700 [PATCH] ppc64 iSeries: allow build with no PCI This patch allows iSeries to build with CONFIG_PCI=n. This is useful for partitions that have only virtual I/O. Signed-off-by: Stephen Rothwell Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 7f74e79fe749da035cc150446f02aec29938a5c8 Author: Stephen Rothwell Date: Tue Jun 21 17:15:51 2005 -0700 [PATCH] ppc64 iSeries: tidy up irq code after merge This patch just removes some dead code, fixes messages that referred to the file this code used to be in and inserts XmPciLpEvent_init into its caller. Signed-off-by: Stephen Rothwell Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 89ef68f0be53df6c4f1552fc329fe5abb1d5ed33 Author: Stephen Rothwell Date: Tue Jun 21 17:15:50 2005 -0700 [PATCH] ppc64 iSeries: remove XmPciLpEvent.c This patch just merges XmPciLpEvent.c into iSeries_irq.c (the only caller of its only external function). XmPciLpEvent.c just contained the lowlevel iSeries irq code. Signed-off-by: Stephen Rothwell Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 0c3b4f1a8e06584d8a1051a74ed79cf8b41f703e Author: Stephen Rothwell Date: Tue Jun 21 17:15:49 2005 -0700 [PATCH] ppc64 iSeries: irq simple cleanups This patch is just simple cleanups to the iSeries irq code. - whitespace and comments - rearrange some functions to avoid forward declarations - remove XmPciLpEvent.h as its functions were declared elsewhere - remove decaration of function that no longer exists No semantic changes. Signed-off-by: Stephen Rothwell Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 061c063efce96b33f9e26d5f83a8eb0643fa493c Author: Stephen Rothwell Date: Tue Jun 21 17:15:48 2005 -0700 [PATCH] ppc64 iSeries: remove some more members of iSeries_Device_Node The AgentId, PhbId, FrameId, CardLocation and Location members of iSeries_Device_Node are stored early in the boot process just so that a message about the device can be printed later in the boot process. Remove them and construct the message by doing the VPD parsing at the time the message is printed. Also remove a few unused defines in iSeries_VpdInfo.c. Signed-off-by: Stephen Rothwell Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit a2ebaf250fabc5c5644b707dbee44c9e0ec442e9 Author: Stephen Rothwell Date: Tue Jun 21 17:15:47 2005 -0700 [PATCH] ppc64 iSeries: remove IoRetry from iSeries_Device_Node The IoRetry member of iSeries_Devide_Node is really only used locally, so remove it and replace it with a local variable. Signed-off-by: Stephen Rothwell Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit aab41dea80b1b00e66533af096f797320be05f13 Author: Stephen Rothwell Date: Tue Jun 21 17:15:46 2005 -0700 [PATCH] ppc64 iSeries: iSeries_pci.h cleanups Remove no longer used things from iSeries_pci.h. Signed-off-by: Stephen Rothwell Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 57ca86d4f0e44f81be10bc77a5d0e26760e4844f Author: Stephen Rothwell Date: Tue Jun 21 17:15:45 2005 -0700 [PATCH] ppc64 iSeries: iSeries_VpdInfo.c cleanups Clean up iSeries_VpdInfo.c: - white space and comment fixes - make a function static - the functions here are only called from iSeries_pci.c, so CONFIG_PCI will be set (so remove check) - only build when CONFIG_PCI is set - remove unneeded includes and cast Signed-off-by: Stephen Rothwell Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit e7eb22d201936fb3450fa5d1d30cbf2de2fb918b Author: Stephen Rothwell Date: Tue Jun 21 17:15:44 2005 -0700 [PATCH] ppc64 iSeries: iommu.h cleanups The iommu_table_cb structure is iSeries specific, so move it to the header file that declares the function we pass it to. vio_tce_table and iommu_setup_iSeries no longer exist, so remove their declarations. Signed-off-by: Stephen Rothwell Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit ea7190d0afebbd922eeb13ee6a8148b17964b1b2 Author: Stephen Rothwell Date: Tue Jun 21 17:15:42 2005 -0700 [PATCH] ppc64 iSeries: remove iSeries_pci_reset.c The file arch/ppc64/kernel/iSeries_pci_reset contains only one function that is not use anywhere (any more). Remove it. This function is the only user of the ReturnCode member of iSeries_Device_Node, so remove that as well. Signed-off-by: Stephen Rothwell Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit c670b1acd0ed0d9f7a27154759a9825cb5012ae4 Author: Stephen Rothwell Date: Tue Jun 21 17:15:41 2005 -0700 [PATCH] ppc64 iSeries: misc header cleanups Last of this round of the iSeries header cleanups - don't have two defines for the same thing (HvMaxArchitectedLps and HvMaxArchitectedVirtualLans) - HvCallSc.h only needs linux/types.h - remove unused struct definition - add "extern" to some more function declarations Signed-off-by: Stephen Rothwell Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 4a5304f5ba04eff979cd108309eae7a00f3fff77 Author: Stephen Rothwell Date: Tue Jun 21 17:15:40 2005 -0700 [PATCH] ppc64 iSeries: tidy up some includes and HvCall.h This patch removes some unused bits from HvCall.h and some unneeded #includes from other files. Also includes ItLpQueue.h in paca.h in preference to a stub declaration of struct ItLpQueue. Signed-off-by: Stephen Rothwell Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit c92877e0a079fe5a488cb244c7afb05137702b49 Author: Stephen Rothwell Date: Tue Jun 21 17:15:39 2005 -0700 [PATCH] ppc64 iSeries: cleanup ItLpQueue.h Just white space cleaups and move process_iSeries_events into its only caller. Signed-off-by: Stephen Rothwell Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 2310c977a9b7a4d08fbaa74e694b49b38d49f5ae Author: Stephen Rothwell Date: Tue Jun 21 17:15:38 2005 -0700 [PATCH] ppc64 iSeries: remove HvCallCfg.h Now that the only users of things in HvCallCfg.h are in HvLpConfig.h, merge in the bit we need and remove HvCallCfg.h. Signed-off-by: Stephen Rothwell Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit dd61ce922770b299081c3e729ea65758ed676034 Author: Stephen Rothwell Date: Tue Jun 21 17:15:37 2005 -0700 [PATCH] ppc64 iSeries: eliminate some unused inline functions This patch removes from the iSeries header files a large number of inline functions that are not used. It also changes the only caller of a HvCallCfg function that is outside HvLpConfig.h to its equivalent HvLpConfig function and no longer includes HvCallCfg.h where it is not needed. Signed-off-by: Stephen Rothwell Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 0bc0ffd5f0854b9143606684fb925f4290ae13e7 Author: Stephen Rothwell Date: Tue Jun 21 17:15:36 2005 -0700 [PATCH] ppc64 iSeries: remove LparData.h include/asm-ppc64/iSeries/LparData.h just included a whole lot of other files to declare variables that would be better declared in those other files. So, remove it. This will reduce that number of things needed to be included in most cases to access the relevant variables. Signed-off-by: Stephen Rothwell Signed-off-by: Linus Torvalds commit 6b7feecb2f8fcab184a38916d10349bd6648e0bc Author: Stephen Rothwell Date: Tue Jun 21 17:15:35 2005 -0700 [PATCH] ppc64 iSeries: obvious code simplifications This patch does some obvious code cleanups in the iSeries headers files. - simplifies the bodies of lots of inline functions - parenthesises a macros result - removes C++ wrapping - adds "extern" to some function declarations There are no semantic changes. Signed-off-by: Stephen Rothwell Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit fcee38952609fccb2bdfe166b3b96bd75a292aa6 Author: Stephen Rothwell Date: Tue Jun 21 17:15:34 2005 -0700 [PATCH] ppc64 iSeries: more header file white space cleanups This patch just contains white space and comment cleanups in the iSeries headers files. There are no semantic changes. Signed-off-by: Stephen Rothwell Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 45dc76aaf63fc336527da80337d3e3684f50f387 Author: Stephen Rothwell Date: Tue Jun 21 17:15:33 2005 -0700 [PATCH] ppc64 iSeries: header file white space cleanups This patch just contains white space and comment cleanups in the iSeries headers files. There are no semantic changes. Signed-off-by: Stephen Rothwell Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 0e3e4a1c4dade7872fdb04a5e735ae26d8e2fbfb Author: Stephen Rothwell Date: Tue Jun 21 17:15:33 2005 -0700 [PATCH] ppc64 iSeries: remove iSeries_proc.h include/asm-ppc64/iSeries/iSeries_proc.h just contains a declaration of a function that no longer exists. Remove it. Signed-off-by: Stephen Rothwell Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 723e2b35e43dcbcfd737c40453caa7d198092d23 Author: Sven Luther Date: Tue Jun 21 17:15:32 2005 -0700 [PATCH] ppc64: override command line AS/LD/CC variables when adding -m64 and co for biarch compilers The following kind of calls currently fails : make ARCH=ppc64 CC="gcc-3.4" Since the code for detecting a biarch compiler and adding the needed 64bit magic argument fails if the AS/LD/CC commands are overriden in the command line. The attached patch fixes this by using the make override and += directive, but i am not 100% sure this will work without gmake, as i am no Makefile expert. Cc: Paul Mackerras Cc: Anton Blanchard Cc: Benjamin Herrenschmidt Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 20cee16ced631f70a62c97bdebae08a1c9470448 Author: David Gibson Date: Tue Jun 21 17:15:31 2005 -0700 [PATCH] ppc64: Abolish ioremap_mm Currently ppc64 has two mm_structs for the kernel, init_mm and also ioremap_mm. The latter really isn't necessary: this patch abolishes it, instead restricting vmallocs to the lower 1TB of the init_mm's range and placing io mappings in the upper 1TB. This simplifies the code in a number of places and eliminates an unecessary set of pagetables. It also tweaks the unmap/free path a little, allowing us to remove the unmap_im_area() set of page table walkers, replacing them with unmap_vm_area(). Signed-off-by: David Gibson Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 6879dc137ea4efad65cab8bf8a7c0b742bcf92cc Author: Benjamin Herrenschmidt Date: Tue Jun 21 17:15:30 2005 -0700 [PATCH] ppc32: Kill embedded system.map, use kallsyms This patch kills the whole embedded System.map mecanism and the bootloader-passed System.map that was used to provide symbol resolution in xmon. Instead, xmon now uses kallsyms like ppc64 does. No hurry getting that in Linus tree, let it be tested in -mm for a while first and make sure it doesn't break various embedded configs. Signed-off-by: Benjamin Herrenschmidt Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit a70d439345875d476ede258094356e2acd09b1a1 Author: Jakub Bogusz Date: Tue Jun 21 17:15:29 2005 -0700 [PATCH] ppc32: don't recursively crash in die() on CHRP/PReP machines This patch avoids recursive crash (leading to kernel stack overflow) in die() on CHRP/PReP machines when CONFIG_PMAC_BACKLIGHT=y. set_backlight_* functions are placed in pmac section, which is discarded when _machine != _MACH_Pmac. Signed-off-by: Jakub Bogusz Acked-by: Benjamin Herrenschmidt Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit ba8c6d534a0144375f910e764ec965d5e8059f7a Author: Kumar Gala Date: Tue Jun 21 17:15:28 2005 -0700 [PATCH] ppc32: remove some unnecessary includes of prom.h Fight the Good Fight: Limit prom.h header creep. Signed-off-by: Jon Loeliger Signed-off-by: Kumar Gala Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 1492ec8069ea6f82bc32df27cabbec72e554e2b8 Author: Kumar Gala Date: Tue Jun 21 17:15:27 2005 -0700 [PATCH] ppc32: Factor out common exception code into macro's for 4xx/Book-E 4xx and Book-E PPC's have several exception levels. The code to handle each level is fairly regular. Turning the code into macro's will ease the handling of future exception levels (debug) in forth coming chips. Signed-off-by: Kumar Gala Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 5be061eee931db2718feecaf10df17610386202b Author: Kumar Gala Date: Tue Jun 21 17:15:26 2005 -0700 [PATCH] ppc32: Clean up NUM_TLBCAMS usage for Freescale Book-E PPC's Made the number of TLB CAM entries private and converted the board consumers to use num_tlbcam_entries which is setup at boot time from configuration registers. This way the only consumers of the #define NUM_TLBCAMS are the arrays used to manage the TLB. Signed-off-by: Kumar Gala Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 65145e060b1c933ebc4215c3b493f586e08a1d5c Author: Kumar Gala Date: Tue Jun 21 17:15:25 2005 -0700 [PATCH] ppc32: Added support for all MPC8548 internal interrupts The MPC8548 has 48 internal interrupts and 12 external interrupts. The previous generation PowerQUICC III devices only had 32 internal and 12 external interrupts on the primary interrupt controller. Expanded the number of internal interrupts to 48 for all PowerQUICC III processors and moved the interrupt numbers for the external after the 48 internal interrupt lines, rather than putting the 12 new internal interrupts at the end and ifdef'ng the whole mess. As parted of this created a macro which represents the internal interrupt senses since they are the same on all PQ3 processors. Signed-off-by: Kumar Gala Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit eee4146ab908188e556641f1cd7a10e894d10edb Author: Matt Porter Date: Tue Jun 21 17:15:24 2005 -0700 [PATCH] ppc32: remove orphaned ppc4xx_kgdb.c Removes ppc4xx_kgdb.c which is no longer being used. Pointed out by Andrei Konovalov. Signed-off-by: Matt Porter Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 682afbbd1456e9e7b64f482eb05676b933173cdf Author: Kumar Gala Date: Tue Jun 21 17:15:23 2005 -0700 [PATCH] ppc32: Add support for MPC8245 8250 serial ports on Sandpoint Added platform device initialization for the two 8250 style UARTs that exist on the MPC8245. Additionally, updated the Sandpoint code to enable one of these UARTs if an MPC8245 is connected to it. Signed-off-by: Matt McClintock Signed-off-by: Kumar Gala Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 1e5aa8c86571deea5d8e8462fedcf610e21af717 Author: Matt Porter Date: Tue Jun 21 17:15:22 2005 -0700 [PATCH] ppc32: fix CONFIG_TASK_SIZE handling on 40x This patch is virtually identical to my previous 44x one. It removes 0x8000'0000 TASK_SIZE hardcoded assumption from head_4xx.S. Signed-off-by: Eugene Surovegin Signed-off-by: Matt Porter Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit a1604f9121ee97b27d5ce308ddd4b70c3a220279 Author: Matt Porter Date: Tue Jun 21 17:15:22 2005 -0700 [PATCH] cpm_uart: Route SCC2 pins for the STx GP3 board Adds SCC2 pin routing specific to the GP3 board. Signed-off-by: Matt Porter Signed-off-by: Kumar Gala Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit b264c3527930ca4812fefc505fde9ad99d8a0117 Author: Kumar Gala Date: Tue Jun 21 17:15:21 2005 -0700 [PATCH] ppc32: Converted MPC10X bridge to use platform devices instead of OCP Converted the MPC10x bridge support (used by MPC10x and 8240/1/5) to used the standard platform device model. Signed-off-by: Matt McClintock Signed-off-by: Kumar Gala Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit c93fcff6952068d484f2f7dae187037f46235647 Author: Kumar Gala Date: Tue Jun 21 17:15:20 2005 -0700 [PATCH] ppc32: Removed dependency on CONFIG_CPM2 for building mpc85xx_device.c Previously we needed CONFIG_CPM2 enabled to get the proper IRQ ifdef's for CPM interrupts. Recent changes have caused that to be no longer necessary. Signed-off-by: Kumar Gala Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit c91999bba3ae8b21d4a965f19bf127bac3e5f7f2 Author: Kumar Gala Date: Tue Jun 21 17:15:19 2005 -0700 [PATCH] ppc32: Added preliminary support for the MPC8548 CDS board Adds support for using the MPC8548 processor on the CDS reference board. Currently all the major busses (PCI, PCI-X, PCI-Express, sRIO) and eTSEC3 and eTSEC4 are not supported. Signed-off-by: Kumar Gala Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 5b37b700f7c491a9320f4e29472bbaf23dded8fd Author: Kumar Gala Date: Tue Jun 21 17:15:18 2005 -0700 [PATCH] ppc32: Added support for new MPC8548 family of PowerQUICC III processors Added descriptions of the new MPC8548 family processors, e500 core and peripherals. Signed-off-by: Kumar Gala Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit da3caa204ca40c32dcb751ebead2a6835b83e8d1 Author: Gerald Schaefer Date: Tue Jun 21 17:15:18 2005 -0700 [PATCH] SELinux: memory leak in selinux_sb_copy_data() There is a memory leak during mount when SELinux is active and mount options are specified. Signed-off-by: Gerald Schaefer Acked-by: Stephen Smalley Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 8680e22f296e75e5497edb660c59c6b4dcfbbd32 Author: Gerald Schaefer Date: Tue Jun 21 17:15:16 2005 -0700 [PATCH] VFS: memory leak in do_kern_mount() There is a memory leak during mount when CONFIG_SECURITY is enabled and mount options are specified. Signed-off-by: Gerald Schaefer Acked-by: James Morris Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 2894801db1cea527885f7a8679e5a88fb7377d9c Author: Coywolf Qi Hunt Date: Tue Jun 21 17:15:15 2005 -0700 [PATCH] kbuild: display compile version I am always trying to make sure I've booted the right kernel after a new install. Too paranoid maybe. But I guess there're other people like me. So let's make kbuild display the compile version number at the end to give us a hint. I know we may be booting vmlinux someday, but don't care about it for now. Signed-off-by: Coywolf Qi Hunt Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 0f667ff5c0282f686b4f739e46353779b3cfa2f6 Author: John W. Linville Date: Tue Jun 21 17:15:14 2005 -0700 [PATCH] 3c59x: remove superfluous vortex_debug test from boomerang_start_xmit() Remove the superfluous test of "if (vortex_debug > 3)" inside the "if (vortex_debug > 6)" clause early in boomerang_start_xmit. Signed-off-by: John W. Linville Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit c0d62219a48bd91ec40fb254c930914dccc77ff1 Author: Denis Vlasenko Date: Tue Jun 21 17:15:14 2005 -0700 [PATCH] Kill stray newline OOM killer prints a stray newline. Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit b4955ce3dd0818b56da532a16c9a4a3804a558ee Author: Abhijit Karmarkar Date: Tue Jun 21 17:15:13 2005 -0700 [PATCH] msync: check pte dirty earlier It's common practice to msync a large address range regularly, in which often only a few ptes have actually been dirtied since the previous pass. sync_pte_range then goes much faster if it tests whether pte is dirty before locating and accessing each struct page cacheline; and it is hardly slowed by ptep_clear_flush_dirty repeating that test in the opposite case, when every pte actually is dirty. But beware, s390's pte_dirty always says false, since its dirty bit is kept in the storage key, located via the struct page address. So skip this optimization in its case: use a pte_maybe_dirty macro which just says true if page_test_and_clear_dirty is implemented. Signed-off-by: Abhijit Karmarkar Signed-off-by: Hugh Dickins Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit c475a8ab625d567eacf5e30ec35d6d8704558062 Author: Hugh Dickins Date: Tue Jun 21 17:15:12 2005 -0700 [PATCH] can_share_swap_page: use page_mapcount Remember that ironic get_user_pages race? when the raised page_count on a page swapped out led do_wp_page to decide that it had to copy on write, so substituted a different page into userspace. 2.6.7 onwards have Andrea's solution, where try_to_unmap_one backs out if it finds page_count raised. Which works, but is unsatisfying (rmap.c has no other page_count heuristics), and was found a few months ago to hang an intensive page migration test. A year ago I was hesitant to engage page_mapcount, now it seems the right fix. So remove the page_count hack from try_to_unmap_one; and use activate_page in unuse_mm when dropping lock, to replace its secondary effect of helping swapoff to make progress in that case. Simplify can_share_swap_page (now called only on anonymous pages) to check page_mapcount + page_swapcount == 1: still needs the page lock to stabilize their (pessimistic) sum, but does not need swapper_space.tree_lock for that. In do_swap_page, move swap_free and unlock_page below page_add_anon_rmap, to keep sum on the high side, and correct when can_share_swap_page called. Signed-off-by: Hugh Dickins Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit d296e9cd02c92e576ecce5344026a4df4353cdb2 Author: Hugh Dickins Date: Tue Jun 21 17:15:11 2005 -0700 [PATCH] do_wp_page: cannot share file page A small optimization to do_wp_page's check for whether to avoid copy by reusing the page already mapped. It can never share a cached file page, nor can it share a reserved page (often the empty zero page), so it's a waste of time to lock and unlock in those cases. Which nowadays can both be neatly excluded by a preliminary PageAnon test. Christoph has reported that a preliminary page_count test proved valuable for scalability here, but PageAnon covers more common cases all at once. Signed-off-by: Hugh Dickins Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 08ef472937e918875a82fd350d3de138aac50414 Author: Hugh Dickins Date: Tue Jun 21 17:15:10 2005 -0700 [PATCH] get_user_pages: kill get_page_map Since its birth, get_user_pages has been calling a misguided get_page_map function. follow_page has already returned NULL if the pfn is invalid, we cannot reach an invalid pfn from a validated struct page. Remove get_page_map, and the messy rewind in get_user_pages to cope with its failure. Oh, and could we please call that "struct page *page" like everywhere else, instead of "struct page *map"? Signed-off-by: Hugh Dickins Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 7c2f3fda5666c280bcd00ac3b86963270b23e796 Author: Hugh Dickins Date: Tue Jun 21 17:15:09 2005 -0700 [PATCH] rme96xx: fix PageReserved range rme96xx busmaster_malloc miscalculates and fails to set PageReserved on any page of char *buf; but busmaster_free does it right, so do the same (I don't have the card, just noticed this while sifting for rmap BUGs). Signed-off-by: Hugh Dickins Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 334795eca421287c41c257992027d29659dc0f97 Author: Hugh Dickins Date: Tue Jun 21 17:15:08 2005 -0700 [PATCH] bad_page: clear reclaim and slab Since free_pages_check complains if PG_reclaim or PG_slab is set, bad_page ought to clear them to avoid repetitive reports (Nikita noticed this too). Let prep_new_page check page_count and PG_slab as free_pages_check does. Signed-off-by: Hugh Dickins Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 45918e1a8bfcabc1cb4570b8df276655020eac45 Author: Hugh Dickins Date: Tue Jun 21 17:15:08 2005 -0700 [PATCH] dup_mmap: update comment on new vma Remove part of comment on linking new vma in dup_mmap: since anon_vma rmap came in, try_to_unmap_one knows the vma without needing find_vma. But add a comment to note that here vma is inserted without mmap_sem. Signed-off-by: Hugh Dickins Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 91612e0df20a52f61db3cac280c153311b36df7a Author: Hugh Dickins Date: Tue Jun 21 17:15:07 2005 -0700 [PATCH] mbind: check_range use standard ptwalk Strict mbind's check for currently mapped pages being on node has been using a slow loop which re-evaluates pgd, pud, pmd, pte for each entry: replace that by a standard four-level page table walk like others in mm. Since mmap_sem is held for writing, page_table_lock can be taken at the inner level to limit latency. Signed-off-by: Hugh Dickins Cc: Andi Kleen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 941150a326be88af245034ef4b3e9fa00229aa2d Author: Hugh Dickins Date: Tue Jun 21 17:15:06 2005 -0700 [PATCH] mbind: fix verify_pages pte_page Strict mbind's check that pages already mapped are on right node has been using pte_page without checking if pfn_valid, and without page_table_lock to prevent spurious failures when try_to_unmap_one intervenes between the pte_present and the pte_page. Signed-off-by: Hugh Dickins Cc: Andi Kleen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 400e65146c428d2ef677a927786fda2cec545a76 Author: Bob Picco Date: Tue Jun 21 17:15:05 2005 -0700 [PATCH] ia64: pfn_to_nid() implementation pfn_to_nid is undefined. We haven't had this interface on ia64. The sys_mbind patches need it. Oh, the paddr_to_nid call could fail when DISCONTIG+NUMA is configured because there isn't any ACPI SRAT NUMA information. Signed-off-by: Bob Picco Acked-by: Tony Luck Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 0edd73b33426df61b1d8a0a50d1f2ec097500abb Author: Hugh Dickins Date: Tue Jun 21 17:15:04 2005 -0700 [PATCH] shmem: restore superblock info To improve shmem scalability, we allowed tmpfs instances which don't need their blocks or inodes limited not to count them, and not to allocate any sbinfo. Which was okay when the only use for the sbinfo was accounting blocks and inodes; but since then a couple of unrelated projects extending tmpfs want to store other data in the sbinfo. Whether either extension reaches mainline is beside the point: I'm guilty of a bad design decision, and should restore sbinfo to make any such future extensions easier. So, once again allocate a shmem_sb_info for every shmem/tmpfs instance, and now let max_blocks 0 indicate unlimited blocks, and max_inodes 0 unlimited inodes. Brent Casavant verified (many months ago) that this does not perceptibly impact the scalability (since the unlimited sbinfo cacheline is repeatedly accessed but only once dirtied). And merge shmem_set_size into its sole caller shmem_remount_fs. Signed-off-by: Hugh Dickins Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 65ed0b337bd2b47097cf6c772f024772513b7b0d Author: Jes Sorensen Date: Tue Jun 21 17:15:03 2005 -0700 [PATCH] SN2 XPC build patches This patch contains the bits to make the XPC code use the uncached allocator rather than calling into the mspec driver. It also includes the mspec.h header which is required to build the XPC modules. Signed-off-by: Jes Sorensen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit f14f75b81187cdbe10cc53a521bf9fdf97b59f8c Author: Jes Sorensen Date: Tue Jun 21 17:15:02 2005 -0700 [PATCH] ia64 uncached alloc This patch contains the ia64 uncached page allocator and the generic allocator (genalloc). The uncached allocator was formerly part of the SN2 mspec driver but there are several other users of it so it has been split off from the driver. The generic allocator can be used by device driver to manage special memory etc. The generic allocator is based on the allocator from the sym53c8xx_2 driver. Various users on ia64 needs uncached memory. The SGI SN architecture requires it for inter-partition communication between partitions within a large NUMA cluster. The specific user for this is the XPC code. Another application is large MPI style applications which use it for synchronization, on SN this can be done using special 'fetchop' operations but it also benefits non SN hardware which may use regular uncached memory for this purpose. Performance of doing this through uncached vs cached memory is pretty substantial. This is handled by the mspec driver which I will push out in a seperate patch. Rather than creating a specific allocator for just uncached memory I came up with genalloc which is a generic purpose allocator that can be used by device drivers and other subsystems as they please. For instance to handle onboard device memory. It was derived from the sym53c7xx_2 driver's allocator which is also an example of a potential user (I am refraining from modifying sym2 right now as it seems to have been under fairly heavy development recently). On ia64 memory has various properties within a granule, ie. it isn't safe to access memory as uncached within the same granule as currently has memory accessed in cached mode. The regular system therefore doesn't utilize memory in the lower granules which is mixed in with device PAL code etc. The uncached driver walks the EFI memmap and pulls out the spill uncached pages and sticks them into the uncached pool. Only after these chunks have been utilized, will it start converting regular cached memory into uncached memory. Hence the reason for the EFI related code additions. Signed-off-by: Jes Sorensen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 2caaad41e4aa8f5dd999695b4ddeaa0e7f3912a4 Author: Christoph Lameter Date: Tue Jun 21 17:15:00 2005 -0700 [PATCH] Reduce size of huge boot per_cpu_pageset Reduce size of the huge per_cpu_pageset structure in __initdata introduced into mm1 with the pageset localization patchset. Use one specially configured pageset per cpu for all zones and nodes during bootup. - Avoid duplication of pageset initialization code. - do the adding to the pageset list before potential free_pages_bulk in free_hot_cold_page (otherwise we would have to hold a page in a pageset during the period that the boot pagesets are in use). - remove mistaken __cpuinitdata attribute and revert back to __initdata for the boot pageset. A boot pageset is not necessary for cpu hotplug. Tested for UP SMP NUMA on x86_64 (2.6.12-rc6-mm1): UP SMP NUMA Tested on IA64 (2.6.12-rc5-mm2): NUMA (2.6.12-rc6-mm1 broken for IA64 because of sparsemem patches) Signed-off-by: Christoph Lameter Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 4ae7c03943fca73f23bc0cdb938070f41b98101f Author: Christoph Lameter Date: Tue Jun 21 17:14:57 2005 -0700 [PATCH] Periodically drain non local pagesets The pageset array can potentially acquire a huge amount of memory on large NUMA systems. F.e. on a system with 512 processors and 256 nodes there will be 256*512 pagesets. If each pageset only holds 5 pages then we are talking about 655360 pages.With a 16K page size on IA64 this results in potentially 10 Gigabytes of memory being trapped in pagesets. The typical cases are much less for smaller systems but there is still the potential of memory being trapped in off node pagesets. Off node memory may be rarely used if local memory is available and so we may potentially have memory in seldom used pagesets without this patch. The slab allocator flushes its per cpu caches every 2 seconds. The following patch flushes the off node pageset caches in the same way by tying into the slab flush. The patch also changes /proc/zoneinfo to include the number of pages currently in each pageset. Signed-off-by: Christoph Lameter Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 578c2fd6a7f378434655e5c480e23152a3994404 Author: Janet Morgan Date: Tue Jun 21 17:14:56 2005 -0700 [PATCH] add OOM debug This patch provides more debug info when the system is OOM. It displays memory stats (basically sysrq-m info) from __alloc_pages() when page allocation fails and during OOM kill. Thanks to Dave Jones for coming up with the idea. Signed-off-by: Janet Morgan Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit c2f29ea111e3344ed48257c2a142c3db514e1529 Author: Benjamin LaHaise Date: Tue Jun 21 17:14:55 2005 -0700 [PATCH] __read_page_state(): pass unsigned long instead of unsigned By making the offset argument of __read_page_state an unsigned long instead of unsigned, we can avoid forcing the compiler to sign extend a usually constant argument. This saves 1 instruction on x86-64. Signed-off-by: Benjamin LaHaise Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 83e5d8f7253cb7b14472385a6d57df1e9f848e8e Author: Benjamin LaHaise Date: Tue Jun 21 17:14:54 2005 -0700 [PATCH] __mod_page_state(): pass unsigned long instead of unsigned By making the offset argument of __mod_page_state an unsigned long instead of unsigned, we can avoid forcing the compiler to sign extend a usually constant argument. This saves 1 instruction on x86-64. Signed-off-by: Benjamin LaHaise Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 1ad539b2bd89bf2e129123eb24d5bcc4484a35de Author: Darren Hart Date: Tue Jun 21 17:14:53 2005 -0700 [PATCH] vm: try_to_free_pages unused argument try_to_free_pages accepts a third argument, order, but hasn't used it since before 2.6.0. The following patch removes the argument and updates all the calls to try_to_free_pages. Signed-off-by: Darren Hart Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit cbe37d093707762fc0abb280781e6a82a9d8d568 Author: Badari Pulavarty Date: Tue Jun 21 17:14:52 2005 -0700 [PATCH] mm: remove PG_highmem Remove PG_highmem, to save a page flag. Use is_highmem() instead. It'll generate a little more code, but we don't use PageHigheMem() in many places. Signed-off-by: Badari Pulavarty Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 73219d178051691a56d57184d8c7f6d0cbe3c5c1 Author: Chris Wright Date: Tue Jun 21 17:14:52 2005 -0700 [PATCH] mmap topdown fix for large stack limit, large allocation The topdown changes in 2.6.12-rc1 can cause large allocations with large stack limit to fail, despite there being space available. The mmap_base-len is only valid when len >= mmap_base. However, nothing in topdown allocator checks this. It's only (now) caught at higher level, which will cause allocation to simply fail. The following change restores the fallback to bottom-up path, which will allow large allocations with large stack limit to potentially still succeed. Signed-off-by: Chris Wright Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 1363c3cd8603a913a27e2995dccbd70d5312d8e6 Author: Wolfgang Wander Date: Tue Jun 21 17:14:49 2005 -0700 [PATCH] Avoiding mmap fragmentation Ingo recently introduced a great speedup for allocating new mmaps using the free_area_cache pointer which boosts the specweb SSL benchmark by 4-5% and causes huge performance increases in thread creation. The downside of this patch is that it does lead to fragmentation in the mmap-ed areas (visible via /proc/self/maps), such that some applications that work fine under 2.4 kernels quickly run out of memory on any 2.6 kernel. The problem is twofold: 1) the free_area_cache is used to continue a search for memory where the last search ended. Before the change new areas were always searched from the base address on. So now new small areas are cluttering holes of all sizes throughout the whole mmap-able region whereas before small holes tended to close holes near the base leaving holes far from the base large and available for larger requests. 2) the free_area_cache also is set to the location of the last munmap-ed area so in scenarios where we allocate e.g. five regions of 1K each, then free regions 4 2 3 in this order the next request for 1K will be placed in the position of the old region 3, whereas before we appended it to the still active region 1, placing it at the location of the old region 2. Before we had 1 free region of 2K, now we only get two free regions of 1K -> fragmentation. The patch addresses thes issues by introducing yet another cache descriptor cached_hole_size that contains the largest known hole size below the current free_area_cache. If a new request comes in the size is compared against the cached_hole_size and if the request can be filled with a hole below free_area_cache the search is started from the base instead. The results look promising: Whereas 2.6.12-rc4 fragments quickly and my (earlier posted) leakme.c test program terminates after 50000+ iterations with 96 distinct and fragmented maps in /proc/self/maps it performs nicely (as expected) with thread creation, Ingo's test_str02 with 20000 threads requires 0.7s system time. Taking out Ingo's patch (un-patch available per request) by basically deleting all mentions of free_area_cache from the kernel and starting the search for new memory always at the respective bases we observe: leakme terminates successfully with 11 distinctive hardly fragmented areas in /proc/self/maps but thread creating is gringdingly slow: 30+s(!) system time for Ingo's test_str02 with 20000 threads. Now - drumroll ;-) the appended patch works fine with leakme: it ends with only 7 distinct areas in /proc/self/maps and also thread creation seems sufficiently fast with 0.71s for 20000 threads. Signed-off-by: Wolfgang Wander Credit-to: "Richard Purdie" Signed-off-by: Ken Chen Acked-by: Ingo Molnar (partly) Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit e7c8d5c9955a4d2e88e36b640563f5d6d5aba48a Author: Christoph Lameter Date: Tue Jun 21 17:14:47 2005 -0700 [PATCH] node local per-cpu-pages This patch modifies the way pagesets in struct zone are managed. Each zone has a per-cpu array of pagesets. So any particular CPU has some memory in each zone structure which belongs to itself. Even if that CPU is not local to that zone. So the patch relocates the pagesets for each cpu to the node that is nearest to the cpu instead of allocating the pagesets in the (possibly remote) target zone. This means that the operations to manage pages on remote zone can be done with information available locally. We play a macro trick so that non-NUMA pmachines avoid the additional pointer chase on the page allocator fastpath. AIM7 benchmark on a 32 CPU SGI Altix w/o patches: Tasks jobs/min jti jobs/min/task real cpu 1 484.68 100 484.6769 12.01 1.97 Fri Mar 25 11:01:42 2005 100 27140.46 89 271.4046 21.44 148.71 Fri Mar 25 11:02:04 2005 200 30792.02 82 153.9601 37.80 296.72 Fri Mar 25 11:02:42 2005 300 32209.27 81 107.3642 54.21 451.34 Fri Mar 25 11:03:37 2005 400 34962.83 78 87.4071 66.59 588.97 Fri Mar 25 11:04:44 2005 500 31676.92 75 63.3538 91.87 742.71 Fri Mar 25 11:06:16 2005 600 36032.69 73 60.0545 96.91 885.44 Fri Mar 25 11:07:54 2005 700 35540.43 77 50.7720 114.63 1024.28 Fri Mar 25 11:09:49 2005 800 33906.70 74 42.3834 137.32 1181.65 Fri Mar 25 11:12:06 2005 900 34120.67 73 37.9119 153.51 1325.26 Fri Mar 25 11:14:41 2005 1000 34802.37 74 34.8024 167.23 1465.26 Fri Mar 25 11:17:28 2005 with slab API changes and pageset patch: Tasks jobs/min jti jobs/min/task real cpu 1 485.00 100 485.0000 12.00 1.96 Fri Mar 25 11:46:18 2005 100 28000.96 89 280.0096 20.79 150.45 Fri Mar 25 11:46:39 2005 200 32285.80 79 161.4290 36.05 293.37 Fri Mar 25 11:47:16 2005 300 40424.15 84 134.7472 43.19 438.42 Fri Mar 25 11:47:59 2005 400 39155.01 79 97.8875 59.46 590.05 Fri Mar 25 11:48:59 2005 500 37881.25 82 75.7625 76.82 730.19 Fri Mar 25 11:50:16 2005 600 39083.14 78 65.1386 89.35 872.79 Fri Mar 25 11:51:46 2005 700 38627.83 77 55.1826 105.47 1022.46 Fri Mar 25 11:53:32 2005 800 39631.94 78 49.5399 117.48 1169.94 Fri Mar 25 11:55:30 2005 900 36903.70 79 41.0041 141.94 1310.78 Fri Mar 25 11:57:53 2005 1000 36201.23 77 36.2012 160.77 1458.31 Fri Mar 25 12:00:34 2005 Signed-off-by: Christoph Lameter Signed-off-by: Shobhit Dayal Signed-off-by: Shai Fultheim Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 63551ae0feaaa23807ebea60de1901564bbef32e Author: David Gibson Date: Tue Jun 21 17:14:44 2005 -0700 [PATCH] Hugepage consolidation A lot of the code in arch/*/mm/hugetlbpage.c is quite similar. This patch attempts to consolidate a lot of the code across the arch's, putting the combined version in mm/hugetlb.c. There are a couple of uglyish hacks in order to covert all the hugepage archs, but the result is a very large reduction in the total amount of code. It also means things like hugepage lazy allocation could be implemented in one place, instead of six. Tested, at least a little, on ppc64, i386 and x86_64. Notes: - this patch changes the meaning of set_huge_pte() to be more analagous to set_pte() - does SH4 need s special huge_ptep_get_and_clear()?? Acked-by: William Lee Irwin Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 1e7e5a9048b30c57ba1ddaa6cdf59b21b65cde99 Author: Martin Hicks Date: Tue Jun 21 17:14:43 2005 -0700 [PATCH] VM: rate limit early reclaim When early zone reclaim is turned on the LRU is scanned more frequently when a zone is low on memory. This limits when the zone reclaim can be called by skipping the scan if another thread (either via kswapd or sync reclaim) is already reclaiming from the zone. Signed-off-by: Martin Hicks Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 0c35bbadc59f5ed105c34471143eceb4c0dd9c95 Author: Martin Hicks Date: Tue Jun 21 17:14:42 2005 -0700 [PATCH] VM: add __GFP_NORECLAIM When using the early zone reclaim, it was noticed that allocating new pages that should be spread across the whole system caused eviction of local pages. This adds a new GFP flag to prevent early reclaim from happening during certain allocation attempts. The example that is implemented here is for page cache pages. We want page cache pages to be spread across the whole system, and we don't want page cache pages to evict other pages to get local memory. Signed-off-by: Martin Hicks Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 753ee728964e5afb80c17659cc6c3a6fd0a42fe0 Author: Martin Hicks Date: Tue Jun 21 17:14:41 2005 -0700 [PATCH] VM: early zone reclaim This is the core of the (much simplified) early reclaim. The goal of this patch is to reclaim some easily-freed pages from a zone before falling back onto another zone. One of the major uses of this is NUMA machines. With the default allocator behavior the allocator would look for memory in another zone, which might be off-node, before trying to reclaim from the current zone. This adds a zone tuneable to enable early zone reclaim. It is selected on a per-zone basis and is turned on/off via syscall. Adding some extra throttling on the reclaim was also required (patch 4/4). Without the machine would grind to a crawl when doing a "make -j" kernel build. Even with this patch the System Time is higher on average, but it seems tolerable. Here are some numbers for kernbench runs on a 2-node, 4cpu, 8Gig RAM Altix in the "make -j" run: wall user sys %cpu ctx sw. sleeps ---- ---- --- ---- ------ ------ No patch 1009 1384 847 258 298170 504402 w/patch, no reclaim 880 1376 667 288 254064 396745 w/patch & reclaim 1079 1385 926 252 291625 548873 These numbers are the average of 2 runs of 3 "make -j" runs done right after system boot. Run-to-run variability for "make -j" is huge, so these numbers aren't terribly useful except to seee that with reclaim the benchmark still finishes in a reasonable amount of time. I also looked at the NUMA hit/miss stats for the "make -j" runs and the reclaim doesn't make any difference when the machine is thrashing away. Doing a "make -j8" on a single node that is filled with page cache pages takes 700 seconds with reclaim turned on and 735 seconds without reclaim (due to remote memory accesses). The simple zone_reclaim syscall program is at http://www.bork.org/~mort/sgi/zone_reclaim.c Signed-off-by: Martin Hicks Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit bfbb38fb808ac23ef44472d05d9bb36edfb49ed0 Author: Martin Hicks Date: Tue Jun 21 17:14:40 2005 -0700 [PATCH] VM: add may_swap flag to scan_control Here's the next round of these patches. These are totally different in an attempt to meet the "simpler" request after the last patches. For reference the earlier threads are: http://marc.theaimsgroup.com/?l=linux-kernel&m=110839604924587&w=2 http://marc.theaimsgroup.com/?l=linux-mm&m=111461480721249&w=2 This set of patches replaces my other vm- patches that are currently in -mm. So they're against 2.6.12-rc5-mm1 about half way through the -mm patchset. As I said already this patch is a lot simpler. The reclaim is turned on or off on a per-zone basis using a syscall. I haven't tested the x86 syscall, so it might be wrong. It uses the existing reclaim/pageout code with the small addition of a may_swap flag to scan_control (patch 1/4). I also added __GFP_NORECLAIM (patch 3/4) so that certain allocation types can be flagged to never cause reclaim. This was a deficiency that was in all of my earlier patch sets. Previously, doing a big buffered read would fill one zone with page cache and then start to reclaim from that same zone, leaving the other zones untouched. Adding some extra throttling on the reclaim was also required (patch 4/4). Without the machine would grind to a crawl when doing a "make -j" kernel build. Even with this patch the System Time is higher on average, but it seems tolerable. Here are some numbers for kernbench runs on a 2-node, 4cpu, 8Gig RAM Altix in the "make -j" run: wall user sys %cpu ctx sw. sleeps ---- ---- --- ---- ------ ------ No patch 1009 1384 847 258 298170 504402 w/patch, no reclaim 880 1376 667 288 254064 396745 w/patch & reclaim 1079 1385 926 252 291625 548873 These numbers are the average of 2 runs of 3 "make -j" runs done right after system boot. Run-to-run variability for "make -j" is huge, so these numbers aren't terribly useful except to seee that with reclaim the benchmark still finishes in a reasonable amount of time. I also looked at the NUMA hit/miss stats for the "make -j" runs and the reclaim doesn't make any difference when the machine is thrashing away. Doing a "make -j8" on a single node that is filled with page cache pages takes 700 seconds with reclaim turned on and 735 seconds without reclaim (due to remote memory accesses). The simple zone_reclaim syscall program is at http://www.bork.org/~mort/sgi/zone_reclaim.c This patch: This adds an extra switch to the scan_control struct. It simply lets the reclaim code know if its allowed to swap pages out. This was required for a simple per-zone reclaimer. Without this addition pages would be swapped out as soon as a zone ran out of memory and the early reclaim kicked in. Signed-off-by: Martin Hicks Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 295ab93497ec703f7d6eaf0787dd9768b83035fe Author: Nikita Danilov Date: Tue Jun 21 17:14:38 2005 -0700 [PATCH] mm: add /proc/zoneinfo Add /proc/zoneinfo file to display information about memory zones. Useful to analyze VM behaviour. Signed-off-by: Nikita Danilov Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 05b7438475ddbac47e75506913d44550f0e75938 Author: Prasanna Meda Date: Tue Jun 21 17:14:37 2005 -0700 [PATCH] madvise: merge the maps This attempts to merge back the split maps. This code is mostly copied from Chrisw's mlock merging from post 2.6.11 trees. The only difference is in munmapped_error handling. Also passed prev to willneed/dontneed, eventhogh they do not handle it now, since I felt it will be cleaner, instead of handling prev in madvise_vma in some cases and in subfunction in some cases. Signed-off-by: Prasanna Meda Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit e798c6e87b64d9fdbd5e9f757b1c033223763d9f Author: Prasanna Meda Date: Tue Jun 21 17:14:36 2005 -0700 [PATCH] madvise: do not split the maps This attempts to avoid splittings when it is not needed, that is when vm_flags are same as new flags. The idea is from the <2.6.11 mlock_fixup and others. This will provide base for the next madvise merging patch. Signed-off-by: Prasanna Meda Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit b15e0905f2b9964fc7426fecab57445e96021b61 Author: akpm@osdl.org Date: Tue Jun 21 17:14:35 2005 -0700 [PATCH] vmscan: notice slab shrinking Fix a problem identified by Andrea Arcangeli kswapd will set a zone into all_unreclaimable state if it sees that we're not successfully reclaiming LRU pages. But that fails to notice that we're successfully reclaiming slab obects, so we can set all_unreclaimable too soon. So change shrink_slab() to return a success indication if it actually reclaimed some objects, and don't assume that the zone is all_unreclaimable if that is true. This means that we won't enter all_unreclaimable state if we are successfully freeing slab objects but we're not yet actually freeing slab pages, due to internal fragmentation. (hm, this has a shortcoming. We could be successfully freeing ZONE_NORMAL slab objects while being really oom on ZONE_DMA. If that happens then kswapd might burn a lot of CPU. But given that there might be some slab objects in ZONE_DMA, perhaps that is appropriate.) Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 39c715b71740c4a78ba4769fb54826929bac03cb Author: Ingo Molnar Date: Tue Jun 21 17:14:34 2005 -0700 [PATCH] smp_processor_id() cleanup This patch implements a number of smp_processor_id() cleanup ideas that Arjan van de Ven and I came up with. The previous __smp_processor_id/_smp_processor_id/smp_processor_id API spaghetti was hard to follow both on the implementational and on the usage side. Some of the complexity arose from picking wrong names, some of the complexity comes from the fact that not all architectures defined __smp_processor_id. In the new code, there are two externally visible symbols: - smp_processor_id(): debug variant. - raw_smp_processor_id(): nondebug variant. Replaces all existing uses of _smp_processor_id() and __smp_processor_id(). Defined by every SMP architecture in include/asm-*/smp.h. There is one new internal symbol, dependent on DEBUG_PREEMPT: - debug_smp_processor_id(): internal debug variant, mapped to smp_processor_id(). Also, i moved debug_smp_processor_id() from lib/kernel_lock.c into a new lib/smp_processor_id.c file. All related comments got updated and/or clarified. I have build/boot tested the following 8 .config combinations on x86: {SMP,UP} x {PREEMPT,!PREEMPT} x {DEBUG_PREEMPT,!DEBUG_PREEMPT} I have also build/boot tested x64 on UP/PREEMPT/DEBUG_PREEMPT. (Other architectures are untested, but should work just fine.) Signed-off-by: Ingo Molnar Signed-off-by: Arjan van de Ven Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 84929801e14d968caeb84795bfbb88f04283fbd9 Author: Suresh Siddha Date: Tue Jun 21 17:14:32 2005 -0700 [PATCH] x86_64: TASK_SIZE fixes for compatibility mode processes Appended patch will setup compatibility mode TASK_SIZE properly. This will fix atleast three known bugs that can be encountered while running compatibility mode apps. a) A malicious 32bit app can have an elf section at 0xffffe000. During exec of this app, we will have a memory leak as insert_vm_struct() is not checking for return value in syscall32_setup_pages() and thus not freeing the vma allocated for the vsyscall page. And instead of exec failing (as it has addresses > TASK_SIZE), we were allowing it to succeed previously. b) With a 32bit app, hugetlb_get_unmapped_area/arch_get_unmapped_area may return addresses beyond 32bits, ultimately causing corruption because of wrap-around and resulting in SEGFAULT, instead of returning ENOMEM. c) 32bit app doing this below mmap will now fail. mmap((void *)(0xFFFFE000UL), 0x10000UL, PROT_READ|PROT_WRITE, MAP_FIXED|MAP_PRIVATE|MAP_ANON, 0, 0); Signed-off-by: Zou Nan hai Signed-off-by: Suresh Siddha Cc: Andi Kleen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 589777eab7360894b7ca1c4ba9d252e03b51225b Author: Zaur Kambarov Date: Tue Jun 21 17:14:31 2005 -0700 [PATCH] coverity: idr_get_new_above_int() overrun fix This patch fixes overrun of array pa: 92 struct idr_layer *pa[MAX_LEVEL]; in 98 l = idp->layers; 99 pa[l--] = NULL; by passing idp->layers, set in 202 idp->layers = layers; to function sub_alloc in 203 v = sub_alloc(idp, ptr, &id); Signed-off-by: Zaur Kambarov Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 3a845099b20e81fb678521f034bbdcd69208da4e Author: Zaur Kambarov Date: Tue Jun 21 17:14:30 2005 -0700 [PATCH] coverity: ipmi: avoid overrun of ipmi_interfaces[] Fix overrun of static array "ipmi_interfaces" of size 4 at position 4 with index variable "if_num". Definitions involved: 297 #define MAX_IPMI_INTERFACES 4 298 static ipmi_smi_t ipmi_interfaces[MAX_IPMI_INTERFACES]; Signed-off-by: Zaur Kambarov Cc: Corey Minyard Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 7f20b6a4792c1b5033583c23b5594887dd3867b9 Author: bobl Date: Tue Jun 21 17:14:29 2005 -0700 [PATCH] megaraid build fix Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 9a558cb4ec43ccbe82e2cf899ced37f29ac017df Author: Andrew Morton Date: Tue Jun 21 17:14:28 2005 -0700 [PATCH] arm: irqs_disabled() type fix kernel/sched.c: In function `__might_sleep': kernel/sched.c:5461: warning: int format, long unsigned int arg (arg 3) We expect irqs_disabled() to return an int (poor man's bool). Acked-by: Russell King Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 9723d95d1076e9ef394ff26162fb0b47531089b0 Merge: 4a4f8fdba6f5a34ca90f426021e17491a30202da 7049e6800f40046c384c522a990669024d5f5836 Author: Linus Torvalds Date: Tue Jun 21 18:19:10 2005 -0700 Merge rsync://rsync.kernel.org/pub/scm/linux/kernel/git/davem/sparc-2.6 commit e1a40fa907498030b6e432c0dbcb06d7a9f14ee3 Author: Dean Roehrich Date: Wed Jun 22 10:20:44 2005 +1000 [XFS] Handle inode semaphores properly for dmapi queues SGI-PV: 931572 SGI-Modid: xfs-linux-melb:xfs-kern:189560a Signed-off-by: Dean Roehrich Signed-off-by: Nathan Scott commit 29516d75a0b09e0a0328dd55c98a342515c9615a Merge: 4ea78729b8dbfc400fe165a57b90a394a7275a54 4a4f8fdba6f5a34ca90f426021e17491a30202da Author: Tony Luck Date: Tue Jun 21 16:21:20 2005 -0700 Auto merge with /home/aegl/GIT/linus commit 7049e6800f40046c384c522a990669024d5f5836 Author: David S. Miller Date: Tue Jun 21 16:20:28 2005 -0700 [SPARC64]: Add prefetch support. The implementation is optimal for UltraSPARC-III and later. It will work, however suboptimally, on UltraSPARC-II and be treated as a NOP on UltraSPARC-I. It is not worth code patching this thing as the highest cost is the code space, and code patching cannot eliminate that. Signed-off-by: David S. Miller commit 4ea78729b8dbfc400fe165a57b90a394a7275a54 Author: Matthew Chapman Date: Tue Jun 21 16:19:20 2005 -0700 [IA64] ptrace and restore_sigcontext() allow ar.rsc.pl==0 This patch fixes handling of accesses to ar.rsc via ptrace & restore_sigcontext [With Thanks to Chris Wright for noticing the restore_sigcontext path] Signed-off-by: Matthew Chapman Acked-by: David Mosberger Signed-off-by: Tony Luck commit 4a4f8fdba6f5a34ca90f426021e17491a30202da Merge: 2c6e5a839f92591a4bc6cac4a575d42151645af3 90f66914c89b0be63548d4387d1211280aa7bc8e Author: Linus Torvalds Date: Tue Jun 21 15:45:19 2005 -0700 Merge rsync://rsync.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6 commit 2c6e5a839f92591a4bc6cac4a575d42151645af3 Author: Greg KH Date: Tue Jun 21 15:24:19 2005 -0700 [PATCH] devfs: remove devfs from Kconfig preventing it from being built Here's a much smaller patch to simply disable devfs from the build. If this goes well, and there are no complaints for a few weeks, I'll resend my big "devfs-die-die-die" series of patches that rip the whole thing out of the kernel tree. Signed-off-by: Greg Kroah-Hartman Signed-off-by: Linus Torvalds commit 8005aba69a6440a535a4cc2aed99ffca580847e0 Author: David S. Miller Date: Tue Jun 21 15:39:22 2005 -0700 [SPARC64]: Fix cmsg length checks in Solaris emulation layer. Signed-off-by: David S. Miller commit 7b404b3459db1326bbdc7085edb1f58b98da5826 Author: Bjorn Helgaas Date: Mon Jun 13 11:27:00 2005 -0700 [IA64] remove "pci=routeirq" option Remove "pci=routeirq" option for ia64. This was a workaround after ACPI IRQ routing was changed from "all at boot for everything in _PRT" to "do it when the device is enabled" in case there were drivers that didn't use pci_enable_device(). Signed-off-by: Bjorn Helgaas Signed-off-by: Tony Luck commit 9527cc77e25b3a3787569edcbb8e74080b8df54a Merge: 1d345dac1f30af1cd9f3a1faa12f9f18f17f236e d039ba24f135147f60a13bcaa768189a5b773b6e Author: Linus Torvalds Date: Tue Jun 21 14:49:35 2005 -0700 Merge 'for-linus' branch of rsync://rsync.kernel.org/pub/scm/linux/kernel/git/shaggy/jfs-2.6 commit 90f66914c89b0be63548d4387d1211280aa7bc8e Author: David S. Miller Date: Tue Jun 21 14:43:28 2005 -0700 [IPV4]: Fix fib_trie.c's args to fib_dump_info(). Signed-off-by: David S. Miller commit 0393eed5c3220c9c3823a09a2d02329b8ff08b45 Author: Ken Chen Date: Tue Jun 21 14:40:31 2005 -0700 [IA64] fix nested_dtlb_miss handler for hugetlb address The nested_dtlb_miss handler currently does not handle fault from hugetlb address correctly. It walks the page table assuming PAGE_SIZE. Thus when taking a fault triggered from hugetlb address, it would not calculate the pgd/pmd/pte address correctly and thus result an incorrect invocation of ia64_do_page_fault(). In there, kernel will signal SIGBUS and application dies (The faulting address is perfectly legal and we have a valid pte for the corresponding user hugetlb address as well). This patch fix the described kernel bug. Since nested_dtlb_miss is a rare event and a slow path anyway, I'm making the change without #ifdef CONFIG_HUGETLB_PAGE for code readability. Tony, please apply. Signed-off-by: Ken Chen Signed-off-by: Tony Luck commit 52a0de2cd2d3da8f90d88e2eccb63d0cadd6ae26 Author: Christophe Lucas Date: Mon Jun 20 14:50:00 2005 -0700 [IA64] printk needs KERN_INFO arch/ia64/kernel/smp.c printk() calls should include appropriate KERN_* constant. Signed-off-by: Christophe Lucas Signed-off-by: Domen Puncer Signed-off-by: Tony Luck commit a35f1e03b868a3179fa12344ec0d46a44fbf7574 Author: Greg Edwards Date: Tue Jun 21 11:30:00 2005 -0700 [IA64] enable SGI simulator for generic kernels Allow the SGI simulator (medusa) to work on generic kernels. There is no inherent dependency on an sn2-specific kernel. Boot tested on Altix, medusa and HP rx2600. Signed-off-by: Greg Edwards Signed-off-by: Tony Luck commit bd91c4bb134a3c5b04969f5ab960a3fd48778bcc Author: Tony Luck Date: Tue Jun 21 14:16:00 2005 -0700 [IA64] Refresh tiger_defconfig Signed-off-by: Tony Luck commit 047601bf7c803724bbab9a4fdbad9481cecc12e0 Author: Patrick McHardy Date: Tue Jun 21 14:07:13 2005 -0700 [NETFILTER]: Fix ip6t_LOG sit tunnel logging Sit tunnel logging is currently broken: MAC=01:23:45:67:89:ab->01:23:45:47:89:ac TUNNEL=123.123. 0.123-> 12.123. 6.123 Apart from the broken IP address, MAC addresses are printed differently for sit tunnels than for everything else. Signed-off-by: Patrick McHardy Signed-off-by: David S. Miller commit 2715bcf9efc34063e05009f188eb896c462ae925 Author: Patrick McHardy Date: Tue Jun 21 14:06:24 2005 -0700 [NETFILTER]: Drop conntrack reference in ip_call_ra_chain()/ip_mr_input() Drop reference before handing the packets to raw_rcv() Signed-off-by: Patrick McHardy Signed-off-by: David S. Miller commit 6150bacfec95c7042678667561664efcf10d4508 Author: Patrick McHardy Date: Tue Jun 21 14:03:46 2005 -0700 [NETFILTER]: Check TCP checksum in ipt_REJECT Signed-off-by: Patrick McHardy Signed-off-by: David S. Miller commit e3be8ba79294df5de96692411e122506b40c5aa4 Author: Keir Fraser Date: Tue Jun 21 14:03:23 2005 -0700 [NETFILTER]: Avoid unncessary checksum validation in UDP connection tracking Signed-off-by: Keir Fraser Signed-off-by: Patrick McHardy Signed-off-by: David S. Miller commit 97216c799a6496163be8c81c9ceed297d92956c5 Author: Patrick McHardy Date: Tue Jun 21 14:03:01 2005 -0700 [NETFILTER]: Missing owner-field initialization in ip6table_raw I missed this one when fixing up iptable_raw. Signed-off-by: Patrick McHardy Signed-off-by: David S. Miller commit 1d3cdb41f52e299f70b66cbb569bff5216f3643a Author: Phil Oester Date: Tue Jun 21 14:02:42 2005 -0700 [NETFILTER]: expectation timeouts are compulsory Since expectation timeouts were made compulsory [1], there is no need to check for them in ip_conntrack_expect_insert. [1] https://lists.netfilter.org/pipermail/netfilter-devel/2005-January/018143.html Signed-off-by: Phil Oester Signed-off-by: Patrick McHardy Signed-off-by: David S. Miller commit e98231858bbfd2aca42f93d55133c2fca6df00f9 Author: Patrick McHardy Date: Tue Jun 21 14:02:15 2005 -0700 [NETFILTER]: Restore netfilter assumptions in IPv6 multicast Netfilter assumes that skb->data == skb->nh.ipv6h Signed-off-by: Patrick McHardy Signed-off-by: David S. Miller commit 18b8afc771102b1b6af97962808291a7d27f52af Author: Patrick McHardy Date: Tue Jun 21 14:01:57 2005 -0700 [NETFILTER]: Kill nf_debug Signed-off-by: Patrick McHardy Signed-off-by: David S. Miller commit e45b1be8bcb3643808975a426fa3e201a2588e87 Author: Patrick McHardy Date: Tue Jun 21 14:01:30 2005 -0700 [NETFILTER]: Kill lockhelp.h Signed-off-by: Patrick McHardy Signed-off-by: David S. Miller commit 95dccdfe29a76c513e29f88f366612d7570adab3 Author: Greg Edwards Date: Tue Jun 21 10:43:00 2005 -0700 [IA64] refresh arch/ia64/defconfig Refresh arch/ia64/defconfig, as it was getting a bit stale. The only manual changes I made were: CONFIG_SCSI_SATA=y needed for some Altix base I/O cards CONFIG_SCSI_SATA_VITESSE=y CONFIG_DM_MULTIPATH=m the rest are already modules CONFIG_FUSION_SPI=y new driver breakout CONFIG_FUSION_FC=m CONFIG_SGI_TIOCX=y enable some other SGI drivers CONFIG_SGI_MBCS=m CONFIG_AGP_SGI_TIOCA=m Boot tested on Altix, HP rx2600 and Intel Tiger Signed-off-by: Greg Edwards Signed-off-by: Tony Luck commit c9e3e8b6958e02230079e6817862ea2968509866 Author: David L Stevens Date: Tue Jun 21 13:58:25 2005 -0700 [IPV6]: multicast join and misc Here is a simplified version of the patch to fix a bug in IPv6 multicasting. It: 1) adds existence check & EADDRINUSE error for regular joins 2) adds an exception for EADDRINUSE in the source-specific multicast join (where a prior join is ok) 3) adds a missing/needed read_lock on sock_mc_list; would've raced with destroying the socket on interface down without 4) adds a "leave group" in the (INCLUDE, empty) source filter case. This frees unneeded socket buffer memory, but also prevents an inappropriate interaction among the 8 socket options that mess with this. Some would fail as if in the group when you aren't really. Item #4 had a locking bug in the last version of this patch; rather than removing the idev->lock read lock only, I've simplified it to remove all lock state in the path and treat it as a direct "leave group" call for the (INCLUDE,empty) case it covers. Tested on an MP machine. :-) Much thanks to HoerdtMickael who reported the original bug. Signed-off-by: David L Stevens Signed-off-by: David S. Miller commit 0d51aa80a9b1db43920c0770c3bb842dd823c005 Author: Jamal Hadi Salim Date: Tue Jun 21 13:51:04 2005 -0700 [IPV6]: V6 route events reported with wrong netlink PID and seq number Essentially netlink at the moment always reports a pid and sequence of 0 always for v6 route activities. To understand the repurcassions of this look at: http://lists.quagga.net/pipermail/quagga-dev/2005-June/003507.html While fixing this, i took the liberty to resolve the outstanding issue of IPV6 routes inserted via ioctls to have the correct pids as well. This patch tries to behave as close as possible to the v4 routes i.e maintains whatever PID the socket issuing the command owns as opposed to the process. That made the patch a little bulky. I have tested against both netlink derived utility to add/del routes as well as ioctl derived one. The Quagga folks have tested against quagga. This fixes the problem and so far hasnt been detected to introduce any new issues. Signed-off-by: Jamal Hadi Salim Acked-by: YOSHIFUJI Hideaki Signed-off-by: David S. Miller commit 19baf839ff4a8daa1f2a7400897094fc18e4f5e9 Author: Robert Olsson Date: Tue Jun 21 12:43:18 2005 -0700 [IPV4]: Add LC-Trie FIB lookup algorithm. Signed-off-by: Robert Olsson Signed-off-by: David S. Miller commit 18b504e25fd617bee8830d2cdcaff7fb7b5931bb Author: Alexey Kuznetsov Date: Tue Jun 21 12:38:48 2005 -0700 [NETLINK]: netlink_callback structure needs 5 args not 4 net/ipv4/tcp_diag.c uses up to ->args[4] Signed-off-by: David S. Miller commit fae6ec69c84d71b1d5bda9ede1a262c1681684aa Merge: bbc0274e9bb2e3f1d724d445a2bd32566b9b66f7 1d345dac1f30af1cd9f3a1faa12f9f18f17f236e Author: Jaroslav Kysela Date: Tue Jun 21 07:39:41 2005 -0700 Merge with /pub/scm/linux/kernel/git/torvalds/linux-2.6.git commit ad89d0212e32c5cf27dfcbad67b91a32b9878529 Author: Nathan Scott Date: Tue Jun 21 15:57:57 2005 +1000 [XFS] Remove some debugging code from quota syscalls. SGI-PV: 932952 SGI-Modid: xfs-linux-melb:xfs-kern:22929a Signed-off-by: Nathan Scott commit 754002b4fb1b553bd8f978bb6f5aca7af46fde67 Author: Nathan Scott Date: Tue Jun 21 15:49:06 2005 +1000 [XFS] Merge a few minor fixes to the quota warning code. SGI-PV: 938145 SGI-Modid: xfs-linux:xfs-kern:22901a Signed-off-by: Nathan Scott commit 06d10dd9ca70ff1318ff2b871ff5f61a94223d9f Author: Nathan Scott Date: Tue Jun 21 15:48:47 2005 +1000 [XFS] Merge fixes into realtime quota code, since one/two reported, still not enabled though. SGI-PV: 938145 SGI-Modid: xfs-linux:xfs-kern:22900a Signed-off-by: Nathan Scott commit 77bc5beb5977a166e41b87c9d55d8e9cf2b3a04f Author: Nathan Scott Date: Tue Jun 21 15:48:04 2005 +1000 [XFS] Makes more sense to use the fsxattr interface instead of adding new ioctls for project IDs. SGI-PV: 938145 SGI-Modid: xfs-linux:xfs-kern:22899a Signed-off-by: Nathan Scott commit bd5a876ac4c130e8e1986dcdbb21839ae4cd91c0 Author: Christoph Hellwig Date: Tue Jun 21 15:47:39 2005 +1000 [XFS] (mostly) remove xfs_inval_cached_pages Since the last round of direct I/O locking changes it is just a wrapper around VOP_FLUSHINVAL_PAGES, so it's not nessecary anymore. Keep a simplified version for kernels < 2.4.22, as these don't have the changed direct I/O locking. SGI-PV: 938064 SGI-Modid: xfs-linux:xfs-kern:194420a Signed-off-by: Christoph Hellwig Signed-off-by: Nathan Scott commit d130c14c0310edac5ea0c6327bef7e3715f9a083 Author: Christoph Hellwig Date: Tue Jun 21 15:43:22 2005 +1000 [XFS] simplify ASSERT SGI-PV: 938063 SGI-Modid: xfs-linux:xfs-kern:194416a Signed-off-by: Christoph Hellwig Signed-off-by: Nathan Scott commit 7d795ca3442c7a562c45aeb7a7a808c79992a589 Author: Christoph Hellwig Date: Tue Jun 21 15:41:19 2005 +1000 [XFS] consolidate extent item freeing SGI-PV: 938062 SGI-Modid: xfs-linux:xfs-kern:194415a Signed-off-by: Christoph Hellwig Signed-off-by: Nathan Scott commit f898d6c09caa40d82203acd72e9fda3cd5aeae74 Author: Christoph Hellwig Date: Tue Jun 21 15:40:48 2005 +1000 [XFS] quiesce the filesystem proper when freezing SGI-PV: 936977 SGI-Modid: xfs-linux:xfs-kern:193840a Signed-off-by: Christoph Hellwig Signed-off-by: Nathan Scott commit 48fab6bf5f8baf0d16b20a35e537719d14b66275 Author: Christoph Hellwig Date: Tue Jun 21 15:40:20 2005 +1000 [XFS] add XFS_INOBT_IS_FREE_DISK SGI-PV: 928382 SGI-Modid: xfs-linux:xfs-kern:193778a Signed-off-by: Christoph Hellwig Signed-off-by: Nathan Scott commit 6add2c4288801bd7fd0a4cc3277de7688f1f6714 Author: Eric Sandeen Date: Tue Jun 21 15:39:44 2005 +1000 [XFS] Fix up some warning fallout from functions made static SGI-PV: 936255 SGI-Modid: xfs-linux:xfs-kern:193691a Signed-off-by: Eric Sandeen Signed-off-by: Nathan Scott commit 365ca83d509f77f2095976edb8d10ca6e9d86d58 Author: Nathan Scott Date: Tue Jun 21 15:39:12 2005 +1000 [XFS] Add support for project quota inheritance, a merge of Glens changes. SGI-PV: 932952 SGI-Modid: xfs-linux:xfs-kern:22806a Signed-off-by: Nathan Scott commit c8ad20ffeb592d66ea869c57f8c525a9d727c67b Author: Nathan Scott Date: Tue Jun 21 15:38:48 2005 +1000 [XFS] Add support for project quota, based on Dan Knappes earlier work. SGI-PV: 932952 SGI-Modid: xfs-linux:xfs-kern:22805a Signed-off-by: Nathan Scott commit 8401e9631c26dca9ebbc6997ac445fd49b06c79e Author: Christoph Hellwig Date: Tue Jun 21 15:38:03 2005 +1000 [XFS] remove xfs_incore_relse SGI-PV: 936977 SGI-Modid: xfs-linux:xfs-kern:193409a Signed-off-by: Christoph Hellwig Signed-off-by: Nathan Scott commit 66f58d236fd9c2676545678374d58d48206bdbfa Author: Christoph Hellwig Date: Tue Jun 21 15:37:43 2005 +1000 [XFS] simplify XFS_PURGE_INODE SGI-PV: 936891 SGI-Modid: xfs-linux:xfs-kern:193408a Signed-off-by: Christoph Hellwig Signed-off-by: Nathan Scott commit efa8027804b2bd8eb7d4b41a1f5b738c36e44e8c Author: Christoph Hellwig Date: Tue Jun 21 15:37:17 2005 +1000 [XFS] rewrite xfs_iflush_all SGI-PV: 936890 SGI-Modid: xfs-linux:xfs-kern:193349a Signed-off-by: Christoph Hellwig Signed-off-by: Nathan Scott commit ba0f32d46049e2b625dabd33c7964f8ca2cd7651 Author: Christoph Hellwig Date: Tue Jun 21 15:36:52 2005 +1000 [XFS] mark various symbols static Patch from Adrian Bunk SGI-PV: 936255 SGI-Modid: xfs-linux:xfs-kern:192760a Signed-off-by: Christoph Hellwig Signed-off-by: Nathan Scott commit 4372d6e10349d4e8b012588f86f15c740c73a7c4 Author: Christoph Hellwig Date: Tue Jun 21 15:36:00 2005 +1000 [XFS] Remove dead code. Patch from Adrian Bunk SGI-PV: 936255 SGI-Modid: xfs-linux:xfs-kern:192759a Signed-off-by: Christoph Hellwig Signed-off-by: Nathan Scott commit cf9937c6c6c7edb6650411d1cf3cb57f072b1277 Author: Christoph Hellwig Date: Tue Jun 21 15:35:24 2005 +1000 [XFS] Fix pagebuf slab initialization SGI-PV: 908809 SGI-Modid: xfs-linux:xfs-kern:192756a Signed-off-by: Christoph Hellwig Signed-off-by: Nathan Scott commit 02de1f0abfc60aa4fead65eee4118d05667c93c3 Author: Christoph Hellwig Date: Tue Jun 21 15:33:48 2005 +1000 [XFS] fix some more compiler warnings in the vnode tracing code SGI-PV: 934679 SGI-Modid: xfs-linux:xfs-kern:192570a Signed-off-by: Christoph Hellwig Signed-off-by: Nathan Scott commit 23ea4032c875fc75c2363a9bcaba87cfb134ff68 Author: Christoph Hellwig Date: Tue Jun 21 15:14:01 2005 +1000 [XFS] rename various pagebuf symbols to xfsbuf SGI-PV: 908809 SGI-Modid: xfs-linux:xfs-kern:192348a Signed-off-by: Christoph Hellwig Signed-off-by: Nathan Scott commit 9ba91bd365a7f137c40b3644b57bc25853cd2d8d Author: Dean Roehrich Date: Tue Jun 21 15:12:20 2005 +1000 [XFS] send dmapi events from nopage for mmapped files SGI-PV: 935317 SGI-Modid: xfs-linux:xfs-kern:192007a Signed-off-by: Dean Roehrich Signed-off-by: Nathan Scott commit eaffe886b5b345eaf6586be78eef762b6fd3e2bd Author: Dean Roehrich Date: Tue Jun 21 14:47:46 2005 +1000 [XFS] Undo xfs-linux:xfs-kern:190622a SGI-PV: 933551 SGI-Modid: xfs-linux:xfs-kern:192006a Signed-off-by: Dean Roehrich Signed-off-by: Nathan Scott commit 2b7f4bd02699daef40388d84b08106550b0e10a3 Author: Dean Roehrich Date: Tue Jun 21 14:24:27 2005 +1000 [XFS] upate copyrights SGI-PV: 933765 SGI-Modid: xfs-linux:xfs-kern:190760a Signed-off-by: Dean Roehrich Signed-off-by: Nathan Scott commit 6fac0cb46bc4c50d6cbc5998ad206435f39fb00f Author: Dean Roehrich Date: Tue Jun 21 14:07:45 2005 +1000 [XFS] coordinate mmap calls with xfs_dm_punch_hole SGI-PV: 933551 SGI-Modid: xfs-linux:xfs-kern:190622a Signed-off-by: Dean Roehrich Signed-off-by: Nathan Scott commit b74e2159c9849fb97659c6dc47ad706f702b22b9 Author: Nathan Scott Date: Tue Jun 21 13:21:49 2005 +1000 [XFS] Add a get/set interface for XFS project identifiers. SGI-PV: 932952 SGI-Modid: xfs-linux:xfs-kern:21938a Signed-off-by: Nathan Scott commit 1d345dac1f30af1cd9f3a1faa12f9f18f17f236e Merge: fb395884576684ebb54b19b1054f4caed589d5f0 87c8a4433b608261a9becdb0ce2d2f2ed4b71d05 Author: Linus Torvalds Date: Mon Jun 20 16:00:33 2005 -0700 Merge master.kernel.org:/pub/scm/linux/kernel/git/gregkh/driver-2.6 commit fb395884576684ebb54b19b1054f4caed589d5f0 Merge: 91b90475e793e84a57d956af8c52645e292badcb 246955fe4c38bd706ae30e37c64892c94213775d Author: Linus Torvalds Date: Mon Jun 20 15:58:58 2005 -0700 Merge rsync://rsync.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6 commit 87c8a4433b608261a9becdb0ce2d2f2ed4b71d05 Author: Greg Kroah-Hartman Date: Sun Jun 19 12:21:43 2005 +0200 [PATCH] PCI: fix show_modalias() function due to attribute change Signed-off-by: Greg Kroah-Hartman commit 4893e9d1cfeb614b5155c43eefbb338b4f02cb34 Author: Greg Kroah-Hartman Date: Sun Jun 19 12:21:43 2005 +0200 [PATCH] USB: fix show_modalias() function due to attribute change Signed-off-by: Greg Kroah-Hartman commit 9d9d27fb651a7c95a46f276bacb4329db47470a6 Author: Jon Smirl Date: Tue Jun 14 09:54:54 2005 -0400 [PATCH] SYSFS: fix PAGE_SIZE check Without this change I can't set an attribute exactly PAGE_SIZE in length. There is no need for zero termination because the interface uses lengths. From: Jon Smirl Signed-off-by: Greg Kroah-Hartman commit 42b16c051c3f462095fb8c9bad1bc05b34518cb9 Author: Benjamin Herrenschmidt Date: Tue May 31 17:08:49 2005 +1000 [PATCH] Driver core: Don't "lose" devices on suspend on failure I think we need this patch or we might "lose" devices to the dpm_irq_off list if a failure occurs during the suspend process. Signed-off-by: Benjamin Herrenschmidt Signed-off-by: Greg Kroah-Hartman commit 8215534ce7d073423bfa9c17405c43ab7636ca03 Author: Maneesh Soni Date: Tue May 31 10:39:52 2005 +0530 [PATCH] sysfs-iattr: set inode attributes o Following patch sets the attributes for newly allocated inodes for sysfs objects. If the object has non-default attributes, inode attributes are set as saved in sysfs_dirent->s_iattr, pointer to struct iattr. Signed-off-by: Maneesh Soni Signed-off-by: Greg Kroah-Hartman commit 988d186de5b6966a71a8cc52e6cb4895fd2f7799 Author: Maneesh Soni Date: Tue May 31 10:39:14 2005 +0530 [PATCH] sysfs-iattr: add sysfs_setattr o This adds ->i_op->setattr VFS method for sysfs inodes. The changed attribues are saved in the persistent sysfs_dirent structure as a pointer to struct iattr. The struct iattr is allocated only for those sysfs_dirent's for which default attributes are getting changed. Thanks to Jon Smirl for this suggestion. Signed-off-by: Maneesh Soni Signed-off-by: Greg Kroah-Hartman commit 6fa5c828c7fb6beef7035864bd2b18e7386fbdd5 Author: Maneesh Soni Date: Tue May 31 10:38:12 2005 +0530 [PATCH] sysfs-iattr: attach sysfs_dirent before new inode o The following patch makes sure to attach sysfs_dirent to the dentry before allocation a new inode through sysfs_create(). This change is done as preparatory work for implementing ->i_op->setattr() functionality for sysfs objects. Signed-off-by: Maneesh Soni Signed-off-by: Greg Kroah-Hartman commit 050480f12aeab62d39a1a07546606a47217ebefa Author: Yani Ioannou Date: Sun Jun 5 10:51:46 2005 +0200 [PATCH] I2C: drivers/i2c/chips/adm1026.c: use dynamic sysfs callbacks Finally (phew!) this patch demonstrates how to adapt the adm1026 to take advantage of the new callbacks, and the i2c-sysfs.h defined structure/macros. Most of the other sensor/hwmon drivers could be updated in the same way. The odd few exceptions (bmcsensors for example) however might be better off with their own custom attribute structure. Signed-off-by: Yani Ioannou Signed-off-by: Jean Delvare Signed-off-by: Greg Kroah-Hartman commit 0a3e7eeabc9f76b7496488aad2d11626ff6a2a4f Author: Yani Ioannou Date: Tue May 17 22:59:05 2005 -0400 [PATCH] I2C: add i2c sensor_device_attribute and macros This patch creates a new header with a potential standard i2c sensor attribute type (which simply includes an int representing the sensor number/index) and the associated macros, SENSOR_DEVICE_ATTR to define a static attribute and to_sensor_dev_attr to get a sensor_device_attribute reference from an embedded device_attribute reference. Signed-off-by: Yani Ioannou commit f2d03e1b3f00f1c5971463ab0101bef0c521ad3b Author: Yani Ioannou Date: Tue May 17 06:44:59 2005 -0400 [PATCH] Driver Core: include: update device attribute callbacks Signed-off-by: Yani Ioannou Signed-off-by: Greg Kroah-Hartman commit 060b8845e6bea938d65ad6f89e83507e5ff4fec4 Author: Yani Ioannou Date: Tue May 17 06:44:04 2005 -0400 [PATCH] Driver Core: drivers/usb/input/aiptek.c - drivers/zorro/zorro-sysfs.c: update device attribute callbacks Signed-off-by: Yani Ioannou Signed-off-by: Greg Kroah-Hartman commit 10523b3b82456e416cbaffcc24ea2246980aa746 Author: Yani Ioannou Date: Tue May 17 06:43:37 2005 -0400 [PATCH] Driver Core: drivers/s390/net/qeth_sys.c - drivers/usb/gadget/pxa2xx_udc.c: update device attribute callbacks Signed-off-by: Yani Ioannou Signed-off-by: Greg Kroah-Hartman commit 3fd3c0a5f53a0f9d8987b90acbd84f7dd8ef606e Author: Yani Ioannou Date: Tue May 17 06:43:27 2005 -0400 [PATCH] Driver Core: drivers/char/raw3270.c - drivers/net/netiucv.c: update device attribute callbacks Signed-off-by: Yani Ioannou Signed-off-by: Greg Kroah-Hartman commit e404e274f62665f3333d6a539d0d3701f678a598 Author: Yani Ioannou Date: Tue May 17 06:42:58 2005 -0400 [PATCH] Driver Core: drivers/i2c/chips/w83781d.c - drivers/s390/block/dcssblk.c: update device attribute callbacks Signed-off-by: Yani Ioannou Signed-off-by: Greg Kroah-Hartman commit a5099cfc2e82240b0a3e72ad79a5969d5af1a7dc Author: Yani Ioannou Date: Tue May 17 06:42:25 2005 -0400 [PATCH] Driver Core: drivers/i2c/chips/pc87360.c - w83627hf.c: update device attribute callbacks Signed-off-by: Yani Ioannou Signed-off-by: Greg Kroah-Hartman commit 8627f9ba531269d8850919c62af1b017438e2e79 Author: Yani Ioannou Date: Tue May 17 06:42:03 2005 -0400 [PATCH] Driver Core: drivers/i2c/chips/lm77.c - max1619.c: update device attribute callbacks Signed-off-by: Yani Ioannou Signed-off-by: Greg Kroah-Hartman commit 30f74292e50d6c4ae438dbee5cb45d77bf774351 Author: Yani Ioannou Date: Tue May 17 06:41:35 2005 -0400 [PATCH] Driver Core: drivers/i2c/chips/adm1031.c - lm75.c: update device attribute callbacks Signed-off-by: Yani Ioannou Signed-off-by: Greg Kroah-Hartman commit 74880c063b06efd103c924abfe19d9d8fa4864c4 Author: Yani Ioannou Date: Tue May 17 06:41:12 2005 -0400 [PATCH] Driver Core: drivers/base - drivers/i2c/chips/adm1026.c: update device attribute callbacks Signed-off-by: Yani Ioannou Signed-off-by: Greg Kroah-Hartman commit ff381d2223a30ee70752791fd9c3588d8f1cab77 Author: Yani Ioannou Date: Tue May 17 06:40:51 2005 -0400 [PATCH] Driver Core: arch: update device attribute callbacks Signed-off-by: Yani Ioannou Signed-off-by: Greg Kroah-Hartman commit 3eb8c7836eb074b61d63597be3e4f085814ac4c0 Author: Yani Ioannou Date: Tue May 17 06:40:28 2005 -0400 [PATCH] Driver core: Documentation: update device attribute callbacks Signed-off-by: Yani Ioannou Signed-off-by: Greg Kroah-Hartman commit 54b6f35c99974e99e64c05c2895718355123c55f Author: Yani Ioannou Date: Tue May 17 06:39:34 2005 -0400 [PATCH] Driver core: change device_attribute callbacks This patch adds the device_attribute paramerter to the device_attribute store and show sysfs callback functions, and passes a reference to the attribute when the callbacks are called. Signed-off-by: Yani Ioannou Signed-off-by: Greg Kroah-Hartman commit ca2b94ba12f3c36fd3d6ed9d38b3798d4dad0d8b Author: Hannes Reinecke Date: Wed May 18 10:42:23 2005 +0200 [PATCH] driver core: fix error handling in bus_add_device The error handling in bus_add_device() and device_attach() is simply non-existing. This patch propagates any error from device_attach to the upper layers to allow for a proper recovery. From: Hannes Reinecke Signed-off-by: Greg Kroah-Hartman commit acaefc25d21f850e47ecc5098d1e0bc442c526be Author: Arnd Bergmann Date: Wed May 18 14:40:59 2005 +0200 [PATCH] libfs: add simple attribute files Based on the discussion about spufs attributes, this is my suggestion for a more generic attribute file support that can be used by both debugfs and spufs. Simple attribute files behave similarly to sequential files from a kernel programmers perspective in that a standard set of file operations is provided and only an open operation needs to be written that registers file specific get() and set() functions. These operations are defined as void foo_set(void *data, u64 val); and u64 foo_get(void *data); where data is the inode->u.generic_ip pointer of the file and the operations just need to make send of that pointer. The infrastructure makes sure this works correctly with concurrent access and partial read calls. A macro named DEFINE_SIMPLE_ATTRIBUTE is provided to further simplify using the attributes. This patch already contains the changes for debugfs to use attributes for its internal file operations. Signed-off-by: Arnd Bergmann Signed-off-by: Greg Kroah-Hartman commit 4109aca06cb7b042ea791d0f9d3c9615bc3bf5cd Author: David Brownell Date: Mon May 16 17:19:55 2005 -0700 [PATCH] Driver Core: driver model doc update This updates some driver data documentation: - removes references to some fields that haven't been there for a long time now, e.g. pre-kobject or even older; - giving more information about the probe() method; - adding an example of how platform_data is used Signed-off-by: David Brownell Signed-off-by: Greg Kroah-Hartman commit 4b45099b75832434c5113b9aed1499f8a69d13d5 Author: Keiichiro Tokunaga Date: Sun May 8 21:28:53 2005 +0900 [PATCH] Driver core: unregister_node() for hotplug use This adds a generic function 'unregister_node()'. It is used to remove objects of a node going away for hotplug. All the devices on the node must be unregistered before calling this function. Signed-off-by: Keiichiro Tokunaga Signed-off-by: Greg Kroah-Hartman diff -puN drivers/base/node.c~numa_hp_base drivers/base/node.c commit f409661877a25d11c2495bcd879807f17c286684 Author: Alan Stern Date: Fri May 6 15:41:08 2005 -0400 [PATCH] usbcore: Don't call device_release_driver recursively This patch fixes usb_driver_release_interface() to make it avoid calling device_release_driver() recursively, i.e., when invoked from within the disconnect routine for the same device. The patch applies to your "driver" tree. Signed-off-by: Alan Stern Signed-off-by: Greg Kroah-Hartman commit c95a6b057b108c2b7add35cba1354f9af921349e Author: Alan Stern Date: Fri May 6 15:38:33 2005 -0400 [PATCH] driver core: Fix races in driver_detach() This patch is intended for your "driver" tree. It fixes several subtle races in driver_detach() and device_release_driver() in the driver-model core. The major change is to use klist_remove() rather than klist_del() when taking a device off its driver's list. There's no other way to guarantee that the list pointers will be updated before some other driver binds to the device. For this to work driver_detach() can't use a klist iterator, so the loop over the devices must be written out in full. In addition the patch protects against the possibility that, when a driver and a device are unregistered at the same time, one may be unloaded from memory before the other is finished using it. Signed-off-by: Alan Stern Signed-off-by: Greg Kroah-Hartman commit 6623415687eaffef49429292ab062bb046ee3311 Author: Patrick Mochel Date: Thu Apr 28 17:11:52 2005 -0700 [PATCH] sn: fixes due to driver core changes Signed-off-by: Andrew Morton Signed-off-by: Greg Kroah-Hartman commit 273971bade8a6d37c1b162146de1a53965cdc245 Author: Patrick Mochel Date: Mon Jun 20 15:15:28 2005 -0700 [PATCH] usb: klist_node_attached() fix The original code looks like this: /* if interface was already added, bind now; else let * the future device_add() bind it, bypassing probe() */ if (!list_empty (&dev->bus_list)) device_bind_driver(dev); IOW, it's checking to see if the device is attached to the bus or not and binding the driver if it is. It's checking the device's bus list, which will only appear empty when the device has been initialized, but not added. It depends way too much on the driver model internals, but it seems to be the only way to do the weird crap they want to do with interfaces. When I converted it to use klists, I accidentally inverted the logic, which led to bad things happening. This patch returns the check to its orginal value. From: Patrick Mochel Signed-off-by: Andrew Morton Signed-off-by: Greg Kroah-Hartman Index: gregkh-2.6/drivers/usb/core/usb.c =================================================================== commit 12eac738e5889a10da5b391c02eeb61229c796dc Author: Jason Uhlenkott Date: Wed Mar 30 13:19:54 2005 -0800 [PATCH] Fix typo in scdrv_init() Fix a typo in scdrv_init() which was breaking the build for SGI sn2. Signed-off-by: Jason Uhlenkott Signed-off-by: Andrew Morton Signed-off-by: Greg Kroah-Hartman commit 0d3e5a2e39b6ba2974e9e7c2a429018c45de8e76 Author: Patrick Mochel Date: Tue Apr 5 23:46:33 2005 -0700 [PATCH] Driver Core: fix bk-driver-core kills ppc64 There's no check to see if the device is already bound to a driver, which could do bad things. The first thing to go wrong is that it will try to match a driver with a device already bound to one. In some cases (it appears with USB with drivers/usb/core/usb.c::usb_match_id()), some drivers will match a device based on the class type, so it would be common (especially for HID devices) to match a device that is already bound. The fun comes when ->probe() is called, it fails, then driver_probe_device() does this: dev->driver = NULL; Later on, that pointer could be be dereferenced without checking and cause hell to break loose. This problem could be nasty. It's very hardware dependent, since some devices could have a different set of matching qualifiers than others. Now, I don't quite see exactly where/how you were getting that crash. You're dereferencing bad memory, but I'm not sure which pointer was bad and where it came from, but it could have come from a couple of different places. The patch below will hopefully fix it all up for you. It's against 2.6.12-rc2-mm1, and does the following: - Move logic to driver_probe_device() and comments uncommon returns: 1 - If device is bound 0 - If device not bound, and no error error - If there was an error. - Move locking to caller of that function, since we want to lock a device for the entire time we're trying to bind it to a driver (to prevent against a driver being loaded at the same time). - Update __device_attach() and __driver_attach() to do that locking. - Check if device is already bound in __driver_attach() - Update the converse device_release_driver() so it locks the device around all of the operations. - Mark driver_probe_device() as static and remove export. It's an internal function, it should stay that way, and there are no other callers. If there is ever a need to export it, we can audit it as necessary. Signed-off-by: Andrew Morton commit b86c1df1f98d16c999423a3907eb40a9423f481e Author: gregkh@suse.de Date: Thu Mar 31 12:53:00 2005 -0800 [PATCH] Driver core: Fix up the driver and device iterators to be quieter Also stops looping over the lists when a match is found. Signed-off-by: Greg Kroah-Hartman Date: Tue Mar 29 13:36:43 2005 -0800 [PATCH] use device_for_each_child() to properly access child devices. On Friday, March 25, 2005 8:47 PM Greg KH wrote: >Here's a fix for pci express. For some reason I don't think they are >using the driver model properly here, but I could be wrong... Thanks for making the changes. However, changes in functions: void pcie_port_device_remove(struct pci_dev *dev) and static int remove_iter(struct device *dev, void *data) are not correct. Please use the patch, which is based on kernel 2.6.12-rc1, below for a fix for these. Signed-off-by: Greg Kroah-Hartman commit 64360322ab3330d4881166380ad43a1eec2f123d Author: gregkh@suse.de Date: Fri Mar 25 11:45:31 2005 -0800 [PATCH] Use device_for_each_child() to unregister devices in nodemgr_remove_host_dev() Signed-off-by: Greg Kroah-Hartman diff -Nru a/drivers/ieee1394/nodemgr.c b/drivers/ieee1394/nodemgr.c commit ff710710eae73990dd484ea8e37dba636452502b Author: gregkh@suse.de Date: Thu Mar 24 00:44:28 2005 -0800 [PATCH] USB: fix build warning in usb core as pointed out by Andrew. Signed-off-by: Greg Kroah-Hartman Index: gregkh-2.6/drivers/usb/core/usb.c =================================================================== commit 126eddfbf8cae8a20c22708192bffcbd77c8a889 Author: gregkh@suse.de Date: Tue Mar 22 12:17:13 2005 -0800 [PATCH] driver core: change export symbol for driver_for_each_device() Signed-off-by: Greg Kroah-Hartman Index: linux-2.6.12-rc2/drivers/base/driver.c =================================================================== commit 4d12d2d953ca5e299de6a653f1d0478f670d7bc6 Author: mochel@digitalimplant.org Date: Thu Mar 24 20:08:04 2005 -0800 [PATCH] Fix up bogus comment. Signed-off-by: Patrick Mochel Signed-off-by: Greg Kroah-Hartman diff -Nru a/drivers/base/driver.c b/drivers/base/driver.c commit 36239577cfb6b9a7c111209536b54200b0252ebf Author: mochel@digitalimplant.org Date: Thu Mar 24 19:08:30 2005 -0800 [PATCH] Use a klist for device child lists. - Use klist iterator in device_for_each_child(), making it safe to use for removing devices. - Remove unused list_to_dev() function. - Kills all usage of devices_subsys.rwsem. Signed-off-by: Patrick Mochel Signed-off-by: Greg Kroah-Hartman commit 9a881f166f473373589ce6f3fdc47b44a1450e2d Author: gregkh@suse.de Date: Fri Mar 25 15:52:00 2005 -0800 [PATCH] use device_for_each_child() to properly access child devices. Signed-off-by: Greg Kroah-Hartman commit 20b1e674230b642be662c5975923a0160ab9cbdc Author: mochel@digitalimplant.org Date: Thu Mar 24 19:03:59 2005 -0800 [PATCH] Use device_for_each_child() to unregister devices in scsi_remove_target(). Signed-off-by: Patrick Mochel Signed-off-by: Greg Kroah-Hartman Index: gregkh-2.6/drivers/scsi/scsi_sysfs.c =================================================================== commit 0293a509405dccecc30783a5d729d615b68d6a77 Author: mochel@digitalimplant.org Date: Thu Mar 24 18:59:59 2005 -0800 [PATCH] Don't reference NULL klist pointer in klist_remove(). Signed-off-by: Patrick Mochel Signed-off-by: Greg Kroah-Hartman diff -Nru a/lib/klist.c b/lib/klist.c commit 0956af53afea290c5676c75249fc2c180d831375 Author: mochel@digitalimplant.org Date: Thu Mar 24 18:58:45 2005 -0800 [PATCH] Call klist_del() instead of klist_remove(). - Can't wait on removing the current item in the list (the positive refcount *because* we are using it causes it to deadlock). Signed-off-by: Patrick Mochel Signed-off-by: Greg Kroah-Hartman commit 63c4f204ffc8219696bda88eb20c9873d007a2fc Author: mochel@digitalimplant.org Date: Thu Mar 24 13:08:05 2005 -0800 [PATCH] Remove struct device::driver_list. Signed-off-by: Patrick Mochel Signed-off-by: Greg Kroah-Hartman commit 7dc35cdf69149a7f2b5216ada9bafe359746ac1c Author: mochel@digitalimplant.org Date: Thu Mar 24 13:03:35 2005 -0800 [PATCH] Remove struct device::bus_list. Signed-off-by: Patrick Mochel Signed-off-by: Greg Kroah-Hartman commit 6eded061b1263847aedac7469339e99579aec5e5 Author: mochel@digitalimplant.org Date: Thu Mar 24 13:02:28 2005 -0800 [PATCH] Fix up bus code and remove use of rwsem. - Don't add devices to bus's embedded kset, since it's not used by anyone anymore. - Don't need to take the bus rwsem when calling {device,driver}_attach(), since those functions use the klists and the klists' spinlocks. Signed-off-by: Patrick Mochel Signed-off-by: Greg Kroah-Hartman commit d4a7537122fa47a6ce41c5fdab53d844c78d7023 Author: mochel@digitalimplant.org Date: Thu Mar 24 13:00:16 2005 -0800 [PATCH] Fix up USB to use klist_node_attached() instead of list_empty() on lists that will go away. Signed-off-by: Patrick Mochel Signed-off-by: Greg Kroah-Hartman Index: gregkh-2.6/drivers/usb/core/usb.c =================================================================== commit 8b0c250be489dcbf1a3a33bb4ec4c7f33735a365 Author: mochel@digitalimplant.org Date: Thu Mar 24 12:58:57 2005 -0800 [PATCH] add klist_node_attached() to determine if a node is on a list or not. Signed-off-by: Patrick Mochel Signed-off-by: Greg Kroah-Hartman diff -Nru a/include/linux/klist.h b/include/linux/klist.h commit 2287c322b61fced7e0c326a1a9606aa73147e3df Author: mochel@digitalimplant.org Date: Thu Mar 24 10:50:24 2005 -0800 [PATCH] Use bus_for_each_{dev,drv} for driver binding. - Now possible, since the lists are locked using the klist lock and not the global rwsem. Signed-off-by: Patrick Mochel Signed-off-by: Greg Kroah-Hartman commit cb85b6f1cc811ecb9ed4b950206d8941ba710e68 Author: mochel@digitalimplant.org Date: Thu Mar 24 10:48:35 2005 -0800 [PATCH] Remove the unused device_find(). Signed-off-by: Patrick Mochel Signed-off-by: Greg Kroah-Hartman commit 94e7b1c5ff2055571703e38b059afffe17658432 Author: mochel@digitalimplant.org Date: Mon Mar 21 12:25:36 2005 -0800 [PATCH] Add a klist to struct device_driver for the devices bound to it. - Use it in driver_for_each_device() instead of the regular list_head and stop using the bus's rwsem for protection. - Use driver_for_each_device() in driver_detach() so we don't deadlock on the bus's rwsem. - Remove ->devices. - Move klist access and sysfs link access out from under device's semaphore, since they're synchronized through other means. Signed-off-by: Patrick Mochel Signed-off-by: Greg Kroah-Hartman commit 38fdac3cdce276554b4484a41f8ec2daf81cb2ff Author: mochel@digitalimplant.org Date: Mon Mar 21 12:00:18 2005 -0800 [PATCH] Add a klist to struct bus_type for its drivers. - Use it in bus_for_each_drv(). - Use the klist spinlock instead of the bus rwsem. Signed-off-by: Patrick Mochel Signed-off-by: Greg Kroah-Hartman commit 465c7a3a3a5aabcedd2e43612cac5a12f23da19a Author: mochel@digitalimplant.org Date: Mon Mar 21 11:49:14 2005 -0800 [PATCH] Add a klist to struct bus_type for its devices. - Use it for bus_for_each_dev(). - Use the klist spinlock instead of the bus rwsem. Signed-off-by: Patrick Mochel Signed-off-by: Greg Kroah-Hartman commit 9a19fea43616066561e221359596ce532e631395 Author: mochel@digitalimplant.org Date: Mon Mar 21 11:45:16 2005 -0800 [PATCH] Add initial implementation of klist helpers. This klist interface provides a couple of structures that wrap around struct list_head to provide explicit list "head" (struct klist) and list "node" (struct klist_node) objects. For struct klist, a spinlock is included that protects access to the actual list itself. struct klist_node provides a pointer to the klist that owns it and a kref reference count that indicates the number of current users of that node in the list. The entire point is to provide an interface for iterating over a list that is safe and allows for modification of the list during the iteration (e.g. insertion and removal), including modification of the current node on the list. It works using a 3rd object type - struct klist_iter - that is declared and initialized before an iteration. klist_next() is used to acquire the next element in the list. It returns NULL if there are no more items. This klist interface provides a couple of structures that wrap around struct list_head to provide explicit list "head" (struct klist) and list "node" (struct klist_node) objects. For struct klist, a spinlock is included that protects access to the actual list itself. struct klist_node provides a pointer to the klist that owns it and a kref reference count that indicates the number of current users of that node in the list. The entire point is to provide an interface for iterating over a list that is safe and allows for modification of the list during the iteration (e.g. insertion and removal), including modification of the current node on the list. It works using a 3rd object type - struct klist_iter - that is declared and initialized before an iteration. klist_next() is used to acquire the next element in the list. It returns NULL if there are no more items. Internally, that routine takes the klist's lock, decrements the reference count of the previous klist_node and increments the count of the next klist_node. It then drops the lock and returns. There are primitives for adding and removing nodes to/from a klist. When deleting, klist_del() will simply decrement the reference count. Only when the count goes to 0 is the node removed from the list. klist_remove() will try to delete the node from the list and block until it is actually removed. This is useful for objects (like devices) that have been removed from the system and must be freed (but must wait until all accessors have finished). Internally, that routine takes the klist's lock, decrements the reference count of the previous klist_node and increments the count of the next klist_node. It then drops the lock and returns. There are primitives for adding and removing nodes to/from a klist. When deleting, klist_del() will simply decrement the reference count. Only when the count goes to 0 is the node removed from the list. klist_remove() will try to delete the node from the list and block until it is actually removed. This is useful for objects (like devices) that have been removed from the system and must be freed (but must wait until all accessors have finished). Signed-off-by: Patrick Mochel Signed-off-by: Greg Kroah-Hartman diff -Nru a/include/linux/klist.h b/include/linux/klist.h commit 6034a080f98b0bbc0a058e2ac65a538f75cffeee Author: mochel@digitalimplant.org Date: Mon Mar 21 11:09:40 2005 -0800 [PATCH] Use driver_for_each_device() instead of manually walking list. Signed-off-by: Patrick Mochel Signed-off-by: Greg Kroah-Hartman Index: gregkh-2.6/drivers/usb/core/usb.c =================================================================== commit 8d618afdd61ccaacbab4976a556c0ddcf36e2d8a Author: mochel@digitalimplant.org Date: Mon Mar 21 11:07:54 2005 -0800 [PATCH] Use driver_for_each_device() in drivers/pnp/driver.c instead of manually walking list. Signed-off-by: Patrick Mochel Signed-off-by: Greg Kroah-Hartman diff -Nru a/drivers/pnp/driver.c b/drivers/pnp/driver.c commit fae3cd00255e3e51ffd59fedb1bdb91ec96be395 Author: mochel@digitalimplant.org Date: Mon Mar 21 10:59:56 2005 -0800 [PATCH] Add driver_for_each_device(). Now there's an iterator for accessing each device bound to a driver. Signed-off-by: Patrick Mochel Signed-off-by: Greg Kroah-Hartman Index: linux-2.6.12-rc2/drivers/base/driver.c =================================================================== commit 07e4a3e27fe414980ddc85a358e5a56abc48b363 Author: mochel@digitalimplant.org Date: Mon Mar 21 10:52:54 2005 -0800 [PATCH] Move device/driver code to drivers/base/dd.c This relocates the driver binding/unbinding code to drivers/base/dd.c. This is done for two reasons: One, it's not code related to the bus_type itself; it uses some from that, some from devices, and some from drivers. And Two, it will make it easier to do some of the upcoming lock removal on that code.. Signed-off-by: Patrick Mochel Signed-off-by: Greg Kroah-Hartman commit af70316af182f4716cc5eec7e0d27fc731d164bd Author: mochel@digitalimplant.org Date: Mon Mar 21 10:41:04 2005 -0800 [PATCH] Add a semaphore to struct device to synchronize calls to its driver. This adds a per-device semaphore that is taken before every call from the core to a driver method. This prevents e.g. simultaneous calls to the ->suspend() or ->resume() and ->probe() or ->release(), potentially saving a whole lot of headaches. It also moves us a step closer to removing the bus rwsem, since it protects the fields in struct device that are modified by the core. Signed-off-by: Patrick Mochel Signed-off-by: Greg Kroah-Hartman commit eb51b65005737b777e0709683b061d5f82aefd97 Author: Andrew Morton Date: Thu May 5 15:06:38 2005 -0700 [PATCH] fix up ipmi code after class_simple.c removal Cc: Corey Minyard Signed-off-by: Andrew Morton Signed-off-by: Greg Kroah-Hartman commit 733a366c34aea88def75dee478f92233410ab3c4 Author: Adrian Bunk Date: Thu May 5 15:06:38 2005 -0700 [PATCH] fix "make mandocs" after class_simple.c removal Due to the removal of class_simple.c, "make mandocs" no longer works. This patch fixes this issue. Signed-off-by: Adrian Bunk Signed-off-by: Andrew Morton Signed-off-by: Greg Kroah-Hartman commit cd987d38cc59053e0bab8150ffaca33b109067f3 Author: gregkh@suse.de Date: Wed Mar 23 11:12:38 2005 -0800 [PATCH] class: remove class_simple code, as no one in the tree is using it anymore. Signed-off-by: Greg Kroah-Hartman commit 2fc68447df5c76cf254037047b4b02551bd5d760 Author: gregkh@suse.de Date: Wed Mar 23 10:02:56 2005 -0800 [PATCH] class: add kerneldoc for the new class functions. Signed-off-by: Greg Kroah-Hartman commit 1db560afe629b682c45a7f4ba7edf98b4ee28518 Author: gregkh@suse.de Date: Wed Mar 23 10:02:26 2005 -0800 [PATCH] class: convert the remaining class_simple users in the kernel to usee the new class api Signed-off-by: Greg Kroah-Hartman commit 5cebfb759cc75208c04590ad7f4485cdd822cf46 Author: Mark M. Hoffman Date: Mon May 2 23:35:45 2005 -0400 [PATCH] USB: trivial error path fix Trivial fix to USB class-creation error path; please apply. Signed-off-by: Mark M. Hoffman Signed-off-by: Greg Kroah-Hartman commit 56b2293595b2eb52cc2aa2baf92c6cfa8265f9d5 Author: gregkh@suse.de Date: Wed Mar 23 10:01:41 2005 -0800 [PATCH] class: convert drivers/* to use the new class api instead of class_simple Signed-off-by: Greg Kroah-Hartman commit 8874b414ffe037c39e73bb262ddf69653a13c0a4 Author: gregkh@suse.de Date: Wed Mar 23 09:56:34 2005 -0800 [PATCH] class: convert arch/* to use the new class api instead of class_simple Signed-off-by: Greg Kroah-Hartman commit d253878b3d9ae523c76118f5336a662780ad3757 Author: gregkh@suse.de Date: Wed Mar 23 09:55:22 2005 -0800 [PATCH] class: convert drivers/scsi/* to use the new class api instead of class_simple Signed-off-by: Greg Kroah-Hartman commit 7e25ab9155aef04e83da69545742cf65c9b801ce Author: gregkh@suse.de Date: Wed Mar 23 09:53:36 2005 -0800 [PATCH] class: convert drivers/ieee1394/* to use the new class api instead of class_simple Signed-off-by: Greg Kroah-Hartman commit ca8eca6884861c1ce294b05aacfdf9045bba9aff Author: gregkh@suse.de Date: Wed Mar 23 09:53:09 2005 -0800 [PATCH] class: convert drivers/char/* to use the new class api instead of class_simple Signed-off-by: Greg Kroah-Hartman commit deb3697037a7d362d13468a73643e09cbc1615a8 Author: gregkh@suse.de Date: Wed Mar 23 09:52:10 2005 -0800 [PATCH] class: convert drivers/block/* to use the new class api instead of class_simple Signed-off-by: Greg Kroah-Hartman commit 619e666b7e9d2b0545ab60a9c824ae5f77c20c3b Author: gregkh@suse.de Date: Wed Mar 23 09:51:41 2005 -0800 [PATCH] class: convert sound/* to use the new class api instead of class_simple Signed-off-by: Greg Kroah-Hartman commit 8561b10f6e7ef0a085709ffc844f74130a067abe Author: gregkh@suse.de Date: Tue Mar 15 15:10:13 2005 -0800 [PATCH] USB: move the usb hcd code to use the new class code. This moves a kref into the main hcd structure, which detaches it from the class device structure. Signed-off-by: Greg Kroah-Hartman commit 1235686f6e67cf30c460eb77d90a6cb4be57b92f Author: gregkh@suse.de Date: Tue Mar 15 14:26:30 2005 -0800 [PATCH] INPUT: move to use the new class code, instead of class_simple Signed-off-by: Greg Kroah-Hartman commit 7fe845d11ad1b4aac098d40c55275569e143c483 Author: gregkh@suse.de Date: Tue Mar 15 14:23:15 2005 -0800 [PATCH] tty: move to use the new class code, instead of class_simple Signed-off-by: Greg Kroah-Hartman commit e9ba6365fd4f0d9e7d022c883bd044fbaa48257f Author: gregkh@suse.de Date: Tue Mar 15 11:54:21 2005 -0800 [PATCH] CLASS: move a "simple" class logic into the class core. One step on improving the class api so that it can not be used incorrectly. This also fixes the module owner issue with the dev files that happened when the devt logic moved to the class core. Based on a patch originally written by Kay Sievers Signed-off-by: Greg Kroah-Hartman commit 70f2817a43c89b784dc2ec3d06ba5bf3064f8235 Author: Dmitry Torokhov Date: Fri Apr 29 01:27:34 2005 -0500 [PATCH] sysfs: (rest) if show/store is missing return -EIO sysfs: fix the rest of the kernel so if an attribute doesn't implement show or store method read/write will return -EIO instead of 0 or -EINVAL or -EPERM. Signed-off-by: Dmitry Torokhov Signed-off-by: Greg Kroah-Hartman commit 6c1852a08e444a2e66367352a99c0e93c8bf3e97 Author: Dmitry Torokhov Date: Fri Apr 29 01:26:06 2005 -0500 [PATCH] sysfs: (driver/block) if show/store is missing return -EIO sysfs: fix drivers/block so if an attribute doesn't implement show or store method read/write will return -EIO instead of 0 or -EINVAL. Signed-off-by: Dmitry Torokhov Signed-off-by: Greg Kroah-Hartman commit fc7e4828995d8c9e4c9597f8a19179e4ab53f73e Author: Dmitry Torokhov Date: Fri Apr 29 01:26:27 2005 -0500 [PATCH] sysfs: (driver/pci) if show/store is missing return -EIO sysfs: fix drivers/pci so if an attribute does not implement show or store method read/write will return -EIO instead of 0. Signed-off-by: Dmitry Torokhov Signed-off-by: Greg Kroah-Hartman commit 4a0c20bf8c0fe2116f8fd7d3da6122bf8a01f026 Author: Dmitry Torokhov Date: Fri Apr 29 01:23:47 2005 -0500 [PATCH] sysfs: (driver/base) if show/store is missing return -EIO sysfs: fix drivers/base so if an attribute doesn't implement show or store method read/write will return -EIO instead of 0. Signed-off-by: Dmitry Torokhov Signed-off-by: Greg Kroah-Hartman commit c76d0abd07a9c9cf72bbb5b641e1e97f92ea8f3e Author: Dmitry Torokhov Date: Fri Apr 29 01:22:00 2005 -0500 [PATCH] sysfs: if show/store is missing return -EIO sysfs: if attribute does not implement show or store method read/write should return -EIO instead of 0 or -EINVAL. Signed-off-by: Dmitry Torokhov Signed-off-by: Greg Kroah-Hartman commit d48593bf208e0d046c35fb0707ae5b23fef8c4ff Author: Dmitry Torokhov Date: Fri Apr 29 00:58:46 2005 -0500 [PATCH] Make attributes names const char * sysfs: make attributes and attribute_group's names const char * Signed-off-by: Dmitry Torokhov Signed-off-by: Greg Kroah-Hartman commit 8d790d74085833ba2a3e84b5bcd683be4981c29a Author: Dmitry Torokhov Date: Tue Apr 26 02:34:05 2005 -0500 [PATCH] make driver's name be const char * Driver core: change driver's, bus's, class's and platform device's names to be const char * so one can use const char *drv_name = "asdfg"; when initializing structures. Also kill couple of whitespaces. Signed-off-by: Dmitry Torokhov Signed-off-by: Greg Kroah-Hartman commit 419cab3fc69588ebe35b845cc3a584ae172463de Author: Dmitry Torokhov Date: Tue Apr 26 02:32:54 2005 -0500 [PATCH] kset_hotplug_ops->name shoudl return const char * kobject: change name() method in kset_hotplug_ops return const char * since users shoudl not try to modify returned data. Signed-off-by: Dmitry Torokhov Signed-off-by: Greg Kroah-Hartman commit f3b4f3c6dec04c6c8261fe22645f07b39976595a Author: Dmitry Torokhov Date: Tue Apr 26 02:32:00 2005 -0500 [PATCH] Make kobject's name be const char * kobject: make kobject's name const char * since users should not attempt to change it (except by calling kobject_rename). Signed-off-by: Dmitry Torokhov Signed-off-by: Greg Kroah-Hartman commit e3a15db2415579d5136b9ba9b52fe27c66da8780 Author: Dmitry Torokhov Date: Tue Apr 26 02:31:08 2005 -0500 [PATCH] sysfs_{create|remove}_link should take const char * sysfs: make sysfs_{create|remove}_link to take const char * name. Signed-off-by: Dmitry Torokhov Signed-off-by: Greg Kroah-Hartman commit eb11d8ffceead1eb3d84366f1687daf2217e883e Author: Dmitry Torokhov Date: Tue Apr 26 02:29:58 2005 -0500 [PATCH] kobject_hotplug() should use kobject_name() kobject: kobject_hotplug should use kobject_name() instead of accessing kobj->name directly since for objects with long names it can contain garbage. Signed-off-by: Dmitry Torokhov Signed-off-by: Greg Kroah-Hartman commit 246955fe4c38bd706ae30e37c64892c94213775d Author: Robert Olsson Date: Mon Jun 20 13:36:39 2005 -0700 [NETLINK]: fib_lookup() via netlink Below is a more generic patch to do fib_lookup via netlink. For others we should say that we discussed this as a way to verify route selection. It's also possible there are others uses for this. In short the fist half of struct fib_result_nl is filled in by caller and netlink call fills in the other half and returns it. In case anyone is interested there is a corresponding user app to compare the full routing table this was used to test implementation of the LC-trie. Signed-off-by: David S. Miller commit f6e276ee67c0ac9efafd24bc6f7a84aa359656df Author: Alexey Dobriyan Date: Mon Jun 20 13:32:05 2005 -0700 [ATALK]: endian annotations Signed-off-by: Alexey Dobriyan Signed-off-by: David S. Miller commit f852640e74f71e6dd38146e1149ec1fe6da2fb07 Author: Alexey Dobriyan Date: Mon Jun 20 13:31:11 2005 -0700 [AX25]: endian-annotate ax25_type_trans() Signed-off-by: Alexey Dobriyan Acked-by: Ralf Baechle Signed-off-by: David S. Miller commit dd87147eed934eaff92869f3d158697c7239d1d2 Author: Herbert Xu Date: Mon Jun 20 13:21:43 2005 -0700 [IPSEC]: Add XFRM_STATE_NOPMTUDISC flag This patch adds the flag XFRM_STATE_NOPMTUDISC for xfrm states. It is similar to the nopmtudisc on IPIP/GRE tunnels. It only has an effect on IPv4 tunnel mode states. For these states, it will ensure that the DF flag is always cleared. This is primarily useful to work around ICMP blackholes. In future this flag could also allow a larger MTU to be set within the tunnel just like IPIP/GRE tunnels. This could be useful for short haul tunnels where temporary fragmentation outside the tunnel is desired over smaller fragments inside the tunnel. Signed-off-by: Herbert Xu Acked-by: James Morris Signed-off-by: David S. Miller commit d094cd83c06e06e01d8edb540555f3f64e4081c2 Author: Herbert Xu Date: Mon Jun 20 13:19:41 2005 -0700 [IPSEC]: Add xfrm_state_afinfo->init_flags This patch adds the xfrm_state_afinfo->init_flags hook which allows each address family to perform any common initialisation that does not require a corresponding destructor call. It will be used subsequently to set the XFRM_STATE_NOPMTUDISC flag in IPv4. It also fixes up the error codes returned by xfrm_init_state. Signed-off-by: Herbert Xu Acked-by: James Morris Signed-off-by: David S. Miller commit 72cb6962a91f2af9eef69a06198e1949c10259ae Author: Herbert Xu Date: Mon Jun 20 13:18:08 2005 -0700 [IPSEC]: Add xfrm_init_state This patch adds xfrm_init_state which is simply a wrapper that calls xfrm_get_type and subsequently x->type->init_state. It also gets rid of the unused args argument. Abstracting it out allows us to add common initialisation code, e.g., to set family-specific flags. The add_time setting in xfrm_user.c was deleted because it's already set by xfrm_state_alloc. Signed-off-by: Herbert Xu Acked-by: James Morris Signed-off-by: David S. Miller commit 3f7a87d2fa9b42f7aade43914f060df68cc89cc7 Author: Frank Filz Date: Mon Jun 20 13:14:57 2005 -0700 [SCTP] sctp_connectx() API support Implements sctp_connectx() as defined in the SCTP sockets API draft by tunneling the request through a setsockopt(). Signed-off-by: Frank Filz Signed-off-by: Sridhar Samudrala Signed-off-by: David S. Miller commit 91b90475e793e84a57d956af8c52645e292badcb Merge: bcc408b75b707f46da1f81058ffa3c9df6f0170f f0ffeddc897a5cc5d5c6cc1b99a8799a8b34b28f Author: Linus Torvalds Date: Mon Jun 20 11:37:49 2005 -0700 Merge master.kernel.org:/home/rmk/linux-2.6-arm commit f0ffeddc897a5cc5d5c6cc1b99a8799a8b34b28f Author: Lennert Buytenhek Date: Mon Jun 20 18:51:08 2005 +0100 [PATCH] ARM: 2719/1: enable module support in ixp2000 defconfigs by default Patch from Lennert Buytenhek The ixp2000 defconfigs are among the few that do not enable module support by default. I keep enabling module support by hand for every new kernel version, so let's just make this change upstream. Signed-off-by: Lennert Buytenhek Signed-off-by: Russell King commit d67947a1bd6530791ad3663b93d91b44de89c2ca Author: Richard Purdie Date: Mon Jun 20 18:51:07 2005 +0100 [PATCH] ARM: 2716/1: SharpSL Param: Fix typo Patch from Richard Purdie Fix typo in sharpsl_param.c so it works correctly on collie. Signed-off-by: Richard Purdie Signed-off-by: Russell King commit e4fe19819ef32950541503042f32e71b67edffc7 Author: Lennert Buytenhek Date: Mon Jun 20 18:51:07 2005 +0100 [PATCH] ARM: 2701/1: free up ixp2000 timer 4 for the watchdog Patch from Lennert Buytenhek The IXP2000 has four timers, but if we're on an A-step IXP2800, timer 2 and 3 don't work. We need two timers for timekeeping (one for the timer interrupt and one for tracking missed jiffies), so on early IXP2800s we have no other choice but to use timer 1 and 4 for that, but on all other IXP2000s we'd rather leave timer 4 free since that's the only timer we can use for the watchdog. So, on buggy IXP2000s (i.e. the A-step IXP2800) we use timer 4 for tracking missed jiffies, and on all all non-buggy IXP2000s (i.e. everything but the A-step IXP2800) we use timer 2. On a pre-production IXP2800, this patch should print these messages on boot: Enabling IXP2800 erratum #25 workaround Unable to use IXP2000 watchdog due to IXP2800 erratum #25 On any non-buggy IXP2800 (as well as on IXP2400s) you shouldn't see anything at all, and the watchdog should be usable again. Signed-off-by: Lennert Buytenhek Signed-off-by: Deepak Saxena Signed-off-by: Russell King commit c0da085ad2e6b1419b8a7439538f7f15eb5c4777 Author: Catalin Marinas Date: Mon Jun 20 18:51:06 2005 +0100 [PATCH] ARM: 2693/1: Add PCI support for Versatile/PB Patch from Catalin Marinas This patch adds PCI support for the Versatile PB926 platform. Signed-off-by: Colin King Signed-off-by: Catalin Marinas Signed-off-by: Russell King commit 038c5b602524b33447008492e932cdd0a1e806c9 Author: Bellido Nicolas Date: Mon Jun 20 18:51:05 2005 +0100 [PATCH] ARM: 2686/2: AAEC-2000 Core support Patch from Bellido Nicolas Core support for AAEC-2000 based platforms. This is an updated version of the previous patch, and takes into account Russell's comments. AAED-2000 default configuration will follow as soon as some problems with the bootloader are sorted out... Signed-off-by: Nicolas Bellido Signed-off-by: Russell King commit 09f0551d20ddf6d22c333adcc59f2b1148734273 Author: Russell King Date: Mon Jun 20 18:44:37 2005 +0100 [PATCH] ARM: Add iomap support for ARM Signed-off-by: Russell King commit 8ba08378b479f472b37b83542c31bdad465033cf Merge: 34b727c135ff651f153be5757056d25678b6d018 8b22c249e7de453961e4d253b19fc2a0bdd65d53 Author: Tony Luck Date: Mon Jun 20 09:35:34 2005 -0700 Auto merge with /home/aegl/GIT/linus commit 34b727c135ff651f153be5757056d25678b6d018 Author: David Mosberger-Tang Date: Thu Jun 9 22:36:00 2005 -0700 [IA64] Drop spurious paren in entry.h The latest assembler catches this typo. (reported by Jim Wilson). Signed-off-by: David Mosberger-Tang Signed-off-by: Tony Luck commit a507ef3ac68f0671fdd3f824885cd7f1ea1040b1 Author: Russell King Date: Mon Jun 20 16:57:17 2005 +0100 [PATCH] ARM: Remove nmi_tick() from Integrator. Signed-off-by: Russell King commit 14eb75b6f83e3213d752dfe821df2fa57efbe519 Author: Russell King Date: Mon Jun 20 16:56:08 2005 +0100 [PATCH] ARM: Add missed include for dmabounce.c Signed-off-by: Russell King commit 3ade2fe0fd0238d68938b8f5f73ebd0561d2d2e5 Author: Russell King Date: Mon Jun 20 16:45:32 2005 +0100 [PATCH] ARM: Lindent GCC helper functions Signed-off-by: Russell King commit bcc408b75b707f46da1f81058ffa3c9df6f0170f Merge: 6f85fb8154057352df2080a7ff1c55bc5c583985 d3588ba9bbade7f1fde59726c9af43eeeb08e092 Author: Linus Torvalds Date: Mon Jun 20 08:17:59 2005 -0700 Merge rsync://rsync.kernel.org/pub/scm/linux/kernel/git/paulus/ppc64-2.6 commit f29481c0e7e55efc25598c1a6c503015cfe45245 Author: Russell King Date: Mon Jun 20 15:49:59 2005 +0100 [PATCH] ARM: Remove gcc type-isms from GCC helper functions Convert ugly GCC types to Linux types: UQImode -> u8 SImode -> s32 USImode -> u32 DImode -> s64 UDImode -> u64 word_type -> int Signed-off-by: Russell King commit d039ba24f135147f60a13bcaa768189a5b773b6e Merge: 72e3148a6e987974e3e949c5668e5ca812d7c818 8b22c249e7de453961e4d253b19fc2a0bdd65d53 Author: Dave Kleikamp Date: Mon Jun 20 08:44:00 2005 -0500 Merge with /home/shaggy/git/linus-clean/ commit 34c8eacab670e578a2aaafdf1061efd214b2f639 Author: Russell King Date: Mon Jun 20 12:56:40 2005 +0100 [PATCH] ARM: Remove obsolete arch/arm/kernel/arch.c This is not used anymore - RiscPC now contains the necessary supporting code. Signed-off-by: Russell King commit d3588ba9bbade7f1fde59726c9af43eeeb08e092 Author: John Rose Date: Mon Jun 20 21:43:48 2005 +1000 [PATCH] initialize TCE tables A fairly recent platform requirement states that the OS must clear the whole TCE table at setup time, in case firmware left any active mappings in it. Without this initialization, dynamic bus removes can fail. Firmware rejects these requests if active mappings still exist for a slot that has been deallocated by the OS. Signed-off-by: John Rose Signed-off-by: Paul Mackerras commit 0231c290d817513d448963520a97eadd51a370b7 Author: Anton Blanchard Date: Mon Jun 20 21:43:15 2005 +1000 [PATCH] ppc64: use cpu_has_feature macro Use the new cpu_has_feature macros instead of open coding it. Signed-off-by: Anton Blanchard Signed-off-by: Paul Mackerras commit ad21798e0ecc3b54720a2420b341f51dfb254706 Author: Anton Blanchard Date: Mon Jun 20 21:43:07 2005 +1000 [PATCH] ppc64: quieten RTAS printks Some rtasd printks were too loud. They would appear on a quiet boot even though they were only informational. Signed-off-by: Anton Blanchard Signed-off-by: Paul Mackerras commit 5abc100e882a979f8f5be8184938305b3fb2df2b Author: Russell King Date: Mon Jun 20 12:31:14 2005 +0100 [PATCH] ARM: Ensure DMA-bounced buffers are properly written to RAM When DMA bounce buffers were unmapped and the data was memcpy'd to the original buffer, we were not ensuring that the data was written to RAM. This means that there was the potential for page cache pages to have different cache states depending whether they've been bounced or not. Signed-off-by: Russell King commit b8a9b66fbee09d0cc71c272b5c1d1f3320afbbf0 Author: Russell King Date: Mon Jun 20 11:31:09 2005 +0100 [PATCH] ARM: Add common CACHE_COLOUR macro Signed-off-by: Russell King commit 8830f04a092b47f3d246271b24685cd9eab82027 Author: Russell King Date: Mon Jun 20 09:51:03 2005 +0100 [PATCH] ARM: Fix delayed dcache flush for ARMv6 non-aliasing caches flush_dcache_page() did nothing for these caches, but since they suffer from I/D cache coherency issues, we need to ensure that data is written back to RAM. Signed-off-by: Russell King commit 6f85fb8154057352df2080a7ff1c55bc5c583985 Merge: d411b845dcc8e1d97e8b02a345e765af5134700f e632ba11b8ea34cc877689dba1e02f8657ddbc0b Author: Linus Torvalds Date: Sun Jun 19 20:58:13 2005 -0700 Merge 'scsi-fixes' branch of rsync://rsync.kernel.org/pub/scm/linux/kernel/git/jgarzik/misc-2.6 commit e632ba11b8ea34cc877689dba1e02f8657ddbc0b Author: Jeff Garzik Date: Sun Jun 19 21:50:12 2005 -0400 aic7xxx/aic79xx_osm: revert completely bogus ahd_linux_queue() patch commit 98f72a1c51cbf65f3eee54b5324863b3a70a4e61 Author: Jeff Garzik Date: Sun Jun 19 21:47:56 2005 -0400 fc4/fc: fix warnings and errors related to recent SCSI EH updates commit d411b845dcc8e1d97e8b02a345e765af5134700f Merge: 8b22c249e7de453961e4d253b19fc2a0bdd65d53 0908db22b189b28664cba3965ebb7e0df59c749a Author: Russell King Date: Sun Jun 19 21:50:20 2005 +0100 Merge with ../linux-2.6-smp commit 8b22c249e7de453961e4d253b19fc2a0bdd65d53 Merge: 7df551254add79a445d2e47e8f849cef8fee6e38 ea4423c3b6c1dbd116c91be876b3ad07067c77c8 Author: Linus Torvalds Date: Sun Jun 19 11:53:06 2005 -0700 Merge master.kernel.org:/home/rmk/linux-2.6-arm commit 0908db22b189b28664cba3965ebb7e0df59c749a Author: Russell King Date: Sun Jun 19 19:48:16 2005 +0100 [PATCH] ARM SMP: Messages about CPUs should be prefixed by CPU%u Signed-off-by: Russell King commit ea4423c3b6c1dbd116c91be876b3ad07067c77c8 Merge: 36c5ed23b9f535d1c79986efb45f9c1f115e0997 fe6ef2daa29df8fef1a95446faccd18ab163993e Author: Russell King Date: Sun Jun 19 19:26:54 2005 +0100 Merge with ../linux-2.6-smp commit 36c5ed23b9f535d1c79986efb45f9c1f115e0997 Author: Russell King Date: Sun Jun 19 18:39:33 2005 +0100 [PATCH] ARM SMP: Fix PXA/SA11x0 suspend resume crash We need to re-initialise the stack pointers for undefined, IRQ and abort mode handlers whenever we resume. Signed-off-by: Russell King commit fe6ef2daa29df8fef1a95446faccd18ab163993e Author: Russell King Date: Sun Jun 19 09:52:07 2005 +0100 [PATCH] ARM SMP: Add missed files from Integrator/CP platform Add missed new files from basic SMP support for the Integrator/CP platform. Signed-off-by: Russell King commit 7df551254add79a445d2e47e8f849cef8fee6e38 Author: David S. Miller Date: Sat Jun 18 23:01:10 2005 -0700 [TCP]: Fix sysctl_tcp_low_latency When enabled, this should disable UCOPY prequeue'ing altogether, but it does not due to a missing test. Signed-off-by: David S. Miller commit f7d7fc0322c1770fe7ee836ca2732c2f88e2e1a4 Author: Jesper Juhl Date: Sat Jun 18 23:00:34 2005 -0700 [IPV4]: [4/4] signed vs unsigned cleanup in net/ipv4/raw.c This patch changes the type of the third parameter 'length' of the raw_send_hdrinc() function from 'int' to 'size_t'. This makes sense since this function is only ever called from one location, and the value passed as the third parameter in that location is itself of type size_t, so this makes the recieving functions parameter type match. Also, inside raw_send_hdrinc() the 'length' variable is used in comparisons with unsigned values and passed as parameter to functions expecting unsigned values (it's used in a single comparison with a signed value, but that one can never actually be negative so the patch also casts that one to size_t to stop gcc worrying, and it is passed in a single instance to memcpy_fromiovecend() which expects a signed int, but as far as I can see that's not a problem since the value of 'length' shouldn't ever exceed the value of a signed int). Signed-off-by: Jesper Juhl Signed-off-by: David S. Miller commit 93765d8a435fa021c4b7cd0521b7959239d7158a Author: Jesper Juhl Date: Sat Jun 18 23:00:15 2005 -0700 [IPV4]: [3/4] signed vs unsigned cleanup in net/ipv4/raw.c This patch changes the type of the local variable 'i' in raw_probe_proto_opt() from 'int' to 'unsigned int'. The only use of 'i' in this function is as a counter in a for() loop and subsequent index into the msg->msg_iov[] array. Since 'i' is compared in a loop to the unsigned variable msg->msg_iovlen gcc -W generates this warning : net/ipv4/raw.c:340: warning: comparison between signed and unsigned Changing 'i' to unsigned silences this warning and is safe since the array index can never be negative anyway, so unsigned int is the logical type to use for 'i' and also enables a larger msg_iov[] array (but I don't know if that will ever matter). Signed-off-by: Jesper Juhl Signed-off-by: David S. Miller commit 926d4b8122fb324de294a09a7d96d8af7cfc6861 Author: Jesper Juhl Date: Sat Jun 18 23:00:00 2005 -0700 [IPV4]: [2/4] signed vs unsigned cleanup in net/ipv4/raw.c This patch gets rid of the following gcc -W warning in net/ipv4/raw.c : net/ipv4/raw.c:387: warning: comparison of unsigned expression < 0 is always false Since 'len' is of type size_t it is unsigned and can thus never be <0, and since this is obvious from the function declaration just a few lines above I think it's ok to remove the pointless check for len<0. Signed-off-by: Jesper Juhl Signed-off-by: David S. Miller commit 5418c6926fcb0e5a324cd5bc1106fc0941db7aae Author: Jesper Juhl Date: Sat Jun 18 22:59:45 2005 -0700 [IPV4]: [1/4] signed vs unsigned cleanup in net/ipv4/raw.c This patch silences these two gcc -W warnings in net/ipv4/raw.c : net/ipv4/raw.c:517: warning: signed and unsigned type in conditional expression net/ipv4/raw.c:613: warning: signed and unsigned type in conditional expression It doesn't change the behaviour of the code, simply writes the conditional expression with plain 'if()' syntax instead of '? :' , but since this breaks it into sepperate statements gcc no longer complains about having both a signed and unsigned value in the same conditional expression. Signed-off-by: David S. Miller commit 94df109a8c802263837baccc1a3eeab9ab9e88db Author: Thomas Graf Date: Sat Jun 18 22:59:08 2005 -0700 [PKT_SCHED]: noop/noqueue qdisc style cleanups Signed-off-by: Thomas Graf Signed-off-by: David S. Miller commit f87a9c3ddf08c10d8427bcedf3f53098113136d0 Author: Thomas Graf Date: Sat Jun 18 22:58:53 2005 -0700 [PKT_SCHED]: Cleanup pfifo_fast qdisc and remove unnecessary code Removes the skb trimming code which is not needed since we never touch the skb upon failure. Removes unnecessary initializers, and simplifies the code a bit. Signed-off-by: Thomas Graf Signed-off-by: David S. Miller commit 321090e7a468ab33917a0af839a3ae923b1c1bc5 Author: Thomas Graf Date: Sat Jun 18 22:58:35 2005 -0700 [PKT_SCHED]: Add and use prio2list() in the pfifo_fast qdisc prio2list() returns the relevant sk_buff_head for the band specified by the priority for a given skb. Signed-off-by: Thomas Graf Signed-off-by: David S. Miller commit 821d24ae741f83ef0754a98b4b8aef7231856543 Author: Thomas Graf Date: Sat Jun 18 22:58:15 2005 -0700 [PKT_SCHED]: Transform pfifo_fast to use generic queue management interface Gives pfifo_fast a byte based backlog. Signed-off-by: Thomas Graf Signed-off-by: David S. Miller commit 6fc8e84f4cf8d623f98aebfd6996dc3848bcf964 Author: Thomas Graf Date: Sat Jun 18 22:58:00 2005 -0700 [PKT_SCHED]: Cleanup fifo qdisc and remove unnecessary code Removes the skb trimming code which is not needed since we never touch the skb upon failure. Removes unnecessary includes, initializers, and simplifies the code a bit. Signed-off-by: Thomas Graf Signed-off-by: David S. Miller commit aaae3013d186d71a01e1059c9633c4ec8729d891 Author: Thomas Graf Date: Sat Jun 18 22:57:42 2005 -0700 [PKT_SCHED]: Transform fifo qdisc to use generic queue management interface The simplicity of the fifo qdisc allows several qdisc operations to be redirected to the relevant queue management function directly. Saves a lot of code lines and gives the pfifo a byte based backlog. Signed-off-by: Thomas Graf Signed-off-by: David S. Miller commit 9972b25d0c6e7f8f893eb3444dea37b42b1201de Author: Thomas Graf Date: Sat Jun 18 22:57:26 2005 -0700 [PKT_SCHED]: Generic queue management interface for qdiscs using internal skb queues Implements an interface to be used by leaf qdiscs maintaining an internal skb queue. The interface maintains a backlog in bytes additionaly to the skb_queue_len() maintained by the queue itself. Relevant statistics get incremented automatically. Every function comes in two variants, one assuming Qdisc->q is used as queue and the second taking a sk_buff_head as argument. Be aware that, if you use multiple queues, you still have to maintain the Qdisc->q.qlen counter yourself. Signed-off-by: Thomas Graf Signed-off-by: David S. Miller commit 1e061ab2e5aa50a84d68ca654773632f9c425bb6 Author: Herbert Xu Date: Sat Jun 18 22:56:42 2005 -0700 [SCTP]: Replace spin_lock_irqsave with spin_lock_bh This patch replaces the spin_lock_irqsave call on the receive queue lock in SCTP with spin_lock_bh. Despite the proliferation of spin_lock_irqsave calls in this stack, it is only entered from the IPv4/IPv6 stack and user space. That is, it is never entered from hardirq context. The call in question is only called from recvmsg which means that IRQs aren't disabled. Therefore it is safe to replace it with spin_lock_bh. Signed-off-by: Herbert Xu Signed-off-by: David S. Miller commit e0f9f8586a0b21fb3c7a4ead3804008d57dfdef7 Author: Herbert Xu Date: Sat Jun 18 22:56:18 2005 -0700 [IPV4/IPV6]: Replace spin_lock_irq with spin_lock_bh In light of my recent patch to net/ipv4/udp.c that replaced the spin_lock_irq calls on the receive queue lock with spin_lock_bh, here is a similar patch for all other occurences of spin_lock_irq on receive/error queue locks in IPv4 and IPv6. In these stacks, we know that they can only be entered from user or softirq context. Therefore it's safe to disable BH only. Signed-off-by: Herbert Xu Signed-off-by: David S. Miller commit 9ed19f339e12e731986de84134ac293cd15910a7 Author: Jamal Hadi Salim Date: Sat Jun 18 22:55:51 2005 -0700 [NETLINK]: Set correct pid for ioctl originating netlink events This patch ensures that netlink events created as a result of programns using ioctls (such as ifconfig, route etc) contains the correct PID of those events. Signed-off-by: Jamal Hadi Salim Signed-off-by: David S. Miller commit e431b8c004af6be03783dddea31b6e514118051d Author: Jamal Hadi Salim Date: Sat Jun 18 22:55:31 2005 -0700 [NETLINK]: Explicit typing This patch converts "unsigned flags" to use more explict types like u16 instead and incrementally introduces NLMSG_NEW(). Signed-off-by: Jamal Hadi Salim Signed-off-by: David S. Miller commit 58b82150da90681a4179db1bc94d412938e81b31 Author: Thomas Graf Date: Sat Jun 18 22:55:02 2005 -0700 [DECNET]: Remove unnecessary initilization of unused variable entries This patch was supposed to be part of the neighbour tables related patchset but apparently got lost. Signed-off-by: Thomas Graf Signed-off-by: David S. Miller commit 0603eac0d6b77acac5924a2734228cbaf072f993 Author: Herbert Xu Date: Sat Jun 18 22:54:36 2005 -0700 [IPSEC]: Add XFRMA_SA/XFRMA_POLICY for delete notification This patch changes the format of the XFRM_MSG_DELSA and XFRM_MSG_DELPOLICY notification so that the main message sent is of the same format as that received by the kernel if the original message was via netlink. This also means that we won't lose the byid information carried in km_event. Since this user interface is introduced by Jamal's patch we can still afford to change it. Signed-off-by: Herbert Xu Signed-off-by: David S. Miller commit b6544c0b4cf2bd96195f3cdb7cebfb35090fc557 Author: Jamal Hadi Salim Date: Sat Jun 18 22:54:12 2005 -0700 [NETLINK]: Correctly set NLM_F_MULTI without checking the pid This patch rectifies some rtnetlink message builders that derive the flags from the pid. It is now explicit like the other cases which get it right. Also fixes half a dozen dumpers which did not set NLM_F_MULTI at all. Signed-off-by: Jamal Hadi Salim Signed-off-by: Thomas Graf Signed-off-by: David S. Miller commit 1797754ea7ee5e0d859b0a32506ff999f8d5fb71 Author: Thomas Graf Date: Sat Jun 18 22:53:48 2005 -0700 [NETLINK]: Introduce NLMSG_NEW macro to better handle netlink flags Introduces a new macro NLMSG_NEW which extends NLMSG_PUT but takes a flags argument. NLMSG_PUT stays there for compatibility but now calls NLMSG_NEW with flags == 0. NLMSG_PUT_ANSWER is renamed to NLMSG_NEW_ANSWER which now also takes a flags argument. Also converts the users of NLMSG_PUT_ANSWER to use NLMSG_NEW_ANSWER and fixes the two direct users of __nlmsg_put to either provide the flags or use NLMSG_NEW(_ANSWER). Signed-off-by: Thomas Graf Signed-off-by: David S. Miller commit af0d114176720c2100dfa624ab433796d333d730 Author: Thomas Graf Date: Sat Jun 18 22:53:29 2005 -0700 [PKT_SCHED]: Logic simplifications and codingstyle/whitespace cleanups Signed-off-by: Thomas Graf Signed-off-by: David S. Miller commit 02f23f095f1d9534873ecb5d94bbdb0ab67f1d8e Author: Thomas Graf Date: Sat Jun 18 22:53:12 2005 -0700 [PKT_SCHED]: Make dsmark use the new dumping macros Signed-off-by: Thomas Graf Signed-off-by: David S. Miller commit 758cc43c6d7326c62751fb516485e8e188854637 Author: Thomas Graf Date: Sat Jun 18 22:52:54 2005 -0700 [PKT_SCHED]: Fix dsmark to apply changes consistent Fixes dsmark to do all configuration sanity checks first and only apply the changes if all of them can be applied without any errors. Also fixes the weak sanity checks for DSMARK_VALUE and DSMASK_MASK. Signed-off-by: Thomas Graf Signed-off-by: David S. Miller commit 8f48bcd4ef11a69add178fc3111a77e7ee95bacd Author: Thomas Graf Date: Sat Jun 18 22:52:36 2005 -0700 [RTNETLINK]: Add RTA_(PUT|GET) shortcuts for u8, u16, and flag Signed-off-by: Thomas Graf Signed-off-by: David S. Miller commit e386c6eb431ca2e435d0202ad6997f3d2ccab2ce Author: Thomas Graf Date: Sat Jun 18 22:52:09 2005 -0700 [NEIGH]: Fix use of uninitialized variable when trimming in neightbl_fill_parms Signed-off-by: Thomas Graf Signed-off-by: David S. Miller commit 4b6ea82dd18c97598c3caaa8d0b1feec87857e70 Author: Thomas Graf Date: Sat Jun 18 22:51:43 2005 -0700 [NETLINK]: Kill bogus NLMSG_SET_MULTIPART uses. Signed-off-by: Thomas Graf Signed-off-by: David S. Miller commit c52a3f89f882b84fc422000655c023fe73e701cf Author: Thomas Graf Date: Sat Jun 18 22:51:26 2005 -0700 [NETLINK]: Fix RTA_NEST_CANCEL(). Only skb_trim() if 'start' is non-NULL. Signed-off-by: Thomas Graf Signed-off-by: David S. Miller commit 88121aea7bdb5fdc527388e262381829c4e1db16 Author: Thomas Graf Date: Sat Jun 18 22:51:12 2005 -0700 [NEIGHBOUR]: Remove unused fields in struct neigh_parms and neigh_table Signed-off-by: Thomas Graf Signed-off-by: David S. Miller commit c7fb64db001f83ece669c76a02d8ec2fdb1dd307 Author: Thomas Graf Date: Sat Jun 18 22:50:55 2005 -0700 [NETLINK]: Neighbour table configuration and statistics via rtnetlink To retrieve the neighbour tables send RTM_GETNEIGHTBL with the NLM_F_DUMP flag set. Every neighbour table configuration is spread over multiple messages to avoid running into message size limits on systems with many interfaces. The first message in the sequence transports all not device specific data such as statistics, configuration, and the default parameter set. This message is followed by 0..n messages carrying device specific parameter sets. Although the ordering should be sufficient, NDTA_NAME can be used to identify sequences. The initial message can be identified by checking for NDTA_CONFIG. The device specific messages do not contain this TLV but have NDTPA_IFINDEX set to the corresponding interface index. To change neighbour table attributes, send RTM_SETNEIGHTBL with NDTA_NAME set. Changeable attribute include NDTA_THRESH[1-3], NDTA_GC_INTERVAL, and all TLVs in NDTA_PARMS unless marked otherwise. Device specific parameter sets can be changed by setting NDTPA_IFINDEX to the interface index of the corresponding device. Signed-off-by: Thomas Graf Signed-off-by: David S. Miller commit 00768244923f66801958a8d2d103f7b65608c9b6 Author: Thomas Graf Date: Sat Jun 18 22:50:38 2005 -0700 [NETLINK] Routing attribute related shortcuts RTA_GET_U(32|64)(tlv) Assumes TLV is a u32/u64 field and returns its value. RTA_GET_[M]SECS(tlv) Assumes TLV is a u64 and transports jiffies converted to seconds or milliseconds and returns its value. RTA_PUT_U(32|64)(skb, type, value) Appends %value as fixed u32/u64 to %skb as TLV %type. RTA_PUT_[M]SECS(skb, type, jiffies) Converts %jiffies to secs/msecs and appends it as u64 to %skb as TLV %type. RTA_PUT_STRING(skb, type, string) Appends %NUL terminated %string to %skb as TLV %type. RTA_NEST(skb, type) Starts a nested TLV %type and returns the nesting handle. RTA_NEST_END(skb, nesting_handle) Finishes the nested TLV %nesting_handle, must be called symmetric to RTA_NEST(). Returns skb->len RTA_NEST_CANCEL(skb, nesting_handle) Cancel the nested TLV %nesting_handle and trim nested TLV from skb again, returns -1. Signed-off-by: Thomas Graf Signed-off-by: David S. Miller commit f88a10d65620d97b6d0a7e352a3493c1b7e7409b Author: Thomas Graf Date: Sat Jun 18 22:50:12 2005 -0700 [NETLINK]: New message building macros NLMSG_PUT_ANSWER(skb, nlcb, type, length) Start a new netlink message as answer to a request, returns the message header. NLMSG_END(skb, nlh) End a netlink message, fixes total message length, returns skb->len. NLMSG_CANCEL(skb, nlh) Cancel the building process and trim whole message from skb again, returns -1. Signed-off-by: Thomas Graf Signed-off-by: David S. Miller commit e52c1f17e4ea8e61bd26eb25f1a184202693c2b9 Author: David S. Miller Date: Sat Jun 18 22:49:40 2005 -0700 [NET]: Move sysctl_max_syn_backlog into request_sock.c This fixes the CONFIG_INET=n build failure noticed by Andrew Morton. Signed-off-by: David S. Miller commit 2ad69c55a282315e6119cf7fd744f26a925bdfd2 Author: Arnaldo Carvalho de Melo Date: Sat Jun 18 22:48:55 2005 -0700 [NET] rename struct tcp_listen_opt to struct listen_sock Signed-off-by: Arnaldo Carvalho de Melo Signed-off-by: David S. Miller commit 0e87506fcc734647c7b2497eee4eb81e785c857a Author: Arnaldo Carvalho de Melo Date: Sat Jun 18 22:47:59 2005 -0700 [NET] Generalise tcp_listen_opt This chunks out the accept_queue and tcp_listen_opt code and moves them to net/core/request_sock.c and include/net/request_sock.h, to make it useful for other transport protocols, DCCP being the first one to use it. Next patches will rename tcp_listen_opt to accept_sock and remove the inline tcp functions that just call a reqsk_queue_ function. Signed-off-by: Arnaldo Carvalho de Melo Signed-off-by: David S. Miller commit 60236fdd08b2169045a3bbfc5ffe1576e6c3c17b Author: Arnaldo Carvalho de Melo Date: Sat Jun 18 22:47:21 2005 -0700 [NET] Rename open_request to request_sock Ok, this one just renames some stuff to have a better namespace and to dissassociate it from TCP: struct open_request -> struct request_sock tcp_openreq_alloc -> reqsk_alloc tcp_openreq_free -> reqsk_free tcp_openreq_fastfree -> __reqsk_free With this most of the infrastructure closely resembles a struct sock methods subset. Signed-off-by: Arnaldo Carvalho de Melo Signed-off-by: David S. Miller commit 2e6599cb899ba4b133f42cbf9d2b1883d2dc583a Author: Arnaldo Carvalho de Melo Date: Sat Jun 18 22:46:52 2005 -0700 [NET] Generalise TCP's struct open_request minisock infrastructure Kept this first changeset minimal, without changing existing names to ease peer review. Basicaly tcp_openreq_alloc now receives the or_calltable, that in turn has two new members: ->slab, that replaces tcp_openreq_cachep ->obj_size, to inform the size of the openreq descendant for a specific protocol The protocol specific fields in struct open_request were moved to a class hierarchy, with the things that are common to all connection oriented PF_INET protocols in struct inet_request_sock, the TCP ones in tcp_request_sock, that is an inet_request_sock, that is an open_request. I.e. this uses the same approach used for the struct sock class hierarchy, with sk_prot indicating if the protocol wants to use the open_request infrastructure by filling in sk_prot->rsk_prot with an or_calltable. Results? Performance is improved and TCP v4 now uses only 64 bytes per open request minisock, down from 96 without this patch :-) Next changeset will rename some of the structs, fields and functions mentioned above, struct or_calltable is way unclear, better name it struct request_sock_ops, s/struct open_request/struct request_sock/g, etc. Signed-off-by: Arnaldo Carvalho de Melo Signed-off-by: David S. Miller commit 1944972d3bb651474a5021c9da8d0166ae19f1eb Author: Arnaldo Carvalho de Melo Date: Sat Jun 18 22:46:19 2005 -0700 [SLAB] Introduce kmem_cache_name This is for use with slab users that pass a dynamically allocated slab name in kmem_cache_create, so that before destroying the slab one can retrieve the name and free its memory. Signed-off-by: Arnaldo Carvalho de Melo Signed-off-by: David S. Miller commit ee57eef99b9e19194677f552ebc0690ec35d62db Author: Jamal Hadi Salim Date: Sat Jun 18 22:45:56 2005 -0700 [IPSEC] Use NLMSG_LENGTH in xfrm_exp_state_notify Small fixup to use netlink macros instead of hardcoding. Signed-off-by: Jamal Hadi Salim Signed-off-by: Herbert Xu Signed-off-by: David S. Miller commit 7d6dfe1f5bc4c56e0c31173014a099ec3fa35907 Author: Patrick McHardy Date: Sat Jun 18 22:45:31 2005 -0700 [IPSEC] Fix xfrm_state leaks in error path Herbert Xu wrote: > @@ -1254,6 +1326,7 @@ static int pfkey_add(struct sock *sk, st > if (IS_ERR(x)) > return PTR_ERR(x); > > + xfrm_state_hold(x); This introduces a leak when xfrm_state_add()/xfrm_state_update() fail. We hold two references (one from xfrm_state_alloc(), one from xfrm_state_hold()), but only drop one. We need to take the reference because the reference from xfrm_state_alloc() can be dropped by __xfrm_state_delete(), so the fix is to drop both references on error. Same problem in xfrm_user.c. Signed-off-by: Patrick McHardy Signed-off-by: Herbert Xu Signed-off-by: David S. Miller commit f60f6b8f70c756fc786d68f02ec17a1e84db645f Author: Herbert Xu Date: Sat Jun 18 22:44:37 2005 -0700 [IPSEC] Use XFRM_MSG_* instead of XFRM_SAP_* This patch removes XFRM_SAP_* and converts them over to XFRM_MSG_*. The netlink interface is meant to map directly onto the underlying xfrm subsystem. Therefore rather than using a new independent representation for the events we can simply use the existing ones from xfrm_user. Signed-off-by: Herbert Xu commit e7443892f656d760ec1b9d92567178c87e100f4a Author: Herbert Xu Date: Sat Jun 18 22:44:18 2005 -0700 [IPSEC] Set byid for km_event in xfrm_get_policy This patch fixes policy deletion in xfrm_user so that it sets km_event.data.byid. This puts xfrm_user on par with what af_key does in this case. Signed-off-by: Herbert Xu commit bf08867f91a43aa3ba2e4598c06c4769a6cdddf6 Author: Herbert Xu Date: Sat Jun 18 22:44:00 2005 -0700 [IPSEC] Turn km_event.data into a union This patch turns km_event.data into a union. This makes code that uses it clearer. Signed-off-by: Herbert Xu commit 4f09f0bbc1cb3c74e8f2047ad4be201a059829ee Author: Herbert Xu Date: Sat Jun 18 22:43:43 2005 -0700 [IPSEC] Fix xfrm to pfkey SA state conversion This patch adjusts the SA state conversion in af_key such that XFRM_STATE_ERROR/XFRM_STATE_DEAD will be converted to SADB_STATE_DEAD instead of SADB_STATE_DYING. According to RFC 2367, SADB_STATE_DYING SAs can be turned into mature ones through updating their lifetime settings. Since SAs which are in the states XFRM_STATE_ERROR/XFRM_STATE_DEAD cannot be resurrected, this value is unsuitable. Signed-off-by: Herbert Xu commit 4666faab095230ec8aa62da6c33391287f281154 Author: Herbert Xu Date: Sat Jun 18 22:43:22 2005 -0700 [IPSEC] Kill spurious hard expire messages This patch ensures that the hard state/policy expire notifications are only sent when the state/policy is successfully removed from their respective tables. As it is, it's possible for a state/policy to both expire through reaching a hard limit, as well as being deleted by the user. Note that this behaviour isn't actually forbidden by RFC 2367. However, it is a quality of implementation issue. As an added bonus, the restructuring in this patch will help eventually in moving the expire notifications from softirq context into process context, thus improving their reliability. One important side-effect from this change is that SAs reaching their hard byte/packet limits are now deleted immediately, just like SAs that have reached their hard time limits. Previously they were announced immediately but only deleted after 30 seconds. This is bad because it prevents the system from issuing an ACQUIRE command until the existing state was deleted by the user or expires after the time is up. In the scenario where the expire notification was lost this introduces a 30 second delay into the system for no good reason. Signed-off-by: Herbert Xu commit 26b15dad9f1c19d6d4f7b999b07eaa6d98e4b375 Author: Jamal Hadi Salim Date: Sat Jun 18 22:42:13 2005 -0700 [IPSEC] Add complete xfrm event notification Heres the final patch. What this patch provides - netlink xfrm events - ability to have events generated by netlink propagated to pfkey and vice versa. - fixes the acquire lets-be-happy-with-one-success issue Signed-off-by: Jamal Hadi Salim Signed-off-by: Herbert Xu commit 3aa3dfb372576f30835a94409556e3c8681b5756 Merge: 19fa95e9e999ee2b0d7adfbd1a687b136afcd6f1 5ab6091db0b644f59c2f16c5e41028496b709160 Author: Linus Torvalds Date: Sat Jun 18 16:06:50 2005 -0700 Merge master.kernel.org:/home/rmk/linux-2.6-arm commit 19fa95e9e999ee2b0d7adfbd1a687b136afcd6f1 Merge: ba483d574b43b05fa4c78550b874c7e24424ff2a 0107b3cf3225aed6ddde4fa8dbcd4ed643b34f4d Author: Linus Torvalds Date: Sat Jun 18 13:54:12 2005 -0700 Merge master.kernel.org:/pub/scm/linux/kernel/git/dwmw2/audit-2.6 commit ba483d574b43b05fa4c78550b874c7e24424ff2a Author: Martin Waitz Date: Fri Jun 17 13:20:59 2005 -0700 [PATCH] DocBook: MAINTAINER entry Martin can maintain the DocBook system for us. Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit cc63b1e12b378c44e074571d5688c23be823b04c Author: Jan Beulich Date: Fri Jun 17 13:20:58 2005 -0700 [PATCH] console blanking oops fix When significant delays happen during boot (e.g. with a kernel debugger, but the problem has also seen in other cases) the timeout for blanking the console may trigger, but the work scheduler may not have been initialized, yet. schedule_work() will oops over the null keventd_wq. Signed-off-by: Jan Beulich Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 43fde784a698aff26de0fc1dbd84aa075b8cfb5f Merge: c2a0f5943d8935766a42b2d0870aa4c645e3423d f9d1fe9630b94007902987c39d19f04dc6256eac Author: Linus Torvalds Date: Sat Jun 18 13:08:39 2005 -0700 Merge 'upstream-2.6.13' branch of rsync://rsync.kernel.org/pub/scm/linux/kernel/git/jgarzik/libata-dev commit c2a0f5943d8935766a42b2d0870aa4c645e3423d Author: Linus Torvalds Date: Sat Jun 18 13:06:22 2005 -0700 Clean up subthread exec Make sure we re-parent itimers, and use BUG_ON() instead of an explicit conditional BUG(). commit c83d9945c05570ba6b8ec5460c99d1ab7c6e6671 Author: Mika Kukkonen Date: Sat Jun 18 22:49:56 2005 +0300 [PATCH] Fix typo in drivers/pci/pci-driver.c The git commit 794f5bfa77955c4455f6d72d8b0e2bee25f1ff0c accidentally suffers from a previous typo in that file (',' instead of ';' in end of line). Patch included. Signed-off-by: Mika Kukkonen (mikukkon@iki.fi) Signed-off-by: Linus Torvalds commit 0e396ee43e445cb7c215a98da4e76d0ce354d9d7 Merge: b8112df71cae7d6a86158caeb19d215f56c4f9ab 2089a0d38bc9c2cdd084207ebf7082b18cf4bf58 Author: Linus Torvalds Date: Sat Jun 18 11:42:35 2005 -0700 Manual merge of rsync://rsync.kernel.org/pub/scm/linux/kernel/git/jgarzik/netdev-2.6.git This is a fixed-up version of the broken "upstream-2.6.13" branch, where I re-did the manual merge of drivers/net/r8169.c by hand, and made sure the history is all good. commit f9d1fe9630b94007902987c39d19f04dc6256eac Merge: 54258a8a2e81b11e486068f1cfab9fe4746b8420 9ee1c939d1cb936b1f98e8d81aeffab57bae46ab Author: Jeff Garzik Date: Sat Jun 18 13:21:24 2005 -0400 Merge /spare/repo/linux-2.6/ commit 20cf33ea16253b9eed387cba022cb014563db40e Author: Russell King Date: Sat Jun 18 10:15:46 2005 +0100 [PATCH] ARM SMP: Add basic support Integrator/CP platform Add basic SMP support for the Integrator/CP platform. Signed-off-by: Russell King commit e65f38ed0bb7af367ff919c573cf29643fc5f9e8 Author: Russell King Date: Sat Jun 18 09:33:31 2005 +0100 [PATCH] ARM SMP: Add support for startup of secondary processors Create a temporary page table to startup secondary processors. This page table must have a 1:1 virtual/physical mapping for the kernel in addition to the standard mappings to ensure that the secondary CPU can enable its MMU safely. Signed-off-by: Russell King commit 5ab6091db0b644f59c2f16c5e41028496b709160 Merge: 9ee1c939d1cb936b1f98e8d81aeffab57bae46ab ccea7a19e54349d4f40778304e1bb88da83d39e7 Author: Russell King Date: Sat Jun 18 09:06:59 2005 +0100 Merge with ../linux-2.6-smp commit 0107b3cf3225aed6ddde4fa8dbcd4ed643b34f4d Merge: 1c3f45ab2f7f879ea482501c83899505c31f7539 9ee1c939d1cb936b1f98e8d81aeffab57bae46ab Author: David Woodhouse Date: Sat Jun 18 08:36:46 2005 +0100 Merge with master.kernel.org:/pub/scm/linux/kernel/git/torvalds/linux-2.6.git commit b8112df71cae7d6a86158caeb19d215f56c4f9ab Author: Lee Revell Date: Wed Jun 15 14:19:03 2005 -0400 [SCSI] Add DMA mask constants other than 32 and 64 bit Signed-Off-By: Lee Revell Signed-off-by: James Bottomley commit 5d497cecdeae75351567d20b86d8a3a05e7f48ed Author: Mark Haverkamp Date: Fri Jun 17 13:38:04 2005 -0700 [SCSI] aacraid: regression fix The fixes for sparse warnings mixed in with the fixups for the raw_srb handler resulted in a bug that showed up in the 32 bit environments when trying to issue calls directly to the physical devices that are part of the arrays (ioctl scsi passthrough). Received from Mark Salyzyn at adaptec. Applied comment from Christoph to remove cpu_to_le32(0) Applied Mark S fix of missing memcpy. It applies to the scsi-misc-2.6 git tree. Signed-off-by: Mark Haverkamp Signed-off-by: James Bottomley commit 3afa294c40013be5d8180005002e3f648d04d942 Merge: a1541d5af66d02426655b1498f814c52347dd7d3 3237ee78fc00f786d5f5aec6f9310b0e39069f15 Author: James Bottomley Date: Fri Jun 17 19:04:18 2005 -0500 merge by hand (qla_os.c mismerge) commit 3237ee78fc00f786d5f5aec6f9310b0e39069f15 Merge: 9ee1c939d1cb936b1f98e8d81aeffab57bae46ab df0ae2497ddefd72a87f3a3b34ff32455d7d4ae0 Author: James Bottomley Date: Fri Jun 17 18:42:23 2005 -0500 merge by hand (fix up qla_os.c merge error) commit df0ae2497ddefd72a87f3a3b34ff32455d7d4ae0 Author: Jeff Garzik Date: Sat May 28 07:57:14 2005 -0400 [SCSI] allow sleeping in ->eh_host_reset_handler() Signed-off-by: James Bottomley commit 68b3aa7c9805aee9005a8ca53c5e99177961fbb9 Author: Jeff Garzik Date: Sat May 28 07:56:31 2005 -0400 [SCSI] allow sleeping in ->eh_bus_reset_handler() Signed-off-by: James Bottomley commit 94d0e7b805961c44e4dc486ffc21075084bb7175 Author: Jeff Garzik Date: Sat May 28 07:55:48 2005 -0400 [SCSI] allow sleeping in ->eh_device_reset_handler() Signed-off-by: James Bottomley commit 8fa728a26886f56a9ee10a44fea0ddda301d21c3 Author: Jeff Garzik Date: Sat May 28 07:54:40 2005 -0400 [SCSI] allow sleeping in ->eh_abort_handler() Signed-off-by: James Bottomley commit 3471c288036bf0835a82d0b1bbce2002f6e68390 Author: Jeff Garzik Date: Sat May 28 07:52:51 2005 -0400 [SCSI] Remove no-op implementations of SCSI EH hooks Drivers need not implement a hook that returns FAILED, and does nothing else, since the SCSI midlayer code will do that for us. Signed-off-by: James Bottomley commit e3df715501be3329986e5d9dfa9a477f49e7996b Author: Jeff Garzik Date: Sat May 28 07:47:39 2005 -0400 [SCSI] Remove unnecessary locking around completion function calls The SCSI ->done() hook should not be called from inside a spinlock. Drivers that do this are mostly cut-n-paste from 2.2.x-era. Signed-off-by: James Bottomley commit 986a80d5c154808cc78170584670324a22fd8219 Author: Jesper Juhl Date: Thu Jun 16 15:14:00 2005 -0700 [PATCH] avoid signed vs unsigned comparison in efi_range_is_wc() warning when building with gcc -W : include/linux/efi.h: In function `efi_range_is_wc': include/linux/efi.h:320: warning: comparison between signed and unsigned It looks to me like a significantly large 'len' passed in could cause the loop to never end. Isn't it safer to make 'i' an unsigned long as well? Like this little patch below (which of course also kills the warning) : Signed-off-by: Jesper Juhl Signed-off-by: Tony Luck commit 12021fff2bae7fab01c4bf283f3cd9bc6997d8c4 Author: James Bottomley Date: Mon Jun 13 20:58:56 2005 -0500 [SCSI] aic7xxx: fix the BIOS limits setting routines Following the go around over the SONY DVD that needs artificial limits, this should be the correct code for all cases (minus the debugging prints). Signed-off-by: James Bottomley commit d736a27b7efbc835c7b83db5c1bbd41edbadf32e Author: Andreas Herrmann Date: Mon Jun 13 13:23:57 2005 +0200 [SCSI] zfcp: fix handling of port boxed and lun boxed fsf states From: Maxim Shchetynin Signed-off-by: Andreas Herrmann Signed-off-by: James Bottomley commit cd8a383ebc93f8ded9cefee53a337542c3aacad7 Author: Andreas Herrmann Date: Mon Jun 13 13:22:25 2005 +0200 [SCSI] zfcp: fix module parameter parsing From: Heiko Carstens Fixes module parameter parsing for "device" parameter. The original module parameter was changed while parsing it. This corrupted the output in sysfs (/sys/module/zfcp/parameters/device). Signed-off-by: Andreas Herrmann Signed-off-by: James Bottomley commit 1db2c9c0931a53fe013db55fd2ff58859db31e8d Author: Andreas Herrmann Date: Mon Jun 13 13:20:35 2005 +0200 [SCSI] zfcp: fix bug during adapter shutdown Fixes a race between zfcp_fsf_req_dismiss_all and zfcp_qdio_reqid_check. During adapter shutdown it occurred that a request was cleaned up twice. First during its normal completion. Second when dismiss_all was called. The fix is to serialize access to fsf request list between zfcp_fsf_req_dismiss_all and zfcp_qdio_reqid_check and delete a fsf request from the list if its completion is triggered. (Additionally a rwlock was replaced by a spinlock and fsf_req_cleanup was eliminated.) Signed-off-by: Andreas Herrmann Signed-off-by: James Bottomley commit 64b29a130901d5b8578e9f602cf2dae56aaff224 Author: Andreas Herrmann Date: Mon Jun 13 13:18:56 2005 +0200 [SCSI] zfcp: fix: problem in send_els_handler when D_ID assignment changes From: Maxim Shchetynin Fixes a bug in zfcp_send_els_handler. If D_ID assignments for ports are changing between initiation of one ELS request and its completion the wrong port might be accessed in the completion for that ELS request. Thus a pointer to the port has to be passed for ELS requests to identify the port structure if required. Signed-off-by: Andreas Herrmann Signed-off-by: James Bottomley commit 516a4201bacfd61ea957039d6f47276ee9c32a0d Author: Andreas Herrmann Date: Mon Jun 13 13:17:44 2005 +0200 [SCSI] zfcp: fix: mark fsf request failed when receiving unknown status qualifier From: Maxim Shchetynin Correct a bug in zfcp_fsf_send_fcp_command_handler. An fsf request was not marked as failed if an unknown status qualifier was returned. Signed-off-by: Andreas Herrmann Signed-off-by: James Bottomley commit 65a8d4e1a3754f0bfaa62949ebe919930e3127a1 Author: Andreas Herrmann Date: Mon Jun 13 13:16:27 2005 +0200 [SCSI] zfcp: fix: reopen port only if link-test fails From: Maxim Shchetynin Reopen a remote port only if the link-test fails. This avoids that a port is unnecessarily reopened. Signed-off-by: Andreas Herrmann Signed-off-by: James Bottomley commit 22753fa514aad02342e647ad13048caa282d9238 Author: Andreas Herrmann Date: Mon Jun 13 13:15:15 2005 +0200 [SCSI] zfcp: fix: allow more time for adapter initialization From: Maxim Shchetynin Extend the time for adapter initialization: In case of protocol status HOST_CONNECTION_INITIALIZING for the exchange config data command do a first retry in 1 second, then double the sleep time for each following retry until recovery exceeds 2 minutes. The old behaviour of allowing 6 retries with .5 seconds delay between retries was insufficient and qdio queues were shut down too erarly. Signed-off-by: Andreas Herrmann Signed-off-by: James Bottomley commit 66c8684abf80a9999392d639627afea80ac62e06 Author: Andreas Herrmann Date: Mon Jun 13 13:13:45 2005 +0200 [SCSI] zfcp: fix wrong handling of failed requests for GID_PN command Fixes the handling of failed requests for GID_PN nameserver command: Set ZFCP_STATUS_PORT_INVALID_WWPN only if indicated by response payload for GID_PN nameserver command and not if fsf request fails. Signed-off-by: Andreas Herrmann Signed-off-by: James Bottomley commit d6cbbad7296538b6a38c0fe36e6ecf67f1e600a7 Author: Christoph Hellwig Date: Sat Jun 11 00:17:03 2005 +0200 [SCSI] aic7xxx: clean up eisa support - the eisa layer only probes when it's actually safe, no need for a driver option - store the id table directly in linux format instead of convering at runtime Signed-off-by: Christoph Hellwig Signed-off-by: James Bottomley commit 8eb379425765bfc9a44f06f210224b10066fc46f Author: Christoph Hellwig Date: Sat Jun 11 00:13:30 2005 +0200 [SCSI] aic7xxx: remove some dead wood especially the now dead scsi_cmnd overlay Signed-off-by: Christoph Hellwig Signed-off-by: James Bottomley commit 3d65692aed727c7fb4105f03795781ace437a84e Author: Christoph Hellwig Date: Sat Jun 11 00:14:30 2005 +0200 [SCSI] aic7xxx: remove ahc_find_softc there's absolutely no reason not to trust the driver private data Signed-off-by: Christoph Hellwig Signed-off-by: James Bottomley commit 6bc9dace767f1fffdf975b3398b3c4e37cd5ae18 Author: Andreas Herrmann Date: Fri Jun 10 10:16:33 2005 +0200 [SCSI] zfcp: remove flags_dump feature Removes the rarely used "flags_dump" mechanism of zfcp. Equivalent debug information will be provided with a reworking of zfcp's s390dbf-facilities which is in preparation. Signed-off-by: Andreas Herrmann Signed-off-by: James Bottomley commit eb0df9962d97f7156a0870aced9018bf5c8f54c1 Author: mike.miller@hp.com Date: Fri Jun 10 14:51:04 2005 -0500 [SCSI] cciss 2.6 DMA mapping Patch removes our homegrown DMA masks and uses the ones defined in the kernel. This patch replaces the broken one I sent in earlier. It has been tested and works. Please discard the first submission. Signed-off-by: Mike Miller Signed-off-by: James Bottomley commit e431223eca7e0785a5402999b43b16622409017f Author: Christoph Hellwig Date: Sat Jun 11 00:15:31 2005 +0200 [SCSI] aic7xxx: do not check for duplicate pci ids pci layer handles this just fine for us Signed-off-by: Christoph Hellwig Signed-off-by: James Bottomley commit 765c4d45b8cae32faff358aa760a33cde38ea1a7 Author: Christoph Hellwig Date: Sat Jun 11 00:26:00 2005 +0200 [SCSI] aic7xxx/aic79xx: remove useless byte order macro cruft Signed-off-by: Christoph Hellwig Signed-off-by: James Bottomley commit a1541d5af66d02426655b1498f814c52347dd7d3 Author: Andrew Vasquez Date: Thu Jun 9 17:21:28 2005 -0700 [SCSI] qla2xxx: Pull-down scsi-host-addition to follow board initialization. Return to previous held-logic of calling scsi_add_host() only after the board has been completely initialized. Also return pci_*() error-codes during probe failure paths. This also corrects an issue where only lun 0 is being scanned for a given port. Signed-off-by: Andrew Vasquez Signed-off-by: James Bottomley commit 54258a8a2e81b11e486068f1cfab9fe4746b8420 Author: Narendra Sankar Date: Tue Jun 7 11:55:14 2005 -0700 [PATCH] sata_svw: bump version number Bump sata_svw.c version number to indicate support for BCM5785(HT1000) Southbridge SATA controller. Signed-off-by: Narendra Sankar diff -uNr linux-2.6.12-rc5/drivers/scsi/sata_svw.c linux-2.6.12-rc5.brcm/drivers/scsi/sata_svw.c commit e5119885f00874453e837e3407014b73de2f4741 Author: Dmitry Torokhov Date: Mon Jun 6 02:28:29 2005 -0500 Input: wacom - fix formatting in accordance to CodingStyle Signed-off-by: Dmitry Torokhov commit b2f86369e3e999a70f98e2a812aa5ec1b3c7bd0b Author: Ping Cheng Date: Mon Jun 6 02:25:50 2005 -0500 Input: Wacom driver update - add support for Cintiq 21UX - fix a Graphire bug - merge wacom_intuos3_irq into wacom_intuos_irq Signed-off-by: Ping Cheng Signed-off-by: Andrew Morton Signed-off-by: Dmitry Torokhov commit 53880546979605dae20ee0404a0e998e188fe7ad Author: Stephane VOLTZ Date: Mon Jun 6 02:22:37 2005 -0500 Input: add driver for Acecad Flair USB tablets Signed-off-by: Dmitry Torokhov commit 3c241f8337542655ee013a661b7f1770f561d3ef Merge: dbf4ccd6043e58ed32fbf253fb3f0a9991e4c13a eae936e21bd726f9d9555f2262d439fbcd61dccf Author: Dmitry Torokhov Date: Mon Jun 6 02:21:03 2005 -0500 Automatic merge of rsync://rsync.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6 commit 2089a0d38bc9c2cdd084207ebf7082b18cf4bf58 Merge: 03d661d3d7dd2c20330d775c13157419049f1617 0b2d7fea1c3893c3790e0b89c310ec1321f1b8c0 Author: Date: Sat Jun 4 17:54:39 2005 -0400 Automatic merge of /spare/repo/netdev-2.6 branch skge commit 03d661d3d7dd2c20330d775c13157419049f1617 Merge: 1a9505996dd0c12a2e56d2c6af00846e75a3850d fdecea66687d76c7d19be6559586df5c51023d11 Author: Date: Sat Jun 4 17:19:42 2005 -0400 Automatic merge of /spare/repo/netdev-2.6 branch starfire commit 1a9505996dd0c12a2e56d2c6af00846e75a3850d Merge: bdb7a3427be1e31327df0543cc397bf3c994b039 ea9375607f8b312cf4389d68909330ed32a622ef Author: Date: Sat Jun 4 17:15:04 2005 -0400 Automatic merge of /spare/repo/netdev-2.6 branch smc91x commit bdb7a3427be1e31327df0543cc397bf3c994b039 Merge: 140fedb5f2efd1f23b26afb2d812004556ba9515 5aa83a4c0a1568257ff7e249d39af64f75978b97 Author: Date: Sat Jun 4 17:12:32 2005 -0400 Automatic merge of /spare/repo/netdev-2.6 branch remove-drivers commit 140fedb5f2efd1f23b26afb2d812004556ba9515 Merge: 91bcc018f9fc5547875e9ec5a3dc09cbc70d4f8e 7d17c1d606f6e89778f05554ddea43791d5c92a0 Author: Date: Sat Jun 4 17:11:28 2005 -0400 Automatic merge of /spare/repo/netdev-2.6 branch iff-running commit 91bcc018f9fc5547875e9ec5a3dc09cbc70d4f8e Merge: 105adfc63f921a9976c5abc4ff079e9fec197ed7 1f15d694522af9cd7492695f11dd2dc77b6cf098 Author: Date: Sat Jun 4 17:08:24 2005 -0400 Automatic merge of /spare/repo/netdev-2.6 branch we18 commit 105adfc63f921a9976c5abc4ff079e9fec197ed7 Merge: 7f6a57a907c8655e78a654ab62da86e61ef7f2c9 99417769bae55d34348320d7a05615e8a891fd3d Author: Date: Sat Jun 4 17:07:40 2005 -0400 Automatic merge of /spare/repo/netdev-2.6 branch viro commit 7f6a57a907c8655e78a654ab62da86e61ef7f2c9 Merge: 4d8e11dcc29f4983bec67506d77728a04082e92d befc9e10d64f93472aff0b0280968f447f5402df Author: Date: Sat Jun 4 17:06:57 2005 -0400 Automatic merge of /spare/repo/netdev-2.6 branch r8169 commit 4d8e11dcc29f4983bec67506d77728a04082e92d Merge: 21035ffeb7fa5abf6f178befc8b34752a629e1bf 84d8a2fb56b1d3c915591a2c1aa321b783c7d00f Author: Date: Sat Jun 4 17:05:05 2005 -0400 Automatic merge of /spare/repo/netdev-2.6 branch orinoco-hch commit 21035ffeb7fa5abf6f178befc8b34752a629e1bf Merge: 14d8ce70d5c2634982ca564039466bce70f4ff18 516cd15f1c0dd6eada3619915b113b4e5baccc7a Author: Date: Sat Jun 4 17:03:55 2005 -0400 Automatic merge of /spare/repo/netdev-2.6 branch ppp commit 14d8ce70d5c2634982ca564039466bce70f4ff18 Merge: 79121839aad7153907b92462759675266f1f2ac4 b3dd65f958354226275522b5a64157834bdc5415 Author: Date: Sat Jun 4 17:03:09 2005 -0400 Automatic merge of /spare/repo/netdev-2.6 branch hdlc commit 79121839aad7153907b92462759675266f1f2ac4 Merge: b00b2f70ddde86b0a4674b8518c78d3ad5dc68b7 a1365275e745bb0a173c918a52bcdfa6ce122f7e Author: Date: Sat Jun 4 17:02:29 2005 -0400 Automatic merge of /spare/repo/netdev-2.6 branch dm9000 commit b00b2f70ddde86b0a4674b8518c78d3ad5dc68b7 Merge: df77cc44dcc938d53c89f1cc2b79410f69236335 22f714b64b55012fa4e0d77132fa82719180f994 Author: Date: Sat Jun 4 17:01:45 2005 -0400 Automatic merge of /spare/repo/netdev-2.6 branch 8139too-iomap commit df77cc44dcc938d53c89f1cc2b79410f69236335 Merge: 8be3de3fd8469154a2b3e18a4712032dac5b4a53 a78d8927966dcc41bba52da3a10935072a592417 Author: Date: Sat Jun 4 17:01:33 2005 -0400 Automatic merge of /spare/repo/netdev-2.6 branch 8139cp commit a0ea7328e3f4971bbc2287c344650b08c2cec375 Author: Jeff Garzik Date: Sat Jun 4 01:13:15 2005 -0400 [libata] ahci: finish ATAPI support (hopefully) commit 70c85233814949184070ee35f8929dde64402dc9 Merge: 31c94a6e987af162ac5ede83cddf49870cd1f2ed 73561695b2e77473e353a5ae63bab81ed5098d8e Author: Date: Sat Jun 4 01:02:00 2005 -0400 Merge of /spare/repo/libata-dev branch bridge-detect commit 31c94a6e987af162ac5ede83cddf49870cd1f2ed Merge: 1700c80d8778cf0d024bf6cbdd1c9e9014764530 60bf09a366c873aab36e3b3110ee9f5bd89a1a6d Author: Date: Sat Jun 4 00:59:09 2005 -0400 Automatic merge of /spare/repo/libata-dev branch svw commit 1700c80d8778cf0d024bf6cbdd1c9e9014764530 Merge: d3c39d14d1369c520916ff7a77b2b063e7a75557 ae20ea8525a80a863f70d332cf47b71bd9f54c1f Author: Date: Sat Jun 4 00:58:52 2005 -0400 Merge of /spare/repo/libata-dev branch pdc20619 commit d3c39d14d1369c520916ff7a77b2b063e7a75557 Merge: 8be3de3fd8469154a2b3e18a4712032dac5b4a53 4b0060f4bdec7484e8d1ad68f7b28b3f1c2e6bf8 Author: Date: Sat Jun 4 00:52:59 2005 -0400 Automatic merge of /spare/repo/libata-dev branch ahci-msi commit 4b0060f4bdec7484e8d1ad68f7b28b3f1c2e6bf8 Author: Jeff Garzik Date: Sat Jun 4 00:50:22 2005 -0400 [libata] ahci: minor PCI MSI cleanup Replace 'have_msi' variable with a bit in the existing 'flags' variable,. AHCI_FLAG_MSI. commit ae20ea8525a80a863f70d332cf47b71bd9f54c1f Merge: f497ba735fc9ff4e35a19641143708b3be1c7061 8be3de3fd8469154a2b3e18a4712032dac5b4a53 Author: Date: Sat Jun 4 00:40:40 2005 -0400 Automatic merge of /spare/repo/linux-2.6/.git branch HEAD commit 73561695b2e77473e353a5ae63bab81ed5098d8e Merge: 6f2f38128170814e151cfedf79532e19cd179567 8be3de3fd8469154a2b3e18a4712032dac5b4a53 Author: Date: Fri Jun 3 23:54:56 2005 -0400 Automatic merge of /spare/repo/linux-2.6/.git branch HEAD commit 72e3148a6e987974e3e949c5668e5ca812d7c818 Author: Dave Kleikamp Date: Fri Jun 3 14:09:54 2005 -0500 JFS: Fix compiler warning in jfs_logmgr.c fs/jfs/jfs_logmgr.c: In function `jfs_flush_journal': fs/jfs/jfs_logmgr.c:1632: warning: unused variable `mp' Some debug code in jfs_flush_journal does nothing when CONFIG_JFS_DEBUG is not defined. Place the whole code segment within an ifdef to avoid unnecessary code to be compiled and the warning to be issued. Signed-off-by: Dave Kleikamp commit 0bb14afe10dddbc05c3244bd224b6858de0ee319 Author: Mark Haverkamp Date: Wed Jun 1 10:24:38 2005 -0700 [SCSI] 2.6 aacraid: updated sysfs files This patch adds some files into the /sys/class/scsi_host/hostN directories for aacraid adapters: model vendor hba_kernel_version hba_monitor_version hba_bios_version serial_number Signed-off-by: Mark Haverkamp Signed-off-by: James Bottomley commit 9a8bc9b84b783fd92315e56ce4d4ee78a2c6819c Author: James Bottomley Date: Tue May 31 18:35:39 2005 -0500 [SCSI] update spi transport class so that u320 Domain Validation works There are several extra things that have to be considered when running Domain Validation on a u320 target (notably how you fall back). Hopefully this should help us when someone adds this transport class to aic79xx. I've tested this on the lsi1030, so I know it works correctly up to u320. Signed-off-by: James Bottomley commit 597487b9ba875785f3ee9bd541073e9edd2e700a Author: James Bottomley Date: Fri Jun 3 09:49:01 2005 -0500 [SCSI] fix aic7xxx coupled parameter problem For setting coupled parameters, we need to be comparing against the goal settings, not the current ones. Signed-off-by: James Bottomley commit 521314c122ea0cd58e5184443b8cc28f82ee2136 Author: brking@us.ibm.com Date: Tue May 24 09:49:59 2005 -0500 [SCSI] sg: Command completion after remove oops A problem exists todayin the sg driver that if an SG_IO request is outstanding to a device when it is removed from the system. The system may oops if that command completes later in time. 1. sg_remove gets called 2. sg_remove calls sg_finish_req_req on all pending requests This removes the Sg_request's from the headrp list in the Sg_fd 3. The sleeping SG_IO ioctl is woken. It does nothing and returns. 4. The caller closes the fd, which invokes sg_release 5. sg_release calls sg_remove_sfp. It finds no outstanding commands since the headrp list is empty, so it calls __sg_remove_sfp, which frees the sfp. 6. Now when sg_cmd_done gets called, sg uses upper_private_data in the Scsi_Request, which should point to the srp, which has been freed, so it points to freed memory. 7. sg then dereferences the srp pointer to get the sfp, and we oops. The fix is to NULL out the upper_private_data field in this path, which sg_cmd_done already checks for, which will prevent the oops from occurring. cpu 0x1: Vector: 300 (Data Access) at [c00000000fff7aa0] pc: d0000000002bbea8: .sg_cmd_done+0x70/0x394 [sg] lr: d000000000073304: .scsi_finish_command+0x10c/0x130 [scsi_mod] sp: c00000000fff7d20 msr: 8000000000009032 dar: 2f70726f63202f78 dsisr: 40000000 current = 0xc0000000024589b0 paca = 0xc0000000003da800 pid = 7, comm = events/1 [c00000000fff7dc0] d000000000073304 .scsi_finish_command+0x10c/0x130 [scsi_mod] [c00000000fff7e50] d00000000007317c .scsi_softirq+0x140/0x168 [scsi_mod] [c00000000fff7ef0] c0000000000634dc .__do_softirq+0xa0/0x17c [c00000000fff7f90] c000000000018430 .call_do_softirq+0x14/0x24 [c00000000ed472e0] c0000000000142e0 .do_softirq+0x74/0x9c [c00000000ed47370] c000000000013c9c .do_IRQ+0xe8/0x100 [c00000000ed473f0] c00000000000ae34 HardwareInterrupt_entry+0x8/0x54 c00000000003df28 .smp_call_function+0 x100/0x1d0 [c00000000ed47780] c0000000000ba99c .invalidate_bh_lrus+0x30/0x70 [c00000000ed47810] c0000000000b91a0 .invalidate_bdev+0x18/0x3c [c00000000ed478a0] c0000000000da7b8 .__invalidate_device+0x70/0x94 [c00000000ed47930] c0000000001d40bc .invalidate_partition+0x4c/0x7c [c00000000ed479c0] c00000000010a944 .del_gendisk+0x48/0x15c [c00000000ed47a50] d00000000003d55c .sd_remove+0x34/0xe4 [sd_mod] [c00000000ed47ae0] c0000000001c5d30 .device_release_driver+0x90/0xb4 [c00000000ed47b70] c0000000001c6130 .bus_remove_device+0xb0/0x12c [c00000000ed47c00] c0000000001c4378 .device_del+0x120/0x198 [c00000000ed47ca0] d00000000007dcdc .scsi_remove_device+0xb4/0x194 [scsi_mod] [c00000000ed47d30] d0000000000a5864 .ipr_worker_thread+0x1d4/0x27c [ipr] [c00000000ed47dd0] c0000000000734c4 .worker_thread+0x238/0x2f4 [c00000000ed47ee0] c0000000000796c0 .kthread+0xcc/0x11c [c00000000ed47f90] c000000000018ad0 .kernel_thread+0x4c/0x6c Signed-off-by: Brian King Signed-off-by: James Bottomley commit c2731509cfb538b9b38feaf657fab2334ea45253 Author: Dave Kleikamp Date: Thu Jun 2 12:18:20 2005 -0500 JFS: kernel BUG at fs/jfs/jfs_txnmgr.c:859 add_missing_indices() must set tlck->type to tlckBTROOT when modifying a root btree root to avoid a trap in txRelease() Signed-off-by: Dave Kleikamp commit 7078253c085c037c070ca4e8bc9e9e7f18aa1e84 Merge: 259692bd5a2b2c2d351dd90748ba4126bc2a21b9 1e86d1c648508fd50e6c9960576b87906a7906ad Author: Dave Kleikamp Date: Thu Jun 2 12:12:57 2005 -0500 Merge with /home/shaggy/git/linus-clean/ Signed-off-by: Dave Kleikamp commit 1c3f45ab2f7f879ea482501c83899505c31f7539 Merge: 4bcff1b37e7c3aed914d1ce5b45994adc7dbf455 e0d6d71440a3a35c6fc2dde09f8e8d4d7bd44dda Author: David Woodhouse Date: Thu Jun 2 16:39:11 2005 +0100 Merge with master.kernel.org:/pub/scm/linux/kernel/git/torvalds/linux-2.6.git commit 4bcff1b37e7c3aed914d1ce5b45994adc7dbf455 Author: David Woodhouse Date: Thu Jun 2 12:13:21 2005 +0100 AUDIT: Fix user pointer deref thinko in sys_socketcall(). I cunningly put the audit call immediately after the copy_from_user().... but used the _userspace_ copy of the args still. Let's not do that. Signed-off-by: David Woodhouse commit dbf4ccd6043e58ed32fbf253fb3f0a9991e4c13a Author: Dmitry Torokhov Date: Wed Jun 1 02:40:01 2005 -0500 Input: psmouse - export protocol as a sysfs per-device attribute to allow easy switching at run-time. Signed-off-by: Dmitry Torokhov commit 905ab9d13694d0f75d1cb8c076ff2027538312ce Author: Dmitry Torokhov Date: Wed Jun 1 02:39:53 2005 -0500 Input: cleanup ps2_command() timeout handling in libps2. Signed-off-by: Dmitry Torokhov commit c611763d048990de5cdf848d97af6392f8fa7430 Author: Dmitry Torokhov Date: Wed Jun 1 02:39:51 2005 -0500 Input: add ps2_drain() to libps2 to allow reading and discarding given number of bytes from device. Change ps2_command to allow using 0 as command ID and actually pass it to the device instead of working as a drain. Signed-off-by: Dmitry Torokhov commit 04df1925fcda9a35c716423ad2b73abd70eb0913 Author: Dmitry Torokhov Date: Wed Jun 1 02:39:44 2005 -0500 Input: pmouse - introduce proper locking so state-changing operations do not iterfere with each other. Also make sure that serio core takes serio->drv_sem not only for connect/disconnect but for reconnect too. Signed-off-by: Dmitry Torokhov commit 8121152c1770ef1cd029030d51802c65c489950d Author: Dmitry Torokhov Date: Wed Jun 1 02:39:36 2005 -0500 Input: mousedev - do not wake up readers when receiving 0-motion event. Signed-off-by: Dmitry Torokhov commit e334016fc1735e491385e14157a0360cd85c321b Author: Luke Kosewski Date: Wed Jun 1 02:39:28 2005 -0500 Input: do not corrupt system-wide procfs fops. entry->proc_fops is a pointer to struct file_operations. When we call create_proc_entry(...), it pointis to proc_file_operations, deep in fs/proc/generic.c. By adding a 'poll' member to this struct we effectively force the 'poll' member on every file in /proc, which is wrong (they all fail select(...) calls). This patch changes a copy of entry->proc_fops and reassigns it rather than changing the original member. Signed-off-by: Dmitry Torokhov commit b6cbf3ef4f270c0dfe84b26649e4fc0c25bb0844 Author: Ian Campbell Date: Wed Jun 1 02:39:25 2005 -0500 Input: return correct value when setting up absolute device via uinipt. uinput_alloc_device() is supposed to return the number of bytes read, the value is returned to uinput_write() and from there to userspace. If EV_ABS is set then it returns the value from uinput_validate_absbits() instead, which is zero when everything is ok instead of the count. Signed-off-by: Ian Campbell Acked-by: Aristeu Rozanski Signed-off-by: Vojtech Pavlik Signed-off-by: Dmitry Torokhov commit c30b4c10d9cfe5506fd421304935d8836773c7e5 Author: Ivan Casado Ruiz Date: Wed Jun 1 02:39:18 2005 -0500 Input: ALPS - fix forward/back buttons on Ahtec laptop. I have an Ahtec laptop with a ALPS GlidePoint device, with 4 buttons. With Linux hernel 2.6.12rc4 and rc5 I'm unable to use the vertical scroll buttons (BACK and FORWARD). BACK gets detected as BTN_MIDDLE and FORWARD is undetected. I've modified the drivers/input/mouse/alps.c from 2.6.12rc5 and now it works fine! Signed-off-by: Vojtech Pavlik Signed-off-by: Dmitry Torokhov commit cc2d7eeacaff6ccdf407a3555cc3373890f79e01 Author: Adrian Bunk Date: Wed Jun 1 02:39:11 2005 -0500 Input: kill empty comment in gameport support section of cs4281 ALSA driver. Signed-off-by: Adrian Bunk Signed-off-by: Vojtech Pavlik Signed-off-by: Dmitry Torokhov commit 5d503e5cf42de82fc091ef641fd0b0fe027fc180 Author: Dmitry Torokhov Date: Wed Jun 1 02:39:04 2005 -0500 Input: ES1371 (OSS) - do not carry around gameport code if gameport core support is disabled. Signed-off-by: Dmitry Torokhov commit c624e92160e0d503594aff05a1e53fd0aafe41ad Author: Dmitry Torokhov Date: Wed Jun 1 02:39:00 2005 -0500 Input: ES1370 (OSS) - do not carry around gameport code if gameport core support is disabled. Signed-off-by: Dmitry Torokhov commit f0f05a42268a8f3dc9dafbcec8ee67f9f8e5cec4 Author: Dmitry Torokhov Date: Wed Jun 1 02:38:53 2005 -0500 Input: make sure that joystick support in CMPCI driver can only be selected if either gameport is built-in or _both_ gameport and cmpci are built as modules. Signed-off-by: Dmitry Torokhov commit e608460dee4c2de3a01f67c1bac21adb61d617e3 Author: Dmitry Torokhov Date: Wed Jun 1 02:38:46 2005 -0500 Input: mad16 (OSS) - do not carry around gameport code if gameport core support is disabled. Signed-off-by: Dmitry Torokhov commit ba7376e9348eceda21884cda87e714093260aed2 Author: Dmitry Torokhov Date: Wed Jun 1 02:38:43 2005 -0500 Input: sonicvibes (OSS) - do not carry around gameport code if gameport core support is disabled. Signed-off-by: Dmitry Torokhov commit 263aba711eabd4b63b70dfe8f78e3a8a7ce65fa9 Author: Dmitry Torokhov Date: Wed Jun 1 02:38:37 2005 -0500 Input: trident (OSS) - do not carry around gameport code if gameport core support is disabled, some formatting changes. Signed-off-by: Dmitry Torokhov commit 04b6389a5e236a0d214503e922f1e87ccb97f79d Author: Dmitry Torokhov Date: Wed Jun 1 02:38:33 2005 -0500 Input: ESS Solo (OSS) - do not carry around gameport code if gameport core support is disabled. Signed-off-by: Dmitry Torokhov commit 3f9f17d443226f2efd4ff45d333f21dd028afe50 Author: Dmitry Torokhov Date: Wed Jun 1 02:38:16 2005 -0500 Input: switch gameport core to using kthread API instead of using daemonize() and signals. This way kgameportd will never be accidentially killed. Signed-off-by: Dmitry Torokhov commit a9180ab2e21b0c0ffcec7461c3a52ab7608d023a Author: Dmitry Torokhov Date: Wed Jun 1 02:38:12 2005 -0500 Input: switch serio core to using kthread API instead of using daemonize() and signals. This way kseriod will never be accidentially killed. Signed-off-by: Dmitry Torokhov commit 9d5432979951c8761c2b4517007039b9bcc1c110 Merge: a913829e90e2af7a6e98f5aadcc9fec4dcf1ef64 21e3024cbddb712f6a078bf4132d7682d3c4e35e Author: Dmitry Torokhov Date: Wed Jun 1 02:37:23 2005 -0500 Automatic merge of rsync://rsync.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6 commit ccea7a19e54349d4f40778304e1bb88da83d39e7 Author: Russell King Date: Tue May 31 22:22:32 2005 +0100 [PATCH] ARM SMP: Fix vector entry The current vector entry system does not allow for SMP. In order to work around this, we need to eliminate our reliance on the fixed save areas, which breaks the way we enable alignment traps. This patch changes the way we handle the save areas such that we can have one per CPU. Signed-off-by: Russell King commit 49f680ea7bac5c679fb6374a326a164a3fba07cc Author: Russell King Date: Tue May 31 18:02:00 2005 +0100 [PATCH] ARM SMP: convert alignment enable The current vector entry system does not allow for SMP. In order to work around this, we need to eliminate our reliance on the fixed save areas, which breaks the way we enable alignment traps. This patch makes the alignment trap enable code independent of the way we handle the save areas. Signed-off-by: Russell King commit ead5de996fc35f97fa120b414bfc098f1bca29d2 Author: Jeff Garzik Date: Tue May 31 11:53:57 2005 -0400 [libata] ahci: Update for recent ->host_stop() API change commit edb3e182b6f33c91ba8778e2198220c12712d3ad Merge: 8973a585aec125beb2a3de50bb491004299f53d5 5e485b7975472ba4a408523deb6541e70c451842 Author: Date: Tue May 31 11:50:32 2005 -0400 Automatic merge of rsync://rsync.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git branch HEAD commit bbc0274e9bb2e3f1d724d445a2bd32566b9b66f7 Author: Jaroslav Kysela Date: Sun May 29 10:32:48 2005 +0200 [ALSA] version 1.0.9 commit 7028b09eecf01549ccaee9c884f48e5e00ec3d65 Author: Jaroslav Kysela Date: Fri May 27 12:42:26 2005 +0200 [ALSA] select ISAPNP for SND_INTERWAVE_STB target ISA Signed-off-by: Jaroslav Kysela commit cdc5c53fde266055debf7f5c9c043d5acf47c5ff Author: Takashi Iwai Date: Fri May 27 12:40:52 2005 +0200 [ALSA] Fix compilation on 32bit arch ALSA<-OSS emulation Fix the division with int64 for 32bit architectures. Signed-off-by: Takashi Iwai commit a6c17ec89d33a714b3e94a252c127f2ff63363c8 Author: Arnaud Patard Date: Fri May 27 12:31:34 2005 +0200 [ALSA] emu10k1: add details for the audigy player box version EMU10K1/EMU10K2 driver Add details for the audigy player box version. Signed-off-by: Arnaud Patard Signed-off-by: Takashi Iwai commit 8cfbbac6ad024c3dc749ff20d7c308794da6e370 Author: Takashi Iwai Date: Fri May 27 12:10:40 2005 +0200 [ALSA] ice1724 - Add support of Chaintech AV-710 Documentation,ICE1724 driver Add the support of Chaintech AV-710 to ice1724 driver. The patch includes the WM-codec initialization fix by Jaanus Kivistik . Since both AV-710 and AMP Audio2000 have the same SSID, initialize WM codecs as default for both devices. In case it breaks Audio2000, you can pass 'model=amp2000' option to avoid WM codec initialization. Signed-off-by: Takashi Iwai commit 11ca9afcfee3e6667a498b702642b09ac7312a8a Author: Takashi Iwai Date: Fri May 27 11:34:34 2005 +0200 [ALSA] als4000 - Fix kernel panic with MPU401 ALS4000 driver Fix kernel panic with als4000 when MPU401 is accessed. Signed-off-by: Takashi Iwai commit af0816139fcf926b6b5c3f866c509507b411d547 Author: Jaroslav Kysela Date: Fri May 27 11:15:20 2005 +0200 [ALSA] alsa-oss - 2nd - improved readability ALSA<-OSS emulation Use 'long' for byte counters in snd_pcm_oss_bytes() snd_pcm_alsa_bytes(). Signed-off-by: Jaroslav Kysela commit bfc5bddb8efb7e3d10e2f2e07dc2d68e808a9c68 Author: Jaroslav Kysela Date: Fri May 27 11:12:35 2005 +0200 [ALSA] alsa-oss - improve readability of snd_pcm_oss_bytes() function ALSA<-OSS emulation Added bytes variable and do not use the frames argument as a temporaly storage for the byte counter. Signed-off-by: Jaroslav Kysela commit cdc27f3a3fad42f797d4112719d8455fda78c2df Author: Takashi Iwai Date: Fri May 27 11:11:02 2005 +0200 [ALSA] [doc] Fix a comment about dxs_support for via82xx driver Documentation Fixed/improved a comment about dxs_support option for via82xx driver. Signed-off-by: Takashi Iwai commit 685c0dccadfe19233d414afd9f00b8d480a85953 Author: Takashi Iwai Date: Fri May 27 11:10:18 2005 +0200 [ALSA] Add dxs_support for a Twinhead mobo VIA82xx driver Added dxs_support=4 for a Twinhead mobo. Signed-off-by: Takashi Iwai commit fc232c6e8d618daae212f643587f33d202961861 Author: Takashi Iwai Date: Fri May 27 10:42:45 2005 +0200 [ALSA] Fix a wrong bit set in AC1985 code AC97 Codec Fixed a wrong bit set in AD1985 surround jack controls. Signed-off-by: Takashi Iwai commit 8e72ab349e54da49cf3e11480581a3e6704d9553 Author: Jaroslav Kysela Date: Fri May 27 10:07:06 2005 +0200 [ALSA] Reverted last patch for SNDCTL_DSP_GETOPTR fix & possible overflow fix ALSA<-OSS emulation This reverts the last patch which wrongly mixes bytes and frames. The real culprit might be the 32-bit overflow, so the return expression uses 64-bit values now in snd_pcm_oss_bytes(). Signed-off-by: Jaroslav Kysela commit c3a9cfac750d78241b5dde7d004522f687703b90 Author: Roger Mach Date: Thu May 26 17:58:01 2005 +0200 [ALSA] pcm_oss - fix SNDCTL_DSP_GETOPTR not working correctly ALSA<-OSS emulation This patch changes snd_pcm_oss_bytes() by adding a local variable for the frames -> bytes conversion, which means that the frame count is no longer corrupted by this conversion. Signed-off-by: Roger Mach Signed-off-by: Clemens Ladisch commit 71fe7b82db923e0f71b05deeb54fce75d5a4d08d Author: Takashi Iwai Date: Wed May 25 18:11:40 2005 +0200 [ALSA] Fix ALC880 capture problems HDA Codec driver Fixed the capture on some ALC880 devices. The node 0x07 is sometimes invalid as an ADC. Also, the intialization of ADC nodes are fixed on some models. Signed-off-by: Takashi Iwai commit 033a1f10923bdc3646750eef471a618f9d4c074b Author: Takashi Iwai Date: Wed May 25 16:41:43 2005 +0200 [ALSA] hda-code: Fix the array size of codec list HDA Codec driver Fixed the wrong array size of the codec pointer list. Signed-off-by: Takashi Iwai commit 9baf6507ff4d0dcab22460e8785582d4eaadebeb Author: Takashi Iwai Date: Tue May 24 17:27:00 2005 +0200 [ALSA] Use standard form for URL Sound Core Use the standard form with <> for URL in Kconfig help texts. Signed-off-by: Takashi Iwai commit 62144100471e940468d7a0f2d989df193afe870c Author: Takashi Iwai Date: Tue May 24 17:24:59 2005 +0200 [ALSA] Make docproc happy PCM Midlevel Make docproc happy by moving '#if 0' before comments. Signed-off-by: Takashi Iwai commit 23854c30021fb6da1a76a0e6901b35be03419d5f Author: Takashi Iwai Date: Tue May 24 15:22:40 2005 +0200 [ALSA] Add comments for Sound Core Added (minimal) comments for in Kconfig, so that configurators can choose this entry explicitly. A more descriptive comment by someone else is appreciated... Signed-off-by: Takashi Iwai commit c9bce91f902737395c72d037d70effb5fcbc53b4 Author: Takashi Iwai Date: Tue May 24 13:41:03 2005 +0200 [ALSA] Update documentation for ice1712 and ice1724 Documentation,ICE1712 driver Updated the documentation for ice1712 and ice1724 drivers. Added the device description for shuttle SN25P missing in the last patch. Signed-off-by: Takashi Iwai commit b9cce37411edd668ae5dbc16aa9653800c8e0744 Author: Takashi Iwai Date: Tue May 24 13:16:56 2005 +0200 [ALSA] Add Shuttle SN25P support ICE1712 driver Added the support for Shuttle SN25P. Signed-off-by: Takashi Iwai commit d6e33796b5857adf418b07f8f7ce65f46163b2f1 Author: Takashi Iwai Date: Tue May 24 10:40:49 2005 +0200 [ALSA] cmipci: Fix obsolete description Documentation Fixed obsolete description about CMIPCI driver. Signed-off-by: Takashi Iwai commit e6e514fa825be7362a955ba43d6fd18896d375c2 Author: Takashi Iwai Date: Mon May 23 10:33:08 2005 +0200 [ALSA] Add the vendor 0x1558 to PM whitelist of es1968 ES1968 driver Added the vendor id 0x1558 to the power management whitelist of es1968 driver. Signed-off-by: Takashi Iwai commit 209ac85d76e4edf05779b4bd5c2a92b059e9ab4d Author: Adrian Bunk Date: Mon May 23 10:29:53 2005 +0200 [ALSA] sound/isa/: cleanups GUS Library This patch contains the following possible cleanups: - make needlesly global code static - #if 0 the following unused global functions: - gus/gus_volume.c: snd_gf1_gvol_to_lvol_raw - gus/gus_volume.c: snd_gf1_calc_ramp_rate - gus/gus_volume.c: snd_gf1_compute_vibrato - gus/gus_volume.c: snd_gf1_compute_pitchbend - gus/gus_volume.c: snd_gf1_compute_freq - gus/gus_io.c: snd_gf1_i_adlib_write - gus/gus_io.c: snd_gf1_i_write_addr - gus/gus_io.c: snd_gf1_pokew - gus/gus_io.c: snd_gf1_peekw - gus/gus_io.c: snd_gf1_dram_setmem - gus/gus_io.c: snd_gf1_print_global_registers - gus/gus_io.c: snd_gf1_print_setup_registers - gus/gus_io.c: snd_gf1_peek_print_block - gus/gus_io.c: snd_gf1_print_setup_registers - gus/gus_io.c: snd_gf1_peek_print_block - #if 0 the following unused global variable: - gus/gus_tables.h: snd_gf1_scale_table - remove the following unneeded EXPORT_SYMBOL's: - gus/gus_main.c: snd_gf1_i_write16 - gus/gus_main.c: snd_gf1_start - gus/gus_main.c: snd_gf1_stop Signed-off-by: Adrian Bunk Signed-off-by: Takashi Iwai commit 1baa705b75124df7cfe3d5d2706f794a14d26ad0 Author: James Courtier-Dutton Date: Sat May 21 22:35:58 2005 +0200 [ALSA] Tidy up card recognition. CA0106 driver Signed-off-by: James Courtier-Dutton commit 8f55fbb0fdb821023ff0a816ebf5056188891ff0 Author: James Courtier-Dutton Date: Sat May 21 16:45:58 2005 +0200 [ALSA] When the alsamixer says 'SPDIF Out [Off]', SPDIF output should be off and Analog output should be on. CA0106 driver This fixes a bug whereby when the snd-ca0106 module first loads, alsamixer says 'SPDIF Out [Off]' but no analog sound comes from the speakers. This covers any bug reports that said things like 'mixer fails to remember analog output on, when the system is rebooted.' Signed-off-by: James Courtier-Dutton commit 1f82941e82422fcb15d63431e163bf4f0b9389d9 Author: James Courtier-Dutton Date: Sat May 21 16:23:37 2005 +0200 [ALSA] Implement surround71 outputs on SB Live 24bit. CA0106 driver Notes: Requires updated alsa-lib. Signed-off-by: James Courtier-Dutton commit 82f008c2b651eefbf293546440fd226580b0c111 Author: Ville Syrjala Date: Fri May 20 18:40:38 2005 +0200 [ALSA] maestro3: Add hardware volume control quirk list Maestro3 driver Add a hardware volume quirk list to the maestro3 driver. Details were taken from the Windows driver. Hardware volume control is enabled only for the systems in the list. Signed-off-by: Ville Syrjala Signed-off-by: Takashi Iwai commit 58c1f8acdeec4989e5dce1a3aec16926342d7f4b Author: Takashi Iwai Date: Fri May 20 16:13:00 2005 +0200 [ALSA] Fix resume of via82xx-modem VIA82xx-modem driver Fix the resume of via82xx-modem, removing invalid __devinit. Signed-off-by: Takashi Iwai commit 123992f728785e05f385d23893bd5ec69871aeb4 Author: Adrian Bunk Date: Wed May 18 18:02:04 2005 +0200 [ALSA] sound/core/: possible cleanups PCM Midlevel,ALSA Core,Timer Midlevel,ALSA sequencer,Virtual Midi This patch contains the following possible cleanups: - make needlessly global code static - #if 0 the following unused global functions - remove the following unneeded EXPORT_SYMBOL's Signed-off-by: Adrian Bunk Signed-off-by: Takashi Iwai commit 5218064c885af5c49e380d09d54f3cc86891a580 Author: Benjamin Herrenschmidt Date: Wed May 18 16:31:51 2005 +0200 [ALSA] ppc32: Fix Alsa PowerMac driver on old machines PPC PMAC driver The g5 support code broke some earlier models unfortunately as those bail out early from the detect function, before the point where I added the code to locate the PCI device for use with DMA allocations. This patch fixes it. Signed-off-by: Benjamin Herrenschmidt Signed-off-by: Takashi Iwai commit 9502dcad6c1138a3ce2bae23ccd4be44c718d2a9 Author: Takashi Iwai Date: Wed May 18 16:25:46 2005 +0200 [ALSA] Export missing snd_pcm_format_*() PCM Midlevel Export snd_pcm_format_size(). This function is used by some out-of-kernel drivers. Make snd_pcm_format_cpu_endian() macro for optimization. Signed-off-by: Takashi Iwai commit e5b3f45f5d442b57dd07dd4f914f7e6cf4d183f1 Author: Takashi Iwai Date: Tue May 17 17:17:57 2005 +0200 [ALSA] Fix Mic/CLFE sharing on AD1985 AC97 Codec Fixed Mic/CLFE jack sharing on AD1985 codec. Signed-off-by: Takashi Iwai commit 604cf499256af85703bd4858da56e777ec71714d Author: Clemens Ladisch Date: Tue May 17 09:15:27 2005 +0200 [ALSA] usb-audio - fix synchronization packet interval with Audigy 2 NX USB generic driver When a device does not provide the bRefresh field in its audio endpoint descriptors, use the bInterval field instead. Furthermore, increase the number of sync URBs for better queueing. Signed-off-by: Clemens Ladisch commit d3ff42fd2b4fddb5d779e9e03a2ea44147aa8048 Author: Clemens Ladisch Date: Tue May 17 09:14:27 2005 +0200 [ALSA] usb-audio - claim all interfaces for Roland USB MIDI devices USB generic driver Many Roland USB MIDI devices have two interfaces that are currently not used by the driver; claim them anyway. Signed-off-by: Clemens Ladisch commit d138b44589cc180418f5a20cb0ecfe338123d86c Author: Jaroslav Kysela Date: Mon May 16 13:51:39 2005 +0200 [ALSA] fixed PAUSE ioctl for user space interface Timer Midlevel - fixed traditional cut-n-paste error Signed-off-by: Jaroslav Kysela commit 8c50b37c04a026ab6641ecb7eaf0fd479798e8b8 Author: Takashi Iwai Date: Sun May 15 15:43:54 2005 +0200 [ALSA] Change some timer ioctls due to confliction Timer Midlevel,ALSA Core Change values of some timer ioctls to avoid confliction with FIO* ioctls. The protocol version is increased to indicate this change. Signed-off-by: Takashi Iwai commit 15790a6be14852850ee7cbd791225fa51750d8af Author: Takashi Iwai Date: Sun May 15 15:04:14 2005 +0200 [ALSA] Add missing PAUSE ioctl Timer Midlevel Added the missing implemenation of TIMER PAUSE ioctl. Signed-off-by: Takashi Iwai commit 92bb010cd874e53e4c2e2a73510966e45cfa4525 Author: Takashi Iwai Date: Sun May 15 14:41:20 2005 +0200 [ALSA] Add PnP ID ADS7180 AD1816A driver Added PnP ID 'ADS7180' (AD1816?). Signed-off-by: Takashi Iwai commit 6d85be612d8b6a6730d19e742329e5ffa60eafdd Author: Takashi Iwai Date: Sun May 15 14:32:50 2005 +0200 [ALSA] Suppress debug message Control Midlevel Suppress 'unknown ioctl' debug message (replaced with snd_printdd). Signed-off-by: Takashi Iwai commit 54b903ec6e5a3194d86d8bb2f419c918efa4897f Author: Takashi Iwai Date: Sun May 15 14:30:10 2005 +0200 [ALSA] Add Analog Devices vendor name HDA Codec driver Added the missing vendor name entry for Analog Devices. Signed-off-by: Takashi Iwai commit fd2c326de8cd35a36514a887541426b1ef7c5516 Author: Takashi Iwai Date: Fri May 13 17:18:42 2005 +0200 [ALSA] Allow more than 2 channel modes HDA Codec driver Allow 'Channel Mode' control to have more than 2 modes. Signed-off-by: Takashi Iwai commit 9bc533f58e8515cf346932fc84a58dd706342635 Author: Takashi Iwai Date: Fri May 13 16:44:27 2005 +0200 [ALSA] Fix a typo in position_fix module option type HDA Intel driver Fixed a typo in the type of position_fix module option. Signed-off-by: Takashi Iwai commit 680ff0ac6d0c84f14a2e540f64521a9fa80d8661 Author: Takashi Iwai Date: Fri May 13 16:06:14 2005 +0200 [ALSA] Suppress error message HDA Codec driver Suppressing the error message regarding no AFG. This is often harmless (e.g. probing a modem codec). Signed-off-by: Takashi Iwai commit 89c87bf8c12e27fbbed971380e21895cace3a065 Author: Adrian Bunk Date: Fri May 13 15:28:08 2005 +0200 [ALSA] make code static CA0106 driver,HDA Codec driver This patch makes needlessly global code static. Signed-off-by: Adrian Bunk Signed-off-by: Takashi Iwai commit 10268b0c38333ede95bb59a7fa561519e6eb8251 Author: Takashi Iwai Date: Fri May 13 11:01:13 2005 +0200 [ALSA] Remove obsolete mixer control AC97 Codec Removed the obsolete mixer control for AD1985. Signed-off-by: Takashi Iwai commit 29b16931f936fdbcd78995e66d0f5626f3afbda8 Author: Clemens Ladisch Date: Fri May 13 07:50:28 2005 +0200 [ALSA] usb-audio - avoid unnecessary double buffering USB generic driver When a USB packet boundary falls exactly on a buffer boundary, hwptr remains at the end of the buffer which causes an overflow in the next iteration and triggers double buffering although the next packet would actually be contiguous. This patch ensures that hwptr is always smaller than buffer_size. Signed-off-by: Clemens Ladisch commit 50cdbf1519a891bec4ce306c7bae397a0d8e7246 Author: Clemens Ladisch Date: Fri May 13 07:44:13 2005 +0200 [ALSA] usb-audio - sanity-check sync feedback frequency values USB generic driver Check that the synchronization feedback frequency values returned by the device are more or less near the nominal frequency. Signed-off-by: Clemens Ladisch commit 7291548df69ab4e3a87ff6952449d1f05c3a5443 Author: Takashi Iwai Date: Thu May 12 16:49:45 2005 +0200 [ALSA] Rename pci_vendor/pci_device to pci_subvendor/pci_subdevice HDA Codec driver,HDA generic driver Renamed pci_vendor/pci_device fields to pci_subvendor/pci_subdevice. They are really PCI subsystem IDs. Signed-off-by: Takashi Iwai commit fc20a562ca1a3c22dc257b2e2d849cb1a9ab6420 Author: Takashi Iwai Date: Thu May 12 15:00:41 2005 +0200 [ALSA] Add support of VIA VT8251/VT8237A HD-Audio controllers Documentation,HDA Intel driver Added the support of VIA VT8251/VT8237A HD-Audio controllers. They are (almost) compatible with Intel ICH6/7. Signed-off-by: Takashi Iwai commit f5d40b30ed4daf09f1d43f9b2da1263b17a53c28 Author: Frederick Li Date: Thu May 12 14:55:20 2005 +0200 [ALSA] Adding support for ATI IXP450 HD Audio device support Documentation,HDA Intel driver This patch changes the Intel HD Audio device driver to include the support of HD Audio device embedded in ATI south bridge IXP450. Because the design of ATI chipset follows intel HD Audio specification 1.0, the programming method is the same as that of intel HD Audio device exception one minor change which requires to enable snoop for DMA transport. There are 3 changes that have been made to hda_intel.c file. 1. Added device ID for ATI HD Audio device; 2. Increase maximum CODEC supported to 4; 3. Enable snoop during the driver initialization. Signed-off-by: Frederick Li Signed-off-by: Takashi Iwai commit 2fa522bed875cf0bde9e9fdb8fdd852c9d74d67d Author: Takashi Iwai Date: Thu May 12 14:51:12 2005 +0200 [ALSA] Add test model for debugging ALC880 devices HDA Codec driver Added 'test' model for testing/debugging the devices with ALC880 codec. This model is built only when CONFIG_SND_DEBUG is set. Signed-off-by: Takashi Iwai commit dfc0ff62a1d24e987205b41fbf322a4377626481 Author: Takashi Iwai Date: Thu May 12 14:31:49 2005 +0200 [ALSA] Add ASUS Z71V support Documentation,HDA Codec driver Added the ASUS Z71V (or similar) laptop support. Signed-off-by: Takashi Iwai commit c74db86bcf0897cdd4dc1f85ae0d76ef59aaeb20 Author: Takashi Iwai Date: Thu May 12 14:26:27 2005 +0200 [ALSA] Add position_fix module option Documentation,HDA Intel driver Added position_fix module option to HDA-intel driver for fixing up the DMA position (possibly hardware-) bugs. Signed-off-by: Takashi Iwai commit 091bf4dcab10b083f944d4eafbe0c734786485fe Author: Ville Syrjala Date: Thu May 12 14:20:57 2005 +0200 [ALSA] maestro3: HP OmniBook HW volume button magic Maestro3 driver Some HP OmniBook laptops (500 and 6000 at least) require some GPIO magic before the HW volume buttons work. This patch makes them work mostly. Something is still missing to make them work perfectly. However I have been unable to figure out what exactly. Signed-off-by: Ville Syrjala Signed-off-by: Takashi Iwai commit db68d15da00f64bef2c8c822baab42aff39ae774 Author: Ville Syrjala Date: Thu May 12 14:19:32 2005 +0200 [ALSA] maestro3: Add HW volume button support Maestro3 driver Add support for hardware volume buttons. Signed-off-by: Ville Syrjala Signed-off-by: Takashi Iwai commit 88491386be67f659e6b2c76c7463c997ce4c4ebb Author: Ville Syrjala Date: Thu May 12 14:14:28 2005 +0200 [ALSA] maestro3: Fix interrupt ack and disable Maestro3 driver Due to a typo interrupts were never actually acked or disabled. Signed-off-by: Ville Syrjala Signed-off-by: Takashi Iwai commit cb5a6ffc5c09bc354af69407dae710dcddcced37 Author: Russell King Date: Thu May 12 14:04:59 2005 +0200 [ALSA] ARM AACI primecell driver ARM,/arm/Makefile,ARM AACI PL041 driver Add support for the ARM AACI Primecell, which provides an AC'97 based interface. This driver only provides playback support. This has been extensively tested with an LM4549 AC'97 codec. Signed-off-by: Russell King Signed-off-by: Takashi Iwai commit 9b9a5afffd8636a82c6b32970342aef9d1f3d17d Author: Russell King Date: Thu May 12 10:25:58 2005 +0200 [ALSA] ARM DMA subsystem ARM DMA routines The patch below adds a convenient re-usable shim around the extended ARM DMA API, and is used by several ARM ALSA drivers. Signed-off-by: Russell King Signed-off-by: Takashi Iwai commit f7de9cfd25b6867a2854d98d734e03e1a9fc65fb Author: Mikael Magnusson Date: Wed May 11 11:13:26 2005 +0200 [ALSA] emu10k1 - add SB0060 to emu_chip_details EMU10K1/EMU10K2 driver The following patch adds SB0060 to emu_chip_details. Signed-off-by: Mikael Magnusson Signed-off-by: Jaroslav Kysela commit 1dcd3ec4728f9568ee204ceb46b0851be324a7f9 Author: Clemens Ladisch Date: Tue May 10 14:51:40 2005 +0200 [ALSA] usb-audio - bind to control interface instead of usb_device USB generic driver Bind the device files to the (first) audio control interface instead of the entire USB device. Signed-off-by: Clemens Ladisch commit 462c4173509c5d1ebdc6cfd58f7236c2ac467e30 Author: Clemens Ladisch Date: Tue May 10 14:50:31 2005 +0200 [ALSA] ac97 - enable multichannel output on AD198x codecs AC97 Codec The code for AD1980/AD1985/AD1986 codecs forgot to enable the code to switch the jack sharing bits on AD1888-compatible codecs. Signed-off-by: Clemens Ladisch commit 3296480674e127601f453db6301bfbcbacb0d123 Author: Clemens Ladisch Date: Tue May 10 14:48:37 2005 +0200 [ALSA] ac97 - fix Mic jack sharing on AD1888 codecs AC97 Codec The code for modifying the center/LFE disable bit on AD1888 codecs accidentally toggled the mute split bit instead. Signed-off-by: Clemens Ladisch commit aafad5629a949d0ad41180f8a746b6cd7654e317 Author: Clemens Ladisch Date: Tue May 10 14:47:38 2005 +0200 [ALSA] usb-audio - add a proc file for Audigy 2 NX jack status USB generic driver This patch adds a proc file for the SB Audigy 2 NX which shows the connection status of the various jacks. Unfortunately, no SPDIF input frequency (yet). Signed-off-by: Clemens Ladisch commit f55a655bf9eeb1431633bd313f47c8e4dadcf47c Author: Clemens Ladisch Date: Mon May 9 09:21:28 2005 +0200 [ALSA] usb-audio - remove superfluous LIRC ioctls USB generic driver The ioctls for LIRC compatibility can be removed because the infrastructure and detection stuff is better done in user space. Signed-off-by: Clemens Ladisch commit 3a2f08560d61e267aacddc63c26bf997d0d85e91 Author: Clemens Ladisch Date: Mon May 9 09:20:31 2005 +0200 [ALSA] usb-audio - enable high speed (not) on Audigy 2 NX USB generic driver The SB Audigy 2 NX needs a special boot-up command before it works in high speed mode. However, we don't actually enable it yet because high speed synchronization doesn't seem to work with this device. Signed-off-by: Clemens Ladisch commit 3714b5344e2da58d18f0b885663226826c22a1b3 Author: James Courtier-Dutton Date: Sun May 8 22:22:27 2005 +0200 [ALSA] Fix snd-usb-audio dependency on snd-hwdep. USB Signed-off-by: James Courtier-Dutton commit a488e033861363f64ed90d01622e0c30b382b753 Author: Arnaud Patard Date: Sat May 7 18:51:51 2005 +0200 [ALSA] cs4281 - fix DLLRDY not seen problem CS4281 driver Reset the FPDN bit of the EPPMC register if needed. Signed-off-by: Arnaud Patard Signed-off-by: Jaroslav Kysela commit 22bc30c84b4dc092deb2b14deb0603b257818e63 Author: James Courtier-Dutton Date: Sat May 7 16:13:40 2005 +0200 [ALSA] Increase capture buffer sizes. EMU10K1/EMU10K2 driver Signed-off-by: James Courtier-Dutton commit f927c8fc648420ad8edd7e4699b4ba510c2e9c6b Author: James Courtier-Dutton Date: Sat May 7 15:34:13 2005 +0200 [ALSA] Implement different capture sources. EMU10K1/EMU10K2 driver e.g. When HD Capture source is set to SPDIF, setting HD Capture channel to 0 captures from CDROM digital input. setting HD Capture channel to 1 captures from SPDIF in. Signed-off-by: James Courtier-Dutton commit c702563703b5680a7143f8ac66613d082a190ca2 Author: James Courtier-Dutton Date: Wed May 4 17:26:28 2005 +0200 [ALSA] Support multiple capture rates on p16v. EMU10K1/EMU10K2 driver The capture rate does in fact vary, but it only captures anything if the HD Capture source is set to I2S or AC97. I have not tested if the sound is actually captured from an physical input of some type or not. TODO: Get SPDIF capture working. Signed-off-by: James Courtier-Dutton commit 14c7e472aa979eecc15255eec5cec2763649c599 Author: James Courtier-Dutton Date: Wed May 4 16:53:53 2005 +0200 [ALSA] Update A_SAMPLE_RATE register details. EMU10K1/EMU10K2 driver Signed-off-by: James Courtier-Dutton commit c3f9329716df9965cbaf74ce313a12fe889c1a62 Author: Clemens Ladisch Date: Wed May 4 14:56:04 2005 +0200 [ALSA] usb-audio - set sample rate attribute on Audigy 2 NX endpoints USB generic driver The SB Audigy 2 NX does not advertise the sample rate attribute in its endpoint descriptors although it supports it. Signed-off-by: Clemens Ladisch commit 93446edcd05589201f20cf8843e8c4f990c18ae4 Author: Clemens Ladisch Date: Tue May 3 08:02:40 2005 +0200 [ALSA] usb-audio - Audigy 2 NX blinkenlights USB generic driver Adds mixer controls for the CMSS/Dolby Digital/Power LEDs on the SB Audigy 2 NX. Signed-off-by: Clemens Ladisch commit 434b7f56872fc5783c77f362e895da8e22168325 Author: Clemens Ladisch Date: Mon May 2 08:58:31 2005 +0200 [ALSA] usb-audio - make SB remote control device LIRC compatible USB generic driver Add ioctls to the Sound Blaster remote control hwdep device so that it can be used with LIRC. Signed-off-by: Clemens Ladisch commit ca81090a00e3e7152fe1f3d7398f11d57919428e Author: Clemens Ladisch Date: Mon May 2 08:55:54 2005 +0200 [ALSA] usb-audio - use only one packet in synchronization feedback URBs USB generic driver Do not use more than one packet in synchronization feedback URBs because it would be pointless to send or receive more than one value at the same time. Signed-off-by: Clemens Ladisch commit 1149a64fe4916fe6fdc8938043a0dc9a6551ab63 Author: Clemens Ladisch Date: Mon May 2 08:53:46 2005 +0200 [ALSA] usb-audio - use proper interval between synchronization packets USB generic driver Add sanity checks when reading the bRefresh value, and actually use it for the synchronization packets instead of polling at 1000 Hz. Signed-off-by: Clemens Ladisch commit 4dc40a3cc4778ebcb6212bdb71b48690a153be07 Author: Clemens Ladisch Date: Mon May 2 08:52:32 2005 +0200 [ALSA] usb-audio - allow type 0 extension units USB generic driver Extension units can have type 0, so do not ignore them when constructing mixer controls. Signed-off-by: Clemens Ladisch commit 27d10f5664c7650af3b2ffadfefaf19b36dc7bd8 Author: Clemens Ladisch Date: Mon May 2 08:51:26 2005 +0200 [ALSA] usb-audio - cache vendor/product IDs USB generic driver Cache the decoded values of idVendor/idProduct to get rid of most of those ugly le16_to_cpu() calls. Signed-off-by: Clemens Ladisch commit b259b10c420a59a2fdbcf5a3498253ebcbdffa1e Author: Clemens Ladisch Date: Fri Apr 29 16:29:28 2005 +0200 [ALSA] usb-audio - add Extigy/Audigy 2 NX remote control support ALSA Core,USB generic driver Add an hwdep interface that supports reading remote control data from Sound Blaster Extigy and Audigy 2 NX devices. Signed-off-by: Clemens Ladisch commit 6639b6c2367f884ca172b78d69f7da17bfab2e5e Author: Clemens Ladisch Date: Fri Apr 29 16:26:14 2005 +0200 [ALSA] usb-audio - add mixer control notifications USB generic driver Add support for the optional status interrupt endpoint in audio control interfaces, and translate USB status notifications into ALSA mixer control notifications. Signed-off-by: Clemens Ladisch commit 84957a8ab086377a025e0448fa716ed5983f3c3a Author: Clemens Ladisch Date: Fri Apr 29 16:23:13 2005 +0200 [ALSA] usb-audio - move mixer data into separate struct USB generic driver Move all data related to audio control interfaces into a separate struct local to usbmixer.c. Signed-off-by: Clemens Ladisch commit 707e60732fc25fe3760f916d083b262a86a666c0 Author: Clemens Ladisch Date: Fri Apr 29 09:56:17 2005 +0200 [ALSA] usb-audio - reduce size of unitbitmap array USB generic driver Unit/terminal IDs are 8-bit integers, so the unitbitmap variable does not need to be bigger than 256 bits. Signed-off-by: Clemens Ladisch commit 8c1872dcf29e2a194197e1d5a9c366a265986b84 Author: Clemens Ladisch Date: Thu Apr 28 09:31:53 2005 +0200 [ALSA] usb-audio - restrict Audigy 2 NX frequencies to 48/96 kHz USB generic driver On the SB Audigy 2 NX, frequency feedback doesn't quite work when playing at 44.1 kHz, so temporarily disable this frequency. Signed-off-by: Clemens Ladisch commit ade2916109dc53350298f1ccfb8ab03432c590b4 Author: Jaroslav Kysela Date: Wed Apr 27 16:09:21 2005 +0200 ALSA CVS update ALSA Version 1.0.9rc3 Signed-off-by: Jaroslav Kysela commit 7679a03099992d8e6c878d459e22b639ed8c10fa Author: Thomas Charbonnel Date: Mon Apr 25 11:35:29 2005 +0200 [ALSA] hdsp - solved big endian problem RME HDSP driver ppc firmware upload fix Signed-off-by: Thomas Charbonnel Signed-off-by: Jaroslav Kysela commit 67e1b51e293cec9bbe8c9ad81680bceec1e3b7f9 Author: Sergey Vlasov Date: Mon Apr 25 11:34:33 2005 +0200 [ALSA] ac97 - add the 'Mic Front Input Switch' control (ALC850) AC97 Codec Add the 'Mic Front Input Switch' control to the mixer for ALC850. Enabling this input is required for using the front panel microphone connector with ASUS A8V motherboard. Signed-off-by: Sergey Vlasov Signed-off-by: Jaroslav Kysela commit b16760bbb9e3c63b6beef7e2c8f8db64ab5efe70 Author: Sergey Vlasov Date: Mon Apr 25 11:22:20 2005 +0200 [ALSA] fix behaviour of ac97_enum_mixer elements AC97 Codec ac97_enum mixer elements (e.g., 'Capture Source') did not work because of wrong bitmask calculation in snd_ac97_get_enum_double() and snd_ac97_put_enum_double(). https://bugtrack.alsa-project.org/alsa-bug/view.php?id=1072 Signed-off-by: Sergey Vlasov Signed-off-by: Jaroslav Kysela commit ee7333970bee3e7565feeb3edfef4db81cbe72e5 Author: Clemens Ladisch Date: Mon Apr 25 10:34:13 2005 +0200 [ALSA] usb-audio - remove superfluous parameter USB generic driver,USB USX2Y This patch removes the superfluous driver parameter from the disconnect functions. Signed-off-by: Clemens Ladisch commit 8e062ec7108f8a91149e6bccddc3b7341e406274 Author: Clemens Ladisch Date: Fri Apr 22 15:49:52 2005 +0200 [ALSA] usb-audio - add selector unit names override for Audigy 2 NX USB generic driver Add a mechanism to specify source names of selector units, and add such names for the SB Audigy 2 NX. Signed-off-by: Clemens Ladisch commit 08fe15899df9696a6d34abf96230ae0691f5de66 Author: Clemens Ladisch Date: Fri Apr 22 15:33:01 2005 +0200 [ALSA] usb-audio - show exact synchronous frequency in proc file USB generic driver In the streamX proc file, show the exact number of samples per USB frame as 16.16 hexadecimal floating point value. Signed-off-by: Clemens Ladisch commit 863ad944b9a32dc43baa76143275411824d5928e Author: Clemens Ladisch Date: Fri Apr 22 08:52:03 2005 +0200 [ALSA] usb-audio: add Audigy 2 NX control names USB generic driver Add a mixer control map for the SB Audigy 2 NX so that we get meaningful mixer control names. Signed-off-by: Clemens Ladisch commit 930fed517441310a80e269a193ee52f99dd58082 Author: Takashi Iwai Date: Wed Apr 20 20:54:43 2005 +0200 [ALSA] Add dxs_support entry for MSI K8T Neo-FIS2R VIA82xx driver Report by Ronny V. Vindenes Add dxs_support=5 for MSI K8T Neo-FIS2R. Signed-off-by: Takashi Iwai commit d21b37ea134921f807ebdbd19ae3cd00bb8bf2fc Author: Takashi Iwai Date: Wed Apr 20 13:45:55 2005 +0200 [ALSA] Fix and cleanup of CM9880 auto-configuration HDA Codec driver Fix and cleanup of CM9880 automatic PIN configuration. snd_hda_codec_setup_stream() doesn't do anything when NID is 0. Signed-off-by: Takashi Iwai commit b0c95f514a4057720958c9ea0113229468c94b2b Author: Takashi Iwai Date: Wed Apr 20 13:44:08 2005 +0200 [ALSA] Show PIN jack type HDA generic driver Show the jack type of each PIN default configuration entry. Signed-off-by: Takashi Iwai commit c31329257522bf66df56e279e20df6fc7abd1ea7 Author: Takashi Iwai Date: Wed Apr 20 13:43:00 2005 +0200 [ALSA] Fix a typo in comments HDA generic driver Fix a typo in comments. Signed-off-by: Takashi Iwai commit 230cd5e24853ed4dd960461989b8ed0986d37a99 Author: Karsten Wiese Date: Wed Apr 20 10:12:35 2005 +0200 [ALSA] prevent oops & dead keyboard on usb unplugging while the device is being used USB generic driver,USB USX2Y Without this patch, some usb kobjects, which are parents to the usx2y's kobjects can be freed before the usx2y's. This led to an oops in get_kobj_path_length() and a dead keyboard, when the usx2y's kobjects were freed. The patch ensures the correct sequence. Tested ok on kernel 2.6.12-rc2. Signed-off-by: Karsten Wiese Signed-off-by: Takashi Iwai commit fe5ac9dcfe3b219209cf8e08347cce47658267d0 Author: Jesper Juhl Date: Wed Apr 20 10:03:31 2005 +0200 [ALSA] trivial warning fix for emu10k1 EMU10K1/EMU10K2 driver When building with gcc -W sound/pci/emu10k1/emupcm.c produces this little warning in 2.6.12-rc2-mm3 : sound/pci/emu10k1/emupcm.c:265: warning: 'inline' is not at beginning of declaration No big deal, but trivial to fix. Signed-off-by: Jesper Juhl Signed-off-by: Takashi Iwai commit 7358036cc6cb139d70d2b1898d29ecedc087fceb Author: Takashi Iwai Date: Fri Apr 15 13:51:48 2005 +0200 [ALSA] Add dxs_support=5 for Insight P4-ITX VIA82xx driver Added dxs_support=5 entry for Insight P4-ITX. Signed-off-by: Takashi Iwai commit 07cf374169699d78721668b4e4bd02097c971f75 Author: Takashi Iwai Date: Thu Apr 14 16:21:03 2005 +0200 [ALSA] Increase timer protocol number ALSA Core Increase the timer protocl number (to distinguish the fix for TREAD ioctls). Signed-off-by: Takashi Iwai commit 98f759a61639b40686e607ecc6fefacb4c249c82 Author: Takashi Iwai Date: Thu Apr 14 13:37:13 2005 +0200 [ALSA] Misc clean up HDA Codec driver Misc clean up: move the definitions of constants for pinctl to a single place. Signed-off-by: Takashi Iwai commit 01f66d2ccf83ee3ddc8276346f4e1113b9de50d9 Author: Takashi Iwai Date: Thu Apr 14 13:36:24 2005 +0200 [ALSA] Remove dead code HDA Codec driver Removed the dead (duplicated) code. Signed-off-by: Takashi Iwai commit 4a3fdf3dba80f332e6233e72bdbccdc6031fc92e Author: Takashi Iwai Date: Thu Apr 14 13:35:51 2005 +0200 [ALSA] Add AD1981HD and AD1983 support HDA Codec driver Added the support of AD1981HD and AD1983 codecs. Including the fix for AD1986A. Signed-off-by: Takashi Iwai commit 2f2f4251c9b123b2ab04da9e78ab6158535c2e38 Author: Matt Date: Wed Apr 13 14:45:30 2005 +0200 [ALSA] add sigmatel codec support HDA generic driver,HDA Codec driver Add initial SigmaTel codec support for 9200 and 922x. Note that this hda patch relies on the configuration default registers to be set correctly (normally by BIOS/firmware) in order for it to set up pin widgets properly. There's a test switch in the patch so it will work with the SigmaTel reference boards that are usually plugged into a system that doesn't set the configuration default registers. It supports 2 channel analog out and line/mic in. I plan to add >2 channel support and spdif support shortly. Please apply. Signed-off-by: Matt Signed-off-by: Takashi Iwai commit 1a12de1edf234b54ce94971d5604f85809c391b9 Author: Matt Date: Wed Apr 13 14:37:50 2005 +0200 [ALSA] hda: fix vref cap and ctl values HDA Codec driver,HDA generic driver Fix some vref defines so they are valid for the different bits in the pin cap and pin control registers. Please apply. Signed-off-by: Matt Signed-off-by: Takashi Iwai commit eb8caf30f4c059ddfdfa32b6034549622953db6f Author: Takashi Iwai Date: Wed Apr 13 14:32:57 2005 +0200 [ALSA] Improve the shared-jack handling on ac97 AC97 Codec The handling of shared surround/clfe output jacks with line/mic-in on some AC97 codecs is improved. Instead of 'Line-In As Surround' or 'Mic As Center/LFE' switch, two new enum controls are introduced: 'Channel Mode' and 'Surround Jack Mode'. The formar changes the current output mode among 2, 4 and 6-channels. The latter controls whether the jacks are shared or independent. Signed-off-by: Takashi Iwai commit 267cdf4036ed9e8565a7d909fdf854b9c7e1c5ff Author: Jaroslav Kysela Date: Wed Apr 13 13:25:30 2005 +0200 [ALSA] replace SNDRV_PCM_HW_PARAMS_RUNTIME -> SNDRV_PCM_HW_PARAMS_NORESAMPLE ALSA Core Signed-off-by: Jaroslav Kysela commit 004e65389714721ce0f52a8f0fc22999d3908a2a Author: Takashi Iwai Date: Tue Apr 12 17:33:59 2005 +0200 [ALSA] Fix capture on OSS emulation ALSA<-OSS emulation Fix the noisy capture on some hardwares over OSS emulation. Change back to avail_min = period_size for capture direction. Signed-off-by: Takashi Iwai commit bd7bf042e89941d4e693a0ec68c5093a2bb2adb3 Author: Takashi Iwai Date: Tue Apr 12 16:27:28 2005 +0200 [ALSA] Fix permissions in some /proc files PCM Midlevel,CA0106 driver,EMU10K1/EMU10K2 driver Fix by Guillaume Chazarain : Some tunables in /proc have a write() function, but as their permission does not reflect it, it can be confusing to the user. So here is a patch that corrects the mode of those files. Note that I have only tested the 'xrun_debug' entry. Signed-off-by: Takashi Iwai commit 0af68e5ed45e985b676edfbe4b8851dd46316502 Author: Takashi Iwai Date: Mon Apr 11 17:03:03 2005 +0200 [ALSA] Fix compile warning EMU10K1/EMU10K2 driver Fix compile warnings regarding the unused variables/functions. Signed-off-by: Takashi Iwai commit 01d25d460a3b28aab537fab9a0038d1b5832ce28 Author: Takashi Iwai Date: Mon Apr 11 16:58:24 2005 +0200 [ALSA] Replace pci_module_init() with pci_register_driver() Documentation,ALS4000 driver,ATIIXP driver,ATIIXP-modem driver AZT3328 driver,BT87x driver,CMIPCI driver,CS4281 driver ENS1370/1+ driver,ES1938 driver,ES1968 driver,FM801 driver Intel8x0 driver,Intel8x0-modem driver,Maestro3 driver,RME32 driver RME96 driver,SonicVibes driver,VIA82xx driver,VIA82xx-modem driver ALI5451 driver,au88x0 driver,CA0106 driver,CS46xx driver EMU10K1/EMU10K2 driver,HDA Intel driver,ICE1712 driver,ICE1724 driver KORG1212 driver,MIXART driver,NM256 driver,RME HDSP driver RME9652 driver,Trident driver,Digigram VX222 driver,YMFPCI driver Replace the obsolete pci_module_init() with pci_register_driver(). Signed-off-by: Takashi Iwai commit 01ef355f0c34d6fbb451512e70e4cf336776b7fd Author: Takashi Iwai Date: Mon Apr 11 15:08:32 2005 +0200 [ALSA] Fix SPDIF rate with dxs_support=4 VIA82xx driver Fix SPDIF rate setting with dxs_support=4. It should be 48k fixed. Signed-off-by: Takashi Iwai commit 2d7eb7cb2bab1fbe8cfb610277b19ad40a9f7c75 Author: Sergey Vlasov Date: Mon Apr 11 15:04:33 2005 +0200 [ALSA] Support all sample rate conversion capabilities of DXS channels Documentation,VIA82xx driver Add support for full sample rate conversion capabilities of DXS channels present in VIA VT8233/5/7 controllers: - any sample rate in the 8000 ... 48000 Hz range is supported even if the AC'97 codec supports only 48000 Hz output; - different DXS channels can use different sample rates at the same time (the controller performs required sample rate conversion and mixing in hardware). Signed-off-by: Sergey Vlasov Signed-off-by: Takashi Iwai commit 26be865923ce9edefe8ddc007ddb1c098c29c449 Author: Sergey Vlasov Date: Mon Apr 11 14:17:19 2005 +0200 [ALSA] Add PCI ID for Gallant Odyssey Sound 4 FM801 driver The Gallant Odyssey Sound 4 card is based on the ForteMedia FM801 chip, but has a different PCI ID. Signed-off-by: Sergey Vlasov Signed-off-by: Takashi Iwai commit 467a8c2f41ab4b96a7c604619eb7465db403dda8 Author: Adrian Bunk Date: Mon Apr 11 14:11:00 2005 +0200 [ALSA] remove dead code YMFPCI driver This patch removes some dead code found by the Coverity checker. Signed-off-by: Adrian Bunk Signed-off-by: Takashi Iwai commit aed058e8713f76be9258011238670064ea3e69a8 Author: Simone Zinanni Date: Mon Apr 11 14:08:40 2005 +0200 [ALSA] Provides preliminary support for the Terratec Phase 28 card ICE1712 driver Provides preliminary support for the Terratec Phase 28 card. Not extensively tested and probably buggy, but it seems to work. Signed-off-by: Simone Zinanni Signed-off-by: Takashi Iwai commit fd9a98ec0a7c8ce15928e3454d73533146d9d57c Author: James Courtier-Dutton Date: Sun Apr 10 15:43:35 2005 +0200 [ALSA] Fix typo in speaker routing. Now sound comes from the correct speakers EMU10K1/EMU10K2 driver when using the p16v HD device. Signed-off-by: James Courtier-Dutton commit 310bacd29230abf5f2a230159e48e983171e0f26 Author: James Courtier-Dutton Date: Sun Apr 10 00:00:24 2005 +0200 [ALSA] Improve playback startup. Increase buffer size, and reduce xruns. EMU10K1/EMU10K2 driver Signed-off-by: James Courtier-Dutton commit 001f758990d685e7023008763795f1970ef56614 Author: James Courtier-Dutton Date: Sat Apr 9 23:38:25 2005 +0200 [ALSA] Improve SPDIF playback via the P16V/CA0151 chip. EMU10K1/EMU10K2 driver Although we can set 44100 as the output rate, the SPDIF can do it, but the Analog output cannot. The SPDIF has the bug, whereby the Left channel arrives one sample late, so although we don't do any resampling, it is not good for AC3 non-audio output. Signed-off-by: James Courtier-Dutton commit df34140a9c15d4be8833f7977dca277a03ab87b0 Author: James Courtier-Dutton Date: Sat Apr 9 16:57:09 2005 +0200 [ALSA] Display SPDIF in status in proc fs 'spdif-in' file. EMU10K1/EMU10K2 driver Signed-off-by: James Courtier-Dutton commit f953eff29c1ea4c744afe3d50ff5ca33b44efcd2 Author: Takashi Iwai Date: Fri Apr 8 15:05:13 2005 +0200 [ALSA] choose multi-channel jacks automatically HDA Codec driver Patch by C.L. Tien : The patch makes cm9880 to choose multi-channel jacks automatically. 1. I found the current code has basic_init, which already includes necessary controls for 6-stack initialization, so I don't need another model. 2. I add a new model 'auto' to let the driver find a. if there are option real panel/front panel, b. the jacks to be used for multichannel. Because the jack color are based on MS's channel sequence, so the 'auto' model will pick the same jacks for multichannel MS uses. I did this to hope to minimize users questions. These code can also be applied to other codecs but I don't have any to test. Signed-off-by: Takashi Iwai commit 22e0732e59b3482bb2f068bfe911c532767e5974 Author: Clemens Ladisch Date: Fri Apr 8 08:25:23 2005 +0200 [ALSA] virmidi - fix ioctl parameter passing when setting client name ALSA sequencer The last change to reduce stack usage did not adjust the parameter to SNDRV_SEQ_IOCTL_SET_CLIENT_IOCTL which resulted in passing the address of the pointer instead of the structure. Signed-off-by: Clemens Ladisch commit 23fea4dad67a665e8d359dbb39180422385f1dcc Author: Sasha Khapyorsky Date: Thu Apr 7 20:23:58 2005 +0200 [ALSA] MC97 registers reset AC97 Codec Separated ac97 registers reset for audio and modem (or both) as recommended in AC97 spec. Signed-off-by: Sasha Khapyorsky Signed-off-by: Takashi Iwai commit 8e8311b0ac4dc8a2cf317e122a6f7dc4467e3254 Author: Sasha Khapyorsky Date: Thu Apr 7 20:22:58 2005 +0200 [ALSA] Fix MC97 codec initialization AC97 Codec This (especially 12000 -> 8000 sample rate replace) fix popular 'MC97 converters.. not ready' error with modem codecs initializations. Signed-off-by: Sasha Khapyorsky Signed-off-by: Takashi Iwai commit 2c56c47f678b0388290686d5a0988d8806ffe5cc Author: Sasha Khapyorsky Date: Thu Apr 7 20:21:21 2005 +0200 [ALSA] Fix 'semaphore is not ready' problem with snd-intel8x0m Intel8x0-modem driver With some intel based ac97 modems codec access semaphore is not cleared after 0x54 AC97 register (GPIO_STATUS) reads. This may causes problems with newly applied modem mixer (Off-hook switch) and in other cases. Signed-off-by: Sasha Khapyorsky Signed-off-by: Takashi Iwai commit 5f0dccf8500b0cc2ff247f626bc249bc184fd184 Author: Takashi Iwai Date: Thu Apr 7 15:53:20 2005 +0200 [ALSA] Add CM9780 support, fix CM9761 SPDIF AC97 Codec - Added CM9780 patch - Fix the SPDIF support on CM9761/CM9780 - Allow the generic enum callback to pass any number (not power of 2) as the value mask Signed-off-by: Takashi Iwai commit 55911694bf5edf15328dc6558fa3f432d52015ee Author: Takashi Iwai Date: Thu Apr 7 15:50:13 2005 +0200 [ALSA] Remove unused variables AC97 Codec Removed unused variables (the old control definitions). Signed-off-by: Takashi Iwai commit bdaed50292bea3e2b20c68c2ffe9dbde7c0d6910 Author: Takashi Iwai Date: Thu Apr 7 15:48:42 2005 +0200 [ALSA] Check revision for the proper detection of audigy 2 EMU10K1/EMU10K2 driver Check ther revision to detect non-listed audigy 2 boards. Signed-off-by: Takashi Iwai commit 5af4c83375cba113fb7e1ed57024a5442ca5060e Author: Clemens Ladisch Date: Wed Apr 6 09:47:02 2005 +0200 [ALSA] usb-audio - BOSS GS-10 PCM support USB generic driver This patch adds quirks to support 24-bit PCM I/O in the 'Advanced Driver' mode of the BOSS GS-10. Signed-off-by: Clemens Ladisch commit 0aa0d387877e8e6408d316aaee1ea84f8e1fb447 Author: Clemens Ladisch Date: Wed Apr 6 09:43:59 2005 +0200 [ALSA] virmidi - fix ioctl parameter passing when creating seq port ALSA sequencer The last change to reduce stack usage did not adjust the parameter to SNDRV_SEQ_IOCTL_CREATE_PORT which resulted in passing the address of the pointer instead of the structure. Signed-off-by: Clemens Ladisch commit c1935b4d6edf1c4d78bf660992d00b2d8fcb9b59 Author: Jaroslav Kysela Date: Mon Apr 4 16:44:58 2005 +0200 [ALSA] timer - added tread semaphore Timer Midlevel Signed-off-by: Jaroslav Kysela commit a913829e90e2af7a6e98f5aadcc9fec4dcf1ef64 Author: Dmitry Torokhov Date: Sun May 29 02:30:37 2005 -0500 Input: apparently Lifebook touchscreens have double resolution compared to "classic" PS/2 mice, provide appropriate resolution setting handler. Signed-off-by: Dmitry Torokhov commit a15d60f867408a4d8ce46359d9eb677818349e5b Author: Dmitry Torokhov Date: Sun May 29 02:30:32 2005 -0500 Input: lifebook - adjust initialization routines to be in line with the rest of protocols in preparation to dynamic protocol switching. Signed-off-by: Dmitry Torokhov commit 14e94143964d5af6d0a2ae8401cd9e9e091967b9 Author: Dmitry Torokhov Date: Sun May 29 02:30:28 2005 -0500 Input: lifebook - various cleanups: - do not try to set rate and resolution in init method, let psmouse core do it for us. This also removes special quirks from the core; - do not disable mouse before doing full reset - meaningless; - some formatting and whitespace cleanups. Signed-off-by: Dmitry Torokhov commit 02d7f5895005bd559c6c12d0f1b4e3dd5d91b927 Author: Kenan Esau Date: Sun May 29 02:30:22 2005 -0500 Input: Add Fujitsu Lifebook B-series touchscreen driver. From: Kenan Esau Signed-off-by: Vojtech Pavlik Signed-off-by: Dmitry Torokhov commit 41e979f822b34e789560ae2752f26f4a018f5d7e Author: Vojtech Pavlik Date: Sun May 29 02:30:15 2005 -0500 Input: Make EVIOSCSABS work in evdev. Signed-off-by: Vojtech Pavlik Signed-off-by: Dmitry Torokhov commit bef3768d8fdee7e1f1488e7017937eb4bf5797a2 Author: Adam Kropelin Date: Sun May 29 02:30:08 2005 -0500 Input: HID items of width 32 (bits) or greater are incorrectly extracted due to a masking bug in hid-core.c:extract(). This patch fixes it up by forcing the mask to be 64 bits wide. Signed-off-by: Adam Kropelin Signed-off-by: Vojtech Pavlik Signed-off-by: Dmitry Torokhov commit 18098a6c750d90e7bdf299fbd2144d05434a8d5a Author: Marian-Nicolae V. Ion Date: Sun May 29 02:30:01 2005 -0500 Input: Add a new I-Force device to the iforce driver. Signed-off-by: Vojtech Pavlik Signed-off-by: Dmitry Torokhov commit 8b1a198bf14d59b67e47dc7b133ec5ea443fb40d Author: Dmitry Torokhov Date: Sun May 29 02:29:52 2005 -0500 Input: fix open/close races in joystick drivers - add a semaphore to the ones that register more than one input device. Signed-off-by: Dmitry Torokhov commit af246041277674854383cf91b8f0b01217b521e8 Author: Dmitry Torokhov Date: Sun May 29 02:29:45 2005 -0500 Input: remove user counters from drivers/input/touchscreen since input core takes care of calling open and close methods only when needed. Signed-off-by: Dmitry Torokhov commit 65cde54b8b0299d7e46b8705338b01d1e44a5eb0 Author: Dmitry Torokhov Date: Sun May 29 02:29:38 2005 -0500 Input: remove user counters from drivers/usb/input since input core takes care of calling open and close methods only when needed. Signed-off-by: Dmitry Torokhov commit 3108d42de4da0823feb37a55db62acdc01554625 Author: Dmitry Torokhov Date: Sun May 29 02:29:30 2005 -0500 Input: remove user counters from drivers/input/mouse since input core takes care of calling open and close methods only when needed. Signed-off-by: Dmitry Torokhov commit 0fbf87caf70acec0c435233fbc39c7bd0aca3ca6 Author: Dmitry Torokhov Date: Sun May 29 02:29:25 2005 -0500 Input: add semaphore and user count to input_dev structure; serialize open and close calls and ensure that device's open and close methods are only called when first user opens it or last user closes it. Signed-off-by: Dmitry Torokhov commit 58a007765bb5f16020e6000ecbdc5bcc6e54a147 Author: Dmitry Torokhov Date: Sun May 29 02:29:19 2005 -0500 Input: maple_keyb - remove useless dc_kbd_open and dc_kbd_close functions as they are not doing anything. Signed-off-by: Dmitry Torokhov commit 8baf9ed400a0ff7ee21ccd8b2e086aa61c00add5 Author: Dmitry Torokhov Date: Sun May 29 02:29:08 2005 -0500 Input: mtouchusb was indented with spaces instead of tabs, pass through Lindent and adjust results. Signed-off-by: Dmitry Torokhov commit 05f091ab4c8c1f12f8dd38ee789489904fea327d Author: Dmitry Torokhov Date: Sun May 29 02:29:01 2005 -0500 Input: whitespace fixes in drivers/usb/input Signed-off-by: Dmitry Torokhov commit ab0c3443ad2de03383f2549195badf64779d08a1 Author: Dmitry Torokhov Date: Sun May 29 02:28:55 2005 -0500 Input: whitespace fixes in driver/input/joystick Signed-off-by: Dmitry Torokhov commit de1b963a416232bf429550ee475d6b9a34b66309 Author: Dmitry Torokhov Date: Sun May 29 02:28:50 2005 -0500 Input: whitespace fixes in drivers/input/touchscreen Signed-off-by: Dmitry Torokhov commit d083e90660657bf6bde508ba6c3eaa75eb4cf1f6 Author: Dmitry Torokhov Date: Sun May 29 02:28:42 2005 -0500 Input: whitespace fixes in drivers/input/keyboard Signed-off-by: Dmitry Torokhov commit 968ac842c4946abcd6ae623414783548672177f5 Author: Dmitry Torokhov Date: Sun May 29 02:28:29 2005 -0500 Input: whitespace fixes in drivers/input/mouse Signed-off-by: Dmitry Torokhov commit 71387bd77f662a83b18ff8de676e9d9531c58894 Author: Vojtech Pavlik Date: Sun May 29 02:28:14 2005 -0500 Input: Fix a warning in hid-core. Signed-off-by: Vojtech Pavlik Signed-off-by: Dmitry Torokhov commit 854561b019285acf6e98ca9288fef0d034476fec Author: Vojtech Pavlik Date: Sun May 29 02:28:00 2005 -0500 Input: Make hid-core issue a SET_IDLE request before GET_REPORT, like Windows does. This should make life easier for devices that were tested with Windows only. Signed-off-by: Vojtech Pavlik Signed-off-by: Dmitry Torokhov commit 8608471262ddf4b8ed4120d7211251e8b8dcbda9 Author: Hans-Christian Egtvedt Date: Sun May 29 02:27:45 2005 -0500 Input: Add driver for ITM Touch USB touchscreens. From: Hans-Christian Egtvedt Signed-off-by: Vojtech Pavlik Signed-off-by: Dmitry Torokhov commit 6af2cf59c22fbf5a5466928f29a9545b65fe0e96 Author: Richard Purdie Date: Sun May 29 02:27:06 2005 -0500 Input: Corgi keyboard driver - correct two keys which are much more useful as function keys instead of special keys. Signed-off-by: Richard Purdie Signed-off-by: Vojtech Pavlik Signed-off-by: Dmitry Torokhov commit b0f71c996849539ac68ebab5edbd208bb9c0646c Author: Vojtech Pavlik Date: Sun May 29 02:26:50 2005 -0500 Input: Fix a warning in evdev's 32-bit emulation code. Signed-off-by: Vojtech Pavlik Signed-off-by: Dmitry Torokhov commit 52658bb685df77f71e97f1b503dee97d27a88b0f Author: Juergen Kreileder Date: Sun May 29 02:26:43 2005 -0500 Input: Add support for 32-bit emulation on 64-bit platforms for evdev. Signed-off-by: Juergen Kreileder Signed-off-by: Vojtech Pavlik Signed-off-by: Dmitry Torokhov commit 024ac44c701d43f5e2d34bd6a35b2813a36e6010 Author: Jeremy Fitzhardinge Date: Sun May 29 02:26:31 2005 -0500 Input: This patch implements compat_ioctl for joydev. I've tested it with a Logitech WingMan Rumblepad on an x86-64 machine, and on an ia32 machine to make sure I didn't break anything. Signed-off-by: Jeremy Fitzhardinge Signed-off-by: Andrew Morton Signed-off-by: Vojtech Pavlik Signed-off-by: Dmitry Torokhov commit f23488b2ab1b447ea4ea3d00cdb0d322a73e7f7f Author: Vojtech Pavlik Date: Sun May 29 02:25:43 2005 -0500 Input: Kill Aureal Vortex 1/2 gameport driver. ALSA Aureal driver offers the gameport part already. Signed-off-by: Vojtech Pavlik Signed-off-by: Dmitry Torokhov commit e8eef5773325f1594acd377b5aa8fe5fb4e45163 Author: Vojtech Pavlik Date: Sun May 29 02:25:33 2005 -0500 Input: Crystal SoundFusion (cs461x) gameport support isn't needed either, since ALSA handles it nicely. Signed-off-by: Vojtech Pavlik Signed-off-by: Dmitry Torokhov commit f6397cecadc52779902bdd8f8cd3ea5af3a19ad1 Author: Vojtech Pavlik Date: Sun May 29 02:25:01 2005 -0500 Input: Probe PnP gameports first, ISA after that. Signed-off-by: Vojtech Pavlik Signed-off-by: Dmitry Torokhov commit 54ab87e6f53099b9a480b56149fa621c3132c076 Author: Takashi Iwai Date: Fri Apr 1 13:14:14 2005 +0200 [ALSA] Add mixer map for Sound Blaster MP3+ USB generic driver Added the mixer mapping for Sound Blaster MP3+ by Pavel Mihaylov Signed-off-by: Takashi Iwai commit 2668907a825702ba9c0e603f160a993b034572f5 Author: Peter Zubaj Date: Fri Apr 1 11:15:07 2005 +0200 [ALSA] Audigy SB0090 identification EMU10K1/EMU10K2 driver This add identification of Audigy 1 model SB0090 and fixes problems with ac97 codec (mic not working). Signed-off-by: Peter Zubaj Signed-off-by: Takashi Iwai commit c1ab5d59a0ff0981828a169886b10045dfdf64c6 Author: Clemens Ladisch Date: Wed Mar 30 16:22:01 2005 +0200 [ALSA] usb-audio - allow USB MIDI quirks to specify endpoints explicitly USB generic driver This patch reintroduces the check for endpoint numbers that are specified explicitly in the quirk structure. This check was accidentally dropped in the last rewrite of snd_usbmidi_detect_endpoints(). Signed-off-by: Clemens Ladisch commit 85a655d66b4d1672c7c6fee31297837556585f6b Author: Takashi Iwai Date: Wed Mar 30 14:40:25 2005 +0200 [ALSA] Fix the default id of multiple cards EMU10K1/EMU10K2 driver Fixed the default id string in case identical multiple cards exist. Signed-off-by: Takashi Iwai commit aec72e0a4be407fb69fbee812cf0028d62e75152 Author: Takashi Iwai Date: Wed Mar 30 14:22:25 2005 +0200 [ALSA] Use old default id strings for compatibility EMU10K1/EMU10K2 driver Use expliciitly the old default id strings for backward compatibility. This will make 'alsactl restore' working again. Signed-off-by: Takashi Iwai commit 9c220a31fd2f609ba55250a75d85ca795051a482 Author: Lee Revell Date: Wed Mar 30 14:04:34 2005 +0200 [ALSA] some docs for the new emu10k1 multichannel functionality Documentation Not complete, or even spell checked, but in case I don't get a chance to work on it again before 1.0.9, here is what i have so far. It should go in alsa-kernel/Documentation/emu10k1-jack.txt. Signed-off-by: Lee Revell Signed-off-by: Takashi Iwai commit 2b637da5a1bb3c128ecdadea6aee693f6ff3b786 Author: Lee Revell Date: Wed Mar 30 13:51:18 2005 +0200 [ALSA] clean up card features EMU10K1/EMU10K2 driver This patch converts the emu10k1 driver to use the card capabilities structure for some more things. Not extensively tested but seems to work. Signed-off-by: Lee Revell Signed-off-by: Takashi Iwai commit 51f633dada113ef724a145bb5b33ec77d1b092f6 Author: Takashi Iwai Date: Wed Mar 30 13:49:06 2005 +0200 [ALSA] Fix memory leak ALSA sequencer Fixed memory leak by the last change of stack reduction. Signed-off-by: Takashi Iwai commit a2142674b958d89e0806228a5f6cd22ec379d61d Author: Takashi Iwai Date: Tue Mar 29 16:33:28 2005 +0200 [ALSA] Fix the detection of resolution of ac97 controls AC97 Codec Fixed the detection of bit resolution of ac97 mixer controls. This will fix the problem with TI ac97 codecs. Signed-off-by: Takashi Iwai commit 56f5ceed002db594500c1d2c2afc875be3d31fb5 Author: James Courtier-Dutton Date: Sun Mar 27 15:00:54 2005 +0200 [ALSA] Added identification for the Audigy ES. EMU10K1/EMU10K2 driver Signed-off-by: James Courtier-Dutton commit 65f37647711bf6b0d09b499b9205a33b35ad4ad6 Author: James Courtier-Dutton Date: Sat Mar 26 22:10:36 2005 +0100 [ALSA] Add's identification of the SB Live! Platinum [CT4760P] EMU10K1/EMU10K2 driver Signed-off-by: James Courtier-Dutton commit 6e4abc40fc125b1dcc2792eacac17606a4d86043 Author: James Courtier-Dutton Date: Sat Mar 26 19:35:29 2005 +0100 [ALSA] Adds Capture to P16V chip. EMU10K1/EMU10K2 driver One can select which capture source, but one cannot yet set volumes. Signed-off-by: James Courtier-Dutton commit d05b2817d859a2a2f2c3d5c056b688559fdbcc2b Author: ChenLi Tien Date: Thu Mar 24 20:47:35 2005 +0100 [ALSA] fix multi-channel for model==full HDA Codec driver The patch_cm9880.c can't play side/C/B channels from front panel jacks. I fixed it by adding select pin. Signed-off-by: ChenLi Tien Signed-off-by: Takashi Iwai commit 36c4dc42249e96f0b0ddc90ca400bcb3981dbc62 Author: Takashi Iwai Date: Thu Mar 24 17:48:30 2005 +0100 [ALSA] Skip ac97 SPDIF controls CA0106 driver Skip building ac97 SPDIF controls via AC97_SCAP_NO_SPDIF. Clean up the code. Signed-off-by: Takashi Iwai commit c301098233bdbaae369bfdd98207db916df8cef2 Author: ChenLi Tien Date: Thu Mar 24 12:02:54 2005 +0100 [ALSA] Show currectly selected widget in proc_read for hda driver HDA generic driver During debugging for cm9880 multi-channel playback, I added the * after the currently selected widget, mixer widget doesn't need this but other 3 widget types need it. Signed-off-by: ChenLi Tien Signed-off-by: Takashi Iwai commit 94f19c9a6da1fd3a5958f1a0b44aa340f2596a5b Author: Adrian Bunk Date: Thu Mar 24 12:01:15 2005 +0100 [ALSA] kill dead code ALSA<-OSS emulation The Coverity checker found this obviously dead code. I'm not sure which of the if (plugin == NULL) is correct - this patch removes the one that couldn't be true. Signed-off-by: Adrian Bunk Signed-off-by: Takashi Iwai commit ea9375607f8b312cf4389d68909330ed32a622ef Author: Nicolas Pitre Date: Tue Apr 12 16:26:40 2005 -0400 [PATCH] smc91x: more tweaks to help with RX overruns Signed-off-by: Nicolas Pitre Index: linux-2.6/drivers/net/smc91x.c =================================================================== commit 8de901150f3c58b019b2a3ce497d23ab662dbb8b Author: Nicolas Pitre Date: Tue Apr 12 16:21:11 2005 -0400 [PATCH] smc91x: improve diagnostic info ... and remove duplicate status defines. Signed-off-by: Nicolas Pitre Index: linux-2.6/drivers/net/smc91x.c =================================================================== commit 1f15d694522af9cd7492695f11dd2dc77b6cf098 Merge: fff9cfd99c0f88645c3f50d7476d6c8cef99f140 254feb882a7c6e4e51416dff6a97d847fbbba551 Author: Date: Fri May 27 22:07:02 2005 -0400 Automatic merge of /spare/repo/netdev-2.6 branch master commit befc9e10d64f93472aff0b0280968f447f5402df Merge: 07b08a16186bd083ba06c37c621ea91fc580eb97 4dcb7d33770541ae3e65a57351f3875df64e8af6 Author: Date: Fri May 27 20:12:17 2005 -0400 Automatic merge of rsync://www.fr.zoreil.com/linux-2.6.git branch HEAD commit 07b08a16186bd083ba06c37c621ea91fc580eb97 Merge: 462cee296476278acaa54c41925b3273e0e4dd40 254feb882a7c6e4e51416dff6a97d847fbbba551 Author: Date: Fri May 27 20:09:40 2005 -0400 Automatic merge of rsync://rsync.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git branch HEAD commit 4dcb7d33770541ae3e65a57351f3875df64e8af6 Author: Richard Dawe Date: Fri May 27 21:12:00 2005 +0200 [PATCH] r8169: minor cleanup - more consistent prototypes; - rtl8169_rx_interrupt() o the error condition should be rare; o goto removal. Signed-off-by: Richard Dawe Signed-off-by: Francois Romieu commit d4a3a0fc9c2d012093cf75a8d95034966c17e71e Author: Stephen Hemminger Date: Fri May 27 21:11:56 2005 +0200 [PATCH] r8169: add ethtool support for dumping the chip statistics There aren't lots of statistics available, but this is what is available according to the RealTek documentation. Signed-off-by: Stephen Hemminger Signed-off-by: Francois Romieu commit b57b7e5a11c4e45565cf34d786d74ad35483fe83 Author: Stephen Hemminger Date: Fri May 27 21:11:52 2005 +0200 [PATCH] r8169: ethtool message level control support Also: - ratelimit the too much work at interrupt message, so if under massive packet load the console doesn't get flooded; - removal of a few PFX used in contexts where dev->name is available; - s/->slot_name/pci_name/; - printed_version is redundant with the debug option. Remove it and let the user decide. Signed-off-by: Stephen Hemminger Signed-off-by: Francois Romieu commit df0a1bf63403c2decec2c11cdd1b304363174e90 Author: Francois Romieu Date: Fri May 27 21:11:49 2005 +0200 [PATCH] r8169: add module parameter (media) Add module parameter description for the media option. Signed-off-by: Francois Romieu commit 1b7efd58bb2c89f408118888b659b51ff66c47b9 Author: Stephen Hemminger Date: Fri May 27 21:11:45 2005 +0200 [PATCH] r8169: add module parameter (copybreak) Add module parameter description for copybreak. Signed-off-by: Stephen Hemminger Signed-off-by: Francois Romieu commit f7ccf420e5d5553d2cb25d21f8bb77e7747f1c35 Author: Stephen Hemminger Date: Fri May 27 21:11:41 2005 +0200 [PATCH] r8169: identify the napi version To tell if driver is configured for NAPI or not, put -NAPI on driver version. Remove the NAPI printk since the complete version information is displayed once in the pci probe routine or returned via ethtool. Signed-off-by: Stephen Hemminger Signed-off-by: Francois Romieu commit 53456f607a7ec02905823dc92a94c7e36d4ded1a Author: Francois Romieu Date: Fri May 27 21:11:37 2005 +0200 [PATCH] r8169: de-obfuscate supported PCI ID De-obfuscate supported PCI ID Signed-off-by: Francois Romieu commit a7b6459de19c85432f791728317089459316da32 Author: Francois Romieu Date: Fri May 27 21:11:33 2005 +0200 [PATCH] r8169: new PCI id The USR 997902 is based on the 8169 chipset. The value has been extracted from the sources of the driver which comes with the manufacturer's cdrom. Heads-up and test by TommyDrum . Signed-off-by: Francois Romieu commit 8f37d47c9bf74cb48692691086b482e315d07f40 Author: David Woodhouse Date: Fri May 27 12:17:28 2005 +0100 AUDIT: Record working directory when syscall arguments are pathnames Signed-off-by: David Woodhouse commit b1abb4d67f2a706f52a95064001e0c55d9be2d26 Author: James Bottomley Date: Tue May 24 17:15:43 2005 -0500 [SCSI] aic7xxx: remove separate target and device allocations Since the aic driver is now taught to speak in terms of the generic linux devices, we can now also dispense with the transport class get routines (since we update the parameters when the driver sees they change) and also plumb it into the spi transport transfer agreement reporting infrastructure. Signed-off-by: James Bottomley commit 153b1e1fd957861e2c185473dd3c3d93561066e4 Merge: cdbbde14cb55dd10771ce79154f787322d88411b c3e9dda4f5702ee5b346f4770de53f79e8ad1d8d Author: James Bottomley Date: Thu May 26 14:14:55 2005 -0400 Automatic merge of ../scsi-misc-2.6-old/ commit 8973a585aec125beb2a3de50bb491004299f53d5 Merge: 907f4678c114a125fe4584758681c31bf3d627da bef9c558841604116704e10b3d9ff3dbf4939423 Author: Date: Thu May 26 13:03:24 2005 -0400 Automatic merge of rsync://rsync.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git branch HEAD commit c3e9dda4f5702ee5b346f4770de53f79e8ad1d8d Author: James Bottomley Date: Tue May 24 16:57:31 2005 -0500 [SCSI] allow the HBA to reserve target and device private areas This patch basically allows any HBA attached to the SPI transport class to declare an extra area which the mid-layer will allocate as part of its device and target allocations. Signed-off-by: James Bottomley commit 644e02ea147f8bea18800107f443ea5fa7f17f4f Author: Andrew Morton Date: Tue May 24 02:05:24 2005 -0700 [SCSI] git-scsi-misc-sbp2-warning-fix drivers/ieee1394/sbp2.c: In function `sbp2_check_sbp2_response': drivers/ieee1394/sbp2.c:2154: warning: unused variable `device_type' Signed-off-by: Andrew Morton Signed-off-by: James Bottomley commit a283bd37d00e92e8874ca6325ae071691d4db388 Author: James Bottomley Date: Tue May 24 12:06:38 2005 -0500 [SCSI] Add target alloc/destroy callbacks to the host template This gives the HBA driver notice when a target is created and destroyed to allow it to manage its own target based allocations accordingly. This is a much reduced verson of the original patch sent in by James.Smart@Emulex.com Signed-off-by: James Bottomley commit 631e8a1398ce4cfef8b30678d51daf0c64313a09 Author: Al Viro Date: Mon May 16 01:59:55 2005 +0100 [SCSI] TYPE_RBC cache fixes (sbp2.c affected) a) TYPE_SDAD renamed to TYPE_RBC and taken to scsi.h b) in sbp2.c remapping of TYPE_RPB to TYPE_DISK turned off c) relevant places in midlayer and sd.c taught to accept TYPE_RBC d) sd.c::sd_read_cache_type() looks into page 6 when dealing with TYPE_RBC - these guys have writeback cache flag there and are not guaranteed to have page 8 at all. e) sd_read_cache_type() got an extra sanity check - it checks that it got the page it asked for before using its contents. And screams if mismatch had happened. Rationale: there are broken devices out there that are "helpful" enough to go for "I don't have a page you've asked for, here, have another one". For example, PL3507 had been caught doing just that... f) sbp2 sets sdev->use_10_for_rw and sdev->use_10_for_ms instead of bothering to remap READ6/WRITE6/MOD_SENSE, so most of the conversions in there are gone now. Incidentally, I wonder if USB storage devices that have no mode page 8 are simply RBC ones. I haven't touched that, but it might be interesting to check... Signed-off-by: Al Viro Signed-off-by: James Bottomley commit 53222b906903fd861dc24ebccfa07ee125941313 Author: Matthew Wilcox Date: Fri May 20 19:15:43 2005 +0100 [SCSI] sym2 version 2.2.1 sym2 version 2.2.1: - Fix MMIO BAR detection (Thanks to Bob Picco) - Fix odd-sized transfers with a wide bus (Thanks to Larry Stephens) - Write posting fixes (Thanks to Thibaut Varene) - Change one of the GFP_KERNEL allocations back into a GFP_ATOMIC - Make CCB_BA() return a script-endian address - Move range checks and disabling of devices from the queuecommand path to slave_alloc() - Remove a warning in sym_setup_cdb() - Keep a pointer to the scsi_target instead of the scsi_dev in the tcb - Remove a check for the upper layers passing an oversized cmd - Replace CAM_REQ_ constants with the Linux DID_ constants - Replace CAM_DIR_ constants with the Linux DMA_ constants - Inline sym_read_parisc_pdc() on non-parisc systems Signed-off-by: James Bottomley commit 7551ced334ce6eb2a7a765309871e619f645add1 Author: David Woodhouse Date: Thu May 26 12:04:57 2005 +0100 AUDIT: Defer freeing aux items until audit_free_context() While they were all just simple blobs it made sense to just free them as we walked through and logged them. Now that there are pointers to other objects which need refcounting, we might as well revert to _only_ logging them in audit_log_exit(), and put the code to free them properly in only one place -- in audit_free_aux(). Signed-off-by: David Woodhouse ---------------------------------------------------------- commit 60bf09a366c873aab36e3b3110ee9f5bd89a1a6d Author: Narendra Sankar Date: Wed May 25 16:51:00 2005 -0700 [PATCH] sata_svw: Add support for new device IDs BCM5785 (HT1000) is a new southbridge from Serverworks/Broadcom that incorporates 4 SATA ports in a single PCIX function. Functionally these ports are similar to that in older devices like the Apple K2 and the Frodo4/8. This patch adds support for the new PCI device ID along with a blurb on what the various device IDs mean. Additionally in all devices based on this SATA controller, the SATA ports appear as a single PCI function. This is true for older Frodo8 devices as well. Hence the init function should init all the ports present in the detected controller (which could be 4 or 8). Signed-off-by: Narendra Sankar commit 37ca5389b863e5ffba6fb7c22331bf57dbf7764a Author: Stephen Smalley Date: Tue May 24 21:28:28 2005 +0100 AUDIT: Fix remaining cases of direct logging of untrusted strings by avc_audit Per Steve Grubb's observation that there are some remaining cases where avc_audit() directly logs untrusted strings without escaping them, here is a patch that changes avc_audit() to use audit_log_untrustedstring() or audit_log_hex() as appropriate. Note that d_name.name is nul- terminated by d_alloc(), and that sun_path is nul-terminated by unix_mkname(), so it is not necessary for the AVC to create nul- terminated copies or to alter audit_log_untrustedstring to take a length argument. In the case of an abstract name, we use audit_log_hex() with an explicit length. Signed-off-by: Stephen Smalley Signed-off-by: David Woodhouse commit 99e45eeac867d51ff3395dcf3d7aedf5ac2812c8 Author: David Woodhouse Date: Mon May 23 21:57:41 2005 +0100 AUDIT: Escape comm when logging task info It comes from the user; it needs to be escaped. Signed-off-by: David Woodhouse commit bccf6ae083318ea08094d6ab185fdf7c49906b3a Author: David Woodhouse Date: Mon May 23 21:35:28 2005 +0100 AUDIT: Unify auid reporting, put arch before syscall number These changes make processing of audit logs easier. Based on a patch from Steve Grubb Signed-off-by: David Woodhouse commit bfb4496e7239c9132d732a65cdcf3d6a7431ad1a Author: David Woodhouse Date: Sat May 21 21:08:09 2005 +0100 AUDIT: Assign serial number to non-syscall messages Move audit_serial() into audit.c and use it to generate serial numbers on messages even when there is no audit context from syscall auditing. This allows us to disambiguate audit records when more than one is generated in the same millisecond. Based on a patch by Steve Grubb after he observed the problem. Signed-off-by: David Woodhouse commit 791be9b976ba621b21745c30a7fca225fada9110 Author: Russell King Date: Sat May 21 18:16:44 2005 +0100 [PATCH] ARM SMP: add IPI support Add support for inter-processor interrupts to the main IRQ handling code. Signed-off-by: Russell King commit 706fdd9faaad5bd52c774190a54c0fd1dfc0f418 Author: Russell King Date: Sat May 21 18:15:45 2005 +0100 [PATCH] ARM SMP: reallocate main IRQ handler code registers By changing r9 -> r8 and r8 to 'tsk' (r9) we are able to remove one instruction from the preempt path. Signed-off-by: Russell King commit 187a51ad11351b009abab688fb7f6d6f3210a45f Author: Russell King Date: Sat May 21 18:14:44 2005 +0100 [PATCH] ARM SMP: consolidate main IRQ handler code Signed-off-by: Russell King commit 7b5d781ce1f19fb7382d3d3fb7af48e429bed12d Author: David Woodhouse Date: Sat May 21 16:52:57 2005 +0100 Fix oops due to thinko in avc_audit() When I added the logging of pid= and comm= back to avc_audit() I screwed it up. Put it back how it should be. Signed-off-by: David Woodhouse commit 326e9c8ba6a149f47e020719b23b24a14ba740d6 Author: Steve Grubb Date: Sat May 21 00:22:31 2005 +0100 AUDIT: Fix inconsistent use of loginuid vs. auid, signed vs. unsigned The attached patch changes all occurrences of loginuid to auid. It also changes everything to %u that is an unsigned type. Signed-off-by: Steve Grubb Signed-off-by: David Woodhouse commit 05474106a41f44d16d649bc8c7687fc24ce4370a Author: Steve Grubb Date: Sat May 21 00:18:37 2005 +0100 AUDIT: Fix AVC_USER message passing. The original AVC_USER message wasn't consolidated with the new range of user messages. The attached patch fixes the kernel so the old messages work again. Signed-off-by: Steve Grubb Signed-off-by: David Woodhouse commit 011161051bbc25f7f8b7df059dbd934c534443f0 Author: Stephen Smalley Date: Sat May 21 00:15:52 2005 +0100 AUDIT: Avoid sleeping function in SElinux AVC audit. This patch changes the SELinux AVC to defer logging of paths to the audit framework upon syscall exit, by saving a reference to the (dentry,vfsmount) pair in an auxiliary audit item on the current audit context for processing by audit_log_exit. Signed-off-by: Stephen Smalley Signed-off-by: David Woodhouse commit 7c00ffa314bf0fb0e23858bbebad33b48b6abbb9 Author: Mark Haverkamp Date: Mon May 16 18:28:42 2005 -0700 [SCSI] 2.6 aacraid: Variable FIB size (updated patch) New code from the Adaptec driver. Performance enhancement for newer adapters. I hope that this isn't too big for a single patch. I believe that other than the few small cleanups mentioned, that the changes are all related. - Added Variable FIB size negotiation for new adapters. - Added support to maximize scatter gather tables and thus permit requests larger than 64KB/each. - Limit Scatter Gather to 34 elements for ROMB platforms. - aac_printf is only enabled with AAC_QUIRK_34SG - Large FIB ioctl support - some minor cleanup Passes sparse check. I have tested it on x86 and ppc64 machines. Signed-off-by: James Bottomley commit 672b2d38da4fff4c4452685a25fb88b65243d1a6 Author: Ju, Seokmann Date: Mon May 16 18:32:17 2005 -0400 [SCSI] megaraid version 2.20.4.6 Signed-off by: Seokmann Ju Signed-off-by: James Bottomley commit 7e8a226147eec1a874ed371832bc0b0e11fdfd19 Author: Moore, Eric Dean Date: Wed May 11 17:37:43 2005 -0600 [SCSI] fusion - bump driver version to 3.03.02 Bump driver version to 3.03.02 Signed-off-by: Eric Moore Signed-off-by: James Bottomley commit c1a71d1c0440c47e006845f8accc1f212ca86852 Author: Moore, Eric Dean Date: Wed May 11 17:37:38 2005 -0600 [SCSI] fusion - mpi headers version 1.5.9 This patch contains update for mpi headers 1.5.9. Signed-off-by: Eric Moore Signed-off-by: James Bottomley commit 51bbc9c3e85598ffe72caf99f88db767952f2a57 Author: Moore, Eric Dean Date: Wed May 11 17:37:29 2005 -0600 [SCSI] fusion-kconfig-cleanup * This patch clarifies help section in FUSION_MAX_SGE entry. Signed-off-by: Eric Moore Signed-off-by: James Bottomley commit d485eb830576eef911727b1347402e9a708998a2 Author: Moore, Eric Dean Date: Wed May 11 17:37:26 2005 -0600 [SCSI] fusion-kfree-cleanup This patch is originally From: Jesper Juhl This patch gets rid of redundant NULL checks prior to calling kfree() in drivers/message/* There are also a few small whitespace changes in there. Signed-off-by: Eric Moore Signed-off-by: James Bottomley commit 3fadc59d603caf70e7a5295158e4f6eb06dffb8f Author: Moore, Eric Dean Date: Wed May 11 17:46:52 2005 -0600 [SCSI] fusion - Adding pci recog support for Fibre 949X and 939X chips * adding pci id support for new Fibre chips, 949X and 939X * adding errata workaround - disabling PIO access except during fwdlb. Signed-off-by: Eric Moore Signed-off-by: James Bottomley commit 793698ce28e20f4736250a9766270368beae5668 Author: Patrick Mansfield Date: Mon May 16 17:42:15 2005 -0700 [SCSI] saved and restore result for timed out commands Save and restore the scmd->result, so that timed out commands do not return the result of the TEST UNIT READY or the start/stop commands. Code is already in place to save and restore the result for the request sense case. The previous version of this patch erroneously removed the "if" check, instead add a comment as to why the "if" is needed. Signed-off-by: Patrick Mansfield Signed-off-by: James Bottomley commit ad34ea2cc3845ef4dcd7d12fb0fa8484734bd672 Merge: 90356ac3194bf91a441a5f9c3067af386ef62462 88d7bd8cb9eb8d64bf7997600b0d64f7834047c5 Author: James Bottomley Date: Fri May 20 15:27:44 2005 -0500 merge by hand - fix up rejections in Documentation/DocBook/Makefile commit 90356ac3194bf91a441a5f9c3067af386ef62462 Author: Christoph Hellwig Date: Sun May 15 17:20:56 2005 +0200 [SCSI] remove Documentation/DocBook/scsidrivers.tmpl This document is rather rudimentary and totally outdated. Fortunately Documentation/scsi/scsi_mid_low_api.txt replaces it quite nicely. Signed-off-by: James Bottomley commit d8c37e7b9a619855e05d5d4e56c68f799b1f539c Author: Tejun Heo Date: Sat May 14 00:46:08 2005 +0900 [SCSI] remove a timer race in scsi_queue_insert() scsi_queue_insert() has four callers. Three callers call with timer disabled and one (the second invocation in scsi_dispatch_cmd()) calls with timer activated. scsi_queue_insert() used to always call scsi_delete_timer() and ignore the return value. This results in race with timer expiration. Remove scsi_delete_timer() call from scsi_queue_insert() and make the caller delete timer and check the return value. Signed-off-by: Tejun Heo Signed-off-by: James Bottomley commit 5b8ef8425898e957243053c26ac2b68bd4bc42ec Author: Tejun Heo Date: Sat May 14 00:46:18 2005 +0900 [SCSI] remove spurious if tests from scsi_eh_{times_out|done} 'if' tests which check if eh_action isn't NULL in both functions are always true. Remove the redundant if's as it can give wrong impressions. Signed-off-by: Tejun Heo Signed-off-by: James Bottomley commit 0155a37ea5459f5bf1113c6fa519f943ef77d730 Author: Tejun Heo Date: Sat May 14 00:46:13 2005 +0900 [SCSI] remove unnecessary scsi_delete_timer() call in scsi_reset_provider() scsi_reset_provider() calls scsi_delete_timer() on exit which isn't necessary. Remove it. Signed-off-by: Tejun Heo Signed-off-by: James Bottomley commit 21feb5ccd5d054b8a17fe86b1b5df1e16809df64 Author: Gerd Knorr Date: Thu May 12 10:25:26 2005 +0200 [SCSI] convert scsi changer driver from class simple Here is a incremental patch which switches the driver over to the new non-simple functions. Compile-tested. Signed-off-by: Gerd Knorr Signed-off-by: James Bottomley commit daa6eda65a53e5addf86c6bc829129ff51b08bda Author: Gerd Knorr Date: Tue May 10 10:59:13 2005 +0200 [SCSI] add scsi changer driver This patch adds a device driver for scsi media changer devices. Signed-off-by: Gerd Knorr Signed-off-by: James Bottomley commit 5cbf5eaef7e4430f60844748fd33e22a5fb15167 Author: brking@us.ibm.com Date: Mon May 2 19:50:47 2005 -0500 [SCSI] ipr: Fix ipr PCI hotplug hang with CDROM attach Currently, during PCI hotplug remove, if the upper layer drivers of the attached devices send commands down as part of the remove action, like a CDROM, the hotplug action will hang forever due to the ipr driver returning SCSI_MLQUEUE_HOST_BUSY. Patch fixes this. Signed-off-by: Brian King Signed-off-by: James Bottomley commit 380c3877ae5de888cfb7a59990b9aee5a415295f Author: Adrian Bunk Date: Mon May 2 01:47:10 2005 +0200 [SCSI] drivers/scsi/sym53c416.c: fix a wrong check The Coverity checker found that this for loop was wrong. This patch changes it to what seems to be intended. Signed-off-by: Adrian Bunk Signed-off-by: James Bottomley commit 16c4b3e2071ad73e5cd2aa82961eed0414df6a7d Author: Kai Makisara Date: Sun May 1 18:11:55 2005 +0300 [SCSI] SCSI tape: fix permissions for SG_IO, etc. This patch is against 2.6.12-rc3 + linus-patch from April 30. The patch contains the following fixes: - CAP_SYS_RAWIO is used instead of CAP_SYS_ADMIN; fix from Alan Cox - only direct sending of SCSI commands requires this permission - the st status is modified is successful unload is performed using SCSI_IOCTL_STOP_UNIT Signed-off-by: Kai Makisara Signed-off-by: James Bottomley commit f80ed139343c37c897ae89c70f7736a6937172f5 Author: brking@us.ibm.com Date: Mon May 2 19:51:06 2005 -0500 [SCSI] ipr: Driver version 2.0.14 Bump driver version Signed-off-by: Brian King Signed-off-by: James Bottomley commit 1b69f645f224d9bab7fd5988aca818c9445f11d0 Author: brking@us.ibm.com Date: Mon May 2 19:50:59 2005 -0500 [SCSI] ipr: Array error logging fix Bugme 4547. The following patch fixes a bug in ipr's error logging. Signed-off-by: Brian King Signed-off-by: James Bottomley commit 7d0e11fb20b08790c71f5336b493662f952641c9 Author: Jeremy Higdon Date: Sun May 1 05:18:48 2005 -0700 [SCSI] qla1280.c - fix result for device Busy and Queue Full I discovered that the qla1280 driver does not send the correct status to the midlayer when it gets Queue Full or Busy from a device. Signed-off-by: Jeremy Higdon Signed-off-by: James Bottomley commit d335cc38c75e28407455463444b912b09c92daec Author: Moore, Eric Dean Date: Sat Apr 30 17:09:38 2005 -0500 [SCSI] mptfusion: fix panic loading driver statically compiled Adjust link ordering in the Makefile. Also, the ioc->DoneCtx handles for mptspi/mptfc in the message frame. And I'm now not seeing the panic. Signed-off-by: Eric Moore Signed-off-by: James Bottomley commit 4e33bd874bce8b3df2ab52538db59730196383c3 Author: James Bottomley Date: Sat Apr 30 17:05:20 2005 -0500 [SCSI] ultrastor: fix compile failure Signed-off-by: James Bottomley commit 93fc4294fc112ce4e518a3f62dea8681dc39d9cf Author: Al Viro Date: Wed Apr 27 06:05:56 2005 -0700 [SCSI] qla trivial iomem annotation Signed-off-by: Al Viro Signed-off-by: James Bottomley commit 56b5871223f66d4a34e6e1069f241077e9f0a154 Author: Mark Haverkamp Date: Wed Apr 27 06:05:51 2005 -0700 [SCSI] aacraid: remove sparse warnings This patch addresses the sparse -Wbitwise warnings that Christoph wanted me to eliminate. This mostly consisted of making data structure elements of hardware associated structures the __le* equivalent. Although there were a couple places where there was mixing of cpu and le variable math. These changes have been tested on both an x86 and ppc machine running bonnie++. The usage of the LE32_ALL_ONES macro has been eliminated. Signed-off-by: Mark Haverkamp Signed-off-by: James Bottomley commit 1c2fb3f38e250dd3b88612435869acf92b4f51e2 Author: Benoit Boissinot Date: Mon Apr 25 19:46:48 2005 -0700 [SCSI] drivers/scsi/dpt_i2o.c: fix compile warnings This patch fixes the following warnings: drivers/scsi/dpt_i2o.c: In function ‘adpt_isr’: drivers/scsi/dpt_i2o.c:2030: warning: passing argument 1 of ‘readl’ makes pointer from integer without a cast drivers/scsi/dpt_i2o.c:2031: warning: passing argument 1 of ‘readl’ makes pointer from integer without a cast drivers/scsi/dpt_i2o.c:2042: warning: passing argument 1 of ‘readl’ makes pointer from integer without a cast drivers/scsi/dpt_i2o.c:2043: warning: passing argument 2 of ‘writel’ makes pointer from integer without a cast drivers/scsi/dpt_i2o.c:2046: warning: passing argument 1 of ‘readl’ makes pointer from integer without a cast drivers/scsi/dpt_i2o.c:2048: warning: passing argument 1 of ‘readl’ makes pointer from integer without a cast drivers/scsi/dpt_i2o.c:2055: warning: passing argument 1 of ‘readl’ makes pointer from integer without a cast drivers/scsi/dpt_i2o.c:2062: warning: passing argument 1 of ‘readl’ makes pointer from integer without a cast drivers/scsi/dpt_i2o.c:2069: warning: passing argument 1 of ‘readl’ makes pointer from integer without a cast drivers/scsi/dpt_i2o.c: In function ‘adpt_i2o_to_scsi’: drivers/scsi/dpt_i2o.c:2239: warning: passing argument 1 of ‘readl’ makes pointer from integer without a cast drivers/scsi/dpt_i2o.c:2243: warning: passing argument 1 of ‘readl’ makes pointer from integer without a cast drivers/scsi/dpt_i2o.c:2248: warning: passing argument 1 of ‘readl’ makes pointer from integer without a cast drivers/scsi/dpt_i2o.c:2259: warning: passing argument 1 of ‘readl’ makes pointer from integer without a cast It define variables which are only used with a type of 'void __iomem *' with this type instead of the incorrect 'unsigned long' type. It also remove pointless casts. Signed-off-by: Benoit Boissinot Signed-off-by: James Bottomley commit 23a2bc2289ad3bbc41093c2b50a9c17b37b4d73d Author: Benoit Boissinot Date: Mon Apr 25 19:46:30 2005 -0700 [SCSI] drivers/scsi/dpt_i2o.c: cleanup useless code This patch removes the array 'hbas' as it seems to be useless and redundant with the linked list hbas_chain. Signed-off-by: Benoit Boissinot Signed-off-by: James Bottomley commit 4833869e6e6c2315e301c256e393dfb949c10076 Author: Adrian Bunk Date: Mon Apr 25 19:45:58 2005 -0700 [SCSI] drivers/scsi/aacraid/: make some functions static This patch makes some needlessly global functions static. Signed-off-by: Adrian Bunk Signed-off-by: James Bottomley commit 47b5d69c4aa753fcfc9b2b8d28c0660a1e25c129 Author: James Bottomley Date: Sun Apr 24 02:38:05 2005 -0500 [SCSI] drivers/scsi/FlashPoint.c: cleanups From: Adrian Bunk This patch contains cleanups including the following: - remove #ifdef'ed code for other OS's - remove other unused code - make needlessly global code static Signed-off-by: Adrian Bunk Signed-off-by: James Bottomley commit 7dfaa5f40da87e85b3883b102bbf1bf3f3b42534 Author: Adrian Bunk Date: Sun Apr 24 02:34:29 2005 -0500 [SCSI] drivers/scsi/NCR53C9x.c: make a struct static This patch makes a needlessly global struct static. Signed-off-by: Adrian Bunk Signed-off-by: James Bottomley commit 420b4a73de8e36f0da486056189da66b0a164398 Author: Adrian Bunk Date: Sun Apr 24 02:34:17 2005 -0500 [SCSI] drivers/scsi/atp870u.c: make a function static This patch makes a needlessly global function static. Signed-off-by: Adrian Bunk Signed-off-by: James Bottomley commit a1bf9d1d9272708922e83e465104106131f6415f Author: Tejun Heo Date: Sun Apr 24 02:08:52 2005 -0500 [SCSI] make scsi_queue_insert() use blk_requeue_request() scsi_queue_insert() used to use blk_insert_request() for requeueing requests. This depends on the unobvious behavior of blk_insert_request() setting REQ_SPECIAL and REQ_SOFTBARRIER when requeueing. This patch makes scsi_queue_insert() use blk_requeue_request(). As REQ_SPECIAL means special requests and REQ_SOFTBARRIER is automatically handled by blk layer now, no flag needs to be set. Note that scsi_queue_insert() now calls scsi_run_queue() itself, and the prototype of the function is added right above scsi_queue_insert(). This is temporary, as later requeue path consolidation patchset removes scsi_queue_insert(). By adding temporary prototype, we can do away with unnecessarily moving functions. Signed-off-by: Tejun Heo Signed-off-by: James Bottomley commit 283369ccc26705bd9585a0e533c92bd7364c28d1 Author: Tejun Heo Date: Sun Apr 24 02:06:36 2005 -0500 [SCSI] make scsi_requeue_request() use blk_requeue_request() scsi_requeue_request() used to use blk_insert_request() for requeueing requests. This depends on the unobvious behavior of blk_insert_request() setting REQ_SPECIAL and REQ_SOFTBARRIER when requeueing. This patch makes scsi_queue_insert() use blk_requeue_request(). As REQ_SPECIAL means special requests and REQ_SOFTBARRIER is automatically handled by blk layer now, no flag needs to be set. Signed-off-by: Tejun Heo Signed-off-by: James Bottomley commit 867d1191fca388a79e4bb500dd85a9e871c96b99 Author: Tejun Heo Date: Sun Apr 24 02:06:05 2005 -0500 [SCSI] remove requeue feature from blk_insert_request() blk_insert_request() has a unobivous feature of requeuing a request setting REQ_SPECIAL|REQ_SOFTBARRIER. SCSI midlayer was the only user and as previous patches removed the usage, remove the feature from blk_insert_request(). Only special requests should be queued with blk_insert_request(). All requeueing should go through blk_requeue_request(). Signed-off-by: Tejun Heo Signed-off-by: James Bottomley commit beb6617d994161a6b12c5f69afc6fb154f085447 Author: Tejun Heo Date: Sun Apr 24 02:04:53 2005 -0500 [SCSI] remove REQ_SPECIAL in scsi_init_io() scsi_init_io() used to set REQ_SPECIAL when it fails sg allocation before requeueing the request by returning BLKPREP_DEFER. REQ_SPECIAL is being updated to mean special requests. So, remove REQ_SPECIAL setting. Signed-off-by: Tejun Heo Signed-off-by: James Bottomley commit 2e759cd4fa60c6df4cb117848274f444c2c0a12d Author: Tejun Heo Date: Sun Apr 24 02:04:21 2005 -0500 [SCSI] make blk layer set REQ_SOFTBARRIER on defer and requeue This is the reworked version of the patch. It sets REQ_SOFTBARRIER in two places - in elv_next_request() on BLKPREP_DEFER and in blk_requeue_request(). Signed-off-by: Tejun Heo Signed-off-by: James Bottomley commit 354d6b2196c8e53e55e8f169804256ab9c72731d Author: Andrew Vasquez Date: Sat Apr 23 02:47:27 2005 -0400 [SCSI] remove some dead code in qla2xxx Original from: Christoph Hellwig Modified and Signed-off-by: Andrew Vasquez Signed-off-by: James Bottomley commit b86fff7368b139171edab66972ea1309092f519e Author: James Bottomley Date: Sat Apr 23 02:45:48 2005 -0400 [SCSI] mptfusion: correct Kconfig problem The fusion Kconfig forgets to set CONFIG_FUSION, which is required to get the upper makefile to descend into the fusion directory. Add this back as a variable and make the two upper level modules select it. Signed-off-by: James Bottomley commit 2496af3945bdcc5fe774b8220a415086a47f40a0 Author: Moore, Eric Dean Date: Fri Apr 22 18:02:41 2005 -0400 [SCSI] mptfusion: mptfc Adding Stub Driver - Fiber Channel (1) mptfc.c: This driver is having module_init, module_exit, and probe. (2) mptfc.c: Registering for Fibre Channel pci ids are done from this module. (3) mptfc.c: Convert MODULE_PARM to module_param Signed-off-by: Eric Moore Signed-off-by: James Bottomley commit 243eabcf6b9ab86ec1bc44c2bbb1ee9766481d16 Author: Moore, Eric Dean Date: Fri Apr 22 18:02:25 2005 -0400 [SCSI] mptfusion: mptspi Adding Stub Driver - SCSI Parallel (1) mptspi.c: This driver is having module_init, module_exit, and probe. (2) mptspi.c: Registering for SCSI pci ids are done from this module. (3) mptspi.c: Convert MODULE_PARM to module_param Signed-off-by: Eric Moore Signed-off-by: James Bottomley commit 0d0c79747e362ff54adc6418d2990d49cad9395d Author: Moore, Eric Dean Date: Fri Apr 22 18:02:09 2005 -0400 [SCSI] mptfusion: mptscsih Split driver support (1) mptscsih.c: Remove credits, -sralston references , update copyright (2) mptscsih.c: split driver support (3) mptscsih.c: module_init, module_exit, and probe routines moved to new stub drivers, mptfc and mptspi (4) mptscsih.c: some global parameters are moved to MPT_SCSI_HOST (5) mptscsih.c: removed scsi_device_online check. Signed-off-by: Eric Moore Signed-off-by: James Bottomley commit 748b77b1908efac1328d1125563b2fc0184df8a7 Author: Moore, Eric Dean Date: Fri Apr 22 18:01:52 2005 -0400 [SCSI] mptfusion: mptlan Remove credits and update copyright (1) mptlan.c: Remove credits and update copyright (2) mptlan.c: Remove -sralston references Signed-off-by: Eric Moore Signed-off-by: James Bottomley commit b6fe4ddcf787026e5ae9105ce63e0f35f489a768 Author: Moore, Eric Dean Date: Fri Apr 22 18:01:34 2005 -0400 [SCSI] mptfusion: mptctl Remove credits and update copyright (1) mptctl.c: Remove credits and update copyright (2) mptctl.c: cleanup in get_iocinfo Signed-off-by: Eric Moore Signed-off-by: James Bottomley commit 7fadc87e5c3dd96a36cd9b9500d2ccff39048dd4 Author: Moore, Eric Dean Date: Fri Apr 22 18:01:16 2005 -0400 [SCSI] mptfusion: mptbase cleanup, split driver support, DMA 32_BIT_MASK (1) mptbase.c: Move registering pci ids to scsi lld drivers (2) mptbase.c: Use the DMA_32BIT_MASK constant (3) mptbase.c: Fix for multiple pci domains (4) mptbase.c: Remove le32 conversion from BlockSize, which was u8 size (5) mptbase.c: Remove credits, -sralston references , update copyright (6) mptbase.c: split driver support Signed-off-by: Eric Moore Signed-off-by: James Bottomley commit 5f5affddad836978f057d316ba8083a5d553773c Author: Moore, Eric Dean Date: Fri Apr 22 18:00:52 2005 -0400 [SCSI] mptfusion: Kconfig Adding new bus type drivers for fusion drivers. (1) Kconfig - added new mptspi and mptfc scsi lld drivers (2) Kconfig - increased MAX_SGE from 40 to 128 (2) Makefile - compilation support for split drivers (3) Makefile - cleaned up debug defines; e.g. removed obsolete, added others Signed-off-by: Eric Moore Signed-off-by: James Bottomley commit 099175c94a221fa2723b7273883c98cd32efe900 Author: James Bottomley Date: Thu Apr 21 22:50:33 2005 -0400 [SCSI] remove PCI2000 and PCI2220i drivers From: Christoph Hellwig Both drivers are marked broken and haven't compiled since very early 2.5.x. And they're for IDE hardware so they shouldn't have been written to the SCSI layer at all. Signed-off-by: James Bottomley commit 608648cb40f01c337be69f965cf7740f8189c31c Author: James Bottomley Date: Thu Apr 21 21:46:50 2005 -0400 [SCSI] qla1280: update firmware Update SCSI firmware images: ql1040_fw.h: - * Firmware Version 7.65.00 (14:17 Jul 20, 1999) + * Firmware Version 7.65.06 (14:38 Jan 07, 2002) ql1280_fw.h: - * Firmware Version 8.15.00 (14:35 Aug 22, 2000) + * Firmware Version 8.15.11 (10:20 Jan 02, 2002) ql12160_fw.h: - * Firmware Version 10.04.32 (12:03 May 09, 2001) + * Firmware Version 10.04.42 (15:44 Apr 18, 2003) Signed-off-by: Andrew Vasquez Signed-off-by: James Bottomley commit fb19b4c6aa024837a0071f07baa07dbf49d07151 Author: David Woodhouse Date: Thu May 19 14:55:56 2005 +0100 AUDIT: Honour audit_backlog_limit again. The limit on the number of outstanding audit messages was inadvertently removed with the switch to queuing skbs directly for sending by a kernel thread. Put it back again. Signed-off-by: David Woodhouse commit 7063e6c717f6108c4b3fc3135a516c86ef944870 Merge: 7ca0026495dbb644b4e32ede76be44072cb2bc7a 05d3794aa8bd3b2c9f7920a05003c331cdeb75c5 Author: David Woodhouse Date: Thu May 19 11:54:00 2005 +0100 Merge with master.kernel.org:/pub/scm/linux/kernel/git/torvalds/linux-2.6.git commit 7ca0026495dbb644b4e32ede76be44072cb2bc7a Author: David Woodhouse Date: Thu May 19 11:23:13 2005 +0100 AUDIT: Quis Custodiet Ipsos Custodes? Nobody does. Really, it gets very silly if auditd is recording its own actions. Signed-off-by: David Woodhouse commit cd77b8212d5473b800ac865364981d334ff564ea Author: David Woodhouse Date: Thu May 19 11:18:24 2005 +0100 Restore logging of pid= and comm= in AVC audit messages We turned this all off because the 'exe=' was causing deadlocks on dcache_lock. There's no need to leave the pid and comm out though. They'll all be logged correctly if full auditing is enabled, but we should still print them in case auditing _isn't_ enabled. Signed-off-by: David Woodhouse commit b7d1125817c9a46cc46f57db89d9c195e7af22f8 Author: David Woodhouse Date: Thu May 19 10:56:58 2005 +0100 AUDIT: Send netlink messages from a separate kernel thread netlink_unicast() will attempt to reallocate and will free messages if the socket's rcvbuf limit is reached unless we give it an infinite timeout. So do that, from a kernel thread which is dedicated to spewing stuff up the netlink socket. Signed-off-by: David Woodhouse commit 168b7173959f80d20720dd1f7ec909a88ef2689d Author: Steve Grubb Date: Thu May 19 10:24:22 2005 +0100 AUDIT: Clean up logging of untrusted strings * If vsnprintf returns -1, it will mess up the sk buffer space accounting. This is fixed by not calling skb_put with bogus len values. * audit_log_hex was a loop that called audit_log_vformat with %02X for each character. This is very inefficient since conversion from unsigned character to Ascii representation is essentially masking, shifting, and byte lookups. Also, the length of the converted string is well known - it's twice the original. Fixed by rewriting the function. * audit_log_untrustedstring had no comments. This makes it hard for someone to understand what the string format will be. * audit_log_d_path was never fixed to use untrustedstring. This could mess up user space parsers. This was fixed to make a temp buffer, call d_path, and log temp buffer using untrustedstring. From: Steve Grubb Signed-off-by: David Woodhouse commit 209aba03243ee42a22f8df8d08aa9963f62aec64 Author: David Woodhouse Date: Wed May 18 10:21:07 2005 +0100 AUDIT: Treat all user messages identically. It's silly to have to add explicit entries for new userspace messages as we invent them. Just treat all messages in the user range the same. Signed-off-by: David Woodhouse commit 3ec3b2fba526ead2fa3f3d7c91924f39a0733749 Author: David Woodhouse Date: Tue May 17 12:08:48 2005 +0100 AUDIT: Capture sys_socketcall arguments and sockaddrs Signed-off-by: David Woodhouse commit 69887ac1dcb79dfc773dabac2dd081fa6d6e2573 Merge: 5e014b10ef8477c32a939a48fa02aedcad35a226 118326e940bdecef6c459d42ccf05256ba86daa7 Author: David Woodhouse Date: Tue May 17 12:04:46 2005 +0100 Merge with master.kernel.org:/pub/scm/linux/kernel/git/torvalds/linux-2.6.git commit 4638aef40ba9ebb9734caeed1f373c24015259fd Author: Yum Rayan Date: Thu May 5 15:14:10 2005 -0700 [PATCH] smc91c92_cs: Reduce stack usage in smc91c92_event() This patch reduces the stack usage of the function smc91c92_event() in smc91c92_cs driver from 3540 to 132. Currently this is the highest stack user in linux-2.6.12-rc2-mm3. I used a patched version of gcc 3.4.3 on i386 with -fno-unit-at-a-time disabled. The patch has only been compile tested. Acked-by: Jörn Engel Acked-by: Randy Dunlap Signed-off-by: Yum Rayan Cc: Jeff Garzik Signed-off-by: Andrew Morton commit b3dd65f958354226275522b5a64157834bdc5415 Author: Krzysztof Halasa Date: Thu Apr 21 15:57:25 2005 +0200 [PATCH] Generic HDLC update The attached patch updates generic HDLC to version 1.18. FR Cisco LMI production-tested. Please apply to Linux 2.6. Thanks. Changes: - doc updates - added Cisco LMI support to Frame-Relay code - cleaned hdlc_fr.c a bit, removed some orphaned #defines etc. - fixed a problem with non-functional LMI in FR DCE mode. - changed diagnostic messages to better conform to FR standards - all protocols: information about carrier changes (DCD line) is now printed to kernel logs. Signed-Off-By: Krzysztof Halasa commit 99417769bae55d34348320d7a05615e8a891fd3d Author: Al Viro Date: Sun Apr 3 09:15:52 2005 +0100 [PATCH] pcnet_cs cleanup killed abuse of ->rmem_end Signed-off-by: Al Viro commit 507ef165e8bc078e877db293a5e3048e692491fb Author: Al Viro Date: Sun Apr 3 09:15:52 2005 +0100 [PATCH] etherh iomem annotations the usual echo Signed-off-by: Al Viro commit 0b2d7fea1c3893c3790e0b89c310ec1321f1b8c0 Author: Al Viro Date: Sun Apr 3 09:15:52 2005 +0100 [PATCH] skge 64bit portability ptrdiff_t is %td, not %d Signed-off-by: Al Viro commit 4075400b8b2b279df1c2be38edb95ace7f75d772 Author: Al Viro Date: Sun Apr 3 09:15:52 2005 +0100 [PATCH] skge missing include Signed-off-by: Al Viro commit 54d06c3184f416b8244816f3c1d3abb55e99d909 Author: Adrian Bunk Date: Thu May 5 15:14:14 2005 -0700 [PATCH] remove drivers/net/skfp/lnkstat.c This patch removes a file that seems to be used only on AIX (sic). Signed-off-by: Adrian Bunk Cc: Jeff Garzik Signed-off-by: Andrew Morton commit a1365275e745bb0a173c918a52bcdfa6ce122f7e Author: Sascha Hauer Date: Thu May 5 15:14:15 2005 -0700 [PATCH] DM9000 network driver This patch adds support for the davicom dm9000 network driver. The dm9000 is found on some embedded arm boards such as the pimx1 or the scb9328. Signed-off-by: Sascha Hauer Signed-off-by: Ben Dooks Signed-off-by: Andrew Morton diff -puN /dev/null drivers/net/dm9000.c commit 84d8a2fb56b1d3c915591a2c1aa321b783c7d00f Author: Christoph Hellwig Date: Sat May 14 17:30:22 2005 +0200 [PATCH] orinoco: misc fixes small fixes from CVS that didn't fit elsewhere Index: linux-2.6/drivers/net/wireless/orinoco.c =================================================================== commit ad8f451b41b3c3438ec4eef15527972bebd854eb Author: Christoph Hellwig Date: Sat May 14 17:30:17 2005 +0200 [PATCH] orinoco: make orinoco_stop() static Patch from Pavel Roskin Index: linux-2.6/drivers/net/wireless/orinoco.c =================================================================== commit 649e59e6ab7817bf1c556b1898356c1a17aa2650 Author: Christoph Hellwig Date: Sat May 14 17:30:10 2005 +0200 [PATCH] orinoco: Symbol 3.0x firmware needs broken_disableport Patch from Pavel Roskin. Index: linux-2.6/drivers/net/wireless/orinoco.c =================================================================== commit 8551cb980086eb9952387a9f135d6f96af3b82ee Author: Christoph Hellwig Date: Sat May 14 17:30:04 2005 +0200 [PATCH] orinoco: disconnect the network device on reset errors Patch from Pavel Roskin Index: linux-2.6/drivers/net/wireless/orinoco.c =================================================================== commit d0e3e87ff4516d1b9d7bc6734a99168838f79635 Author: Christoph Hellwig Date: Sat May 14 17:29:58 2005 +0200 [PATCH] orinoco: fix setting of 32 character ESSIDs Patch from Thomas Schulz Index: linux-2.6/drivers/net/wireless/orinoco.c =================================================================== commit 5e014b10ef8477c32a939a48fa02aedcad35a226 Author: David Woodhouse Date: Fri May 13 18:50:33 2005 +0100 AUDIT: fix max_t thinko. Der... if you use max_t it helps if you give it a type. Note to self: Always just apply the tested patches, don't try to port them by hand. You're not clever enough. Signed-off-by: David Woodhouse commit 23f32d18aa589e228c5a9e12e0d0c67c9b5bcdce Author: Steve Grubb Date: Fri May 13 18:35:15 2005 +0100 AUDIT: Fix some spelling errors I'm going through the kernel code and have a patch that corrects several spelling errors in comments. From: Steve Grubb Signed-off-by: David Woodhouse commit c04049939f88b29e235d2da217bce6e8ead44f32 Author: Steve Grubb Date: Fri May 13 18:17:42 2005 +0100 AUDIT: Add message types to audit records This patch adds more messages types to the audit subsystem so that audit analysis is quicker, intuitive, and more useful. Signed-off-by: Steve Grubb --- I forgot one type in the big patch. I need to add one for user space originating SE Linux avc messages. This is used by dbus and nscd. -Steve --- Updated to 2.6.12-rc4-mm1. -dwmw2 Signed-off-by: David Woodhouse commit 9ea74f0655412d0fbd12bf9adb6c14c8fe707a42 Author: David Woodhouse Date: Fri May 13 16:35:19 2005 +0100 AUDIT: Round up audit skb expansion to AUDIT_BUFSIZ. Otherwise, we will be repeatedly reallocating, even if we're only adding a few bytes at a time. Pointed out by Steve Grubb. Signed-off-by: David Woodhouse commit 5aa83a4c0a1568257ff7e249d39af64f75978b97 Author: Adrian Bunk Date: Thu May 12 22:27:35 2005 -0400 [PATCH] remove two obsolete net drivers The options FMV18X and SK_G16 do depend on the non-available CONFIG_OBSOLETE even in kernel 2.4 - IOW, the last time it was able to select them was in kernel 2.2 (or even before). Since it seems noone misses these drivers, this patch removes them. Signed-off-by: Adrian Bunk Signed-off-by: Jeff Garzik commit f3f1546dbed9efe8ac04fe5069772834ae379e16 Author: Adrian Bunk Date: Thu May 12 22:25:14 2005 -0400 [PATCH] drivers/net/tulip/dmfe.c: remove a check after use This patch removes a NULL check that was useles because it happened after the first dereference of the variable. Signed-off-by: Adrian Bunk Signed-off-by: Jeff Garzik commit 725c0f922f04e5a3a7d2ba66dbc10b8e20000712 Author: Adrian Bunk Date: Thu May 12 22:24:39 2005 -0400 [PATCH] drivers/net/smc-mca.c: cleanups This patch contains the following cleanups: - make a needlessly global function static - make three needlessly global structs static const Since after moving the now-static stucts to smc-mca.c the file smc-mca.h was empty except for two #define's, I've also killed the rest of smc-mca.h . Signed-off-by: Adrian Bunk Signed-off-by: Jeff Garzik commit 01e5abc24a67d7d619b448428782df21880fdce6 Author: John W. Linville Date: Thu May 12 22:23:29 2005 -0400 [PATCH] ixgb: Add MODULE_VERSION Add MODULE_VERSION entry. Signed-off-by: John W. Linville Signed-off-by: Jeff Garzik commit 31c27f7334b7fb8b63c862f7d22600324da844ab Author: Domen Puncer Date: Thu May 12 22:22:36 2005 -0400 [PATCH] drivers/net/myri_code.h cleanup From: Domen Puncer Replace static unsigned char lanai4_data[20472] __initdata = { } with static unsigned char lanai4_data[20472] __initdata = { }; Signed-off-by: Domen Puncer Signed-off-by: Andrew Morton Signed-off-by: Jeff Garzik commit c56943e655b0778d3a8517ae165ad4db15557b97 Author: Domen Puncer Date: Thu May 12 22:21:51 2005 -0400 [PATCH] net/3c505: replace schedule_timeout() with msleep() Use msleep() instead of schedule_timeout() to guarantee the task delays as expected. Signed-off-by: Nishanth Aravamudan Acked-by: Phil Blundell Signed-off-by: Maximilian Attems Signed-off-by: Domen Puncer Signed-off-by: Jeff Garzik commit 10a87fcf40ce8cee1e85d936cd6d7662943c804e Author: Tobias Klauser Date: Thu May 12 22:20:53 2005 -0400 [PATCH] drivers/net/tulip/winbond-840: Use the DMA_32BIT_MASK constant The previous patch did not compile cleanly on all architectures so here's a fixed one. Use the DMA_32BIT_MASK constant from dma-mapping.h when calling pci_set_dma_mask() or pci_set_consistent_dma_mask() Signed-off-by: Tobias Klauser Signed-off-by: Jeff Garzik commit cb199d42e18466e471fa46dc53413402a4ae93e7 Author: Tobias Klauser Date: Thu May 12 22:20:19 2005 -0400 [PATCH] drivers/net/tulip/dmfe: Use the DMA_32BIT_MASK constant The previous patch did not compile cleanly on all architectures so here's a fixed one. Use the DMA_32BIT_MASK constant from dma-mapping.h when calling pci_set_dma_mask() or pci_set_consistent_dma_mask() Signed-off-by: Tobias Klauser Signed-off-by: Jeff Garzik commit 8662d061719a202e8196a19c1043ce271318d31b Author: Tobias Klauser Date: Thu May 12 22:19:39 2005 -0400 [PATCH] drivers/net/8139cp: Use the DMA_{64, 32}BIT_MASK constants The previous patch did not compile cleanly on all architectures so here's a fixed one. Use the DMA_{64,32}BIT_MASK constants from dma-mapping.h when calling pci_set_dma_mask() or pci_set_consistent_dma_mask() Signed-off-by: Tobias Klauser Signed-off-by: Jeff Garzik commit fff9cfd99c0f88645c3f50d7476d6c8cef99f140 Author: Date: Thu May 12 20:24:19 2005 -0400 [PATCH] Wireless Extensions 18 (aka WPA) This is version 18 of the Wireless Extensions. The main change is that it adds all the necessary APIs for WPA and WPA2 support. This work was entirely done by Jouni Malinen, so let's thank him for both his hard work and deep expertise on the subject ;-) This APIs obviously doesn't do much by itself and works in concert with driver support (Jouni already sent you the HostAP changes) and userspace (Jouni is updating wpa_supplicant). This is also orthogonal with the ongoing work on in-kernel IEEE support (but potentially useful). The patch is attached, tested with 2.6.11. Normally, I would ask you to push that directly in the kernel (99% of the patch has been on my web page for ages and it does not affect non-WPA stuff), but Jouni convinced me that it should bake a few weeks in wireless-2.6 first, so that other driver maintainers can get up to speed with it. Signed-off-by: Jeff Garzik commit eb1d6988130d5f2716ba1d53197caab0fdc31b94 Author: Nicolas Pitre Date: Thu May 12 20:19:09 2005 -0400 [PATCH] smc91x warning fix A few IO addr type conversions were missing. Signed-off-by: Nicolas Pitre Signed-off-by: Jeff Garzik commit 53155109b6ac611d9bb4a4ef9d3109b219b8d0e1 Author: Nicolas Pitre Date: Thu May 12 20:18:19 2005 -0400 [PATCH] smc91x addr config check The PAGE_SIZE mask is indeed confusing. Use the exact mask for this context which has nothing to do with memory pages at all. Also cast to int since the value to compare with is an int. Signed-off-by: Nicolas Pitre Signed-off-by: Jeff Garzik commit fdecea66687d76c7d19be6559586df5c51023d11 Author: Jeff Garzik Date: Thu May 12 20:16:24 2005 -0400 [netdrvr starfire] Add GPL'd firmware, remove compat code Contributed by Ion Badulescu , further fixed up by me. commit baef58b1b09ac0e9339e021144b921560482c8bd Author: Stephen Hemminger Date: Thu May 12 20:14:36 2005 -0400 [netdrvr] new driver skge, for SysKonnect cards commit b1fc5505e0dbcc3fd7c75bfe6bee39ec50080963 Author: Date: Thu May 12 20:11:55 2005 -0400 [netdrvr] Fix register_netdev() races in older ISA net drivers commit b24d4582fd93f3654d0a0a89f85e95140efc7fd4 Author: David Gibson Date: Thu May 12 20:04:16 2005 -0400 [PATCH] Orinoco: consolidate allocation code Consolidate allocation of firmware buffers. In the process, remove duplication of a workaround for an old symbol firmware bug, and fix a bug where we could retry the workaround, even if it already failed to help. Signed-off-by: David Gibson Signed-off-by: Jeff Garzik commit d51d8b1f249b23a717ae489d6ccf2c25030988e6 Author: David Gibson Date: Thu May 12 20:03:36 2005 -0400 [PATCH] Orinoco: don't set channel in managed mode Don't attempt to manually set the channel in infrastructure mode, the firmware doesn't like that much. Also don't attempt to override the firmware's default channel number for IBSS mode (I believe default channel can vary by regulatory domain). Signed-off-by: David Gibson Signed-off-by: Jeff Garzik commit 1fc5eb642805fa724b67fd17f008b582b0400919 Author: David Gibson Date: Thu May 12 20:02:58 2005 -0400 [PATCH] Orinoco: kill dump_recs Remove the dump_recs debugging iwpriv command. It will be replaced later with the simpler and more flexible get_rid command. Signed-off-by: David Gibson Signed-off-by: Jeff Garzik commit 7bb7c3a326f509acbdaf550b54fba565544ef200 Author: David Gibson Date: Thu May 12 20:02:10 2005 -0400 [PATCH] Orinoco: ignore_disconnect flag Adds an ignore_disconnect module parameter. When enabled, the driver will continue attempting to send packets even when the firmware has told us we've lost our link to the AP. On some firmwares this substantially increases the usable range of the card (presumably because we have an interrmittent connection, but the firmware is able to queue the packets for us until we're connected again). On some other cards, it causes the firmware to fall in a screaming heap :( (hence, default off). Signed-off-by: David Gibson Signed-off-by: Jeff Garzik commit e67d9d9d9e3934fc2844b795ed68f2d87e9a047a Author: David Gibson Date: Thu May 12 20:01:22 2005 -0400 [PATCH] Orinoco: wireless stats updates Minor updates/bugfixes to the handling of wireless statistics. commit 516cd15f1c0dd6eada3619915b113b4e5baccc7a Author: Paul Mackerras Date: Thu May 12 19:47:12 2005 -0400 [PATCH] PPP multilink fragmentation improvements Here's a patch for -mm for now. Not sure whose territory this falls in, so I'm sending it to everyone I can think of. :) Some time ago I did some experiments with using PPP multilink over largish numbers of channels (up to 32). The TCP performance was woeful due to wildly fluctuating packet latencies, which turned out to be because we would sometimes split a packet across all 32 channels, and sometimes we would send a whole packet down a single channel. This patch fixes those problems by being a bit cleverer about how the packets are split across the available channels, and in particular, it waits until at least half of the channels can take another fragment before starting to split up the next packet. The patch also fixes a buglet in the multilink reconstruction code where it would discard incoming packets that had just the multilink header and no data. Such packets are valid and shouldn't be discarded. Signed-off-by: Paul Mackerras Signed-off-by: Jeff Garzik commit 7d17c1d606f6e89778f05554ddea43791d5c92a0 Author: Date: Thu May 12 19:45:25 2005 -0400 [netdrvrs] Use netif_carrier_* instead of IFF_RUNNING commit 22f714b64b55012fa4e0d77132fa82719180f994 Author: Pekka Enberg Date: Thu May 12 19:38:47 2005 -0400 [PATCH] 8139too: use iomap for pio/mmio This patch converts the 8139too driver to use the iomap infrastructure for PIO and MMIO instead of playing macro tricks. I also had to fix read_eeprom(), mdio_sync(), mdio_read(), and mdio_write() to not pass PIO base address to MMIO read() and write() functions. In addition, the patch adds proper __iomem annotations for the driver. Both modes, PIO and MMIO, were tested with a RealTel RTL8139 card on an x86 box. The 8129 support remains untested due to lack of hardware. Signed-off-by: Pekka Enberg Signed-off-by: Jeff Garzik commit a78d8927966dcc41bba52da3a10935072a592417 Author: Date: Thu May 12 19:35:42 2005 -0400 [PATCH] 8139cp net driver: add MODULE_VERSION commit 7502cd1058152791fec94f32b719fec45e7f5de2 Author: Steffen Klassert Date: Thu May 12 19:34:31 2005 -0400 [PATCH] 8139cp - add netpoll support Patch adds netpoll support to the 8139cp driver. The patch needs some tests because I have no NIC of this type for testing. Applies against linux-2.6.9-rc2-mm3 Signed-off-by: Steffen Klassert commit e21ba28262037f5fe7ca8746502c7c03c3da817f Author: Stephen Hemminger Date: Thu May 12 19:33:26 2005 -0400 [PATCH] 8139cp - module_param Not sure if I sent this already... Convert 8139cp to use new module_param() not old MODULE_PARM Signed-off-by: Stephen Hemminger commit 5734418d4f3420352eae38c8fcec699bf09874c1 Author: Francois Romieu Date: Thu May 12 19:31:31 2005 -0400 [PATCH] 8139cp: SG support fixes - suspicious length in pci_unmap_single; - wait for the last frag before freeing the relevant skb; - no need to crash when facing some unexpected csum combination. commit fcec34565827f2edb29d124498aa8f561455f15d Author: Jeff Garzik Date: Thu May 12 19:28:49 2005 -0400 [netdrvr 8139cp] TSO support commit f497ba735fc9ff4e35a19641143708b3be1c7061 Author: Tobias Lorenz Date: Thu May 12 15:51:01 2005 -0400 [libata sata_promise] pdc20619 (PATA) support commit 6f2f38128170814e151cfedf79532e19cd179567 Author: Brad Campbell Date: Thu May 12 15:07:47 2005 -0400 [PATCH] libata basic detection and errata for PATA->SATA bridges This patch works around an issue with WD drives (and possibly others) over SiL PATA->SATA Bridges on SATA controllers locking up with transfers > 200 sectors. Signed-off-by: Brad Campbell commit 907f4678c114a125fe4584758681c31bf3d627da Author: Jeff Garzik Date: Thu May 12 15:03:42 2005 -0400 [libata ahci] support PCI MSI interrupt vector commit add671412021b68c3b4f2882b0d10a56e2dcdabe Author: David Woodhouse Date: Wed May 11 11:36:21 2005 +0100 Add missing asm-ppc/seccomp.h. Must learn to use git properly. Signed-off-by: David Woodhouse commit c1b773d87eadc3972d697444127e89a7291769a2 Author: Chris Wright Date: Wed May 11 10:55:10 2005 +0100 Add audit_log_type Add audit_log_type to allow callers to specify type and pid when logging. Convert audit_log to wrapper around audit_log_type. Could have converted all audit_log callers directly, but common case is default of type AUDIT_KERNEL and pid 0. Update audit_log_start to take type and pid values when creating a new audit_buffer. Move sequences that did audit_log_start, audit_log_format, audit_set_type, audit_log_end, to simply call audit_log_type directly. This obsoletes audit_set_type and audit_set_pid, so remove them. Signed-off-by: Chris Wright Signed-off-by: David Woodhouse commit 197c69c6afd2deb7eec44040ff533d90d26c6161 Author: Chris Wright Date: Wed May 11 10:54:05 2005 +0100 Move ifdef CONFIG_AUDITSYSCALL to header Remove code conditionally dependent on CONFIG_AUDITSYSCALL from audit.c. Move these dependencies to audit.h with the rest. Signed-off-by: Chris Wright Signed-off-by: David Woodhouse commit 804a6a49d874841a98ebea3247ad2e672812ad6a Author: Chris Wright Date: Wed May 11 10:52:45 2005 +0100 Audit requires CONFIG_NET Audit now actually requires netlink. So make it depend on CONFIG_NET, and remove the inline dependencies on CONFIG_NET. Signed-off-by: Chris Wright Signed-off-by: David Woodhouse commit 5a241d77039a2632e81070619d5733258728f8bd Author: Chris Wright Date: Wed May 11 10:43:07 2005 +0100 AUDIT: Properly account for alignment difference in nlmsg_len. Signed-off-by: Chris Wright Signed-off-by: David Woodhouse commit eecb0a7338ef6504aa49def4dde6429853025801 Author: David Woodhouse Date: Tue May 10 18:58:51 2005 +0100 AUDIT: Fix abuse of va_args. We're not allowed to use args twice; we need to use va_copy. Signed-off-by: David Woodhouse commit e3b926b4c1499ba7b1b9513aa6113944d572aba5 Author: David Woodhouse Date: Tue May 10 18:56:08 2005 +0100 AUDIT: pass size argument to audit_expand(). Let audit_expand() know how much it's expected to grow the buffer, in the case that we have that information to hand. Signed-off-by: David Woodhouse commit 8c5aa40c94ef8bb7f7da95ecd5942e2d20fc3c9d Author: Steve Grubb Date: Tue May 10 18:53:07 2005 +0100 AUDIT: Fix reported length of audit messages. We were setting nlmsg_len to skb->len, but we should be subtracting the size of the header. From: Steve Grubb Signed-off-by: David Woodhouse commit 259692bd5a2b2c2d351dd90748ba4126bc2a21b9 Author: Jesper Juhl Date: Mon May 9 10:47:14 2005 -0500 JFS: Remove redundant kfree() NULL pointer checks kfree() can handle a NULL pointer, don't worry about passing it one. Signed-off-by: Jesper Juhl Signed-off-by: Dave Kleikamp commit ea9c102cb0a7969df5733d34f26e0b12c8a3c889 Author: David Woodhouse Date: Sun May 8 15:56:09 2005 +0100 Add CONFIG_AUDITSC and CONFIG_SECCOMP support for ppc32 Signed-off-by: David Woodhouse commit 13e652800d1644dfedcd0d59ac95ef0beb7f3165 Merge: 4332bdd332a2dca93dc3b1d017b2dd27d5c8cef3 88d7bd8cb9eb8d64bf7997600b0d64f7834047c5 88d7bd8cb9eb8d64bf7997600b0d64f7834047c5 Author: David Woodhouse Date: Sun May 8 13:23:54 2005 +0100 Merge with master.kernel.org:/pub/scm/linux/kernel/git/torvalds/linux-2.6.git commit 4332bdd332a2dca93dc3b1d017b2dd27d5c8cef3 Author: David Woodhouse Date: Fri May 6 15:59:57 2005 +0100 AUDIT: Honour gfp_mask in audit_buffer_alloc() Signed-off-by: David Woodhouse commit 5ac52f33b6f05fcb91a97124155183b779a4efdf Author: Chris Wright Date: Fri May 6 15:54:53 2005 +0100 AUDIT: buffer audit msgs directly to skb Drop the use of a tmp buffer in the audit_buffer, and just buffer directly to the skb. All header data that was temporarily stored in the audit_buffer can now be stored directly in the netlink header in the skb. Resize skb as needed. This eliminates the extra copy (and the audit_log_move function which was responsible for copying). Signed-off-by: Chris Wright Signed-off-by: David Woodhouse commit 8fc6115c2a04099a6e846dc0b2d85cba43821b54 Author: Chris Wright Date: Fri May 6 15:54:17 2005 +0100 AUDIT: expand audit tmp buffer as needed Introduce audit_expand and make the audit_buffer use a dynamic buffer which can be resized. When audit buffer is moved to skb it will not be fragmented across skb's, so we can eliminate the sklist in the audit_buffer. During audit_log_move, we simply copy the full buffer into a single skb, and then audit_log_drain sends it on. Signed-off-by: Chris Wright Signed-off-by: David Woodhouse commit 16e1904e694d459ec2ca9b33c22b818eaaa4c63f Author: Chris Wright Date: Fri May 6 15:53:34 2005 +0100 AUDIT: Add helper functions to allocate and free audit_buffers. Signed-off-by: Chris Wright Signed-off-by: David Woodhouse commit c2f0c7c356dc9ae15419f00c725a2fcc58eeff58 Author: Steve Grubb Date: Fri May 6 12:38:39 2005 +0100 The attached patch addresses the problem with getting the audit daemon shutdown credential information. It creates a new message type AUDIT_TERM_INFO, which is used by the audit daemon to query who issued the shutdown. It requires the placement of a hook function that gathers the information. The hook is after the DAC & MAC checks and before the function returns. Racing threads could overwrite the uid & pid - but they would have to be root and have policy that allows signalling the audit daemon. That should be a manageable risk. The userspace component will be released later in audit 0.7.2. When it receives the TERM signal, it queries the kernel for shutdown information. When it receives it, it writes the message and exits. The message looks like this: type=DAEMON msg=auditd(1114551182.000) auditd normal halt, sending pid=2650 uid=525, auditd pid=1685 Signed-off-by: Steve Grubb Signed-off-by: David Woodhouse commit 6f817abc643ec84cf07c99f964d04976212e1fd3 Merge: f77165df5ba75461b491a9f20f778307f1b4a0ac bfd4bda097f8758d28e632ff2035e25577f6b060 Author: Dave Kleikamp Date: Thu May 5 14:43:19 2005 -0500 Merge with /home/shaggy/git/linus-clean/ commit f77165df5ba75461b491a9f20f778307f1b4a0ac Merge: ddf3e298b33f3e15a2e6272e0146dfa940c89a74 b2d84f078a8be40f5ae3b4d2ac001e2a7f45fe4f Author: Dave Kleikamp Date: Thu May 5 09:32:56 2005 -0500 Merge with /home/shaggy/git/linus-clean/ commit ddf3e298b33f3e15a2e6272e0146dfa940c89a74 Merge: 7a694ca74958b97ae2d437c8a730bddd9e9792c3 1d42a0ecf478962e8aede355a0be41365c117ff0 Author: Dave Kleikamp Date: Wed May 4 16:43:30 2005 -0500 Merge with /home/shaggy/git/linus-clean/ commit 7a694ca74958b97ae2d437c8a730bddd9e9792c3 Author: Dave Kleikamp Date: Wed May 4 15:31:14 2005 -0500 JFS: Fix sparse warning Signed-off-by: Dave Kleikamp commit dcc9871270aa3b1bbe2e61cc9c1d80e9b2e8099d Author: Dave Kleikamp Date: Wed May 4 15:30:51 2005 -0500 JFS: cleanup - remove unneeded sanity check Signed-off-by: Dave Kleikamp commit 1868f4aa5a4a72bbe0b7db6c1d4ee666824c3895 Author: Dave Kleikamp Date: Wed May 4 15:29:35 2005 -0500 JFS: fix sparse warnings by moving extern declarations to headers Signed-off-by: Dave Kleikamp