commit d223a60106891bfe46febfacf46b20cd8509aaad Author: Linus Torvalds Date: Wed Oct 4 19:57:05 2006 -0700 Linux 2.6.19-rc1 Merge window closed.. commit 77dc2db6d1d2703ee4e83d4b3dbecf4e06a910e6 Author: Mark Assad Date: Thu Oct 5 12:25:05 2006 +1000 [PATCH] itmtouch: fix inverted flag to indicate touch location correctly, correct white space There is a bug in the current version of the itmtouch USB touchscreen driver. The if statment that checks if pressure is being applied to the touch screen is now missing a ! (not), so events are no longer being reported correctly. The original source code for this line was as follows: #define UCP(x) ((unsigned char*)(x)) #define UCOM(x,y,z) ((UCP((x)->transfer_buffer)[y]) & (z)) ... if (!UCOM(urb, 7, 0x20)) { And was cleaned to: unsigned char *data = urb->transfer_buffer; .... if (data[7] & 0x20) { (note the lack of '!') This has been tested on an LG L1510BF and an LG1510SF touch screen. Signed-off-by: Mark Assad Signed-off-by: Linus Torvalds commit 1604f31895dcdb42edf6511ce7ef0546ff92c8e5 Author: Matthew Wilcox Date: Wed Oct 4 15:12:52 2006 -0600 [PA-RISC] Fix time.c for new do_timer() calling convention do_timer now wants to know how many ticks have elapsed. Now that we have to calculate that, we can eliminate some of the clever code that avoided having to calculate that. Also add some more documentation. I'd like to thank Grant Grundler for helping me with this. Signed-off-by: Matthew Wilcox commit 1070c9655b90016ec4c9b59c402292e57ee15885 Author: Matthew Wilcox Date: Wed Oct 4 13:37:41 2006 -0600 [PA-RISC] Fix must_check warnings in drivers.c Panic if we can't register the parisc bus or the root parisc device. There's no way we can boot without them, so let the user know ASAP. If we can't register a parisc device, handle the failure gracefully. Signed-off-by: Matthew Wilcox commit f64ef295032d07345ca26bf4876a1577c4dccb37 Author: Matthew Wilcox Date: Wed Oct 4 13:33:53 2006 -0600 [PA-RISC] Fix parisc_newuname() The utsname virtualisation broke parisc_newuname compilation. Rewrite the implementation to call sys_newuname() like sparc64 does. Signed-off-by: Matthew Wilcox commit ccd6c355e89a21d9047ae19471629758d3a01959 Author: Matthew Wilcox Date: Wed Oct 4 13:27:45 2006 -0600 [PA-RISC] Remove warning from pci.c max() doesn't like comparing an unsigned long and a resource_size_t, so make the local variables resource_size_t too. Signed-off-by: Matthew Wilcox commit 15c130c1cde38da528f82efce882e8d7632f4d91 Author: Matthew Wilcox Date: Wed Oct 4 13:18:25 2006 -0600 [PA-RISC] Fix filldir warnings filldir_t now takes a u64, not an ino_t. Signed-off-by: Matthew Wilcox commit 17cca07237617a2d712eb44cffd8720055e61291 Author: Matthew Wilcox Date: Wed Oct 4 13:16:10 2006 -0600 [PA-RISC] Fix sys32_sysctl When CONFIG_SYSCTL_SYSCALL isn't defined, do_sysctl doesn't exist and we fail to link. Fix with an ifdef, the same way sparc64 did. Also add some minor changes to be more like sparc64. Signed-off-by: Matthew Wilcox commit ee9f4b5d95d03d1546f0d06cbe384bd4ab97bcba Author: Matthew Wilcox Date: Wed Oct 4 13:08:33 2006 -0600 [PA-RISC] Fix sba_iommu compilation klist_iter_exit() only takes one parameter. Also fix warning by adding additional brackets. Signed-off-by: Matthew Wilcox commit 43b4f4061cf54aa225a1e94a969450ccf5305cd9 Author: Arnd Bergmann Date: Wed Oct 4 17:26:24 2006 +0200 [POWERPC] cell: fix bugs found by sparse - Some long constants should be marked 'ul'. - When using desc->handler_data to pass an __iomem register area, we need to add casts to and from __iomem. Signed-off-by: Arnd Bergmann Signed-off-by: Paul Mackerras commit f7e2ce788677ca0996d360202b91524db894c7b2 Author: Arnd Bergmann Date: Wed Oct 4 17:26:23 2006 +0200 [POWERPC] spiderpic: enable new style devtree support This enables support for new firmware test releases. Signed-off-by: Arnd Bergmann Signed-off-by: Paul Mackerras commit 68272047c51145a8aa4f3b6ae27edae6986c28cc Author: Arnd Bergmann Date: Wed Oct 4 17:26:22 2006 +0200 [POWERPC] Update cell_defconfig This adds defaults for new configuration options added since 2.6.18 and it enables the option for 64kb pages by default. Signed-off-by: Arnd Bergmann Signed-off-by: Paul Mackerras commit 867672777964b9309e4e914fe097648c938b67b2 Author: Arnd Bergmann Date: Wed Oct 4 17:26:21 2006 +0200 [POWERPC] spufs: add infrastructure for finding elf objects This adds an 'object-id' file that the spe library can use to store a pointer to its ELF object. This was originally meant for use by oprofile, but is now also used by the GNU debugger, if available. In order for oprofile to find the location in an spu-elf binary where an event counter triggered, we need a way to identify the binary in the first place. Unfortunately, that binary itself can be embedded in a powerpc ELF binary. Since we can assume it is mapped into the effective address space of the running process, have that one write the pointer value into a new spufs file. When a context switch occurs, pass the user value to the profiler so that can look at the mapped file (with some care). Signed-off-by: Arnd Bergmann Signed-off-by: Paul Mackerras commit 7650f2f2c367242a2092908794b4486876baf6c7 Author: Arnd Bergmann Date: Wed Oct 4 17:26:20 2006 +0200 [POWERPC] spufs: support new OF device tree format The properties we used traditionally in the device tree are somewhat nonstandard. This adds support for a more conventional format using 'interrupts' and 'reg' properties. The interrupts are specified in three cells (class 0, 1 and 2) and registered at the interrupt-parent. The reg property contains either three or four register areas in the order 'local-store', 'problem', 'priv2', and 'priv1', so the priv1 one can be left out in case of hypervisor driven systems that access these through hcalls. Signed-off-by: Arnd Bergmann Signed-off-by: Paul Mackerras commit e1dbff2bafa83f839ef15f51904b0cce9fc89387 Author: Arnd Bergmann Date: Wed Oct 4 17:26:19 2006 +0200 [POWERPC] spufs: add support for read/write on cntl Writing to cntl can be used to stop execution on the spu and to restart it, reading from cntl gives the contents of the current status register. The access is always in ascii, as for most other files. This was always meant to be there, but we had a little problem with writing to runctl so it was left out so far. Signed-off-by: Arnd Bergmann Signed-off-by: Paul Mackerras commit 772920e594df25f2011ca49abd9c8b85c4820cdc Author: Arnd Bergmann Date: Wed Oct 4 17:26:18 2006 +0200 [POWERPC] spufs: remove support for ancient firmware Any firmware that still uses the 'spc' nodes already stopped running for other reasons, so let's get rid of this. Signed-off-by: Arnd Bergmann Signed-off-by: Paul Mackerras commit cdcc89bb1c6e886a55fe00e2de3b9c65d41674c2 Author: Arnd Bergmann Date: Wed Oct 4 17:26:17 2006 +0200 [POWERPC] spufs: make mailbox functions handle multiple elements Since libspe2 will provide a function that can read/write multiple mailbox elements at once, the kernel should handle that efficiently. read/write on the three mailbox files can now access the spe context multiple times to operate on any number of mailbox data elements. If the spu application keeps writing to its outbound mailbox, the read call will pick up all the data in a single system call. Unfortunately, if the user passes an invalid pointer, we may lose a mailbox element on read, since we can't put it back. This probably impossible to solve, if the user also accesses the mailbox through direct register access. Signed-off-by: Arnd Bergmann Signed-off-by: Paul Mackerras commit ac91cb8dae061ced64e475d0d70fac4a95298819 Author: Arnd Bergmann Date: Wed Oct 4 17:26:16 2006 +0200 [POWERPC] spufs: use correct pg_prot for mapping SPU local store This hopefully fixes a long-standing bug in the spu file system. An spu context comes with local memory that can be either saved in kernel pages or point directly to a physical SPE. When mapping the physical SPE, that mapping needs to be cache-inhibited. For simplicity, we used to map the kernel backing memory that way too, but unfortunately that was not only inefficient, but also incorrect because the same page could then be accessed simultaneously through a cacheable and a cache-inhibited mapping, which is not allowed by the powerpc specification and in our case caused data inconsistency for which we did a really ugly workaround in user space. Signed-off-by: Arnd Bergmann Signed-off-by: Paul Mackerras commit 6263203ed6e9ff107129a1ebe613290b342a4465 Author: Arnd Bergmann Date: Wed Oct 4 17:26:15 2006 +0200 [POWERPC] spufs: Add infrastructure needed for gang scheduling Add the concept of a gang to spufs as a new type of object. So far, this has no impact whatsover on scheduling, but makes it possible to add that later. A new type of object in spufs is now a spu_gang. It is created with the spu_create system call with the flags argument set to SPU_CREATE_GANG (0x2). Inside of a spu_gang, it is then possible to create spu_context objects, which until now was only possible at the root of spufs. There is a new member in struct spu_context pointing to the spu_gang it belongs to, if any. The spu_gang maintains a list of spu_context structures that are its children. This information can then be used in the scheduler in the future. There is still a bug that needs to be resolved in this basic infrastructure regarding the order in which objects are removed. When the spu_gang file descriptor is closed before the spu_context descriptors, we leak the dentry and inode for the gang. Any ideas how to cleanly solve this are appreciated. Signed-off-by: Arnd Bergmann Signed-off-by: Paul Mackerras commit 9add11daeee2f6d69f6b86237f197824332a4a3b Author: Arnd Bergmann Date: Wed Oct 4 17:26:14 2006 +0200 [POWERPC] spufs: implement error event delivery to user space This tries to fix spufs so we have an interface closer to what is specified in the man page for events returned in the third argument of spu_run. Fortunately, libspe has never been using the returned contents of that register, as they were the same as the return code of spu_run (duh!). Unlike the specification that we never implemented correctly, we now require a SPU_CREATE_EVENTS_ENABLED flag passed to spu_create, in order to get the new behavior. When this flag is not passed, spu_run will simply ignore the third argument now. Signed-off-by: Arnd Bergmann Signed-off-by: Paul Mackerras commit 28347bce8a837258e737873a55d31f2f424a6ea6 Author: HyeonSeung Jang Date: Wed Oct 4 17:26:13 2006 +0200 [POWERPC] spufs: fix context switch during page fault For better explanation, I break down the page fault handling into steps: 1) There is a page fault caused by DMA operation initiated by SPU and DMA is suspended. 2) The interrupt handler 'spu_irq_class_1()/__spu_trap_data_map()' is called and it just wakes up the sleeping spe-manager thread. 3) by PPE scheduler, the corresponding bottom half, spu_irq_class_1_bottom() is called in process context and DMA is restarted. There can be a quite large time gap between 2) and 3) and I found the following problem: Between 2) and 3) If the context becomes unbound, 3) is not executed because when the spe-manager thread is awaken, the context is already saved. (This situation can happen, for example, when a high priority spe thread newly started in that time gap) But the actual problem is that the corresponding SPU context does not work even if it is bound again to a SPU. Besides I can see the following warning in mambo simulator when the context becomes unbound(in save_mfc_cmd()), i.e. when unbind() is called for the context after step 2) before 3) : 'WARNING: 61392752237: SPE2: MFC_CMD_QUEUE channel count of 15 is inconsistent with number of available DMA queue entries of 16' After I go through available documents, I found that the problem is because the suspended DMA is not restarted when it is bound again. Signed-off-by: Arnd Bergmann Signed-off-by: Paul Mackerras commit a68cf983f635930ea35f9e96b27d96598550dea0 Author: Mark Nutter Date: Wed Oct 4 17:26:12 2006 +0200 [POWERPC] spufs: scheduler support for NUMA. This patch adds NUMA support to the the spufs scheduler. The new arch/powerpc/platforms/cell/spufs/sched.c is greatly simplified, in an attempt to reduce complexity while adding support for NUMA scheduler domains. SPUs are allocated starting from the calling thread's node, moving to others as supported by current->cpus_allowed. Preemption is gone as it was buggy, but should be re-enabled in another patch when stable. The new arch/powerpc/platforms/cell/spu_base.c maintains idle lists on a per-node basis, and allows caller to specify which node(s) an SPU should be allocated from, while passing -1 tells spu_alloc() that any node is allowed. Since the patch removes the currently implemented preemptive scheduling, it is technically a regression, but practically all users have since migrated to this version, as it is part of the IBM SDK and the yellowdog distribution, so there is not much point holding it back while the new preemptive scheduling patch gets delayed further. Signed-off-by: Arnd Bergmann Signed-off-by: Paul Mackerras commit 27d5bf2a35c0762f1358e9ef39776733cd942121 Author: Benjamin Herrenschmidt Date: Wed Oct 4 17:26:11 2006 +0200 [POWERPC] spufs: cell spu problem state mapping updates This patch adds a new "psmap" file to spufs that allows mmap of all of the problem state mapping of SPEs. It is compatible with 64k pages. In addition, it removes mmap ability of individual files when using 64k pages, with the exception of signal1 and signal2 which will both map the entire 64k page holding both registers. It also removes CONFIG_SPUFS_MMAP as there is no point in not building mmap support in spufs. It goes along a separate patch to libspe implementing usage of that new file to access problem state registers. Another patch will follow up to fix races opened up by accessing the 'runcntl' register directly, which is made possible with this patch. Signed-off-by: Benjamin Herrenschmidt Signed-off-by: Arnd Bergmann Signed-off-by: Paul Mackerras commit afaf5a2d341d33b66b47c2716a263ce593460a08 Author: David Somayajulu Date: Tue Sep 19 10:28:00 2006 -0700 [SCSI] Initial Commit of qla4xxx open-iSCSI driver for Qlogic Corporation's iSCSI HBAs Signed-off-by: Ravi Anand Signed-off-by: David Somayajulu Signed-off-by: Doug Maxey Signed-off-by: Mike Christie Signed-off-by: James Bottomley commit ed542bed126caeefc6546b276e4af852d4d34f33 Author: Jeff Garzik Date: Wed Oct 4 07:05:11 2006 -0400 [SCSI] raid class: handle component-add errors Signed-off-by: Jeff Garzik Signed-off-by: James Bottomley commit 83aabc1be551dd1f07266c125ff48ec62a2ce515 Author: Jeff Garzik Date: Wed Oct 4 06:34:03 2006 -0400 [SCSI] SCSI megaraid_sas: handle thrown errors - handle clear_user() error - handle and properly unwind from sysfs errors thrown during mod init - adjust order of calls in megasas_exit() to precisely match registration order in megasas_init() Signed-off-by: Jeff Garzik Updated for extra attribute and Signed-off-by: James Bottomley commit bb0766204c81d6bd01532476aec4e512c960fb4d Author: Jeff Garzik Date: Wed Oct 4 06:19:18 2006 -0400 [SCSI] SCSI aic94xx: handle sysfs errors Handle and unwind from errors returned by driver model functions. Signed-off-by: Jeff Garzik Signed-off-by: James Bottomley commit 13026a6b985b9d1e19330d5656e211f15b5aca3b Author: Jeff Garzik Date: Wed Oct 4 06:00:38 2006 -0400 [SCSI] SCSI st: fix error handling in module init, sysfs - Notice and handle sysfs errors in module init, tape init - Properly unwind errors in module init - Remove bogus st_sysfs_class==NULL test, it is guaranteed !NULL at that point Signed-off-by: Jeff Garzik Signed-off-by: James Bottomley commit 5e4009ba3d5af40f5615fdb4304cc4a9947cca0a Author: Jeff Garzik Date: Wed Oct 4 05:32:54 2006 -0400 [SCSI] SCSI sd: fix module init/exit error handling - Properly handle and unwind errors in init_sd(). Fixes leaks on error, if class_register() or scsi_register_driver() failed. - Ensure that exit_sd() execution order is the perfect inverse of initialization order. FIXME: If some-but-not-all register_blkdev() calls fail, we wind up calling unregister_blkdev() for block devices we did not register. This was a pre-existing bug. Signed-off-by: Jeff Garzik Signed-off-by: James Bottomley commit 37e0333c68ca9cbddfc0108e1889556287563df0 Author: Jeff Garzik Date: Wed Oct 4 05:23:04 2006 -0400 [SCSI] SCSI osst: add error handling to module init, sysfs - check all sysfs-related return codes, and propagate them back to callers - properly unwind errors in osst_probe(), init_osst(). This fixes a leak that occured if scsi driver registration failed, and fixes an oops if sysfs creation returned an error. (unrelated) - kzalloc() cleanup in new_tape_buf() Signed-off-by: Jeff Garzik Signed-off-by: James Bottomley commit de77aaff5f0178f44867f131deb5e2cb1610fe6b Author: Henne Date: Wed Oct 4 10:22:09 2006 +0200 [SCSI] scsi: remove hosts.h Remove the obsolete hosts.h file under drivers/scsi. Signed-off-by: Henrik Kretzschmar Signed-off-by: James Bottomley commit c1278289363d9976c81b3b2512621fe152280e82 Author: Henne Date: Wed Oct 4 09:33:47 2006 +0200 [SCSI] scsi: Scsi_Cmnd convertion in aic7xxx_old.c Changes the obsolete Scsi_Cmnd to struct scsi_cmnd in aic7xxx_old.c. Also replacing lots of whitespaces with tabs in structures and functions which have been changed. Signed-off-by: Henrik Kretzschmar Signed-off-by: James Bottomley commit 3bdc9d0b408e01c4e556daba0035ba37f603e920 Author: Peter Oberparleiter Date: Wed Oct 4 20:02:30 2006 +0200 [S390] cio: improve unit check handling for internal operations Retry internal operation after unit check instead of aborting them. Signed-off-by: Peter Oberparleiter Signed-off-by: Martin Schwidefsky commit 3230015e15d4cf48e1df80fcf70d150f490cffe6 Author: Peter Oberparleiter Date: Wed Oct 4 20:02:26 2006 +0200 [S390] cio: add timeout handler for internal operations. Add timeout handler for common-I/O-layer-internal I/O operations. Signed-off-by: Peter Oberparleiter Signed-off-by: Martin Schwidefsky commit 0b2b6e1ddce4696cb7afcbb15a654fe95428a498 Author: Heiko Carstens Date: Wed Oct 4 20:02:23 2006 +0200 [S390] Remove open-coded mem_map usage. Use page_to_phys and pfn_to_page to avoid open-coded mem_map usage. Signed-off-by: Heiko Carstens commit 7676bef9c183fd573822cac9992927ef596d584c Author: Heiko Carstens Date: Wed Oct 4 20:02:19 2006 +0200 [S390] Have s390 use add_active_range() and free_area_init_nodes. Size zones and holes in an architecture independent manner for s390. Signed-off-by: Heiko Carstens commit cb601d41c175b7419efc91075a714d6a157bb0ac Author: Heiko Carstens Date: Wed Oct 4 20:02:15 2006 +0200 [S390] Remove crept in whitespace from head*.S again. Signed-off-by: Heiko Carstens commit 42e47eeb8fb3f9d2abe653cc7f185816068a057d Author: Martin Schwidefsky Date: Wed Oct 4 20:02:12 2006 +0200 [S390] incorrect placement of include. The include of linux/smp.h needs to be done before the #if that checks for the compiler version. Seems like fallout from the inline assembly cleanup patch vs. the directed yield patch. Signed-off-by: Martin Schwidefsky commit 8abfe01dae8c0ed7ca6bfb153a7fcab47df72a52 Author: Heiko Carstens Date: Wed Oct 4 20:02:09 2006 +0200 [S390] Wire up sys_getcpu system call. Signed-off-by: Heiko Carstens commit 4e56296d471a827fdd244cfdb6a1e62fc3af7af0 Author: Ralph Wuerthner Date: Wed Oct 4 20:02:05 2006 +0200 [S390] zcrypt device registration/unregistration race. Fix a race condition during AP device registration and unregistration. Signed-off-by: Ralph Wuerthner Signed-off-by: Martin Schwidefsky commit f1ee3281bedbbca70a1f53bc715ea6f27c616052 Author: Cornelia Huck Date: Wed Oct 4 20:02:02 2006 +0200 [S390] Add timeouts during sense PGID, path verification and disband PGID. While the machine owns us an interrupt in these cases (and we should get one), reality isn't always like that... Signed-off-by: Cornelia Huck Signed-off-by: Martin Schwidefsky commit b05e37035298148b6c311eccf06ac50fd389f0b2 Author: Martin Schwidefsky Date: Wed Oct 4 20:01:58 2006 +0200 [S390] user-copy optimization fallout. Fix new restore_sigregs function. It copies the user space copy of the old psw without correcting the psw.mask and the psw.addr high order bit. While we are at it, simplify save_sigregs a bit. Signed-off-by: Martin Schwidefsky commit aa97b102527ff94fe04930a660f897ef2bafb2a8 Author: Martin Schwidefsky Date: Wed Oct 4 20:01:52 2006 +0200 [S390] update default configuration Signed-off-by: Martin Schwidefsky commit 2a3681e56e825bce469d2ccf3c85741b5005e1f1 Author: Sumant Patro Date: Tue Oct 3 13:19:21 2006 -0700 [SCSI] megaraid_sas: sets ioctl timeout and updates version,changelog This patch sets timeout of max 180 seconds for ioctl completion. It also updates the Changelog and hikes the version to 3.05. Signed-off-by: Sumant Patro Signed-off-by: James Bottomley commit 5d018ad057347995e5c4564b3e43339e6497f839 Author: Sumant Patro Date: Tue Oct 3 13:13:18 2006 -0700 [SCSI] megaraid_sas: adds tasklet for cmd completion This patch adds a tasklet for command completion. Signed-off-by: Sumant Patro Signed-off-by: James Bottomley commit 658dcedb4e35d77f7f6552b5a640d7d82c372053 Author: Sumant Patro Date: Tue Oct 3 13:09:14 2006 -0700 [SCSI] megaraid_sas: prints pending cmds before setting hw_crit_error This patch adds function to print the pending frame details before returning failure from the reset routine. It also exposes a new variable megasas_dbg_lvl that allows the user to set the debug level for logging. Signed-off-by: Sumant Patro Signed-off-by: James Bottomley commit b274cab779219325fd480cc696a456d1c3893bd8 Author: Sumant Patro Date: Tue Oct 3 12:52:12 2006 -0700 [SCSI] megaraid_sas: function pointer for disable interrupt This patch adds function pointer to invoke disable interrupt for xscale and ppc IOP based controllers. Removes old implementation that checks for controller type in megasas_disable_intr. Signed-off-by: Sumant Patro Signed-off-by: James Bottomley commit b1df99d9434edf3fc26f9e36ee6a443e3611e829 Author: Sumant Patro Date: Tue Oct 3 12:40:47 2006 -0700 [SCSI] megaraid_sas: frame count optimization This patch removes duplicated code in frame calculation & adds megasas_get_frame_count() that also takes into account the number of frames that can be contained in the Main frame. FW uses the frame count to pull sufficient number of frames from host memory. Signed-off-by: Sumant Patro Signed-off-by: James Bottomley commit e3bbff9f3cf91c84c76cfdd5e80041ad1b487192 Author: Sumant Patro Date: Tue Oct 3 12:28:49 2006 -0700 [SCSI] megaraid_sas: FW transition and q size changes This patch has the following enhancements : a. handles new transition states of FW to support controller hotplug. b. It reduces by 1 the maximum cmds that the driver may send to FW. c. Sends "Stop Processing" cmd to FW before returning failure from reset routine d. Adds print in megasas_transition routine e. Sends "RESET" flag to FW to do a soft reset of controller to move from Operational to Ready state. f. Sending correct pointer (cmd->sense) to pci_pool_free Signed-off-by: Sumant Patro Signed-off-by: James Bottomley commit 2c2345c2b4fec30d12e1e1a6ee153a80af101e32 Author: Roger Gammans Date: Wed Oct 4 13:37:45 2006 +0200 [PATCH] Document bi_sector and sector_t Signed-Off-By: Roger Gammans Signed-off-by: Jens Axboe commit f583f4924d669d36de677e0cc2422ee95203d444 Author: David C Somayajulu Date: Wed Oct 4 08:27:25 2006 +0200 [PATCH] helper function for retrieving scsi_cmd given host based block layer tag This was necessitated by the need for a function to get back to a scsi_cmnd, when an hba the posts its (corresponding) completion interrupt with a block layer tag as its reference. Signed-off-by: Mike Christie Signed-off-by: David Somayajulu Signed-off-by: Jens Axboe commit 4d5e392c33820dc8861423bb1b8dae205ea0ad3d Author: Haavard Skinnemoen Date: Wed Oct 4 16:02:11 2006 +0200 [PATCH] atmel_serial: Fix roundoff error in atmel_console_get_options The atmel_console_get_options() function initializes the baud, parity and bits settings from the actual hardware setup, in case it has been initialized by a e.g. boot loader. The baud rate, however, is not necessarily exactly equal to one of the standard baud rates (115200, etc.) This means that the baud rate calculated by this function may be slightly higher or slightly lower than one of the standard baud rates. If the baud rate is slightly lower than the target, this causes problems when uart_set_option() tries to match the detected baud rate against the standard baud rate, as it will always select a baud rate that is lower or equal to the target rate. For example if the detected baud rate is slightly lower than 115200, usart_set_options() will select 57600. This patch fixes the problem by subtracting 1 from the value in BRGR when calculating the baud rate. The detected baud rate will thus always be higher than the nearest standard baud rate, and uart_set_options() will end up doing the right thing. Tested on ATSTK1000 and AT91RM9200-EK boards. Both are broken without this patch. Signed-off-by: Haavard Skinnemoen Acked-by: Andrew Victor Signed-off-by: Linus Torvalds commit c194588dba968510b5aa7a1818bd2c8b36a416f7 Author: Haavard Skinnemoen Date: Wed Oct 4 16:02:10 2006 +0200 [PATCH] AVR32: Allow renumbering of serial devices Allow the board to remap actual USART peripheral devices to serial devices by calling at32_map_usart(hw_id, serial_line). This ensures that even though ATSTK1002 uses USART1 as the first serial port, it will still have a ttyS0 device. This also adds a board-specific early setup hook and moves the at32_setup_serial_console() call there from the platform code. Signed-off-by: Haavard Skinnemoen Signed-off-by: Linus Torvalds commit acca9b83acfe89fbb7421d5412176dee2ad2959a Author: Haavard Skinnemoen Date: Wed Oct 4 16:02:09 2006 +0200 [PATCH] atmel_serial: Support AVR32 Make CONFIG_SERIAL_ATMEL selectable on AVR32 and #ifdef out some ARM- specific code in the driver. Signed-off-by: Haavard Skinnemoen Acked-by: Andrew Victor Signed-off-by: Linus Torvalds commit 75d35213777e2b278db57a420efbce2bdb61da93 Author: Haavard Skinnemoen Date: Wed Oct 4 16:02:08 2006 +0200 [PATCH] atmel_serial: Pass fixed register mappings through platform_data In order to initialize the serial console early, the atmel_serial driver had to do a hack where it compared the physical address of the port with an address known to be permanently mapped, and used it as a virtual address. This got around the limitation that ioremap() isn't always available when the console is being initalized. This patch removes that hack and replaces it with a new "regs" field in struct atmel_uart_data that the board-specific code can initialize to a fixed virtual mapping for platform devices where this is possible. It also initializes the DBGU's regs field with the address the driver used to check against. On AVR32, the "regs" field is initialized from the physical base address when this it can be accessed through a permanently 1:1 mapped segment, i.e. the P4 segment. If regs is NULL, the console initialization is delayed until the "real" driver is up and running and ioremap() can be used. Signed-off-by: Haavard Skinnemoen Acked-by: Andrew Victor Signed-off-by: Linus Torvalds commit 71f2e2b8783f7b270b673e31e2322572057b286a Author: Haavard Skinnemoen Date: Wed Oct 4 16:02:07 2006 +0200 [PATCH] atmel_serial: Rename at91_register_uart_fns Rename at91_register_uart_fns and associated structs and variables to make it consistent with the atmel_ prefix used by the rest of the driver. Signed-off-by: Haavard Skinnemoen Acked-by: Andrew Victor Signed-off-by: Linus Torvalds commit 9ab4f88b7ffdf338773e7755f923bc6b9e079834 Author: Haavard Skinnemoen Date: Wed Oct 4 16:02:06 2006 +0200 [PATCH] serial: Rename PORT_AT91 -> PORT_ATMEL The at91_serial driver can be used with both AT32 and AT91 devices from Atmel and has therefore been renamed atmel_serial. The only thing left is to rename PORT_AT91 PORT_ATMEL. Signed-off-by: Haavard Skinnemoen Acked-by: Andrew Victor Signed-off-by: Linus Torvalds commit 7192f92c799e4bf4943e3e233d6e4d786ac4d8a4 Author: Haavard Skinnemoen Date: Wed Oct 4 16:02:05 2006 +0200 [PATCH] at91_serial -> atmel_serial: Internal names Prefix all internal functions and variables with atmel_ instead of at91_. The at91_register_uart_fns() stuff is left as is since I can't find any actual users of it. Signed-off-by: Haavard Skinnemoen Acked-by: Andrew Victor Signed-off-by: Linus Torvalds commit 73e2798b0f3f4fa8ff7d3e8138027a8352359bb5 Author: Haavard Skinnemoen Date: Wed Oct 4 16:02:04 2006 +0200 [PATCH] at91_serial -> atmel_serial: Public definitions Rename the following public definitions: * AT91_NR_UART -> ATMEL_MAX_UART * struct at91_uart_data -> struct atmel_uart_data * at91_default_console_device -> atmel_default_console_device Signed-off-by: Haavard Skinnemoen Acked-by: Andrew Victor Signed-off-by: Linus Torvalds commit 1e8ea80219564c3433dbca7afe075ced9eb8117c Author: Haavard Skinnemoen Date: Wed Oct 4 16:02:03 2006 +0200 [PATCH] at91_serial -> atmel_serial: Platform device name Rename the "at91_usart" platform driver "atmel_usart" and update platform devices accordingly. Signed-off-by: Haavard Skinnemoen Acked-by: Andrew Victor Signed-off-by: Linus Torvalds commit 749c4e60334580ee0f1427eb90ad006fecbffd21 Author: Haavard Skinnemoen Date: Wed Oct 4 16:02:02 2006 +0200 [PATCH] at91_serial -> atmel_serial: Kconfig symbols Rename the following Kconfig symbols: * CONFIG_SERIAL_AT91 -> CONFIG_SERIAL_ATMEL * CONFIG_SERIAL_AT91_CONSOLE -> CONFIG_SERIAL_ATMEL_CONSOLE * CONFIG_SERIAL_AT91_TTYAT -> CONFIG_SERIAL_ATMEL_TTYAT Signed-off-by: Haavard Skinnemoen Acked-by: Andrew Victor Signed-off-by: Linus Torvalds commit b6156b4e2e3b725ae3549882f59c82ab5b5048a5 Author: Haavard Skinnemoen Date: Wed Oct 4 16:02:01 2006 +0200 [PATCH] at91_serial -> atmel_serial: at91_serial.c Rename at91_serial.c atmel_serial.c Signed-off-by: Haavard Skinnemoen Acked-by: Andrew Victor Signed-off-by: Linus Torvalds commit 5b34821a601ea079184efba2f9c7c7af61241bde Author: Haavard Skinnemoen Date: Wed Oct 4 16:02:00 2006 +0200 [PATCH] at91_serial -> atmel_serial: at91rm9200_usart.h Move include/asm/arch/at91rm9200_usart.h into drivers/serial and rename it atmel_usart.h. Also delete AVR32's version of this file. Signed-off-by: Haavard Skinnemoen Acked-by: Andrew Victor Signed-off-by: Linus Torvalds commit c4710e65c005339b5979fa258bf89940dc2a700b Author: David Woodhouse Date: Wed Oct 4 17:32:21 2006 +0100 [MIPS] Remove remaining reference to ite_gpio.h from Kbuild Signed-off-by: David Woodhouse Signed-off-by: Ralf Baechle commit 7009af8cd37f7904939aec6bd2325c581abd7cac Author: Vitaly Wool Date: Wed Oct 4 19:19:58 2006 +0400 [MIPS] PNX8550 fixups This patch fixes the compilation errors on PNX8550 and hard-to-track bug in interrupt handling. It also corresponds to the latest changes in PNX8550 serial driver. Signed-off-by: Vitaly Wool Signed-off-by: Ralf Baechle commit a0a00cbf8ae5cea3d72e28982c06f3270420c657 Author: Alan Cox Date: Wed Oct 4 12:47:14 2006 +0100 [PATCH] pata: teach ali about rev C8, keep pcmcia driver in sync This fixes support for rev c8 of the ALi/ULi PATA, and keeps pcmcia in sync so ide_cs and pata_pcmcia are interchangable, both are only changes to constants. Right now rev 0xC8 and higher don't work with libata but 0xc8 is in the field now. Signed-off-by: Alan Cox Signed-off-by: Linus Torvalds commit 11966adc33fa1504c2d9a78e6fc129e5c87bdee1 Author: Jeff Garzik Date: Wed Oct 4 04:41:53 2006 -0400 [PATCH] RTC: build fixes Fix obvious build breakage revealed by 'make allyesconfig' in current -git. Signed-off-by: Jeff Garzik Signed-off-by: Linus Torvalds commit 5b9b5572c87b460cd91f7722ac233d1873cfb084 Author: Andrew Morton Date: Wed Oct 4 02:17:32 2006 -0700 [PATCH] git-powerpc: wrapper: don't require execute permissions If you lose the x bit (eg: by using patch(1)), powerpc won't build. Be defensive about it... Cc: Paul Mackerras Cc: Benjamin Herrenschmidt Cc: Sam Ravnborg Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit ece7f77b86e53bfe14699fdbcb0f03fdad0a01d6 Author: Adrian Bunk Date: Wed Oct 4 02:17:31 2006 -0700 [PATCH] kill sound/oss/*_syms.c Move all EXPORT_SYMBOL's from sound/oss/*_syms.c to the files with the actual functions. Signed-off-by: Adrian Bunk Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit d56b9b9c464a10ab1ee51a4c6190a2b57b8ef7a6 Author: Adrian Bunk Date: Wed Oct 4 02:17:22 2006 -0700 [PATCH] The scheduled removal of some OSS drivers This patch contains the scheduled removal of OSS drivers that: - have ALSA drivers for the same hardware without known regressions and - whose Kconfig options have been removed in 2.6.17. [michal.k.k.piotrowski@gmail.com: build fix] Signed-off-by: Adrian Bunk Signed-off-by: Michal Piotrowski Cc: David Woodhouse Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 595182bcdf64fbfd7ae22c67ea6081b7d387d246 Author: Josh Triplett Date: Wed Oct 4 02:17:21 2006 -0700 [PATCH] RCU: CREDITS and MAINTAINERS Add MAINTAINERS entry for Read-Copy Update (RCU), listing Dipankar Sarma as maintainer, and giving the URL for Paul McKenney's RCU site. Add MAINTAINERS entry for rcutorture, listing myself as maintainer. Add CREDITS entries for developers of RCU, RCU variants, and rcutorture. Use Paul McKenney's preferred email address in include/linux/rcupdate.h . Signed-off-by: Josh Triplett Cc: Paul McKenney Cc: Dipankar Sarma Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 20e9751bd9dd6b832fd84ada27840360f7e877f1 Author: Oleg Nesterov Date: Wed Oct 4 02:17:17 2006 -0700 [PATCH] rcu: simplify/improve batch tuning Kill a hard-to-calculate 'rsinterval' boot parameter and per-cpu rcu_data.last_rs_qlen. Instead, it adds adds a flag rcu_ctrlblk.signaled, which records the fact that one of CPUs has sent a resched IPI since the last rcu_start_batch(). Roughly speaking, we need two rcu_start_batch()s in order to move callbacks from ->nxtlist to ->donelist. This means that when ->qlen exceeds qhimark and continues to grow, we should send a resched IPI, and then do it again after we gone through a quiescent state. On the other hand, if it was already sent, we don't need to do it again when another CPU detects overflow of the queue. Signed-off-by: Oleg Nesterov Acked-by: Paul E. McKenney Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 4b6c2cca6eef9cc4a15350bf1c61839e12e08b84 Author: Josh Triplett Date: Wed Oct 4 02:17:16 2006 -0700 [PATCH] rcu: add sched torture type to rcutorture Implement torture testing for the "sched" variant of RCU, which uses preempt_disable, preempt_enable, and synchronize_sched. Signed-off-by: Josh Triplett Acked-by: Paul E. McKenney Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 11a147013e39ff4cb031395cb78a9d307c4799cd Author: Josh Triplett Date: Wed Oct 4 02:17:16 2006 -0700 [PATCH] rcu: add rcu_bh_sync torture type to rcutorture Use the newly-generic synchronous deferred free function to implement torture testing for rcu_bh using synchronize_rcu_bh rather than the asynchronous call_rcu_bh. Signed-off-by: Josh Triplett Acked-by: Paul E. McKenney Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 20d2e4283a97665a3db78c60dfa342a0c7c1b180 Author: Josh Triplett Date: Wed Oct 4 02:17:15 2006 -0700 [PATCH] rcu: add rcu_sync torture type to rcutorture Use the newly-generic synchronous deferred free function to implement torture testing for RCU using synchronize_rcu rather than the asynchronous call_rcu. Signed-off-by: Josh Triplett Acked-by: Paul E. McKenney Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit e3033736581f125ba5fd6c0760e0d430d54fb5c0 Author: Josh Triplett Date: Wed Oct 4 02:17:14 2006 -0700 [PATCH] rcu: refactor srcu_torture_deferred_free to work for any implementation Make srcu_torture_deferred_free use cur_ops->sync() so it will work for any implementation. Move and rename it in preparation for use in the ops of other implementations. Signed-off-by: Josh Triplett Acked-by: Paul E. McKenney Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit b772e1dd4b1e60a7a160f7bd4ea08e28394ceb54 Author: Josh Triplett Date: Wed Oct 4 02:17:13 2006 -0700 [PATCH] RCU: add fake writers to rcutorture rcutorture currently has one writer and an arbitrary number of readers. To better exercise some of the code paths in RCU implementations, add fake writer threads which call the synchronize function for the RCU variant in a loop, with a delay between calls to arrange for different numbers of writers running in parallel. [bunk@stusta.de: cleanup] Acked-by: Paul McKenney Cc: Dipkanar Sarma Signed-off-by: Josh Triplett Signed-off-by: Adrian Bunk Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 75cfef32f26d03f5d0a0833572d52f94ad858a36 Author: Josh Triplett Date: Wed Oct 4 02:17:12 2006 -0700 [PATCH] rcu: Fix sign bug making rcu_random always return the same sequence rcu_random uses a counter rrs_count to occasionally mix data from get_random_bytes into the state of its pseudorandom generator. However, the rrs_counter gets declared as an unsigned long, and rcu_random checks for --rrs_count < 0, so this code will never mix any real random data into the state, and will thus always return the same sequence of random numbers. Also, change the return value of rcu_random from long to unsigned long, to avoid potential issues caused by the use of the % operator, which can return negative values for negative left operands. Signed-off-by: Josh Triplett Acked-by: Paul E. McKenney Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 2860aaba4dc87fa43c08724434b87a8650f3bff5 Author: Josh Triplett Date: Wed Oct 4 02:17:11 2006 -0700 [PATCH] rcu: Avoid kthread_stop on invalid pointer if rcutorture reader startup fails rcu_torture_init kmallocs the array of reader threads, then creates each one with kthread_run, cleaning up with rcu_torture_cleanup if this fails. rcu_torture_cleanup calls kthread_stop on any non-NULL pointer in the array; however, any readers after the one that failed to start up will have invalid pointers, not null pointers. Avoid this by using kzalloc instead. Signed-off-by: Josh Triplett Acked-by: Paul E. McKenney Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 3c29e03d9121e07714fb9e5303d9b026800ffd5a Author: Josh Triplett Date: Wed Oct 4 02:17:10 2006 -0700 [PATCH] rcu: Mention rcu_bh in description of rcutorture's torture_type parameter The comment for rcutorture's torture_type parameter only lists the RCU variants rcu and srcu, but not rcu_bh; add rcu_bh to the list. Signed-off-by: Josh Triplett Acked-by: Paul E. McKenney Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit ff2c93a5373f12f86f3281705d11278a9f2334e2 Author: Josh Triplett Date: Wed Oct 4 02:17:09 2006 -0700 [PATCH] rcu: Add MODULE_AUTHOR to rcutorture module Signed-off-by: Josh Triplett Acked-by: "Paul E. McKenney" Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit b4dfdbb3c707474a2254c5b4d7e62be31a4b7da9 Author: Alan Stern Date: Wed Oct 4 02:17:06 2006 -0700 [PATCH] cpufreq: make the transition_notifier chain use SRCU This patch (as762) changes the cpufreq_transition_notifier_list from a blocking_notifier_head to an srcu_notifier_head. This will prevent errors caused attempting to call down_read() to access the notifier chain at a time when interrupts must remain disabled, during system suspend. It's not clear to me whether this is really necessary; perhaps the chain could be made into an atomic_notifier. However a couple of the callout routines do use blocking operations, so this approach seems safer. The head of the notifier chain needs to be initialized before use; this is done by an __init routine at core_initcall time. If this turns out not to be a good choice, it can easily be changed. Signed-off-by: Alan Stern Cc: "Paul E. McKenney" Cc: Jesse Brandeburg Cc: Dave Jones Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit e6a92013ba458804161c0c5b6d134d82204dc233 Author: Alan Stern Date: Wed Oct 4 02:17:05 2006 -0700 [PATCH] SRCU: report out-of-memory errors Currently the init_srcu_struct() routine has no way to report out-of-memory errors. This patch (as761) makes it return -ENOMEM when the per-cpu data allocation fails. The patch also makes srcu_init_notifier_head() report a BUG if a notifier head can't be initialized. Perhaps it should return -ENOMEM instead, but in the most likely cases where this might occur I don't think any recovery is possible. Notifier chains generally are not created dynamically. [akpm@osdl.org: avoid statement-with-side-effect in macro] Signed-off-by: Alan Stern Acked-by: Paul E. McKenney Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit eabc069401bcf45bcc3f19e643017bf761780aa8 Author: Alan Stern Date: Wed Oct 4 02:17:04 2006 -0700 [PATCH] Add SRCU-based notifier chains This patch (as751) adds a new type of notifier chain, based on the SRCU (Sleepable Read-Copy Update) primitives recently added to the kernel. An SRCU notifier chain is much like a blocking notifier chain, in that it must be called in process context and its callout routines are allowed to sleep. The difference is that the chain's links are protected by the SRCU mechanism rather than by an rw-semaphore, so calling the chain has extremely low overhead: no memory barriers and no cache-line bouncing. On the other hand, unregistering from the chain is expensive and the chain head requires special runtime initialization (plus cleanup if it is to be deallocated). SRCU notifiers are appropriate for notifiers that will be called very frequently and for which unregistration occurs very seldom. The proposed "task notifier" scheme qualifies, as may some of the network notifiers. Signed-off-by: Alan Stern Acked-by: Paul E. McKenney Acked-by: Chandra Seetharaman Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit b2896d2e75c87ea6a842c088db730b03c91db737 Author: Paul E. McKenney Date: Wed Oct 4 02:17:03 2006 -0700 [PATCH] srcu-3: add SRCU operations to rcutorture Adds SRCU operations to rcutorture and updates rcutorture documentation. Also increases the stress imposed by the rcutorture test. [bunk@stusta.de: make needlessly global code static] Signed-off-by: Paul E. McKenney Cc: Paul E. McKenney Signed-off-by: Adrian Bunk Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 621934ee7ed5b073c7fd638b347e632c53572761 Author: Paul E. McKenney Date: Wed Oct 4 02:17:02 2006 -0700 [PATCH] srcu-3: RCU variant permitting read-side blocking Updated patch adding a variant of RCU that permits sleeping in read-side critical sections. SRCU is as follows: o Each use of SRCU creates its own srcu_struct, and each srcu_struct has its own set of grace periods. This is critical, as it prevents one subsystem with a blocking reader from holding up SRCU grace periods for other subsystems. o The SRCU primitives (srcu_read_lock(), srcu_read_unlock(), and synchronize_srcu()) all take a pointer to a srcu_struct. o The SRCU primitives must be called from process context. o srcu_read_lock() returns an int that must be passed to the matching srcu_read_unlock(). Realtime RCU avoids the need for this by storing the state in the task struct, but SRCU needs to allow a given code path to pass through multiple SRCU domains -- storing state in the task struct would therefore require either arbitrary space in the task struct or arbitrary limits on SRCU nesting. So I kicked the state-storage problem up to the caller. Of course, it is not permitted to call synchronize_srcu() while in an SRCU read-side critical section. o There is no call_srcu(). It would not be hard to implement one, but it seems like too easy a way to OOM the system. (Hey, we have enough trouble with call_rcu(), which does -not- permit readers to sleep!!!) So, if you want it, please tell me why... [josht@us.ibm.com: sparse notation] Signed-off-by: Paul E. McKenney Signed-off-by: Josh Triplett Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 95d77884c77beed676036d2f74d10b470a483c63 Author: Eric W. Biederman Date: Wed Oct 4 02:17:01 2006 -0700 [PATCH] htirq: tidy up the htirq code This moves the declarations for the architecture helpers into include/linux/htirq.h from the generic include/linux/pci.h. Hopefully this will make this distinction clearer. htirq.h is included where it is needed. The dependency on the msi code is fixed and removed. The Makefile is tidied up. Signed-off-by: Eric W. Biederman Cc: Ingo Molnar Cc: Tony Luck Cc: Andi Kleen Cc: Thomas Gleixner Cc: Greg KH Cc: Benjamin Herrenschmidt Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 03571e11c4a6d08230657f80970f0a5cc7820471 Author: Eric W. Biederman Date: Wed Oct 4 02:17:00 2006 -0700 [PATCH] msi: move the ia64 code into arch/ia64 This is just a few makefile tweaks and some file renames. Signed-off-by: Eric W. Biederman Cc: Ingo Molnar Cc: Tony Luck Cc: Andi Kleen Cc: Thomas Gleixner Cc: Greg KH Cc: Benjamin Herrenschmidt Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 3b7d1921f4cdd6d6ddb7899ae7a8d413991c5cf4 Author: Eric W. Biederman Date: Wed Oct 4 02:16:59 2006 -0700 [PATCH] msi: refactor and move the msi irq_chip into the arch code It turns out msi_ops was simply not enough to abstract the architecture specific details of msi. So I have moved the resposibility of constructing the struct irq_chip to the architectures, and have two architecture specific functions arch_setup_msi_irq, and arch_teardown_msi_irq. For simple architectures those functions can do all of the work. For architectures with platform dependencies they can call into the appropriate platform code. With this msi.c is finally free of assuming you have an apic, and this actually takes less code. The helpers for the architecture specific code are declared in the linux/msi.h to keep them separate from the msi functions used by drivers in linux/pci.h Signed-off-by: Eric W. Biederman Cc: Ingo Molnar Cc: Tony Luck Cc: Andi Kleen Cc: Thomas Gleixner Cc: Greg KH Cc: Benjamin Herrenschmidt Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 277bc33bc2479707e88b0b2ae6fe56e8e4aabe81 Author: Eric W. Biederman Date: Wed Oct 4 02:16:57 2006 -0700 [PATCH] msi: only use a single irq_chip for msi interrupts The logic works like this. Since we no longer track the state logic by hand in msi.c startup and shutdown are no longer needed. By updating msi_set_mask_bit to work on msi devices that do not implement a mask bit we can always call the mask/unmask functions. What we really have are mask and unmask so we use them to implement the .mask and .unmask functions instead of .enable and .disable. By switching to the handle_edge_irq handler we only need an ack function that moves the irq if necessary. Which removes the old end and ack functions and their peculiar logic of sometimes disabling an irq. This removes the reliance on pre genirq irq handling methods. Signed-off-by: Eric W. Biederman Cc: Ingo Molnar Cc: Tony Luck Cc: Andi Kleen Cc: Thomas Gleixner Cc: Greg KH Cc: Benjamin Herrenschmidt Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 1f80025e624bb14fefadfef7e80fbfb9740d4714 Author: Eric W. Biederman Date: Wed Oct 4 02:16:56 2006 -0700 [PATCH] msi: simplify msi sanity checks by adding with generic irq code Currently msi.c is doing sanity checks that make certain before an irq is destroyed it has no more users. By adding irq_has_action I can perform the test is a generic way, instead of relying on a msi specific data structure. By performing the core check in dynamic_irq_cleanup I ensure every user of dynamic irqs has a test present and we don't free resources that are in use. In msi.c this allows me to kill the attrib.state member of msi_desc and all of the assciated code to maintain it. To keep from freeing data structures when irq cleanup code is called to soon changing dyanamic_irq_cleanup is insufficient because there are msi specific data structures that are also not safe to free. Signed-off-by: Eric W. Biederman Cc: Ingo Molnar Cc: Tony Luck Cc: Andi Kleen Cc: Thomas Gleixner Cc: Greg KH Cc: Benjamin Herrenschmidt Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 8b955b0dddb35e398b07e217a81f8bd49400796f Author: Eric W. Biederman Date: Wed Oct 4 02:16:55 2006 -0700 [PATCH] Initial generic hypertransport interrupt support This patch implements two functions ht_create_irq and ht_destroy_irq for use by drivers. Several other functions are implemented as helpers for arch specific irq_chip handlers. The driver for the card I tested this on isn't yet ready to be merged. However this code is and hypertransport irqs are in use in a few other places in the kernel. Not that any of this will get merged before 2.6.19 Because the ipath-ht400 is slightly out of spec this code will need to be generalized to work there. I think all of the powerpc uses are for a plain interrupt controller in a chipset so support for native hypertransport devices is a little less interesting. However I think this is a half way decent model on how to separate arch specific and generic helper code, and I think this is a functional model of how to get the architecture dependencies out of the msi code. [akpm@osdl.org: Kconfig fix] Signed-off-by: Eric W. Biederman Cc: Greg KH Cc: Andi Kleen Cc: Benjamin Herrenschmidt Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit e78d01693be38bf93dd6bb49b86e143da450de86 Author: Eric W. Biederman Date: Wed Oct 4 02:16:54 2006 -0700 [PATCH] Add Hypertransport capability defines This adds defines for the hypertransport capability subtypes and starts using them a little. [akpm@osdl.org: fix typo] Signed-off-by: Eric W. Biederman Acked-by: Benjamin Herrenschmidt Cc: Greg KH Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit cd1182f56a064d42d10e289ef4018f9c2230247d Author: Eric W. Biederman Date: Wed Oct 4 02:16:53 2006 -0700 [PATCH] genirq: x86_64 irq: Kill irq compression With more irqs in the system we don't need this. Signed-off-by: Eric W. Biederman Cc: Ingo Molnar Cc: Thomas Gleixner Cc: Benjamin Herrenschmidt Cc: Rajesh Shah Cc: Andi Kleen Cc: "Protasevich, Natalie" Cc: "Luck, Tony" Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit f023d764cc6165eb4f1cad6b2b0882ce0660764a Author: Eric W. Biederman Date: Wed Oct 4 02:16:52 2006 -0700 [PATCH] genirq: x86_64 irq: Kill gsi_irq_sharing After raising the number of irqs the system supports this function is no longer necessary. Signed-off-by: Eric W. Biederman Cc: Ingo Molnar Cc: Thomas Gleixner Cc: Benjamin Herrenschmidt Cc: Rajesh Shah Cc: Andi Kleen Cc: "Protasevich, Natalie" Cc: "Luck, Tony" Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 550f2299ac8ffaba943cf211380d3a8d3fa75301 Author: Eric W. Biederman Date: Wed Oct 4 02:16:51 2006 -0700 [PATCH] genirq: x86_64 irq: make vector_irq per cpu This refactors the irq handling code to make the vectors a per cpu resource so the same vector number can be simultaneously used on multiple cpus for different irqs. This should make systems that were hitting limits on the total number of irqs much more livable. [akpm@osdl.org: build fix] [akpm@osdl.org: __target_IO_APIC_irq is unneeded on UP] Signed-off-by: Eric W. Biederman Cc: Ingo Molnar Cc: Thomas Gleixner Cc: Benjamin Herrenschmidt Cc: Rajesh Shah Cc: Andi Kleen Cc: "Protasevich, Natalie" Cc: "Luck, Tony" Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit e500f57436b9056a245216c53113613928155eba Author: Eric W. Biederman Date: Wed Oct 4 02:16:50 2006 -0700 [PATCH] genirq: x86_64 irq: Make the external irq handlers report their vector, not the irq number This is a small pessimization but it paves the way for making this information per cpu. Which allows the the maximum number of IRQS to become NR_CPUS*224. Signed-off-by: Eric W. Biederman Cc: Ingo Molnar Cc: Thomas Gleixner Cc: Benjamin Herrenschmidt Cc: Rajesh Shah Cc: Andi Kleen Cc: "Protasevich, Natalie" Cc: "Luck, Tony" Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 23d0b8b053391afe15c9667d80de77ca88e18b8b Author: Eric W. Biederman Date: Wed Oct 4 02:16:49 2006 -0700 [PATCH] genirq: irq: generalize the check for HARDIRQ_BITS This patch adds support for systems that cannot receive every interrupt on a single cpu simultaneously, in the check to see if we have enough HARDIRQ_BITS. MAX_HARDIRQS_PER_CPU becomes the count of the maximum number of hardare generated interrupts per cpu. On architectures that support per cpu interrupt delivery this can be a significant space savings and scalability bonus. This patch adds support for systems that cannot receive every interrupt on Signed-off-by: Eric W. Biederman Cc: Ingo Molnar Cc: Thomas Gleixner Cc: Benjamin Herrenschmidt Cc: Rajesh Shah Cc: Andi Kleen Cc: "Protasevich, Natalie" Cc: "Luck, Tony" Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 323a01c50832749d23664954f91df6fc43e73975 Author: Eric W. Biederman Date: Wed Oct 4 02:16:48 2006 -0700 [PATCH] genirq: irq: remove msi hacks Because of the nasty way that CONFIG_PCI_MSI was implemented we wound up with set_irq_info and set_native_irq_info, with move_irq and move_native_irq. Both functions did the same thing but they were built and called under different circumstances. Now that the msi hacks are gone we can kill move_irq and set_irq_info. Signed-off-by: Eric W. Biederman Cc: Ingo Molnar Cc: Thomas Gleixner Cc: Benjamin Herrenschmidt Cc: Rajesh Shah Cc: Andi Kleen Cc: "Protasevich, Natalie" Cc: "Luck, Tony" Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit ace80ab796ae30d2c9ee8a84ab6f608a61f8b87b Author: Eric W. Biederman Date: Wed Oct 4 02:16:47 2006 -0700 [PATCH] genirq: i386 irq: Remove the msi assumption that irq == vector This patch removes the change in behavior of the irq allocation code when CONFIG_PCI_MSI is defined. Removing all instances of the assumption that irq == vector. create_irq is rewritten to first allocate a free irq and then to assign that irq a vector. assign_irq_vector is made static and the AUTO_ASSIGN case which allocates an vector not bound to an irq is removed. The ioapic vector methods are removed, and everything now works with irqs. The definition of NR_IRQS no longer depends on CONFIG_PCI_MSI [akpm@osdl.org: cleanup] Signed-off-by: Eric W. Biederman Cc: Ingo Molnar Cc: Thomas Gleixner Cc: Benjamin Herrenschmidt Cc: Rajesh Shah Cc: Andi Kleen Cc: "Protasevich, Natalie" Cc: "Luck, Tony" Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 04b9267b15206fc902a18de1f78de6c82ca47716 Author: Eric W. Biederman Date: Wed Oct 4 02:16:46 2006 -0700 [PATCH] genirq: x86_64 irq: Remove the msi assumption that irq == vector This patch removes the change in behavior of the irq allocation code when CONFIG_PCI_MSI is defined. Removing all instances of the assumption that irq == vector. create_irq is rewritten to first allocate a free irq and then to assign that irq a vector. assign_irq_vector is made static and the AUTO_ASSIGN case which allocates an vector not bound to an irq is removed. The ioapic vector methods are removed, and everything now works with irqs. The definition of NR_IRQS no longer depends on CONFIG_PCI_MSI Signed-off-by: Eric W. Biederman Cc: Ingo Molnar Cc: Thomas Gleixner Cc: Benjamin Herrenschmidt Cc: Rajesh Shah Cc: Andi Kleen Cc: "Protasevich, Natalie" Cc: "Luck, Tony" Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 4b2fabb9ec9b3b1cf5cf848a678058fb20c4d552 Author: Eric W. Biederman Date: Wed Oct 4 02:16:45 2006 -0700 [PATCH] genirq: msi: only build msi-apic.c on ia64 After the previous changes ia64 is the only architecture useing msi-apic.c [akpm@osdl.org: unbreak MSI on ia64] Signed-off-by: Eric W. Biederman Cc: Ingo Molnar Cc: Thomas Gleixner Cc: Benjamin Herrenschmidt Cc: Rajesh Shah Cc: Andi Kleen Cc: "Protasevich, Natalie" Cc: "Luck, Tony" Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 2d3fcc1c54df2f49674e1f7c99d4800ed1d51902 Author: Eric W. Biederman Date: Wed Oct 4 02:16:43 2006 -0700 [PATCH] genirq: i386 irq: Move msi message composition into io_apic.c This removes the hardcoded assumption that irq == vector in the msi composition code, and it allows the msi message composition to setup logical mode, or lowest priorirty delivery mode as we do for other apic interrupts, and with the same selection criteria. Basically this moves the problem of what is in the msi message into the architecture irq management code where it belongs. Not in a generic layer that doesn't have enough information to compose msi messages properly. Signed-off-by: Eric W. Biederman Cc: Ingo Molnar Cc: Thomas Gleixner Cc: Benjamin Herrenschmidt Cc: Rajesh Shah Cc: Andi Kleen Cc: "Protasevich, Natalie" Cc: "Luck, Tony" Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 589e367f9b9117b3412da0d4e10ea6882db8da84 Author: Eric W. Biederman Date: Wed Oct 4 02:16:42 2006 -0700 [PATCH] genirq: x86_64 irq: Move msi message composition into io_apic.c This removes the hardcoded assumption that irq == vector in the msi composition code, and it allows the msi message composition to setup logical mode, or lowest priorirty delivery mode as we do for other apic interrupts, and with the same selection criteria. Basically this moves the problem of what is in the msi message into the architecture irq management code where it belongs. Not in a generic layer that doesn't have enough information to compose msi messages properly. Signed-off-by: Eric W. Biederman Cc: Ingo Molnar Cc: Thomas Gleixner Cc: Benjamin Herrenschmidt Cc: Rajesh Shah Cc: Andi Kleen Cc: "Protasevich, Natalie" Cc: "Luck, Tony" Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 1ce03373a7f4b5fa8ca5be02ff35229800a6e12b Author: Eric W. Biederman Date: Wed Oct 4 02:16:41 2006 -0700 [PATCH] genirq: msi: make the msi code irq based and not vector based The msi currently allocates irqs backwards. First it allocates a platform dependent routing value for an interrupt the ``vector'' and then it figures out from the vector which irq you are on. For ia64 this is fine. For x86 and x86_64 this is complete nonsense and makes an enourmous mess of the irq handling code and prevents some pretty significant cleanups in the code for handling large numbers of irqs. This patch refactors msi.c to work in terms of irqs and create_irq/destroy_irq for dynamically managing irqs. Hopefully this is finally a version of msi.c that is useful on more than just x86 derivatives. Signed-off-by: Eric W. Biederman Cc: Ingo Molnar Cc: Thomas Gleixner Cc: Benjamin Herrenschmidt Cc: Rajesh Shah Cc: Andi Kleen Cc: "Protasevich, Natalie" Cc: "Luck, Tony" Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit c4fa0bbf384496ae4acc0a150719d9d8fa8d11b3 Author: Eric W. Biederman Date: Wed Oct 4 02:16:40 2006 -0700 [PATCH] genirq: x86_64 irq: Dynamic irq support The current implementation of create_irq() is a hack but it is the current hack that msi.c uses, and unfortunately the ``generic'' apic msi ops depend on this hack. Thus we are this hack of assuming irq == vector until the depencencies in the generic irq code are removed. Signed-off-by: Eric W. Biederman Cc: Ingo Molnar Cc: Thomas Gleixner Cc: Benjamin Herrenschmidt Cc: Rajesh Shah Cc: Andi Kleen Cc: "Protasevich, Natalie" Cc: "Luck, Tony" Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 3fc471ede99579211c44b6a64829c4318976990f Author: Eric W. Biederman Date: Wed Oct 4 02:16:39 2006 -0700 [PATCH] genirq: i386 irq: Dynamic irq support The current implementation of create_irq() is a hack but it is the current hack that msi.c uses, and unfortunately the ``generic'' apic msi ops depend on this hack. Thus we are stuck this hack of assuming irq == vector until the depencencies in the generic msi code are removed. Signed-off-by: Eric W. Biederman Cc: Ingo Molnar Cc: Thomas Gleixner Cc: Benjamin Herrenschmidt Cc: Rajesh Shah Cc: Andi Kleen Cc: "Protasevich, Natalie" Cc: "Luck, Tony" Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit b6cf2583ba026ca563ff8b15805fcf30b8e192a7 Author: Eric W. Biederman Date: Wed Oct 4 02:16:38 2006 -0700 [PATCH] genirq: ia64 irq: Dynamic irq support [akpm@osdl.org: build fix] Signed-off-by: Eric W. Biederman Cc: Ingo Molnar Cc: Thomas Gleixner Cc: Benjamin Herrenschmidt Cc: Rajesh Shah Cc: Andi Kleen Cc: "Protasevich, Natalie" Cc: "Luck, Tony" Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 3a16d713626735f3016da0521b7bf251cd78e836 Author: Eric W. Biederman Date: Wed Oct 4 02:16:37 2006 -0700 [PATCH] genirq: irq: add a dynamic irq creation API With the msi support comes a new concept in irq handling, irqs that are created dynamically at run time. Currently the msi code allocates irqs backwards. First it allocates a platform dependent routing value for an interrupt the ``vector'' and then it figures out from the vector which irq you are on. This msi backwards allocator suffers from two basic problems. The allocator suffers because it is trying to do something that is architecture specific in a generic way making it brittle, inflexible, and tied to tightly to the architecture implementation. The alloctor also suffers from it's very backwards nature as it has tied things together that should have no dependencies. To solve the basic dynamic irq allocation problem two new architecture specific functions are added: create_irq and destroy_irq. create_irq takes no input and returns an unused irq number, that won't be reused until it is returned to the free poll with destroy_irq. The irq then can be used for any purpose although the only initial consumer is the msi code. destroy_irq takes an irq number allocated with create_irq and returns it to the free pool. Making this functionality per architecture increases the simplicity of the irq allocation code and increases it's flexibility. dynamic_irq_init() and dynamic_irq_cleanup() are added to automate the irq_desc initializtion that should happen for dynamic irqs. Signed-off-by: Eric W. Biederman Cc: Ingo Molnar Cc: Thomas Gleixner Cc: Benjamin Herrenschmidt Cc: Rajesh Shah Cc: Andi Kleen Cc: "Protasevich, Natalie" Cc: "Luck, Tony" Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 92db6d10bc1bc43330a4c540fa5b64c83d9d865f Author: Eric W. Biederman Date: Wed Oct 4 02:16:35 2006 -0700 [PATCH] genirq: msi: simplify the msi irq limit policy Currently we attempt to predict how many irqs we will be able to allocate with msi using pci_vector_resources and some complicated accounting, and then we only allow each device as many irqs as we think are available on average. Only the s2io driver even takes advantage of this feature all other drivers have a fixed number of irqs they need and bail if they can't get them. pci_vector_resources is inaccurate if anyone ever frees an irq. The whole implmentation is racy. The current irq limit policy does not appear to make sense with current drivers. So I have simplified things. We can revisit this we we need a more sophisticated policy. Signed-off-by: Eric W. Biederman Cc: Ingo Molnar Cc: Thomas Gleixner Cc: Benjamin Herrenschmidt Cc: Rajesh Shah Cc: Andi Kleen Cc: "Protasevich, Natalie" Cc: "Luck, Tony" Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 38bc0361303535c86f6b67b151a541728d7bdae6 Author: Eric W. Biederman Date: Wed Oct 4 02:16:34 2006 -0700 [PATCH] genirq: msi: refactor the msi_ops The current msi_ops are short sighted in a number of ways, this patch attempts to fix the glaring deficiences. - Report in msi_ops if a 64bit address is needed in the msi message, so we can fail 32bit only msi structures. - Send and receive a full struct msi_msg in both setup and target. This is a little cleaner and allows for architectures that need to modify the data to retarget the msi interrupt to a different cpu. - In target pass in the full cpu mask instead of just the first cpu in case we can make use of the full cpu mask. - Operate in terms of irqs and not vectors, currently there is still a 1-1 relationship but on architectures other than ia64 I expect this will change. Signed-off-by: Eric W. Biederman Cc: Ingo Molnar Cc: Thomas Gleixner Cc: Benjamin Herrenschmidt Cc: Rajesh Shah Cc: Andi Kleen Cc: "Protasevich, Natalie" Cc: "Luck, Tony" Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 0366f8f7137deb072991e4c50769c6da31f8940c Author: Eric W. Biederman Date: Wed Oct 4 02:16:33 2006 -0700 [PATCH] genirq: msi: implement helper functions read_msi_msg and write_msi_msg In support of this I also add a struct msi_msg that captures the the two address and one data field ina typical msi message, and I remember the pos and if the address is 64bit in struct msi_desc. This makes the code a little more readable and easier to maintain, and paves the way to further simplfications. Signed-off-by: Eric W. Biederman Cc: Ingo Molnar Cc: Thomas Gleixner Cc: Benjamin Herrenschmidt Cc: Rajesh Shah Cc: Andi Kleen Cc: "Protasevich, Natalie" Cc: "Luck, Tony" Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit dd159eeca971d594fa30176733b66d37acda82a3 Author: Eric W. Biederman Date: Wed Oct 4 02:16:32 2006 -0700 [PATCH] genirq: msi: make the msi boolean tests return either 0 or 1 This allows the output of the msi tests to be stored directly in a bit field. If you don't do this a value greater than one will be truncated and become 0. Changing true to false with bizare consequences. Signed-off-by: Eric W. Biederman Cc: Ingo Molnar Cc: Thomas Gleixner Cc: Benjamin Herrenschmidt Cc: Rajesh Shah Cc: Andi Kleen Cc: "Protasevich, Natalie" Cc: "Luck, Tony" Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 7bd007e480672c99d8656c7b7b12ef0549432c37 Author: Eric W. Biederman Date: Wed Oct 4 02:16:31 2006 -0700 [PATCH] genirq: msi: simplify msi enable and disable The problem. Because the disable routines leave the msi interrupts in all sorts of half enabled states the enable routines become impossible to implement correctly, and almost impossible to understand. Simplifing this allows me to simply kill the buggy reroute_msix_table, and generally makes the code more maintainable. Signed-off-by: Eric W. Biederman Cc: Ingo Molnar Cc: Thomas Gleixner Cc: Benjamin Herrenschmidt Cc: Rajesh Shah Cc: Andi Kleen Cc: "Protasevich, Natalie" Cc: "Luck, Tony" Cc: Rajesh Shah Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 0be6652f1e61b647f738eb25af057bf9551a9841 Author: Eric W. Biederman Date: Wed Oct 4 02:16:30 2006 -0700 [PATCH] genirq: x86_64 irq: Reenable migrating irqs to other cpus In the latest changes the code for migrating x86_64 irqs was dropped. This reads it in a fashion that will work even if we change the vector on level triggered irqs when we migrate them. [akpm@osdl.org: build fix] Signed-off-by: Eric W. Biederman Cc: Ingo Molnar Cc: Thomas Gleixner Cc: Benjamin Herrenschmidt Cc: Rajesh Shah Cc: Andi Kleen Cc: "Protasevich, Natalie" Cc: "Luck, Tony" Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit e7b946e98a456077dd6897f726f3d6197bd7e3b9 Author: Eric W. Biederman Date: Wed Oct 4 02:16:29 2006 -0700 [PATCH] genirq: irq: add moved_masked_irq Currently move_native_irq disables and renables the irq we are migrating to ensure we don't take that irq when we are actually doing the migration operation. Disabling the irq needs to happen but sometimes doing the work is move_native_irq is too late. On x86 with ioapics the irq move sequences needs to be: edge_triggered: mask irq. move irq. unmask irq. ack irq. level_triggered: mask irq. ack irq. move irq. unmask irq. We can easily perform the edge triggered sequence, with the current defintion of move_native_irq. However the level triggered case does not map well. For that I have added move_masked_irq, to allow me to disable the irqs around both the ack and the move. Q: Why have we not seen this problem earlier? A: The only symptom I have been able to reproduce is that if we change the vector before acknowleding an irq the wrong irq is acknowledged. Since we currently are not reprogramming the irq vector during migration no problems show up. We have to mask the irq before we acknowledge the irq or else we could hit a window where an irq is asserted just before we acknowledge it. Edge triggered irqs do not have this problem because acknowledgements do not propogate in the same way. Signed-off-by: Eric W. Biederman Cc: Ingo Molnar Cc: Thomas Gleixner Cc: Benjamin Herrenschmidt Cc: Rajesh Shah Cc: Andi Kleen Cc: "Protasevich, Natalie" Cc: "Luck, Tony" Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit a24ceab4f44f21749aa0b6bd38bee37c775e036f Author: Eric W. Biederman Date: Wed Oct 4 02:16:27 2006 -0700 [PATCH] genirq: irq: convert the move_irq flag from a 32bit word to a single bit The primary aim of this patchset is to remove maintenances problems caused by the irq infrastructure. The two big issues I address are an artificially small cap on the number of irqs, and that MSI assumes vector == irq. My primary focus is on x86_64 but I have touched other architectures where necessary to keep them from breaking. - To increase the number of irqs I modify the code to look at the (cpu, vector) pair instead of just looking at the vector. With a large number of irqs available systems with a large irq count no longer need to compress their irq numbers to fit. Removing a lot of brittle special cases. For acpi guys the result is that irq == gsi. - Addressing the fact that MSI assumes irq == vector takes a few more patches. But suffice it to say when I am done none of the generic irq code even knows what a vector is. In quick testing on a large Unisys x86_64 machine we stumbled over at least one driver that assumed that NR_IRQS could always fit into an 8 bit number. This driver is clearly buggy today. But this has become a class of bugs that it is now much easier to hit. This patch: This is a minor space optimization. In practice I don't think this has any affect because of our alignment constraints and the other fields but there is not point in chewing up an uncessary word and since we already read the flag field this should improve the cache hit ratio of the irq handler. Signed-off-by: Eric W. Biederman Cc: Ingo Molnar Cc: Thomas Gleixner Cc: Benjamin Herrenschmidt Cc: Rajesh Shah Cc: Andi Kleen Cc: "Protasevich, Natalie" Cc: "Luck, Tony" Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit f5b9ed7acdcfea4bf73a70dececa7483787503ed Author: Ingo Molnar Date: Wed Oct 4 02:16:26 2006 -0700 [PATCH] genirq: convert the i386 architecture to irq-chips This patch converts all the i386 PIC controllers (except VisWS and Voyager, which I could not test - but which should still work as old-style IRQ layers) to the new and simpler irq-chip interrupt handling layer. [akpm@osdl.org: build fix] [mingo@elte.hu: enable fasteoi handler for i386 level-triggered IO-APIC irqs] Signed-off-by: Ingo Molnar Signed-off-by: Thomas Gleixner Cc: Benjamin Herrenschmidt Cc: Roland Dreier Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit f29bd1ba68c8c6a0f50bd678bbd5a26674018f7c Author: Ingo Molnar Date: Wed Oct 4 02:16:25 2006 -0700 [PATCH] genirq: convert the x86_64 architecture to irq-chips This patch converts all the x86_64 PIC controllers layers to the new and simpler irq-chip interrupt handling layer. [mingo@elte.hu: The patch also enables the fasteoi handler for x86_64] Signed-off-by: Ingo Molnar Signed-off-by: Thomas Gleixner Cc: Benjamin Herrenschmidt Cc: Roland Dreier Cc: Andi Kleen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 0271eb947db2704a0ff8be68d72915ab021d1ead Author: Andrew Morton Date: Wed Oct 4 02:16:24 2006 -0700 [PATCH] fbdev: riva warning fix drivers/video/riva/fbdev.c: In function `riva_get_EDID_OF': drivers/video/riva/fbdev.c:1846: warning: assignment discards qualifiers from pointer target type This code is being bad: copying a pointer to read-only OF data into a non-const pointer. Cc: Paul Mackerras Cc: Benjamin Herrenschmidt Cc: "Antonino A. Daplas" Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 237fead619984cc48818fe12ee0ceada3f55b012 Author: Michael Halcrow Date: Wed Oct 4 02:16:22 2006 -0700 [PATCH] ecryptfs: fs/Makefile and fs/Kconfig eCryptfs is a stacked cryptographic filesystem for Linux. It is derived from Erez Zadok's Cryptfs, implemented through the FiST framework for generating stacked filesystems. eCryptfs extends Cryptfs to provide advanced key management and policy features. eCryptfs stores cryptographic metadata in the header of each file written, so that encrypted files can be copied between hosts; the file will be decryptable with the proper key, and there is no need to keep track of any additional information aside from what is already in the encrypted file itself. [akpm@osdl.org: updates for ongoing API changes] [bunk@stusta.de: cleanups] [akpm@osdl.org: alpha build fix] [akpm@osdl.org: cleanups] [tytso@mit.edu: inode-diet updates] [pbadari@us.ibm.com: generic_file_*_read/write() interface updates] [rdunlap@xenotime.net: printk format fixes] [akpm@osdl.org: make slab creation and teardown table-driven] Signed-off-by: Phillip Hellewell Signed-off-by: Michael Halcrow Signed-off-by: Erez Zadok Signed-off-by: Adrian Bunk Signed-off-by: Stephan Mueller Signed-off-by: "Theodore Ts'o" Signed-off-by: Badari Pulavarty Signed-off-by: Randy Dunlap Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit f7aa2638f288f4c67acdb55947472740bd27d27a Author: Cedric Le Goater Date: Wed Oct 4 02:16:21 2006 -0700 [PATCH] Fix linux/nfsd/const.h for make headers_check make headers_check fails on linux/nfsd/const.h. Since linux/sunrpc/msg_prot.h does not seem to export anything interesting for userspace, this patch moves it in the __KERNEL__ protected section. Signed-off-by: Cedric Le Goater Cc: David Woodhouse Cc: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 42ca09938157105c1f573c831a35e9c3e02eb354 Author: J.Bruce Fields Date: Wed Oct 4 02:16:20 2006 -0700 [PATCH] knfsd: nfsd4: actually use all the pieces to implement referrals Use all the pieces set up so far to implement referral support, allowing return of NFS4ERR_MOVED and fs_locations attribute. Signed-off-by: Manoj Naik Signed-off-by: Fred Isaman Signed-off-by: J. Bruce Fields Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 81c3f4130202a1dcb2b28ab56684eb5e9d43d8c1 Author: J.Bruce Fields Date: Wed Oct 4 02:16:19 2006 -0700 [PATCH] knfsd: nfsd4: xdr encoding for fs_locations Encode fs_locations attribute. Signed-off-by: Manoj Naik Signed-off-by: Fred Isaman Signed-off-by: J. Bruce Fields Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 933469190ed5915b0568bc564346bb8db718f460 Author: Manoj Naik Date: Wed Oct 4 02:16:18 2006 -0700 [PATCH] knfsd: nfsd4: fslocations data structures Define FS locations structures, some functions to manipulate them, and add code to parse FS locations in downcall and add to the exports structure. [bfields@fieldses.org: bunch of fixes and cleanups] Signed-off-by: Manoj Naik Signed-off-by: Fred Isaman Signed-off-by: J. Bruce Fields Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit b009a873de05c6e0d7613df3584b6dcb2e4280ee Author: J.Bruce Fields Date: Wed Oct 4 02:16:17 2006 -0700 [PATCH] knfsd: nfsd: store export path in export Store the export path in the svc_export structure instead of storing only the dentry. This will prevent the need for additional d_path calls to provide NFSv4 fs_locations support. Signed-off-by: J. Bruce Fields Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 21c0d8fdd95024ffa708a938099148b8f1078d46 Author: NeilBrown Date: Wed Oct 4 02:16:16 2006 -0700 [PATCH] knfsd: close a race-opportunity in d_splice_alias There is a possible race in d_splice_alias. Though __d_find_alias(inode, 1) will only return a dentry with DCACHE_DISCONNECTED set, it is possible for it to get cleared before the BUG_ON, and it is is not possible to lock against that. There are a couple of problems here. Firstly, the code doesn't match the comment. The comment describes a 'disconnected' dentry as being IS_ROOT as well as DCACHE_DISCONNECTED, however there is not testing of IS_ROOT anythere. A dentry is marked DCACHE_DISCONNECTED when allocated with d_alloc_anon, and remains DCACHE_DISCONNECTED while a path is built up towards the root. So a dentry can have a valid name and a valid parent and even grandparent, but will still be DCACHE_DISCONNECTED until a path to the root is created. Once the path to the root is complete, everything in the path gets DCACHE_DISCONNECTED cleared. So the fact that DCACHE_DISCONNECTED isn't enough to say that a dentry is free to be spliced in with a given name. This can only be allowed if the dentry does not yet have a name, so the IS_ROOT test is needed too. However even adding that test to __d_find_alias isn't enough. As d_splice_alias drops dcache_lock before calling d_move to perform the splice, it could race with another thread calling d_splice_alias to splice the inode in with a different name in a different part of the tree (in the case where a file has hard links). So that splicing code is only really safe for directories (as we know that directories only have one link). For directories, the caller of d_splice_alias will be holding i_mutex on the (unique) parent so there is no room for a race. A consequence of this is that a non-directory will never benefit from being spliced into a pre-exisiting dentry, but that isn't a problem. It is perfectly OK for a non-directory to have multiple dentries, some anonymous, some not. And the comment for d_splice_alias says that it only happens for directories anyway. Signed-off-by: Neil Brown Cc: Christoph Hellwig Cc: Al Viro Cc: Dipankar Sarma Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 44c556000a31e8079cfbb9a42a7edb93ca6b589a Author: NeilBrown Date: Wed Oct 4 02:16:15 2006 -0700 [PATCH] knfsd: fix auto-sizing of nfsd request/reply buffers totalram is measured in pages, not bytes, so PAGE_SHIFT must be used when trying to find 1/4096 of RAM. Cc: "J. Bruce Fields" Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 6b54dae2b0defb30babb0fe87b13463b9f4b2907 Author: NeilBrown Date: Wed Oct 4 02:16:15 2006 -0700 [PATCH] knfsd: lockd: fix refount on nsm If nlm_lookup_host finds what it is looking for it exits with an extra reference on the matching 'nsm' structure. So don't actually count the reference until we are (fairly) sure it is going to be used. Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit b66285cee3f9abad26cca6c9b848e1ad6b792d94 Author: J.Bruce Fields Date: Wed Oct 4 02:16:14 2006 -0700 [PATCH] knfsd: nfsd4: acls: fix handling of zero-length acls It is legal to have zero-length NFSv4 acls; they just deny everything. Also, nfs4_acl_nfsv4_to_posix will always return with pacl and dpacl set on success, so the caller doesn't need to check this. Signed-off-by: J. Bruce Fields Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit f3b64eb6efb1ef46f6629b66a429e7f2b5955003 Author: J.Bruce Fields Date: Wed Oct 4 02:16:13 2006 -0700 [PATCH] knfsd: nfsd4: acls: simplify nfs4_acl_nfsv4_to_posix interface There's no need to handle the case where the caller passes in null for pacl or dpacl; no caller does that, because it would be a dumb thing to do. Signed-off-by: J. Bruce Fields Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit b548edc2dd9440c561f3302cb9f212ef2d06a8ef Author: J.Bruce Fields Date: Wed Oct 4 02:16:12 2006 -0700 [PATCH] knfsd: nfsd4: acls: fix inheritance We can be a little more flexible about the flags allowed for inheritance (in particular, we can deal with either the presence or the absence of INHERIT_ONLY), but we should probably reject other combinations that we don't understand. Signed-off-by: J. Bruce Fields Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 09229edb68a3961db54174a2725055bd1589b4b8 Author: J.Bruce Fields Date: Wed Oct 4 02:16:11 2006 -0700 [PATCH] knfsd: nfsd4: acls: relax the nfsv4->posix mapping Use a different nfsv4->(draft posix) acl mapping which is 1. completely backwards compatible, 2. accepts any nfsv4 acl, and 3. errs on the side of restricting permissions. In detail: 1. completely backwards compatible: The new mapping produces the same result on any acl produced by the existing (draft posix)->nfsv4 mapping; the one exception is that we no longer attempt to guess the value of the mask by assuming certain denies represent the mask. Since the server still keeps track of the mask locally, sequences of chmod's will still be handled fine; the only thing this will change is sequences of chmod's with intervening read-modify-writes of the acl. That last case just isn't worth the trouble and the possible misrepresentations of the user's intent (if we guess that a certain deny indicates masking is in effect when it really isn't). 2. accepts any nfsv4 acl: That's not quite true: we still reject acls that use combinations of inheritance flags that we don't support. We also reject acls that attempt to explicitly deny read_acl or read_attributes permissions, or that attempt to deny write_acl or write_attributes permissions to the owner of the file. 3. errs on the side of restricting permissions: one exception to this last rule: we totally ignore some bits (write_owner, synchronize, read_named_attributes, etc.) that are completely alien to our filesystem semantics, in some cases even if that would mean ignoring an explicit deny that we have no intention of enforcing. Excepting that, the posix acl produced should be the most permissive acl that is not more permissive than the given nfsv4 acl. And the new code's shorter, too. Neato. Signed-off-by: J. Bruce Fields Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit d0ebd9c0e71d20ea8c2b4a071d2a2b4878ef07d6 Author: J.Bruce Fields Date: Wed Oct 4 02:16:10 2006 -0700 [PATCH] knfsd: nfsd4: clean up exp_pseudoroot The previous patch enables some minor simplification here. Signed-off-by: J. Bruce Fields Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit f38b20c64519bb812a49b9ef4e10d90367a5af5c Author: J.Bruce Fields Date: Wed Oct 4 02:16:09 2006 -0700 [PATCH] knfsd: nfsd4: refactor exp_pseudoroot We could be using more common code in exp_pseudoroot(). This will also simplify some changes we need to make later. Signed-off-by: J. Bruce Fields Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 8f8e05c5708d7e9017c47f395f8b1498f7f52922 Author: J.Bruce Fields Date: Wed Oct 4 02:16:08 2006 -0700 [PATCH] knfsd: svcrpc: use consistent variable name for the reply state The rpc reply has multiple levels of error returns. The code here contributes to the confusion by using "accept_statp" for a pointer to what the rfc (and wireshark, etc.) refer to as the "reply_stat". (The confusion is compounded by the fact that the rfc also has an "accept_stat" which follows the reply_stat in the succesful case.) Signed-off-by: J. Bruce Fields Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 5b304bc5bfccc82b856e876e829c260df8e67ff2 Author: J.Bruce Fields Date: Wed Oct 4 02:16:07 2006 -0700 [PATCH] knfsd: svcrpc: gss: fix failure on SVC_DENIED in integrity case If the request is denied after gss_accept was called, we shouldn't try to wrap the reply. We were checking the accept_stat but not the reply_stat. To check the reply_stat in _release, we need a pointer to before (rather than after) the verifier, so modify body_start appropriately. Signed-off-by: J. Bruce Fields Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 3c15a486643a103eaf068e5fb3b7f9d720d579a7 Author: J.Bruce Fields Date: Wed Oct 4 02:16:06 2006 -0700 [PATCH] knfsd: svcrpc: gss: factor out some common wrapping code Factor out some common code from the integrity and privacy cases. Signed-off-by: J. Bruce Fields Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 89e63ef609fb0064a47281e31e38010159c32d57 Author: Neil Brown Date: Wed Oct 4 02:16:06 2006 -0700 [PATCH] Convert lockd to use the newer mutex instead of the older semaphore Both the (recently introduces) nsm_sema and the older f_sema are converted over. Cc: Olaf Kirch Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit bc5fea4299b8bda5f73c6f79dc35d388caf8bced Author: Olaf Kirch Date: Wed Oct 4 02:16:05 2006 -0700 [PATCH] knfsd: register all RPC programs with portmapper by default The NFSACL patches introduced support for multiple RPC services listening on the same transport. However, only the first of these services was registered with portmapper. This was perfectly fine for nfsacl, as you traditionally do not want these to show up in a portmapper listing. The patch below changes the default behavior to always register all services listening on a given transport, but retains the old behavior for nfsacl services. Signed-off-by: Olaf Kirch Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 0ade060ee51b9b6cf18d580405dc9ab90067f69f Author: Olaf Kirch Date: Wed Oct 4 02:16:04 2006 -0700 [PATCH] knfsd: lockd: fix use of h_nextrebind nlmclnt_recovery would try to force a portmap rebind by setting host->h_nextrebind to 0. The right thing to do here is to set it to the current time. Signed-off-by: Olaf Kirch Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 460f5cac1e24e947509b6112c99c5bc9ff687b45 Author: Olaf Kirch Date: Wed Oct 4 02:16:03 2006 -0700 [PATCH] knfsd: export nsm_local_state to user space via sysctl Every NLM call includes the client's NSM state. Currently, the Linux client always reports 0 - which seems not to cause any problems, but is not what the protocol says. This patch exposes the kernel's internal variable to user space via a sysctl, which can be set at system boot time by statd. Signed-off-by: Olaf Kirch Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 39be4502cb75dc26007fe1659735b26c8e63fcc6 Author: Olaf Kirch Date: Wed Oct 4 02:16:03 2006 -0700 [PATCH] knfsd: match GRANTED_RES replies using cookies When we send a GRANTED_MSG call, we current copy the NLM cookie provided in the original LOCK call - because in 1996, some broken clients seemed to rely on this bug. However, this means the cookies are not unique, so that when the client's GRANTED_RES message comes back, we cannot simply match it based on the cookie, but have to use the client's IP address in addition. Which breaks when you have a multi-homed NFS client. The X/Open spec explicitly mentions that clients should not expect the same cookie; so one may hope that any clients that were broken in 1996 have either been fixed or rendered obsolete. Signed-off-by: Olaf Kirch Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 031d869d0e0be18cfe35526be5608225b8f0a7be Author: Olaf Kirch Date: Wed Oct 4 02:16:02 2006 -0700 [PATCH] knfsd: make nlmclnt_next_cookie SMP safe The way we incremented the NLM cookie in nlmclnt_next_cookie was not thread safe. This patch changes the counter to an atomic_t Signed-off-by: Olaf Kirch Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit abd1f50094cad9dff6d68ada98b495549f52fc30 Author: Olaf Kirch Date: Wed Oct 4 02:16:01 2006 -0700 [PATCH] knfsd: lockd: optionally use hostnames for identifying peers This patch adds the nsm_use_hostnames sysctl and module param. If set, lockd will use the client's name (as given in the NLM arguments) to find the NSM handle. This makes recovery work when the NFS peer is multi-homed, and the reboot notification arrives from a different IP than the original lock calls. Signed-off-by: Olaf Kirch Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 350fce8dbf43f7d441b77366851c9ce3cd28d6dc Author: NeilBrown Date: Wed Oct 4 02:16:00 2006 -0700 [PATCH] knfsd: simplify nlmsvc_invalidate_all As a result of previous patches, the loop in nlmsvc_invalidate_all just sets h_expires for all client/hosts to 0 (though does it in a very complicated way). This was possibly meant to trigger early garbage collection but half the time '0' is in the future and so it infact delays garbage collection. Pre-aging the 'hosts' is not really needed at this point anyway so we throw out the loop and nlm_find_client which is no longer needed. Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit c53c1bb94f30cecee79ca0a8e9977640338283be Author: Olaf Kirch Date: Wed Oct 4 02:16:00 2006 -0700 [PATCH] knfsd: lockd: Add nlm_destroy_host This patch moves the host destruction code out of nlm_host_gc into a function of its own. Signed-off-by: Olaf Kirch Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit f2af793db02d2c2f677bdb5bf8e0efdcbf9c0256 Author: Olaf Kirch Date: Wed Oct 4 02:15:59 2006 -0700 [PATCH] knfsd: lockd: make nlm_traverse_* more flexible This patch makes nlm_traverse{locks,blocks,shares} and friends use a function pointer rather than a "action" enum. This function pointer is given two nlm_hosts (one given by the caller, the other taken from the lock/block/share currently visited), and is free to do with them as it wants. If it returns a non-zero value, the lockd/block/share is released. Signed-off-by: Olaf Kirch Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 07ba80635117c136714084e019375aa508365375 Author: Olaf Kirch Date: Wed Oct 4 02:15:58 2006 -0700 [PATCH] knfsd: change nlm_file to use a hlist This changes struct nlm_file and the nlm_files hash table to use a hlist instead of the home-grown lists. This allows us to remove f_hash which was only used to find the right hash chain to delete an entry from. It also increases the size of the nlm_files hash table from 32 to 128. Signed-off-by: Olaf Kirch Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 68a2d76cea4234bc027df23085d9df4f2171f7fc Author: Olaf Kirch Date: Wed Oct 4 02:15:57 2006 -0700 [PATCH] knfsd: lockd: Change list of blocked list to list_node This patch changes the nlm_blocked list to use a list_node instead of homegrown linked list handling. Signed-off-by: Olaf Kirch Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 0cea32761a2f954c6d42ca79d7d1e6b9663b1e4a Author: Olaf Kirch Date: Wed Oct 4 02:15:56 2006 -0700 [PATCH] knfsd: lockd: make the hash chains use a hlist_node Get rid of the home-grown singly linked lists for the nlm_host hash table. Signed-off-by: Olaf Kirch Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 9502c52259f7038b6c1e31532e22884716a56b1a Author: Olaf Kirch Date: Wed Oct 4 02:15:56 2006 -0700 [PATCH] knfsd: lockd: make the nsm upcalls use the nsm_handle This converts the statd upcalls to use the nsm_handle This means that we only register each host once with statd, rather than registering each host/vers/protocol triple. Signed-off-by: Olaf Kirch Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 5c8dd29ca7fc7483690cef4306549742d534f2a2 Author: Olaf Kirch Date: Wed Oct 4 02:15:55 2006 -0700 [PATCH] knfsd: lockd: Make nlm_host_rebooted use the nsm_handle This patch makes the SM_NOTIFY handling understand and use the nsm_handle. To make it a bit clear what is happening: nlmclent_prepare_reclaim and nlmclnt_finish_reclaim get open-coded into 'reclaimer' The result is tidied up. Then some of that functionality is moved out into nlm_host_rebooted (which calls nlmclnt_recovery which starts a thread which runs reclaimer). Also host_rebooted now finds an nsm_handle rather than a host, then then iterates over all hosts and deals with each host that shares that nsm_handle. Signed-off-by: Olaf Kirch Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit f0737a39a64a9df32bb045c54e1cdf6cecdcbdd7 Author: Olaf Kirch Date: Wed Oct 4 02:15:54 2006 -0700 [PATCH] knfsd: misc minor fixes, indentation changes cleans up some code in lockd/host.c, fixes an error printk and makes it a fatal BUG if nlmsvc_free_host_resources fails. Signed-off-by: Olaf Kirch Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 8dead0dbd478f35fd943f3719591e5af1ac0950d Author: Olaf Kirch Date: Wed Oct 4 02:15:53 2006 -0700 [PATCH] knfsd: lockd: introduce nsm_handle This patch introduces the nsm_handle, which is shared by all nlm_host objects referring to the same client. With this patch applied, all nlm_hosts from the same address will share the same nsm_handle. A future patch will add sharing by name. Note: this patch changes h_name so that it is no longer guaranteed to be an IP address of the host. When the host represents an NFS server, h_name will be the name passed in the mount call. When the host represents a client, h_name will be the name presented in the lock request received from the client. A h_name is only used for printing informational messages, this change should not be significant. Signed-off-by: Olaf Kirch Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit db4e4c9a9e741ee812e1febf5e386d6a24218a71 Author: Olaf Kirch Date: Wed Oct 4 02:15:52 2006 -0700 [PATCH] knfsd: when looking up a lockd host, pass hostname & length This patch adds the peer's hostname (and name length) to all calls to nlm*_lookup_host functions. A subsequent patch will make use of these (is requested by a sysctl). Signed-off-by: Olaf Kirch Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit cf712c24d72341effcfd28330b83b49f77cb627b Author: Olaf Kirch Date: Wed Oct 4 02:15:52 2006 -0700 [PATCH] knfsd: consolidate common code for statd->lockd notification Common code from nlm4svc_proc_sm_notify and nlmsvc_proc_sm_notify is moved into a new nlm_host_rebooted. This is in preparation of a patch that will change the reboot notification handling entirely. Signed-off-by: Olaf Kirch Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 977faf392fc898407554bbe7338d57b29e3660cf Author: Olaf Kirch Date: Wed Oct 4 02:15:51 2006 -0700 [PATCH] knfsd: hide use of lockd's h_monitored flag This patch moves all checks of the h_monitored flag into the nsm_monitor/unmonitor functions. A subsequent patch will replace the mechanism by which we mark a host as being monitored. There is still one occurence of h_monitored outside of mon.c and that is in clntlock.c where we respond to a reboot. The subsequent patch will modify this too. Signed-off-by: Olaf Kirch Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 7b2b1fee30df7e2165525cd03f7d1d01a3a56794 Author: Greg Banks Date: Wed Oct 4 02:15:50 2006 -0700 [PATCH] knfsd: knfsd: cache ipmap per TCP socket Speed up high call-rate workloads by caching the struct ip_map for the peer on the connected struct svc_sock instead of looking it up in the ip_map cache hashtable on every call. This helps workloads using AUTH_SYS authentication over TCP. Testing was on a 4 CPU 4 NIC Altix using 4 IRIX clients, each with 16 synthetic client threads simulating an rsync (i.e. recursive directory listing) workload reading from an i386 RH9 install image (161480 regular files in 10841 directories) on the server. That tree is small enough to fill in the server's RAM so no disk traffic was involved. This setup gives a sustained call rate in excess of 60000 calls/sec before being CPU-bound on the server. Profiling showed strcmp(), called from ip_map_match(), was taking 4.8% of each CPU, and ip_map_lookup() was taking 2.9%. This patch drops both contribution into the profile noise. Note that the above result overstates this value of this patch for most workloads. The synthetic clients are all using separate IP addresses, so there are 64 entries in the ip_map cache hash. Because the kernel measured contained the bug fixed in commit commit 1f1e030bf75774b6a283518e1534d598e14147d4 and was running on 64bit little-endian machine, probably all of those 64 entries were on a single chain, thus increasing the cost of ip_map_lookup(). With a modern kernel you would need more clients to see the same amount of performance improvement. This patch has helped to scale knfsd to handle a deployment with 2000 NFS clients. Signed-off-by: Greg Banks Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit fce1456a19f5c08b688c29f00ef90fdfa074c79b Author: Greg Banks Date: Wed Oct 4 02:15:49 2006 -0700 [PATCH] knfsd: make nfsd readahead params cache SMP-friendly Make the nfsd read-ahead params cache more SMP-friendly by changing the single global list and lock into a fixed 16-bucket hashtable with per-bucket locks. This reduces spinlock contention in nfsd_read() on read-heavy workloads on multiprocessor servers. Testing was on a 4 CPU 4 NIC Altix using 4 IRIX clients each doing 1K streaming reads at full line rate. The server had 128 nfsd threads, which sizes the RA cache at 256 entries, of which only a handful were used. Flat profiling shows nfsd_read(), including the inlined nfsd_get_raparms(), taking 10.4% of each CPU. This patch drops the contribution from nfsd() to 1.71% for each CPU. Signed-off-by: Greg Banks Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 596bbe53eb3abfe7326b2f5e8afd614265c319c8 Author: NeilBrown Date: Wed Oct 4 02:15:48 2006 -0700 [PATCH] knfsd: Allow max size of NFSd payload to be configured The max possible is the maximum RPC payload. The default depends on amount of total memory. The value can be set within reason as long as no nfsd threads are currently running. The value can also be ready, allowing the default to be determined after nfsd has started. Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 7adae489fe794e3e203ff168595f635d0b845e59 Author: Greg Banks Date: Wed Oct 4 02:15:47 2006 -0700 [PATCH] knfsd: Prepare knfsd for support of rsize/wsize of up to 1MB, over TCP The limit over UDP remains at 32K. Also, make some of the apparently arbitrary sizing constants clearer. The biggest change here involves replacing NFSSVC_MAXBLKSIZE by a function of the rqstp. This allows it to be different for different protocols (udp/tcp) and also allows it to depend on the servers declared sv_bufsiz. Note that we don't actually increase sv_bufsz for nfs yet. That comes next. Signed-off-by: Greg Banks Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 3cc03b164cf01c6f36e64720b58610d292fb26f7 Author: NeilBrown Date: Wed Oct 4 02:15:47 2006 -0700 [PATCH] knfsd: Avoid excess stack usage in svc_tcp_recvfrom .. by allocating the array of 'kvec' in 'struct svc_rqst'. As we plan to increase RPCSVC_MAXPAGES from 8 upto 256, we can no longer allocate an array of this size on the stack. So we allocate it in 'struct svc_rqst'. However svc_rqst contains (indirectly) an array of the same type and size (actually several, but they are in a union). So rather than waste space, we move those arrays out of the separately allocated union and into svc_rqst to share with the kvec moved out of svc_tcp_recvfrom (various arrays are used at different times, so there is no conflict). Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 4452435948424e5322c2a2fefbdc2cf3732cc45d Author: NeilBrown Date: Wed Oct 4 02:15:46 2006 -0700 [PATCH] knfsd: Replace two page lists in struct svc_rqst with one We are planning to increase RPCSVC_MAXPAGES from about 8 to about 256. This means we need to be a bit careful about arrays of size RPCSVC_MAXPAGES. struct svc_rqst contains two such arrays. However the there are never more that RPCSVC_MAXPAGES pages in the two arrays together, so only one array is needed. The two arrays are for the pages holding the request, and the pages holding the reply. Instead of two arrays, we can simply keep an index into where the first reply page is. This patch also removes a number of small inline functions that probably server to obscure what is going on rather than clarify it, and opencode the needed functionality. Also remove the 'rq_restailpage' variable as it is *always* 0. i.e. if the response 'xdr' structure has a non-empty tail it is always in the same pages as the head. check counters are initilised and incr properly check for consistant usage of ++ etc maybe extra some inlines for common approach general review Signed-off-by: Neil Brown Cc: Magnus Maatta Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 5680c44632053a6c9464bca43083f01776d318da Author: NeilBrown Date: Wed Oct 4 02:15:45 2006 -0700 [PATCH] knfsd: Fixed handling of lockd fail when adding nfsd socket Arrgg.. We cannot 'lockd_up' before 'svc_addsock' as we don't know the protocol yet.... So switch it around again and save the name of the created sockets so that it can be closed if lock_up fails. Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit cda9e0cd8a6b30ccc32edced066c378fbd87003d Author: NeilBrown Date: Wed Oct 4 02:15:44 2006 -0700 [PATCH] knfsd: Protect update to sn_nrthreads with lock_kernel Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 37a034729ae611295bbb8e925333d4d54d7c1ebc Author: NeilBrown Date: Wed Oct 4 02:15:44 2006 -0700 [PATCH] knfsd: call lockd_down when closing a socket via a write to nfsd/portlist The refcount that nfsd holds on lockd is based on the number of open sockets. So when we close a socket, we should decrement the ref (with lockd_down). Currently when a socket is closed via writing to the portlist file, that doesn't happen. So: make sure we get an error return if the socket that was requested does is not found, and call lockd_down if it was. Cc: "J. Bruce Fields" Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 7ed94296a660a61989b5d54f0c4bb804f30567d3 Author: NeilBrown Date: Wed Oct 4 02:15:43 2006 -0700 [PATCH] knfsd: nfsd: lockdep annotation fix nfsv2 needs the I_MUTEX_PARENT on the directory when creating a file too. Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 1d02a030b01443f1cb81f22750113fe9a98109d9 Author: Jiri Slaby Date: Wed Oct 4 02:15:42 2006 -0700 [PATCH] hisax niccy cleanup Whitespace cleanup, delete unnecesasry parenthesis and braces. Signed-off-by: Jiri Slaby Acked-by: Karsten Keil Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 176f00ffed3ef94a198326fbf6a5db64f1cf73ad Author: Pierre Ossman Date: Wed Oct 4 02:15:41 2006 -0700 [PATCH] mmc: properly use the new multi block-write error handling Use the new multi block-write error reporting flag and properly tell the block layer how much data was transferred before the error. Signed-off-by: Pierre Ossman Cc: Russell King Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 7104e2d5a85b4b786d6a63568beffe1e185547bb Author: Pierre Ossman Date: Wed Oct 4 02:15:41 2006 -0700 [PATCH] mmc: use own work queue The MMC layer uses the standard work queue for doing card detection. As this queue is shared with other crucial subsystems, the effects of a long (and perhaps buggy) detection can cause the system to be unusable. E.g. the keyboard stops working while the detection routine is running. The solution is to add a specific mmc work queue to run the detection code in. This is similar to how other subsystems handle detection (a full kernel thread is the most common theme). Signed-off-by: Pierre Ossman Cc: Russell King Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 8a4da1430f7f2a16df3be9c7b5d55ba4e75b708c Author: Pierre Ossman Date: Wed Oct 4 02:15:40 2006 -0700 [PATCH] mmc: avoid some resets without card Some Ricoh controllers only respect a full reset when there is no card in the slot. As we wait for the reset to complete, we must avoid even requesting those resets on the buggy controllers. Signed-off-by: Pierre Ossman Cc: Russell King Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 5f25a66f6bbac563c94af94f03491b3ae43c40af Author: Pierre Ossman Date: Wed Oct 4 02:15:39 2006 -0700 [PATCH] mmc: fix MMIO vs memory races in sdhci Sprinkle some mmiowb() where needed (writeX() before unlock()). Signed-off-by: Pierre Ossman Cc: Russell King Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit f9565129993446e16678cfc4d9c7f3b7e75eecbd Author: Alex Dubov Date: Wed Oct 4 02:15:38 2006 -0700 [PATCH] mmc: driver for TI FlashMedia card reader - Kconfig/Makefile Signed-off-by: Alex Dubov Cc: Daniel Qarras Acked-by: Pierre Ossman Cc: Russell King Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 4020f2d7f0b0e68b92bec9a3e1f4a54a7a9dc672 Author: Alex Dubov Date: Wed Oct 4 02:15:37 2006 -0700 [PATCH] mmc: driver for TI FlashMedia card reader - source Driver for TI Flash Media card reader. At present, only MMC/SD cards are supported. [akpm@osdl.org: cleanups, build fixes] Signed-off-by: Alex Dubov Cc: Daniel Qarras Acked-by: Pierre Ossman Cc: Russell King Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 856fe98f168e5b80b053979769af2514aab96d6b Author: Jim Cromie Date: Wed Oct 4 02:15:35 2006 -0700 [PATCH] scx200_hrt: fix precedence bug manifesting as 27x clock in 1 MHz mode Fix paren-placement / precedence bug breaking initialization for 1 MHz clock mode. Also fix comment spelling error, and fence-post (off-by-one) error on symbol used in request_region. Addresses http://bugzilla.kernel.org/show_bug.cgi?id=7242 Thanks alexander.krause@erazor-zone.de, dzpost@dedekind.net, for the reports and patch test, and phelps@mantara.com for the independent patch and verification. Signed-off-by: Jim Cromie Cc: Cc: Cc: Acked-by: John Stultz Cc: Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 9bded00bf62090ebc9d6e8be640cdb69e8497db6 Author: Kenji Kaneshige Date: Wed Oct 4 02:15:34 2006 -0700 [PATCH] fix "PCI: assign ioapic resource at hotplug" Roland Dreier wrote: > The change "PCI: assign ioapic resource at hotplug" (commit > 23186279658cea6d42a050400d3e79c56cb459b4 in Linus's tree) makes > networking stop working on my system (SuperMicro H8QC8 with four > dual-core Opteron 885 CPUs). In particular, the on-board NIC stops > working, probably because it gets assigned the wrong IRQ (225 in the > non-working case, 217 in the working case) > > With that patch applied, e1000 doesn't work. Reverting just that > patch (shown below) from Linus's latest tree fixes things for me. > The cause of this problem might be an wrong assumption that the 'start' member of resource structure for ioapic device has non-zero value if the resources are assigned by firmware. The 'start' member of ioapic device seems not to be set even though the resources were actually assigned to ioapic devices by firmware. Cc: Kenji Kaneshige Cc: MUNEDA Takahiro Cc: Satoru Takeuchi Cc: Kristen Carlson Accardi Cc: Greg Kroah-Hartman Cc: Roland Dreier Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 18e39913d41ca4d63e9e94a2ad25b5ea31caaa7f Author: David Gibson Date: Wed Oct 4 02:15:32 2006 -0700 [PATCH] Fix spurious error on TAGS target when missing defconfig Not all architectures have a file named 'defconfig' (e.g. powerpc). However the make TAGS and make tags targets search such files for tags, causing an error message when they don't exist. This patch addresses the problem by instructing xargs not to run the tags program if there are no matching files. Signed-off-by: David Gibson Cc: Sam Ravnborg Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 585b7747d63e3a5f65628d21c1745edd926d7897 Author: Eric Sesterhenn Date: Wed Oct 4 02:15:30 2006 -0700 [PATCH] Remove unnecessary check in fs/reiserfs/inode.c Since all callers dereference dir, we dont need this check. Coverity id #337. Signed-off-by: Eric Sesterhenn Cc: Jeff Mahoney Cc: Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit add216608a63713b8a2c4545698d5ae02e27ac3b Author: Thomas Maier Date: Wed Oct 4 02:15:30 2006 -0700 [PATCH] pktcdvd: rename a variable for better readability pktcdvd: Rename a variable for better readability. Signed-off-by: Thomas Maier Signed-off-by: Peter Osterlund Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 7822082d4e054fbdec8cf26590a350e3496c5cc9 Author: Thomas Maier Date: Wed Oct 4 02:15:28 2006 -0700 [PATCH] pktcdvd: Replace pktcdvd strings with macro DRIVER_NAME. pktcdvd: Replace pktcdvd strings with macro DRIVER_NAME. Signed-off-by: Thomas Maier Signed-off-by: Peter Osterlund Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit d321765f7cbc2dc0683374c91bb3720d57331d37 Author: Jiri Slaby Date: Wed Oct 4 02:15:28 2006 -0700 [PATCH] Char: serial167, remove useless tty check serial167, remove useless tty check tty is dereferenced before it is checked to be non-NULL. Remove such check. Signed-off-by: Jiri Slaby Cc: Alan Cox Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit b3218a79aa3d58b975b066c300153a8520f7051c Author: Jiri Slaby Date: Wed Oct 4 02:15:27 2006 -0700 [PATCH] char: kill unneeded memsets char, another tmp_buf cleanup No need to allocate one page as a side buffer. It's no more used. Clean this (de)allocs of this useless memory pages in char subtree. Signed-off-by: Jiri Slaby Acked-by: Alan Cox Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 1d2c8eea698514cfaa53fc991b960791d09508e1 Author: Christoph Hellwig Date: Wed Oct 4 02:15:25 2006 -0700 [PATCH] slab: clean up leak tracking ifdefs a little bit - rename ____kmalloc to kmalloc_track_caller so that people have a chance to guess what it does just from it's name. Add a comment describing it for those who don't. Also move it after kmalloc in slab.h so people get less confused when they are just looking for kmalloc - move things around in slab.c a little to reduce the ifdef mess. [penberg@cs.helsinki.fi: Fix up reversed #ifdef] Signed-off-by: Christoph Hellwig Signed-off-by: Pekka Enberg Cc: Christoph Lameter Cc: Al Viro Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 88ca3b94e82e763ef90c8e57cacd51a3c143ea62 Author: Randy Dunlap Date: Wed Oct 4 02:15:25 2006 -0700 [PATCH] page_alloc: fix kernel-doc and func. declaration Fix kernel-doc and function declaration (missing "void") in mm/page_alloc.c. Add mm/page_alloc.c to kernel-api.tmpl in DocBook. mm/page_alloc.c:2589:38: warning: non-ANSI function declaration of function 'remove_all_active_ranges' Signed-off-by: Randy Dunlap Acked-by: Christoph Lameter Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit fe1668ae5bf0145014c71797febd9ad5670d5d05 Author: Chen, Kenneth W Date: Wed Oct 4 02:15:24 2006 -0700 [PATCH] enforce proper tlb flush in unmap_hugepage_range Spotted by Hugh that hugetlb page is free'ed back to global pool before performing any TLB flush in unmap_hugepage_range(). This potentially allow threads to abuse free-alloc race condition. The generic tlb gather code is unsuitable to use by hugetlb, I just open coded a page gathering list and delayed put_page until tlb flush is performed. Cc: Hugh Dickins Signed-off-by: Ken Chen Acked-by: William Irwin Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit e80ee884ae0e3794ef2b65a18a767d502ad712ee Author: Nick Piggin Date: Wed Oct 4 02:15:23 2006 -0700 [PATCH] mm: micro optimise zone_watermark_ok Having min be a signed quantity means gcc can't turn high latency divides into shifts. There happen to be two such divides for GFP_ATOMIC (ie. networking, ie. important) allocations, one of which depends on the other. Fixing this makes code smaller as a bonus. Shame on somebody (probably me). Signed-off-by: Nick Piggin Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit b2abacf3a2699a8020829c85c16f358ba85cecaf Author: Henrik Kretzschmar Date: Wed Oct 4 02:15:22 2006 -0700 [PATCH] mm: fix in kerneldoc Fixes an kerneldoc error. Signed-off-by: Henrik Kretzschmar Cc: "Randy.Dunlap" Acked-by: Christoph Hellwig Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit e95be9a5326f0f6d314a7aa04a3c0c0e67fa976b Author: Daniel Walker Date: Wed Oct 4 02:15:21 2006 -0700 [PATCH] docs: small kbuild cleanup While reading this I noticed that the contents of this document list section "3.8 Command line dependency" but it doesn't exist in the document. Signed-off-by: Daniel Walker Cc: Sam Ravnborg Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 4e776b1d5e976d6bb2aafb177dde7d5f8d2bf37f Author: Andrew Morton Date: Wed Oct 4 02:15:20 2006 -0700 [PATCH] hdrcheck permission fix Don't require that scripts/hdrcheck.sh be executable - shit happens... Cc: Sam Ravnborg Acked-by: David Woodhouse Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit b119f13f56a7a47915278ab5eb3c666ca5dbb067 Author: Cedric Le Goater Date: Wed Oct 4 02:15:19 2006 -0700 [PATCH] ipc: headers_check fix Fix headers_check #ifdef __KERNEL__ stuff. Signed-off-by: Cedric Le Goater All-the-fault-of: David Woodhouse Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 5f024a251f0b3b179bbc8fc62f3a650e49359db5 Author: Andrew Morton Date: Sun Oct 1 16:17:13 2006 -0400 [PARISC] Kill wall_jiffies use wall_jiffies and jiffies are now equal, so this is a noop... Signed-off-by: Andrew Morton Signed-off-by: Kyle McMartin commit 22fced881122f7fc6f5f259dca03ac6d5c601404 Author: Helge Deller Date: Sat Sep 30 15:45:58 2006 +0200 [PARISC] Honour "panic_on_oops" sysctl Signed-off-by: Helge Deller Signed-off-by: Kyle McMartin commit dc02747da7897cb89b62bb08aeb06fa0bb1e7319 Author: Matthew Wilcox Date: Sun Sep 24 13:35:50 2006 -0600 [PARISC] Fix fs/binfmt_som.c Fix compilation (missing include of a.out.h) Fix security hole (need to call unshare_files) Signed-off-by: Matthew Wilcox Signed-off-by: Kyle McMartin commit 8d0b7d1055bedca784b143b0af9b37bd971b7cd2 Author: Matthew Wilcox Date: Wed Sep 20 21:44:09 2006 -0600 [PARISC] Export clear_user_page to modules Signed-off-by: Matthew Wilcox Signed-off-by: Kyle McMartin commit 99b6e9be71b9ad2c50c0d160b5af18848fee466d Author: Matthew Wilcox Date: Wed Sep 20 20:36:42 2006 -0600 [PARISC] Make DMA routines more stubby We were pretending to use the GENERIC_ISA_DMA routines, but never selected that symbol. Since ISA DMA is known to not work right now, just remove the attempts to acquire the dma_spin_lock to fix compile warnings. Signed-off-by: Matthew Wilcox Signed-off-by: Kyle McMartin commit f312094556619aed849862089938c14aa6a5b84b Author: Matthew Wilcox Date: Tue Sep 19 19:37:09 2006 -0600 [PARISC] Define pci_get_legacy_ide_irq We can compile at least one IDE driver that refers to this. We can't use the asm-generic file because we have our own definitions of pcibios_resource_to_bus etc. Signed-off-by: Matthew Wilcox Signed-off-by: Kyle McMartin commit d207ac0f7c9736782bfa51cff2109b74d26c3622 Author: Matthew Wilcox Date: Tue Sep 19 19:32:42 2006 -0600 [PARISC] Fix CONFIG_DEBUG_SPINLOCK Joel Soete points out that we refer to pa_tlb_lock but only define it if CONFIG_SMP which breaks a uniprocessor build with CONFIG_DEBUG_SPINLOCK enabled. No module refers to pa_tlb_lock, so we can delete the export. Signed-off-by: Matthew Wilcox Signed-off-by: Kyle McMartin commit 32f468139209459c3293a0895cf5b8e66ccc30a5 Author: Matthew Wilcox Date: Tue Sep 19 16:44:38 2006 -0600 [PARISC] Fix HPUX compat compile with current GCC GCC no longer allows a cast as lvalue; fix the same way fs/readdir.c was Signed-off-by: Matthew Wilcox Signed-off-by: Kyle McMartin commit 01232e932988fcf6ad87be49f69e633dd652a46d Author: Matthew Wilcox Date: Tue Sep 19 16:37:01 2006 -0600 [PARISC] Fix iounmap compile warning iounmap's argument needs to be both const and volatile, otherwise we'll get warnings that we're discarding pointer qualifiers Signed-off-by: Matthew Wilcox Signed-off-by: Kyle McMartin commit 08a6436816f7a16113c73be767ee8d50440e494e Author: Kyle McMartin Date: Thu Aug 24 21:33:40 2006 -0400 [PARISC] Add support for Quicksilver AGPGART Signed-off-by: Kyle McMartin commit 983daeec99f07fca0a8a9180ba1ca65bbd40c820 Author: Kyle McMartin Date: Fri Aug 25 12:28:24 2006 -0400 [PARISC] Move LBA and SBA register defines to the common ropes.h header. This will allow the use of more constants in the agpgart driver. Signed-off-by: Kyle McMartin commit 1790cf9111f61d360d861901b97eba4de3b5414c Author: Kyle McMartin Date: Thu Aug 24 21:32:49 2006 -0400 [PARISC] Create shared header Pull out struct sba_device and struct lba_device into a common ropes.h header. Also fold the parisc portion of iosapic.h into this file. (Then delete the useless portion of iosapic.h) Signed-off-by: Kyle McMartin commit b0eecc4da9c0a5261711e0d83280fd5d1e3db742 Author: Kyle McMartin Date: Thu Aug 24 21:31:41 2006 -0400 [PARISC] Stash the lba_device in its struct device drvdata Signed-off-by: Kyle McMartin commit 1b240f415f42204ff5a885c1c552b26a2ee780a1 Author: Kyle McMartin Date: Thu Aug 24 21:30:19 2006 -0400 [PARISC] Generalize IS_ASTRO et al to take a parisc_device like IS_ELROY. Also remove the useless caching of the parisc_device_id in struct sba_device. Signed-off-by: Kyle McMartin commit ba9877b6734fb0313bca99ae2077613f24ff5b5c Author: Kyle McMartin Date: Thu Aug 24 21:28:58 2006 -0400 [PARISC] Pretty print the name of the lba type on kernel boot (it's pretty useless telling a user they have a whole bunch of TR%d.%d LBAs) Signed-off-by: Kyle McMartin commit 7886089e3c06518c5e65675a932922f915e20e77 Author: Matthew Wilcox Date: Tue Sep 12 05:19:15 2006 -0600 [PARISC] Remove some obsolete comments and I checked that Reo is similar to Ike Signed-off-by: Matthew Wilcox Signed-off-by: Kyle McMartin commit 8a63674f70ac443d166b746d6c04154f8ee9de7b Author: Matthew Wilcox Date: Tue Sep 12 05:17:59 2006 -0600 [PARISC] Add hardware found in the rp8400 Signed-off-by: Matthew Wilcox Signed-off-by: Kyle McMartin commit 7085689ed135f94108e46c372015c6f5cd3372a3 Author: James Bottomley Date: Sat Sep 9 12:36:25 2006 -0700 [PARISC] Allow nested interrupts Our prior mode of operation didn't allow nested interrupts because it makes the interrupt code much simpler. However, nested interrupts are better for latency. This code uses the EIEM register to simulate level interrupts and thus achieve nesting. Signed-off-by: James Bottomley Signed-off-by: Kyle McMartin commit 6e5dc42b5add25c94ce0e95da87122f91b4bfdb3 Author: Grant Grundler Date: Sun Sep 10 12:57:55 2006 -0700 [PARISC] Further updates to timer_interrupt() This version (relative to the current tree): o eliminates "while (ticks_elapsed)" loop. It's not needed. o drop "ticks_elapsed" completely from timer_interrupt(). o Estimates elapsed cycles (based on HZ) to see which kind of math we want to use to calculate "cycles_remainder". o Fixes a bug where we would loose a tick if we decided we wanted to skip one interrupt. Signed-off-by: Grant Grundler Signed-off-by: Kyle McMartin commit 6b799d9222fef265802b0b6dcc4fb982cc8f55ca Author: Grant Grundler Date: Mon Sep 4 13:56:11 2006 -0700 [PARISC] remove halftick and copy clocktick to local var (gcc can optimize usage) Signed-off-by: Grant Grundler Signed-off-by: Kyle McMartin commit bed583f76e1d5fbb5a6fdf27a0f7b2ae235f7e99 Author: Grant Grundler Date: Fri Sep 8 23:29:22 2006 -0700 [PARISC] Rewrite timer_interrupt() and gettimeoffset() using "unsigned" math. It's just a bit easier to follow and timer code is complex enough. So far, only tested on A500-5x (64-bit SMP), ie: gettimeoffset() code hasn't been tested at all. Signed-off-by: Grant Grundler Signed-off-by: Kyle McMartin commit 65ee8f0a7fc2f2267b983f1f0349acb8f19db6e6 Author: Matthew Wilcox Date: Fri Sep 8 05:43:44 2006 -0600 [PARISC] Enable interrupts while spinning Use the __raw_spin_lock_flags routine so we can take an interrupt while spinning. This re-fixes a bug jejb found on 2005-10-20: CPU0 does a flush_tlb_all holding the vmlist_lock for write. CPU1 tries a cat of /proc/meminfo which tries to acquire vmlist_lock for read CPU1 is now spinning with interrupts disabled CPU0 tries to execute a smp_call_function to flush the local tlb caches This is now a deadlock because CPU1 is spinning with interrupts disabled and can never receive the IPI Signed-off-by: Matthew Wilcox Signed-off-by: Kyle McMartin commit 56f335c89e28c488b1bfea3e5e697fce805c784d Author: Grant Grundler Date: Sun Sep 3 00:02:16 2006 -0700 [PARISC] Add new function to start local Interval Timer, start_cpu_itimer() I couldn't find where the itimer was getting started for slave CPUs. CPU 0 (master) itimer was started in time_init() (arch/parisc/kernel/time.c). start_cpu_itimer() code was striped from time_init(). Slaves now start their itimer in smp_cpu_init(). This is a first step towards making gettimeoffset() work for SMP. Next step will be to determine the CR16 (cycle counter) offsets for each CPU relative to the master (CPU 0). Signed-off-by: Grant Grundler Signed-off-by: Kyle McMartin commit 7908a0c72ee78ba5476c2a773d808c77593719c6 Author: Grant Grundler Date: Fri Sep 1 14:18:39 2006 -0700 [PARISC] Prevent processor_probe() from clobbering cpu_data[0] processor_probe() shouldn't clobber cpu_data[0] cpu_data[0].it_value (used by timer_interrupt()) is already set. Signed-off-by: Grant Grundler Signed-off-by: Kyle McMartin commit 9cf8f370f0777a24808b3485f3b5abb8e736d3e8 Author: Grant Grundler Date: Fri Sep 1 14:50:25 2006 -0700 [PARISC] Use CONFIG_HZ to determine interval timer rate (aka clock ticks) This isn't likely to be causing problems for other bits of kernel code. I can't find any other user of CONFIG_HZ outside of arch specific code. Signed-off-by: Grant Grundler Signed-off-by: Kyle McMartin commit 342a0497c23c278633f8674ab62f71e5049b7080 Author: Carlos O'Donell Date: Thu Sep 7 13:05:17 2006 -0400 [PARISC] Implement futex_atomic_cmpxchg_inatomic Implement trivial futex_atomic_cmpxchg_inatomic for testing. Signed-off-by: Carlos O'Donell Signed-off-by: Kyle McMartin commit 6e071852a10ec02570c472052f07b5facb5ad857 Author: Matthew Wilcox Date: Sat Sep 2 07:54:58 2006 -0600 [PARISC] Improve rwlock implementation Rewrite rwlock implementation to avoid various deadlocks in the current scheme. Signed-off-by: Matthew Wilcox Signed-off-by: Kyle McMartin commit 9c2c54574e724589858ad656a507be29f9034943 Author: Kyle McMartin Date: Mon Aug 28 15:42:07 2006 -0400 [PARISC] [BUGFIX] nullify branch delay slot of the jump back to intr_restore in intr_do_preempt. This prevents the execution of an unwanted insn... Signed-off-by: Kyle McMartin commit 136ce40e9f1f24ca1dbf7714c669a7bca56440ea Author: Matthew Wilcox Date: Mon Aug 28 11:53:30 2006 -0600 [PARISC] Clean up asm-parisc/serial.h Russell King pointed out that asm/serial.h is anachronistic and we were misusing BASE_BAUD. So fix BASE_BAUD for PCI 16550 UARTs, move LASI_BASE_BAUD into 8250_gsc, and fix the obsolete comment about reserving serial port slots. Signed-off-by: Matthew Wilcox Signed-off-by: Kyle McMartin commit 75a4958154f5d0028d5464f2479b4297d55cf4a3 Author: Kyle McMartin Date: Sun Aug 27 11:12:13 2006 -0400 [PARISC] Allow overriding personality with sys_personality And now suddenly, linux32 works on parisc... Signed-off-by: Kyle McMartin commit df570b9c284701d08b22aa00cbfcf870b7f1b7c1 Author: Kyle McMartin Date: Sun Aug 27 11:04:26 2006 -0400 [PARISC] Switch is_compat_task to use TIF_32BIT Stop using PER_LINUX32 to designate processes needing compaterizing. Convert is_compat_task to use TIF_32BIT and set TIF_32BIT in binfmt_elf32.c Signed-off-by: Kyle McMartin commit 8f611c453c6a41eee73645c80ccb10493e74b630 Author: Kyle McMartin Date: Sat Sep 16 14:38:22 2006 -0400 [PARISC] Prevent multiple includes of asm-parisc/parisc-device.h Signed-off-by: Kyle McMartin commit 20f4d3cb9b94ce3fec9a6135b9ad075b82b24f41 Author: James Bottomley Date: Wed Aug 23 09:00:04 2006 -0700 [PARISC] parisc specific kmap API implementation for pa8800 This patch fixes the pa8800 at a gross level (there are still other subtle incoherency issues which can still cause crashes and HPMCs). What it does is try to force eject inequivalent aliases before they become visible to the L2 cache (which is where we get the incoherence problems). A new function (parisc_requires_coherency) is introduced in asm/processor.h to identify the pa8x00 processors (8800 and 8900) which have the issue. Signed-off-by: James Bottomley Signed-off-by: Kyle McMartin commit e45da35e180a4fc91307648d021a598495742c32 Author: Carlos O'Donell Date: Sat Sep 16 14:35:51 2006 -0400 [PARISC] Document that D-class can also use serial_mux Signed-off-by: Carlos O'Donell Signed-off-by: Kyle McMartin commit 5cfe87d3f543d05a84a509d232330261f1b7bccf Author: Kyle McMartin Date: Sun Aug 13 22:25:45 2006 -0400 [PARISC] Fix up parisc irq handling for genirq changes Clean up enough to get things compiling again in the interim. Signed-off-by: Kyle McMartin commit 6f03495d65db4cecc8dc8f2266768f83af0c2710 Author: Kyle McMartin Date: Sun Aug 13 22:18:57 2006 -0400 [PARISC] Add asm-parisc/mckinley.h bus header Add header for McKinley bus related code. Remove extern decl of proc_mckinley_root in drivers/parisc/sba_iommu.c Signed-off-by: Kyle McMartin commit 3d73cf5e18c47d416db4d0734245d3fb087603d9 Author: Kyle McMartin Date: Sun Aug 13 22:17:19 2006 -0400 [PARISC] Abstract shift register left in .S Abstract existing shift register left macros as shift register right are. This lends itself to a nice clean up of some #ifdef blocks in entry.S Signed-off-by: Kyle McMartin commit f86e45131f9d41b1617fbaac7aa1ef23e8d0ab48 Author: Kyle McMartin Date: Sun Aug 13 21:09:31 2006 -0400 [PATCH] Need forward decl of task_struct in linux/debug_locks.h Signed-off-by: Kyle McMartin commit c51d476af36d1e9634e77afccc4d48e344acf243 Author: Kyle McMartin Date: Sun Aug 13 20:39:48 2006 -0400 [PARISC] Remove variables decls duplicated from asm-generic/sections.h Signed-off-by: Kyle McMartin commit 32104b29cdf93f78ac37e681bd4547413466d13c Author: Kyle McMartin Date: Sun Aug 13 20:37:26 2006 -0400 [PARISC] PA7200 also supports prefetch for read It seems PA7200 processors also suppress traps on loads to %r0. This means we can prefetch for read on these cpus. Of course, we can't support prefetch for write, since that requires LOAD DOUBLEWORD which was added with PA2.0 Signed-off-by: Kyle McMartin commit 4068d93cd17561bcbfc821c831cb048385320bd6 Author: Kyle McMartin Date: Sun Aug 13 22:15:47 2006 -0400 [PARISC] Untangle header include mess asm/processor.h on parisc wants spinlocks for cpuinfo, but linux/spinlock_types.h needs lockdep, and lockdep wants prefetch. This leads to a horrible circular dependancy, because is including something which depends on things which are not defined until the end of the file. Kludge around this by moving prefetch related code into and including it before , however this is just a temporary solution until this mess can be cleaned up. Signed-off-by: Kyle McMartin commit c8e649ba908954447e9a095677f6a6c8e50a37b2 Author: Steve Grubb Date: Fri Sep 29 11:56:49 2006 -0400 [PATCH] message types updated Hi, This patch adds a new type for 3rd party module use and cleans up a deprecated message type. Signed-off-by: Steve Grubb Signed-off-by: Al Viro commit ac9910ce017ff5f86f3a25e969b2c4f5d6ac438f Author: Steve Grubb Date: Thu Sep 28 14:31:32 2006 -0400 [PATCH] name_count array overrun Hi, This patch removes the rdev logging from the previous patch The below patch closes an unbounded use of name_count. This can lead to oopses in some new file systems. Signed-off-by: Steve Grubb Signed-off-by: Al Viro commit 419c58f11fb732cc8bd1335fa43e0decb34e0be3 Author: Alexander Viro Date: Fri Sep 29 00:08:50 2006 -0400 [PATCH] PPID filtering fix On Thu, Sep 28, 2006 at 04:03:06PM -0400, Eric Paris wrote: > After some looking I did not see a way to get into audit_log_exit > without having set the ppid. So I am dropping the set from there and > only doing it at the beginning. > > Please comment/ack/nak as soon as possible. Ehh... That's one hell of an overhead to be had ;-/ Let's be lazy. Signed-off-by: Al Viro commit 4b8a311bb161a3bd2ab44311f42c526b6dc76270 Author: Eric Paris Date: Thu Sep 28 17:46:21 2006 -0400 [PATCH] arch filter lists with < or > should not be accepted Currently the kernel audit system represents arch's as numbers and will gladly accept comparisons between archs using >, <, >=, <= when the only thing that makes sense is = or !=. I'm told that the next revision of auditctl will do this checking but this will provide enforcement in the kernel even for old userspace. A simple command to show the issue would be to run auditctl -d entry,always -F arch>i686 -S chmod with this patch the kernel will reject this with -EINVAL Please comment/ack/nak as soon as possible. -Eric kernel/auditfilter.c | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) Signed-off-by: Al Viro commit e1634208b77872ac0884da6d92f0d46f9a61eaa7 Author: Mauro Carvalho Chehab Date: Wed Oct 4 08:13:14 2006 -0300 V4L/DVB (4712): Fix warning when compiling on x86_i64 drivers/media/dvb/dvb-usb/usb-urb.c: In function 'usb_allocate_stream_buffers': drivers/media/dvb/dvb-usb/usb-urb.c:125: warning: format '%u' expects type 'unsigned int', but argument 4 has type 'long long unsigned int' Signed-off-by: Mauro Carvalho Chehab commit 13962753190a43fcc2b4a38d064f05d667691cc8 Author: Tobias Klauser Date: Wed Oct 4 08:09:10 2006 -0300 V4L/DVB (4711): Radio: No need to return void The module_exit function has return-type void and pci_unregister_driver() returns void anyway. Signed-off-by: Tobias Klauser Signed-off-by: Mauro Carvalho Chehab commit 003138cf52bd1eec59cb468334b0396fbfbf66cd Author: Hans Verkuil Date: Tue Oct 3 19:10:33 2006 -0300 V4L/DVB (4708): Add tveeprom support for Philips FM1236/FM1216ME MK5 Add new Philips tuners: Philips FM1236 MK5 and Philips FM1216ME MK5. Signed-off-by: Hans Verkuil Signed-off-by: Mauro Carvalho Chehab commit e491cbc8b2eabc8856bf890006604edd91b1cce2 Author: Alan Cox Date: Tue Oct 3 20:44:12 2006 -0300 V4L/DVB (4707): 4linux: complete conversion to hotplug safe PCI API Signed-off-by: Alan Cox Signed-off-by: Mauro Carvalho Chehab commit a868b45dad04854e07bb1c7c81a73930098bc370 Author: Maciej W. Rozycki Date: Tue Oct 3 16:01:17 2006 -0300 V4L/DVB (4706): Do not enable VIDEO_V4L2 unconditionally The VIDEO_V4L2 config setting is enabled unconditionally, even for configurations with no support for this subsystem whatsoever. The following patch adds the necessary dependency. Signed-off-by: Maciej W. Rozycki Signed-off-by: Mauro Carvalho Chehab commit 9448025be057f6b64c4bab01894c8e6b1a406e6e Author: Hartmut Hackmann Date: Mon Oct 2 21:00:32 2006 -0300 V4L/DVB (4704): SAA713x: fixed compile warning in SECAM fixup The variable fixup could be used uninitialized. Signed-off-by: Hartmut Hackmann Signed-off-by: Mauro Carvalho Chehab commit cf146ca4c2d56f275235526d9ada6c007313c7c7 Author: Hartmut Hackmann Date: Mon Oct 2 20:49:24 2006 -0300 V4L/DVB (4703): Add support for the ASUS EUROPA2 OEM board This is a analog DVB-T hybrid board Signed-off-by: Hartmut Hackmann Signed-off-by: Mauro Carvalho Chehab commit 6b14ff9e901935a685ac430828452b53936dcbad Author: Hermann Pitton Date: Mon Oct 2 20:18:26 2006 -0300 V4L/DVB (4702): Fix: set antenna input for DVB-T for Asus P7131 Dual hybrid This patch forces the correct antenna input input in DVB-T mode for this card. Signed-off-by: Hermann Pitton Signed-off-by: Hartmut Hackmann Signed-off-by: Mauro Carvalho Chehab commit 17b10a73e697da71faa3e54e35421aca4531aa9b Author: Hartmut Hackmann Date: Mon Oct 2 19:55:07 2006 -0300 V4L/DVB (4701): Saa713x audio fixes This change fixes the following issues: - resolve the SECAM D/K vs SECAM-L sound conflict It is now possible to select the SECAM version either by the VIDEOIOC_S_STD IO control or by the new secam= insmod option. The driver now adapts its audio standard search list to the selected standard. - don't trigger a sound standard search when a LINE input is selected. Signed-off-by: Hartmut Hackmann Signed-off-by: Mauro Carvalho Chehab commit 39666962a3c598f221bc99e835d9d6046a700d85 Author: Mauro Carvalho Chehab Date: Wed Oct 4 08:01:59 2006 -0300 V4L/DVB (4676a): Remove Kconfig item for DiB7000M support Support for DiB7000M frontend were not included on 2.6.19, since still not completed. Removing Kconfig item. Signed-off-by: Mauro Carvalho Chehab commit 038b0a6d8d32db934bba6a24e74e76e4e327a94f Author: Dave Jones Date: Wed Oct 4 03:38:54 2006 -0400 Remove all inclusions of kbuild explicitly includes this at build time. Signed-off-by: Dave Jones commit 0a69452cb45add0841c2bc1e75c25f6bd4f1d8d9 Author: Diego Beltrami Date: Tue Oct 3 23:47:05 2006 -0700 [XFRM]: BEET mode This patch introduces the BEET mode (Bound End-to-End Tunnel) with as specified by the ietf draft at the following link: http://www.ietf.org/internet-drafts/draft-nikander-esp-beet-mode-06.txt The patch provides only single family support (i.e. inner family = outer family). Signed-off-by: Diego Beltrami Signed-off-by: Miika Komu Signed-off-by: Herbert Xu Signed-off-by: Abhinav Pathak Signed-off-by: Jeff Ahrenholz Signed-off-by: David S. Miller commit 80246ab36ec8baf7d107254adb166baa555a59f8 Author: David S. Miller Date: Tue Oct 3 16:49:53 2006 -0700 [TCP]: Kill warning in tcp_clean_rtx_queue(). GCC can't tell we always initialize 'tv' in all the cases we actually use it, so explicitly set it up with zeros. Signed-off-by: David S. Miller commit 2473ffe3cae0f86341958e3cf962bb4fc261d028 Author: Patrick McHardy Date: Tue Oct 3 16:29:52 2006 -0700 [NET_SCHED]: Remove old estimator implementation Remove unused file, estimators live in net/core/gen_estimator.c now. Signed-off-by: Patrick McHardy Signed-off-by: David S. Miller commit 3e0c0ac84c01f41fb266bcdd2802708409901bed Author: Chas Williams Date: Tue Oct 3 16:28:31 2006 -0700 [ATM]: [zatm] always *pcr in alloc_shaper() Signed-off-by: Chas Williams Signed-off-by: David S. Miller commit 3a4e5e2033eb7558ebe307e46f5fb6e63b92cab8 Author: Jeff Garzik Date: Tue Oct 3 16:27:55 2006 -0700 [ATM]: [ambassador] Change the return type to reflect reality Signed-off-by: Jeff Garzik Signed-off-by: Chas Williams Signed-off-by: David S. Miller commit 0c1cca1d8e0d58775dad43374f925e6cddf1bebc Author: Om Narasimhan Date: Tue Oct 3 16:27:18 2006 -0700 [ATM]: kmalloc to kzalloc patches for drivers/atm Signed-off-by: Om Narasimhan Signed-off-by: Chas Williams Signed-off-by: David S. Miller commit 617dbeaa3f2987acc83c1149409685005e9dd740 Author: Jeff Garzik Date: Tue Oct 3 16:25:34 2006 -0700 [TIPC]: fix printk warning gcc spits out this warning: net/tipc/link.c: In function ‘link_retransmit_failure’: net/tipc/link.c:1669: warning: cast from pointer to integer of different size More than a little bit ugly, storing integers in void*, but at least the code is correct, unlike some of the more crufty Linux kernel code found elsewhere. Rather than having two casts to massage the value into u32, it's easier just to have a single cast and use "%lu", since it's just a printk. Signed-off-by: Jeff Garzik Signed-off-by: David S. Miller commit ae8c05779ac2f286b872db9ebea0c3c0a031ad1e Author: David S. Miller Date: Tue Oct 3 16:00:26 2006 -0700 [XFRM]: Clearing xfrm_policy_count[] to zero during flush is incorrect. When we flush policies, we do a type match so we might not actually delete all policies matching a certain direction. So keep track of how many policies we actually kill and subtract that number from xfrm_policy_count[dir] at the end. Based upon a patch by Masahide NAKAMURA. Signed-off-by: David S. Miller commit 667bbcb6c099d1b74f95c6963ddf37a32e7afc29 Author: Masahide NAKAMURA Date: Tue Oct 3 15:56:09 2006 -0700 [XFRM] STATE: Use destination address for src hash. Src hash is introduced for Mobile IPv6 route optimization usage. On current kenrel code it is calculated with source address only. It results we uses the same hash value for outbound state (when the node has only one address for Mobile IPv6). This patch use also destination address as peer information for src hash to be dispersed. Signed-off-by: Masahide NAKAMURA Signed-off-by: David S. Miller commit c5e29460f5f9eb189cab5d9fdaa137e64f7734b6 Author: Julian Anastasov Date: Tue Oct 3 15:49:46 2006 -0700 [NEIGH]: always use hash_mask under tbl lock Make sure hash_mask is protected with tbl->lock in all cases just like the hash_buckets. Signed-off-by: Julian Anastasov Signed-off-by: David S. Miller commit 1e0c14f49d6b393179f423abbac47f85618d3d46 Author: Herbert Xu Date: Tue Oct 3 14:35:49 2006 -0700 [UDP]: Fix MSG_PROBE crash UDP tracks corking status through the pending variable. The IP layer also tracks it through the socket write queue. It is possible for the two to get out of sync when MSG_PROBE is used. This patch changes UDP to check the write queue to ensure that the two stay in sync. Signed-off-by: Herbert Xu Signed-off-by: David S. Miller commit 132a55f3c5c0b1a364d32f65595ad8838c30a60e Author: Herbert Xu Date: Tue Oct 3 14:34:00 2006 -0700 [UDP6]: Fix flowi clobbering The udp6_sendmsg function uses a shared buffer to store the flow without taking any locks. This leads to races with SMP. This patch moves the flowi object onto the stack. Signed-off-by: Herbert Xu Acked-by: James Morris Signed-off-by: David S. Miller commit 81771b3b20fb4e98c6f2b2aac2bc10ed41a8f006 Author: Ismail Donmez Date: Tue Oct 3 13:49:10 2006 -0700 [NET_SCHED]: Revert "HTB: fix incorrect use of RB_EMPTY_NODE" With commit 10fd48f2376db52f08bf0420d2c4f580e39269e1 [1] , RB_EMPTY_NODE changed behaviour so it returns true when the node is empty as expected. Hence Patrick McHardy's fix for sched_htb.c should be reverted. Signed-off-by: Ismail Donmez ACKed-by: Patrick McHardy Signed-off-by: David S. Miller commit b18dfa90c008850e0f3bfd63638dd8fbe8e08701 Author: Bart De Schuymer Date: Mon Oct 2 16:12:52 2006 -0700 [NETFILTER]: ebt_mark: add or/and/xor action support to mark target The following patch adds or/and/xor functionality for the mark target, while staying backwards compatible. Signed-off-by: Bart De Schuymer Signed-off-by: Patrick McHardy Signed-off-by: David S. Miller commit 9d02002d2dc2c7423e5891b97727fde4d667adf1 Author: Patrick McHardy Date: Mon Oct 2 16:12:20 2006 -0700 [NETFILTER]: ipt_REJECT: remove largely duplicate route_reverse function Use ip_route_me_harder instead, which now allows to specify how we wish the packet to be routed. Based on patch by Simon Horman . Signed-off-by: Patrick McHardy Signed-off-by: David S. Miller commit 901eaf6c8f997f18ebc8fcbb85411c79161ab3b2 Author: Simon Horman Date: Mon Oct 2 16:11:51 2006 -0700 [NETFILTER]: Honour source routing for LVS-NAT For policy routing, packets originating from this machine itself may be routed differently to packets passing through. We want this packet to be routed as if it came from this machine itself. So re-compute the routing information using ip_route_me_harder(). This patch is derived from work by Ken Brownfield Cc: Ken Brownfield Signed-off-by: Simon Horman Signed-off-by: Patrick McHardy Signed-off-by: David S. Miller commit b4c4ed175ff0ee816df48571cfa9b73f521964b6 Author: Simon Horman Date: Mon Oct 2 16:11:13 2006 -0700 [NETFILTER]: add type parameter to ip_route_me_harder By adding a type parameter to ip_route_me_harder() the expensive call to inet_addr_type() can be avoided in some cases. A followup patch where ip_route_me_harder() is called from within ip_vs_out() is one such example. Signed-off-By: Simon Horman Signed-off-by: Patrick McHardy Signed-off-by: David S. Miller commit f1da70632fa0875f80fc60991a010c31f40983ff Author: Patrick McHardy Date: Mon Oct 2 16:10:47 2006 -0700 [NETFILTER]: Kconfig: fix xt_physdev dependencies xt_physdev depends on bridge netfilter, which is a boolean, but can still be built modular because of special handling in the bridge makefile. Add a dependency on BRIDGE to prevent XT_MATCH_PHYSDEV=y, BRIDGE=m. Signed-off-by: Patrick McHardy Signed-off-by: David S. Miller commit 9020fc960b8f5fbca0de6e4d11881ddc827aa61d Author: Kim Phillips Date: Mon Oct 2 20:10:30 2006 -0500 [POWERPC] Add support for the mpc832x mds board Add support for MPC832x MDS evaluation board. This patch depends on the 8360+QE lib patches by Leo. The MPC832x processors (MPC8323E, MPC8323, MPC8321E, MPC8321) sport the e300c2 core plus a QUICC Engine (QE). This patch adds support for the 832x MDS evaluation board. The 832x MDS dts and defconfig files are pending more tests. Signed-off-by: Kim Phillips Signed-off-by: Paul Mackerras commit 6c4a2501d0b9fe90882efea5541275a46cda2a1a Author: Kim Phillips Date: Mon Oct 2 20:10:24 2006 -0500 [POWERPC] Add initial support for the e300c2 core Add support for the Freescale e300c2 core found in the MPC832x processor line. As far as initial kernel support is concerned, the e300c2 core is identical to the e300c1 found in the mpc834x, except that it's had its floating point unit chopped off. Signed-off-by: Kim Phillips Signed-off-by: Paul Mackerras commit 7a234d03774a2949d0ce73e3aef56cfdb6856404 Author: Li Yang Date: Mon Oct 2 20:10:10 2006 -0500 [POWERPC] Add MPC8360EMDS default dts file Add MPC8360EMDS default device-tree source file Signed-off-by: Li Yang Signed-off-by: Jiang Bo Signed-off-by: Kim Phillips Signed-off-by: Paul Mackerras commit bc141deafb81f2efa453081e9d52d602a8cec766 Author: Li Yang Date: Tue Oct 3 23:17:51 2006 -0500 [POWERPC] Add MPC8360EMDS board support The patch adds MPC8360EMDS board support. Signed-off-by: Li Yang Signed-off-by: Yin Olivia Signed-off-by: Kim Phillips Signed-off-by: Paul Mackerras commit 9865853851313e0d94a4acde42d6f9d8070bb376 Author: Li Yang Date: Tue Oct 3 23:10:46 2006 -0500 [POWERPC] Add QUICC Engine (QE) infrastructure Add QUICC Engine (QE) configuration, header files, and QE management and library code that are used by QE devices drivers. Includes Leo's modifications up to, and including, the platform_device to of_device adaptation: "The series of patches add generic QE infrastructure called qe_lib, and MPC8360EMDS board support. Qe_lib is used by QE device drivers such as ucc_geth driver. This version updates QE interrupt controller to use new irq mapping mechanism, addresses all the comments received with last submission and includes some style fixes. v2: Change to use device tree for BCSR and MURAM; Remove I/O port interrupt handling code as it is not generic enough. v3: Address comments from Kumar; Update definition of several device tree nodes; Copyright style change." In addition, the following changes have been made: o removed typedefs o uint -> u32 conversions o removed following defines: QE_SIZEOF_BD, BD_BUFFER_ARG, BD_BUFFER_CLEAR, BD_BUFFER, BD_STATUS_AND_LENGTH_SET, BD_STATUS_AND_LENGTH, and BD_BUFFER_SET because they hid sizeof/in_be32/out_be32 operations from the reader. o fixed qe_snums_init() serial num assignment to use a const array o made CONFIG_UCC_FAST select UCC_SLOW o reduced NR_QE_IC_INTS from 128 to 64 o remove _IO_BASE, etc. defines (not used) o removed irrelevant comments, added others to resemble removed BD_ defines o realigned struct definitions in headers o various other style fixes including things like pinMask -> pin_mask o fixed a ton of whitespace issues o marked ioregs as __be32/__be16 o removed platform_device code and redundant get_qe_base() o removed redundant comments o added cpu_relax() to qe_reset o uncasted all get_property() assignments o eliminated unneeded casts o eliminated immrbar_phys_to_virt (not used) Signed-off-by: Li Yang Signed-off-by: Shlomi Gridish Signed-off-by: Kim Phillips Signed-off-by: Paul Mackerras commit 9a1ab883c04e43f9f9819c40eb435bcdc4136193 Author: Li Yang Date: Mon Oct 2 20:08:59 2006 -0500 [POWERPC] Add QE device tree node definition OF device tree node spec used in QE/8360 support patches. Signed-off-by: Li Yang Signed-off-by: Jiang Bo Signed-off-by: Kim Phillips Signed-off-by: Vitaly Bordug Signed-off-by: Paul Mackerras commit 0a730ae59960165ae50de3284fb50316d1755d98 Author: Paul Mackerras Date: Tue Oct 3 21:32:49 2006 +1000 [POWERPC] Don't try to just continue if xmon has no input device Currently, if xmon has no input device (as is generally the case on G5 powermacs), and we drop into xmon as a result of a fatal exception, it will return 1, which die() interprets as "continue without causing an oops". This fixes it by making xmon() return 0 in the case where it has no input device. Signed-off-by: Paul Mackerras commit 586da2cc78131d194ecacaf4de26b49691de5fd3 Author: Michael Ellerman Date: Tue Oct 3 14:48:43 2006 +1000 [POWERPC] Fix a printk in pseries_mpic_init_IRQ This should probably say "mpic" to save confusion. Signed-off-by: Michael Ellerman Acked-by: Benjamin Herrenschmidt Signed-off-by: Paul Mackerras commit 2ec6ef1034632c67896955d52bf8efb99195b742 Author: Benjamin Herrenschmidt Date: Tue Oct 3 14:47:58 2006 +1000 [POWERPC] Get default baud rate in udbg_scc On powermac, when open firmware is set to use the SCC for console, this causes the low level udbg early console to read back the speed and re-use it instead of hard coding 57600 bps. This doesn't (yet) pass the detected speed all the way to pmac_zilog though. Signed-off-by: Benjamin Herrenschmidt Signed-off-by: Paul Mackerras commit 54c9941288e86fad983e307e540808e155b16b34 Author: Benjamin Herrenschmidt Date: Tue Oct 3 14:27:16 2006 +1000 [POWERPC] Fix zImage.coff on oldworld PowerMac Recent changes to the PowerPC zImage wrapper broke zImage.coff due to the addition of new ELF sections that aren't very well converted to xcoff and not supported by old OpenFirmware. This fixes it by putting those sections in the xcoff .data. Signed-off-by: Benjamin Herrenschmidt Signed-off-by: Paul Mackerras commit 476792839467c08ddeedd8b44a7423d415b68259 Author: Michael Ellerman Date: Tue Oct 3 14:12:08 2006 +1000 [POWERPC] Fix xmon=off and cleanup xmon initialisation My patch to make the early xmon logic work with earlier early param parsing (480f6f35a149802a94ad5c1a2673ed6ec8d2c158) breaks xmon=off. No one does this obviously as xmon rocks, but it should really work as documented. While fixing that it struck me that we could move the xmon param handling into xmon.c, and also consolidate the xmon_init()/do_early_xmon logic into xmon_setup(). This means xmon=early drops into xmon a little earlier on 32-bit, but it seems to work just fine. Tested on PSERIES and CLASSIC32. Signed-off-by: Michael Ellerman Signed-off-by: Paul Mackerras commit 23b8acb1cf49fea74a9d431de258787384951eac Author: Michael Ellerman Date: Tue Oct 3 14:12:07 2006 +1000 [POWERPC] Cleanup include/asm-powerpc/xmon.h For some reason we have two prototypes for xmon_init(), remove the one in system.h. No one calls xmon() anymore, debugger() is preferable, so we don't need the prototype. And similarly no one calls xmon_printf(). Also update the include guards on xmon.h to match the standard format, add copyright and license, and add comments to #endifs. Built for pseries_defconfig and pmac32_defconfig. Signed-off-by: Michael Ellerman Signed-off-by: Paul Mackerras commit 14b1ffb577a8678e228683bd015302cfe964040c Author: Olaf Hering Date: Mon Oct 2 22:57:23 2006 +0200 [POWERPC] Update swim3 printk after blkdev.h change drivers/block/swim3.c: In function 'swim3_interrupt': drivers/block/swim3.c:640: warning: format '%lx' expects type 'long unsigned int', but argument 3 has type 'unsigned int' drivers/block/swim3.c:746: warning: format '%lx' expects type 'long unsigned int', but argument 3 has type 'unsigned int' Update printk format string after blkdev.h change: Split struct request ->flags into two parts Signed-off-by: Olaf Hering Signed-off-by: Paul Mackerras commit 2e194583125bfea94d1ceaa6a32e891643befa7d Author: Benjamin Herrenschmidt Date: Fri Sep 29 15:00:29 2006 +1000 [POWERPC] Cell interrupt rework This patch reworks the cell iic interrupt handling so that: - Node ID is back in the interrupt number (only one IRQ host is created for all nodes). This allows interrupts from sources on another node to be routed non-locally. This will allow possibly one day to fix maxcpus=1 or 2 and still get interrupts from devices on BE 1. (A bit more fixing is needed for that) and it will allow us to implement actual affinity control of external interrupts. - Added handling of the IO exceptions interrupts (badly named, but I re-used the name initially used by STI). Those are the interrupts exposed by IIC_ISR and IIC_IRR, such as the IOC translation exception, performance monitor, etc... Those get their special numbers in the IRQ number space and are internally implemented as a cascade on unit 0xe, class 1 of each node. Signed-off-by: Benjamin Herrenschmidt Acked-by: Arnd Bergmann Signed-off-by: Paul Mackerras commit 78b656b8bf933101b42409b4492734b23427bfc3 Author: Keith Mannthey Date: Tue Oct 3 18:25:52 2006 -0700 [PATCH] i383 numa: fix numaq/summit apicid conflict This allows numaq to properly align cpus to their given node during boot. Pass logical apicid to apicid_to_node and allow the summit sub-arch to use physical apicid (hard_smp_processor_id()). Tested against numaq and summit based systems with no issues. Signed-off-by: Keith Mannthey Signed-off-by: Linus Torvalds commit 7ecdb70a0ea436c06540140242bfac6ac3babfc0 Author: Steven Whitehouse Date: Tue Oct 3 21:03:35 2006 -0400 [GFS2] Fix endian bug for de_type Missing endian conversion for the de_type field. Signed-off-by: Steven Whitehouse commit 65935ff95cfda67c7b2bf228d6f7083a46f832a1 Author: Andrew Vasquez Date: Mon Oct 2 12:00:50 2006 -0700 [SCSI] qla2xxx: Update version number to 8.01.07-k2. Signed-off-by: Andrew Vasquez Signed-off-by: James Bottomley commit 07db51831371f2875ef234b1535a15afdb381b6c Author: Andrew Vasquez Date: Mon Oct 2 12:00:49 2006 -0700 [SCSI] qla2xxx: Stall mid-layer error handlers while rport is blocked. Stall error handler if attempting recovery while an rport is blocked. This avoids device offline scenarios due to errors in the error handler. Reference implementation from lpfc/mptfc. Signed-off-by: Andrew Vasquez Signed-off-by: James Bottomley commit bb8ee4998498e15b5c8ed94cd7dd8d07e586c0ab Author: Andrew Vasquez Date: Mon Oct 2 12:00:48 2006 -0700 [SCSI] qla2xxx: Add MODULE_FIRMWARE tags. Signed-off-by: Andrew Vasquez Signed-off-by: James Bottomley commit 7047fcddb1bc96a80fc54ac3a88ea18ca3ae77f6 Author: Andrew Vasquez Date: Mon Oct 2 12:00:47 2006 -0700 [SCSI] qla2xxx: Add support for host port state FC transport attribute. Signed-off-by: Andrew Vasquez Signed-off-by: James Bottomley commit 90991c85d398fd46b2b07440b5639eb50dfacb2b Author: Andrew Vasquez Date: Mon Oct 2 12:00:46 2006 -0700 [SCSI] qla2xxx: Add support for fabric name FC transport attribute. Signed-off-by: Andrew Vasquez Signed-off-by: James Bottomley commit a740a3f0407ed3344b28b05926b0ce61768e9893 Author: Andrew Vasquez Date: Mon Oct 2 12:00:45 2006 -0700 [SCSI] qla2xxx: Add support for system hostname FC transport attribute. The system hostname will be used during a subsequent FDMI registration with the fabric. Signed-off-by: Andrew Vasquez Signed-off-by: James Bottomley commit 1620f7c2d8e3fdd7dba04bfe5f9c42201eef1188 Author: Andrew Vasquez Date: Mon Oct 2 12:00:44 2006 -0700 [SCSI] qla2xxx: Add support for symbolic nodename FC transport attribute. Refactored original code from qla_gs.c:qla2x00_rsnn_nn(). Signed-off-by: Andrew Vasquez Signed-off-by: James Bottomley commit d8b4521349274ab610d0b29384c704444e55cbca Author: Andrew Vasquez Date: Mon Oct 2 12:00:43 2006 -0700 [SCSI] qla2xxx: Add iIDMA support. iIDMA (Intelligent Interleaved Direct Memory Access) allows for the HBA hardware to send FC frames at the rate at which they can be received by a target device. By taking advantage of the higher link rate, the HBA can maximize bandwidth utilization in a heterogeneous multi-speed SAN. Within a fabric topology, port speed detection is done via a Name Server command (GFPN_ID) followed by a Fabric Management command (GPSC). In an FCAL/N2N topology, port speed is based on the HBA link-rate. Signed-off-by: Andrew Vasquez Signed-off-by: James Bottomley commit ee0ca6bab394fe41a2b4de58c4532b09a41c9165 Author: Henne Date: Sun Oct 1 13:18:37 2006 +0200 [SCSI] scsi: Scsi_Cmnd convertion in arm subtree Changes the obsolete Scsi_Cmnd to struct scsi_cmnd in the arm subdir of the scsi-subsys. Signed-off-by: Henrik Kretzschmar Acked-by: Russell King Signed-off-by: James Bottomley commit 1516b55d903a5d370859d9013e48db5caea95204 Author: Henne Date: Mon Oct 2 14:56:23 2006 +0200 [SCSI] scsi: Convertion to struct scsi_cmnd in ips-driver Converts the obsolete Scsi_Cmnd to struct scsi_cmnd in the ips-driver. Signed-off-by: Henrik Kretzschmar Signed-off-by: James Bottomley commit a847825970e741e20a09c659978baa34016b63bc Author: Samuel Tardieu Date: Tue Oct 3 23:41:34 2006 +0200 Add missing maintainer countries in CREDITS Add missing maintainer countries. Signed-off-by: Samuel Tardieu Signed-off-by: Adrian Bunk commit 73cf9630683e8b9f58485b75a13a21ac9ff33aef Author: Christian Borntraeger Date: Tue Oct 3 23:40:34 2006 +0200 Fix bytes <-> kilobytes typo in Kconfig for ramdisk This is a small fix for a typo in Kconfig. The default value for the block size is 1024 bytes not 1024 kilobytes. Signed-off-by: Christian Borntraeger Signed-off-by: Adrian Bunk commit 96016cfae5739902944aaec9c3cbbbdeabc7a38b Author: Riccardo Magliocchetti Date: Tue Oct 3 23:39:02 2006 +0200 fix a typo in Documentation/pi-futex.txt Signed-off-by: Riccardo Magliocchetti Signed-off-by: Adrian Bunk commit 9ab5aa911a5b5d7c721436bce8709202b707a361 Author: Eric Sesterhenn Date: Tue Oct 3 23:37:55 2006 +0200 BUG_ON conversion for fs/xfs/ This patch converts two if () BUG(); construct to BUG_ON(); which occupies less space, uses unlikely and is safer when BUG() is disabled. Signed-off-by: Eric Sesterhenn Signed-off-by: Adrian Bunk commit 73dff8be9ea89df26bfb6a0443ad912de6e7bd00 Author: Eric Sesterhenn Date: Tue Oct 3 23:37:14 2006 +0200 BUG_ON() conversion in fs/nfsd/ This patch converts an if () BUG(); construct to BUG_ON(); which occupies less space, uses unlikely and is safer when BUG() is disabled. Signed-off-by: Eric Sesterhenn Signed-off-by: Adrian Bunk commit 14a61442c2203d2a49f2f954bfa9259c0ddac1aa Author: Eric Sesterhenn Date: Tue Oct 3 23:36:38 2006 +0200 BUG_ON conversion for fs/reiserfs This patch converts several if () BUG(); construct to BUG_ON(); which occupies less space, uses unlikely and is safer when BUG() is disabled. S_ISREG() has no side effects, so the conversion is safe. Signed-off-by: Eric Sesterhenn Signed-off-by: Adrian Bunk commit 8d8f3cbe777e014123bfa63f2cebd6eb29032225 Author: Eric Sesterhenn Date: Tue Oct 3 23:34:58 2006 +0200 BUG_ON cleanups in arch/i386 This changes a couple of if() BUG(); constructs to BUG_ON(); so it can be safely optimized away. Signed-off-by: Eric Sesterhenn Signed-off-by: Adrian Bunk commit 644c12d7f695c0a30662ac781b0f06f79d7f9bab Author: Eric Sesterhenn Date: Tue Oct 3 23:34:11 2006 +0200 BUG_ON cleanup in drivers/net/tokenring/ This patch converts one if() BUG(); to BUG_ON(); so it can be safely optimized away. Signed-off-by: Eric Sesterhenn Signed-off-by: Adrian Bunk commit 52e5f9d1cf0b10b24317037dcd1c9be38ca7011c Author: Eric Sesterhenn Date: Tue Oct 3 23:33:23 2006 +0200 BUG_ON cleanup for drivers/md/ This changes two if() BUG(); usages to BUG_ON(); so people can disable it safely. Signed-off-by: Eric Sesterhenn Signed-off-by: Adrian Bunk commit 70d63ccc71fe1a413ce82b88aa175b1dcf28654e Author: Henrik Kretzschmar Date: Tue Oct 3 23:31:30 2006 +0200 kerneldoc-typo in led-class.c Fixes a typo in led-class.c kerneldoc. Signed-off-by: Henrik Kretzschmar Signed-off-by: Adrian Bunk commit 5a65980ec5edfb3acee293c541b392e4146a30f6 Author: Komal Shah Date: Tue Oct 3 23:28:36 2006 +0200 debugfs: spelling fix Change debufs_create_file() to debugfs_create_file(). Signed-off-by: Komal Shah Signed-off-by: Adrian Bunk commit 4802211cfd68e44c8401a8fe3657e9c2522ec517 Author: Josh Triplett Date: Tue Oct 3 23:26:16 2006 +0200 rcutorture: Fix incorrect description of default for nreaders parameter The comment for the nreaders parameter of rcutorture gives the default as 4*ncpus, but the value actually defaults to 2*ncpus; fix the comment. Signed-off-by: Josh Triplett Acked-by: Paul E. McKenney Signed-off-by: Adrian Bunk commit d32ccc431b2247535ce1114d7e31cc136c89262a Author: Matthew Martin Date: Tue Oct 3 23:25:14 2006 +0200 parport: Remove space in function calls This removes the space in function calls in drivers/parport/daisy.c Signed-off-by: Matthew Martin Signed-off-by: Adrian Bunk commit f66e928b96b717c6bb0cefba338d687dd86e6a9b Author: Michal Wronski Date: Tue Oct 3 23:23:27 2006 +0200 Michal Wronski: update contact info My email has changed. Signed-Off-By: Michal Wronski Signed-off-by: Adrian Bunk commit c1c8897f830c66649b6866a0cbe21c263466295e Author: Michael Opdenacker Date: Tue Oct 3 23:21:02 2006 +0200 Spelling fix: "control" instead of "cotrol" This patch against fixes a spelling mistake ("control" instead of "cotrol"). Signed-off-by: Michael Opdenacker Acked-by: Alan Cox Signed-off-by: Adrian Bunk commit f3e299fe3d53a0d78fea4e46ec3e0cadf375246c Author: Michael Opdenacker Date: Tue Oct 3 23:19:24 2006 +0200 reboot parameter in Documentation/kernel-parameters.txt Documentation fix for the arm and arm26 architectures, in which the reboot kernel parameter is set in arch/*/kernel/process.c Signed-off-by: Michael Opdenacker Signed-off-by: Adrian Bunk commit a073a8bde49b2c90777c526110488f4d0c52ea47 Author: Rolf Eike Beer Date: Tue Oct 3 23:13:02 2006 +0200 Fix copy&waste bug in comment in scripts/kernel-doc This is obviously copied from some lines before without proper fixing. Signed-off-by: Rolf Eike Beer Acked-by: Alan Cox Signed-off-by: Adrian Bunk commit 9f5d785e93f7c68c37582ddea848de23689fdd76 Author: Rolf Eike Beer Date: Tue Oct 3 23:07:31 2006 +0200 remove duplicate "until" from kernel/workqueue.c s/until until/until/ Signed-off-by: Rolf Eike Beer Signed-off-by: Adrian Bunk commit c98acc5865c1217195217444cc6c6d317fddda50 Author: Jim Cromie Date: Tue Oct 3 23:04:37 2006 +0200 ite_gpio fix tabbage caught some leading spaces in passing. Signed-off-by: Adrian Bunk commit f30c2269544bffc7bf1b0d7c0abe5be1be83b8cb Author: Uwe Zeisberger Date: Tue Oct 3 23:01:26 2006 +0200 fix file specification in comments Many files include the filename at the beginning, serveral used a wrong one. Signed-off-by: Uwe Zeisberger Signed-off-by: Adrian Bunk commit 670e9f34ee3c7e052514c85014d2fdd99b672cdc Author: Paolo Ornati Date: Tue Oct 3 22:57:56 2006 +0200 Documentation: remove duplicated words Remove many duplicated words under Documentation/ and do other small cleanups. Examples: "and and" --> "and" "in in" --> "in" "the the" --> "the" "the the" --> "to the" ... Signed-off-by: Paolo Ornati Signed-off-by: Adrian Bunk commit 53cb47268e6b38180d9f253527135e1c69c5d310 Author: Matt LaPlante Date: Tue Oct 3 22:55:17 2006 +0200 Fix typos in Documentation/: 'S' This patch fixes typos in various Documentation txts. The patch addresses some words starting with the letter 'S'. Signed-off-by: Matt LaPlante Acked-by: Alan Cox Acked-by: Randy Dunlap Signed-off-by: Adrian Bunk commit d6bc8ac9e13e466e844313b590fbc49f7f1abdea Author: Matt LaPlante Date: Tue Oct 3 22:54:15 2006 +0200 Fix typos in Documentation/: 'Q'-'R' This patch fixes typos in various Documentation txts. The patch addresses some words starting with the letters 'Q'-'R'. Signed-off-by: Matt LaPlante Acked-by: Randy Dunlap Signed-off-by: Adrian Bunk commit 84eb8d0608af1576175307ed8fb3c8fde329e579 Author: Matt LaPlante Date: Tue Oct 3 22:53:09 2006 +0200 Fix "can not" in Documentation and Kconfig Randy brought it to my attention that in proper english "can not" should always be written "cannot". I donot see any reason to argue, even if I mightnot understand why this rule exists. This patch fixes "can not" in several Documentation files as well as three Kconfigs. Signed-off-by: Matt LaPlante Acked-by: Randy Dunlap Signed-off-by: Adrian Bunk commit 992caacf1141b31e94540eb31e0540e3da3a5e25 Author: Matt LaPlante Date: Tue Oct 3 22:52:05 2006 +0200 Fix typos in Documentation/: 'N'-'P' This patch fixes typos in various Documentation txts. The patch addresses some words starting with the letters 'N'-'P'. Signed-off-by: Matt LaPlante Acked-by: Randy Dunlap Signed-off-by: Adrian Bunk commit f311896a990a0b766e279defe9adff29160ada03 Author: Wim Van Sebroeck Date: Wed Sep 13 21:27:29 2006 +0200 [WATCHDOG] use ENOTTY instead of ENOIOCTLCMD in ioctl() Return ENOTTY instead of ENOIOCTLCMD in user-visible ioctl() results The watchdog drivers used to return ENOIOCTLCMD for bad ioctl() commands. ENOIOCTLCMD should not be visible by the user, so use ENOTTY instead. Signed-off-by: Samuel Tardieu Signed-off-by: Wim Van Sebroeck Acked-by: Alan Cox Signed-off-by: Andrew Morton commit 2fe0ae78c6975d6fa2fc0c84f2b8944543054105 Author: Matt LaPlante Date: Tue Oct 3 22:50:39 2006 +0200 Fix typos in Documentation/: 'H'-'M' This patch fixes typos in various Documentation txts. The patch addresses some words starting with the letters 'H'-'M'. Signed-off-by: Matt LaPlante Acked-by: Randy Dunlap Signed-off-by: Adrian Bunk commit a2ffd2751683f4275d4d1aa5ce37e5a6a1ae21df Author: Matt LaPlante Date: Tue Oct 3 22:49:15 2006 +0200 Fix typos in Documentation/: 'F'-'G' This patch fixes typos in various Documentation txts. The patch addresses some words starting with the letters 'F'-'G'. Signed-off-by: Matt LaPlante Signed-off-by: Adrian Bunk commit 353cefdb33929bd5d925d59060be11759cee8f52 Author: Russell King Date: Tue Oct 3 17:36:11 2006 +0100 [PATCH] Remove me from maintainers for serial and mmc As advertised earlier. I invite interested parties to take over and add their own entries as they see fit. Signed-off-by: Russell King Signed-off-by: Linus Torvalds commit fff9289b219f48cb2296714fea3d71f516991f9f Author: Matt LaPlante Date: Tue Oct 3 22:47:42 2006 +0200 Fix typos in Documentation/: 'D'-'E' This patch fixes typos in various Documentation txts. This patch addresses some words starting with the letters 'D'-'E'. Signed-off-by: Matt LaPlante Signed-off-by: Adrian Bunk commit 6c28f2c0f2054865d82b5a6b2164eac956f15c94 Author: Matt LaPlante Date: Tue Oct 3 22:46:31 2006 +0200 Fix typos in Documentation/: 'B'-'C' This patch fixes typos in various Documentation txts. This patch addresses some words starting with the letters 'B'-'C'. There are also a few grammar fixes thrown in for Randy. ;) Signed-off-by: Matt LaPlante Signed-off-by: Adrian Bunk commit 3f6dee9b2a22cc66050682287a77d5fccadb9733 Author: Matt LaPlante Date: Tue Oct 3 22:45:33 2006 +0200 Fix some typos in Documentation/: 'A' This patch fixes typos in various Documentation txts. This patch addresses some words starting with the letter 'A'. Signed-off-by: Matt LaPlante Acked-by: Randy Dunlap Acked-by: Alan Cox Signed-off-by: Adrian Bunk commit cab00891c5489cb6d0cde0a55d39bd5f2871fa70 Author: Matt LaPlante Date: Tue Oct 3 22:36:44 2006 +0200 Still more typo fixes Signed-off-by: Adrian Bunk commit 44c09201a4178e08ed1c8cc37e7aea0683888f0a Author: Matt LaPlante Date: Tue Oct 3 22:34:14 2006 +0200 more misc typo fixes Signed-off-by: Adrian Bunk commit 095096038d637c477ef3c1b674612bcbc4d60c2d Author: Matt LaPlante Date: Tue Oct 3 22:31:37 2006 +0200 Fix several typos in drivers/ Signed-off-by: Adrian Bunk commit c73a668c096fe3dd23c1062018e82eb85f5c7043 Author: Matt LaPlante Date: Tue Oct 3 22:24:43 2006 +0200 fix drivers/acpi/Kconfig typos Signed-off-by: Adrian Bunk commit fc31e838162c60ed81659da677d7f72917576269 Author: Matt LaPlante Date: Tue Oct 3 22:23:47 2006 +0200 fix an arch/alpha/Kconfig typo Signed-off-by: Adrian Bunk commit cc2e2767f172fb2f38ca72e22ac98e452550437f Author: Matt LaPlante Date: Tue Oct 3 22:22:29 2006 +0200 Typos in fs/Kconfig Signed-off-by: Adrian Bunk commit 4b3f686d4aa8ad815dc68a4e8fabd05b1ebb9f2c Author: Matt LaPlante Date: Tue Oct 3 22:21:02 2006 +0200 Attack of "the the"s in arch The patch below corrects multiple occurances of "the the" typos across several files, both in source comments and KConfig files. There is no actual code changed, only text. Note this only affects the /arch directory, and I believe I could find many more elsewhere. :) Signed-off-by: Adrian Bunk commit bf6ee0ae494596aaf311e8430684db85d1d2f25c Author: Adrian Bunk Date: Tue Oct 3 22:17:48 2006 +0200 remove mentionings of devfs in documentation Now that devfs is removed, there's no longer any need to document how to do this or that with devfs. This patch includes some improvements by Joe Perches. Signed-off-by: Adrian Bunk commit 0a8fe0d756fba2953462cec6db09c81dd732d0b5 Author: Adrian Bunk Date: Tue Oct 3 22:11:20 2006 +0200 input: remove obsolete contact information This patch removes some obsolete contact information from Documentation/input/input.txt Signed-off-by: Adrian Bunk commit 1bef84bea273f40486936ae97cda70ee8b252cd0 Author: Wim Van Sebroeck Date: Sat Aug 5 20:59:01 2006 +0200 [WATCHDOG] iTCO_wdt.c shutdown patch Since we are using the device driver model, we don't need to arrange the shutdown via a reboot_notifier. Signed-off-by: Wim Van Sebroeck commit 4802c6533af3223f43b9e4a1bb8a2a1c51f398b1 Author: Wim Van Sebroeck Date: Wed Jul 19 22:39:13 2006 +0200 [WATCHDOG] iTCO_wdt.c - pci_dev_put fix for_each_pci_dev calls pci_get_device (and thus it calls pci_dev_get). So we need to do a pci_dev_put to keep the refcounting correct. (Thanks to Jiri Slaby ) Signed-off-by: Wim Van Sebroeck commit 3836cc0ff8c875e21a8119e7a4f0227f6e227650 Author: Wim Van Sebroeck Date: Fri Jun 30 08:44:53 2006 +0200 [WATCHDOG] iTCO_wdt (Intel TCO Timer) driver Convert the iTCO_wdt driver to a platform device driver. Signed-off-by: Wim Van Sebroeck commit 9e0ea345ff542320882caa21ec2248e6c02d8b91 Author: Wim Van Sebroeck Date: Sun May 21 14:37:44 2006 +0200 [WATCHDOG] iTCO_wdt (Intel TCO Timer) driver Hardware driver for the intel TCO timer based watchdog devices. These drivers are included in the Intel 82801 I/O Controller Hub family (from ICH0 up to ICH7) and in the Intel 6300ESB controller hub. This driver will replace the i8xx_tco.c driver. Signed-off-by: Wim Van Sebroeck commit 9b5a4a676a4d6126664c3df5a11f6fe87da63133 Author: Steven Toth Date: Mon Oct 2 21:35:40 2006 -0300 V4L/DVB (4699): CX24109 patch to eliminate the weird mis-tunings A number of people have been reporting wierd tuning problems with various cards. Yeasah tracked down the problem to a miss-read datasheet. This resolves the problems. Signed-off-by: Yeasah Pell Signed-off-by: Steven Toth Signed-off-by: Mauro Carvalho Chehab commit d2be893616c45e4ea4403d1ba501b7ee2f32b0ec Author: Mauro Carvalho Chehab Date: Mon Oct 2 23:52:48 2006 -0300 V4L/DVB (4698): Fix S-Video configuration for Pinnacle PCTV-Sat Thanks to Edgar Toernig for pointing this. Signed-off-by: Mauro Carvalho Chehab commit 3979ecc7324973cf90d8ea4a2ba3fe79c7150d56 Author: Steven Toth Date: Fri Sep 29 22:37:07 2006 -0300 V4L/DVB (4689): Adding support for Nova-T-PCI PCI ID 0070:9000 Adding support for Nova-T-PCI PCI ID 0070:9000 Signed-off-by: Steven Toth Signed-off-by: Mauro Carvalho Chehab commit de98cdaf7ead419fe8b0a0a636ffb175489958fe Author: Hans Verkuil Date: Sun Oct 1 17:56:32 2006 -0300 V4L/DVB (4688): Fix msp343xG handling (regression from 2.6.16) The msp3430G and msp3435G models cannot do Automatic Standard Detection. So these should be forced to BTSC. These chips are early production versions for the msp34xxG series and are quite rare. The workaround for kernel 2.6.18 is to use 'standard=32' as msp3400 module option. Due to broken handling of the 'standard' option in 2.6.17 there is no workaround possible for that kernel. Signed-off-by: Hans Verkuil Signed-off-by: Mauro Carvalho Chehab commit 587c03d104c418a7958f24a03ac6239ac3f2e608 Author: Michael Krufky Date: Thu Sep 28 02:16:01 2006 -0300 V4L/DVB (4686): Cxusb: add support for DViCO FusionHDTV DVB-T Dual Digital 2 Add support for DViCO FusionHDTV DVB-T Dual Digital 2 USB, which is identical to the usb portion of DViCO FusionHDTV DVB-T Dual Digital 1. Signed-off-by: Michael Krufky Signed-off-by: Mauro Carvalho Chehab commit 6eb32a792ec19816d68529805f8169ce3ba1b1a2 Author: Sujoy Gupta Date: Sat Sep 30 06:55:29 2006 -0300 V4L/DVB (4685): Fix compiler warning in drivers/media/video/video-buf.c Using a double cast to avoid compiler warnings when building for PAE. Compiler doesn't like direct casting of a 32 bit ptr to 64 bit integer. Signed-off-by: Martin J. Bligh Signed-off-by: Andrew Morton Signed-off-by: Mauro Carvalho Chehab commit f1db955acbda253051a3256708d0dbfec2781de2 Author: Richard Knutsson Date: Fri Sep 29 16:15:37 2006 -0300 V4L/DVB (4684): Drivers/media/video/cx88: Remove unused defined FALSE/TRUE Remove defines of FALSE/TRUE because they are not used. Signed-off-by: Richard Knutsson Signed-off-by: Andrew Morton Signed-off-by: Mauro Carvalho Chehab commit ccbf64b1d434b78dad491993b57a9619503ab35f Author: Mauro Carvalho Chehab Date: Fri Sep 29 12:39:36 2006 -0300 V4L/DVB (4683): Norm_notchfilter is used on just one point and argument is bogus Removed norm_notchfilter function. All the code is bound to 4 x FSC, so, any other filter won't work fine. Signed-off-by: Mauro Carvalho Chehab commit 4f43ac0cb228064cf6a253275ec1ecdab30c62f0 Author: Lars Gjesse Kjellberg Date: Mon Sep 25 23:44:06 2006 -0300 V4L/DVB (4681): Cx88: fix analog capture notch filter This patch changes the setting of the cx2388x notch filter to match that of the video capture sample frequency, removing some annoying interference lines THAT would appear when capturing composite video. This has been tested in PAL and NTSC TV norms. It sets the Y/C separation luma notch filter, which removes the chroma signal from the luma signal when using a composite input. The luma notch filter operates at the video decoder's frequency, not the ADC's frequency or at the frequency of the scaled video. Y/C separation happens after the sample rate converter, before video scaling. The datasheet provides plots of the filter response for three _video decoder_ frequencies, 4x Fsc, square pixel, and ccir601. These are the same three frequencies for the notch filter control. It seems pretty clear that this filter should be set based on the video decoder frequency. The cx88 driver always uses a video decoder frequency of 4xFsc. Signed-off-by: Lars Gjesse Kjellberg Signed-off-by: Trent Piepho Signed-off-by: Michael Krufky Signed-off-by: Mauro Carvalho Chehab commit 76ac5dd6c055101ef9f8c6349cae4ef571039e93 Author: Steven Toth Date: Wed Sep 27 01:16:50 2006 -0300 V4L/DVB (4679): Fix for NULL pointer dereference oops during boot. A fix for intermittent oops's during boot which occurs in cx88_call_i2c_clients when dvb_attach is bringing up the frontend. Signed-off-by: Steven Toth Signed-off-by: Mauro Carvalho Chehab commit 6d98816fbe2b0a6887de0237021d6d900fbaff84 Author: Mike Isely Date: Thu Sep 28 17:53:49 2006 -0300 V4L/DVB (4675): Pvrusb2: Fix VIDIOC_INT_[G|S]_REGISTER so that it actually works now Signed-off-by: Mike Isely Signed-off-by: Mauro Carvalho Chehab commit ab9caf9e221ee1b13186a9144da26ac358f2a6f4 Author: Randy Dunlap Date: Thu Sep 28 14:03:26 2006 -0300 V4L/DVB (4674): Use NULL instead of 0 for ptrs Use NULL instead of 0 for pointer value, eliminate sparse warnings. Signed-off-by: Randy Dunlap Signed-off-by: Andrew Morton Signed-off-by: Mauro Carvalho Chehab commit dcc29cbcec8c8482eea249030e0aa65b7451073d Author: Mauro Carvalho Chehab Date: Thu Sep 28 13:48:26 2006 -0300 V4L/DVB (4673): Mark the two newer ioctls as experimental VIDIOC_ENUM_FRAMESIZES and VIDIOC_ENUM_FRAMEINTERVALS ioctls are meant to be used to provide better support for webcams. Currently, it is not yet used on kernel drivers. Better to keep it marked as experimental, until we have several kernel drivers supporting those features. Signed-off-by: Mauro Carvalho Chehab commit 92b2db08b1150576d295ba9440e172675095c3ae Author: Laurent Pinchart Date: Thu Sep 28 13:42:05 2006 -0300 V4L/DVB (4672): Frame format enumeration (1/2) Add VIDIOC_ENUM_FRAMESIZES and VIDIOC_ENUM_FRAMEINTERVALS ioctls to enumerate supported frame sizes and frame intervals. Signed-off-by: Martin Rubli Signed-off-by: Laurent Pinchart Signed-off-by: Mauro Carvalho Chehab commit 515c208db869459e4f2a58021df5aecf21c9a19f Author: Petr Baudis Date: Tue Sep 26 16:53:53 2006 -0300 V4L/DVB (4671): Support for SAA7134-based AVerTV Hybrid A16AR This adds support for a hybrid PAL/DVB/FM card. Unfortunately I tested only the DVB since I don't have any proper antenna available and I can receive even the DVB just barely so; I can hear noise in the FM part but I couldn't catch any station, then again I don't have an FM antenna either. The PAL/FM and IR control data are based on what I harvested on the 'net. Perhaps I or someone else will fix them if they turn out to be wrong. Signed-off-by: Petr Baudis Signed-off-by: Andrew Morton Signed-off-by: Mauro Carvalho Chehab commit cc7093df3cf7ace678284c0ad3a6cfb3a1d5efd9 Author: David Hardeman Date: Tue Sep 26 16:39:00 2006 -0300 V4L/DVB (4670): Allow RC5 codes 64 - 127 in ir-kbd-i2c.c The RC5 coding has for a long time supported commands 64-127 in addition to 0-63. This is controlled by the second bit of the RC5 packet (see The attached patch modifies ir-kbd-i2c.c to allow for commands 64-127, tested with a PVR350 card in combination with a programmable remote. Signed-off-by: David Hardeman Signed-off-by: Andrew Morton Signed-off-by: Mauro Carvalho Chehab commit 4508f59826b81ad562912887e72caff392da18d1 Author: Michael Krufky Date: Mon Sep 25 14:14:24 2006 -0300 V4L/DVB (4669): Cx88: autodetect Club3D Zap TV2100 by subsystem id 12ab:2300 The Club3D Zap TV2100 has been reported to be a clone of the Yuan PG300 and KWorld/VStream XPert DVB-T with cx22702 Signed-off-by: Michael Krufky Signed-off-by: Mauro Carvalho Chehab commit 48d5e8031e45545d353cb81a8f52c727deea88c0 Author: Michael Krufky Date: Mon Sep 25 14:09:10 2006 -0300 V4L/DVB (4668): Cx88: rename mpeg capability flags from CX88_BOARD_FOO to CX88_MPEG_FOO The flags for mpeg capabilities are sub-optimally named as CX88_BOARD_DVB and CX88_BOARD_BLACKBIRD, which creates some confusion. This patch renames the above to CX88_MPEG_DVB and CX88_MPEG_BLACKBIRD. Signed-off-by: Michael Krufky Signed-off-by: Trent Piepho Signed-off-by: Mauro Carvalho Chehab commit 3a5ba52a1a1981c51af8f3559c16feaa238b2fec Author: Steven Toth Date: Mon Sep 25 12:43:45 2006 -0300 V4L/DVB (4667): Changed cx88_board .dvb and .register to an enum. Some basic cleanup in preperation for a future patch where the cx88-mpeg functions have to deal with the port being used by multiple frontends in (mpeg2 hw encoder and dvb demod). Signed-off-by: Steven Toth Signed-off-by: Mauro Carvalho Chehab commit 3057906df5c9be9c99a181eccac3bc40cf07ad9f Author: Steven Toth Date: Mon Sep 25 12:43:42 2006 -0300 V4L/DVB (4666): Ensure the WM8775 driver is loaded generically for any board. A generic change to cards to allow any board to specify whether it needs the wm8775 module loaded (by the core) or not. Signed-off-by: Steven Toth Signed-off-by: Mauro Carvalho Chehab commit ba7e6f3e3e639de2597afffaae3fda75f6e6082d Author: Steven Toth Date: Mon Sep 25 12:41:53 2006 -0300 V4L/DVB (4665): Add frontend structure callback for bus acquisition. This patch enables generic bus arbitration callbacks enabling dvbcore frontend_open and frontend_release to pass 'acquire' and 'release' hardware messages back into the DVB bridge frameworks. Frameworks like cx88 can then implement single bus multiple demod card sharing features, which would prohibit two frontends from attempting to use a single transport bus at the same time. Signed-off-by: Steven Toth Signed-off-by: Mauro Carvalho Chehab commit 43e0602222e861957c82a7ddc7c4c2062c1aebbb Author: Mike Isely Date: Sat Sep 23 23:47:50 2006 -0300 V4L/DVB (4664): Pvrusb2: Don't use videodev.h; use v4l2-dev.h in its place The function prototype needed in pvrusb2-v4l2.c has been moved to v4l2-dev.h. Track that change. Signed-off-by: Mike Isely Signed-off-by: Mauro Carvalho Chehab commit 759100531d76f36714dde0f05a09245e9e921e4c Author: Mike Isely Date: Sat Sep 23 22:30:50 2006 -0300 V4L/DVB (4663): Pvrusb2: Get rid of private global context array brain damage A previous attempt to deal with the upcoming loss of video_set_drvdata() and video_get_drvdata() resulted in logic which causes a circular locking dependency - also known as a deadlock. This changeset attacks the problem in a different manner, using a technique that no longer requires the problematic mutex (or that private global array either). Signed-off-by: Mike Isely Signed-off-by: Mauro Carvalho Chehab commit 32ffa9ae03c529df4208b63b4b17c6d84141faa3 Author: Mike Isely Date: Sat Sep 23 22:26:52 2006 -0300 V4L/DVB (4662): Pvrusb2: Implement VIDIOC_INT_[G|S]_REGISTER Implement VIDIOC_INT_SET_REGISTER and VIDIOC_INT_GET_REGISTER for the pvrusb2 driver. This is a debugging aid which will not be enabled unless CONFIG_VIDEO_ADV_DEBUG has been enabled. Signed-off-by: Mike Isely Signed-off-by: Mauro Carvalho Chehab commit 59753950a67edf386413c7b18039b89de56b40fb Author: Mike Isely Date: Sat Sep 23 22:19:29 2006 -0300 V4L/DVB (4661): Pvrusb2: improve 24XXX config option description The CONFIG_VIDEO_PVRUSB2_24XXX is not nearly as "experimental" as the description suggests. So refine the description to better match reality. Signed-off-by: Mike Isely Signed-off-by: Mauro Carvalho Chehab commit 06afc0ffe0023c4a378e255883c83eb996d1a8e6 Author: Mauro Carvalho Chehab Date: Sat Sep 30 06:54:14 2006 -0300 V4L/DVB (4660): Some cleanups at helper chips menu Rearranged itens, so that decoders came first; cx25840 is, in fact, an audio and video decoder; Fixed some incorrect upercases; Removed the word "chip" for some audio processors at item name; Removed the word "driver" for some item names; Signed-off-by: Mauro Carvalho Chehab commit 025c5d66ad43bb53651379d0fb257daca568d3f9 Author: Patrick Boettcher Date: Wed Sep 20 06:06:58 2006 -0300 V4L/DVB (4658): Another fix because of dvb_attach Fixed mt2060-usage with dvb_attach Signed-off-by: Patrick Boettcher Signed-off-by: Mauro Carvalho Chehab commit a37ddced86b092f8f4fd8dc20d4f5dce2e7cc6d3 Author: Patrick Boettcher Date: Wed Sep 20 06:06:11 2006 -0300 V4L/DVB (4657): Power control of the device for dual board Corrected power control of the device for dual boards Signed-off-by: Patrick Boettcher Signed-off-by: Mauro Carvalho Chehab commit 1d57436040a7ff486fb90a82b6f542fbe275f624 Author: Patrick Boettcher Date: Wed Sep 20 04:42:23 2006 -0300 V4L/DVB (4656): Fixed dvb_attach for dib3000mc in dibusb When converting the dib3000mc-driver to dvb_attach I forgot to invert the check for NULL. Signed-off-by: Patrick Boettcher Signed-off-by: Mauro Carvalho Chehab commit b97c5c7e6cc9ab1d2bb590db094b8534410deca3 Author: Patrick Boettcher Date: Wed Sep 20 04:40:14 2006 -0300 V4L/DVB (4655): Removed compilation warnings Removed compilation warnings for unused statics and locals Signed-off-by: Patrick Boettcher Signed-off-by: Mauro Carvalho Chehab commit 7fb3fc0c30a8bb8831da9d74b0c5f574962044f1 Author: Patrick Boettcher Date: Wed Sep 20 04:37:18 2006 -0300 V4L/DVB (4654): Added module parameter force_lna_activation Added a module parameter for force the activation of any LNA on a board. Suggest by Steve Toth. Signed-off-by: Patrick Boettcher Signed-off-by: Mauro Carvalho Chehab commit 9d0bc7047fc7a3f0e3bdc9ccc53ab6c487d4e189 Author: Patrick Boettcher Date: Tue Sep 26 04:10:14 2006 -0300 V4L/DVB (4654a): dib700m is not yet ready. Removing include for kernel 2.6.19 Signed-off-by: Mauro Carvalho Chehab commit 303cbeaaacd449545d259f82b966d070418c58af Author: Patrick Boettcher Date: Tue Sep 19 12:51:56 2006 -0300 V4L/DVB (4653): Misc fixes for Nova-T 500 - forward the clock to the slave undivided - when sleeping the 3000 do not shutdown the clock Signed-off-by: Patrick Boettcher Signed-off-by: Mauro Carvalho Chehab commit 01b4bf31ce6ca6c1de31c773fa281a34fd98ff87 Author: Patrick Boettcher Date: Tue Sep 19 12:51:53 2006 -0300 V4L/DVB (4652): Misc fixes for DiB3000MC and Nova-T 500 - make the timing frequency update work. - fix AGC calibration for Nova-T 500 Signed-off-by: Patrick Boettcher Signed-off-by: Mauro Carvalho Chehab commit d535cfa776b091a95ca88ba560a9d296cb1570fd Author: Patrick Boettcher Date: Tue Sep 19 12:51:49 2006 -0300 V4L/DVB (4651): Adding another USB product ID for Nova-T 500 Adding another USB product ID for the Nova-T 500. Reported by Jose Alberto Reguero. Signed-off-by: Patrick Boettcher Signed-off-by: Mauro Carvalho Chehab commit 5bc636072d708287c106af15a4cd11c434c8329a Author: Patrick Boettcher Date: Tue Sep 19 12:51:46 2006 -0300 V4L/DVB (4650): Misc fixes for dib0700 download Several fixes for dib0700-module. (Firmware error checking, dependency) Signed-off-by: Patrick Boettcher Signed-off-by: Mauro Carvalho Chehab commit 0540c4961fcc6d69b8a3314c330c376890715eee Author: Patrick Boettcher Date: Tue Sep 19 12:51:43 2006 -0300 V4L/DVB (4649): Merged VP702x support to dvb-usb multi input The fixed support for the VP70x (supports only StarBox2) is now in sync with latest changes in the dvb-usb framework. Signed-off-by: Patrick Boettcher Signed-off-by: Mauro Carvalho Chehab commit 6958effedb0dc709966c22e7fd0e8210b5401b84 Author: Patrick Boettcher Date: Tue Sep 19 12:51:40 2006 -0300 V4L/DVB (4648): Hauppauge Nova-T 500 support added This changeset finalizes the support of the Hauppauge Nova-T 500 (Dual DVB-T). It adds correct AGC setting for the 3000P, correct firmware download state detection. Additionally it fixes the mt2060-driver to be able to be used with dvb_attach. Signed-off-by: Patrick Boettcher Signed-off-by: Mauro Carvalho Chehab commit b7f54910ce018f93a74211136be46c09cefd80e2 Author: Patrick Boettcher Date: Tue Sep 19 12:51:37 2006 -0300 V4L/DVB (4647): Added module for DiB0700 based devices Added module for DiB0700 based USB devices. This module is preliminary and untested (because of a lack of test devices) but should work. Further commits will be necessary to make it work properly. Signed-off-by: Patrick Boettcher Signed-off-by: Mauro Carvalho Chehab commit 136cafbf4a024b52ba0a10627217f03cea9ff9f8 Author: Patrick Boettcher Date: Tue Sep 19 12:51:33 2006 -0300 V4L/DVB (4646): Misc. changes, DiB3000MC, MT2060 Changed the attach-function of the dib3000mc-driver to return only one frontend. In case of multiple dib3000-chips on one board, one has to call the i2c-enumeration manually before. Added a field to Microtune 2060 config to output the clock to other tuners/device on a board. Signed-off-by: Patrick Boettcher Signed-off-by: Mauro Carvalho Chehab commit 6870ab576c86a496869fbd5bb339da7e442ee7f5 Author: Patrick Boettcher Date: Tue Sep 19 12:51:30 2006 -0300 V4L/DVB (4645): Added new file for multiple input rewrite Forgot to add usb-urb.c which is new after adding support for multiple inputs Signed-off-by: Patrick Boettcher Signed-off-by: Mauro Carvalho Chehab commit c19da7efb34fc4b9ef672073ff0890ded7bc821a Author: Patrick Boettcher Date: Tue Sep 19 12:51:27 2006 -0300 V4L/DVB (4644): Multi-input fix for dtt200u Small fix for multi input for dtt200u module. Signed-off-by: Patrick Boettcher Signed-off-by: Mauro Carvalho Chehab commit 4d43e13f723e12734257277cc38497fab1efc605 Author: Patrick Boettcher Date: Sat Sep 30 06:53:48 2006 -0300 V4L/DVB (4643): Multi-input patch for DVB-USB device This patch is the first commit of the Multiple Input Patch for the DVB-USB frame work. It changes the DVB-USB-device to be able to have more than one streaming input (e.g. multiple DVB-T sources) on one device. This is a necessary feature for the upcoming DiB7700 driven devices. Signed-off-by: Patrick Boettcher Signed-off-by: Mauro Carvalho Chehab commit 91bd61099defb28a442db358dd9c1693c6589cee Author: Vitaly Bordug Date: Mon Oct 2 22:45:17 2006 +0400 POWERPC: mpc82xx merge: board-specific/platform stuff(resend) This intruduces 82xx family in arch/powerpc/platforms, and has all the board-specific code to represent regression-less transaction from ppc. The functionality is apparently the same, including PCI controller. Signed-off-by: Vitaly Bordug commit ed943c1faba53d9a0bde56007ee27762b29dccbd Author: Vitaly Bordug Date: Mon Oct 2 22:41:50 2006 +0400 POWERPC: 8272ads merge to powerpc: common stuff This has modules of common directories related to the mpc8272ADS board, mainly common cpm2 changes and fsl_soc.c portions related to the bitbang MDIO and other mechanisms specific for this family. Signed-off-by: Vitaly Bordug commit e02f73e9fd69f1c6d16c207f7a91ce721fe8beab Author: Vitaly Bordug Date: Mon Oct 2 22:22:36 2006 +0400 POWERPC: Added devicetree for mpc8272ads board This adds current dts file used with MPC8272ADS, introducing new mdio bitbang defines, as well as fully-CPM2-SoC board design. Signed-off-by: Vitaly Bordug commit 8db0201026fbb45c383176f539dc8af2a6871ab8 Author: Ralf Baechle Date: Mon Oct 2 16:54:48 2006 +0100 [MIPS] Fix wreckage after removal of tickadj; convert to GENERIC_TIME. Signed-off-by: Ralf Baechle commit 3f821640341b86e47b79122d92af365fc99b5d65 Author: Maciej W. Rozycki Date: Tue Oct 3 12:27:38 2006 +0100 [MIPS] DECstation defconfig update Sanitise a number of settings for the DECstation. Signed-off-by: Maciej W. Rozycki Signed-off-by: Ralf Baechle commit b58e5d050ff60335b106a895a87a59a8f5475db4 Author: Atsushi Nemoto Date: Sat Sep 30 03:34:06 2006 +0900 [MIPS] Fix size of zones_size and zholes_size array Commit f06a96844a577c43249fce25809a4fae07407f46 broke MIPS. Signed-off-by: Atsushi Nemoto Signed-off-by: Ralf Baechle commit 34c2dd01fd10268fb8f362c8275f75517770e286 Author: Ralf Baechle Date: Tue Oct 3 14:42:02 2006 +0100 [MIPS] BCM1480: Mask pending interrupts against c0_status.im. Signed-off-by: Ralf Baechle commit d599def5cd81439e7da04dc6754b257043f5e584 Author: Maciej W. Rozycki Date: Tue Oct 3 12:42:02 2006 +0100 [MIPS] SB1250: Interrupt handler fixes Mask cp0.status against cp0.cause. Additionally, spurious interrupts are not recorded. Signed-off-by: Maciej W. Rozycki Signed-off-by: Ralf Baechle commit af8b128719f5248e542036ea994610a29d0642a6 Author: Yoichi Yuasa Date: Mon Oct 2 23:19:00 2006 +0900 [MIPS] Remove IT8172-based platforms, ITE 8172G and Globespan IVR support. As per feature-removal-schedule.txt. Signed-off-by: Yoichi Yuasa Acked-by: Alan Cox Signed-off-by: Ralf Baechle commit 08dfcee84c5c747ca1cecbd04c3a7e65cc9ce26b Author: Ralf Baechle Date: Mon Oct 2 16:36:51 2006 +0100 [MIPS] Remove Atlas and SEAD from feature-removal-schedule. Maciej has started fixing the code for these platforms. Signed-off-by: Ralf Baechle commit 33a1943cb49e4049530624399e70ee3be82cb635 Author: Ralf Baechle Date: Mon Oct 2 16:32:43 2006 +0100 [MIPS] Remove Jaguar and Ocelot family from feature list. There are remaining users with interest in the platform after all. Signed-off-by: Ralf Baechle commit 15a1c5140436c5be7673a4709c5d7e1f3cd7bdd9 Author: Maciej W. Rozycki Date: Mon Oct 2 12:55:09 2006 +0100 [MIPS] BCM1250: TRDY timeout tweaks for Broadcom SiByte systems It was obesrved that at least one older PCI card predating the requirement for the TRDY signal to respond within 16 clock ticks actually does not meet this rule nor even the power-on defaults of the PCI bridges found in development systems built around the Broadcom SiByte SOCs. Here is a patch that bumps up the timeout to the highest finite value supported by these chips, which is 255 clock ticks. The bridges affected are the SiByte SOC itself and the SP1011. This change does not effectively affect systems only having PCI option cards installed that meet the TRDY requirement of the current PCI spec. The rule was introduced with PCI 2.1, so any older card may make the system affected. If this is the case, performance of the system will suffer in return for the card working at all. If this is a concern, then the solution is not to use such cards. Signed-off-by: Maciej W. Rozycki Signed-off-by: Ralf Baechle --- commit 3a42aa934856bfe3f28946f66ea8a5f056445747 Author: Maciej W. Rozycki Date: Fri Sep 29 19:06:38 2006 +0100 [MIPS] Remove dead DECstation boot code Code in arch/mips/dec/boot/ has been dead for long. Let's get rid of it before some epidemic spreads. Signed-off-by: Maciej W. Rozycki Signed-off-by: Ralf Baechle commit 0e90f49b112e4c91dee7d61eccc06bcd25b9c534 Author: Franck Bui-Huu Date: Fri Sep 29 11:08:59 2006 +0200 [MIPS] Let gcc align 'struct pt_regs' on 8 bytes boundary The stack pointer in MIPS/gcc should always 8 bytes aligned on entry to any routines. Therefore pt_regs structure must be aligned to 8-byte boundary too. Instead of creating dummy fields to achieve this alignment, this patch let gcc doing it. Therefore 'smtc_pad' field can be safely removed. Signed-off-by: Franck Bui-Huu Signed-off-by: Ralf Baechle commit 8ccb3dcd1f8e80e8702642e1de26541b52f6bb7c Author: Linus Torvalds Date: Tue Oct 3 09:45:46 2006 -0700 x86: Fix booting with "no387 nofxsr" Jesper Juhl reported that testing the software math-emulation by forcing "no387" doesn't work on modern CPU's. The reason was two-fold: - you also need to pass in "nofxsr" to make sure that we not only don't touch the old i387 legacy hardware, it also needs to disable the modern XMM/FXSR sequences - "nofxsr" didn't actually clear the capability bits immediately, leaving the early boot sequence still using FXSR until we got to the identify_cpu() stage. This fixes the "nofxsr" flag to take effect immediately on the boot CPU. Debugging by Randy Dunlap Acked-by: Randy Dunlap Cc: Jesper Juhl Cc: Andi Kleen Signed-off-by: Linus Torvalds commit fcb47e0bd279cab5ba8299c0a1e3364d15413a6b Author: Ryan O'Hara Date: Tue Oct 3 11:57:35 2006 -0400 [GFS2] Initialize SELinux extended attributes at inode creation time. This patch has gfs2_security_init declared as a static function, which is correct. As a result, the declaration of this function in inode.h is removed (and thus inode.h is unchanged). Also removed #include eaops.h, which is not needed. Signed-Off-By: Ryan O'Hara Signed-off-by: Steven Whitehouse commit ddacfaf76dd620af9b73343a975749778321b51c Author: Steven Whitehouse Date: Tue Oct 3 11:10:41 2006 -0400 [GFS2] Move logging code into log.c (mostly) This moves the logging code from meta_io.c into log.c and glops.c. As a result the routines can now be static and all the logging code is together in log.c, leaving meta_io.c with just metadata i/o code in it. Signed-off-by: Steven Whitehouse commit 8b2a1fd1b394c60eaa2587716102dd5e9b4e5990 Author: Zach Brown Date: Tue Oct 3 01:16:15 2006 -0700 [PATCH] pr_debug: check pr_debug() arguments check pr_debug() arguments When DEBUG isn't defined pr_debug() is defined away as an empty macro. By throwing away the arguments we allow completely incorrect code to build. Instead let's make it an empty inline which checks arguments and mark it so gcc can check the format specification. This results in a seemingly insignificant code size increase. A x86-64 allyesconfig: text data bss dec hex filename 25354768 7191098 4854720 37400586 23ab00a vmlinux.before 25354945 7191138 4854720 37400803 23ab0e3 vmlinux Signed-off-by: Zach Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 3879b6b6a8ee39b50559b2c2dd083c557d39e0f8 Author: Andrew Morton Date: Tue Oct 3 01:16:15 2006 -0700 [PATCH] isdn: more pr_debug() fixes drivers/isdn/sc/event.c: In function 'indicate_status': drivers/isdn/sc/event.c:49: error: 'events' undeclared (first use in this function) drivers/isdn/sc/event.c:49: error: (Each undeclared identifier is reported only once drivers/isdn/sc/event.c:49: error: for each function it appears in.) drivers/isdn/sc/event.c:49: warning: format '%d' expects type 'int', but argument 4 has type 'ulong' drivers/isdn/sc/interrupt.c: In function 'interrupt_handler': drivers/isdn/sc/interrupt.c:97: warning: format '%x' expects type 'unsigned int', but argument 4 has type 'long unsigned int' drivers/isdn/sc/timer.c: In function 'check_reset': drivers/isdn/sc/timer.c:80: warning: format '%d' expects type 'int', but argument 3 has type 'long unsigned int' Acked-by: Karsten Keil Cc: Zach Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 20f43535694bb19e1bb45917b73b7e5cd5d74818 Author: Andrew Morton Date: Tue Oct 3 01:16:14 2006 -0700 [PATCH] isdn-debug-build-fix When pr_debug() is enabled: drivers/isdn/sc/command.c: In function 'command': drivers/isdn/sc/command.c:107: error: 'commands' undeclared (first use in this function) drivers/isdn/sc/command.c:107: error: (Each undeclared identifier is reported only once drivers/isdn/sc/command.c:107: error: for each function it appears in.) drivers/isdn/sc/command.c:122: warning: format '%x' expects type 'unsigned int', but argument 3 has type 'long unsigned int' drivers/isdn/sc/command.c: In function 'dial': drivers/isdn/sc/command.c:199: warning: format '%d' expects type 'int', but argument 4 has type 'long unsigned int' drivers/isdn/sc/command.c: In function 'answer': drivers/isdn/sc/command.c:221: warning: format '%s' expects type 'char *', but argument 3 has type 'long unsigned int' drivers/isdn/sc/command.c: In function 'hangup': drivers/isdn/sc/command.c:244: warning: format '%d' expects type 'int', but argument 3 has type 'long unsigned int' drivers/isdn/sc/command.c: In function 'setl2': drivers/isdn/sc/command.c:265: error: 'l2protos' undeclared (first use in this function) drivers/isdn/sc/command.c: In function 'setl3': drivers/isdn/sc/command.c:297: error: 'l3protos' undeclared (first use in this function) drivers/isdn/sc/command.c:297: warning: format '%d' expects type 'int', but argument 3 has type 'long unsigned int' drivers/isdn/sc/command.c: In function 'acceptb': drivers/isdn/sc/command.c:315: warning: format '%d' expects type 'int', but argument 3 has type 'long unsigned int' drivers/isdn/sc/command.c: In function 'clreaz': drivers/isdn/sc/command.c:330: warning: format '%d' expects type 'int', but argument 3 has type 'long unsigned int' drivers/isdn/sc/command.c: In function 'seteaz': drivers/isdn/sc/command.c:345: warning: format '%d' expects type 'int', but argument 3 has type 'long unsigned int' Cc: Zach Brown Acked-by: Karsten Keil Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 42d3fb5a8771b840e0bd6dbcd0c734883dd90b6f Author: Frederik Deweerdt Date: Tue Oct 3 01:16:11 2006 -0700 [PATCH] arm build fail: vfpsingle.c It looks like Zach Brown's patch pr_debug-check-pr_debug-arguments worked as inteded. That is, it doesn't "allow completely incorrect code to build." :). The arm build fails with the following message: CC arch/arm/vfp/vfpsingle.o arch/arm/vfp/vfpsingle.c: In function `__vfp_single_normaliseround': arch/arm/vfp/vfpsingle.c:201: error: `func' undeclared (first use in this function) arch/arm/vfp/vfpsingle.c:201: error: (Each undeclared identifier is reported only once arch/arm/vfp/vfpsingle.c:201: error: for each function it appears in.) make[1]: *** [arch/arm/vfp/vfpsingle.o] Error 1 make: *** [arch/arm/vfp] Error 2 The following patch fixes the issue by using func only when DEBUG is defined. Signed-off-by: Frederik Deweerdt Cc: Russell King Cc: Zach Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit c8c94b11399b1dc7f08f7b28ec4289a727f0daee Author: Zach Brown Date: Tue Oct 3 01:16:10 2006 -0700 [PATCH] pr_debug: trident: use size_t length modifier in pr_debug format arguments trident: use size_t length modifier in pr_debug format arguments Signed-off-by: Zach Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 8057de64fd4734ae3e70cf76deb77f1c19958494 Author: Zach Brown Date: Tue Oct 3 01:16:10 2006 -0700 [PATCH] pr_debug: ifb: replace missing comma to separate pr_debug arguments ifb: replace missing comma to separate pr_debug arguments Signed-off-by: Zach Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit cb7cf57a6196a4b27e5d2f71debefc80a2fa1725 Author: Zach Brown Date: Tue Oct 3 01:16:09 2006 -0700 [PATCH] pr_debug: dell_rbu: fix pr_debug argument warnings dell_rbu: fix pr_debug argument warnings Use size_t length modifier when outputting size_t and use %p instead of %lu for 'u8 *'. Signed-off-by: Zach Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 5df0a29d9c2239c28b5864037b51ac3d747439a9 Author: Zach Brown Date: Tue Oct 3 01:16:08 2006 -0700 [PATCH] pr_debug: tipar: repair nonexistant pr_debug argument use tipar: repair nonexistant pr_debug argument use I guessed what the pr_debug meant by 'data'. Signed-off-by: Zach Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit f2b9ecc41654256ae8829193d3380935833ae976 Author: Zach Brown Date: Tue Oct 3 01:16:07 2006 -0700 [PATCH] pr_debug: umem: repair nonexistant bh pr_debug reference umem: repair nonexistant bh pr_debug reference Signed-off-by: Zach Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 5c1fdf4150c3b4e486020d0ada787469900d66ed Author: Zach Brown Date: Tue Oct 3 01:16:06 2006 -0700 [PATCH] pr_debug: sysfs: use size_t length modifier in pr_debug format arguments sysfs: use size_t length modifier in pr_debug format arguments Signed-off-by: Zach Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 4779efca147475a708e84d902e096bbd20e613b7 Author: Zach Brown Date: Tue Oct 3 01:16:05 2006 -0700 [PATCH] pr_debug: configfs: use size_t length modifier in pr_debug format argument configfs: use size_t length modifier in pr_debug format argument Signed-off-by: Zach Brown Acked-by: Joel Becker Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 691578cd558e647dd89ae5bc74a2307bce821186 Author: Zach Brown Date: Tue Oct 3 01:16:04 2006 -0700 [PATCH] pr_debug: aio: use size_t length modifier in pr_debug format arguments aio: use size_t length modifier in pr_debug format arguments Signed-off-by: Zach Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 3a0f5bbb1a36ed113065099d3dc69a66e1c8d567 Author: NeilBrown Date: Tue Oct 3 01:16:03 2006 -0700 [PATCH] md: add error reporting to superblock write failure Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit d19c2ee0b8d1cd83f8bc0f1f5e94e6b6ec71ea10 Author: Paul Clements Date: Tue Oct 3 01:16:02 2006 -0700 [PATCH] md: allow SET_BITMAP_FILE to work on 64bit kernel with 32bit userspace Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit a638b2dc951c4cafea31b34a1db1c3d94809649e Author: Paul Clements Date: Tue Oct 3 01:16:01 2006 -0700 [PATCH] md: use ffz instead of find_first_set to convert multiplier to shift find_first_set doesn't find the least-significant bit on bigendian machines, so it is really wrong to use it. ffs is closer, but takes an 'int' and we have a 'unsigned long'. So use ffz(~X) to convert a chunksize into a chunkshift. Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 14f50b49fdab8f4c9fc87b55d3631e3bf1ffd385 Author: NeilBrown Date: Tue Oct 3 01:16:00 2006 -0700 [PATCH] md: remove 'experimental' classification from raid5 reshape I have had enough success reports not to believe that this is safe for 2.6.19. Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit e8703fe1f5cdcff686f7eb0a46487b5a04a9324a Author: NeilBrown Date: Tue Oct 3 01:15:59 2006 -0700 [PATCH] md: remove MAX_MD_DEVS which is an arbitrary limit Once upon a time we needed to fixed limit to the number of md devices, probably because we preallocated some array. This need no longer exists, but we still have an arbitrary limit. So remove MAX_MD_DEVS and allow as many devices as we can fit into the 'minor' part of a device number. Also remove some useless noise at init time (which reports MAX_MD_DEVS) and remove MD_THREAD_NAME_MAX which hasn't been used for a while. Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit d33a56d3639eba077489c937943a32ef6237b1b8 Author: NeilBrown Date: Tue Oct 3 01:15:58 2006 -0700 [PATCH] md: fix duplicity of levels in md.txt md.txt has two sections describing the 'level' sysfs attribute, and some of the text is out-of-date. So make just one section, and make it right. Cc: Christian Kujau Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 61df9d91e986f1314af482e7ea5f2312a6cd0d14 Author: NeilBrown Date: Tue Oct 3 01:15:57 2006 -0700 [PATCH] md: make messages about resync/recovery etc more specific It is possible to request a 'check' of an md/raid array where the whole array is read and consistancies are reported. This uses the same mechanisms as 'resync' and so reports in the kernel logs that a resync is being started. This understandably confuses/worries people. Also the text in /proc/mdstat suggests a 'resync' is happen when it is just a check. This patch changes those messages to be more specific about what is happening. Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit f022b2fddd97795bc9333ffb6862eacfa95c6a95 Author: NeilBrown Date: Tue Oct 3 01:15:56 2006 -0700 [PATCH] md: add a ->congested_fn function for raid5/6 This is very different from other raid levels and all requests go through a 'stripe cache', and it has congestion management already. Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 0d12922823408b26f83b15cae4a4feff4bd22f28 Author: NeilBrown Date: Tue Oct 3 01:15:54 2006 -0700 [PATCH] md: define ->congested_fn for raid1, raid10, and multipath raid1, raid10 and multipath don't report their 'congested' status through bdi_*_congested, but should. This patch adds the appropriate functions which just check the 'congested' status of all active members (with appropriate locking). raid1 read_balance should be modified to prefer devices where bdi_read_congested returns false. Then we could use the '&' branch rather than the '|' branch. However that should would need some benchmarking first to make sure it is actually a good idea. Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 26be34dc3a46be983352dd89683db374b0cb73fa Author: NeilBrown Date: Tue Oct 3 01:15:53 2006 -0700 [PATCH] md: define backing_dev_info.congested_fn for raid0 and linear Each backing_dev needs to be able to report whether it is congested, either by modulating BDI_*_congested in ->state, or by defining a ->congested_fn. md/raid did neither of these. This patch add a congested_fn which simply checks all component devices to see if they are congested. Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit c04be0aa82ff535e3676ab3e573957bdeef41879 Author: NeilBrown Date: Tue Oct 3 01:15:53 2006 -0700 [PATCH] md: Improve locking around error handling The error handling routines don't use proper locking, and so two concurrent errors could trigger a problem. So: - use test-and-set and test-and-clear to synchonise the In_sync bits with the ->degraded count - use the spinlock to protect updates to the degraded count (could use an atomic_t but that would be a bigger change in code, and isn't really justified) - remove un-necessary locking in raid5 Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 11ce99e625fe2718ad2682bfdd99070b337e6252 Author: NeilBrown Date: Tue Oct 3 01:15:52 2006 -0700 [PATCH] md: Remove working_disks from raid1 state data It is equivalent to conf->raid_disks - conf->mddev->degraded. Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 867868fb557eb2a2120b80779468fa372584ddb0 Author: NeilBrown Date: Tue Oct 3 01:15:51 2006 -0700 [PATCH] md: Factor out part of raid1d into a separate function raid1d has toooo many nested block, so take the fix_read_error functionality out into a separate function. Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 2d2063ceae73660d5142f4754d50a75b655fd1f9 Author: Coywolf Qi Hunt Date: Tue Oct 3 01:15:50 2006 -0700 [PATCH] md: remove unnecessary variable x in stripe_to_pdidx() Signed-off-by: Coywolf Qi Hunt Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 9b1d1dac181d8c1b9492e05cee660a985d035a06 Author: Paul Clements Date: Tue Oct 3 01:15:49 2006 -0700 [PATCH] md: new sysfs interface for setting bits in the write-intent-bitmap Add a new sysfs interface that allows the bitmap of an array to be dirtied. The interface is write-only, and is used as follows: echo "1000" > /sys/block/md2/md/bitmap (dirty the bit for chunk 1000 [offset 0] in the in-memory and on-disk bitmaps of array md2) echo "1000-2000" > /sys/block/md1/md/bitmap (dirty the bits for chunks 1000-2000 in md1's bitmap) This is useful, for example, in cluster environments where you may need to combine two disjoint bitmaps into one (following a server failure, after a secondary server has taken over the array). By combining the bitmaps on the two servers, a full resync can be avoided (This was discussed on the list back on March 18, 2005, "[PATCH 1/2] md bitmap bug fixes" thread). Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 76186dd8b73d2b7b9b4c8629b89c845e97009801 Author: NeilBrown Date: Tue Oct 3 01:15:48 2006 -0700 [PATCH] md: remove 'working_disks' from raid10 state It isn't needed as mddev->degraded contains equivalent info. Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 02c2de8cc835885bdff51a8bfd6c0b659b969f50 Author: NeilBrown Date: Tue Oct 3 01:15:47 2006 -0700 [PATCH] md: remove the working_disks and failed_disks from raid5 state data. They are not needed. conf->failed_disks is the same as mddev->degraded and conf->working_disks is conf->raid_disks - mddev->degraded. Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 850b2b420cd5b363ed4cf48a8816d656c8b5251b Author: NeilBrown Date: Tue Oct 3 01:15:46 2006 -0700 [PATCH] md: replace magic numbers in sb_dirty with well defined bit flags Instead of magic numbers (0,1,2,3) in sb_dirty, we have some flags instead: MD_CHANGE_DEVS Some device state has changed requiring superblock update on all devices. MD_CHANGE_CLEAN The array has transitions from 'clean' to 'dirty' or back, requiring a superblock update on active devices, but possibly not on spares MD_CHANGE_PENDING A superblock update is underway. We wait for an update to complete by waiting for all flags to be clear. A flag can be set at any time, even during an update, without risk that the change will be lost. Stop exporting md_update_sb - isn't needed. Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 6814d5368d68341ec6b5e4ecd10ea5947130775a Author: NeilBrown Date: Tue Oct 3 01:15:45 2006 -0700 [PATCH] md: factor out part of raid10d into a separate function. raid10d has toooo many nested block, so take the fix_read_error functionality out into a separate function. Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit b5c124af69119c1b5c1e728bd2e7b5b1fad9b7be Author: NeilBrown Date: Tue Oct 3 01:15:45 2006 -0700 [PATCH] md: fix a comment that is wrong in raid5.h Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit fbedac04fa11d7f9f9f425c7ec253f55becaae57 Author: Adrian Bunk Date: Tue Oct 3 01:15:44 2006 -0700 [PATCH] md: the scheduled removal of the START_ARRAY ioctl for md This patch contains the scheduled removal of the START_ARRAY ioctl for md. Signed-off-by: Adrian Bunk Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 999d816851c3e080412a19558f111d01852d2f04 Author: Bryn Reeves Date: Tue Oct 3 01:15:43 2006 -0700 [PATCH] dm table: add target flush This patch adds support for a per-target dm_flush_fn method. This is needed to allow dm-loop to invalidate page cache mappings in response to BLKFLSBUF ioctl commands. Signed-off-by: Bryn Reeves Signed-off-by: Alasdair G Kergon Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 3cb4021453a69585e458ec2177677c0c1300dccf Author: Bryn Reeves Date: Tue Oct 3 01:15:42 2006 -0700 [PATCH] dm: extract device limit setting Separate the setting of device I/O limits from dm_get_device(). dm-loop will use this. Signed-off-by: Bryn Reeves Signed-off-by: Alasdair G Kergon Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 9faf400f7e51e56ec76b2fc481c3191c01cb3a57 Author: Stefan Bader Date: Tue Oct 3 01:15:41 2006 -0700 [PATCH] dm: use private biosets I found a problem within device-mapper that occurs in low-mem situations. It was found using a mirror target but I think in theory it would hit any setup that stacks device-mapper devices (like LVM on top of multipath). Since device-mapper core uses the common fs_bioset in clone_bio(), and a private, but still global, bio_set in split_bvec() it is possible that the filesystem and the first level target successfully get bios but the lower level target doesn't because there is no more memory and the pool was drained by upper layers. So the remapping will be stuck forever. To solve this device-mapper core needs to use a private bio_set for each device. Signed-off-by: Stefan Bader Signed-off-by: Alasdair G Kergon Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 6a24c71843de1354d3bcc2ce47fd0b3bee936399 Author: Milan Broz Date: Tue Oct 3 01:15:40 2006 -0700 [PATCH] dm crypt: use private biosets In the low memory situation dm-crypt needs to use a private mempool of bios to avoid blocking. Signed-off-by: Milan Broz Signed-off-by: Alasdair G Kergon Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 23541d2d288cdb54f417ba1001dacc7f3ea10a97 Author: Milan Broz Date: Tue Oct 3 01:15:39 2006 -0700 [PATCH] dm crypt: move io to workqueue This patch is designed to help dm-crypt comply with the new constraints imposed by the following patch in -mm: md-dm-reduce-stack-usage-with-stacked-block-devices.patch Under low memory the existing implementation relies upon waiting for I/O submitted recursively to generic_make_request() completing before the original generic_make_request() call can return. This patch moves the I/O submission to a workqueue so the original generic_make_request() can return immediately. Signed-off-by: Milan Broz Signed-off-by: Alasdair G Kergon Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 93e605c237a61f5a0ea37b12353392f01d596628 Author: Milan Broz Date: Tue Oct 3 01:15:38 2006 -0700 [PATCH] dm crypt: restructure write processing Restructure the dm-crypt write processing in preparation for workqueue changes in the next patches. Signed-off-by: Milan Broz Signed-off-by: Alasdair G Kergon Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 8b004457168995f2ae2a35327f885183a9e74141 Author: Milan Broz Date: Tue Oct 3 01:15:37 2006 -0700 [PATCH] dm crypt: restructure for workqueue change Restructure part of the dm-crypt code in preparation for workqueue changes. Use 'base_bio' or 'clone' variable names consistently throughout. No functional changes are included in this patch. Signed-off-by: Milan Broz Signed-off-by: Alasdair G Kergon Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit e48d4bbf9697f4fee4f4e48c5e2586b332809519 Author: Milan Broz Date: Tue Oct 3 01:15:37 2006 -0700 [PATCH] dm crypt: add key msg Add the facility to wipe the encryption key from memory (for example while a laptop is suspended) and reinstate it later (when the laptop gets resumed). Signed-off-by: Milan Broz Signed-off-by: Alasdair G Kergon Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 8757b7764f13e336f3c0eb1f634440d4ee4c3a67 Author: Milan Broz Date: Tue Oct 3 01:15:36 2006 -0700 [PATCH] dm table: add target preresume This patch adds a target preresume hook. It is called before the targets are resumed and if it returns an error the resume gets cancelled. The crypt target will use this to indicate that it is unable to process I/O because no encryption key has been supplied. Signed-off-by: Milan Broz Signed-off-by: Alasdair G Kergon Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit cc1092019ce3d9b3e85a285b41e852ff94a6b590 Author: Bryn Reeves Date: Tue Oct 3 01:15:35 2006 -0700 [PATCH] dm: add debug macro Add CONFIG_DM_DEBUG and DMDEBUG() macro. Signed-off-by: Bryn Reeves Signed-off-by: Alasdair G Kergon Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 8560ed6fa8d43537af558514fa48f670b3349f08 Author: Hannes Reinecke Date: Tue Oct 3 01:15:35 2006 -0700 [PATCH] dm: add uevent change event on resume Device-mapper devices are not accessible until a 'resume' ioctl has been issued. For userspace to find out when this happens we need to generate an uevent for udev to take appropriate action. As discussed at OLS we should send 'change' events for 'resume'. We can think of no useful purpose served by also having 'suspend' events. Signed-off-by: Hannes Reinecke Signed-off-by: Kay Sievers Signed-off-by: Alasdair G Kergon Signed-off-by: Greg Kroah-Hartman Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit e69fae561f422f7f9dbda19f448633aa6564663e Author: Micha³ Miros³aw Date: Tue Oct 3 01:15:34 2006 -0700 [PATCH] dm mpath: use kzalloc Use kzalloc() instead of kmalloc() + memset(). Signed-off-by: Micha³ Miros³aw Signed-off-by: Alasdair G Kergon Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 28f16c2039b4eefdc09c99b12f310afb44de5536 Author: Micha³ Miros³aw Date: Tue Oct 3 01:15:33 2006 -0700 [PATCH] dm mpath: tidy ctr After initialising m->ti, there's no need to pass it in subsequent calls to static functions used for parsing parameters. Signed-off-by: Micha³ Miros³aw Signed-off-by: Alasdair G Kergon Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit e52b8f6dbe18c879ad2b5013f991ec9e46813043 Author: Jonathan Brassow Date: Tue Oct 3 01:15:32 2006 -0700 [PATCH] dm mirror: remove trailing space from table Remove trailing space from 'dmsetup table' output. Signed-off-by: Jonathan Brassow Signed-off-by: Alasdair G Kergon Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 695368ac3302174531429a90d55c3f7f9b83906e Author: Alasdair G Kergon Date: Tue Oct 3 01:15:31 2006 -0700 [PATCH] dm snapshot: fix freeing pending exception If a snapshot became invalid while there are outstanding pending_exceptions, when pending_complete() processes each one it forgets to remove the corresponding exception from its exception table before freeing it. Fix this by moving the 'out:' label up one statement so that remove_exception() is always called. Then __invalidate_exception() no longer needs to call it and its 'pe' argument become superfluous. Signed-off-by: Alasdair G Kergon Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 4b832e8de22726206eb886f6dbff47a0f3fe5168 Author: Alasdair G Kergon Date: Tue Oct 3 01:15:30 2006 -0700 [PATCH] dm snapshot: tidy pe ref counting Rename sibling_count to ref_count and introduce get and put functions. Signed-off-by: Alasdair G Kergon Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit ca3a931fd33b841cbcc5932f8eac7c43e0909242 Author: Alasdair G Kergon Date: Tue Oct 3 01:15:30 2006 -0700 [PATCH] dm snapshot: add workqueue Add a workqueue so that I/O can be queued up to be flushed from a separate thread (e.g. if local interrupts are disabled). A new per-snapshot spinlock pe_lock is introduced to protect queued_bios. Signed-off-by: Alasdair G Kergon Signed-off-by: Mark McLoughlin Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 9d493fa8c943ed4ec6e42b7ebfd8f0b7657d54f8 Author: Alasdair G Kergon Date: Tue Oct 3 01:15:29 2006 -0700 [PATCH] dm snapshot: tidy pending_complete This patch rearranges the pending_complete() code so that the functional changes in subsequent patches are clearer. By consolidating the error and the non-error paths, we can move error_snapshot_bios() and __flush_bios() in line. Signed-off-by: Alasdair G Kergon Signed-off-by: Mark McLoughlin Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit ba40a2aa6e6f3d084cf35c8b872fc9f18f91231f Author: Alasdair G Kergon Date: Tue Oct 3 01:15:28 2006 -0700 [PATCH] dm snapshot: tidy snapshot_map This patch rearranges the snapshot_map code so that the functional changes in subsequent patches are clearer. The only functional change is to replace the existing read lock with a write lock which the next patch needs. Signed-off-by: Alasdair G Kergon Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 927ffe7c9a156e259aae31c07dd76072c459ec57 Author: Mark McLoughlin Date: Tue Oct 3 01:15:27 2006 -0700 [PATCH] dm snapshot: fix metadata writing when suspending When suspending a device-mapper device, dm_suspend() sleeps until all necessary I/O is completed. This state is triggered by a callback from persistent_commit(). But some I/O can still be issued *after* the callback (to prepare the next metadata area for use if the current one is full). This patch delays the callback until after that I/O is complete. Signed-off-by: Mark McLoughlin Signed-off-by: Alasdair G Kergon Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit e4ff496db72473949ddfe29a37471969d2f1d4ee Author: Mark McLoughlin Date: Tue Oct 3 01:15:26 2006 -0700 [PATCH] dm snapshot: make read and write exception functions void read_exception() and write_exception() only return an error if supplied with an out-of-range index. If this ever happens it's the result of a bug in the calling code so we handle this with an assertion and remove the error handling in the callers. Signed-off-by: Mark McLoughlin Signed-off-by: Alasdair G Kergon Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit f9cea4f70734f743e0beb55552a9794fa5032645 Author: Mark McLoughlin Date: Tue Oct 3 01:15:25 2006 -0700 [PATCH] dm snapshot: fix metadata error handling Fix the error handling when store.read_metadata is called: the error should be returned immediately. Signed-off-by: Mark McLoughlin Signed-off-by: Alasdair G Kergon Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 4c7e3bf44d0ae227ea1ee87c2197212e65d043d7 Author: Mark McLoughlin Date: Tue Oct 3 01:15:25 2006 -0700 [PATCH] dm snapshot: allow zero chunk_size The chunk size of snapshots cannot be changed so it is redundant to require it as a parameter when activating an existing snapshot. Allow a value of zero in this case and ignore it. For a new snapshot, use a default value if zero is specified. Signed-off-by: Mark McLoughlin Signed-off-by: Alasdair G Kergon Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 92c060a692a0c3482cdfcaf346cb2f7572368895 Author: Milan Broz Date: Tue Oct 3 01:15:24 2006 -0700 [PATCH] dm snapshot: fix invalidation ENOMEM Fix ENOMEM error sign. Signed-off-by: Milan Broz Signed-off-by: Alasdair G Kergon Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit e3f6ac6123be6f4ba14d71af0da0e8d3d39c33ed Author: Ishai Rabinovitz Date: Tue Oct 3 01:15:22 2006 -0700 [PATCH] dm: fix alloc_dev error path While reading the code I found a bug in the error path in alloc_dev in dm.c When blk_alloc_queue fails there is no call to free_minor. This patch fixes the problem. Signed-off-by: Ishai Rabinovitz Signed-off-by: Alasdair G Kergon Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit e90dae1f58d475b71bcc4eebf6d4fd5217ed85c7 Author: Milan Broz Date: Tue Oct 3 01:15:22 2006 -0700 [PATCH] dm: support ioctls on mapped devices: fix with fake file The new ioctl code passes the wrong file pointer to the underlying device. No file pointer is available so make a temporary fake one. ioctl_by_bdev() does set_fs(KERNEL_DS) so it's for ioctls originating within the kernel and unsuitable here. We are processing ioctls that originated in userspace and mapping them to different devices. Fixing the existing callers that pass a NULL file struct and consolidating the fake_file users are separate matters to solve in later patches. Signed-off-by: Milan Broz Signed-off-by: Alasdair G Kergon Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 7006f6eca874cd44d37ccb8cfeb8bed04e3bff22 Author: Alasdair G Kergon Date: Tue Oct 3 01:15:21 2006 -0700 [PATCH] dm: export blkdev_driver_ioctl Export blkdev_driver_ioctl for device-mapper. If we get as far as the device-mapper ioctl handler, we know the ioctl is not a standard block layer BLK* one, so we don't need to check for them a second time and can call blkdev_driver_ioctl() directly. Signed-off-by: Alasdair G Kergon Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 9af4aa30b713a58e5952045f52c41a6e3baa2fdc Author: Milan Broz Date: Tue Oct 3 01:15:20 2006 -0700 [PATCH] dm mpath: support ioctls When an ioctl is performed on a multipath device simply pass it on to the underlying block device through current_path. If current path is not yet selected, select it. Signed-off-by: Milan Broz Signed-off-by: Alasdair G Kergon Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit ab17ffa440cb54ca64111fa4922ba12496fcc8af Author: Milan Broz Date: Tue Oct 3 01:15:18 2006 -0700 [PATCH] dm linear: support ioctls When an ioctl is performed on a device with a linear target, simply pass it on to the underlying block device. Note that the ioctl will pass through the filtering in blkdev_ioctl() twice. Signed-off-by: Milan Broz Signed-off-by: Alasdair G Kergon Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit aa129a2247b164173d45da8ad43cca5de9211403 Author: Milan Broz Date: Tue Oct 3 01:15:15 2006 -0700 [PATCH] dm: support ioctls on mapped devices Extend the core device-mapper infrastructure to accept arbitrary ioctls on a mapped device provided that it has exactly one target and it is capable of supporting ioctls. [We can't use unlocked_ioctl because we need 'inode': 'file' might be NULL. Is it worth changing this?] Signed-off-by: Milan Broz Signed-off-by: Alasdair G Kergon Arnd Bergmann wrote: > Am Wednesday 21 June 2006 21:31 schrieb Alasdair G Kergon: > > static struct block_device_operations dm_blk_dops = { > > .open = dm_blk_open, > > .release = dm_blk_close, > > +.ioctl = dm_blk_ioctl, > > .getgeo = dm_blk_getgeo, > > .owner = THIS_MODULE > > I guess this also needs a ->compat_ioctl method, otherwise it won't > work for ioctl numbers that have a compat_ioctl implementation in the > low-level device driver. Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 70abac6e4f4bfb05a8198e22225f9e066239c7a2 Author: Paul Mackerras Date: Tue Oct 3 01:15:14 2006 -0700 [PATCH] nvidia fbdev: fix powerpc xmon scribbles xmon writes garbage on the screen because the nvidia console driver has changed the line pitch from what the firmware set it to. Fix it by making the nvidia driver inform the btext engine (which xmon uses if the screen is its output device) about changes to display resolution. Signed-off-by: Paul Mackerras Cc: "Antonino A. Daplas" Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit a09fd48f8fb6ecb8bf85efdd884b21b6201ef9cc Author: Geert Uytterhoeven Date: Tue Oct 3 01:15:11 2006 -0700 [PATCH] fbdev: correct buffer size limit in fbmem_read_proc() Address http://bugzilla.kernel.org/show_bug.cgi?id=7189 It should check `clen', not `len'. Signed-off-by: Geert Uytterhoeven Cc: Cc: "Antonino A. Daplas" Cc: Cc: Willy Tarreau Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit f5b747b487038ce2a23e7b922bc4d27149838965 Author: Carl-Daniel Hailfinger Date: Tue Oct 3 01:15:09 2006 -0700 [PATCH] radeonfb supend/resume support for Acer Aspire 2010 This patch adds suspend/resume support for the graphics chip in the Acer Aspire 2010: ATI Technologies Inc RV350 [Mobility Radeon 9600 M10] 01:00.0 0300: 1002:4e50 (prog-if 00 [VGA]) Subsystem: 1025:0061 Flags: bus master, 66MHz, medium devsel, latency 128, IRQ 16 Memory at a8000000 (32-bit, prefetchable) [size=128M] I/O ports at c100 [size=256] Memory at e0010000 (32-bit, non-prefetchable) [size=64K] [virtual] Expansion ROM at a0000000 [disabled] [size=128K] Capabilities: [58] AGP version 2.0 Capabilities: [50] Power Management version 2 Signed-off-by: Carl-Daniel Hailfinger Acked-by: Benjamin Herrenschmidt Cc: "Benjamin A. Okopnik" Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 9b262144a1b84c781555efd68769711279ebfba3 Author: Reiner Herrmann Date: Tue Oct 3 01:15:08 2006 -0700 [PATCH] Documentation fixes in intel810.txt Signed-off-by: Reiner Herrmann Acked-by: Randy Dunlap Cc: "Antonino A. Daplas" Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit b98fc9a34bfcfd2a04e58c4fc5e408fce13204bb Author: Alan Cox Date: Tue Oct 3 01:15:07 2006 -0700 [PATCH] sstfb: cleanups - Remove 24/32bit unused support (the chips don't do 24/32bit anyway) - Clean up printk obfuscation - Clean up lispitus in the if(())()) stuff - Minor tidying No functionality changes, may have a crack at hardware scrolling based on my X driver once the cleanups are in. Signed-off-by: Alan Cox Cc: Antonino A. Daplas Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 3cb340ecbb010013229ac56f26707252ebed09b8 Author: Adrian Bunk Date: Tue Oct 3 01:15:06 2006 -0700 [PATCH] vt: proper prototypes for some console functions This patch adds proper prototypes to header files for three console init functions used on drivers/char/vt.c Signed-off-by: Adrian Bunk Signed-off-by: Antonino Daplas Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 48afdf6eb750b6836932e4d492b90448bc68dfc0 Author: Adrian Bunk Date: Tue Oct 3 01:15:05 2006 -0700 [PATCH] fbcon:: make 3 functions static This patch makes three needlessly global functions static. Signed-off-by: Adrian Bunk Signed-off-by: Antonino Daplas Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 5c60b118d62c14ad7586ed6a6e537c3294c90227 Author: Raphael Assenat Date: Tue Oct 3 01:15:05 2006 -0700 [PATCH] mbxfb: Fix framebuffer size smaller than requested This patch fixes a bug where we obtain a smaller resolution than requested. (eg: in 640x480, only 639x479 usable pixels). This was due to 1 being substracted from the xres and yres vars two times: first in mbxfb.c and then in the macros from reg_bits.h. This patch removes the minus ones from the mbxfb.c file. Tested and works. Signed-off-by: Raphael Assenat Signed-off-by: Antonino Daplas Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 8bc218410d6c2b22a7581fac6f3dc2ac1f8fc99f Author: Raphael Assenat Date: Tue Oct 3 01:15:03 2006 -0700 [PATCH] mbxfb: Fix a chip bug? resulting in wrong pixclock This is a workaround for what I think is a bug in the 2700G chip. The PLL output frequency is adustable using 3 values (M, N and P. See code for formula). The N value range is documented to be 1 to 7 but when it is set to 1, the output frequency is lower than it should be (divided by 2), giving unexpected results such as no sync on a CRT display. This patch prevents N=1 when searching for the best value for the requested pixclock. Signed-off-by: Raphael Assenat Signed-off-by: Antonino Daplas Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 9c5b39e0bcb407a95716de4650a2d1e6064baffa Author: Adrian Bunk Date: Tue Oct 3 01:15:02 2006 -0700 [PATCH] atyfb: Possible cleanups - make the following needlessly global function static: - mach64_ct.c: aty_st_pll_ct() - proper prototypes for the following functions: - atyfb_base.c: atyfb_copyarea() - atyfb_base.c: atyfb_fillrect() - atyfb_base.c: atyfb_imageblit() Signed-off-by: Adrian Bunk Signed-off-by: Antonino Daplas Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit fe27e67616e300f2c891a669ea3b0e29f1e3bead Author: Michal Piotrowski Date: Tue Oct 3 01:15:01 2006 -0700 [PATCH] drivers/video/sis/sis_main.h Removal of old code Signed-off-by: Michal Piotrowski Cc: "Antonino A. Daplas" Cc: Thomas Winischhofer Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 86702ad483fa50e09f9535a0e5d2ecad2202facc Author: Michal Piotrowski Date: Tue Oct 3 01:15:01 2006 -0700 [PATCH] drivers/video/sis/vgatypes.h: removal of old code Signed-off-by: Michal Piotrowski Cc: "Antonino A. Daplas" Cc: Thomas Winischhofer Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 4370409a924b5e065f9f0905d243ab69a95b52f4 Author: Michal Piotrowski Date: Tue Oct 3 01:15:00 2006 -0700 [PATCH] drivers/video/sis/sis_main.c: removal of old code Signed-off-by: Michal Piotrowski Cc: "Antonino A. Daplas" Cc: Thomas Winischhofer Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 2dc350283d3ea194c954428d86025190cab47366 Author: Michal Piotrowski Date: Tue Oct 3 01:14:59 2006 -0700 [PATCH] drivers/video/sis/sis_accel.h: removal of old code Signed-off-by: Michal Piotrowski Cc: "Antonino A. Daplas" Cc: Thomas Winischhofer Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 882e6afd71a7cd8c2f97067bb819eaa310540e36 Author: Michal Piotrowski Date: Tue Oct 3 01:14:58 2006 -0700 [PATCH] drivers/video/sis/sis_accel.c: removal of old code Signed-off-by: Michal Piotrowski Cc: "Antonino A. Daplas" Cc: Thomas Winischhofer Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 31df9ee8c63a8d9459358e9d4be17e331f63de76 Author: Michal Piotrowski Date: Tue Oct 3 01:14:57 2006 -0700 [PATCH] drivers/video/sis/osdef.h: removal of old code Signed-off-by: Michal Piotrowski Cc: "Antonino A. Daplas" Cc: Thomas Winischhofer Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit db3affc0b256162a957253b4eaedb202885bb38d Author: Michal Piotrowski Date: Tue Oct 3 01:14:56 2006 -0700 [PATCH] drivers/video/sis/init.h: removal of old code Signed-off-by: Michal Piotrowski Cc: "Antonino A. Daplas" Cc: Thomas Winischhofer Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit f8e3d4c19c1b81a8d1bf7ea709524ab8fc2186c3 Author: Michal Piotrowski Date: Tue Oct 3 01:14:55 2006 -0700 [PATCH] drivers/video/sis/initextlfb.c: removal of old code Signed-off-by: Michal Piotrowski Cc: "Antonino A. Daplas" Cc: Thomas Winischhofer Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 99dbb4641a820c777cb32d2907402525a6ab4015 Author: Michal Piotrowski Date: Tue Oct 3 01:14:54 2006 -0700 [PATCH] drivers/video/sis/init301.h: removal of old code Signed-off-by: Michal Piotrowski Cc: "Antonino A. Daplas" Cc: Thomas Winischhofer Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 9237ed0fef8d0373b39cc7884451d3c3e3bc8a2a Author: Antonino A. Daplas Date: Tue Oct 3 01:14:54 2006 -0700 [PATCH] i810fb: Honor the return value of pci_enable_device Check the return value of pci_enable_device(). Signed-off-by: Antonino Daplas Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 7b566b1f7bdbbcfa8d11b8018c6dec5467f7c62b Author: Antonino A. Daplas Date: Tue Oct 3 01:14:53 2006 -0700 [PATCH] nvidiafb: Honor the return value of pci_enable_device Check the return value of pci_enable_device(). Signed-off-by: Antonino Daplas Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit b0b10324b85d0379a2eec4984e77b25299a97ed4 Author: Antonino A. Daplas Date: Tue Oct 3 01:14:52 2006 -0700 [PATCH] matroxfb: Honor the return value of pci_register_driver Check the return value of pci_register_driver() Signed-off-by: Antonino Daplas Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit c1cc53be0fc112cc8cb21ac4e0ab1af0a4082943 Author: Antonino A. Daplas Date: Tue Oct 3 01:14:51 2006 -0700 [PATCH] atyfb: Honor the return value of pci_register_driver Check return value of pci_register_driver(). Signed-off-by: Antonino Daplas Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 0a727dea774c47ad1e18907be33f12c9f325ee4a Author: Antonino A. Daplas Date: Tue Oct 3 01:14:50 2006 -0700 [PATCH] fbcon: Honor the return value of device_create_file Check the return value of device_create_file(). If return is 'fail', remove attributes by calling device_remove_file(). Signed-off-by: Antonino Daplas Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 1a6600be3e5dafe2ddcc5d969d931c2591eed896 Author: Antonino A. Daplas Date: Tue Oct 3 01:14:50 2006 -0700 [PATCH] fbdev: Honor the return value of device_create_file Check the return value of device_create_file(). If return is 'fail', remove attributes by calling device_remove_file(). Signed-off-by: Antonino Daplas Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 928e964f262b522dad57483108f62d87c52ccf82 Author: Antonino A. Daplas Date: Tue Oct 3 01:14:49 2006 -0700 [PATCH] vt: Honor the return value of device_create_file Check the return value of device_create_file(). If return is 'fail', remove attributes by calling device_remove_file(). Signed-off-by: Antonino Daplas Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 212f26398f63bc905ea28f55b31d4ecd4a21a33b Author: Antonino A. Daplas Date: Tue Oct 3 01:14:48 2006 -0700 [PATCH] fbcon: Remove cursor timer if unused Remove the cursor timer (cursor flashing) on the following conditions: - if vc is in KD_GRAPHICS mode, ie, when X owns the console - if vc is blanked This misbehavior was exposed by Dave Jones. Signed-off-by: Antonino Daplas Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit e299dd4d7c5f38a24045e0578049d872b62f21eb Author: Dave Jones Date: Tue Oct 3 01:14:47 2006 -0700 [PATCH] fbcon: Use persistent allocation for cursor blinking Every time the console cursor blinks, we do a kmalloc/kfree pair. This patch turns that into a single allocation. This allocation was the most frequent kmalloc I saw on my test box. [adaplas] Per Alan's suggestion, move global variables to fbcon's private structure. This would also avoid resource leaks when fbcon is unloaded. Signed-off-by: Dave Jones Acked-by: Alan Cox Signed-off-by: Antonino Daplas Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 7a45093b7caa9d3d5421274b4ba80fba5da17e19 Author: Dennis Munsie Date: Tue Oct 3 01:14:46 2006 -0700 [PATCH] radeonfb: Use generic DDC reading Uses the generic ddc read functionality in fbmon.c instead of the previous functionality. Signed-off-by: Dennis Munsie Signed-off-by: Antonino Daplas Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 946c4eab86cc67dac6021b56f45495f59b3970b4 Author: Antonino A. Daplas Date: Tue Oct 3 01:14:45 2006 -0700 [PATCH] savagefb: Use generic DDC reading Update driver to use generic DDC reading [khali@linux-fr.org: fix oops in i2c handling] Signed-off-by: Antonino Daplas Signed-off-by: Jean Delvare Cc: Jurriaan Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit e80987f8db7b9c33089bb395ed54cb96d55eae04 Author: Antonino A. Daplas Date: Tue Oct 3 01:14:44 2006 -0700 [PATCH] i810fb: Use generic DDC reading Update driver to use generic DDC reading Signed-off-by: Antonino Daplas Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit bf5df0a2c54c2dc0fad619ac25d029119023610a Author: Antonino A. Daplas Date: Tue Oct 3 01:14:44 2006 -0700 [PATCH] rivafb: Use generic DDC reading Update driver to use generic DDC reading Signed-off-by: Antonino Daplas Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 346bc21026e7a92e1d7a4a1b3792c5e8b686133d Author: Antonino A. Daplas Date: Tue Oct 3 01:14:43 2006 -0700 [PATCH] nvidiafb: Use generic DDC reading Update driver to use generic DDC reading Signed-off-by: Antonino Daplas Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit fc5891c8a3ba284f13994d7bc1f1bfa8283982de Author: Dennis Munsie Date: Tue Oct 3 01:14:42 2006 -0700 [PATCH] fbdev: Add generic ddc read functionality Adds functionality to read the EDID information over the DDC bus in a generic way. This code is based on the DDC implementation in the radeon driver. [adaplas] - separate from fbmon.c and place in new file fb_ddc.c - remove dependency to CONFIG_I2C and CONFIG_I2C_ALGOBIT, otherwise, feature will not compile if i2c support is compiled as a module - feature is selectable only by drivers needing it. It must have a 'select FB_DDC if xxx' in Kconfig - change printk's to dev_*, the i2c people prefers it Signed-off-by: Dennis Munsie Signed-off-by: Antonino Daplas Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 66cf75121b1c8128ef9ab2d772c5654ae00c4284 Author: Mike Frysinger Date: Tue Oct 3 01:14:41 2006 -0700 [PATCH] vfb: Document option to enable the driver The Kconfig help text doesnt mention that in order to load the vfb module, you have to pass in the parameter vfb_enable=1 Document required module options in Kconfig for loading the vfb module. Signed-off-by: Antonino Daplas Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 535a09ad59286b7675ffbf8b51d8ecb001c44386 Author: Guido Guenther Date: Tue Oct 3 01:14:40 2006 -0700 [PATCH] rivafb: use constants instead of magic values use (MIN/MAX)_LEVEL and FB_(UN)BLANK instead of the values they are defined to Signed-off-by: Guido Guenther Signed-off-by: Antonino Daplas Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 6bf1d73d7a512cfa791b7415742f71c80f6b8d7e Author: Ph. Marek Date: Tue Oct 3 01:14:38 2006 -0700 [PATCH] intelfb: Documentation update Correct sample boot line and add a remark on mode setting. Signed-off-by: Antonino Daplas Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit ca27ac4cc6caa73740122a5f3d601c8a27b89e7c Author: Rodolfo Giometti Date: Tue Oct 3 01:14:36 2006 -0700 [PATCH] au1100fb: Add option to enable/disable the cursor - add cursor enable/disable, very useful if you wish a full screen boot logo. Cursor can be disabled from kernel command line: video=au1100fb:nocursor,panel:Toppoly_TD035STED4 or from sysfs interface: echo 1 > /sys/module/au1100fb/parameters/nocursor - fix up some wrong indentation issues. Signed-off-by: Rodolfo Giometti Signed-off-by: Antonino Daplas Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 53a04c6fb2e886efbc28b564d413bb5e70d79784 Author: David Brownell Date: Tue Oct 3 01:14:35 2006 -0700 [PATCH] ide-cs (CompactFlash) driver, rm irq warning Git rid of the runtime warning about pcmcia not supporting exclusive IRQs, so "the driver needs updating". Signed-off-by: David Brownell Acked-by: Alan Cox Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 652aa16291095911640137155063a5c6ea9bad74 Author: Alan Cox Date: Tue Oct 3 01:14:35 2006 -0700 [PATCH] IDE: more pci_find cleanup Signed-off-by: Alan Cox Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit a4bea10eca68152e84ffc4eaeb9d20ec2ac34664 Author: Patrick Jefferson Date: Tue Oct 3 01:14:34 2006 -0700 [PATCH] Allow ide_generic_all to be used modular and built in Allow ide/pci/generic to claim chipsets as a a module or when built-in. It requires using "all_generic_ide" as a boot option. Signed-off-by: Patrick Jefferson Acked-by: Alan Cox Closes-Bug: 7017 Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 913759ac90a727b86da72efcfb70931f497d1cb7 Author: Alan Cox Date: Tue Oct 3 01:14:33 2006 -0700 [PATCH] ide: Fix crash on repeated reset Michal Miroslaw reported a problem (bugzilla #7023) where a user initiated reset while the IDE layer was already resetting the channel caused a crash, and provided a rough fix. This is a slightly cleaner version of the fix which tracks the reset state and blocks further reset requests while a reset is in progress. Note this is not a security issue - random end users can't access the ioctl in question anyway. Signed-off-by: Alan Cox Cc: Michal Miroslaw Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit b86cc29dc42203588264d917e88134bdd500b0d7 Author: Alexey Dobriyan Date: Tue Oct 3 01:14:32 2006 -0700 [PATCH] CONFIG_PM=n slim: drivers/ide/pci/sc1200.c Remove some code which is unneeded if CONFIG_PM=n. Signed-off-by: Alexey Dobriyan Cc: Alan Cox Cc: Bartlomiej Zolnierkiewicz Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 4fa902a918518bcdc420bd272d2dd13fcae01581 Author: Marcin Juszkiewicz Date: Tue Oct 3 01:14:29 2006 -0700 [PATCH] PCMCIA: Add few IDs into ide-cs Few cards informations submitted by OpenZaurus users. Seagate 8GB microdrive: product info: "SEAGATE", "ST1" manfid 0x0111, 0x0000 One CF card: product info: "SAMSUNG", "04/05/06", "", "" manfid : 0x0000, 0x0000 Ridata 8GB Pro 150X Compact Flash Card: product info: "SMI VENDOR", "SMI PRODUCT", "" manfid: 0x000a, 0x0000 product info: "M-Systems", "CF500", "" manfid: 0x000a, 0x0000 product info: "TRANSCEND", "TS4GCF120", "" manfid: 0x000a, 0x0000 Alan sayeth: "Same update needs to go into drivers/ata/pata_pcmcia" Signed-off-by: Marcin Juszkiewicz Cc: Dominik Brodowski Acked-by: Alan Cox Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 8c2c0118b86183bf4826db990cae5c8a8d6c6746 Author: Jason Lunz Date: Tue Oct 3 01:14:26 2006 -0700 [PATCH] ide: reprogram disk pio timings on resume Add a step to the IDE PM state machine that reprograms disk PIO timings as the first step on resume. This prevents ide deadlock on resume-from-ram on my nforce3-based laptop. An earlier implementation was written entirely within the amd74xx ide driver, but Alan helpfully pointed out that this is the correct thing to do globally. Still, I'm only calling hwif->tuneproc() for disks, based on two things: - The existing state machine is already passed over for non-disk drives - Previous testing on my laptop shows that the hangs are related only to the disk - suspend/resume from a livecd showed that there's no need for this on the cdrom. Signed-off-by: Jason Lunz Cc: Bartlomiej Zolnierkiewicz Cc: "Rafael J. Wysocki" Cc: Sergei Shtylyov Cc: Pavel Machek Cc: Brad Campbell Cc: David Brownell Cc: Alan Cox Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 3f63c5e88a5ce45b423f3712293f1664115b09c0 Author: Sergei Shtylyov Date: Tue Oct 3 01:14:25 2006 -0700 [PATCH] ide: remove dma_base2 field from ide_hwif_t Remove dma_base2 field from ide_hwif_t as it's used only in 2 drivers and without great need. Signed-off-by: Sergei Shtylyov Cc: John Keller Signed-off-by: Jeremy Higdon Acked-by: Alan Cox Cc: Bartlomiej Zolnierkiewicz Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 27ac6036f31dea8117ecc525e0dbfd17b23e8c09 Author: Adrian Bunk Date: Tue Oct 3 01:14:24 2006 -0700 [PATCH] drivers/ide/: cleanups - setup-pci.c: remove the unused ide_pci_unregister_driver() - ide-dma.c: remove the unused EXPORT_SYMBOL_GPL(ide_in_drive_list) Signed-off-by: Adrian Bunk Acked-by: Alan Cox Cc: Bartlomiej Zolnierkiewicz Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 349ae23fe7379a42973bcb1c85f7d43ec583c17d Author: Randy Dunlap Date: Tue Oct 3 01:14:23 2006 -0700 [PATCH] IDE core: driver layer error checking Check driver layer return values in IDE core. Signed-off-by: Randy Dunlap Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 5ac24697699b394cdebac0a2329ce3af247d6a3b Author: Alan Cox Date: Tue Oct 3 01:14:23 2006 -0700 [PATCH] ide: backport piix fixes from libata into the legacy driver There are three flags being set by default by the PIIX driver for speeds > PIO 1, and one not being cleared properly on fallback to PIO0. The most important one is the prefetch/post write control which only works for ATA and can do bad things with ATAPI. The patch does its best to set the flags correctly for drivers/ide. Its not 100% perfect but its closer than the original. 100% perfect requires proper IORDY handling but this isn't critical (and its not right in libata either .. yet) Sergei Shtylyov said: > + { 0, 0 }, > + { 0, 0 }, > + { 1, 0 }, > + { 2, 1 }, > + { 2, 3 }, }; > > pio = ide_get_best_pio_mode(drive, pio, 5, NULL); BTW, there's quite obvious error here which leads to access outside of timings[] if somebody passes PIO mode 5 (or autotuning code finds out that drive supports PIO mode 5). Could have been fixed while at it... Those drives should be rare, though... > + } > master_data = master_data | (timings[pio][0] << 12) | (timings[pio][1] << 8); > } > pci_write_config_word(dev, master_port, master_data); Actually, there's one more serious issue with piix_tune_drive() -- it doesn't actually set the drive's own transfer mode. Signed-off-by: Alan Cox Cc: Sergei Shtylyov Cc: Bartlomiej Zolnierkiewicz Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 14e0a193209aeea810ad3d66388f422dc79c5b40 Author: Kirill Smelkov Date: Tue Oct 3 01:14:18 2006 -0700 [PATCH] ide: fix revision comparison in ide_in_drive_list Fix ide_in_drive_list: drive_table->id_firmware should be searched *in* id->fw_rev, not vice versa. Signed-off-by: Kirill Smelkov Cc: Bartlomiej Zolnierkiewicz Cc: Alan Cox Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit f3d5b34caae393f13a9486036f98c81cac1595c4 Author: Tobias Oed Date: Tue Oct 3 01:14:17 2006 -0700 [PATCH] Enable cdrom dma access with pdc20265_old This patch allows me to use dma with my cd/dvd attached to my on board pdc20265 ide controller Alan sayeth: Looks sane. Would be nice to know if there is any documentation supporting this hack being safe but the logic makes sense. The LBA48 case faces the same problem - the state machine gets confused about the transfer length and needs kicking Signed-off-by: Tobias Oed Acked-by: Alan Cox Cc: Bartlomiej Zolnierkiewicz Cc: Jens Axboe Cc: Sergei Shtylyov Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 0750508ae6479d4ac6154b35c5b82929f31efb03 Author: Sergei Shtylyov Date: Tue Oct 3 01:14:17 2006 -0700 [PATCH] ide_dma_speed() fixes ide_dma_speed() fails to actually honor the IDE drivers' mode support masks) because of the bogus checks -- thus, selecting the DMA transfer mode that the driver explicitly refuses to support is possible. Additionally, there is no check for validity of the UltraDMA mode data in the drive ID, and the function is misdocumented. Signed-off-by: Sergei Shtylyov Cc: Bartlomiej Zolnierkiewicz Cc: Alan Cox Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 83d7dbc4095a0c314b191c573be5fb4fa6ce0897 Author: Matt Mackall Date: Tue Oct 3 01:14:16 2006 -0700 [PATCH] Make number of IDE interfaces configurable Make IDE_HWIFS configurable if EMBEDDED This lets us lop as much as 16k off an x86 build. It's a little ugly, but it's dead simple. Note the fix for HWIFS < 2. Sizing interfaces dynamically unfortunately turns out to be pretty major surgery. add/remove: 0/1 grow/shrink: 0/11 up/down: 0/-16182 (-16182) function old new delta ide_hwifs 16920 1692 -15228 init_irq 1113 750 -363 ideprobe_init 283 138 -145 ide_pci_setup_ports 1329 1193 -136 save_match 85 - -85 ide_register_hw_with_fixup 367 287 -80 ide_setup 1364 1308 -56 is_chipset_set 40 4 -36 create_proc_ide_interfaces 225 205 -20 init_ide_data 84 67 -17 ide_probe_for_cmd640x 1198 1183 -15 ide_unregister 1452 1451 -1 Signed-off-by: Matt Mackall Cc: Bartlomiej Zolnierkiewicz Acked-by: Alan Cox Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit ce42f19137225d01be9388a73703df40fb7af80f Author: Hua Zhong Date: Tue Oct 3 01:14:15 2006 -0700 [PATCH] IDE error handling fixes In 2.6.15.1 I encountered some IDE crashes when unplugging IDE cables to emulate disk errors. Below is a patch against 2.6.16 which I think still applies. 1. The first BUG_ON could trigger when a PREFLUSH IO fails (it would fail the original barrier request which hasn't been marked REQ_STARTED yet). 2. the rq could have been dequeued already (same as 1). 3. HWGROUP(drive)->rq could be NULL because of the ide_error() several lines earlier. Signed-off-by: Hua Zhong Cc: Bartlomiej Zolnierkiewicz Cc: Alan Cox Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit dc844e05913b84d09e86d88c0f861ef0afbee2fd Author: Sergei Shtylylov Date: Tue Oct 3 01:14:14 2006 -0700 [PATCH] IDE: always release DMA engine Release the DMA engine for the custom mapping IDE drivers also (for example, siimage.c does allocate it in both I/O-mapped and custom-mapped modes). Remove useless code from the error path of ide_allocate_dma_engine(). Signed-off-by: Sergei Shtylyov Cc: Bartlomiej Zolnierkiewicz Cc: Alan Cox Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 020e322de3ff75d32daa58e431aad07071da27c6 Author: Sergei Shtylylov Date: Tue Oct 3 01:14:13 2006 -0700 [PATCH] IDE: claim extra DMA ports regardless of channel - Claim extra DMA I/O ports regardless of what IDE channels are present/enabled. - Remove extra ports handling from ide_mapped_mmio_dma() since it's not applicable to the custom-mapping IDE drivers. Signed-off-by: Sergei Shtylyov Cc: Bartlomiej Zolnierkiewicz Cc: Alan Cox Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit bbb3bbdb0f78cb02451daf5687a99627f7ad1140 Author: Alan Cox Date: Tue Oct 3 01:14:12 2006 -0700 [PATCH] non-libata driver for Jmicron devices Less functional than libata this just uses the merged interface provided for dumb legacy OS's. This is basically a bridge for people not yet ready to use libata for some reason or another. Port visibility is entirely dependant on the BIOS setup. Signed-off-by: Alan Cox Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit ce164428c4cabfd284ca81913415cacd889aac33 Author: Christoph Lameter Date: Tue Oct 3 01:14:11 2006 -0700 [PATCH] scheduler: NUMA aware placement of sched_group_allnodes When the per cpu sched domains are build then they also need to be placed on the node where the cpu resides otherwise we will have frequent off node accesses which will slow down the system. Signed-off-by: Christoph Lameter Acked-by: Ingo Molnar Acked-by: Nick Piggin Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 0feaece97795c4c775a3c732c045706eda28d0e5 Author: Satoru Takeuchi Date: Tue Oct 3 01:14:10 2006 -0700 [PATCH] sched: fixing wrong comment for find_idlest_cpu() Fixing wrong comment for find_idlest_cpu(). Signed-off-by: Satoru Takeuchi Acked-by: Ingo Molnar Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 89c4710ee9bbbefe6a4d469d9f36266a92c275c5 Author: Siddha, Suresh B Date: Tue Oct 3 01:14:09 2006 -0700 [PATCH] sched: cleanup sched_group cpu_power setup Up to now sched group's cpu_power for each sched domain is initialized independently. This made the setup code ugly as the new sched domains are getting added. Make the sched group cpu_power setup code generic, by using domain child field and new domain flag in sched_domain. For most of the sched domains(except NUMA), sched group's cpu_power is now computed generically using the domain properties of itself and of the child domain. sched groups in NUMA domains are setup little differently and hence they don't use this generic mechanism. Signed-off-by: Suresh Siddha Acked-by: Ingo Molnar Acked-by: Nick Piggin Cc: Paul Jackson Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 1a84887080dc15f048db7c3a643e98f1435790d6 Author: Siddha, Suresh B Date: Tue Oct 3 01:14:08 2006 -0700 [PATCH] sched: introduce child field in sched_domain Introduce the child field in sched_domain struct and use it in sched_balance_self(). We will also use this field in cleaning up the sched group cpu_power setup(done in a different patch) code. Signed-off-by: Suresh Siddha Acked-by: Ingo Molnar Acked-by: Nick Piggin Cc: Paul Jackson Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 74732646431a1bb7e23e6b564127a8881cfef900 Author: Dave Jones Date: Tue Oct 3 01:14:07 2006 -0700 [PATCH] sched: don't print migration cost when only 1 CPU If only a single CPU is present, printing this doesn't make much sense. Signed-off-by: Dave Jones Acked-by: Ingo Molnar Acked-by: Nick Piggin Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit a616058b7815aafb2163fc795e02a055b0dbc5e2 Author: Siddha, Suresh B Date: Tue Oct 3 01:14:06 2006 -0700 [PATCH] sched: remove unnecessary sched group allocations Remove dynamic sched group allocations for MC and SMP domains. These allocations can easily fail on big systems(1024 or so CPUs) and we can live with out these dynamic allocations. [akpm@osdl.org: build fix] Signed-off-by: Suresh Siddha Acked-by: Ingo Molnar Acked-by: Nick Piggin Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 5c1e176781f43bc902a51e5832f789756bff911b Author: Nick Piggin Date: Tue Oct 3 01:14:04 2006 -0700 [PATCH] sched: force /sbin/init off isolated cpus Force /sbin/init off isolated cpus (unless every CPU is specified as an isolcpu). Users seem to think that the isolated CPUs shouldn't have much running on them to begin with. That's fair enough: intuitive, I guess. It also means that the cpu affinity masks of tasks will not include isolcpus by default, which is also more intuitive, perhaps. /sbin/init is spawned from the boot CPU's idle thread, and /sbin/init starts the rest of userspace. So if the boot CPU is specified to be an isolcpu, then prior to this patch, all of userspace will be run there. (throw in a couple of plausible devinit -> cpuinit conversions I spotted while we're here). Signed-off-by: Nick Piggin Cc: Dimitri Sivanich Acked-by: Paul Jackson Acked-by: Ingo Molnar Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 2c136efcf6f58d07512c4df83eb494597fe0d229 Author: OGAWA Hirofumi Date: Tue Oct 3 01:14:03 2006 -0700 [PATCH] pata_hpt366: fix typo switch(reg1 & 0x700) { case 5: info_hpt366.private_data = &hpt366_40; break; case 9: info_hpt366.private_data = &hpt366_25; break; default: info_hpt366.private_data = &hpt366_33; break; } The above runs always default part. It should be "(reg1 & 0x700) >> 8". Signed-off-by: OGAWA Hirofumi Acked-by: Alan Cox Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 7a545370d20519d7a72e1a801022180970eec34f Author: Luiz Fernando N. Capitulino Date: Tue Oct 3 01:14:01 2006 -0700 [PATCH] MAINTAINERS: Removes duplicated entry The 'STABLE BRANCH' entry is duplicated, remove it. Signed-off-by: Luiz Fernando N. Capitulino Cc: Greg KH Cc: Chris Wright Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 1ab54a936d75b1b100c998c8e2717fafd0b4c3b6 Author: Bjorn Helgaas Date: Tue Oct 3 01:14:00 2006 -0700 [PATCH] ia64: note requirement for 8250_pnp, now that 8250_acpi is gone We removed 8250_acpi in 2.6.17. If we don't have PNPACPI turned on, we won't find any ACPI serial devices, so mention this requirement in the troubleshooting part of the documentation. CONFIG_PNPACPI is already turned on in all the relevant defconfigs. Signed-off-by: Bjorn Helgaas Acked-by: "Luck, Tony" Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit a51f4a81e737735668206ad1618ce4a84cf362e7 Author: Corey Minyard Date: Tue Oct 3 01:13:59 2006 -0700 [PATCH] IPMI: allow user to override the kernel IPMI daemon enable After the previous patch to disable the kernel IPMI daemon if interrupts were available, the issue of broken hardware was raised, and a reasonable request to add an override was mode. So here it is. Allow the user to force the kernel ipmi daemon on or off. This way, hardware with broken interrupts or users that are not concerned with performance can turn it on or off to their liking. [akpm@osdl.org: save 4 bytes in vmlinux] Signed-off-by: Corey Minyard Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 2537d36cf568291baacff91fe5ead6ad3949304e Author: Pekka Enberg Date: Tue Oct 3 01:13:58 2006 -0700 [PATCH] Add Pekka to CREDITS Whomever said... "When you meet someone now who is writing a compiler or hacking a Unix kernel, at least you know they're not just doing it to pick up chicks." ...has obviously never met a _Linux_ kernel hacker. Anyway, sometimes people confuse my email addresses, which is why I really should add the proper one to CREDITS ;-). Signed-off-by: Pekka Enberg Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 873ef76bdc56561df75ef5c3f3842c3a64da795d Author: Olaf Hering Date: Tue Oct 3 01:13:56 2006 -0700 [PATCH] restore parport_pc probing on powermac The last change for partport_pc did fix the common case for all PowerMacs, but it broke the case for PCI multiport IO cards. In fact, the config option CONFIG_PARPORT_PC_SUPERIO=y lead to a hard crash when cups probed the parport driver. It enables the winbond and smsc probing. Remove the PARPORT_BASE check again, parport_pc_find_nonpci_ports() will take care of it. All powerpc configs should have CONFIG_PARPORT_PC_SUPERIO=n, the code did not find anything on the chrp boards we tested it on. Tested on a G4/466 with a PCI card: 0001:10:13.0 Serial controller: Timedia Technology Co Ltd PCI2S550 (Dual 16550 UART) (rev 01) (prog-if 02 [16550]) Subsystem: Timedia Technology Co Ltd Unknown device 5079 Control: I/O+ Mem- BusMaster- SpecCycle- MemWINV- VGASnoop- ParErr- Stepping+ SERR- FastB2B- Status: Cap- 66MHz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- SERR- Cc: Benjamin Herrenschmidt Cc: Paul Mackerras Cc: Adam Belay Cc: Dmitry Torokhov Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 17a4506d0eb1f78c9018c06a79e7dd09ae78c3a8 Author: Alan Cox Date: Tue Oct 3 01:13:55 2006 -0700 [PATCH] ISDN warning fixes Clean up warnings in drivers/isdn by using long not int for the values where we pass void * and cast to integer types. The code is ok (ok passing the stuff this way isn't pretty but the code is valid). In all the cases I checked out the right thing happens anyway but this removes all the warnings. Signed-off-by: Alan Cox Cc: Jeff Garzik Acked-by: Karsten Keil Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 31e7e1a806dab5e8e218b78e1b41887a4f6dfcc0 Author: Jeff Garzik Date: Tue Oct 3 01:13:54 2006 -0700 [PATCH] schedule ftape removal Acked-by: Alan Cox Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit fcc7a8c4636ec9d14680126e9fde39e8411c44ea Author: Jeff Garzik Date: Tue Oct 3 01:13:53 2006 -0700 [PATCH] drivers/char/ip2: kill unused code, label Kill warning: drivers/char/ip2/ip2main.c: In function ‘ip2_loadmain’: drivers/char/ip2/ip2main.c:782: warning: label ‘out_class’ defined but not used This driver's initialization (and cleanup of errors during init) is extremely convoluted, and could stand to be transformed into the standard unwinding-goto style of error cleanup. Signed-off-by: Jeff Garzik Acked-by: Michael H. Warfield Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 397f4ebf4f317b1d5ecd678a8559a5cb5c6975c3 Author: Jeff Garzik Date: Tue Oct 3 01:13:52 2006 -0700 [PATCH] ipmi: fix uninitialized data bug gcc issues the following warning: drivers/char/ipmi/ipmi_si_intf.c: In function ‘init_ipmi_si’: drivers/char/ipmi/ipmi_si_intf.c:1729: warning: ‘data.irq’ may be used uninitialized in this function This is indeed a bug. data.irq is completely uninitialized in some code paths. Worse than that, data from a previous decode_dmi() run can easily leak through successive calls. Signed-off-by: Jeff Garzik Acked-by: Corey Minyard Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit c3b6571384024be31e8b3442c0e7c3b127110d9b Author: Jeff Garzik Date: Tue Oct 3 01:13:52 2006 -0700 [PATCH] fs/eventpoll: error handling micro-cleanup While reviewing the 'may be used uninitialized' bogus gcc warnings, I noticed that an error code assignment was only needed if an error had actually occured. Signed-off-by: Jeff Garzik Cc: Davide Libenzi Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit e1ca66d1b990b23e7753c729332c0ada61f4f38d Author: Randy Dunlap Date: Tue Oct 3 01:13:51 2006 -0700 [PATCH] kernel-doc for kernel/resource.c Add kernel-doc function headers in kernel/resource.c and use them in DocBook. Signed-off-by: Randy Dunlap Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit eed34d0fc5e4b89269053ed855ef714edbcf4518 Author: Randy Dunlap Date: Tue Oct 3 01:13:50 2006 -0700 [PATCH] kernel-doc for kernel/dma.c Add kernel-doc function headers in kernel/dma.c and use it in DocBook. Clean up kernel-doc in mca_dma.h (the colon (':') represents a section header). Signed-off-by: Randy Dunlap Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit d3717bdf8f08a0e1039158c8bab2c24d20f492b6 Author: keios Date: Tue Oct 3 01:13:49 2006 -0700 [PATCH] low performance of lib/sort.c It is a non-standard heap-sort algorithm implementation because the index of child node is wrong . The sort function still outputs right result, but the performance is O( n * ( log(n) + 1 ) ) , about 10% ~ 20% worse than standard algorithm. Signed-off-by: keios Acked-by: Matt Mackall Acked-by: Zou Nan hai Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit ffc5089196446c08d9a005cf0dd7cab18d119606 Author: Franck Bui-Huu Date: Tue Oct 3 01:13:48 2006 -0700 [PATCH] Create kallsyms_lookup_size_offset() Some uses of kallsyms_lookup() do not need to find out the name of a symbol and its module's name it belongs. This is specially true in arch specific code, which needs to unwind the stack to show the back trace during oops (mips is an example). In this specific case, we just need to retreive the function's size and the offset of the active intruction inside it. Adds a new entry "kallsyms_lookup_size_offset()" This new entry does exactly the same as kallsyms_lookup() but does not require any buffers to store any names. It returns 0 if it fails otherwise 1. Signed-off-by: Franck Bui-Huu Cc: Rusty Russell Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 339b0c0813a257893fa84be999b9b85a50846dd8 Author: David Howells Date: Tue Oct 3 01:13:47 2006 -0700 [PATCH] FRV: Permit large kmalloc allocations [try #2] Permit kmalloc() to make allocations of up to 32MB if so configured. This may be useful under NOMMU conditions where vmalloc() can't do this. Signed-off-by: David Howells Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit afefdbb28a0a2af689926c30b94a14aea6036719 Author: David Howells Date: Tue Oct 3 01:13:46 2006 -0700 [PATCH] VFS: Make filldir_t and struct kstat deal in 64-bit inode numbers These patches make the kernel pass 64-bit inode numbers internally when communicating to userspace, even on a 32-bit system. They are required because some filesystems have intrinsic 64-bit inode numbers: NFS3+ and XFS for example. The 64-bit inode numbers are then propagated to userspace automatically where the arch supports it. Problems have been seen with userspace (eg: ld.so) using the 64-bit inode number returned by stat64() or getdents64() to differentiate files, and failing because the 64-bit inode number space was compressed to 32-bits, and so overlaps occur. This patch: Make filldir_t take a 64-bit inode number and struct kstat carry a 64-bit inode number so that 64-bit inode numbers can be passed back to userspace. The stat functions then returns the full 64-bit inode number where available and where possible. If it is not possible to represent the inode number supplied by the filesystem in the field provided by userspace, then error EOVERFLOW will be issued. Similarly, the getdents/readdir functions now pass the full 64-bit inode number to userspace where possible, returning EOVERFLOW instead when a directory entry is encountered that can't be properly represented. Note that this means that some inodes will not be stat'able on a 32-bit system with old libraries where they were before - but it does mean that there will be no ambiguity over what a 32-bit inode number refers to. Note similarly that directory scans may be cut short with an error on a 32-bit system with old libraries where the scan would work before for the same reasons. It is judged unlikely that this situation will occur because modern glibc uses 64-bit capable versions of stat and getdents class functions exclusively, and that older systems are unlikely to encounter unrepresentable inode numbers anyway. [akpm: alpha build fix] Signed-off-by: David Howells Cc: Trond Myklebust Cc: Al Viro Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 1d32849b14bc8792e6f35ab27dd990d74b16126c Author: Andrew Morton Date: Tue Oct 3 01:13:45 2006 -0700 [PATCH] pid.h cleanup Make the pid.h macros look less revolting in an 80-col window. Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 8f6fd19f1f7ab1dab225845464c96cba36a18533 Author: Guennadi Liakhovetski Date: Sun Oct 1 12:00:47 2006 +0200 [SCSI] enable clustering for tmscsim following an email from John Adams to me with a patch to enable tmscsim to use blocks up to 1MB and a discussion on linux-scsi, below is a patch to enable clustering for tmscsim. I made it switchable with a module parameter, with default "enable" - in case somebody gets problems with it. Unfortunately, I was not able to check if this alone lets you use any bigger blocks with a tape, as my tape seems to only support 1 block size - only "mt setblk 1" is successful, any other value fails. OTOH, testing on a P-133 showed that enabling clustering alone improves throughput by 10% and reduces CPU load by another 10%, so, seems a worthy thing to do. As for setting max_sectors, that might become a separate patch... Signed-off-by: James Bottomley commit 80a544cebca5f28397020332e21e04d639a18943 Author: Stephen Rothwell Date: Tue Sep 26 13:55:58 2006 +1000 [POWERPC] iSeries has no legacy I/O Signed-off-by: Stephen Rothwell commit 3f639ee8c52c187d8c95db430ac6f485bffbe5af Author: Stephen Rothwell Date: Mon Sep 25 18:19:00 2006 +1000 [POWERPC] implement BEGIN/END_FW_FTR_SECTION and use it an all the obvious places in assembler code. Signed-off-by: Stephen Rothwell commit fc246c389db7b08b4a054e68c742c6598b02523c Author: Stephen Rothwell Date: Mon Sep 25 14:00:41 2006 +1000 [POWERPC] iSeries does not need pcibios_fixup_resources Signed-off-by: Stephen Rothwell commit a542dbd3172922f178d25b463751da81d7b1e560 Author: Stephen Rothwell Date: Mon Sep 25 13:49:58 2006 +1000 [POWERPC] Allow combined iSeries and MULTIPLATFORM build This will build with ISERIES, PSERIES and PMAC64 selected, but will only boot on iSeries so far. Signed-off-by: Stephen Rothwell commit fac99d97469e7f91102f97101bea620e5f073196 Author: Paul Mundt Date: Tue Oct 3 14:13:09 2006 +0900 sh: Fixup __raw_read_trylock(). generic__raw_read_trylock() was broken, fix up the __raw_read_trylock() implementation for something sensible. Taken from m32r, which has the same use cases. Signed-off-by: Paul Mundt commit 3998a7a9d37f72c6fffd58ff39fd17f7c11a00f3 Author: Richard Curnow Date: Tue Oct 3 13:35:18 2006 +0900 sh64: Remove me from sh64 maintainers. Drop Richard as a co-maintainer, as he no longer has interest in working on the platform. Signed-off-by: Richard Curnow Signed-off-by: Paul Mundt commit b4a53b45bb48864c1b9ec61178e91651978b4632 Author: Paul Mundt Date: Tue Oct 3 13:31:43 2006 +0900 sh64: Update cayman defconfig. This fell behind a bit, update it. Signed-off-by: Paul Mundt commit 2914d4da172f53f71d0563d3c3bae14e496cbc86 Author: Paul Mundt Date: Tue Oct 3 13:19:02 2006 +0900 sh: Kill off remaining config.h references. A few of these managed to sneak back in, get rid of them once and for all. Signed-off-by: Paul Mundt commit 3e6c999de9a5438c97524a62845da8da78923205 Author: Paul Mundt Date: Tue Oct 3 13:16:15 2006 +0900 sh: Initial gitignore list Ignore build-time generated files. Signed-off-by: Paul Mundt commit 711fa8096863e4b50bb97f9ebc44606dc2182ac3 Author: Paul Mundt Date: Tue Oct 3 13:14:04 2006 +0900 sh: build fixes for defconfigs. Get all of the defconfigs building again. Signed-off-by: Paul Mundt commit 059fbd6a5ee9a35ac9f15edb2876a50bd88a008d Author: Paul Mundt Date: Tue Oct 3 13:12:38 2006 +0900 sh: Kill off more dead headers. Some old rtc and io headers were left hanging around, kill them off.. Signed-off-by: Paul Mundt commit c91485676ebea1342622b8ac566c1efd750b60dc Author: Paul Mundt Date: Tue Oct 3 13:11:00 2006 +0900 sh: Set pclk default for SH7705. CPU sub-types set the pclk default in Kconfig, add one for SH7705. Signed-off-by: Paul Mundt commit af3e17c4482cc5c8118615eddc4ac0c33b94c5f2 Author: Paul Mundt Date: Tue Oct 3 13:08:20 2006 +0900 sh: defconfig updates. Sync up all of the defconfigs, and kill off a few old ones.. Signed-off-by: Paul Mundt commit ad7a3bf30c27d902042bc85c3e54eb2082d633bd Author: Paul Mundt Date: Tue Oct 3 11:26:34 2006 +0900 [PATCH] Add unifdef to gitignore This seems to have been missed when unifdef went in via Sam's tree.. Signed-off-by: Paul Mundt Signed-off-by: Linus Torvalds commit 7525d4bf991879f489c59988cbf162558b9d6489 Author: Jeff Garzik Date: Mon Oct 2 21:08:22 2006 -0400 [PATCH] hp100: fix conditional compilation mess The previous hp100 changeset attempted to kill warnings, but was only tested on !CONFIG_ISA platforms. The correct conditional compilation setup involves tested CONFIG_ISA rather than just MODULE. Fixes link on CONFIG_ISA platforms (i386) in current -git. Signed-off-by: Jeff Garzik Signed-off-by: Linus Torvalds commit 0e4a523fa3981f20c3887803cebef1ad2948a0d4 Author: Andrew Morton Date: Mon Oct 2 17:24:06 2006 -0700 [PATCH] revert "insert IOAPIC(s) and Local APIC into resource map" Commit 54dbc0c9ebefb38840c6b07fa6eabaeb96c921f5 is causing various people's machines to fail to map PCI resources. Revert it in preparation for addressing the show-APICs-in-/proc/iomem requirement in a different manner. Cc: Aaron Durbin Cc: Andi Kleen Cc: "Eric W. Biederman" Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit e5a010690141ab805b059ba10f7401b80e0be831 Author: Hoang-Nam Nguyen Date: Mon Oct 2 14:52:17 2006 -0700 IB/ehca: Tweak trace message format Add an extra space to make things more readable. Signed-off-by: Hoang-Nam Nguyen Signed-off-by: Roland Dreier commit 0f248d9cde673a481eb3182909b54d07e9d58f72 Author: Hoang-Nam Nguyen Date: Mon Oct 2 14:52:17 2006 -0700 IB/ehca: Fix device registration Move the call to ib_register_device() later, since a device should not be registered until it is completely read to be used. This fixes crashes that occur if an upper-layer driver such as IPoIB is loaded before the ehca module. Signed-off-by: Hoang-Nam Nguyen Signed-off-by: Roland Dreier commit 13b18c86176cab34ef30ef0a5962fcb0305f7269 Author: Ralph Campbell Date: Fri Sep 29 14:37:51 2006 -0700 IB/ipath: Fix RDMA reads The PSN used to generate the request following a RDMA read was incorrect and some state booking wasn't maintained correctly. This patch fixes that. Signed-off-by: Ralph Campbell Signed-off-by: Bryan O'Sullivan commit 3f168d2b66d2314fea40614a3b966c1a0b6241a9 Author: Krishna Kumar Date: Fri Sep 29 12:09:51 2006 -0700 RDMA/cma: Optimize error handling Reorganize code relating to cma_get_net_info() and rdam_create_id() to optimize error case handling (no need to alloc memory/etc. as part of rdma_create_id() if input parameters are wrong). Signed-off-by: Krishna Kumar Signed-off-by: Sean Hefty Signed-off-by: Roland Dreier commit 94de178ac636e9d6f89b11cb3dd400b777942ac9 Author: Krishna Kumar Date: Fri Sep 29 12:03:35 2006 -0700 RDMA/cma: Eliminate unnecessary remove_list Eliminate remove_list by using list_del_init() instead during device removal handling. Signed-off-by: Krishna Kumar Signed-off-by: Sean Hefty Signed-off-by: Roland Dreier commit 8f0472d331619d5d74927978d0dde5b4935e41a5 Author: Sean Hefty Date: Fri Sep 29 11:57:09 2006 -0700 RDMA/cma: Set status correctly on route resolution error On reporting a route error, also include the status for the error, rather than indicating a status of 0 when an error has occurred. Signed-off-by: Sean Hefty Signed-off-by: Roland Dreier commit 6e35aabee125999f4b3c01326f5339fa74a89259 Author: Krishna Kumar Date: Fri Sep 29 11:51:49 2006 -0700 RDMA/cma: Fix device removal race The race is as follows: A process : cma_process_remove() calls cma_remove_id_dev(), which sets id state to CMA_DEVICE_REMOVAL and calls wait_event(dev_remove). B process : cma_req_handler() had incremented dev_remove, and calls cma_acquire_ib_dev() and on failure calls cma_release_remove(), which does a wake_up of cma_process_remove(). Then cma_req_handler() calls rdma_destroy_id(); A Process : cma_remove_id_dev() gets woken and checks the state of id, and since it is still (wrongly) CMA_DEVICE_REMOVAL, it calls notify_user(id) and if that fails, the caller - cma_process_remove() calls rdma_destroy_id(id). Two processes can call rdma_destroy_id(), resulting in one de-referencing kfreed id_priv. Fix is for process B to set CMA_DESTROYING in cma_req_handler() so that process A will return instead of doing a rdma_destroy_id(). Signed-off-by: Krishna Kumar Signed-off-by: Sean Hefty Signed-off-by: Roland Dreier commit 675a027c3db25a439f6ea744bb0c284f983dbfb9 Author: Krishna Kumar Date: Fri Sep 29 11:47:06 2006 -0700 RDMA/cma: Fix leak of cm_ids in case of failures cma_connect_ib() and cma_connect_iw() leak cm_id's in failure cases. Signed-off-by: Krishna Kumar Signed-off-by: Sean Hefty Signed-off-by: Roland Dreier commit 94e45a2b87bde64fd2eb170999da2fd2c5b04d28 Author: David S. Miller Date: Mon Oct 2 14:31:19 2006 -0700 [SPARC64]: Update defconfig. Signed-off-by: David S. Miller commit 36d046bbbdc72a3b2f728d79b21c7275822928fd Author: David S. Miller Date: Mon Oct 2 14:30:45 2006 -0700 [SPARC64]: Do not include compat.h from asm-sparc64/signal.h any more. It's not needed, now that all of that stuff is now in asm/compat_signal.h, and it breaks the build too :-) Signed-off-by: David S. Miller commit 14cc6abada7770bb7bd637bf7bce35503e10b652 Author: David S. Miller Date: Mon Oct 2 14:17:57 2006 -0700 [SPARC64]: Move signal compat bits to new header file. Create asm-sparc64/compat_signal.h and stuff things there. This avoids the "linux/compat.h includes asm/signal.h but asm/signal.h needs compat_sigset_t which isn't defined yet" problems introduced recently. Signed-off-by: David S. Miller commit 11dc10195aed0636d9a60907594b349424b933a7 Author: Dave Jones Date: Tue Aug 1 20:06:43 2006 +0200 [WATCHDOG] improve machzwd detection On a machine with no machzwd, loading the module prints out.. machzwd: MachZ ZF-Logic Watchdog driver initializing. 0xffff machzwd: Watchdog using action = RESET - the 0xffff printk is unnecessary - 0xffff seems to be 'hardware not present' - fix CodingStyle. (This driver could use some more work here) Signed-off-by: Dave Jones Signed-off-by: Wim Van Sebroeck Signed-off-by: Andrew Morton commit 795b89d207d8ff5397f9ff1f4d44662aa7c821fc Author: Samuel Tardieu Date: Sat Sep 9 17:34:31 2006 +0200 [WATCHDOG] use ENOTTY instead of ENOIOCTLCMD in ioctl() Return ENOTTY instead of ENOIOCTLCMD in user-visible ioctl() results The watchdog drivers used to return ENOIOCTLCMD for bad ioctl() commands. ENOIOCTLCMD should not be visible by the user, so use ENOTTY instead. Signed-off-by: Samuel Tardieu Signed-off-by: Wim Van Sebroeck Acked-by: Alan Cox Signed-off-by: Andrew Morton commit 25ff3780d4cd46804e22192a728cfb6b33c84d1b Author: Ben Dooks Date: Wed Sep 6 12:24:35 2006 +0100 [WATCHDOG] s3c24XX nowayout If the driver is not configured for `no way out`, then the open method should not automatically allow the setting of allow_close to CLOSE_STATE_ALLOW. The setting of allow_close nullifies the use of the magic close via the write path. It means that in the default state, the watchdog will shut-down even if the magic close has not been issued. Signed-off-by: Ben Dooks commit 65a64ec3b4fc904932b832c53e5a86d56b972682 Author: Vitaly Wool Date: Mon Sep 11 14:42:39 2006 +0400 [WATCHDOG] pnx4008: add cpu_relax() Added cpu_relax as suggested by Alan Cox. Signed-off-by: Vitaly Wool Signed-off-by: Wim Van Sebroeck commit 99d2853ac953900962d8191788060e80766eb214 Author: Wim Van Sebroeck Date: Sun Sep 10 12:48:15 2006 +0200 [WATCHDOG] pnx4008_wdt.c - spinlock fixes. Add io spinlocks to prevent possible race conditions between start and stop operations that are issued from different child processes where the master process opened /dev/watchdog. Signed-off-by: Wim Van Sebroeck commit 0235497f7a961db57ef975eb889503809ce82fe5 Author: Linus Torvalds Date: Mon Oct 2 14:05:20 2006 -0700 Add prototype for sigset_from_compat() Duh. I screwed up editing David Howells patch in commit 3f2e05e90e0846c42626e3d272454f26be34a1bc, and the actual declaration for the sigset_from_compat() function went missing. My bad. Olaf Hering saved the day and noticed that I'm a moron. Signed-off-by: Linus Torvalds commit f676449785d333078acb60ccf2046d0d3c59548f Author: Wim Van Sebroeck Date: Sun Jul 30 20:06:07 2006 +0200 [WATCHDOG] pnx4008_wdt.c - remove patch Change remove code so that we first detach the driver from userspace, then clean up the clock and then clean up the memory we allocated. Signed-off-by: Wim Van Sebroeck commit 2898172708aa84c9b0ce3865d6ff1ef76b538f51 Author: Wim Van Sebroeck Date: Mon Jul 3 09:03:47 2006 +0200 [WATCHDOG] pnx4008_wdt.c - nowayout patch Change nowayout to: WATCHDOG_NOWAYOUT as defined in include/linux/watchdog.h . Signed-off-by: Wim Van Sebroeck commit 9325fa36151fb9af39e697a6cd87e82667e2d8f9 Author: Vitaly Wool Date: Mon Jun 26 19:31:49 2006 +0400 [WATCHDOG] pnx4008: add watchdog support Add watchdog support for Philips PNX4008 ARM board inlined. Signed-off-by: Vitaly Wool Signed-off-by: Wim Van Sebroeck commit 92dd9994c36fb83883585058232e082cb78b19c1 Author: Jiri Slaby Date: Wed Jul 19 02:18:23 2006 +0159 [WATCHDOG] i8xx_tco remove pci_find_device. Use refcounting for pci device obtaining. Use PCI_DEVICE macro. Signed-off-by: Jiri Slaby Signed-off-by: Wim Van Sebroeck Cc: Andrew Morton commit 02be2ee9e0797b6f657827e32345f0bfeae4c20e Author: Jiri Slaby Date: Tue Jul 18 18:29:00 2006 +0159 [WATCHDOG] alim remove pci_find_device Convert pci_find_device to pci_get_device + pci_dev_put in alim watchdog cards' drivers (refcounting). Signed-off-by: Jiri Slaby Signed-off-by: Wim Van Sebroeck Signed-off-by: Andrew Morton commit f92a0b6ff43e8e07bbd5b1d2dd1cff130014f3c7 Author: Steven Whitehouse Date: Mon Oct 2 16:01:53 2006 -0400 [GFS2] Mark nlink cleared so VFS sees it happen This does nothing atm, but will be required for later support of r/o bind mounts. Signed-off-by: Steven Whitehouse commit 409e185d2370356ac2e4c7160e002ac5340b6709 Author: Steven Whitehouse Date: Mon Oct 2 14:20:43 2006 -0400 [GFS2] Two redundant casts removed Signed-off-by: Steven Whitehouse commit 48516ced21e83a755ebae3d1ed03f1731befc391 Author: Steven Whitehouse Date: Mon Oct 2 12:39:19 2006 -0400 [GFS2] Remove uneeded endian conversion In many places GFS2 was calling the endian conversion routines for an inode even when only a single field, or a few fields might have changed. As a result we were copying lots of data needlessly. This patch replaces those calls with conversion of just the required fields in each case. This should be faster and easier to understand. There are still other places which suffer from this problem, but this is a start in the right direction. Signed-off-by: Steven Whitehouse commit 3cf1e7bed4681bdb1c14b6e146ae9c0afb6c1552 Author: Steven Whitehouse Date: Mon Oct 2 11:49:41 2006 -0400 [GFS2] Remove duplicate sb reading code For some reason we had two different sets of code for reading in the superblock. This removes one of them in favour of the other. Also we don't need the temporary buffer for the sb since we already have one in the gfs2 sb itself. Signed-off-by: Steven Whitehouse commit 2e565bb69ce2184eabf4f43e64afc79c46f46204 Author: Steven Whitehouse Date: Mon Oct 2 11:38:25 2006 -0400 [GFS2] Mark metadata reads for blktrace Mark the metadata reads so that blktrace knows what they are. Signed-off-by: Steven Whitehouse commit 128e5ebaf8abbda375bba82690b09630003c9213 Author: Steven Whitehouse Date: Mon Oct 2 11:24:43 2006 -0400 [GFS2] Remove iflags.h, use FS_ Update GFS2 in the light of David Howells' patch: [PATCH] BLOCK: Move common FS-specific ioctls to linux/fs.h [try #6] 36695673b012096228ebdc1b39a6a5850daa474e which calls the filesystem independant flags FS_..._FL. As a result we no longer need the flags.h file and the conversion routine is moved into the GFS2 source code. Userland programs which used to include iflags.h should now include fs.h and use the new flag names. Signed-off-by: Steven Whitehouse commit 3f2e05e90e0846c42626e3d272454f26be34a1bc Author: David Howells Date: Mon Oct 2 14:12:31 2006 +0100 [PATCH] BLOCK: Revert patch to hack around undeclared sigset_t in linux/compat.h Revert Andrew Morton's patch to temporarily hack around the lack of a declaration of sigset_t in linux/compat.h to make the block-disablement patches build on IA64. This got accidentally pushed to Linus and should be fixed in a different manner. Also make linux/compat.h #include asm/signal.h to gain a definition of sigset_t so that it can externally declare sigset_from_compat(). This has been compile-tested for i386, x86_64, ia64, mips, mips64, frv, ppc and ppc64 and run-tested on frv. Signed-off-by: David Howells Signed-off-by: Linus Torvalds commit 9ec52099e4b8678a60e9f93e41ad87885d64f3e6 Author: Cedric Le Goater Date: Mon Oct 2 02:19:00 2006 -0700 [PATCH] replace cad_pid by a struct pid There are a few places in the kernel where the init task is signaled. The ctrl+alt+del sequence is one them. It kills a task, usually init, using a cached pid (cad_pid). This patch replaces the pid_t by a struct pid to avoid pid wrap around problem. The struct pid is initialized at boot time in init() and can be modified through systctl with /proc/sys/kernel/cad_pid [ I haven't found any distro using it ? ] It also introduces a small helper routine kill_cad_pid() which is used where it seemed ok to use cad_pid instead of pid 1. [akpm@osdl.org: cleanups, build fix] Signed-off-by: Cedric Le Goater Cc: Eric W. Biederman Cc: Martin Schwidefsky Cc: Paul Mackerras Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 1a657f78dcc8ea7c53eaa1f2a45ea2315738c15f Author: Oleg Nesterov Date: Mon Oct 2 02:18:59 2006 -0700 [PATCH] introduce get_task_pid() to fix unsafe get_pid() proc_pid_make_inode: ei->pid = get_pid(task_pid(task)); I think this is not safe. get_pid() can be preempted after checking "pid != NULL". Then the task exits, does detach_pid(), and RCU frees the pid. Signed-off-by: Oleg Nesterov Cc: "Eric W. Biederman" Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 1c0d04c9e44f4a248335c33d2be7c7f7b06ff359 Author: Eric W. Biederman Date: Mon Oct 2 02:18:57 2006 -0700 [PATCH] proc: comment what proc_fill_cache does Signed-off-by: Eric W. Biederman Cc: Oleg Nesterov Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 5e61feafa2c641c2a013ba94eec56c411011cc94 Author: Eric W. Biederman Date: Mon Oct 2 02:18:57 2006 -0700 [PATCH] proc: remove the useless SMP-safe comments from /proc Signed-off-by: Eric W. Biederman Cc: Oleg Nesterov Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 7bcd6b0efd5216f2f208e92150b0e5b9bea2c210 Author: Eric W. Biederman Date: Mon Oct 2 02:18:56 2006 -0700 [PATCH] proc: remove trailing blank entry from pid_entry arrays It was pointed out that since I am taking ARRAY_SIZE anyway the trailing empty entry is silly and just wastes space. Signed-off-by: Eric W. Biederman Cc: Oleg Nesterov Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 8e95bd936df2d3fc0e773068aa34350306a5c52a Author: Eric W. Biederman Date: Mon Oct 2 02:18:55 2006 -0700 [PATCH] proc: properly compute TGID_OFFSET The value doesn't change but this ensures I will have the proper value when other files are added to proc_base_stuff. Signed-off-by: Eric W. Biederman Cc: Oleg Nesterov Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit b0fa9db6abdb2875a6d3069ddc6a2846a73fa5cd Author: Oleg Nesterov Date: Mon Oct 2 02:18:54 2006 -0700 [PATCH] proc: drop tasklist lock in task_state() task_state() needs tasklist_lock to protect ->parent/->real_parent. However task->parent points to nowhere only when the actions below happen in order 1) release_task(task) 2) release_task(task->parent) 3) a grace period passed But 3) implies that the memory ops from 1) should be finished, so pid_alive() can't be true in such a case. Otherwise, we don't care if ->parent/->real_parent changes under us. Signed-off-by: Oleg Nesterov Cc: "Eric W. Biederman" Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit a593d6edeb0a5a2c6e6919b225cec668a375df52 Author: Oleg Nesterov Date: Mon Oct 2 02:18:53 2006 -0700 [PATCH] proc: convert do_task_stat() to use lock_task_sighand() Drop tasklist_lock. ->siglock protects almost all interesting data (including sub-threads traversal) except: ->signal->tty protected by tty_mutex ->real_parent the task can't be unhashed while we are holding ->siglock, so ->real_parent can change from under us but we can safely dereference it under rcu_read_lock() ->pgrp/->session we can get inconsistent numbers if the task does sys_setsid/daemonize at the same time. I hope this is acceptable. Signed-off-by: Oleg Nesterov Cc: "Eric W. Biederman" Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 5e6b3f42edc20e988b186fbfb9eec174294222ea Author: Oleg Nesterov Date: Mon Oct 2 02:18:52 2006 -0700 [PATCH] proc: convert task_sig() to use lock_task_sighand() lock_task_sighand() can take ->siglock without holding tasklist_lock. Signed-off-by: Oleg Nesterov Cc: "Eric W. Biederman" Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 7fbaac005cab2f3b4d6999cdb32fb93d442c5cdb Author: Eric W. Biederman Date: Mon Oct 2 02:18:51 2006 -0700 [PATCH] proc: Use pid_task instead of open coding it Signed-off-by: Eric W. Biederman Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 72d9dcfc7afd80fe98334ec23531b638ee54df8b Author: Eric W. Biederman Date: Mon Oct 2 02:18:50 2006 -0700 [PATCH] proc: Merge proc_tid_attr and proc_tgid_attr The implementation is exactly the same and there is currently nothing to distinguish proc_tid_attr, and proc_tgid_attr. So it is pointless to have two separate implementations. Signed-off-by: Eric W. Biederman Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 61a28784028e6d55755e4d0f39bee8d9bf2ee8d9 Author: Eric W. Biederman Date: Mon Oct 2 02:18:49 2006 -0700 [PATCH] proc: Remove the hard coded inode numbers The hard coded inode numbers in proc currently limit its maintainability, its flexibility, and what can be done with the rest of system. /proc limits pid-max to 32768 on 32 bit systems it limits fd-max to 32768 on all systems, and placing the pid in the inode number really gets in the way of implementing subdirectories of per process information. Ever since people started adding to the middle of the file type enumeration we haven't been maintaing the historical inode numbers, all we have really succeeded in doing is keeping the pid in the proc inode number. The pid is already available in the directory name so no information is lost removing it from the inode number. So if something in user space cares if we remove the inode number from the /proc inode it is almost certainly broken. Signed-off-by: Eric W. Biederman Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 444ceed8d186631fdded5e3f24dc20b93d0d3fda Author: Eric W. Biederman Date: Mon Oct 2 02:18:49 2006 -0700 [PATCH] proc: Factor out an instantiate method from every lookup method To remove the hard coded proc inode numbers it is necessary to be able to create the proc inodes during readdir. The instantiate methods are the subset of lookup that is needed to accomplish that. This first step just splits the lookup methods into 2 functions. Signed-off-by: Eric W. Biederman Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 801199ce805a2412bbcd9bfe213092ec656013dd Author: Eric W. Biederman Date: Mon Oct 2 02:18:48 2006 -0700 [PATCH] proc: Make the generation of the self symlink table driven This patch generalizes the concept of files in /proc that are related to processes but live in the root directory of /proc Ideally this would reuse infrastructure from the rest of the process specific parts of proc but unfortunately security_task_to_inode must not be called on files that are not strictly per process. security_task_to_inode really needs to be reexamined as the security label can change in important places that we are not currently catching, but I'm not certain that simplifies this problem. By at least matching the structure of the rest of proc we get more idiom reuse and it becomes easier to spot problems in the way things are put together. Later things like /proc/mounts are likely to be moved into proc_base as well. If union mounts are ever supported we may be able to make /proc a union mount, and properly split it into 2 filesystems. Signed-off-by: Eric W. Biederman Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit c5f2420a063fcc5a4cd6610c3ef6934827853001 Author: Haavard Skinnemoen Date: Mon Oct 2 02:18:46 2006 -0700 [PATCH] AVR32: Implement kernel_execve Move execve() into arch/avr32/kernel/sys_avr32.c, rename it to kernel_execve() and return the syscall return value directly without setting errno. This also gets rid of the __KERNEL_SYSCALLS__ stuff from unistd.h and expands #ifdef __KERNEL__ to cover everything in unistd.h except the __NR_foo definitions. Signed-off-by: Haavard Skinnemoen Cc: Arnd Bergmann Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 135ab6ec8fdad6f61aabe53f456821baf4a4aa0e Author: Arnd Bergmann Date: Mon Oct 2 02:18:44 2006 -0700 [PATCH] remove remaining errno and __KERNEL_SYSCALLS__ references The last in-kernel user of errno is gone, so we should remove the definition and everything referring to it. This also removes the now-unused lib/execve.c file that was introduced earlier. Also remove every trace of __KERNEL_SYSCALLS__ that still remained in the kernel. Signed-off-by: Arnd Bergmann Cc: Andi Kleen Cc: Paul Mackerras Cc: Benjamin Herrenschmidt Cc: Richard Henderson Cc: Ivan Kokshaysky Cc: Russell King Cc: Ian Molton Cc: Mikael Starvik Cc: David Howells Cc: Yoshinori Sato Cc: Hirokazu Takata Cc: Ralf Baechle Cc: Kyle McMartin Cc: Heiko Carstens Cc: Martin Schwidefsky Cc: Paul Mundt Cc: Kazumoto Kojima Cc: Richard Curnow Cc: William Lee Irwin III Cc: "David S. Miller" Cc: Jeff Dike Cc: Paolo 'Blaisorblade' Giarrusso Cc: Miles Bader Cc: Chris Zankel Cc: "Luck, Tony" Cc: Geert Uytterhoeven Cc: Roman Zippel Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 821278a75d270048e291fcbec9304439a176ba88 Author: Arnd Bergmann Date: Mon Oct 2 02:18:41 2006 -0700 [PATCH] sh64: remove the use of kernel syscalls sh64 is using system call macros to call some functions from the kernel. The old debug code can simply be removed, since we don't really have that much of a need for it anymore, it was mostly something that was handy during the initial bringup. This also brings us closer to something that looks like readable code again.. I also added a sane kernel_thread() implementation that gets away from this, so that should take care of sh64 at least. Signed-off-by: Paul Mundt Signed-off-by: Arnd Bergmann Cc: Andi Kleen Cc: Paul Mackerras Cc: Benjamin Herrenschmidt Cc: Richard Henderson Cc: Ivan Kokshaysky Cc: Russell King Cc: Ian Molton Cc: Mikael Starvik Cc: David Howells Cc: Yoshinori Sato Cc: Hirokazu Takata Cc: Ralf Baechle Cc: Kyle McMartin Cc: Heiko Carstens Cc: Martin Schwidefsky Cc: Kazumoto Kojima Cc: Richard Curnow Cc: William Lee Irwin III Cc: "David S. Miller" Cc: Jeff Dike Cc: Paolo 'Blaisorblade' Giarrusso Cc: Miles Bader Cc: Chris Zankel Cc: "Luck, Tony" Cc: Geert Uytterhoeven Cc: Roman Zippel Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 5f4c6bc1f369f20807a8e753c2308d1629478c61 Author: Arnd Bergmann Date: Mon Oct 2 02:18:37 2006 -0700 [PATCH] Remove the use of _syscallX macros in UML User mode linux uses _syscallX() to call into the host kernel. The recommended way to do this is to use the syscall() function from libc. Signed-off-by: Arnd Bergmann Cc: Andi Kleen Cc: Paul Mackerras Cc: Benjamin Herrenschmidt Cc: Richard Henderson Cc: Ivan Kokshaysky Cc: Russell King Cc: Ian Molton Cc: Mikael Starvik Cc: David Howells Cc: Yoshinori Sato Cc: Hirokazu Takata Cc: Ralf Baechle Cc: Kyle McMartin Cc: Heiko Carstens Cc: Martin Schwidefsky Cc: Paul Mundt Cc: Kazumoto Kojima Cc: Richard Curnow Cc: William Lee Irwin III Cc: "David S. Miller" Cc: Jeff Dike Cc: Paolo 'Blaisorblade' Giarrusso Cc: Miles Bader Cc: Chris Zankel Cc: "Luck, Tony" Cc: Geert Uytterhoeven Cc: Roman Zippel Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit fe74290d51bc08e9b90ed7c145d74a22cd50b90e Author: Arnd Bergmann Date: Mon Oct 2 02:18:34 2006 -0700 [PATCH] provide kernel_execve on all architectures This adds the new kernel_execve function on all architectures that were using _syscall3() to implement execve. The implementation uses code from the _syscall3 macros provided in the unistd.h header file. I don't have cross-compilers for any of these architectures, so the patch is untested with the exception of i386. Most architectures can probably implement this in a nicer way in assembly or by combining it with the sys_execve implementation itself, but this should do it for now. [bunk@stusta.de: m68knommu build fix] [markh@osdl.org: build fix] [bero@arklinux.org: build fix] [ralf@linux-mips.org: mips fix] [schwidefsky@de.ibm.com: s390 fix] Signed-off-by: Arnd Bergmann Cc: Andi Kleen Cc: Paul Mackerras Cc: Benjamin Herrenschmidt Cc: Richard Henderson Cc: Ivan Kokshaysky Cc: Russell King Cc: Ian Molton Cc: Mikael Starvik Cc: David Howells Cc: Yoshinori Sato Cc: Hirokazu Takata Cc: Ralf Baechle Cc: Kyle McMartin Cc: Heiko Carstens Cc: Martin Schwidefsky Cc: Paul Mundt Cc: Kazumoto Kojima Cc: Richard Curnow Cc: William Lee Irwin III Cc: "David S. Miller" Cc: Jeff Dike Cc: Paolo 'Blaisorblade' Giarrusso Cc: Miles Bader Cc: Chris Zankel Cc: "Luck, Tony" Cc: Geert Uytterhoeven Cc: Roman Zippel Signed-off-by: Ralf Baechle Signed-off-by: Bernhard Rosenkraenzer Signed-off-by: Mark Haverkamp Signed-off-by: Adrian Bunk Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 3db03b4afb3ecd66a0399b8ba57742ca953b0ecd Author: Arnd Bergmann Date: Mon Oct 2 02:18:31 2006 -0700 [PATCH] rename the provided execve functions to kernel_execve Some architectures provide an execve function that does not set errno, but instead returns the result code directly. Rename these to kernel_execve to get the right semantics there. Moreover, there is no reasone for any of these architectures to still provide __KERNEL_SYSCALLS__ or _syscallN macros, so remove these right away. [akpm@osdl.org: build fix] [bunk@stusta.de: build fix] Signed-off-by: Arnd Bergmann Cc: Andi Kleen Acked-by: Paul Mackerras Cc: Benjamin Herrenschmidt Cc: Richard Henderson Cc: Ivan Kokshaysky Cc: Russell King Cc: Ian Molton Cc: Mikael Starvik Cc: David Howells Cc: Yoshinori Sato Cc: Hirokazu Takata Cc: Ralf Baechle Cc: Kyle McMartin Cc: Heiko Carstens Cc: Martin Schwidefsky Cc: Paul Mundt Cc: Kazumoto Kojima Cc: Richard Curnow Cc: William Lee Irwin III Cc: "David S. Miller" Cc: Jeff Dike Cc: Paolo 'Blaisorblade' Giarrusso Cc: Miles Bader Cc: Chris Zankel Cc: "Luck, Tony" Cc: Geert Uytterhoeven Cc: Roman Zippel Signed-off-by: Adrian Bunk Cc: Arnd Bergmann Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 6760856791c6e527da678021ee6a67896549d4da Author: Arnd Bergmann Date: Mon Oct 2 02:18:26 2006 -0700 [PATCH] introduce kernel_execve The use of execve() in the kernel is dubious, since it relies on the __KERNEL_SYSCALLS__ mechanism that stores the result in a global errno variable. As a first step of getting rid of this, change all users to a global kernel_execve function that returns a proper error code. This function is a terrible hack, and a later patch removes it again after the kernel syscalls are gone. Signed-off-by: Arnd Bergmann Cc: Andi Kleen Cc: Paul Mackerras Cc: Benjamin Herrenschmidt Cc: Richard Henderson Cc: Ivan Kokshaysky Cc: Russell King Cc: Ian Molton Cc: Mikael Starvik Cc: David Howells Cc: Yoshinori Sato Cc: Hirokazu Takata Cc: Ralf Baechle Cc: Kyle McMartin Cc: Heiko Carstens Cc: Martin Schwidefsky Cc: Paul Mundt Cc: Kazumoto Kojima Cc: Richard Curnow Cc: William Lee Irwin III Cc: "David S. Miller" Cc: Jeff Dike Cc: Paolo 'Blaisorblade' Giarrusso Cc: Miles Bader Cc: Chris Zankel Cc: "Luck, Tony" Cc: Geert Uytterhoeven Cc: Roman Zippel Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 2453a3062d36f39f01302f9f1ad18e7a0c54fe38 Author: Matt Helsley Date: Mon Oct 2 02:18:25 2006 -0700 [PATCH] ipc: replace kmalloc and memset in get_undo_list with kzalloc Simplify get_undo_list() by dropping the unnecessary cast, removing the size variable, and switching to kzalloc() instead of a kmalloc() followed by a memset(). This cleanup was split then modified from Jes Sorenson's Task Notifiers patches. Signed-off-by: Matt Helsley Cc: Jes Sorensen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 5d124e99c2fee1c8f3020ecb0dff8d5617ee7991 Author: Pavel Date: Mon Oct 2 02:18:24 2006 -0700 [PATCH] nsproxy cloning error path fix This patch fixes copy_namespaces()'s error path. when new nsproxy (new_ns) is created pointers to namespaces (ipc, uts) are copied from the old nsproxy. Later in copy_utsname, copy_ipcs, etc. according namespaces are get-ed. On error path needed namespaces are put-ed, so there's no need to put new nsproxy itelf as it woud cause putting namespaces for the second time. Found when incorporating namespaces into OpenVZ kernel. Signed-off-by: Pavel Emelianov Acked-by: Serge Hallyn Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit fcfbd547b1209aae9d880fe5db33464413925cc8 Author: Kirill Korotaev Date: Mon Oct 2 02:18:23 2006 -0700 [PATCH] IPC namespace - sysctls Sysctl tweaks for IPC namespace Signed-off-by: Pavel Emelianiov Signed-off-by: Kirill Korotaev Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 4e9823111bdc76127b17fc70dc57f584fd7dd34c Author: Kirill Korotaev Date: Mon Oct 2 02:18:22 2006 -0700 [PATCH] IPC namespace - shm IPC namespace support for IPC shm code. Signed-off-by: Pavel Emelianiov Signed-off-by: Kirill Korotaev Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit e38935341a3105471848220b5750e1ea8722d197 Author: Kirill Korotaev Date: Mon Oct 2 02:18:22 2006 -0700 [PATCH] IPC namespace - sem IPC namespace support for IPC sem code. Signed-off-by: Pavel Emelianiov Signed-off-by: Kirill Korotaev Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 1e78693738b71da037d0df340f38e919e8227c2b Author: Kirill Korotaev Date: Mon Oct 2 02:18:21 2006 -0700 [PATCH] IPC namespace - msg IPC namespace support for IPC msg code. Signed-off-by: Pavel Emelianiov Signed-off-by: Kirill Korotaev Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 73ea41302bab5e02c9e86ab15c509494a550f1db Author: Kirill Korotaev Date: Mon Oct 2 02:18:20 2006 -0700 [PATCH] IPC namespace - utils This patch adds basic IPC namespace functionality to IPC utils: - init_ipc_ns - copy/clone/unshare/free IPC ns - /proc preparations Signed-off-by: Pavel Emelianov Signed-off-by: Kirill Korotaev Cc: "Eric W. Biederman" Cc: Cedric Le Goater Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 25b21cb2f6d69b0475b134e0a3e8e269137270fa Author: Kirill Korotaev Date: Mon Oct 2 02:18:19 2006 -0700 [PATCH] IPC namespace core This patch set allows to unshare IPCs and have a private set of IPC objects (sem, shm, msg) inside namespace. Basically, it is another building block of containers functionality. This patch implements core IPC namespace changes: - ipc_namespace structure - new config option CONFIG_IPC_NS - adds CLONE_NEWIPC flag - unshare support [clg@fr.ibm.com: small fix for unshare of ipc namespace] [akpm@osdl.org: build fix] Signed-off-by: Pavel Emelianov Signed-off-by: Kirill Korotaev Signed-off-by: Cedric Le Goater Cc: "Eric W. Biederman" Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit c0b2fc316599d6cd875b6b8cafa67f03b9512b4d Author: Serge Hallyn Date: Mon Oct 2 02:18:18 2006 -0700 [PATCH] uts: copy nsproxy only when needed The nsproxy was being copied in unshare() when anything was being unshared, even if it was something not referenced from nsproxy. This should end up in some cases with far more memory usage than necessary. Signed-off-by: Serge Hallyn Cc: Kirill Korotaev Cc: "Eric W. Biederman" Cc: Herbert Poetzl Cc: Andrey Savochkin Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 071df104f808b8195c40643dcb4d060681742e29 Author: Serge E. Hallyn Date: Mon Oct 2 02:18:17 2006 -0700 [PATCH] namespaces: utsname: implement CLONE_NEWUTS flag Implement a CLONE_NEWUTS flag, and use it at clone and sys_unshare. [clg@fr.ibm.com: IPC unshare fix] [bunk@stusta.de: cleanup] Signed-off-by: Serge Hallyn Cc: Kirill Korotaev Cc: "Eric W. Biederman" Cc: Herbert Poetzl Cc: Andrey Savochkin Signed-off-by: Adrian Bunk Signed-off-by: Cedric Le Goater Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit bf47fdcda65b44dbd674eeedcaa06e0aa28a5a00 Author: Serge E. Hallyn Date: Mon Oct 2 02:18:16 2006 -0700 [PATCH] namespaces: utsname: remove system_utsname The system_utsname isn't needed now that kernel/sysctl.c is fixed. Nuke it. Signed-off-by: Serge E. Hallyn Cc: Kirill Korotaev Cc: "Eric W. Biederman" Cc: Herbert Poetzl Cc: Andrey Savochkin Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 8218c74c02a7bdb5db2e40a2100534bdeb83475b Author: Serge E. Hallyn Date: Mon Oct 2 02:18:15 2006 -0700 [PATCH] namespaces: utsname: sysctl Sysctl uts patch. This will need to be done another way, but since sysctl itself needs to be container aware, 'the right thing' is a separate patchset. [akpm@osdl.org: ia64 build fix] [sam.vilain@catalyst.net.nz: cleanup] [sam.vilain@catalyst.net.nz: add proc_do_utsns_string] Signed-off-by: Serge E. Hallyn Cc: Kirill Korotaev Cc: "Eric W. Biederman" Cc: Herbert Poetzl Cc: Andrey Savochkin Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 4865ecf1315b450ab3317a745a6678c04d311e40 Author: Serge E. Hallyn Date: Mon Oct 2 02:18:14 2006 -0700 [PATCH] namespaces: utsname: implement utsname namespaces This patch defines the uts namespace and some manipulators. Adds the uts namespace to task_struct, and initializes a system-wide init namespace. It leaves a #define for system_utsname so sysctl will compile. This define will be removed in a separate patch. [akpm@osdl.org: build fix, cleanup] Signed-off-by: Serge Hallyn Cc: Kirill Korotaev Cc: "Eric W. Biederman" Cc: Herbert Poetzl Cc: Andrey Savochkin Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 96b644bdec977b97a45133e5b4466ba47a7a5e65 Author: Serge E. Hallyn Date: Mon Oct 2 02:18:13 2006 -0700 [PATCH] namespaces: utsname: use init_utsname when appropriate In some places, particularly drivers and __init code, the init utsns is the appropriate one to use. This patch replaces those with a the init_utsname helper. Changes: Removed several uses of init_utsname(). Hope I picked all the right ones in net/ipv4/ipconfig.c. These are now changed to utsname() (the per-process namespace utsname) in the previous patch (2/7) [akpm@osdl.org: CIFS fix] Signed-off-by: Serge E. Hallyn Cc: Kirill Korotaev Cc: "Eric W. Biederman" Cc: Herbert Poetzl Cc: Andrey Savochkin Cc: Serge Hallyn Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit e9ff3990f08e9a0c2839cc22808b01732ea5b3e4 Author: Serge E. Hallyn Date: Mon Oct 2 02:18:11 2006 -0700 [PATCH] namespaces: utsname: switch to using uts namespaces Replace references to system_utsname to the per-process uts namespace where appropriate. This includes things like uname. Changes: Per Eric Biederman's comments, use the per-process uts namespace for ELF_PLATFORM, sunrpc, and parts of net/ipv4/ipconfig.c [jdike@addtoit.com: UML fix] [clg@fr.ibm.com: cleanup] [akpm@osdl.org: build fix] Signed-off-by: Serge E. Hallyn Cc: Kirill Korotaev Cc: "Eric W. Biederman" Cc: Herbert Poetzl Cc: Andrey Savochkin Signed-off-by: Cedric Le Goater Cc: Jeff Dike Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 0bdd7aab7f0ecd5d337910816aa058c18398628e Author: Serge E. Hallyn Date: Mon Oct 2 02:18:10 2006 -0700 [PATCH] namespaces: utsname: introduce temporary helpers Define utsname() and init_utsname() which return &system_utsname. Users of system_utsname will be changed to use these helpers, after which system_utsname will disappear. Signed-off-by: Serge E. Hallyn Cc: Kirill Korotaev Cc: "Eric W. Biederman" Cc: Herbert Poetzl Cc: Andrey Savochkin Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit fab413a334a7b3dd2688c5cd5d4718476e430ea4 Author: Cedric Le Goater Date: Mon Oct 2 02:18:09 2006 -0700 [PATCH] namespaces: exit_task_namespaces() invalidates nsproxy exit_task_namespaces() has replaced the former exit_namespace(). It invalidates task->nsproxy and associated namespaces. This is an issue for the (futur) pid namespace which is required to be valid in exit_notify(). This patch moves exit_task_namespaces() after exit_notify() to keep nsproxy valid. Signed-off-by: Cedric Le Goater Cc: Serge E. Hallyn Cc: Kirill Korotaev Cc: "Eric W. Biederman" Cc: Herbert Poetzl Cc: Andrey Savochkin Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 1651e14e28a2d9f446018ef522882e0709a2ce4f Author: Serge E. Hallyn Date: Mon Oct 2 02:18:08 2006 -0700 [PATCH] namespaces: incorporate fs namespace into nsproxy This moves the mount namespace into the nsproxy. The mount namespace count now refers to the number of nsproxies point to it, rather than the number of tasks. As a result, the unshare_namespace() function in kernel/fork.c no longer checks whether it is being shared. Signed-off-by: Serge Hallyn Cc: Kirill Korotaev Cc: "Eric W. Biederman" Cc: Herbert Poetzl Cc: Andrey Savochkin Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 0437eb594e6e5e699248f865482e61034be846d0 Author: Serge E. Hallyn Date: Mon Oct 2 02:18:07 2006 -0700 [PATCH] nsproxy: move init_nsproxy into kernel/nsproxy.c Move the init_nsproxy definition out of arch/ into kernel/nsproxy.c. This avoids all arches having to be updated. Compiles and boots on s390. Signed-off-by: Serge E. Hallyn Cc: Kirill Korotaev Cc: "Eric W. Biederman" Cc: Herbert Poetzl Cc: Andrey Savochkin Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit ab516013ad9ca47f1d3a936fa81303bfbf734d52 Author: Serge E. Hallyn Date: Mon Oct 2 02:18:06 2006 -0700 [PATCH] namespaces: add nsproxy This patch adds a nsproxy structure to the task struct. Later patches will move the fs namespace pointer into this structure, and introduce a new utsname namespace into the nsproxy. The vserver and openvz functionality, then, would be implemented in large part by virtualizing/isolating more and more resources into namespaces, each contained in the nsproxy. [akpm@osdl.org: build fix] Signed-off-by: Serge Hallyn Cc: Kirill Korotaev Cc: "Eric W. Biederman" Cc: Herbert Poetzl Cc: Andrey Savochkin Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit b1ba4ddde0cf67991d89f039365eaaeda61aa027 Author: Adrian Bunk Date: Mon Oct 2 02:18:05 2006 -0700 [PATCH] make kernel/sysctl.c:_proc_do_string() static This patch makes the needlessly global _proc_do_string() static. Signed-off-by: Adrian Bunk Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit f5dd3d6fadf98a53b35d20427ca198fda42f1251 Author: Sam Vilain Date: Mon Oct 2 02:18:04 2006 -0700 [PATCH] proc: sysctl: add _proc_do_string helper The logic in proc_do_string is worth re-using without passing in a ctl_table structure (say, we want to calculate a pointer and pass that in instead); pass in the two fields it uses from that structure as explicit arguments. Signed-off-by: Sam Vilain Cc: Serge E. Hallyn Cc: Kirill Korotaev Cc: "Eric W. Biederman" Cc: Herbert Poetzl Cc: Andrey Savochkin Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 12fd352038c037ba3a7071a2ca8597c55114abc3 Author: Peter Zijlstra Date: Mon Oct 2 02:18:03 2006 -0700 [PATCH] nfsd: lockdep annotation while doing a kernel make modules_install install over an NFS mount. ============================================= [ INFO: possible recursive locking detected ] --------------------------------------------- nfsd/9550 is trying to acquire lock: (&inode->i_mutex){--..}, at: [] mutex_lock+0x1c/0x1f but task is already holding lock: (&inode->i_mutex){--..}, at: [] mutex_lock+0x1c/0x1f other info that might help us debug this: 2 locks held by nfsd/9550: #0: (hash_sem){..--}, at: [] exp_readlock+0xd/0xf [nfsd] #1: (&inode->i_mutex){--..}, at: [] mutex_lock+0x1c/0x1f stack backtrace: [] show_trace_log_lvl+0x58/0x152 [] show_trace+0xd/0x10 [] dump_stack+0x19/0x1b [] __lock_acquire+0x77a/0x9a3 [] lock_acquire+0x60/0x80 [] __mutex_lock_slowpath+0xa7/0x20e [] mutex_lock+0x1c/0x1f [] vfs_unlink+0x34/0x8a [] nfsd_unlink+0x18f/0x1e2 [nfsd] [] nfsd3_proc_remove+0x95/0xa2 [nfsd] [] nfsd_dispatch+0xc0/0x178 [nfsd] [] svc_process+0x3a5/0x5ed [] nfsd+0x1a7/0x305 [nfsd] [] kernel_thread_helper+0x5/0xb DWARF2 unwinder stuck at kernel_thread_helper+0x5/0xb Leftover inexact backtrace: [] show_trace+0xd/0x10 [] dump_stack+0x19/0x1b [] __lock_acquire+0x77a/0x9a3 [] lock_acquire+0x60/0x80 [] __mutex_lock_slowpath+0xa7/0x20e [] mutex_lock+0x1c/0x1f [] vfs_unlink+0x34/0x8a [] nfsd_unlink+0x18f/0x1e2 [nfsd] [] nfsd3_proc_remove+0x95/0xa2 [nfsd] [] nfsd_dispatch+0xc0/0x178 [nfsd] [] svc_process+0x3a5/0x5ed [] nfsd+0x1a7/0x305 [nfsd] [] kernel_thread_helper+0x5/0xb ============================================= [ INFO: possible recursive locking detected ] --------------------------------------------- nfsd/9580 is trying to acquire lock: (&inode->i_mutex){--..}, at: [] mutex_lock+0x1c/0x1f but task is already holding lock: (&inode->i_mutex){--..}, at: [] mutex_lock+0x1c/0x1f other info that might help us debug this: 2 locks held by nfsd/9580: #0: (hash_sem){..--}, at: [] exp_readlock+0xd/0xf [nfsd] #1: (&inode->i_mutex){--..}, at: [] mutex_lock+0x1c/0x1f stack backtrace: [] show_trace_log_lvl+0x58/0x152 [] show_trace+0xd/0x10 [] dump_stack+0x19/0x1b [] __lock_acquire+0x77a/0x9a3 [] lock_acquire+0x60/0x80 [] __mutex_lock_slowpath+0xa7/0x20e [] mutex_lock+0x1c/0x1f [] nfsd_setattr+0x2c8/0x499 [nfsd] [] nfsd_create_v3+0x31b/0x4ac [nfsd] [] nfsd3_proc_create+0x128/0x138 [nfsd] [] nfsd_dispatch+0xc0/0x178 [nfsd] [] svc_process+0x3a5/0x5ed [] nfsd+0x1a7/0x305 [nfsd] [] kernel_thread_helper+0x5/0xb DWARF2 unwinder stuck at kernel_thread_helper+0x5/0xb Leftover inexact backtrace: [] show_trace+0xd/0x10 [] dump_stack+0x19/0x1b [] __lock_acquire+0x77a/0x9a3 [] lock_acquire+0x60/0x80 [] __mutex_lock_slowpath+0xa7/0x20e [] mutex_lock+0x1c/0x1f [] nfsd_setattr+0x2c8/0x499 [nfsd] [] nfsd_create_v3+0x31b/0x4ac [nfsd] [] nfsd3_proc_create+0x128/0x138 [nfsd] [] nfsd_dispatch+0xc0/0x178 [nfsd] [] svc_process+0x3a5/0x5ed [] nfsd+0x1a7/0x305 [nfsd] [] kernel_thread_helper+0x5/0xb Signed-off-by: Peter Zijlstra Cc: Neil Brown Cc: Ingo Molnar Cc: Arjan van de Ven Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit eed2965af1bae30f746e936d80ad4fabb9e208c8 Author: Greg Banks Date: Mon Oct 2 02:18:02 2006 -0700 [PATCH] knfsd: allow admin to set nthreads per node Add /proc/fs/nfsd/pool_threads which allows the sysadmin (or a userspace daemon) to read and change the number of nfsd threads in each pool. The format is a list of space-separated integers, one per pool. Signed-off-by: Greg Banks Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit bfd241600a3b0db4fe43c859f1460d0a958d924a Author: Greg Banks Date: Mon Oct 2 02:18:01 2006 -0700 [PATCH] knfsd: make rpc threads pools numa aware Actually implement multiple pools. On NUMA machines, allocate a svc_pool per NUMA node; on SMP a svc_pool per CPU; otherwise a single global pool. Enqueue sockets on the svc_pool corresponding to the CPU on which the socket bh is run (i.e. the NIC interrupt CPU). Threads have their cpu mask set to limit them to the CPUs in the svc_pool that owns them. This is the patch that allows an Altix to scale NFS traffic linearly beyond 4 CPUs and 4 NICs. Incorporates changes and feedback from Neil Brown, Trond Myklebust, and Christoph Hellwig. Signed-off-by: Greg Banks Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit eec09661dc82e90a31051d045a94026a91aceb82 Author: Greg Banks Date: Mon Oct 2 02:18:00 2006 -0700 [PATCH] knfsd: use svc_set_num_threads to manage threads in knfsd Replace the existing list of all nfsd threads with new code using svc_create_pooled(). Signed-off-by: Greg Banks Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit a74554429eada89a7ddb47317e6a2968d03e41a2 Author: Greg Banks Date: Mon Oct 2 02:17:59 2006 -0700 [PATCH] knfsd: add svc_set_num_threads Currently knfsd keeps its own list of all nfsd threads in nfssvc.c; add a new way of managing the list of all threads in a svc_serv. Add svc_create_pooled() to allow creation of a svc_serv whose threads are managed by the sunrpc code. Add svc_set_num_threads() to manage the number of threads in a service, either per-pool or globally across the service. Signed-off-by: Greg Banks Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 9a24ab5749a31aa10ee60d9310ad72f24d7c38ab Author: Greg Banks Date: Mon Oct 2 02:17:58 2006 -0700 [PATCH] knfsd: add svc_get add svc_get() for those occasions when we need to temporarily bump up svc_serv->sv_nrthreads as a pseudo refcount. Signed-off-by: Greg Banks Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 3262c816a3d7fb1eaabce633caa317887ed549ae Author: Greg Banks Date: Mon Oct 2 02:17:58 2006 -0700 [PATCH] knfsd: split svc_serv into pools Split out the list of idle threads and pending sockets from svc_serv into a new svc_pool structure, and allocate a fixed number (in this patch, 1) of pools per svc_serv. The new structure contains a lock which takes over several of the duties of svc_serv->sv_lock, which is now relegated to protecting only sv_tempsocks, sv_permsocks, and sv_tmpcnt in svc_serv. The point is to move the hottest fields out of svc_serv and into svc_pool, allowing a following patch to arrange for a svc_pool per NUMA node or per CPU. This is a major step towards making the NFS server NUMA-friendly. Signed-off-by: Greg Banks Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit c081a0c7cfe42adf8e8b9c2b8d0b2ec7f47603e8 Author: Greg Banks Date: Mon Oct 2 02:17:57 2006 -0700 [PATCH] knfsd: test and set SK_BUSY atomically The SK_BUSY bit in svc_sock->sk_flags ensures that we do not attempt to enqueue a socket twice. Currently, setting and clearing the bit is protected by svc_serv->sv_lock. As I intend to reduce the data that the lock protects so it's not held when svc_sock_enqueue() tests and sets SK_BUSY, that test and set needs to be atomic. Signed-off-by: Greg Banks Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 5685f0fa1c24b138d041ef129ed419c5effa40e1 Author: Greg Banks Date: Mon Oct 2 02:17:56 2006 -0700 [PATCH] knfsd: convert sk_reserved to atomic_t Convert the svc_sock->sk_reserved variable from an int protected by svc_serv->sv_lock, to an atomic. This reduces (by 1) the number of places we need to take the (effectively global) svc_serv->sv_lock. Signed-off-by: Greg Banks Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 1a68d952af5f43032012d26dd0d5164c9e9986bc Author: Greg Banks Date: Mon Oct 2 02:17:55 2006 -0700 [PATCH] knfsd: use new lock for svc_sock deferred list Protect the svc_sock->sk_deferred list with a new lock svc_sock->sk_defer_lock instead of svc_serv->sv_lock. Using the more fine-grained lock reduces the number of places we need to take the svc_serv lock. Signed-off-by: Greg Banks Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit c45c357d7dbc9e94338f44349e0035149da86b26 Author: Greg Banks Date: Mon Oct 2 02:17:54 2006 -0700 [PATCH] knfsd: convert sk_inuse to atomic_t Convert the svc_sock->sk_inuse counter from an int protected by svc_serv->sv_lock, to an atomic. This reduces the number of places we need to take the (effectively global) svc_serv->sv_lock. Signed-off-by: Greg Banks Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 36bdfc8bae51339aa27ef8e4ce148185293061ae Author: Greg Banks Date: Mon Oct 2 02:17:54 2006 -0700 [PATCH] knfsd: move tempsock aging to a timer Following are 11 patches from Greg Banks which combine to make knfsd more Numa-aware. They reduce hitting on 'global' data structures, and create some data-structures that can be node-local. knfsd threads are bound to a particular node, and the thread to handle a new request is chosen from the threads that are attach to the node that received the interrupt. The distribution of threads across nodes can be controlled by a new file in the 'nfsd' filesystem, though the default approach of an even spread is probably fine for most sites. Some (old) numbers that show the efficacy of these patches: N == number of NICs == number of CPUs == nmber of clients. Number of NUMA nodes == N/2 N Throughput, MiB/s CPU usage, % (max=N*100) Before After Before After --- ------ ---- ----- ----- 4 312 435 350 228 6 500 656 501 418 8 562 804 690 589 This patch: Move the aging of RPC/TCP connection sockets from the main svc_recv() loop to a timer which uses a mark-and-sweep algorithm every 6 minutes. This reduces the amount of work that needs to be done in the main RPC loop and the length of time we need to hold the (effectively global) svc_serv->sv_lock. [akpm@osdl.org: cleanup] Signed-off-by: Greg Banks Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 4a3ae42dc312dbdffee803efaf393421b79f997a Author: NeilBrown Date: Mon Oct 2 02:17:53 2006 -0700 [PATCH] knfsd: Correctly handle error condition from lockd_up If lockd_up fails - what should we expect? Do we have to later call lockd_down? Well the nfs client thinks "no", the nfs server thinks "yes". lockd thinks "yes". The only answer that really makes sense is "no" !! So: Make lockd_up only increment nlmsvc_users on success. Make nfsd handle errors from lockd_up properly. Make sure lockd_up(0) never fails when lockd is running so that the 'reclaimer' call to lockd_up doesn't need to be error checked. Cc: "J. Bruce Fields" Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 7dcf91ec6698fe8564ad91bbe42740aacaa0d9ee Author: NeilBrown Date: Mon Oct 2 02:17:52 2006 -0700 [PATCH] knfsd: Move makesock failed warning into make_socks. Thus it is printed for any path that leads to failure (make_socks is called from two places). Cc: "J. Bruce Fields" Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 3dfb4210535303bb4c2e0ff1c4fdd4dfe9b93472 Author: NeilBrown Date: Mon Oct 2 02:17:51 2006 -0700 [PATCH] knfsd: Check return value of lockd_up in write_ports We should be checking the return value of lockd_up when adding a new socket to nfsd. So move the lockd_up before the svc_addsock and check the return value. The move is because lockd_down is easy, but there is no easy way to remove a recently added socket. Cc: "J. Bruce Fields" Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 6fb2b47fa16c81317ec282248e6cff521cca31c2 Author: NeilBrown Date: Mon Oct 2 02:17:50 2006 -0700 [PATCH] knfsd: Drop 'serv' option to svc_recv and svc_process It isn't needed as it is available in rqstp->rq_server, and dropping it allows some local vars to be dropped. [akpm@osdl.org: build fix] Cc: "J. Bruce Fields" Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 896440d560de3bca6813e83792f431edf5073318 Author: Josh Triplett Date: Mon Oct 2 02:17:50 2006 -0700 [PATCH] nfsd: add lock annotations to e_start and e_stop e_start acquires svc_export_cache.hash_lock, and e_stop releases it. Add lock annotations to these two functions so that sparse can check callers for lock pairing, and so that sparse will not complain about these functions since they intentionally use locks in this manner. Signed-off-by: Josh Triplett Cc: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit bc6f02e516b487ada46823fb05f237a0ef705f92 Author: Greg Banks Date: Mon Oct 2 02:17:49 2006 -0700 [PATCH] knfsd: Use SEQ_START_TOKEN instead of hardcoded magic (void*)1 Signed-off-by: Greg Banks Acked-by: NeilBrown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit b41b66d63c730cc45a1024e1f1e67439e507e40f Author: NeilBrown Date: Mon Oct 2 02:17:48 2006 -0700 [PATCH] knfsd: allow sockets to be passed to nfsd via 'portlist' Userspace should create and bind a socket (but not connectted) and write the 'fd' to portlist. This will cause the nfs server to listen on that socket. To close a socket, the name of the socket - as read from 'portlist' can be written to 'portlist' with a preceding '-'. Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 80212d59e32a8a8e030c2ddc5861d8ff70542c56 Author: NeilBrown Date: Mon Oct 2 02:17:47 2006 -0700 [PATCH] knfsd: define new nfsdfs file: portlist - contains list of ports This file will list all ports that nfsd has open. Default when TCP enabled will be ipv4 udp 0.0.0.0 2049 ipv4 tcp 0.0.0.0 2049 Later, the list of ports will be settable. 'portlist' chosen rather than 'ports', to avoid unnecessary confusion with non-mainline patches which created 'ports' with different semantics. [akpm@osdl.org: cleanups, build fix] Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 02a375f0ac4bc2e9b767fabb6b2f9915547226a7 Author: NeilBrown Date: Mon Oct 2 02:17:46 2006 -0700 [PATCH] knfsd: separate out some parts of nfsd_svc, which start nfs servers Separate out the code for creating a new service, and for creating initial sockets. Some of these new functions will have multiple callers soon. [akpm@osdl.org: cleanups] Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 6658d3a7bbfd1768a7b599def47939417f0ee8ef Author: NeilBrown Date: Mon Oct 2 02:17:46 2006 -0700 [PATCH] knfsd: remove nfsd_versbits as intermediate storage for desired versions We have an array 'nfsd_version' which lists the available versions of nfsd, and 'nfsd_versions' (poor choice there :-() which lists the currently active versions. Then we have a bitmap - nfsd_versbits which says which versions are wanted. The bits in this bitset cause content to be copied from nfsd_version to nfsd_versions when nfsd starts. This patch removes nfsd_versbits and moves information directly from nfsd_version to nfsd_versions when requests for version changes arrive. Note that this doesn't make it possible to change versions while the server is running. This is because serv->sv_xdrsize is calculated when a service is created, and used when threads are created, and xdrsize depends on the active versions. Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 24e36663c375df577d2dcae437713481ffd6850c Author: NeilBrown Date: Mon Oct 2 02:17:45 2006 -0700 [PATCH] knfsd: be more selective in which sockets lockd listens on Currently lockd listens on UDP always, and TCP if CONFIG_NFSD_TCP is set. However as lockd performs services of the client as well, this is a problem. If CONFIG_NfSD_TCP is not set, and a tcp mount is used, the server will not be able to call back to lockd. So: - add an option to lockd_up saying which protocol is needed - Always open sockets for which an explicit port was given, otherwise only open a socket of the type required - Change nfsd to do one lockd_up per socket rather than one per thread. This - removes the dependancy on CONFIG_NFSD_TCP - means that lockd may open sockets other than at startup - means that lockd will *not* listen on UDP if the only mounts are TCP mount (and nfsd hasn't started). The latter is the only one that concerns me at all - I don't know if this might be a problem with some servers. Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit bc591ccff27e6a85d3a0d6fcb16cfadcc45267a8 Author: NeilBrown Date: Mon Oct 2 02:17:44 2006 -0700 [PATCH] knfsd: add a callback for when last rpc thread finishes nfsd has some cleanup that it wants to do when the last thread exits, and there will shortly be some more. So collect this all into one place and define a callback for an rpc service to call when the service is about to be destroyed. [akpm@osdl.org: cleanups, build fix] Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 40f10522173c34e56cb9bf2fd37c62f69a427f1b Author: Greg Banks Date: Mon Oct 2 02:17:43 2006 -0700 [PATCH] knfsd: remove an unused variable from auth_unix_lookup() Signed-off-by: Greg Banks Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit b06c7b43335788a62f77a9be9cc8eb479a929853 Author: Greg Banks Date: Mon Oct 2 02:17:42 2006 -0700 [PATCH] knfsd: remove an unused variable from e_show() Signed-off-by: Greg Banks Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 3e3b480096568d58d931df6104ef7ca80757efd3 Author: Greg Banks Date: Mon Oct 2 02:17:41 2006 -0700 [PATCH] knfsd: add some missing newlines in printks Signed-off-by: Greg Banks Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit a406c3664e171ca8f20dfb339074b26eb2674ac0 Author: Greg Banks Date: Mon Oct 2 02:17:41 2006 -0700 [PATCH] cpumask: export node_to_cpu_mask consistently cpumask: ensure that node_to_cpumask() is available to modules for all supported combinations of architecture and CONFIG_NUMA. Signed-off-by: Greg Banks Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit e16b38f71322efd8a221f64b6ddc0748d21d2e1a Author: Greg Banks Date: Mon Oct 2 02:17:40 2006 -0700 [PATCH] cpumask: export cpu_online_map and cpu_possible_map consistently cpumask: ensure that the cpu_online_map and cpu_possible_map bitmasks, and hence all the macros in that require them, are available to modules for all supported combinations of architecture and CONFIG_SMP. Signed-off-by: Greg Banks Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 0f532f3861d2c4e5aa7dcd33fb18e9975eb28457 Author: Greg Banks Date: Mon Oct 2 02:17:39 2006 -0700 [PATCH] cpumask: add highest_possible_node_id cpumask: add highest_possible_node_id(), analogous to highest_possible_processor_id(). [pj@sgi.com: fix typo] Signed-off-by: Greg Banks Signed-off-by: Paul Jackson Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit ca8af486765852302931bb69075871d5564e1e5b Author: Andrew Morton Date: Mon Oct 2 02:17:38 2006 -0700 [PATCH] isdn: work around excessive udelay() As reported in http://bugzilla.kernel.org/show_bug.cgi?id=6970, ISDN can issue excessively-long udelays, which triggers a build-time error on ARM. This is very sucky of ISDN, but I doubt if anyone is going to suddenly fix it. So change the macro to do the microsecond counting itself. Cc: Cc: Karsten Keil Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit fd0fbcc27fd72a11dacc3f1a1681ee4dfd256a0b Author: Tilman Schmidt Date: Mon Oct 2 02:17:37 2006 -0700 [PATCH] isdn4linux: Gigaset driver: fix __must_check warning This patch to the Siemens Gigaset driver fixes the compile warning "ignoring return value of 'class_device_create_file', declared with attribute warn_unused_result" appearing with CONFIG_ENABLE_MUST_CHECK=y in release 2.6.18-rc1-mm1. Signed-off-by: Tilman Schmidt Acked-by: Hansjoerg Lipp Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 8bb31b9d5340ed3dfef45d322f59fcf18a0d598b Author: Ankita Garg Date: Mon Oct 2 02:17:36 2006 -0700 [PATCH] Linux Kernel Dump Test Module A simple module to test Linux Kernel Dump mechanism. This module uses jprobes to install/activate pre-defined crash points. At different crash points, various types of crashing scenarios are created like a BUG(), panic(), exception, recursive loop and stack overflow. The user can activate a crash point with specific type by providing parameters at the time of module insertion. Please see the file header for usage information. The module is based on the Linux Kernel Dump Test Tool by Fernando . This module could be merged with mainline. Jprobes is used here so that the context in which crash point is hit, could be maintained. This implements all the crash points as done by LKDTT except the one in the middle of tasklet_action(). Signed-off-by: Ankita Garg Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 99219a3fbc2dcf2eaa954f7b2ac27299fd7894cd Author: bibo,mao Date: Mon Oct 2 02:17:35 2006 -0700 [PATCH] kretprobe spinlock deadlock patch kprobe_flush_task() possibly calls kfree function during holding kretprobe_lock spinlock, if kfree function is probed by kretprobe that will incur spinlock deadlock. This patch moves kfree function out scope of kretprobe_lock. Signed-off-by: bibo, mao Signed-off-by: Ananth N Mavinakayanahalli Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit f2aa85a0ccd90110e76c6375535adc3ae358f971 Author: bibo,mao Date: Mon Oct 2 02:17:34 2006 -0700 [PATCH] disallow kprobes on notifier_call_chain When kprobe is re-entered, the re-entered kprobe kernel path will will call atomic_notifier_call_chain function, if this function is kprobed that will incur numerous kprobe recursive fault. This patch disallows kprobes on atomic_notifier_call_chain function. Signed-off-by: bibo, mao Signed-off-by: Ananth N Mavinakayanahalli Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 62c27be0dd8144e11bd3ed054a0fb890579925f8 Author: bibo,mao Date: Mon Oct 2 02:17:33 2006 -0700 [PATCH] kprobe whitespace cleanup Whitespace is used to indent, this patch cleans up these sentences by kernel coding style. Signed-off-by: bibo, mao Signed-off-by: Ananth N Mavinakayanahalli Cc: "Luck, Tony" Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 09b18203d772db318ef92f6908c439ee5a35a4f9 Author: Ananth N Mavinakayanahalli Date: Mon Oct 2 02:17:32 2006 -0700 [PATCH] Update Documentation/kprobes.txt Documentation/kprobes.txt updated to reflect: o In-kernel symbol resolution o CONFIG_KALLSYMS dependency o Usage of JPROBE_ENTRY o Addition of regs_return_value() Also update the references list and usage examples to use correct module interfaces. Signed-off-by: Ananth N Mavinakayanahalli Acked-by: Jim Keniston Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit b3f827cb0fe0660c2eacea2c2f9bdb1f225ff768 Author: Ananth N Mavinakayanahalli Date: Mon Oct 2 02:17:31 2006 -0700 [PATCH] Add regs_return_value() helper Add the regs_return_value() macro to extract the return value in an architecture agnostic manner, given the pt_regs. Other architecture maintainers may want to add similar helpers. Signed-off-by: Ananth N Mavinakayanahalli Signed-off-by: Anil S Keshavamurthy Signed-off-by: Martin Schwidefsky Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 412998cf6bce78b8dc5f68660e09bf3b4fcbb210 Author: Ananth N Mavinakayanahalli Date: Mon Oct 2 02:17:31 2006 -0700 [PATCH] kprobes: handle symbol resolution when is specified kallsyms_lookup_name() allows for style specification for looking up symbol addresses. Handle the case where the user specifies on powerpc, given that 64-bit powerpc uses function descriptors. Signed-off-by: Anil S Keshavamurthy Signed-off-by: Ananth N Mavinakayanahalli Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 3a872d89baae821a0f6e2c1055d4b47650661137 Author: Ananth N Mavinakayanahalli Date: Mon Oct 2 02:17:30 2006 -0700 [PATCH] Kprobes: Make kprobe modules more portable In an effort to make kprobe modules more portable, here is a patch that: o Introduces the "symbol_name" field to struct kprobe. The symbol->address resolution now happens in the kernel in an architecture agnostic manner. 64-bit powerpc users no longer have to specify the ".symbols" o Introduces the "offset" field to struct kprobe to allow a user to specify an offset into a symbol. o The legacy mechanism of specifying the kprobe.addr is still supported. However, if both the kprobe.addr and kprobe.symbol_name are specified, probe registration fails with an -EINVAL. o The symbol resolution code uses kallsyms_lookup_name(). So CONFIG_KPROBES now depends on CONFIG_KALLSYMS o Apparantly kprobe modules were the only legitimate out-of-tree user of the kallsyms_lookup_name() EXPORT. Now that the symbol resolution happens in-kernel, remove the EXPORT as suggested by Christoph Hellwig o Modify tcp_probe.c that uses the kprobe interface so as to make it work on multiple platforms (in its earlier form, the code wouldn't work, say, on powerpc) Signed-off-by: Ananth N Mavinakayanahalli Signed-off-by: Prasanna S Panchamukhi Signed-off-by: Christoph Hellwig Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 782237a2418e2561a87c86a4832726931adce737 Author: Cedric Le Goater Date: Mon Oct 2 02:17:28 2006 -0700 [PATCH] s390: update fs3270 to use a struct pid Replaces the pid_t value with a struct pid to avoid pid wrap around problems. Signed-off-by: Cedric Le Goater Cc: Martin Schwidefsky Acked-by: Eric W. Biederman Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 2425c08b37244005ff221efe4957d8aaff18609c Author: Eric W. Biederman Date: Mon Oct 2 02:17:28 2006 -0700 [PATCH] usb: fixup usb so it uses struct pid The problem with remembering a user space process by its pid is that it is possible that the process will exit, pid wrap around will occur. Converting to a struct pid avoid that problem, and paves the way for implementing a pid namespace. Also since usb is the only user of kill_proc_info_as_uid rename kill_proc_info_as_uid to kill_pid_info_as_uid and have the new version take a struct pid. Signed-off-by: Eric W. Biederman Acked-by: Greg Kroah-Hartman Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 43fa1adb9334bf4585cd53144eb5911488f85bc7 Author: Eric W. Biederman Date: Mon Oct 2 02:17:27 2006 -0700 [PATCH] file: Add locking to f_getown This has been needed for a long time, but now with the advent of a reference counted struct pid there are real consequences for getting this wrong. Someone I think it was Oleg Nesterov pointed out that this construct was missing locking, when I introduced struct pid. After taking time to review the locking construct already present I figured out which lock needs to be taken. The other paths that access f_owner.pid take either the f_owner read or the write lock. Signed-off-by: Eric W. Biederman Cc: Oleg Nesterov Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit a03fcb730b4fe7da14ca4405f23dbde717b1d2b9 Author: Cedric Le Goater Date: Mon Oct 2 02:17:26 2006 -0700 [PATCH] update mq_notify to use a struct pid Message queues can signal a process waiting for a message. This patch replaces the pid_t value with a struct pid to avoid pid wrap around problems. Signed-off-by: Cedric Le Goater Acked-by: Eric Biederman Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit f40f50d3bb33b52dfd550ca80be7daaddad21883 Author: Eric W. Biederman Date: Mon Oct 2 02:17:25 2006 -0700 [PATCH] Use struct pspace in next_pidmap and find_ge_pid This updates my proc: readdir race fix (take 3) patch to account for the changes made by: Sukadev Bhattiprolu to introduce struct pspace. Signed-off-by: Eric W. Biederman Cc: KAMEZAWA Hiroyuki Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 3fbc96486459324e182717b03c50c90c880be6ec Author: Sukadev Bhattiprolu Date: Mon Oct 2 02:17:24 2006 -0700 [PATCH] Define struct pspace Define a per-container pid space object. And create one instance of this object, init_pspace, to define the entire pid space. Subsequent patches will provide/use interfaces to create/destroy pid spaces. Its a subset/rework of Eric Biederman's patch http://lkml.org/lkml/2006/2/6/285 . Signed-off-by: Eric Biederman Signed-off-by: Sukadev Bhattiprolu Cc: Dave Hansen Cc: Serge Hallyn Cc: Cedric Le Goater Cc: Kirill Korotaev Cc: Andrey Savochkin Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit aa5a6662f93f52605b6c447ba6f7291e92f515c5 Author: Sukadev Bhattiprolu Date: Mon Oct 2 02:17:23 2006 -0700 [PATCH] Move pidmap to pspace.h Move struct pidmap and PIDMAP_ENTRIES to a new file, include/linux/pspace.h where it will be used in subsequent patches to define pid spaces. Its a subset of Eric Biederman's patch http://lkml.org/lkml/2006/2/6/285 [akpm@osdl.org: cleanups] Signed-off-by: Eric W. Biederman Signed-off-by: Sukadev Bhattiprolu Cc: Dave Hansen Cc: Serge Hallyn Cc: Cedric Le Goater Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit d387cae075b0aec479adbdfb71df39f7de8e9adb Author: Oleg Nesterov Date: Mon Oct 2 02:17:22 2006 -0700 [PATCH] pid: simplify pid iterators I think it is hardly possible to read the current do_each_task_pid(). The new version is much simpler and makes the code smaller. Only the do_each_task_pid change is tested, the do_each_pid_task isn't. Signed-off-by: Oleg Nesterov Cc: "Eric W. Biederman" Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit c88be3eb2e01bbb21c9ccdc3805f0d3546c1898c Author: Eric W. Biederman Date: Mon Oct 2 02:17:21 2006 -0700 [PATCH] pids coding style use struct pidmap in next_pidmap Use struct pidmap instead of pidmap_t. This updates my proc: readdir race fix (take 3) patch to account for the changes made by: Sukadev Bhattiprolu to kill pidmap_t. Signed-off-by: Eric W. Biederman Cc: KAMEZAWA Hiroyuki Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 6a1f3b84557774a46af68747c92d8f36382027ae Author: Sukadev Bhattiprolu Date: Mon Oct 2 02:17:20 2006 -0700 [PATCH] pids: coding style: use struct pidmap Use struct pidmap instead of pidmap_t. Its a subset of Eric Biederman's patch http://lkml.org/lkml/2006/2/6/271. Signed-off-by: Eric W. Biederman Signed-off-by: Sukadev Bhattiprolu Cc: Dave Hansen Cc: Serge Hallyn Cc: Cedric Le Goater Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit b68e31d0ebbcc909d1941f9f230c9d062a3a13d3 Author: Jeff Dike Date: Mon Oct 2 02:17:18 2006 -0700 [PATCH] const struct tty_operations As part of an SMP cleanliness pass over UML, I consted a bunch of structures in order to not have to document their locking. One of these structures was a struct tty_operations. In order to const it in UML without introducing compiler complaints, the declaration of tty_set_operations needs to be changed, and then all of its callers need to be fixed. This patch declares all struct tty_operations in the tree as const. In all cases, they are static and used only as input to tty_set_operations. As an extra check, I ran an i386 allyesconfig build which produced no extra warnings. 53 drivers are affected. I checked the history of a bunch of them, and in most cases, there have been only a handful of maintenance changes in the last six months. serial_core.c was the busiest one that I looked at. Signed-off-by: Jeff Dike Acked-by: Alan Cox Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit ed97bd37efd8ff7398d3a7eedf4bcbf245f5dad3 Author: Andreas Mohr Date: Mon Oct 2 02:17:17 2006 -0700 [PATCH] fs/inode.c tweaks Only touch inode's i_mtime and i_ctime to make them equal to "now" in case they aren't yet (don't just update timestamp unconditionally). Uninline the hash function to save 259 Bytes. This tiny inode change which may improve cache behaviour also shaves off 8 Bytes from file_update_time() on i386. Included a tiny codestyle cleanup, too. Signed-off-by: Andreas Mohr Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 07acaf28d21e710bcf1cec91c0cfdb1a7b5e3d65 Author: Alexey Dobriyan Date: Mon Oct 2 02:17:16 2006 -0700 [PATCH] Remove NULL check in register_nls() Everybody passes valid pointer there. Signed-off-by: Alexey Dobriyan Acked-by: OGAWA Hirofumi Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 609d7fa9565c754428d2520cac2accc9052e1245 Author: Eric W. Biederman Date: Mon Oct 2 02:17:15 2006 -0700 [PATCH] file: modify struct fown_struct to use a struct pid File handles can be requested to send sigio and sigurg to processes. By tracking the destination processes using struct pid instead of pid_t we make the interface safe from all potential pid wrap around problems. Signed-off-by: Eric W. Biederman Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit bde0d2c98bcfc9acc83ac79c33a6ac1335b95a92 Author: Eric W. Biederman Date: Mon Oct 2 02:17:14 2006 -0700 [PATCH] vt: Make vt_pid a struct pid (making it pid wrap around safe). I took a good hard look at the locking and it appears the locking on vt_pid is the console semaphore. Every modified path is called under the console semaphore except reset_vc when it is called from fn_SAK or do_SAK both of which appear to be in interrupt context. In addition I need to be careful because in the presence of an oops the console_sem may be arbitrarily dropped. Which leads me to conclude the current locking is inadequate for my needs. Given the weird cases we could hit because of oops printing instead of introducing an extra spin lock to protect the data and keep the pid to signal and the signal to send in sync, I have opted to use xchg on just the struct pid * pointer instead. Due to console_sem we will stay in sync between vt_pid and vt_mode except for a small window during a SAK, or oops handling. SAK handling should kill any user space process that care, and oops handling we are broken anyway. Besides the worst that can happen is that I try to send the wrong signal. Signed-off-by: Eric W. Biederman Cc: Oleg Nesterov Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 81af8d67d4fc35b1ee6e0feb1f1b34b3a33eeb44 Author: Eric W. Biederman Date: Mon Oct 2 02:17:13 2006 -0700 [PATCH] vt: rework the console spawning variables This is such a rare path it took me a while to figure out how to test this after soring out the locking. This patch does several things. - The variables used are moved into a structure and declared in vt_kern.h - A spinlock is added so we don't have SMP races updating the values. - Instead of raw pid_t value a struct_pid is used to guard against pid wrap around issues, if the daemon to spawn a new console dies. Signed-off-by: Eric W. Biederman Cc: Oleg Nesterov Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 5feb8f5f8403d8874a04aac443692dfe83bd63d2 Author: Eric W. Biederman Date: Mon Oct 2 02:17:12 2006 -0700 [PATCH] pid: implement pid_nr As we stop storing pid_t's and move to storing struct pid *. We need a way to get the pid_t from the struct pid to report to user space what we have stored. Having a clean well defined way to do this is especially important as we move to multiple pid spaces as may need to report a different value to the caller depending on which pid space the caller is in. Signed-off-by: Eric W. Biederman Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit bbf73147e2d46611fbdcbc126f887c614c32350b Author: Eric W. Biederman Date: Mon Oct 2 02:17:11 2006 -0700 [PATCH] pid: export the symbols needed to use struct pid * pids aren't something that drivers should care about. However there are a lot of helper layers in the kernel that do care, and are built as modules. Before I can convert them to using struct pid instead of pid_t I need to export the appropriate symbols so they can continue to be built. Signed-off-by: Eric W. Biederman Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit c4b92fc112f7be5cce308128236ff75cc98535c3 Author: Eric W. Biederman Date: Mon Oct 2 02:17:10 2006 -0700 [PATCH] pid: implement signal functions that take a struct pid * Currently the signal functions all either take a task or a pid_t argument. This patch implements variants that take a struct pid *. After all of the users have been update it is my intention to remove the variants that take a pid_t as using pid_t can be more work (an extra hash table lookup) and difficult to get right in the presence of multiple pid namespaces. There are two kinds of functions introduced in this patch. The are the general use functions kill_pgrp and kill_pid which take a priv argument that is ultimately used to create the appropriate siginfo information, Then there are _kill_pgrp_info, kill_pgrp_info, kill_pid_info the internal implementation helpers that take an explicit siginfo. The distinction is made because filling out an explcit siginfo is tricky, and will be even more tricky when pid namespaces are introduced. Signed-off-by: Eric W. Biederman Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 558cb325485aaf655130f140e8ddd25392f6c972 Author: Eric W. Biederman Date: Mon Oct 2 02:17:09 2006 -0700 [PATCH] pid: add do_each_pid_task To avoid pid rollover confusion the kernel needs to work with struct pid * instead of pid_t. Currently there is not an iterator that walks through all of the tasks of a given pid type starting with a struct pid. This prevents us replacing some pid_t instances with struct pid. So this patch adds do_each_pid_task which walks through the set of task for a given pid type starting with a struct pid. Signed-off-by: Eric W. Biederman Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 22c935f47c03399c78e64c71b757eb36fa917ff6 Author: Eric W. Biederman Date: Mon Oct 2 02:17:09 2006 -0700 [PATCH] pid: implement access helpers for a tacks various process groups In the last round of cleaning up the pid hash table a more general struct pid was introduced, that can be referenced counted. With the more general struct pid most if not all places where we store a pid_t we can now store a struct pid * and remove the need for a hash table lookup, and avoid any possible problems with pid roll over. Looking forward to the pid namespaces struct pid * gives us an absolute form a pid so we can compare and use them without caring which pid namespace we are in. This patchset introduces the infrastructure needed to use struct pid instead of pid_t, and then it goes on to convert two different kernel users that currently store a pid_t value. There are a lot more places to go but this is enough to get the basic idea. Before we can merge a pid namespace patch all of the kernel pid_t users need to be examined. Those that deal with user space processes need to be converted to using a struct pid *. Those that deal with kernel processes need to converted to using the kthread api. A rare few that only use their current processes pid values get to be left alone. This patch: task_session returns the struct pid of a tasks session. task_pgrp returns the struct pid of a tasks process group. task_tgid returns the struct pid of a tasks thread group. task_pid returns the struct pid of a tasks process id. These can be used to avoid unnecessary hash table lookups, and to implement safe pid comparisions in the face of a pid namespace. Signed-off-by: Eric W. Biederman Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit f6c7a1f34e92b0b561024ead9fa70623683025e4 Author: Eric W. Biederman Date: Mon Oct 2 02:17:07 2006 -0700 [PATCH] proc: give the root directory a task Helper functions in base.c like proc_pident_readdir and proc_pident_lookup assume the directories have an associated task, and cannot currently be used on the /proc root directory because it does not have such a task. This small changes allows for base.c to be simplified and later when multiple pid spaces are introduced it makes getting the needed context information trivial. Signed-off-by: Eric W. Biederman Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 20cdc894c45d2e4ab0c69e95a56b7c5ed36ae0dd Author: Eric W. Biederman Date: Mon Oct 2 02:17:07 2006 -0700 [PATCH] proc: modify proc_pident_lookup to be completely table driven Currently proc_pident_lookup gets the names and types from a table and then has a huge switch statement to get the inode and file operations it needs. That is silly and is becoming increasingly hard to maintain so I just put all of the information in the table. Signed-off-by: Eric W. Biederman Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 28a6d67179da6964d1640d379c5e5d4f46dd0042 Author: Eric W. Biederman Date: Mon Oct 2 02:17:05 2006 -0700 [PATCH] proc: reorder the functions in base.c There were enough changes in my last round of cleaning up proc I had to break up the patch series into smaller chunks, and my last chunk never got resent. This patchset gives proc dynamic inode numbers (the static inode numbers were a pain to maintain and prevent all kinds of things), and removes the horrible switch statements that had to be kept in sync with everything else. Being fully table driver takes us 90% of the way of being able to register new process specific attributes in proc. This patch: Group the functions by what they implement instead of by type of operation. As it existed base.c was quickly approaching the point where it could not be followed. No functionality or code changes asside from adding/removing forward declartions are implemented in this patch. Signed-off-by: Eric W. Biederman Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 0804ef4b0de7121261f77c565b20a11ac694e877 Author: Eric W. Biederman Date: Mon Oct 2 02:17:04 2006 -0700 [PATCH] proc: readdir race fix (take 3) The problem: An opendir, readdir, closedir sequence can fail to report process ids that are continually in use throughout the sequence of system calls. For this race to trigger the process that proc_pid_readdir stops at must exit before readdir is called again. This can cause ps to fail to report processes, and it is in violation of posix guarantees and normal application expectations with respect to readdir. Currently there is no way to work around this problem in user space short of providing a gargantuan buffer to user space so the directory read all happens in on system call. This patch implements the normal directory semantics for proc, that guarantee that a directory entry that is neither created nor destroyed while reading the directory entry will be returned. For directory that are either created or destroyed during the readdir you may or may not see them. Furthermore you may seek to a directory offset you have previously seen. These are the guarantee that ext[23] provides and that posix requires, and more importantly that user space expects. Plus it is a simple semantic to implement reliable service. It is just a matter of calling readdir a second time if you are wondering if something new has show up. These better semantics are implemented by scanning through the pids in numerical order and by making the file offset a pid plus a fixed offset. The pid scan happens on the pid bitmap, which when you look at it is remarkably efficient for a brute force algorithm. Given that a typical cache line is 64 bytes and thus covers space for 64*8 == 200 pids. There are only 40 cache lines for the entire 32K pid space. A typical system will have 100 pids or more so this is actually fewer cache lines we have to look at to scan a linked list, and the worst case of having to scan the entire pid bitmap is pretty reasonable. If we need something more efficient we can go to a more efficient data structure for indexing the pids, but for now what we have should be sufficient. In addition this takes no additional locks and is actually less code than what we are doing now. Also another very subtle bug in this area has been fixed. It is possible to catch a task in the middle of de_thread where a thread is assuming the thread of it's thread group leader. This patch carefully handles that case so if we hit it we don't fail to return the pid, that is undergoing the de_thread dance. Thanks to KAMEZAWA Hiroyuki for providing the first fix, pointing this out and working on it. [oleg@tv-sign.ru: fix it] Signed-off-by: Eric W. Biederman Acked-by: KAMEZAWA Hiroyuki Signed-off-by: Oleg Nesterov Cc: Jean Delvare Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 2bc2d61a9638dab670d8361e928d1a5a291173ef Author: Randy Dunlap Date: Mon Oct 2 02:17:02 2006 -0700 [PATCH] list module taint flags in Oops/panic When listing loaded modules during an oops or panic, also list each module's Tainted flags if non-zero (P: Proprietary or F: Forced load only). If a module is did not taint the kernel, it is just listed like usbcore but if it did taint the kernel, it is listed like wizmodem(PF) Example: [ 3260.121718] Unable to handle kernel NULL pointer dereference at 0000000000000000 RIP: [ 3260.121729] [] :dump_test:proc_dump_test+0x99/0xc8 [ 3260.121742] PGD fe8d067 PUD 264a6067 PMD 0 [ 3260.121748] Oops: 0002 [1] SMP [ 3260.121753] CPU 1 [ 3260.121756] Modules linked in: dump_test(P) snd_pcm_oss snd_mixer_oss snd_seq snd_seq_device ide_cd generic ohci1394 snd_hda_intel snd_hda_codec snd_pcm snd_timer snd ieee1394 snd_page_alloc piix ide_core arcmsr aic79xx scsi_transport_spi usblp [ 3260.121785] Pid: 5556, comm: bash Tainted: P 2.6.18-git10 #1 [Alternatively, I can look into listing tainted flags with 'lsmod', but that won't help in oopsen/panics so much.] [akpm@osdl.org: cleanup] Signed-off-by: Randy Dunlap Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit a58cbd7c249f3079dd62d6391a33b9f43f2bfbef Author: Dean Nelson Date: Mon Oct 2 02:17:01 2006 -0700 [PATCH] make genpool allocator adhere to kernel-doc standards The exported kernel interfaces of genpool allocator need to adhere to the requirements of kernel-doc. Signed-off-by: Dean Nelson Cc: Steve Wise Acked-by: Randy Dunlap Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 322acc96d4bd3debea11cd0160b18bd5d7ff0d73 Author: Steve Wise Date: Mon Oct 2 02:17:00 2006 -0700 [PATCH] LIB: add gen_pool_destroy() Modules using the genpool allocator need to be able to destroy the data structure when unloading. Signed-off-by: Steve Wise Cc: Randy Dunlap Cc: Dean Nelson Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 63f83c9fcf40ab61b75edf5d2f2c1ae6bf876482 Author: Dave Kleikamp Date: Mon Oct 2 09:55:27 2006 -0500 JFS: White space cleanup Removed trailing spaces & tabs, and spaces preceding tabs. Also a couple very minor comment cleanups. Signed-off-by: Dave Kleikamp (cherry picked from f74156539964d7b3d5164fdf8848e6a682f75b97 commit) commit 087387f90f577f5a0ab68d33ef326c9bb6d80dda Author: Akinobu Mita Date: Thu Sep 14 09:22:38 2006 -0500 [PATCH] JFS: return correct error when i-node allocation failed I have seen confusing behavior on JFS when I injected many intentional slab allocation errors. The cp command failed with no disk space error with enough disk space. This patch makes: - change the return value in case slab allocation failures happen from -ENOSPC to -ENOMEM - ialloc() return error code so that the caller can know the reason of failures Signed-off-by: Akinobu Mita Signed-off-by: Dave Kleikamp (cherry picked from 2b46f77976f798f3fe800809a1d0ed38763c71c8 commit) commit 2a6968a9784551c216f9379a728d4104dbad98a8 Author: Tony Breeds Date: Mon Sep 11 08:19:19 2006 -0500 JFS: Remove shadow variable from fs/jfs/jfs_txnmgr.c:xtLog() Signed-off-by: Tony Breeds Signed-off-by: Dave Kleikamp (cherry picked from bdc3d9e5af7d9c105be734dd7b5c3f1d9425a15a commit) commit d00223f1693173c7b51f867dd52049955a92d0ed Author: Steven Whitehouse Date: Mon Oct 2 10:28:05 2006 -0400 [GFS2] Fix code style/indent in ops_file.c Fix a couple of minor issues. Signed-off-by: Steven Whitehouse commit 930cc237d67dc62464fe71529631d16f51d7aee3 Author: Andrew Morton Date: Sat Sep 30 23:38:51 2006 -0700 [GFS2] streamline-generic_file_-interfaces-and-filemap gfs fix Fix GFS for streamline-generic_file_-interfaces-and-filemap.patch Signed-off-by: Andrew Morton Signed-off-by: Steven Whitehouse commit 9c9eb21eee1790804ce407fd820f65be0b4fdd03 Author: Badari Pulavarty Date: Sat Sep 30 23:38:50 2006 -0700 [GFS2] Remove readv/writev methods and use aio_read/aio_write instead (gfs bits) This patch removes readv() and writev() methods and replaces them with aio_read()/aio_write() methods. Signed-off-by: Badari Pulavarty Signed-off-by: Christoph Hellwig Signed-off-by: Andrew Morton Signed-off-by: Steven Whitehouse commit d14b272bc63f35a8f20b4b1df16c080b8d24f8f1 Author: Richard Purdie Date: Wed Sep 20 22:54:21 2006 +0100 [ARM] 3848/1: pxafb: Add option of fixing video modes and spitz QVGA mode support Add the ability to have pxafb use only certain fixed video modes (selected on a per platform basis). This is useful on production hardware such as the Zaurus cxx00 models where the valid modes are known in advance and any other modes could result in hardware damage. Following this, add support for the cxx00 QVGA mode. Mode information is passed to the lcd_power call to allowing the panel drivers to configure the display hardware accordingly (corgi_lcd already contains the functionality for the cxx00 panel). This mirrors the setup already used by w100fb. Signed-off-by: Richard Purdie Signed-off-by: Russell King commit 5e980823581682d1566e7b5089cf827ddd5f3c94 Author: Li Yang Date: Fri Sep 29 18:15:52 2006 +0800 [POWERPC] Fix rheap alignment problem Honor alignment parameter in the rheap allocator. This is needed by qe_lib. Remove compile warning. Signed-off-by: Pantelis Antoniou Signed-off-by: Li Yang Acked-by: Kumar Galak Signed-off-by: Paul Mackerras commit 07bd1c4a82d1787d6acc32b5e3873cca24f39769 Author: David Woodhouse Date: Wed Sep 27 08:18:55 2006 +0100 [POWERPC] Use check_legacy_ioport() for ISAPnP Signed-off-by: David Woodhouse Signed-off-by: Paul Mackerras commit 61e37ca22b717a9edc3e5e7c7f3603fad464c76d Author: Olaf Hering Date: Tue Sep 26 22:28:36 2006 +0200 [POWERPC] Avoid NULL pointer in gpio1_interrupt gpio1_interrupt() may dereference a NULL pointer if ioremap() fails. But, maybe no gpio interrupt happens in the first place? Signed-off-by: Olaf Hering Signed-off-by: Paul Mackerras commit 76a5027c374a638e55de5d8c4485ea0201254870 Author: Amol Lad Date: Mon Oct 2 09:48:23 2006 +0100 [MTD] Cleanup of 'ioremap balanced with iounmap for drivers/mtd subsystem' Updated version of patch, in response to comments from Francois Romieu Remove gratuitous casts from iounmap and initialisation of variables. Signed-off-by: Amol Lad Signed-off-by: David Woodhouse commit 553a8012088b3452c7d66ff60d2d06ad0c9bea00 Author: Frederik Deweerdt Date: Mon Oct 2 09:42:25 2006 +0100 [MTD] fix nftl_write warning Building 2.6.18-mm2 issues the following warning if CONFIG_NFTL_RW is not set: CC [M] drivers/mtd/nftlcore.o drivers/mtd/nftlcore.c:183: warning: 'nftl_write' defined but not used The following patch only compiles nftl_write if CONFIG_NFTL_RW is set. Signed-off-by: Frederik Deweerdt Signed-off-by: Andrew Morton Signed-off-by: David Woodhouse commit a8ed4f7ec3aa472134d7de6176f823b2667e450b Author: Kim Phillips Date: Tue Sep 26 17:46:51 2006 -0500 [POWERPC] Enable generic rtc hook for the MPC8349 mITX Signed-off-by: Kim Phillips Signed-off-by: Paul Mackerras commit 7a69af63e788a324d162201a0b23df41bcf158dd Author: Kim Phillips Date: Tue Sep 26 17:46:37 2006 -0500 [POWERPC] Add powerpc get/set_rtc_time interface to new generic rtc class Add powerpc get/set_rtc_time interface to new generic rtc class. This abstracts rtc chip specific code from the platform code for rtc-over-i2c platforms. Specific RTC chip support is now configured under Device Drivers -> Real Time Clock. Setting time of day from the RTC on startup is also configurable. this time without the potentially platform breaking initcall. Signed-off-by: Kim Phillips Signed-off-by: Paul Mackerras commit bb0885900de49b5822d7e8c91c1adf9a0fcc228b Author: Ashutosh Naik Date: Sun Oct 1 22:07:14 2006 -0400 Input: wistron - add support for Acer TravelMate 2424NWXCi The key mappings are the same as the older Acer TravelMate 240. Signed-off-by: Ashutosh Naik Signed-off-by: Andrew Morton Signed-off-by: Dmitry Torokhov commit cde45f19ca0d2ff1ede01528a7629388d4139309 Author: Reiner Herrmann Date: Sun Oct 1 21:58:51 2006 -0400 Input: wistron - fix setting up special buttons If either wifi or bluetooth button has been detected, the code would break off the loop. But there are laptops that have both types of buttons, so the loop has to continue checking. Signed-off-by: Reiner Herrmann Signed-off-by: Dmitry Torokhov commit 04b314b2c3732bb5aa752fdbb3076de16decdab6 Author: Yoichi Yuasa Date: Sun Oct 1 19:47:08 2006 +0900 [MIPS] Remove unused galileo-boars header files Signed-off-by: Yoichi Yuasa Signed-off-by: Ralf Baechle commit b772da30b4b22230c214f37429edcd7ddbf641e1 Author: Yoichi Yuasa Date: Sun Oct 1 19:43:27 2006 +0900 [MIPS] Rename SERIAL_PORT_DEFNS for EV64120 Signed-off-by: Yoichi Yuasa Signed-off-by: Ralf Baechle commit 998ec2901aea9f412d2dc3e29a3c20f377793916 Author: Yoichi Yuasa Date: Sun Oct 1 19:35:28 2006 +0900 [MIPS] Add UART IRQ number for EV64120 Signed-off-by: Yoichi Yuasa Signed-off-by: Ralf Baechle commit b00f3774f2e073d399ffbd0475337466938e9273 Author: Yoichi Yuasa Date: Fri Sep 29 18:27:07 2006 +0900 [MIPS] Remove excite_flash.c excite_flashtest.c is unused. Signed-off-by: Yoichi Yuasa Signed-off-by: Ralf Baechle commit aa400804e0181d9c451b3b4ddba25f0a088e8c13 Author: Yoichi Yuasa Date: Fri Sep 29 18:17:51 2006 +0900 [MIPS] Update i8259 resources. Updated i8259 resources to same as i386. Signed-off-by: Yoichi Yuasa Signed-off-by: Ralf Baechle commit 1924600cdb3143cdcc32b6fa43325739503659b9 Author: Atsushi Nemoto Date: Fri Sep 29 18:02:51 2006 +0900 [MIPS] Make unwind_stack() can dig into interrupted context If the PC was ret_from_irq or ret_from_exception, there will be no more normal stackframe. Instead of stopping the unwinding, use PC and RA saved by an exception handler to continue unwinding into the interrupted context. This also simplifies the CONFIG_STACKTRACE code. Signed-off-by: Atsushi Nemoto Signed-off-by: Ralf Baechle commit 23126692e30ec22760e0ef932c3c2fff00d440bb Author: Atsushi Nemoto Date: Thu Sep 28 19:15:33 2006 +0900 [MIPS] Stacktrace build-fix and improvement Fix build error due to stacktrace API change. Now save_stack_trace() tries to save all kernel context, including interrupts and exception. Also some asm code are changed a bit so that we can detect the end of current context easily. Signed-off-by: Atsushi Nemoto Signed-off-by: Ralf Baechle commit c8cc9618c55a341dda39357cce5ff39f7ad17132 Author: Aurelien Jarno Date: Wed Sep 27 23:07:25 2006 +0200 [MIPS] QEMU: Add support for little endian mips This very small patch adds support for little endian on the virtual QEMU mips platform. The status of this platform is the same as the big endian one, ie it is possible to boot a system with init=/bin/sh. Signed-off-by: Aurelien Jarno Signed-off-by: Ralf Baechle commit c59a0f15be6e586aa0fe1fb5c7f740005c36ec56 Author: Atsushi Nemoto Date: Sat Sep 2 00:43:07 2006 +0900 [MIPS] Remove __flush_icache_page __flash_icache_page is unused, so kill it. Signed-off-by: Atsushi Nemoto Signed-off-by: Ralf Baechle commit 1a6183f2e6f0fa2d1898f0228559df15a89a1ffe Author: Atsushi Nemoto Date: Tue Sep 26 23:44:16 2006 +0900 [MIPS] lockdep: update defconfigs Add those lines to all defconfigs. CONFIG_LOCKDEP_SUPPORT=y CONFIG_STACKTRACE_SUPPORT=y CONFIG_TRACE_IRQFLAGS_SUPPORT=y This is a patch againt linux-mips.org git tree. Signed-off-by: Atsushi Nemoto Signed-off-by: Ralf Baechle commit 1df0f0ff7e56f6dcb1351b9490d55ebf91ff4bd8 Author: Atsushi Nemoto Date: Tue Sep 26 23:44:01 2006 +0900 [MIPS] lockdep: Add STACKTRACE_SUPPORT and enable LOCKDEP_SUPPORT Implement stacktrace interface by using unwind_stack() and enable lockdep support in Kconfig. Signed-off-by: Atsushi Nemoto Signed-off-by: Ralf Baechle commit eae6c0da9df81300895949897c0451423340ac40 Author: Atsushi Nemoto Date: Tue Sep 26 23:43:40 2006 +0900 [MIPS] lockdep: fix TRACE_IRQFLAGS_SUPPORT In handle_sys and its variants, we must reload some registers which might be clobbered by trace_hardirqs_on(). Also we must make sure trace_hardirqs_on() called in kernel level (not exception level). Signed-off-by: Atsushi Nemoto Signed-off-by: Ralf Baechle commit 75fde2eddcfcd1dcc87a72dc6cd3c859420b6148 Author: Matthew Garrett Date: Sun Oct 1 19:27:38 2006 +0100 [SERIAL] add PNP IDs for FPI based touchscreens The Compaq TC1000 and Fujitsu Stylistic range of tablet machines use touchscreens from FPI. These are implemented as serial interfaces, generally exposed in the ACPIPNP information on the system. This patch adds them to the 8250_pnp driver tables, avoiding the need to mess around with setserial to set them up. I haven't been able to confirm what FUJ02B5, FUJ02BA and FUJ02BB are. FUJ02B1 refers to the controller for the system hotkeys. FUJ02BC appears to be the last in the range - after this, they moved to Wacom-based systems. Signed-off-by: Matthew Garrett Signed-off-by: Russell King commit d834c16516d1ebec4766fc58c059bf01311e6045 Author: Linus Torvalds Date: Sun Oct 1 13:17:44 2006 -0700 pccard_store_cis: fix wrong error handling The test for the error from pcmcia_replace_cis() was incorrect, and would always trigger (because if an error didn't happen, the "ret" value would not be zero, it would be the passed-in count). Reported and debugged by Fabrice Bellet Rather than just fix the single broken test, make the code in question use an understandable code-sequence instead, fixing the whole function to be more readable. Signed-off-by: Linus Torvalds commit f70cfa9bef432d7aeb4e35c093ac27fd6f071d7e Author: Mike Christie Date: Sat Sep 30 20:42:31 2006 -0400 [SCSI] scsi_devinfo: scsi2 HP and Hitachi entries When SCSI-2 they can support luns past 7 and sparse luns. Signed-off-by: Mike Christie Signed-off-by: James Bottomley commit 12427d99489966185dc12a0b6f725d682a3277ca Author: Mike Christie Date: Sat Sep 30 20:42:30 2006 -0400 [SCSI] scsi_devinfo: add nec iStorage support the report luns opcode . Signed-off-by: Mike Christie Signed-off-by: James Bottomley commit 5f619c5ba509994c9203bfd18f5246b4457e2c22 Author: Mike Christie Date: Sat Sep 30 20:42:29 2006 -0400 [SCSI] scsi_devinfo: add Tornado This is from RHEL4. I do not have any info from our bugzilla. All I could find was something like this thread http://lkml.org/lkml/2005/1/7/346 Report lun for linux does not work. It may be our lun format code or it may be the device. It is probably not worth it to add anything special for this device, so the patch just adds BLIST_NOREPORTLUN. Signed-off-by: Mike Christie Signed-off-by: James Bottomley commit 3441afc672bc9bfc137ae7717ac1db4b9c28cc8b Author: Mike Christie Date: Sat Sep 30 20:42:28 2006 -0400 [SCSI] scsi_devinfo: add EMC Invista This is from RHEL4. This box can support scsi2 and can also support BLIST_SPARSELUN | BLIST_LARGELUN. Signed-off-by: Mike Christie Signed-off-by: James Bottomley commit 6470f2ba641cf93d357854cdc63a65350352bb97 Author: Arne Redlich Date: Sat Sep 30 15:49:40 2006 +0200 [SCSI] trivial scsi_execute_async fix In scsi_execute_async()'s error path, a struct scsi_io_context allocated with kmem_cache_alloc() is kfree()'d. Obviously kmem_cache_free() should be used instead. Signed-off-by: Arne Redlich Signed-off-by: James Bottomley commit fb4f66be59f3dcc66fda2e681f1fc77b5cc4508d Author: Ed Lin Date: Wed Sep 27 19:23:41 2006 +0800 [SCSI] stex: add new device (id 0x8650) support A new device (id 0x8650, nickname 'yosemite') support is added. It's basically the same, except for following items: - mapping of id and lun by firmware - special handling for some commands in interrupt routine - change of internal copy function for these special commands - different reset handling code - different shutdown notification command Signed-off-by: Ed Lin Signed-off-by: James Bottomley commit f903d7b7a80b7c3103335d506533790a322da87b Author: Ed Lin Date: Wed Sep 27 19:23:33 2006 +0800 [SCSI] stex: cancel unused field in struct req_msg The payload_sz field in struct req_msg is not big enough to indicate the size of req_msg, as its type is u8. It is confirmed that this field is not used by firmware, so cancel it here. Signed-off-by: Ed Lin Signed-off-by: James Bottomley commit 80c6e3c0b5eb855b69270658318f5ccf04d7b1ff Author: Eric Sesterhenn Date: Tue Sep 26 13:22:13 2006 +0200 [SCSI] fix scsi_device_types overrun in scsi.c this overrun was spotted by coverity (cid #1403). If type == ARRAY_SIZE(scsi_device_types), we are off by one. Signed-off-by: Eric Sesterhenn Signed-off-by: James Bottomley commit 7b75b990e3cb33fd529640d589e77950e72a607c Author: Denis Vlasenko Date: Mon Sep 25 16:57:42 2006 -0700 [SCSI] aic7xxx: fix byte I/O order in ahd_inw Comment says "Read high byte first as some registers increment..." but code doesn't guarantee that, I think: return ((ahd_inb(ahd, port+1) << 8) | ahd_inb(ahd, port)); Compiler can reorder it. Make the order explicit. Signed-off-by: Denis Vlasenko Signed-off-by: Andrew Morton Fixed rejections and added aic7xxx code Signed-off-by: James Bottomley commit d8d64d6b29d331f1217c77999f5104fe68b0ef3a Author: Simon Tatham Date: Mon Sep 25 16:51:28 2006 -0700 [SERIAL] Magic SysRq SAK does nothing on serial consoles Make sysrq-K work on serial console by passing in the tty. Signed-off-by: Andrew Morton Signed-off-by: Russell King commit e480af09c49736848f749a43dff2c902104f6691 Author: Dave Jones Date: Mon Sep 25 16:51:26 2006 -0700 [SERIAL] tickle NMI watchdog on serial output. Serial is _slow_ sometimes. So slow, that the NMI watchdog kicks in. NMI Watchdog detected LOCKUP on CPU2CPU 2 Modules linked in: loop usb_storage md5 ipv6 parport_pc lp parport autofs4 i2c_dev i2c_core rfcomm l2cap bluetooth sunrpc pcdPid: 3138, comm: gpm Not tainted 2.6.11-1.1290_FC4smp RIP: 0010:[] {serial_in+106} RSP: 0018:ffff81003afc3d50 EFLAGS: 00000002 RAX: 0000000000000020 RBX: 0000000000000020 RCX: 0000000000000000 RDX: 00000000000003fd RSI: 0000000000000005 RDI: ffffffff804dcd60 RBP: 00000000000024fc R08: 000000000000000a R09: 0000000000000033 R10: ffff81001beb7c20 R11: 0000000000000020 R12: ffffffff804dcd60 R13: ffffffff804ade76 R14: 000000000000002b R15: 000000000000002c FS: 00002aaaaaac4920(0000) GS:ffffffff804fca00(0000) knlGS:0000000000000000 CS: 0010 DS: 0000 ES: 0000 CR0: 000000008005003b CR2: 00002aaaaabcb000 CR3: 000000003c0d0000 CR4: 00000000000006e0 Process gpm (pid: 3138, threadinfo ffff81003afc2000, task ffff81003eb63780) Stack: ffffffff80275f2e 0000000000000000 ffffffff80448380 0000000000007d6b 000000000000002c fffffffffffffbbf 0000000000000292 0000000000008000 ffffffff80138e8c 0000000000007d97 Call Trace:{serial8250_console_write+270} {__call_console_drivers+76} {release_console_sem+315} {con_open+149} {tty_open+537} {chrdev_open+387} {dentry_open+260} {filp_open+68} {get_unused_fd+227} {sys_open+76} {tracesys+209} Code: 0f b6 c0 c3 66 90 41 57 49 89 f7 41 56 41 be 00 01 00 00 41 console shuts up ... I initially did the patch below a year ago for the Fedora kernel, and have been keeping it up to date since. I recently got the same thing happening on a vanilla kernel, so figured it was time to repost this. Signed-off-by: Dave Jones Acked-by: Alan Cox Signed-off-by: Andrew Morton Signed-off-by: Russell King commit 4e9011d50d77ce7d234272e203235d8ecffd61a1 Author: Andrew Morton Date: Sun Oct 1 02:22:41 2006 -0700 [PATCH] rtc-sysfs fix It's not clear how this thinko got through.. Cc: Olaf Hering Cc: David Brownell Cc: Alessandro Zummo Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 9a292308255ad381dd74541be468c4aec240a615 Author: Jeff Garzik Date: Sun Oct 1 12:16:00 2006 -0400 [MTD] fix printk warning gcc spits out this warning: drivers/mtd/mtd_blkdevs.c: In function ‘do_blktrans_request’: drivers/mtd/mtd_blkdevs.c:72: warning: format ‘%ld’ expects type ‘long int’, but argument 2 has type ‘unsigned int’ This could be fixed any number of ways, including use of BUG(). rq_data_dir() only returns 0 or 1, so this entire case is superfluous. I did the most simple fix. Signed-off-by: Jeff Garzik Signed-off-by: David Woodhouse commit a6b93a908508810c5d51dd9b390283345af6f2d9 Author: Russell King Date: Sun Oct 1 17:17:40 2006 +0100 [SERIAL] Fix oops when removing suspended serial port A serial card might have been removed when the system is resumed. This results in a suspended port being shut down, which results in the ports shutdown method being called twice in a row. This causes BUGs. Avoid this by tracking the suspended state separately from the initialised state. Signed-off-by: Russell King commit fe59d5372ae719ca4550958f1e5bb4dd6eeac9cd Author: Russell King Date: Sun Oct 1 17:14:07 2006 +0100 [SERIAL] Fix resume handling bug Unfortunately, pcmcia_dev_present() returns false when a device is suspended, so checking this on resume does not work too well. Omit this test. Signed-off-by: Russell King commit bcf5111a58c7db968c3fb9cd77e340a5e076f549 Author: Russell King Date: Wed Aug 30 10:27:15 2006 +0100 [SERIAL] Remove wrong asm/serial.h inclusions asm/serial.h is supposed to contain the definitions for the architecture specific 8250 ports for the 8250 driver. It may also define BASE_BAUD, but this is the base baud for the architecture specific ports _only_. Therefore, nothing other than the 8250 driver should be including this header file. In order to move towards this goal, here is a patch which removes some of the more obvious incorrect includes of the file. Acked-by: Paul Fulghum Acked-by: Tony Luck Acked-by: Ralf Baechle Acked-by: David Howells Signed-off-by: Russell King commit 1d5e799663046917a0eb085e716d818af20050b2 Author: Alexey Dobriyan Date: Mon Sep 25 16:51:27 2006 -0700 [SERIAL] CONFIG_PM=n slim: drivers/serial/8250_pci.c Remove some code which is unneeded if CONFIG_PM=n. Signed-off-by: Alexey Dobriyan Signed-off-by: Andrew Morton Signed-off-by: Russell King commit 255341c6fded73204b1ee6feb5fe16e125b27f62 Author: Jonathan McDowell Date: Mon Aug 14 23:05:32 2006 -0700 [SERIAL] OMAP1510 serial fix for 115200 baud The patch below is necessary for 115200 baud on an OMAP1510 internal UART. It's been in the linux-omap tree for some time and with it applied to a vanilla Linus git tree the serial console on the Amstrad Delta (which is OMAP1510 based and whose initial bootloader runs at 115200) works fine (it doesn't without it). Signed-off-by: Jonathan McDowell Signed-off-by: Andrew Morton Signed-off-by: Russell King commit 80e3c2b659515ef236f33f691ff5b22ae90ae8e4 Author: Ram Gupta Date: Mon Aug 14 23:05:29 2006 -0700 [SERIAL] returning proper error from serial core driver Fix the issue of returning 0 even in case of error from uart_set_info function. Now it returns the error EBUSY when it can not set new port. Signed-off-by: Ram Gupta Signed-off-by: Andrew Morton Signed-off-by: Russell King commit 6c6a2334a1e8af7c3eaab992732825fa9ade77cf Author: Sergei Shtylyov Date: Mon Sep 4 00:04:20 2006 +0400 [SERIAL] Make uart_line_info() correctly tell MMIO from I/O port /proc/tty/driver/serial incorrectly claims that UARTs having iotype of UPIO_MEM32, UPIO_AU, or UPIO_TSI are I/O mapped. Signed-off-by: Sergei Shtylyov Signed-off-by: Russell King commit a4b775735c0dff5a8d59a877ff0033526b469116 Author: Sergei Shtylyov Date: Mon Sep 11 20:32:58 2006 +0400 [SERIAL] suspend/resume handlers don't have level arg anymore 8250.c and serial_txx9.c port suspend/resume handler still have this obsolete argument documented... Signed-off-by: Sergei Shtylyov Signed-off-by: Russell King commit 0b30d668a20acd2ffd4268f7bbe799b0dd73d5cf Author: Sergei Shtylyov Date: Sat Sep 9 22:23:56 2006 +0400 [SERIAL] 8250 resourse management fixes I think register ranges obviously need to be claimed/released for all UARTs including those with UPIO_MEM32 and UPIO_TSI iotype. Also, serial8250_request_rsa_resources() returns false positives with UPIO_MEM32, UPIO_AU, and UPIO_TSI iotype -- I don't think this makes any sense. Signed-off-by: Sergei Shtylyov Signed-off-by: Russell King commit f3d106881b06a423455f95916e666acebe6503f2 Author: Russell King Date: Sat Sep 16 23:07:46 2006 +0100 [SERIAL] serial_cs: Add quirk for brainboxes 2-port RS232 card Mauro Ziliani reports that this card has a higher clock rate. Rather than tweak the 8250 driver to handle this, add a quirk to pass the correct clock rate to the driver. Signed-off-by: Russell King commit 20f130495c07cd01fb423c3dec7f045038118dec Author: Russell King Date: Sat Sep 16 23:04:37 2006 +0100 [SERIAL] serial_cs: handle Nokia multi->single port bodge via config quirk According to the existing code, Nokia only make single-port cards, but are detected as multi-port cards. Handle this in roughly the same way via the config quirk - forcing it to be a real single port card (info->multi=0) changes the way we allocate the IO memory, which might stop the card working. Signed-off-by: Russell King commit efd92dfaad962c4fbaf4251b28578c97bd3aa85f Author: Russell King Date: Sat Sep 16 23:00:54 2006 +0100 [SERIAL] serial_cs: add configuration quirk Add a quirk primerily to handle tweaks to the link->conf structure, eg as required for Socket cards. Signed-off-by: Russell King commit 7ef057fa707897c19725d7e07123e57f6aea79db Author: Russell King Date: Sat Sep 16 22:45:41 2006 +0100 [SERIAL] serial_cs: Convert Oxford 950 / Possio GCC wakeup quirk Move the Oxford Semi OX950 / Possio GCC wakeup handling to a quirk wakeup handler. Signed-off-by: Russell King commit eee3a883cebefca6c450c3c1c18a996e23001c2c Author: Russell King Date: Sat Sep 16 21:34:11 2006 +0100 [SERIAL] serial_cs: convert IBM post-init handling to a quirk Move IBM quirk handling into its own quirk entry. Note that doing quirk handling after we've registered the ports is racy, but since I don't know if moving this will have an undesired effect, it's probably better to leave where it is. Signed-off-by: Russell King commit a8244b564ccc46dabf2367008aecf2b380a9be8d Author: Russell King Date: Sat Sep 16 21:26:16 2006 +0100 [SERIAL] serial_cs: allow wildcarded quirks Some quirks we will introduce next apply to (eg) all cards of one manufacturer. Therefore, we need a way to list these in the quirk table - use ~0 - this is not a possible device ID value. Signed-off-by: Russell King commit 1fbbac4bcb03033d325c71fc7273aa0b9c1d9a03 Author: Russell King Date: Sat Sep 16 21:09:41 2006 +0100 [SERIAL] serial_cs: convert multi-port table to quirk table - rename multi_id table to serial_quirk / quirks[] - use named initialisers - store a pointer to the quirk table in the serial_info structure so we can use the quirk table entry later. - apply multi-port quirk after the multi-port guessing code, but only if it's != -1. Signed-off-by: Russell King commit 43549ad7a74e33947f3ba1756a7713086d32e97c Author: Russell King Date: Sat Sep 16 20:53:05 2006 +0100 [SERIAL] serial_cs: Use clean up multiport card detection - Use ARRAY_SIZE() instead of home grown based version. - use parse->manfid.card rather than le16_to_cpu(buf[1]) - manfid.card is already converted to this format. - use info->prodid in subsequent tests rather than parse->manfid.card. Signed-off-by: Russell King commit de6cc84f723ab4373d1f83e64771392d6f784c81 Author: Russell King Date: Wed Aug 30 15:30:39 2006 +0100 [SERIAL] Remove m32r_sio dependency on asm/serial.h m32r_sio re-uses a custom defined BASE_BAUD from asm/serial.h, and replaces SERIAL_PORT_DFNS with its own driver private copy. Since asm/serial.h is supposed to define 8250-based ports using these symbols, this isn't a sane idea. Hence, eliminate asm/serial.h from m32r_sio.c. Acked-by: Hirokazu Takata Signed-off-by: Russell King commit 02a0fa676cd453ce4254c2eee838307ffc5c37f4 Author: Alan Cox Date: Mon Sep 25 23:45:51 2006 +0100 [SCSI] Switch ips to pci_register from pci_module Signed-off-by: Alan Cox Signed-off-by: James Bottomley commit 15a7c3bbe344d75e4891c7d30595899c12ccfaa1 Author: Jeff Garzik Date: Sun Oct 1 10:38:22 2006 -0400 [libata] pata_artop: kill gcc warning gcc complains thusly: drivers/ata/pata_artop.c: In function ‘artop_init_one’: drivers/ata/pata_artop.c:429: warning: ‘info’ may be used uninitialized in this function While this warning is indeed bogus, even with improved static analysis and value range propagation, gcc will probably never be able to detect this. Add a BUG_ON() to trap invalid driver_data entries in the PCI table. Signed-off-by: Jeff Garzik commit 2c81fbc4cfc895e80c18fffdc04a3d870eb16cb8 Author: Jeff Garzik Date: Sun Oct 1 07:32:20 2006 -0400 [netdrvr] hp100: encapsulate all non-module code The previous '#ifndef MODULE' block did not cover all the static-build-only code. Now it does. Signed-off-by: Jeff Garzik commit de897881e474cae06cf06c830fcadc916c53ce64 Author: Jeff Garzik Date: Sun Oct 1 07:31:09 2006 -0400 drivers/net/wireless/{airo,ipw2100}: fix error handling bugs airo: * fix oops, if !CONFIG_PROC_FS (create_proc_entry always returns NULL) * handle pci_register_driver() failure. if it fails, we really do want to exit, rather than (as a comment indicates) return success because-we-are-a-library. * #if 0 have_isa_dev variable, which is assigned a value but never used ipw2100: * handle sysfs_create_group() failure * handle driver_create_file() failure Signed-off-by: Jeff Garzik commit b7a00ecd557859c4037b6465fdd6c9a49b1fa649 Author: Jeff Garzik Date: Sun Oct 1 07:27:46 2006 -0400 [netdrvr] phy: Fix bugs in error handling The recent __must_check stuff flagged some error handling bugs. phy/fixed.c: * handle device_bind_driver() failure phy/phy_device.c: * handle device_bind_driver() failure * release rwsem upon failure Signed-off-by: Jeff Garzik commit 99c8b9477f2b8c4f625545c41f0318570fa38894 Author: Robert P. J. Day Date: Mon Sep 25 15:55:51 2006 -0400 kbuild: trivial documentation fixes Signed-off-by: "Robert P. J. Day" Signed-off-by: Sam Ravnborg commit 9a3d0fe84f9fe296a86ea9315092d31986bc7a3a Author: Sam Ravnborg Date: Sun Oct 1 11:48:53 2006 +0200 kconfig: fix saving alternate kconfig file in parent dir This fixes bugzilla entry: 7182 http://bugzilla.kernel.org/show_bug.cgi?id=7182 With this patch we no longer append the directory part twice before saving the config file. This patch has been sent to Roman Zippel for review with no feedback. It is so obviously simple that this should be OK to apply it anyway. Signed-off-by: Sam Ravnborg commit ea837f1c050344c3f884531a195c6e339b1a54e8 Author: Sam Ravnborg Date: Sun Oct 1 11:35:24 2006 +0200 kbuild: make modpost processing configurable On request from Al Viro make modpost processing configurable. KBUILD_MODPOST_WARN can be set to make modpost warn instead of error out in case on unresolved symbols in final module link. KBUILD_MODPOST_NOFINAL can be set to avoid the final and timeconsuming .c file generation and link of .ko files. This is solely useful for speeding up when doing compile checks with for example allmodconfig Signed-off-by: Sam Ravnborg commit 5a73fdc5ea836d2edc5e02890b51185fe304d7d3 Author: Zachary Amsden Date: Sat Sep 30 23:29:38 2006 -0700 [PATCH] Some config.h removals During tracking down a PAE compile failure, I found that config.h was being included in a bunch of places in i386 code. It is no longer necessary, so drop it. Signed-off-by: Zachary Amsden Cc: Rusty Russell Cc: Jeremy Fitzhardinge Cc: Andi Kleen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 789e6ac0a7cbbb38402293256a295302fd8a1100 Author: Zachary Amsden Date: Sat Sep 30 23:29:38 2006 -0700 [PATCH] paravirt: update pte hook Add a pte_update_hook which notifies about pte changes that have been made without using the set_pte / clear_pte interfaces. This allows shadow mode hypervisors which do not trap on page table access to maintain synchronized shadows. It also turns out, there was one pte update in PAE mode that wasn't using any accessor interface at all for setting NX protection. Considering it is PAE specific, and the accessor is i386 specific, I didn't want to add a generic encapsulation of this behavior yet. Signed-off-by: Zachary Amsden Cc: Rusty Russell Cc: Jeremy Fitzhardinge Cc: Andi Kleen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit a93cb055a23f3172c1e6a22ac1dc4f1c07929b08 Author: Zachary Amsden Date: Sat Sep 30 23:29:37 2006 -0700 [PATCH] paravirt: remove set pte atomic Now that ptep_establish has a definition in PAE i386 3-level paging code, the only paging model which is insane enough to have multi-word hardware PTEs which are not efficient to set atomically, we can remove the ghost of set_pte_atomic from other architectures which falesly duplicated it, and remove all knowledge of it from the generic pgtable code. set_pte_atomic is now a private pte operator which is specific to i386 Signed-off-by: Zachary Amsden Cc: Rusty Russell Cc: Jeremy Fitzhardinge Cc: Andi Kleen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit d6d861e3c963b4077c83e078e3e300c4b81f93e7 Author: Zachary Amsden Date: Sat Sep 30 23:29:36 2006 -0700 [PATCH] paravirt: optimize ptep establish for pae The ptep_establish macro is only used on user-level PTEs, for P->P mapping changes. Since these always happen under protection of the pagetable lock, the strong synchronization of a 64-bit cmpxchg is not needed, in fact, not even a lock prefix needs to be used. We can simply instead clear the P-bit, followed by a normal set. The write ordering is still important to avoid the possibility of the TLB snooping a partially written PTE and getting a bad mapping installed. Signed-off-by: Zachary Amsden Cc: Rusty Russell Cc: Jeremy Fitzhardinge Cc: Andi Kleen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 23002d88be309a7c78db69363c9d933a29a3b0bb Author: Zachary Amsden Date: Sat Sep 30 23:29:35 2006 -0700 [PATCH] paravirt: kpte flush Create a new PTE function which combines clearing a kernel PTE with the subsequent flush. This allows the two to be easily combined into a single hypercall or paravirt-op. More subtly, reverse the order of the flush for kmap_atomic. Instead of flushing on establishing a mapping, flush on clearing a mapping. This eliminates the possibility of leaving stale kmap entries which may still have valid TLB mappings. This is required for direct mode hypervisors, which need to reprotect all mappings of a given page when changing the page type from a normal page to a protected page (such as a page table or descriptor table page). But it also provides some nicer semantics for real hardware, by providing extra debug-proofing against using stale mappings, as well as ensuring that no stale mappings exist when changing the cacheability attributes of a page, which could lead to cache conflicts when two different types of mappings exist for the same page. Signed-off-by: Zachary Amsden Cc: Rusty Russell Cc: Jeremy Fitzhardinge Cc: Andi Kleen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 25e4df5bae333a06cd2c9b88baf14432652dc9f7 Author: Zachary Amsden Date: Sat Sep 30 23:29:34 2006 -0700 [PATCH] paravirt: combine flush accessed dirty.patch Remove ptep_test_and_clear_{dirty|young} from i386, and instead use the dominating functions, ptep_clear_flush_{dirty|young}. This allows the TLB page flush to be contained in the same macro, and allows for an eager optimization - if reading the PTE initially returned dirty/accessed, we can assume the fact that no subsequent update to the PTE which cleared accessed / dirty has occurred, as the only way A/D bits can change without holding the page table lock is if a remote processor clears them. This eliminates an extra branch which came from the generic version of the code, as we know that no other CPU could have cleared the A/D bit, so the flush will always be needed. We still export these two defines, even though we do not actually define the macros in the i386 code: #define __HAVE_ARCH_PTEP_TEST_AND_CLEAR_YOUNG #define __HAVE_ARCH_PTEP_TEST_AND_CLEAR_DIRTY The reason for this is that the only use of these functions is within the generic clear_flush functions, and we want a strong guarantee that there are no other users of these functions, so we want to prevent the generic code from defining them for us. Signed-off-by: Zachary Amsden Cc: Rusty Russell Cc: Jeremy Fitzhardinge Cc: Andi Kleen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 6606c3e0da5360799e07ae24b05080cc85c68e72 Author: Zachary Amsden Date: Sat Sep 30 23:29:33 2006 -0700 [PATCH] paravirt: lazy mmu mode hooks.patch Implement lazy MMU update hooks which are SMP safe for both direct and shadow page tables. The idea is that PTE updates and page invalidations while in lazy mode can be batched into a single hypercall. We use this in VMI for shadow page table synchronization, and it is a win. It also can be used by PPC and for direct page tables on Xen. For SMP, the enter / leave must happen under protection of the page table locks for page tables which are being modified. This is because otherwise, you end up with stale state in the batched hypercall, which other CPUs can race ahead of. Doing this under the protection of the locks guarantees the synchronization is correct, and also means that spurious faults which are generated during this window by remote CPUs are properly handled, as the page fault handler must re-check the PTE under protection of the same lock. Signed-off-by: Zachary Amsden Signed-off-by: Jeremy Fitzhardinge Cc: Rusty Russell Cc: Andi Kleen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 9888a1cae3f859db38b9604e3df1c02177161bb0 Author: Zachary Amsden Date: Sat Sep 30 23:29:31 2006 -0700 [PATCH] paravirt: pte clear not present Change pte_clear_full to a more appropriately named pte_clear_not_present, allowing optimizations when not-present mapping changes need not be reflected in the hardware TLB for protected page table modes. There is also another case that can use it in the fremap code. Signed-off-by: Zachary Amsden Signed-off-by: Jeremy Fitzhardinge Cc: Rusty Russell Cc: Andi Kleen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 3dc907951446b9317b1887223caa4e083390de9f Author: Zachary Amsden Date: Sat Sep 30 23:29:30 2006 -0700 [PATCH] paravirt: remove read hazard from cow We don't want to read PTEs directly like this after they have been modified, as a lazy MMU implementation of direct page tables may not have written the updated PTE back to memory yet. Signed-off-by: Zachary Amsden Signed-off-by: Jeremy Fitzhardinge Cc: Rusty Russell Cc: Andi Kleen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit bd4c8ce41a2e2f0c5bf54343ab54e8e09faec021 Author: Andrew Morton Date: Sat Sep 30 23:29:29 2006 -0700 [PATCH] invalidate_inode_pages2(): ignore page refcounts The recent fix to invalidate_inode_pages() (git commit 016eb4a) managed to unfix invalidate_inode_pages2(). The problem is that various bits of code in the kernel can take transient refs on pages: the page scanner will do this when inspecting a batch of pages, and the lru_cache_add() batching pagevecs also hold a ref. Net result is transient failures in invalidate_inode_pages2(). This affects NFS directory invalidation (observed) and presumably also block-backed direct-io (not yet reported). Fix it by reverting invalidate_inode_pages2() back to the old version which ignores the page refcounts. We may come up with something more clever later, but for now we need a 2.6.18 fix for NFS. Cc: Chuck Lever Cc: Nick Piggin Cc: Peter Zijlstra Cc: Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit d025c9db7f31fc0554ce7fb2dfc78d35a77f3487 Author: Andi Kleen Date: Sat Sep 30 23:29:28 2006 -0700 [PATCH] Support piping into commands in /proc/sys/kernel/core_pattern Using the infrastructure created in previous patches implement support to pipe core dumps into programs. This is done by overloading the existing core_pattern sysctl with a new syntax: |program When the first character of the pattern is a '|' the kernel will instead threat the rest of the pattern as a command to run. The core dump will be written to the standard input of that program instead of to a file. This is useful for having automatic core dump analysis without filling up disks. The program can do some simple analysis and save only a summary of the core dump. The core dump proces will run with the privileges and in the name space of the process that caused the core dump. I also increased the core pattern size to 128 bytes so that longer command lines fit. Most of the changes comes from allowing core dumps without seeks. They are fairly straight forward though. One small incompatibility is that if someone had a core pattern previously that started with '|' they will get suddenly new behaviour. I think that's unlikely to be a real problem though. Additional background: > Very nice, do you happen to have a program that can accept this kind of > input for crash dumps? I'm guessing that the embedded people will > really want this functionality. I had a cheesy demo/prototype. Basically it wrote the dump to a file again, ran gdb on it to get a backtrace and wrote the summary to a shared directory. Then there was a simple CGI script to generate a "top 10" crashes HTML listing. Unfortunately this still had the disadvantage to needing full disk space for a dump except for deleting it afterwards (in fact it was worse because over the pipe holes didn't work so if you have a holey address map it would require more space). Fortunately gdb seems to be happy to handle /proc/pid/fd/xxx input pipes as cores (at least it worked with zsh's =(cat core) syntax), so it would be likely possible to do it without temporary space with a simple wrapper that calls it in the right way. I ran out of time before doing that though. The demo prototype scripts weren't very good. If there is really interest I can dig them out (they are currently on a laptop disk on the desk with the laptop itself being in service), but I would recommend to rewrite them for any serious application of this and fix the disk space problem. Also to be really useful it should probably find a way to automatically fetch the debuginfos (I cheated and just installed them in advance). If nobody else does it I can probably do the rewrite myself again at some point. My hope at some point was that desktops would support it in their builtin crash reporters, but at least the KDE people I talked too seemed to be happy with their user space only solution. Alan sayeth: I don't believe that piping as such as neccessarily the right model, but the ability to intercept and processes core dumps from user space is asked for by many enterprise users as well. They want to know about, capture, analyse and process core dumps, often centrally and in automated form. [akpm@osdl.org: loff_t != unsigned long] Signed-off-by: Andi Kleen Cc: Alan Cox Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit e239ca540594cff00adcce163dc332b27015d8e5 Author: Andi Kleen Date: Sat Sep 30 23:29:27 2006 -0700 [PATCH] Create call_usermodehelper_pipe() A new member in the ever growing family of call_usermode* functions is born. The new call_usermodehelper_pipe() function allows to pipe data to the stdin of the called user mode progam and behaves otherwise like the normal call_usermodehelp() (except that it always waits for the child to finish) Signed-off-by: Andi Kleen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit d6cbd281d189977b38eac7eb2a4678de19b6b483 Author: Andi Kleen Date: Sat Sep 30 23:29:26 2006 -0700 [PATCH] Some cleanup in the pipe code Split the big and hard to read do_pipe function into smaller pieces. This creates new create_write_pipe/free_write_pipe/create_read_pipe functions. These functions are made global so that they can be used by other parts of the kernel. The resulting code is more generic and easier to read and has cleaner error handling and less gotos. [akpm@osdl.org: cleanup] Signed-off-by: Andi Kleen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 65da4d81f48e092f71feaf04bf2ccd096b5a5171 Author: Amol Lad Date: Sat Sep 30 23:29:25 2006 -0700 [PATCH] ioremap balanced with iounmap for drivers/serial/sunsu.c ioremap must be balanced by an iounmap and failing to do so can result in a memory leak. Signed-off-by: Amol Lad Cc: Alan Cox Cc: David S. Miller Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit af907dc8cd4157d629e48533b3400786467340d5 Author: Amol Lad Date: Sat Sep 30 23:29:25 2006 -0700 [PATCH] ioremap balanced with iounmap for drivers/serial/mux.c ioremap must be balanced by an iounmap and failing to do so can result in a memory leak. Signed-off-by: Amol Lad Cc: Alan Cox Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit a141a04330bd6eadf7081a0860dc786be7d09c46 Author: Amol Lad Date: Sat Sep 30 23:29:24 2006 -0700 [PATCH] ioremap balanced with iounmap for drivers/serial/mpsc.c ioremap must be balanced by an iounmap and failing to do so can result in a memory leak. Signed-off-by: Amol Lad Cc: Alan Cox Cc: Mark A. Greer Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit be618f550cb499db263e2ce22c5ad4f4dbfd53e6 Author: Amol Lad Date: Sat Sep 30 23:29:23 2006 -0700 [PATCH] ioremap balanced with iounmap for drivers/serial/mpc52xx_uart.c ioremap must be balanced by an iounmap and failing to do so can result in a memory leak. Signed-off-by: Amol Lad Cc: Alan Cox Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 6257b3bdfde4295c04872d710c2419ff8efc1b86 Author: Amol Lad Date: Sat Sep 30 23:29:22 2006 -0700 [PATCH] ioremap balanced with iounmap for drivers/serial/ip22zilog.c ioremap must be balanced by an iounmap and failing to do so can result in a memory leak. Signed-off-by: Amol Lad Cc: Alan Cox Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit f4664132613caf40bfbf17b7e0ab3340a8b8f526 Author: Amol Lad Date: Sat Sep 30 23:29:21 2006 -0700 [PATCH] ioremap balanced with iounmap for drivers/serial/ioc4_serial.c ioremap must be balanced by an iounmap and failing to do so can result in a memory leak. Signed-off-by: Amol Lad Cc: Alan Cox Cc: Brent Casavant Cc: Pat Gefre Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit d9964d5c9067fe58fecb7ba10b2de4771d2005d9 Author: Amol Lad Date: Sat Sep 30 23:29:21 2006 -0700 [PATCH] ioremap balanced with iounmap for drivers/serial/8250_gsc.c ioremap must be balanced by an iounmap and failing to do so can result in a memory leak. Signed-off-by: Amol Lad Cc: Alan Cox Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit f12ad7d59ab77591e4ab2dacd6faa9ea9afffb99 Author: Amol Lad Date: Sat Sep 30 23:29:20 2006 -0700 [PATCH] ioremap balanced with iounmap for drivers/serial/8250_acorn,c ioremap must be balanced by an iounmap and failing to do so can result in a memory leak. Signed-off-by: Amol Lad Cc: Alan Cox Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 16c564bb3cdecbc39eab5c0de3fe94ed58ba4163 Author: Haavard Skinnemoen Date: Sat Sep 30 23:29:19 2006 -0700 [PATCH] Generic ioremap_page_range: x86_64 conversion Convert x86_64 to use generic ioremap_page_range() [akpm@osdl.org: build fix] Signed-off-by: Haavard Skinnemoen Acked-by: Andi Kleen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 9540fc42305859705b0232a10c8dec3ad866bd40 Author: Haavard Skinnemoen Date: Sat Sep 30 23:29:18 2006 -0700 [PATCH] Generic ioremap_page_range: m32r conversion Convert m32r to use generic ioremap_page_range() Signed-off-by: Haavard Skinnemoen Cc: Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit a148ecfdf04d5fcb840324eef45d63ed674c73b9 Author: Haavard Skinnemoen Date: Sat Sep 30 23:29:17 2006 -0700 [PATCH] Generic ioremap_page_range: i386 conversion Convert i386 to use generic ioremap_page_range() [bunk@stusta.de: build fix] Signed-off-by: Haavard Skinnemoen Acked-by: Andi Kleen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit e32cbc3df44838cc93a679aca3561f75b4964c57 Author: Haavard Skinnemoen Date: Sat Sep 30 23:29:17 2006 -0700 [PATCH] Generic ioremap_page_range: cris conversion Convert CRIS to use generic ioremap_page_range() Signed-off-by: Haavard Skinnemoen Acked-by: Mikael Starvik Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 86c8eb360daa6286e3f9bd32a22e5d9c69e86dd1 Author: Haavard Skinnemoen Date: Sat Sep 30 23:29:16 2006 -0700 [PATCH] Generic ioremap_page_range: avr32 conversion Convert AVR32 to use generic ioremap_page_range() Signed-off-by: Haavard Skinnemoen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 801f92ad5a0c630646f6746f3ed1663fcab185d1 Author: Haavard Skinnemoen Date: Sat Sep 30 23:29:15 2006 -0700 [PATCH] Generic ioremap_page_range: alpha conversion Convert Alpha to use generic ioremap_page_range() by turning __alpha_remap_area_pages() into an inline wrapper around ioremap_page_range(). Signed-off-by: Haavard Skinnemoen Cc: Richard Henderson Cc: Ivan Kokshaysky Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit db71daabad0821996483dfe309c4bc81d6755a70 Author: Haavard Skinnemoen Date: Sat Sep 30 23:29:14 2006 -0700 [PATCH] Generic ioremap_page_range: flush_cache_vmap The existing implementation of ioremap_page_range(), which was taken from i386, does this: flush_cache_all(); /* modify page tables */ flush_tlb_all(); I think this is a bit defensive, so this patch changes the generic implementation to do: /* modify page tables */ flush_cache_vmap(start, end); instead, which is similar to what vmalloc() does. This should still be correct because we never modify existing PTEs. According to James Bottomley: The problem the flush_tlb_all() is trying to solve is to avoid stale tlb entries in the ioremap area. We're just being conservative by flushing on both map and unmap. Technically what vmalloc/vfree does (only flush the tlb on unmap) is just fine because it means that the only tlb entries in the remap area must belong to in-use mappings. Signed-off-by: Haavard Skinnemoen Cc: Richard Henderson Cc: Ivan Kokshaysky Cc: Russell King Cc: Mikael Starvik Cc: Andi Kleen Cc: Cc: Ralf Baechle Cc: Kyle McMartin Cc: Martin Schwidefsky Cc: Paul Mundt Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 74588d8ba34ff1bda027cfa737972af01ab00c8b Author: Haavard Skinnemoen Date: Sat Sep 30 23:29:12 2006 -0700 [PATCH] Generic ioremap_page_range: implementation This patch adds a generic implementation of ioremap_page_range() in lib/ioremap.c based on the i386 implementation. It differs from the i386 version in the following ways: * The PTE flags are passed as a pgprot_t argument and must be determined up front by the arch-specific code. No additional PTE flags are added. * Uses set_pte_at() instead of set_pte() [bunk@stusta.de: warning fix] ]dhowells@redhat.com: nommu build fix] Signed-off-by: Haavard Skinnemoen Cc: Richard Henderson Cc: Ivan Kokshaysky Cc: Russell King Cc: Mikael Starvik Cc: Andi Kleen Cc: Cc: Ralf Baechle Cc: Kyle McMartin Cc: Martin Schwidefsky Cc: Paul Mundt Signed-off-by: Adrian Bunk Signed-off-by: David Howells Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit bc03613decef0cc4d2f3a24f19fa5a868745715f Author: Fernando Vazquez Date: Sat Sep 30 23:29:10 2006 -0700 [PATCH] stack overflow safe kdump: safe smp_send_nmi_allbutself() Re-implement smp_send_nmi_allbutself() so that calls to smp_processor_id (through send_IPI_allbutself) can be replaced with safe_smp_processor_id without affecting other parts of the kernel (as suggested by Eric Biederman). Signed-off-by: Fernando Vazquez Looks-reasonable-to: Andi Kleen Acked-by: "Eric W. Biederman" Cc: Vivek Goyal Cc: James Bottomley Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit ce53af9496c625a8ae33526713be34a23756db19 Author: Fernando Vazquez Date: Sat Sep 30 23:29:09 2006 -0700 [PATCH] stack overflow safe kdump: crash: use safe_smp_processor_id() Substitute "smp_processor_id" with the stack overflow-safe "safe_smp_processor_id" in the reboot path to the second kernel. [akpm@osdl.org: build fix] Signed-off-by: Fernando Vazquez Looks-reasonable-to: Andi Kleen Acked-by: "Eric W. Biederman" Cc: Vivek Goyal Cc: James Bottomley Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 2654c08caa12a06237b28f85446ae2d223c30144 Author: Fernando Vazquez Date: Sat Sep 30 23:29:08 2006 -0700 [PATCH] stack overflow safe kdump: safe_smp_processor_id(): voyager "safe_smp_processor_id" implementation for i386-Voyager. Signed-off-by: Fernando Vazquez Looks-reasonable-to: Andi Kleen Acked-by: "Eric W. Biederman" Cc: Vivek Goyal Cc: James Bottomley Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit dc2bc768a009b9ad8711894c544dc6b0d8c0ce57 Author: Fernando Vazquez Date: Sat Sep 30 23:29:07 2006 -0700 [PATCH] stack overflow safe kdump: safe_smp_processor_id() This is a the first of a series of patch-sets aiming at making kdump more robust against stack overflows. This patch set does the following: * Add safe_smp_processor_id function to i386 architecture (this function was inspired by the x86_64 function of the same name). * Substitute "smp_processor_id" with the stack overflow-safe "safe_smp_processor_id" in the reboot path to the second kernel. This patch: On the event of a stack overflow critical data that usually resides at the bottom of the stack is likely to be stomped and, consequently, its use should be avoided. In particular, in the i386 and IA64 architectures the macro smp_processor_id ultimately makes use of the "cpu" member of struct thread_info which resides at the bottom of the stack. x86_64, on the other hand, is not affected by this problem because it benefits from the use of the PDA infrastructure. To circumvent this problem I suggest implementing "safe_smp_processor_id()" (it already exists in x86_64) for i386 and IA64 and use it as a replacement for smp_processor_id in the reboot path to the dump capture kernel. This is a possible implementation for i386. Signed-off-by: Fernando Vazquez Looks-reasonable-to: Andi Kleen Acked-by: "Eric W. Biederman" Cc: Vivek Goyal Cc: James Bottomley Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit ce71ec36840368b877fb63bd14c8e67ab62d08b1 Author: Dave Hansen Date: Sat Sep 30 23:29:06 2006 -0700 [PATCH] r/o bind mounts: monitor zeroing of i_nlink Some filesystems, instead of simply decrementing i_nlink, simply zero it during an unlink operation. We need to catch these in addition to the decrement operations. Signed-off-by: Dave Hansen Acked-by: Christoph Hellwig Cc: Al Viro Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 17ff785691503f63ec648df82a7fdaece7695561 Author: Mark Fasheh Date: Sat Sep 30 23:29:05 2006 -0700 [PATCH] r/o bind mounts: clean up OCFS2 nlink handling OCFS2 does some operations on i_nlink, then reverts them if some of its operations fail to complete. This does not fit in well with the drop_nlink() logic where we expect i_nlink to stay at zero once it gets there. So, delay all of the nlink operations until we're sure that the operations have completed. Also, introduce a small helper to check whether an inode has proper "unlinkable" i_nlink counts no matter whether it is a directory or regular inode. This patch is broken out from the others because it does contain some logical changes. Signed-off-by: Dave Hansen Signed-off-by: Mark Fasheh Cc: Christoph Hellwig Cc: Al Viro Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit d8c76e6f45c111c32a4b3e50a2adc9210737b0d8 Author: Dave Hansen Date: Sat Sep 30 23:29:04 2006 -0700 [PATCH] r/o bind mount prepwork: inc_nlink() helper This is mostly included for parity with dec_nlink(), where we will have some more hooks. This one should stay pretty darn straightforward for now. Signed-off-by: Dave Hansen Acked-by: Christoph Hellwig Cc: Al Viro Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 9a53c3a783c2fa9b969628e65695c11c3e51e673 Author: Dave Hansen Date: Sat Sep 30 23:29:03 2006 -0700 [PATCH] r/o bind mounts: unlink: monitor i_nlink When a filesystem decrements i_nlink to zero, it means that a write must be performed in order to drop the inode from the filesystem. We're shortly going to have keep filesystems from being remounted r/o between the time that this i_nlink decrement and that write occurs. So, add a little helper function to do the decrements. We'll tie into it in a bit to note when i_nlink hits zero. Signed-off-by: Dave Hansen Acked-by: Christoph Hellwig Cc: Al Viro Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit aab520e2f6c80160cabd187a8d0292d1cec8ff68 Author: Dave Hansen Date: Sat Sep 30 23:29:02 2006 -0700 [PATCH] r/o bind mount prepwork: move open_namei()'s vfs_create() The code around vfs_create() in open_namei() is getting a bit too complex. Right now, there is at least the reference count on the dentry, and the i_mutex to worry about. Soon, we'll also have mnt_writecount. So, break the vfs_create() call out of open_namei(), and into a helper function. This duplicates the call to may_open(), but that isn't such a bad thing since the arguments (acc_mode and flag) were being heavily massaged anyway. Signed-off-by: Dave Hansen Acked-by: Christoph Hellwig Cc: Al Viro Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 6902d925d568cd5bfda8a1a328bf08d26d1bab46 Author: Dave Hansen Date: Sat Sep 30 23:29:01 2006 -0700 [PATCH] r/o bind mounts: prepare for write access checks: collapse if() We're shortly going to be adding a bunch more permission checks in these functions. That requires adding either a bunch of new if() conditions, or some gotos. This patch collapses existing if()s and uses gotos instead to prepare for the upcoming changes. Signed-off-by: Dave Hansen Acked-by: Christoph Hellwig Cc: Al Viro Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit db5fed26b2e0beed939b773dd5896077a1794d65 Author: Jay Lan Date: Sat Sep 30 23:29:00 2006 -0700 [PATCH] csa accounting taskstats update ChangeLog: Feedbacks from Andrew Morton: - define TS_COMM_LEN to 32 - change acct_stimexpd field of task_struct to be of cputime_t, which is to be used to save the tsk->stime of last timer interrupt update. - a new Documentation/accounting/taskstats-struct.txt to describe fields of taskstats struct. Feedback from Balbir Singh: - keep the stime of a task to be zero when both stime and utime are zero as recoreded in task_struct. Misc: - convert accumulated RSS/VM from platform dependent pages-ticks to MBytes-usecs in the kernel Cc: Shailabh Nagar Cc: Balbir Singh Cc: Jes Sorensen Cc: Chris Sturtivant Cc: Tony Ernst Cc: Guillaume Thouvenin Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 8f0ab5147951267134612570604cf8341901a80c Author: Jay Lan Date: Sat Sep 30 23:28:59 2006 -0700 [PATCH] csa: convert CONFIG tag for extended accounting routines There were a few accounting data/macros that are used in CSA but are #ifdef'ed inside CONFIG_BSD_PROCESS_ACCT. This patch is to change those ifdef's from CONFIG_BSD_PROCESS_ACCT to CONFIG_TASK_XACCT. A few defines are moved from kernel/acct.c and include/linux/acct.h to kernel/tsacct.c and include/linux/tsacct_kern.h. Signed-off-by: Jay Lan Cc: Shailabh Nagar Cc: Balbir Singh Cc: Jes Sorensen Cc: Chris Sturtivant Cc: Tony Ernst Cc: Guillaume Thouvenin Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 9acc1853519a0473620d424105f9d49ea5b4e62e Author: Jay Lan Date: Sat Sep 30 23:28:58 2006 -0700 [PATCH] csa: Extended system accounting over taskstats Add extended system accounting handling over taskstats interface. A CONFIG_TASK_XACCT flag is created to enable the extended accounting code. Signed-off-by: Jay Lan Cc: Shailabh Nagar Cc: Balbir Singh Cc: Jes Sorensen Cc: Chris Sturtivant Cc: Tony Ernst Cc: Guillaume Thouvenin Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit f3cef7a99469afc159fec3a61b42dc7ca5b6824f Author: Jay Lan Date: Sat Sep 30 23:28:55 2006 -0700 [PATCH] csa: basic accounting over taskstats Add some basic accounting fields to the taskstats struct, add a new kernel/tsacct.c to handle basic accounting data handling upon exit. A handle is added to taskstats.c to invoke the basic accounting data handling. Signed-off-by: Jay Lan Cc: Shailabh Nagar Cc: Balbir Singh Cc: Jes Sorensen Cc: Chris Sturtivant Cc: Tony Ernst Cc: Guillaume Thouvenin Cc: "Michal Piotrowski" Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 7d1bdca9b06acb3df07329eaff72d5eaf1543287 Author: Balbir Singh Date: Sat Sep 30 23:28:54 2006 -0700 [PATCH] Fix getdelays.c - cpumask length and error reporting Fix the length passed while (un)registering cpumask. We were passing sizeof the array, make it strlen(). Error value printed in fatal errors should be derived from the message. The message contains an nlmsgerr embedded with an error value. We must report that value to the user. Signed-off-by: Balbir Singh Cc: Jamal Hadi Cc: Shailabh Nagar Cc: Thomas Graf Cc: "David S. Miller" Cc: Jay Lan Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 0ae646845b603e9df5711084436d389f8371ffb3 Author: Balbir Singh Date: Sat Sep 30 23:28:53 2006 -0700 [PATCH] Fix taskstats size calculation (use the new genetlink utility functions) The addition of the CSA patch pushed the size of struct taskstats to 256 bytes. This exposed a problem with prepare_reply(), we were not allocating space for the netlink and genetlink header. It worked earlier because alloc_skb() would align the skb to SMP_CACHE_BYTES, which added some additonal bytes. Signed-off-by: Balbir Singh Cc: Jamal Hadi Cc: Shailabh Nagar Cc: Thomas Graf Cc: "David S. Miller" Cc: Jay Lan Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 17db952cd16cecc76937b138c685ae3d198ab17c Author: Balbir Singh Date: Sat Sep 30 23:28:51 2006 -0700 [PATCH] Add genetlink utilities for payload length calculation Add two utility helper functions genlmsg_msg_size() and genlmsg_total_size(). These functions are derived from their netlink counterparts. Signed-off-by: Balbir Singh Cc: Jamal Hadi Cc: Shailabh Nagar Cc: Thomas Graf Cc: "David S. Miller" Cc: Jay Lan Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 31608214fe21dc31d8046679054ab033b1fe5cf1 Author: Chen, Kenneth W Date: Sat Sep 30 23:28:50 2006 -0700 [PATCH] clean up unused kiocb variables Signed-off-by: Ken Chen Acked-by: Zach Brown Cc: Suparna Bhattacharya Cc: Benjamin LaHaise Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit eed4e51fb60c3863c134a5e9f6006b29805ead97 Author: Badari Pulavarty Date: Sat Sep 30 23:28:49 2006 -0700 [PATCH] Add vector AIO support This work is initially done by Zach Brown to add support for vectored aio. These are the core changes for AIO to support IOCB_CMD_PREADV/IOCB_CMD_PWRITEV. [akpm@osdl.org: huge build fix] Signed-off-by: Zach Brown Signed-off-by: Christoph Hellwig Signed-off-by: Badari Pulavarty Acked-by: Benjamin LaHaise Acked-by: James Morris Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 543ade1fc901db4c3dbe9fb27241fb977f1f3eea Author: Badari Pulavarty Date: Sat Sep 30 23:28:48 2006 -0700 [PATCH] Streamline generic_file_* interfaces and filemap cleanups This patch cleans up generic_file_*_read/write() interfaces. Christoph Hellwig gave me the idea for this clean ups. In a nutshell, all filesystems should set .aio_read/.aio_write methods and use do_sync_read/ do_sync_write() as their .read/.write methods. This allows us to cleanup all variants of generic_file_* routines. Final available interfaces: generic_file_aio_read() - read handler generic_file_aio_write() - write handler generic_file_aio_write_nolock() - no lock write handler __generic_file_aio_write_nolock() - internal worker routine Signed-off-by: Badari Pulavarty Signed-off-by: Christoph Hellwig Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit ee0b3e671baff681d69fbf0db33b47603c0a8280 Author: Badari Pulavarty Date: Sat Sep 30 23:28:47 2006 -0700 [PATCH] Remove readv/writev methods and use aio_read/aio_write instead This patch removes readv() and writev() methods and replaces them with aio_read()/aio_write() methods. Signed-off-by: Badari Pulavarty Signed-off-by: Christoph Hellwig Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 027445c37282bc1ed26add45e573ad2d3e4860a5 Author: Badari Pulavarty Date: Sat Sep 30 23:28:46 2006 -0700 [PATCH] Vectorize aio_read/aio_write fileop methods This patch vectorizes aio_read() and aio_write() methods to prepare for collapsing all aio & vectored operations into one interface - which is aio_read()/aio_write(). Signed-off-by: Badari Pulavarty Signed-off-by: Christoph Hellwig Cc: Michael Holzheu Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 9ea0f9499d15c49df23e7aac4332d830c40e12d0 Author: Jeff Mahoney Date: Sat Sep 30 23:28:45 2006 -0700 [PATCH] reiserfs: eliminate minimum window size for bitmap searching When a file system becomes fragmented (using MythTV, for example), the bigalloc window searching ends up causing huge performance problems. In a file system presented by a user experiencing this bug, the file system was 90% free, but no 32-block free windows existed on the entire file system. This causes the allocator to scan the entire file system for each 128k write before backing down to searching for individual blocks. In the end, finding a contiguous window for all the blocks in a write is an advantageous special case, but one that can be found naturally when such a window exists anyway. This patch removes the bigalloc window searching, and has been proven to fix the test case described above. Signed-off-by: Jeff Mahoney Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 5a2618e6a972f305496daa257a56a09dd3acca29 Author: Jeff Mahoney Date: Sat Sep 30 23:28:44 2006 -0700 [PATCH] reiserfs: use generic_file_open for open() checks The other common disk-based file systems (I checked ext[23], xfs, jfs) check to ensure that opens of files > 2 GB fail unless O_LARGEFILE is specified. They check via generic_file_open or their own open routine. ReiserFS doesn't have an f_op->open defined, and as such, it's possible to open files > 2 GB without O_LARGEFILE. This patch adds the f_op->open member to conform with the expected behavior. Signed-off-by: Jeff Mahoney Cc: Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 5065227b46235ec0131b383cc2f537069b55c6b6 Author: Jeff Mahoney Date: Sat Sep 30 23:28:44 2006 -0700 [PATCH] reiserfs: on-demand bitmap loading This is the patch the three previous ones have been leading up to. It changes the behavior of ReiserFS from loading and caching all the bitmaps as special, to treating the bitmaps like any other bit of metadata and just letting the system-wide caches figure out what to hang on to. Buffer heads are allocated on the fly, so there is no need to retain pointers to all of them. The caching of the metadata occurs when the data is read and updated, and is considered invalid and uncached until then. I needed to remove the vs-4040 check for performing a duplicate operation on a particular bit. The reason is that while the other sites for working with bitmaps are allowed to schedule, is_reusable() is called from do_balance(), which will panic if a schedule occurs in certain places. The benefit of on-demand bitmaps clearly outweighs a sanity check that depends on a compile-time option that is discouraged. [akpm@osdl.org: warning fix] Signed-off-by: Jeff Mahoney Cc: Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 6f01046b35d940079822827498a7dd6d3eec8c6b Author: Jeff Mahoney Date: Sat Sep 30 23:28:43 2006 -0700 [PATCH] reiserfs: reorganize bitmap loading functions This patch moves the bitmap loading code from super.c to bitmap.c The code is also restructured somewhat. The only difference between new format bitmaps and old format bitmaps is where they are. That's a two liner before loading the block to use the correct one. There's no need for an entirely separate code path. The load path is generally the same, with the pattern being to throw out a bunch of requests and then wait for them, then cache the metadata from the contents. Again, like the previous patches, the purpose is to set up for later ones. Update: There was a bug in the previously posted version of this that resulted in corruption. The problem was that bitmap 0 on new format file systems must be treated specially, and wasn't. A stupid bug with an easy fix. This is hopefully the last fix for the disaster that is the reiserfs bitmap patch set. If a bitmap block was full, first_zero_hint would end up at zero since it would never be changed from it's zeroed out value. This just sets it beyond the end of the bitmap block. If any bits are freed, it will be reset to a valid bit. When info->free_count = 0, then we already know it's full. Signed-off-by: Jeff Mahoney Cc: Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 0b3dc17bc0c0997bde9f5d7691ec0cae24258cf7 Author: Jeff Mahoney Date: Sat Sep 30 23:28:42 2006 -0700 [PATCH] reiserfs: clean up bitmap block buffer head references Similar to the SB_JOURNAL cleanup that was accepted a while ago, this patch uses a temporary variable for buffer head references from the bitmap info array. This makes the code much more readable in some areas. It also uses proper reference counting, doing a get_bh() after using the pointer from the array and brelse()'ing it later. This may seem silly, but a later patch will replace the simple temporary variables with an actual read, so the reference freeing will be used then. Signed-off-by: Jeff Mahoney Cc: Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit e1fabd3ccf02901374bffa434e0af472749a5bd9 Author: Jeff Mahoney Date: Sat Sep 30 23:28:40 2006 -0700 [PATCH] reiserfs: fix is_reusable bitmap check to not traverse the bitmap info array There is a check in is_reusable to determine if a particular block is a bitmap block. It verifies this by going through the array of bitmap block buffer heads and comparing the block number to each one. Bitmap blocks are at defined locations on the disk in both old and current formats. Simply checking against the known good values is enough. This is a trivial optimization for a non-production codepath, but this is the first in a series of patches that will ultimately remove the buffer heads from that array. Signed-off-by: Jeff Mahoney Cc: Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 8ef386092d7c2891bd7acefb2a87f878f7e9a0d6 Author: Atsushi Nemoto Date: Sat Sep 30 23:28:31 2006 -0700 [PATCH] kill wall_jiffies With 2.6.18-rc4-mm2, now wall_jiffies will always be the same as jiffies. So we can kill wall_jiffies completely. This is just a cleanup and logically should not change any real behavior except for one thing: RTC updating code in (old) ppc and xtensa use a condition "jiffies - wall_jiffies == 1". This condition is never met so I suppose it is just a bug. I just remove that condition only instead of kill the whole "if" block. [heiko.carstens@de.ibm.com: s390 build fix and cleanup] Signed-off-by: Atsushi Nemoto Cc: Andi Kleen Cc: Paul Mackerras Cc: Benjamin Herrenschmidt Cc: Richard Henderson Cc: Ivan Kokshaysky Cc: Russell King Cc: Ian Molton Cc: Mikael Starvik Cc: David Howells Cc: Yoshinori Sato Cc: Hirokazu Takata Cc: Ralf Baechle Cc: Kyle McMartin Cc: Heiko Carstens Cc: Martin Schwidefsky Cc: Paul Mundt Cc: Kazumoto Kojima Cc: Richard Curnow Cc: William Lee Irwin III Cc: "David S. Miller" Cc: Jeff Dike Cc: Paolo 'Blaisorblade' Giarrusso Cc: Miles Bader Cc: Chris Zankel Cc: "Luck, Tony" Cc: Geert Uytterhoeven Cc: Roman Zippel Signed-off-by: Heiko Carstens Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 70bc42f90a3f4721c89dbe865e6c95da8565b41c Author: Adrian Bunk Date: Sat Sep 30 23:28:29 2006 -0700 [PATCH] kernel/time/ntp.c: possible cleanups This patch contains the following possible cleanups: - make the following needlessly global function static: - ntp_update_frequency() - make the following needlessly global variables static: - time_state - time_offset - time_constant - time_reftime - remove the following read-only global variable: - time_precision Signed-off-by: Adrian Bunk Cc: Roman Zippel Cc: john stultz Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 0883d899ef862c1b0f8b2c2d38098470c193a3dd Author: Roman Zippel Date: Sat Sep 30 23:28:29 2006 -0700 [PATCH] ntp: cleanup defines and comments Remove a few unused defines and remove obsolete information from comments. Signed-off-by: Roman Zippel Cc: john stultz Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit f19923937321244e7dc334767eb4b67e0e3d5c74 Author: Roman Zippel Date: Sat Sep 30 23:28:28 2006 -0700 [PATCH] ntp: convert to the NTP4 reference model This converts the kernel ntp model into a model which matches the nanokernel reference implementations. The previous patches already increased the resolution and precision of the computations, so that this conversion becomes quite simple. explains: The original NTP kernel interface was defined in units of microseconds. That's what Linux implements. As computers have gotten faster and can now split microseconds easily, a new kernel interface using nanosecond units was defined ("the nanokernel", confusing as that name is to OS hackers), and there's an STA_NANO bit in the adjtimex() status field to tell the application which units it's using. The current ntpd supports both, but Linux loses some possible timing resolution because of quantization effects, and the ntpd hackers would really like to be able to drop the backwards compatibility code. Ulrich Windl has been maintaining a patch set to do the conversion for years, but it's hard to keep in sync. Signed-off-by: Roman Zippel Cc: john stultz Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 04b617e71e363e640e88be1e43f53fa6a3afef9f Author: Roman Zippel Date: Sat Sep 30 23:28:27 2006 -0700 [PATCH] ntp: convert time_freq to nsec value This converts time_freq to a scaled nsec value and adds around 6bit of extra resolution. This pushes the time_freq to its 32bit limits so the calculatons have to be done with 64bit. Signed-off-by: Roman Zippel Cc: john stultz Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 97eebe138caaf78354b1fad233e63bafdcc4fd54 Author: Roman Zippel Date: Sat Sep 30 23:28:26 2006 -0700 [PATCH] ntp: remove time_tolerance time_tolerance isn't changed at all in the kernel, so simply remove it, this simplifies the next patch, as it avoids a number of conversions. Signed-off-by: Roman Zippel Cc: john stultz Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 8f807f8d2137ba728d22820103131038639b68a9 Author: Roman Zippel Date: Sat Sep 30 23:28:25 2006 -0700 [PATCH] ntp: add time_adjust to tick length This folds update_ntp_one_tick() into second_overflow() and adds time_adjust to the tick length, this makes time_next_adjust unnecessary. This slightly changes the adjtime() behaviour, instead of applying it to the next tick, it's applied to the next second. Signed-off-by: Roman Zippel Cc: john stultz Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 3d3675cc3d04d7fd4bb11e8c1ea79e5ade4f5e44 Author: Roman Zippel Date: Sat Sep 30 23:28:25 2006 -0700 [PATCH] ntp: prescale time_offset This converts time_offset into a scaled per tick value. This avoids now completely the crude compensation in second_overflow(). Signed-off-by: Roman Zippel Cc: john stultz Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit dc6a43e46f1b6de22701f97bec022e97088cfa90 Author: Roman Zippel Date: Sat Sep 30 23:28:24 2006 -0700 [PATCH] ntp: add time_freq to tick length This adds the frequency part to ntp_update_frequency(). Signed-off-by: Roman Zippel Cc: john stultz Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit ab8783b688f33c40ed7b37b814a4a1e7d341ce11 Author: Roman Zippel Date: Sat Sep 30 23:28:23 2006 -0700 [PATCH] ntp: add time_adj to tick length This makes time_adj local to second_overflow() and integrates it into the tick length instead of adding it everytime. Signed-off-by: Roman Zippel Cc: john stultz Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit b0ee75561beadc4db4d9a899c8ef4a7db50aa0ab Author: Roman Zippel Date: Sat Sep 30 23:28:22 2006 -0700 [PATCH] ntp: add ntp_update_frequency This introduces ntp_update_frequency() and deinlines ntp_clear() (as it's not performance critical). ntp_update_frequency() calculates the base tick length using tick_usec and adds a base adjustment, in case the frequency doesn't divide evenly by HZ. Signed-off-by: Roman Zippel Cc: john stultz Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 4c7ee8de956fc250fe31e2fa91f6da980fabe317 Author: john stultz Date: Sat Sep 30 23:28:22 2006 -0700 [PATCH] NTP: Move all the NTP related code to ntp.c Move all the NTP related code to ntp.c [akpm@osdl.org: cleanups, build fix] Signed-off-by: John Stultz Cc: Ingo Molnar Cc: Roman Zippel Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit c902e0a0102f1095eec4b3511c13c84ca2bc4577 Author: Josh Triplett Date: Sat Sep 30 23:28:21 2006 -0700 [PATCH] Pass sparse the lock expression given to lock annotations The lock annotation macros __acquires, __releases, __acquire, and __release all currently throw away the lock expression passed as an argument. Now that sparse can parse __context__ and __attribute__((context)) with a context expression, pass the lock expression down to sparse as the context expression. This requires a version of sparse from GIT commit 37475a6c1c3e66219e68d912d5eb833f4098fd72 or later. Signed-off-by: Josh Triplett Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit df3fe8defedc52745526914e12eb4ba0b8a9f6ca Author: Corey Minyard Date: Sat Sep 30 23:28:20 2006 -0700 [PATCH] ipmi: don't start kipmid if the IPMI driver can use interrupts If the driver has interrupts available to it, there is really no reason to have a kernel daemon push the IPMI state machine. Note that I have experienced machines where the interrupts do not work correctly. This was a long time ago and hopefully things are better now. If some machines still have broken interrupts, a blacklist will need to be added. Signed-off-by: Corey Minyard Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit dcb9c39236a27c2288a7059aa504abb57427df7c Author: David Brownell Date: Sat Sep 30 23:28:19 2006 -0700 [PATCH] omap_cf works again (sync with linux-omap tree) This syncs the omap_cf driver with the one from the linux-omap tree. Changes include fixing build warnings (section mismatch, unused return value) and coping with various pcmcia core changes related to managing i/o memory and irq resources. Signed-off-by: David Brownell Cc: Dominik Brodowski Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 391b1fe67d193df75144a92b146613c36491ef0d Author: Atsushi Nemoto Date: Sat Sep 30 23:28:18 2006 -0700 [PATCH] RTC: rtc-ds1553, rtc-ds1742 update Check return value of sysfs_create_bin_file(). Fix polarity of RTC_BATT_FLAG bit in DS1742. Signed-off-by: Atsushi Nemoto Cc: Alessandro Zummo Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 90b4d648f02a653b192be7f0feb0a933b7525e6a Author: David Brownell Date: Sat Sep 30 23:28:17 2006 -0700 [PATCH] AT91rm9200 RTC can issue system wakeup events This lets the at91rm9200 RTC alarm be a system wakeup irq, according to the setting of /sys/devices/platform/at91_rtc/power/wakeup. User code can set the alarm, put the system into a low power mode, and then rely on it waking up no later than the specified moment. Signed-off-by: David Brownell Cc: Alessandro Zummo Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit ff8371ac9a5a55c956991fed8e5f58640c7a32f3 Author: David Brownell Date: Sat Sep 30 23:28:17 2006 -0700 [PATCH] constify rtc_class_ops: update drivers Update RTC framework so that drivers can constify their method tables, moving them from ".data" to ".rodata". Then update the drivers. Signed-off-by: David Brownell Cc: Alessandro Zummo Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit db621f174d2c017d960089ea8cbc91c0763f1069 Author: David Brownell Date: Sat Sep 30 23:28:16 2006 -0700 [PATCH] RTC class: error checks The rtc_is_valid_tm() routine needs to treat some of the fields it checks as unsigned, to prevent wrongly accepting invalid rtc_time structs; this is the same approach used elsewhere in the RTC code for such tests. Conversely, rtc_proc_show() is missing one invalid-day-of-month test that rtc_is_valid_tm() makes: there is no day zero. Signed-off-by: David Brownell Cc: Alessandro Zummo Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 818a8674b0388d90e33a5d1b13946b40dda7032a Author: David Brownell Date: Sat Sep 30 23:28:15 2006 -0700 [PATCH] RTC class uses subsys_init This makes RTC core components use "subsys_init" instead of "module_init", as appropriate for subsystem infrastructure. This is mostly useful for statically linking drivers in other parts of the tree that may provide an RTC interface as a secondary functionality (e.g. part of a multifunction chip); they won't need to worry so much about drivers/Makefile link order. Signed-off-by: David Brownell Cc: Alessandro Zummo Acked-by: Oleg Verych Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 9e86ecb659f11b36b5e189214b19cb31ef5dfd72 Author: David Brownell Date: Sat Sep 30 23:28:14 2006 -0700 [PATCH] RTC class: Kconfig improvements Small updates to make the RTC class Kconfig text be more informative. This should help folk used to the drivers/char/rtc.c support, or a single RTC, be slightly less surprised by the differences. Also, adds a new RTC_DEBUG option to predefine DEBUG in the framework and its drivers, while debugging. That's getting to be a standard idiom, and it's pretty useful. Signed-off-by: David Brownell Cc: Alessandro Zummo Acked-by: Oleg Verych Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 0847062ad57e6d2d77875104d66f413a89769809 Author: Randy Dunlap Date: Sat Sep 30 23:28:13 2006 -0700 [PATCH] fix EMBEDDED + SYSCTL menu SYSCTL should still depend on EMBEDDED. This unbreaks the EMBEDDED menu (from the recent SYSCTL_SYCALL menu option patch). Fix typos in new SYSCTL_SYSCALL menu. Signed-off-by: Randy Dunlap Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 1713e903c680de4934837689abecc5df02f463ac Author: Jean-Baptiste Maneyrol Date: Sat Sep 30 23:28:12 2006 -0700 [PATCH] rtc driver rtc-pcf8563 century bit inversed The century bit PCF8563_MO_C in the month register is misinterpreted. It is set to 1 for the 20th century and 0 for 21th, and the driver is expecting the opposite behavior. Acked-by: Alessandro Zummo Cc: Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 365e02237b164701897244aab7412b21c5e622af Author: Jiri Slaby Date: Sat Sep 30 23:28:11 2006 -0700 [PATCH] Char: specialix, kill unneeded page alloc The driver is allocating a page but doesn't actually use it for anything. (History from the old ->write method before Linus cleaned it up) Signed-off-by: Jiri Slaby Acked-by: Alan Cox Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 6e9a4738c9fadb7cbdcabc1e3b415159f3741ed9 Author: Peter Zijlstra Date: Sat Sep 30 23:28:10 2006 -0700 [PATCH] completions: lockdep annotate on stack completions All on stack DECLARE_COMPLETIONs should be replaced by: DECLARE_COMPLETION_ONSTACK Signed-off-by: Peter Zijlstra Acked-by: Ingo Molnar Acked-by: Benjamin Herrenschmidt Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 397d6140e93156ecb9cafcd9be0db10ff3c12ab3 Author: Eric Sesterhenn Date: Sat Sep 30 23:28:09 2006 -0700 [PATCH] Remove unnecessary check in drivers/rtc/rtc-v3020.c Looks like the probe function always gets a valid pdev, and checking it after dereferencing it is pretty useless. This patch removes the check (cid #1365) Signed-off-by: Eric Sesterhenn Cc: Alessandro Zummo Cc: Raphael Assenat Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 3a2711116073db258224afd2cc0f478bdf305575 Author: Rolf Eike Beer Date: Sat Sep 30 23:28:09 2006 -0700 [PATCH] Remove BUG_ON(unlikely) in include/linux/aio.h BUG_ON() does this unlikely check itself, as bugs in Linux are unlikely anyway :) Signed-off-by: Rolf Eike Beer Acked-by: Zach Brown Acked-by: Benjamin LaHaise Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 9ba0bdfd040b2893bcddfec7165b545d22fc2dc7 Author: Jan Altenberg Date: Sat Sep 30 23:28:08 2006 -0700 [PATCH] typo fixes for rt-mutex-design.txt Address some simple typos in rt-mutex-design.txt It also changes the indentation of the cmpxchg example (the cmpxchg example was indented by spaces, while all other code snippets were indented by tabs). Acked-by: Steven Rostedt Signed-off-by: Jan Altenberg Acked-by: Ingo Molnar Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 710b8b5f4341e72a5f5f6fa58d1f73a0db64bf93 Author: Soos Peter Date: Sat Sep 30 23:28:06 2006 -0700 [PATCH] hdaps: support Lenovo ThinkPad T60 Support hdaps on Lenovo ThinkPad T60. It was tested with pivot utility from http://www.kernel.org/pub/linux/kernel/people/rml/hdaps and it seems to be OK. Cc: Jean Delvare Cc: Greg Kroah-Hartman Cc: Robert Love Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 095d030cff0eafd29ee31e022d374874146a5b4c Author: Eric Sesterhenn Date: Sat Sep 30 23:28:05 2006 -0700 [PATCH] Off-by-one in drivers/char/mwave/mwavedd.c This fixes two off by ones in the mwave driver, found via find -iname \*.[ch] | xargs grep "> ARRAY_SIZE(" Signed-off-by: Eric Sesterhenn Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 1cfee2b3c21d71a8c20884dbb77ed343558db87f Author: Alan Cox Date: Sat Sep 30 23:28:03 2006 -0700 [PATCH] trident: fix pci_dev reference counting and buglet Switch trident to use pci_get/put_dev properly. Also fix a bug where the driver erroneously passed pdev not NULL to a second search. This happened to always work except with pci=reverse because of chip ordering. Signed-off-by: Alan Cox Signed-off-by: Muli Ben-Yehuda Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit b2e9c7d07fcc8966d6aa50a77afa66c9919bd5a8 Author: Peter Zijlstra Date: Sat Sep 30 23:28:02 2006 -0700 [PATCH] sysrq: disable lockdep on reboot SysRq : Emergency Sync Emergency Sync complete SysRq : Emergency Remount R/O Emergency Remount complete SysRq : Resetting BUG: warning at kernel/lockdep.c:1816/trace_hardirqs_on() (Not tainted) Call Trace: [] show_trace+0xae/0x319 [] dump_stack+0x15/0x17 [] trace_hardirqs_on+0xbc/0x13d [] sysrq_handle_reboot+0x9/0x11 [] __handle_sysrq+0x99/0x130 [] handle_sysrq+0x17/0x19 [] kbd_event+0x32e/0x57d [] input_event+0x42d/0x45b [] atkbd_interrupt+0x44d/0x53d [] serio_interrupt+0x49/0x86 [] i8042_interrupt+0x202/0x21a [] handle_IRQ_event+0x2c/0x64 [] __do_IRQ+0xaf/0x114 [] do_IRQ+0xf8/0x107 [] ret_from_intr+0x0/0xf DWARF2 unwinder stuck at ret_from_intr+0x0/0xf Leftover inexact backtrace: [] mwait_idle+0x3f/0x54 [] cpu_idle+0xa2/0xc5 [] rest_init+0x2b/0x2d [] start_kernel+0x24a/0x24c [] _sinittext+0x28b/0x292 Since we're shutting down anyway, don't bother being smart, just turn the thing off. Signed-off-by: Peter Zijlstra Acked-by: Ingo Molnar Cc: Arjan van de Ven Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 74ae3221818eaf3884ceac931ba3cd2c00045483 Author: Alan Cox Date: Sat Sep 30 23:28:00 2006 -0700 [PATCH] cardbus: switch to ref counting/hotplug safe API Signed-off-by: Alan Cox Cc: Dominik Brodowski Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit df10f4edd5f097251c62f1d4a3adea778100b4a8 Author: Alan Cox Date: Sat Sep 30 23:27:59 2006 -0700 [PATCH] i2o: Switch to pci_get API Use the safe ref-counted API for the bridge check Signed-off-by: Alan Cox Cc: Markus Lidel Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 1aff0ecafb5e94515dc37849fd32a810554f34f4 Author: Alan Cox Date: Sat Sep 30 23:27:59 2006 -0700 [PATCH] ip2: use newer pci_get functions This is one of a series of patches I plan to gradually trickle into the tree which eliminates almost all remaining use of pci_find_* and lets me build a pci_find_* free kernel for all but some obscure ISDN and SCSI drivers. This is important as all pci_find_* users are not hotplug safe - even if they are not the device being plugged. Signed-off-by: Alan Cox Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 30cbc22217bb3d5d4c74c88127fbf595460bdb76 Author: Olaf Hering Date: Sat Sep 30 23:27:57 2006 -0700 [PATCH] update legacy io handling for pmac ppc can boot one single binary on prep, chrp and pmac boards. ppc64 can boot one single binary on pseries and G5 boards. pmac has no legacy io, probing for PC style legacy hardware (or accessing the legacy io area regulary) may lead to a hard crash: * add check for parport_pc, exit on pmac. 32bit chrp has no ->check_legacy_ioport, the probe is always called. 64bit chrp has check_legacy_ioport, check for a "parallel" node * add check for isapnp, only PReP boards may have real ISA slots. 32bit PReP will have no ->check_legacy_ioport, the probe is always called. * update code in i8042_platform_init. Run ->check_legacy_ioport first, always call request_region. No functional change. Remove whitespace before i8042_reset init. Signed-off-by: Olaf Hering Acked-by: Benjamin Herrenschmidt Cc: Paul Mackerras Cc: Adam Belay Cc: Dmitry Torokhov Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit c69c31270c35a6b8421a8e4ba81de1247ac6df95 Author: Corey Minyard Date: Sat Sep 30 23:27:56 2006 -0700 [PATCH] IPMI: per-channel command registration This patch adds the ability to register for a command per-channel in the IPMI driver. If your BMC supports multiple channels, incoming messages can be useful to have the ability to register to receive commands on a specific channel instead the current behaviour of all channels. Signed-off-by: David Barksdale Signed-off-by: Corey Minyard Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 54f67f631dfc25ca7a8b19200e34013abc974337 Author: Petr Vandrovec Date: Sat Sep 30 23:27:55 2006 -0700 [PATCH] Move ncpfs 32bit compat ioctl to ncpfs The ncp specific compat ioctls are clearly local to one file system, so the code can better live there. This version of the patch moves everything into the generic ioctl handler and uses it for both 32 and 64 bit calls. Signed-off-by: Arnd Bergmann Signed-off-by: Petr Vandrovec Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 89bbc03c01f68e627a2b120963f136e2815f0d84 Author: Thomas Petazzoni Date: Sat Sep 30 23:27:54 2006 -0700 [PATCH] Prevent multiple inclusion of linux/sysrq.h Prevent multiple inclusions of include/linux/sysrq.h using traditional #ifndef..#endif. Signed-off-by: Thomas Petazzoni Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 643f720cea989d2913fc0120a2384fecc1be1f9a Author: Pierre Ossman Date: Sat Sep 30 23:27:52 2006 -0700 [PATCH] mmc (mainly): add "or later" clause to licence statement. Clarify my (Pierre's) position on which GPL versions apply. The patch only touches the source files where I am the only major author. The people who have made the minor commits to the files have been contacted and have no issues with this change. Signed-off-by: Pierre Ossman Cc: Russell King Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit fb48388337182013bce811b9c336e8e64b0c858b Author: Olaf Hering Date: Sat Sep 30 23:27:51 2006 -0700 [PATCH] remove SYSRQ_KEY and related defines from ppc/sh/h8300 Remove unused global SYSRQ_KEY from ppc and powerpc Remove unused define SYSRQ_KEY from sh/sh64 and h8300 Remove unused pckbd_sysrq_xlate and kbd_sysrq_xlate usage Signed-off-by: Olaf Hering Cc: Paul Mundt Cc: Kazumoto Kojima Cc: Paul Mackerras Cc: Benjamin Herrenschmidt Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit e4e040887b8f136d00e253dcf584667d8cd560a6 Author: Jiri Slaby Date: Sat Sep 30 23:27:50 2006 -0700 [PATCH] isicom: correct firmware loading - loading of firmware didn't fail when something went wrong (returned 0). - pointer to frame was incremented only by sizeof(frame) excluding its data contents -- bad idea. - tell the card we're ready just after checking is complete, not before. Signed-off-by: Jiri Slaby Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 3f27100872b21e4cc70d07b96eeb3611b30bce63 Author: Diego Calleja Date: Sat Sep 30 23:27:49 2006 -0700 [PATCH] HOWTO: mention bughunting Signed-off-by: Diego Calleja Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 328a338f6f9943a0a77292315a25628b22f79fed Author: Rolf Eike Beer Date: Sat Sep 30 23:27:48 2006 -0700 [PATCH] rtc: remove superfluous call to call to cdev_del() If cdev_add() fails there is no good reason to call cdev_del(). Signed-off-by: Rolf Eike Beer Cc: Alessandro Zummo Cc: Dmitry Torokhov Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit cc088d10d02978641c7a2eecd18caf1e01e597b3 Author: Metathronius Galabant Date: Sat Sep 30 23:27:47 2006 -0700 [PATCH] cciss: remove unneeded spaces in output for attached volumes It removes the awkwards spaces after the "=" when displaying the geometry of the attached volumes. Before: cciss: using DAC cycles blocks= 286734240 block_size= 512 heads= 255, sectors= 32, cylinders= 35139 After: cciss: using DAC cycles blocks=286734240 block_size=512 heads=255, sectors=32, cylinders=35139 Signed-off-by: Metathronius Galabant Acked-by: Mike Miller Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit a077c1a075473910928676ed95acb393259d9310 Author: Paul Fulghum Date: Sat Sep 30 23:27:46 2006 -0700 [PATCH] synclink_gt: increase max devices Increase maximum number of devices. Signed-off-by: Paul Fulghum Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit cb10dc9ac7eea2c891df6b79b9ef1fbe59cb5429 Author: Paul Fulghum Date: Sat Sep 30 23:27:45 2006 -0700 [PATCH] synclink_gt: add bisync and monosync modes Add bisync and monosync serial protocol support to the synclink_gt driver. Signed-off-by: Paul Fulghum Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 3c1fcfe229e99752c74efb945a4a3f560be04204 Author: Martin Schwidefsky Date: Sat Sep 30 23:27:45 2006 -0700 [PATCH] Directed yield: direct yield of spinlocks for s390. Use the new diagnose 0x9c in the spinlock implementation for s390. It yields the remaining timeslice of the virtual cpu that tries to acquire a lock to the virtual cpu that is the current holder of the lock. Signed-off-by: Martin Schwidefsky Cc: Ingo Molnar Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit cdc39363d33506b0e067d41fc91f89d186bdf7f7 Author: Martin Schwidefsky Date: Sat Sep 30 23:27:44 2006 -0700 [PATCH] Directed yield: direct yield of spinlocks for powerpc Powerpc already has a directed yield for CONFIG_PREEMPT="n". To make it work with CONFIG_PREEMPT="y" as well the _raw_{spin,read,write}_relax primitives need to be defined to call __spin_yield() for spinlocks and __rw_yield() for rw-locks. Acked-by: Paul Mackerras Signed-off-by: Martin Schwidefsky Cc: Ingo Molnar Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit ef6edc9746dc2bfdacf44eefd5f881179971c478 Author: Martin Schwidefsky Date: Sat Sep 30 23:27:43 2006 -0700 [PATCH] Directed yield: cpu_relax variants for spinlocks and rw-locks On systems running with virtual cpus there is optimization potential in regard to spinlocks and rw-locks. If the virtual cpu that has taken a lock is known to a cpu that wants to acquire the same lock it is beneficial to yield the timeslice of the virtual cpu in favour of the cpu that has the lock (directed yield). With CONFIG_PREEMPT="n" this can be implemented by the architecture without common code changes. Powerpc already does this. With CONFIG_PREEMPT="y" the lock loops are coded with _raw_spin_trylock, _raw_read_trylock and _raw_write_trylock in kernel/spinlock.c. If the lock could not be taken cpu_relax is called. A directed yield is not possible because cpu_relax doesn't know anything about the lock. To be able to yield the lock in favour of the current lock holder variants of cpu_relax for spinlocks and rw-locks are needed. The new _raw_spin_relax, _raw_read_relax and _raw_write_relax primitives differ from cpu_relax insofar that they have an argument: a pointer to the lock structure. Signed-off-by: Martin Schwidefsky Cc: Ingo Molnar Cc: Paul Mackerras Cc: Haavard Skinnemoen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit e3e5fc91d9828a9b94a3992de47d47d2d2e34ec6 Author: Paul Collins Date: Sat Sep 30 23:27:41 2006 -0700 [PATCH] leds: turn LED off when changing triggers I was playing with LED triggers when I noticed that changing from heartbeat (or ide-disk) to "none" at the right moment would leave the LED stuck on. This is easy to reproduce by doing "find / >/dev/null" with the ide-disk trigger enabled and then switching to "none". Here is a patch that fixes the problem by explicitly turning the LED off after removing the existing trigger. Signed-off-by: Paul Collins Acked-by: Richard Purdie Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit fd7bcea35e7efb108c34ee2b3840942a3749cadb Author: Jim Cromie Date: Sat Sep 30 23:27:40 2006 -0700 [PATCH] Doc/lockdep-design: explain display of {state-bits} Signed-off-by: Jim Cromie Cc: Ingo Molnar Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit ce584f913870bbad8779a1130d4be48698560bf0 Author: Andrew Morton Date: Sat Sep 30 23:27:39 2006 -0700 [PATCH] submit checklist: mention headers_check Cc: David Woodhouse Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit c53421b18f205c5f97c604ae55c6a921f034b0f6 Author: Alexey Dobriyan Date: Sat Sep 30 23:27:37 2006 -0700 [PATCH] proper flags type of spin_lock_irqsave() Convert various spin_lock_irqsave() callers to correctly use `unsigned long'. Signed-off-by: Alexey Dobriyan Cc: Miles Bader Cc: "Luck, Tony" Acked-by: Kyle McMartin Cc: Jean Delvare Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit f5579f8c7d7e2c9eb62b566c511b21091a778157 Author: Josef 'Jeff' Sipek Date: Sat Sep 30 23:27:35 2006 -0700 [PATCH] VFS: Use SEEK_{SET, CUR, END} instead of hardcoded values VFS: Use SEEK_{SET,CUR,END} instead of hardcoded values Signed-off-by: Josef 'Jeff' Sipek Acked-by: Trond Myklebust Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 4636d93b461779cd95156cc5f5d53690a5d6a07b Author: Josef 'Jeff' Sipek Date: Sat Sep 30 23:27:34 2006 -0700 [PATCH] EICON ISDN: Removed unused definitions for OS_SEEK_* EICON ISDN: Removed unused definitions for OS_SEEK_* Signed-off-by: Josef 'Jeff' Sipek Cc: Karsten Keil Acked-by: Armin Schindler Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 930ff81c595e7923575cd7c0b8d7284ac1b3815e Author: Josef 'Jeff' Sipek Date: Sat Sep 30 23:27:33 2006 -0700 [PATCH] MBCS: Use SEEK_{SET, CUR, END} instead of hardcoded values MBCS: Use SEEK_{SET,CUR,END} instead of hardcoded values Signed-off-by: Josef 'Jeff' Sipek Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit edceeaf50be1764db4aa7c1b19e540067a051e77 Author: Alan Cox Date: Sat Sep 30 23:27:32 2006 -0700 [PATCH] via* : switch to pci_get_device refcounted PCI API If we can clean up these remainders we can finally delete pci_find_* Signed-off-by: Alan Cox Cc: Greg KH Acked-by: Benjamin Herrenschmidt Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 40cddf2cbd02aa830254afcd5a1a21b4e882a189 Author: Alan Cox Date: Sat Sep 30 23:27:30 2006 -0700 [PATCH] sis5513: Switch to pci refcounting Mirrors the drivers/ata version, hold a reference to the host bridge while we are doing setup. Signed-off-by: Alan Cox Cc: Greg KH Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 970a61363be4a6633de0fbbe6fe3a249238c4acc Author: Alan Cox Date: Sat Sep 30 23:27:29 2006 -0700 [PATCH] serverworks: Switch to pci refcounted interfaces As we don't support hotplug we end up leaking an isa_dev reference which if unload was ever added we would drop at the end of unloading. This is fine because we do genuinely need the isa_dev pointer until unload. Signed-off-by: Alan Cox Cc: Greg KH Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 1424e5044882f92b8c51540033b229723e1f2651 Author: Alan Cox Date: Sat Sep 30 23:27:28 2006 -0700 [PATCH] piix: Use refcounted interface when searching for a 450NX Simple conversion Signed-off-by: Alan Cox Cc: Greg KH Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit a78b464a283e55feb286647d9662f5cb8f235500 Author: Alan Cox Date: Sat Sep 30 23:27:27 2006 -0700 [PATCH] cs46xx OSS: switch to pci_get_device Fairly trivial change in this case Signed-off-by: Alan Cox Cc: Greg KH Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 14fef6414be49d59f4784eeef8d9c3f468993205 Author: Alan Cox Date: Sat Sep 30 23:27:26 2006 -0700 [PATCH] via82cxxx_audio: Use pci_get_device pci_find_device is not refcounting and should be getting killed off. Signed-off-by: Alan Cox Cc: Greg KH Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit f2443ab6c485701576e9116ee44817e66adafd5a Author: Ross Biro Date: Sat Sep 30 23:27:25 2006 -0700 [PATCH] allow /proc/config.gz to be built as a module The driver for /proc/config.gz consumes rather a lot of memory and it is in fact possible to build it as a module. In some ways this is a bit risky, because the .config which is used for compiling kernel/configs.c isn't necessarily the same as the .config which was used to build vmlinux. But OTOH the potential memory savings are decent, and it'd be fairly dumb to build your configs.o with a different .config. Signed-off-by: Andrew Morton Cc: "Randy.Dunlap" Cc: Sam Ravnborg Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 756184b7d771992f4fb1998d62aebcaf3e028076 Author: Cal Peake Date: Sat Sep 30 23:27:24 2006 -0700 [PATCH] CodingStyle cleanup for kernel/sys.c Fix up kernel/sys.c to be consistent with CodingStyle and the rest of the file. Signed-off-by: Cal Peake Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit c7bce3097c0f9bbed76ee6fd03742f2624031a45 Author: Alan Cox Date: Sat Sep 30 23:27:24 2006 -0700 [PATCH] serial: Fix up offenders peering at baud bits directly Stop some other people peering into the baud bits on their own and make them use the tty_get_baud_rate() helper as a preperation for the move to the new termios. Corrected dependancy previous one had on new termios structs Signed-off-by: Alan Cox Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 00988a3514bbc0cce781c067cf52559741d88b80 Author: Mike Miller (OS Dev) Date: Sat Sep 30 23:27:23 2006 -0700 [PATCH] cciss: support for >2TB logical volumes Add support for logical volumes >2TB. All SAS/SATA controllers support large volumes. Signed-off-by: Mike Miller Cc: Jens Axboe Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 82b0547cfae1fb2ee26cad588f6d49a347d24740 Author: Alexey Dobriyan Date: Sat Sep 30 23:27:22 2006 -0700 [PATCH] Create fs/utimes.c * fs/open.c is getting bit crowdy * preparation to lutimes(2) Signed-off-by: Alexey Dobriyan Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 52978be636374c4bfb61220b37fa12f55a071c46 Author: Alexey Dobriyan Date: Sat Sep 30 23:27:21 2006 -0700 [PATCH] kmemdup: some users Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 1a2f67b459bb7846d4a15924face63eb2683acc2 Author: Alexey Dobriyan Date: Sat Sep 30 23:27:20 2006 -0700 [PATCH] kmemdup: introduce One of idiomatic ways to duplicate a region of memory is dst = kmalloc(len, GFP_KERNEL); if (!dst) return -ENOMEM; memcpy(dst, src, len); which is neat code except a programmer needs to write size twice. Which sometimes leads to mistakes. If len passed to kmalloc is smaller that len passed to memcpy, it's straight overwrite-beyond-end. If len passed to memcpy is smaller than len passed to kmalloc, it's either a) legit behaviour ;-), or b) cloned buffer will contain garbage in second half. Slight trolling of commit lists shows several duplications bugs done exactly because of diverged lenghts: Linux: [CRYPTO]: Fix memcpy/memset args. [PATCH] memcpy/memset fixes OpenBSD: kerberosV/src/lib/asn1: der_copy.c:1.4 If programmer is given only one place to play with lengths, I believe, such mistakes could be avoided. With kmemdup, the snippet above will be rewritten as: dst = kmemdup(src, len, GFP_KERNEL); if (!dst) return -ENOMEM; This also leads to smaller code (kzalloc effect). Quick grep shows 200+ places where kmemdup() can be used. Signed-off-by: Alexey Dobriyan Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 9442e691e4aec85eba43ac60a3e77c77fd2e73a4 Author: Takashi Iwai Date: Sat Sep 30 23:27:19 2006 -0700 [PATCH] maximum latency tracking: ALSA support Add maximum latency tracking to the ALSA subsystem for PCM playback. In ALSA, the playback application controls the buffer size and thus indirectly the period of latency that it can deal with. This patch uses 75% of the total available latency as threshold to announce to the latency subsystem; While 75% is a crude heuristic it's a quite reasonable one; the remaining 25% can be used for all driver processing for the next samples which is also proportional to the size of the buffer. With ogg123 a latency setting of about 4msec was seen (at 44Khz), while with the "play" command a much longer maximum tolerable latency was seen. Other, more multimedia oriented players as well as games, will have a lot smaller buffers to allow better synchronization and those will actually get into the latency domains where there is impact on the power management rules. Signed-off-by: Takashi Iwai Signed-off-by: Arjan van de Ven Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 5c87579e65ee4f419b2369407f82326d38b5d2d8 Author: Arjan van de Ven Date: Sat Sep 30 23:27:17 2006 -0700 [PATCH] maximum latency tracking infrastructure Add infrastructure to track "maximum allowable latency" for power saving policies. The reason for adding this infrastructure is that power management in the idle loop needs to make a tradeoff between latency and power savings (deeper power save modes have a longer latency to running code again). The code that today makes this tradeoff just does a rather simple algorithm; however this is not good enough: There are devices and use cases where a lower latency is required than that the higher power saving states provide. An example would be audio playback, but another example is the ipw2100 wireless driver that right now has a very direct and ugly acpi hook to disable some higher power states randomly when it gets certain types of error. The proposed solution is to have an interface where drivers can * announce the maximum latency (in microseconds) that they can deal with * modify this latency * give up their constraint and a function where the code that decides on power saving strategy can query the current global desired maximum. This patch has a user of each side: on the consumer side, ACPI is patched to use this, on the producer side the ipw2100 driver is patched. A generic maximum latency is also registered of 2 timer ticks (more and you lose accurate time tracking after all). While the existing users of the patch are x86 specific, the infrastructure is not. I'd like to ask the arch maintainers of other architectures if the infrastructure is generic enough for their use (assuming the architecture has such a tradeoff as concept at all), and the sound/multimedia driver owners to look at the driver facing API to see if this is something they can use. [akpm@osdl.org: cleanups] Signed-off-by: Arjan van de Ven Signed-off-by: Ingo Molnar Acked-by: Jesse Barnes Cc: "Brown, Len" Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 130c6b98984a058068ea595c465fba2beb48b9ef Author: Richard Knutsson Date: Sat Sep 30 23:27:15 2006 -0700 [PATCH] fs/partitions: Conversion to generic boolean Conversion of booleans to: generic-boolean.patch (2006-08-23) Signed-off-by: Richard Knutsson Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 4d81715fc5dfa1680ad47d7edf3ac4a74c5bf104 Author: Richard Knutsson Date: Sat Sep 30 23:27:14 2006 -0700 [PATCH] fs/jfs: Conversion to generic boolean Conversion of booleans to: generic-boolean.patch (2006-08-23) Signed-off-by: Richard Knutsson Cc: Dave Kleikamp Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit c49c31115067bc7c9a51ffdc735a515151dfa3eb Author: Richard Knutsson Date: Sat Sep 30 23:27:12 2006 -0700 [PATCH] fs/ntfs: Conversion to generic boolean Conversion of booleans to: generic-boolean.patch (2006-08-23) Signed-off-by: Richard Knutsson Signed-off-by: Anton Altaparmakov Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 6e21828743247270d09a86756a0c11702500dbfb Author: Richard Knutsson Date: Sat Sep 30 23:27:11 2006 -0700 [PATCH] Generic boolean This patch defines: * a generic boolean-type, named 'bool' * aliases to 0 and 1, named 'false' and 'true' Removing colliding definitions of 'bool', 'false' and 'true'. Signed-off-by: Richard Knutsson Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit be5b7a8987f23281b146f22b13e2079f448c69c7 Author: Andrew Morton Date: Sat Sep 30 23:27:10 2006 -0700 [PATCH] arch/i386/pci/mmconfig.c tweaks - Add soothing comment - uninline thrice-called function Cc: OGAWA Hirofumi Cc: Andi Kleen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 45e0b78b0532f92c01e363dd4287617c5be4574f Author: Keith Mannthey Date: Sat Sep 30 23:27:09 2006 -0700 [PATCH] hot-add-mem x86_64: use CONFIG_MEMORY_HOTPLUG_RESERVE The api for hot-add memory already has a construct for finding nodes based on an address, memory_add_physaddr_to_nid. This patch allows the fucntion to do something besides return 0. It uses the nodes_add infomation to lookup to node info for a hot add event. Signed-off-by: Keith Mannthey Cc: KAMEZAWA Hiroyuki Cc: Andi Kleen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 53947027ad90542ddb2bb746e3175827c270610a Author: Keith Mannthey Date: Sat Sep 30 23:27:08 2006 -0700 [PATCH] hot-add-mem x86_64: use CONFIG_MEMORY_HOTPLUG_SPARSE Migate CONFIG_MEMORY_HOTPLUG to CONFIG_MEMORY_HOTPLUG_SPARSE where needed. Signed-off-by: Keith Mannthey Cc: KAMEZAWA Hiroyuki Cc: Andi Kleen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 8c2676a5870ab15cbeea9f826266bc946fe3cc26 Author: Keith Mannthey Date: Sat Sep 30 23:27:07 2006 -0700 [PATCH] hot-add-mem x86_64: memory_add_physaddr_to_nid node fixup In cases where the acpi memory-add event does not containe the pxm (node) infomation allow the driver to look up node info based on the address. The acpi_get_node call returns -1 if it can't decode the pxm info, this causes add_memory to panic. acpi_get_node would have to decode the resource from the handle (a lenghty proposition). This seems to be the cleanist point to interject the hook. [kamezawa.hiroyu@jp.fujitsu.com: build fixes] [y-goto@jp.fujitsu.com: build fixes] Signed-off-by: Keith Mannthey Cc: KAMEZAWA Hiroyuki Cc: Andi Kleen Signed-off-by: KAMEZAWA Hiroyuki Signed-off-by: Yasunori Goto Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 4942e998b40b8f6080930ec16442444e9930aee5 Author: Keith Mannthey Date: Sat Sep 30 23:27:06 2006 -0700 [PATCH] hot-add-mem x86_64: memory_add_physaddr_to_nid enable The api for hot-add memory already has a construct for finding nodes based on an address, memory_add_physaddr_to_nid. This patch allows the fucntion to do something besides return 0. It uses the nodes_add infomation to lookup to node info for a hot add event. Signed-off-by: Keith Mannthey Cc: KAMEZAWA Hiroyuki Cc: Andi Kleen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 71efa8fdc55e70ec6687c897a30759f0a2c2ad7e Author: Keith Mannthey Date: Sat Sep 30 23:27:05 2006 -0700 [PATCH] hot-add-mem x86_64: Enable SPARSEMEM in srat.c Enable x86_64 srat.c to share code between both reserve and sparsemem based add memory paths. Both paths need the hot-add area node locality infomration (nodes_add). This code refactors the code path to allow this. Signed-off-by: Keith Mannthey Cc: KAMEZAWA Hiroyuki Cc: Andi Kleen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit ec69acbb1191df671ff8e07c8e146619a5c53f70 Author: Keith Mannthey Date: Sat Sep 30 23:27:05 2006 -0700 [PATCH] hot-add-mem x86_64: Kconfig changes Create Kconfig namespace for MEMORY_HOTPLUG_RESERVE and MEMORY_HOTPLUG_SPARSE. This is needed to create a disticiton between the 2 paths. Selecting the high level opiton of MEMORY_HOTPLUG will get you MEMORY_HOTPLUG_SPARSE if you have sparsemem enabled or MEMORY_HOTPLUG_RESERVE if you are x86_64 with discontig and ACPI numa support. Signed-off-by: Keith Mannthey Cc: KAMEZAWA Hiroyuki Cc: Andi Kleen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit f28c5edc06ecd8068b38b7662ad19f4d20d741af Author: Keith Mannthey Date: Sat Sep 30 23:27:04 2006 -0700 [PATCH] hot-add-mem x86_64: fixup externs Fix up externs in memory_hotplug.c. Cleanup. Signed-off-by: Keith Mannthey Cc: KAMEZAWA Hiroyuki Cc: Andi Kleen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 236561e5df009f79f1939e3ca269b9b6f18092f5 Author: Alan Cox Date: Sat Sep 30 23:27:03 2006 -0700 [PATCH] PCI quirks update This fixes two things Firstly someone mistakenly used "errata" for the singular. This causes Dave Woodhouse to emit diagnostics whenever the string is read, and so should be fixed. Secondly the AMD AGP tunnel has an erratum which causes hangs if you try and do direct PCI to AGP transfers in some cases. We have a flag for PCI/PCI failures but we need a different flag for this really as in this case we don't want to stop PCI/PCI transfers using things like IOAT and the new RAID offload work. I'll post some updates to make proper use of the PCIAGP flag in the media/video drivers to Mauro. Signed-off-by: Alan Cox Cc: David Woodhouse Signed-off-by: Greg Kroah-Hartman Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 3fcd03e07008ec0f667dfb7626171165699ea5c2 Author: Gavin Lambert Date: Sat Sep 30 23:27:01 2006 -0700 [PATCH] NOMMU: don't try and give NULL to fput() Don't try and give NULL to fput() in the error handling in do_mmap_pgoff() as it'll cause an oops. Signed-off-by: David Howells Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit ab8e92efcf3f7972f30033cad75f180aef4f3abc Author: Andrew Morton Date: Sat Sep 30 23:26:59 2006 -0700 [PATCH] list_del-debug fix These two BUG_ON()s are redundant and undesired: we're checking for this condition further on in the function, only better. Cc: Dave Jones Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit bfeeb0f57940b143a55dcc7ee88e8842108d9145 Author: Dave Jones Date: Sat Sep 30 23:19:38 2006 -0400 [CPUFREQ] Make acpi-cpufreq unsticky again. This caused suspend/resume regressions. Signed-off-by: Dave Jones commit 1bdfd554be94def718323659173517c5d4a69d25 Author: Jeff Garzik Date: Sat Sep 30 21:28:22 2006 -0400 [PATCH] SCSI: fix request flag-related build breakage The ->flags in struct request was split into two variables, in a recent changeset. The merge of this change forgot to update SCSI's libsas, probably because libsas was a very recent merge. Signed-off-by: Jeff Garzik Signed-off-by: Linus Torvalds commit cb5d9e0948122dd8b808550574d95bd60674ba3b Author: Andrew Morton Date: Sat Sep 30 21:23:44 2006 -0400 [PATCH] scsi: device_reprobe() can fail device_reprobe() should return an error code. When it does so, scsi_device_reprobe() should propagate it back. Acked-by: Jeff Garzik Signed-off-by: Andrew Morton Signed-off-by: James Bottomley Signed-off-by: Linus Torvalds commit 51d7513a8a54e4210d358ff1dbd34daab99a6638 Author: Jens Axboe Date: Sat Sep 30 21:14:05 2006 +0200 [PATCH] Only enable CONFIG_BLOCK option for embedded It's too easy for people to shoot themselves in the foot, and it only makes sense for embedded folks anyway. Signed-off-by: Jens Axboe commit 059af497c23492cb1ddcbba11c09dad385960bc0 Author: Jens Axboe Date: Thu Sep 21 20:37:22 2006 +0200 [PATCH] blk_queue_start_tag() shared map race fix If we share the tag map between two or more queues, then we cannot use __set_bit() to set the bit. In fact we need to make sure we atomically acquire this tag, so loop using test_and_set_bit() to protect from that. Noticed by Mike Christie Signed-off-by: Jens Axboe commit 0fe23479577124bd2687e6783e39fa0fa4c28005 Author: Jens Axboe Date: Mon Sep 4 15:41:16 2006 +0200 [PATCH] Update axboe@suse.de email address As people often look for the copyright in files to see who to mail, update the link to a neutral one. Signed-off-by: Jens Axboe commit 50be345560f1ffdcb15cc0e146416b80529a2ef2 Author: Milan Broz Date: Mon Sep 4 15:37:57 2006 +0200 [PATCH] fix creating zero sized bio mempools in low memory system In the very low memory systems is in the init_bio call scale parameter set to zero and it leads to creating zero sized mempool. This patch prevents pool_entries parameter become zero, so the created pool have at least 1 entry. Mempool with 0 entries lead to incorrect behaviour of mempool_free. (Alloc requests are not waken up and system stalls in mempool_alloc->ioschedule). Signed-off-by: Milan Broz Signed-off-by: Jens Axboe commit bcfd8d36151e531e1c6c731f1fbf792509a1c494 Author: Andrew Morton Date: Thu Aug 31 12:56:06 2006 +0200 [PATCH] CONFIG_BLOCK: blk_congestion_wait() fix Don't just do nothing: it'll cause busywaits all over writeback and page reclaim. For now, take a fixed-length nap. Will improve when NFS starts waking up throttled processes. Signed-off-by: Andrew Morton Signed-off-by: Jens Axboe commit 5e6d12b2c8be2cac099df6dcb8b26884f24d2621 Author: Andrew Morton Date: Thu Aug 31 12:55:23 2006 +0200 [PATCH] CONFIG_BLOCK internal.h cleanups - forward declare struct superblock - use inlines, not macros Signed-off-by: Andrew Morton Signed-off-by: Jens Axboe commit 65934a9a028b88e83e2b0f8b36618fe503349f8e Author: David Howells Date: Tue Aug 29 19:06:31 2006 +0100 [PATCH] BLOCK: Make USB storage depend on SCSI rather than selecting it [try #6] This makes CONFIG_USB_STORAGE depend on CONFIG_SCSI rather than selecting it, as selecting it makes CONFIG_USB_STORAGE override the dependencies of SCSI, causing it to turn on even if they aren't all met. Signed-Off-By: David Howells Signed-off-by: Jens Axboe commit 9361401eb7619c033e2394e4f9f6d410d6719ac7 Author: David Howells Date: Sat Sep 30 20:45:40 2006 +0200 [PATCH] BLOCK: Make it possible to disable the block layer [try #6] Make it possible to disable the block layer. Not all embedded devices require it, some can make do with just JFFS2, NFS, ramfs, etc - none of which require the block layer to be present. This patch does the following: (*) Introduces CONFIG_BLOCK to disable the block layer, buffering and blockdev support. (*) Adds dependencies on CONFIG_BLOCK to any configuration item that controls an item that uses the block layer. This includes: (*) Block I/O tracing. (*) Disk partition code. (*) All filesystems that are block based, eg: Ext3, ReiserFS, ISOFS. (*) The SCSI layer. As far as I can tell, even SCSI chardevs use the block layer to do scheduling. Some drivers that use SCSI facilities - such as USB storage - end up disabled indirectly from this. (*) Various block-based device drivers, such as IDE and the old CDROM drivers. (*) MTD blockdev handling and FTL. (*) JFFS - which uses set_bdev_super(), something it could avoid doing by taking a leaf out of JFFS2's book. (*) Makes most of the contents of linux/blkdev.h, linux/buffer_head.h and linux/elevator.h contingent on CONFIG_BLOCK being set. sector_div() is, however, still used in places, and so is still available. (*) Also made contingent are the contents of linux/mpage.h, linux/genhd.h and parts of linux/fs.h. (*) Makes a number of files in fs/ contingent on CONFIG_BLOCK. (*) Makes mm/bounce.c (bounce buffering) contingent on CONFIG_BLOCK. (*) set_page_dirty() doesn't call __set_page_dirty_buffers() if CONFIG_BLOCK is not enabled. (*) fs/no-block.c is created to hold out-of-line stubs and things that are required when CONFIG_BLOCK is not set: (*) Default blockdev file operations (to give error ENODEV on opening). (*) Makes some /proc changes: (*) /proc/devices does not list any blockdevs. (*) /proc/diskstats and /proc/partitions are contingent on CONFIG_BLOCK. (*) Makes some compat ioctl handling contingent on CONFIG_BLOCK. (*) If CONFIG_BLOCK is not defined, makes sys_quotactl() return -ENODEV if given command other than Q_SYNC or if a special device is specified. (*) In init/do_mounts.c, no reference is made to the blockdev routines if CONFIG_BLOCK is not defined. This does not prohibit NFS roots or JFFS2. (*) The bdflush, ioprio_set and ioprio_get syscalls can now be absent (return error ENOSYS by way of cond_syscall if so). (*) The seclvl_bd_claim() and seclvl_bd_release() security calls do nothing if CONFIG_BLOCK is not set, since they can't then happen. Signed-Off-By: David Howells Signed-off-by: Jens Axboe commit d366e40a1cabd453be6e2609caa7e12f9ca17b1f Author: David Howells Date: Tue Aug 29 19:06:29 2006 +0100 [PATCH] BLOCK: Remove no-longer necessary linux/buffer_head.h inclusions [try #6] Remove inclusions of linux/buffer_head.h that are no longer necessary due to the transfer of a number of things out of there. Signed-Off-By: David Howells Signed-off-by: Jens Axboe commit 4cb50dc2eaeddb0bc20bc4cd108c4fec99f5045a Author: David Howells Date: Tue Aug 29 19:06:27 2006 +0100 [PATCH] BLOCK: Remove no-longer necessary linux/mpage.h inclusions [try #6] Remove inclusions of linux/mpage.h that are no longer necessary due to the transfer of generic_writepages(). Signed-Off-By: David Howells Signed-off-by: Jens Axboe commit 188f83dfe0eeecd1427d0d255cc97dbf7ef6b4b7 Author: David Howells Date: Thu Aug 31 12:50:04 2006 +0200 [PATCH] BLOCK: Move the msdos device ioctl compat stuff to the msdos driver [try #6] Move the msdos device ioctl compat stuff from fs/compat_ioctl.c to the msdos driver so that the msdos header file doesn't need to be included. Signed-Off-By: David Howells Signed-off-by: Jens Axboe commit 52a700c5675f399c07e6e57328291e57f13ef3bb Author: David Howells Date: Tue Aug 29 19:06:23 2006 +0100 [PATCH] BLOCK: Move the Ext3 device ioctl compat stuff to the Ext3 driver [try #6] Move the Ext3 device ioctl compat stuff from fs/compat_ioctl.c to the Ext3 driver so that the Ext3 header file doesn't need to be included. Signed-Off-By: David Howells Signed-off-by: Jens Axboe commit e322ff07fb2d0f05c02d85e7c6b30d23f308c20f Author: David Howells Date: Tue Aug 29 19:06:20 2006 +0100 [PATCH] BLOCK: Move the Ext2 device ioctl compat stuff to the Ext2 driver [try #6] Move the Ext2 device ioctl compat stuff from fs/compat_ioctl.c to the Ext2 driver so that the Ext2 header file doesn't need to be included. Signed-Off-By: David Howells Signed-off-by: Jens Axboe commit 52b499c438ff60991eb3855ca090782569b3e8cf Author: David Howells Date: Tue Aug 29 19:06:18 2006 +0100 [PATCH] BLOCK: Move the ReiserFS device ioctl compat stuff to the ReiserFS driver [try #6] Move the ReiserFS device ioctl compat stuff from fs/compat_ioctl.c to the ReiserFS driver so that the ReiserFS header file doesn't need to be included. Signed-Off-By: David Howells Signed-off-by: Jens Axboe commit 36695673b012096228ebdc1b39a6a5850daa474e Author: David Howells Date: Tue Aug 29 19:06:16 2006 +0100 [PATCH] BLOCK: Move common FS-specific ioctls to linux/fs.h [try #6] Move common FS-specific ioctls from linux/ext2_fs.h to linux/fs.h as FS_IOC_* and FS_IOC32_* and have the users of them use those as a base. Also move the GETFLAGS/SETFLAGS flags to linux/fs.h as FS_*_FL macros, and then have the other users use them as a base. Signed-Off-By: David Howells Signed-off-by: Jens Axboe commit 863d5b822c02d0e7215fb84ca79e9f8c3e35f04e Author: David Howells Date: Tue Aug 29 19:06:14 2006 +0100 [PATCH] BLOCK: Move the loop device ioctl compat stuff to the loop driver [try #6] Move the loop device ioctl compat stuff from fs/compat_ioctl.c to the loop driver so that the loop header file doesn't need to be included. Signed-Off-By: David Howells Signed-off-by: Jens Axboe commit b71e8a4ce03b3098c7801ee5e6e08d1a39a226c2 Author: David Howells Date: Tue Aug 29 19:06:11 2006 +0100 [PATCH] BLOCK: Move __invalidate_device() to block_dev.c [try #6] Move __invalidate_device() from fs/inode.c to fs/block_dev.c so that it can more easily be disabled when the block layer is disabled. Signed-Off-By: David Howells Signed-off-by: Jens Axboe commit 811d736f9e8013966e1a5a930c0db09508bdbb15 Author: David Howells Date: Tue Aug 29 19:06:09 2006 +0100 [PATCH] BLOCK: Dissociate generic_writepages() from mpage stuff [try #6] Dissociate the generic_writepages() function from the mpage stuff, moving its declaration to linux/mm.h and actually emitting a full implementation into mm/page-writeback.c. The implementation is a partial duplicate of mpage_writepages() with all BIO references removed. It is used by NFS to do writeback. Signed-Off-By: David Howells Signed-off-by: Jens Axboe commit 7b0de42d7c5a471741ede4e71727d88000e6ea59 Author: David Howells Date: Tue Aug 29 19:06:07 2006 +0100 [PATCH] BLOCK: Remove dependence on existence of blockdev_superblock [try #6] Move blockdev_superblock extern declaration from fs/fs-writeback.c to a headerfile and remove the dependence on it by wrapping it in a macro. Signed-Off-By: David Howells Signed-off-by: Jens Axboe commit 07f3f05c1e3052b8656129b2a5aca9f888241a34 Author: David Howells Date: Sat Sep 30 20:52:18 2006 +0200 [PATCH] BLOCK: Move extern declarations out of fs/*.c into header files [try #6] Create a new header file, fs/internal.h, for common definitions local to the sources in the fs/ directory. Move extern definitions that should be in header files from fs/*.c to fs/internal.h or other main header files where they span directories. Signed-Off-By: David Howells Signed-off-by: Jens Axboe commit 65e6f5bc8149165efb9d7bdbd142bb837d5edfeb Author: David Howells Date: Tue Aug 29 19:06:03 2006 +0100 [PATCH] BLOCK: Don't call block_sync_page() from AFS [try #6] The AFS filesystem no longer needs to override its sync_page() op. Signed-Off-By: David Howells Signed-off-by: Jens Axboe commit 831058dec3735665fe91bd0d37b6a8cf56b91abd Author: David Howells Date: Tue Aug 29 19:06:00 2006 +0100 [PATCH] BLOCK: Separate the bounce buffering code from the highmem code [try #6] Move the bounce buffer code from mm/highmem.c to mm/bounce.c so that it can be more easily disabled when the block layer is disabled. !!!NOTE!!! There may be a bug in this code: Should init_emergency_pool() be contingent on CONFIG_HIGHMEM? Signed-Off-By: David Howells Signed-off-by: Jens Axboe commit b398f6bff93a247d2a7099e92905374966e4558f Author: David Howells Date: Tue Aug 29 19:05:58 2006 +0100 [PATCH] BLOCK: Stop fallback_migrate_page() from using page_has_buffers() [try #6] Stop fallback_migrate_page() from using page_has_buffers() since that might not be available. Use PagePrivate() instead since that's more general. Signed-Off-By: David Howells Signed-off-by: Jens Axboe commit 0d67a46df0125e20d14f12dbd3646f1f1bf23e8c Author: David Howells Date: Tue Aug 29 19:05:56 2006 +0100 [PATCH] BLOCK: Remove duplicate declaration of exit_io_context() [try #6] Remove the duplicate declaration of exit_io_context() from linux/sched.h. Signed-Off-By: David Howells Signed-off-by: Jens Axboe commit cf9a2ae8d49948f861b56e5333530e491a9da190 Author: David Howells Date: Tue Aug 29 19:05:54 2006 +0100 [PATCH] BLOCK: Move functions out of buffer code [try #6] Move some functions out of the buffering code that aren't strictly buffering specific. This is a precursor to being able to disable the block layer. (*) Moved some stuff out of fs/buffer.c: (*) The file sync and general sync stuff moved to fs/sync.c. (*) The superblock sync stuff moved to fs/super.c. (*) do_invalidatepage() moved to mm/truncate.c. (*) try_to_release_page() moved to mm/filemap.c. (*) Moved some related declarations between header files: (*) declarations for do_invalidatepage() and try_to_release_page() moved to linux/mm.h. (*) __set_page_dirty_buffers() moved to linux/buffer_head.h. Signed-Off-By: David Howells Signed-off-by: Jens Axboe commit 4090959aee403817ff386415f9bc602c1a0882ef Author: Martin Peschke Date: Tue Aug 29 19:52:55 2006 +0200 [PATCH] blktrace: cleanup using on_each_cpu This patch kills a few lines of code in blktrace by making use of on_each_cpu(). Signed-off-by: Martin Peschke Signed-off-by: Jens Axboe commit cf342e52e3117391868fb4bd900ce772a27a5a1a Author: Oleg Nesterov Date: Tue Aug 29 09:17:41 2006 +0200 [PATCH] Don't need to disable interrupts for tasklist_lock Signed-off-by: Oleg Nesterov Signed-off-by: Jens Axboe commit 25034d7a83cf77667f3d65822484b305d4be6b25 Author: Oleg Nesterov Date: Tue Aug 29 09:15:14 2006 +0200 [PATCH] exit_io_context: don't disable irqs We don't need to disable irqs to clear current->io_context, it is protected by ->alloc_lock. Even IF it was possible to submit I/O from IRQ on behalf of current this irq_disable() can't help: current_io_context() will re-instantiate ->io_context after irq_enable(). We don't need task_lock() or local_irq_disable() to clear ioc->task. This can't prevent other CPUs from playing with our io_context anyway. Signed-off-by: Oleg Nesterov Signed-off-by: Jens Axboe commit 9bf09c23853bb8009625c2ec60dc6beb9472d3ca Author: Jens Axboe Date: Sat Sep 30 20:31:11 2006 +0200 [PATCH] SCSI: scsi_done_q is unused It is a leftover from before the softirq completion was migrated to the block layer. Signed-off-by: Jens Axboe commit 7457e6e2d7406c7009e9ad03db1335fe93b5fb71 Author: Jens Axboe Date: Sun Jul 23 02:12:01 2006 +0200 [PATCH] blktrace: support for logging metadata reads Signed-off-by: Jens Axboe commit 374f84ac39ec7829a57a66efd5125d3561ff0e00 Author: Jens Axboe Date: Sun Jul 23 01:42:19 2006 +0200 [PATCH] cfq-iosched: use metadata read flag Give meta data reads preference over regular reads, as the process often needs to get that out of the way to do the io it was actually interested in. Signed-off-by: Jens Axboe commit caa38fb0f481a3cb732b115cb59bfa6b59b6daaf Author: Jens Axboe Date: Sun Jul 23 01:41:26 2006 +0200 [PATCH] ext3: make meta data reads use READ_META Signed-off-by: Jens Axboe commit 5404bc7a87b9949cf61e0174b21f80e73239ab25 Author: Jens Axboe Date: Thu Aug 10 09:01:02 2006 +0200 [PATCH] Allow file systems to differentiate between data and meta reads We can use this information for making more intelligent priority decisions, and it will also be useful for blktrace. Signed-off-by: Jens Axboe commit da20a20f3b5c175648fa797c899dd577e4dacb51 Author: Jens Axboe Date: Fri Jul 21 20:30:28 2006 +0200 [PATCH] ll_rw_blk: allow more flexibility for read_ahead_kb store It can make sense to set read-ahead larger than a single request. We should not be enforcing such policy on the user. Additionally, using the BLKRASET ioctl doesn't impose such a restriction. So additionally we now expose identical behaviour through the two. Issue also reported by Anton Signed-off-by: Jens Axboe commit bf57225670bcbeb357182d800736b4782cde7295 Author: Jens Axboe Date: Wed Jul 19 20:29:12 2006 +0200 [PATCH] cfq-iosched: improve queue preemption Don't touch the current queues, just make sure that the wanted queue is selected next. Simplifies the logic. Signed-off-by: Jens Axboe commit dc72ef4ae35c2016fb594bcc85ce871376682174 Author: Jens Axboe Date: Thu Jul 20 14:54:05 2006 +0200 [PATCH] Add blk_start_queueing() helper CFQ implements this on its own now, but it's really block layer knowledge. Tells a device queue to start dispatching requests to the driver, taking care to unplug if needed. Also fixes the issue where as/cfq will invoke a stopped queue, which we really don't want. Signed-off-by: Jens Axboe commit 981a79730d586335ef8f942c83bdf2b1de6d4e3d Author: Jens Axboe Date: Wed Jul 19 14:56:28 2006 +0200 [PATCH] cfq-iosched: kill the empty_list No point in having a place holder list just for empty queues, so remove it. It's not used for anything other than to keep ->cfq_list busy. Signed-off-by: Jens Axboe commit 53b03744e5699832e6c5b04f2ec506d8b0c50c38 Author: Jens Axboe Date: Fri Jul 28 09:48:51 2006 +0200 [PATCH] cfq-iosched: Kill O(N) runtime of cfq_resort_rr_list() Currently it scales with number of processes in that priority group, which is potentially not very nice as it's called quite often. Basically we always need to do tail inserts, except for the case of a new process. So just mark/detect a queue as such. Signed-off-by: Jens Axboe commit b5deef901282628d88c784f4c9d2f0583ec3b355 Author: Jens Axboe Date: Wed Jul 19 23:39:40 2006 +0200 [PATCH] Make sure all block/io scheduler setups are node aware Some were kmalloc_node(), some were still kmalloc(). Change them all to kmalloc_node(). Signed-off-by: Jens Axboe commit a3b05e8f58c95dfccbf2c824d0c68e5990571f24 Author: Jens Axboe Date: Fri Jul 28 09:36:46 2006 +0200 [PATCH] Kill various deprecated/unused block layer defines/functions Signed-off-by: Jens Axboe commit 1ea25ecb7256978947c258f08a30c878eebe9edb Author: Jens Axboe Date: Tue Jul 18 22:24:11 2006 +0200 [PATCH] Audit block layer inlines Kill a few inlines that bring in too much code to more than one location Shrinks kernel text by about 300 bytes on 32-bit x86. Signed-off-by: Jens Axboe commit 4050cf1674c632c73801a561689543d4887df2ef Author: Jens Axboe Date: Wed Jul 19 05:07:12 2006 +0200 [PATCH] cfq-iosched: use new io context counting mechanism It's ok if the read path is a lot more costly, as long as inc/dec is really cheap. The inc/dec will happen for each created/freed io context, while the reading only happens when a disk queue exits. Signed-off-by: Jens Axboe commit e4313dd423148fa729571b50c06cbc0bedf5c494 Author: Jens Axboe Date: Wed Jul 19 05:10:01 2006 +0200 [PATCH] as-iosched: use new io context counting mechanism It's ok if the read path is a lot more costly, as long as inc/dec is really cheap. The inc/dec will happen for each created/freed io context, while the reading only happens when a disk queue exits. Signed-off-by: Jens Axboe commit 4a893e837bb470867d74c05d6c6b97bba5a96185 Author: Jens Axboe Date: Sat Jul 22 15:37:43 2006 +0200 [PATCH] elevator: define ioc counting mechanism None of the in-kernel primitives for handling "atomic" counting seem to be a good fit. We need something that is essentially free for incrementing/decrementing, while the read side may be more expensive as we only ever need to do that when a device is removed from the kernel. Use a per-cpu variable for maintaining a per-cpu ioc count and define a reading mechanism that just sums up the values. Signed-off-by: Jens Axboe commit fc46379daf90dce57bf765c81d3b39f55150aac2 Author: Jens Axboe Date: Tue Aug 29 09:05:44 2006 +0200 [PATCH] cfq-iosched: kill cfq_exit_lock cfq_exit_lock is protecting two things now: - The per-ioc rbtree of cfq_io_contexts - The per-cfqd linked list of cfq_io_contexts The per-cfqd linked list can be protected by the queue lock, as it is (by definition) per cfqd as the queue lock is. The per-ioc rbtree is mainly used and updated by the process itself only. The only outside use is the io priority changing. If we move the priority changing to not browsing the rbtree, we can remove any locking from the rbtree updates and lookup completely. Let the sys_ioprio syscall just mark processes as having the iopriority changed and lazily update the private cfq io contexts the next time io is queued, and we can remove this locking as well. Signed-off-by: Jens Axboe commit 89850f7ee905410c89f9295e89dc4c33502a34ac Author: Jens Axboe Date: Sat Jul 22 16:48:31 2006 +0200 [PATCH] cfq-iosched: cleanups, fixes, dead code removal A collection of little fixes and cleanups: - We don't use the 'queued' sysfs exported attribute, since the may_queue() logic was rewritten. So kill it. - Remove dead defines. - cfq_set_active_queue() can be rewritten cleaner with else if conditions. - Several places had cfq_exit_cfqq() like logic, abstract that out and use that. - Annotate the cfqq kmem_cache_alloc() so the allocator knows that this is a repeat allocation if it fails with __GFP_WAIT set. Allows the allocator to start freeing some memory, if needed. CFQ already loops for this condition, so might as well pass the hint down. - Remove cfqd->rq_starved logic. It's not needed anymore after we dropped the crq allocation in cfq_set_request(). - Remove uneeded parameter passing. Signed-off-by: Jens Axboe commit e6a1c874a064e7d07f24986aba7cd537b7f4a25d Author: Jens Axboe Date: Thu Aug 10 09:00:21 2006 +0200 [PATCH] struct request: shrink and optimize some more Move some members around and unionize completion_data and rb_node since they cannot ever be used at the same time. Signed-off-by: Jens Axboe commit 51da90fcb6acd580e87280eaf4eb1f788021807d Author: Jens Axboe Date: Tue Jul 18 04:14:45 2006 +0200 [PATCH] ll_rw_blk: cleanup __make_request() - Don't assign variables that are only used once. - Kill spin_lock() prefetching, it's opportunistic at best. Signed-off-by: Jens Axboe commit cb78b285c8f9d59b0d4e4f6a54c2977ce1d9b880 Author: Jens Axboe Date: Fri Jul 28 09:32:57 2006 +0200 [PATCH] Drop useless bio passing in may_queue/set_request API It's not needed for anything, so kill the bio passing. Signed-off-by: Jens Axboe commit cdd6026217c0e4cda2efce1bdc318661bef1f66f Author: Jens Axboe Date: Fri Jul 28 09:32:07 2006 +0200 [PATCH] Remove ->rq_status from struct request After Christophs SCSI change, the only usage left is RQ_ACTIVE and RQ_INACTIVE. The block layer sets RQ_INACTIVE right before freeing the request, so any check for RQ_INACTIVE in a driver is a bug and indicates use-after-free. So kill/clean the remaining users, straight forward. Signed-off-by: Jens Axboe commit 49171e5c6f414d49a061b5c1c84967c2eb569822 Author: Jens Axboe Date: Thu Aug 10 08:59:11 2006 +0200 [PATCH] Remove struct request_list from struct request It is always identical to &q->rq, and we only use it for detecting whether this request came out of our mempool or not. So replace it with an additional ->flags bit flag. Signed-off-by: Jens Axboe commit c00895ab2f08df7044e58ee01c38bf0a661ea0eb Author: Jens Axboe Date: Sat Sep 30 20:29:12 2006 +0200 [PATCH] Remove ->waiting member from struct request As the comments indicates in blkdev.h, we can fold it into ->end_io_data usage as that is really what ->waiting is. Fixup the users of blk_end_sync_rq(). Signed-off-by: Jens Axboe commit 8a8e674cb1dafc818ffea93d97e4c1c1f01fdbb6 Author: Jens Axboe Date: Tue Jul 18 21:07:29 2006 +0200 [PATCH] as-iosched: kill arq Get rid of the as_rq request type. With the added elevator_private2, we have enough room in struct request to get rid of any arq allocation/free for each request. Signed-off-by: Jens Axboe Signed-off-by: Nick Piggin commit 5e705374796e72b36e7bb9c59c8d46d2dc5db36a Author: Jens Axboe Date: Thu Jul 13 12:39:25 2006 +0200 [PATCH] cfq-iosched: kill crq Get rid of the cfq_rq request type. With the added elevator_private2, we have enough room in struct request to get rid of any crq allocation/free for each request. Signed-off-by: Jens Axboe commit ff7d145fd911266ae42af7552edc32681c01addb Author: Jens Axboe Date: Wed Jul 12 14:04:37 2006 +0200 [PATCH] Add one more pointer to struct request for IO scheduler usage Then we have enough room in the request to get rid of the dynamic allocations in CFQ/AS. Signed-off-by: Jens Axboe commit 5380a101d33d1d3a32c6b6bd2e17e5dd835842b0 Author: Jens Axboe Date: Thu Jul 13 12:37:56 2006 +0200 [PATCH] cfq-iosched: remove the crq flag functions/variable There's just one flag currently (SYNC), and that one can be grabbed from the request. Signed-off-by: Jens Axboe commit 8840faa1eebba22a9e2f86acddc0cf5145937df4 Author: Jens Axboe Date: Thu Jul 13 12:36:41 2006 +0200 [PATCH] deadline-iosched: remove elevator private drq request type A big win, we now save an allocation/free on each request! With the previous rb/hash abstractions, we can just reuse queuelist/donelist for the FIFO data and be done with it. Signed-off-by: Jens Axboe commit 9e2585a8a23f3a42f815b2a638725d85a921cd65 Author: Jens Axboe Date: Fri Jul 28 09:26:13 2006 +0200 [PATCH] as-iosched: remove arq->is_sync member We can track this in struct request. Signed-off-by: Jens Axboe Signed-off-by: Nick Piggin commit d4f2f4629ea6a003cd021a9ea1a8a23ec0cd70ac Author: Jens Axboe Date: Thu Jul 13 09:12:14 2006 +0200 [PATCH] as-iosched: reuse rq for fifo Saves some space in arq. Signed-off-by: Jens Axboe Signed-off-by: Nick Piggin commit 95e8810b283cfac50789126de4207f9909299de9 Author: Jens Axboe Date: Tue Jul 11 21:30:31 2006 +0200 [PATCH] cfq-iosched: convert to using the FIFO elevator defines Signed-off-by: Jens Axboe commit 1fbfdfcddff4df188b24d9d05271a76a85064583 Author: Jens Axboe Date: Tue Jul 11 21:49:15 2006 +0200 [PATCH] elevator: introduce a way to reuse rq for internal FIFO handling The io schedulers can use this instead of having to allocate space for it themselves. Signed-off-by: Jens Axboe commit b8aca35af5e9fbc2e41a3ba1b2e66f24e80ca9b6 Author: Jens Axboe Date: Thu Jul 13 12:34:24 2006 +0200 [PATCH] deadline-iosched: migrate to using the elevator rb functions This removes the rbtree handling from deadline. Signed-off-by: Jens Axboe commit 21183b07ee4be405362af8454f3647781c77df1b Author: Jens Axboe Date: Thu Jul 13 12:33:14 2006 +0200 [PATCH] cfq-iosched: migrate to using the elevator rb functions This removes the rbtree handling from CFQ. Signed-off-by: Jens Axboe commit e37f346e347e5035c80760df2be0fcb2824f6c16 Author: Jens Axboe Date: Tue Jul 18 21:06:01 2006 +0200 [PATCH] as-iosched: migrate to using the elevator rb functions This removes the rbtree handling from AS. Signed-off-by: Jens Axboe Signed-off-by: Nick Piggin commit 2e662b65f05d550b6799ed6bfa9963b82279e6b7 Author: Jens Axboe Date: Thu Jul 13 11:55:04 2006 +0200 [PATCH] elevator: abstract out the rbtree sort handling The rbtree sort/lookup/reposition logic is mostly duplicated in cfq/deadline/as, so move it to the elevator core. The io schedulers still provide the actual rb root, as we don't want to impose any sort of specific handling on the schedulers. Introduce the helpers and rb_node in struct request to help migrate the IO schedulers. Signed-off-by: Jens Axboe commit 10fd48f2376db52f08bf0420d2c4f580e39269e1 Author: Jens Axboe Date: Tue Jul 11 21:15:52 2006 +0200 [PATCH] rbtree: fixed reversed RB_EMPTY_NODE and rb_next/prev The conditions got reserved. Also make rb_next() and rb_prev() check for the empty condition. Signed-off-by: Jens Axboe commit 9817064b68fef7e4580c6df1ea597e106b9ff88b Author: Jens Axboe Date: Fri Jul 28 09:23:08 2006 +0200 [PATCH] elevator: move the backmerging logic into the elevator core Right now, every IO scheduler implements its own backmerging (except for noop, which does no merging). That results in duplicated code for essentially the same operation, which is never a good thing. This patch moves the backmerging out of the io schedulers and into the elevator core. We save 1.6kb of text and as a bonus get backmerging for noop as well. Win-win! Signed-off-by: Jens Axboe commit 4aff5e2333c9a1609662f2091f55c3f6fffdad36 Author: Jens Axboe Date: Thu Aug 10 08:44:47 2006 +0200 [PATCH] Split struct request ->flags into two parts Right now ->flags is a bit of a mess: some are request types, and others are just modifiers. Clean this up by splitting it into ->cmd_type and ->cmd_flags. This allows introduction of generic Linux block message types, useful for sending generic Linux commands to block devices. Signed-off-by: Jens Axboe commit 77ed74da26f50fa28471571ee7a2251b77526d84 Author: Jean Delvare Date: Sat Sep 30 17:18:59 2006 +0200 [PATCH] i2c: Prevent deadlock on i2c client registration Delay the call to adapter->client_register() until after we are certain that the client registration is a success. At this point the client is fully initialized and we no longer hold the adapter->clist mutex, so this should prevent the deadlocks if the client_register() callback needs to take that mutex too, as is the case for the bttv driver. This fixes bug #7234. Signed-off-by: Jean Delvare Signed-off-by: Linus Torvalds commit 360f654e7cda850034f3f6252a7a7cff3fa77356 Author: Tejun Heo Date: Sat Sep 30 19:45:00 2006 +0900 [PATCH] libata: turn off NCQ if queue depth is adjusted to 1 Turn off NCQ if queue depth is adjusted to 1. Signed-off-by: Jeff Garzik commit e5c9e081e9c980fa785cd9002c25a251cf3f090e Author: Tejun Heo Date: Sat Sep 30 19:44:39 2006 +0900 [PATCH] libata: cosmetic changes to constants Cosmetic changes to ATA_DFLAG_* constants for soon-to-follow NCQ-off patch. Signed-off-by: Jeff Garzik commit c5d311c7e93c7d84941028835bc6ae5e1bc4e73c Author: Lennert Buytenhek Date: Fri Sep 29 21:18:34 2006 +0100 [ARM] 3880/1: remove the last trace of iop31x support Remove the last trace of iop31x support from the kernel. Signed-off-by: Lennert Buytenhek Signed-off-by: Russell King commit 730ee9f3594d8bcedb981dd184f310899fc931c6 Author: Lennert Buytenhek Date: Fri Sep 29 21:17:36 2006 +0100 [ARM] 3879/1: ep93xx: instantiate platform devices for ep93xx ethernet Instantiate platform devices for the ep93xx ethernet driver in a couple of ep93xx board support files. Signed-off-by: Lennert Buytenhek Signed-off-by: Russell King commit 2552fc27ff79b10b9678d92bcaef21df38bb7bb6 Author: Lennert Buytenhek Date: Fri Sep 29 21:14:05 2006 +0100 [ARM] 3809/3: get rid of 4 megabyte kernel image size limit We currently have a hardcoded 4 megabyte uncompressed kernel image size limit, which is easily exceeded by, for example, enabling some of the various kernel debugging options. When setting up the initial page tables (which is where this 4M limit is hardcoded), it's actually relatively easy to find out the true size of the uncompressed kernel image and create enough page table entries for things to fit, so this patch makes it so. In the decompressor, we also need to know the size of the uncompressed kernel image, to figure out whether there is any chance that uncompressing the kernel might overwrite the compressed kernel image stored elsewhere in memory. We don't have that info at this boot stage, though, so we approximate the size of the uncompressed kernel by taking the compressed kernel image size and allowing for a maximum 4x expansion. Signed-off-by: Lennert Buytenhek Signed-off-by: Russell King commit 6ae5a6ef0340908fb7065a75231ae9980a910fbe Author: Russell King Date: Sat Sep 30 10:50:05 2006 +0100 [ARM] Fix XIP_KERNEL build error in arch/arm/mm/mmu.c XIP kernels need to know the start/end of text, but we were missing the declaration of _etext in mmu.c. Add it. Signed-off-by: Russell King commit e94c5bde703f2f9f86d098b6bf8275c64fab10eb Author: Sam Ravnborg Date: Mon Sep 25 17:35:43 2006 +0200 kconfig/menuconfig: do not let ncurses clutter screen on exit Do not initialize ncurses twice - it causes unpredicable results. My display was sometimes weird after running make menuconfig and I had to execute 'reset' to properly restore my display. Signed-off-by: Sam Ravnborg commit 737ecae264bc759e2033d99e99138f690f3beabf Author: Sam Ravnborg Date: Sat Sep 2 22:01:42 2006 +0200 kconfig/lxdialog: clear long menu lines Menulines that were wider than the available line width is now properly null terminated. While at it renamed the variable choice => line_y so it better reflect the usage in do_print_item(). Signed-off-by: Sam Ravnborg commit c29121b787f533d135ae47b5f3044adb66cbebef Author: Sam Ravnborg Date: Sat Sep 2 21:32:14 2006 +0200 kbuild: do not build mconf & lxdialog unless needed Due to a limitation in kbuild all objects referred by xxx-y or xxx-objs will be build when one of the targets needs to e build. This caused lxdialog to be build pulling in ncurses that is not always available. So avoid building mconf & lxdialog unless really needed. Signed-off-by: Sam Ravnborg commit 903947d286c93d3545ef6491bf66a0b797010c8d Author: Sam Ravnborg Date: Sun Jul 30 09:47:33 2006 +0200 kconfig/lxdialog: fix make mrproper No Makefile in scripts/kconfig/lxdialog anymore, so do not go there during make mrproper. Signed-off-by: Sam Ravnborg commit c8dc68ad0fbd934e78e913b8a8d7b45945db4930 Author: Sam Ravnborg Date: Sat Jul 29 22:48:57 2006 +0200 kconfig/lxdialog: support resize In all dialogs now properly catch KEY_RESIZE and take proper action. In mconf try to behave sensibly when a dialog routine returns -ERRDISPLAYTOOSMALL. The original check for a screnn size of 80x19 is kept for now. It may make sense to remove it later, but thats anyway what much text is adjusted for. Signed-off-by: Sam Ravnborg commit f3cbcdc955d0d2c8b4c52d6b73fc536b01b68c64 Author: Sam Ravnborg Date: Fri Jul 28 23:57:48 2006 +0200 kconfig/lxdialog: let behave as expected is used to step one back in the dialogs. When lxdialog became built-in pressing once would cause one step back and pressing would cause two steps back. This patch - based on concept from Roman Zippel - makes one a noop and pressing will cause one step backward. In addition the final yes/no dialog now has the option to go back to the the kernel configuration. So if you get too far out you can now go back to configuring the kernel without saving and starting all over again. Signed-off-by: Sam Ravnborg commit 2982de6993e6d9944f2215d7cb9b558b465a0c99 Author: Sam Ravnborg Date: Thu Jul 27 22:10:27 2006 +0200 kconfig/menuconfig: lxdialog is now built-in lxdialog was previously called as an external program causing screen to flicker when used. With this patch lxdialog is now built-in. It is loosly based om previous work by: Petr Baudis Following is a list of changes: o Moved build of dialog routings to kconfig Makefile o menubox + checklist uses a new item list to hold all menu items o in util.c implmented helper function to deal with item list o menubox now uses parameters to save scroll state (avoids temp file) o textbox now get text to be displayed as parameter and not a file o make sure to properly delete subwin's before main windows o killed unused files: lxdialog.c msgbox.c o modified return value for ESC to match direct calling o in a few places the code has been adjusted to 80 char wide o in textbox a small refactoring was made to make code remotely readable o in mconf removed all unused stuff (functions/variables) Following is a list of know short comings: a) pressing ESC twice will be interpreted as two ESC presses b) resize does not work. menuconfig needs to be restarted to be adjusted Signed-off-by: Sam Ravnborg commit 350b5b76384e77bcc58217f00455fdbec5cac594 Author: Sam Ravnborg Date: Mon Jul 24 22:19:51 2006 +0200 kconfig/lxdialog: add a new theme bluetitle which is now default The bluetitle theme is a slightly modified version of the colorscheme that -mm users has been used to. The bluetitle is more readable especially on some LCD screens so it is now default. Anyone that really wants the old color selection can get it by selecting the classic color theme: make MENUCONFIG_COLOR=classic menuconfig The bluetitle theme was modified by Roman Zippel to further improve readability on LCD screens. Signed-off-by: Sam Ravnborg commit 458972132a705c4a869002354f7f10f395d08c18 Author: Sam Ravnborg Date: Mon Jul 24 22:04:04 2006 +0200 kconfig/lxdialog: add support for color themes and add blackbg theme The blackbg theme was originally made by: Han Boetes It was copied from a patch by "Randy.Dunlap" which was also the inspiration source for the color theme support. Signed-off-by: Sam Ravnborg commit 98e5a1579e7d34fe3803240750a1c48efcd9cb15 Author: Sam Ravnborg Date: Mon Jul 24 21:40:46 2006 +0200 kconfig/lxdialog: refactor color support Clean up and refactor color support. All color support are now in util.c including color definitions. In the process introduced a global variable named 'dlg' which is used all over to set color - thats the reason why all files are changed. Signed-off-by: Sam Ravnborg commit 6656e3c4c8e0c80f2d2bfece574876d269f64861 Author: Chas Williams Date: Fri Sep 29 17:17:17 2006 -0700 [ATM]: [lec] use refcnt to protect lec_arp_entries outside lock Signed-off-by: Chas Williams Signed-off-by: David S. Miller commit 33a9c2d4b758279c5077fc15d221b385a574ae0b Author: Chas Williams Date: Fri Sep 29 17:16:48 2006 -0700 [ATM]: [lec] add reference counting to lec_arp entries Signed-off-by: Chas Williams Signed-off-by: David S. Miller commit 987e46bdf314c55e060570ff46723d770e461f0e Author: Chas Williams Date: Fri Sep 29 17:15:59 2006 -0700 [ATM]: [lec] use work queue instead of timer for lec arp expiry Signed-off-by: Chas Williams Signed-off-by: David S. Miller commit edbc9b014fda4b13466b2e2ac53b940337548ab4 Author: Chas Williams Date: Fri Sep 29 17:15:15 2006 -0700 [ATM]: [lec] old_close is no longer used Signed-off-by: Chas Williams Signed-off-by: David S. Miller commit d0732f649f090b31f976a9ce59a38e1191077909 Author: Chas Williams Date: Fri Sep 29 17:14:27 2006 -0700 [ATM]: [lec] convert lec_arp_table to hlist Signed-off-by: Chas Williams Signed-off-by: David S. Miller commit 1c9d3e72a7164c590437f2ab6c2c4f6da91f1703 Author: Chas Williams Date: Fri Sep 29 17:13:24 2006 -0700 [ATM]: [lec] header indent, comment and whitespace cleanup Signed-off-by: Chas Williams Signed-off-by: David S. Miller commit 1fa9961d631fcde21cc42678157129c6fae7fe6d Author: Chas Williams Date: Fri Sep 29 17:11:47 2006 -0700 [ATM]: [lec] indent, comment and whitespace cleanup [continued] Signed-off-by: Chas Williams Signed-off-by: David S. Miller commit d44f77466cfdc6f1d1e3870e176afedab7f46a42 Author: Chas Williams Date: Fri Sep 29 17:11:14 2006 -0700 [ATM]: [lec] indent, comment and whitespace cleanup Signed-off-by: Chas Williams Signed-off-by: David S. Miller commit f236218b7292bccb0f8754a0feb5d9e9a06fe5a2 Author: Vlad Yasevich Date: Fri Sep 29 17:10:03 2006 -0700 [SCTP]: Do not timestamp every SCTP packet. We only need the timestamp on COOKIE-ECHO chunks, so instead of always timestamping every SCTP packet, let common code timestamp if the socket option is set. For COOKIE-ECHO, simply get the time of day if we don't have a timestamp. This introduces a small possibility that the cookie may be considered expired, but it will be renegotiated. Signed-off-by: Vlad Yasevich Signed-off-by: Sridhar Samudrala Signed-off-by: David S. Miller commit b56bab46f3220eb6b1f71c000faa44c6b13fb148 Author: Vlad Yasevich Date: Fri Sep 29 17:09:34 2006 -0700 [SCTP]: Use correct mask when disabling PMTUD. Signed-off-by: Vlad Yasevich Signed-off-by: Sridhar Samudrala Signed-off-by: David S. Miller commit cd49788563d3b9e2ec0b316fa57aef1c0cb3bd4b Author: Sridhar Samudrala Date: Fri Sep 29 17:09:05 2006 -0700 [SCTP]: Include sk_buff overhead while updating the peer's receive window. Currently if the sender is sending small messages, it can cause a receiver to run out of receive buffer space even when the advertised receive window is still open and results in packet drops and retransmissions. Including a overhead while updating the sender's view of peer receive window will reduce the chances of receive buffer space overshooting the receive window. Signed-off-by: Sridhar Samudrala Signed-off-by: David S. Miller commit 208edef6a5b6c50363c77efcf34c4b4020681029 Author: Sridhar Samudrala Date: Fri Sep 29 17:08:01 2006 -0700 [SCTP]: Enable Nagle algorithm by default. This allows more aggressive bundling of chunks when sending small messages. Signed-off-by: Sridhar Samudrala Signed-off-by: David S. Miller commit f9317a40c4e09e20ef01601fc9f5de9e6acb5b96 Author: Michael Chan Date: Fri Sep 29 17:06:23 2006 -0700 [BNX2]: Disable MSI on 5706 if AMD 8132 bridge is present. MSI is defined to be 32-bit write. The 5706 does 64-bit MSI writes with byte enables disabled on the unused 32-bit word. This is legal but causes problems on the AMD 8132 which will eventually stop responding after a while. Without this patch, the MSI test done by the driver during open will pass, but MSI will eventually stop working after a few MSIs are written by the device. AMD believes this incompatibility is unique to the 5706, and prefers to locally disable MSI rather than globally disabling it using pci_msi_quirk. Update version to 1.4.45. Signed-off-by: Michael Chan Signed-off-by: David S. Miller commit 95d4e6be25a68cd9fbe8c0d356b585504d8db1c7 Author: Paul Moore Date: Fri Sep 29 17:05:05 2006 -0700 [NetLabel]: audit fixups due to delayed feedback Fix some issues Steve Grubb had with the way NetLabel was using the audit subsystem. This should make NetLabel more consistent with other kernel generated audit messages specifying configuration changes. Signed-off-by: Paul Moore Acked-by: Steve Grubb Signed-off-by: David S. Miller commit c84ef5305930d19bdd6cd576b3a3a73786a82e57 Author: Andi Kleen Date: Sat Sep 30 01:47:55 2006 +0200 [PATCH] Use early clobber in semaphores New code clobbers the result always early, so tell gcc about it Signed-off-by: Andi Kleen commit 34596dc9e59d7bece16fe5aba08116b49465da26 Author: Andi Kleen Date: Sat Sep 30 01:47:55 2006 +0200 [PATCH] Define vsyscall cache as blob to make clearer that user space shouldn't use it Signed-off-by: Andi Kleen commit 120b114237e2461fb4fa437c5c37edf014c916b9 Author: Vivek Goyal Date: Sat Sep 30 01:47:55 2006 +0200 [PATCH] Re-positioning the bss segment [AK: This apparently broke some systems, but we need it to fix a compile problem with old binutils and in theory the patch is correct. So let's trying reenabling it again.] o Currently bss segment is being placed somewhere in the middle (after .data) section and after bss lots of init section and data sections are coming. Is it intentional? o One side affect of placing bss in the middle is that objcopy keeps the bss in raw binary image (vmlinux.bin) hence unnecessarily increasing the size of raw binary image. (In my case ~600K). It also increases the size of generated bzImage, though the increase is very small (896 bytes), probably a very high compression ratio for stream of zeros. o This patch moves the bss at the end hence reducing the size of bzImage by 896 bytes and size of vmlinux.bin by 600K. o This change benefits in the context of relocatable kernel patches. If kernel bss is not part of compressed data (vmlinux.bin) then it does not have to be decompressed and this area can be used by the decompressor for its execution hence keeping the memory requirements bounded and decompressor code does not stomp over any other data loaded beyond kernel image (As might be the case with bootloaders like kexec). Signed-off-by: Vivek Goyal Signed-off-by: Andi Kleen commit 9d0ef4fd61693acd3741ab7ee544246cda1f8738 Author: Andi Kleen Date: Sat Sep 30 01:47:55 2006 +0200 [PATCH] Use ARRAY_SIZE in setup.c Based on i386 patch from Bjorn. Signed-off-by: Andi Kleen commit b9629b82c81709eb0f9c98b8f9cc684f8e212ef3 Author: Bjorn Helgaas Date: Sat Sep 30 01:47:55 2006 +0200 [PATCH] i386: replace intermediate array-size definitions with ARRAY_SIZE() Code is easier to validate if array sizes aren't hidden behind extra #defines. Signed-off-by: Bjorn Helgaas Signed-off-by: Andi Kleen commit 29cbc78b90a73ad80f2f58ba2927956cf663abed Author: Andi Kleen Date: Sat Sep 30 01:47:55 2006 +0200 [PATCH] x86: Clean up x86 NMI sysctls Use prototypes in headers Don't define panic_on_unrecovered_nmi for all architectures Cc: dzickus@redhat.com Signed-off-by: Andi Kleen commit 013bf2c50ed943e9c23a2145d3ea7c4d88cda310 Author: Andi Kleen Date: Sat Sep 30 01:47:55 2006 +0200 [PATCH] Refactor some duplicated code in mpparse.c No logic changes Signed-off-by: Andi Kleen commit d802ab981da67d433fbb48f5640b7e3a9ba9fd54 Author: Andi Kleen Date: Sat Sep 30 01:47:55 2006 +0200 [PATCH] Document iommu=panic Signed-off-by: Andi Kleen commit ded318ec80071557155604197ea45dcdb2a9ff2f Author: Andi Kleen Date: Sat Sep 30 01:47:55 2006 +0200 [PATCH] Fix broken indentation in iommu_setup No functional changes; only white space. Signed-off-by: Andi Kleen commit ece668401250c1d0419ed078c1d26ccdd30d3289 Author: Andi Kleen Date: Sat Sep 30 01:47:55 2006 +0200 [PATCH] Allow disabling DAC using command line options Might or might not work around some reported bugs on VIA systems. Signed-off-by: Andi Kleen commit b885808e185a4ec2dfe16c84434f79e95f0245b0 Author: Andi Kleen Date: Sat Sep 30 01:47:55 2006 +0200 [PATCH] Add proper sparse __user casts to __copy_to_user_inatomic Noticed by Al Viro Cc: viro@ftp.linux.org.uk Signed-off-by: Andi Kleen commit ae853e79faa27ca1a08c8ae3b5aee71ea98482f9 Author: Andi Kleen Date: Sat Sep 30 01:47:55 2006 +0200 [PATCH] i386: Update defconfig Signed-off-by: Andi Kleen commit 81b999b10b3246fd80691a7936a564deb99640b9 Author: Andi Kleen Date: Sat Sep 30 01:47:54 2006 +0200 [PATCH] Update defconfig Signed-off-by: Andi Kleen commit fbe96f92b3d9450e77a3a4bb1d46aa1bb908c1ab Author: David S. Miller Date: Wed Sep 27 19:52:35 2006 -0700 [SERIAL] sunzilog: Mark sunzilog_init_hw as __devinit. Signed-off-by: David S. Miller commit 3a1d5c84ed2fa4034f86e3b204129c139471516e Author: David S. Miller Date: Wed Sep 27 19:43:02 2006 -0700 [SPARC]: Don't zero out tail during copy_from_user_inatomic(). Actually, since we use the same code for all the copying types in and out of userspace, we check at runtime whether preemption is disabled. Signed-off-by: David S. Miller commit d6c641026dec68acfb4b0baa98aad960e963ed97 Author: Ollie Wild Date: Fri Sep 29 15:50:28 2006 -0700 [PATCH] uml build fix Cc: Jeff Dike Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 2148ccc437a9eac9f0d4b3c27cb1e41f6a48194c Author: David Woodhouse Date: Fri Sep 29 15:50:25 2006 -0700 [PATCH] MLSXFRM: fix mis-labelling of child sockets Accepted connections of types other than AF_INET, AF_INET6, AF_UNIX won't have an appropriate label derived from the peer, so don't use it. Signed-off-by: David Woodhouse Acked-by: Stephen Smalley Acked-by: James Morris Acked-by: Paul Moore Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit e0af79cd52334c586d058253b7d32ce74434de26 Author: Kevin Hilman Date: Fri Sep 29 00:14:09 2006 +0100 [ARM] 3874/1: Remove leftover usage of asm/timeofday.h Signed-off-by: Kevin Hilman Signed-off-by: Russell King commit ae1390d8c3e2142e5cf6d192951d6e2b1fa213c5 Author: Yoichi Yuasa Date: Fri Sep 29 08:42:38 2006 +0200 [PATCH] i2c-sibyte: Fix modular build breakage Fix undefined reference in i2c_sibyte_exit(). drivers/built-in.o: In function `i2c_sibyte_exit': i2c-sibyte.c:(.exit.text+0x368): undefined reference to `i2c_del_bus' i2c-sibyte.c:(.exit.text+0x368): relocation truncated to fit: R_MIPS_26 against `i2c_del_bus' i2c-sibyte.c:(.exit.text+0x38c): undefined reference to `i2c_del_bus' i2c-sibyte.c:(.exit.text+0x38c): relocation truncated to fit: R_MIPS_26 against `i2c_del_bus' Signed-off-by: Yoichi Yuasa Signed-off-by: Jean Delvare Signed-off-by: Linus Torvalds commit 181b64803661209cda64e5e874ad75f373a69de8 Author: Paul Jackson Date: Fri Sep 29 02:01:48 2006 -0700 [PATCH] cpuset: fix obscure attach_task vs exiting race Fix obscure race condition in kernel/cpuset.c attach_task() code. There is basically zero chance of anyone accidentally being harmed by this race. It requires a special 'micro-stress' load and a special timing loop hacks in the kernel to hit in less than an hour, and even then you'd have to hit it hundreds or thousands of times, followed by some unusual and senseless cpuset configuration requests, including removing the top cpuset, to cause any visibly harm affects. One could, with perhaps a few days or weeks of such effort, get the reference count on the top cpuset below zero, and manage to crash the kernel by asking to remove the top cpuset. I found it by code inspection. The race was introduced when 'the_top_cpuset_hack' was introduced, and one piece of code was not updated. An old check for a possibly null task cpuset pointer needed to be changed to a check for a task marked PF_EXITING. The pointer can't be null anymore, thanks to the_top_cpuset_hack (documented in kernel/cpuset.c). But the task could have gone into PF_EXITING state after it was found in the task_list scan. If a task is PF_EXITING in this code, it is possible that its task->cpuset pointer is pointing to the top cpuset due to the_top_cpuset_hack, rather than because the top_cpuset was that tasks last valid cpuset. In that case, the wrong cpuset reference counter would be decremented. The fix is trivial. Instead of failing the system call if the tasks cpuset pointer is null here, fail it if the task is in PF_EXITING state. The code for 'the_top_cpuset_hack' that changes an exiting tasks cpuset to the top_cpuset is done without locking, so could happen at anytime. But it is done during the exit handling, after the PF_EXITING flag is set. So if we verify that a task is still not PF_EXITING after we copy out its cpuset pointer (into 'oldcs', below), we know that 'oldcs' is not one of these hack references to the top_cpuset. Signed-off-by: Paul Jackson Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 683e91cbd0582cb8e63daaf0429e0a62be9cc421 Author: Kirill Korotaev Date: Fri Sep 29 02:01:47 2006 -0700 [PATCH] SubmittingPatches: add a note about "format=flowed" when sending patches Add a note about "format=flowed" when sending patches and explain how to fix mozilla. Thunderbird has the similar options. Signed-off-by: Kirill Korotaev Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 03cbc358aab3faf34bfeaa02206fa660127e9b3f Author: Ingo Molnar Date: Fri Sep 29 02:01:46 2006 -0700 [PATCH] lockdep core: improve the lock-chain-hash With CONFIG_DEBUG_LOCK_ALLOC turned off i was getting sporadic failures in the locking self-test: ------------> | Locking API testsuite: ---------------------------------------------------------------------------- | spin |wlock |rlock |mutex | wsem | rsem | -------------------------------------------------------------------------- A-A deadlock: ok | ok | ok | ok | ok | ok | A-B-B-A deadlock: ok | ok | ok | ok | ok | ok | A-B-B-C-C-A deadlock: ok | ok | ok | ok | ok | ok | A-B-C-A-B-C deadlock: ok | ok | ok | ok | ok | ok | A-B-B-C-C-D-D-A deadlock: ok |FAILED| ok | ok | ok | ok | A-B-C-D-B-D-D-A deadlock: ok | ok | ok | ok | ok | ok | A-B-C-D-B-C-D-A deadlock: ok | ok | ok | ok | ok |FAILED| after much debugging it turned out to be caused by accidental chain-hash key collisions. The current hash is: #define iterate_chain_key(key1, key2) \ (((key1) << MAX_LOCKDEP_KEYS_BITS/2) ^ \ ((key1) >> (64-MAX_LOCKDEP_KEYS_BITS/2)) ^ \ (key2)) where MAX_LOCKDEP_KEYS_BITS is 11. This hash is pretty good as it will shift by 5 bits in every iteration, where every new ID 'mixed' into the hash would have up to 11 bits. But because there was a 6 bits overlap between subsequent IDs and their high bits tended to be similar, there was a chance for accidental chain-hash collision for a low number of locks held. the solution is to shift by 11 bits: #define iterate_chain_key(key1, key2) \ (((key1) << MAX_LOCKDEP_KEYS_BITS) ^ \ ((key1) >> (64-MAX_LOCKDEP_KEYS_BITS)) ^ \ (key2)) This keeps the hash perfect up to 5 locks held, but even above that the hash is still good because 11 bits is a relative prime to the total 64 bits, so a complete match will only occur after 64 held locks (which doesnt happen in Linux). Even after 5 locks held, entropy of the 5 IDs mixed into the hash is already good enough so that overlap doesnt generate a colliding hash ID. with this change the false positives went away. Signed-off-by: Ingo Molnar Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 632dd2053a1146c826ceb6f26ab689389c05e751 Author: Vivek Goyal Date: Fri Sep 29 02:01:45 2006 -0700 [PATCH] Kcore elf note namesz field fix o As per ELF specifications, it looks like that elf note "namesz" field contains the length of "name" including the size of null character. And currently we are filling "namesz" without taking into the consideration the null character size. o Kexec-tools performs this check deligently hence I ran into the issue while trying to open /proc/kcore in kexec-tools for some info. Signed-off-by: Vivek Goyal Cc: "Eric W. Biederman" Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 327dcaadc0bc08ad081aa8e36b6ec7ad7aa45e30 Author: Andrew Morton Date: Fri Sep 29 02:01:44 2006 -0700 [PATCH] expand_fdtable(): remove pointless unlock+lock This unlock/lock on a super-unlikely path isn't worth the kernel text. Cc: Vadim Lobanov Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 74d392aaabfc890cc1f0e80fc5ff13e5d3bcf4c9 Author: Vadim Lobanov Date: Fri Sep 29 02:01:43 2006 -0700 [PATCH] Clean up expand_fdtable() and expand_files() Perform a code cleanup against the expand_fdtable() and expand_files() functions inside fs/file.c. It aims to make the flow of code within these functions simpler and easier to understand, via added comments and modest refactoring. Signed-off-by: Vadim Lobanov Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 3706baa8b1ba0d71d52fd0c656752a6495f6364a Author: Alexey Dobriyan Date: Fri Sep 29 02:01:43 2006 -0700 [PATCH] Documentation/SubmittingDrivers: minor update * fix copright typo * remove trailing whitespace * remove Kernel Traffic from Resources. Zack, it was great reading! * Name Arjan by name and fix URL of "How to NOT" paper. * Remove "Last updated" tag. Signed-off-by: Alexey Dobriyan Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit eb84a20e9e6b98dcb33023ad22241d79107a08a7 Author: Alan Cox Date: Fri Sep 29 02:01:41 2006 -0700 [PATCH] audit/accounting: tty locking Add tty locking around the audit and accounting code. The whole current->signal-> locking is all deeply strange but it's for someone else to sort out. Add rather than replace the lock for acct.c Signed-off-by: Alan Cox Acked-by: Arjan van de Ven Cc: Al Viro Cc: Oleg Nesterov Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 5f412b24240d92212e50ebbaff2dff20c9e6f3d0 Author: Alan Cox Date: Fri Sep 29 02:01:40 2006 -0700 [PATCH] Fix locking for tty drivers when doing urgent characters If you send a priority character (as is done for flow control) then the tty driver can either have its own method for "jumping the queue" or the characrer can be queued normally. In the latter case we call the write method but without the atomic_write_lock taken elsewhere. Make this consistent. Note that the send_xchar method if implemented remains outside of the lock as it can jump ahead of a current write so must not be locked out by it. Signed-off-by: Alan Cox Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 67cc0161ecc9ebee6eba4af6cbfdba028090b1b9 Author: Alan Cox Date: Fri Sep 29 02:01:39 2006 -0700 [PATCH] specialix - remove private speed decoding Signed-off-by: Alan Cox Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 1db27c11e9a0c6d659040ac0b7c64a339e248fa1 Author: Alan Cox Date: Fri Sep 29 02:01:38 2006 -0700 [PATCH] istallion: Remove private baud rate decoding, which is also broken in this case on some platforms Signed-off-by: Alan Cox Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit d720bc4b8fc5d6d179ef094908d4fbb5e436ffad Author: Alan Cox Date: Fri Sep 29 02:01:38 2006 -0700 [PATCH] generic_serial: remove private decoding of baud rate bits The driver has no business doing this work itself any more and hasn't for some years. When the new speed stuff goes in this will break entirely so fix it up ready. Also remove a #if 0 around a comment.... Signed-off-by: Alan Cox Cc: Russell King Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 13c73f045f2ac33219729678f4a9389d4ccab799 Author: Atsushi Nemoto Date: Fri Sep 29 02:01:37 2006 -0700 [PATCH] RTC: more XSTP/VDET support for rtc-rs5c348 driver If the chip detected "oscillator stop" condition, show an warning message. And initialize it with the Epoch time instead of leaving it with unknown date/time. Signed-off-by: Atsushi Nemoto Acked-by: Alessandro Zummo Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit b9dd6ffc3d6b56417a2c4c917f51dab6470166e6 Author: Adrian Bunk Date: Fri Sep 29 02:01:36 2006 -0700 [PATCH] build sound/sound_firmware.c only for OSS All sound/sound_firmware.c contains is mod_firmware_load() that is a legacy API only used by some OSS drivers. This patch builds it into an own sound_firmware module that is only built depending on CONFIG_SOUND_PRIME making the kernel slightly smaller for ALSA users. [alan@lxorguk.ukuu.org.uk: comment fix] Signed-off-by: Adrian Bunk Acked-by: Takashi Iwai Signed-off-by: Alan Cox Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit e5582ca21af82929d5cd3613321ac9233c492ebc Author: Rusty Russell Date: Fri Sep 29 02:01:35 2006 -0700 [PATCH] stop_machine.c copyright I had to look back: this code was extracted from the module.c code in 2005. Signed-off-by: Rusty Russell Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 39f0247d3823e4e0bf8f6838a10362864b1e1053 Author: Andreas Gruenbacher Date: Fri Sep 29 02:01:35 2006 -0700 [PATCH] Access Control Lists for tmpfs Add access control lists for tmpfs. Signed-off-by: Andreas Gruenbacher Cc: Hugh Dickins Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit f0c8bd164e1a0585d7e46896553136b4f488bd19 Author: Andreas Gruenbacher Date: Fri Sep 29 02:01:34 2006 -0700 [PATCH] Generic infrastructure for acls The patches solve the following problem: We want to grant access to devices based on who is logged in from where, etc. This includes switching back and forth between multiple user sessions, etc. Using ACLs to define device access for logged-in users gives us all the flexibility we need in order to fully solve the problem. Device special files nowadays usually live on tmpfs, hence tmpfs ACLs. Different distros have come up with solutions that solve the problem to different degrees: SUSE uses a resource manager which tracks login sessions and sets ACLs on device inodes as appropriate. RedHat uses pam_console, which changes the primary file ownership to the logged-in user. Others use a set of groups that users must be in in order to be granted the appropriate accesses. The freedesktop.org project plans to implement a combination of a console-tracker and a HAL-device-list based solution to grant access to devices to users, and more distros will likely follow this approach. These patches have first been posted here on 2 February 2005, and again on 8 January 2006. We have been shipping them in SLES9 and SLES10 with no problems reported. The previous submission is archived here: http://lkml.org/lkml/2006/1/8/229 http://lkml.org/lkml/2006/1/8/230 http://lkml.org/lkml/2006/1/8/231 This patch: Add some infrastructure for access control lists on in-memory filesystems such as tmpfs. Signed-off-by: Andreas Gruenbacher Cc: Hugh Dickins Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 4e6fd33b75602ced4c5d43e99a10a1d13f33d4f4 Author: Chris Snook Date: Fri Sep 29 02:01:33 2006 -0700 [PATCH] enforce RLIMIT_NOFILE in poll() POSIX states that poll() shall fail with EINVAL if nfds > OPEN_MAX. In this context, POSIX is referring to sysconf(OPEN_MAX), which is the value of current->signal->rlim[RLIMIT_NOFILE].rlim_cur in the linux kernel, not the compile-time constant which happens to also be named OPEN_MAX. In the current code, an application may poll up to max_fdset file descriptors, even if this exceeds RLIMIT_NOFILE. The current code also breaks applications which poll more than max_fdset descriptors, which worked circa 2.4.18 when the check was against NR_OPEN, which is 1024*1024. This patch enforces the limit precisely as POSIX defines, even if RLIMIT_NOFILE has been changed at run time with ulimit -n. To elaborate on the rationale for this, there are three cases: 1) RLIMIT_NOFILE is at the default value of 1024 In this (default) case, the patch changes nothing. Calls with nfds > 1024 fail with EINVAL both before and after the patch, and calls with nfds <= 1024 pass the check both before and after the patch, since 1024 is the initial value of max_fdset. 2) RLIMIT_NOFILE has been raised above the default In this case, poll() becomes more permissive, allowing polling up to RLIMIT_NOFILE file descriptors even if less than 1024 have been opened. The patch won't introduce new errors here. If an application somehow depends on poll() failing when it polls with duplicate or invalid file descriptors, it's already broken, since this is already allowed below 1024, and will also work above 1024 if enough file descriptors have been open at some point to cause max_fdset to have been increased above nfds. 3) RLIMIT_NOFILE has been lowered below the default In this case, the system administrator or the user has gone out of their way to protect the system from inefficient (or malicious) applications wasting kernel memory. The current code allows polling up to 1024 file descriptors even if RLIMIT_NOFILE is much lower, which is not what the user or administrator intended. Well-written applications which only poll valid, unique file descriptors will never notice the difference, because they'll hit the limit on open() first. If an application gets broken because of the patch in this case, then it was already poorly/maliciously designed, and allowing it to work in the past was a violation of POSIX and a DoS risk on low-resource systems. With this patch, poll() will permit exactly what POSIX suggests, no more, no less, and for any run-time value set with ulimit -n, not just 256 or 1024. There are existing apps which which poll a large number of file descriptors, some of which may be invalid, and if those numbers stradle 1024, they currently fail with or without the patch in -mm, though they worked fine under 2.4.18. Signed-off-by: Chris Snook Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 8c6ba51bdad0de0dc2a2e2415d4dac2d0db6c1a1 Author: Eric Sesterhenn Date: Fri Sep 29 02:01:32 2006 -0700 [PATCH] Uninitialized variable in drivers/net/wan/syncppp.c For len equal to 4, we never call sppp_lcp_conf_parse_options(), therefore rmagic does not get initialized. Signed-off-by: Eric Sesterhenn Acked-by: Paul Fulghum Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 04b1db9fd7eea63c9663072feece616ea41b0a79 Author: Ian S. Nelson Date: Fri Sep 29 02:01:31 2006 -0700 [PATCH] /sys/modules: allow full length section names I've been using systemtap for some debugging and I noticed that it can't probe a lot of modules. Turns out it's kind of silly, the sections section of /sys/module is limited to 32byte filenames and many of the actual sections are a a bit longer than that. [akpm@osdl.org: rewrite to use dymanic allocation] Cc: Rusty Russell Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 3b5e0cbb4fb6e2a599d72652f56a9acb6af16bcf Author: Matthew Wilcox Date: Fri Sep 29 02:01:30 2006 -0700 [PATCH] SuperH list is moderated I just got a bounce telling me my contributions aren't welcome. Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 5ddb88c0ab636e6ac0b5e409f6288a814dc87275 Author: Pavel Machek Date: Fri Sep 29 02:01:29 2006 -0700 [PATCH] network block device is mostly known as "NBD" People search maintainers for NBD and then decide it is not maintained. (akpm: ditto LVM. And other things, but I forget what they were) Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 8e9cb8fdab0709c508cd9689bee6916a270191cc Author: Pavel Machek Date: Fri Sep 29 02:01:29 2006 -0700 [PATCH] SubmittingPatches cleanups This cleans up SubmittingPatches a bit. Signed-off-by: Pavel Machek Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 1497b2749babb01458a6d9dfd4dfb493b3d388f2 Author: Andreas Mohr Date: Fri Sep 29 02:01:28 2006 -0700 [PATCH] lib/ts_fsm.c: constify structs Constify two structs. Correct some typos. Compile-tested and run-tested (module inserted) on 2.6.18-rc4-mm3. Signed-off-by: Andreas Mohr Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 4050914f7c2665736a82265a029466071a90094e Author: Akinobu Mita Date: Fri Sep 29 02:01:27 2006 -0700 [PATCH] rate limiting for the ldisc open failure messages This patch limits the messages when ldisc open faulures happen. It happens under memory pressure. Signed-off-by: Akinobu Mita Acked-by: Alan Cox Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 1a036cdd955b695b7e09e6505e6d6eba697f043e Author: Randy Dunlap Date: Fri Sep 29 02:01:26 2006 -0700 [PATCH] Mention Documenation/ABI/ requirements in Documentation/SubmitChecklist Mention Documenation/ABI/ requirements in Documentation/SubmitChecklist. Signed-off-by: Randy Dunlap Cc: Greg KH Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 3f9e7949f86dfe2bd9a1ad0604f78e7683c059de Author: Hugh Dickins Date: Fri Sep 29 02:01:26 2006 -0700 [PATCH] valid_swaphandles() fix akpm draws my attention to the fact that sysctl(VM_PAGE_CLUSTER) might conceivably change page_cluster to 0 while valid_swaphandles() is in the middle of using it, leading to an embarrassingly long loop: take a local snapshot of page_cluster and work with that. Signed-off-by: Hugh Dickins Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 2d1d43f6a43b703587e759145f69467e7c6553a7 Author: Chandra Seetharaman Date: Fri Sep 29 02:01:25 2006 -0700 [PATCH] call mm/page-writeback.c:set_ratelimit() when new pages are hot-added ratelimit_pages in page-writeback.c is recalculated (in set_ratelimit()) every time a CPU is hot-added/removed. But this value is not recalculated when new pages are hot-added. This patch fixes that problem by calling set_ratelimit() when new pages are hot-added. [akpm@osdl.org: cleanups] Signed-off-by: Chandra Seetharaman Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 40c99aae23529f3d069ae08836ae46fadb3fd2bd Author: Chandra Seetharaman Date: Fri Sep 29 02:01:24 2006 -0700 [PATCH] remove static variable mm/page-writeback.c:total_pages page-writeback.c has a static local variable "total_pages", which is the total number of pages in the system. There is a global variable "vm_total_pages", which is the total number of pages the VM controls. Both are assigned from the return value of nr_free_pagecache_pages(). This patch removes the local variable and uses the global variable in that place. One more issue with the local static variable "total_pages" is that it is not updated when new pages are hot-added. Since vm_total_pages is updated when new pages are hot-added, this patch fixes that problem too. Signed-off-by: Chandra Seetharaman Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 153dcc54df826d2f8413c026313cba673c6bcc5b Author: Geoff Levand Date: Fri Sep 29 02:01:23 2006 -0700 [PATCH] mem driver: fix conditional on isa i/o support This change corrects the logic on the preprocessor conditionals that include support for ISA port i/o (/dev/ioports) into the mem character driver. This fixes the following error when building for powerpc platforms with CONFIG_PCI=n. drivers/built-in.o: undefined reference to `pci_io_base' Signed-off-by: Geoff Levand Acked-by: Linas Vepstas Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 781b823e093b6ab3fd489f7d56ed869d27a78c1d Author: Kaz Kojima Date: Fri Sep 29 02:01:22 2006 -0700 [PATCH] SuperH maintainership change I think this is a time to step down from my SUPERH architecture maintainerships. The major development issues for this port seem to shift on the hardwares I can't access and I have no recent activity on kernel. I shouldn't qualify as a maintainer of SUPERH port now and there is no problem because Paul is actively maintaining it. The attached patch drops my name, address and web URL from MAINTAINERS file. Signed-off-by: Kazumoto Kojima Cc: Paul Mundt Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit e518ddb7ba44a3d852c0e41961365844c76eb2bf Author: Andreas Mohr Date: Fri Sep 29 02:01:22 2006 -0700 [PATCH] fs/namei.c: replace multiple current->fs by shortcut variable Replace current->fs by fs helper variable to reduce some indirection overhead and (at least at the moment, before the current_thread_info() %gs PDA improvement is available) get rid of more costly current references. Reduces fs/namei.o from 37786 to 37082 Bytes (704 Bytes saved). [akpm@osdl.org: cleanup] Signed-off-by: Andreas Mohr Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit c16a02d6f5fcfe05dc6fd40aa80a8e1d055300db Author: Alan Stern Date: Fri Sep 29 02:01:21 2006 -0700 [PATCH] Add section on function return values to CodingStyle This patch (as776) adds a new chapter to Documentation/CodingStyle, explaining the circumstances under which a function should return 0 for failure and non-zero for success as opposed to a negative error code for failure and 0 for success. Signed-off-by: Alan Stern Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit fdf8cb0909b531f9ae8f9b9d7e4eb35ba3505f07 Author: Andreas Mohr Date: Fri Sep 29 02:01:20 2006 -0700 [PATCH] lib/rwsem.c: un-inline rwsem_down_failed_common() Un-inlining rwsem_down_failed_common() (two callsites) reduced lib/rwsem.o on my Athlon, gcc 4.1.2 from 5935 to 5480 Bytes (455 Bytes saved). I thus guess that reduced icache footprint (and better function caching) is worth more than any function call overhead. Signed-off-by: Andreas Mohr Cc: David Howells Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 2752e401148a064a23a5a1e92d502d05017a560c Author: Jim Lewis Date: Fri Sep 29 02:01:19 2006 -0700 [PATCH] Add to MAINTAINERS file This patch adds Jim Lewis to the MAINTAINERS file for the Spidernet network driver. Signed-off-by: James K Lewis Cc: Jeff Garzik Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit a7422bf8a6feee6ec0c130fab7080df0cea86ebc Author: Serge E. Hallyn Date: Fri Sep 29 02:01:18 2006 -0700 [PATCH] loop: forward-port resource leak checks from Solar Forward port of the patch by Solar and ported by Julio. Compiles, boots, and passes my looptorturetest.sh. Signed-off-by: Serge E. Hallyn Cc: Julio Auto Cc: Solar Designer Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit cdae9695870895dd6be4c7d6d31d8704ea27f064 Author: Andrew Morton Date: Fri Sep 29 02:01:17 2006 -0700 [PATCH] remove sound/oss/COPYING This appears to be a verbatim copy-n-paste of the GPL. Cc: Pavel Machek Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit b1aac8bb824c658ddebd296b088a8bff5029c288 Author: Paul Jackson Date: Fri Sep 29 02:01:17 2006 -0700 [PATCH] cpuset: hotunplug cpus and mems in all cpusets The cpuset code handling hot unplug of CPUs or Memory Nodes was incorrect - it could remove a CPU or Node from the top cpuset, while leaving it still in some child cpusets. One basic rule of cpusets is that each cpusets cpus and mems are subsets of its parents. The cpuset hot unplug code violated this rule. So the cpuset hotunplug handler must walk down the tree, removing any removed CPU or Node from all cpusets. However, it is not allowed to make a cpusets cpus or mems become empty. They can only transition from empty to non-empty, not back. So if the last CPU or Node would be removed from a cpuset by the above walk, we scan back up the cpuset hierarchy, finding the nearest ancestor that still has something online, and copy its CPU or Memory placement. Signed-off-by: Paul Jackson Cc: Nathan Lynch Cc: Anton Blanchard Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 38837fc75acb7fa9b0e111b0241fe4fe76c5d4b3 Author: Paul Jackson Date: Fri Sep 29 02:01:16 2006 -0700 [PATCH] cpuset: top_cpuset tracks hotplug changes to node_online_map Change the list of memory nodes allowed to tasks in the top (root) nodeset to dynamically track what cpus are online, using a call to a cpuset hook from the memory hotplug code. Make this top cpus file read-only. On systems that have cpusets configured in their kernel, but that aren't actively using cpusets (for some distros, this covers the majority of systems) all tasks end up in the top cpuset. If that system does support memory hotplug, then these tasks cannot make use of memory nodes that are added after system boot, because the memory nodes are not allowed in the top cpuset. This is a surprising regression over earlier kernels that didn't have cpusets enabled. One key motivation for this change is to remain consistent with the behaviour for the top_cpuset's 'cpus', which is also read-only, and which automatically tracks the cpu_online_map. This change also has the minor benefit that it fixes a long standing, little noticed, minor bug in cpusets. The cpuset performance tweak to short circuit the cpuset_zone_allowed() check on systems with just a single cpuset (see 'number_of_cpusets', in linux/cpuset.h) meant that simply changing the 'mems' of the top_cpuset had no affect, even though the change (the write system call) appeared to succeed. With the following change, that write to the 'mems' file fails -EACCES, and the 'mems' file stubbornly refuses to be changed via user space writes. Thus no one should be mislead into thinking they've changed the top_cpusets's 'mems' when in affect they haven't. In order to keep the behaviour of cpusets consistent between systems actively making use of them and systems not using them, this patch changes the behaviour of the 'mems' file in the top (root) cpuset, making it read only, and making it automatically track the value of node_online_map. Thus tasks in the top cpuset will have automatic use of hot plugged memory nodes allowed by their cpuset. [akpm@osdl.org: build fix] [bunk@stusta.de: build fix] Signed-off-by: Paul Jackson Signed-off-by: Adrian Bunk Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit af3ffa6758dbd2ab7ebe62dddf66b3aa94d64eeb Author: Pavel Machek Date: Fri Sep 29 02:01:14 2006 -0700 [PATCH] Fix typo in rtc kconfig Fix simple typo in RTC_HCTOSYS option. Signed-off-by: Pavel Machek Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit b78483a4ba60d5d90930262a533a784e1d9df660 Author: Nick Piggin Date: Fri Sep 29 02:01:14 2006 -0700 [PATCH] oom: don't kill current when another OOM in progress A previous patch to allow an exiting task to OOM kill itself (and thereby avoid a little deadlock) introduced a problem. We don't want the PF_EXITING task, even if it is 'current', to access mem reserves if there is already a TIF_MEMDIE process in the system sucking up reserves. Also make the commenting a little bit clearer, and note that our current scheme of effectively single threading the OOM killer is not itself perfect. Signed-off-by: Nick Piggin Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 01017a227044d64face2588fab9427a1da1bdb9f Author: Oleg Nesterov Date: Fri Sep 29 02:01:13 2006 -0700 [PATCH] oom_kill_task(): cleanup ->mm checks - It is not possible to have task->mm == &init_mm. - task_lock() buys nothing for 'if (!p->mm)' check. Signed-off-by: Oleg Nesterov Cc: Nick Piggin Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 972c4ea59c9dbf82647ee9665d9e945241911a51 Author: Oleg Nesterov Date: Fri Sep 29 02:01:12 2006 -0700 [PATCH] select_bad_process(): cleanup 'releasing' check No logic changes, but imho easier to read. Signed-off-by: Oleg Nesterov Acked-by: Nick Piggin Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 28324d1df646521256e83389244adcce98e89ff2 Author: Oleg Nesterov Date: Fri Sep 29 02:01:12 2006 -0700 [PATCH] select_bad_process(): kill a bogus PF_DEAD/TASK_DEAD check The only one usage of TASK_DEAD outside of last schedule path, select_bad_process: for_each_task(p) { if (!p->mm) continue; ... if (p->state == TASK_DEAD) continue; ... TASK_DEAD state is set at the end of do_exit(), this means that p->mm was already set == NULL by exit_mm(), so this task was already rejected by 'if (!p->mm)' above. Note also that the caller holds tasklist_lock, this means that p can't pass exit_notify() and then set TASK_DEAD when p->mm != NULL. Also, remove open-coded is_init(). Signed-off-by: Oleg Nesterov Cc: Ingo Molnar Cc: Nick Piggin Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit c394cc9fbb367f87faa2228ec2eabacd2d4701c6 Author: Oleg Nesterov Date: Fri Sep 29 02:01:11 2006 -0700 [PATCH] introduce TASK_DEAD state I am not sure about this patch, I am asking Ingo to take a decision. task_struct->state == EXIT_DEAD is a very special case, to avoid a confusion it makes sense to introduce a new state, TASK_DEAD, while EXIT_DEAD should live only in ->exit_state as documented in sched.h. Note that this state is not visible to user-space, get_task_state() masks off unsuitable states. Signed-off-by: Oleg Nesterov Cc: Ingo Molnar Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 55a101f8f71a3d3dbda7b5c77083ffe47552f831 Author: Oleg Nesterov Date: Fri Sep 29 02:01:10 2006 -0700 [PATCH] kill PF_DEAD flag After the previous change (->flags & PF_DEAD) <=> (->state == EXIT_DEAD), we don't need PF_DEAD any longer. Signed-off-by: Oleg Nesterov Cc: Ingo Molnar Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 29b884921634e1e01cbd276e1c9b8fc07a7e4a90 Author: Oleg Nesterov Date: Fri Sep 29 02:01:09 2006 -0700 [PATCH] set EXIT_DEAD state in do_exit(), not in schedule() schedule() checks PF_DEAD on every context switch and sets ->state = EXIT_DEAD to ensure that the exiting task will be deactivated. Note that this EXIT_DEAD is in fact a "random" value, we can use any bit except normal TASK_XXX values. It is better to set this state in do_exit() along with PF_DEAD flag and remove that check in schedule(). We are safe wrt concurrent try_to_wake_up() (for example ptrace, tkill), it can not change task's ->state: the 'state' argument of try_to_wake_up() can't have EXIT_DEAD bit. And in case when try_to_wake_up() sees a stale value of ->state == TASK_RUNNING it will do nothing. Signed-off-by: Oleg Nesterov Cc: Ingo Molnar Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit e8106b941ceab68cc5ff713df7b1276484554584 Author: Arjan van de Ven Date: Fri Sep 29 02:01:08 2006 -0700 [PATCH] lockdep: core, add enable/disable_irq_irqsave/irqrestore() APIs Introduce the disable_irq_nosync_lockdep_irqsave() and enable_irq_lockdep_irqrestore() APIs. These are needed for NE2000; basically NE2000 calls disable_irq and enable_irq as locking against the IRQ handler, but both in cases where interrupts are on and off. This means that lockdep needs to track the old state of the virtual irq flags on disable_irq, and restore these at enable_irq time. Signed-off-by: Arjan van de Ven Signed-off-by: Ingo Molnar Cc: Jeff Garzik Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 6ea36ddbd1abfe867f1e874a8312bfd811e5fd2c Author: Alexey Dobriyan Date: Fri Sep 29 02:01:07 2006 -0700 [PATCH] Ban register_filesystem(NULL); Everyone passes valid pointer there. Signed-off-by: Alexey Dobriyan Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit d826380b305971ff9825ef005ff039d655542bbb Author: Alexey Dobriyan Date: Fri Sep 29 02:01:06 2006 -0700 [PATCH] 9p: fix leak on error path If register_filesystem() fails mux workqueue must be killed. Signed-off-by: Alexey Dobriyan Cc: Eric Van Hensbergen Cc: Ron Minnich Cc: Latchesar Ionkov Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 368bdb3d616fa352971f45b423ae6344715e620b Author: Alexey Dobriyan Date: Fri Sep 29 02:01:05 2006 -0700 [PATCH] cramfs: make cramfs_uncompress_exit() return void It always returns 0, so relying on it is useless. The only caller isn't checking return value. In general, un-, de-, -free functions should return void. Signed-off-by: Alexey Dobriyan Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit a4376e13ce07774be14e83fe501ef5c8500b83a1 Author: Alexey Dobriyan Date: Fri Sep 29 02:01:04 2006 -0700 [PATCH] freevxfs: fix leak on error path If register_filesystem() fails, vxfs_inode cache must be destroyed. Signed-off-by: Alexey Dobriyan Acked-by: Christoph Hellwig Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 50d44ed009a628e6d5c784fae18ea743d7cf199a Author: Alexey Dobriyan Date: Fri Sep 29 02:01:04 2006 -0700 [PATCH] cramfs: rewrite init_cramfs_fs() Two lines -- two bugs. :-( Signed-off-by: Alexey Dobriyan Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit dcc8e559ee5ae03fa6bdb8611d76d86d0083e793 Author: Josh Triplett Date: Fri Sep 29 02:01:03 2006 -0700 [PATCH] Pass a lock expression to __cond_lock, like __acquire and __release Currently, __acquire and __release take a lock expression, but __cond_lock takes only a condition, not the lock acquired if the expression evaluates to true. Change __cond_lock to accept a lock expression, and change all the callers to pass in a lock expression. Signed-off-by: Josh Triplett Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 7d2c502f141042f6e5d145aa40107685d751e5a3 Author: Randy Dunlap Date: Fri Sep 29 02:01:02 2006 -0700 [PATCH] doc: fix kernel-parameters 'quiet' Fix "quiet" parameter doc. No trailing '=' sign, no value after it. And it disables "most" kernel messages, not all of them. Signed-off-by: Randy Dunlap Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit f7ca54f486d3b07f48b8bbc92705bde6ba98ee54 Author: Frederik Deweerdt Date: Fri Sep 29 02:01:02 2006 -0700 [PATCH] fix mem_write() return value At the beginning of the routine, "copied" is set to 0, but it is no good because in lines 805 and 812 it is set to other values. Finally, the routine returns as if it copied 12 (=ENOMEM) bytes less than it actually did. Signed-off-by: Frederik Deweerdt Acked-by: Eric Biederman Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 87d7c8aca8670a772f74766c19e0345a606b67a9 Author: Jason Baron Date: Fri Sep 29 02:01:01 2006 -0700 [PATCH] block_dev.c mutex_lock_nested() fix In the case below we are locking the whole disk not a partition. This change simply brings the code in line with the piece above where when we are the 'first' opener, and we are a partition. Signed-off-by: Jason Baron Acked-by: Peter Zijlstra Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 303912e2a32aa73785b4c4dee15466d944a38a46 Author: Josh Triplett Date: Fri Sep 29 02:01:00 2006 -0700 [PATCH] Replace _spin_trylock with spin_trylock in the IRQ variants to use __cond_lock spin_trylock_irq and spin_trylock_irqsave use _spin_trylock, which does not use the __cond_lock wrapper annotation and thus does not affect the lock context; change them to use spin_trylock instead, which does use __cond_lock. Signed-off-by: Josh Triplett Cc: Ingo Molnar Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 9f50b93f066f8dc339de9b0eb78a22a75e6c8f8f Author: Josh Triplett Date: Fri Sep 29 02:00:59 2006 -0700 [PATCH] Make spinlock/rwlock annotations more accurate by using parameters, not types The lock annotations used on spinlocks and rwlocks currently use __{acquires,releases}(spinlock_t) and __{acquires,releases}(rwlock_t), respectively. This loses the information of which lock actually got acquired or released, and assumes a different type for the parameter of __acquires and __releases than the rest of the kernel. While the current implementations of __acquires and __releases throw away their argument, this will not always remain the case. Change this to use the lock parameter instead, to preserve this information and increase consistency in usage of __acquires and __releases. Signed-off-by: Josh Triplett Cc: Ingo Molnar Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 92e9a8507ba81ff9e25bd9c5030ff8586269eefb Author: Alexey Dobriyan Date: Fri Sep 29 02:00:58 2006 -0700 [PATCH] windfarm_smu_sat.c: simplify around i2c_add_driver() Signed-off-by: Alexey Dobriyan Acked-by: Benjamin Herrenschmidt Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 28298232a15c48ea9835d5d24577cde87923e55c Author: Alan Cox Date: Fri Sep 29 02:00:58 2006 -0700 [PATCH] tty: Fix bits and note more bits to fix If your driver implements "break on" and "break off" this ensures you won't get multiple overlapping requests or requests in parallel. If your driver has its own break handling then its still your problem as the driver author. Break is also now serialized against writes from user space properly but no new guarantees are made driver level about writes from the line discipline itself (eg flow control or echo) Signed-off-by: Alan Cox Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit de2a84f2be8ed8a166f13d6aa2ae474541172bb2 Author: Alan Cox Date: Fri Sep 29 02:00:57 2006 -0700 [PATCH] solaris emulation: incorrect tty locking [akpm@osdl.org: build fix] [akpm@osdl.org: warning fix] Signed-off-by: Alan Cox Acked-by: David S. Miller Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 074a5dde04abc66eea30368c74913d83b1a410f9 Author: Henrik Kretzschmar Date: Fri Sep 29 02:00:56 2006 -0700 [PATCH] docbook: fix segfault in docproc.c Adds a missing exit, if the file that should be parsed couldn't be opened. Without it crashes with a segfault, cause the filedescriptor is accessed even if the file could not be opened. Signed-off-by: Henrik Kretzschmar Acked-by: Randy Dunlap Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit aaa2a97eb9c0e91d7abc66bf76811a9599fdb3ee Author: Oleg Nesterov Date: Fri Sep 29 02:00:55 2006 -0700 [PATCH] sys_get_robust_list(): don't take tasklist_lock use rcu locks for find_task_by_pid(). Signed-off-by: Oleg Nesterov Cc: Ingo Molnar Cc: Thomas Gleixner Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit d359b549bf3d7f42f0084918a4816ea4572e507c Author: Oleg Nesterov Date: Fri Sep 29 02:00:55 2006 -0700 [PATCH] futex_find_get_task(): don't take tasklist_lock It is ok to do find_task_by_pid() + get_task_struct() under rcu_read_lock(), we cand drop tasklist_lock. Note that testing of ->exit_state is racy with or without tasklist anyway. Signed-off-by: Oleg Nesterov Acked-by: Ingo Molnar Cc: Thomas Gleixner Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 44938af6e08580514abce8bea23ae1c034ea0b1d Author: Ian Kent Date: Fri Sep 29 02:00:54 2006 -0700 [PATCH] autofs4: pending flag not cleared on mount fail During testing I've found that the mount pending flag can be left set at exit from autofs4_lookup after a failed mount request. This shouldn't be allowed to happen and causes incorrect error returns. Signed-off-by: Ian Kent Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit be3ca7fecb1a9903c6253f49aec0af2a0f3a04e4 Author: Ian Kent Date: Fri Sep 29 02:00:53 2006 -0700 [PATCH] autofs4: autofs4_follow_link false negative fix The check for an empty directory in the autofs4_follow_link method fails occassionally due to old dentrys. We had the same problem autofs4_revalidate ages ago. I thought we wouldn't need this in autofs4_follow_link, silly me. Signed-off-by: Ian Kent Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 5b160f5ecd2f1b6df2e0015dc1f319c8ef803d62 Author: Oleg Nesterov Date: Fri Sep 29 02:00:52 2006 -0700 [PATCH] copy_process: cosmetic ->ioprio tweak copy_process: // holds tasklist_lock + ->siglock /* * inherit ioprio */ p->ioprio = current->ioprio; Why? ->ioprio was already copied in dup_task_struct(). I guess this is needed to ensure that the child can't escape sys_ioprio_set(IOPRIO_WHO_{PGRP,USER}), yes? In that case we don't need ->siglock held, and the comment should be updated. Signed-off-by: Oleg Nesterov Cc: Jens Axboe Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 1c573afebc6213e4372e0d8352034c23d5262e1f Author: Oleg Nesterov Date: Fri Sep 29 02:00:51 2006 -0700 [PATCH] reparent_to_init(): use has_rt_policy() Remove open-coded has_rt_policy(), no changes in kernel/exit.o Signed-off-by: Oleg Nesterov Cc: Thomas Gleixner Cc: Ingo Molnar Cc: Steven Rostedt Cc: Nick Piggin Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 8dc3e9099e01dfdd53f27f329c268eced03dfef6 Author: Oleg Nesterov Date: Fri Sep 29 02:00:50 2006 -0700 [PATCH] sched_setscheduler: fix? policy checks I am not sure this patch is correct: I can't understand what the current code does, and I don't know what it was supposed to do. The comment says: * can't change policy, except between SCHED_NORMAL * and SCHED_BATCH: The code: if (((policy != SCHED_NORMAL && p->policy != SCHED_BATCH) && (policy != SCHED_BATCH && p->policy != SCHED_NORMAL)) && But this is equivalent to: if ( (is_rt_policy(policy) && has_rt_policy(p)) && which means something different. We can't _decrease_ the current ->rt_priority with such a check (if rlim[RLIMIT_RTPRIO] == 0). Probably, it was supposed to be: if ( !(policy == SCHED_NORMAL && p->policy == SCHED_BATCH) && !(policy == SCHED_BATCH && p->policy == SCHED_NORMAL) this matches the comment, but strange: it doesn't allow to _drop_ the realtime priority when rlim[RLIMIT_RTPRIO] == 0. I think the right check would be: /* can't set/change rt policy */ if (is_rt_policy(policy) && policy != p->policy && !rlim_rtprio) return -EPERM; Signed-off-by: Oleg Nesterov Cc: Thomas Gleixner Cc: Ingo Molnar Cc: Steven Rostedt Cc: Nick Piggin Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 57a6f51c4281aa3119975473c70dce0480d322bd Author: Oleg Nesterov Date: Fri Sep 29 02:00:49 2006 -0700 [PATCH] introduce is_rt_policy() helper Imho, makes the code a bit easier to read. Signed-off-by: Oleg Nesterov Cc: Thomas Gleixner Cc: Ingo Molnar Cc: Steven Rostedt Cc: Nick Piggin Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 5fe1d75f34974046fffcca5e22fb8a7b42fded33 Author: Oleg Nesterov Date: Fri Sep 29 02:00:48 2006 -0700 [PATCH] do_sched_setscheduler(): don't take tasklist_lock Use rcu locks instead. sched_setscheduler() now takes ->siglock before reading ->signal->rlim[]. Signed-off-by: Oleg Nesterov Cc: Thomas Gleixner Cc: Ingo Molnar Cc: Steven Rostedt Cc: Nick Piggin Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit c9472e0f28cd2f0695a0ac3a0b4bd33f21714a7e Author: Cal Peake Date: Fri Sep 29 02:00:47 2006 -0700 [PATCH] kill extraneous printk in kernel_restart() Get rid of an extraneous printk in kernel_restart(). Signed-off-by: Cal Peake Acked-by: Eric W. Biederman Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 111dbe0c8a21dffa473239861be47ebc87f593b3 Author: Björn Steinbrink Date: Fri Sep 29 02:00:46 2006 -0700 [PATCH] Fix ____call_usermodehelper errors being silently ignored If ____call_usermodehelper fails, we're not interested in the child process' exit value, but the real error, so let's stop wait_for_helper from overwriting it in that case. Issue discovered by Benedikt Böhm while working on a Linux-VServer usermode helper. Signed-off-by: Björn Steinbrink Cc: Rusty Russell Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 3e26a423e78c1bb1ebd29c49d4ae4ccbbacd861b Author: Rolf Eike Beer Date: Fri Sep 29 02:00:46 2006 -0700 [PATCH] Return better error codes if drivers/char/raw.c module init fails Currently this module just returns 1 if anything on module init fails. Store the error code of the different function calls and return their error on problems. Signed-off-by: Rolf Eike Beer Cc: Greg KH Signed-off-by: Andrew Morton [ Fixed to not unregister twice on error ] Signed-off-by: Linus Torvalds commit 416bc51292f977b43b010c6dd937522b90062390 Author: Roland McGrath Date: Fri Sep 29 02:00:45 2006 -0700 [PATCH] Use decimal for PTRACE_ATTACH and PTRACE_DETACH. It is sure confusing that linux/ptrace.h has: #define PTRACE_SINGLESTEP 9 #define PTRACE_ATTACH 0x10 #define PTRACE_DETACH 0x11 #define PTRACE_SYSCALL 24 All the low-numbered constants are in decimal, but the last two in hex. It sure makes it likely that someone will look at this and think that 9, 10, 11 are used, and that 16 and 17 are not used. How about we use the same notation for all the numbers [0,24] in the same short list? Signed-off-by: Roland McGrath Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit cf3e43dbe0cc4a7ee7f6ab1bb5231dcfda164e02 Author: Jonathan Corbet Date: Fri Sep 29 02:00:44 2006 -0700 [PATCH] cdev documentation Add some documentation comments for the cdev interface. Signed-off-by: Jonathan Corbet Cc: Rolf Eike Beer Acked-by: "Randy.Dunlap" Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 5785c95baede8459d70c4aa0f7becb6e8b5fde4b Author: Arjan van de Ven Date: Fri Sep 29 02:00:43 2006 -0700 [PATCH] tty: make termios_sem a mutex [akpm@osdl.org: fix] Cc: Alan Cox Cc: Arjan van de Ven Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 54306cf04c0ea0a8c432603dbc657ab62a438668 Author: Alan Cox Date: Fri Sep 29 02:00:42 2006 -0700 [PATCH] exit: fix crash case If we are going to BUG() not panic() here then we should cover the case of the BUG being compiled out Signed-off-by: Alan Cox Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 3cfd0885fac78c130a119ed576d18b5948fa2a5a Author: Alan Cox Date: Fri Sep 29 02:00:41 2006 -0700 [PATCH] tty: stop the tty vanishing under procfs access Signed-off-by: Alan Cox Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 808a0d389ff8d85017ec811085a6083394c02caf Author: Alan Cox Date: Fri Sep 29 02:00:40 2006 -0700 [PATCH] tty: lock ticogwinsz Now we lock the set ioctl its trivial to lock the get one so the data copied is consistent. At the moment we have the BKL here but this removes the need for it and is a step in the right direction Signed-off-by: Alan Cox Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 1266b1e1aed0a4d7d5cb569deca8c31cba34a990 Author: Alan Cox Date: Fri Sep 29 02:00:40 2006 -0700 [PATCH] tty: trivial kzalloc opportunity Signed-off-by: Alan Cox Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 0b4a8a789a328af6aac613734c362cf6aad72201 Author: Roland McGrath Date: Fri Sep 29 02:00:39 2006 -0700 [PATCH] kexec warning fix This fixes a couple of compiler warnings, and adds paranoia checks as well. Signed-off-by: Roland McGrath Cc: "Eric W. Biederman" Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 3171a0305d62e6627a24bff35af4f997e4988a80 Author: Atsushi Nemoto Date: Fri Sep 29 02:00:32 2006 -0700 [PATCH] simplify update_times (avoid jiffies/jiffies_64 aliasing problem) Pass ticks to do_timer() and update_times(), and adjust x86_64 and s390 timer interrupt handler with this change. Currently update_times() calculates ticks by "jiffies - wall_jiffies", but callers of do_timer() should know how many ticks to update. Passing ticks get rid of this redundant calculation. Also there are another redundancy pointed out by Martin Schwidefsky. This cleanup make a barrier added by 5aee405c662ca644980c184774277fc6d0769a84 needless. So this patch removes it. As a bonus, this cleanup make wall_jiffies can be removed easily, since now wall_jiffies is always synced with jiffies. (This patch does not really remove wall_jiffies. It would be another cleanup patch) Signed-off-by: Atsushi Nemoto Cc: Martin Schwidefsky Cc: "Eric W. Biederman" Cc: Thomas Gleixner Cc: Ingo Molnar Cc: john stultz Cc: Andi Kleen Cc: Paul Mackerras Cc: Benjamin Herrenschmidt Cc: Richard Henderson Cc: Ivan Kokshaysky Acked-by: Russell King Cc: Ian Molton Cc: Mikael Starvik Acked-by: David Howells Cc: Yoshinori Sato Cc: Hirokazu Takata Acked-by: Ralf Baechle Cc: Kyle McMartin Cc: Heiko Carstens Cc: Martin Schwidefsky Cc: Paul Mundt Cc: Kazumoto Kojima Cc: Richard Curnow Cc: William Lee Irwin III Cc: "David S. Miller" Cc: Jeff Dike Cc: Paolo 'Blaisorblade' Giarrusso Cc: Miles Bader Cc: Chris Zankel Acked-by: "Luck, Tony" Cc: Geert Uytterhoeven Cc: Roman Zippel Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 27d91e07f9b863fa94491ffafe250580f0c2ce78 Author: Roland McGrath Date: Fri Sep 29 02:00:31 2006 -0700 [PATCH] __dequeue_signal() cleanup This tightens up __dequeue_signal a little. It also avoids doing recalc_sigpending twice in a row, instead doing it once in dequeue_signal. Signed-off-by: Roland McGrath Cc: Oleg Nesterov Cc: Ingo Molnar Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit b9ecb2bd5d3ab8904752685696cb76aac1f3fef2 Author: Roland McGrath Date: Fri Sep 29 02:00:31 2006 -0700 [PATCH] has_stopped_jobs() cleanup This check has been obsolete since the introduction of TASK_TRACED. Now TASK_STOPPED always means job control stop. Signed-off-by: Roland McGrath Cc: Oleg Nesterov Cc: Ingo Molnar Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit fb50ae7446abb35184be029c51f825e45a4e0670 Author: Joel & Rebecca VanderZee Date: Fri Sep 29 02:00:30 2006 -0700 [PATCH] I/O Error attempting to read last partial block of a file in an ISO9660 file system There was an I/O error that prevented reading the last partial block of large files in an ISO9660 filesystem. The error was generated when a file comprised more than one section and had a size that was not an exact multiple of the filesystem block size. This patch removes the check (and failure) for reading into the last partial block (and possibly beyond) for multiple-section files. It worked in my testing to prevent reading beyond the end of the section; my first patch just incremented the sect_size block count for a partial block and continued doing the check. But there is a commment in the source code about reading beyond the end of the file to fill a page cache. Failing to access beyond the section would prevent reading beyond the end of the file. Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit e4b765551aa6355eae60b644bed851a9477c4e2b Author: Toyo Abe Date: Fri Sep 29 02:00:29 2006 -0700 [PATCH] posix-timers: Fix the flags handling in posix_cpu_nsleep() When a posix_cpu_nsleep() sleep is interrupted by a signal more than twice, it incorrectly reports the sleep time remaining to the user. Because posix_cpu_nsleep() doesn't report back to the user when it's called from restart function due to the wrong flags handling. This patch, which applies after previous one, moves the nanosleep() function from posix_cpu_nsleep() to do_cpu_nanosleep() and cleans up the flags handling appropriately. Signed-off-by: Toyo Abe Cc: Thomas Gleixner Cc: Ingo Molnar Cc: Roland McGrath Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 1711ef3866b0360e102327389fe4b76c849bbe83 Author: Toyo Abe Date: Fri Sep 29 02:00:28 2006 -0700 [PATCH] posix-timers: Fix clock_nanosleep() doesn't return the remaining time in compatibility mode The clock_nanosleep() function does not return the time remaining when the sleep is interrupted by a signal. This patch creates a new call out, compat_clock_nanosleep_restart(), which handles returning the remaining time after a sleep is interrupted. This patch revives clock_nanosleep_restart(). It is now accessed via the new call out. The compat_clock_nanosleep_restart() is used for compatibility access. Since this is implemented in compatibility mode the normal path is virtually unaffected - no real performance impact. Signed-off-by: Toyo Abe Cc: Thomas Gleixner Cc: Ingo Molnar Cc: Roland McGrath Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 9c4751fd0eab5b8ebbfafb28cbcc8e03b0da5933 Author: jens m. noedler Date: Fri Sep 29 02:00:27 2006 -0700 [PATCH] update Documentation/kernel-parameters.txt Signed-off-by: jens m. noedler Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit b525a7e4445c4702dfc541930747517615c0c72a Author: Jan Kara Date: Fri Sep 29 02:00:26 2006 -0700 [PATCH] dquot: add proper locking when using current->signal->tty Dquot passes the tty to tty_write_message without locking Signed-off-by: Jan Kara Cc: Alan Cox Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 254e948b2908dd50df9dca4e6ed14b6cc8524fc9 Author: Catalin Marinas Date: Fri Sep 29 02:00:25 2006 -0700 [PATCH] Fix memory leak in vc_resize/vc_allocate Memory leaks can happen in the vc_resize() function in drivers/char/vt.c because of the vc->vc_screenbuf variable overriding in vc_allocate(). The kmemleak reported trace is as follows: <__kmalloc> This patch no longer allocates a screen buffer in vc_allocate() if it was already allocated by vc_resize(). Signed-off-by: Catalin Marinas Acked-by: "Antonino A. Daplas" Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit bce9a234ce7d8dddbfcec28e37ea58b5d8f6003d Author: Oleg Nesterov Date: Fri Sep 29 02:00:25 2006 -0700 [PATCH] elf_fdpic_core_dump: don't take tasklist_lock do_each_thread() is rcu-safe, and all tasks which use this ->mm must sleep in wait_for_completion(&mm->core_done) at this point, so we can use RCU locks. Also, remove unneeded INIT_LIST_HEAD(new) before list_add(new, head). Signed-off-by: Oleg Nesterov Acked-By: David Howells Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 486ccb05fdbb7ca79784fdf0d07d2a86de48cf05 Author: Oleg Nesterov Date: Fri Sep 29 02:00:24 2006 -0700 [PATCH] elf_core_dump: don't take tasklist_lock do_each_thread() is rcu-safe, and all tasks which use this ->mm must sleep in wait_for_completion(&mm->core_done) at this point, so we can use RCU locks. Also, remove unneeded INIT_LIST_HEAD(new) before list_add(new, head). Signed-off-by: Oleg Nesterov Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit b22b4cdd53f5e1ee9ef1ef7933ddb77065859d05 Author: Peter Korsgaard Date: Fri Sep 29 02:00:23 2006 -0700 [PATCH] fix serial/amba-pl011.c console Kconfig Fix the Kconfig entry for console on AMBA PL011 to match the code. Signed-off-by: Peter Korsgaard Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 07dccf3344010f9b9df7fe725da7e73bca2992df Author: Akinobu Mita Date: Fri Sep 29 02:00:22 2006 -0700 [PATCH] check return value of cpu_callback Spawing ksoftirqd, migration, or watchdog, and calling init_timers_cpu() may fail with small memory. If it happens in initcalls, kernel NULL pointer dereference happens later. This patch makes crash happen immediately in such cases. It seems a bit better than getting kernel NULL pointer dereference later. Cc: Ingo Molnar Signed-off-by: Akinobu Mita Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 6c2d8b5dcad468cb0bdec3368b53383bde51e487 Author: Tobias Klauser Date: Fri Sep 29 02:00:21 2006 -0700 [PATCH] sound/sparc/dbri: Use ARRAY_SIZE macro Use ARRAY_SIZE macro instead of sizeof(x)/sizeof(x[0]) Signed-off-by: Tobias Klauser Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 2ad3479decccd12301a3f9920a22fa567d4bdae8 Author: Tobias Klauser Date: Fri Sep 29 02:00:20 2006 -0700 [PATCH] sound/mips/au1x00: Use ARRAY_SIZE macro Use ARRAY_SIZE macro instead of sizeof(x)/sizeof(x[0]) Signed-off-by: Tobias Klauser Cc: Ralf Baechle Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit d202a6c0883cf17a4a6e61a12e138598ec3ed32d Author: Ben Dooks Date: Fri Sep 29 02:00:19 2006 -0700 [PATCH] Remove old drivers/char/s3c2410_rtc.c This can now be removed, since there is now a drivers/rtc/rtc-s3c.c driver. Signed-off-by: Ben Dooks Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 99f932f02627b211f7efa9602ddc389d1ccbed2b Author: Alexey Dobriyan Date: Fri Sep 29 02:00:18 2006 -0700 [PATCH] CONFIG_PM=n slim: sound/oss/cs46xx.c Remove some code which is unneeded if CONFIG_PM=n. * Make suspend/resume registration look like the rest of drivers: #ifdef CONFIG_PM in struct pci_driver, prototypes, actual hooks. * Drop CS46XX_ACPI_SUPPORT. It logically duplicated CONFIG_PM. It was hardcoded to 1 approx forever (ALSA merge just moved driver to sound/oss/). * After previous point, sound/oss/cs46xxpm-24.h removed as being useless. * As side effect selling (unused) static inline functions as suspend/resume hooks funkiness removed too. Signed-off-by: Alexey Dobriyan Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit aadcc2eef70640302805a6bb8c0f2a485779eea3 Author: Alexey Dobriyan Date: Fri Sep 29 02:00:16 2006 -0700 [PATCH] CONFIG_PM=n slim: sound/oss/trident.c Remove some code which is unneeded if CONFIG_PM=n. Signed-off-by: Alexey Dobriyan Ackde-by: Muli Ben-Yehuda Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 7dd7d6912b8a978878847fdcd3feef0d1b6471de Author: Alexey Dobriyan Date: Fri Sep 29 02:00:16 2006 -0700 [PATCH] CONFIG_PM=n slim: drivers/parport/parport_serial.c Remove some code which is unneeded if CONFIG_PM=n. Signed-off-by: Alexey Dobriyan Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit af410fc13d95f079910fc3dca7496590c3275967 Author: Johannes Berg Date: Fri Sep 29 02:00:14 2006 -0700 [PATCH] make leds.h include relevant headers Make it possible to include linux/leds.h without first including list.h and spinlock.h. Signed-off-by: Johannes Berg Acked-by: Richard Purdie Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 3ca212b813299899d2968aa0a24a797c3746f5ec Author: Dave Jones Date: Fri Sep 29 02:00:14 2006 -0700 [PATCH] Remove another config.h After the asm/ uses of #include this one is the next biggest source of noise. Signed-off-by: Dave Jones Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit ee731f4f7880b09ca147008ab46ad4e5f72cb8bf Author: Ernie Petrides Date: Fri Sep 29 02:00:13 2006 -0700 [PATCH] fix wrong error code on interrupted close syscalls The problem is that close() syscalls can call a file system's flush handler, which in turn might sleep interruptibly and ultimately pass back an -ERESTARTSYS return value. This happens for files backed by an interruptible NFS mount under nfs_file_flush() when a large file has just been written and nfs_wait_bit_interruptible() detects that there is a signal pending. I have a test case where the "strace" command is used to attach to a process sleeping in such a close(). Since the SIGSTOP is forced onto the victim process (removing it from the thread's "blocked" mask in force_sig_info()), the RPC wait is interrupted and the close() is terminated early. But the file table entry has already been cleared before the flush handler was called. Thus, when the syscall is restarted, the file descriptor appears closed and an EBADF error is returned (which is wrong). What's worse, there is the hypothetical case where another thread of a multi-threaded application might have reused the file descriptor, in which case that file would be mistakenly closed. The bottom line is that close() syscalls are not restartable, and thus -ERESTARTSYS return values should be mapped to -EINTR. This is consistent with the close(2) manual page. The fix is below. Signed-off-by: Ernie Petrides Cc: Roland McGrath Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 7bbab9166a82d15442357cfd63ec530b5b5fb62e Author: Jesper Juhl Date: Fri Sep 29 02:00:12 2006 -0700 [PATCH] Small update to CREDITS Signed-off-by: Jesper Juhl Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit a45bce49545739a940f8bd4ca85c3b7435564893 Author: Paul E. McKenney Date: Fri Sep 29 02:00:11 2006 -0700 [PATCH] memory ordering in __kfifo primitives Both __kfifo_put() and __kfifo_get() have header comments stating that if there is but one concurrent reader and one concurrent writer, locking is not necessary. This is almost the case, but a couple of memory barriers are needed. Another option would be to change the header comments to remove the bit about locking not being needed, and to change the those callers who currently don't use locking to add the required locking. The attachment analyzes this approach, but the patch below seems simpler. Signed-off-by: Paul E. McKenney Cc: Stelian Pop Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 99de055ac065e19ed69de961e97c6336a261b34e Author: Dave Jones Date: Fri Sep 29 02:00:10 2006 -0700 [PATCH] lockdep: print kernel version Lets do the same thing we do for oopses - print out the version in the report. It's an extra line of output though. We could tack it on the end of the INFO: lines, but that screws up Ingo's pretty output. Signed-off-by: Dave Jones Cc: Ingo Molnar Cc: Arjan van de Ven Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 2b33b4dcbe5e09e683eef281f72aef951e17061c Author: Anatoli Antonovitch Date: Fri Sep 29 02:00:09 2006 -0700 [PATCH] atiixp: ATI SB600 IDE support for various modes Support SB600 SATA legacy IDE (DMA enable). Signed-off-by: Anatoli Antonovitch Cc: Jeff Garzik Acked-by: Alan Cox Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 01d553d0fe9f90a132c5ff494872be8d4126be1e Author: Amos Waterland Date: Fri Sep 29 02:00:08 2006 -0700 [PATCH] Chardev checking of overlapping ranges The code in __register_chrdev_region checks that if the driver wishing to register has the same major as an existing driver the new minor range is strictly less than the existing minor range. However, it does not also check that the new minor range is strictly greater than the existing minor range. That is, if driver X has registered with major=x and minor=0-3, __register_chrdev_region will allow driver Y to register with major=x and minor=1-4. Signed-off-by: Amos Waterland Cc: Linas Vepstas Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit f400e198b2ed26ce55b22a1412ded0896e7516ac Author: Sukadev Bhattiprolu Date: Fri Sep 29 02:00:07 2006 -0700 [PATCH] pidspace: is_init() This is an updated version of Eric Biederman's is_init() patch. (http://lkml.org/lkml/2006/2/6/280). It applies cleanly to 2.6.18-rc3 and replaces a few more instances of ->pid == 1 with is_init(). Further, is_init() checks pid and thus removes dependency on Eric's other patches for now. Eric's original description: There are a lot of places in the kernel where we test for init because we give it special properties. Most significantly init must not die. This results in code all over the kernel test ->pid == 1. Introduce is_init to capture this case. With multiple pid spaces for all of the cases affected we are looking for only the first process on the system, not some other process that has pid == 1. Signed-off-by: Eric W. Biederman Signed-off-by: Sukadev Bhattiprolu Cc: Dave Hansen Cc: Serge Hallyn Cc: Cedric Le Goater Cc: Acked-by: Paul Mackerras Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 959ed340f4867fda7684340625f60e211c2296d6 Author: Eric Biederman Date: Fri Sep 29 02:00:06 2006 -0700 [PATCH] Fix conflict with the is_init identifier on parisc This appears to be the only usage of is_init in the kernel besides the usage in sched.h. On ia64 the same function is called in_init. So to remove the conflict and make the kernel more consistent rename is_init is_core is_local and is_local_section to in_init in_core in_local and in_local_section respectively. Thanks to Adrian Bunk who spotted this, and to Matthew Wilcox who suggested this fix. Signed-off-by: Eric Biederman Cc: Kyle McMartin Cc: Matthew Wilcox Cc: Adrian Bunk Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 3b9b8ab65d8eed784b9164d03807cb2bda7b5cd6 Author: Kirill Korotaev Date: Fri Sep 29 02:00:05 2006 -0700 [PATCH] Fix unserialized task->files changing Fixed race on put_files_struct on exec with proc. Restoring files on current on error path may lead to proc having a pointer to already kfree-d files_struct. ->files changing at exit.c and khtread.c are safe as exit_files() makes all things under lock. Found during OpenVZ stress testing. [akpm@osdl.org: add export] Signed-off-by: Pavel Emelianov Signed-off-by: Kirill Korotaev Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit fc09561d6392771a392dea55c287de7e849b6b63 Author: Serge E. Hallyn Date: Fri Sep 29 02:00:04 2006 -0700 [PATCH] kthread: convert arch/i386/kernel/apm.c Convert i386 apm.c from kernel_thread(), whose export is deprecated, to kthread API. Signed-off-by: Serge E. Hallyn Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit ca9bda00b4aafc42cd3d1b9d32934463e2993b4c Author: Alan Cox Date: Fri Sep 29 02:00:03 2006 -0700 [PATCH] tty locking on resize The current kernel serializes console resizes but does not serialize the resize against the tty structure updates. This means that while two parallel resizes cannot mess up the console you can get incorrect results reported. Secondly while doing this I added vc_lock_resize() to lock and resize the console. This leaves all knowledge of the console_sem in the vt/console driver and kicks it out of the tty layer, which is good Thirdly while doing this I decided I couldn't stand "disallocate" any longer so I switched it to "deallocate". Signed-off-by: Alan Cox Cc: Paul Fulghum Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit ae78bf9c4f5fde3c67e2829505f195d7347ce3e4 Author: Chris Mason Date: Fri Sep 29 02:00:03 2006 -0700 [PATCH] add -o flush for fat Fat is commonly used on removable media. Mounting with -o flush tells the FS to write things to disk as quickly as possible. It is like -o sync, but much faster (and not as safe). Signed-off-by: Chris Mason Cc: OGAWA Hirofumi Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 6b77df08a36d989f7dd00ccb6a026a0e96170d16 Author: Arun Sharma Date: Fri Sep 29 02:00:01 2006 -0700 [PATCH] oprofile: ppro: need to enable/disable all the counters Need to enable/disable all the counters instead of just counter 0. This affects all cpus with family=6, including i386/core. Usual symptom: only counter 0 provides samples. Other counters don't produce samples. Signed-off-by: Arun Sharma Cc: Philippe Elie Cc: John Levon Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 50462062a02226a698a211d5bd535376c89b8603 Author: Alexey Dobriyan Date: Fri Sep 29 02:00:01 2006 -0700 [PATCH] fs.h: ifdef security fields [assuming BSD security levels are deleted] The only user of i_security, f_security, s_security fields is SELinux, however, quite a few security modules are trying to get into kernel. So, wrap them under CONFIG_SECURITY. Adding config option for each security field is likely an overkill. Following Stephen Smalley's suggestion, i_security initialization is moved to security_inode_alloc() to not clutter core code with ifdefs and make alloc_inode() codepath tiny little bit smaller and faster. The user of (highly greppable) struct fown_struct::security field is still to be found. I've checked every "fown_struct" and every "f_owner" occurence. Additionally it's removal doesn't break i386 allmodconfig build. struct inode, struct file, struct super_block, struct fown_struct become smaller. P.S. Combined with two reiserfs inode shrinking patches sent to linux-fsdevel, I can finally suck 12 reiserfs inodes into one page. /proc/slabinfo -ext2_inode_cache 388 10 +ext2_inode_cache 384 10 -inode_cache 280 14 +inode_cache 276 14 -proc_inode_cache 296 13 +proc_inode_cache 292 13 -reiser_inode_cache 336 11 +reiser_inode_cache 332 12 <= -shmem_inode_cache 372 10 +shmem_inode_cache 368 10 Signed-off-by: Alexey Dobriyan Cc: Stephen Smalley Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit cfe14677f286c9be5d683b88214def8f4b8a6f24 Author: Alexey Dobriyan Date: Fri Sep 29 02:00:00 2006 -0700 [PATCH] reiserfs: ifdef ACL stuff from inode Shrink reiserfs inode more (by 8 bytes) for ACL non-users: -reiser_inode_cache 344 11 +reiser_inode_cache 336 11 Signed-off-by: Alexey Dobriyan Cc: Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 068fbb315dd1e9dd3418aac39a9cfeabe39c16a6 Author: Alexey Dobriyan Date: Fri Sep 29 01:59:58 2006 -0700 [PATCH] reiserfs: ifdef xattr_sem Shrink reiserfs inode by 12 bytes for xattr non-users (me). -reiser_inode_cache 356 11 +reiser_inode_cache 344 11 Signed-off-by: Alexey Dobriyan Cc: Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit e6cab99bb478e067b1a7a120333ff326954a2412 Author: Chuck Ebbert <76306.1226@compuserve.com> Date: Fri Sep 29 01:59:57 2006 -0700 [PATCH] unwind: fix unused variable warning when !CONFIG_MODULES Fix "variable defined but not used" compiler warning in unwind.c when CONFIG_MODULES is not set. Signed-off-by: Chuck Ebbert <76306.1226@compuserve.com> Cc: Jan Beulich Cc: Andi Kleen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 0e51a720b9d9ea5ebf0fda39108919c6626bffa3 Author: Alexey Dobriyan Date: Fri Sep 29 01:59:56 2006 -0700 [PATCH] ifdef ->quota_read, ->quota_write All suppliers of ->quota_read, ->quota_write (I've found ext2, ext3, UFS, reiserfs) already have them properly ifdeffed. All callers of ->quota_read, ->quota_write are under CONFIG_QUOTA umbrella, so... Signed-off-by: Alexey Dobriyan Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit a3172027148120b8f8797cbecc7d0a0b215736a1 Author: Chris Mason Date: Fri Sep 29 01:59:56 2006 -0700 [PATCH] Fix reiserfs latencies caused by data=ordered ReiserFS does periodic cleanup of old transactions in order to limit the length of time a journal replay may take after a crash. Sometimes, writing metadata from an old (already committed) transaction may require committing a newer transaction, which also requires writing all data=ordered buffers. This can cause very long stalls on journal_begin. This patch makes sure new transactions will not need to be committed before trying a periodic reclaim of an old transaction. It is low risk because if a bad decision is made, it just means a slightly longer journal replay after a crash. Signed-off-by: Chris Mason Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 25736b1c692d436508585d1d710912e6f76be2d8 Author: Chris Mason Date: Fri Sep 29 01:59:54 2006 -0700 [PATCH] reiserfs_fsync should only use barriers when they are enabled make sure that reiserfs_fsync only triggers barriers when mounted with -o barrier=flush Signed-off-by: Chris Mason Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit d4328b40af16bae62ff8f854060d33daad237093 Author: Adam Tlalka Date: Fri Sep 29 01:59:53 2006 -0700 [PATCH] console utf-8 mode fixes Fix utf-8 mode so alternate charset modes always work according to control sequences interpreted in do_con_trol function preserving backward US-ASCII and VT100 semigraphics compatibility. Malformed utf-8 sequences are represented as sequences of replacement glyphs,original codes or '?' as a last resort. unicode-xterm, gnome-terminal, kconsole and other terminal emulators in utf-8 mode respect acsc, enacs, rmacs sequences. Also I found that some important system programs (from Debian distro) uses acsc in utf-8 mode - dselect, aptitude, w3m for example. Signed-off-by: Adam Tlalka Acked-by: Alan Cox Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 08c67d2a5d1c97b7997dc9589f702d875c63de07 Author: Dmitry Torokhov Date: Fri Sep 29 01:59:52 2006 -0700 [PATCH] ucb1x00-ts: handle errors from input_register_device() ucb1x00-ts: handle errors from input_register_device() Signed-off-by: Dmitry Torokhov Cc: Russell King Cc: Pavel Machek Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit aa83aa40ed2ae113d9ee5529cdd9e8c0e5fabe61 Author: Dave Jones Date: Fri Sep 29 01:59:51 2006 -0700 [PATCH] single bit flip detector In cases where we detect a single bit has been flipped, we spew the usual slab corruption message, which users instantly think is a kernel bug. In a lot of cases, single bit errors are down to bad memory, or other hardware failure. This patch adds an extra line to the slab debug messages in those cases, in the hope that users will try memtest before they report a bug. 000: 6b 6b 6b 6b 6a 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b Single bit error detected. Possibly bad RAM. Run memtest86. [akpm@osdl.org: cleanups] Signed-off-by: Dave Jones Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 527063ba985740e9cd271731c31f503f916681c9 Author: Alexey Dobriyan Date: Fri Sep 29 01:59:50 2006 -0700 [PATCH] tty_io.c: keep davej sane Just comment and next "while" look _very_ wrong. Place { correctly to hint unsuspecting ones that it's the end of the loop actually. Signed-off-by: Alexey Dobriyan Cc: Dave Jones Acked-by: Alan Cox Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 3bc1fa8ae18f281b40903cce94baba10c3cf9d88 Author: Chris Wright Date: Fri Sep 29 01:59:49 2006 -0700 [PATCH] LSM: remove BSD secure level security module This code has suffered from broken core design and lack of developer attention. Broken security modules are too dangerous to leave around. It is time to remove this one. Signed-off-by: Chris Wright Acked-by: Michael Halcrow Acked-by: Serge Hallyn Cc: Davi Arnaut Acked-by: Greg Kroah-Hartman Acked-by: James Morris Acked-by: Alan Cox Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit cd1c6a48ac16b360746f9f111895931d332c35dd Author: Rolf Eike Beer Date: Fri Sep 29 01:59:49 2006 -0700 [PATCH] Use valid_dma_direction() in include/asm-i386/dma-mapping.h Now that the generic DMA code has a function to decide if a given DMA mapping is valid use it. This will catch cases where direction is not any of the defined enum values but some random number outside the valid range. The current implementation will only catch the defined but invalid case DMA_NONE. Signed-off-by: Rolf Eike Beer Acked-by: Muli Ben-Yehuda Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit d6bd3a39f7c6ebad49c261c3d458df974c880758 Author: Rolf Eike Beer Date: Fri Sep 29 01:59:48 2006 -0700 [PATCH] Move valid_dma_direction() from x86_64 to generic code As suggested by Muli Ben-Yehuda this function is moved to generic code as may be useful for all archs. [akpm@osdl.org: fix] Signed-off-by: Rolf Eike Beer Cc: Muli Ben-Yehuda Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit d09d7ddf3018b4c6efa76dce72f6dec6054fa22b Author: Alan Cox Date: Fri Sep 29 01:59:47 2006 -0700 [PATCH] There is no devfs, there has never been a devfs, we have always been at war with... Jon Smirl noted a couple of tty driver functions now are quite misleadingly named with the death of devfs. A quick grep found another case in the lp driver. Signed-off-by: Alan Cox Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 2aae4a108dab8b8bc92270335f6e4b5c146b32ae Author: Rolf Eike Beer Date: Fri Sep 29 01:59:46 2006 -0700 [PATCH] Fix kerneldoc comments in kernel/timer.c Some of the kerneldoc comments in this file are ignored since the lead-in is malformed, using either "/*" or "/***" instead of "/**". [rdunlap@xenotime.net: kerneldoc fixes] Signed-off-by: Rolf Eike Beer Acked-by: Alan Cox Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit d7ff0dbf45ee8a7c4802ff46844e6e8167b7f360 Author: Jan-Frode Myklebust Date: Fri Sep 29 01:59:45 2006 -0700 [PATCH] oom_adj/oom_score documentation I was looking for the a way around an OOM-problem, and found a couple of undocumented new features for tuning the OOM-score of individual processes. Here's a small documentation patch for /proc//oom_adj and /proc//oom_score. Signed-off-by: Jan-Frode Myklebust Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit db630637b2f192bea2ba1c000e9cbe4e542a03ea Author: Steven Rostedt Date: Fri Sep 29 01:59:44 2006 -0700 [PATCH] clean up and remove some extra spinlocks from rtmutex Oleg brought up some interesting points about grabbing the pi_lock for some protections. In this discussion, I realized that there are some places that the pi_lock is being grabbed when it really wasn't necessary. Also this patch does a little bit of clean up. This patch basically does three things: 1) renames the "boost" variable to "chain_walk". Since it is used in the debugging case when it isn't going to be boosted. It better describes what the test is going to do if it succeeds. 2) moves get_task_struct to just before the unlocking of the wait_lock. This removes duplicate code, and makes it a little easier to read. The owner wont go away while either the pi_lock or the wait_lock are held. 3) removes the pi_locking and owner blocked checking completely from the debugging case. This is because the grabbing the lock and doing the check, then releasing the lock is just so full of races. It's just as good to go ahead and call the pi_chain_walk function, since after releasing the lock the owner can then block anyway, and we would have missed that. For the debug case, we really do want to do the chain walk to test for deadlocks anyway. [oleg@tv-sign.ru: more of the same] Signed-of-by: Steven Rostedt Cc: Ingo Molnar Cc: Thomas Gleixner Cc: Oleg Nesterov Cc: Esben Nielsen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit c24c95a085c6b52c11c2f5afecc38b0ca143cdae Author: Jan Beulich Date: Fri Sep 29 01:59:42 2006 -0700 [PATCH] fix Intel RNG detection Previously, since determination whether there was an Intel random number generator was based on a single bit, on systems with a matching bridge device but without a firmware hub, there was a 50% chance that the code would incorrectly decide that the system had an RNG. This patch adds detection of the firmware hub to better qualify the existence of an RNG. There is one issue with the patch: I was unable to determine the LPC equivalent for the PCI bridge 8086:2430 (since the old code didn't care about which of the many devices provided by the ICH/ESB it was chose to use the PCI bridge device, but the FWH settings live in the LPC device, so the device list needed to be changed). Signed-off-by: Jan Beulich Signed-off-by: Michael Buesch Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 39b3f6d6e915aa29ad6f90d1517d9217f903c8dc Author: Eric Sandeen Date: Fri Sep 29 01:59:41 2006 -0700 [PATCH] mount udf UDF_PART_FLAG_READ_ONLY partitions with MS_RDONLY There's a bug where a UDF_PART_FLAG_READ_ONLY udf partition gets mounted read-write, then subsequent problems happen; files seem to be able to be removed, but file creation results in EIO or worse, oops. EIO is coming from udf_new_block(), which returns EIO if the right flags aren't set; only UDF_PART_FLAG_READ_ONLY is set in this case. We probably s hould not have gotten this far... Attached patch seems to fix it - and includes a printk to alert the user that their "rw" mount request has been converted to "ro." Here's the testcase I used: [root@magnesium ~]# mkisofs -R -J -udf -o testiso /tmp/ ... Total translation table size: 0 Total rockridge attributes bytes: 342923 Total directory bytes: 382312 Path table size(bytes): 104 Max brk space used 103000 105059 extents written (205 MB) [root@magnesium ~]# mount -o loop testiso /mnt/test/ [root@magnesium ~]# ls /mnt/test/fsfile /mnt/test/fsfile [root@magnesium ~]# rm /mnt/test/fsfile [root@magnesium ~]# ls /mnt/test/fsfile ls: /mnt/test/fsfile: No such file or directory [root@magnesium ~]# touch /mnt/test/fsfile touch: cannot touch `/mnt/test/fsfile': Input/output error [root@magnesium tmp]# grep udf /proc/mounts /dev/loop1 /mnt/test udf rw 0 0 Force readonly mounts of UDF partitions marked as read-only. Signed-off-by: Eric Sandeen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 6c5c934153513dc72e2d6464f39e8ef1f27c0a3e Author: Alexey Dobriyan Date: Fri Sep 29 01:59:40 2006 -0700 [PATCH] ifdef blktrace debugging fields Signed-off-by: Alexey Dobriyan Acked-by: Jens Axboe Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 3d5b6fccc4b900cc4267692f015ea500bad4c6bf Author: Alexey Dobriyan Date: Fri Sep 29 01:59:40 2006 -0700 [PATCH] task_struct: ifdef Missed'em V IPC ipc/sem.c only. $ agrep sysvsem -w -n ipc/sem.c:912: undo_list = current->sysvsem.undo_list; ipc/sem.c:932: undo_list = current->sysvsem.undo_list; ipc/sem.c:954: undo_list = current->sysvsem.undo_list; ipc/sem.c:963: current->sysvsem.undo_list = undo_list; ipc/sem.c:1247: tsk->sysvsem.undo_list = undo_list; ipc/sem.c:1249: tsk->sysvsem.undo_list = NULL; ipc/sem.c:1271: undo_list = tsk->sysvsem.undo_list; include/linux/sched.h:876: struct sysv_sem sysvsem; Signed-off-by: Alexey Dobriyan Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit e1dfa92dcab72397ed1f85f7b8f98a9da43b3f7b Author: Olaf Hering Date: Fri Sep 29 01:59:39 2006 -0700 [PATCH] ignore partition table on disks with AIX label The on-disk data structures from AIX are not known, also the filesystem layout is not known. There is a msdos partition signature at the end of the first block, and the kernel recognizes 3 small (and overlapping) partitions. But they are not usable. Maybe the firmware uses it to find the bootloader for AIX, but AIX boots also if the first block is cleared. This is the content of the partition table: # dd if=/dev/sdb count=$(( 4 * 16 )) bs=1 skip=$(( 0x1be )) | xxd 0000000: 0000 0000 0000 0000 0000 0000 0000 0000 ................ 0000010: 80ff ffff 41ff ffff 1b11 0000 381b 0000 ....A.......8... 0000020: 00ff ffff 41ff ffff 0211 0000 1900 0000 ....A........... 0000030: 80ff ffff 41ff ffff 1b11 0000 381b 0000 ....A.......8... Handle the whole disk as empty disk. This fixes also YaST which compares the output from parted (and formerly fdisk) with /proc/partitions. fdisk recognizes the AIX label since a long time, SuSE has a patch for parted to handle the disk label as unknown. dmesg will look like this: sda: [AIX] unknown partition table Tested on an IBM B50 with AIX V4.3.3. Signed-off-by: Olaf Hering Cc: Albert Cahalan Cc: OGAWA Hirofumi Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 402749ea2538be9ddad981a990739b93a0178bc6 Author: Matthias Urlichs Date: Fri Sep 29 01:59:37 2006 -0700 [PATCH] Remove unused tty_struct field Unused: tty_struct.max_flip_cnt $ git grep max_flip_cnt include/linux/tty.h: int max_flip_cnt; $ Cc: Paul Fulghum Acked-by: Alan Cox Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 2e0c1f6ce7b816f63fea2af3e5e2cb20c66430e9 Author: Shem Multinymous Date: Fri Sep 29 01:59:37 2006 -0700 [PATCH] DMI: Decode and save OEM String information This teaches dmi_decode() how to decode and save OEM Strings (type 11) DMI information, which is currently discarded silently. Existing code using DMI is not affected. Follows the "System Management BIOS (SMBIOS) Specification" (http://www.dmtf.org/standards/smbios), and also the userspace dmidecode.c code. OEM Strings are the only safe way to identify some hardware, e.g., the ThinkPad embedded controller used by the soon-to-be-submitted tp_smapi driver. This will also let us eliminate the long whitelist in the mainline hdaps driver (in a future patch). Signed-off-by: Shem Multinymous Cc: Bjorn Helgaas Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 89e7e374dde1015d69d2d70797ae4053b14fa9db Author: Josh Triplett Date: Fri Sep 29 01:59:36 2006 -0700 [PATCH] timer: add lock annotation to lock_timer_base lock_timer_base acquires a lock and returns with that lock held. Add a lock annotation to this function so that sparse can check callers for lock pairing, and so that sparse will not complain about this function since it intentionally uses the lock in this manner. Signed-off-by: Josh Triplett Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 650a898342b3fa21c392c06a2b7010fa19823efa Author: Miklos Szeredi Date: Fri Sep 29 01:59:35 2006 -0700 [PATCH] vfs: define new lookup flag for chdir In the "operation does permission checking" model used by fuse, chdir permission is not checked, since there's no chdir method. For this case set a lookup flag, which will be passed to ->permission(), so fuse can distinguish it from permission checks for other operations. Signed-off-by: Miklos Szeredi Cc: Al Viro Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 5b35e8e58a315b16d123e2bc080fcc9981501ac4 Author: Miklos Szeredi Date: Fri Sep 29 01:59:34 2006 -0700 [PATCH] fuse: use dentry in statfs Some filesystems may want to report different values depending on the path within the filesystem, i.e. one mount is actually several filesystems. This can be the case for a network filesystem exported by an unprivileged server (e.g. sshfs). This is now possible, thanks to David Howells "VFS: Permit filesystem to perform statfs with a known root dentry" patch. This change is backward compatible, so no need to change interface version. Signed-off-by: Miklos Szeredi Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit d10be6d1bdb0c901b78244872de3cc1c1b6c3fb2 Author: Mark Huang Date: Fri Sep 29 01:59:34 2006 -0700 [PATCH] module_subsys: initialize earlier Initialize module_subsys earlier (or at least earlier than devices) since it could be used very early in the boot process if kmod loads a module before the device initcalls. Otherwise, kmod will crash in kernel/module.c:mod_sysfs_setup() since the kset in module_subsys is not initialized yet. I only noticed this problem because occasionally, kmod loads the modules for my SCSI and Ethernet adapters very early, during the boot process itself. I don't quite understand why it loads them sometimes and doesn't load them other times. Or who is telling kmod to do so. Can someone explain? Signed-off-by: Mark Huang Cc: Greg KH Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 8454aeef6fea944ced757ff8e761b59eb3ee960f Author: Eugene Teo Date: Fri Sep 29 01:59:33 2006 -0700 [PATCH] Require mmap handler for a.out executables Files supported by fs/proc/base.c, i.e. /proc//*, are not capable of meeting the validity checks in ELF load_elf_*() handling because they have no mmap handler which is required by ELF. In order to stop a.out executables being used as part of an exploit attack against /proc-related vulnerabilities, we make a.out executables depend on ->mmap() existing. Signed-off-by: Eugene Teo Signed-off-by: Marcel Holtmann Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 563d075702454f6fa745ff8b0db605c73478078e Author: Sukadev Bhattiprolu Date: Fri Sep 29 01:59:31 2006 -0700 [PATCH] kthread: drivers/base/firmware_class.c Replace kernel_thread() call in drivers/base/firmware_class.c with kthread_create() since kernel_thread() is deprecated in drivers. Signed-off-by: Sukadev Bhattiprolu Cc: Cedric Le Goater Cc: Serge E. Hallyn Cc: Dave Hansen Cc: Manuel Estrada Sainz Acked-by: Marcel Holtmann Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit a49a4af759c0193d42aeaeefb4df7de8973dd713 Author: Josh Triplett Date: Fri Sep 29 01:59:30 2006 -0700 [PATCH] rcu: add lock annotations to rcu{,_bh}_torture_read_{lock,unlock} rcu_torture_read_lock and rcu_bh_torture_read_lock acquire locks without releasing them, and the matching functions rcu_torture_read_unlock and rcu_bh_torture_read_unlock get called with the corresponding locks held and release them. Add lock annotations to these four functions so that sparse can check callers for lock pairing, and so that sparse will not complain about these functions since they intentionally use locks in this manner. Signed-off-by: Josh Triplett Acked-by: Paul McKenney Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 9c4dbee79d3f46608bec3ac80d392ce6415d2f90 Author: Josh Triplett Date: Fri Sep 29 01:59:29 2006 -0700 [PATCH] fs: add lock annotation to grab_super grab_super gets called with sb_lock held, and releases it. Add a lock annotation to this function so that sparse can check callers for lock pairing, and so that sparse will not complain about this function since it intentionally uses the lock in this manner. Signed-off-by: Josh Triplett Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit db0b0ead60815155c791e8f479ee4777e7946369 Author: Michael S. Tsirkin Date: Fri Sep 29 01:59:28 2006 -0700 [PATCH] lockdep: don't pull in includes when lockdep disabled Do not pull in various includes through lockdep.h if lockdep is disabled. Signed-off-by: Michael S. Tsirkin Cc: Ingo Molnar Cc: Arjan van de Ven Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit ddc0a51d2e351985aa542ff650635e2fd62d3f8b Author: Josh Triplett Date: Fri Sep 29 01:59:27 2006 -0700 [PATCH] hugetlbfs: add lock annotation to hugetlbfs_forget_inode() hugetlbfs_forget_inode releases inode_lock. Add a lock annotation to this function so that sparse can check callers for lock pairing, and so that sparse will not complain about this functions since it intentionally uses the lock in this manner. Signed-off-by: Josh Triplett Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 105f4d7a813e9ef6be58549f5d2a49af1764da19 Author: Josh Triplett Date: Fri Sep 29 01:59:25 2006 -0700 [PATCH] fuse: add lock annotations to request_end and fuse_read_interrupt request_end and fuse_read_interrupt release fc->lock. Add lock annotations to these two functions so that sparse can check callers for lock pairing, and so that sparse will not complain about these functions since they intentionally use locks in this manner. Signed-off-by: Josh Triplett Acked-by: Miklos Szeredi Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 99fc705996285ed2746c0c8ae8313d0a04d62ec9 Author: Josh Triplett Date: Fri Sep 29 01:59:25 2006 -0700 [PATCH] afs: add lock annotations to afs_proc_cell_servers_{start,stop} afs_proc_cell_servers_start acquires a lock, and afs_proc_cell_servers_stop releases that lock. Add lock annotations to these two functions so that sparse can check callers for lock pairing, and so that sparse will not complain about these functions since they intentionally use locks in this manner. Signed-off-by: Josh Triplett Acked-by: David Howells Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 58f555e5f62b6a8326caf6d45ac611186f24587d Author: Josh Triplett Date: Fri Sep 29 01:59:24 2006 -0700 [PATCH] mbcache: add lock annotation for __mb_cache_entry_release_unlock() __mb_cache_entry_release_unlock releases mb_cache_spinlock, so annotate it accordingly. Signed-off-by: Josh Triplett Cc: Andreas Gruenbacher Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit b0de7fca10a3d7ddb99188b4752cc473c4e2c96e Author: Josh Triplett Date: Fri Sep 29 01:59:23 2006 -0700 [PATCH] efi: add lock annotations for efi_call_phys_prelog and efi_call_phys_epilog The functions efi_call_phys_prelog and efi_call_phys_epilog in arch/i386/kernel/efi.c wrap the spinlock efi_rt_lock: efi_call_phys_prelog returns with the lock held, and efi_call_phys_epilog releases the lock without acquiring it. Add lock annotations to these two functions so that sparse can check callers for lock pairing, and so that sparse will not complain about these functions since they intentionally use locks in this manner. Signed-off-by: Josh Triplett Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 538d9d532b0e0320c9dd326a560b5a72d73f910d Author: Yoichi Yuasa Date: Fri Sep 29 01:59:22 2006 -0700 [PATCH] irq: remove a extra line Signed-off-by: Yoichi Yuasa Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 2ff6fd8f4a40b72ff35dbb1e08eb9ed6b64b6028 Author: Yoichi Yuasa Date: Fri Sep 29 01:59:21 2006 -0700 [PATCH] irq: fixed coding style Signed-off-by: Yoichi Yuasa Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 42012cc4a2183c555a907eee32d7ce4fc7dc3a6a Author: Olaf Hering Date: Fri Sep 29 01:59:21 2006 -0700 [PATCH] use gcc -O1 in fs/reiserfs only for ancient gcc versions Only compile with -O1 if the (very old) compiler is broken. We use reiserfs alot since SLES9 on ppc64, and it was never seen with gcc33. Assume the broken gcc is gcc-3.4 or older. Signed-off-by: Olaf Hering Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 4d24607bfaab3d02fd0d6e0ffc22f29c2bc8eb30 Author: Komal Shah Date: Fri Sep 29 01:59:20 2006 -0700 [PATCH] OMAP: Update OMAP1/2 boards to give keymapsize and other pdata This patch adds keymapsize, delay and debounce flag in the keypad platform data for various TI OMAP1/2 based boards like F-sample, H2, H3, Innovator, Nokia770, OSK, Perseus and H4. Signed-off-by: Komal Shah Cc: Russell King Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit ad4e09b16ad361c15bd7186dcd118cb901089b97 Author: Komal Shah Date: Fri Sep 29 01:59:19 2006 -0700 [PATCH] OMAP: Add keypad driver This patch adds support for keypad driver running on different TI OMAP(http://www.ti.com/omap) processor based boards like OSK, H2, H3, H4, Persuas and Nokia 770. Signed-off-by: Komal Shah Acked-by: Dmitry Torokhov Cc: Russell King Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 7768a13c252a97e13a552f88f642962768de1fa4 Author: Komal Shah Date: Fri Sep 29 01:59:18 2006 -0700 [PATCH] OMAP: Add Watchdog driver support Add Texas Instruments (TI) OMAP1/2 (http://www.ti.com/omap) based processors, like OMAP1610/1710/242x. [akpm@osdl.org: cleanups] Cc: Cc: "Komal Shah" Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit f1b7c5f459b21feba80f96415429ff2570d63e4d Author: Komal Shah Date: Fri Sep 29 01:59:15 2006 -0700 [PATCH] OMAP: Add smc91x support for TI OMAP2420 H4 board Add smc91x support for TI OMAP2420 H4 EVM board. Cc: Cc: Greg KH Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit c22f008ba226e2ff25ee1a56abd9c5fd355828fc Author: Chuck Ebbert <76306.1226@compuserve.com> Date: Fri Sep 29 01:59:14 2006 -0700 [PATCH] spinlock_debug: don't recompute (jiffies_per_loop * HZ) in spinloop In spinlock_debug.c, the spinloops call __delay() on every iteration. Because that is an external function, (jiffies_per_loop * HZ), the loop's iteration limit, gets recomputed every time. Caching it explicitly prevents that. Signed-off-by: Chuck Ebbert <76306.1226@compuserve.com> Cc: Ingo Molnar Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 92a0f861fe1790dad55ea249169d94f2dc88d696 Author: Rolf Eike Beer Date: Fri Sep 29 01:59:13 2006 -0700 [PATCH] Fix parameter names in drivers/base/class.c Change parameter names to match arguments of functions. Signed-off-by: Rolf Eike Beer Cc: Martin Waitz Cc: Randy Dunlap Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 78b2290f2977044ced27d1158b03587aa674fe07 Author: Rolf Eike Beer Date: Fri Sep 29 01:59:12 2006 -0700 [PATCH] Include documentation for functions in drivers/base/class.c drivers/base/class.c is omitted by "make *docs". Add it to get documentation for class_create() and friends for free. Signed-off-by: Rolf Eike Beer Cc: Martin Waitz Cc: Randy Dunlap Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 6c9979185c7ef4feeb7f8d29be032b8f032a1838 Author: Serge E. Hallyn Date: Fri Sep 29 01:59:11 2006 -0700 [PATCH] kthread: convert loop.c to kthread Convert loop.c from the deprecated kernel_thread to kthread. This patch simplifies the code quite a bit and passes similar testing to the previous submission on both emulated x86 and s390. Changes since last submission: switched to using a rather simple loop based on wait_event_interruptible. Signed-off-by: Serge E. Hallyn Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 5b217fa75c3aea381f1f5fa7ff09e7b4019ea374 Author: Randy Dunlap Date: Fri Sep 29 01:59:10 2006 -0700 [PATCH] kernel-doc: move filesystems together Move all VFS + filesystem docs together. Signed-off-by: Randy Dunlap Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 4c78a6639386f9e7399fbc0d0a173d4cc1a3e9bf Author: Randy Dunlap Date: Fri Sep 29 01:59:10 2006 -0700 [PATCH] kernel-doc for relay interface Add relay interface support to DocBook/kernel-api.tmpl. Fix typos etc. in relay.c and relayfs.txt. Signed-off-by: Randy Dunlap Acked-by: Tom Zanussi Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit c0d92cbc5849f26451f478d538b8d885ae547221 Author: Pekka J Enberg Date: Fri Sep 29 01:59:09 2006 -0700 [PATCH] libfs: remove page up-to-date check from simple_readpage Remove the unnecessary PageUptodate check from simple_readpage. The only two callers for ->readpage that don't have explicit PageUptodate check are read_cache_pages and page_cache_read which operate on newly allocated pages which don't have the flag set. [akpm: use the allegedly-faster clear_page(), too] Signed-off-by: Pekka Enberg Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit cfedc920a7bca828fd4af8e203f7d8514990f999 Author: Chris Boot Date: Fri Sep 29 01:59:08 2006 -0700 [PATCH] Make net48xx-led use scx200_gpio_ops Make the next48xx LED code use scx200_gpio_ops instead of raw SCx200 GPIO accesses. Signed-off-by: Chris Boot Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 58012cd788443b9d144bd7c72260a84b6b30f45d Author: Chris Boot Date: Fri Sep 29 01:59:07 2006 -0700 [PATCH] scx200_gpio export cleanups Use EXPORT_SYMBOL_GPL for new symbols, and declare the struct in the header file for access by other modules. Signed-off-by: Chris Boot Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 684f978347deb42d180373ac4c427f82ef963171 Author: Herbert Xu Date: Fri Sep 29 01:59:06 2006 -0700 [PATCH] Let WARN_ON/WARN_ON_ONCE return the condition Letting WARN_ON/WARN_ON_ONCE return the condition means that you could do if (WARN_ON(blah)) { handle_impossible_case } Rather than if (unlikely(blah)) { WARN_ON(1) handle_impossible_case } I checked all the newly added WARN_ON_ONCE users and none of them test the return status so we can still change it. [akpm@osdl.org: warning fix] [akpm@osdl.org: build fix] Signed-off-by: Herbert Xu Cc: Ingo Molnar Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 6299a2dec89d22940e36832f15c0addfb77e6910 Author: Adrian Bunk Date: Fri Sep 29 01:59:05 2006 -0700 [PATCH] drivers/char/pc8736x_gpio.c: remove unused static functions drivers/char/pc8736x_gpio.c:192: warning: #pc8736x_gpio_set_high# defined but not used drivers/char/pc8736x_gpio.c:197: warning: #pc8736x_gpio_set_low# defined but not used Signed-off-by: Adrian Bunk Acked-by: Jim Cromie Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit c8ad9681fdec37ad298da6d505f9baba61e5f15c Author: Jim Cromie Date: Fri Sep 29 01:59:05 2006 -0700 [PATCH] drivers/char/scx200_gpio.c: make code static This patch makes a needlessly global variable static. Signed-off-by: Adrian Bunk Signed-off-by: Jim Cromie Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 358333a0cb4a6d279806e38d0368b79066dbe5e7 Author: Steven Rostedt Date: Fri Sep 29 01:59:04 2006 -0700 [PATCH] remove unnecessary barrier in rtc_get_rtc_time Signed-off-by: Steven Rostedt Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 9938406ab6b2558d60c0c7200cc8e12f1ea7104a Author: Michal Schmidt Date: Fri Sep 29 01:59:03 2006 -0700 [PATCH] Make touch_nmi_watchdog imply touch_softlockup_watchdog on all archs touch_nmi_watchdog() calls touch_softlockup_watchdog() on both architectures that implement it (i386 and x86_64). On other architectures it does nothing at all. touch_nmi_watchdog() should imply touch_softlockup_watchdog() on all architectures. Suggested by Andi Kleen. [heiko.carstens@de.ibm.com: s390 fix] Signed-off-by: Michal Schmidt Cc: Andi Kleen Cc: Martin Schwidefsky Signed-off-by: Heiko Carstens Cc: Michal Schmidt Cc: Ingo Molnar Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit df89a864631f5d840f4873c4c03733b4206e78ea Author: Manfred Spraul Date: Fri Sep 29 01:59:01 2006 -0700 [PATCH] list_del debug check A list_del() debugging check. Has been in -mm for years. Dave moved list_del() out-of-line in the debug case, so this is now suitable for mainline. Cc: Dave Jones Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 199a9afc3dbe98c35326f1d3907ab94dae953a6e Author: Dave Jones Date: Fri Sep 29 01:59:00 2006 -0700 [PATCH] Debug variants of linked list macros Signed-off-by: Dave Jones Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit df67b3daea602728b51325a4debaeeb912ee51d1 Author: Jason Baron Date: Fri Sep 29 01:58:58 2006 -0700 [PATCH] make PROT_WRITE imply PROT_READ Make PROT_WRITE imply PROT_READ for a number of architectures which don't support write only in hardware. While looking at this, I noticed that some architectures which do not support write only mappings already take the exact same approach. For example, in arch/alpha/mm/fault.c: " if (cause < 0) { if (!(vma->vm_flags & VM_EXEC)) goto bad_area; } else if (!cause) { /* Allow reads even for write-only mappings */ if (!(vma->vm_flags & (VM_READ | VM_WRITE))) goto bad_area; } else { if (!(vma->vm_flags & VM_WRITE)) goto bad_area; } " Thus, this patch brings other architectures which do not support write only mappings in-line and consistent with the rest. I've verified the patch on ia64, x86_64 and x86. Additional discussion: Several architectures, including x86, can not support write-only mappings. The pte for x86 reserves a single bit for protection and its two states are read only or read/write. Thus, write only is not supported in h/w. Currently, if i 'mmap' a page write-only, the first read attempt on that page creates a page fault and will SEGV. That check is enforced in arch/blah/mm/fault.c. However, if i first write that page it will fault in and the pte will be set to read/write. Thus, any subsequent reads to the page will succeed. It is this inconsistency in behavior that this patch is attempting to address. Furthermore, if the page is swapped out, and then brought back the first read will also cause a SEGV. Thus, any arbitrary read on a page can potentially result in a SEGV. According to the SuSv3 spec, "if the application requests only PROT_WRITE, the implementation may also allow read access." Also as mentioned, some archtectures, such as alpha, shown above already take the approach that i am suggesting. The counter-argument to this raised by Arjan, is that the kernel is enforcing the write only mapping the best it can given the h/w limitations. This is true, however Alan Cox, and myself would argue that the inconsitency in behavior, that is applications can sometimes work/sometimes fails is highly undesireable. If you read through the thread, i think people, came to an agreement on the last patch i posted, as nobody has objected to it... Signed-off-by: Jason Baron Cc: Russell King Cc: "Luck, Tony" Cc: Hugh Dickins Cc: Roman Zippel Cc: Geert Uytterhoeven Cc: Paul Mackerras Cc: Benjamin Herrenschmidt Acked-by: Andi Kleen Acked-by: Alan Cox Cc: Arjan van de Ven Acked-by: Paul Mundt Cc: Kazumoto Kojima Cc: Ian Molton Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 15a67dd8ccf696392176c95a08234a8b8ee59005 Author: Randy Dunlap Date: Fri Sep 29 01:58:57 2006 -0700 [PATCH] fs/namespace: handle init/registration errors Check and handle init errors. Signed-off-by: Randy Dunlap Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 87a57261105669d13a9cae747b5b67ca1cbcda3c Author: Randy Dunlap Date: Fri Sep 29 01:58:56 2006 -0700 [PATCH] block: handle subsystem_register() init errors Check and handle init errors. Signed-off-by: Randy Dunlap Cc: Greg KH Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 4d7dd8fd9557840162b724a8ac1366dd78a12dff Author: Andrew Morton Date: Fri Sep 29 01:58:56 2006 -0700 [PATCH] blockdev.c: check driver layer errors Check driver layer errors. Fix from: "Jun'ichi Nomura" In blockdevc-check-errors.patch, add_bd_holder() is modified to return error values when some of its operation failed. Among them, it returns -EEXIST when a given bd_holder object already exists in the list. However, in this case, the function completed its work successfully and need no action by its caller other than freeing unused bd_holder object. So I think it's better to return success after freeing by itself. Otherwise, bd_claim-ing with same claim pointer will fail. Typically, lvresize will fails with following message: device-mapper: reload ioctl failed: Invalid argument and you'll see messages like below in kernel log: device-mapper: table: 254:13: linear: dm-linear: Device lookup failed device-mapper: ioctl: error adding target to table Similarly, it should not add bd_holder to the list if either one of symlinking fails. I don't have a test case for this to happen but it should cause dereference of freed pointer. If a matching bd_holder is found in bd_holder_list, add_bd_holder() completes its job by just incrementing the reference count. In this case, it should be considered as success but it used to return 'fail' to let the caller free temporary bd_holder. Fixed it to return success and free given object by itself. Also, if either one of symlinking fails, the bd_holder should not be added to the list so that it can be discarded later. Otherwise, the caller will free bd_holder which is in the list. Signed-off-by: Jun'ichi Nomura Cc: "Randy.Dunlap" Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit d8c7649e99e4b081b624aefe1e77caa30b53cb18 Author: Randy Dunlap Date: Fri Sep 29 01:58:55 2006 -0700 [PATCH] kernel/params: driver layer error checking Check driver layer return values in kernel/params.c Signed-off-by: Randy Dunlap Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 5906e4171ad61ce68de95e51b773146707671f80 Author: Jeff Dike Date: Fri Sep 29 01:58:54 2006 -0700 [PATCH] uml: remove pte_mkexec Andi is making pte_mkexec go away, and UML had one of the last uses. This removes the use and the definition. Signed-off-by: Jeff Dike Cc: Paolo 'Blaisorblade' Giarrusso Cc: Andi Kleen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit fade5d5461b0379b27ca96faf560d855d7a0ea8b Author: Jeff Dike Date: Fri Sep 29 01:58:53 2006 -0700 [PATCH] uml: don't roll my own random MAC generator Use the existing random_ether_addr() instead of cooking up my own version. Pointed out by Dave Hollis and Jason Lunz. Signed-off-by: Jeff Dike Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 3b89af765cd62c1c3ca6c81adca45084f8840e06 Author: Jeff Dike Date: Fri Sep 29 01:58:52 2006 -0700 [PATCH] uml: remove unneeded file Remove arch/um/kernel/skas/process_kern.c again. The stack alignment change which resulted in this file being here is safely in arch/um/kernel/process.c. Signed-off-by: Jeff Dike Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit f92afe56a0dcd271cb94e12acf1861d44c3faefd Author: Jeff Dike Date: Fri Sep 29 01:58:52 2006 -0700 [PATCH] uml: stack consumption reduction Fix some stack abuse in the sysrq t path. Signed-off-by: Jeff Dike Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 80c13749140284abdc23bbeed2507b7e5a3dc459 Author: Jeff Dike Date: Fri Sep 29 01:58:51 2006 -0700 [PATCH] uml: close file descriptor leaks Close two file descriptor leaks, one in the ubd driver and one to /proc/mounts. The ubd driver bug also leaked some vmalloc space. The /proc/mounts leak was a descriptor that was just never closed. Signed-off-by: Jeff Dike Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 730760e90a173ef81f89beed2f1dad2fab310f68 Author: Jeff Dike Date: Fri Sep 29 01:58:50 2006 -0700 [PATCH] uml: locking documentation Some locking documentation and a cleanup. uml_exitcode is copied into a local before sprintf sees it, in case sprintf does anything non-atomic with it. The rest are comments about why certain globals don't need any kind of locking. Signed-off-by: Jeff Dike Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit b10aeeef554eb1ff80e10111829f6e7484877811 Author: Jeff Dike Date: Fri Sep 29 01:58:50 2006 -0700 [PATCH] uml: mechanical tidying after random MACs change Mechanical, hopefully non-functional changes stemming from setup_etheraddr always succeeding now that it always assigns a MAC, either from the command line or generated randomly: the test of the return of setup_etheraddr is removed, and code dependent on it succeeding is now unconditional setup_etheraddr can now be made void struct uml_net.have_mac is now always 1, so tests of it can be similarly removed, and uses of it can be replaced with 1 struct uml_net.have_mac is no longer used, so it can be removed struct uml_net_private.have_mac is copied from struct uml_net, so it is always 1 tests of uml_net_private.have_mac can be removed uml_net_private.have_mac can now be removed the only call to dev_ip_addr was removed, so it can be deleted It also turns out that setup_etheraddr is called only once, from the same file, so it can be static and its declaration removed from net_kern.h. Similarly, set_ether_mac is defined and called only from one file. Finally, setup_etheraddr and set_ether_mac were moved to avoid needing forward declarations. Signed-off-by: Jeff Dike Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit f3e7ed2b617824f79d1223f37430ccffae59e5b8 Author: Jeff Dike Date: Fri Sep 29 01:58:46 2006 -0700 [PATCH] uml: assign random MACs to interfaces if necessary Assign a random MAC to an ethernet interface if one was not provided on the command line. This became pressing when distros started bringing interfaces up before assigning IPs to them. The previous pattern of assigning an IP then bringing it up allowed the MAC to be generated from the first IP assigned. However, once the thing is up, it's probably a bad idea to change the MAC, so the MAC stayed initialized to fe:fd:0:0:0:0. Now, if there is no MAC from the command line, one is generated. We use the microseconds from gettimeofday (20 bits), plus the low 12 bits of the pid to seed the random number generator. random() is called twice, with 16 bits of each result used. I didn't want to have to try to fill in 32 bits optimally given an arbitrary RAND_MAX, so I just assume that it is greater than 65536 and use 16 bits of each random() return. There is also a bit of reformatting and whitespace cleanup here. Signed-off-by: Jeff Dike Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 3b08606dc2991bcdab14139efd9ed9d492f5f901 Author: keith mannthey Date: Fri Sep 29 01:58:46 2006 -0700 [PATCH] convert i386 Summit subarch to use SRAT info for apicid_to_node calls Convert the i386 summit subarch apicid_to_node to use node information provided by the SRAT. It was discussed a little on LKML a few weeks ago and was seen as an acceptable fix. The current way of obtaining the nodeid static inline int apicid_to_node(int logical_apicid) { return logical_apicid >> 5; } is just not correct for all summit systems/bios. Assuming the apicid matches the Linux node number require a leap of faith that the bios mapped out the apicids a set way. Modern summit HW (IBM x460) does not layout its bios in the manner for various reasons and is unable to boot i386 numa. The best way to get the correct apicid to node information is from the SRAT table during boot. It lays out what apicid belongs to what node. I use this information to create a table for use at run time. Signed-off-by: Keith Mannthey Cc: Andi Kleen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 3528a95322b5c1ce882ab723f175a1845430cd89 Author: Cory Olmo Date: Fri Sep 29 01:58:44 2006 -0700 [PATCH] SELinux: support mls categories for context mounts Allows commas to be embedded into context mount options (i.e. "-o context=some_selinux_context_t"), to better support multiple categories, which are separated by commas and confuse mount. For example, with the current code: mount -t iso9660 /dev/cdrom /media/cdrom -o \ ro,context=system_u:object_r:iso9660_t:s0:c1,c3,c4,exec The context option that will be interpreted by SELinux is context=system_u:object_r:iso9660_t:s0:c1 instead of context=system_u:object_r:iso9660_t:s0:c1,c3,c4 The options that will be passed on to the file system will be ro,c3,c4,exec. The proposed solution is to allow/require the SELinux context option specified to mount to use quotes when the context contains a comma. This patch modifies the option parsing in parse_opts(), contained in mount.c, to take options after finding a comma only if it hasn't seen a quote or if the quotes are matched. It also introduces a new function that will strip the quotes from the context option prior to translation. The quotes are replaced after the translation is completed to insure that in the event the raw context contains commas the kernel will be able to interpret the correct context. Signed-off-by: Cory Olmo Signed-off-by: James Morris Acked-by: Stephen Smalley Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 79f5acf5d784492afe80723496624093079aed9c Author: Adam Litke Date: Fri Sep 29 01:58:43 2006 -0700 [PATCH] mm: make filemap_nopage use NOPAGE_SIGBUS Don't open-code NOPAGE_SIGBUS. Signed-off-by: Adam Litke Acked-by: Hugh Dickins Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 4ce072f1faf29d24df4600f53db8cdd62d400a8f Author: Siddha, Suresh B Date: Fri Sep 29 01:58:42 2006 -0700 [PATCH] mm: fix a race condition under SMC + COW Failing context is a multi threaded process context and the failing sequence is as follows. One thread T0 doing self modifying code on page X on processor P0 and another thread T1 doing COW (breaking the COW setup as part of just happened fork() in another thread T2) on the same page X on processor P1. T0 doing SMC can endup modifying the new page Y (allocated by the T1 doing COW on P1) but because of different I/D TLB's, P0 ITLB will not see the new mapping till the flush TLB IPI from P1 is received. During this interval, if T0 executes the code created by SMC it can result in an app error (as ITLB still points to old page X and endup executing the content in page X rather than using the content in page Y). Fix this issue by first clearing the PTE and flushing it, before updating it with new entry. Hugh sayeth: I was a bit sceptical, in the habit of thinking that Self Modifying Code must look such issues itself: but I guess there's nothing it can do to avoid this one. Fair enough, what you're changing it to is pretty much what powerpc and s390 were already doing, and is a more robust way of proceeding, consistent with how ptes are set everywhere else. The ptep_clear_flush is a bit heavy-handed (it's anxious to return the pte that was atomically cleared), but we'd have to wander through lots of arches to get the right minimal behaviour. It'd also be nice to eliminate ptep_establish completely, now only used to define other macros/inlines: it always seemed obfuscation to me, what you've got there now is clearer. Let's put those cleanups on a TODO list. Signed-off-by: Suresh Siddha Acked-by: "David S. Miller" Acked-by: Hugh Dickins Cc: Nick Piggin Cc: Peter Zijlstra Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 2dcea57ae19275451a756a2d5bf96b329487b0e0 Author: Heiko Carstens Date: Fri Sep 29 01:58:41 2006 -0700 [PATCH] convert s390 page handling macros to functions Convert s390 page handling macros to functions. In particular this fixes a problem with s390's SetPageUptodate macro which uses its input parameter twice which again can cause subtle bugs. [akpm@osdl.org: build fix] Cc: Martin Schwidefsky Signed-off-by: Heiko Carstens Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit d1807793e1e7e502e3dc047115e9dbc3b50e4534 Author: Zoltan Menyhart Date: Fri Sep 29 01:58:40 2006 -0700 [PATCH] JBD: memory leak in "journal_init_dev()" We leak a bh ref in "journal_init_dev()" in case of failure. Signed-off-by: Zoltan Menyhart Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit f71b2f10f56802075d67c5710cd9f1816382d720 Author: Dave Kleikamp Date: Fri Sep 29 01:58:39 2006 -0700 [PATCH] JBD: Make journal_brelse_array() static It's always good to make symbols static when we can, and this also eliminates the need to rename the function in jbd2 Suggested by Eric Sandeen. Signed-off-by: Dave Kleikamp Cc: Eric Sandeen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 4efd587bf9f9a97608b1fcecc78a4a046c37e9b1 Author: David Woodhouse Date: Fri Sep 29 01:58:37 2006 -0700 [PATCH] Fix uninitialised spinlock in via-pmu-backlight code. The uninitialised pmu_backlight_lock causes the current Fedora test kernel (which has spinlock debugging enabled) to panic on suspend. This is suboptimal, so I fixed it. Signed-off-by: David Woodhouse Acked-by: Benjamin Herrenschmidt Acked-by: Michael Hanselmann Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 910067d188d56d80801b71b0ca1f73aa400c7b8c Author: Matthew Wilcox Date: Fri Sep 29 01:58:36 2006 -0700 [PATCH] remove generic__raw_read_trylock() If the cpu has the lock held for write, is interrupted, and the interrupt handler calls read_trylock(), it's an instant deadlock. Now, Dave Miller has subsequently pointed out that we don't have any situations where this can occur. Nevertheless, we should delete generic__raw_read_lock (and its associated EXPORT to make Arjan happy) so that nobody thinks they can use it. Acked-by: "David S. Miller" Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit e04da1dfd9041e306cb33d1b40b6005c23c5b325 Author: Al Viro Date: Fri Sep 29 01:58:35 2006 -0700 [PATCH] sys_getcpu() prototype annotated Signed-off-by: Al Viro Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 0891a8d706d6e6838a926b6dec42f95581747d0e Author: Al Viro Date: Fri Sep 29 01:58:34 2006 -0700 [PATCH] __percpu_alloc_mask() has to be __always_inline in UP case ... or we'll end up with cpu_online_map being evaluated on UP. In modules. cpumask.h is very careful to avoid that, and for a very good reason. So should we... PS: yes, it really triggers (on alpha). Signed-off-by: Al Viro Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 4f931374ecc599f6df7852509b6917abd5377205 Author: Jeff Garzik Date: Fri Sep 29 05:07:25 2006 -0400 [libata] DocBook minor updates, fixes Update copyright year, fix minor stuff 'make xmldocs' complains about. Signed-off-by: Jeff Garzik commit 65e8697a12e356cd7a6ecafa1149f5c5c6a71593 Author: Tim Shimmin Date: Fri Sep 29 15:23:02 2006 +1000 [XFS] Remove v1 dir trace macro - missed in a past commit. Signed-off-by: Tim Shimmin commit 6fbe59b9569b2c8d5522d182263935c6c86fc40a Author: David S. Miller Date: Thu Sep 28 15:34:05 2006 -0700 [ETHTOOL]: Remove some entries from non-root command list. GWOL might provide passwords GSET, GLINK, and GSTATS might poke the hardware Based upon feedback from Jeff Garzik. Signed-off-by: David S. Miller commit 860e13b5c591f1040b76fff57a6a3d6ca9633983 Author: Arnaud Patard Date: Thu Sep 28 15:29:37 2006 -0700 [Bluetooth]: Fix section mismatch of bt_sysfs_cleanup() The bt_sysfs_cleanup() is marked with __exit attribute, but it will be called from an __init function in the error case. So the __exit attribute must be removed. Signed-off-by: Arnaud Patard Signed-off-by: Marcel Holtmann Signed-off-by: David S. Miller commit 37e97b4ef0d18b77a45a4714154daf3499206654 Author: Marcel Holtmann Date: Thu Sep 28 15:29:09 2006 -0700 [Bluetooth]: Don't update disconnect timer for incoming connections In the case of device pairing the only safe method is to establish a low-level ACL link. In this case, the remote side should not use the disconnect timer to give the other side the chance to enter the PIN code. If the disconnect timer is used, the connection will be dropped to soon, because it is impossible to identify an actual user of this link. Signed-off-by: Marcel Holtmann Signed-off-by: David S. Miller commit 75f3123c118743f52b690d9ab41649814befda0a Author: Stephen Hemminger Date: Thu Sep 28 15:13:37 2006 -0700 [ETHTOOL]: let mortals use ethtool There is no reason to not allow non-admin users to query network statistics and settings. [ Removed PHYS_ID and GREGS based upon feedback from Auke Kok and Michael Chan -DaveM] Acked-by: James Morris Signed-off-by: David S. Miller commit 32f50cdee666333168b5203c7864bede159f789e Author: Paul Moore Date: Thu Sep 28 14:51:47 2006 -0700 [NetLabel]: add audit support for configuration changes This patch adds audit support to NetLabel, including six new audit message types shown below. #define AUDIT_MAC_UNLBL_ACCEPT 1406 #define AUDIT_MAC_UNLBL_DENY 1407 #define AUDIT_MAC_CIPSOV4_ADD 1408 #define AUDIT_MAC_CIPSOV4_DEL 1409 #define AUDIT_MAC_MAP_ADD 1410 #define AUDIT_MAC_MAP_DEL 1411 Signed-off-by: Paul Moore Acked-by: James Morris Signed-off-by: David S. Miller commit 8ea333eb5da3e3219f570220c56bca09f6f4d25a Author: John Heffner Date: Thu Sep 28 14:47:38 2006 -0700 [TCP]: Fix and simplify microsecond rtt sampling This changes the microsecond RTT sampling so that samples are taken in the same way that RTT samples are taken for the RTO calculator: on the last segment acknowledged, and only when the segment hasn't been retransmitted. Signed-off-by: John Heffner Acked-by: Stephen Hemminger Signed-off-by: David S. Miller commit bfbea8a8869a0e21b97605841d04190d63665d19 Author: Wong Hoi Sing Edison Date: Thu Sep 28 14:40:21 2006 -0700 [TCP] tcp-lp: prevent chance for oops This patch fix the chance for tcp_lp_remote_hz_estimator return 0, if 0 < rhz < 64. It also make sure the flag LP_VALID_RHZ is set correctly. Signed-off-by: Wong Hoi Sing Edison Signed-off-by: David S. Miller commit 1811474620d1986da45f7245168bf7c2d883d770 Author: Eric Sesterhenn Date: Thu Sep 28 14:37:07 2006 -0700 [SUNRPC]: Remove unnecessary check in net/sunrpc/svcsock.c coverity spotted this one as possible dereference in the dprintk(), but since there is only one caller of svc_create_socket(), which always passes a valid sin, we dont need this check. Signed-off-by: Eric Sesterhenn Signed-off-by: David S. Miller commit 96d2ca4ec0bb8d0f344e5960224700be3dec3515 Author: Al Viro Date: Thu Sep 28 14:31:49 2006 -0700 [IPVS] bug: endianness breakage in ip_vs_ftp (p[3]<<24) | (p[2]<<16) | (p[1]<<8) | p[0] is not a valid way to spell get_unaligned((__be32 *)p Signed-off-by: Al Viro Signed-off-by: David S. Miller commit 014d730d56b559eacb11e91969a1f41c3feb36f9 Author: Al Viro Date: Thu Sep 28 14:29:52 2006 -0700 [IPVS]: ipvs annotations Signed-off-by: Al Viro Signed-off-by: David S. Miller commit d4263cde88d3fee2af0aac8836bb785cdb6b06c0 Author: Al Viro Date: Thu Sep 28 14:22:51 2006 -0700 [NETFILTER]: h323 annotations Signed-off-by: Al Viro Signed-off-by: David S. Miller commit 6a19d61472d0802a24493c0d200e88f99ad39cd8 Author: Al Viro Date: Thu Sep 28 14:22:24 2006 -0700 [NETFILTER]: ipt annotations Signed-off-by: Al Viro Signed-off-by: David S. Miller commit a76b11dd25957287af12ce6855be6d7fd415b3a9 Author: Al Viro Date: Thu Sep 28 14:22:02 2006 -0700 [NETFILTER]: NAT annotations Signed-off-by: Al Viro Signed-off-by: David S. Miller commit cdcb71bf964e02e0a22007f5d90ead7bede3b85b Author: Al Viro Date: Thu Sep 28 14:21:37 2006 -0700 [NETFILTER]: conntrack annotations Signed-off-by: Al Viro Signed-off-by: David S. Miller commit 59b8bfd8fd608821e5addc9f4682c7f2424afd8c Author: Al Viro Date: Thu Sep 28 14:21:07 2006 -0700 [NETFILTER]: netfilter misc annotations Signed-off-by: Al Viro Signed-off-by: David S. Miller commit d77072ecfb6d28287d5e2a61d60d87a3a444ac97 Author: Al Viro Date: Thu Sep 28 14:20:34 2006 -0700 [NET]: Annotate dst_ops protocol Signed-off-by: Al Viro Signed-off-by: David S. Miller commit 75b31c33512f46bf650f4652272d8bef39881890 Author: Steven Rostedt Date: Wed Sep 27 22:55:39 2006 -0700 [NET]: is it Andy or Andi ?? I don't know of any Andy Kleen's but I do know a Andi Kleen. Signed-off-by: Steven Rostedt Signed-off-by: David S. Miller commit 28b06c380fca7e248c90e45f0aad1753097f6824 Author: Simon Horman Date: Wed Sep 27 22:53:24 2006 -0700 [IPVS]: Make sure ip_vs_ftp ports are valid: module_param_array approach I'm not entirely sure what happens in the case of a valid port, at best it'll be silently ignored. This patch ensures that the port values are unsigned short values, and thus always valid. This is a second take at fixing this problem, it is simpler and arguably more correct than the previous approach that was committed as 3f5af5b353ca36aca4f8a46e3da2172f669dbbbc. Prior to this patch a patch that reverses 3f5af5b353ca36aca4f8a46e3da2172f669dbbbc was sent. Signed-off-by: Simon Horman Signed-off-by: David S. Miller commit e44fd82caf89a8548e7868592618b243e85c69e6 Author: Simon Horman Date: Wed Sep 27 22:52:47 2006 -0700 [IPVS]: Reverse valid ip_vs_ftp ports fix: port check approach This patch reverses 3f5af5b353ca36aca4f8a46e3da2172f669dbbbc as a better fix was suggested by Patrick McHardy. Signed-off-by: Simon Horman Signed-off-by: David S. Miller commit febac9b93724f3ee293e7e5450043ae28e61531a Author: Samuel Ortiz Date: Wed Sep 27 22:50:06 2006 -0700 [IrDA] stir4200: removing undocumented bits handling FIFOCTL_RXERR and FIFOCTL_TXERR are undocumented bits, according to the Sigmatel datasheet. We should thus not take any assumption on their values and semantics. Problem spotted by andrzej zaborowski Signed-off-by: Samuel Ortiz Signed-off-by: David S. Miller commit 895de090d4302a02a77cdf366fc6e54fc2001857 Author: Linus Walleij (LD/EAB Date: Wed Sep 27 22:49:23 2006 -0700 [IrDA] smsc-ircc: More laptops detected This patch detects the smsc-ircc chipset on the nx1000 (including nx7000 and nx7010) and the nx5000 HP/Compaq laptop series. Patch from "Linus Walleij (LD/EAB)" Signed-off-by: Samuel Ortiz Signed-off-by: David S. Miller commit 2fd19a687c256fa4c4750465b9856e2c80660ec8 Author: Lamarque Vieira Souza Date: Wed Sep 27 22:48:36 2006 -0700 [IrDA] nsc-ircc: Configuration base address for PC87383 According to NatSemi datasheet, the configuration base address for the PC8738x family is 0x2e or 0x164. 0x0 doesn't appear in any datasheet. Patch from Lamarque Vieira Souza Signed-off-by: Samuel Ortiz Signed-off-by: David S. Miller commit b854d0d218688b30ccea70521d6ea5f3f56d4e12 Author: YOSHIFUJI Hideaki Date: Wed Sep 27 22:43:05 2006 -0700 [NET] KBUILD: Add missing entries for new net headers. Add the following for userspace export by the 'headers_include' make target: linux/fib_rules.h, linux/if_addr.h, linux/if_link.h, linux/neighbour.h. Signed-off-by: YOSHIFUJI Hideaki Signed-off-by: David S. Miller commit cbde1668e4f08e0a150207646010bc65e1e2a42b Author: YOSHIFUJI Hideaki Date: Wed Sep 27 22:40:19 2006 -0700 [NET]: Move netlink interface bits to linux/if_link.h. Moving netlink interface bits to linux/if.h is rather troublesome for applications including both linux/if.h (which was changed to be included from linux/rtnetlink.h automatically) and net/if.h. Signed-off-by: YOSHIFUJI Hideaki Signed-off-by: David S. Miller commit 7b4dc3600e4877178ba94c7fbf7e520421378aa6 Author: Masahide NAKAMURA Date: Wed Sep 27 22:21:52 2006 -0700 [XFRM]: Do not add a state whose SPI is zero to the SPI hash. SPI=0 is used for acquired IPsec SA and MIPv6 RO state. Such state should not be added to the SPI hash because we do not care about it on deleting path. Signed-off-by: Masahide NAKAMURA Signed-off-by: YOSHIFUJI Hideaki commit 7fa6b06689085a3e2237cf810f5e0c114e00a2da Author: Stephen Hemminger Date: Wed Sep 27 20:33:34 2006 -0700 [NET] loopback: minor statistics optimization The loopback device status structure is a singleton and doesn't need to be allocated. Add ethtool_ops hooks to show checksum always on, and make ethtool_ops const. Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit 1b0fee7d68f234be6b270cda51d9fcb71bebd780 Author: Samuel Ortiz Date: Wed Sep 27 20:06:44 2006 -0700 [IrDA]: Memory allocations cleanups This patch replaces the bunch of arbitrary 64 and 128 bytes alloc_skb() calls with more accurate allocation sizes. Signed-off-by: Samuel Ortiz Signed-off-by: David S. Miller commit 778e6398d32590eaf2333706318cbcd04dbe50b7 Author: Samuel Ortiz Date: Wed Sep 27 20:06:16 2006 -0700 [IrDA]: irda-usb needs firmware loader With the inclusion of the stir421x code, we now need to select FW_LOADER whenever we try to build the irda-usb code. Signed-off-by: Samuel Ortiz Signed-off-by: David S. Miller commit da349f1c2e0a0bf8958cdaf14e8f33acdf3182a5 Author: Samuel Ortiz Date: Wed Sep 27 20:05:38 2006 -0700 [IrDA]: af_irda.c cleanups We lock the socket when both releasing and getting a disconnected notification. In the latter case, we also ste the socket as orphan. This fixes a potential kernel bug that can be triggered when we get the disconnection notification before closing the socket. Signed-off-by: Samuel Ortiz Signed-off-by: David S. Miller commit 1a9e9ef684ec2bd27fcdb373a82957a0c050daf6 Author: Herbert Xu Date: Wed Sep 27 19:03:36 2006 -0700 [IPV6]: Disable SG for GSO unless we have checksum Because the system won't turn off the SG flag for us we need to do this manually on the IPv6 path. Otherwise we will throw IPv6 packets with bad checksums at the hardware. Signed-off-by: Herbert Xu Signed-off-by: David S. Miller commit 8122adf06e6f93ae608cf8227e878cc44f4a8fd1 Author: Al Viro Date: Wed Sep 27 18:49:35 2006 -0700 [XFRM]: xfrm_spi_hash() annotations Signed-off-by: Al Viro Signed-off-by: David S. Miller commit 4324a174304d1d826582be5422a976e09d2b1e63 Author: Al Viro Date: Wed Sep 27 18:49:07 2006 -0700 [XFRM]: fl_ipsec_spi is net-endian Signed-off-by: Al Viro Signed-off-by: David S. Miller commit 9916ecb0a6f52f1475fa2f71845227d3c75fb40c Author: Al Viro Date: Wed Sep 27 18:48:48 2006 -0700 [XFRM]: struct xfrm_usersa_id annotations Signed-off-by: Al Viro Signed-off-by: David S. Miller commit 61f4627b2fecce9d5c9645e4b47e75a0c29ad8c3 Author: Al Viro Date: Wed Sep 27 18:48:33 2006 -0700 [XFRM]: xfrm_replay_advance() annotations Signed-off-by: Al Viro Signed-off-by: David S. Miller commit a252cc2371930debe3162f1ac91467b9791324cb Author: Al Viro Date: Wed Sep 27 18:48:18 2006 -0700 [XFRM]: xrfm_replay_check() annotations seq argument is net-endian Signed-off-by: Al Viro Signed-off-by: David S. Miller commit 6067b2baba32211e84d1ef2dba863422281bd6c7 Author: Al Viro Date: Wed Sep 27 18:47:59 2006 -0700 [XFRM]: xfrm_parse_spi() annotations Signed-off-by: Al Viro Signed-off-by: David S. Miller commit e037c39bf965ca66fde902e191d849a90de278fe Author: Al Viro Date: Wed Sep 27 18:47:40 2006 -0700 [XFRM]: struct xfrm_id annotations Signed-off-by: Al Viro Signed-off-by: David S. Miller commit a94cfd19744a568d97b14bbaa500b2a0c3684f34 Author: Al Viro Date: Wed Sep 27 18:47:24 2006 -0700 [XFRM]: xfrm_state_lookup() annotations spi argument of xfrm_state_lookup() is net-endian Signed-off-by: Al Viro Signed-off-by: David S. Miller commit 26977b4ed728ae911a162b16dbfe1a165b7cf9a1 Author: Al Viro Date: Wed Sep 27 18:47:05 2006 -0700 [XFRM]: xfrm_alloc_spi() annotated Signed-off-by: Al Viro Signed-off-by: David S. Miller commit 737b5761dfc609b5be4163deb2cf09226f56bcbc Author: Al Viro Date: Wed Sep 27 18:46:48 2006 -0700 [XFRM]: xfrm_address_t annotations Signed-off-by: Al Viro Signed-off-by: David S. Miller commit 5f19343fb19613539355296b23cbc08d1336b52d Author: Al Viro Date: Wed Sep 27 18:46:32 2006 -0700 [XFRM]: addr_match() annotations Signed-off-by: Al Viro Signed-off-by: David S. Miller commit 8f83f23e6db8b9a9fe787d02f73489224668c4e2 Author: Al Viro Date: Wed Sep 27 18:46:11 2006 -0700 [XFRM]: ports in struct xfrm_selector annotated Signed-off-by: Al Viro Signed-off-by: David S. Miller commit f9d07e41f89e7305eb2c0475c170c51d21425581 Author: Al Viro Date: Wed Sep 27 18:45:50 2006 -0700 [XFRM]: xfrm_flowi_[sd]port() annotations both return net-endian Signed-off-by: Al Viro Signed-off-by: David S. Miller commit e2e38e819bd03e9674c102aaa2c9dc8151a3c3d0 Author: Al Viro Date: Wed Sep 27 18:45:27 2006 -0700 [IPV6]: sin6_port is net-endian Signed-off-by: Al Viro Signed-off-by: David S. Miller commit 43505077df075545e9b28b7c6ea12d82b3caf036 Author: Al Viro Date: Wed Sep 27 18:45:11 2006 -0700 [IPV6]: IPv6 headers annotations Signed-off-by: Al Viro Signed-off-by: David S. Miller commit 48818f822d2b2e16f4bf4d1ed1185e7d2146dc34 Author: Al Viro Date: Wed Sep 27 18:44:54 2006 -0700 [IPV6]: struct in6_addr annotations in6_addr elements are net-endian Signed-off-by: Al Viro Signed-off-by: David S. Miller commit 9f8552996d969f56039ec88128cf5ad35b12f141 Author: Al Viro Date: Wed Sep 27 18:44:30 2006 -0700 [IPV4]: inet_diag annotations Signed-off-by: Al Viro Signed-off-by: David S. Miller commit 82103232edc4b4ed48949a195aca93cfa3fe3fa8 Author: Al Viro Date: Wed Sep 27 18:44:10 2006 -0700 [IPV4]: inet_rcv_saddr() annotations inet_rcv_saddr() returns net-endian Signed-off-by: Al Viro Signed-off-by: David S. Miller commit 23f33c2d4fd5986243b67a2bf5e63ebae1a76ffa Author: Al Viro Date: Wed Sep 27 18:43:50 2006 -0700 [IPV4]: struct inet_timewait_sock annotations Signed-off-by: Al Viro Signed-off-by: David S. Miller commit fb99c848e5ae6b8b2bc11f0f90c9e2bb3d702c0d Author: Al Viro Date: Wed Sep 27 18:43:33 2006 -0700 [IPV4]: annotate inet_lookup() and friends inet_lookup() annotated along with helper functions (__inet_lookup(), __inet_lookup_established(), inet_lookup_established(), inet_lookup_listener(), __inet_lookup_listener() and inet_ehashfn()) Signed-off-by: Al Viro Signed-off-by: David S. Miller commit 4f765d842fa6e6fe15d555b247b640118d65b4dd Author: Al Viro Date: Wed Sep 27 18:43:07 2006 -0700 [IPV4]: INET_MATCH() annotations INET_MATCH() and friends depend on an interesting set of kludges: * there's a pair of adjacent fields in struct inet_sock - __be16 dport followed by __u16 num. We want to search by pair, so we combine the keys into a single 32bit value and compare with 32bit value read from &...->dport. * on 64bit targets we combine comparisons with pair of adjacent __be32 fields in the same way. Make sure that we don't mix those values with anything else and that pairs we form them from have correct types. Signed-off-by: Al Viro Signed-off-by: David S. Miller commit 45d60b9e29556a7831812ec338d82f4d3a4145f8 Author: Al Viro Date: Wed Sep 27 18:40:27 2006 -0700 [IPV4]: FRA_{DST,SRC} annotated use be32 netlink accessors for those Signed-off-by: Al Viro Signed-off-by: David S. Miller commit 81f7bf6cbaca02c034b0393c51fc22b29cba20f7 Author: Al Viro Date: Wed Sep 27 18:40:00 2006 -0700 [IPV4]: net/ipv4/fib annotations Signed-off-by: Al Viro Signed-off-by: David S. Miller commit 114c7844f34c1608aec20ae7ff85cec471ac90ae Author: Al Viro Date: Wed Sep 27 18:39:29 2006 -0700 [IPV4]: mroute annotations Signed-off-by: Al Viro Signed-off-by: David S. Miller commit 1b620154273d5cc57690e0d199282c6bb9e56974 Author: Al Viro Date: Wed Sep 27 18:39:09 2006 -0700 [IPV4]: PIMv2 header annotations Signed-off-by: Al Viro Signed-off-by: David S. Miller commit df7a3b07c28e7b547d8252a237299e32880b505d Author: Al Viro Date: Wed Sep 27 18:38:52 2006 -0700 [TCP] net/ipv4/tcp_output.c: trivial annotations Signed-off-by: Al Viro Signed-off-by: David S. Miller commit b03d73e30c1b29a365f085bca5214a14c6df3859 Author: Al Viro Date: Wed Sep 27 18:38:30 2006 -0700 [IPV4] net/ipv4/icmp.c: trivial annotations Signed-off-by: Al Viro Signed-off-by: David S. Miller commit b1dd39ac963040c2d282ab8026b9c9aa9306ea06 Author: Al Viro Date: Wed Sep 27 18:38:13 2006 -0700 [IPV4]: ICMP header annotations Signed-off-by: Al Viro Signed-off-by: David S. Miller commit 734ab87f632e94dfd4299f4d4d1d10668548f9d8 Author: Al Viro Date: Wed Sep 27 18:37:41 2006 -0700 [UDP] net/ipv4/udp.c: trivial annotations Signed-off-by: Al Viro Signed-off-by: David S. Miller commit 4e7e0c7592cafe5453e5b2f115fc0065d11b3d44 Author: Al Viro Date: Wed Sep 27 18:37:19 2006 -0700 [IPV4]: UDP header annotations Signed-off-by: Al Viro Signed-off-by: David S. Miller commit 6b72977bd6c6fefc6497d4f0275079f539eaf0ac Author: Al Viro Date: Wed Sep 27 18:36:59 2006 -0700 [IPV4]: inet_csk_search_req() annotations rport argument is net-endian Signed-off-by: Al Viro Signed-off-by: David S. Miller commit ed9bad06eec5ee7842851f9abeb406e9a73084e8 Author: Al Viro Date: Wed Sep 27 18:36:36 2006 -0700 [IPV4] net/ipv4/arp.c: trivial annotations Signed-off-by: Al Viro Signed-off-by: David S. Miller commit bd6d610a14f2ed896b76dfb61fbdec829e44b8d3 Author: Al Viro Date: Wed Sep 27 18:35:47 2006 -0700 [IPV4]: ARP header annotated Signed-off-by: Al Viro Signed-off-by: David S. Miller commit e11be94bf6a3bfc90816d37847e6b5b179ca2ff6 Author: Al Viro Date: Wed Sep 27 18:35:29 2006 -0700 [IPV4]: struct inet_request_sock annotations ->port is net-endian Signed-off-by: Al Viro Signed-off-by: David S. Miller commit 4f3608b787f471e8e6b9f39c5ed1edde5a2e7d04 Author: Al Viro Date: Wed Sep 27 18:35:09 2006 -0700 [TCP] net/ipv4/tcp_input.c: trivial annotations Signed-off-by: Al Viro Signed-off-by: David S. Miller commit 39dccd9d922b595301e5d43ca7a30823d81393b6 Author: Al Viro Date: Wed Sep 27 18:34:41 2006 -0700 [IPV4]: route.h annotations ip_route_connect(), ip_route_newports() get port numbers net-endian Signed-off-by: Al Viro Signed-off-by: David S. Miller commit 35986b329f5476630cef00cc7a164ff336ec1a21 Author: Al Viro Date: Wed Sep 27 18:34:21 2006 -0700 [IPV4]: ip_icmp_error() annotations port is net-endian Signed-off-by: Al Viro Signed-off-by: David S. Miller commit b406313c733156c8eea7d9c1891476f400914367 Author: Al Viro Date: Wed Sep 27 18:34:02 2006 -0700 [NET]: struct sock_exterr_skb annotations ->port is net-endian Signed-off-by: Al Viro Signed-off-by: David S. Miller commit 0579016ec4691116f6322ec6ed7fb7ce746948e9 Author: Al Viro Date: Wed Sep 27 18:33:40 2006 -0700 [IPV4]: ip_local_error() annotations port argument is net-endian Signed-off-by: Al Viro Signed-off-by: David S. Miller commit cc939d37349bf82891bd1f4558284d7fafe7acb2 Author: Al Viro Date: Wed Sep 27 18:33:22 2006 -0700 [NET]: ip ports in struct flowi are net-endian Signed-off-by: Al Viro Signed-off-by: David S. Miller commit 2816e1284a2db03ad5e205bab4eacbc5f7d4f991 Author: Al Viro Date: Wed Sep 27 18:33:05 2006 -0700 [IPV4]: ports in struct inet_sock are net-endian Signed-off-by: Al Viro Signed-off-by: David S. Miller commit dddc93c05d7dba60b44866486502c155e96ab915 Author: Al Viro Date: Wed Sep 27 18:32:46 2006 -0700 [TCP]: struct tcp_sock .pred_flags is net-endian Signed-off-by: Al Viro Signed-off-by: David S. Miller commit 269bd27e66037a7932cee6d6aa7ef7defd0bfe38 Author: Al Viro Date: Wed Sep 27 18:32:28 2006 -0700 [TCP]: struct tcp_sack_block annotations Some of the instances of tcp_sack_block are host-endian, some - net-endian. Define struct tcp_sack_block_wire identical to struct tcp_sack_block with u32 replaced with __be32; annotate uses of tcp_sack_block replacing net-endian ones with tcp_sack_block_wire. Change is obviously safe since for cc(1) __be32 is typedefed to u32. Signed-off-by: Al Viro Signed-off-by: David S. Miller commit 46a97324a5ebdc1e343a0223d993e79551adab0f Author: Al Viro Date: Wed Sep 27 18:31:51 2006 -0700 [IPV4]: TCP headers annotated Signed-off-by: Al Viro Signed-off-by: David S. Miller commit 63007727e0bb09e8d906f73d36a09b9fac0d5893 Author: Al Viro Date: Wed Sep 27 18:31:32 2006 -0700 [IPV4]: trivial igmp annotations Signed-off-by: Al Viro Signed-off-by: David S. Miller commit c0cda068aac3481d40795b115e4fd36f7d386e3a Author: Al Viro Date: Wed Sep 27 18:31:10 2006 -0700 [IPV4]: ip_mc_sf_allow() annotated ip_mc_sf_allow() expects addresses to be passed net-endian. Signed-off-by: Al Viro Signed-off-by: David S. Miller commit ea4d9e7220d32348cc9742ba6d27de5165262664 Author: Al Viro Date: Wed Sep 27 18:30:52 2006 -0700 [IPV4]: struct ip_sf_list and struct ip_sf_socklist annotated Signed-off-by: Al Viro Signed-off-by: David S. Miller commit 942bf921e922560c05fde6afb00ddedf6224c608 Author: Al Viro Date: Wed Sep 27 18:30:28 2006 -0700 [IPV4]: IGMP on-the-wire data is net-endian Signed-off-by: Al Viro Signed-off-by: David S. Miller commit 8f935bbd7c6c66796c2403aefdab74bb48045bf6 Author: Al Viro Date: Wed Sep 27 18:30:07 2006 -0700 [IPV4]: ip_mc_{inc,dec}_group() annotations Signed-off-by: Al Viro Signed-off-by: David S. Miller commit 00a5020cd51febbb3166ff7a09a2901c47ba251a Author: Al Viro Date: Wed Sep 27 18:29:47 2006 -0700 [IPV4]: annotate ipv4 address fields in struct ip_msfilter and struct ip_mreq_source Signed-off-by: Al Viro Signed-off-by: David S. Miller commit 4b06a7cf2f3c053e7fc47ca6a4c74553e2291e24 Author: Al Viro Date: Wed Sep 27 18:29:07 2006 -0700 [IPV4]: ip_local_error() ipv4 address argument annotated daddr is net-endian Signed-off-by: Al Viro Signed-off-by: David S. Miller commit e25d2ca6b2808c427704b01608baf0f7dea1696e Author: Al Viro Date: Wed Sep 27 18:28:47 2006 -0700 [IPV4]: trivial ip_options.c annotations Signed-off-by: Al Viro Signed-off-by: David S. Miller commit c1d18f9fa09489635a451ee13c1727e1683c2333 Author: Al Viro Date: Wed Sep 27 18:28:28 2006 -0700 [IPV4]: struct ipcm_cookie annotation ->addr is net-endian Signed-off-by: Al Viro Signed-off-by: David S. Miller commit 3ca3c68e76686bee058937ade2b96f4de58ee434 Author: Al Viro Date: Wed Sep 27 18:28:07 2006 -0700 [IPV4]: struct ip_options annotations ->faddr is net-endian; annotated as such, variables inferred to be net-endian annotated. Signed-off-by: Al Viro Signed-off-by: David S. Miller commit 7f25afbbefb266520a237df0e9b59112704a7a42 Author: Al Viro Date: Wed Sep 27 18:27:47 2006 -0700 [IPV4]: inet_csk_search_req() (partial) annotations raddr is net-endian Signed-off-by: Al Viro Signed-off-by: David S. Miller commit adaf345b537681c6ed3657941904d976fe72f342 Author: Al Viro Date: Wed Sep 27 18:27:13 2006 -0700 [IPV4]: annotate address in inet_request_sock Signed-off-by: Al Viro Signed-off-by: David S. Miller commit 85670cc1faa2e1472e4a423cbf0b5e3d55c5ba88 Author: Patrick McHardy Date: Wed Sep 27 16:45:45 2006 -0700 [NET_SCHED]: Fix fallout from dev->qdisc RCU change The move of qdisc destruction to a rcu callback broke locking in the entire qdisc layer by invalidating previously valid assumptions about the context in which changes to the qdisc tree occur. The two assumptions were: - since changes only happen in process context, read_lock doesn't need bottem half protection. Now invalid since destruction of inner qdiscs, classifiers, actions and estimators happens in the RCU callback unless they're manually deleted, resulting in dead-locks when read_lock in process context is interrupted by write_lock_bh in bottem half context. - since changes only happen under the RTNL, no additional locking is necessary for data not used during packet processing (f.e. u32_list). Again, since destruction now happens in the RCU callback, this assumption is not valid anymore, causing races while using this data, which can result in corruption or use-after-free. Instead of "fixing" this by disabling bottem halfs everywhere and adding new locks/refcounting, this patch makes these assumptions valid again by moving destruction back to process context. Since only the dev->qdisc pointer is protected by RCU, but ->enqueue and the qdisc tree are still protected by dev->qdisc_lock, destruction of the tree can be performed immediately and only the final free needs to happen in the rcu callback to make sure dev_queue_xmit doesn't access already freed memory. Signed-off-by: Patrick McHardy Signed-off-by: David S. Miller commit 787e0617e5176176c494a787f1b0a5248a3db568 Author: Patrick McHardy Date: Wed Sep 27 16:36:23 2006 -0700 [NET_SCHED]: HTB: fix incorrect use of RB_EMPTY_NODE Fix incorrect use of RB_EMPTY_NODE in htb_safe_rb_erase, which makes it skip nodes within the rbtree instead of nodes not in the tree, resulting in crashes later on. The root cause for this seems to be the very counter-intuitive behaviour of the RB_EMPTY_NODE macro, which returns _false_ when the node is empty. Signed-off-by: Patrick McHardy Signed-off-by: David S. Miller commit 321efff7c3b7a26fa0522cb12b2af2ac82c05f1e Author: Olaf Kirch Date: Wed Sep 27 16:33:45 2006 -0700 [IPV4]: Fix order in inet_init failure path. This is just a minor buglet I came across by accident - when inet_init fails to register raw_prot, it jumps to out_unregister_udp_proto which should unregister UDP _and_ TCP. Signed-off-by: Olaf Kirch Signed-off-by: David S. Miller commit f0e82fd0e5ad8494985ddfca7de89a800cf96fb8 Author: Francesco Fondelli Date: Wed Sep 27 16:33:05 2006 -0700 [PKTGEN]: Documentation update Signed-off-by: Francesco Fondelli Signed-off-by: Robert Olsson Signed-off-by: David S. Miller commit 1ca7768c87ac1393228857d576654f7e84c8cee6 Author: Francesco Fondelli Date: Wed Sep 27 16:32:03 2006 -0700 [PKTGEN]: DSCP support Anyway, I've been asked to add support for managing DSCP codepoints, so one can test DiffServ capable routers. It's very simple code and is working for me. Signed-off-by: Francesco Fondelli Signed-off-by: Robert Olsson Signed-off-by: David S. Miller commit 34954ddc4f3e790fb6d5ed331513f54b38713234 Author: Francesco Fondelli Date: Wed Sep 27 16:30:44 2006 -0700 [PKTGEN]: vlan support The attached patch allows pktgen to produce 802.1Q and Q-in-Q tagged frames. I have used it for stress test a bridge and seems ok to me. Unfortunately I have no access to net-2.6.x git tree so the diff is against 2.6.17.13. Signed-off-by: Francesco Fondelli Acked-by: Steven Whitehouse Signed-off-by: Robert Olsson Signed-off-by: David S. Miller commit 658270a0a49612a0e3fdc01c2e8c0e1a6d47cbf4 Author: Kim Nordlund Date: Wed Sep 27 16:19:53 2006 -0700 [PKT_SCHED] cls_basic: Use unsigned int when generating handle Prevents filters from being added if the first generated handle already exists. Signed-off-by: Kim Nordlund Signed-off-by: Thomas Graf commit c9aa6895371b2a257401f59d3393c9f7ac5a8698 Author: Michal Ostrowski Date: Wed Sep 27 16:11:25 2006 -0700 [PPPOE]: Advertise PPPoE MTU PPPoE must advertise the underlying device's MTU via the ppp channel descriptor structure, as multilink functionality depends on it. Signed-off-by: Michal Ostrowski Acked-by: Paul Mackerras Signed-off-by: Andrew Morton Signed-off-by: David S. Miller commit 1533d382155ee888d9621391c108ffb7a68bb25d Author: Michael Chan Date: Wed Sep 27 16:10:35 2006 -0700 [TG3]: Update version and reldate. Update version to 3.66. Signed-off-by: Michael Chan Signed-off-by: David S. Miller commit b16250e3d1c55820f08f0296624a423122ea9805 Author: Michael Chan Date: Wed Sep 27 16:10:14 2006 -0700 [TG3]: Add 5709 self-test support. Signed-off-by: Michael Chan Signed-off-by: David S. Miller commit 715116a12610b67c1d301a9b845ce95f7247dad3 Author: Michael Chan Date: Wed Sep 27 16:09:25 2006 -0700 [TG3]: Add 5709 PHY support. Add support for the 5709 10/100 PHY. Signed-off-by: Michael Chan Signed-off-by: David S. Miller commit b5d3772ccbe0bc5ac8ffbb5356b74ca698aee28c Author: Michael Chan Date: Wed Sep 27 16:06:21 2006 -0700 [TG3]: Add basic 5906 support. Add support for the new 5709 device. This is a new 10/100 Mbps chip. The mailbox access and firmware interface are quite different from all other tg3 chips. Signed-off-by: Michael Chan Signed-off-by: David S. Miller commit 7a6f4369449a471a6e5718a87c53ac75a46960ba Author: Michael Chan Date: Wed Sep 27 16:03:31 2006 -0700 [TG3]: Add tg3_poll_fw(). Put the firmware polling logic into a separate function. This makes the code cleaner. Signed-off-by: Michael Chan Signed-off-by: David S. Miller commit 126a336822a6594662f5898f1ddf33e6d048fcc7 Author: Michael Chan Date: Wed Sep 27 16:03:07 2006 -0700 [TG3]: Add 5722 and 5756 support. Add IDs to support 5722 and 5756. Signed-off-by: Michael Chan Signed-off-by: David S. Miller commit 3f7045c1f28bedd44389b9392b54c6fdb83ee5c6 Author: Michael Chan Date: Wed Sep 27 16:02:29 2006 -0700 [TG3]: PHY fixes. Some PHY related fixes: 1. Fix Serdes WoL. 2. Fix loopback test on 10/100 only devices. Signed-off-by: Michael Chan Signed-off-by: David S. Miller commit 130b8e4d0e4edadcecee9fdff2c32f33d77c4fe9 Author: Michael Chan Date: Wed Sep 27 16:00:40 2006 -0700 [TG3]: Improve ASF heartbeat. Change to a different ASF heartbeat message code to improve reliability. There were some reports of unintended resets on real time kernels where the timer may be slow and cause the heartbeat to be late. Netpoll will also have the same problem because the timer irq will be unavailable. Using the new heartbeat code, the ASF firmware will also check the ring condition before resetting the chip when the heartbeat is expiring. Signed-off-by: Michael Chan Signed-off-by: David S. Miller commit 3d3ebe741b2c06fe3df67739d09f6ef0e25ee41a Author: Michael Chan Date: Wed Sep 27 15:59:15 2006 -0700 [TG3]: Improve 5704S autoneg. Improve 5704S autoneg logic by using a serdes_counter field to keep track of the transient states. This eliminates a 200 msec busy loop in the code. Autoneg will take its course without the driver busy waiting for it to finish. Signed-off-by: Michael Chan Signed-off-by: David S. Miller commit 6ac59344ef25d5f0ebadb5663cf700d25d2a3886 Author: Marcel Holtmann Date: Tue Sep 26 09:43:48 2006 +0200 [Bluetooth] Support create connection cancel command In case of non-blocking connects it is possible that the last user of an ACL link quits before the connection has been fully established. This will lead to a race condition where the internal state of a connection is closed, but the actual link has been established and is active. In case of Bluetooth 1.2 and later devices it is possible to call create connection cancel to abort the connect. For older devices the disconnect timer will be used to trigger the needed disconnect. Signed-off-by: Marcel Holtmann commit 1143e5a6d4d69cd36d44e0184769aa2b17041a10 Author: Marcel Holtmann Date: Sat Sep 23 09:57:20 2006 +0200 [Bluetooth] Read local version information on device init The local version information are needed to identify certain feature sets of devices. They must be read on device init and stored for later use. It is also possible to access them through the device model. Signed-off-by: Marcel Holtmann commit b4c612a473eb816dff6e5ab6820dff338057aa8d Author: Marcel Holtmann Date: Sat Sep 23 09:54:38 2006 +0200 [Bluetooth] Return EINPROGRESS for non-blocking socket calls In case of non-blocking socket calls we should return EINPROGRESS and not EAGAIN. Signed-off-by: Ulisses Furquim Signed-off-by: Marcel Holtmann commit 7785162cf2baf7c6c1e4ad8ae5888f85fcc5febc Author: Marcel Holtmann Date: Thu Sep 21 16:23:19 2006 +0200 [Bluetooth] Code cleanup for the HCI UART driver This patch cleans up the Bluetooth HCI UART driver a bit. Signed-off-by: Pavel Machek Signed-off-by: Marcel Holtmann commit 62ae15919b6db6644049338296624fbd724c0054 Author: Marcel Holtmann Date: Thu Sep 21 16:19:55 2006 +0200 [Bluetooth] Add support for Canyon CN-BTU1 dongle This patch adds the vendor and product id of the Canycon CN-BTU1 dongle and sets a flag to send HCI_Reset as the first command. Signed-off-by: Marcel Holtmann commit defc761bc25643eeedee3abd6af0079ef214b55d Author: Marcel Holtmann Date: Thu Sep 21 16:04:00 2006 +0200 [Bluetooth] Handle command complete event for exit periodic inquiry The command complete event of the exit periodic inquiry command must clear the HCI_INQUIRY flag and finish the HCI request. Signed-off-by: Marcel Holtmann commit 0ac53939a06c610b394aeb0211b985804f2d2da3 Author: Marcel Holtmann Date: Sat Jul 8 13:57:15 2006 +0200 [Bluetooth] Add HCI device identifier for SDIO cards This patch assigns the next free HCI device identifier to Bluetooth devices based on the SDIO interface. Signed-off-by: Marcel Holtmann commit 9c724357f432df5ddc83a62c8168414a604cd420 Author: Marcel Holtmann Date: Thu Jul 6 15:45:23 2006 +0200 [Bluetooth] Code cleanup of the drivers source code This patch is an attempt to cleanup the drivers source code to make all Bluetooth drivers look more unique. Signed-off-by: Marcel Holtmann commit 0a85b964e141a4b8db6eaf500ceace12f8f52f93 Author: Marcel Holtmann Date: Thu Jul 6 13:09:02 2006 +0200 [Bluetooth] Integrate services into the driver model This patch integrates the services of the Bluetooth protocols RFCOMM, BNEP and HIDP into the driver model. This makes it possible to assign the virtual TTY, network and input devices to a specific Bluetooth connection. Signed-off-by: Marcel Holtmann commit b219e3ac66183fc9771b94af931fb5fd41d586ec Author: Marcel Holtmann Date: Thu Jul 6 12:38:46 2006 +0200 [Bluetooth] Integrate low-level connections into the driver model This patch integrates the low-level connections (ACL and SCO) into the driver model. Every connection is presented as device with the parent set to its host controller device. Signed-off-by: Marcel Holtmann commit 4d0eb0049ce94101f7f169f89216ba58475219e2 Author: Marcel Holtmann Date: Thu Jul 6 12:34:41 2006 +0200 [Bluetooth] Remove unused host controller attributes This patch removes the unused device attribute entries for the Bluetooth host controllers. Signed-off-by: Marcel Holtmann commit 9918f230969bdaf3df012b77abcbcd4cdb0ab221 Author: Eric Sesterhenn Date: Tue Sep 26 23:26:38 2006 -0700 [RTNETLINK]: Possible dereference in net/core/rtnetlink.c another possible dereference spotted by coverity (#cid 1390). if the nlmsg_parse() call fails, we goto errout, where we call dev_put(), with dev still initialized to NULL. Signed-off-by: Eric Sesterhenn Signed-off-by: David S. Miller commit 753ed90d92009260616f6402aafa7ee47e03b162 Author: Al Viro Date: Tue Sep 26 22:30:23 2006 -0700 [SUNRPC]: more sunrpc endianness annotations Signed-off-by: Al Viro Signed-off-by: David S. Miller commit d8ed029d6000ba2e2908d9286409e4833c091b4c Author: Alexey Dobriyan Date: Tue Sep 26 22:29:38 2006 -0700 [SUNRPC]: trivial endianness annotations pure s/u32/__be32/ [AV: large part based on Alexey's patches] Signed-off-by: Alexey Dobriyan Signed-off-by: Al Viro Signed-off-by: David S. Miller commit 7699431301b189fca7ccbb64fe54e5a5170f8497 Author: Alexey Dobriyan Date: Tue Sep 26 22:28:46 2006 -0700 [SUNRPC]: svc_{get,put}nl() * add svc_getnl(): Take network-endian value from buffer, convert to host-endian and return it. * add svc_putnl(): Take host-endian value, convert to network-endian and put it into a buffer. * annotate svc_getu32()/svc_putu32() as dealing with network-endian. * convert to svc_getnl(), svc_putnl(). [AV: in large part it's a carved-up Alexey's patch] Signed-off-by: Alexey Dobriyan Signed-off-by: Al Viro Signed-off-by: David S. Miller commit 13d8eaa06abfeb708b60fa64203a20db033088b3 Author: Al Viro Date: Tue Sep 26 22:27:30 2006 -0700 [IPV4]: ip_build_and_send_pkt() annotations saddr and daddr are net-endian Signed-off-by: Al Viro Signed-off-by: David S. Miller commit 8712f774dc47ec6353c9b75317d6db62e58d9367 Author: Al Viro Date: Tue Sep 26 22:27:05 2006 -0700 [IPV4]: ip_options_build() annotations daddr is net-endian Signed-off-by: Al Viro Signed-off-by: David S. Miller commit e8192f367cb3dcbefaa4109d26f3b1645b0c6b56 Author: Al Viro Date: Tue Sep 26 22:26:21 2006 -0700 [IPV4] bug: broken open-coded inet_make_mask() (multipath_wrandom) multipath_wrandom.c::__multipath_lookup_weight() contains open-coded attempt at inet_make_mask(); broken on big-endian. Signed-off-by: Al Viro Signed-off-by: David S. Miller commit f20f4a60d74b0d7e2a5dafd5e7d5760f44ce2f30 Author: Al Viro Date: Tue Sep 26 22:25:13 2006 -0700 [IPV4] multipath_wrandom.c: trivial annotations Signed-off-by: Al Viro Signed-off-by: David S. Miller commit d9cd66e0e593929077b5ecf87384e23db7271c6e Author: Al Viro Date: Tue Sep 26 22:22:50 2006 -0700 [IPV4]: multipath_set_nhinfo() annotations multipath_set_nhinfo() (and underlying callback) take net-endian network and netmask. Signed-off-by: Al Viro Signed-off-by: David S. Miller commit 32ab5f80334fc067386c4c56c434010c01cff6b9 Author: Al Viro Date: Tue Sep 26 22:21:45 2006 -0700 [IPV4] fib_trie.c: trivial annotations Signed-off-by: Al Viro Signed-off-by: David S. Miller commit 1e8aa6f125d959d1a9f16a3f15e9ebbc6df63935 Author: Al Viro Date: Tue Sep 26 22:21:22 2006 -0700 [IPV4] bug: open-coded inet_make_mask() in fib_semantic_match() is broken ... and works only on little-endian Signed-off-by: Al Viro Signed-off-by: David S. Miller commit 1ef1b8c85bb4954b7dca816f1bb7fd54bcd78078 Author: Al Viro Date: Tue Sep 26 22:20:56 2006 -0700 [IPV4]: fib_semantic_match() annotations 'mask' and 'zone' arguments are net-endian Signed-off-by: Al Viro Signed-off-by: David S. Miller commit b6e80c6c8b2de8b581e7521af3e118ea379260f1 Author: Al Viro Date: Tue Sep 26 22:20:01 2006 -0700 [IPV4]: trivial fib_hash.c annotations hash key and stored netmask are net-endian Signed-off-by: Al Viro Signed-off-by: David S. Miller commit 80e856e16a145d7f44f613d9f3d903bf459510ca Author: Al Viro Date: Tue Sep 26 22:19:36 2006 -0700 [IPV4]: annotate addresses in fib_result and fib_result_nl Signed-off-by: Al Viro Signed-off-by: David S. Miller commit 182777700d912a69824245e9ee99148ac0aa57d7 Author: Al Viro Date: Tue Sep 26 22:19:02 2006 -0700 [IPV4]: ip_fragment.c endianness annotations Signed-off-by: Al Viro Signed-off-by: David S. Miller commit 53576d9b995605a9edc7414b900a9218c8f23b1f Author: Al Viro Date: Tue Sep 26 22:18:43 2006 -0700 [IPV4]: inetpeer annotations This one is interesting - we use net-endian value as search key, but order the tree by *host-endian* comparisons of keys. OK since we only care about lookups. Annotated inet_getpeer() and friends. Signed-off-by: Al Viro Signed-off-by: David S. Miller commit d878e72e419db9ff4c66848375ee30a19820e4de Author: Al Viro Date: Tue Sep 26 22:18:13 2006 -0700 [IPV4]: ip_fib_check_default() annotated Signed-off-by: Al Viro Signed-off-by: David S. Miller commit fd6832220974809141b3981e380b78690bba8911 Author: Al Viro Date: Tue Sep 26 22:17:51 2006 -0700 [IPV4]: inet_addr_type() annotations argument and inferred net-endian variables in callers annotated. Signed-off-by: Al Viro Signed-off-by: David S. Miller commit e4883014f48f8c17c17a2526cb5cb6e17c5f94e7 Author: Al Viro Date: Tue Sep 26 22:17:28 2006 -0700 [IPV4]: icmp_send() annotation The last argument is network-endian (it will go straight into the packet). Signed-off-by: Al Viro Signed-off-by: David S. Miller commit 60cad5da5791ceb0beefe9a79b570cca45791f50 Author: Al Viro Date: Tue Sep 26 22:17:09 2006 -0700 [IPV4]: annotate inetdev.h helpers inet_confirm_addr(), inet_ifa_byprefix(), ip_dev_find(), inet_make_mask() and inet_ifa_match() annotated, along with inferred net-endian variables Signed-off-by: Al Viro Signed-off-by: David S. Miller commit a7a628c442ed28511e1569a975c993b27fa034f4 Author: Al Viro Date: Tue Sep 26 22:16:43 2006 -0700 [IPV4]: IFA_{LOCAL,ADDRESS,BROADCAST,ANYCAST} on ipv4 annotated use be32 netlink accessors Signed-off-by: Al Viro Signed-off-by: David S. Miller commit a144ea4b7a13087081ab5402fa9ad0bcfd249e67 Author: Al Viro Date: Thu Sep 28 18:00:55 2006 -0700 [IPV4]: annotate struct in_ifaddr ifa_local, ifa_address, ifa_mask, ifa_broadcast and ifa_anycast are net-endian. Annotated them and variables that are inferred to be net-endian. Signed-off-by: Al Viro Signed-off-by: David S. Miller commit 6d85c10abe840e98cbac673202fe7cc9ada2180c Author: Al Viro Date: Tue Sep 26 22:15:46 2006 -0700 [IPV4]: struct fib_config IPv4 address fields annotated Signed-off-by: Al Viro Signed-off-by: David S. Miller commit 17fb2c64394a2d5106540d69fc83c183ee7c206e Author: Al Viro Date: Tue Sep 26 22:15:25 2006 -0700 [IPV4]: RTA_{DST,SRC,GATEWAY,PREFSRC} annotated these are passed net-endian; use be32 netlink accessors Signed-off-by: Al Viro Signed-off-by: David S. Miller commit e448515c79c3785eae225c25e8cd5b90b470d0a6 Author: Al Viro Date: Tue Sep 26 22:15:01 2006 -0700 [IPV4] net/ipv4/route.c: trivial endianness annotations Signed-off-by: Al Viro Signed-off-by: David S. Miller commit 00012e5bb9527022cbc843c5d372b282dbe6c4af Author: Al Viro Date: Tue Sep 26 22:14:41 2006 -0700 [IPV4]: introduce nla_get_be32()/NLA_PUT_BE32() net-endian counterparts of nla_get_u32()/NLA_PUT_U32() Signed-off-by: Al Viro Signed-off-by: David S. Miller commit b83738ae003dde613712ddb1e90a8a01f5587b51 Author: Al Viro Date: Tue Sep 26 22:14:15 2006 -0700 [IPV4]: FIB_RES_PREFSRC() annotated Signed-off-by: Al Viro Signed-off-by: David S. Miller commit ed49e3caaa6126f8e29f08e8b4fdcafcae431b57 Author: Al Viro Date: Tue Sep 26 22:13:54 2006 -0700 [IPV4]: fib_hn ->nh_gw is net-endian Signed-off-by: Al Viro Signed-off-by: David S. Miller commit ff428d72c59b35e4ba34bc1b487e707648010fe3 Author: Al Viro Date: Tue Sep 26 22:13:35 2006 -0700 [IPV4]: inet_addr_onlink() annotated Signed-off-by: Al Viro Signed-off-by: David S. Miller commit a60c4923da795c74db9ff61a60e2f1df5754e4ce Author: Al Viro Date: Tue Sep 26 21:28:34 2006 -0700 [IPV4]: ip_check_mc() annotations annotated arguments Signed-off-by: Al Viro Signed-off-by: David S. Miller commit d9c9df8c9368f4102324e8c3923edae83974602b Author: Al Viro Date: Tue Sep 26 21:28:14 2006 -0700 [IPV4]: fib_validate_source() annotations annotated arguments and inferred net-endian variables in callers Signed-off-by: Al Viro Signed-off-by: David S. Miller commit a61ced5d1c2e773620d7855ea2009d770c10a6e6 Author: Al Viro Date: Tue Sep 26 21:27:54 2006 -0700 [IPV4]: inet_select_addr() annotations argument and return value are net-endian. Annotated function and inferred net-endian variables in callers. Signed-off-by: Al Viro Signed-off-by: David S. Miller commit 011a92610826bdeec4b80ab423958d4c512639f6 Author: Al Viro Date: Tue Sep 26 21:27:35 2006 -0700 [IPV4]: annotated ipv4 addresses in struct inet_sock Signed-off-by: Al Viro Signed-off-by: David S. Miller commit bada8adc4e6622764205921e6ba3f717aa03c882 Author: Al Viro Date: Tue Sep 26 21:27:15 2006 -0700 [IPV4]: ip_route_connect() ipv4 address arguments annotated annotated address arguments (port number left alone for now); ditto for inferred net-endian variables in callers. Signed-off-by: Al Viro Signed-off-by: David S. Miller commit f2c3fe24119ee4f8faca08699f0488f500014a27 Author: Al Viro Date: Tue Sep 26 21:26:42 2006 -0700 [IPV4]: annotate ipv4 addresses in struct rtable and struct flowi Signed-off-by: Al Viro Signed-off-by: David S. Miller commit 8c7bc84085135d5cc87e9fc6802d3c7bbbb40ef5 Author: Al Viro Date: Tue Sep 26 21:26:19 2006 -0700 [IPV4]: annotate rt_hash_code() users Signed-off-by: Al Viro Signed-off-by: David S. Miller commit f7655229c06d041323b40bd6eb9f95ca0ce95506 Author: Al Viro Date: Tue Sep 26 21:25:43 2006 -0700 [IPV4]: ip_rt_redirect() annotations The first 4 arguments of ip_rt_redirect() are net-endian. Annotated. Signed-off-by: Al Viro Signed-off-by: David S. Miller commit 9e12bb22e32389b41222c9d9fb55724fed83a038 Author: Al Viro Date: Tue Sep 26 21:25:20 2006 -0700 [IPV4]: ip_route_input() annotations ip_route_input() takes net-endian source and destination address. * Annotated as such. * arguments of its invocations annotated where needed. * local helpers getting the same values passed to by it (ip_route_input_mc(), ip_route_input_slow(), ip_handle_martian_source(), ip_mkroute_input(), ip_mkroute_input_def(), __mkroute_input()) annotated Signed-off-by: Al Viro Signed-off-by: David S. Miller commit 046d033148e6936ee2466d38214cf0743a210f39 Author: Al Viro Date: Tue Sep 26 21:24:24 2006 -0700 [IPV4]: headers endianness Signed-off-by: Al Viro Signed-off-by: David S. Miller commit b4229934bd11e1dd03d433072ef3871915fc5e4f Author: Al Viro Date: Tue Sep 26 21:23:43 2006 -0700 [ATM]: use NIPQUAD instead of open-coding it Signed-off-by: Al Viro Signed-off-by: David S. Miller commit 0ac0760a57a6b1eb75c21a590e578be5dfc2f88b Author: Al Viro Date: Tue Sep 26 21:23:16 2006 -0700 [TR]: endiannness annotations Signed-off-by: Al Viro Signed-off-by: David S. Miller commit 2a50f28c326d20ab4556be1b867ecddf6aefbb88 Author: Al Viro Date: Tue Sep 26 21:22:08 2006 -0700 [ATALK]: endianness annotations Signed-off-by: Al Viro Signed-off-by: David S. Miller commit 82fe7c924e61f9444b376498496942d41fbe9d26 Author: Grant Grundler Date: Mon Sep 25 23:47:14 2006 -0700 [NET] Kconfig: fix cut/paste error in TCPPROBE Fix cut/paste error in TCPPROBE help text. Signed-off-by: Grant Grundler Signed-off-by: David S. Miller commit 1618cb0c9c2ac128beb94ff376e3367932ae6432 Author: Randy Dunlap Date: Mon Sep 25 23:11:21 2006 -0700 [NETDEV] config: revert part of previous patch Net devices should depend on NETDEVICES, so revert part of Paolo's previous patch. See http://marc.theaimsgroup.com/?l=linux-kernel&m=115566326218740&w=2 for history. Signed-off-by: Randy Dunlap Signed-off-by: David S. Miller commit 83e331e2a492a134e491bcf50c984fd50c7fae03 Author: Chuck Short Date: Mon Sep 25 22:31:03 2006 -0700 [IRDA] via-ircc: fix memory leak Fix memory leak. Coverity id# 653 patch location: http://www.kernel.org/git/?p=linux/kernel/git/bcollins/ubuntu-dapper.git;a=commitdiff;h=a1f34cb68b16807ed9d5ebb0f6a6ec5ff8a5fc78 Signed-off-by: Chuck Short Signed-off-by: Ben Collins Signed-off-by: Andrew Morton Signed-off-by: David S. Miller commit 293b9c42511d800b5f7bb2acba50f3e584b8c410 Author: Fabio Olive Leite Date: Mon Sep 25 22:28:47 2006 -0700 [IPV6]: bh_lock_sock_nested on tcp_v6_rcv A while ago Ingo patched tcp_v4_rcv on net/ipv4/tcp_ipv4.c to use bh_lock_sock_nested and silence a lock validator warning. This fixed it for IPv4, but recently I saw a report of the same warning on IPv6. Signed-off-by: Andrew Morton Signed-off-by: David S. Miller commit 2d2744fc8be620a2dc469cf48349e3e704119f1b Author: Jeff Garzik Date: Thu Sep 28 20:21:59 2006 -0400 [libata] PCI ID table cleanup in various drivers * Use PCI_VDEVICE() macro * const-ify pci_device_id table * standardize list terminator as "{ }" * convert spaces to tab in pci_driver struct (Alan-ism) * various minor whitespace cleanups Signed-off-by: Jeff Garzik commit 6e3ce3ae8e872f2d3a30f5ce5bc3b7c5eeca4343 Author: Greg Kroah-Hartman Date: Thu Sep 28 17:06:45 2006 -0700 USB: fix build error in ohci driver Thanks to Andrew for the original patch for this. I need to upgrade my version of gcc to catch these things... Signed-off-by: Greg Kroah-Hartman commit 2cc1a4134f51b4aff7c7486d857e6773f493e370 Author: Dave Jones Date: Thu Sep 28 19:50:07 2006 -0400 [AGPGART] printk fixups. Signed-off-by: Dave Jones commit 6174d0fd35f486f59b743630bdf088a9f9792d4d Author: Alan Stern Date: Tue Sep 26 14:51:48 2006 -0400 USB: g_file_storage: Set sense info Valid bit only when needed Strictly speaking, the Valid bit in SCSI sense data is supposed to be set only when the Information field contains a valid number. This patch (as793) turns off the Valid bit when the Information field hasn't been set. Signed-off-by: Alan Stern Signed-off-by: Greg Kroah-Hartman commit e0318ebff4d96131bb3524308b845f642e64df81 Author: Alan Stern Date: Tue Sep 26 14:50:20 2006 -0400 USB: fix autosuspend when CONFIG_PM isn't set This patch (as791b) fixes things up to avoid compiler warnings or errors when CONFIG_USB_SUSPEND or CONFIG_PM isn't set. Signed-off-by: Alan Stern Signed-off-by: Greg Kroah-Hartman commit 8d1a243ba5dda5c1a3cca5df8fb19ab8b138f074 Author: Alan Stern Date: Tue Sep 26 14:46:16 2006 -0400 OHCI: add auto-stop support This patch (as790b) adds "autostop" support to ohci-hcd: the driver will automatically stop the host controller when no devices have been connected for at least one second. This feature is useful when the USB autosuspend facility isn't available, such as when CONFIG_USB_SUSPEND hasn't been set. Signed-off-by: Alan Stern Signed-off-by: Greg Kroah-Hartman commit 1f7e1a3b7e05c833229c4b6e9d3c96262df59e99 Author: Alan Stern Date: Mon Sep 25 15:41:21 2006 -0400 OHCI: remove existing autosuspend code The autosuspend technique used by ohci-hcd doesn't mesh well with the newer USB core autosuspend code. This patch (as789) removes ohci-hcd's autosuspend support. Now the driver will be usable, but it won't automatically go into a low-power state when no devices are connected. That's for a later patch. Signed-off-by: Alan Stern Signed-off-by: Greg Kroah-Hartman commit d19ac7da72ab950c315d0da0aa03464587d88b53 Author: Alan Stern Date: Mon Sep 25 15:41:12 2006 -0400 USB: allow both root-hub interrupts and polling Originally I didn't think any host controller driver would ever use interrupts and polling at the same time, but it turns out ohci-hcd wants to do exactly that. This patch (as788) makes it possible. Signed-off-by: Alan Stern Signed-off-by: Greg Kroah-Hartman commit 2de9eaefa7330b8e3d3fc5f31288cb1e826173a8 Author: Alan Stern Date: Mon Sep 25 14:31:15 2006 -0400 USB: g_file_storage: fix "ignoring return value" warnings This patch (as792) fixes "ignoring return value" warnings in file_storage.c. Signed-off-by: Alan Stern Signed-off-by: Greg Kroah-Hartman commit efd54a364121f61b2050b1df5ecb1b8329c4eaba Author: Alan Stern Date: Mon Sep 25 11:55:56 2006 -0400 USB: dummy-hcd: fix "warn-unused-result" messages This patch (as758) fixes the "warn-unused-result" messages in dummy-hcd. Signed-off-by: Alan Stern Signed-off-by: Greg Kroah-Hartman commit bd859281c09b4318153dc7222b5e9052aad83b61 Author: Alan Stern Date: Tue Sep 19 10:14:07 2006 -0400 USB: create new workqueue thread for USB autosuspend This patch (as787) creates a new workqueue thread to handle delayed USB autosuspend requests. Previously the code used keventd. However it turns out that the hub driver's suspend routine calls flush_scheduled_work(), making it a poor candidate for running in keventd (the call immediately deadlocks). The solution is to use a new thread instead of keventd. Signed-off-by: Alan Stern Signed-off-by: Greg Kroah-Hartman commit 6a9fb060393e04a79973f95925f4f6587442e9c7 Author: Jan Mate Date: Mon Sep 25 17:00:57 2006 -0700 USB Storage: unusual_devs.h entry for Sony Ericsson P990i USB Storage: this patch adds support for Sony Ericsson P990i Signed-off-by: Jan Mate Signed-off-by: Andrew Morton Signed-off-by: Greg Kroah-Hartman commit 0eebe6ac7c58dc617d78b4e4713540f388e7c1f6 Author: Henrik Kretzschmar Date: Mon Sep 25 17:00:58 2006 -0700 USB: microtek usb scanner: Scsi_Cmnd conversion Converts obsolete typedef'd Scsi_Cmnd into struct scsi_cmnd. Signed-off-by: Henrik Kretzschmar Cc: James Bottomley Signed-off-by: Andrew Morton Signed-off-by: Greg Kroah-Hartman commit 701f35af282e3955159bd30d3fb3f6ebafe8bff2 Author: Henrik Kretzschmar Date: Mon Sep 25 17:00:56 2006 -0700 USB: fixes kerneldoc errors in usbcore-auto(susp/res)-patch Fixes kerneldoc errors on usb/core/driver.c, which occured in 2.6.18-rc6-mm2 gregkh-usb-usbcore-add-autosuspend-autoresume-infrastructure.patch Signed-off-by: Henrik Kretzschmar Acked-by: Alan Stern Signed-off-by: Andrew Morton Signed-off-by: Greg Kroah-Hartman commit 931e24b93a10b53da8223272b83941bc5b1d6dc5 Author: Raghavendra Biligiri Date: Fri Sep 15 19:53:35 2006 +0530 USB: add Raritan KVM USB Dongle to the HID_QUIRK_NOGET blacklist During Installation the host tries to enumerate the keyboard/mouse dongle for the Raritan KVM.At this time timeouts have been observed Adding the Raritan KVM USB dongle to the blacklist fixes this issue. Signed-off-by: Raghavendra Biligiri Signed-off-by: Greg Kroah-Hartman commit b923e7fcc152199959b673e09c318a750a10928b Author: David Hollis Date: Thu Sep 21 08:09:29 2006 -0400 USB: asix - Add alternate device IDs for Dlink DUB-E100 Rev B1 Add alternate device IDs for Dlink DUB-E100 Rev B1 Signed-off-by: David Hollis Signed-off-by: Greg Kroah-Hartman commit e81ee637e4aed723f71007c90a901268317ed6d6 Author: Peter Zijlstra Date: Mon Sep 25 12:51:41 2006 +0200 usb-serial: possible irq lock inversion (PPP vs. usb/serial) ========================================================= [ INFO: possible irq lock inversion dependency detected ] commit 2e3a43f0b6f16705ec76d3744b82a116965ebebe Author: Alan Cox Date: Wed Sep 27 15:43:22 2006 -0700 ohci: Use ref-counting hotplug safe interfaces We want to avoid legacy APIs like pci_find_slot(). Signed-off-by: Alan Cox Signed-off-by: David Brownell Signed-off-by: Greg Kroah-Hartman commit 54bee6e1b455573658972510a76119f279db32b7 Author: Mikael Pettersson Date: Sat Sep 23 17:05:31 2006 -0700 USB: Fix alignment of buffer passed down to ->hub_control() Implementations assume the buffer is at least 4 byte aligned. Signed-off-by: David S. Miller Cc: David Brownell Signed-off-by: Greg Kroah-Hartman commit a14848275b04f3193b9d9e9c745a4fae37f11f2f Author: Justin Carlson Date: Sun Sep 24 11:52:12 2006 +0300 USB: add SeaLevel 2106 SeaLINK support to ftdi_sio We have a couple of these USB-Serial converters around; they're slightly different from the 2104 models in that they can handle 500Kb/sec over RS422. The existing ftdi driver seems to work just fine if we add in the appropriate IDs. Patch is against 2.6.17.6, but should apply cleanly to pretty much anything recent. From: Justin Carlson Signed-off-by: Greg Kroah-Hartman commit 238d0e7bcf20981f7baac8bedfc219a90748700d Author: Sean Young Date: Sun Sep 24 19:26:57 2006 +0000 USB: New PhidgetKit 8/8/8 reset outputs after 2 seconds New phidget interface kits (type 8/8/8) reset their outputs if they haven't received a set report for 2 seconds. Signed-off-by: Sean Young Signed-off-by: Greg Kroah-Hartman commit 1b495f753a65835e7dd9d043b12f2fca6a105b3d Author: Matthias Urlichs Date: Sun Sep 24 21:38:47 2006 +0200 USB: another device ID for ipaq Add yet another device ID to the ipaq USB-serial driver. Signed-Off-By: Matthias Urlichs Cc: Ganesh Varadarajan Signed-off-by: Greg Kroah-Hartman commit 9978f9e1243be91243346b3e9555f1f53e50bb9c Author: Ian Abbott Date: Mon Sep 25 14:19:19 2006 +0100 USB serial ftdi_sio: Add support for Tactrix OpenPort devices This patch adds support for three OpenPort ECU data cables from Tactrix Inc. to the ftdi_sio driver's device ID table. One of the PIDs was supplied by Donour Sizemore on the ftdi-usb-sio-devel mailing list. The other two were added by myself after examining the Windows driver software. Signed-off-by: Ian Abbott Signed-off-by: Greg Kroah-Hartman commit 37cf3477d2140f496e0713738fabdb5bc6fd60f3 Author: Petko Manolov Date: Wed Sep 27 14:25:37 2006 -0700 USB: Pegasus driver failing for ADMtek 8515 network device Address http://bugzilla.kernel.org/show_bug.cgi?id=7126 Attempting to read the ethernet ID directly from the eeprom somehow confuses ADM8515. Subsequent read requests to either the eeprom or the MII fail as well. Didn't dig much deeper, though. For example ADM8513 does not experience this problem. I used the fact that at power up the device is reading its ID automatically (not true for older Pegasus based devices) and put it in the Ethernet ID registers. So now the driver uses get_registers() instead of read_eprom_word() if the device is Pegasus_II based one. Tested it with all (Pegasus and Pegasus_II) gadgets i have and everything seems ok. Cc: Cc: David Brownell Signed-off-by: Andrew Morton Signed-off-by: Greg Kroah-Hartman commit 7923811a46f7e29ae8052edf2461e6c6b8ec2415 Author: Alan Stern Date: Thu Sep 28 12:11:56 2006 -0400 USB: unusual-devs entry for Nokia E60 This patch (as794) adds an unusual_devs entry for the Nokia E60. Signed-off-by: Alan Stern Signed-off-by: Greg Kroah-Hartman commit b697f70f763fe92d5fd05e7e2043bd2b5f12b073 Author: Wesley PA4WDH Date: Thu Sep 28 20:45:38 2006 +0200 USB: Add vendor / product ID to pl2303 Signed-off-by: Greg Kroah-Hartman commit 486ba2a9b26dd8b6219a13297eac012be78108cc Author: Oliver Neukum Date: Thu Sep 28 22:21:19 2006 +0200 USB: new id for kaweth this adds a new id to the kaweth driver. Please apply. Signed-Off-By: Oliver Neukum Signed-off-by: Greg Kroah-Hartman commit 3379ceeefde923a05c2c77ed2d84ba26c2fe9e81 Author: Jean Delvare Date: Sun Sep 24 21:25:52 2006 +0200 hwmon: Remove Yuan Mu's address hwmon: Remove Yuan Mu's address Yuan Mu no longer works at Winbond. I wish to publicly thank Yuan for his help with Winbond hardware monitoring chips support during the past 10 months. Signed-off-by: Jean Delvare Signed-off-by: Greg Kroah-Hartman commit ce8c6ce1eceecfe090f6c1aa4108087b2051497b Author: Jean Delvare Date: Sun Sep 24 21:25:12 2006 +0200 hwmon: Fix unchecked return status, SMSC chips hwmon: Fix unchecked return status, SMSC chips Fix up 2 more hwmon drivers so that they no longer ignore return status from device_create_file(). Signed-off-by: Jean Delvare Signed-off-by: Greg Kroah-Hartman commit a5ebe668add5f76ed8f01f752b37cfa164a26a30 Author: Jean Delvare Date: Sun Sep 24 21:24:46 2006 +0200 hwmon: Fix unchecked return status, batch 6 hwmon: Fix unchecked return status, batch 6 Fix up 5 more hwmon drivers so that they no longer ignore return status from device_create_file(). Signed-off-by: Jean Delvare Signed-off-by: Greg Kroah-Hartman commit f52f79da2908796a0fa1e7bbbe0d5ff20183d75f Author: Rudolf Marek Date: Sun Sep 24 21:24:12 2006 +0200 w83792d: Fix unchecked return status w83792d: Fix unchecked return status Fix the w83792d driver. Add error checking to device_create_file and also care to destroy the files upon exit. Signed-off-by: Rudolf Marek Signed-off-by: Jean Delvare Signed-off-by: Greg Kroah-Hartman commit ccc5c306957bb7fbaef61de249bac4b0f09f2336 Author: Rudolf Marek Date: Sun Sep 24 21:23:26 2006 +0200 w83l785ts: Fix unchecked return status w83l785ts: Fix unchecked return status Fix the w83l785ts driver. Add error checking to device_create_file and also care to destroy the files upon exit. Signed-off-by: Rudolf Marek Signed-off-by: Jean Delvare Signed-off-by: Greg Kroah-Hartman commit 311ce2efb1b640584676fc1b0b7f16c5baf85eb8 Author: Jim Cromie Date: Sun Sep 24 21:22:52 2006 +0200 w83781d: Fix unchecked return status w83781d: Fix unchecked return status Add 2 attr-file groups (for base and model-specific attrs respectively), create the base group with single call to sysfs_create_group, check the return code on individual calls to device_create_file for each of the model-specific attr-files. Signed-off-by: Jim Cromie Signed-off-by: Jean Delvare Signed-off-by: Greg Kroah-Hartman commit cbeeb5b7c91b23967162185d7580048559db8d58 Author: Roger Lucas Date: Sun Sep 24 21:21:46 2006 +0200 vt8231: Fix unchecked return status vt8231: Fix unchecked return status Check the return status from device_create_file() and also use the newer and cleaner sysfs creation functions. Signed-off-by: Roger Lucas Signed-off-by: Jean Delvare Signed-off-by: Greg Kroah-Hartman commit 87808be4f97674e6a2982fa835080cc0320dcbdc Author: Jean Delvare Date: Sun Sep 24 21:17:13 2006 +0200 Fix unchecked return status, batch 5 hwmon: Fix unchecked return status, batch 5 Fix up some hwmon drivers so that they no longer ignore return status from device_create_file(). Signed-off-by: Jean Delvare Signed-off-by: Greg Kroah-Hartman commit 0e39e01c908fdc498fff0d788fd7b955ab75ebb6 Author: Jean Delvare Date: Sun Sep 24 21:16:40 2006 +0200 hwmon: Fix unchecked return status, batch 4 hwmon: Fix unchecked return status, batch 4 Fix up some hwmon drivers so that they no longer ignore return status from device_create_file(). Note: f71805f actually checked the status from device_create_file already. However it did not remove the files on device destruction. It was also an opportunity to use sysfs_create/remove_group instead of hand-made loops. This makes the changes much more important but I think the result is worth it. Signed-off-by: Jean Delvare Signed-off-by: Greg Kroah-Hartman commit 681c6f7a6702f208d48b501c8829dbc03a2ca238 Author: Mark M. Hoffman Date: Sun Sep 24 21:15:35 2006 +0200 hwmon: Fix unchecked return status, batch 3 hwmon: Fix unchecked return status, batch 3 Fix up some hwmon drivers so that they no longer ignore return status from device_create_file(). Signed-off-by: Mark M. Hoffman Signed-off-by: Jean Delvare Signed-off-by: Greg Kroah-Hartman commit 0501a3816e5b778830fc2157a6d6bb11a965fc2c Author: Mark M. Hoffman Date: Sun Sep 24 21:14:35 2006 +0200 hwmon: Fix unchecked return status, batch 2 hwmon: Fix unchecked return status, batch 2 Fix up some hwmon drivers so that they no longer ignore return status from device_create_file(). Signed-off-by: Mark M. Hoffman Signed-off-by: Jean Delvare Signed-off-by: Greg Kroah-Hartman commit c18beb5b92b090cb424718a4f1771b1a9fad56de Author: David Hubbard Date: Sun Sep 24 21:04:38 2006 +0200 w83627ehf: Fix unchecked return status w83627ehf: Fix unchecked return status Fix: check return value from device_create_file() Fix: call device_remove_file() on error and module unload Fix: call hwmon_device_register() after device_create_file() to eliminate race Signed-off-by: David Hubbard Signed-off-by: Jean Delvare Signed-off-by: Greg Kroah-Hartman commit f3722d5b6a474e31237d23980e9bd38facfda6f4 Author: Jim Cromie Date: Sun Sep 24 21:03:25 2006 +0200 pc87360: Check for error on sysfs files creation pc87360: Check for error on sysfs files creation Use sysfs_create_group() for 2 sensor-types which are chip-model invariant, i.e. all-or-nothing attribute groups. Other 2 groups vary too much due to configuration, etc, so we keep the loops of device_create_file(), but now check their returns. Signed-off-by: Jim Cromie Signed-off-by: Jean Delvare Signed-off-by: Greg Kroah-Hartman commit 941c5c05cf38da5e12d70edc5d0fec5c24bce8b6 Author: Jim Cromie Date: Sun Sep 24 21:02:44 2006 +0200 pc87360: Delete sysfs files on device deletion pc87360: Delete sysfs files on device deletion Add 4 explicit attribute groups for the 5 sensor types: voltage (in), therm, temp, and fan & pwm (together in one group). Use sysfs_remove_group() to drop them, but keeps the existing startup code, which calls device_create_file in loops. Signed-off-by: Jim Cromie Signed-off-by: Jean Delvare Signed-off-by: Greg Kroah-Hartman commit 44646c19b41e40d81f5e4863466914e8ce060cc0 Author: Jim Cromie Date: Sun Sep 24 21:01:56 2006 +0200 pc87360: Move some code around pc87360: Move some code around Moves code for get-set-decl tuples for 3 items: cpu0_vid, vrm, alarms_in up, to just after the get-set-decl tuple for voltages. These items are already 'activated' together with the rest of the voltage attributes, so the move tightens the grouping that's made explicit in next patch. Signed-off-by: Jim Cromie Signed-off-by: Jean Delvare Signed-off-by: Greg Kroah-Hartman commit c1685f61b0a3110b701d09b84a9f9a3d4e9ef2e2 Author: Mark M. Hoffman Date: Sun Sep 24 20:59:49 2006 +0200 hwmon: Fix unchecked return status, batch 1 hwmon: Fix unchecked return status, batch 1 Fix up some hwmon drivers so that they no longer ignore return status from device_create_file(). Signed-off-by: Mark M. Hoffman Signed-off-by: Jean Delvare Signed-off-by: Greg Kroah-Hartman commit a1fdcb96ee33ba75318476a2a4691147c9f2ad90 Author: Juerg Haefliger Date: Sun Sep 24 20:55:34 2006 +0200 vt1211: Document module parameters vt1211: Document module parameters Add a description of the module parameters to the documentation of the vt1211 driver. Signed-off-by: Juerg Haefliger Signed-off-by: Jean Delvare Signed-off-by: Greg Kroah-Hartman commit 61d0b53363256e87aeb79286be2dc8f62a9d429a Author: Juerg Haefliger Date: Sun Sep 24 20:54:46 2006 +0200 vt1211: Add documentation vt1211: Add documentation Add documentation for the new vt1211 hardware monitoring driver. Signed-off-by: Juerg Haefliger Signed-off-by: Jean Delvare Signed-off-by: Greg Kroah-Hartman commit ab41319eab3b5e600873dc77dff7756970424ca6 Author: Juerg Haefliger Date: Sun Sep 24 20:54:04 2006 +0200 hwmon: New driver for the VIA VT1211 hwmon: New driver for the VIA VT1211 This is a new driver for the VIA VT1211 Super-IO chip. It is a rewrite of the existing vt1211 driver (by Mark D. Studebaker and Lars Ekman) which has been around for a while but never made it into the main kernel tree. It is implemented as a platform driver and therefore requires lm_sensors 2.10.1 to function properly. Signed-off-by: Juerg Haefliger Signed-off-by: Jean Delvare Signed-off-by: Greg Kroah-Hartman commit 125751cb833f20c12c7237782b2a4680fd636ed0 Author: Charles Spirakis Date: Sun Sep 24 20:53:04 2006 +0200 w83791d: Documentation update w83791d: Documentation update The alarm bits and the beep enable bits are in different positions in the hardware. Document the problem and leave it to the user-space code to handle the situation. When this driver is updated to the standardized sysfs alarm/beep methodology, this won't be a problem. This is a documentation only change. Signed-off by: Charles Spirakis Signed-off-by: Jean Delvare Signed-off-by: Greg Kroah-Hartman commit 2d45771e6ea79f56a7d85e448f702f60ef86c228 Author: Jean Delvare Date: Sun Sep 24 20:52:15 2006 +0200 hwmon: Add individual alarm files to 4 drivers hwmon: Add individual alarm files to 4 drivers Add individual sysfs files for all f71805f, lm63, lm83 and lm90 alarm and fault conditions. This is a requirement for the planned chip-independent libsensors. Almost all other hwmon drivers will need the same improvement. Signed-off-by: Jean Delvare Signed-off-by: Greg Kroah-Hartman commit 51bd56339335fad3643739504523190cd6d3416b Author: Jean Delvare Date: Sun Sep 24 20:51:37 2006 +0200 hwmon: Make a dozen drivers no more experimental hwmon: Make a dozen drivers no more experimental Remove the EXPERIMENTAL tag from a dozen hardware monitoring drivers. They are in the tree for quite a long time, so we would know by now if they were causing trouble. Also make it clearer that the VT8231 is a VIA chip. Signed-off-by: Jean Delvare Signed-off-by: Greg Kroah-Hartman commit ef4c4fdb2809c84c2ed8f037ae7c96cc03992569 Author: Rudolf Marek Date: Sun Sep 24 20:50:57 2006 +0200 k8temp: Add documentation k8temp: Add documentation Add promised documentation for the k8temp driver. Signed-off-by: Rudolf Marek Signed-off-by: Jean Delvare Signed-off-by: Greg Kroah-Hartman commit 360b9ab220aedaf346380fc2344729d9acc3b075 Author: Hans de Goede Date: Mon Aug 28 14:42:24 2006 +0200 abituguru: Add suspend/resume support This patch contains rudimentary suspend / resume support for the uguru, this protects the uguru and the driver against suspend / resume cycles, so there is no reason to unload the driver in your suspend / resume scripts. Only include suspend / resume functions when CONFIG_PM is set. Signed-off-by: Hans de Goede Signed-off-by: Jean Delvare Signed-off-by: Greg Kroah-Hartman commit b17ebc9402040959690b5a2c4e1cfb1e6d4fb206 Author: Jean Delvare Date: Mon Aug 28 14:41:03 2006 +0200 k8temp: Enable automatic loading Let the k8temp driver load automatically. Signed-off-by: Jean Delvare Cc: Rudolf Marek Signed-off-by: Greg Kroah-Hartman commit 29fa06c1292f473ae51a84f55c8fe22179bc1080 Author: Rudolf Marek Date: Mon Aug 28 14:40:17 2006 +0200 hwmon: New driver k8temp Add support for the temperature sensor(s) found in AMD K8 CPUs. Signed-off-by: Rudolf Marek Signed-off-by: Jean Delvare Signed-off-by: Greg Kroah-Hartman commit b19367c6f438b3a7700aceca21a03396702069ce Author: Jean Delvare Date: Mon Aug 28 14:39:26 2006 +0200 it87: Copyright update it87: Copyright update I think my contributions to the it87 driver over the past two years qualify me as a co-author of this driver. Also drop old comments of dubious usefulness. Signed-off-by: Jean Delvare Signed-off-by: Greg Kroah-Hartman commit c5df9b7a7c7600e4365e81f64ea44beb5be8bfa7 Author: Jean Delvare Date: Mon Aug 28 14:37:54 2006 +0200 it87: Overwrite broken default limits it87: Overwrite broken default limits Some IT8716F chips where seen with unreasonable defaults for low voltage and high temperature limits. Overwrite them with sane defaults so as to not generate meaningless alarms. Signed-off-by: Jean Delvare Signed-off-by: Greg Kroah-Hartman commit 87673dd735b8e089b7f2830edd353aa5f5e743ad Author: Jean Delvare Date: Mon Aug 28 14:37:19 2006 +0200 it87: Add support for the IT8718F it87: Add support for the IT8718F The IT8718F is a Super-I/O chip with integrated hardware monitoring functions. It is very similar to the IT8716F, so adding support to the it87 driver was pretty straightforward. The most significant difference is that the IT8718F has up to 8 VID pins, instead of 6 for the older chips. For the IT8718F, the VID value can only be read from Super-I/O space. Userspace support is already in lm_sensors SVN (to be soon released as 2.10.1.) Signed-off-by: Jean Delvare Signed-off-by: Greg Kroah-Hartman commit 8ab4ec3ef45cc2facbe14c733ef7230e7d94fcf2 Author: Jean Delvare Date: Mon Aug 28 14:35:46 2006 +0200 it87: Cleanup set_fan_div it87: Cleanup set_fan_div We only change one fan clock divider at a time, so there is only one fan min which needs to be saved and restored. Signed-off-by: Jean Delvare Signed-off-by: Greg Kroah-Hartman commit 3543a53f6c5b58c233218327f671108590151876 Author: Jean Delvare Date: Mon Aug 28 14:27:25 2006 +0200 it87: in8 has no limit registers it87: in8 has no limit registers Signed-off-by: Jean Delvare Signed-off-by: Greg Kroah-Hartman commit b9e349f710376ef55f200e9fa07e88b4fe2cdf98 Author: Jean Delvare Date: Mon Aug 28 14:26:22 2006 +0200 it87: Prevent overflow on fan clock divider write it87: Prevent overflow on fan clock divider write The highest possible clock divider for fan1 and fan2 is 128. Signed-off-by: Jean Delvare Signed-off-by: Greg Kroah-Hartman commit 9060f8bdd0c40e31d2be388e59f2dbeea55988a2 Author: Jean Delvare Date: Mon Aug 28 14:24:17 2006 +0200 it87: No sysfs files for disabled fans it87: No sysfs files for disabled fans Only create the fan attributes for enabled fan tachometers. Some motherboards have a nice BIOS which only enables the fan inputs which are wired to a fan header on the board. This makes the configuration easier for the user. Signed-off-by: Jean Delvare Signed-off-by: Greg Kroah-Hartman commit 17d648bf5786ba5b8cbf7cbd5cb18d3d8d2657ca Author: Jean Delvare Date: Mon Aug 28 14:23:46 2006 +0200 it87: Add support for the IT8716F it87: Add support for the IT8716F The IT8716F is a Super-I/O chip with integrated hardware monitoring functions. It is very similar to the IT8712F, so adding support to the it87 driver was pretty straightforward. The most significant change here is that the IT8716F has 16-bit fan speed counters, so the user no more needs to tweak the fan clock dividers to get the best readings. Userspace support is already in lm_sensors SVN (to be soon released as 2.10.1.) Thanks to Stian Oksavik, Olivier Nicolas, Prakash Punnoor and Juergen Kilb for testing the early versions of this patch. Thanks also to ITE for providing datasheets and answering my questions. Signed-off-by: Jean Delvare Signed-off-by: Greg Kroah-Hartman commit 0dd7699ec4b27b3662d8980ff7a309cc81276298 Author: Jean Delvare Date: Mon Aug 28 14:22:34 2006 +0200 smsc47m1: dev_warn fix smsc47m1: dev_warn fix We can't use dev_warn on an i2c client before it is attached. Signed-off-by: Jean Delvare Signed-off-by: Greg Kroah-Hartman commit b25a10631a81fca33a94d1f1f6960928d8e9ce63 Author: Dmitry Torokhov Date: Mon Aug 28 14:21:42 2006 +0200 hdaps: Handle errors from input_register_device HDAPS: handle errors from input_register_device() Signed-off-by: Dmitry Torokhov Signed-off-by: Jean Delvare Signed-off-by: Greg Kroah-Hartman commit c41bdb526bca5cda5be3de8c112f63c400bf990f Author: Alexey Dobriyan Date: Mon Aug 28 14:18:14 2006 +0200 atxp1: Signed/unsigned char bug fix vid_to_reg() can return -1 and char can be unsigned. Signed-off-by: Alexey Dobriyan Signed-off-by: Jean Delvare Signed-off-by: Greg Kroah-Hartman commit 563daaf4047464eef5ffcb46194a99c1a8f2260e Author: Rudolf Marek Date: Wed Jul 5 18:15:31 2006 +0200 hwmon: Documentation update for w83627ehf Add documentation for the w83627ehf hardware monitoring driver. Signed-off-by: Rudolf Marek Signed-off-by: Jean Delvare Signed-off-by: Greg Kroah-Hartman commit 08c79950a047dbaccf05d70a203db2ee75ac3bd8 Author: Rudolf Marek Date: Wed Jul 5 18:14:31 2006 +0200 hwmon: Add fan speed control features to w83627ehf This patch adds long-awaited support for automatic fan modes. Based on the work of Yuan Mu from Winbond, I finished the support with the great help of David Hubbard. Signed-off-by: Yuan Mu Signed-off-by: Rudolf Marek Signed-off-by: David Hubbard Signed-off-by: Jean Delvare Signed-off-by: Greg Kroah-Hartman commit 84904d0ead0a8c419abd45c7b2ac8d76d50a0d48 Author: Kevin Hilman Date: Fri Sep 22 00:58:57 2006 +0100 [ARM] 3856/1: Add clocksource for Intel IXP4xx platforms Enables the ixp4xx platforms to use Generic time-of-day. Signed-off-by: Kevin Hilman Acked-by: John Stultz Signed-off-by: Deepak Saxena Signed-off-by: Russell King commit 746140c71d537560bbd22c1b148fb21031c30e71 Author: Kevin Hilman Date: Fri Sep 22 00:16:30 2006 +0100 [ARM] 3855/1: Add generic time support This patch adds Generic time-of-day support for the ARM architecture. The support is currently added using #ifdef's so that it can support sub-arches that do not (yet) have a clocksource added. As sub-arches add clocksource support, they should 'select GENERIC_TIME' Signed-off-by: Deepak Saxena Signed-off-by: Daniel Walker Signed-off-by: Kevin Hilman Acked-by: John Stultz Signed-off-by: Russell King commit 82606c66e943227afcec8a3c7b8428b99a7f88b8 Author: Ben Dooks Date: Thu Sep 28 20:51:35 2006 +0100 [ARM] 3873/1: S3C24XX: Add irq_chip names Add names to all the irq_chip structes Signed-off-by: Ben Dooks Signed-off-by: Russell King commit 625ac112d4253c7e5f7a6d59c99943e8eb0b46c9 Author: Ben Dooks Date: Thu Sep 28 20:45:29 2006 +0100 [ARM] 3872/1: S3C24XX: Apply consistant tabbing to irq_chips Apply consistant tabbing to the IRQ chip structures in arch/arm/mach-s3c2410/irq.c Signed-off-by: Ben Dooks Signed-off-by: Russell King commit 38e0533ce87a58e25f959e6d0958478b6a137794 Author: Ben Dooks Date: Thu Sep 28 20:40:50 2006 +0100 [ARM] 3871/1: S3C24XX: Fix ordering of EINT4..23 The demux code for the IRQ EINTs above 3 was using find last set instead of finding first set. Also fix it so that we only check EINT4..7 when the parent EINT4t7 goes off, and the 8..23 when EINT8t23 goes off. Signed-off-by: Ben Dooks Signed-off-by: Russell King commit 6afd6fae1d5f7e7129a10c4f3e32018966eeac1c Author: Hyok S. Choi Date: Thu Sep 28 21:46:34 2006 +0900 [ARM] nommu: confirms the CR_V bit in nommu mode In nommu mode, the exception vector location depends on the platforms. Some of the implementations may have some special exception control forwarding method in their ROM/flash and for some of them has its own re-mapping mechanism by the h/w. This patch introduces a special configuration CONFIG_CPU_HIGH_VECTOR which turns on the CR_V bit in nommu mode. The CR_V bit is turned off by default. This feature depends on CP15 and does not supported by ARM740. Signed-off-by: Hyok S. Choi Signed-off-by: Russell King commit 0f45d7f36b766cb668cebfb5d4d2f67b4a8676ba Author: Hyok S. Choi Date: Thu Sep 28 21:46:16 2006 +0900 [ARM] nommu: abort handler fixup for !CPU_CP15_MMU cores. There is no FSR/FAR register on no-CP15 or MPU cores. This patch adds a dummy abort handler which returns zero for the base restored Data Abort model !CPU_CP15_MMU cores. The abort-lv4t.S is still used with the fix-up for the base updated Data Abort model cores. Signed-off-by: Hyok S. Choi Signed-off-by: Russell King commit 3d27b00457167103fb9f7e23fc2454c801a6b8f0 Author: Bryan O'Sullivan Date: Thu Sep 28 09:00:24 2006 -0700 IB/ipath: Fix lockdep error upon "ifconfig ibN down" Signed-off-by: Bryan O'Sullivan Signed-off-by: Roland Dreier commit 7a26c47412b201e1977ad42b760885f825158915 Author: Bryan O'Sullivan Date: Thu Sep 28 09:00:23 2006 -0700 IB/ipath: Fix races with ib_resize_cq() The resize CQ function changes the memory used to store the queue. Other routines need to honor the lock before accessing the pointer to the queue and verify that the head and tail are in range. Signed-off-by: Bryan O'Sullivan Signed-off-by: Roland Dreier commit bf3258ec418a008ab4672787ebff2c5837dd1e69 Author: Bryan O'Sullivan Date: Thu Sep 28 09:00:22 2006 -0700 IB/ipath: Support new PCIE device, QLE7142 Signed-off-by: Bryan O'Sullivan Signed-off-by: Roland Dreier commit c97d27d8a992cf6cefee945489d5f93fca160aa2 Author: Bryan O'Sullivan Date: Thu Sep 28 09:00:21 2006 -0700 IB/ipath: Set CPU affinity early This change moves around port assignment so that it happens before any memory is allocated. This allows memory to be allocated on an appropriate CPU, which improves performance for users of /dev/ipath. Signed-off-by: Bryan O'Sullivan Signed-off-by: Roland Dreier commit 1a4e74a08788db913486cb9a3dc30984c55e9897 Author: Bryan O'Sullivan Date: Thu Sep 28 09:00:19 2006 -0700 IB/ipath: Fix EEPROM read when driver is compiled with -Os The EEPROM is read via programmable I/O pins. When the driver is compiled -Os, the CPU can speculatively read the I/O value before it is valid. This patch fixes the problem. Signed-off-by: Bryan O'Sullivan Signed-off-by: Roland Dreier commit 89d1e09b6a6d844ef327937f41658a426be42501 Author: Bryan O'Sullivan Date: Thu Sep 28 09:00:18 2006 -0700 IB/ipath: Fix and recover TXE piobuf and PBC parity errors We can sometimes trigger parity errors due to processor speculative reads to our write-combined memory (mostly seen on Woodcrest). Add a stats counter for these. Factored out the sendbuffererror buffer cancellation code so it can be used in the new handling; suppress likely subsequent error messages if within two jiffies of the cancellation. Also restore 2 dropped TXE lines on hwe_bitsextant noticed while debugging. Signed-off-by: Bryan O'Sullivan Signed-off-by: Roland Dreier commit 510847750c9d26052a71631e0fcad9e7f7a5f369 Author: Bryan O'Sullivan Date: Thu Sep 28 09:00:17 2006 -0700 IB/ipath: Change HT CRC message to indicate how to resolve problem The system must be powercycled to clear a HT CRC error; reloading the driver is not enough. Signed-off-by: Bryan O'Sullivan Signed-off-by: Roland Dreier commit 7227aac47deac20daa0073a1ebbf608b4f2f8d94 Author: Bryan O'Sullivan Date: Thu Sep 28 09:00:16 2006 -0700 IB/ipath: Clean up module exit code Signed-off-by: Bryan O'Sullivan Signed-off-by: Roland Dreier commit 957670a57eb63b932b09b444ad44192ad9ee9382 Author: Bryan O'Sullivan Date: Thu Sep 28 09:00:15 2006 -0700 IB/ipath: Call mtrr_del with correct arguments We were passing 0 for base and length, which worked on older kernels, but it doesn't seem to any longer. Signed-off-by: Bryan O'Sullivan Signed-off-by: Roland Dreier commit 8d0208cb59a43bf867e16b977c34c4d6cd618f59 Author: Bryan O'Sullivan Date: Thu Sep 28 09:00:14 2006 -0700 IB/ipath: Flush RWQEs if access error or invalid error seen If the receiver goes into the error state, we need to flush the posted receive WQEs. Signed-off-by: Bryan O'Sullivan Signed-off-by: Roland Dreier commit 1fd3b40fde3bfacdf742cadfe99cfd47ffd05219 Author: Bryan O'Sullivan Date: Thu Sep 28 09:00:13 2006 -0700 IB/ipath: Improved support for PowerPC Signed-off-by: Bryan O'Sullivan Signed-off-by: Roland Dreier commit 076fafcdee37c87564abd1ad993e17d77fc32daa Author: Bryan O'Sullivan Date: Thu Sep 28 09:00:12 2006 -0700 IB/ipath: Drop unnecessary "(void *)" casts Signed-off-by: Bryan O'Sullivan Signed-off-by: Roland Dreier commit f62fe77ad26b9c89c2028d96709f0f28793fe6cd Author: Bryan O'Sullivan Date: Thu Sep 28 09:00:11 2006 -0700 IB/ipath: Support multiple simultaneous devices of different types Prior to this change, the driver was not able to support a HT and PCIE card simultaneously present in the same machine. Signed-off-by: Bryan O'Sullivan Signed-off-by: Roland Dreier commit 5659416207a9bcf35a646c7b798b290953e4891c Author: Bryan O'Sullivan Date: Thu Sep 28 09:00:10 2006 -0700 IB/ipath: Fix mismatch in shifts and masks for printing debug info Fixed mismatch in linkstate/trainingstate shifts and masks in the IPATH_IBSTATE_MASK macro. It kept some linktrainingstates from being printed correctly in debug; no functionality issue unless I misread the code. Signed-off-by: Bryan O'Sullivan Signed-off-by: Roland Dreier commit 0624b072f230af4f24c112019b04f898ef7b4e2c Author: Bryan O'Sullivan Date: Thu Sep 28 09:00:09 2006 -0700 IB/ipath: Fix compiler warnings and errors on non-x86_64 systems Signed-off-by: Bryan O'Sullivan Signed-off-by: Roland Dreier commit 8d588f8bb79c86a5826f66946c1ea026b6b07bd8 Author: Bryan O'Sullivan Date: Thu Sep 28 09:00:08 2006 -0700 IB/ipath: Print more informative parity error messages Signed-off-by: Bryan O'Sullivan Signed-off-by: Roland Dreier commit 6a553af286653818bb5831f1b351eefdc8a93b61 Author: Bryan O'Sullivan Date: Thu Sep 28 09:00:07 2006 -0700 IB/ipath: Ensure that PD of MR matches PD of QP checking the Rkey Signed-off-by: Bryan O'Sullivan Signed-off-by: Roland Dreier commit 10aeb0e6d8823c1cccf9edc8401c848745c128be Author: Bryan O'Sullivan Date: Thu Sep 28 09:00:06 2006 -0700 IB/ipath: RC and UC should validate SLID and DLID This is required for IB conformance (spec ch. 9.6.1.5). Signed-off-by: Bryan O'Sullivan Signed-off-by: Roland Dreier commit 7dae5bff2e8e4699744e782a6e7605ad18d1240e Author: Bryan O'Sullivan Date: Thu Sep 28 09:00:05 2006 -0700 IB/ipath: Only allow complete writes to flash Don't allow a write to the eeprom from ipathfs unless the write is exactly 128 bytes and starts at offset 0. Signed-off-by: Bryan O'Sullivan Signed-off-by: Roland Dreier commit f3e93c7757043cd5d5c4879b8b92effcc7817c81 Author: Bryan O'Sullivan Date: Thu Sep 28 09:00:04 2006 -0700 IB/ipath: Count SRQs properly Signed-off-by: Bryan O'Sullivan Signed-off-by: Roland Dreier commit aa4eaed702cb5d07babaaa04596436156b922249 Author: Bryan O'Sullivan Date: Thu Sep 28 09:00:03 2006 -0700 IB/ipath: Lock and count allocated CQs properly Signed-off-by: Bryan O'Sullivan Signed-off-by: Roland Dreier commit 11b054fe1d453954449a86de178bb98274bb86ef Author: Bryan O'Sullivan Date: Thu Sep 28 09:00:02 2006 -0700 IB/ipath: Clean up handling of GUID 0 Respond with an error to the SM if our GUID is 0, and don't allow the user to set our GUID to 0. Signed-off-by: Bryan O'Sullivan Signed-off-by: Roland Dreier commit c78f6415e964aafd3a91d834970c16b613e421d9 Author: Bryan O'Sullivan Date: Thu Sep 28 09:00:01 2006 -0700 IB/ipath: Unregister from IB core early This gives upper-level protocols a chance to unregister while the device is still usable. Signed-off-by: Bryan O'Sullivan Signed-off-by: Roland Dreier commit 2c9446a1d63f1ca570e92f89422595732efedf44 Author: Bryan O'Sullivan Date: Thu Sep 28 09:00:00 2006 -0700 IB/ipath: Support revision 2 InfiniPath PCIE devices This also entailed a little GPIO-interrupt general cleanup. Signed-off-by: Bryan O'Sullivan Signed-off-by: Roland Dreier commit 9929b0fb0f35f54371e9364bab809bcd753f9d3a Author: Bryan O'Sullivan Date: Thu Sep 28 08:59:59 2006 -0700 IB/ipath: Driver support for userspace sharing of HW contexts This allows multiple userspace processes to share a single hardware context in a master/slave arrangement. It is backwards binary compatible with existing userspace. Signed-off-by: Bryan O'Sullivan Signed-off-by: Roland Dreier commit 221e31985b490309eb9ae33ac815deae3b5aa021 Author: Bryan O'Sullivan Date: Thu Sep 28 08:59:58 2006 -0700 IB/ipath: Fix memory leak if allocation fails If the second allocation failed, the first structure allocated in this routine was not freed. Signed-off-by: Bryan O'Sullivan Signed-off-by: Roland Dreier commit 6022943eb4cb3cb9e43f27f1faeaba38e162d966 Author: Bryan O'Sullivan Date: Thu Sep 28 08:59:57 2006 -0700 IB/ipath: Limit # of packets sent without an ACK received The sender requests an ACK every 1/2 MB to avoid retransmit timeouts that were causing MVAPICH mod_bw to fail after a predictable number of sends. Signed-off-by: Bryan O'Sullivan Signed-off-by: Roland Dreier commit fd6a79a786b84510d00ee6aa6449a468e6d75dee Author: Erez Zilber Date: Wed Sep 27 16:48:57 2006 +0300 IB/iser: Fix the description of iSER in Kconfig Fix the description of iSER in Kconfig. It is not accurate. Signed-off-by: Erez Zilber Signed-off-by: Roland Dreier commit 74a2078061409e027ccb51a28cf6174c31ab8f99 Author: Erez Zilber Date: Wed Sep 27 16:43:06 2006 +0300 IB/iser: DMA unmap unaligned for RDMA data before touching it iSER uses the DMA mapping api to map the page holding the SCSI command data to the HCA DMA address space. When the command data is not aligned for RDMA, the data is copied to/from an allocated buffer which in turn is used for executing this command. The pages associated with the command must be unmapped before being touched. Signed-off-by: Erez Zilber Signed-off-by: Roland Dreier commit 87e8df7a273c7c1acb864c90b5253609c44375a6 Author: Erez Zilber Date: Wed Sep 27 15:27:10 2006 +0300 IB/iser: Have iSER data transaction object point to iSER conn iSER uses a data transaction object (struct iser_dto) as part of its IB data descriptors (struct iser_desc) management. It also uses a hierarchy of connection structures pointing to each other. A DTO may exist even after the iscsi_iser connection pointed by it is destroyed (eg one that is bound to a post receive buffer which was flushed by the IB HW). Hence DTOs need point to the lowest connection, which is struct iser_conn. Signed-off-by: Erez Zilber Signed-off-by: Roland Dreier commit ee30cb5b0b65392843cc3beaba48160ee4a3764e Author: Roland Dreier Date: Thu Sep 28 10:44:07 2006 -0700 RDMA/amso1100: Fix memory leak in c2_reg_phys_mr() If the allocation of mr fails, then c2_reg_phys_mr() leaks the page_list array it allocated earlier. This was Coverity CID #1413. Signed-off-by: Roland Dreier commit 44334bd97e76662c5f40c629357e6acc4dee3e8a Author: Eric Sesterhenn Date: Thu Sep 28 10:38:32 2006 -0700 RDMA/amso1100: Fix error path in c2_llp_accept() Another NULL dereference spotted by the Coverity checker (cid #1395): In case we can't alloc the vq_req, we goto bail1, where we call vq_req_free(c2dev, vq_req); which then dereferences vq_req. Signed-off-by: Eric Sesterhenn Signed-off-by: Andrew Morton Acked-by: Tom Tucker Signed-off-by: Roland Dreier commit 1f51c10c5e85050506663bce1d69513eb901db87 Author: Andrew Victor Date: Thu Sep 28 16:26:47 2006 +0100 [ARM] 3870/1: AT91: Start removing static memory mappings This patch removes the static memory mapping for the currently-unused peripherals [Synchronous Serial, Timer/Counter unit], and for those drivers that already ioremap() their registers [UART]. Also, the Ethernet driver now uses the platform_device resources but doesn't yet use ioremap() so we need to pass it the virtual address instead of the physical address. Signed-off-by: Andrew Victor Signed-off-by: Russell King commit 94c12cc7d196bab34aaa98d38521549fa1e5ef76 Author: Martin Schwidefsky Date: Thu Sep 28 16:56:43 2006 +0200 [S390] Inline assembly cleanup. Major cleanup of all s390 inline assemblies. They now have a common coding style. Quite a few have been shortened, mainly by using register asm variables. Use of the EX_TABLE macro helps as well. The atomic ops, bit ops and locking inlines new use the Q-constraint if a newer gcc is used. That results in slightly better code. Thanks to Christian Borntraeger for proof reading the changes. Signed-off-by: Martin Schwidefsky commit 25d83cbfaa44e1b9170c0941c3ef52ca39f54ccc Author: Heiko Carstens Date: Thu Sep 28 16:56:37 2006 +0200 [S390] Whitespace cleanup. Huge s390 assembly files whitespace cleanup. Signed-off-by: Heiko Carstens Signed-off-by: Martin Schwidefsky commit 52149ba6b0ddf3e9d965257cc0513193650b3ea8 Author: Martin Schwidefsky Date: Thu Sep 28 16:56:03 2006 +0200 [S390] user readable uninitialised kernel memory. A user space program can read uninitialised kernel memory by appending to a file from a bad address and then reading the result back. The cause is the copy_from_user function that does not clear the remaining bytes of the kernel buffer after it got a fault on the user space address. Signed-off-by: Martin Schwidefsky commit 51dced544e3964b684afc99282ceceaa384b16a8 Author: Jan Glauber Date: Thu Sep 28 16:55:53 2006 +0200 [S390] init_timer in tty3270. Call init_timer only once fpr tp->timer in tty3270. Signed-off-by: Jan Glauber Signed-off-by: Martin Schwidefsky commit 0efa470363699ecba49e67cc3c75f46b300f98a4 Author: Christian Borntraeger Date: Thu Sep 28 16:55:46 2006 +0200 [S390] config option for z9-109 code generation. Add a kernel config option for the IBM System z9. This will produce faster code on newer compilers using the -march=z9-109 option. Signed-off-by: Christian Borntraeger Signed-off-by: Martin Schwidefsky commit d9f7a745d55527d0d41684b22506a86c4381f7f1 Author: Martin Schwidefsky Date: Thu Sep 28 16:55:39 2006 +0200 [S390] __div64_32 for 31 bit. The clocksource infrastructure introduced with commit ad596171ed635c51a9eef829187af100cbf8dcf7 broke 31 bit s390. The reason is that the do_div() primitive for 31 bit always had a restriction: it could only divide an unsigned 64 bit integer by an unsigned 31 bit integer. The clocksource code now uses do_div() with a base value that has the most significant bit set. The result is that clock->cycle_interval has a funny value which causes the linux time to jump around like mad. The solution is "obvious": implement a proper __div64_32 function for 31 bit s390. Signed-off-by: Martin Schwidefsky commit 1fce518e8e7de62597c823d6d795cafc694e7910 Author: Christian Borntraeger Date: Thu Sep 28 16:55:33 2006 +0200 [S390] remove unnecessary includes. Signed-off-by: Christian Borntraeger Signed-off-by: Martin Schwidefsky commit 23c100d99c1dfd0bba49a63fb02a8f8fddad607b Author: Michael Holzheu Date: Thu Sep 28 16:55:28 2006 +0200 [S390] hypfs sparse warnings. sparse complains, if we use bitwise operations on enums. Cast enum to long in order to fix that problem! Signed-off-by: Michael Holzheu Signed-off-by: Martin Schwidefsky commit 925afbd6cbc0d5154710f00dc186518f396e04ec Author: Gerald Schaefer Date: Thu Sep 28 16:55:23 2006 +0200 [S390] Avoid static struct initializations in appldata. Don't use static initialization for struct members containing variables because gcc would generate more code and use double space on stack. Signed-off-by: Gerald Schaefer Signed-off-by: Martin Schwidefsky commit bac9c66cd25e134077b284fc59bee6e5a8475d33 Author: Akinobu Mita Date: Thu Sep 28 16:55:18 2006 +0200 [S390] init task memory faults. Lock for mmap_sem is missing on page fault retry for init task when it fails due to out of memory. Signed-off-by: Akinobu Mita Signed-off-by: Martin Schwidefsky commit 825f9075d74028d11d7f5932f04e1b5db3022b51 Author: Theodore Ts'o Date: Wed Sep 27 01:50:32 2006 -0700 [GFS2] inode-diet: Eliminate i_blksize from the inode structure This eliminates the i_blksize field from struct inode. Filesystems that want to provide a per-inode st_blksize can do so by providing their own getattr routine instead of using the generic_fillattr() function. Note that some filesystems were providing pretty much random (and incorrect) values for i_blksize. Signed-off-by: "Theodore Ts'o" Cc: Steven Whitehouse Signed-off-by: Andrew Morton commit bba9dfd83587017de1c55a94c077983e0dfa0251 Author: Theodore Ts'o Date: Wed Sep 27 01:50:31 2006 -0700 [GFS2] inode_diet: Replace inode.u.generic_ip with inode.i_private (gfs) The following patches reduce the size of the VFS inode structure by 28 bytes on a UP x86. (It would be more on an x86_64 system). This is a 10% reduction in the inode size on a UP kernel that is configured in a production mode (i.e., with no spinlock or other debugging functions enabled; if you want to save memory taken up by in-core inodes, the first thing you should do is disable the debugging options; they are responsible for a huge amount of bloat in the VFS inode structure). This patch: The filesystem or device-specific pointer in the inode is inside a union, which is pretty pointless given that all 30+ users of this field have been using the void pointer. Get rid of the union and rename it to i_private, with a comment to explain who is allowed to use the void pointer. This is just a cleanup, but it allows us to reuse the union 'u' for something something where the union will actually be used. Signed-off-by: "Theodore Ts'o" Cc: Steven Whitehouse Signed-off-by: Andrew Morton commit cc2b28ba61b0a6bdfcf18274b8b883b98486eca4 Author: Andrew Victor Date: Thu Sep 28 10:27:00 2006 +0100 [ARM] 3869/1: AT91: NAND support for DK and KB9202 boards This patch adds support for the NAND flash on the Atmel AT91RM9200-DK and KwikByte KB920x boards. Signed-off-by: Andrew Victor Signed-off-by: Russell King commit 97f0fb68f142b477773c05140da27c1dbd31a2ab Author: Andrew Victor Date: Wed Sep 27 16:18:18 2006 +0100 [ARM] 3868/1: AT91 hardware header update This patch adds the hardware register definitions for the TWI (I2C) controller found on the AT91RM9200 and AT91SAM9xx processors. It also defines the AIC Fast-Forcing registers added to the AT91SAM9's. Signed-off-by: Andrew Victor Signed-off-by: Russell King commit f21738341ca330ec83ef978ee63ffa5ecf13f082 Author: Andrew Victor Date: Wed Sep 27 13:23:00 2006 +0100 [ARM] 3867/1: AT91 GPIO update This patch makes the AT91 gpio.c support processor-generic (AT91RM9200 and AT91SAM9xxx). The GPIO controllers supported by a particular AT91 processor are defined in the processor-specific file and are registered with gpio.c at startup. Signed-off-by: Andrew Victor Signed-off-by: Russell King commit 2eeaaa21de68cb8869d3a54438a9224321d3dd03 Author: Andrew Victor Date: Wed Sep 27 10:50:59 2006 +0100 [ARM] 3866/1: AT91 clock update This patch makes the AT91 clock.c support processor-generic (AT91RM9200 and AT91SAM9xxx). The clocks supported by a particular AT91 processor are defined in the processor-specific file and are registered with clock.c at startup. Signed-off-by: Andrew Victor Signed-off-by: Russell King commit 72729910c38ca5b4736032c15dc3f9d48fe4f68a Author: Andrew Victor Date: Wed Sep 27 09:44:11 2006 +0100 [ARM] 3865/1: AT91RM9200 header updates This is more preparation for adding support for the new Atmel AT91SAM9 processors. Changes include: - Replace AT91_BASE_* with AT91RM9200_BASE_* - Replace AT91_ID_* with AT91RM9200_ID_* - ROM, SRAM and UHP address definitions moved to at91rm9200.h. - The raw AT91_P[ABCD]_* definitions are now depreciated in favour of the GPIO API. Signed-off-by: Andrew Victor Signed-off-by: Russell King commit 35aa7a436c0901fd6f352eff347f58448c141a25 Author: Jeff Garzik Date: Thu Sep 28 06:50:24 2006 -0400 [libata] Print out Status register, if a BSY-sleep takes too long We have the info stored in an ata_busy_sleep() variable, so might as well print it, and provide some additional diagnostic info. Signed-off-by: Jeff Garzik commit d639ca94188fedbd8cfde1ab4ed9e9878ab2f01e Author: Jeff Garzik Date: Thu Sep 28 03:48:18 2006 -0400 [libata] init probe_ent->private_data in a common location Don't write the same code twice, in two different functions, when they both call the same initialization function, with the same private_data pointer info. Also, note a bug found with a FIXME. Signed-off-by: Jeff Garzik commit c791c30670ea61f19eec390124128bf278e854fe Author: Jeff Garzik Date: Thu Sep 28 03:40:11 2006 -0400 [libata] minor PCI IDE probe fixes and cleanups * Replace needless 'n_ports > 2' check with a simple BUG_ON(). No existing driver ever wants more than 2 ports. * Delete ATA_FLAG_NO_LEGACY check. No current driver uses ata_pci_init_one(), that sets this flag. * Move PCI_CLASS_PROG register read below pci_enable_device() * Handle ata_device_add() failure Signed-off-by: Jeff Garzik commit 2bf118197cb4d9a5e7a9e45b5b007235fdc9f402 Author: Paul Mackerras Date: Wed Sep 27 22:47:03 2006 +1000 [POWERPC] Create a "wrapper" script and use it in arch/powerpc/boot This puts the knowledge of how to create various sorts of zImage wrappers into a script called "wrapper" that could be used outside of the kernel tree. This changes arch/powerpc/boot so it first builds the files that the wrapper script needs, then runs it to create whatever flavours of zImage are required. This version does uImages as well. The zImage names are changed slightly; zImage.pseries is the one with the PT_NOTE program header entry added, and zImage.pmac is the one without. If the zImage.pseries gets made, it will also get hardlinked to zImage; otherwise, if zImage.pmac is made, it gets hardlinked to zImage. Signed-off-by: Paul Mackerras commit 54bb3a94b192be09feb85993b664ff118d6433d0 Author: Jeff Garzik Date: Wed Sep 27 22:20:11 2006 -0400 [libata] Use new PCI_VDEVICE() macro to dramatically shorten ID lists Signed-off-by: Jeff Garzik commit 6e73b418887675da18602550ca296211caeb3897 Author: Vlad Apostolov Date: Thu Sep 28 11:06:21 2006 +1000 [XFS] 955947: Infinite loop in xfs_bulkstat() on formatter() error SGI-PV: 955947 SGI-Modid: xfs-linux-melb:xfs-kern:26986a Signed-off-by: Vlad Apostolov Signed-off-by: Tim Shimmin commit 6f1f21684078884b62cfff2ea80a1a6c07f79824 Author: Vlad Apostolov Date: Thu Sep 28 11:06:15 2006 +1000 [XFS] pv 956241, author: nathans, rv: vapo - make ino validation checks consistent in bulkstat SGI-PV: 956241 SGI-Modid: xfs-linux-melb:xfs-kern:26984a Signed-off-by: Vlad Apostolov Signed-off-by: Tim Shimmin commit 6216ff18839bf302805f67c93e8bc344387c513b Author: Vlad Apostolov Date: Thu Sep 28 11:06:10 2006 +1000 [XFS] pv 956240, author: nathans, rv: vapo - Minor fixes in kmem_zalloc_greedy() SGI-PV: 956240 SGI-Modid: xfs-linux-melb:xfs-kern:26983a Signed-off-by: Vlad Apostolov Signed-off-by: Tim Shimmin commit f273ab848b7cbc0088b0ac7457b3769e6566074e Author: David Chinner Date: Thu Sep 28 11:06:03 2006 +1000 [XFS] Really fix use after free in xfs_iunpin. The previous attempts to fix the linux inode use-after-free in xfs_iunpin simply made the problem harder to hit. We actually need complete exclusion between xfs_reclaim and xfs_iunpin, as well as ensuring that the i_flags are consistent during both of these functions. Introduce a new spinlock for exclusion and the i_flags, and fix up xfs_iunpin to use igrab before marking the inode dirty. SGI-PV: 952967 SGI-Modid: xfs-linux-melb:xfs-kern:26964a Signed-off-by: David Chinner Signed-off-by: Tim Shimmin commit 01106eae97b70399ce5a273a3cceb5246e8d9cc8 Author: Eric Sandeen Date: Thu Sep 28 11:05:52 2006 +1000 [XFS] Collapse sv_init and init_sv into just the one interface. SGI-PV: 907752 SGI-Modid: xfs-linux-melb:xfs-kern:26925a Signed-off-by: Eric Sandeen Signed-off-by: Nathan Scott Signed-off-by: Tim Shimmin commit 7ae67d78e7518fba89e5f3a74bdcb68e48ae8858 Author: Eric Sandeen Date: Thu Sep 28 11:05:46 2006 +1000 [XFS] standardize on one sema init macro One sema to rule them all, one sema to find them... SGI-PV: 907752 SGI-Modid: xfs-linux-melb:xfs-kern:26911a Signed-off-by: Eric Sandeen Signed-off-by: Nathan Scott Signed-off-by: Tim Shimmin commit 91d87232044c1ceb8371625c27479e982984a848 Author: Eric Sandeen Date: Thu Sep 28 11:05:40 2006 +1000 [XFS] Reduce endian flipping in alloc_btree, same as was done for ialloc_btree. SGI-PV: 955302 SGI-Modid: xfs-linux-melb:xfs-kern:26910a Signed-off-by: Eric Sandeen Signed-off-by: Nathan Scott Signed-off-by: Tim Shimmin commit edcd4bce5e58987c8c039bdf7705a22cd229fe96 Author: Nathan Scott Date: Thu Sep 28 11:05:33 2006 +1000 [XFS] Minor cleanup from dio locking fix, remove an extra conditional. SGI-PV: 955696 SGI-Modid: xfs-linux-melb:xfs-kern:26908a Signed-off-by: Nathan Scott Signed-off-by: Tim Shimmin commit 215101c36012399cf2eaee849de54eeefc9f618c Author: Nathan Scott Date: Thu Sep 28 11:04:43 2006 +1000 [XFS] Fix kmem_zalloc_greedy warnings on 64 bit platforms. SGI-PV: 955302 SGI-Modid: xfs-linux-melb:xfs-kern:26907a Signed-off-by: Nathan Scott Signed-off-by: Tim Shimmin commit e132f54ce8660bbf34723cc12cb11e6f61d6fbac Author: Vlad Apostolov Date: Thu Sep 28 11:04:31 2006 +1000 [XFS] pv 955157, rv bnaujok - break the loop on EFAULT formatter() error SGI-PV: 955157 SGI-Modid: xfs-linux-melb:xfs-kern:26869a Signed-off-by: Vlad Apostolov Signed-off-by: Tim Shimmin commit 22de606a0b9623bf15752808f123848a65a6cc28 Author: Vlad Apostolov Date: Thu Sep 28 11:04:24 2006 +1000 [XFS] pv 955157, rv bnaujok - break the loop on formatter() error SGI-PV: 955157 SGI-Modid: xfs-linux-melb:xfs-kern:26866a Signed-off-by: Vlad Apostolov Signed-off-by: Tim Shimmin commit 955e47ad28b5b255ddcd7eb9cb814a269dc6e991 Author: Tim Shimmin Date: Thu Sep 28 11:04:16 2006 +1000 [XFS] Fixes the leak in reservation space because we weren't ungranting space for the unmount record - which becomes a problem in the freeze/thaw scenario. SGI-PV: 942533 SGI-Modid: xfs-linux-melb:xfs-kern:26815a Signed-off-by: Tim Shimmin commit 22d91f65d57a7f1a1c5fc81f47b47b0cc54ad6f7 Author: Josh Triplett Date: Thu Sep 28 11:04:07 2006 +1000 [XFS] Add lock annotations to xfs_trans_update_ail and xfs_trans_delete_ail xfs_trans_update_ail and xfs_trans_delete_ail get called with the AIL lock held, and release it. Add lock annotations to these two functions so that sparse can check callers for lock pairing, and so that sparse will not complain about these functions since they intentionally use locks in this manner. SGI-PV: 954580 SGI-Modid: xfs-linux-melb:xfs-kern:26807a Signed-off-by: Josh Triplett Signed-off-by: Nathan Scott Signed-off-by: Tim Shimmin commit 68c3271515f11f6665dc8732e53aaab3d3fdd7d3 Author: Nathan Scott Date: Thu Sep 28 11:03:53 2006 +1000 [XFS] Fix a porting botch on the realtime subvol growfs code path. SGI-PV: 955515 SGI-Modid: xfs-linux-melb:xfs-kern:26806a Signed-off-by: Nathan Scott Signed-off-by: Tim Shimmin commit d432c80e68e3c283fc9a85021f5b65e0aabf254e Author: Nathan Scott Date: Thu Sep 28 11:03:44 2006 +1000 [XFS] Minor code rearranging and cleanup to prevent some coverity false positives. SGI-PV: 955502 SGI-Modid: xfs-linux-melb:xfs-kern:26805a Signed-off-by: Nathan Scott Signed-off-by: Tim Shimmin commit b627259c602f3f1b995d09aad2b57bed889430b9 Author: Nathan Scott Date: Thu Sep 28 11:03:33 2006 +1000 [XFS] Remove a no-longer-correct debug assert from dio completion handling. SGI-PV: 955302 SGI-Modid: xfs-linux-melb:xfs-kern:26804a Signed-off-by: Nathan Scott Signed-off-by: Tim Shimmin commit 77e4635ae191774526ed695482a151ac986f3806 Author: Nathan Scott Date: Thu Sep 28 11:03:27 2006 +1000 [XFS] Add a greedy allocation interface, allocating within a min/max size range. SGI-PV: 955302 SGI-Modid: xfs-linux-melb:xfs-kern:26803a Signed-off-by: Nathan Scott Signed-off-by: Tim Shimmin commit 572d95f49f3652fffe8242c4498b85f4083e52ab Author: Nathan Scott Date: Thu Sep 28 11:03:20 2006 +1000 [XFS] Improve error handling for the zero-fsblock extent detection code. SGI-PV: 955302 SGI-Modid: xfs-linux-melb:xfs-kern:26802a Signed-off-by: Nathan Scott Signed-off-by: Tim Shimmin commit 948ecdb4c118293d2f3e267eec642c30c5d3a056 Author: Nathan Scott Date: Thu Sep 28 11:03:13 2006 +1000 [XFS] Be more defensive with page flags (error/private) for metadata buffers. SGI-PV: 955302 SGI-Modid: xfs-linux-melb:xfs-kern:26801a Signed-off-by: Nathan Scott Signed-off-by: Tim Shimmin commit efb8ad7e9431a430a75d44288614cf6047ff4baa Author: Nathan Scott Date: Thu Sep 28 11:03:05 2006 +1000 [XFS] Add a debug flag for allocations which are known to be larger than one page. SGI-PV: 955302 SGI-Modid: xfs-linux-melb:xfs-kern:26800a Signed-off-by: Nathan Scott Signed-off-by: Tim Shimmin commit 3f89243c5b987dd55f8eec6fd54be05887d69bc6 Author: Eric Sandeen Date: Thu Sep 28 11:02:57 2006 +1000 [XFS] Remove several macros that are no longer used anywhere SGI-PV: 955302 SGI-Modid: xfs-linux-melb:xfs-kern:26749a Signed-off-by: Eric Sandeen Signed-off-by: Nathan Scott Signed-off-by: Tim Shimmin commit 065d312e15902976d256ddaf396a7950ec0350a8 Author: Eric Sandeen Date: Thu Sep 28 11:02:44 2006 +1000 [XFS] Remove unused iop_abort log item operation SGI-PV: 955302 SGI-Modid: xfs-linux-melb:xfs-kern:26747a Signed-off-by: Eric Sandeen Signed-off-by: Nathan Scott Signed-off-by: Tim Shimmin commit 43129c16e85119355d352e10ff4b30a08053228c Author: Eric Sandeen Date: Thu Sep 28 11:02:37 2006 +1000 [XFS] Remove a couple of unused BUF macros SGI-PV: 955302 SGI-Modid: xfs-linux-melb:xfs-kern:26746a Signed-off-by: Eric Sandeen Signed-off-by: Nathan Scott Signed-off-by: Tim Shimmin commit 17370097dace78c93d6fa32110983e74b981d192 Author: Vlad Apostolov Date: Thu Sep 28 11:02:30 2006 +1000 [XFS] pass file mode on DMAPI remove events SGI-PV: 953687 SGI-Modid: xfs-linux-melb:xfs-kern:26639a Signed-off-by: Vlad Apostolov Signed-off-by: Tim Shimmin commit 745b1f47fc0c68dbb1ff440eec8889f61e57194b Author: Nathan Scott Date: Thu Sep 28 11:02:23 2006 +1000 [XFS] Remove last bulkstat false-positives with debug kernels. SGI-PV: 953819 SGI-Modid: xfs-linux-melb:xfs-kern:26628a Signed-off-by: Nathan Scott Signed-off-by: Tim Shimmin commit a3c6685eaa1b6c5cf05b084b3bc91895e253ad2c Author: Nathan Scott Date: Thu Sep 28 11:02:14 2006 +1000 [XFS] Ensure xlog_state_do_callback does not report spurious warnings on ramdisks. SGI-PV: 954802 SGI-Modid: xfs-linux-melb:xfs-kern:26627a Signed-off-by: Nathan Scott Signed-off-by: Tim Shimmin commit bb3c7d2936b6db6f5ded9abf4d215abe97af8372 Author: Nathan Scott Date: Thu Sep 28 11:02:09 2006 +1000 [XFS] Increase the size of the buffer holding the local inode cluster list, to increase our potential readahead window and in turn improve bulkstat performance. SGI-PV: 944409 SGI-Modid: xfs-linux-melb:xfs-kern:26607a Signed-off-by: Nathan Scott Signed-off-by: Tim Shimmin commit 2627509330323efc88b5818065cba737e000de5c Author: Nathan Scott Date: Thu Sep 28 11:02:03 2006 +1000 [XFS] Drop unneeded endian conversion in bulkstat and start readahead for batches of inode cluster buffers at once, before any blocking reads are issued. SGI-PV: 944409 SGI-Modid: xfs-linux-melb:xfs-kern:26606a Signed-off-by: Nathan Scott Signed-off-by: Tim Shimmin commit 51bdd70681e247184b81c2de61dbc26154511155 Author: Nathan Scott Date: Thu Sep 28 11:01:57 2006 +1000 [XFS] When issuing metadata readahead, submit bio with READA not READ. SGI-PV: 944409 SGI-Modid: xfs-linux-melb:xfs-kern:26603a Signed-off-by: Nathan Scott Signed-off-by: Tim Shimmin commit 8b56f083c2a6bd0a88271225f0bcf1d81db20d3c Author: Nathan Scott Date: Thu Sep 28 11:01:46 2006 +1000 [XFS] Rework DMAPI bulkstat calls in such a way that we can directly extract inline attributes out of the bulkstat buffer (for that case), rather than using an (extremely expensive for large icount filesystems) iget for fetching attrs. SGI-PV: 944409 SGI-Modid: xfs-linux-melb:xfs-kern:26602a Signed-off-by: Nathan Scott Signed-off-by: Tim Shimmin commit 726801ba067410a1d38518823f2c253a087f6c6f Author: Tim Shimmin Date: Thu Sep 28 11:01:37 2006 +1000 [XFS] Add EA list callbacks for xfs kernel use. Cleanup some namespace code. SGI-PV: 954372 SGI-Modid: xfs-linux-melb:xfs-kern:26583a Signed-off-by: Tim Shimmin commit 69e23b9a5e7430ced667d8b699330e370c202f28 Author: Nathan Scott Date: Thu Sep 28 11:01:22 2006 +1000 [XFS] Update XFS for i_blksize removal from generic inode structure SGI-PV: 954366 SGI-Modid: xfs-linux-melb:xfs-kern:26565a Signed-off-by: Nathan Scott Signed-off-by: Tim Shimmin commit 29b6d22b011d83dac8ca5b7d26f766ae598abbbd Author: Nathan Scott Date: Thu Sep 28 10:59:06 2006 +1000 [XFS] remove accidentally reintroduced vfs unmount flag, unneeded in current kernels SGI-PV: 954580 SGI-Modid: xfs-linux-melb:xfs-kern:26564a Signed-off-by: Nathan Scott Signed-off-by: Tim Shimmin commit fe48cae9ed979d2ac14080c837d793c4f6bfaa82 Author: Christoph Hellwig Date: Thu Sep 28 10:58:52 2006 +1000 [XFS] remove bhv_lookup, _range version works aswell and has more useful semantics. SGI-PV: 954580 SGI-Modid: xfs-linux-melb:xfs-kern:26563a Signed-off-by: Christoph Hellwig Signed-off-by: Nathan Scott Signed-off-by: Tim Shimmin commit 1121b219bf3fe6d1bd1d1f7618cc5e0c409fabb4 Author: Nathan Scott Date: Thu Sep 28 10:58:40 2006 +1000 [XFS] use NULL for pointer initialisation instead of zero-cast-to-ptr SGI-PV: 954580 SGI-Modid: xfs-linux-melb:xfs-kern:26562a Signed-off-by: Nathan Scott Signed-off-by: Tim Shimmin commit 8801bb99e4425b9a778b355153ab3254bb431d92 Author: Christoph Hellwig Date: Thu Sep 28 10:58:17 2006 +1000 [XFS] endianess annotations for xfs_bmbt_key Trivial as there are no incore users. SGI-PV: 954580 SGI-Modid: xfs-linux-melb:xfs-kern:26561a Signed-off-by: Christoph Hellwig Signed-off-by: Nathan Scott Signed-off-by: Tim Shimmin commit 576039cf3c668d5f8d97dff8a0a5817e8b3a761b Author: Christoph Hellwig Date: Thu Sep 28 10:58:06 2006 +1000 [XFS] endianess annotate XFS_BMAP_BROOT_PTR_ADDR Make sure it returns a __be64 and let the callers use the proper macros. SGI-PV: 954580 SGI-Modid: xfs-linux-melb:xfs-kern:26560a Signed-off-by: Christoph Hellwig Signed-off-by: Nathan Scott Signed-off-by: Tim Shimmin commit 397b5208d5609e2f01b171a34ab690f325253492 Author: Christoph Hellwig Date: Thu Sep 28 10:57:52 2006 +1000 [XFS] endianess annotations for xfs_bmbt_ptr_t/xfs_bmdr_ptr_t SGI-PV: 954580 SGI-Modid: xfs-linux-melb:xfs-kern:26559a Signed-off-by: Christoph Hellwig Signed-off-by: Nathan Scott Signed-off-by: Tim Shimmin commit b113bcb83efb411f3cc6c7692fbf933ed01b67d8 Author: Christoph Hellwig Date: Thu Sep 28 10:57:42 2006 +1000 [XFS] add xfs_btree_check_lptr_disk variant which handles endian conversion SGI-PV: 954580 SGI-Modid: xfs-linux-melb:xfs-kern:26558a Signed-off-by: Christoph Hellwig Signed-off-by: Nathan Scott Signed-off-by: Tim Shimmin commit c38e5e84dbbeda9a92ea878ec9f6255b519a69e7 Author: Christoph Hellwig Date: Thu Sep 28 10:57:17 2006 +1000 [XFS] remove left over INT_ comments in *alloc*.c We can verify endianess handling with sparse now, no need for comments. SGI-PV: 954580 SGI-Modid: xfs-linux-melb:xfs-kern:26557a Signed-off-by: Christoph Hellwig Signed-off-by: Nathan Scott Signed-off-by: Tim Shimmin commit 61a258486795ff710cf4518b5a1729c965c32aa0 Author: Christoph Hellwig Date: Thu Sep 28 10:57:04 2006 +1000 [XFS] endianess annotations for xfs_inobt_rec_t / xfs_inobt_key_t SGI-PV: 954580 SGI-Modid: xfs-linux-melb:xfs-kern:26556a Signed-off-by: Christoph Hellwig Signed-off-by: Nathan Scott Signed-off-by: Tim Shimmin commit e21010053a0f11122db728f82ae115f2808752d6 Author: Christoph Hellwig Date: Thu Sep 28 10:56:51 2006 +1000 [XFS] endianess annotation for xfs_agfl_t. Trivial, xfs_agfl_t is always used for ondisk values. SGI-PV: 954580 SGI-Modid: xfs-linux-melb:xfs-kern:26553a Signed-off-by: Christoph Hellwig Signed-off-by: Nathan Scott Signed-off-by: Tim Shimmin commit ed9d88f7b7e6feba457b87ff30249e6c1e139005 Author: Nathan Scott Date: Thu Sep 28 10:56:43 2006 +1000 [XFS] Fix sparse warning found when page tracing enabled, due to overloaded gfp_t param. SGI-PV: 954580 SGI-Modid: xfs-linux-melb:xfs-kern:26552a Signed-off-by: Nathan Scott Signed-off-by: Tim Shimmin commit 673cdf5c72ff9551df08a71f2ac1a8fe02888e8d Author: Nathan Scott Date: Thu Sep 28 10:56:26 2006 +1000 [XFS] Fix rounding bug in xfs_free_file_space found by sparse checking. SGI-PV: 954580 SGI-Modid: xfs-linux-melb:xfs-kern:26551a Signed-off-by: Nathan Scott Signed-off-by: Tim Shimmin commit 87395deb0b3d174ffcc7f66569764f0715ac5174 Author: Alexey Dobriyan Date: Thu Sep 28 10:56:01 2006 +1000 [XFS] move XFS_IOC_GETVERSION to main multiplexer Avoids doing an unnecessary inode to vnode conversion and avoids a memory allocation. SGI-PV: 904196 SGI-Modid: xfs-linux-melb:xfs-kern:26492a Signed-off-by: Alexey Dobriyan Signed-off-by: Nathan Scott Signed-off-by: Tim Shimmin commit 128dabc5e9aa13dfebcad84e6b4ab31078555131 Author: Tim Shimmin Date: Thu Sep 28 10:55:43 2006 +1000 [XFS] cleanup the field types of some item format structures SGI-PV: 954365 SGI-Modid: xfs-linux-melb:xfs-kern:26406a Signed-off-by: Tim Shimmin commit f07c225036358038bf8a64f75351f10cdca2fb22 Author: Nathan Scott Date: Thu Sep 28 10:52:15 2006 +1000 [XFS] Improve xfsbufd delayed write submission patterns, after blktrace analysis. Under a sequential create+allocate workload, blktrace reported backward writes being issued by xfsbufd, and frequent inappropriate queue unplugs. We now insert at the tail when moving from the delwri lists to the temp lists, which maintains correct ordering, and we avoid unplugging queues deep in the submit paths when we'd shortly do it at a higher level anyway. blktrace now reports much healthier write patterns from xfsbufd for this workload (and likely many others). SGI-PV: 954310 SGI-Modid: xfs-linux-melb:xfs-kern:26396a Signed-off-by: Nathan Scott Signed-off-by: Tim Shimmin commit f37ea14969bf85633d3bd29ddf008171a5618855 Author: Alexey Dobriyan Date: Thu Sep 28 10:52:04 2006 +1000 [XFS] pass inode to xfs_ioc_space(), simplify some code. There is trivial "inode => vnode => inode" conversion, but only flags and mode of final inode are looked at. Pass original inode instead. SGI-PV: 904196 SGI-Modid: xfs-linux-melb:xfs-kern:26395a Signed-off-by: Alexey Dobriyan Signed-off-by: Nathan Scott Signed-off-by: Tim Shimmin commit 26f908186f923291999833e9d563259834bdca06 Author: David Anders Date: Tue Sep 26 17:46:00 2006 +0100 [ARM] 3862/2: S3C2410 - add basic power management support for AML M5900 series this patch registers the wakeup irq, sets a gpio pin to indicate the status of system for suspend/resume operations, and adds the machine to the supported machines for use with the simtec-pm Signed-off-by: David Anders Signed-off-by: Ben Dooks Signed-off-by: Russell King commit ea33a59802f8fd21d24fbf5c906bc3f399bcca00 Author: Serge E. Hallyn Date: Mon Aug 7 11:57:36 2006 -0500 [ARM] kthread: switch arch/arm/kernel/apm.c Switch arch/arm/kernel/apm.c from using kernel_thread - whose export is deprecated - to kthread. Signed-off-by: Serge E. Hallyn Signed-off-by: Russell King commit d1d8f7dec179a421d6d449ddcd1713ed55db40be Author: Eric Sesterhenn Date: Tue Sep 26 14:22:00 2006 +0200 [ARM] Off-by-one in arch/arm/common/icst* hi, a quick find -iname \*.[ch] | xargs grep "> ARRAY_SIZE(", revealed these in the icst drivers. If i == ARRAY_SIZE, we get past the idx2s array. Signed-off-by: Eric Sesterhenn Signed-off-by: Russell King commit c38778c3a9aeadcd1ee319cfc8ea5a9cbf8cdafa Author: Dave Jones Date: Tue Sep 26 23:52:50 2006 -0700 [PATCH] Fix reference of uninitialised memory in ata_device_add() ata_device_add fails, calls ata_host_remove with pointers to unitialized memory. Signed-off-by: Dave Jones Cc: Jeff Garzik Cc: Tejun Heo Signed-off-by: Andrew Morton Signed-off-by: Jeff Garzik commit d4b0a4c19ace3021235a33658c520ab0da80dfb1 Author: Olof Johansson Date: Wed Sep 27 14:02:26 2006 -0500 [PATCH] spidernet: Use pci_dma_mapping_error() A driver shouldn't compare to DMA_ERROR_CODE directly, use pci_dma_mapping_error() instead. Signed-off-by: Olof Johansson Signed-off-by: Jeff Garzik commit c73a29da23c9236f868faecf85cb5401893d7c42 Author: Stephen Hemminger Date: Tue Sep 26 11:57:44 2006 -0700 [PATCH] sky2: version 1.9 Version 1.9 is for 2.6.19. Signed-off-by: Stephen Hemminger Signed-off-by: Jeff Garzik commit 14d0263fea0613d4f83dc5e3ad4631f363d1689f Author: Stephen Hemminger Date: Tue Sep 26 11:57:43 2006 -0700 [PATCH] sky2: fragmented receive for large MTU Use hardware support for chained receive to break up large frames into multiple pages. This avoids having to do a mult-page allocation that can fail on a busy system due to fragmented memory. For normal size MTU, this code behaves the same. Signed-off-by: Stephen Hemminger Signed-off-by: Jeff Garzik commit 2bb8c26242c2393b097a993ffe9b003ec9b85395 Author: Stephen Hemminger Date: Tue Sep 26 11:57:42 2006 -0700 [PATCH] sky2: use netif_tx_lock instead of LLTX Use the netdevice transmit lock via netif_tx_lock rather than putting lock in device specific code and using lockless transmit. The code is cleaner using netif_tx_lock, and the performance is same. Signed-off-by: Stephen Hemminger Signed-off-by: Jeff Garzik commit 291ea6142b94cc3e3ae2216d3937a78697447471 Author: Stephen Hemminger Date: Tue Sep 26 11:57:41 2006 -0700 [PATCH] sky2: incremental transmit completion Since a transmit can take several control blocks, the old code waited until the last control block was marked as done. This code processes the return values incrementally. This makes slots in the tx ring available and less chance of getting stuck. Signed-off-by: Stephen Hemminger Signed-off-by: Jeff Garzik commit 9fa1b1f33c4cbbe0ba7c0c166d170faaa735e53d Author: Stephen Hemminger Date: Tue Sep 26 11:57:40 2006 -0700 [PATCH] sky2: name irq after eth for irqbalance Use the ethernet device name when requesting the irq because the irqbalance daemon looks for the name when deciding policy. Better to play along with this dubious heuristic. Signed-off-by: Stephen Hemminger Signed-off-by: Jeff Garzik commit c2716fb407ebaab7a09888cc8e4a2b9dfac20416 Author: Stephen Hemminger Date: Tue Sep 26 11:57:39 2006 -0700 [PATCH] sky2: workarounds for some 88e806x chips Workarounds for 88e806x chips from the vendor driver. Signed-off-by: Stephen Hemminger Signed-off-by: Jeff Garzik commit 91aeb3edbcf4e6ed72d138ac8c22fd68e6d717c3 Author: Stephen Hemminger Date: Tue Sep 26 11:57:38 2006 -0700 [PATCH] sky2: use standard pci register capabilties for error register Use the standard pci capability mechanism to access PCI express error registers, rather than hard coding the offset. Mask off the PCI express error from ever occuring on non-PCI express systems. Signed-off-by: Stephen Hemminger Signed-off-by: Jeff Garzik commit e0ed5459030a8c9ddde44ef49bcb63aa6db425e1 Author: Stephen Hemminger Date: Tue Sep 26 11:57:37 2006 -0700 [PATCH] sky2: gigabit full duplex negotiation Look at the registers correctly, when doing gigabit full duplex. Need to look for link partner result. Signed-off-by: Stephen Hemminger Signed-off-by: Jeff Garzik commit 6edf602341cd8f6e79479ff7f5bca72562c1f608 Author: Roland Dreier Date: Wed Sep 27 14:42:56 2006 -0700 RDMA/amso1100: Fix compile warnings Make sure all 64-bit quantities are cast to unsigned long long when printed with "%ll" printk formats. Signed-off-by: Roland Dreier commit 00463c1633b6d6a2178d2dc794c0a70ac2f9ce6b Author: Andi Kleen Date: Wed Sep 27 21:38:56 2006 +0200 [PATCH] i386: Use early clobbers for semaphores now The new code does clobber the result early, so make sure to tell gcc to not put it into the same register as a input argument Signed-off-by: Andi Kleen Cc: Andrew Morton Acked-by: Kyle McMartin Signed-off-by: Linus Torvalds commit eed7d41257e2a2a38b3ad121b8948f7bfeaa21c0 Author: Rafa³ Bilski Date: Wed Sep 27 08:25:27 2006 +0200 [CPUFREQ] longhaul: remove duplicated code. removing duplicated code. Signed-off-by: Rafa³ Bilski Signed-off-by: Dave Jones commit 0ba8821b12231386c8c1d506c682061f7225ae49 Author: Jay Vosburgh Date: Tue Sep 26 10:55:00 2006 -0700 [PATCH] bonding: update version number I neglected to properly update the version number in the recent patch series; this sets it to something reasonable. Signed-off-by: Jay Vosburgh Signed-off-by: Jeff Garzik commit fab2062ee4a3969a9c6cb7155534d0d15ddeff54 Author: Andrew Morton Date: Wed Sep 27 00:40:36 2006 -0700 [PATCH] git-netdev-all: pc300_tty build fix In file included from drivers/net/wan/pc300_tty.c:59: drivers/net/wan/pc300.h:335: error: field 'pppdev' has incomplete type Cc: Krzysztof Halasa Cc: Jeff Garzik Signed-off-by: Andrew Morton Signed-off-by: Jeff Garzik commit 576b3ef2495c732a56509febd5de5144f3ebccf6 Author: Dirk Opfer Date: Mon Sep 25 22:51:02 2006 +0100 [ARM] 3864/1: Refactore sharpsl_pm This patch adds another hook into sharpsl_pm to notify the machine specific driver immediately after resume. This is needed to support the Sharp SL-6000 (Tosa). Signed-off-by: Dirk Opfer Signed-off-by: Russell King commit a2025e7f73ae5eab0a25dad88c60aba67e3ae690 Author: Dirk Opfer Date: Mon Sep 25 22:41:47 2006 +0100 [ARM] 3863/1: Add Locomo SPI Device The Locomo chip has a SPI interface which is used for SD/MMC cards (only collie). This patch adds the definition for the SPI device inside the Locomo chip. Signed-off-by: Dirk Opfer Signed-off-by: Russell King commit 8d48427ecb0639593ccf14e807479b7873254ccb Author: Richard Purdie Date: Mon Sep 25 20:11:48 2006 +0100 [ARM] 3847/2: Convert LOMOMO to use struct device for GPIOs Convert LOMOMO to use struct device * for GPIOs instead of struct locomo_dev. This enables access to the GPIOs from code which is not a locomo device itself (such as audio). Access for gpio 31 is removed for error handling (no such hardware exists). Signed-off-by: Richard Purdie Signed-off-by: Russell King commit 76ddb3fd96a8dada2d09bc3f02b3a5efbc8390c5 Author: Auke Kok Date: Wed Sep 27 12:54:22 2006 -0700 e100, e1000, ixgb: increment version numbers e100-3.5.17-k2 e1000-7.2.9-k2 ixgb-1.0.117-k2 Signed-off-by: Auke Kok commit f7d4fa014146f3116372fcec9050555bb4287951 Author: Auke Kok Date: Wed Sep 27 12:54:19 2006 -0700 ixgb: convert to netdev_priv(netdev) PCI error recovery code recently merged needs to use netdev_priv Signed-off-by: Auke Kok commit a4d3c54024beff40d4e5e4647ad212696e0ea354 Author: Jesse Brandeburg Date: Wed Sep 27 12:54:17 2006 -0700 ixgb: combine more rx descriptors to improve performance We experimented with more descriptor buffer writebacks and found that values larger than 8 give HW problems, but 8 is safe and gives us some improved performance. Signed-off-by: Jesse Brandeburg Signed-off-by: Auke Kok commit 793fab727324adc90a0a2889f2b1d88bae4790eb Author: Vasily Averin Date: Wed Sep 27 12:54:14 2006 -0700 e1000: possible memory leak in e1000_set_ringparam Memory allocated for new tx_ring and rx_ring leaks if e1000_setup_XX_resources() fails.c Also this patch reduces stack usage (removed tx_new and rx_new) and uses kzalloc instead kmalloc+memset(0) Signed-off-by: Vasily Averin Signed-off-by: Andrew Morton Signed-off-by: Auke Kok commit dbf38c9474306297866d9c2af02c2d37c5165325 Author: Linas Vepstas Date: Wed Sep 27 12:54:11 2006 -0700 e1000: Janitor: Use #defined values for literals Minor janitorial patch: use #defines for literal values. Signed-off-by: Linas Vepstas Signed-off-by: Auke Kok commit 4666560a37dfdc748ae7c1d9f09c7b6ff03ce899 Author: Bruce Allan Date: Wed Sep 27 12:54:08 2006 -0700 e1000: don't strip vlan ID if 8021q claims it Signed-off-by: Bruce Allan Signed-off-by: Auke Kok commit 2a88c17371c3c263c28330093a4cd21bbeceb677 Author: Jeff Kirsher Date: Wed Sep 27 12:54:05 2006 -0700 e1000: rework polarity, NVM, eeprom code and fixes. Several minor issues exist in the low-level device handling code of e1000. The NVM and EEPROM writing/reading code was updated which fixes unneeded delays, adds proper eeprom aqcuiring steps and handle shadow ram and flash access. Minor cosmetic adjustments to the polarity code adding symbols. PHY reset code mistakenly distinguished between MAC types instead of PHY types, and was fixes. Signed-off-by: Jeff Kirsher Signed-off-by: Auke Kok commit 1314bbf3a3d911218fc153e14873e2e384d08084 Author: Auke Kok Date: Wed Sep 27 12:54:02 2006 -0700 e1000: driver state fixes (race fix) We were plagued by our interrupt handler posting a watchdog event which could occur when our adapter was going down in case a late packet arrived just before e1000_down() finished. This caused the watchdog timer to start after the NIC was down and keep rescheduling it every N seconds. Once the driver unloaded it would panic. Signed-off-by: Auke Kok commit 4f5f2317fbb3655edae21de3ada0f1692523eeef Author: Jeff Kirsher Date: Wed Sep 27 12:53:59 2006 -0700 e1000: reduce RAR entries available for ICH8 Manageability is using one more RAR entry than we anticipated earlier for ICH8. Signed-off-by: Jeff Kirsher Signed-off-by: Auke Kok commit caeccb682a2483a79162bb66a431175d4134ae0b Author: Jeff Kirsher Date: Wed Sep 27 12:53:57 2006 -0700 e1000: add PCI-E capability detection code Add code to display the detected PCI-E bus width. Signed-off-by: Jeff Kirsher Signed-off-by: Auke Kok commit 61c2505fd5044d9e108acc6b469d3caa02522043 Author: Bruce Allan Date: Wed Sep 27 12:53:54 2006 -0700 e1000: handle manageability for pci-e adapters at PHY powerdown When powering down the PHY (if WoL is disabled) we should only check copper PHY's and handle PCI-E adapters differently. Signed-off-by: Bruce Allan Signed-off-by: Auke Kok commit 09ae3e88662478c014617291e5a2115e6b2f65eb Author: Jeff Kirsher Date: Wed Sep 27 12:53:51 2006 -0700 e1000: gather hardware bit tweaks. Several hardware bits were set all over the driver and have been consolidated into a single function. Signed-off-by: Jeff Kirsher Signed-off-by: Auke Kok commit 65c7973fa5b46b024f38be208aa477e8daf9a603 Author: Jesse Brandeburg Date: Wed Sep 27 12:53:48 2006 -0700 e1000: Maybe stop TX if not enough free descriptors Cc: Herbert Xu Signed-off-by: Jesse Brandeburg Signed-off-by: Auke Kok commit 249d71d694ee3a6c02067235995d6d4258d364f3 Author: Bruce Allan Date: Wed Sep 27 12:53:45 2006 -0700 e1000: Jumbo frames fixes for 82573 Disable jumbo frames for 82573L alltogether and when ASPM is enabled since the hardware has problems with it. For the NICs that do support this in the 82573 series we set ERT_2048 to attempt to receive as much traffic as early as we can. Signed-off-by: Bruce Allan Signed-off-by: Auke Kok commit 5f01607a5b5c8781ed5d5deae213b4f01283dba2 Author: Jeff Kirsher Date: Wed Sep 27 12:53:42 2006 -0700 e1000: Fix MANC detection for PCIE adapters Several manageability capability detection parts hinted towards our code being incomplete for PCI-E. According to spec, we do not want to poke any MANC bits at all. Signed-off-by: Jeff Kirsher Signed-off-by: Auke Kok commit 2f2ca2638cbcf287b87a1e199f949a0c03bc0cf7 Author: Jeff Kirsher Date: Wed Sep 27 12:53:40 2006 -0700 e1000: allow ethtool to pass arbitrary speed advertisment With a patch, ethtool can now signify the driver to advertise more than just a single speed/duplex setting. This allows you to tell the card to advertise in 10/100 in any speed if you don't have a gigabit switch for instance. Signed-off-by: Jeff Kirsher Signed-off-by: Auke Kok commit 49559854c9ea6d6950631d558d33faff49fa74f3 Author: Mitch Williams Date: Wed Sep 27 12:53:37 2006 -0700 e1000: add multicast stats counters Add 4 multicast and broadcast hardware counters (rx/tx), and eliminate as many non-hardware counters as possible. Signed-off-by: Mitch Williams Signed-off-by: Auke Kok commit 35574764c7eafab4ec0aa92c18a78a51acc8a710 Author: Nicholas Nunley Date: Wed Sep 27 12:53:34 2006 -0700 e1000: remove unused code and make symbols static Signed-off-by: Nicholas Nunley Signed-off-by: Auke Kok commit 70c6f30a5e5d616321669acfc853f7851741fd4e Author: Jeff Kirsher Date: Wed Sep 27 12:53:31 2006 -0700 e1000: add enums for several link properties Signed-off-by: Jeff Kirsher Signed-off-by: Auke Kok commit 11241b106937ec470e0220ae5ce98c8ea27fd700 Author: Jeff Kirsher Date: Wed Sep 27 12:53:28 2006 -0700 e1000: rename flow control symbols Sogned-off-by: Jeff Kirsher Signed-off-by: Auke Kok commit 975b366af66280ed5b852a1a0446586ce71e306e Author: Auke Kok Date: Wed Sep 27 12:53:25 2006 -0700 e100: rework WoL and shutdown handling Unify our shutdown/suspend/resume code and make it similar to e1000: e1000_shutdown now calls suspend which does the exact same thing on shutdown except saving PCI config state on suspend. WoL setup code is now also more simple and works even when CONFIG_PM is not set, which was previously broken. Signed-off-by: Auke Kok commit dc45010e28bc4a1bfa6043eee31d1c59e93e1546 Author: Jesse Brandeburg Date: Wed Sep 27 12:53:22 2006 -0700 e100: Add debugging code for cb cleaning. Refine cb cleaning debug printout and print out all cleaned cbs' status. Signed-off-by: Jesse Brandeburg Signed-off-by: Auke Kok commit c4e24f01f18f6cea422552caec2fdbf5765a7c7c Author: Auke Kok Date: Wed Sep 27 12:53:19 2006 -0700 e1000: keep .suspend and .resume driver methods in CONFIG_PM Signed-off-by: Auke Kok commit 0eb5a34cdf34ad07b6db2df1e523aaf6574601b4 Author: Auke Kok Date: Wed Sep 27 12:53:17 2006 -0700 e100, e1000, ixgb: Fix an impossible memory overwrite bug We keep getting requests from people that think that this might be an exploitable hole where we would overwrite 4 bytes in the netdev struct if the pci name would exceed 15 characters. In reality this will never happen but we fix it anyway. Signed-off-by: Auke Kok commit 0abb6eb12806cf99ea815810d470423083c3b9f4 Author: Auke Kok Date: Wed Sep 27 12:53:14 2006 -0700 e100, e1000, ixgb: update copyright header and remove LICENSE This update to the copyright header adds the mailinglist, and aligns it with the kernel licensing as well as remove the offending 'all rights reserved'. Signed-off-by: Auke Kok commit 7f38aa0f04259d37f26e1e906607f1ebb39c0c5c Author: Andrew Morton Date: Mon Sep 25 17:00:52 2006 -0700 [PATCH] USB Storage: fix Rio Karma eject support build error In file included from drivers/usb/storage/usb.c:180: drivers/usb/storage/unusual_devs.h:221: error: 'US_PR_KARMA' undeclared here (not in a function) drivers/usb/storage/unusual_devs.h:221: error: 'rio_karma_init' undeclared here (not in a function) Cc: Keith Bennett Acked-by: Bob Copeland Cc: Matthew Dharm Signed-off-by: Andrew Morton Signed-off-by: Greg Kroah-Hartman commit 8350a348e97c2f8aa3e91c025c0e040c90146414 Author: Andrew Morton Date: Mon Sep 25 16:59:15 2006 -0700 [SCSI] scsi: device_reprobe() can fail device_reprobe() should return an error code. When it does so, scsi_device_reprobe() should propagate it back. Signed-off-by: Andrew Morton Signed-off-by: James Bottomley commit 5dda171202f94127e49c12daf780cdae1b4e668b Author: Andy Gay Date: Mon Jul 3 18:43:01 2006 -0400 USB: Airprime driver improvements to allow full speed EvDO transfers Adapted from an earlier patch by Greg KH . That patch added multiple read urbs and larger transfer buffers to allow data transfers at full EvDO speed. This version includes additional device IDs and fixes a memory leak in the transfer buffer allocation. Some (maybe all?) of the supported devices present multiple bulk endpoints, the additional EPs can be used for control and status functions, This version allocates 3 EPs by default, that can be changed using the 'endpoints' module parameter. Tested with Sierra Wireless EM5625 and MC5720 embedded modules. Device ID (0x0c88, 0x17da) for the Kyocera Wireless KPC650/Passport was added but is not yet tested. From: Andy Gay Cc: Kevin Lloyd Signed-off-by: Greg Kroah-Hartman commit fc849b85fb14ccbbc10098d501a870bc9b44a641 Author: David Brownell Date: Mon Sep 18 16:53:26 2006 -0700 USB: remove OTG build warning Somewhere along the line, a variable in a USB-OTG codepath stopped being used; this removes the relevant compiler warning. Signed-off-by: David Brownell Signed-off-by: Greg Kroah-Hartman commit 26f953fd884ea4879585287917f855c63c6b2666 Author: David Brownell Date: Mon Sep 18 17:03:16 2006 -0700 USB: EHCI update VIA workaround This revamps handling of the hardware "async advance" IRQ, and its watchdog timer. Basically it dis-entangles that important timeout from the others, simplifying the associated state and code to make it more robust. This reportedly improves behavior of EHCI on some systems with VIA chips, and AFAIK won't affect non-VIA hardware. VIA systems need this code to recover from silcon bugs whereby the "async advance" IRQ isn't issued. Signed-off-by: David Brownell Signed-off-by: Greg Kroah-Hartman commit 353a4098c61272b33a02ec5802fb3859fec91a0e Author: Alan Stern Date: Tue Sep 19 10:07:58 2006 -0400 USB: force root hub resume after power loss This patch(as785) forces the PM core to resume a root hub after a power loss during system sleep. If the root hub had been suspended before the system sleep then normally the PM core would not resume it afterward. Without this resume, various sorts of wakeup events (like port change events) can get lost. Signed-off-by: Alan Stern Signed-off-by: Greg Kroah-Hartman commit 71795c1df30b034414c921b4930ed88de34ca348 Author: Pete Zaitcev Date: Mon Sep 18 22:57:22 2006 -0700 USB: ohci_usb can oops on shutdown When ohci-hcd is shutting down (for rmmod or PC-card removal), there is a window when the device is shut down, HC communication area (->hcca) is freed, but the core has not called "free_irq" yet. If another device triggers a shared interrupt in this window, we oops when trying to access the freed ->hcca. This patch removes the window by calling free_irq before ->hcca is freed. The patch is tested at the PC hotplug test rig at Stratus, and with rmmod by Rafael Wysocki. Signed-off-by: Pete Zaitcev Signed-off-by: David Brownell Signed-off-by: Greg Kroah-Hartman commit 38e2bfc94e95dd6005fdaf40dfec0157396741da Author: Pete Zaitcev Date: Mon Sep 18 22:49:02 2006 -0700 USB: Dealias -110 code (more complete) The purpose of this patch is to split off the case when a device does not reply on the lower level (which is reported by HC hardware), and a case when the device accepted the request, but does not reply at upper level. This redefinition allows to diagnose issues easier, without asking the user if the -110 happened "immediately". The usbmon splits such cases already thanks to its timestamp, but it's not always available. I adjusted all drivers which I found affected (by searching for "urb"). Out of tree drivers may suffer a little bit, but I do not expect much breakage. At worst they may print a few messages. Signed-off-by: Pete Zaitcev Signed-off-by: Greg Kroah-Hartman commit ec17cf1cfe0b557210b27313bd584e9b5187d4ca Author: Tobias Klauser Date: Wed Sep 13 21:38:41 2006 +0200 USB: Remove unneeded void * casts in core files The patch removes unneeded casts for the following (void *) pointers: - struct file: private - struct urb: context - struct usb_bus: hcpriv - return value of kmalloc() The patch also contains some whitespace cleanup in the relevant areas. Signed-off-by: Tobias Klauser Signed-off-by: Greg Kroah-Hartman commit d774efeabccf5f5207aa70d5c126fc928e8b30bd Author: Tony Olech Date: Wed Sep 13 11:27:35 2006 +0100 USB: u132-hcd: host controller driver for ELAN U132 adapter This "u132-hcd" module is one half of the "driver" for ELAN's U132 which is a USB to CardBus OHCI controller adapter. This module needs the "ftdi-elan" module in order to communicate to CardBus OHCI controller inserted into the U132 adapter. When the "ftdi-elan" module detects a supported CardBus OHCI controller in the U132 adapter it loads this "u132-hcd" module. Upon a successful device probe() the single workqueue is started up which does all the processing of commands from the USB core that implement the host controller. The workqueue maintains the urb queues and issues commands via the functions exported by the "ftdi-elan" module. Each such command will result in a callback. Note that the "ftdi-elan" module is a USB client driver. Note that this "u132-hcd" module is a (cut-down OHCI) host controller. Thus we have a topology with the parent of a host controller being a USB client! This really stresses the USB subsystem semaphore/mutex handling in the module removal. Signed-off-by: Tony Olech Signed-off-by: Greg Kroah-Hartman commit a5c66e4b2418278786a025a5bd9625f485b2087a Author: Tony Olech Date: Wed Sep 13 11:26:04 2006 +0100 USB: ftdi-elan: client driver for ELAN Uxxx adapters This "ftdi-elan" module is one half of the "driver" for ELAN's Uxxx series adapters which are USB to PCMCIA CardBus adapters. Currently only the U132 adapter is available and it's module is called "u132-hcd". When the USB hot plug subsystem detects a Uxxx series adapter it should load this module. Upon a successful device probe() the jtag device file interface is created and the status workqueue started up. The jtag device file interface exists for the purpose of updating the firmware in the Uxxx series adapter, but as yet it had never been used. The status workqueue initializes the Uxxx and then sits there polling the Uxxx until a supported PCMCIA CardBus device is detected it will start the command and respond workqueues and then load the module that handles the device. This will initially be only the u132-hcd module. The status workqueue then just polls the Uxxx looking for card ejects. The command and respond workqueues implement a command sequencer for communicating with the firmware on the other side of the FTDI chip in the Uxxx. This "ftdi-elan" module exports some functions to interface with the sequencer. Note that this module is a USB client driver. Note that the "u132-hcd" module is a (cut-down OHCI) host controller. Thus we have a topology with the parent of a host controller being a USB client! This really stresses the USB subsystem semaphore/mutex handling in the module removal. Signed-off-by: Tony Olech Signed-off-by: Greg Kroah-Hartman commit 8fd801339350b63cbb90730ff8b2be349fb3dc67 Author: Johannes Steingraeber Date: Sat Sep 16 16:17:34 2006 +0200 usb serial: support Alcor Micro Corp. USB 2.0 TO RS-232 through pl2303 driver Patch to add support for Alcor Micro Corp. USB 2.0 TO RS-232 converter. This patch adds VID and PID to pl2303.[ch], adds it to the "HORRIBLE HACK FOR PL2303" in usb-serial.c and also prevents cdc-acm to claim driving this device by blacklisting it in hid-core. Signed-off-by: Johannes Steingraeber Signed-off-by: Greg Kroah-Hartman commit 3f5429746d91f21f60f68b14177c0d534d80240b Author: Paul B Schroeder Date: Thu Aug 31 19:41:47 2006 -0500 USB: Moschip 7840 USB-Serial Driver Signed-off-by: Paul B Schroeder Signed-off-by: Greg Kroah-Hartman commit 5638e4d92e7707bd037a36654f914c80ccd7161d Author: Sam Hocevar Date: Wed Aug 30 02:34:56 2006 +0200 USB: add PlayStation 2 Trance Vibrator driver This patch is a driver for the PlayStation 2 specific Trance Vibrator device. The only thing that device can do is vibrate at various speeds. Signed-off-by: Sam Hocevar Cc: Pete Zaitcev Cc: Luiz Fernando N. Capitulino" Signed-off-by: Greg Kroah-Hartman commit 03270634e242dd10cc8569d31a00659d25b2b8e7 Author: Steven Haigh Date: Wed Aug 9 07:42:06 2006 +1000 USB: Add ADU support for Ontrak ADU devices This patch adds support for Ontrak ADU USB devices. Fixed for printk issues by Randy Dunlap Signed-off-by: Steven Haigh Signed-off-by: Greg Kroah-Hartman commit 8ac283ad415358f022498887811c35ac656b5222 Author: Randy Dunlap Date: Sat Aug 26 10:56:10 2006 -0700 aircable: fix printk format warnings Fix printk format warnings: drivers/usb/serial/aircable.c:221: warning: format ‘%Zd’ expects type ‘signed size_t’, but argument 4 has type ‘int’ drivers/usb/serial/aircable.c:283: warning: format ‘%Zd’ expects type ‘signed size_t’, but argument 4 has type ‘int’ Signed-off-by: Randy Dunlap Signed-off-by: Greg Kroah-Hartman commit 3fe70ba2272c123cf38e4c577bf220f8bcf25366 Author: Manuel Francisco Naranjo Date: Wed Aug 9 16:35:12 2006 -0300 Add AIRcable USB Bluetooth Dongle Driver Add driver for AIRcable USB Bluetooth dongle. Signed-off-by: Naranjo, Manuel Francisco Signed-off-by: Greg Kroah-Hartman commit 78aef519ed07797f94cff1d0d66dd01704474916 Author: Mike Isely Date: Tue Aug 29 22:07:11 2006 -0500 cypress_m8: implement graceful failure handling When receiving a fatal error from the USB core, e.g. EILSEQ (which can happen if the polling interval is too short), fail gracefully. Previously the driver would fill the log with useless error messages or (more alarmingly) silently spin forever trying to write updated control information to the device. This change implements a new flag which if cleared indicates that the driver has failed. The flag will be set on initialization, cleared on fatal errors, and anything else that touches the USB port in the driver will abort if the flag is clear. When the flag is cleared, a message will be logged indicating that the driver has failed. Signed-off-by: Mike Isely Signed-off-by: Greg Kroah-Hartman commit 48298e50e0f7dfc7273ebfaa37ffd225428e83ed Author: Mike Isely Date: Tue Aug 29 22:07:07 2006 -0500 cypress_m8: improve control endpoint error handling Fix usb core function error return checks to look for negative errno values, not positive errno values. This bug had rendered those checks useless. Also remove attempted error recovery on control endpoints for EPIPE - with control endpoints EPIPE does not indicate a halted endpoint so trying to recover with usb_clear_halt() is not the correct action. Signed-off-by: Mike Isely Signed-off-by: Greg Kroah-Hartman commit 9aa8dae7b1fa7af099a403fc3766e068a0ea6d68 Author: Mike Isely Date: Tue Aug 29 22:07:04 2006 -0500 cypress_m8: use usb_fill_int_urb where appropriate Rather than directly filling in URB fields, it's safer to use usb_fill_int_urb(). This improves robustness of the driver; URB changes in the future will not go uninitialized here. That point not withstanding, this driver should at least be self-consistent. Either use usb_fill_int_urb() everywhere or don't bother with it all. Signed-off-by: Mike Isely Signed-off-by: Greg Kroah-Hartman commit 0257fa9ffe4f0287a9d90476bb733cfc2272396e Author: Mike Isely Date: Tue Aug 29 22:06:59 2006 -0500 cypress_m8: use appropriate URB polling interval The polling interval for the device can't always be 1msec. If it is too quick, the device can fail causing a fatal (to the driver) EILSEQ error from the USB core. The actual correct value is reported by the device as part of its configuration data, so use that value as the default. On a DeLorme Earthmate for example, the device reports that it wants a 6msec interval. As part of this fix, the "interval" module option has been fixed as well; the device's default can be overridden by specifying interval= as a module option. Signed-off-by: Mike Isely Signed-off-by: Greg Kroah-Hartman commit 13f4db9e1bf0a6efcdbbb3a1e4da8a1a8c620fff Author: Greg Kroah-Hartman Date: Mon Aug 28 11:43:25 2006 -0700 USB: fix __must_check warnings in drivers/usb/serial/ Signed-off-by: Greg Kroah-Hartman commit 1ee95216c0db6305c047a90b0822e2f1d2d5acdc Author: Greg Kroah-Hartman Date: Mon Aug 28 11:43:25 2006 -0700 USB: fix __must_check warnings in drivers/usb/host/ Signed-off-by: Greg Kroah-Hartman commit 657b6717e7e7dc5620525a34f1561b563fd472fa Author: Greg Kroah-Hartman Date: Mon Aug 28 11:43:25 2006 -0700 USB: fix __must_check warnings in drivers/usb/input/ Signed-off-by: Greg Kroah-Hartman commit 96cede531c632ac019003bf40128b1821761a164 Author: Greg Kroah-Hartman Date: Mon Aug 28 11:43:25 2006 -0700 USB: fix __must_check warnings in drivers/usb/class/ Signed-off-by: Greg Kroah-Hartman commit e7ccdfec087f02930c5cdc81143d4a045ae8d361 Author: Greg Kroah-Hartman Date: Mon Aug 28 11:43:25 2006 -0700 USB: fix __must_check warnings in drivers/usb/atm/ Signed-off-by: Greg Kroah-Hartman commit 4d42e1bb9e8ec7eb5e39d82aaf3ff2f3c994af84 Author: Greg Kroah-Hartman Date: Mon Aug 28 11:43:25 2006 -0700 USB: fix __must_check warnings in drivers/usb/misc/ Signed-off-by: Greg Kroah-Hartman commit 1b21d5e166e104f8914441ef52e2cd50ce65b479 Author: Greg Kroah-Hartman Date: Mon Aug 28 11:43:25 2006 -0700 USB: fix __must_check warnings in drivers/usb/core/ Signed-off-by: Greg Kroah-Hartman commit 592fbbe4bc339399d363dd55f0391e0623400706 Author: Alan Stern Date: Tue Sep 19 10:08:43 2006 -0400 USB: fix root-hub resume when CONFIG_USB_SUSPEND is not set This patch (as786) removes a redundant test and fixes a problem involving repeated system sleeps when CONFIG_USB_SUSPEND is not set. During the first wakeup, the root hub's dev.power.power_state.event field doesn't get updated, causing it not to be suspended during the second sleep transition. This takes care of the issue raised by Rafael J. Wysocki and Mattia Dongili. Signed-off-by: Alan Stern Signed-off-by: Greg Kroah-Hartman commit 02c399ee45a54987c152fe5f627ed949bb55f187 Author: Alan Stern Date: Wed Aug 30 15:47:11 2006 -0400 usbcore: remove usb_suspend_root_hub This patch (as740) removes the existing support for autosuspend of root hubs. That support fit in rather awkwardly with the rest of usbcore and it was used only by ohci-hcd. It won't be needed any more since the hub driver will take care of autosuspending all hubs, root or external. Signed-off-by: Alan Stern Signed-off-by: Greg Kroah-Hartman commit 01d883d44a1ca8dc77486635d428cba63e7fdadf Author: Alan Stern Date: Wed Aug 30 15:47:18 2006 -0400 usbcore: non-hub-specific uses of autosuspend This patch (as741) makes the non-hub parts of usbcore actually use the autosuspend facilities added by an earlier patch. Devices opened through usbfs are autoresumed and then autosuspended upon close. Likewise for usb-skeleton. Devices are autoresumed for usb_set_configuration. Signed-off-by: Alan Stern Signed-off-by: Greg Kroah-Hartman commit 645daaab0b6adc35c1838df2a82f9d729fdb1767 Author: Alan Stern Date: Wed Aug 30 15:47:02 2006 -0400 usbcore: add autosuspend/autoresume infrastructure This patch (as739) adds the basic infrastructure for USB autosuspend and autoresume. The main features are: PM usage counters added to struct usb_device and struct usb_interface, indicating whether it's okay to autosuspend them or they are currently in use. Flag added to usb_device indicating whether the current suspend/resume operation originated from outside or as an autosuspend/autoresume. Flag added to usb_driver indicating whether the driver supports autosuspend. If not, no device bound to the driver will be autosuspended. Mutex added to usb_device for protecting PM operations. Unlike the device semaphore, the locking rule for the pm_mutex is that you must acquire the locks going _up_ the device tree. New routines handling autosuspend/autoresume requests for interfaces and devices. Suspend and resume requests are propagated up the device tree (but not outside the USB subsystem). work_struct added to usb_device, for carrying out delayed autosuspend requests. Autoresume added (and autosuspend prevented) during probe and disconnect. Signed-off-by: Alan Stern Signed-off-by: Greg Kroah-Hartman commit b6956ffa595db97656d5901ca8fec77ef272d41a Author: Alan Stern Date: Wed Aug 30 15:46:48 2006 -0400 usbcore: store each usb_device's level in the tree This patch (as778) adds a field to struct usb_device to store the device's level in the USB tree. In itself this number isn't really important. But the overhead is very low, and in a later patch it will be used for preventing bogus warnings from the lockdep checker. Signed-off-by: Alan Stern Signed-off-by: Greg Kroah-Hartman commit d1ad4ea331e78a5ff90eda7718da31bcbc1a9c38 Author: Pete Zaitcev Date: Thu Sep 7 16:54:22 2006 -0700 USB: UB: Let cdrecord to see a device with media absent The command "cdrecord dev=/dev/uba x.iso" prints nasty garbage if a blank is not in the drive. This happens because drivers have to set req->errors separately from just returning zero uptodate with end_that_request_first, end_that_request_last. These functions only set error in BIO, but sg_io() ignores it. Since we're on it, let cdrecord access a device when ->changed is set. It's useful if someone wants to know device capabilities without burning anything. Signed-Off-By: Pete Zaitcev Signed-off-by: Greg Kroah-Hartman commit 14acdcd32160767d7f2fa00803d2d764d3e3373a Author: Reiner Herrmann Date: Wed Sep 6 02:37:21 2006 +0200 USB: usb/input/usbmouse.c: whitespace cleanup Replace spaces with tab and change comment indention for better readability. Signed-off-by: Reiner Herrmann Signed-off-by: Greg Kroah-Hartman commit cd22afda3f84452c6def29a68b06933e814e0e95 Author: David Brownell Date: Sun Sep 3 12:21:50 2006 -0700 USB: ohci-at91, two one-liners This includes two one-liners forwarded to me for the OHCI support on at91: - KB920x (and other boards with CPUs in non-BGA packages) need a slightly different way to say "ignore that port, it's not pinned out"; - On resume, if we turn clocks on, record that we did so. Signed-off-by: David Brownell Signed-off-by: Greg Kroah-Hartman commit 901b3d75e71535f29b64f352e94ff474d95df475 Author: David Brownell Date: Sat Sep 2 03:13:45 2006 -0700 USB: net2280: update dma buffer allocation This updates the code handling dma-coherent buffer allocations, basically reusing code from the musb_hdrc driver. Instead of trying to work around two significant limitations of the dma framework (memory wastage for buffers smaller than a page, and inconsistency between calling context requirements for allocation and free) this just works around one of them (the latter). So count this as two steps forward (bugfixes: the latter issue could cause errors on some platforms, and some MIPS changes broke code for the former), and one step back (increasing cross-platform memory wastage). Plus linelength and whitespace fixes; and minor data segment shrinkage. Signed-off-by: David Brownell Signed-off-by: Greg Kroah-Hartman commit 80f8af0c59385b41564a3ae670f94a1b4caa43b2 Author: Eugeny S. Mints Date: Sat Sep 2 03:59:19 2006 -0700 USB: usb serial gadget smp related bug Adjust dev->dev_lock spinlock lock/unlock calls to be safe for SMP case. Otherwise the following sequence may lead to a deadlock in SMP case: gs_send()->usb_ep_queue() ->(in case a request is satisfied immediatly) gs_write_complete() for ex for pxa2xx_udc.c: usb_ep_queue()->pxa2xx_ep_queue()->write_fifo()->done()->gs_write_complete() (through req.complete pointer) Signed-off-by: Eugeny S. Mints Acked-by: David Brownell Signed-off-by: Greg Kroah-Hartman commit 0e3c8c26c7013b9d34929857598fd86ff1c22a6c Author: Matthew Dharm Date: Thu Aug 31 13:37:29 2006 -0700 USB: replace kernel_thread() with kthread_run() in libusual.c Replaced kernel_thread() with kthread_run() since kernel_thread() is deprecated in drivers/modules. Signed-off-by: Cedric Le Goater Cc: Alan Stern Signed-off-by: Matthew Dharm Signed-off-by: Greg Kroah-Hartman commit 997694defd085f4dd168c6e7e0e82382c5be9db4 Author: Skip Hansen Date: Fri Sep 1 15:26:27 2006 -0700 gadgetfs patch for ep0out For ep0out transfers (rare), be sure to copy the right data to userspace. Signed-off-by: David Brownell Signed-off-by: Greg Kroah-Hartman commit 53bd6a601a87bb6d0df844872bc15fd4e8d127ce Author: David Brownell Date: Wed Aug 30 14:50:06 2006 -0700 USB: EHCI whitespace fixes (cosmetic) [ ... when you have an editor set to remind you of whitespace bugs ... ] Cosmetic EHCI changes: remove end-of-line whitespace, spaces before tabs. Signed-off-by: David Brownell Signed-off-by: Greg Kroah-Hartman commit 729ed6d502b45fd3b5c3b21c3ceaa63a8fe7cc43 Author: David Brownell Date: Wed Aug 30 13:24:56 2006 -0700 USB: ethernet gadget avoids zlps for musb_hdrc For systems using the Mentor HDRC controllers we get better TX DMA throughput if we can avoid falling back to PIO to write zero length packets ... so tell the driver to avoid ZLPs. Signed-off-by: David Brownell Signed-off-by: Greg Kroah-Hartman commit 4d6cd48380c4d361cc8ec34359df22377d85d202 Author: Alan Stern Date: Wed Aug 30 11:35:21 2006 -0400 usbmon: don't call mon_dmapeek if DMA isn't being used This patch (as755b) fixes a bug in usbmon. Rather than assuming all USB host controllers use DMA, the code will check the usb_bus data structure. If DMA isn't used, we don't want to try peeking into a non-existent DMA buffer! Signed-off-by: Alan Stern Signed-off-by: Greg Kroah-Hartman commit 1720058343fa43a1a25bfad9e62ea06e7e9743b6 Author: Alan Stern Date: Wed Aug 30 11:32:52 2006 -0400 usbcore: trim down usb_bus structure As part of the ongoing program to flatten out the HCD bus-glue layer, this patch (as771b) eliminates the hcpriv, release, and kref fields from struct usb_bus. hcpriv and release were not being used for anything worthwhile, and kref has been moved into the enclosing usb_hcd structure. Along with those changes, the patch gets rid of usb_bus_get and usb_bus_put, replacing them with usb_get_hcd and usb_put_hcd. The one interesting aspect is that the dev_set_drvdata call was removed from usb_put_hcd, where it clearly doesn't belong. This means the driver private data won't get reset to NULL. It shouldn't cause any problems, since the private data is undefined when no driver is bound. Signed-off-by: Alan Stern Signed-off-by: Greg Kroah-Hartman commit dd990f16a39d4e615c0b70a0ab50b79b32bfb16d Author: Alan Stern Date: Wed Aug 30 11:29:56 2006 -0400 usbcore: Add flag for whether a host controller uses DMA This patch (as770b) introduces a new field to usb_bus: a flag indicating whether or not the host controller uses DMA. This serves to encapsulate the computation. It also means we will have only one spot to update if the DMA API changes. Signed-off-by: Alan Stern Signed-off-by: Greg Kroah-Hartman commit a6d2bb9ff919b4685bd684620ec7a1ffa8bf2349 Author: Alan Stern Date: Wed Aug 30 11:27:36 2006 -0400 USB: remove struct usb_operations All of the currently-supported USB host controller drivers use the HCD bus-glue framework. As part of the program for flattening out the glue layer, this patch (as769) removes the usb_operations structure. All function calls now go directly to the HCD routines (slightly renamed to remain within the "usb_" namespace). The patch also removes usb_alloc_bus(), because it's not useful in the HCD framework and it wasn't referenced anywhere. Signed-off-by: Alan Stern Signed-off-by: Greg Kroah-Hartman commit 511366da534bad226e89d294c3b3e910a2aaba6b Author: Andrew Morton Date: Mon Aug 14 23:11:02 2006 -0700 USB: usb-hub-driver-improve-use-of-ifdef fix Fix CONFIG_PM=n build. Cc: Alan Stern Signed-off-by: Andrew Morton Signed-off-by: Greg Kroah-Hartman commit 42d8a2d22bbaed80f1ade65a08e4e1097a111d4b Author: Alexey Dobriyan Date: Sun Aug 20 18:58:42 2006 +0400 USB: Turn usb_resume_both() into static inline drivers/usb/core/hub.c: In function `hub_events': drivers/usb/core/hub.c:2591: warning: statement with no effect Signed-off-by: Alexey Dobriyan Signed-off-by: Greg Kroah-Hartman commit 088dc270e1da03744d977cbd9edd4311af142348 Author: Alan Stern Date: Mon Aug 21 12:08:19 2006 -0400 usbcore: help drivers to change device configs It's generally a bad idea for USB interface drivers to try to change a device's configuration, and usbcore doesn't provide any way for them to do it. However in a few exceptional circumstances it can make sense. This patch (as767) adds a roundabout mechanism to help drivers that may need it. Signed-off-by: Alan Stern Signed-off-by: Greg Kroah-Hartman commit 3a3416b12f1fbd607bc137a57c924a628aa5485c Author: Alan Stern Date: Mon Aug 21 12:00:53 2006 -0400 usb-storage: fix for UFI LUN detection The UFI specification doesn't permit devices to indicate non-existent LUNs in the manner prescribed by the SCSI spec. This patch (as773) sets a special flag so that the SCSI scanner will recognize these devices and treat them specially. Signed-off-by: Alan Stern Signed-off-by: Matthew Dharm Signed-off-by: Greg Kroah-Hartman commit e113f29c902f0f4bbfa5370c380e5927e6e78f8e Author: Jules Villard Date: Tue Aug 22 22:40:15 2006 +0200 USB: fix typo in drivers/usb/gadget/Kconfig This tiny patch fixes a typo in drivers/usb/gadget/Kconfig. The typo is present in 2.6.18-rc4 and in the corresponding -mm tree (and AFAIK, FYI and FWIW was present in previous kernel versions as well). From: Jules Villard Signed-off-by: Greg Kroah-Hartman commit 55359021b9a75a6d61a49ca8b9a1209793cd55f7 Author: Eric Sesterhenn Date: Mon Aug 21 15:31:05 2006 -0700 USB: fix signedness issue in drivers/usb/gadget/ether.c another gcc 4.1 signdness warning: drivers/usb/gadget/ether.c:2028: warning: comparison of unsigned expression < 0 is always false length is assigned the value of usb_ep_queue() which returns an int. Directly after this it is checked for < 0, which can never be true. Making length an int makes the error check work again. Signed-off-by: Eric Sesterhenn Acked-by: David Brownell Signed-off-by: Andrew Morton Signed-off-by: Greg Kroah-Hartman commit 095bc335360a51623dd8571839bbf465851a7f4b Author: Luiz Fernando N. Capitulino Date: Sat Aug 26 23:48:11 2006 -0300 USB core: Use const where possible. This patch marks some USB core's functions parameters as const. This improves the design (we're saying to the caller that its parameter is not going to be modified) and may help in compiler's optimisation work. Signed-off-by: Luiz Fernando N. Capitulino Signed-off-by: Greg Kroah-Hartman commit 83a07196735dbf371b61d6dffbb7e6a696c633c2 Author: Inaky Perez-Gonzalez Date: Fri Aug 25 19:35:31 2006 -0700 wusb: pretty print new wireless USB devices when they connect New code being pushed to linuxuwb.org requires this patch to connect WUSB devices. Signed-off-by: Inaky Perez-Gonzalez Signed-off-by: Greg Kroah-Hartman commit 5bb6e0ae8f9f3a215d6a7f99c8486b0301cc5db9 Author: Inaky Perez-Gonzalez Date: Fri Aug 25 19:35:30 2006 -0700 wusb: handle wusb device ep0 speed settings This patch teaches the USB stack handling of WUSB devices (those whose speed is USB_SPEED_VARIABLE). For these devices, we need to set ep0's maxpacketsize to 512 (even though the device descriptor reports it as 0xff). New code being pushed to linuxuwb.org requires this patch to connect WUSB devices. Signed-off-by: Inaky Perez-Gonzalez Signed-off-by: Greg Kroah-Hartman commit 0165de09747be76b09ef769fcfed3514fe5f6509 Author: Inaky Perez-Gonzalez Date: Fri Aug 25 19:35:29 2006 -0700 wusb: hub code recognizes wusb ports This patch enables the USB stack to recognize WUSB devices (from a WUSB HCD) and assigns them the proper speed setting (USB_SPEED_VARIABLE). 1. Introduce usb_hcd->wireless to mark a host controller instance as being wireless, and thus having wireless 'fake' ports. [discarded previous model of using a reserved bit in the port_stat struct to do this; thanks to Alan Stern for indicating the proper way to do it]. 2. Introduce hub.c:hub_is_wusb() that tests if a hub is a WUSB root hub (WUSB doesn't have non-root hubs). New code being pushed to linuxuwb.org requires this patch to connect WUSB devices. Signed-off-by: Inaky Perez-Gonzalez Signed-off-by: Greg Kroah-Hartman commit cb4c8fe57c05dbb04128503f4a7483a1163b1b47 Author: Inaky Perez-Gonzalez Date: Fri Aug 25 19:35:28 2006 -0700 usb: deal with broken config descriptors Change usb_get_configuration() so that it is more tolerant to devices with bad configuration descriptors (it'll make it ignore configurations that fail to load). Signed-off-by: Inaky Perez-Gonzalez Signed-off-by: Greg Kroah-Hartman commit dfe0d3ba20e860d0b9a16c4c6524180b8f93be05 Author: Matthew Dharm Date: Sun Aug 13 17:30:14 2006 -0700 USB Storage: add rio karma eject support This changeset from Keith Bennett (via Bob Copeland) moves the Karma initializer to its own file and adds trapping of the START_STOP command to enable eject of the device. Signed-off-by: Keith Bennett Signed-off-by: Bob Copeland Signed-off-by: Matthew Dharm Signed-off-by: Greg Kroah-Hartman commit c07045412f21c5bb344244e8ec45671529e411bd Author: Luiz Fernando N. Capitulino Date: Mon Aug 14 22:44:29 2006 -0300 usb-skeleton: small update o CodingStyle fixes o Removes trailing spaces o Do not make not needed initialiation of automatic variables o Use usb_endpoint_* functions o If we get an error in the write URB callback print an error message instead of a debug one (Pretty unrelated changes, but spliting this up doesn't pay off as our main changes are just CodingStyle fixes). Signed-off-by: Luiz Fernando N. Capitulino Signed-off-by: Greg Kroah-Hartman commit d5cbad4b8b37acfde3e63d31b92561b87288ad0f Author: Alan Stern Date: Fri Aug 11 16:52:39 2006 -0400 usbcore: khubd and busy-port handling We don't want khubd to start interfering in the device-resume process merely because the PORT_STATUS_C_SUSPEND feature happens to be set. Ports need to be marked as busy while a resume is taking place. In addition, so long as ports are marked as busy, khubd won't be able to clear their various status-change features. On an interrupt-driven root hub this could lead to an interrupt storm. Root hub IRQs should not be re-enabled until the busy_bits value is equal to 0. This patch (as765) fixes these two potential problems. Signed-off-by: Alan Stern Signed-off-by: Greg Kroah-Hartman commit 455b25fb209c8241e2163b491228b28667d82c1c Author: Alan Stern Date: Fri Aug 11 16:01:45 2006 -0400 usbcore: make hcd_endpoint_disable wait for queue to drain The inconsistent lock state problem in usbcore (the one that shows up when an HCD is unloaded) comes down to two inter-related problems: usb_rh_urb_dequeue() isn't set up to be called with interrupts disabled. hcd_endpoint_disable() doesn't wait for all URBs on the endpoint's queue to complete. The two problems are related because the one type of URB that isn't likely to be complete when hcd_endpoint_disable() returns is a root-hub URB. Right now usb_rh_urb_dequeue() waits for them to complete, and it assumes interrupts are enabled so it can wait. But hcd_endpoint_disable() calls it with interrupts disabled. Now, it should be legal to unlink root-hub URBs with interrupts disabled. The solution is to move the waiting into hcd_endpoint_disable(), where it belongs. This patch (as754) does that. It turns out to be completely safe to replace the del_timer_sync() with a simple del_timer(). It doesn't matter if the timer routine is running; hcd_root_hub_lock will synchronize the two threads and the status URB will complete with an unlink error, as it should. Signed-off-by: Alan Stern Signed-off-by: Greg Kroah-Hartman commit de06a3b842b31b31220637c869f112cfbc1a5ef6 Author: Alan Stern Date: Fri Aug 11 11:33:58 2006 -0400 UHCI: increase Resume-Detect-off delay The UHCI controller in my laptop takes longer to turn off the Resume-Detect bit than the 4 us allowed by uhci-hcd. Presumably other computers will have the same problem. This patch (as752) increases the maximum delay to 10 us, which should be plenty, and uses polling to avoid penalizing systems which can turn the bit off more quickly. Signed-off-by: Alan Stern Signed-off-by: Greg Kroah-Hartman commit 64a21d025d3a979a8715f2ec7acabca7b5406c8a Author: Aleksey Gorelov Date: Tue Aug 8 17:24:08 2006 -0700 USB: Properly unregister reboot notifier in case of failure in ehci hcd If some problem occurs during ehci startup, for instance, request_irq fails, echi hcd driver tries it best to cleanup, but fails to unregister reboot notifier, which in turn leads to crash on reboot/poweroff. The following patch resolves this problem by not using reboot notifiers anymore, but instead making ehci/ohci driver get its own shutdown method. For PCI, it is done through pci glue, for everything else through platform driver glue. One downside: sa1111 does not use platform driver stuff, and does not have its own shutdown hook, so no 'shutdown' is called for it now. I'm not sure if it is really necessary on that platform, though. Signed-off-by: Aleks Gorelov Cc: Alan Stern Cc: David Brownell Signed-off-by: Andrew Morton Signed-off-by: Greg Kroah-Hartman commit a94da8971e836f32315f8832b0bf3e88bee9efae Author: Milan Svoboda Date: Tue Aug 8 22:14:43 2006 -0700 USB gadget: gadgetfs dont try to lock before free I spotted this during my tests with -rt on arm. The -rt patch contains some better tools to diagnose problems with locks and some other things... Original code tries to take semaphore in BUG_ON and then free the memory with this semaphore. Signed-off-by: Milan Svoboda Signed-off-by: David Brownell Signed-off-by: Greg Kroah-Hartman commit e22fc27c87b41bda1b0daf8436224b0f79853482 Author: Milan Svoboda Date: Tue Aug 8 22:23:12 2006 -0700 USB: add poll to gadgetfs's endpoint zero Add poll() support to gadgetfs ep0 Signed-off-by: Milan Svoboda Signed-off-by: David Brownell Signed-off-by: Greg Kroah-Hartman commit 9bcbcf4d00cd2400e655a738e77f0d21b69c6771 Author: dave rientjes Date: Tue Jul 18 23:23:02 2006 -0700 USB: net1080 inherent pad length The size of struct nc_trailer is inherently the newtailroom pad. Signed-off-by: David Rientjes Cc: David Brownell Signed-off-by: Greg Kroah-Hartman commit 5482687b8be4dedb8a5879f07c734ff11a88a7d5 Author: Luiz Fernando N. Capitulino Date: Wed Sep 27 11:58:54 2006 -0700 USB: ldusb: Use usb_endpoint_* functions. Signed-off-by: Luiz Fernando N. Capitulino Signed-off-by: Greg Kroah-Hartman commit b0b660b8d5b446bf26a46b233adef5819d9a683c Author: Luiz Fernando N. Capitulino Date: Wed Sep 27 11:58:54 2006 -0700 USB: usblcd: Use usb_endpoint_* functions. Signed-off-by: Luiz Fernando N. Capitulino Signed-off-by: Greg Kroah-Hartman commit 4fa1bbf5cfac0e8c795e0ef7b2b939b45229ef2b Author: Luiz Fernando N. Capitulino Date: Wed Sep 27 11:58:53 2006 -0700 USB: usb-serial: Use usb_endpoint_* functions. Signed-off-by: Luiz Fernando N. Capitulino Signed-off-by: Greg Kroah-Hartman commit 60ca126c9589e3f4bcf81db9762dca82946cd2ba Author: Luiz Fernando N. Capitulino Date: Wed Sep 27 11:58:53 2006 -0700 USB: powermate: Use usb_endpoint_* functions. Signed-off-by: Luiz Fernando N. Capitulino Signed-off-by: Greg Kroah-Hartman commit 96723199e00c4f27fecd8f43e1367c5f25b39a27 Author: Luiz Fernando N. Capitulino Date: Wed Sep 27 11:58:53 2006 -0700 USB: keyspan_remote: Use usb_endpoint_* functions. Signed-off-by: Luiz Fernando N. Capitulino Signed-off-by: Greg Kroah-Hartman commit 96642a2ce524f00f783edc95be8b2ce1429803df Author: Luiz Fernando N. Capitulino Date: Wed Sep 27 11:58:53 2006 -0700 USB: ati_remote: Use usb_endpoint_* functions. Signed-off-by: Luiz Fernando N. Capitulino Signed-off-by: Greg Kroah-Hartman commit ee709a3c613d9c458323e04dd69c8eb233d45199 Author: Luiz Fernando N. Capitulino Date: Wed Sep 27 11:58:53 2006 -0700 USB: acecad: Use usb_endpoint_* functions. Signed-off-by: Luiz Fernando N. Capitulino Signed-off-by: Greg Kroah-Hartman commit 97b107ca391c0411e6c5fc1e26585cd8285696f9 Author: Luiz Fernando N. Capitulino Date: Wed Sep 27 11:58:53 2006 -0700 USB: appletouch: Use usb_endpoint_* functions. Signed-off-by: Luiz Fernando N. Capitulino Signed-off-by: Greg Kroah-Hartman commit fbf81c29a3c05cd227cad89435d71c15e958feaf Author: Luiz Fernando N. Capitulino Date: Wed Sep 27 11:58:53 2006 -0700 USB: hub: Use usb_endpoint_* functions. Signed-off-by: Luiz Fernando N. Capitulino Signed-off-by: Greg Kroah-Hartman commit 5bc66d530b6c158795cb3fefd2106a09afb5e0f7 Author: Luiz Fernando N. Capitulino Date: Wed Sep 27 11:58:53 2006 -0700 USB: usblp: Use usb_endpoint_* functions. Signed-off-by: Luiz Fernando N. Capitulino Signed-off-by: Greg Kroah-Hartman commit b7cfaaaf86571732c7728e95a2231a860385463c Author: Luiz Fernando N. Capitulino Date: Wed Sep 27 11:58:53 2006 -0700 USB: New functions to check endpoints info. These functions makes USB driver's code simpler when dealing with endpoints by avoiding them from accessing the endpoint's descriptor structure directly when they only need to know the endpoint's transfer type and/or direction. Please, read each functions' documentation in order to know how to use them. Signed-off-by: Luiz Fernando N. Capitulino Signed-off-by: Greg Kroah-Hartman commit 3d5b2510f6e361e2203e163c03b93d0026de5629 Author: Jesper Juhl Date: Sun Jul 30 18:43:43 2006 +0200 USB: making the kernel -Wshadow clean - USB & completion include/linux/usb.h causes a lot of -Wshadow warnings - fix them. include/linux/usb.h:901: warning: declaration of 'complete' shadows a global declaration include/linux/completion.h:52: warning: shadowed declaration is here include/linux/usb.h:932: warning: declaration of 'complete' shadows a global declaration include/linux/completion.h:52: warning: shadowed declaration is here include/linux/usb.h:967: warning: declaration of 'complete' shadows a global declaration include/linux/completion.h:52: warning: shadowed declaration is here Signed-off-by: Jesper Juhl Signed-off-by: Greg Kroah-Hartman commit 066202dd48cf3296b6cc22b5fcf89aef33fa0efc Author: Luiz Fernando N. Capitulino Date: Sat Aug 5 20:37:11 2006 -0300 USB: Make file operations structs in drivers/usb const. Making structs const prevents accidental bugs and with the proper debug options they're protected against corruption. Signed-off-by: Luiz Fernando N. Capitulino Signed-off-by: Greg Kroah-Hartman commit f2ebf92c9e1930a8f79b7eb49a32122931929014 Author: Ben Williamson Date: Tue Aug 1 11:28:16 2006 +1000 USB: gmidi: New USB MIDI Gadget class driver. This driver is glue between the USB gadget interface and the ALSA MIDI interface. It allows us to appear as a MIDI Streaming device to a host system on the other end of a USB cable. This includes linux/usb/audio.h and linux/usb/midi.h containing definitions from the relevant USB specifications for USB audio and USB MIDI devices. The following changes have been made since the first RFC posting: * Bug fixes to endpoint handling. * Workaround for USB_REQ_SET_CONFIGURATION handling, not understood yet. * Added SND and SND_RAWMIDI dependencies in Kconfig. * Moved usb_audio.h and usb_midi.h to usb/*.h * Added module parameters for ALSA card index and id. * Added module parameters for USB descriptor IDs and strings. * Removed some unneeded stuff inherited from zero.c, more to go. * Provide DECLARE_* macros for the variable-length structs. * Use kmalloc instead of usb_ep_alloc_buffer. * Limit source to 80 columns. * Return actual error code instead of -ENOMEM in a few places. Signed-off-by: Ben Williamson Cc: David Brownell Signed-off-by: Greg Kroah-Hartman commit ba307f5828b1b4a1348d99c4f430a0cf3beeae2f Author: Milan Svoboda Date: Mon Jun 26 07:48:00 2006 -0700 USB: gadgetfs: protect ep_release with lock This patch adds mutex protection to ep_release. Signed-off-by: Milan Svoboda Signed-off-by: David Brownell Signed-off-by: Greg Kroah-Hartman commit 8a7471aba19dc526978a03bfe2e3c122712b5900 Author: Milan Svoboda Date: Mon Jun 26 07:19:00 2006 -0700 USB: fix ep_config to return correct value This patch fixes ep_config to return correct value. Without patch ep_config returns submitted lenght minus 4 on succes. With this patch applied, whole submitted lenght is returned. ep_config parses submitted data and if buffer starts with (int) 1 it is parsed, otherwise error is reported. Problem is that ep_config returns size of buffer minus 4 on success. I think that size of buffer should be returned instead, because there were no problems and all data were processed. Signed-off-by: Milan Svoboda Signed-off-by: David Brownell Signed-off-by: Greg Kroah-Hartman commit 07cb7f23d07aa4d197dbeb123eb9719c176190ee Author: Milan Svoboda Date: Mon Jun 26 07:46:00 2006 -0700 USB: correct locking in gadgetfs_disconnect This patch moves spin_lock (&dev->lock) before first use of dev. I think that test to the state of device should be protected with this spin_lock... Signed-off-by: Milan Svoboda Signed-off-by: David Brownell Signed-off-by: Greg Kroah-Hartman commit 17efe155253e3f81caa6cc57ec2af1c128618698 Author: Dmitry Torokhov Date: Tue Aug 1 22:45:28 2006 -0400 USB: onetouch - handle errors from input_register_device() Onetouch: handle errors from input_register_device() Signed-off-by: Dmitry Torokhov Signed-off-by: Greg Kroah-Hartman commit bd35078f47f795569fae29b2ff187e6f921460ad Author: David Brownell Date: Mon Jul 31 07:29:39 2006 -0700 USB: build fixes: ohci-omap The ohci-omap code has diverged from the working version in the linux-omap tree; this syncs up the versions: - Another clock is needed in various cases - The omap-1510 iommu code needs to be #ifdeffed out on newer parts - Saner use of the HCD framework - Various other changes, e.g. a Nokia 770 quirk And some minor dead-whitespace removal. Signed-off-by: David Brownell Signed-off-by: Greg Kroah-Hartman commit eb6d8c2d145a864aedd874b4226762c5ef0d7a77 Author: Hermann Kneissel Date: Tue Jul 11 19:41:33 2006 +0200 USB: garmin_gps support for new generation of gps receivers The attached patch adds support for the new generation of gps receivers (eg. GPSmap 60Cx) to garmin_gps.c. Signed-off-by: Hermann Kneissel Signed-off-by: Greg Kroah-Hartman commit 3bea733ab21247290bd552dd6a2cd3049af9adef Author: Ping Cheng Date: Thu Jul 13 18:01:36 2006 -0700 USB: wacom tablet driver reorganization - split wacom.c into 4 files: wacom.h, wacom_wac.h, wacom_sys.c, and wacom_wac.c - where wacom_sys.c deals with system specific code, - and wacom_wac.c deals with Wacom specific code Signed-off-by: Ping Cheng Signed-off-by: Greg Kroah-Hartman commit ecdc0a590268f1926ed8534a040a390c77d20948 Author: Franck Bui-Huu Date: Wed Jul 12 10:09:41 2006 +0200 USB: usbcore get rid of the timer in usb_start_wait_urb() This patch uses completion timeout instead of a timer to implement a timeout when submitting an URB in usb_start_wait_urb(). It also fixes a small issue. With the previous code, if no timeout happened and the URB's status was set to ECONNRESET value, the code assumed wrongly that a timeout had occured. Signed-off-by: Franck Bui-Huu Signed-off-by: Greg Kroah-Hartman commit 014aa2a3c32ebe33f97e9d219d91d3c5c7231bf7 Author: Luiz Fernando N. Capitulino Date: Thu Jul 27 10:30:43 2006 -0300 USB: ipaq: minor ipaq_open() cleanup. Commit b512504e5671f83638be0ddr085c4b1832f623d3 made ipaq_open() a bit messy by moving the read urb submission far from its usb_fill_bulk_urb() call and the comment explaining what it does. This patch put they together again. Although only compiled tested, should not break the fix introduced by b512504e5671f83638be0ddr085c4b1832f623d3, of course. Signed-off-by: Luiz Fernando N. Capitulino Signed-off-by: Greg Kroah-Hartman commit 25d94e682ccb8938177bffafa67a7d21c7282a4a Author: Randy Dunlap Date: Mon Aug 7 15:56:40 2006 -0700 usbnet: printk format warning Fix printk format warning(s): drivers/usb/net/usbnet.c:654: warning: int format, different type arg (arg 3) The fact that rx_urb_size happens to be a size_t has propagated all the way back to this printk. It's fragile to be using %z in this case - let's just typecast the args instead. Signed-off-by: Randy Dunlap Signed-off-by: Andrew Morton Signed-off-by: Greg Kroah-Hartman commit 933a27d39e0e57ba56cff2e4ebe92cf23f4cd815 Author: David Hollis Date: Sat Jul 29 10:12:50 2006 -0400 USB: asix - Add AX88178 support and many other changes * More generi-fication of function/macro names where appropriate: ax88772_xx() -> asix_xx() * Reorder functions to provide more logical grouping * AX88178 device support * Support DLink DUB-E100 Rev B Support * Hopefully resolve all endian-ness issues * Use more defines for bitmask values * Change a number of devdbg() calls to deverr() so that if DEBUG is not defined, the error messages still get through as necessary Signed-off-by: David Hollis Signed-off-by: Greg Kroah-Hartman commit a99c19492a801013fd25ce7bab1f0f65a328a4ba Author: Jamie Painter Date: Thu Jul 27 14:17:28 2006 -0400 USB: usbnet - Add unlink_rx_urbs() call to allow for Jumbo Frames Add usbnet_unlink_rx_urbs() which can be called by mini-drivers when they change their MTU such as for Jumbo Frame support. Signed-off-by: David Hollis Signed-off-by: Greg Kroah-Hartman commit 9c53761681497d598a31ed2f6b29b5b3480c49db Author: Thiago Galesi Date: Sat Jul 29 10:47:12 2006 -0300 USB: pl2303: cosmetic changes to quirk Cosmetic changes to quirk in pl2303_update_line_status Signed-off-by: Thiago Galesi Signed-off-by: Greg Kroah-Hartman commit 572d3138eb0cf17a2bf36944cc1d2c753578862e Author: Thiago Galesi Date: Sat Jul 29 10:46:37 2006 -0300 USB: pl2303: reduce number of prototypes Reduce number of needed prototypes in Prolific pl2303 driver Signed-off-by: Thiago Galesi Signed-off-by: Greg Kroah-Hartman commit 10a18cd1a31e34d123d5ae4736a3393432352750 Author: Thiago Galesi Date: Sat Jul 29 10:45:43 2006 -0300 USB: pl2303: cosmetic changes to pl2303_buf_{clear, data_avail} Changes the functions pl2303_buf_clear and pl2303_buf_data_avail for the purpose of keeping them under the 80 column limit, making them more similar to similar functions and making then simpler. Signed-off-by: Thiago Galesi Signed-off-by: Greg Kroah-Hartman commit 372db8a780f63368c6960a167b7a19aad776d704 Author: Thiago Galesi Date: Mon Jul 31 15:39:27 2006 -0300 USB: pl2303: remove 80-columns limit violations in pl2303 driver Fixes several lines that overrun 80 columns in Prolific pl2303 driver and cleans up some space usages in the function calls. Signed-off-by: Thiago Galesi Signed-off-by: Greg Kroah-Hartman commit a009b75aa0ed55f0bc473c8a3b3e872cbca807ec Author: Luiz Fernando N. Capitulino Date: Tue Jul 25 16:58:30 2006 -0300 USB: pl2303: Removes unneeded goto. Signed-off-by: Luiz Fernando N. Capitulino Signed-off-by: Greg Kroah-Hartman commit 5d8926658ce41b254fdfba7d057e6c9438c25cca Author: Daniel Ritz Date: Mon Jul 31 21:43:24 2006 +0200 usbtouchscreen: version 0.4 changes over 0.3: - some more eGalax device IDs (from eGalax driver/spec) - return the error code in probe() - 3M/MTouch init fixes, tested by Don Alexander - eGalax fixes for bugs in multi-packet handling, spottet by Pieter Grimmerink - support for some eTurboTouch devices, mostly by Pieter Grimmerink - support for Gunze AHL61 controller (untested, but simple enough) Signed-off-by: Daniel Ritz Cc: Pieter Grimmerink Cc: Don Alexander Signed-off-by: Greg Kroah-Hartman commit d388dab7b562b76525761f89702246686747ba30 Author: Alan Stern Date: Sat Jul 1 22:14:24 2006 -0400 hub driver: improve use of #ifdef This patch (as736) makes the hub driver more readable by improving the usage of "#ifdef CONFIG_PM" and "#ifdef CONFIG_USB_SUSPEND". Signed-off-by: Alan Stern Signed-off-by: Greg Kroah-Hartman commit 1c5df7e705671f11a71112eb3a1f9765cd1719f9 Author: Alan Stern Date: Sat Jul 1 22:13:50 2006 -0400 usbcore: suspending devices with no driver Since usb_generic can be unbound from a USB device, we need to be able to handle the possibility that a suspend or resume request arrives for a device with no driver. This patch (as735) arranges things so that resume requests will fail and suspend requests will use the standard USB port-suspend code. Attempts to suspend or resume an unbound interface are handled similarly (although the error caused by trying to resume an unbound interface is dropped by the calling routine). Signed-off-by: Alan Stern Signed-off-by: Greg Kroah-Hartman commit 114b368c07964caa3f4e1fa575b16e87fa11936c Author: Alan Stern Date: Sat Jul 1 22:13:04 2006 -0400 usbcore: fix up device and power state tests This patch (as734) rationalizes the various tests of device state and power states. There are duplications and mistaken tests in several places. Perhaps the most interesting challenge is where the hub driver tests to see that all the child devices are suspended before allowing itself to be suspended. When CONFIG_USB_SUSPEND is set the test is straightforward, since we expect that the children _will_ be suspended. But when CONFIG_USB_SUSPEND isn't set, it's not so clear what should be done. The code compromises by checking the child's power.power_state.event field. Signed-off-by: Alan Stern Signed-off-by: Greg Kroah-Hartman commit 2bf4086d7a7722b470aa24e1be725cc58619c6fe Author: Alan Stern Date: Sat Jul 1 22:12:19 2006 -0400 usbcore: set device and power states properly This patch (as733) fixes up the places where device states and power states are set in usbcore. Right now things are duplicated or missing; this should straighten things out. The idea is that udev->state is USB_STATE_SUSPENDED exactly when the device's upstream port has been suspended, whereas udev->dev.power.power_state.event reflects the result of the last call to the suspend/resume routines (which might not actually change the device state, especially if CONFIG_USB_SUSPEND isn't set). Signed-off-by: Alan Stern Signed-off-by: Greg Kroah-Hartman commit 4d064c080265a41324d108fccc26b72106d43db3 Author: Alan Stern Date: Sat Jul 1 22:11:44 2006 -0400 usbcore: track whether interfaces are suspended Currently we rely on intf->dev.power.power_state.event for tracking whether intf is suspended. This is not a reliable technique because that value is owned by the PM core, not by usbcore. This patch (as718b) adds a new flag so that we can accurately tell which interfaces are suspended and which aren't. At first one might think these flags aren't needed, since interfaces will be suspended along with their devices. It turns out there are a couple of intermediate situations where that's not quite true, such as while processing a remote-wakeup request. Signed-off-by: Alan Stern Signed-off-by: Greg Kroah-Hartman commit a8e7c5653562f88c0f5f53eac0a890c012655789 Author: Alan Stern Date: Sat Jul 1 22:11:02 2006 -0400 usbcore: resume device resume recursion This patch (as717b) removes the existing recursion in hub resume code: Resuming a hub will no longer automatically resume the devices attached to the hub. At the same time, it adds one level of recursion: Suspending a USB device will automatically suspend all the device's interfaces. Failure at an intermediate stage will cause all the already-suspended interfaces to be resumed. Attempts to suspend or resume an interface by itself will do nothing, although they won't return an error. Thus the regular system-suspend and system-resume procedures should continue to work as before; only runtime PM will be affected. The patch also removes the code that tests state of the interfaces before suspending a device. It's no longer needed, since everything gets suspended together. Signed-off-by: Alan Stern Signed-off-by: Greg Kroah-Hartman commit 1cc8a25d5b680ff656927ffa9b66fae6b415b1d3 Author: Alan Stern Date: Sat Jul 1 22:10:15 2006 -0400 usbcore: split suspend/resume for device and interfaces This patch (as716b) splits up the core suspend and resume routines into two parts each: one for handling devices and one for handling interfaces. The behavior of the parts should be the same as in the old unified code. Signed-off-by: Alan Stern Signed-off-by: Greg Kroah-Hartman commit 782da727b0d59e93c84a627948b1535a3db90392 Author: Alan Stern Date: Sat Jul 1 22:09:35 2006 -0400 usbcore: make usb_generic a usb_device_driver This patch (as714b) makes usb_generic into a usb_device_driver capable of being probed and unbound, just like other drivers. A fair amount of the work that used to get done during discovery or removal of a USB device have been moved to the probe and disconnect methods of usb_generic: creating the sysfs attributes and selecting an initial configuration. However the normal behavior should continue to be the same as before. We will now have the possibility of creating other USB device drivers, They will assist with exporting devices to remote systems (USB-over-TCPIP) or to paravirtual guest operating systems. Signed-off-by: Alan Stern Signed-off-by: Greg Kroah-Hartman commit 8bb54ab573ecd1b4fe2ed66416a8d99a86e65316 Author: Alan Stern Date: Sat Jul 1 22:08:49 2006 -0400 usbcore: add usb_device_driver definition This patch (as732) adds a usb_device_driver structure, for representing drivers that manage an entire USB device as opposed to just an interface. Support routines like usb_register_device_driver, usb_deregister_device_driver, usb_probe_device, and usb_unbind_device are also added. Unlike an earlier version of this patch, the new code is type-safe. To accomplish this, the existing struct driver embedded in struct usb_driver had to be wrapped in an intermediate wrapper. This enables the core to tell at runtime whether a particular struct driver belongs to a device driver or to an interface driver. Signed-off-by: Alan Stern Signed-off-by: Greg Kroah-Hartman commit 36e56a34586783c7986ce09d39db80b27c95ce24 Author: Alan Stern Date: Sat Jul 1 22:08:06 2006 -0400 usbcore: move code among source files This revised patch (as713b) moves a few routines among source files in usbcore. Some driver-related code in usb.c (claiming interfaces and matching IDs) is moved to driver.c, where it belongs. Also the usb_generic stuff in driver.c is moved to a new source file: generic.c. (That's the reason for revising the patch.) Although not very big now, it will get bigger in a later patch. None of the code has been changed; it has only been re-arranged. Signed-off-by: Alan Stern Signed-off-by: Greg Kroah-Hartman commit 140d8f687457c40a66af362838fac0d7893e7df5 Author: Alan Stern Date: Sat Jul 1 22:07:21 2006 -0400 usbcore: rename usb_suspend_device to usb_port_suspend This revised patch (as715b) renames usb_suspend_device to usb_port_suspend, usb_resume_device to usb_port_resume, and finish_device_resume to finish_port_resume. There was no objection to the original version of the patch so this should be okay to apply. The revision was needed only because I have re-arranged the order of the earlier patches. Signed-off-by: Alan Stern Signed-off-by: Greg Kroah-Hartman commit 121e287cb554f3d3402c85a1950d852691b08f5c Author: Alan Stern Date: Sat Jul 1 22:06:36 2006 -0400 usb-skeleton: don't submit URBs after disconnection This patch (as712b) is a slight revision of one submitted earlier. It fixes the usb-skeleton example driver so that it won't try to submit URBs after skel_disconnect() has returned. This could cause errors, if the driver was unbound and then a different driver was bound to the device. It also fixes a couple of small bugs in the skel_write() routine. The revised patch uses a slightly different test, suggested by Dave Brownell, for determining whether to free a transfer buffer. It's a little clearer than the earlier version. Signed-off-by: Alan Stern Signed-off-by: Greg Kroah-Hartman commit 349710c3a79c0405911b8b604953f0c665e17756 Author: Alan Stern Date: Sat Jul 1 22:05:56 2006 -0400 usbfs: detect device unregistration This patch (as711b) is a revised version of an earlier submission. It modifies the usbfs code to detect when a device has been unregistered from usbfs, even if the device is still connected. Although this can't happen now, it will be able to happen after the upcoming changes to usb_generic. Nobody objected to this patch when it was submitted before, so it should be okay to apply this version. The revision is merely to take into account the changes introduced by as723, which touches the same driver. Signed-off-by: Alan Stern Signed-off-by: Greg Kroah-Hartman commit 4a2a8a2cce86b9d001378cc25acb5c61e6ca7d63 Author: Alan Stern Date: Sat Jul 1 22:05:01 2006 -0400 usbfs: private mutex for open, release, and remove The usbfs code doesn't provide sufficient mutual exclusion among open, release, and remove. Release vs. remove is okay because they both acquire the device lock, but open is not exclusive with either one. All three routines modify the udev->filelist linked list, so they must not run concurrently. Apparently someone gave this a minimum amount of thought in the past by explicitly acquiring the BKL at the start of the usbdev_open routine. Oddly enough, there's a comment pointing out that locking is unnecessary because chrdev_open already has acquired the BKL. But this ignores the point that the files in /proc/bus/usb/* are not char device files; they are regular files and so they don't get any special locking. Furthermore it's necessary to acquire the same lock in the release and remove routines, which the code does not do. Yet another problem arises because the same file_operations structure is accessible through both the /proc/bus/usb/* and /dev/usb/usbdev* file nodes. Even when one of them has been removed, it's still possible for userspace to open the other. So simple locking around the individual remove routines is insufficient; we need to lock the entire usb_notify_remove_device notifier chain. Rather than rely on the BKL, this patch (as723) introduces a new private mutex for the purpose. Holding the BKL while invoking a notifier chain doesn't seem like a good idea. Signed-off-by: Alan Stern Signed-off-by: Greg Kroah-Hartman commit da308e8da700637d6271dddda08128094691b980 Author: Sean Young Date: Fri Aug 11 09:28:28 2006 +0000 USB: Phidgets should check create_device_file() return value device_create_file() could fail, add proper error paths for this condition. Signed-off-by: Sean Young Signed-off-by: Greg Kroah-Hartman commit 912b24c333843514ff77ed88961c6945f0f286ce Author: Sean Young Date: Mon Jul 10 09:56:25 2006 +0000 USB: Put phidgets driver in a sysfs class This patch creates a device class phidget and add the phidget drivers to them. Signed-off-by: Sean Young Signed-off-by: Greg Kroah-Hartman commit d5176b413dcce85334e270021fc0d723d1714c84 Author: Sean Young Date: Sun Jul 9 13:01:02 2006 +0000 USB: Add driver for PhidgetMotorControl This driver add support for the Phidgets Inc., MotorControl via sysfs. Also some minor fixes for the InterfaceKit. Signed-off-by: Sean Young Signed-off-by: Greg Kroah-Hartman commit b6eb2d84d2bb01e9fcc46a032a3429b4747b1c47 Author: Alan Stern Date: Thu Jul 6 15:37:42 2006 -0400 usbcore: add configuration_string to attribute group This patch (as737b) does a very small cleanup of core/sysfs.c by adding the configuration_string attribute file to the existing attribute group instead of treating it separately. It doesn't need this separate treatment because unlike the other device string attributes, it changes along with the active configuration. The patch also fixes a simple typo (which, oddly enough, doesn't seem to bother the compiler). Signed-off-by: Alan Stern Signed-off-by: Greg Kroah-Hartman commit b94badbb47cb50f4fca8440efdaa8ebd32604fe4 Author: Dmitry Torokhov Date: Tue Aug 1 22:33:34 2006 -0400 USB: Make usb_buffer_free() NULL-safe kfree() handles NULL arguments which is handy in error handling paths as one does need to insert bunch of ifs. How about making usb_buffer_free() do the same? Signed-off-by: Dmitry Torokhov Signed-off-by: Greg Kroah-Hartman commit 988440e7e51c6f8061c98d03d618ba090e7b84ef Author: Werner Lemberg Date: Tue Jul 18 17:00:22 2006 +0200 USB: ark3116: Formatting cleanups Formatting only. Signed-off-by: Werner Lemberg Signed-off-by: Greg Kroah-Hartman commit 2f430b4bbae7faa167730f954252eb7db4ac58dd Author: Werner Lemberg Date: Tue Jul 18 17:00:52 2006 +0200 USB: ark3116: Add TIOCGSERIAL and TIOCSSERIAL ioctl calls. Add (dummy?) support for TIOCGSERIAL and TIOCSSERIAL ioctl calls to the USB serial driver file `ark3116.c'. This is sufficient for me to run wvdial successfully, receive my email, and do webbrowsing with firefox. On the other hand, running the cvs program to update archives seems not to work, and the traceroute command sometimes says send failed: No buffer space available Looks like a buffering problem... My knowledge of serial device drivers is zero, so I can't fix this -- I just did a cut'n'paste from other USB serial drivers... Signed-off-by: Werner Lemberg Signed-off-by: Greg Kroah-Hartman commit bfb2c965d669045b7629fd577b7834c87c2dfd54 Author: Tony Lindgren Date: Thu Jun 29 22:27:36 2006 -0700 USB: Allow compile in g_ether, fix typo Allows compiling g_ether in and fixes a typo with MUSB_HDRC Signed-off-by: Tony Lindgren Cc: David Brownell Signed-off-by: Greg Kroah-Hartman commit b2bbb20b37d734443d1c279d0033a64f6095db54 Author: David Brownell Date: Thu Jun 29 12:25:39 2006 -0700 USB: pxa2xx_udc understands GPIO based VBUS sensing This updates the PXA 25x UDC board-independent infrastructure for VBUS sensing and the D+ pullup. The original code evolved from rather bizarre support on Intel's "Lubbock" reference hardware, so that on more sensible hardware it doesn't work as well as it could/should. The change is just to teach the UDC driver how to use built-in PXA GPIO pins directly. This reduces the amount of board-specfic object code needed, and enables the use of a VBUS sensing IRQ on boards (like Gumstix) that have one. With VBUS sensing, the UDC is unclocked until a host is actually connected. Signed-off-by: David Brownell Signed-off-by: Greg Kroah-Hartman commit 3a16f7b4a75d68364c3278523f51ac141a12758a Author: David Brownell Date: Thu Jun 29 12:27:23 2006 -0700 USB: move to Move to . Signed-off-by: David Brownell Signed-off-by: Greg Kroah-Hartman commit 26facdff1d39c0028565137ad27e8bd5a5cafcf1 Author: Andrew Morton Date: Fri Jul 7 00:11:45 2006 -0700 USB: kill usb kconfig warning drivers/usb/host/Kconfig:87:warning: 'select' used by config symbol 'USB_OHCI_HCD' refer to undefined symbol 'I2C_PNX' Signed-off-by: Andrew Morton Signed-off-by: Greg Kroah-Hartman commit 60bbfc84b6d916f5a10127762d0dcb3f4726450d Author: Vitaly Wool Date: Thu Jun 29 18:28:18 2006 +0400 USB OHCI controller support for PNX4008 inlined is the patch that adds basic support for USB OHCI controller support for PNX4008 Philips PNX4008 ARM board. Due to HW design, it depends on I2C driver for PNX4008 which I've recetnly posted to LKML and i2c at lm-sensors. Signed-off-by: Vitaly Wool Cc: David Brownell Signed-off-by: Greg Kroah-Hartman commit b2a8e097d0f3bbb7ef550103022db92fc3832842 Author: Ben Dooks Date: Mon Jun 26 23:36:07 2006 +0100 USB: ohci-s3c2410.c: clock now usb-bus-host With the newer Samsung S3C2412 and S3C2413 SoC devices, the 48MHz USB clock has been given an individual gate into the USB OHCI and gadget blocks. This clock is called usb-bus-clock, and we need to replace the old use of the USB PLL (upll) directly with the new usb-bus-host. The S3C2410 clock driver has been updated already to provide a virtual clock which is a child of the UPLL to maintain compatibility. The S3C2412 clock driver correctly enables the PLL when either usb-bus clock is active. Signed-off-by: Ben Dooks Signed-off-by: Greg Kroah-Hartman commit d413984ae936fad46678403b38d79c595e5aaafe Author: David Brownell Date: Fri Aug 4 11:31:55 2006 -0700 USB: OHCI avoids root hub timer polling This teaches OHCI to use the root hub status change (RHSC) IRQ, bypassing root hub timers most of the time and switching over to the "new" root hub polling scheme. It's complicated by the fact that implementations of OHCI trigger and ack that IRQ differently (the spec is vague there). Avoiding root hub timers helps mechanisms like "dynamic tick" leave the CPU in lowpower modes for longer intervals. Signed-off-by: David Brownell Signed-off-by: Greg Kroah-Hartman commit 06afff00bcab0e384afbef70194fd3469532abdf Author: Sam Bishop Date: Mon Aug 28 16:52:15 2006 -0600 USB doc patch 2 A little more detail on how and when to poll() /proc/bus/usb/devices. Signed-off-by: Sam Bishop Signed-off-by: Greg Kroah-Hartman commit 341323269258ab8484077a9c70db804fbae6ae93 Author: Sam Bishop Date: Mon Aug 28 16:42:10 2006 -0600 USB: doc patch 1 Grammar, spelling, and stylistic edits. Signed-off-by: Sam Bishop Signed-off-by: Greg Kroah-Hartman commit 39c2f3ac04663bb2546a7058701a621e526eabb2 Author: Phil Dibowitz Date: Mon Sep 11 00:27:40 2006 -0700 USB: unusual_dev entry for Sony P990i This patch is a re-diffed version of one originally sent by Jan Mate . Signed-off-by: Phil Dibowitz Signed-off-by: Greg Kroah-Hartman commit b97b196c9d351a501ed89fc836e4e2fe71ff93c9 Author: Alan Stern Date: Thu Sep 14 15:18:54 2006 -0400 USB: unusual_devs entry for Lacie DVD+-RW This patch (as781) adds an entry to unusual_devs.h for the Lacie DVD+-RW drive. Apparently its USB interface has requirements similar to the Genesys Logic interface; it doesn't like data to be sent too soon after a command. This fixes Bugzilla #6817. Signed-off-by: Alan Stern Signed-off-by: Phil Dibowitz Signed-off-by: Greg Kroah-Hartman commit 3f1a9aaeffd8d1cbc5ab9776c45cbd66af1c9699 Author: Steven Whitehouse Date: Wed Sep 27 14:52:48 2006 -0400 [GFS2] Fix typo in last patch Signed-off-by: Steven Whitehouse commit 0e0bcae3bfb3c88dbe14735fa69d7d88794dc73a Author: Steven Whitehouse Date: Wed Sep 27 14:45:07 2006 -0400 [GFS2] Fix direct i/o logic in filemap.c We shouldn't mark the file accessed in the case that it wasn't accessed. Signed-off-by: Steven Whitehouse commit 6cc7cbef948ea2660cc40d7aab090a479f7db6a2 Author: Russell King Date: Wed Sep 27 18:00:35 2006 +0100 [ARM] Use CPU_CACHE_* where possible in asm/cacheflush.h Three of the generic cache method options were using explicit CPU types, whereas they could use the CPU_CACHE_* definitions instead. Switch them over to use the CPU_CACHE_* definitions. Signed-off-by: Russell King commit 6b237a355afd342509f1471e0c338637bcd958bc Author: Russell King Date: Wed Sep 27 17:44:39 2006 +0100 [ARM] Make !MMU CPUs depend on !MMU Don't offer non-MMU based CPUs for selection when CONFIG_MMU is set. Signed-off-by: Russell King commit f37f46eb1c0bd0b11c34ef06c7365658be989d80 Author: Hyok S. Choi Date: Tue Sep 26 17:38:32 2006 +0900 [ARM] nommu: add ARM946E-S core support This patch adds ARM946E-S core support which has typically 8KB I&D cache. It has a MPU and supports ARMv5TE instruction set. Because the ARM946E-S core can be synthesizable with various cache size, CONFIG_CPU_DCACHE_SIZE is defined for vendor specific configurations. Signed-off-by: Hyok S. Choi Signed-off-by: Russell King commit d60674eb5d961b2421db16cc373dc163f38cc105 Author: Hyok S. Choi Date: Tue Sep 26 17:38:18 2006 +0900 [ARM] nommu: add ARM940T core support This patch adds ARM940T core support which has 4KB D-cache, 4KB I-cache and a MPU. Signed-off-by: Hyok S. Choi Signed-off-by: Russell King commit 43f5f0146ef5c3a3421ea53a0708fd37edcb8905 Author: Hyok S. Choi Date: Tue Sep 26 17:38:05 2006 +0900 [ARM] nommu: add ARM9TDMI core support This patch adds ARM9TDMI core support which has no cache and no CP15 register(no memory control unit). Signed-off-by: Hyok S. Choi Signed-off-by: Russell King commit b731c3118d87f26c8bf3f358ffbbc24450af50a6 Author: Hyok S. Choi Date: Tue Sep 26 17:37:50 2006 +0900 [ARM] nommu: add ARM740T core support This patch adds ARM740T core support which has a MPU and 4KB or 8KB cache. Signed-off-by: Hyok S. Choi Signed-off-by: Russell King commit 07e0da78abdc679714a12e7a60137d950c346681 Author: Hyok S. Choi Date: Tue Sep 26 17:37:36 2006 +0900 [ARM] nommu: add ARM7TDMI core support This patch adds ARM7TDMI core support which has no cache and no CP15 register(no memory control unit). Signed-off-by: Hyok S. Choi Signed-off-by: Russell King commit f12d0d7c7786af39435ef6ae9defe47fb58f6091 Author: Hyok S. Choi Date: Tue Sep 26 17:36:37 2006 +0900 [ARM] nommu: manage the CP15 things All the current CP15 access codes in ARM arch can be categorized and conditioned by the defines as follows: Related operation Safe condition a. any CP15 access !CPU_CP15 b. alignment trap CPU_CP15_MMU c. D-cache(C-bit) CPU_CP15 d. I-cache CPU_CP15 && !( CPU_ARM610 || CPU_ARM710 || CPU_ARM720 || CPU_ARM740 || CPU_XSCALE || CPU_XSC3 ) e. alternate vector CPU_CP15 && !CPU_ARM740 f. TTB CPU_CP15_MMU g. Domain CPU_CP15_MMU h. FSR/FAR CPU_CP15_MMU For example, alternate vector is supported if and only if "CPU_CP15 && !CPU_ARM740" is satisfied. Signed-off-by: Hyok S. Choi Signed-off-by: Russell King commit fefdaa06ccdde394be865ed76509be82813e425b Author: Hyok S. Choi Date: Tue Sep 26 17:36:37 2006 +0900 [ARM] nommu: defines CPU_CP15, CPU_CP15_MMU and CPU_CP15_MPU By merging of uClinux/ARM, we need to treat various CPU cores which have MMU, MPU or even none for memory management. The memory management coprocessors are controlled by CP15 register set and the ARM core family can be categorized by 5 groups by the register ; G-a. CP15 is MMU : 610, 710, 720, 920, 922, 925, 926, 1020, 1020e, 1022, v6 and the derivations sa1100, sa110, xscale, xsc3. G-b. CP15 is MPU : 740, 940, 946, 996, 1156. G-c. CP15 is MPU or MMU : 1026 (selectable by schematic design) G-d. CP15 is exist, but nothing for memory managemnt : 966, 968. G-e. no-CP15 : 7tdmi, 9tdmi, 9e, 9ej This patch defines CPU_CP15, CPU_CP15_MMU and CPU_CP15_MPU. Thus the family can be defined as : - CPU_CP15 only : G-d - CPU_CP15_MMU(implies CPU_CP15) : G-a, G-c(selectable) - CPU_CP15_MPU(implies CPU_CP15) : G-b, G-c(selectable) - !CPU_CP15 : G-e Signed-off-by: Hyok S. Choi Signed-off-by: Russell King commit 7e18c02be7c83a8cfd1319f0117f63509c20aa8e Author: Steven Whitehouse Date: Wed Sep 27 12:20:06 2006 -0400 [GFS2] Fix bug in Makefiles for lock modules The Makefile had the wrong CONFIG_ variable in it so that in case GFS2 was y and the lock modules were m, they were not getting built properly. Signed-off-by: Steven Whitehouse commit 6a570b28b5948e7bf54ea42ec3161bded0a1c460 Author: Hyok S. Choi Date: Tue Sep 26 17:37:07 2006 +0900 [ARM] nommu: allows to support module in nommu A simple patch to support module in nommu mode. The vmalloc is used instead of __vmalloc_area which depends on CONFIG_MMU. Signed-off-by: Hyok S. Choi Signed-off-by: Russell King commit 1e2af92e089d4c845248844a3e7ee06ce889af46 Author: Andrew Morton Date: Wed Sep 27 01:51:15 2006 -0700 [PATCH] x86: use probe_kernel_address in handle_BUG() Avoid possible deadlock on a BUG() inside down_write(mmap_sem). The deadlock can only occur if something has gone horridly wrong, because a fault here shouldn't happen. Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 1b79e5513d52e8533a08af35a3595dad80c74d1f Author: Andrew Morton Date: Wed Sep 27 01:51:14 2006 -0700 [PATCH] add probe_kernel_address() Add a version of __get_user() which is safe to call inside mmap_sem. Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit aafe6c2a2b6bce5a3a4913ce5c07e85ea143144d Author: Eric W. Biederman Date: Wed Sep 27 01:51:13 2006 -0700 [PATCH] de_thread: Use tsk not current Ingo Oeser pointed out that because current expands to an inline function it is more space efficient and somewhat faster to simply keep a cached copy of current in another variable. This patch implements that for the de_thread function. (akpm: saves nearly 100 bytes of text on x86) Signed-off-by: Eric W. Biederman Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 66f37509fc7191df468a8d183374f48b13bacb73 Author: Adrian Bunk Date: Wed Sep 27 01:51:13 2006 -0700 [PATCH] fs/nfs/: make code static Signed-off-by: Adrian Bunk Acked-by: Trond Myklebust Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit b7b52630deca785c4fc2bf4c53500cee066786af Author: Martin Bligh Date: Wed Sep 27 01:51:12 2006 -0700 [PATCH] add newline to nfs dprintk Add missing \n to dprintk Signed-off-by: Martin Bligh Acked-by: Trond Myklebust Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 65800ac77e080cf159d6c1207b6886e18f22bc08 Author: Eric W. Biederman Date: Wed Sep 27 01:51:11 2006 -0700 [PATCH] pid: remove temporary debug code in attach_pid With the patches flying between Oleg and myself somehow this temporary debug code got left in pid.c. It was never intended to make it to the stable kernel. Signed-off-by: Eric W. Biederman Cc: Oleg Nesterov Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit c18258c6f0848f97e85287f6271c511a092bb784 Author: Eric W. Biederman Date: Wed Sep 27 01:51:06 2006 -0700 [PATCH] pid: Implement transfer_pid and use it to simplify de_thread In de_thread we move pids from one process to another, a rather ugly case. The function transfer_pid makes it clear what we are doing, and makes the action atomic. This is useful we ever want to atomically traverse the process group and session lists, in a rcu safe manner. Even if the atomic properties this change should be a win as transfer_pid should be less code to execute than executing both attach_pid and detach_pid, and this should make de_thread slightly smaller as only a single function call needs to be emitted. The only downside is that the code might be slower to execute as the odds are against transfer_pid being in cache. Signed-off-by: Eric W. Biederman Cc: Oleg Nesterov Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 35fa2048ab13d1be846be612e395c15c200bd51c Author: Eric W. Biederman Date: Wed Sep 27 01:51:05 2006 -0700 [PATCH] sysctl: Document that sys_sysctl will be removed Signed-off-by: Eric W. Biederman Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit b89a81712f486e4f7a606987413e387605fdeaf4 Author: Eric W. Biederman Date: Wed Sep 27 01:51:04 2006 -0700 [PATCH] sysctl: Allow /proc/sys without sys_sysctl Since sys_sysctl is deprecated start allow it to be compiled out. This should catch any remaining user space code that cares, and paves the way for further sysctl cleanups. [akpm@osdl.org: If sys_sysctl() is not compiled-in, emit a warning] Signed-off-by: Eric W. Biederman Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 571817849c76aabf34d534c905b5e604f2e824c5 Author: Pekka J Enberg Date: Wed Sep 27 01:51:03 2006 -0700 [PATCH] msi: use kmem_cache_zalloc() Simpler, cleaner. Signed-off-by: Pekka Enberg Cc: "Eric W. Biederman" Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 7583ddfd3aae1007bc4fc67ea4c07d573d376e9e Author: Marcelo Tosatti Date: Wed Sep 27 01:51:02 2006 -0700 [PATCH] Include __param section in read-only data range The param section is an array of "kernel_param" structures, storing only constant data: pointer to name, permission of the variable pointed to by (void *)arg and pointers to set/get methods. Move end_rodata down to include __param section in the read-only range used by CONFIG_DEBUG_RODATA. Signed-off-by: Marcelo Tosatti Acked-by: Arjan van de Ven Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 8b0e330b7720a206339887044fa275bf537a5264 Author: Andrew Morton Date: Wed Sep 27 01:51:02 2006 -0700 [PATCH] alloc_fdtable() cleanup free_fdset(NULL, ...) is legal. Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 07563c711fbc25389e58ab9c9f0b9de2fce56760 Author: Michael Tokarev Date: Wed Sep 27 01:50:56 2006 -0700 [PATCH] EISA bus MODALIAS attributes support Add modalias attribute support for the almost forgotten now EISA bus and (at least some) EISA-aware modules. The modalias entry looks like (for an 3c509 NIC): eisa:sTCM5093 and the in-module alias like: eisa:sTCM5093* The patch moves struct eisa_device_id declaration from include/linux/eisa.h to include/linux/mod_devicetable.h (so that the former now #includes the latter), adds proper MODULE_DEVICE_TABLE(eisa, ...) statements for all drivers with EISA IDs I found (some drivers already have that DEVICE_TABLE declared), and adds recognision of __mod_eisa_device_table to scripts/mod/file2alias.c so that proper modules.alias will be generated. There's no support for /lib/modules/$kver/modules.eisamap, as it's not used by any existing tools, and because with in-kernel modalias mechanism those maps are obsolete anyway. The rationale for this patch is: a) to make EISA bus to act as other busses with modalias support, to unify driver loading b) to foget about EISA finally - with this patch, kernel (who still supports EISA) will be the only one who knows how to choose the necessary drivers for this bus ;) [akpm@osdl.org: fix the kbuild bit] Signed-off-by: Michael Tokarev Cc: Rusty Russell Cc: Randy Dunlap Acked-the-net-bits-by: Jeff Garzik Acked-the-tulip-bit-by: Valerie Henson Cc: James Bottomley Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit ebba5f9fcb882306bef7175dee987342ec6fcf2f Author: Randy Dunlap Date: Wed Sep 27 01:50:55 2006 -0700 [PATCH] consistently use MAX_ERRNO in __syscall_return Consistently use MAX_ERRNO when checking for errors in __syscall_return(). [ralf@linux-mips.org: build fix] Signed-off-by: Randy Dunlap Signed-off-by: Ralf Baechle Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit bd8e39f9e4c0960541c8c69e1f7cb321574d7c90 Author: Shaohua Li Date: Wed Sep 27 01:50:54 2006 -0700 [PATCH] x86 microcode: don't check the size IA32 manual says if micorcode update's size is 0, then the size is default size (2048 bytes). But this doesn't suggest all microcode update's size should be above 2048 bytes to me. We actually had a microcode update whose size is 1024 bytes. The patch just removed the check. Signed-off-by: Shaohua Li Cc: Tigran Aivazian Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 9a4b9efa1d39d7d31bed08fbe5a9b2a03b2759d4 Author: Shaohua Li Date: Wed Sep 27 01:50:53 2006 -0700 [PATCH] x86 microcode: add sysfs and hotplug support Add sysfs support. Currently each CPU has three microcode related attributes. One is 'version' which shows current ucode version of CPU. Tools can use the attribute do validation or show CPU ucode status. one is 'reload' which allows manually reloading ucode. Another is 'processor_flags', which exports processor flags, so we can write tools to check if CPU has latest ucode. Also add suspend/resume and CPU hotplug support. [akpm@osdl.org: cleanups, build fix] [bunk@stusta.de: Kconfig fixes] Signed-off-by: Shaohua Li Acked-by: Tigran Aivazian Cc: Greg KH Signed-off-by: Adrian Bunk Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit a30a6a2cb0fdc2c9701d6ddfb21affeb8146c038 Author: Shaohua Li Date: Wed Sep 27 01:50:52 2006 -0700 [PATCH] x86 microcode: using request_firmware to pull microcode Using request_firmware to pull ucode from userspace, so we don't need the application 'microcode_ctl' to assist. We name each ucode file according to CPU's info as intel-ucode/family-model-stepping. In this way we could split ucode file as small one. This has a lot of advantages such as selectively update and validate microcode for specific models, better manage microcode file, easily write tools for administerators and so on. with the changes, we should put all intel-ucode/xx-xx-xx microcode files into the firmware dir (I had a tool to split previous big data file into small one and later we will release new style data file). The init script should be changed to just loading the driver without unloading Signed-off-by: Shaohua Li Acked-by: Tigran Aivazian Cc: Greg KH Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 9a3110bf4bb0466b43b898533bfd4952001bc38f Author: Shaohua Li Date: Wed Sep 27 01:50:51 2006 -0700 [PATCH] x86 microcode: microcode driver cleanup. Clean up microcode update driver and make it more readable. [akpm@osdl.org: cleanups] Signed-off-by: Shaohua Li Acked-by: Tigran Aivazian Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 36b756f2b5762e6d5acba0c18e75cb5c11f11c1b Author: Adrian Bunk Date: Wed Sep 27 01:50:50 2006 -0700 [PATCH] reiserfs: warn about the useless nolargeio option Since the nolargeio option no longer has any effect, print a warning instead of setting a write-only variable. Signed-off-by: Adrian Bunk Cc: Jeff Mahoney Cc: Chris Mason Cc: Hans Reiser Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit ba52de123d454b57369f291348266d86f4b35070 Author: Theodore Ts'o Date: Wed Sep 27 01:50:49 2006 -0700 [PATCH] inode-diet: Eliminate i_blksize from the inode structure This eliminates the i_blksize field from struct inode. Filesystems that want to provide a per-inode st_blksize can do so by providing their own getattr routine instead of using the generic_fillattr() function. Note that some filesystems were providing pretty much random (and incorrect) values for i_blksize. [bunk@stusta.de: cleanup] [akpm@osdl.org: generic_fillattr() fix] Signed-off-by: "Theodore Ts'o" Signed-off-by: Adrian Bunk Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 577c4eb09d1034d0739e3135fd2cff50588024be Author: Theodore Ts'o Date: Wed Sep 27 01:50:49 2006 -0700 [PATCH] inode-diet: Move i_cdev into a union Move the i_cdev pointer in struct inode into a union. Signed-off-by: "Theodore Ts'o" Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit eaf796e7ef6014f208c409b2b14fddcfaafe7e3a Author: Theodore Ts'o Date: Wed Sep 27 01:50:48 2006 -0700 [PATCH] inode-diet: Move i_bdev into a union Move the i_bdev pointer in struct inode into a union. Signed-off-by: "Theodore Ts'o" Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 4c1541680f8d189d21dd07b053bc12996574646e Author: Theodore Ts'o Date: Wed Sep 27 01:50:47 2006 -0700 [PATCH] inode-diet: Move i_pipe into a union Move the i_pipe pointer into a union that will be shared with i_bdev and i_cdev. Signed-off-by: "Theodore Ts'o" Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 8e18e2941c53416aa219708e7dcad21fb4bd6794 Author: Theodore Ts'o Date: Wed Sep 27 01:50:46 2006 -0700 [PATCH] inode_diet: Replace inode.u.generic_ip with inode.i_private The following patches reduce the size of the VFS inode structure by 28 bytes on a UP x86. (It would be more on an x86_64 system). This is a 10% reduction in the inode size on a UP kernel that is configured in a production mode (i.e., with no spinlock or other debugging functions enabled; if you want to save memory taken up by in-core inodes, the first thing you should do is disable the debugging options; they are responsible for a huge amount of bloat in the VFS inode structure). This patch: The filesystem or device-specific pointer in the inode is inside a union, which is pretty pointless given that all 30+ users of this field have been using the void pointer. Get rid of the union and rename it to i_private, with a comment to explain who is allowed to use the void pointer. This is just a cleanup, but it allows us to reuse the union 'u' for something something where the union will actually be used. [judith@osdl.org: powerpc build fix] Signed-off-by: "Theodore Ts'o" Signed-off-by: Judith Lebzelter Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 6a1d9805ec506d8b9d04450997707da5f643d87c Author: OGAWA Hirofumi Date: Wed Sep 27 01:50:45 2006 -0700 [PATCH] fat: cleanup fat_get_block(s) get_blocks() was removed. So, this removes it on fat, and will take advantage of the multi block mapping. Signed-off-by: OGAWA Hirofumi Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 7e96287ddc4f42081e18248b6167041c0908004c Author: Vivek Goyal Date: Wed Sep 27 01:50:44 2006 -0700 [PATCH] kdump: introduce "reset_devices" command line option Resetting the devices during driver initialization can be a costly operation in terms of time (especially scsi devices). This option can be used by drivers to know that user forcibly wants the devices to be reset during initialization. This option can be useful while kernel is booting in unreliable environment. For ex. during kdump boot where devices are in unknown random state and BIOS execution has been skipped. Signed-off-by: Vivek Goyal Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit bcdc5e019d9f525a9f181a7de642d3a9c27c7610 Author: Ian Kent Date: Wed Sep 27 01:50:44 2006 -0700 [PATCH] autofs4 needs to force fail return revalidate For a long time now I have had a problem with not being able to return a lookup failure on an existsing directory. In autofs this corresponds to a mount failure on a autofs managed mount entry that is browsable (and so the mount point directory exists). While this problem has been present for a long time I've avoided resolving it because it was not very visible. But now that autofs v5 has "mount and expire on demand" of nested multiple mounts, such as is found when mounting an export list from a server, solving the problem cannot be avoided any longer. I've tried very hard to find a way to do this entirely within the autofs4 module but have not been able to find a satisfactory way to achieve it. So, I need to propose a change to the VFS. Signed-off-by: Ian Kent Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 1183dc943cae8b0fddca0b310c26052b2355e04b Author: Jeff Dike Date: Wed Sep 27 01:50:43 2006 -0700 [PATCH] uml: fix allocation size Fix an instance of ptr=alloc(sizeof(ptr)). Grepping showed no more instances of this pattern. Also fixed the formatting in the area. Signed-off-by: Jeff Dike Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit c1b4098d4852f823ecf1abb2d369cb1beb902653 Author: Jeff Dike Date: Wed Sep 27 01:50:42 2006 -0700 [PATCH] uml: fix sleep length bug um_timer shouldn't add local_offset to the host time since get_time already did it. This threw off sleep when a settimeofday or equivalent had happened. Signed-off-by: Jeff Dike Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit db9d988eaa48fa8d64cf3234a301eb9406b91de1 Author: Jeff Dike Date: Wed Sep 27 01:50:41 2006 -0700 [PATCH] uml: add an export Some modules need strnlen_user_skas. Signed-off-by: Jeff Dike Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 995473aec0be1d9993205accc03e19d32d4e4a2a Author: Jeff Dike Date: Wed Sep 27 01:50:40 2006 -0700 [PATCH] uml: file renaming Move some foo_kern.c files to foo.c now that the old foo.c files are out of the way. Also cleaned up some whitespace and an emacs formatting comment. Signed-off-by: Jeff Dike Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 3c9173509985b957bea692ea887a8a0e5055cfe8 Author: Jeff Dike Date: Wed Sep 27 01:50:40 2006 -0700 [PATCH] uml: thread creation tidying fork on UML has always somewhat subtle. The underlying cause has been the need to initialize a stack for the new process. The only portable way to initialize a new stack is to set it as the alternate signal stack and take a signal. The signal handler does whatever initialization is needed and jumps back to the original stack, where the fork processing is finished. The basic context switching mechanism is a jmp_buf for each process. You switch to a new process by longjmping to its jmp_buf. Now that UML has its own implementation of setjmp and longjmp, and I can poke around inside a jmp_buf without fear that libc will change the structure, a much simpler mechanism is possible. The jmpbuf can simply be initialized by hand. This eliminates - the need to set up and remove the alternate signal stack sending and handling a signal the signal blocking needed around the stack switching, since there is no stack switching setting up the jmp_buf needed to jump back to the original stack after the new one is set up In addition, since jmp_buf is now defined by UML, and not by libc, it can be embedded in the thread struct. This makes it unnecessary to have it exist on the stack, where it used to be. It also simplifies interfaces, since the switch jmp_buf used to be a void * inside the thread struct, and functions which took it as an argument needed to define a jmp_buf variable and assign it from the void *. Signed-off-by: Jeff Dike Cc: Paolo 'Blaisorblade' Giarrusso Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 0915ee38c7db57ff41a7a68bcc02d0dd3b7b849b Author: Jeff Dike Date: Wed Sep 27 01:50:38 2006 -0700 [PATCH] uml: mark some tt-mode code Mark a symbol and file as being tt-mode only. This shrinks the binary slightly when tt mode support is compiled out and makes it easier to identity stuff when tt mode is removed. Signed-off-by: Jeff Dike Cc: Paolo 'Blaisorblade' Giarrusso Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit e3ccf6e3699c879973b616fe681ecaa363457d41 Author: Jeff Dike Date: Wed Sep 27 01:50:37 2006 -0700 [PATCH] uml: add checkstack support Make checkstack work for UML. We need to pass the underlying architecture name, rather than "um" to checkstack.pl. Signed-off-by: Jeff Dike Acked-by: Matt Mackall Cc: Paolo 'Blaisorblade' Giarrusso Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 53dd2b55c50c810073615c79816bc06aea02dba9 Author: Jeff Dike Date: Wed Sep 27 01:50:37 2006 -0700 [PATCH] uml: use correct SIGBUS handler BB noticed that we had the wrong bus error handler. Signed-off-by: Jeff Dike Cc: Paolo 'Blaisorblade' Giarrusso Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 09b185a3169c5a8f9b7baf97f16d32add7e10ca4 Author: Jeff Dike Date: Wed Sep 27 01:50:36 2006 -0700 [PATCH] uml: fix gcov support Make __bb_init_func weak in order to avoid a link failure with some libcs and/or gccs. Signed-off-by: Jeff Dike Cc: Paolo 'Blaisorblade' Giarrusso Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit a8b4fc4d7c3ccf80d4fa1805cee85c06c2aa653e Author: Jeff Dike Date: Wed Sep 27 01:50:35 2006 -0700 [PATCH] uml: fix missing x86_64 register definitions The UML/x86_64 headers were missing ptrace support for some segment registers. The underlying problem was that the x86_64 kernel uses user_regs_struct rather than the ptrace register definitions in ptrace. This patch switches UML/x86_64 to using user_regs_struct for its definitions of the host's registers. Signed-off-by: Jeff Dike Cc: Paolo 'Blaisorblade' Giarrusso Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 0715501bf1d915002d92e34e8a78ea889e5a0049 Author: Jeff Dike Date: Wed Sep 27 01:50:34 2006 -0700 [PATCH] uml: get rid of ZONE_DMA use ZONE_DMA might become dependent on CONFIG_ZONE_DMA, which UML doesn't define (we're still arguing about this) So, let's change ZONE_DMA to ZONE_NORMAL. This is prompted by optional-zone_dma-in-the-vm.patch, but should be harmless on its own. Signed-off-by: Jeff Dike Cc: Christoph Lameter Cc: Paolo 'Blaisorblade' Giarrusso Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 5e7672ec3f059f764fcc5c78216e24bb16c44dba Author: Jeff Dike Date: Wed Sep 27 01:50:33 2006 -0700 [PATCH] uml: const more data Make lots of structures const in order to make it obvious that they need no locking. Signed-off-by: Jeff Dike Cc: Paolo 'Blaisorblade' Giarrusso Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 48af05ed54ddf8dc6eceea4f009e063d7e784b37 Author: Paolo 'Blaisorblade' Giarrusso Date: Wed Sep 27 01:50:31 2006 -0700 [PATCH] uml: fix proc-vs-interrupt context spinlock deadlock This spinlock can be taken on interrupt too, so spin_lock_irq[save] must be used. However, Documentation/networking/netdevices.txt explains we are called with rtnl_lock() held - so we don't need to care about other concurrent opens. Verified also in LDD3 and by direct checking. Also verified that the network layer (through a state machine) guarantees us that nobody will close the interface while it's being used. Please correct me if I'm wrong. Also, we must check we don't sleep with irqs disabled!!! But anyway, this is not news - we already can't sleep while holding a spinlock. Who says this is guaranted really by the present code? Signed-off-by: Paolo 'Blaisorblade' Giarrusso Cc: Jeff Dike Cc: Jeff Garzik Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 06837504de7b4883e92af207dbbab4310d0db0ed Author: Paolo 'Blaisorblade' Giarrusso Date: Wed Sep 27 01:50:27 2006 -0700 [PATCH] uml: use -mcmodel=kernel for x86_64 We have never used this flag and recently one user experienced a complaining warning about this (there was a symbol in the positive half of the address space IIRC). So fix it. Signed-off-by: Paolo 'Blaisorblade' Giarrusso Cc: Jeff Dike Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 85f651794c46e8e3faf204a767d1caa7f9f278f0 Author: Hirokazu Takata Date: Wed Sep 27 01:50:24 2006 -0700 [PATCH] m32r: revise __raw_read_trylock() Signed-off-by: Hirokazu Takata Cc: Matthew Wilcox Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit a27f3113322edff36743014cc9e752a21ffc0324 Author: Hirokazu Takata Date: Wed Sep 27 01:50:24 2006 -0700 [PATCH] m32r: Fix "value computed not used" warnings Fix to remove annoying gcc-4.1 warnings "value computed not used" for m32r; Modify set_mb to cast to void for SMP. Signed-off-by: Hirokazu Takata Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit f269fdd1829acc5e53bf57b145003e5733133f2b Author: David Howells Date: Wed Sep 27 01:50:23 2006 -0700 [PATCH] NOMMU: move the fallback arch_vma_name() to a sensible place Move the fallback arch_vma_name() to a sensible place (kernel/signal.c). Currently it's in fs/proc/task_mmu.c, a file that is dependent on both CONFIG_PROC_FS and CONFIG_MMU being enabled, but it's used from kernel/signal.c from where it is called unconditionally. [akpm@osdl.org: build fix] Signed-off-by: David Howells Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 930e652a21a08986b03d1f370f933057dc0db2dc Author: David Howells Date: Wed Sep 27 01:50:22 2006 -0700 [PATCH] NOMMU: Make futexes work under NOMMU conditions Make futexes work under NOMMU conditions. This can be tested by running this in one shell: #define SYSERROR(X, Y) \ do { if ((long)(X) == -1L) { perror(Y); exit(1); }} while(0) int main() { int shmid, tmp, *f, n; shmid = shmget(23, 4, IPC_CREAT|0666); SYSERROR(shmid, "shmget"); f = shmat(shmid, NULL, 0); SYSERROR(f, "shmat"); n = *f; printf("WAIT: %p{%x}\n", f, n); tmp = futex(f, FUTEX_WAIT, n, NULL, NULL, 0); SYSERROR(tmp, "futex"); printf("WAITED: %d\n", tmp); tmp = shmdt(f); SYSERROR(tmp, "shmdt"); exit(0); } And then this in the other shell: #define SYSERROR(X, Y) \ do { if ((long)(X) == -1L) { perror(Y); exit(1); }} while(0) int main() { int shmid, tmp, *f; shmid = shmget(23, 4, IPC_CREAT|0666); SYSERROR(shmid, "shmget"); f = shmat(shmid, NULL, 0); SYSERROR(f, "shmat"); (*f)++; printf("WAKE: %p{%x}\n", f, *f); tmp = futex(f, FUTEX_WAKE, 1, NULL, NULL, 0); SYSERROR(tmp, "futex"); printf("WOKE: %d\n", tmp); tmp = shmdt(f); SYSERROR(tmp, "shmdt"); exit(0); } The first program will set up a SYSV IPC SHM segment and wait on a futex in it for the number at the start to change. The program will increment that number and wake the first program up. This leads to output of the form: SHELL 1 SHELL 2 ======================= ======================= # /dowait WAIT: 0xc32ac000{0} # /dowake WAKE: 0xc32ac000{1} WAITED: 0 WOKE: 1 Signed-off-by: David Howells Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 0112c4c6461fed12ed9bcb249f967bc17a23f6c4 Author: David Howells Date: Wed Sep 27 01:50:21 2006 -0700 [PATCH] NOMMU: Add docs about shared memory Add documentation about using shared memory in NOMMU mode. Signed-off-by: David Howells Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 6fa5f80bc34da1a49b42117602b44441402cac2f Author: David Howells Date: Wed Sep 27 01:50:21 2006 -0700 [PATCH] NOMMU: Make mremap() partially work for NOMMU kernels Make mremap() partially work for NOMMU kernels. It may resize a VMA provided that it doesn't exceed the size of the slab object in which the storage is allocated that the VMA refers to. Shareable VMAs may not be resized. Moving VMAs (as permitted by MREMAP_MAYMOVE) is not currently supported. This patch also makes use of the fact that the VMA list is now ordered to cut it short when possible. Signed-off-by: David Howells Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 3034097a5017dd9281b1f795e80af9859627850e Author: David Howells Date: Wed Sep 27 01:50:20 2006 -0700 [PATCH] NOMMU: Order the per-mm_struct VMA list Order the per-mm_struct VMA list by address so that searching it can be cut short when the appropriate address has been exceeded. Signed-off-by: David Howells Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit dbf8685c8e21404e3a8ed244bd0219d3c4b89101 Author: David Howells Date: Wed Sep 27 01:50:19 2006 -0700 [PATCH] NOMMU: Implement /proc/pid/maps for NOMMU Implement /proc/pid/maps for NOMMU by reading the vm_area_list attached to current->mm->context.vmlist. Signed-off-by: David Howells Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit d00c7b993712e4bb16d0012b35b654e40159b327 Author: David Howells Date: Wed Sep 27 01:50:19 2006 -0700 [PATCH] NOMMU: Permit ptrace to ignore non-PROT_WRITE VMAs in NOMMU mode Permit ptrace to modify a section that's non-shared but is marked unwritable, such as is obtained by mapping the text segment of an ELF-FDPIC executable binary with into a binary that's being ptraced[*]. [*] Under NOMMU conditions ptrace causes read-only MAP_PRIVATE mmaps to become totally private copies because if a private mapping was actually shared then the debugging setting breakpoints in it would potentially crash other processes. This is done by using the VM_MAYWRITE flag rather than the VM_WRITE flag when deciding whether to permit a write. Without this patch a debugger can't set breakpoints in the mapped text sections of executables that are mapped read-only private, even if the mmap() syscall has taken a private copy because PT_PTRACED is set. In addition, VM_MAYREAD is used instead of VM_READ for similar reasons. Signed-off-by: David Howells Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 7b4d5b8b39fd3701ed3693a89f2bd8f6ef49bce2 Author: David Howells Date: Wed Sep 27 01:50:18 2006 -0700 [PATCH] NOMMU: Check VMA protections Check the VMA protections in get_user_pages() against what's being asked. This checks to see that we don't accidentally write on a non-writable VMA or permit an I/O mapping VMA to be accessed (which may lack page structs). Signed-off-by: David Howells Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 910e46da4b4e93d56ffea318c64afa41868d5e6d Author: Sonic Zhang Date: Wed Sep 27 01:50:17 2006 -0700 [PATCH] Check if start address is in vma region in NOMMU function get_user_pages() In NOMMU arch, if run "cat /proc/self/mem", data from physical address 0 are read. This behavior is different from MMU arch. In IA32, message "cat: /proc/self/mem: Input/output error" is reported. This issue is rootcaused by not validate the start address in NOMMU function get_user_pages(). Following patch solves this issue. Signed-off-by: Sonic Zhang Cc: David Howells Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 0159b141d8b1f9b9f9cffacae47bec1e05c63b8b Author: David Howells Date: Wed Sep 27 01:50:16 2006 -0700 [PATCH] NOMMU: Use find_vma() rather than reimplementing a VMA search Use find_vma() in the NOMMU version of access_process_vm() rather than reimplementing it. Signed-off-by: David Howells Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 5da6185bca064e35aa73a7c1f27488d2b96434f4 Author: David Howells Date: Wed Sep 27 01:50:16 2006 -0700 [PATCH] NOMMU: Set BDI capabilities for /dev/mem and /dev/kmem Set the backing device info capabilities for /dev/mem and /dev/kmem to permit direct sharing under no-MMU conditions and full mapping capabilities under MMU conditions. Make the BDI used by these available to all directly mappable character devices. Also comment the capabilities for /dev/zero. [akpm@osdl.org: ifdef reductions] Signed-off-by: David Howells Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 0ec76a110f432e98277e464b82ace8dd66571689 Author: David Howells Date: Wed Sep 27 01:50:15 2006 -0700 [PATCH] NOMMU: Check that access_process_vm() has a valid target Check that access_process_vm() is accessing a valid mapping in the target process. This limits ptrace() accesses and accesses through /proc//maps to only those regions actually mapped by a program. Signed-off-by: David Howells Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 361f6ed1d00f666a1a7c33f3e9aaccb713f9b9e4 Author: Haavard Skinnemoen Date: Wed Sep 27 01:50:14 2006 -0700 [PATCH] AVR32: Use unsigned long flags for saving interrupt state Signed-off-by: Haavard Skinnemoen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit d24afc57d51b1be41f95521e81399061fa5875a6 Author: Rolf Eike Beer Date: Wed Sep 27 01:50:13 2006 -0700 [PATCH] Mark __remove_vm_area() static The function is exported but not used from anywhere else. It's also marked as "not for driver use" so noone out there should really care. Signed-off-by: Rolf Eike Beer Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit ead04089b138ed669658f80fafbe11fc7d97740b Author: Rolf Eike Beer Date: Wed Sep 27 01:50:13 2006 -0700 [PATCH] Fix kerneldoc comments in mm/vmalloc.c The empty line between the short description and the first argument description causes a section to appear twice in the generated manpage. Also the short description should really be short: the script can't handle multiple lines. Signed-off-by: Rolf Eike Beer Acked-by: Randy Dunlap Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 423b41d773abe443bb546ce91361192073b96f88 Author: Randy Dunlap Date: Wed Sep 27 01:50:12 2006 -0700 [PATCH] mm/page_alloc: use NULL instead of 0 for ptr Use NULL instead of 0 for pointer value, eliminate sparse warnings. Signed-off-by: Randy Dunlap Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 17a3b05047119b7fc72ef03962e202becc659579 Author: Jes Sorensen Date: Wed Sep 27 01:50:11 2006 -0700 [PATCH] mspec driver Implement the special memory driver (mspec) based on the do_no_pfn approach. The driver is currently used only on SN2 hardware with special fetchop support but could be beneficial on other architectures using the uncached mode. Signed-off-by: Jes Sorensen Cc: Hugh Dickins Cc: Nick Piggin Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit f4b81804a2d1ab341a4613089dc31ecce0800ed8 Author: Jes Sorensen Date: Wed Sep 27 01:50:10 2006 -0700 [PATCH] do_no_pfn() Implement do_no_pfn() for handling mapping of memory without a struct page backing it. This avoids creating fake page table entries for regions which are not backed by real memory. This feature is used by the MSPEC driver and other users, where it is highly undesirable to have a struct page sitting behind the page (for instance if the page is accessed in cached mode via the struct page in parallel to the the driver accessing it uncached, which can result in data corruption on some architectures, such as ia64). This version uses specific NOPFN_{SIGBUS,OOM} return values, rather than expect all negative pfn values would be an error. It also bugs on cow mappings as this would not work with the VM. [akpm@osdl.org: micro-optimise] Signed-off-by: Jes Sorensen Cc: Hugh Dickins Cc: Nick Piggin Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 5d2923436217ba8bd05c5ee157712a391891c382 Author: Christoph Lameter Date: Wed Sep 27 01:50:10 2006 -0700 [PATCH] zone_statistics: Use hot node instead of cold zone_pgdat Now that we have the node in the hot zone of struct zone we can avoid accessing zone_pgdat in zone_statistics. Signed-off-by: Christoph Lameter Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 66a550308b8e4cbaba185d0326cb05d1bd758101 Author: Christoph Lameter Date: Wed Sep 27 01:50:09 2006 -0700 [PATCH] Do not allocate pagesets for unpopulated zones. We do not need to allocate pagesets for unpopulated zones. Signed-off-by: Christoph Lameter Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit d5f541ed6e31518508c688912e7464facf253c87 Author: Christoph Lameter Date: Wed Sep 27 01:50:08 2006 -0700 [PATCH] Add node to zone for the NUMA case Add the node in order to optimize zone_to_nid. Signed-off-by: Christoph Lameter Acked-by: Paul Jackson Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 765c4507af71c39aba21006bbd3ec809fe9714ff Author: Christoph Lameter Date: Wed Sep 27 01:50:08 2006 -0700 [PATCH] GFP_THISNODE for the slab allocator This patch insures that the slab node lists in the NUMA case only contain slabs that belong to that specific node. All slab allocations use GFP_THISNODE when calling into the page allocator. If an allocation fails then we fall back in the slab allocator according to the zonelists appropriate for a certain context. This allows a replication of the behavior of alloc_pages and alloc_pages node in the slab layer. Currently allocations requested from the page allocator may be redirected via cpusets to other nodes. This results in remote pages on nodelists and that in turn results in interrupt latency issues during cache draining. Plus the slab is handing out memory as local when it is really remote. Fallback for slab memory allocations will occur within the slab allocator and not in the page allocator. This is necessary in order to be able to use the existing pools of objects on the nodes that we fall back to before adding more pages to a slab. The fallback function insures that the nodes we fall back to obey cpuset restrictions of the current context. We do not allocate objects from outside of the current cpuset context like before. Note that the implementation of locality constraints within the slab allocator requires importing logic from the page allocator. This is a mischmash that is not that great. Other allocators (uncached allocator, vmalloc, huge pages) face similar problems and have similar minimal reimplementations of the basic fallback logic of the page allocator. There is another way of implementing a slab by avoiding per node lists (see modular slab) but this wont work within the existing slab. V1->V2: - Use NUMA_BUILD to avoid #ifdef CONFIG_NUMA - Exploit GFP_THISNODE being 0 in the NON_NUMA case to avoid another #ifdef [akpm@osdl.org: build fix] Signed-off-by: Christoph Lameter Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 77f700dab4c05f8ee17584ec869672796d7bcb87 Author: Christoph Lameter Date: Wed Sep 27 01:50:07 2006 -0700 [PATCH] Disable GFP_THISNODE in the non-NUMA case GFP_THISNODE must be set to 0 in the non numa case otherwise we disable retry and warnings for failing allocations in the SMP and UP case. Signed-off-by: Christoph Lameter Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 08e0f6a9705376732fd3bc9bf8ba97a6b5211eb1 Author: Christoph Lameter Date: Wed Sep 27 01:50:06 2006 -0700 [PATCH] Add NUMA_BUILD definition in kernel.h to avoid #ifdef CONFIG_NUMA The NUMA_BUILD constant is always available and will be set to 1 on NUMA_BUILDs. That way checks valid only under CONFIG_NUMA can easily be done without #ifdef CONFIG_NUMA F.e. if (NUMA_BUILD && ) { ... } [akpm: not a thing we'd normally do, but CONFIG_NUMA is special: it is causing ifdef explosion in core kernel, so let's see if this is a comfortable way in whcih to control that] Signed-off-by: Christoph Lameter Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit c72419138fa34e1bc1f1c6fa54ee77df55a05ed0 Author: Jes Sorensen Date: Wed Sep 27 01:50:05 2006 -0700 [PATCH] Condense output of show_free_areas() On larger systems, the amount of output dumped on the console when you do SysRq-M is beyond insane. This patch is trying to reduce it somewhat as even with the smaller NUMA systems that have hit the desktop this seems to be a fair thing to do. The philosophy I have taken is as follows: 1) If a zone is empty, don't tell, we don't need yet another line telling us so. The information is available since one can look up the fact how many zones were initialized in the first place. 2) Put as much information on a line is possible, if it can be done in one line, rahter than two, then do it in one. I tried to format the temperature stuff for easy reading. Change show_free_areas() to not print lines for empty zones. If no zone output is printed, the zone is empty. This reduces the number of lines dumped to the console in sysrq on a large system by several thousand lines. Change the zone temperature printouts to use one line per CPU instead of two lines (one hot, one cold). On a 1024 CPU, 1024 node system, this reduces the console output by over a million lines of output. While this is a bigger problem on large NUMA systems, it is also applicable to smaller desktop sized and mid range NUMA systems. Old format: Mem-info: Node 0 DMA per-cpu: cpu 0 hot: high 42, batch 7 used:24 cpu 0 cold: high 14, batch 3 used:1 cpu 1 hot: high 42, batch 7 used:34 cpu 1 cold: high 14, batch 3 used:0 cpu 2 hot: high 42, batch 7 used:0 cpu 2 cold: high 14, batch 3 used:0 cpu 3 hot: high 42, batch 7 used:0 cpu 3 cold: high 14, batch 3 used:0 cpu 4 hot: high 42, batch 7 used:0 cpu 4 cold: high 14, batch 3 used:0 cpu 5 hot: high 42, batch 7 used:0 cpu 5 cold: high 14, batch 3 used:0 cpu 6 hot: high 42, batch 7 used:0 cpu 6 cold: high 14, batch 3 used:0 cpu 7 hot: high 42, batch 7 used:0 cpu 7 cold: high 14, batch 3 used:0 Node 0 DMA32 per-cpu: empty Node 0 Normal per-cpu: empty Node 0 HighMem per-cpu: empty Node 1 DMA per-cpu: [snip] Free pages: 5410688kB (0kB HighMem) Active:9536 inactive:4261 dirty:6 writeback:0 unstable:0 free:338168 slab:1931 mapped:1900 pagetables:208 Node 0 DMA free:1676304kB min:3264kB low:4080kB high:4896kB active:128048kB inactive:61568kB present:1970880kB pages_scanned:0 all_unreclaimable? no lowmem_reserve[]: 0 0 0 0 Node 0 DMA32 free:0kB min:0kB low:0kB high:0kB active:0kB inactive:0kB present:0kB pages_scanned:0 all_unreclaimable? no lowmem_reserve[]: 0 0 0 0 Node 0 Normal free:0kB min:0kB low:0kB high:0kB active:0kB inactive:0kB present:0kB pages_scanned:0 all_unreclaimable? no lowmem_reserve[]: 0 0 0 0 Node 0 HighMem free:0kB min:512kB low:512kB high:512kB active:0kB inactive:0kB present:0kB pages_scanned:0 all_unreclaimable? no lowmem_reserve[]: 0 0 0 0 Node 1 DMA free:1951728kB min:3280kB low:4096kB high:4912kB active:5632kB inactive:1504kB present:1982464kB pages_scanned:0 all_unreclaimable? no lowmem_reserve[]: 0 0 0 0 .... New format: Mem-info: Node 0 DMA per-cpu: CPU 0: Hot: hi: 42, btch: 7 usd: 41 Cold: hi: 14, btch: 3 usd: 2 CPU 1: Hot: hi: 42, btch: 7 usd: 40 Cold: hi: 14, btch: 3 usd: 1 CPU 2: Hot: hi: 42, btch: 7 usd: 0 Cold: hi: 14, btch: 3 usd: 0 CPU 3: Hot: hi: 42, btch: 7 usd: 0 Cold: hi: 14, btch: 3 usd: 0 CPU 4: Hot: hi: 42, btch: 7 usd: 0 Cold: hi: 14, btch: 3 usd: 0 CPU 5: Hot: hi: 42, btch: 7 usd: 0 Cold: hi: 14, btch: 3 usd: 0 CPU 6: Hot: hi: 42, btch: 7 usd: 0 Cold: hi: 14, btch: 3 usd: 0 CPU 7: Hot: hi: 42, btch: 7 usd: 0 Cold: hi: 14, btch: 3 usd: 0 Node 1 DMA per-cpu: [snip] Free pages: 5411088kB (0kB HighMem) Active:9558 inactive:4233 dirty:6 writeback:0 unstable:0 free:338193 slab:1942 mapped:1918 pagetables:208 Node 0 DMA free:1677648kB min:3264kB low:4080kB high:4896kB active:129296kB inactive:58864kB present:1970880kB pages_scanned:0 all_unreclaimable? no lowmem_reserve[]: 0 0 0 0 Node 1 DMA free:1948448kB min:3280kB low:4096kB high:4912kB active:6864kB inactive:3536kB present:1982464kB pages_scanned:0 all_unreclaimable? no lowmem_reserve[]: 0 0 0 0 Signed-off-by: Jes Sorensen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit de3083ec3e6bfb1ab60bc8a410f37702529f953c Author: Christoph Lameter Date: Wed Sep 27 01:50:03 2006 -0700 [PATCH] slab: fix kmalloc_node applying memory policies if nodeid == numa_node_id() kmalloc_node() falls back to ___cache_alloc() under certain conditions and at that point memory policies may be applied redirecting the allocation away from the current node. Therefore kmalloc_node(...,numa_node_id()) or kmalloc_node(...,-1) may not return memory from the local node. Fix this by doing the policy check in __cache_alloc() instead of ____cache_alloc(). This version here is a cleanup of Kiran's patch. - Tested on ia64. - Extra material removed. - Consolidate the exit path if alternate_node_alloc() returned an object. [akpm@osdl.org: warning fix] Signed-off-by: Alok N Kataria Signed-off-by: Ravikiran Thirumalai Signed-off-by: Shai Fultheim Signed-off-by: Christoph Lameter Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 0fd0e6b05aa096622f151cac2f81f2e6844fb1bb Author: Nick Piggin Date: Wed Sep 27 01:50:02 2006 -0700 [PATCH] page invalidation cleanup Clean up the invalidate code, and use a common function to safely remove the page from pagecache. Signed-off-by: Nick Piggin Cc: Hugh Dickins Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 5b99cd0effaf846240a15441aec459a592577eaf Author: Heiko Carstens Date: Wed Sep 27 01:50:01 2006 -0700 [PATCH] own header file for struct page This moves the definition of struct page from mm.h to its own header file page-struct.h. This is a prereq to fix SetPageUptodate which is broken on s390: #define SetPageUptodate(_page) do { struct page *__page = (_page); if (!test_and_set_bit(PG_uptodate, &__page->flags)) page_test_and_clear_dirty(_page); } while (0) _page gets used twice in this macro which can cause subtle bugs. Using __page for the page_test_and_clear_dirty call doesn't work since it causes yet another problem with the page_test_and_clear_dirty macro as well. In order to avoid all these problems caused by macros it seems to be a good idea to get rid of them and convert them to static inline functions. Because of header file include order it's necessary to have a seperate header file for the struct page definition. Cc: Martin Schwidefsky Signed-off-by: Heiko Carstens Cc: Roman Zippel Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit e129b5c23c2b471d47f1c5d2b8b193fc2034af43 Author: Andrew Morton Date: Wed Sep 27 01:50:00 2006 -0700 [PATCH] vm: add per-zone writeout counter The VM is supposed to minimise the number of pages which get written off the LRU (for IO scheduling efficiency, and for high reclaim-success rates). But we don't actually have a clear way of showing how true this is. So add `nr_vmscan_write' to /proc/vmstat and /proc/zoneinfo - the number of pages which have been written by the vm scanner in this zone and globally. Cc: Christoph Lameter Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit fb01439c5b778d5974a488c5d4fe85e6d0e18a68 Author: Mel Gorman Date: Wed Sep 27 01:49:59 2006 -0700 [PATCH] Allow an arch to expand node boundaries Arch-independent zone-sizing determines the size of a node (pgdat->node_spanned_pages) based on the physical memory that was registered by the architecture. However, when CONFIG_MEMORY_HOTPLUG_RESERVE is set, the architecture expects that the spanned_pages will be much larger and that mem_map will be allocated that is used lated on memory hot-add. This patch allows an architecture that sets CONFIG_MEMORY_HOTPLUG_RESERVE to call push_node_boundaries() which will set the node beginning and end to at *least* the requested boundary. Cc: Dave Hansen Cc: Andy Whitcroft Cc: Andi Kleen Cc: Benjamin Herrenschmidt Cc: Paul Mackerras Cc: "Keith Mannthey" Cc: "Luck, Tony" Cc: KAMEZAWA Hiroyuki Cc: Yasunori Goto Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 9c7cd6877cf8db15269163deda69392263124c1e Author: Mel Gorman Date: Wed Sep 27 01:49:58 2006 -0700 [PATCH] Account for holes that are outside the range of physical memory absent_pages_in_range() made the assumption that users of the API would not care about holes beyound the end of physical memory. This was not the case. This patch will account for ranges outside of physical memory as holes correctly. Cc: Dave Hansen Cc: Andy Whitcroft Cc: Andi Kleen Cc: Benjamin Herrenschmidt Cc: Paul Mackerras Cc: "Keith Mannthey" Cc: "Luck, Tony" Cc: KAMEZAWA Hiroyuki Cc: Yasunori Goto Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 0e0b864e069c52a7b3e4a7da56e29b03a012fd75 Author: Mel Gorman Date: Wed Sep 27 01:49:56 2006 -0700 [PATCH] Account for memmap and optionally the kernel image as holes The x86_64 code accounted for memmap and some portions of the the DMA zone as holes. This was because those areas would never be reclaimed and accounting for them as memory affects min watermarks. This patch will account for the memmap as a memory hole. Architectures may optionally use set_dma_reserve() if they wish to account for a portion of memory in ZONE_DMA as a hole. Signed-off-by: Mel Gorman Cc: Dave Hansen Cc: Andy Whitcroft Cc: Andi Kleen Cc: Benjamin Herrenschmidt Cc: Paul Mackerras Cc: "Keith Mannthey" Cc: "Luck, Tony" Cc: KAMEZAWA Hiroyuki Cc: Yasunori Goto Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 05e0caad3b7bd0d0fbeff980bca22f186241a501 Author: Mel Gorman Date: Wed Sep 27 01:49:54 2006 -0700 [PATCH] Have ia64 use add_active_range() and free_area_init_nodes Size zones and holes in an architecture independent manner for ia64. [bob.picco@hp.com: fix ia64 FLATMEM+VIRTUAL_MEM_MAP] Signed-off-by: Mel Gorman Signed-off-by: Bob Picco Cc: Dave Hansen Cc: Andy Whitcroft Cc: Andi Kleen Cc: Benjamin Herrenschmidt Cc: Paul Mackerras Cc: "Keith Mannthey" Cc: "Luck, Tony" Cc: KAMEZAWA Hiroyuki Cc: Yasunori Goto Signed-off-by: Bob Picco Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 5cb248abf5ab65ab543b2d5fc16c738b28031fc0 Author: Mel Gorman Date: Wed Sep 27 01:49:52 2006 -0700 [PATCH] Have x86_64 use add_active_range() and free_area_init_nodes Size zones and holes in an architecture independent manner for x86_64. Signed-off-by: Mel Gorman Cc: Dave Hansen Cc: Andy Whitcroft Cc: Andi Kleen Cc: Benjamin Herrenschmidt Cc: Paul Mackerras Cc: "Keith Mannthey" Cc: "Luck, Tony" Cc: KAMEZAWA Hiroyuki Cc: Yasunori Goto Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 4cfee88ad30acc47f02b8b7ba3db8556262dce1e Author: Mel Gorman Date: Wed Sep 27 01:49:51 2006 -0700 [PATCH] Have x86 use add_active_range() and free_area_init_nodes Size zones and holes in an architecture independent manner for x86. [akpm@osdl.org: build fix] Signed-off-by: Mel Gorman Cc: Dave Hansen Cc: Andy Whitcroft Cc: Andi Kleen Cc: Benjamin Herrenschmidt Cc: Paul Mackerras Cc: "Keith Mannthey" Cc: "Luck, Tony" Cc: KAMEZAWA Hiroyuki Cc: Yasunori Goto Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit c67c3cb4c99fb2ee63c8733943c353d745f45b84 Author: Mel Gorman Date: Wed Sep 27 01:49:49 2006 -0700 [PATCH] Have Power use add_active_range() and free_area_init_nodes() Size zones and holes in an architecture independent manner for Power. [judith@osdl.org: build fix] Signed-off-by: Mel Gorman Cc: Dave Hansen Cc: Andy Whitcroft Cc: Andi Kleen Cc: Benjamin Herrenschmidt Cc: Paul Mackerras Cc: "Keith Mannthey" Cc: "Luck, Tony" Cc: KAMEZAWA Hiroyuki Cc: Yasunori Goto Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit c713216deebd95d2b0ab38fef8bb2361c0180c2d Author: Mel Gorman Date: Wed Sep 27 01:49:43 2006 -0700 [PATCH] Introduce mechanism for registering active regions of memory At a basic level, architectures define structures to record where active ranges of page frames are located. Once located, the code to calculate zone sizes and holes in each architecture is very similar. Some of this zone and hole sizing code is difficult to read for no good reason. This set of patches eliminates the similar-looking architecture-specific code. The patches introduce a mechanism where architectures register where the active ranges of page frames are with add_active_range(). When all areas have been discovered, free_area_init_nodes() is called to initialise the pgdat and zones. The zone sizes and holes are then calculated in an architecture independent manner. Patch 1 introduces the mechanism for registering and initialising PFN ranges Patch 2 changes ppc to use the mechanism - 139 arch-specific LOC removed Patch 3 changes x86 to use the mechanism - 136 arch-specific LOC removed Patch 4 changes x86_64 to use the mechanism - 74 arch-specific LOC removed Patch 5 changes ia64 to use the mechanism - 52 arch-specific LOC removed Patch 6 accounts for mem_map as a memory hole as the pages are not reclaimable. It adjusts the watermarks slightly Tony Luck has successfully tested for ia64 on Itanium with tiger_defconfig, gensparse_defconfig and defconfig. Bob Picco has also tested and debugged on IA64. Jack Steiner successfully boot tested on a mammoth SGI IA64-based machine. These were on patches against 2.6.17-rc1 and release 3 of these patches but there have been no ia64-changes since release 3. There are differences in the zone sizes for x86_64 as the arch-specific code for x86_64 accounts the kernel image and the starting mem_maps as memory holes but the architecture-independent code accounts the memory as present. The big benefit of this set of patches is a sizable reduction of architecture-specific code, some of which is very hairy. There should be a greater reduction when other architectures use the same mechanisms for zone and hole sizing but I lack the hardware to test on. Additional credit; Dave Hansen for the initial suggestion and comments on early patches Andy Whitcroft for reviewing early versions and catching numerous errors Tony Luck for testing and debugging on IA64 Bob Picco for fixing bugs related to pfn registration, reviewing a number of patch revisions, providing a number of suggestions on future direction and testing heavily Jack Steiner and Robin Holt for testing on IA64 and clarifying issues related to memory holes Yasunori for testing on IA64 Andi Kleen for reviewing and feeding back about x86_64 Christian Kujau for providing valuable information related to ACPI problems on x86_64 and testing potential fixes This patch: Define the structure to represent an active range of page frames within a node in an architecture independent manner. Architectures are expected to register active ranges of PFNs using add_active_range(nid, start_pfn, end_pfn) and call free_area_init_nodes() passing the PFNs of the end of each zone. Signed-off-by: Mel Gorman Signed-off-by: Bob Picco Cc: Dave Hansen Cc: Andy Whitcroft Cc: Andi Kleen Cc: Benjamin Herrenschmidt Cc: Paul Mackerras Cc: "Keith Mannthey" Cc: "Luck, Tony" Cc: KAMEZAWA Hiroyuki Cc: Yasunori Goto Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 2bd0cfbde2c0a74e209acbf045f1298cc2f61e01 Author: Andrew Morton Date: Wed Sep 27 01:49:42 2006 -0700 [PATCH] fix x86_64-mm-spinlock-cleanup We need processor.h for cpu_relax(). Cc: Andi Kleen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 133d205a18b7a4d8cb52959c5310f6664277cf61 Author: Alexey Dobriyan Date: Wed Sep 27 01:49:41 2006 -0700 [PATCH] Make kmem_cache_destroy() return void un-, de-, -free, -destroy, -exit, etc functions should in general return void. Also, There is very little, say, filesystem driver code can do upon failed kmem_cache_destroy(). If it will be decided to BUG in this case, BUG should be put in generic code, instead. Signed-off-by: Alexey Dobriyan Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 1a1d92c10dd24bbdc28b3d6e2d03ec199dd3a65b Author: Alexey Dobriyan Date: Wed Sep 27 01:49:40 2006 -0700 [PATCH] Really ignore kmem_cache_destroy return value * Rougly half of callers already do it by not checking return value * Code in drivers/acpi/osl.c does the following to be sure: (void)kmem_cache_destroy(cache); * Those who check it printk something, however, slab_error already printed the name of failed cache. * XFS BUGs on failed kmem_cache_destroy which is not the decision low-level filesystem driver should make. Converted to ignore. Signed-off-by: Alexey Dobriyan Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit f52720ca5f48574e347dff35ffe6b389ace61537 Author: Panagiotis Issaris Date: Wed Sep 27 01:49:39 2006 -0700 [PATCH] fs: Removing useless casts * Removing useless casts * Removing useless wrapper * Conversion from kmalloc+memset to kzalloc Signed-off-by: Panagiotis Issaris Acked-by: Dave Kleikamp Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit f8314dc60ccba7e41f425048c4160dc7f63377d5 Author: Panagiotis Issaris Date: Wed Sep 27 01:49:37 2006 -0700 [PATCH] fs: Conversions from kmalloc+memset to k(z|c)alloc Conversions from kmalloc+memset to kzalloc. Signed-off-by: Panagiotis Issaris Jffs2-bit-acked-by: David Woodhouse Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 32c2d2bc4bed61323f14f2a7d69ccbd567253d8a Author: Eric Sandeen Date: Wed Sep 27 01:49:36 2006 -0700 [PATCH] more ext3 16T overflow fixes Some of the changes in balloc.c are just cosmetic, as Andreas pointed out - if they overflow they'll then underflow and things are fine. 5th hunk actually fixes an overflow problem. Also check for potential overflows in inode & block counts when resizing. Signed-off-by: Eric Sandeen Cc: Mingming Cao Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit a4e4de36dc446b2193bdc8ebb96a96e44b69dd94 Author: Dave Kleikamp Date: Wed Sep 27 01:49:36 2006 -0700 [PATCH] ext3: Fix sparse warnings Fixing up some endian-ness warnings in preparation to clone ext4 from ext3. Signed-off-by: Dave Kleikamp Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit e9ad5620bfb901df8a7a2603c88689ededeecaf1 Author: Dave Kleikamp Date: Wed Sep 27 01:49:35 2006 -0700 [PATCH] ext3: More whitespace cleanups More white space cleanups in preparation of cloning ext4 from ext3. Removing spaces that precede a tab. Signed-off-by: Dave Kleikamp Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 7543fc7b3abfee8c6cd6349ebd5e5fde02fac984 Author: Vasily Averin Date: Wed Sep 27 01:49:33 2006 -0700 [PATCH] ext3: wrong error behavior SWsoft Virtuozzo/OpenVZ Linux kernel team has discovered that ext3 error behavior was broken in linux kernels since 2.5.x versions by the following patch: 2002/10/31 02:15:26-05:00 tytso@snap.thunk.org Default mount options from superblock for ext2/3 filesystems http://linux.bkbits.net:8080/linux-2.6/gnupatch@3dc0d88eKbV9ivV4ptRNM8fBuA3JBQ In case ext3 file system is mounted with errors=continue (EXT3_ERRORS_CONTINUE) errors should be ignored when possible. However at present in case of any error kernel aborts journal and remounts filesystem to read-only. Such behavior was hit number of times and noted to differ from that of 2.4.x kernels. This patch fixes this: - do nothing in case of EXT3_ERRORS_CONTINUE, - set EXT3_MOUNT_ABORT and call journal_abort() in all other cases - panic() should be called after ext3_commit_super() to save sb marked as EXT3_ERROR_FS Signed-off-by: Vasily Averin Acked-by: Kirill Korotaev Cc: Theodore Ts'o Cc: "Stephen C. Tweedie" Cc: Mingming Cao Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 36faadc144477b4929c8fe60b8053f4472eeb3d2 Author: Mingming Cao Date: Wed Sep 27 01:49:32 2006 -0700 [PATCH] ext3: more comments about block allocation/reservation code Signed-off-by: Mingming Cao Acked-by: Randy Dunlap Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 321fb9e81821a81b2cda1328698b0c19d57c717f Author: Mingming Cao Date: Wed Sep 27 01:49:32 2006 -0700 [PATCH] ext3: turn on reservation dump on block allocation errors In the past there were a few kernel panics related to block reservation tree operations failure (insert/remove etc). It would be very useful to get the block allocation reservation map info when such error happens. Signed-off-by: Mingming Cao Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 37ed322290eb6d5cf2ab33915793ed4219eae1d6 Author: Eric Sandeen Date: Wed Sep 27 01:49:31 2006 -0700 [PATCH] JBD: 16T fixes These are a few places I've found in jbd that look like they may not be 16T-safe, or consistent with the use of unsigned longs for block containers. Problems here would be somewhat hard to hit, would require journal blocks past the 8T boundary, which would not be terribly common. Still, should fix. (some of these have come from the ext4 work on jbd as well). I think there's one more possibility that the wrap() function may not be safe IF your last block in the journal butts right up against the 232 block boundary, but that seems like a VERY remote possibility, and I'm not worrying about it at this point. Signed-off-by: Eric Sandeen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit eee194e76c681dbdbf5024b889fda1181b66ef57 Author: Eric Sandeen Date: Wed Sep 27 01:49:30 2006 -0700 [PATCH] ext3: inode numbers are unsigned long This is primarily format string fixes, with changes to ialloc.c where large inode counts could overflow, and also pass around journal_inum as an unsigned long, just to be pedantic about it.... Signed-off-by: Eric Sandeen Cc: Mingming Cao Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 41f04d852e359582518f950d12b2287766613022 Author: Eric Sandeen Date: Wed Sep 27 01:49:30 2006 -0700 [PATCH] ext2: fix mounts at 16T Signed-off-by: Eric Sandeen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 855565e81ad8940cc645b5110ec2c7f124a76d23 Author: Eric Sandeen Date: Wed Sep 27 01:49:29 2006 -0700 [PATCH] fix ext3 mounts at 16T I need to do some actual IO testing now, but this gets things mounting for a 16T ext3 filesystem. (patched up e2fsprogs is needed too, I'll send that off the kernel list) This patch fixes these issues in the kernel: o sbi->s_groups_count overflows in ext3_fill_super() sbi->s_groups_count = (le32_to_cpu(es->s_blocks_count) - le32_to_cpu(es->s_first_data_block) + EXT3_BLOCKS_PER_GROUP(sb) - 1) / EXT3_BLOCKS_PER_GROUP(sb); at 16T, s_blocks_count is already maxed out; adding EXT3_BLOCKS_PER_GROUP(sb) overflows it and groups_count comes out to 0. Not really what we want, and causes a failed mount. Feel free to check my math (actually, please do!), but changing it this way should work & avoid the overflow: (A + B - 1)/B changed to: ((A - 1)/B) + 1 o ext3_check_descriptors() overflows range checks ext3_check_descriptors() iterates over all block groups making sure that various bits are within the right block ranges... on the last pass through, it is checking the error case [item] >= block + EXT3_BLOCKS_PER_GROUP(sb) where "block" is the first block in the last block group. The last block in this group (and the last one that will fit in 32 bits) is block + EXT3_BLOCKS_PER_GROUP(sb)- 1. block + EXT3_BLOCKS_PER_GROUP(sb) wraps back around to 0. so, make things clearer with "first_block" and "last_block" where those are first and last, inclusive, and use <, > rather than <, >=. Finally, the last block group may be smaller than the rest, so account for this on the last pass through: last_block = sb->s_blocks_count - 1; (a similar patch could be done for ext2; does anyone in their right mind use ext2 at 16T? I'll send an ext2 patch doing the same thing if that's warranted) Signed-off-by: Eric Sandeen Cc: Mingming Cao Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 2aed3484695ecb03f1395bb62f1099e8b0826124 Author: Alexey Dobriyan Date: Wed Sep 27 01:49:28 2006 -0700 [PATCH] jbd: use BUILD_BUG_ON in journal init Signed-off-by: Alexey Dobriyan Acked-by: Stephen Tweedie Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit ae6ddcc5f24d6b06ae9231dc128904750a4155e0 Author: Mingming Cao Date: Wed Sep 27 01:49:27 2006 -0700 [PATCH] ext3 and jbd cleanup: remove whitespace Remove whitespace from ext3 and jbd, before we clone ext4. Signed-off-by: Mingming Cao Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit e7ab8d65055e9b9dfc131d0467cfc5a8368d7ee4 Author: Josh Triplett Date: Wed Sep 27 01:49:26 2006 -0700 [PATCH] jbd: add lock annotation to jbd_sync_bh jbd_sync_bh releases journal->j_list_lock. Add a lock annotation to this function so that sparse can check callers for lock pairing, and so that sparse will not complain about this function since it intentionally uses the lock in this manner. Signed-off-by: Josh Triplett Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit bbf2bef9f50eb119ffadd735eb0966ac8a04f91f Author: KAMEZAWA Hiroyuki Date: Wed Sep 27 01:49:25 2006 -0700 [PATCH] fix "cpu to node relationship fixup: map cpu to node" Fix build error introduced by 3212fe1594e577463bc8601d28aa008f520c3377 Non-NUMA case should be handled. Signed-off-by: KAMEZAWA Hiroyuki Cc: Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit e5beac371af0af47bcbd6819f4c2a0a2721a1735 Author: Russell King Date: Wed Sep 27 16:13:48 2006 +0100 [ARM] do_bad_area() always takes current and current->active_mm Since do_bad_area() always takes the currently active task and (supposed to) take the currently active MM, there's no point passing them to this function. Instead, obtain references to them inside do_bad_area(). Signed-off-by: Russell King commit 80878d6c4ab8611a0edf139a7f8a7a64860b87c9 Author: Russell King Date: Wed Sep 27 15:43:47 2006 +0100 [ARM] Add setup_mm_for_reboot() for nommu Add an empty setup_mm_for_reboot() function for nommu machines. Signed-off-by: Russell King commit 0c668984ddff94f800b37f244d7b21074b04b971 Author: Russell King Date: Wed Sep 27 15:40:28 2006 +0100 [ARM] Rename mm-armv.c to pgd.c mm-armv.c now only contains the pgd allocation/freeing code, so rename it to have a more sensible filename. Signed-off-by: Russell King commit ae8f154129e4d965771c2d6adbe36210b3913d72 Author: Russell King Date: Wed Sep 27 15:38:34 2006 +0100 [ARM] Move rest of MMU setup code from mm-armv.c to mmu.c If we're going to have mmu.c for code which is specific to the MMU machines, we might as well move the other MMU initialisation specific code from mm-armv.c into this new file. This also allows us to make some functions static. Signed-off-by: Russell King commit d111e8f9644aa585c1a7e198d74a4d2682ef1374 Author: Russell King Date: Wed Sep 27 15:27:33 2006 +0100 [ARM] Split ARM MM initialisation for !mmu Move the MMU specific code from init.c into mmu.c, and add nommu fixups to nommu.c Signed-off-by: Russell King commit a09fc446fb6d541281d9559fe7215d7c0d3cc9ce Author: Franck Bui-Huu Date: Fri Aug 11 17:51:53 2006 +0200 [MIPS] setup.c: use early_param() for early command line parsing There's no point to rewrite some logic to parse command line to pass initrd parameters or to declare a user memory area. We could use instead parse_early_param() that does the same thing. Signed-off-by: Franck Bui-Huu Signed-off-by: Ralf Baechle commit 1c6fd44d7ed3d105b2eaa29d72b415ca51e40d32 Author: Franck Bui-Huu Date: Fri Aug 11 17:51:52 2006 +0200 [MIPS] setup.c: remove MAXMEM macro It doesn't improve readability. Signed-off-by: Franck Bui-Huu Signed-off-by: Ralf Baechle commit 8df32c636e785069ba7d223ceb9b72c182902295 Author: Franck Bui-Huu Date: Fri Aug 11 17:51:51 2006 +0200 [MIPS] setup.c: do not inline functions There's no point to inline any functions in setup.c. Let's GCC doing its job, it's good enough for that now. Signed-off-by: Franck Bui-Huu Signed-off-by: Ralf Baechle commit 8ff7bc4808f25e4dd75c3775dba313ddf35277e1 Author: Franck Bui-Huu Date: Fri Aug 11 17:51:50 2006 +0200 [MIPS] setup.c: remove useless includes. Signed-off-by: Franck Bui-Huu Signed-off-by: Ralf Baechle commit d2043ca8484d434201816267c0e23c5999df6cfd Author: Franck Bui-Huu Date: Fri Aug 11 17:51:49 2006 +0200 [MIPS] setup.c: move initrd code inside dedicated functions NUMA specific code could rely on them too. Signed-off-by: Franck Bui-Huu Signed-off-by: Ralf Baechle commit b6f1f0dea1469e0c956eb89399916d60dd2a3808 Author: Franck Bui-Huu Date: Fri Aug 11 17:51:48 2006 +0200 [MIPS] setup.c: cleanup bootmem_init() This function although doing simple thing is hard to follow. It's mainly due to: - a lot of #ifdef - bad local names - redundant tests So this patch try to address these issues. It also do not use max_pfn global which is marked as an unused exported symbol. As a bonus side, it's now really easy to see what part of the code is for no-numa system. There's also no point to make this function inline. Signed-off-by: Franck Bui-Huu Signed-off-by: Ralf Baechle commit b5943182592ba256639a569c7d5305cf60360733 Author: Franck Bui-Huu Date: Fri Aug 18 16:18:09 2006 +0200 [MIPS] get_wchan(): remove uses of mfinfo[64] This array was used to 'cache' some frame info about scheduler functions to speed up get_wchan(). This array was 1Ko size and was only used when CONFIG_KALLSYMS was set but declared for all configs. Rather than make the array statement conditional, this patches removes this array and its uses. Indeed the common case doesn't seem to use this array and get_wchan() is not a critical path anyways. It results in a smaller bss and a smaller/cleaner code: text data bss dec hex filename 2543808 254148 139296 2937252 2cd1a4 vmlinux-new-get-wchan 2544080 254148 143392 2941620 2ce2b4 vmlinux~old Signed-off-by: Franck Bui-Huu Signed-off-by: Ralf Baechle commit 29b376ff10aaea69ee4d93b70d0fbb2ebfd80f4e Author: Franck Bui-Huu Date: Fri Aug 18 16:18:08 2006 +0200 [MIPS] get_frame_info(): null function size means size is unknown This patch adds 2 sanity checks. The first one test that the start address of the function to analyze has been set by the caller. If not return an error since nothing usefull can be done without. The second one checks that the function's size has been set. A null size can happen if CONFIG_KALLSYMS is not set and it means that we don't know the size of the function to analyze. In this case, we make it equal to 128 instructions by default. Signed-off-by: Franck Bui-Huu Signed-off-by: Ralf Baechle commit 1fd6909802b837ed5510603846c0ce5938d296a1 Author: Franck Bui-Huu Date: Fri Aug 18 16:18:07 2006 +0200 [MIPS] unwind_stack(): return ra if an exception occured at the first instruction Signed-off-by: Franck Bui-Huu Signed-off-by: Ralf Baechle commit f83b854a1d2d28bc1ed86fec8a80940b59f8d932 Author: Ralf Baechle Date: Tue Sep 26 03:07:22 2006 +0100 [MIPS] Enable tmpfs for anything that possibly runs a full distribution. Signed-off-by: Ralf Baechle commit 36396f3c36b04f79438f87a0fccfa76aa3de6af9 Author: Ralf Baechle Date: Mon Sep 25 15:49:49 2006 +0100 [MIPS] s/__ASSEMBLER__/__ASSEMBLY__/ for clarity sake. Signed-off-by: Ralf Baechle commit e584ade1a6679bfb417620f15951796bed9805d9 Author: Ralf Baechle Date: Sat Sep 23 18:08:36 2006 +0100 [MIPS] Have headers_install install and . Signed-off-by: Ralf Baechle commit ddb1199c4cd74a02d70f4c297373400893d70aa9 Author: Richard Sandiford Date: Sun Sep 17 20:38:39 2006 +0100 [MIPS] fstatat syscall names MIPS is the only port to call its fstatat()-related syscalls "__NR_fstatat". Now I can see why that might be seen as every other port being wrong, but I think for o32, it is at best confusing. __NR_fstat provides a plain (32-bit) stat while __NR_fstatat provides a 64-bit stat. Changing the name to __NR_fstatat64 would make things more explicit, match x86, and make the glibc port slightly easier. The current name is more appropriate for n32 and n64, but it would be appropriate for other 64-bit targets too, and those targets have chosen to call it __NR_newfstatat instead. Using the same name for MIPS would again be more consistent and make the glibc port slightly easier. I'm not wedded to this idea if the current names are preferred, but FWIW... Signed-off-by: Richard Sandiford Signed-off-by: Ralf Baechle commit 63415dbb54fb929a6ea597f2f6b885d570225d90 Author: Richard Sandiford Date: Sun Sep 17 20:30:46 2006 +0100 [MIPS] The o32 fstatat syscall behaves differently on 32 and 64 bit kernels While working on a glibc patch to support the fstatat() functions[1], I noticed that the o32 implementation behaves differently on 32-bit and 64-bit kernels; the former provides a stat64 while the latter provides a plain (o32) stat. I think the former is what's intended, as there is no separate fstatat64. It's also what x86 does. I think this is just a case of a compat too far. [1] I've seen Khem's patch, but I don't think it's right. Signed-off-by: Richard Sandiford Signed-off-by: Ralf Baechle commit d48f1de2d8170814fb64effa320848410c466f95 Author: Ralf Baechle Date: Wed Sep 20 20:56:02 2006 +0100 [MIPS] Remove EV96100 as previously announced. Signed-off-by: Ralf Baechle commit 432bef2a31668a0562e5738eaa59a43854f26567 Author: Ralf Baechle Date: Fri Sep 8 04:16:21 2006 +0200 [MIPS] Replace BARRIER with more appropriate hazard barrier. This is the unchanged part 2 of Chris' hazard cleanup. Signed-off-by: Ralf Baechle commit d7d86aa88a1f3922b85e39edd8a6d6c01e939842 Author: Ralf Baechle Date: Fri Sep 8 04:13:49 2006 +0200 [MIPS] Cleanup hazard handling. Mostly based on patch by Chris Dearman and cleanups from Yoichi. Signed-off-by: Ralf Baechle commit da79e827d4164ba1b961b62774800a8a52a3b6e4 Author: Ralf Baechle Date: Thu Sep 7 02:29:57 2006 +0200 [MIPS] IP27: Delete useless declaration of allocate_irqno(). Signed-off-by: Ralf Baechle commit 9dbd7b9142e95867ee8a56da5d45c72884c107d3 Author: Peter Watkins Date: Wed Aug 23 11:15:49 2006 -0400 [MIPS] Fix USER_PTRS_PER_PGD for 64K page size. The code in pgtable-64.h assumes TASK_SIZE is always bigger than a first level PGDIR_SIZE. This is not the case for 64K pages, where task size is 40 bits (1TB) and a pgd entry can map 42 bits. This leads to USER_PTRS_PER_PGD being zero for 64K pages. Signed-off-by: Peter Watkins Signed-off-by: Ralf Baechle commit 663c3d9009c1a41194b8390abdcea61e3ade1c8f Author: thomas@koeller.dyndns.org Date: Sun Aug 27 13:51:48 2006 +0200 [MIPS] Add configuration variables for RM9xxx processor This patch introduces a number of configuration variables. These allow to specify presence/absence of integrated peripherals found on the MIPS RM9xxx processor family, based on the particular processor model used. Signed-off-by: Thomas Koeller Signed-off-by: Ralf Baechle commit 0c68a9b6a7da0cc9095c117bea573f9058b00fff Author: thomas@koeller.dyndns.org Date: Sun Aug 27 13:54:31 2006 +0200 [MIPS] Move excite_fpga.h to include/asm-mips/mach-excite excite_fpga.h, like all platform headers, really belongs in the platform header directory. Signed-off-by: Thomas Koeller Signed-off-by: Ralf Baechle commit 48712a96e31d11dce6dcb2a886894bd4d8b890f1 Author: thomas@koeller.dyndns.org Date: Sun Aug 27 13:53:16 2006 +0200 [MIPS] Suppress compiler warnings The excite platform exports hardware resources for device drivers to use. Any driver wanting to use these resources will look up them by their names. Since these resources are declared to have static linkage, but are not used in the source file defining them, the compiler used to emit an 'unused' warning, which this patch suppresses. Signed-off-by: Thomas Koeller Signed-off-by: Ralf Baechle commit 6b8aab09309c577318f8484fce401e5c3546bb3b Author: Ralf Baechle Date: Fri Aug 25 12:34:33 2006 +0100 [MIPS] Reformat missformated SMTC bits. Signed-off-by: Ralf Baechle commit 3c70f12bfaec6e1a1c4bfb94aec0c17675bc9310 Author: Atsushi Nemoto Date: Sun Aug 20 00:33:38 2006 +0900 [MIPS] Qemu does not have D-cache aliases Signed-off-by: Atsushi Nemoto Signed-off-by: Ralf Baechle commit bdb37c8d63f9455cd2ea505d62d0d6de221f3c76 Author: Yoichi Yuasa Date: Wed Aug 16 23:10:00 2006 +0900 [MIPS] Remove F_SETSIG and F_GETSIG in favor of the asm-generic definitions. Signed-off-by: Yoichi Yuasa Signed-off-by: Ralf Baechle commit 633fd568c1db825b9eb563681af09260ecee87b6 Author: Ralf Baechle Date: Fri Aug 4 01:49:31 2006 +0100 [MIPS] Move definition of IRIX compat constant into IRIX compat code. Signed-off-by: Ralf Baechle commit 6b3e5f44b56745daad8cd913ccc7bcd9a9ece5ea Author: Yoichi Yuasa Date: Mon Jul 31 23:01:37 2006 +0900 [MIPS] Use common definitions from asm-generic/signal.h Signed-off-by: Yoichi Yuasa Signed-off-by: Ralf Baechle commit a00f6310183e164ad2cfa5f4ec5d8c724ff0f799 Author: Ralf Baechle Date: Tue Aug 1 23:39:42 2006 +0100 [MIPS] c-r4k: Convert init functions from inline to __init. With more recent compilers inline doesn't necessarily means a function will always be inlined. So leave that decission to the compiler and make the function as __init. Signed-off-by: Ralf Baechle commit 06be375b9ae237b295648980e8a52048ab640f92 Author: Ralf Baechle Date: Tue Sep 19 17:18:53 2006 +0100 [MIPS] TLS: set_thread_area returns asmlinkage int not void. Signed-off-by: Ralf Baechle commit 717736d4d73f8966fcc9802732f52f9e85830247 Author: Ralf Baechle Date: Tue Sep 19 17:16:56 2006 +0100 [MIPS] TLS: Delete unused sys32_set_thread_area There is no need for a compat version. Signed-off-by: Ralf Baechle commit 00932ba3052a84ed73fab34ff1ec5a413b77fbab Author: Ralf Baechle Date: Sat Sep 16 01:29:37 2006 +0100 [MIPS] Make PROT_WRITE imply PROT_READ. commit fc095a902181b72ce77a10feb7b36ba1cbacd736 Author: Maciej W. Rozycki Date: Tue Sep 12 19:12:18 2006 +0100 [MIPS] Atlas: update interrupt handling The following change updates the Atlas interrupt handling to match that of Malta. Tested with a 5Kc and a 34Kf successfully. Signed-off-by: Maciej W. Rozycki Signed-off-by: Ralf Baechle commit 3ee24e1b1e0b5ae413a85ba63677a7110915e3af Author: Maciej W. Rozycki Date: Tue Sep 12 19:02:44 2006 +0100 [MIPS] Atlas: Fix building the RTC driver Atlas maps its RTC chip in the host mmio space rather than using the "traditional" location in the PCI/ISA port space. A change that has happened to the generic RTC header requires to define ARCH_RTC_LOCATION now. Signed-off-by: Maciej W. Rozycki Signed-off-by: Ralf Baechle commit 846acaa2b4974ae2e28038d024dedcfc184efbb7 Author: Kevin D. Kissell Date: Tue Sep 12 12:08:08 2006 +0200 [MIPS] Patch to arch/mips/mips-boards/generic/time.c In hooking up the perf counter overflow interrupt to the experimental deprecated-real-soon-now /proc/perf interface last night, I had to revisit arch/mips/mips-boards/generic/time.c, and discovered that when the 2.6.9-based SMTC prototype was merged with the more recent tree, it was missed that arch/mips/kernel/time.c had changed so that even in SMP kernels, timer_interrupt() calls local_timer_interrupt(), so there is no longer a need to invoke it directly from mips_timer_interrupt() in those cases where timer_interrupt() has been called. So I got rid of that, and added the invocation of perf_irq() if Cause.PCI is set, more-or-less following the same logic as in the non-SMTC case, with the modifications that (a) a runtime check for Release 2 isn't done, because it's redundant in SMTC), and (b) we check for a clock interrupt regardless of the value returned by the perf counter service - I don't understand why we'd want to control that with perf_irq(), but maybe one of you knows the story. I also got rid of the stupid warning about the unused variable when compiled for SMTC (another artifact of the merge). The result hasn't been beaten to death, but boots, seems stable, and supports extended precision event counting. Signed-off-by: Kevin D. Kissell Signed-off-by: Ralf Baechle commit 60a6c3777ec607c5b19df9eac35088db4e142a6b Author: Atsushi Nemoto Date: Thu Jun 8 01:09:01 2006 +0900 [MIPS] Reduce race between cpu_wait() and need_resched() checking If a thread became runnable between need_resched() and the WAIT instruction, switching to the thread will delay until a next interrupt. Some CPUs can execute the WAIT instruction with interrupt disabled, so we can get rid of this race on them (at least UP case). Original Patch by Atsushi with fixing up for MIPS Technology's cores by Ralf based on feedback from the RTL designers. Signed-off-by: Atsushi Nemoto Signed-off-by: Ralf Baechle commit 7fdeb048141b363a23b8cf6f6a226d74aca4d724 Author: Atsushi Nemoto Date: Wed Sep 6 22:42:02 2006 +0900 [MIPS] Wire up set_robust_list(2) and get_robust_list(2) Signed-off-by: Atsushi Nemoto Signed-off-by: Ralf Baechle commit 8f9a2b324644d3f8c233287f0a7764d61655cda4 Author: Atsushi Nemoto Date: Thu Sep 7 01:00:22 2006 +0900 [MIPS] Fix errors detected by "make headers_check" * export asm/sgidefs.h * include asm/isadep.h only if in kernel * do not export contents of asm/timex.h and asm/user.h Signed-off-by: Atsushi Nemoto Signed-off-by: Ralf Baechle commit d34555fb20e7abf33f86d7aa3ec0826343f38256 Author: Ralf Baechle Date: Thu Aug 31 19:39:09 2006 +0100 [MIPS] Do not lose upper 32-bit on MIPS32 with 64-bit addresses in __pte(). Signed-off-by: Ralf Baechle commit 65316fd13ad9d82560edbad0a940d684380f7461 Author: Ralf Baechle Date: Thu Aug 31 14:16:06 2006 +0100 [MIPS] Replace generic__raw_read_trylock usage generic__raw_read_trylock() is a defect generic function actually doing a __raw_read_lock ... Signed-off-by: Ralf Baechle commit 09f451bfb9fe5ceea763a9ebd6ec73dd05e4faf8 Author: Maciej W. Rozycki Date: Wed Aug 30 14:29:57 2006 +0100 [MIPS] SEAD defconfig build fix Signed-off-by: Maciej W. Rozycki Signed-off-by: Ralf Baechle commit 32136568a9828c27c07eedb8d2b3e3d9fe8d87ba Author: Alexander Bigga Date: Tue Aug 29 16:48:34 2006 +0200 [MIPS] Fix for pci config_access on alchemy au1x000 I've encountered a serious problem with PCI config space access on Au1x000 platforms with recent 2.6.x-kernel. With 2.4.31 the same hardware works fine. So I was looking for the differences: Symptoms: - no PCI-device is seen on bootup though two or three cards are present - lspci output is empty - OR: lspci shows 20 times the same device (- OR: in some slot-configurations it worked anyhow) System(s): 1. platform with Au1500 and three PCI-devices (actually a mycable XXS1500 with backplane for three PCI-devices) 2. platform with Au1550 and two PCI-devices (custom board) Debugging: I digged down to the config_access() of the au1xxx-processors in arch/mips/pci/ops-au1000.c and switched on DEBUG. The code of config_access() seems to be almost the same as of the 2.4.x-kernel. But the "pci_cfg_vm->addr" returned by get_vm_area(0x2000, 0) once on booting is different. That's of course not forbidden. But the alignment seems to be wrong. In my case, I received: 2.4.31: pci_cfg_vm->addr = c0000000 2.6.18-rc5: pci_cfg_vm->addr = c0101000 To make it short: With 2.6.x it fails on the first config-access with: "PCI ERR detected: status 83a00356". Fixup: My fix is now, to use the VM_IOREMAP-flag in the get_vm_area call. This flag seems to be introduced in mm/vmalloc.c a long time ago (in 2.6.7-bk13, I found in gitweb). Now, the returned address is pci_cfg_vm->addr = c0104000 and everything works fine. Signed-off-by: Ralf Baechle commit 898d229107f7aa8ea45685c11e2930783755f9ba Author: Atsushi Nemoto Date: Tue Aug 29 12:10:22 2006 +0900 [MIPS] Make prepare_frametrace() not clobber v0 Since lmo commit 323a380bf9e1a1679a774a2b053e3c1f2aa3f179 ("Simplify dump_stack()") made prepare_frametrace() always inlined, using $2 (v0) in __asm__ is not safe anymore. We can use $1 (at) instead. Also we should use "dla" instead of "la" for 64-bit kernel. Signed-off-by: Atsushi Nemoto Signed-off-by: Ralf Baechle commit f6502791d780b22fc147150137704a07a05ba361 Author: Atsushi Nemoto Date: Fri Aug 25 17:55:31 2006 +0900 [MIPS] Do not use drop_mmu_context to flusing other task's VIPT I-cache. c-r4k.c and c-sb1.c use drop_mmu_context() to flush virtually tagged I-caches, but this does not work for flushing other task's icache. This is for example triggered by copy_to_user_page() called from ptrace(2). Use indexed flush for such cases. Signed-off-by: Atsushi Nemoto Signed-off-by: Ralf Baechle commit a94d702049569401c65b579d0751ce282f962b41 Author: Elizabeth Oldham Date: Thu Aug 17 12:39:21 2006 +0100 [MIPS] MT: Fix setting of XTC. XTC can only be set if VPA is clear, which it may not be. There is also the possibility of a back to back c0 register access hazard to take care of. Signed-off-by: Ralf Baechle commit 6e74bae9a0c2fc59ffb0e25fec074b4ac0ac7048 Author: Ralf Baechle Date: Wed Aug 16 14:05:11 2006 +0100 [MIPS] SMTC Build fix. Signed-off-by: Ralf Baechle commit dc41fb43966ae1318fe34a8e5f959924a7c05d81 Author: Ralf Baechle Date: Wed Aug 16 00:59:40 2006 +0100 [MIPS] Fix 32-bit kernel by replacing 64-bit-only code. dclz() expects its 64-bit argument being passed as a single register but on 32-bit kernels it'll actually be in a register pair. Signed-off-by: Ralf Baechle commit 73b76c78fdf3a25faecbffb52c925950d46152b6 Author: Ralf Baechle Date: Tue Aug 15 19:36:40 2006 +0100 [MIPS] MT: When doing "select SMP" also select SMP's prerequesites or ... ... kconfig will do weird stuff. Signed-off-by: Ralf Baechle commit c487d2a5a03163a1e0bd35ea72f7e5a6bd8b0d56 Author: Ralf Baechle Date: Sat Aug 12 22:56:03 2006 +0100 [MIPS] eXcite: Don't set SERIAL_RM9000. The driver has not been merged yet so selecting it results in a warning message. Signed-off-by: Ralf Baechle commit 585fa72493edd7d5acb308806e7bb609412c6228 Author: Ralf Baechle Date: Sat Aug 12 16:40:08 2006 +0100 [MIPS] Retire flush_icache_page from mm use. On the 34K the redundant cache operations were causing excessive stalls resulting in realtime code running on the second VPE missing its deadline. For all other platforms this patch is just a significant performance improvment as illustrated by below benchmark numbers. Processor, Processes - times in microseconds - smaller is better ------------------------------------------------------------------------------ Host OS Mhz null null open slct sig sig fork exec sh call I/O stat clos TCP inst hndl proc proc proc --------- ------------- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- 25Kf 2.6.18-rc4 533 0.49 1.16 7.57 33.4 30.5 1.34 12.4 5497 17.K 54.K 25Kf 2.6.18-rc4-p 533 0.49 1.16 6.68 23.0 30.7 1.36 8.55 5030 16.K 48.K 4Kc 2.6.18-rc4 80 4.21 15.0 131. 289. 261. 16.5 258. 18.K 70.K 227K 4Kc 2.6.18-rc4-p 80 4.34 13.1 128. 285. 262. 18.2 258. 12.K 52.K 176K 34Kc 2.6.18-rc4 40 5.01 14.0 61.6 90.0 477. 17.9 94.7 29.K 108K 342K 34Kc 2.6.18-rc4-p 40 4.98 13.9 61.2 89.7 475. 17.6 93.7 8758 44.K 158K BCM1480 2.6.18-rc4 700 0.28 0.60 3.68 5.92 16.0 0.78 5.08 931. 3163 15.K BCM1480 2.6.18-rc4-p 700 0.28 0.61 3.65 5.85 16.0 0.79 5.20 395. 1464 8385 TX49-16K 2.6.18-rc3 197 0.73 2.41 19.0 37.8 82.9 2.94 17.5 4438 14.K 56.K TX49-16K 2.6.18-rc3-p 197 0.73 2.40 19.9 36.3 82.9 2.94 23.4 2577 9103 38.K TX49-32K 2.6.18-rc3 396 0.36 1.19 6.80 11.8 41.0 1.46 8.17 2738 8465 32.K TX49-32K 2.6.18-rc3-p 396 0.36 1.19 6.82 10.2 41.0 1.46 8.18 1330 4638 18.K Original patch by me with enhancements by Atsushi Nemoto. Signed-off-by: Ralf Baechle Signed-off-by: Atsushi Nemoto commit 13fdd31abec5f48cf97693bd14d2e11e0779b4ca Author: Ralf Baechle Date: Tue Aug 8 03:47:01 2006 +0100 [MIPS] Avoid double signal restarting. In entry.S resume_userspace ... jal do_notify_resume form a loop through which the kernel will iterate as long as work is pending. If we iterate through this loop more than once with no signal pending for at least one but the last iteration we will take do the syscall restarting multiple times resulting in a syscall return prior to the the syscall instruction in userspace. This may happen when debugging a multithreaded program. Debugging and original fix by Maciej; extended to other ABIs by me. Signed-off-by: Maciej W. Rozycki Signed-off-by: Ralf Baechle commit 847b9dfccad7dd34b2e44b1c6ceeb1c4cb88084a Author: Chris Dearman Date: Mon Aug 7 15:08:01 2006 +0100 [MIPS] MT: Initialise all writable bits in Cause register to zero. Recent 34Ks come out of reset with WP enabled on VPE 1 so we take an immediate exception when starting the second VPE. Signed-off-by: Chris Dearman Signed-off-by: Ralf Baechle commit bca70d24c09b740d6fd96b972011644cba8383d6 Author: Yoichi Yuasa Date: Mon Jul 31 23:05:04 2006 +0900 [MIPS] Fix EV64120 PCI fixup in Makefile Signed-off-by: Yoichi Yuasa Signed-off-by: Ralf Baechle commit 45887e12f21780f00b861fdaff8e9d02a42eeb0f Author: Ralf Baechle Date: Thu Aug 3 21:54:13 2006 +0100 [MIPS] Add missing returns in signal code. Signed-off-by: Ralf Baechle commit 1b223c861fd98080c2483f196b2496ac1f06f308 Author: Ralf Baechle Date: Thu Aug 3 21:53:10 2006 +0100 [MIPS] IRIX: Crapectopy. Signed-off-by: Ralf Baechle commit 048c6140c0f5d0bb1af8308c91dfa560ac65a296 Author: Ralf Baechle Date: Thu Aug 3 19:36:37 2006 +0100 [MIPS] Don't call try_to_freeze in do_signal & co. Signed-off-by: Ralf Baechle commit b4b30a5a0a270e6b3fef88373ad35d235a047fc1 Author: Ralf Baechle Date: Thu Aug 3 17:34:24 2006 +0100 [MIPS] Cleanup leftovers of ARCH_HAS_IRQ_PER_CPU CONFIG_IRQ_PER_CPU now controls the IRQ_PER_CPU stuff. Signed-off-by: Ralf Baechle commit 4d157d5eac29d7d5559fdcabf20f3961bc5cb3e7 Author: Franck Bui-Huu Date: Thu Aug 3 09:29:21 2006 +0200 [MIPS] Improve unwind_stack() This patch allows unwind_stack() to return ra for leaf function. But it tries to detects cases where get_frame_info() wrongly consider nested function as a leaf one. It also pass 'unsinged long *sp' instead of 'unsigned long **sp' as second parameter. The code looks cleaner. Signed-off-by: Franck Bui-Huu Signed-off-by: Ralf Baechle commit 0cceb4aa9acf6192a5f02134e764b1feeea8b9de Author: Franck Bui-Huu Date: Thu Aug 3 09:29:20 2006 +0200 [MIPS] Make get_frame_info() more robust Now get_frame_info() wants to detect move sp instruction first. It assumes that the save ra in the stack instruction can't happen before allocating frame size space into the stack. Signed-off-by: Franck Bui-Huu Signed-off-by: Ralf Baechle commit 1666a6fc73f724cdc6bd7d699f9ada4b04953efe Author: Franck Bui-Huu Date: Thu Aug 3 09:29:19 2006 +0200 [MIPS] Simplify dump_stack() Make dump_stack() code not depend on CONFIG_KALLSYMS. It also make prepare_frametrace() always inlined to get less false entries reported by show_raw_backtrace(). Signed-off-by: Franck Bui-Huu Signed-off-by: Ralf Baechle commit 6057a7987608941a203f40f8b53513af433d8d2f Author: Franck Bui-Huu Date: Thu Aug 3 09:29:18 2006 +0200 [MIPS] Make frame_info_init() more readable. Signed-off-by: Franck Bui-Huu Signed-off-by: Ralf Baechle commit 87151ae39bf5556abe83d69af0be9580c32c501b Author: Franck Bui-Huu Date: Thu Aug 3 09:29:17 2006 +0200 [MIPS] Miscellaneous cleanup in prologue analysis code We usually use backtrace term for dumping a call tree during debug. Therefore this patch renames show_frametrace() into show_backtrace() and show_trace() into show_raw_backtrace(). It also uses the new function print_ip_sym(). Signed-off-by: Franck Bui-Huu Signed-off-by: Ralf Baechle commit cf495a333093a1c0eca90c7d8d98313a3b7f01a1 Author: Franck Bui-Huu Date: Thu Aug 3 09:29:16 2006 +0200 [MIPS] Remove unused MODULE_RANGE macro. Signed-off-by: Franck Bui-Huu Signed-off-by: Ralf Baechle commit c0efbb6dc2726785482d85a284c883d541a6e0be Author: Franck Bui-Huu Date: Thu Aug 3 09:29:15 2006 +0200 [MIPS] Make get_frame_info() more readable. Signed-off-by: Atsushi Nemoto Signed-off-by: Franck Bui-Huu Signed-off-by: Ralf Baechle commit df586d59a4f069bb60a94ff4e5b64fe5c876f72c Author: Ralf Baechle Date: Tue Aug 1 23:42:30 2006 +0100 [MIPS] c-r4k: Typo fix. Signed-off-by: Ralf Baechle commit 1b4ee40a1330cad05e1cf65b60d8c82732bcafba Author: Peter Watkins Date: Thu Jul 27 16:05:49 2006 -0400 [MIPS] N32 rt_sigqueueinfo uses O32 padding, not N64 Signed-off-by: Ralf Baechle commit f66686f70a2a61e53ee8c2284f75ca342e4c0dc8 Author: Atsushi Nemoto Date: Sat Jul 29 23:27:20 2006 +0900 [MIPS] dump_stack() based on prologue code analysis Instead of dump all possible address in the stack, unwind the stack frame based on prologue code analysis, as like as get_wchan() does. While the code analysis might fail for some reason, there is a new kernel option "raw_show_trace" to disable this feature. Signed-off-by: Atsushi Nemoto Signed-off-by: Ralf Baechle commit 79495d876c2074af5552a0c4b7aea600c2320e83 Author: Yoichi Yuasa Date: Wed Jul 26 23:34:19 2006 +0900 [MIPS] db1x00: Remove unused mirage_ts.c CONFIG_WM97XX_COMODULE doesn't exist. Signed-off-by: Yoichi Yuasa Signed-off-by: Ralf Baechle commit e889d78fd5775d0b466f570928f5b0f0c9f05355 Author: Atsushi Nemoto Date: Tue Jul 25 23:51:36 2006 +0900 [MIPS] Rearrange show_stack, show_trace Print call-trace in show_stack() (like on other archs). Also make show_trace() static and simplify its argument list. Signed-off-by: Atsushi Nemoto Signed-off-by: Ralf Baechle commit e7dee3cea4dcd54744cf68864784c1336a42144f Author: Yoichi Yuasa Date: Tue Jul 25 23:26:09 2006 +0900 [MIPS] Updat mpc30x defconfig Signed-off-by: Yoichi Yuasa Signed-off-by: Ralf Baechle commit bbbdb8567e972f39a377a0bbd10b78b5b1ba4657 Author: Yoichi Yuasa Date: Tue Jul 25 23:24:54 2006 +0900 [MIPS] Updat workpad defconfig Signed-off-by: Yoichi Yuasa Signed-off-by: Ralf Baechle commit 53a73347faa38d3e80b46fc3c1999ee6bfbadbef Author: Yoichi Yuasa Date: Tue Jul 25 23:24:47 2006 +0900 [MIPS] Update e55 defconfig Signed-off-by: Yoichi Yuasa Signed-off-by: Ralf Baechle commit d4fd1989ea142be620978dcac2e1b86929f3237a Author: Maxime Bizon Date: Thu Jul 20 18:52:02 2006 +0200 [MIPS] Honour "panic_on_oops" sysctl. Signed-off-by: Maxime Bizon Signed-off-by: Ralf Baechle commit bda3028813bd07f34f30288a492fbf6f7b8712dd Author: Jeff Garzik Date: Wed Sep 27 05:41:13 2006 -0400 [libata] Don't use old-EH ->eng_timeout() hook when not needed The PATA driver set got converted to the new error handling setup, but the old hooks were accidentally left in place. Now, removed. Signed-off-by: Jeff Garzik commit 33573c0e3243aaa38b6ad96942de85a1b713c2ff Author: Paul Mundt Date: Wed Sep 27 18:37:30 2006 +0900 sh: Fix occasional flush_cache_4096() stack corruption. IRQs disabling in flush_cache_4096 for cache purge. Under certain workloads we would get an IRQ in the middle of a purge operation, and the cachelines would remain in an inconsistent state, leading to occasional stack corruption. Signed-off-by: Takeo Takahashi Signed-off-by: Paul Mundt commit f3c2575818fab45f8609e4aef2e43ab02b3a142e Author: Paul Mundt Date: Wed Sep 27 18:36:17 2006 +0900 sh: Calculate shm alignment at runtime. Set the SHM alignment at runtime, based off of probed cache desc. Optimize get_unmapped_area() to only colour align shared mappings. Signed-off-by: Paul Mundt commit 87b0ef91b6f27c07bf7dcce8584437481f473092 Author: Paul Mundt Date: Wed Sep 27 18:34:41 2006 +0900 sh: dma-mapping compile fixes. Silly bug, make it build again.. Signed-off-by: Paul Mundt commit 19f9a34f87c48bbd270d617d1c986d0c23866a1a Author: Paul Mundt Date: Wed Sep 27 18:33:49 2006 +0900 sh: Initial vsyscall page support. This implements initial support for the vsyscall page on SH. At the moment we leave it configurable due to having nommu to support from the same code base. We hook it up for the signal trampoline return at present, with more to be added later, once uClibc catches up. Signed-off-by: Paul Mundt commit 8c12b5dc13bf8516303a8224ab4e9708b33d5b00 Author: Paul Mundt Date: Wed Sep 27 18:31:06 2006 +0900 sh: Clean up PAGE_SIZE definition for assembly use. We want to be able to use PAGE_SIZE all over the place, this is the same approach adopted by other architectures.. Signed-off-by: Paul Mundt commit 28ccf7f91b1ac42ee1f18480a69d2a7486b625ce Author: Paul Mundt Date: Wed Sep 27 18:30:07 2006 +0900 sh: Selective flush_cache_mm() flushing. flush_cache_mm() wraps in to flush_cache_all(), which is rather excessive given that the number of PTEs within the specified context are generally quite low. Optimize for walking the mm's VMA list and selectively flushing the VMA ranges from the dcache. Invalidate the icache only if a VMA sets VM_EXEC. Signed-off-by: Paul Mundt commit d15f456043175bdf3464514b92a825b88d0546ae Author: Paul Mundt Date: Wed Sep 27 18:28:34 2006 +0900 sh: More intelligent entry_mask/way_size calculation. Figure out the cache desc entry_mask at runtime, and remove hard-coded assumption about the cacheline size. Signed-off-by: Paul Mundt commit 72c35543f8cf1316773ffbd9619575bb84ac44fb Author: Paul Mundt Date: Wed Sep 27 18:27:43 2006 +0900 sh: Support for L2 cache on newer SH-4A CPUs. This implements preliminary support for the L2 caches found on newer SH-4A CPUs. Signed-off-by: Paul Mundt commit 9d549a7d8ef71f684a35cf1e438543957cf81d12 Author: Paul Mundt Date: Wed Sep 27 18:26:05 2006 +0900 sh: Update kexec support for API changes. This was falling a bit behind.. Signed-off-by: Paul Mundt commit 05ae91585167410dadd1bc8f2e207a062e638a16 Author: Paul Mundt Date: Wed Sep 27 18:25:24 2006 +0900 sh: Optimized readsl()/writesl() support. Implement optimized copies of readsl()/writesl(). Signed-off-by: Paul Mundt commit 2220d164933a8776d1336c814e3c2e5573256d34 Author: Paul Mundt Date: Wed Sep 27 18:24:28 2006 +0900 sh: Report movli.l/movco.l capabilities. Add llsc to cpu_flags[] and comment cpu-features.h. Signed-off-by: Jamie Lenehan Signed-off-by: Paul Mundt commit 315bb96824149614efe4844ded077a13fc908880 Author: Paul Mundt Date: Wed Sep 27 18:22:53 2006 +0900 sh: CPU flags in AT_HWCAP in ELF auxvt. Encode processor flags in AT_HWCAP in the ELF auxiliary vector. Signed-off-by: Paul Mundt commit a6a31139897a5e539efe7ad3b7bd351fa9673ce8 Author: Paul Mundt Date: Wed Sep 27 18:22:14 2006 +0900 sh: Add support for 4K stacks. This enables support for 4K stacks on SH. Currently this depends on DEBUG_KERNEL, but likely all boards will switch to this as the default in the future. Signed-off-by: Paul Mundt commit 2cb7ce3bb384f30a377f66336c78546b834604df Author: Paul Mundt Date: Wed Sep 27 18:20:58 2006 +0900 sh: Enable /proc/kcore support. This was previously unimplemented.. Signed-off-by: Paul Mundt commit d153ea88dccf003173315b5d21acabebb897fb4a Author: Paul Mundt Date: Wed Sep 27 18:20:16 2006 +0900 sh: stack debugging support. This adds a DEBUG_STACK_USAGE and DEBUG_STACKOVERFLOW for SH. Signed-off-by: Paul Mundt commit 7a440c950efb5cdc8a05cc6c3ec8fc864b60ef77 Author: Paul Mundt Date: Wed Sep 27 18:18:31 2006 +0900 sh: select CONFIG_EMBEDDED. This solution isn't very optimal, but it's generaly the behaviour that we want.. Signed-off-by: Paul Mundt commit 2c7834a6f15fe6c50ed4766f1bb6f9183b9e2740 Author: Paul Mundt Date: Wed Sep 27 18:17:31 2006 +0900 sh: machvec rework. Some more machvec overhauling and setup code cleanup. Kill off get_system_type() and platform_setup(), we can do these both through the machvec. While we're add it, kill off more useless mach.c's and drop some legacy cruft from setup.c. Signed-off-by: Paul Mundt commit 456335e2072fb35bf290b45e61d51916c322c145 Author: Russell King Date: Wed Sep 27 10:00:54 2006 +0100 [ARM] Separate page table manipulation code from bootmem initialisation nommu does not require the page table manipulation code in the bootmem initialisation paths. Move this into separate inline functions. Signed-off-by: Russell King commit bc8fb5d0471473f775378d09db712dcb8eeece75 Author: Paul Mundt Date: Wed Sep 27 18:09:34 2006 +0900 sh: Solution Engine SH7343 board support. This adds support for the SE7343 board. Signed-off-by: Paul Mundt commit 91b91d01416afba8d3f230a62b5d2784bd7af94a Author: Paul Mundt Date: Wed Sep 27 18:08:33 2006 +0900 sh: SH7710VoIPGW board support. This adds support for the SH7710 VoIP Gateway board. Signed-off-by: Paul Mundt commit 49c3f807f5734605c10cdfb462a8fd5c3075eb76 Author: Paul Mundt Date: Wed Sep 27 18:04:36 2006 +0900 sh: Enable verbose BUG() support. Add SH to the list of platforms interested in Verbose BUG(). Signed-off-by: Paul Mundt commit 8599cf059209de22dd3be16816b90f1aad10c74a Author: Paul Mundt Date: Wed Sep 27 18:03:34 2006 +0900 sh: Cleanup IRQ disabling for hardirq handlers. The generic hardirq layer already takes care of a lot of the appropriate locking and disabling for us, no need to duplicate it in the handlers.. Signed-off-by: Paul Mundt commit ba463937ef75bceaf3943edf01f849257c68623a Author: Paul Mundt Date: Wed Sep 27 18:01:16 2006 +0900 sh: maskreg IRQ support. Formerly implemented by ADX, we can use this generically, so move it over. Signed-off-by: Paul Mundt commit 5a4053b23262afefa748e1e4c439931d4c27693b Author: Paul Mundt Date: Wed Sep 27 18:00:19 2006 +0900 sh: Kill off dead boards. None of these have been maintained in years, and no one seems to be interested in doing so, so just get rid of them. Signed-off-by: Paul Mundt commit f118420be83c3ce7888fe1d42db84af495da9edb Author: Paul Mundt Date: Wed Sep 27 17:53:59 2006 +0900 watchdog: Add a simple mmap() stub for shwdt. In some applications people have expressed a need for an mmap() method, so we implement a simple stub for this that maps back a page with the counter in it. Signed-off-by: Paul Mundt commit 781125ca58dfbd47635cfc0e408f1f9d7e10b227 Author: Paul Mundt Date: Wed Sep 27 17:52:19 2006 +0900 sh: New atomic ops for SH-4A movli.l/movco.l SH-4A implements LL/SC instructions, so we implement a simple set of atomic operations using these. Signed-off-by: Paul Mundt commit 15f57a29a19ad0dbb468363cb617b06f71f6de92 Author: Paul Mundt Date: Wed Sep 27 17:51:01 2006 +0900 sh: Add support for cacheline poking through debugfs. A simple debugging aid for easier visibility of the respective cachelines. Signed-off-by: Paul Mundt commit c7afb7e5cbc4baa781ec82731fc9fe9039efee22 Author: Nobuhiro Iwamatsu Date: Wed Sep 27 17:50:03 2006 +0900 sh: Fix memcpy() build error on sh4eb. A trivial bug breaking the build on sh4eb. Signed-off-by: Nobuhiro Iwamatsu Signed-off-by: Paul Mundt commit 91550f715b7f7707b5ab5b9b0cd455bda8505954 Author: Paul Mundt Date: Wed Sep 27 17:45:01 2006 +0900 sh: Kill off the rest of the legacy rtc mess. With the new RTC class driver, we can get rid of most of the old left over cruft. Signed-off-by: Paul Mundt commit 51e22e7a05c1c6f2e38ac7459d3404e32e543b75 Author: Takashi YOSHII Date: Wed Sep 27 17:41:31 2006 +0900 sh: SHMIN board support. This adds support for the SHMIN SH7706 board. Signed-off-by: Takashi YOSHII Signed-off-by: Paul Mundt commit e5723e0eeb2dc16629e86d66785024ead9169000 Author: Paul Mundt Date: Wed Sep 27 17:38:11 2006 +0900 sh: Add support for SH7706/SH7710/SH7343 CPUs. This adds support for the aforementioned CPU subtypes, and cleans up some build issues encountered as a result. Signed-off-by: Paul Mundt commit c06015148fa9a3cc452ec7121b8c3f59f4a7d6ac Author: Paul Brook Date: Sun Sep 24 16:54:40 2006 +0100 [ARM] 3860/1: Versatile PCI config byte accesses The ARM Versatile board PCI config space read routines are broken for byte accesses. The access uses a byte read, so masking the bottom two bits of the address is wrong. I guess this is a cut/paste error from the the halfword code which uses aligned word access+shift+mask. Signed-off-by: Paul Brook Signed-off-by: Russell King commit 4052ebb7a2729bd7c28260cdf8e470c0d81b9c56 Author: George G. Davis Date: Fri Sep 22 18:36:38 2006 +0100 [ARM] 3859/1: Fix devicemaps_init() XIP_KERNEL odd 1MiB XIP_PHYS_ADDR translation error The ARM XIP_KERNEL map created in devicemaps_init() is wrong. The map.pfn is rounded down to an even 1MiB section boundary which results in va/pa translations errors when XIP_PHYS_ADDR starts on an odd 1MiB boundary and this causes the kernel to hang. This patch fixes ARM XIP_KERNEL translation errors for the odd 1MiB XIP_PHYS_ADDR boundary case. Signed-off-by: George G. Davis Signed-off-by: Russell King commit 4b053e7a320882fbdbc6613cec60a929553b4215 Author: Ben Dooks Date: Fri Sep 22 15:42:18 2006 +0100 [ARM] 3858/1: S3C2412: power management code Add S3C2412 power management code, and move the core register saving in from s3c2412.c Signed-off-by: Ben Dooks Signed-off-by: Russell King commit da56c949261d462452a68cf05bfc645445bee830 Author: David Anders Date: Thu Sep 21 22:57:12 2006 +0100 [ARM] 3854/2: S3C2410 - add machine type for AML M5900 series (resubmitted) Add the AML M5900 series to the list of supported machines in the arch/arm/mach-s3c2410 directory. This ensures the core peripherals are registered, and the timer source is configured. if selected in the kernel config the framebuffer registers and mtd partition information are set. This version of the patch has corrected formatting and removed the legacy procfs directory entry. Signed-off-by: David Anders Signed-off-by: Russell King commit ecd9561687a0952a96a0a705f618e59cb6f3189b Author: Paul Mundt Date: Wed Sep 27 17:32:30 2006 +0900 serial: Add SERIAL_SH_SCI_NR_UARTS for sh-sci. sh-sci needs to be able to define its number of ports to support, we do this with a config option, like most other ports do. Signed-off-by: Paul Mundt commit 7dec62e96b38e6c62490ea5dc6939dd8d680a8b8 Author: Paul Mundt Date: Wed Sep 27 17:30:35 2006 +0900 sh: Add setup code for various CPU subtypes. This adds some simple setup code for most of the CPU subtypes, primarily simple platform device registration. Signed-off-by: Paul Mundt commit 237b98f61d02499ee248ae33cad616d950c15f49 Author: Paul Mundt Date: Wed Sep 27 17:28:20 2006 +0900 sh: sem2mutex conversion for clock framework. Simple sem2mutex conversion. Signed-off-by: Paul Mundt commit 9f23e7e94f7083d9705b595cbd6b30972be6fbbb Author: Paul Mundt Date: Wed Sep 27 17:27:00 2006 +0900 sh: pselect6 and ppoll, along with signal trampoline rework. This implements support for ppoll() and pselect6().. Signed-off-by: Paul Mundt commit a2d1a5fae6296c2a3ac1aaa982c95464c46c0585 Author: Yoshinori Sato Date: Wed Sep 27 17:25:07 2006 +0900 sh: __addr_ok() and other misc nommu fixups. A few more outstanding nommu fixups.. Signed-off-by: Yoshinori Sato Signed-off-by: Paul Mundt commit 0b8929354cdeddb17e81bfda903812c9adfd0b67 Author: Paul Mundt Date: Wed Sep 27 17:22:49 2006 +0900 sh: __NR_restart_syscall support. This implements support for __NR_restart_syscall. Signed-off-by: Paul Mundt commit e96636ccfa373a00a0ee0558e1971baa7856d8b5 Author: Yoshinori Sato Date: Wed Sep 27 17:21:02 2006 +0900 sh: Various nommu fixes. This fixes up some of the various outstanding nommu bugs on SH. Signed-off-by: Yoshinori Sato Signed-off-by: Paul Mundt commit e7f93a355c7e32c26eab8910cf53b7506bb046c5 Author: Paul Mundt Date: Wed Sep 27 17:19:13 2006 +0900 sh: Make PAGE_OFFSET configurable. nommu needs to be able to shift PAGE_OFFSET, so we switch it to a non-user-visible CONFIG_PAGE_OFFSET and use that in the few places where it matters. Signed-off-by: Paul Mundt commit adf1890b0cd63f754b2171b73e4d845c0950d407 Author: Paul Mundt Date: Wed Sep 27 17:17:27 2006 +0900 sh: Move voyagergx_reg.h to a more sensible place. Other boards require this as well, so move it out of the rts7751r2d directory. Signed-off-by: Paul Mundt commit 4b565680d16300acab0ff167e24f0ea289a6bd5d Author: Takashi YOSHII Date: Wed Sep 27 17:15:32 2006 +0900 sh: math-emu support This implements initial math-emu support, aimed primarily at SH-3. Signed-off-by: Takashi YOSHII Signed-off-by: Paul Mundt commit 317a6104a99f87c0b35c0d9f19ec23ee7429b33e Author: Paul Mundt Date: Wed Sep 27 17:13:19 2006 +0900 rtc: New RTC driver for SuperH On-Chip RTC. This replaces the old SH RTC driver, and allows us to clean quite a lot of things up on the board-specific side. Signed-off-by: Paul Mundt commit af514ca7d27b31e3c278e1331f0ebdb3ad385a90 Author: Paul Mundt Date: Wed Sep 27 17:11:32 2006 +0900 sh: Rename rtc_get/set_time() to avoid RTC_CLASS conflict. We have a clash with RTC_CLASS over these names, so we change them.. Signed-off-by: Paul Mundt commit 2991be725260d6fec11691a6138b9d71de949956 Author: Paul Mundt Date: Wed Sep 27 17:07:07 2006 +0900 sh: Fixup __strnlen_user() behaviour. Drop TIF_USERSPACE and add addr_limit to the thread_info struct. Subsequently, use that for address checking in strnlen_user() to ward off bogus -EFAULTs. Make __strnlen_user() return 0 on exception, rather than -EFAULT. Signed-off-by: Paul Mundt commit 0f08f338083cc1d68788ccbccc44bd0502fc57ae Author: Paul Mundt Date: Wed Sep 27 17:03:56 2006 +0900 sh: More cosmetic cleanups and trivial fixes. Nothing exciting here, just trivial fixes.. Signed-off-by: Paul Mundt commit 9e3043c091819729ecf4fc5063d0a2d0954dfd7f Author: Paul Mundt Date: Wed Sep 27 16:55:24 2006 +0900 sh: Fixup TEI IRQ requests in request_dma(). If a channel is not TEI capable, don't try to request_irq().. Signed-off-by: Paul Mundt commit e2d1864da5bfa419a108f42c0615f69432b1b876 Author: Paul Mundt Date: Wed Sep 27 16:53:40 2006 +0900 sh: G2 DMA IRQ and residue sampling. This fixes a long-standing FIXME for G2 DMA, where we finally wire up the IRQ handler and allow for sampling remaining bytes while in-flight. Signed-off-by: Paul Mundt commit ade2b3f6ed199dc4a7a0be53edf20f9399023640 Author: Paul Mundt Date: Wed Sep 27 16:48:46 2006 +0900 sh: VoyagerGX cleanups and 8250 UART support. This adds the VoyagerGX UART to the RTS7751R2D setup code, and cleans up a few build issues. Signed-off-by: Manuel Lauss Signed-off-by: Paul Mundt commit a3e61d50dc82475ebca3ff8b18c174c02c5ff511 Author: Paul Mundt Date: Wed Sep 27 16:45:22 2006 +0900 sh: Inhibit mapping PCI apertures through page tables. Inhibit mapping through page tables in __ioremap() for PCI memory apertures on SH7751 and SH7780-style PCI controllers, translation is not possible for these areas. For other users that map a small window in P1/P2 space, ioremap() traps that already, and should never make it to __ioremap(). Signed-off-by: Paul Mundt commit 959f85f8a3223c116bbe95dd8a9b207790b5d4d3 Author: Paul Mundt Date: Wed Sep 27 16:43:28 2006 +0900 sh: Consolidated SH7751/SH7780 PCI support. This cleans up quite a lot of the PCI mess that we currently have, and attempts to consolidate the duplication in the SH7780 and SH7751 PCI controllers. Signed-off-by: Paul Mundt commit ae1f19aeb715098ac06323f279383f3843429d97 Author: Jeff Garzik Date: Wed Sep 27 03:42:37 2006 -0400 [libata] sata_mv: fix oops by filling in missing hook Only two of three ata_port_operations structs had a ->data_xfer member, which led to, uh, a lack of data xfer. Signed-off-by: Jeff Garzik commit e108b2ca2349f510ce7d7f910eda89f71d710d84 Author: Paul Mundt Date: Wed Sep 27 16:32:13 2006 +0900 serial: Rework sh-sci for driver model. sh-sci was turning in to an unmaintainable mess, especially with regards to the port list. This cleans it up quite a bit, and switches over to a platform device model where subtypes will register their port list individually in their setup code. Signed-off-by: Paul Mundt commit 56e8d7b5786dc2f7d1f701500f8914fd2c52b111 Author: Paul Mundt Date: Wed Sep 27 16:24:55 2006 +0900 sh: kgdb stub cleanups. Some kgdb cleanup. Move hexchars/highhex/lowhex to the header, so it can be reused by sh-sci. Also drop silly ctrl_inl/outl() overloading being done by the kgdb stub. Signed-off-by: Paul Mundt commit 2549b3222f588c188674aed0b9a0ef78bbba5c6c Author: Paul Mundt Date: Wed Sep 27 16:22:33 2006 +0900 sh: Use generic CONFIG_FRAME_POINTER. We had our own version, which serves no purpose. Simply hook SH in to the generic one. Signed-off-by: Paul Mundt commit 3aa770e7972723f479122cf66b529017d2175289 Author: Andriy Skulysh Date: Wed Sep 27 16:20:22 2006 +0900 sh: APM/PM support. This adds some simple PM stubs and the basic APM interfaces, primarily for use by hp6xx, where the existing userland expects it. Signed-off-by: Andriy Skulysh Signed-off-by: Paul Mundt commit ef48e8e3498605351f91f195cc9af0ef981b0dde Author: Paul Mundt Date: Wed Sep 27 16:17:17 2006 +0900 sh: Free up some and document PTEL flags. Drop _PAGE_SHARED/_PAGE_U0_SHARED and document Linux PTE encodings in the PTEL value. Preserve the swap cache entry encoding semantics for now, though it will need rework to free up _PAGE_WT from _PAGE_FILE. Signed-off-by: Paul Mundt commit 801e045860586b6a4ca21b3269d111dfca7ef17b Author: Paul Mundt Date: Wed Sep 27 16:15:48 2006 +0900 sh: Update new-machine.txt so it's more accurate. This fell behind a bit, get it updated so the documentation has something in common with reality. Signed-off-by: Paul Mundt commit a328ff9a7e3109919f59ce1903a31f8b2e6339e5 Author: Paul Mundt Date: Wed Sep 27 16:14:54 2006 +0900 sh: SE73180 updates for IRQ changes. SE73180 can use the generic support, we just need to wire up the IRQ demuxing. Signed-off-by: Paul Mundt commit 848dd265947c976b6340027088c090ff7f0a0b8b Author: Andriy Skulysh Date: Wed Sep 27 16:09:59 2006 +0900 video: Update header location in hp680_bl. Trivial build fix. Signed-off-by: Andriy Skulysh Signed-off-by: Paul Mundt commit ae31825e63e11188d96ad9c4d2d5d4e0fc798a75 Author: Paul Mundt Date: Wed Sep 27 16:08:24 2006 +0900 sh: Make O= builds work again. Some of the paths were a bit broken, fix it up. Signed-off-by: Paul Mundt commit 00b3aa3fc9bd827caaa859de90d9eba831b77d40 Author: Paul Mundt Date: Wed Sep 27 16:05:56 2006 +0900 sh: xchg()/__xchg() always_inline fixes for gcc4. Make __xchg() a macro, so that gcc 4.0 doesn't blow up thanks to always_inline.. Signed-off-by: Paul Mundt commit bc8bff63bacea47561de34e04a17c79846ecfe91 Author: Paul Mundt Date: Wed Sep 27 16:04:51 2006 +0900 sh: Drop incdir rule for SE7751. No longer needed.. Signed-off-by: Paul Mundt commit d2b06a8b17f96b75fa1e8e7765cb900c99fd80fb Author: Paul Mundt Date: Wed Sep 27 16:03:25 2006 +0900 video: Update pvr2fb for sq API changes. With the store queue API rework, we need to change the in-kernel users too. Signed-off-by: Paul Mundt commit f1517494407b1f1ca0063a756cc30d75e96d433c Author: Paul Mundt Date: Wed Sep 27 16:01:12 2006 +0900 sh: Cleanup and document register bank usage. Initial register bank cleanup. Make SR.RB configurable, and add some preliminary documentation on register bank usage within the kernel. Signed-off-by: Paul Mundt commit 5283ecb5ccbdb90d49fce6488d3944bba63a591c Author: Paul Mundt Date: Wed Sep 27 15:59:17 2006 +0900 sh: Add support for R7780RP and R7780MP boards. This adds support for the Renesas SH7780 development boards, R7780RP and R7780MP. Signed-off-by: Paul Mundt commit d7c30c682a278abe1a52db83f69efec1a9d8f8c2 Author: Paul Mundt Date: Wed Sep 27 15:49:57 2006 +0900 sh: Store Queue API rework. Rewrite the store queue API for a per-cpu interface in the driver model. The old miscdevice is dropped, due to TASK_SIZE limitations, and no one was using it anyways. Carve up and allocate store queue space with a bitmap, back sq mapping objects with a slab cache, and let userspace worry about its own prefetching. Signed-off-by: Paul Mundt commit 373e68b5472d421cbd2703e7a77caf053f78c005 Author: Paul Mundt Date: Wed Sep 27 15:41:24 2006 +0900 sh: Board updates for I/O routine rework. This updates the various boards for some of the recent I/O routine updates. Signed-off-by: Paul Mundt commit f647d33f879d258de4ab2559975bd6eebda2033e Author: Paul Mundt Date: Wed Sep 27 15:30:24 2006 +0900 sh: Fix split ptlock for user mappings in __do_page_fault(). There was a bug that got introduced when the split ptlock changes went in where mm could be unintialized for user mappings, this fixes it up.. Signed-off-by: Paul Mundt commit c470662854ff94d44bf8c192cefac3efa33db676 Author: Paul Mundt Date: Wed Sep 27 15:29:18 2006 +0900 sh: Fixup SHMLBA definition for SH7705. We need this set to something sensible anywhere were we have an aliasing dcache.. Signed-off-by: Paul Mundt commit d7cdc9e8ac82c43fdcd4fde6b5b53d2dcba7f707 Author: Paul Mundt Date: Wed Sep 27 15:16:42 2006 +0900 sh: ioremap() overhaul. ioremap() overhaul. Add support for transparent PMB mapping, get rid of p3_ioremap(), etc. Also drop ioremap() and iounmap() routines from the machvec, as everyone can use the generic ioremap() API instead. For PCI memory apertures and other special cases, use the pci_iomap() API, as boards are already required to get the mapping right there. Signed-off-by: Paul Mundt commit 715a0ecc29c850d2b2f76e1803d3f22cd5a0ac0d Author: David S. Miller Date: Tue Sep 26 23:14:21 2006 -0700 [SPARC64]: Kill bogus check from bootmem_init(). There is an ancient and totally incorrect sanity check being done on the ramdisk location. The check assumes that the kernel is always loaded to physical address zero, which is wrong. It was trying to validate the ramdisk value by saying that if it fell within the kernel image address range it must be wrong. Anyways, kill this because it actually creates problems. The 'ramdisk_image' should always be adjusted down by KERNBASE. SILO can easily put the ramdisk in a location which causes this test to trigger, breaking things. [ Based almost entirely upon a patch from Ben Collins. ] Signed-off-by: David S. Miller commit 26ff6c11ef38e08990c1e417c299246e6ab18ff7 Author: Paul Mundt Date: Wed Sep 27 15:13:36 2006 +0900 sh: page table alloc cleanups and page fault optimizations. Cleanup of page table allocators, using generic folded PMD and PUD helpers. TLB flushing operations are moved to a more sensible spot. The page fault handler is also optimized slightly, we no longer waste cycles on IRQ disabling for flushing of the page from the ITLB, since we're already under CLI protection by the initial exception handler. Signed-off-by: Paul Mundt commit e531dcc568ca326428158e9574b8560572b8ae28 Author: David S. Miller Date: Tue Sep 26 23:10:01 2006 -0700 [SPARC64]: Update defconfig. Signed-off-by: David S. Miller commit 9359e757709a211040e4b0151eae69248e7c6eca Author: Paul Mundt Date: Wed Sep 27 15:09:48 2006 +0900 sh: export clear_user_page() for the modules that need it. Some modules seem to need this, so we export it.. Signed-off-by: Paul Mundt commit 0c7b1df69c62209db19d1279dd882b37c04c5c2f Author: Paul Mundt Date: Wed Sep 27 15:08:07 2006 +0900 sh: SH-4A Privileged Space Mapping Buffer (PMB) support. Add support for 32-bit physical addressing through the SH-4A Privileged Space Mapping Buffer (PMB). Signed-off-by: Paul Mundt commit a09749dd86e9e93de10f12ab4ce4e90815b5650a Author: Jamie Lenehan Date: Wed Sep 27 15:05:39 2006 +0900 sh: Titan board support. Add support for the titan board. Signed-off-by: Jamie Lenehan Signed-off-by: Paul Mundt commit b7e108ee63624176af85b97d4d80bef6fe099395 Author: Paul Mundt Date: Wed Sep 27 15:00:04 2006 +0900 sh: BSS init bugfix and barrier in entry point. A synco is needed before we jump to start_kernel(). While we're at it, also move the sh_cpu_init() jump until after we've zeroed BSS, as this has caused some undesirable results in sh_cpu_init(). Signed-off-by: Paul Mundt commit 298476220d1f793ca0ac6c9e5dc817e1ad3e9851 Author: Paul Mundt Date: Wed Sep 27 14:57:44 2006 +0900 sh: Add control register barriers. Currently when making changes to control registers, we typically need some time for changes to take effect (8 nops, generally). However, for sh4a we simply need to do an icbi.. This is a simple patch for implementing a general purpose ctrl_barrier() which functions as a control register write barrier. There's some additional documentation in the patch itself, but it's pretty self explanatory. There were also some places where we were not doing the barrier, which didn't seem to have any adverse effects on legacy parts, but certainly did on sh4a. It's safer to have the barrier in place for legacy parts as well in these cases, though this does make flush_tlb_all() more expensive (by an order of 8 nops). We can ifdef around the flush_tlb_all() case for now if it's clear that all legacy parts won't have a problem with this. Signed-off-by: Paul Mundt commit 749cf486920bf53f16e6a6889d9635a91ffb6c82 Author: Paul Mundt Date: Wed Sep 27 14:55:41 2006 +0900 sh: Add flag for MMU PTEA capability. Add CPU_HAS_PTEA, refactor some of the cpu flag settings. Signed-off-by: Paul Mundt commit 94c0fa520cc169ccf661e9c03b5b95f74d1520b8 Author: kogiidena Date: Wed Sep 27 14:53:35 2006 +0900 sh: landisk board support. This adds support for the I-O DATA Landisk. Signed-off-by: kogiidena Signed-off-by: Paul Mundt commit 634bf4f69b925950ddb09ef99ad7516a449a4333 Author: Paul Mundt Date: Wed Sep 27 14:48:09 2006 +0900 sh: Fix libata build. Drop virt_to_bus() from sg_dma_address() so libata builds. While we're at it, move sg_dma_address() and sg_dma_len() from pci.h to scatterlist.h. Signed-off-by: Paul Mundt commit 24ab54cb49c099d691c68fdd1ac6a0c2f5177da4 Author: Ollie Wild Date: Wed Sep 27 14:46:24 2006 +0900 sh: Fix TCP payload csum bug in csum_partial_copy_generic(). There's a bug in the Hitachi SuperH csum_partial_copy_generic() implementation. If the supplied length is 1 (and several alignment conditions are met), the function immediately branches to label 4. However, the assembly at label 4 expects the length to be stored in register r2. Since this has not occurred, subsequent behavior is undefined. This can cause bad payload checksums in TCP connections. I've fixed the problem by initializing register r2 prior to the branch instruction. Signed-off-by: Ollie Wild Signed-off-by: Paul Mundt commit 8b395265f81817385f12e62f03f795efb732a445 Author: Paul Mundt Date: Wed Sep 27 14:38:02 2006 +0900 sh: Fix fatal oops in copy_user_page() on sh4a (SH7780). We had a pretty interesting oops happening, where copy_user_page() was down()'ing p3map_sem[] with a bogus offset (particularly, an offset that hadn't been initialized with sema_init(), due to the mismatch between cpu_data->dcache.n_aliases and what was assumed based off of the old CACHE_ALIAS value). Luckily, spinlock debugging caught this for us, and so we drop the old hardcoded CACHE_ALIAS for sh4 completely and rely on the run-time probed cpu_data->dcache.alias_mask. This in turn gets the p3map_sem[] index right, and everything works again. While we're at it, also convert to 4-level page tables.. Signed-off-by: Paul Mundt commit 75c92acdd5b19a5e3536ed670e1122d73c635b4a Author: Paul Mundt Date: Wed Sep 27 14:36:44 2006 +0900 sh: Wire up new syscalls. The syscall table has lagged behind a bit, wire up the new ones.. Signed-off-by: Paul Mundt commit ef9a1d4c0c383f75710f6adf2abb8cc264877e2c Author: Alexey Dobriyan Date: Wed Sep 27 14:32:57 2006 +0900 sh: remove cpu_online() definition from It's defined in and log is horribly flooded by "redefined" messages. Signed-off-by: Alexey Dobriyan Signed-off-by: Paul Mundt commit 5b19c9081fbd0882c936ec087bf9055a20251dec Author: Paul Mundt Date: Wed Sep 27 14:31:40 2006 +0900 sh: Support for SH7770/SH7780 CPU subtypes. Merge support for SH7770 and SH7780 SH-4A subtypes. Signed-off-by: Paul Mundt commit 555ef1963029d19d2367acd09f6b9a6a0056f217 Author: Paul Mundt Date: Wed Sep 27 14:30:11 2006 +0900 sh: Add SH7750S/SH7091 rules for SH7750 oprofile driver. Update oprofile build rules for additional subtypes, particularly SH7750S/SH7091. Signed-off-by: Paul Mundt commit a80fd21e52cc09ff1e4d36de5781173a5b87b2dc Author: Paul Mundt Date: Wed Sep 27 14:26:53 2006 +0900 sh: earlyprintk= support and cleanups. Allow multiple early printk consoles via earlyprintk=. With this change earlyprintk is no longer enabled by default, it must be specified on the kernel command line. Optionally with ,keep to prevent unreg by tty_io. Signed-off-by: Paul Mundt commit e86d6b66f5b38680746b2cb71186d90af17f150f Author: Paul Mundt Date: Wed Sep 27 14:20:54 2006 +0900 sh: prefetch()/prefetchw() support. SH-2/3/4 are able to prefetch, add support for it.. Signed-off-by: Paul Mundt commit e7be853df79fe8ae08ba7d933bd21e1dbb0db7bc Author: Toshinobu Sugioka Date: Wed Sep 27 14:13:14 2006 +0900 sh: Fix a sign extension bug in memset(). Minor sign-extension bug in SH-specific memset().. Signed-off-by: Toshinobu Sugioka Signed-off-by: Paul Mundt commit 73388cc7c648861742e584a97fbffed16afc7dc3 Author: Paul Mundt Date: Wed Sep 27 14:11:33 2006 +0900 sh: Refactor PRR masking to catch newer SH7760 cuts. Newer SH7760 cuts have a range of acceptable PRR values.. Signed-off-by: Paul Mundt commit b638d0b921dc95229af0dfd09cd24850336a2f75 Author: Richard Curnow Date: Wed Sep 27 14:09:26 2006 +0900 sh: Optimized cache handling for SH-4/SH-4A caches. This reworks some of the SH-4 cache handling code to more easily accomodate newer-style caches (particularly for the > direct-mapped case), as well as optimizing some of the old code. Signed-off-by: Richard Curnow Signed-off-by: Paul Mundt commit fdfc74f9fcebdda14609159d5010b758a9409acf Author: Paul Mundt Date: Wed Sep 27 14:05:52 2006 +0900 sh: Support for SH-4A memory barriers. SH-4A supports 'synco' as a barrier, sprinkle it around the cache ops as necessary.. Signed-off-by: Paul Mundt commit 36efc35447154317f9ffc5163a1793b5f7ff3de1 Author: Paul Mundt Date: Wed Sep 27 14:02:09 2006 +0900 sh: RTS7751R2D board updates. More of the same, trivial cleanups, and moving options to their own board-specific Kconfig. Signed-off-by: Paul Mundt commit e8fb67f8e05bb1f4c07c3585967cfc6d44822ab0 Author: Paul Mundt Date: Wed Sep 27 13:56:28 2006 +0900 sh: HS7751RVoIP board updates. Various cleanups for HS7751RVoIP. Mostly just getting rid of the old mach.c and splitting codec configuration in to its own Kconfig. Signed-off-by: Paul Mundt commit 7e27b9b720e74f471f0f0880c56578d07206c0af Author: Andriy Skulysh Date: Wed Sep 27 13:48:32 2006 +0900 sound: SH DAC audio driver updates. Update the SH DAC audio driver for the clock framework. Signed-off-by: Andriy Skulysh Signed-off-by: Paul Mundt commit 048839dc548a5315b733993dfc7d082e1e848061 Author: Andriy Skulysh Date: Wed Sep 27 13:47:22 2006 +0900 video: hitfb suspend/resume and updates. suspend/resume support for hitfb, as well as some other minor cleanups. Signed-off-by: Andriy Skulysh Signed-off-by: Paul Mundt commit 6d75e650f1d0d59fd97c7629f0903ef18e8dfb7b Author: Paul Mundt Date: Wed Sep 27 13:42:57 2006 +0900 sh: Move hd64461.h to a more sensible location. With the I/O rework for hd64461 we're down to a single header, so move it by itself and get rid of the directory. Signed-off-by: Paul Mundt commit d95fb13c960ae19e9fd4a95807eb68fa20caf537 Author: Paul Mundt Date: Wed Sep 27 13:30:08 2006 +0900 sh: Fixup TMU_TOCR definition for SH7300. SH7300 has a different TMU_TOCR, make the TMU code work again. Signed-off-by: Paul Mundt commit 3530570fd43632b60b00e5ea17519d2bd69d1434 Author: Paul Mundt Date: Wed Sep 27 13:28:23 2006 +0900 sh: Kill off dead code for SE and SystemH boards. Some of these have suffered some bitrot, and so there is some degree of dead code that has been left sitting around, clean it up.. Signed-off-by: Paul Mundt commit 5c930e8cbfaa9dfdf9fa082fd891c6e3ab6ef2fc Author: Paul Mundt Date: Wed Sep 27 13:20:22 2006 +0900 video: Disable vgacon for SuperH. We don't support this on SH, so just disable it.. Signed-off-by: Paul Mundt commit 3f787fe2e077ecfe43ad9ad56f12a8e21cffafc3 Author: Paul Mundt Date: Wed Sep 27 13:11:57 2006 +0900 sh: hugetlb updates. For some of the larger sizes we permitted spanning pages across several PTEs, but this turned out to not be generally useful. This reverts the sh hugetlbpage interface to something more sensible using huge pages at single PTE granularity. Signed-off-by: Paul Mundt commit 4bcac20a7a01d49dffb5e88a8140efa34927c383 Author: Andriy Skulysh Date: Wed Sep 27 13:07:38 2006 +0900 sh: hp6xx mach-type cleanups. Some minor cleanups for the updated consolidated hp6xx mach-type. Signed-off-by: Andriy Skulysh Signed-off-by: Paul Mundt commit e4c2cfee5d5cf3e4c16b423be23551aeddf2717b Author: Paul Mundt Date: Wed Sep 27 12:31:01 2006 +0900 sh: Various cosmetic cleanups. We had quite a bit of whitespace damage, clean most of it up.. Signed-off-by: Stuart Menefy Signed-off-by: Arthur Othieno Signed-off-by: Paul Mundt commit 7f1be8924791535c5fdc6749d1f119e141baa122 Author: rafalbilski@interia.pl Date: Sun Sep 24 20:28:13 2006 +0200 [CPUFREQ] Longhaul - Disable arbiter CLE266 Please ignore previous message. This patch is adding support for CPU connected to CLE266 chipset. For older CPU this is only way. For "Powersaver" processor this way will be used if ACPI C3 isn't supported. I have tested it. It seems to work exacly like ACPI. But it is less safe. On CLE266 chipset port 0x22 is blocking processor access to PCI bus too. Signed-off-by: Rafa³ Bilski Signed-off-by: Dave Jones commit 7357db1209f27210f97b2a9dd22177f1886a1198 Author: Alan Cox Date: Tue Sep 26 17:56:55 2006 +0100 [AGPGART] Use pci_get_slot not pci_find_slot Signed-off-by: Alan Cox Signed-off-by: Dave Jones commit 0497c8ca282915a1c36d51db33fbf2629d7346f3 Author: Venkatesh Pallipadi Date: Mon Sep 25 11:23:32 2006 -0700 [CPUFREQ] Fix section mismatch warning Make the sections proper and get rid of section mismatch warnings. Signed-off-by: Venkatesh Pallipadi Signed-off-by: Dave Jones commit 0e37b159aa7427bf311487e3ea03d8aa5ff5956e Author: Dave Jones Date: Tue Sep 26 23:02:34 2006 -0400 [CPUFREQ] Fix cut-n-paste bug in suspend printk Signed-off-by: Dave Jones commit a56d276c05a80ce727902076a3b4c6247705e2df Author: Paul Mundt Date: Wed Sep 27 11:43:24 2006 +0900 sh: Make hs7751rvoip/rts7751r2d use pm_power_off. These were previously sprinkled in machine_power_off(), though missed being updated when the rest of the boards switched over. Signed-off-by: Paul Mundt commit 50e98e72e459e43b6b9a5449e35bb6fc54e21149 Author: Paul Mundt Date: Wed Sep 27 11:40:05 2006 +0900 sh: Kill off the .stack section. We had a special .stack section in the ld script that was being used to position r15 initially. This is nonsensical, as we can just use a THREAD_SIZE offset from the init_thread_union instead (as every other arch does). Signed-off-by: Paul Mundt commit 6ae5e8d7598ce01ac0e7dab1b89894c7386a2e61 Author: Paul Mundt Date: Wed Sep 27 11:37:33 2006 +0900 sh: Fix kGDB NMI handling. in_nmi shifted down a few labels, so we were inadvertently clearing the lower byte of do_syscall_trace, badness ensues. Signed-off-by: Paul Mundt commit 1c5f8f85df96dd7c17d63eed2d7da18b3ad00b6d Author: Paul Mundt Date: Wed Sep 27 11:36:10 2006 +0900 sh: Move syscall table in to syscall.S. Move the syscall table in to its own file, as per sh64. The entry.S bits will end up being considerably different in the sh2/sh2a cases, so this lets us keep things in sync somewhat.. Signed-off-by: Paul Mundt commit 765ae317ce030217af556dc46bec238dab15091e Author: Paul Mundt Date: Wed Sep 27 11:31:32 2006 +0900 sh: Fixup some uninitialized spinlocks. Fix use of uninitialized spinlocks, caught with spinlock debugging.. Signed-off-by: Paul Mundt commit a252710fc5b63b24934905ca47ecf661702d7f00 Author: Paul Mundt Date: Wed Sep 27 11:29:55 2006 +0900 sh: flush_cache_range() cleanup and optimizations. flush_cache_range() wasn't page aligning the end of the range, we can't assume that it will always be page aligned, and we ended up getting unaligned faults in some rare call paths. Additionally, we add a small optimization to just purge the dcache entirely if the range is large enough that the page table walking will take longer. We use an arbitrary value of 64 pages for the large range size, as per sh64. Signed-off-by: Paul Mundt commit e4e3b5ccd77226c9c4dbb0737106b868dfc182d9 Author: Tom Rini Date: Wed Sep 27 11:28:20 2006 +0900 sh: Add a simple cmpxchg(). We didn't have one of these before, a simple implementation borrowed from MIPS as well as the __HAVE_ARCH_CMPXCHG bits. Signed-off-by: Tom Rini Signed-off-by: Paul Mundt commit 0c91c1a7012911e4b0180a1c1ae258e2b706f987 Author: Paul Mundt Date: Wed Sep 27 11:16:20 2006 +0900 sh: Move smc37c93x.h for SystemH board use. SystemH needs this header as well, not just 770x SE. Signed-off-by: Paul Mundt commit c9d86d76c1cdd76d67292ab75643db66573ca7dd Author: Kenji Kaneshige Date: Tue Sep 19 17:04:33 2006 -0700 pciehp - fix wrong return value This patch fixes the problem that trying to enable already enabled slot disables the slot by returning the proper value from pciehp_enable_slot()/pciehp_disable_slot(). Signed-off-by: Kenji Kaneshige Signed-off-by: Kristen Carlson Accardi Signed-off-by: Greg Kroah-Hartman commit aa4f63cad4f70a52adbabb66ac6c8b6072910fdf Author: Satoru Takeuchi Date: Tue Sep 12 10:24:14 2006 -0700 IA64: PCI: dont disable irq which is not enabled This patch prevents pcibios_disable_device() from disabling interrupts of devices which is not enabled. Signed-off-by: Kenji Kaneshige Signed-off-by: MUNEDA Takahiro Signed-off-by: Satoru Takeuchi Signed-off-by: Kristen Carlson Accardi Signed-off-by: Greg Kroah-Hartman commit 600812ecead0da2e7b6f9e5f5aad68b1ad8ae581 Author: Satoru Takeuchi Date: Tue Sep 12 10:22:53 2006 -0700 acpiphp: add support for ioapic hot-remove This patch adds support for ioapics hot-remove. Signed-off-by: Kenji Kaneshige Signed-off-by: MUNEDA Takahiro Signed-off-by: Satoru Takeuchi Signed-off-by: Kristen Carlson Accardi Signed-off-by: Greg Kroah-Hartman commit 23186279658cea6d42a050400d3e79c56cb459b4 Author: Satoru Takeuchi Date: Tue Sep 12 10:21:44 2006 -0700 PCI: assign ioapic resource at hotplug We need to assign resources to ioapics being hot-added. This patch changes pbus_assign_resources_sorted() to assign resources if the ioapic has no assigned resources. Signed-off-by: Kenji Kaneshige Signed-off-by: MUNEDA Takahiro Signed-off-by: Satoru Takeuchi Signed-off-by: Kristen Carlson Accardi Signed-off-by: Greg Kroah-Hartman commit d5cdb67236dba94496de052c9f9f431e1fc658f4 Author: Satoru Takeuchi Date: Tue Sep 12 10:19:00 2006 -0700 acpiphp: disable bridges Currently acpiphp calls pci_enable_device() against all hot-added bridges, but acpiphp does not call pci_disable_device() against them in hot-remove. So ioapic hot-remove would fail. This patch fixes this issue. Signed-off-by: Kenji Kaneshige Signed-off-by: MUNEDA Takahiro Signed-off-by: Satoru Takeuchi Signed-off-by: Kristen Carlson Accardi Signed-off-by: Greg Kroah-Hartman commit 0dad3510ee82bcf8a380b81a2184a664a911ef9c Author: Satoru Takeuchi Date: Tue Sep 12 10:17:46 2006 -0700 acpiphp: stop bus device before acpi_bus_trim Contrary to PCI bridge hot-add, we need to follow the sequence below for PCI bridge hot-removal. (1) Stop devices (detach drivers, remove from the global list, etc.) (2) Unbind ACPI node from the devices (remove the _PRT entries) (3) Remove devices (remove from the device list, etc.) This patch fixes acpiphp driver to follow above sequence for P2P bridge hot-removal. Signed-off-by: Kenji Kaneshige Signed-off-by: MUNEDA Takahiro Signed-off-by: Satoru Takeuchi Signed-off-by: Kristen Carlson Accardi Signed-off-by: Greg Kroah-Hartman commit 24f8aa9b464b73e0553f092b747770940ee0ea54 Author: Satoru Takeuchi Date: Tue Sep 12 10:16:36 2006 -0700 PCI: add pci_stop_bus_device This patch adds pci_stop_bus_device() which stops a PCI device (detach the driver, remove from the global list and so on) and any children. This is needed for ACPI based PCI-to-PCI bridge hot-remove, and it will be also needed for ACPI based PCI root bridge hot-remove. Signed-off-by: Kenji Kaneshige Signed-off-by: MUNEDA Takahiro Signed-off-by: Satoru Takeuchi Signed-off-by: Kristen Carlson Accardi Signed-off-by: Greg Kroah-Hartman commit 9b1d19ee86746618a8b43d2aaef8319c01af1514 Author: Satoru Takeuchi Date: Tue Sep 12 10:15:10 2006 -0700 acpiphp: do not initialize existing ioapics Currently acpiphp initializes all ioapics under the bus on which hot-add event occured. It also initializes already working ioapics. This patch fixes this bug. Signed-off-by: Kenji Kaneshige Signed-off-by: MUNEDA Takahiro Signed-off-by: Satoru Takeuchi Signed-off-by: Kristen Carlson Accardi Signed-off-by: Greg Kroah-Hartman commit b99feebe597f7b8c566048e11dbbd2d6df9abc83 Author: Satoru Takeuchi Date: Tue Sep 12 10:13:44 2006 -0700 acpiphp: initialize ioapics before starting devices Currently acpiphp initializes ioapics after starting devices, but ioapics should be initialized before starting devices. This patch fixes this bug. Signed-off-by: Kenji Kaneshige Signed-off-by: MUNEDA Takahiro Signed-off-by: Satoru Takeuchi Signed-off-by: Kristen Carlson Accardi Signed-off-by: Greg Kroah-Hartman commit 287af2fbe902206fabd42ade4e94f77db900083e Author: Satoru Takeuchi Date: Tue Sep 12 10:12:16 2006 -0700 acpiphp: set hpp values before starting devices Currently acpiphp sets hpp values after starting devices, but the values should be set before starting devices. This patch fixes this bug. Signed-off-by: Kenji Kaneshige Signed-off-by: MUNEDA Takahiro Signed-off-by: Satoru Takeuchi Signed-off-by: Kristen Carlson Accardi Signed-off-by: Greg Kroah-Hartman commit 753388c2e91c15c12550bb20dda05ce657cfdc3e Author: Satoru Takeuchi Date: Wed Sep 6 16:47:28 2006 +0900 PCI Hotplug: cleanup pcihp skeleton code. Cleanup pcihp skeleton code. Fix some typos and remove some unnecessary blank lines. Signed-off-by: Satoru Takeuchi Signed-off-by: Greg Kroah-Hartman commit b56a5a23bfecd9cac9187164a9d5f22d287c48b9 Author: Michael S. Tsirkin Date: Mon Aug 21 16:22:22 2006 +0300 PCI: Restore PCI Express capability registers after PM event Restore PCI Express capability registers after PM event. This includes maxumum MTU for PCI express and other vital data. Signed-off-by: Michael S. Tsirkin Signed-off-by: Greg Kroah-Hartman commit 6d47a5e4c3f8b6458002065d98a9cc6ff90fb597 Author: Adrian Bunk Date: Mon Aug 14 23:07:38 2006 -0700 PCI: drivers/pci/hotplug/acpiphp_glue.c: make a function static Signed-off-by: Adrian Bunk Acked-by: MUNEDA Takahiro Signed-off-by: Andrew Morton Signed-off-by: Greg Kroah-Hartman commit 50b0075520a0acba9cabab5203bbce918b966d9a Author: Alan Cox Date: Wed Aug 16 17:42:18 2006 +0100 PCI: Multiprobe sanitizer There are numerous drivers that can use multithreaded probing but having some kind of global flag as the way to control this makes migration to threaded probing hard and since it enables it everywhere and is almost as likely to cause serious pain as holding a clog dance in a minefield. If we have a pci_driver multithread_probe flag to inherit you can turn it on for one driver at a time. From playing so far however I think we need a different model at the device layer which serializes until the called probe function says "ok you can start another one now". That would need some kind of flag and semaphore plus a helper function. Anyway in the absence of that this is a starting point to usefully play with this stuff Signed-off-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit b19441af185559118e8247382ea4f2f76ebffc6d Author: Greg Kroah-Hartman Date: Mon Aug 28 11:43:25 2006 -0700 PCI: fix __must_check warnings Signed-off-by: Greg Kroah-Hartman commit 660a0e8fdf85f30b1e5f6905a78361476094eb7c Author: Greg Kroah-Hartman Date: Mon Aug 28 11:43:25 2006 -0700 PCI Hotplug: fix __must_check warnings Signed-off-by: Greg Kroah-Hartman commit e1b95dc6b1cd02c3625ba3d1d770d095d6a4b313 Author: Greg Kroah-Hartman Date: Mon Aug 28 11:43:25 2006 -0700 SHPCHP: fix __must_check warnings Cc: Kristen Carlson Accardi Signed-off-by: Greg Kroah-Hartman commit 4bf3392e0bf55e5aabbd7bbdbc52cc58eb63f837 Author: Zhang, Yanmin Date: Mon Jul 31 15:26:16 2006 +0800 PCI-Express AER implemetation: pcie_portdrv error handler Patch 4 implements error handlers for pcie_portdrv. Signed-off-by: Zhang Yanmin Signed-off-by: Greg Kroah-Hartman commit 6c2b374d74857e892080ee726184ec1d15e7d4e4 Author: Zhang, Yanmin Date: Mon Jul 31 15:21:33 2006 +0800 PCI-Express AER implemetation: AER core and aerdriver Patch 3 implements the core part of PCI-Express AER and aerdrv port service driver. When a root port service device is probed, the aerdrv will call request_irq to register irq handler for AER error interrupt. When a device sends an PCI-Express error message to the root port, the root port will trigger an interrupt, by either MSI or IO-APIC, then kernel would run the irq handler. The handler collects root error status register and schedules a work. The work will call the core part to process the error based on its type (Correctable/non-fatal/fatal). As for Correctable errors, the patch chooses to just clear the correctable error status register of the device. As for the non-fatal error, the patch follows generic PCI error handler rules to call the error callback functions of the endpoint's driver. If the device is a bridge, the patch chooses to broadcast the error to downstream devices. As for the fatal error, the patch resets the pci-express link and follows generic PCI error handler rules to call the error callback functions of the endpoint's driver. If the device is a bridge, the patch chooses to broadcast the error to downstream devices. Signed-off-by: Zhang Yanmin Signed-off-by: Greg Kroah-Hartman commit 48408157ebf5b2c6dc1e04ba5d258012f6a7f356 Author: Zhang, Yanmin Date: Mon Jul 31 15:18:39 2006 +0800 PCI-Express AER implemetation: export pcie_port_bus_type Patch 2 exports pcie_port_bus_type. Signed-off-by: Zhang Yanmin Signed-off-by: Greg Kroah-Hartman commit 47402400c6496dd114463deb3a2ba2d64055284e Author: Zhang, Yanmin Date: Mon Jul 31 15:15:18 2006 +0800 PCI-Express AER implemetation: aer howto document PCI-Express AER (Advanced Error Reporting) provides more robust error reporting. The series of patches enable kernel support to AER. The initial patches were written by Tom Long Nguyen. I ported them to the kernel 2.6.18-rc3. Many thanks to Rajesh Shah and Narayanan Chandramouli for their great review comments and testing help. Patch 1 consists of the pciaer-howto.txt document. Signed-off-by: Zhang Yanmin Signed-off-by: Greg Kroah-Hartman commit 20d516602c022997feb24a9f1a806fc986b9e4e8 Author: Randy Dunlap Date: Sat Jul 8 22:58:25 2006 -0700 PCIE: check and return bus_register errors Have pcie_port_bus_register() notice and return errors. Mark it __must_check so that its caller(s) must check its return value. Signed-off-by: Randy Dunlap Signed-off-by: Greg Kroah-Hartman commit 6397c75cbc4d7dbc3d07278b57c82a47dafb21b5 Author: Brice Goglin Date: Thu Aug 31 01:55:32 2006 -0400 MSI: Blacklist PCI-E chipsets depending on Hypertransport MSI capability Introduce msi_ht_cap_enabled() to check the MSI capability in the Hypertransport configuration space. It is used in a generic quirk quirk_msi_ht_cap() to check whether MSI is enabled on hypertransport chipset, and a nVidia specific quirk quirk_nvidia_ck804_msi_ht_cap() where two 2 HT MSI mappings have to be checked. Both quirks set the PCI_BUS_FLAGS_NO_MSI bus flag when MSI is disabled. Signed-off-by: Brice Goglin Signed-off-by: Greg Kroah-Hartman commit 46ff34633ed09f36ebc4b5c40ac37e592172df74 Author: Brice Goglin Date: Thu Aug 31 01:55:24 2006 -0400 MSI: Rename PCI_CAP_ID_HT_IRQCONF into PCI_CAP_ID_HT 0x08 is the HT capability, while PCI_CAP_ID_HT_IRQCONF would be the subtype 0x80 that mpic_scan_ht_pic() uses. Rename PCI_CAP_ID_HT_IRQCONF into PCI_CAP_ID_HT. And by the way, use it in the ipath driver instead of defining its own HT_CAPABILITY_ID. Signed-off-by: Brice Goglin Signed-off-by: Greg Kroah-Hartman commit fe97064c2870e174a6ff4a93feb11a70c4b71cc5 Author: Brice Goglin Date: Thu Aug 31 01:55:15 2006 -0400 MSI: Export the PCI_BUS_FLAGS_NO_MSI flag in sysfs Export the PCI_BUS_FLAGS_NO_MSI flag of a PCI bus in the sysfs files of its parent device and make it writable. Could be used to: * disable MSI on a device which has not been blacklisted yet * allow MSI when some setpci hacks enable MSI support (for instance on the ServerWorks HT2000 chipset where the MSI HT cap is disabled by default). Architecture where some bus have no parent chipset cannot use this strategy to change MSI support. If the chipset does not have a subordinate bus, its 'bus_msi' file is empty. Also document and warn about the possible danger of changing the flag. Signed-off-by: Brice Goglin Signed-off-by: Greg Kroah-Hartman commit 24334a12533e9ac70dcb467ccd629f190afc5361 Author: Brice Goglin Date: Thu Aug 31 01:55:07 2006 -0400 MSI: Factorize common code in pci_msi_supported() pci_enable_msi() and pci_enable_msix() use the same code to detect whether MSI might be enabled on this device. Factorize this code in pci_msi_supported(). And improve the documentation about the fact that only the root chipset must support MSI, but it is hard to find the root bus so we check all parent busses MSI flags. Signed-off-by: Brice Goglin Signed-off-by: Greg Kroah-Hartman commit 3f79e107f72e8efa86cd2f21356692b712713b5c Author: Brice Goglin Date: Thu Aug 31 01:54:56 2006 -0400 MSI: Cleanup existing MSI quirks Move MSI quirks in CONFIG_PCI_MSI, document why the serverworks quirk does not simply set PCI_BUS_FLAGS_NO_MSI, and create a generic quirk for other chipsets where setting PCI_BUS_FLAGS_NO_MSI is fine. Signed-off-by: Brice Goglin Signed-off-by: Greg Kroah-Hartman commit d33b6fba2c4350651f3f61ff2ab858a2f116e9a4 Author: Matthew Wilcox Date: Fri Jun 30 02:31:24 2006 -0700 Resources: insert identical resources above existing resources If you have two resources which aree exactly the same size, insert_resource() currently inserts the new one below the existing one. This is wrong because there's no way to insert a resource of the same size above an existing one. I took this opportunity to rewrite the initial loop to be a for-loop instead of a goto-loop and fix the documentation. Signed-off-by: Matthew Wilcox Cc: Ivan Kokshaysky Cc: Dominik Brodowski Signed-off-by: Andrew Morton Signed-off-by: Greg Kroah-Hartman commit 6d3aae9d74221b00e2cbf50a353527e5a71a58ba Author: Jean Delvare Date: Sun Sep 3 22:41:08 2006 +0200 i2c: Drop unimplemented slave functions i2c: Drop unimplemented slave functions Drop the function declarations for slave mode support of i2c adapters. This was never implemented, and by the time it is I bet we will want something different anyway. Signed-off-by: Jean Delvare Signed-off-by: Greg Kroah-Hartman commit 8f9082c5ce0e2c2f7ad0211b0c089f680d2efc11 Author: Jean Delvare Date: Sun Sep 3 22:39:46 2006 +0200 i2c: Constify i2c_algorithm declarations, part 2 i2c: Constify i2c_algorithm declarations, part 2 Make struct i2c_algorithm declarations const in all i2c bus drivers where it is possible. Signed-off-by: Jean Delvare Cc: David Brownell Signed-off-by: Greg Kroah-Hartman commit 9e11a9fbfe48a2f65188aae64bf4f690e40ea2f4 Author: Jean Delvare Date: Sun Sep 3 22:38:52 2006 +0200 i2c: Constify i2c_algorithm declarations, part 1 i2c: Constify i2c_algorithm declarations, part 1 Make struct i2c_algorithm declarations const in all i2c algorithm drivers. Signed-off-by: Jean Delvare Cc: David Brownell Signed-off-by: Greg Kroah-Hartman commit af71ff690b92894f66ccede27f731150dc10d80d Author: David Brownell Date: Sun Sep 3 22:37:11 2006 +0200 i2c: Let drivers constify i2c_algorithm data i2c: Let drivers constify i2c_algorithm data Let drivers constify I2C algorithm method operations tables, moving them from ".data" to ".rodata". Signed-off-by: David Brownell Signed-off-by: Jean Delvare Signed-off-by: Greg Kroah-Hartman commit 872188420997f7f7c1b968fd9bce6578e4c3d45f Author: Jean Delvare Date: Sun Sep 3 22:36:14 2006 +0200 i2c-isa: Restore driver owner i2c-isa: Restore driver owner Commit 2b48716d1d2f2edb1e7cbc5ecf1cb2cb39373e33 back in January 2006 was a bit overzealous. It removed .owner from all i2c drivers, including i2c-isa ones, while they still need it. Signed-off-by: Jean Delvare Signed-off-by: Greg Kroah-Hartman commit c243353a90fae3a9a85d2bd79b1df06bb21c568a Author: Rudolf Marek Date: Sun Sep 3 22:35:21 2006 +0200 i2c-viapro: Add support for the VT8237A and VT8251 i2c-viapro: Add support for the VT8237A and VT8251 Documentation update included. Compile tested. Signed-off-by: Rudolf Marek Signed-off-by: Jean Delvare Signed-off-by: Greg Kroah-Hartman commit 114fd18397eb0eacf51ac784f7d5c929b8499715 Author: Jean Delvare Date: Sun Sep 3 22:25:04 2006 +0200 i2c: Warn on i2c client creation failure i2c: Warn on i2c client creation failure Warn when an i2c client creation fails. If we don't, the user will never know something wrong happened, as i2c client creation is typically called through an attach_adapter callback, those return value we currently ignore for technical reasons. Signed-off-by: Jean Delvare Signed-off-by: Greg Kroah-Hartman commit 7eff82c8b1511017ae605f0c99ac275a7e21b867 Author: Jean Delvare Date: Sun Sep 3 22:24:00 2006 +0200 i2c-core: Drop useless bitmaskings i2c-core: Drop useless bitmaskings The code generated is exactly the same. Signed-off-by: Jean Delvare Signed-off-by: Greg Kroah-Hartman commit 9b4ccb86b4abe644ffd218720da2f942b6a20fc2 Author: Adrian Bunk Date: Sun Sep 3 22:22:50 2006 +0200 i2c-algo-pcf: Discard the mdelay data struct member i2c-algo-pcf: Discard the mdelay data struct member Just as i2c-algo-bit, i2c-algo-pcf has an unused mdelay struct member, which we can get rid of to spare some code and memory. Signed-off-by: Adrian Bunk Signed-off-by: Jean Delvare Signed-off-by: Greg Kroah-Hartman commit 7b288a018ac563f5babe0818f581d8f8a4fdcbfb Author: Jean Delvare Date: Sun Sep 3 22:22:12 2006 +0200 i2c-algo-bit: Cleanups i2c-algo-bit: Cleanups * Uninline long functions (saves around 1 kB or 15%) * Refactor code in sclhi() * Drop redundant udelay on repeated start Signed-off-by: Jean Delvare Signed-off-by: Greg Kroah-Hartman commit 8202632647278eba7223727dc442f49227c040d0 Author: David Hubbard Date: Sun Sep 3 22:21:20 2006 +0200 i2c-isa: Fail adding driver on attach_adapter error i2c-isa: Fail adding driver on attach_adapter error Signed-off-by: David Hubbard Signed-off-by: Jean Delvare Signed-off-by: Greg Kroah-Hartman commit 7d9db67febf67dd76329a9dd8f97cf4611a8ac2e Author: Jean Delvare Date: Sun Sep 3 22:20:24 2006 +0200 i2c: __must_check fixes (chip drivers) i2c: __must_check fixes (chip drivers) Check for error on sysfs file creation. Delete sysfs files on device removal. The approach taken for the most complex case (pcf8591) is similar to what Mark M. Hoffman proposed for hardware monitoring chip drivers. Signed-off-by: Jean Delvare Cc: Ben Gardner Cc: Aurelien Jarno Signed-off-by: Greg Kroah-Hartman commit b32d20dc8b187e03605f091dbde9a78676a2a642 Author: Jean Delvare Date: Sun Sep 3 22:19:25 2006 +0200 i2c-dev: attach/detach_adapter cleanups i2c-dev: attach/detach_adapter cleanups * Only print that an adapter was attached when it succeeds. * i2c_dev == NULL on detach simply means that the attach failed before, this isn't an error per se. Signed-off-by: Jean Delvare Signed-off-by: Greg Kroah-Hartman commit 7a8d29cec7a53cf1a29dc5055aa9d1fa0f95830f Author: Jean Delvare Date: Sun Aug 13 23:46:44 2006 +0200 i2c-stub: Chip address as a module parameter i2c-stub: Chip address as a module parameter Add a mandatory chip_addr parameter to i2c-stub. This parameter defines to which chip address the driver will respond, instead of reponding to all addresses as before. The idea is to prevent the users from loading i2c-stub at random and being then confused by the results of sensors-detect or other user-space tools. Signed-off-by: Jean Delvare Signed-off-by: Mark M. Hoffman Signed-off-by: Greg Kroah-Hartman commit 6c805d2ce9d910ea915d7dbe4aed0a91f138be07 Author: Jean Delvare Date: Sun Aug 13 23:45:52 2006 +0200 i2c: Plan i2c-isa for removal i2c: Plan i2c-isa for removal i2c-isa doesn't make much sense in the device driver model. Drivers relying on it are better implemented as platform drivers. We must wait for recent versions of libsensors (2.10.0 or later) to be widely deployed beforehand, though. This move should also make it easier to convert i2c-core to the device driver model. Signed-off-by: Jean Delvare Signed-off-by: Greg Kroah-Hartman commit 010d442c4a295a73e90e93c5e42579cee61c5cc7 Author: Komal Shah Date: Sun Aug 13 23:44:09 2006 +0200 i2c: New bus driver for TI OMAP boards i2c: New bus driver for TI OMAP boards This patch adds I2C bus driver for various Texas Instruments (TI) OMAP1/2 (http://www.ti.com/omap) series based boards like OMAP1510/1610/1710/242x. Signed-off-by: Komal Shah Signed-off-by: Jean Delvare Signed-off-by: Greg Kroah-Hartman commit a0d9c63d3640bd4fc90a408e8334754ef44bcf48 Author: Jean Delvare Date: Sun Aug 27 11:46:49 2006 +0200 i2c-algo-bit: Discard the mdelay data struct member i2c-algo-bit: Discard the mdelay data struct member The i2c_algo_bit_data structure has an mdelay member, which is not used by the algorithm code (the code has always been ifdef'd out.) Let's discard it to save some code and memory. Signed-off-by: Jean Delvare Acked-by: Mauro Carvalho Chehab Cc: Adrian Bunk Signed-off-by: Greg Kroah-Hartman commit 8241cb1401873e18bba746fd3f6c56ce4252a61f Author: Jean Delvare Date: Sun Aug 13 23:40:09 2006 +0200 i2c-matroxfb: Struct init conversion i2c-matroxfb: Struct init conversion Convert the struct i2c_algo_bit_data initialization to proper C99 style. Signed-off-by: Jean Delvare Acked-by: Petr Vandrovec Signed-off-by: Greg Kroah-Hartman commit be53f9b2a08e647396ceaa004199ae4b032a9bd2 Author: Arthur Othieno Date: Sun Aug 13 23:39:11 2006 +0200 i2c: Fix copy-n-paste in subsystem Kconfig i2c: Fix copy-n-paste in subsystem Kconfig We have: drivers/i2c/Kconfig:2:# Character device configuration Which is obviously not true.. Signed-off-by: Arthur Othieno Signed-off-by: Jean Delvare Signed-off-by: Greg Kroah-Hartman commit a294de4e97a7a0cdeb949a3b2fbd4d81addc6d8c Author: Domen Puncer Date: Sun Aug 13 23:37:13 2006 +0200 i2c-au1550: Add I2C support for Au1200 i2c-au1550: Add I2C support for Au1200 Signed-off-by: Domen Puncer Signed-off-by: Ralf Baechle Signed-off-by: Jean Delvare Signed-off-by: Greg Kroah-Hartman commit 6ed07134792655db12fddaafbf870425331a21f6 Author: Domen Puncer Date: Sun Aug 13 23:36:27 2006 +0200 i2c-au1550: Add SMBus functionality flag i2c-au1550: Add SMBus functionality flag Add SMBus functionality flag, so we can use eeprom and similar drivers. Signed-off-by: Domen Puncer Signed-off-by: Jean Delvare Signed-off-by: Greg Kroah-Hartman commit 8859942ede8154c1e90e3b0d1b60aecf0cfaa169 Author: Domen Puncer Date: Sun Aug 13 23:35:40 2006 +0200 i2c-au1550: Fix timeout problem i2c-au1550: Fix timeout problem Fix from Jordan Crouse: If the transmit and recieve FIFOS are not empty, forceably flush them rather then waiting for them to drain on their own. This solves at least a problem reported by Clem Taylor: http://www.linux-mips.org/archives/linux-mips/2006-05/msg00240.html (1% of I2C transactions would timeout) Signed-off-by: Domen Puncer Signed-off-by: Jean Delvare Signed-off-by: Greg Kroah-Hartman commit 643bd3fbd9dc73ed3dc1e4f6980e6f15fdbb9bb6 Author: Jean Delvare Date: Sun Aug 13 23:34:05 2006 +0200 i2c-sibyte: Kip Walker is gone i2c-sibyte: Kip Walker is gone Kip Walker no longer works at Broadcom, and his e-mail address there bounces back, so let's drop it. Signed-off-by: Jean Delvare Signed-off-by: Greg Kroah-Hartman commit 51c3711704b66986373408cbc0540abea43d2380 Author: Jean Delvare Date: Sun Aug 13 23:33:16 2006 +0200 i2c-algo-sibyte: Merge into i2c-sibyte i2c-algo-sibyte: Merge into i2c-sibyte Merge i2c-algo-sibyte into i2c-sibyte, as this is a complete, hardware-dependent SMBus implementation and not a reusable algorithm. Perform some basic coding style cleanups while we're here (mainly space-based indentation replaced by tabulations.) Signed-off-by: Jean Delvare Cc: Ralf Baechle Signed-off-by: Greg Kroah-Hartman commit 3fd39687540bd5d0501f413c91461d3b9fcbb525 Author: Jean Delvare Date: Sun Aug 13 23:32:37 2006 +0200 i2c-algo-sibyte: Cleanups i2c-algo-sibyte: Cleanups * Delete empty algo_control implementation. * Simplify i2c_sibyte_del_bus. * Delete empty module init and cleanup functions. * Drop out-of-date #ifdef MODULE construct. Signed-off-by: Jean Delvare Cc: Ralf Baechle Signed-off-by: Greg Kroah-Hartman commit defcb46ed4666095677c8f52904b9e328587a20d Author: Jean Delvare Date: Tue Aug 15 18:30:24 2006 +0200 i2c: __must_check fixes, i2c-dev i2c: __must_check fixes (i2c-dev) Check for error on sysfs file creation. Check for error on device creation. Delete sysfs file on device destruction. I couldn't test this one beyond compilation, as it applies on top of another patch in Greg's tree [1] which breaks all my systems when I apply it (my udev isn't recent enough.) Anyone with bleeding edge udev is welcome to test and report. [1] http://www.kernel.org/pub/linux/kernel/people/gregkh/gregkh-2.6/patches/i2c/i2c-dev-device.patch Signed-off-by: Jean Delvare Signed-off-by: Greg Kroah-Hartman commit b119c6c952a086f74202ccda4b7ed72161bb6522 Author: Jean Delvare Date: Tue Aug 15 18:26:30 2006 +0200 i2c: __must_check fixes (core drivers) i2c: __must_check fixes (core drivers) Check for error on sysfs file creation. Check for error on device registration. Check for error on class device registration. Greg, I am not familiar with completion, can you please tell me if I need to take care of it in the error paths (as I did in this patch, see /* Needed? */ comments), or if it isn't needed? These patches were tested, including forced errors, so they should work fine. But of course more testing can't hurt. Signed-off-by: Jean Delvare Signed-off-by: Greg Kroah-Hartman commit 22f76e744dc41096987c6df8270b5c249511cde5 Author: Jean Delvare Date: Sat Jul 1 17:20:57 2006 +0200 i2c-dev: Drop the client template i2c-dev: Drop the client template Drop the i2c-dev client template. This saves about 360 bytes of memory. I got the idea from a similar cleanup Hans-Frieder Vogt made to i2c-nforce2 recently. Signed-off-by: Jean Delvare Signed-off-by: Greg Kroah-Hartman commit f3b3aadbbd66d8a020550b01b37d9b1ea559f2c3 Author: Jean Delvare Date: Sat Jul 1 17:17:38 2006 +0200 i2c-dev: Use a list for data storage i2c-dev: Use a list for data storage Use a list instead of a static array for storing the i2c-dev data. Given that most systems have less than 10 i2c busses, most of the space was wasted, so this saves around 1 kB of memory (2 kB on 64-bit archs.) The drawback is that lookup was in O(1) and is now in O(N), but given that the values of N are always small, I don't think this is a problem. Signed-off-by: Jean Delvare Signed-off-by: Greg Kroah-Hartman commit 9455e4c9abf76fa02170743859b2ddbb484e7fdf Author: Jean Delvare Date: Sat Jul 1 17:16:57 2006 +0200 i2c-dev: Cleanups i2c-dev: Cleanups * We no more need to include platform_device.h. * Delete the to_i2c_dev macro, which is no more used (and no more valid either.) * Drop i2c_dev.minor. Now that the minor number always matches the i2c adapter number, this field is redundant with i2c_dev.adap->nr. * Delete i2c_dev_get_by_adapter() which is now redundant with i2c_dev_get_by_minor() for the same reason. * Drop the local variable dev in i2cdev_attach_adapter(), we can easily do without it. Signed-off-by: Jean Delvare Signed-off-by: Greg Kroah-Hartman commit df8f0ec1a413ae610899f009e25dc9777881e149 Author: Al Stone Date: Sat Aug 12 11:08:12 2006 -0600 [IA64] minor reformatting to vmlinux.lds.S Minor reformatting to vmlinux.lds.S to make it 80-column usable, in accordance with Linux coding style. Signed-off-by: Al Stone Signed-off-by: Tony Luck commit ddb4f0df0424d174567a011a176782ffa4202071 Author: Hidetoshi Seto Date: Tue Sep 26 15:27:56 2006 -0700 [IA64] CMC/CPE: Reverse the order of fetching log and checking poll threshold This patch reverses the order of fetching log from SAL and checking poll threshold. This will fix following trivial issues: - If SAL_GET_SATE_INFO is unbelievably slow (due to huge system or just its silly implementation) and if it takes more than 1/5 sec, CMCI/CPEI will never switch to CMCP/CPEP. - Assuming terrible flood of interrupt (continuous corrected errors let all CPUs enter to handler at once and bind them in it), CPUs will be serialized by IA64_LOG_LOCK(*). Now we check the poll threshold after the lock and log fetch, so we need to call SAL_GET_STATE_INFO (num_online_cpus() + 4) times in the worst case. if we can check the threshold before the lock, we can shut up interrupts quickly without waiting preceding log fetches, and the number of times will be reduced to (num_online_cpus()) in the same situation. Signed-off-by: Hidetoshi Seto Signed-off-by: Tony Luck commit b29e7132b5a9f2496beed37beef7ba4d010afb2c Author: Russ Anderson Date: Tue Sep 26 14:47:48 2006 -0500 [IA64] PAL calls need physical mode, stacked PAL_CACHE_READ and PAL_CACHE_WRITE need to be called in physical mode with stacked registers. Signed-off-by: Russ Anderson (rja@sgi.com) Signed-off-by: Tony Luck commit 8f9e146732dcba5161dad3747ee73be1f8c13133 Author: Russ Anderson Date: Mon Sep 18 18:37:15 2006 -0500 [IA64] ar.fpsr not set on MCA/INIT kernel entry When entering the kernel due to an MCA or INIT, ar.fpsr (ar40) was not getting set to the kernel default value (remaining at the user value). The effect depends on the user setting of ar.fpsr. In the test case, the effect was addresses printing with strange hex values. Setting ar.fpsr in ia64_set_kernel_registers sets it for both the MCA and INIT paths. The user value of ar.fpsr is correctly saved (in ia64_state_save) and restored (in ia64_state_restore). Below is an example of output with very strange hex values. Anyone know the value of hex 'g'? :-) Processes interrupted by INIT - 0 (cpu 14 task 0xdfffg55g7a4c6gA) Signed-off-by: Russ Anderson (rja@sgi.com) Signed-off-by: Tony Luck commit 43ed3baf623410b3fa6ca14a9d3f6deca3493c56 Author: Hidetoshi Seto Date: Tue Sep 26 14:44:37 2006 -0700 [IA64] printing support for MCA/INIT Printing message to console from MCA/INIT handler is useful, however doing oops_in_progress = 1 in them exactly makes something in kernel wrong. Especially it sounds ugly if system goes wrong after returning from recoverable MCA. This patch adds ia64_mca_printk() function that collects messages into temporary-not-so-large message buffer during in MCA/INIT environment and print them out later, after returning to normal context or when handlers determine to down the system. Also this print function is exported for use in extensional MCA handler. It would be useful to describe detail about recovery. NOTE: I don't think it is sane thing if temporary message buffer is enlarged enough to hold whole stack dumps from INIT, so buffering is disabled during stack dump from INIT-monarch (= default_monarch_init_process). please fix it in future. Signed-off-by: Hidetoshi Seto Acked-by: Russ Anderson Signed-off-by: Tony Luck commit 8aca23103c2ed2cf158adbe92f4f17ee69463d1a Author: Krzysztof Halasa Date: Tue Sep 26 23:24:16 2006 +0200 [PATCH] Make PC300 WAN driver compile again This patch removes accesses to the HDLC-internal data structures from pc300 driver, thus enabling it to compile but breaking part of its functionality. Signed-off-by: Krzysztof Halasa Signed-off-by: Jeff Garzik commit eb2a2fd91f7c8a53b15063d6f08cf22b9a56cbfb Author: Krzysztof Halasa Date: Tue Sep 26 23:23:45 2006 +0200 [PATCH] Modularize generic HDLC This patch enables building of individual WAN protocol support routines (parts of generic HDLC) as separate modules. All protocol-private definitions are moved from hdlc.h file to protocol drivers. User-space interface and interface between generic HDLC and underlying low-level HDLC drivers are unchanged. Signed-off-by: Krzysztof Halasa Signed-off-by: Jeff Garzik commit 816add4e986499145135c4014a7c8a8857f9f3c3 Author: Jes Sorensen Date: Thu Sep 14 07:10:30 2006 -0400 [IA64] trim output of show_mem() Cut the number of lines of memory info output per node from five to one line. Signed-off-by: Jes Sorensen Signed-off-by: Tony Luck commit fb4633019fd0a871cdf315e1f4082f4c6926af82 Author: Jeff Garzik Date: Tue Sep 26 17:16:32 2006 -0400 [libata] One more s/15/ATA_SECONDARY_IRQ/ substitution Signed-off-by: Jeff Garzik commit 709a6c1c07673a9f7879b5f7306dc8d723db93a2 Author: Jes Sorensen Date: Wed Sep 13 08:43:42 2006 -0400 [IA64] show_mem() printk levels Use the default sysrq printk level for printing show_mem() output both for disconfig and contig versions. This is consistent with the printk level used on other architectures (well ia32 at least). Signed-off-by: Jes Sorensen Signed-off-by: Tony Luck commit 5e96f59f9b20373014abd5e30fba4805c5d4f53f Author: Steven Whitehouse Date: Tue Sep 26 17:14:02 2006 -0400 [GFS2] Remove (extra) fs_subsys declaration This is already in Linus' tree, so we don't need to add another one. Signed-off-by: Steven Whitehouse commit f5a3f3dc189485d607fbd42678cc23958acc0a6e Author: Zou Nan hai Date: Thu Sep 14 08:25:15 2006 +0800 [IA64] Make gp value point to Region 5 in mca handler MCA dispatch code take physical address of GP passed from SAL, then call DATA_PA_TO_VA twice on GP before call into C code. The first time is in ia64_set_kernel_register, the second time is in VIRTUAL_MODE_ENTER. The gp is changed to a virtual address in region 7 because DATA_PA_TO_VA is implemented by dep instruction. However when notify blocks were called from MCA handler code, because notify blocks are supported by callback function pointers, gp value value was switched to region 5 again. The patch set gp register to kernel gp of region 5 at entry of MCA dispatch. Signed-off-by: Zou Nan hai Signed-off-by: Tony Luck commit efbf3f14204b77e6afc8c13571357173de9ab707 Author: Jeff Garzik Date: Tue Sep 26 17:10:53 2006 -0400 [libata] pata_serverworks: fill in ->irq_clear hook Required by libata, as it is called unconditionally. Fixes an obvious oops. Signed-off-by: Jeff Garzik commit 68d0d7abcc4cfcf0a1eeb49785cb32ec05473e42 Author: Alan Cox Date: Tue Sep 26 22:24:31 2006 +0100 [PATCH] pata_serverworks: correct PCI ID in cable detection table Signed-off-by: Alan Cox Signed-off-by: Jeff Garzik commit 5c55cd63a77a85f603c98c2171a8054ca34b6a9f Author: Tony Luck Date: Tue Sep 26 14:04:42 2006 -0700 Revert "[IA64] Unwire set/get_robust_list" This reverts commit 2636255488484e04d6d54303d2b0ec30f7ef7e02. Jakub Jelinek provided the missing futex_atomic_cmpxchg_inatomic() function, so now it should be safe to re-enable these syscalls. Signed-off-by: Tony Luck commit a192dc16000241dc02990a36b6830839b73c44de Author: Jakub Jelinek Date: Tue Sep 26 14:00:56 2006 -0700 [IA64] Implement futex primitives Implement futex_atomic_op_inuser() and futex_atomic_cmpxchg_inatomic() on IA64 in order to fully support all futex functionality. Signed-off-by: Jakub Jelinek Signed-off-by: David Woodhouse Signed-off-by: Tony Luck commit fd1dfc6f0165e2ad426665e517103672d6832f90 Author: Christoph Lameter Date: Tue Sep 5 11:56:51 2006 -0700 [IA64-SGI] Do not request DMA memory for BTE The GFP_DMA option usually does nothing on SN2 since all of memory is in thei DMA zone and the BTE has always been capable of addressing all of memory. So there is no need to get memory from a restricted range of memory (which is what GFP_DMA is for). Remove useless __GFP_DMA option. Signed-off-by: Christoph Lameter Signed-off-by: Tony Luck commit 35589a8fa8138244e7f2ef9317c440aa580c9335 Author: Keshavamurthy Anil S Date: Tue Sep 26 12:03:13 2006 -0700 [IA64] Move perfmon tables from thread_struct to pfm_context This patch renders thread_struct->pmcs[] and thread_struct->pmds[] OBSOLETE. The actual table is moved to pfm_context structure which saves space in thread_struct (in turn saving space in task_struct which frees up more space for kernel stacks). Signed-off-by: Stephane Eranian Signed-off-by: Anil S Keshavamurthy Signed-off-by: Tony Luck commit dd562c05410e13e878a3ee0deb8ac06db2e132c7 Author: Stephane Eranian Date: Thu Sep 21 10:35:44 2006 -0700 [IA64] Add interface so modules can discover whether multithreading is on. Add is_multithreading_enabled() to check whether multi-threading is enabled independently of which cpu is currently online Signed-off-by: stephane eranian Signed-off-by: Tony Luck commit a2a65a3ecb54ecd1a8f0409f11cb82ae083c6964 Author: Eric Sesterhenn Date: Mon Sep 25 16:59:07 2006 -0700 [SCSI] Signedness issue in drivers/scsi/ipr.c gcc 4.1 with some extra warnings show the following: drivers/scsi/ipr.c:6361: warning: comparison of unsigned expression < 0 is always false drivers/scsi/ipr.c:6385: warning: comparison of unsigned expression < 0 is always false drivers/scsi/ipr.c:6415: warning: comparison of unsigned expression < 0 is always false The problem is that rc is of the type u32, which can never be smaller than zero, therefore all three error handling checks get useless. This patch changes it to a normal int, because all usages / all functions it get used with expect an int. Signed-off-by: Eric Sesterhenn Acked-by: Brian King Signed-off-by: Andrew Morton Signed-off-by: James Bottomley commit dcbccbde00b85b4d4a1c206b419e7a3d2ab2b1cd Author: Henrik Kretzschmar Date: Mon Sep 25 16:58:58 2006 -0700 [SCSI] pci_module_init conversion in scsi subsystem Converts pci_module_init() to pci_register_driver() in the scsi subsys on 23 drivers which only return the value of pci_module_init(). Signed-off-by: Henrik Kretzschmar Signed-off-by: Andrew Morton Signed-off-by: James Bottomley commit 45223fd77c2b39d05dd7f1aaabf614abb1770bbe Author: Eric Sesterhenn Date: Mon Sep 25 16:59:08 2006 -0700 [SCSI] Signdness issue in drivers/scsi/osst.c another signdness warning from gcc 4.1 drivers/scsi/osst.c:5154: warning: comparison of unsigned expression < 0 is always false The problem is that blk is defined as unsigned, but all usages of it are normal int cases. osst_get_frame_position() and osst_get_sector() return ints and can return negative values. If blk stays an unsigned int, the error check is useless. Signed-off-by: Eric Sesterhenn Signed-off-by: Andrew Morton Signed-off-by: James Bottomley commit 53aefd3fc31f08487f6941282ef6611413e02e43 Author: Henrik Kretzschmar Date: Mon Sep 25 16:59:12 2006 -0700 [SCSI] scsi: included header cleanup Free seagate.h from obsolete drivers/scsi.h, remove a double inclusion od linux/delay.h and remove the unneeded scsi/scsi_ioctl.h Signed-off-by: Henrik Kretzschmar Signed-off-by: Andrew Morton Signed-off-by: James Bottomley commit 20a2460b4dd07fe7dc74b281fcbe18bac03830aa Author: Michal Piotrowski Date: Mon Sep 25 16:59:06 2006 -0700 [SCSI] drivers/message/fusion/linux_compat.h Removal of old code Signed-off-by: Michal Piotrowski Acked-by: "Moore, Eric Dean" Signed-off-by: Andrew Morton Signed-off-by: James Bottomley commit c03d10ab6aafe6706520e1595d6e91d0e50ac5ad Author: Michal Piotrowski Date: Mon Sep 25 16:59:03 2006 -0700 [SCSI] drivers/scsi/gdth.h: removal of old scsi code Signed-off-by: Michal Piotrowski Signed-off-by: Andrew Morton Signed-off-by: James Bottomley commit fd32cb3a9c9f9399421408e8734cd8a6d9d1a09f Author: Keshavamurthy Anil S Date: Mon Sep 25 16:32:20 2006 -0700 [IA64] kprobes: fixup the pagefault exception caused by probehandlers If the user-specified kprobe handler causes the page fault when accessing user space address, fixup this fault since do_page_fault() should not continue as the kprobe handler are run with preemption disabled. Signed-off-by: Anil S Keshavamurthy Signed-off-by: Andrew Morton Signed-off-by: Tony Luck commit 214ddde2f95037e129eff7e895869771719c7c1b Author: bibo mao Date: Tue Sep 26 11:20:37 2006 -0700 [IA64] kprobe opcode 16 bytes alignment on IA64 On IA64 instruction opcode must be 16 bytes alignment, in kprobe structure there is one element to save original instruction, currently saved opcode is not statically allocated in kprobe structure, that can not assure 16 bytes alignment. This patch dynamically allocated kprobe instruction opcode to assure 16 bytes alignment. Signed-off-by: bibo mao Acked-by: Anil S Keshavamurthy Signed-off-by: Tony Luck commit 288777f89a63ca0bece7b5e082ce9beebacfb8fd Author: Michal Piotrowski Date: Mon Sep 25 16:59:02 2006 -0700 [SCSI] drivers/scsi/dpt/dpti_i2o.h: removal of old scsi code Signed-off-by: Michal Piotrowski Signed-off-by: Andrew Morton Signed-off-by: James Bottomley commit f5ebbeb57e4b57ac44f29ff9ec2ebde1401999d1 Author: Eric W. Biederman Date: Mon Sep 25 16:59:01 2006 -0700 [SCSI] megaraid: Use the proper type to hold the irq number. When testing on a Unisys machine it was discovered that the megaraid driver would not initialize as it was requesting irq 162 instead of irq 1442 it was assigned. The problem was the irq number had been truncated by being stored in an unsigned char. This patches fixes that problem and the driver now appears to work. The ioctl interface appears fundamentally broken as it exports the irq number to user space in an unsigned char. Signed-off-by: Eric W. Biederman Signed-off-by: Andrew Morton Signed-off-by: James Bottomley commit d41ba22a6d330ab1e8d3adde7d2ce9349d4e4dc7 Author: Alexey Dobriyan Date: Mon Sep 25 16:59:11 2006 -0700 [SCSI] 3w-xxxx: fix "ATA UDMA upgrade" message number sparse "defined twice" warning Signed-off-by: Alexey Dobriyan Signed-off-by: Andrew Morton Signed-off-by: James Bottomley commit 16c8729a46b599bca647839556a33d0b59522e94 Author: Michal Piotrowski Date: Mon Sep 25 16:59:04 2006 -0700 [SCSI] drivers/scsi/nsp32.h: removal of old scsi code Signed-off-by: Michal Piotrowski Signed-off-by: Andrew Morton Signed-off-by: James Bottomley commit 76be12de87c4601cf35a88f83d199b940d995c62 Author: Randy Dunlap Date: Mon Sep 25 16:58:56 2006 -0700 [SCSI] dc395x: fix printk format warning drivers/scsi/dc395x.c:1224: warning: format '%i' expects type 'int', but argument 5 has type 'size_t' Signed-off-by: Randy Dunlap Signed-off-by: Andrew Morton Signed-off-by: James Bottomley commit daac0acd597618b99bba5f8fff31f21e4f283154 Author: Alan Cox Date: Tue Sep 26 17:55:37 2006 +0100 [PATCH] libata-sff: use our IRQ defines Signed-off-by: Alan Cox Signed-off-by: Jeff Garzik commit c961922b73dab429a759f560952fd4c3f60bd6b3 Author: Alan Cox Date: Tue Sep 26 17:53:38 2006 +0100 [PATCH] libata-eh: Remove layering violation and duplication when handling absent ports This removes the layering violation where drivers have to fiddle directly with EH flags. Instead we now recognize -ENOENT means "no port" and do the handling in the core code. This also removes an instance of a call to disable the port, and an identical printk from each driver doing this. Even better - future rule changes will be in one place only. Signed-off-by: Alan Cox Signed-off-by: Jeff Garzik commit 4735ebedf37731160e3d3efc9fc9d4939c66fefa Author: Alan Cox Date: Tue Sep 26 17:37:22 2006 +0100 [PATCH] libata: tighten rules for legacy dependancies The legacy and QDI drivers are ISA/VLB bus [we don't have a VLB define but ISA will do nicely]. Signed-off-by: Alan Cox Signed-off-by: Jeff Garzik commit 02f076aaa1478a91762de522ecb029efbc279690 Author: Alan Cox Date: Tue Sep 26 17:35:32 2006 +0100 [PATCH] libata: refuse to register IRQless ports We don't currently support pure polled operation so when we meet a BIOS which forgot to assign an IRQ to a PCI device it all goes a little pear shaped. Trap this case properly. Signed-off-by: Alan Cox Signed-off-by: Jeff Garzik commit 35a39691e4daa3c371c265e4cb8356c67ded45ec Author: Brian King Date: Mon Sep 25 12:39:20 2006 -0500 [SCSI] ipr: Support attaching SATA devices Adds support to attach SATA devices to ipr SAS adapters. Signed-off-by: Brian King Signed-off-by: James Bottomley commit d7694f8c0bb61829b1bd4d5543a51c66f04a6c3e Author: Henrik Kretzschmar Date: Fri Sep 15 18:50:34 2006 +0200 [SCSI] seagate: remove header and convert to struct scsi_cmnd Signed-off-by: Henrik Kretzschmar Signed-off-by: James Bottomley commit 15d1f53fc7654d62af7e9b23049ae3b71f5b161c Author: Jes Sorensen Date: Mon Sep 25 05:44:57 2006 -0400 [SCSI] qla1280 command timeout Original patch from Ian Dall in bugzilla. Set command timeout as specified by the SCSI layer rather than hardcode it to 30 seconds. I have received a couple of reports of people hitting this one with various tape configurations and the patch looks obviously correct. - Jes From http://bugzilla.kernel.org/show_bug.cgi?id=6275 ian@beware.dropbear.id.au (Ian Dall): The command sent to the card was using a 30second timeout regardless of the timeout requested in the scsi command passed down from higher levels. Signed-off-by: Jes Sorensen Signed-off-by: James Bottomley commit bc54ec6b0782979a440603beeed349b2eac39a59 Author: Muli Ben-Yehuda Date: Mon Sep 25 17:10:19 2006 +0300 [SCSI] aic94xx: require firmware loader aic94xx relies on external firmware and thus requires FW_LOADER. Signed-off-by: Muli Ben-Yehuda Signed-off-by: James Bottomley commit 6460e75a104d10458817d2f5b2fbff775bf0b43a Author: Douglas Gilbert Date: Wed Sep 20 18:20:49 2006 -0400 [SCSI] sg: fixes for large page_size This sg driver patch addresses the problem with larger page sizes reported by Brian King in this post: http://marc.theaimsgroup.com/?l=linux-scsi&m=115867718623631&w=2 Some other related matters are also addressed. Some of these prevent oopses when the SG_SCATTER_SZ or scatter_elem_sz are set to inappropriate values. The scatter_elem_sz has been tested up to 4 MB which should make the largest data transfer with one SCSI command, 32 MB less one block, achievable with a relatively small number of elements in the scatter gather list. ChangeLog: - add scatter_elem_sz boot time parameter and sysfs module parameter that is initialized to SG_SCATTER_SZ - the driver will then adjust scatter_elem_sz to be the max(given(scatter_elem_sz), PAGE_SIZE) It will also round it up, if necessary, to be a power of two - clean up sg.h header, correct bad urls and some statements that are no longer valid - make the def_reserved_size sysfs module attribute writable Signed-off-by: Douglas Gilbert Signed-off-by: James Bottomley commit 8aee918a1cff2a3722ce76fc6fa5abe09aa98d1b Author: James Smart Date: Thu Aug 31 12:27:57 2006 -0400 [SCSI] lpfc: don't free mempool if mailbox is busy Signed-off-by: James Bottomley commit e8216dee838c09776680a6f1a2e54d81f3cdfa14 Author: Heiko Carstens Date: Mon Sep 25 23:33:11 2006 -0700 [PATCH] s390: fix cmm kernel thread handling Convert cmm's usage of kernel_thread to kthread_run. Also create the cmmthread at module load time, so it is possible to check if creation of the thread fails. In addition the cmmthread now gets terminated when the module gets unloaded instead of leaving a stale kernel thread. Also check the return values of other registration functions at module load and handle their return values appropriately. Cc: Martin Schwidefsky Signed-off-by: Heiko Carstens Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit e8df8c3304cfc7d68e9a6a7b6df6c64783cd6991 Author: Jeff Dike Date: Mon Sep 25 23:33:10 2006 -0700 [PATCH] Make UML use ptrace-abi.h Include the host architecture's ptrace-abi.h instead of ptrace.h. There was some cpp mangling of names around the ptrace.h include to avoid symbol clashes between UML and the host architecture. Most of these can go away. The exception is struct pt_regs, which is convenient to have in userspace, but must be renamed in order that UML can define its own. ptrace-x86_64.h needed to have some now-obsolete cpp cruft and a declaration removed. Signed-off-by: Jeff Dike Cc: David Woodhouse Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 70e0eb8ef143f3729065c504177413ffe165af22 Author: Jeff Dike Date: Mon Sep 25 23:33:09 2006 -0700 [PATCH] Split i386 and x86_64 ptrace.h The use of SEGMENT_RPL_MASK in the i386 ptrace.h introduced by x86-allow-a-kernel-to-not-be-in-ring-0.patch broke the UML build, as UML includes the underlying architecture's ptrace.h, but has no easy access to the x86 segment definitions. Rather than kludging around this, as in the past, this patch splits the userspace-usable parts, which are the bits that UML needs, of ptrace.h into ptrace-abi.h, which is included back into ptrace.h. Thus, there is no net effect on i386. As a side-effect, this creates a ptrace header which is close to being usable in /usr/include. x86_64 is also treated in this way for consistency. There was some trailing whitespace there, which is cleaned up. Signed-off-by: Jeff Dike Cc: David Woodhouse Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit b1fc0b1f21c4082d24d1f456a846b4fa7d16a70b Author: Alan Cox Date: Mon Sep 25 23:33:08 2006 -0700 [PATCH] UML: tty locking Ensure current->signal->tty doesn't get freed during log_exec(). Signed-off-by: Alan Cox Acked-by: Jeff Dike Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 75e29b18d9a46bf3193278e92dc95609a8cca2ab Author: Jeff Dike Date: Mon Sep 25 23:33:08 2006 -0700 [PATCH] uml: stack usage reduction The KSTK_* macros used an inordinate amount of stack. In order to overcome an impedance mismatch between their interface, which just returns a single register value, and the interface of get_thread_regs, which took a full pt_regs, the implementation created an on-stack pt_regs, filled it in, and returned one field. do_task_stat calls KSTK_* twice, resulting in two local pt_regs, blowing out the stack. This patch changes the interface (and name) of get_thread_regs to just return a single register from a jmp_buf. The include of archsetjmp.h" in registers.h to get the definition of jmp_buf exposed a bogus include of in start_up.c. shouldn't be used anywhere any more since UML uses the klibc setjmp/longjmp. Signed-off-by: Jeff Dike Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit bf61f50d63b4d9e30d7a86a2d44bb300ae7c1dd4 Author: Paolo 'Blaisorblade' Giarrusso Date: Mon Sep 25 23:33:07 2006 -0700 [PATCH] uml: clean our set_ether_mac Clean set_ether_mac usage. Maybe could also be removed, but surely it can't be a global function taking a void* argument. Signed-off-by: Paolo 'Blaisorblade' Giarrusso Acked-by: Jeff Dike Cc: Jeff Garzik Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 602cc2418177a5b80f533f569e5a42c4495988c9 Author: Jeff Dike Date: Mon Sep 25 23:33:06 2006 -0700 [PATCH] uml: Remove unused variable timer_irq_inited was useless, so it is removed. Signed-off-by: Jeff Dike Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 537ae946e808d0f22d660f7a3500832fe0c07d14 Author: Jeff Dike Date: Mon Sep 25 23:33:05 2006 -0700 [PATCH] uml: timer cleanups set_interval returns an error instead of panicing if setitimer fails. Some of its callers now check the return. enable_timer is largely tt-mode-specific, so it is marked as such, and the only skas-mode caller is made to call set-interval instead. user_time_init was a no-value-added wrapper around set_interval, so it is gone. Since set_interval is now called from kernel code, callers no longer pass ITIMER_* to it. Instead, they pass a flag which is converted into ITIMER_REAL or ITIMER_VIRTUAL. Signed-off-by: Jeff Dike Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 4b84c69b5f6c08a540e3683f1360a6cdef2806c7 Author: Jeff Dike Date: Mon Sep 25 23:33:04 2006 -0700 [PATCH] uml: Move signal handlers to arch code Have most signals go through an arch-provided handler which recovers the sigcontext and then calls a generic handler. This replaces the ARCH_GET_SIGCONTEXT macro, which was somewhat fragile. On x86_64, recovering %rdx (which holds the sigcontext pointer) must be the first thing that happens. sig_handler duly invokes that first, but there is no guarantee that I can see that instructions won't be reordered such that %rdx is used before that. Having the arch provide the handler seems much more robust. Some signals in some parts of UML require their own handlers - these places don't call set_handler any more. They call sigaction or signal themselves. Signed-off-by: Jeff Dike Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 19bdf0409f25a85a45874a5a8da6f3e4edcf4a49 Author: Jeff Dike Date: Mon Sep 25 23:33:04 2006 -0700 [PATCH] uml: SIGIO cleanups - Various cleanups in the sigio code. - Removed explicit zero-initializations of a few structures. - Improved some error messages. - An API change - there was an asymmetry between reactivate_fd calling maybe_sigio_broken, which goes through all the machinery of figuring out if a file descriptor supports SIGIO and applying the workaround to it if not, and deactivate_fd, which just turns off the descriptor. This is changed so that only activate_fd calls maybe_sigio_broken, when the descriptor is first seen. reactivate_fd now calls add_sigio_fd, which is symmetric with ignore_sigio_fd. This removes a recursion which makes a critical section look more critical than it really was, obsoleting a big comment to that effect. This requires keeping track of all descriptors which are getting the SIGIO treatment, not just the ones being polled at any given moment, so that reactivate_fd, through add_sigio_fd, doesn't try to tell the SIGIO thread about descriptors it doesn't care about. Signed-off-by: Jeff Dike Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 6edf428ed177e333863a8e5c37751a9ec176f241 Author: Jeff Dike Date: Mon Sep 25 23:33:03 2006 -0700 [PATCH] uml: Improve SIGBUS diagnostics UML can get a SIGBUS anywhere if the tmpfs mount being used for its memory runs out of space. This patch adds a printk before the panic to provide a clue as to what likely went wrong. Signed-off-by: Jeff Dike Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 6b7aaad9ba4f2a059a70014be12a921eceebfc47 Author: Jeff Dike Date: Mon Sep 25 23:33:02 2006 -0700 [PATCH] uml: Fix handling of failed execs of helpers There were some bugs in handling failures to exec helper programs. errno was passed back from the child with the wrong sign. It was also ignored. In the case where it mattered, the errno from the (successful) read in the parent was used instead. Signed-off-by: Jeff Dike Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 5e1f65a67d76341795ea527d30bfdca03999d46b Author: Jeff Dike Date: Mon Sep 25 23:33:01 2006 -0700 [PATCH] uml: Whitespace fixes arch/um/kernel/tlb.c had some pretty serious whitespace problems. I also fixed some returns. Signed-off-by: Jeff Dike Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 8f80e9466e18288df7391c9d21532c4125ac9c62 Author: Jeff Dike Date: Mon Sep 25 23:33:01 2006 -0700 [PATCH] uml: Fix stack alignment Stack randomization needs to be conditional on the personality allowing it. Signed-off-by: Jeff Dike Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 91b165c0594ab78c64f26d26e3174e6dfd60ed9d Author: Jeff Dike Date: Mon Sep 25 23:33:00 2006 -0700 [PATCH] uml: Use ARRAY_SIZE more assiduously There were a bunch of missed ARRAY_SIZE opportunities. Also, some formatting fixes in the affected areas of code. Signed-off-by: Jeff Dike Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 13c06be399902c9ebda08e092edb1614bb4a3761 Author: Jeff Dike Date: Mon Sep 25 23:32:59 2006 -0700 [PATCH] uml: Use klibc setjmp/longjmp This patch adds an implementation of setjmp and longjmp to UML, allowing access to the inside of a jmpbuf without needing the access macros formerly provided by libc. The implementation is stolen from klibc. I copy the relevant files into arch/um. I have another patch which avoids the copying, but requires klibc be in the tree. setjmp and longjmp users required some tweaking. Includes of were removed and includes of the UML longjmp.h were added where necessary. There are also replacements of siglongjmp with UML_LONGJMP which I somehow missed earlier. Signed-off-by: Jeff Dike Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit c5c6ba4e08ab9c9e390a0f3a7d9a5c332f5cc6ef Author: Rafael J. Wysocki Date: Mon Sep 25 23:32:58 2006 -0700 [PATCH] PM: Add pm_trace switch Add the pm_trace attribute in /sys/power which has to be explicitly set to one to really enable the "PM tracing" code compiled in when CONFIG_PM_TRACE is set (which modifies the machine's CMOS clock in unpredictable ways). Signed-off-by: Rafael J. Wysocki Acked-by: Pavel Machek Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 7d145aa3abf4d96c91f37c012facd5cfbb9010d1 Author: Rafael J. Wysocki Date: Mon Sep 25 23:32:57 2006 -0700 [PATCH] i386: Detect clock skew during suspend Detect the situations in which the time after a resume from disk would be earlier than the time before the suspend and prevent them from happening on i386. Signed-off-by: Rafael J. Wysocki Acked-by: John Stultz Acked-by: Pavel Machek Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit e1da95ae38afdcda83328300c4aed755d9fc01a6 Author: Rafael J. Wysocki Date: Mon Sep 25 23:32:57 2006 -0700 [PATCH] suspend: make it possible to disable serial console suspend Hack uart_suspend_port() and uart_resume_port() so that serial console ports are not suspended if CONFIG_DISABLE_CONSOLE_SUSPEND is set. This makes it possible to debug the suspend and resume routines of all device drivers as well as the lowest-level swsusp code with the help of the serial console. Signed-off-by: Rafael J. Wysocki Acked-by: Pavel Machek Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit c8eb8b4025175f967af0ba8e933f23aa9954dc35 Author: Rafael J. Wysocki Date: Mon Sep 25 23:32:56 2006 -0700 [PATCH] PM: make it possible to disable console suspending Change suspend_console() so that it waits for all consoles to flush the remaining messages and make it possible to switch the console suspending off with the help of a Kconfig option. Signed-off-by: Rafael J. Wysocki Acked-by: Pavel Machek Cc: Stefan Seyfried Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 940864ddabdb180e02041c4dcd46ba6f9eee732f Author: Rafael J. Wysocki Date: Mon Sep 25 23:32:55 2006 -0700 [PATCH] swsusp: Use memory bitmaps during resume Make swsusp use memory bitmaps to store its internal information during the resume phase of the suspend-resume cycle. If the pfns of saveable pages are saved during the suspend phase instead of the kernel virtual addresses of these pages, we can use them during the resume phase directly to set the corresponding bits in a memory bitmap. Then, this bitmap is used to mark the page frames corresponding to the pages that were saveable before the suspend (aka "unsafe" page frames). Next, we allocate as many page frames as needed to store the entire suspend image and make sure that there will be some extra free "safe" page frames for the list of PBEs constructed later. Subsequently, the image is loaded and, if possible, the data loaded from it are written into their "original" page frames (ie. the ones they had occupied before the suspend). The image data that cannot be written into their "original" page frames are loaded into "safe" page frames and their "original" kernel virtual addresses, as well as the addresses of the "safe" pages containing their copies, are stored in a list of PBEs. Finally, the list of PBEs is used to copy the remaining image data into their "original" page frames (this is done atomically, by the architecture-dependent parts of swsusp). Signed-off-by: Rafael J. Wysocki Acked-by: Pavel Machek Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit b788db79896ef2a5817b9395ad63573b254a6d93 Author: Rafael J. Wysocki Date: Mon Sep 25 23:32:54 2006 -0700 [PATCH] swsusp: Introduce memory bitmaps Introduce the memory bitmap data structure and make swsusp use in the suspend phase. The current swsusp's internal data structure is not very efficient from the memory usage point of view, so it seems reasonable to replace it with a data structure that will require less memory, such as a pair of bitmaps. The idea is to use bitmaps that may be allocated as sets of individual pages, so that we can avoid making allocations of order greater than 0. For this reason the memory bitmap structure consists of several linked lists of objects that contain pointers to memory pages with the actual bitmap data. Still, for a typical system all of these lists fit in a single page, so it's reasonable to introduce an additional mechanism allowing us to allocate all of them efficiently without sacrificing the generality of the design. This is done with the help of the chain_allocator structure and associated functions. We need to use two memory bitmaps during the suspend phase of the suspend-resume cycle. One of them is necessary for marking the saveable pages, and the second is used to mark the pages in which to store the copies of them (aka image pages). First, the bitmaps are created and we allocate as many image pages as needed (the corresponding bits in the second bitmap are set as soon as the pages are allocated). Second, the bits corresponding to the saveable pages are set in the first bitmap and the saveable pages are copied to the image pages. Finally, the first bitmap is used to save the kernel virtual addresses of the saveable pages and the second one is used to save the contents of the image pages. Signed-off-by: Rafael J. Wysocki Acked-by: Pavel Machek Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 0bcd888d64684f896ffa70c1d16a42b00753c184 Author: Rafael J. Wysocki Date: Mon Sep 25 23:32:52 2006 -0700 [PATCH] swsusp: Introduce some helpful constants Introduce some constants that hopefully will help improve the readability of code in kernel/power/snapshot.c. Signed-off-by: Rafael J. Wysocki Acked-by: Pavel Machek Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 75534b50cc658e951bcb213c2763c81e9f7b0b48 Author: Rafael J. Wysocki Date: Mon Sep 25 23:32:52 2006 -0700 [PATCH] Change the name of pagedir_nosave The name of the pagedir_nosave variable does not make sense any more, so it seems reasonable to change it to something more meaningful. Signed-off-by: Rafael J. Wysocki Acked-by: Pavel Machek Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit dcbb5a54f6e3984efa24772394f2225b11495c55 Author: Rafael J. Wysocki Date: Mon Sep 25 23:32:51 2006 -0700 [PATCH] swsusp: clean up suspend header Remove some things that are no longer used or defined elsewhere from suspend.h and make the inline version of software_suspend() return the right error code. Signed-off-by: Rafael J. Wysocki Cc: Pavel Machek Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit cd560bb2f9e2cd451bb3942af43da19632ba4a8e Author: Rafael J. Wysocki Date: Mon Sep 25 23:32:50 2006 -0700 [PATCH] swsusp: Fix alloc_pagedir Get rid of the FIXME in kernel/power/snapshot.c#alloc_pagedir() and simplify the functions called by it. Signed-off-by: Rafael J. Wysocki Acked-by: Pavel Machek Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit f6143aa60ed71e58578bc92cc64d98158a694d99 Author: Rafael J. Wysocki Date: Mon Sep 25 23:32:50 2006 -0700 [PATCH] swsusp: Reorder memory-allocating functions Move some functions in kernel/power/snapshot.c to a better place (in the same file) and introduce free_image_page() (will be necessary in the future). Signed-off-by: Rafael J. Wysocki Acked-by: Pavel Machek Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit f623f0db8e6aa86a37be86167e4ff478821a9f4f Author: Rafael J. Wysocki Date: Mon Sep 25 23:32:49 2006 -0700 [PATCH] swsusp: Fix mark_free_pages Clean up mm/page_alloc.c#mark_free_pages() and make it avoid clearing PageNosaveFree for PageNosave pages. This allows us to get rid of an ugly hack in kernel/power/snapshot.c#copy_data_pages(). Additionally, the page-copying loop in copy_data_pages() is moved to an inline function. Signed-off-by: Rafael J. Wysocki Cc: Pavel Machek Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit e3920fb42c8ddfe63befb54d95c0e13eabacea9b Author: Rafael J. Wysocki Date: Mon Sep 25 23:32:48 2006 -0700 [PATCH] Disable CPU hotplug during suspend The current suspend code has to be run on one CPU, so we use the CPU hotplug to take the non-boot CPUs offline on SMP machines. However, we should also make sure that these CPUs will not be enabled by someone else after we have disabled them. The functions disable_nonboot_cpus() and enable_nonboot_cpus() are moved to kernel/cpu.c, because they now refer to some stuff in there that should better be static. Also it's better if disable_nonboot_cpus() returns an error instead of panicking if something goes wrong, and enable_nonboot_cpus() has no reason to panic(), because the CPUs may have been enabled by the userland before it tries to take them online. Signed-off-by: Rafael J. Wysocki Acked-by: Pavel Machek Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit e8eff5ac294e12531c4195e0c15a222d3c9015e5 Author: Rafael J. Wysocki Date: Mon Sep 25 23:32:46 2006 -0700 [PATCH] Make swsusp avoid memory holes and reserved memory regions on x86_64 On x86_64 machines with more than 2 GB of RAM there are large memory gaps (with no corresponding kernel virtual addresses) and reserved memory regions between areas of usable physical RAM. Moreover, if CONFIG_FLATMEM is set, they appear within the normal zone. swsusp should not try to save them, so the corresponding page structs have to be marked as 'nosave'. Signed-off-by: Rafael J. Wysocki Cc: Mel Gorman Acked-by: Pavel Machek Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit fb13a28b0f5ada60861868c4fa48a12bd0cb8dea Author: Rafael J. Wysocki Date: Mon Sep 25 23:32:46 2006 -0700 [PATCH] swsusp: struct snapshot_handle cleanup Add comments describing struct snapshot_handle and its members, change the confusing name of its member 'page' to 'cur'. Signed-off-by: Rafael J. Wysocki Cc: Pavel Machek Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit ae83c5eef59ffe6eb61110b8c8fd1ea3e0881712 Author: Rafael J. Wysocki Date: Mon Sep 25 23:32:45 2006 -0700 [PATCH] swsusp: clean up browsing of pfns Clean up some loops over pfns for each zone in snapshot.c: reduce the number of additions to perform, rework detection of saveable pages and make the code a bit less difficult to understand, hopefully. Signed-off-by: Rafael J. Wysocki Acked-by: Pavel Machek Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 546e0d271941dd1ff6961e2a1f7eac75f1fc277e Author: Andrew Morton Date: Mon Sep 25 23:32:44 2006 -0700 [PATCH] swsusp: read speedup Implement async reads for swsusp resuming. Crufty old PIII testbox: 15.7 MB/s -> 20.3 MB/s Sony Vaio: 14.6 MB/s -> 33.3 MB/s I didn't implement the post-resume bio_set_pages_dirty(). I don't really understand why resume needs to run set_page_dirty() against these pages. It might be a worry that this code modifies PG_Uptodate, PG_Error and PG_Locked against the image pages. Can this possibly affect the resumed-into kernel? Hopefully not, if we're atomically restoring its mem_map? Cc: Pavel Machek Cc: "Rafael J. Wysocki" Cc: Jens Axboe Cc: Laurent Riffard Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 8c002494b55119a3fd1dddee83b4fb75cfda47e5 Author: Andrew Morton Date: Mon Sep 25 23:32:43 2006 -0700 [PATCH] swsusp: add read-speed instrumentation Add some instrumentation to the swsusp readin code to show what bandwidth we're achieving. Cc: Pavel Machek Cc: "Rafael J. Wysocki" Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit ab954160350c91c77ae03740ef90458c3ad5412c Author: Andrew Morton Date: Mon Sep 25 23:32:42 2006 -0700 [PATCH] swsusp: write speedup Switch the swsusp writeout code from 4k-at-a-time to 4MB-at-a-time. Crufty old PIII testbox: 12.9 MB/s -> 20.9 MB/s Sony Vaio: 14.7 MB/s -> 26.5 MB/s The implementation is crude. A better one would use larger BIOs, but wouldn't gain any performance. The memcpys will be mostly pipelined with the IO and basically come for free. The ENOMEM path has not been tested. It should be. Cc: Pavel Machek Cc: "Rafael J. Wysocki" Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 3a4f7577c9ef393ca80c783f02ffbc125de771c7 Author: Andrew Morton Date: Mon Sep 25 23:32:41 2006 -0700 [PATCH] swsusp: add write-speed instrumentation Add some instrumentation to the swsusp writeout code to show what bandwidth we're achieving. Cc: Pavel Machek Cc: "Rafael J. Wysocki" Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 930631edd4b1fe2781d9fe90edbe35d89dfc94cc Author: Steven Whitehouse Date: Mon Sep 25 23:32:40 2006 -0700 [PATCH] add DIV_ROUND_UP() Add the DIV_ROUND_UP() helper macro: divide `n' by `d', rounding up. Stolen from the gfs2 tree(!) because the swsusp patches need it. Signed-off-by: Steven Whitehouse Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 060ec3d52db417a4fa554b6e14594ca62418c326 Author: Fernando J. Pereda Date: Mon Sep 25 23:32:37 2006 -0700 [PATCH] alpha: Fix ALPHA_EV56 dependencies typo There appears to be a typo in the EV56 config option. NORITAKE and PRIMO are be able to set a variation of either. Signed-off-by: Daniel Drake Cc: Richard Henderson Cc: Ivan Kokshaysky Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 182daa55679d9b3557d27609e7ab4bfab749ac5b Author: Josh Triplett Date: Mon Sep 25 23:32:36 2006 -0700 [PATCH] mtrr: Add lock annotations for prepare_set and post_set The functions prepare_set and post_set in kernel/cpu/mtrr/generic.c wrap the spinlock set_atomicity_lock: prepare_set returns with the lock held, and post_set releases the lock without acquiring it. Add lock annotations to these two functions so that sparse can check callers for lock pairing, and so that sparse will not complain about these functions since they intentionally use locks in this manner. Signed-off-by: Josh Triplett Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit c7f40ff15aba95bc09a759024d62b2c344ef0856 Author: john stultz Date: Mon Sep 25 23:32:35 2006 -0700 [PATCH] i386: Kill references to xtime Remove all references to xtime in i386 and replace them w/ get/set_timeofday(). Requires some ugly and uncertain changes to APM, but has been lightly tested to work. Signed-off-by: John Stultz Acked-by: Ingo Molnar Acked-by: Mikael Pettersson Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 0f0f1b400ce3c4780b9d974bc69e8b558d99aba4 Author: Alan Cox Date: Mon Sep 25 23:32:34 2006 -0700 [PATCH] Voyager: tty locking Voyager fiddles with current->signal.tty without locking. It turns out that the code in question has already cleared current->signal.tty correctly because daemonize() does the right thing already. The signal handling also appears to be incorrect as it does an unprotected sigfillset that also appears unneccessary. As I don't have a bowtie and am therefore not a qualified voyager maintainer I leave that to James. Signed-off-by: Alan Cox Acked-by: James Bottomley Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit a3bc0dbc81d36fd38991b4373f6de8e1a507605a Author: Andrew Morton Date: Mon Sep 25 23:32:33 2006 -0700 [PATCH] smp_call_function_single() cleanup If we're going to implement smp_call_function_single() on three architecture with the same prototype then it should have a declaration in a non-arch-specific header file. Move it into . Cc: Stephane Eranian Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit eaa70773e750cc09d60938bceacd028bc76b8e3a Author: Stephane Eranian Date: Mon Sep 25 23:32:32 2006 -0700 [PATCH] i386: add smp_call_function_single Continiung the series of small patches necessary for the perfmon subsystem, here is a patch that adds support for the smp_call_function_single() function for i386. It exists for almost all other architectures but i386. The perfmon subsystem needs it in one case to free some state on a designated remote CPU. Signed-off-by: Stephane Eranian Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 27d26666fc495166036f4ee2208df25ae7f89ab8 Author: Rusty Russell Date: Mon Sep 25 23:32:32 2006 -0700 [PATCH] x86: remove unused include from efi_stub.S Remove unnecessary include from efi_stub.S Signed-off-by: Zachary Amsden Signed-off-by: Rusty Russell Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 2965a0e6da0ccd8971ccf2c00a02bfa6e212acdb Author: Rusty Russell Date: Mon Sep 25 23:32:31 2006 -0700 [PATCH] x86: trivial move of ptep_set_access_flags Move ptep_set_access_flags to be closer to the other ptep accessors, and make the indentation standard. Signed-off-by: Zachary Amsden Signed-off-by: Rusty Russell Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 6049742dbcecf170e903638a029f4dc280b9d53d Author: Rusty Russell Date: Mon Sep 25 23:32:30 2006 -0700 [PATCH] x86: trivial move of __HAVE macros in i386 pagetable headers Move the __HAVE_ARCH_PTEP defines to accompany the function definitions. Anything else is just a complete nightmare to track through the 2/3-level paging code, and this caused duplicate definitions to be needed (pte_same), which could have easily been taken care of with the asm-generic pgtable functions. Signed-off-by: Zachary Amsden Signed-off-by: Rusty Russell Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 673eae8230a192f07b8715b872d6925521e9738d Author: Rusty Russell Date: Mon Sep 25 23:32:29 2006 -0700 [PATCH] x86: trivial pgtable.h __ASSEMBLY__ move Parsing generic pgtable.h in assembler is simply crazy. None of this file is needed in assembler code, and C inline functions and structures routine break one or more different compiles. Signed-off-by: Zachary Amsden Signed-off-by: Rusty Russell Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 753b9f86e7aef76c2beda32668ce528f90cb1733 Author: Dave Hansen Date: Mon Sep 25 23:32:29 2006 -0700 [PATCH] x86: enable VMSPLIT for highmem kernels The current VMSPLIT Kconfig option is disabled whenever highmem is on. This is a bit screwy because the people who need to change VMSPLIT the most tend to be the ones with highmem and constrained lowmem. So, remove the highmem dependency. But, re-include the dependency for the "full 1GB of lowmem" option. You can't have the full 1GB of lowmem and highmem because of the need for the vmalloc(), kmap(), etc... areas. I thought there would be at least a bit of tweaking to do to get it to work, but everything seems OK. Boot tested on a 4GB x86 machine, and a 12GB 3-node NUMA-Q: elm3b82:~# cat /proc/meminfo MemTotal: 3695412 kB MemFree: 3659540 kB ... LowTotal: 2909008 kB LowFree: 2892324 kB ... elm3b82:~# zgrep PAE /proc/config.gz CONFIG_X86_PAE=y larry:~# cat /proc/meminfo MemTotal: 11845900 kB MemFree: 11786748 kB ... LowTotal: 2855180 kB LowFree: 2830092 kB Signed-off-by: Dave Hansen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 5091e746848f74c9a2c0579b4ef8d8cd1a6b135d Author: Ian Campbell Date: Mon Sep 25 23:32:28 2006 -0700 [PATCH] Translate asm version of ELFNOTE macro into preprocessor macro I've come across some problems with the assembly version of the ELFNOTE macro currently in -mm. (in x86-put-note-sections-into-a-pt_note-segment-in-vmlinux.patch) The first is that older gas does not support :varargs in .macro definitions (in my testing 2.17 does while 2.15 does not, I don't know when it became supported). The Changes file says binutils >= 2.12 so I think we need to avoid using it. There are no other uses in mainline or -mm. Old gas appears to just ignore it so you get "too many arguments" type errors. Secondly it seems that passing strings as arguments to assembler macros is broken without varargs. It looks like they get unquoted or each character is treated as a separate argument or something and this causes all manner of grief. I think this is because of the use of -traditional when compiling assembly files. Therefore I have translated the assembler macro into a pre-processor macro. I added the desctype as a separate argument instead of including it with the descdata as the previous version did since -traditional means the ELFNOTE definition after the #else needs to have the same number of arguments (I think so anyway, the -traditional CPP semantics are pretty fscking strange!). With this patch I am able to define elfnotes in assembly like this with both old and new assemblers. ELFNOTE(Xen, XEN_ELFNOTE_GUEST_OS, .asciz, "linux") ELFNOTE(Xen, XEN_ELFNOTE_GUEST_VERSION, .asciz, "2.6") ELFNOTE(Xen, XEN_ELFNOTE_XEN_VERSION, .asciz, "xen-3.0") ELFNOTE(Xen, XEN_ELFNOTE_VIRT_BASE, .long, __PAGE_OFFSET) Which seems reasonable enough. Signed-off-by: Ian Campbell Acked-by: Jeremy Fitzhardinge Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 9c9b8b388296ad5a306ab238dc677cfe6ff4cb12 Author: Jeremy Fitzhardinge Date: Mon Sep 25 23:32:26 2006 -0700 [PATCH] x86: put .note.* sections into a PT_NOTE segment in vmlinux This patch will pack any .note.* section into a PT_NOTE segment in the output file. To do this, we tell ld that we need a PT_NOTE segment. This requires us to start explicitly mapping sections to segments, so we also need to explicitly create PT_LOAD segments for text and data, and map the sections to them appropriately. Fortunately, each section will default to its previous section's segment, so it doesn't take many changes to vmlinux.lds.S. This only changes i386 for now, but I presume the corresponding changes for other architectures will be as simple. This change also adds , which defines C and Assembler macros for actually creating ELF notes. Signed-off-by: Jeremy Fitzhardinge Cc: Eric W. Biederman Cc: Hollis Blanchard Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 461a9afff5e731d6337c0f5b08a1e727ccd57e0a Author: Zachary Amsden Date: Mon Sep 25 23:32:25 2006 -0700 [PATCH] x86: add a bootparameter to reserve high linear address space Add a boot parameter to reserve high linear address space for hypervisors. This is necessary to allow dynamically loaded hypervisor modules, which might not happen until userspace is already running, and also provides a useful tool to benchmark the performance impact of reduced lowmem address space. Signed-off-by: Zachary Amsden Signed-off-by: Chris Wright Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 052e79941a042e5be4feffa03b1fd60d93fb9e9a Author: Jeremy Fitzhardinge Date: Mon Sep 25 23:32:25 2006 -0700 [PATCH] x86: make __FIXADDR_TOP variable to allow it to make space for a hypervisor Make __FIXADDR_TOP a variable, so that it can be set to not get in the way of address space a hypervisor may want to reserve. Original patch by Gerd Hoffmann Signed-off-by: Jeremy Fitzhardinge Signed-off-by: Chris Wright Cc: Gerd Hoffmann Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 9f093394d75cd9c5df82c7a99c5eb5d7ce7ba199 Author: Rusty Russell Date: Mon Sep 25 23:32:24 2006 -0700 [PATCH] x86: roll all the cpuid asm into one __cpuid call It's a little neater, and also means only one place to patch for paravirtualization. Signed-off-by: Rusty Russell Signed-off-by: Jeremy Fitzhardinge Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 027a8c7e6067a1bcdef6775d1b1c08729dfbae51 Author: Chris Wright Date: Mon Sep 25 23:32:23 2006 -0700 [PATCH] x86: implement always-locked bit ops, for memory shared with an SMP hypervisor Add "always lock'd" implementations of set_bit, clear_bit and change_bit and the corresponding test_and_ functions. Also add "always lock'd" implementation of cmpxchg. These give guaranteed strong synchronisation and are required for non-SMP kernels running on an SMP hypervisor. Signed-off-by: Ian Pratt Signed-off-by: Christian Limpach Signed-off-by: Chris Wright Signed-off-by: Jeremy Fitzhardinge Cc: Christoph Lameter Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 05f4a3ec94281347e05c81eafefcfe5ea545c94c Author: Rusty Russell Date: Mon Sep 25 23:32:22 2006 -0700 [PATCH] x86: remove locally-defined ldt structure in favour of standard type arch/i386/kernel/reboot.c defines its own struct to describe an ldt entry: it should use struct Xgt_desc_struct (currently load_ldt is a macro, so doesn't complain: paravirt patches make it warn). Signed-off-by: Rusty Russell Signed-off-by: Jeremy Fitzhardinge Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit c94a62aae6ebc99b416e55c023b6f5a1d19a400b Author: Neil Horman Date: Mon Sep 25 23:32:21 2006 -0700 [PATCH] apm: clean up module initalization Clean up module initalization for apm.c. I had started by auditing for proper return code checks in misc_register, but I found that in the event of an initalization failure, a proc file and a kernel thread were left hanging out. this patch properly cleans up those loose ends on any initalization failure. Signed-off-by: Neil Horman Acked-by: Stephen Rothwell Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 3a750363e6075a28e5542ce93a69c620c0cfd605 Author: Rolf Eike Beer Date: Mon Sep 25 23:32:20 2006 -0700 [PATCH] Use BUG_ON(foo) instead of "if (foo) BUG()" in include/asm-i386/dma-mapping.h Signed-off-by: Rolf Eike Beer Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 99325326a57b6a56595bb097655bee9fd27d77b0 Author: Chuck Ebbert <76306.1226@compuserve.com> Date: Mon Sep 25 23:32:19 2006 -0700 [PATCH] i386: show_registers(): try harder to print failing code show_registers() tries to dump failing code starting 43 bytes before the offending instruction, but this address can be bad, for example in a device driver where the failing instruction is less than 43 bytes from the start of the driver's code. When that happens, try to dump code starting at the failing instruction instead of printing no code at all. Signed-off-by: Chuck Ebbert <76306.1226@compuserve.com> Cc: Andi Kleen Cc: Keith Owens Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 1447c27d38faf8fb03d4599e8082e507453ea3cf Author: Clemens Ladisch Date: Mon Sep 25 23:32:17 2006 -0700 [PATCH] hpet rtc emulation: add watchdog timer To prevent the emulated RTC timer from stopping when interrupts are delayed for too long, disable interrupts around all of the register initialization, and check that the interrupt handler did not schedule the next interrupt in the past. Signed-off-by: Clemens Ladisch Cc: Venkatesh Pallipadi Cc: Andi Kleen Cc: Vojtech Pavlik Cc: Robert Picco Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 2514183dff2d5282cb745af34f56d1b98e5b2df8 Author: Haavard Skinnemoen Date: Mon Sep 25 23:32:17 2006 -0700 [PATCH] AVR32 MTD: AT49BV6416 platform device for ATSTK1000 FRegister a platform device for the AT49BV6416 NOR flash chip on the ATSTK1000 development board for use by the physmap MTD driver. The SMC timings are set up before the platform device is registered so that no board-specific mapping driver is necessary. Signed-off-by: Haavard Skinnemoen Cc: David Woodhouse Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit bc157b75960f1f33566074e820342690216629b9 Author: Haavard Skinnemoen Date: Mon Sep 25 23:32:16 2006 -0700 [PATCH] AVR32 MTD: Static Memory Controller driver This patchset adds the necessary drivers and infrastructure to access the external flash on the ATSTK1000 board through the MTD subsystem. With this stuff in place, it will be possible to use a jffs2 filesystem stored in the external flash as a root filesystem. It might also be possible to update the boot loader if you drop the write protection of partition 0. As suggested by David Woodhouse, I reworked the patches to use the physmap driver instead of introducing a separate mapping driver for the ATSTK1000. I've also cleaned up the hsmc header by removing useless comments and converting spaces to tabs (my headerfile generator needs some work.) Unfortunately, I couldn't unlock the flash in fixup_use_atmel_lock because the erase regions hadn't been set up yet, so I had to do it from cfi_amdstd_setup instead. This patch: This adds a simple API for configuring the static memory controller along with an implementation for the Atmel HSMC. Signed-off-by: Haavard Skinnemoen Cc: David Woodhouse Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 5f97f7f9400de47ae837170bb274e90ad3934386 Author: Haavard Skinnemoen Date: Mon Sep 25 23:32:13 2006 -0700 [PATCH] avr32 architecture This adds support for the Atmel AVR32 architecture as well as the AT32AP7000 CPU and the AT32STK1000 development board. AVR32 is a new high-performance 32-bit RISC microprocessor core, designed for cost-sensitive embedded applications, with particular emphasis on low power consumption and high code density. The AVR32 architecture is not binary compatible with earlier 8-bit AVR architectures. The AVR32 architecture, including the instruction set, is described by the AVR32 Architecture Manual, available from http://www.atmel.com/dyn/resources/prod_documents/doc32000.pdf The Atmel AT32AP7000 is the first CPU implementing the AVR32 architecture. It features a 7-stage pipeline, 16KB instruction and data caches and a full Memory Management Unit. It also comes with a large set of integrated peripherals, many of which are shared with the AT91 ARM-based controllers from Atmel. Full data sheet is available from http://www.atmel.com/dyn/resources/prod_documents/doc32003.pdf while the CPU core implementation including caches and MMU is documented by the AVR32 AP Technical Reference, available from http://www.atmel.com/dyn/resources/prod_documents/doc32001.pdf Information about the AT32STK1000 development board can be found at http://www.atmel.com/dyn/products/tools_card.asp?tool_id=3918 including a BSP CD image with an earlier version of this patch, development tools (binaries and source/patches) and a root filesystem image suitable for booting from SD card. Alternatively, there's a preliminary "getting started" guide available at http://avr32linux.org/twiki/bin/view/Main/GettingStarted which provides links to the sources and patches you will need in order to set up a cross-compiling environment for avr32-linux. This patch, as well as the other patches included with the BSP and the toolchain patches, is actively supported by Atmel Corporation. [dmccr@us.ibm.com: Fix more pxx_page macro locations] [bunk@stusta.de: fix `make defconfig'] Signed-off-by: Haavard Skinnemoen Signed-off-by: Adrian Bunk Signed-off-by: Dave McCracken Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 53e62d3aaa60590d4a69b4e07c29f448b5151047 Author: Ralf Baechle Date: Mon Sep 25 23:32:10 2006 -0700 [PATCH] Alchemy: Delete unused pt_regs * argument from au1xxx_dbdma_chan_alloc The third argument of au1xxx_dbdma_chan_alloc's callback function is not used anywhere. Signed-off-by: Ralf Baechle Cc: David Howells Cc: Russell King Cc: Alan Cox Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit cf134483b2cd657039b305777215c531a1009947 Author: David Howells Date: Mon Sep 25 23:32:09 2006 -0700 [PATCH] FRV: Optimise ffs() Optimise ffs(x) by using fls(x & x - 1) which we optimise to use the SCAN instruction. Signed-off-by: David Howells Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit a8ad27d03f17e6154c61e81d4a7028c56ca6390d Author: David Howells Date: Mon Sep 25 23:32:08 2006 -0700 [PATCH] FRV: Implement fls64() Implement fls64() for FRV without recource to conditional jumps. Signed-off-by: David Howells Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 92fc707208bb2e601c24b5ab65db37bcb361b658 Author: David Howells Date: Mon Sep 25 23:32:07 2006 -0700 [PATCH] FRV: Fix fls() to handle bit 31 being set correctly Fix FRV fls() to handle bit 31 being set correctly (it should return 32 not 0). Signed-off-by: David Howells Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit af8c65b57aaa4ae321af34dbfc5ca7f5625263fe Author: David Howells Date: Mon Sep 25 23:32:07 2006 -0700 [PATCH] FRV: permit __do_IRQ() to be dispensed with Permit __do_IRQ() to be dispensed with based on a configuration option. Signed-off-by: David Howells Cc: Benjamin Herrenschmidt Cc: Thomas Gleixner Cc: Ingo Molnar Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 88d6e19900366781739df033e9c0e2532e715fa5 Author: David Howells Date: Mon Sep 25 23:32:06 2006 -0700 [PATCH] FRV: improve FRV's use of generic IRQ handling Improve FRV's use of generic IRQ handling: (*) Use generic_handle_irq() rather than __do_IRQ() as the latter is obsolete. (*) Don't implement enable() and disable() ops as these will fall back to using unmask() and mask(). (*) Provide mask_ack() functions to avoid a call each to mask() and ack(). (*) Make the cascade handlers always return IRQ_HANDLED. (*) Implement the mask() and unmask() functions in the same order as they're listed in the ops table. Signed-off-by: David Howells Cc: Benjamin Herrenschmidt Cc: Thomas Gleixner Cc: Ingo Molnar Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 1bcbba306048ed86b935d57a95d887c23d52c94b Author: David Howells Date: Mon Sep 25 23:32:04 2006 -0700 [PATCH] FRV: Use the generic IRQ stuff Make the FRV arch use the generic IRQ code rather than having its own routines for doing so. Signed-off-by: David Howells Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 8d6b5eeea5eb644232cbbbe1c927fdf051e60fa5 Author: Andrew Morton Date: Mon Sep 25 23:32:04 2006 -0700 [PATCH] binfmt_elf: consistently use loff_t As David Howells points out, binfmt_elf sometimes uses off_t, sometimes uses loff_t. Use loff_t throughout. Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit b20c8122a3204496fca8b5343c93b60fe11dad04 Author: Stephen Smalley Date: Mon Sep 25 23:32:03 2006 -0700 [PATCH] selinux: fix tty locking Take tty_mutex when accessing ->signal->tty in selinux code. Noted by Alan Cox. Longer term, we are looking at refactoring the code to provide better encapsulation of the tty layer, but this is a simple fix that addresses the immediate bug. Signed-off-by: Stephen Smalley Acked-by: Alan Cox Acked-by: James Morris Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit bc7e982b84aceef0a040c88ff659eb5c83818f72 Author: Eric Paris Date: Mon Sep 25 23:32:02 2006 -0700 [PATCH] SELinux: convert sbsec semaphore to a mutex This patch converts the semaphore in the superblock security struct to a mutex. No locking changes or other code changes are done. Signed-off-by: Eric Paris Acked-by: Stephen Smalley Acked-by: James Morris Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 23970741720360de9dd0a4e87fbeb1d5927aa474 Author: Eric Paris Date: Mon Sep 25 23:32:01 2006 -0700 [PATCH] SELinux: change isec semaphore to a mutex This patch converts the remaining isec->sem into a mutex. Very similar locking is provided as before only in the faster smaller mutex rather than a semaphore. An out_unlock path is introduced rather than the conditional unlocking found in the original code. Signed-off-by: Eric Paris Acked-by: Stephen Smalley Acked-by: James Morris Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 296fddf7513c155adbd3a443d12add1f62b5cddb Author: Eric Paris Date: Mon Sep 25 23:32:00 2006 -0700 [PATCH] SELinux: eliminate inode_security_set_security inode_security_set_sid is only called by security_inode_init_security, which is called when a new file is being created and needs to have its incore security state initialized and its security xattr set. This helper used to be called in other places in the past, but now only has the one. So this patch rolls inode_security_set_sid directly back into security_inode_init_security. There also is no need to hold the isec->sem while doing this, as the inode is not available to other threads at this point in time. Signed-off-by: Eric Paris Acked-by: Stephen Smalley Acked-by: James Morris Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit f3f8771420737004da55159c2f2dc0b6f483a4ef Author: Darrel Goeddel Date: Mon Sep 25 23:31:59 2006 -0700 [PATCH] selinux: add support for range transitions on object classes Introduces support for policy version 21. This version of the binary kernel policy allows for defining range transitions on security classes other than the process security class. As always, backwards compatibility for older formats is retained. The security class is read in as specified when using the new format, while the "process" security class is assumed when using an older policy format. Signed-off-by: Darrel Goeddel Signed-off-by: Stephen Smalley Acked-by: James Morris Acked-by: Eric Paris Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 016b9bdb81d9c9c7800e4e224ade38d8b37669d3 Author: Stephen Smalley Date: Mon Sep 25 23:31:58 2006 -0700 [PATCH] selinux: enable configuration of max policy version Enable configuration of SELinux maximum supported policy version to support legacy userland (init) that does not gracefully handle kernels that support newer policy versions two or more beyond the installed policy, as in FC3 and FC4. [bunk@stusta.de: improve Kconfig help text] Signed-off-by: Stephen Smalley Acked-by: James Morris Acked-by: Eric Paris Signed-off-by: Adrian Bunk Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 9a2f44f01a67a6ecca71515af999895b45a2aeb0 Author: Stephen Smalley Date: Mon Sep 25 23:31:58 2006 -0700 [PATCH] selinux: replace ctxid with sid in selinux_audit_rule_match interface Replace ctxid with sid in selinux_audit_rule_match interface for consistency with other interfaces. Signed-off-by: Stephen Smalley Acked-by: James Morris Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 1a70cd40cb291c25b67ec0da715a49d76719329d Author: Stephen Smalley Date: Mon Sep 25 23:31:57 2006 -0700 [PATCH] selinux: rename selinux_ctxid_to_string Rename selinux_ctxid_to_string to selinux_sid_to_string to be consistent with other interfaces. Signed-off-by: Stephen Smalley Acked-by: James Morris Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 62bac0185ad3dfef11d9602980445c54d45199c6 Author: Stephen Smalley Date: Mon Sep 25 23:31:56 2006 -0700 [PATCH] selinux: eliminate selinux_task_ctxid Eliminate selinux_task_ctxid since it duplicates selinux_task_get_sid. Signed-off-by: Stephen Smalley Acked-by: James Morris Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 89fa30242facca249aead2aac03c4c69764f911c Author: Christoph Lameter Date: Mon Sep 25 23:31:55 2006 -0700 [PATCH] NUMA: Add zone_to_nid function There are many places where we need to determine the node of a zone. Currently we use a difficult to read sequence of pointer dereferencing. Put that into an inline function and use throughout VM. Maybe we can find a way to optimize the lookup in the future. Signed-off-by: Christoph Lameter Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 4415cc8df630b05d3a54267d5f3e5c0b63a4ec05 Author: Christoph Lameter Date: Mon Sep 25 23:31:55 2006 -0700 [PATCH] Hugepages: Use page_to_nid rather than traversing zone pointers I found two location in hugetlb.c where we chase pointer instead of using page_to_nid(). Page_to_nid is more effective and can get the node directly from page flags. Signed-off-by: Christoph Lameter Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 5a291b98b2116d669449885abef3000f747504b3 Author: Ram Gupta Date: Mon Sep 25 23:31:54 2006 -0700 [PATCH] oom-kill: update comments to reflect current code Update the comments for __oom_kill_task() to reflect the code changes. Signed-off-by: Ram Gupta Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 83e33a4711760469f5c3861b8ffea4947656d4eb Author: Christoph Lameter Date: Mon Sep 25 23:31:53 2006 -0700 [PATCH] zone reclaim with slab: avoid unecessary off node allocations Minor performance fix. If we reclaimed enough slab pages from a zone then we can avoid going off node with the current allocation. Take care of updating nr_reclaimed when reclaiming from the slab. Signed-off-by: Christoph Lameter Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 0ff38490c836dc379ff7ec45b10a15a662f4e5f6 Author: Christoph Lameter Date: Mon Sep 25 23:31:52 2006 -0700 [PATCH] zone_reclaim: dynamic slab reclaim Currently one can enable slab reclaim by setting an explicit option in /proc/sys/vm/zone_reclaim_mode. Slab reclaim is then used as a final option if the freeing of unmapped file backed pages is not enough to free enough pages to allow a local allocation. However, that means that the slab can grow excessively and that most memory of a node may be used by slabs. We have had a case where a machine with 46GB of memory was using 40-42GB for slab. Zone reclaim was effective in dealing with pagecache pages. However, slab reclaim was only done during global reclaim (which is a bit rare on NUMA systems). This patch implements slab reclaim during zone reclaim. Zone reclaim occurs if there is a danger of an off node allocation. At that point we 1. Shrink the per node page cache if the number of pagecache pages is more than min_unmapped_ratio percent of pages in a zone. 2. Shrink the slab cache if the number of the nodes reclaimable slab pages (patch depends on earlier one that implements that counter) are more than min_slab_ratio (a new /proc/sys/vm tunable). The shrinking of the slab cache is a bit problematic since it is not node specific. So we simply calculate what point in the slab we want to reach (current per node slab use minus the number of pages that neeed to be allocated) and then repeately run the global reclaim until that is unsuccessful or we have reached the limit. I hope we will have zone based slab reclaim at some point which will make that easier. The default for the min_slab_ratio is 5% Also remove the slab option from /proc/sys/vm/zone_reclaim_mode. [akpm@osdl.org: cleanups] Signed-off-by: Christoph Lameter Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 972d1a7b140569084439a81265a0f15b74e924e0 Author: Christoph Lameter Date: Mon Sep 25 23:31:51 2006 -0700 [PATCH] ZVC: Support NR_SLAB_RECLAIMABLE / NR_SLAB_UNRECLAIMABLE Remove the atomic counter for slab_reclaim_pages and replace the counter and NR_SLAB with two ZVC counter that account for unreclaimable and reclaimable slab pages: NR_SLAB_RECLAIMABLE and NR_SLAB_UNRECLAIMABLE. Change the check in vmscan.c to refer to to NR_SLAB_RECLAIMABLE. The intend seems to be to check for slab pages that could be freed. Signed-off-by: Christoph Lameter Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 8417bba4b151346ed475fcc923693c9e3be89063 Author: Christoph Lameter Date: Mon Sep 25 23:31:51 2006 -0700 [PATCH] Replace min_unmapped_ratio by min_unmapped_pages in struct zone *_pages is a better description of the role of the variable. Signed-off-by: Christoph Lameter Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit d00bcc98d7ec2c87391c9d9e1cca519ef64d33ef Author: Christoph Lameter Date: Mon Sep 25 23:31:50 2006 -0700 [PATCH] Extract the allocpercpu functions from the slab allocator The allocpercpu functions __alloc_percpu and __free_percpu() are heavily using the slab allocator. However, they are conceptually slab. This also simplifies SLOB (at this point slob may be broken in mm. This should fix it). Signed-off-by: Christoph Lameter Cc: Matt Mackall Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 39bbcb8f88154c4ac9853baf3f1134af4c987517 Author: Christoph Lameter Date: Mon Sep 25 23:31:49 2006 -0700 [PATCH] mm: do not check unpopulated zones for draining and counter updates If a zone is unpopulated then we do not need to check for pages that are to be drained and also not for vm counters that may need to be updated. Signed-off-by: Christoph Lameter Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 006d22d9bbb7e66279ba5cc4556b54eeaf8fd556 Author: Christoph Lameter Date: Mon Sep 25 23:31:48 2006 -0700 [PATCH] Optimize free_one_page Free one_page currently adds the page to a fake list and calls free_page_bulk. Fee_page_bulk takes it off again and then calles __free_one_page. Make free_one_page go directly to __free_one_page. Saves list on / off and a temporary list in free_one_page for higher ordered pages. Signed-off-by: Christoph Lameter Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 46a82b2d5591335277ed2930611f6acb4ce654ed Author: Dave McCracken Date: Mon Sep 25 23:31:48 2006 -0700 [PATCH] Standardize pxx_page macros One of the changes necessary for shared page tables is to standardize the pxx_page macros. pte_page and pmd_page have always returned the struct page associated with their entry, while pte_page_kernel and pmd_page_kernel have returned the kernel virtual address. pud_page and pgd_page, on the other hand, return the kernel virtual address. Shared page tables needs pud_page and pgd_page to return the actual page structures. There are very few actual users of these functions, so it is simple to standardize their usage. Since this is basic cleanup, I am submitting these changes as a standalone patch. Per Hugh Dickins' comments about it, I am also changing the pxx_page_kernel macros to pxx_page_vaddr to clarify their meaning. Signed-off-by: Dave McCracken Cc: Hugh Dickins Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit d2e7b7d0aa021847c59f882b066e7d3812902870 Author: Siddha, Suresh B Date: Mon Sep 25 23:31:47 2006 -0700 [PATCH] fix potential stack overflow in mm/slab.c On High end systems (1024 or so cpus) this can potentially cause stack overflow. Fix the stack usage. Signed-off-by: Suresh Siddha Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 980128f223fa3c75e3ebdde650c9f1bcabd4c0a2 Author: Christoph Lameter Date: Mon Sep 25 23:31:46 2006 -0700 [PATCH] Define easier to handle GFP_THISNODE In many places we will need to use the same combination of flags. Specify a single GFP_THISNODE definition for ease of use in gfp.h. Signed-off-by: Christoph Lameter Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit fbd98167e653535c5816be154f2149c0efa7757d Author: Christoph Lameter Date: Mon Sep 25 23:31:45 2006 -0700 [PATCH] Profiling: require buffer allocation on the correct node Profiling really suffers with off node buffers. Fail if no memory is available on the nodes. The profiling code can deal with these failures should they occur. Signed-off-by: Christoph Lameter Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 1192d526412b1b8ccb1493064cea06efc12c772b Author: Christoph Lameter Date: Mon Sep 25 23:31:45 2006 -0700 [PATCH] Cleanup: Add zone pointer to get_page_from_freelist There are frequent references to *z in get_page_from_freelist. Add an explicit zone variable that can be used in all these places. Signed-off-by: Christoph Lameter Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit bd1b1677b5d4f39deda068bf5cc43ce3aaec839f Author: Christoph Lameter Date: Mon Sep 25 23:31:44 2006 -0700 [PATCH] Guarantee that the uncached allocator gets pages on the correct node The uncached allocator manages per node pools. Specify __GFP_THISNODE in order to force allocation on the indicated node or fail. The uncached allocator has already logic to deal with failing allocations. Signed-off-by: Christoph Lameter Cc: Andy Whitcroft Cc: Mel Gorman Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 3d99cfb5f46191fc68f1343feeb2cf835001f7d7 Author: Christoph Lameter Date: Mon Sep 25 23:31:43 2006 -0700 [PATCH] sys_move_pages: Do not fall back to other nodes If the user specified a node where we should move the page to then we really do not want any other node. Signed-off-by: Christoph Lameter Cc: Andy Whitcroft Cc: Mel Gorman Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 9b819d204cf602eab1a53a9ec4b8d2ca51e02a1d Author: Christoph Lameter Date: Mon Sep 25 23:31:40 2006 -0700 [PATCH] Add __GFP_THISNODE to avoid fallback to other nodes and ignore cpuset/memory policy restrictions Add a new gfp flag __GFP_THISNODE to avoid fallback to other nodes. This flag is essential if a kernel component requires memory to be located on a certain node. It will be needed for alloc_pages_node() to force allocation on the indicated node and for alloc_pages() to force allocation on the current node. Signed-off-by: Christoph Lameter Cc: Andy Whitcroft Cc: Mel Gorman Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 056c62418cc639bf2fe962c6a6ee56054b838bc7 Author: Ravikiran G Thirumalai Date: Mon Sep 25 23:31:38 2006 -0700 [PATCH] slab: fix lockdep warnings Place the alien array cache locks of on slab malloc slab caches on a seperate lockdep class. This avoids false positives from lockdep [akpm@osdl.org: build fix] Signed-off-by: Ravikiran Thirumalai Signed-off-by: Shai Fultheim Cc: Thomas Gleixner Acked-by: Arjan van de Ven Cc: Ingo Molnar Cc: Pekka Enberg Cc: Christoph Lameter Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 2ed3a4ef95ef1a13a424378c34ebd9b7e593f212 Author: Christoph Lameter Date: Mon Sep 25 23:31:38 2006 -0700 [PATCH] slab: do not panic when alloc_kmemlist fails and slab is up It is fairly easy to get a system to oops by simply sizing a cache via /proc in such a way that one of the chaches (shared is easiest) becomes bigger than the maximum allowed slab allocation size. This occurs because enable_cpucache() fails if it cannot reallocate some caches. However, enable_cpucache() is used for multiple purposes: resizing caches, cache creation and bootstrap. If the slab is already up then we already have working caches. The resize can fail without a problem. We just need to return the proper error code. F.e. after this patch: # echo "size-64 10000 50 1000" >/proc/slabinfo -bash: echo: write error: Cannot allocate memory notice no OOPS. If we are doing a kmem_cache_create() then we also should not panic but return -ENOMEM. If on the other hand we do not have a fully bootstrapped slab allocator yet then we should indeed panic since we are unable to bring up the slab to its full functionality. Signed-off-by: Christoph Lameter Cc: Pekka Enberg Cc: Manfred Spraul Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 117f6eb1d8b8deb6f19fc88fc15bdb413c2a0c79 Author: Christoph Lameter Date: Mon Sep 25 23:31:37 2006 -0700 [PATCH] slab: extract __kmem_cache_destroy from kmem_cache_destroy The ability to free memory allocated to a slab cache is also useful if an error occurs during setup of a slab. So extract the function. Signed-off-by: Christoph Lameter Cc: Pekka Enberg Cc: Manfred Spraul Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit dbe5e69d2d6e591996ea2b817b887d03b60bb143 Author: Christoph Hellwig Date: Mon Sep 25 23:31:36 2006 -0700 [PATCH] slab: optimize kmalloc_node the same way as kmalloc [akpm@osdl.org: export fix] Signed-off-by: Christoph Hellwig Acked-by: Christoph Lameter Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit da6052f7b33abe55fbfd7d2213815f58c00a88d4 Author: Nick Piggin Date: Mon Sep 25 23:31:35 2006 -0700 [PATCH] update some mm/ comments Let's try to keep mm/ comments more useful and up to date. This is a start. Signed-off-by: Nick Piggin Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit e5ac9c5aec7c4bc57fa93f2d37d760a22cb7bd33 Author: Ravikiran G Thirumalai Date: Mon Sep 25 23:31:34 2006 -0700 [PATCH] Add some comments to slab.c Also, checks if we get a valid slabp_cache for off slab slab-descriptors. We should always get this. If we don't, then in that case we, will have to disable off-slab descriptors for this cache and do the calculations again. This is a rare case, so add a BUG_ON, for now, just in case. Signed-off-by: Alok N Kataria Signed-off-by: Ravikiran Thirumalai Signed-off-by: Shai Fultheim Cc: Pekka Enberg Cc: Manfred Spraul Cc: Christoph Lameter Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit dfd54cbcc0b834652389ce99b5e656ea5f44a3c1 Author: Heiko Carstens Date: Mon Sep 25 23:31:33 2006 -0700 [PATCH] bootmem: use MAX_DMA_ADDRESS instead of LOW32LIMIT Introduce ARCH_LOW_ADDRESS_LIMIT which can be set per architecture to override the 4GB default limit used by the bootmem allocater within __alloc_bootmem_low() and __alloc_bootmem_low_node(). E.g. s390 needs a 2GB limit instead of 4GB. Acked-by: Ingo Molnar Cc: Martin Schwidefsky Signed-off-by: Heiko Carstens Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit b72f160443cb78b2f8addae6e331d2adaa70f869 Author: Nick Piggin Date: Mon Sep 25 23:31:32 2006 -0700 [PATCH] oom: more printk Print the name of the task invoking the OOM killer. Could make debugging easier. Signed-off-by: Nick Piggin Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 5081dde33f7a61d28d9b185cc386f12cb837c7a4 Author: Nick Piggin Date: Mon Sep 25 23:31:32 2006 -0700 [PATCH] oom: kthread infinite loop fix Skip kernel threads, rather than having them return 0 from badness. Theoretically, badness might truncate all results to 0, thus a kernel thread might be picked first, causing an infinite loop. Signed-off-by: Nick Piggin Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit af5b912435de32fbede08cee949429823ed49781 Author: Nick Piggin Date: Mon Sep 25 23:31:31 2006 -0700 [PATCH] oom: swapoff tasks tweak PF_SWAPOFF processes currently cause select_bad_process to return straight away. Instead, give them high priority, so we will kill them first, however we also first ensure no parallel OOM kills are happening at the same time. Signed-off-by: Nick Piggin Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 4a3ede107e422a0c53d28024b0aa902ca22a8768 Author: Nick Piggin Date: Mon Sep 25 23:31:30 2006 -0700 [PATCH] oom: handle oom_disable exiting Having the oomkilladj == OOM_DISABLE check before the releasing check means that oomkilladj == OOM_DISABLE tasks exiting will not stop the OOM killer. Moving the test down will give the desired behaviour. Also: it will allow them to "OOM-kill" themselves if they are exiting. As per the previous patch, this is required to prevent OOM killer deadlocks (and they don't actually get killed, because they're already exiting -- they're simply allowed access to memory reserves). Signed-off-by: Nick Piggin Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 50ec3bbffbe8a96347c54832d48110a5bc9e9ff8 Author: Nick Piggin Date: Mon Sep 25 23:31:29 2006 -0700 [PATCH] oom: handle current exiting If current *is* exiting, it should actually be allowed to access reserved memory rather than OOM kill something else. Can't do this via a straight check in page_alloc.c because that would allow multiple tasks to use up reserves. Instead cause current to OOM-kill itself which will mark it as TIF_MEMDIE. The current procedure of simply aborting the OOM-kill if a task is exiting can lead to OOM deadlocks. In the case of killing a PF_EXITING task, don't make a lot of noise about it. This becomes more important in future patches, where we can "kill" OOM_DISABLE tasks. Signed-off-by: Nick Piggin Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 7887a3da753e1ba8244556cc9a2b38c815bfe256 Author: Nick Piggin Date: Mon Sep 25 23:31:29 2006 -0700 [PATCH] oom: cpuset hint cpuset_excl_nodes_overlap does not always indicate that killing a task will not free any memory we for us. For example, we may be asking for an allocation from _anywhere_ in the machine, or the task in question may be pinning memory that is outside its cpuset. Fix this by just causing cpuset_excl_nodes_overlap to reduce the badness rather than disallow it. Signed-off-by: Nick Piggin Acked-by: Paul Jackson Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 4ff1ffb4870b007b86f21e5f27eeb11498c4c077 Author: Nick Piggin Date: Mon Sep 25 23:31:28 2006 -0700 [PATCH] oom: reclaim_mapped on oom Potentially it takes several scans of the lru lists before we can even start reclaiming pages. mapped pages, with young ptes can take 2 passes on the active list + one on the inactive list. But reclaim_mapped may not always kick in instantly, so it could take even more than that. Raise the threshold for marking a zone as all_unreclaimable from a factor of 4 time the pages in the zone to 6. Introduce a mechanism to force reclaim_mapped if we've reached a factor 3 and still haven't made progress. Previously, a customer doing stress testing was able to easily OOM the box after using only a small fraction of its swap (~100MB). After the patches, it would only OOM after having used up all swap (~800MB). Signed-off-by: Nick Piggin Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 408d85441cd5a9bd6bc851d677a10c605ed8db5f Author: Nick Piggin Date: Mon Sep 25 23:31:27 2006 -0700 [PATCH] oom: use unreclaimable info __alloc_pages currently starts shooting if page reclaim has failed to free up swap_cluster_max pages in one run through the priorities. This is not always a good indicator on its own, so make use of the all_unreclaimable logic as well: don't consider going OOM until all zones we're interested in are unreclaimable. Signed-off-by: Nick Piggin Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 6ddab3b9ebebc88bfdd8107c64f12d7e4480c559 Author: Peter Zijlstra Date: Mon Sep 25 23:31:26 2006 -0700 [PATCH] mm: swap write failure fixup Currently we can silently drop data if the write to swap failed. It usually doesn't result in data-corruption because on page-in the process will receive SIGBUS (assuming write-failure implies read-failure). This assumption might or might not be valid. This patch will avoid the page being discarded after a failed write. But will print a warning the sysadmin _should_ take to heart, if a lot of swap space becomes un-writeable, OOM is not far off. Tested by making the write fail 'randomly' once every 50 writes or so. [akpm@osdl.org: printk warning fix] Signed-off-by: Peter Zijlstra Cc: Hugh Dickins Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit ca5f9703dffa012cc46166e6206c5a992910e041 Author: Pekka Enberg Date: Mon Sep 25 23:31:25 2006 -0700 [PATCH] slab: respect architecture and caller mandated alignment As explained by Heiko, on s390 (32-bit) ARCH_KMALLOC_MINALIGN is set to eight because their common I/O layer allocates data structures that need to have an eight byte alignment. This does not work when CONFIG_SLAB_DEBUG is enabled because kmem_cache_create will override alignment to BYTES_PER_WORD which is four. So change kmem_cache_create to ensure cache alignment is always at minimum what the architecture or caller mandates even if slab debugging is enabled. Cc: Heiko Carstens Cc: Christoph Lameter Signed-off-by: Manfred Spraul Signed-off-by: Pekka Enberg Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit db37648cd6ce9b828abd6d49aa3d269926ee7b7d Author: Nick Piggin Date: Mon Sep 25 23:31:24 2006 -0700 [PATCH] mm: non syncing lock_page() lock_page needs the caller to have a reference on the page->mapping inode due to sync_page, ergo set_page_dirty_lock is obviously buggy according to its comments. Solve it by introducing a new lock_page_nosync which does not do a sync_page. akpm: unpleasant solution to an unpleasant problem. If it goes wrong it could cause great slowdowns while the lock_page() caller waits for kblockd to perform the unplug. And if a filesystem has special sync_page() requirements (none presently do), permanent hangs are possible. otoh, set_page_dirty_lock() is usually (always?) called against userspace pages. They are always up-to-date, so there shouldn't be any pending read I/O against these pages. Signed-off-by: Nick Piggin Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 28e4d965e6131ace1e813e93aebca89ac6b82dc1 Author: Nick Piggin Date: Mon Sep 25 23:31:23 2006 -0700 [PATCH] mm: remove_mapping() safeness Some users of remove_mapping had been unsafe. Modify the remove_mapping precondition to ensure the caller has locked the page and obtained the correct mapping. Modify callers to ensure the mapping is the correct one. [hugh@veritas.com: swapper_space fix] Signed-off-by: Nick Piggin Signed-off-by: Hugh Dickins Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit bfa5bf6d6446f0028187a727f792fbc7934228ad Author: Rolf Eike Beer Date: Mon Sep 25 23:31:22 2006 -0700 [PATCH] Add kerneldocs for some functions in mm/memory.c These functions are already documented quite well with long comments. Now add kerneldoc style header to make this turn up in everyones favorite doc format. Signed-off-by: Rolf Eike Beer Cc: "Randy.Dunlap" Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 7ff6f08295d90ab20d25200ef485ebb45b1b8d71 Author: Martin Peschke Date: Mon Sep 25 23:31:21 2006 -0700 [PATCH] CPU hotplug compatible alloc_percpu() This patch splits alloc_percpu() up into two phases. Likewise for free_percpu(). This allows clients to limit initial allocations to online cpu's, and to populate or depopulate per-cpu data at run time as needed: struct my_struct *obj; /* initial allocation for online cpu's */ obj = percpu_alloc(sizeof(struct my_struct), GFP_KERNEL); ... /* populate per-cpu data for cpu coming online */ ptr = percpu_populate(obj, sizeof(struct my_struct), GFP_KERNEL, cpu); ... /* access per-cpu object */ ptr = percpu_ptr(obj, smp_processor_id()); ... /* depopulate per-cpu data for cpu going offline */ percpu_depopulate(obj, cpu); ... /* final removal */ percpu_free(obj); Signed-off-by: Martin Peschke Cc: Paul Jackson Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 8bc719d3cab8414938f9ea6e33b58d8810d18068 Author: Martin Schwidefsky Date: Mon Sep 25 23:31:20 2006 -0700 [PATCH] out of memory notifier Add a notifer chain to the out of memory killer. If one of the registered callbacks could release some memory, do not kill the process but return and retry the allocation that forced the oom killer to run. The purpose of the notifier is to add a safety net in the presence of memory ballooners. If the resource manager inflated the balloon to a size where memory allocations can not be satisfied anymore, it is better to deflate the balloon a bit instead of killing processes. The implementation for the s390 ballooner is included. [akpm@osdl.org: cleanups] Signed-off-by: Martin Schwidefsky Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 19655d3487001d7df0e10e9cbfc27c758b77c2b5 Author: Christoph Lameter Date: Mon Sep 25 23:31:19 2006 -0700 [PATCH] linearly index zone->node_zonelists[] I wonder why we need this bitmask indexing into zone->node_zonelists[]? We always start with the highest zone and then include all lower zones if we build zonelists. Are there really cases where we need allocation from ZONE_DMA or ZONE_HIGHMEM but not ZONE_NORMAL? It seems that the current implementation of highest_zone() makes that already impossible. If we go linear on the index then gfp_zone() == highest_zone() and a lot of definitions fall by the wayside. We can now revert back to the use of gfp_zone() in mempolicy.c ;-) Signed-off-by: Christoph Lameter Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 2f6726e54a9410e2e4cee864947c05e954051916 Author: Christoph Lameter Date: Mon Sep 25 23:31:18 2006 -0700 [PATCH] Apply type enum zone_type After we have done this we can now do some typing cleanup. The memory policy layer keeps a policy_zone that specifies the zone that gets memory policies applied. This variable can now be of type enum zone_type. The check_highest_zone function and the build_zonelists funnctionm must then also take a enum zone_type parameter. Plus there are a number of loops over zones that also should use zone_type. We run into some troubles at some points with functions that need a zone_type variable to become -1. Fix that up. [pj@sgi.com: fix set_mempolicy() crash] Signed-off-by: Christoph Lameter Signed-off-by: Paul Jackson Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 4e4785bcf0c8503224fa6c17d8e0228de781bff6 Author: Christoph Lameter Date: Mon Sep 25 23:31:17 2006 -0700 [PATCH] mempolicies: fix policy_zone check There is a check in zonelist_policy that compares pieces of the bitmap obtained from a gfp mask via GFP_ZONETYPES with a zone number in function zonelist_policy(). The bitmap is an ORed mask of __GFP_DMA, __GFP_DMA32 and __GFP_HIGHMEM. The policy_zone is a zone number with the possible values of ZONE_DMA, ZONE_DMA32, ZONE_HIGHMEM and ZONE_NORMAL. These are two different domains of values. For some reason seemed to work before the zone reduction patchset (It definitely works on SGI boxes since we just have one zone and the check cannot fail). With the zone reduction patchset this check definitely fails on systems with two zones if the system actually has memory in both zones. This is because ZONE_NORMAL is selected using no __GFP flag at all and thus gfp_zone(gfpmask) == 0. ZONE_DMA is selected when __GFP_DMA is set. __GFP_DMA is 0x01. So gfp_zone(gfpmask) == 1. policy_zone is set to ZONE_NORMAL (==1) if ZONE_NORMAL and ZONE_DMA are populated. For ZONE_NORMAL gfp_zone() yields 0 which is < policy_zone(ZONE_NORMAL) and so policy is not applied to regular memory allocations! Instead gfp_zone(__GFP_DMA) == 1 which results in policy being applied to DMA allocations! What we realy want in that place is to establish the highest allowable zone for a given gfp_mask. If the highest zone is higher or equal to the policy_zone then memory policies need to be applied. We have such a highest_zone() function in page_alloc.c. So move the highest_zone() function from mm/page_alloc.c into include/linux/gfp.h. On the way we simplify the function and use the new zone_type that was also introduced with the zone reduction patchset plus we also specify the right type for the gfp flags parameter. Signed-off-by: Christoph Lameter Signed-off-by: Lee Schermerhorn Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit b9b15780f808efa2c897f337644ba7a2bec03ecc Author: Christoph Lameter Date: Mon Sep 25 23:31:16 2006 -0700 [PATCH] reduce MAX_NR_ZONES: fix i386 SRAT check for MAX_NR_ZONES We cannot check MAX_NR_ZONES since it not defined in the preprocessor anymore. So remove the check. The maximum number of zones per node for i386 is 3 since i386 does not support ZONE_DMA32. Signed-off-by: Christoph Lameter Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 27bf71c2a7e596ed34e9bf2d4a5030321a09a1ad Author: Christoph Lameter Date: Mon Sep 25 23:31:15 2006 -0700 [PATCH] reduce MAX_NR_ZONES: remove display of counters for unconfigured zones eventcounters: Do not display counters for zones that are not available on an arch Do not define or display counters for the DMA32 and the HIGHMEM zone if such zones were not configured. [akpm@osdl.org: s390 fix] [heiko.carstens@de.ibm.com: s390 fix] Signed-off-by: Christoph Lameter Cc: Martin Schwidefsky Signed-off-by: Heiko Carstens Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit e53ef38d05dd59ed281a35590e4a5b64d8ff4c52 Author: Christoph Lameter Date: Mon Sep 25 23:31:14 2006 -0700 [PATCH] reduce MAX_NR_ZONES: make ZONE_HIGHMEM optional Make ZONE_HIGHMEM optional - ifdef out code and definitions related to CONFIG_HIGHMEM - __GFP_HIGHMEM falls back to normal allocations if there is no ZONE_HIGHMEM - GFP_ZONEMASK becomes 0x01 if there is no DMA32 and no HIGHMEM zone. [jdike@addtoit.com: build fix] Signed-off-by: Jeff Dike Signed-off-by: Christoph Lameter Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit fb0e7942bdcbbd2f90e61cb4cfa4fa892a873f8a Author: Christoph Lameter Date: Mon Sep 25 23:31:13 2006 -0700 [PATCH] reduce MAX_NR_ZONES: make ZONE_DMA32 optional Make ZONE_DMA32 optional - Add #ifdefs around ZONE_DMA32 specific code and definitions. - Add CONFIG_ZONE_DMA32 config option and use that for x86_64 that alone needs this zone. - Remove the use of CONFIG_DMA_IS_DMA32 and CONFIG_DMA_IS_NORMAL for ia64 and fix up the way per node ZVCs are calculated. - Fall back to prior GFP_ZONEMASK of 0x03 if there is no DMA32 zone. Signed-off-by: Christoph Lameter Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 2f1b6248682f8b39ca3c7e549dfc216d26c4109b Author: Christoph Lameter Date: Mon Sep 25 23:31:13 2006 -0700 [PATCH] reduce MAX_NR_ZONES: use enum to define zones, reformat and comment Use enum for zones and reformat zones dependent information Add comments explaning the use of zones and add a zones_t type for zone numbers. Line up information that will be #ifdefd by the following patches. [akpm@osdl.org: comment cleanups] Signed-off-by: Christoph Lameter Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 98d2b0ebda72fc39cdefd3720d50b9b3ce409085 Author: Christoph Lameter Date: Mon Sep 25 23:31:12 2006 -0700 [PATCH] reduce MAX_NR_ZONES: page allocator ZONE_HIGHMEM cleanup page allocator ZONE_HIGHMEM fixups 1. We do not need to do an #ifdef in si_meminfo since both counters in use are zero if !CONFIG_HIGHMEM. 2. Add #ifdef in si_meminfo_node instead to avoid referencing zone information for ZONE_HIGHMEM if we do not have HIGHMEM (may not be there after the following patches). 3. Replace the use of ZONE_HIGHMEM with MAX_NR_ZONES in build_zonelists_node 4. build_zonelists_node: Remove BUG_ON for ZONE_HIGHMEM. Zone will be optional soon and thus BUG_ON cannot be triggered anymore. 5. init_free_area_core: Replace a use of ZONE_HIGHMEM with NR_MAX_ZONES. [akpm@osdl.org: cleanups] Signed-off-by: Christoph Lameter Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit c1f60a5a419cc60aff27daffb150f5a3a3a79ef4 Author: Christoph Lameter Date: Mon Sep 25 23:31:11 2006 -0700 [PATCH] reduce MAX_NR_ZONES: move HIGHMEM counters into highmem.c/.h Move totalhigh_pages and nr_free_highpages() into highmem.c/.h Move the totalhigh_pages definition into highmem.c/.h. Move the nr_free_highpages function into highmem.c [yoichi_yuasa@tripeaks.co.jp: build fix] Signed-off-by: Christoph Lameter Signed-off-by: Yoichi Yuasa Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 182e8e237349e7b6354f45aee4780b6423fd6a50 Author: Christoph Lameter Date: Mon Sep 25 23:31:10 2006 -0700 [PATCH] reduce MAX_NR_ZONES: make display of highmem counters conditional on CONFIG_HIGHMEM Do not display HIGHMEM memory sizes if CONFIG_HIGHMEM is not set. Make HIGHMEM dependent texts and make display of highmem counters optional Some texts are depending on CONFIG_HIGHMEM. Remove those strings and remove the display of highmem counter values if CONFIG_HIGHMEM is not set. [akpm@osdl.org: remove some ifdefs] Signed-off-by: Christoph Lameter Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit f06a96844a577c43249fce25809a4fae07407f46 Author: Christoph Lameter Date: Mon Sep 25 23:31:10 2006 -0700 [PATCH] reduce MAX_NR_ZONES: fix MAX_NR_ZONES array initializations Fix array initialization in lots of arches The number of zones may now be reduced from 4 to 2 for many arches. Fix the array initialization for the zones array for all architectures so that it is not initializing a fixed number of elements. Signed-off-by: Christoph Lameter Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 776ed98b842ee8551793f842fe028c8091f3633e Author: Christoph Lameter Date: Mon Sep 25 23:31:09 2006 -0700 [PATCH] reduce MAX_NR_ZONES: remove two strange uses of MAX_NR_ZONES I keep seeing zones on various platforms that are never used and wonder why we compile support for them into the kernel. Counters show up for HIGHMEM and DMA32 that are alway zero. This patch allows the removal of ZONE_DMA32 for non x86_64 architectures and it will get rid of ZONE_HIGHMEM for arches not using highmem (like 64 bit architectures). If an arch does not define CONFIG_HIGHMEM then ZONE_HIGHMEM will not be defined. Similarly if an arch does not define CONFIG_ZONE_DMA32 then ZONE_DMA32 will not be defined. No current architecture uses all the 4 zones (DMA,DMA32,NORMAL,HIGH) that we have now. The patchset will reduce the number of zones for all platforms. On many platforms that do not have DMA32 or HIGHMEM this will reduce the number of zones by 50%. F.e. ia64 only uses DMA and NORMAL. Large amounts of memory can be saved for larger systemss that may have a few hundred NUMA nodes. With ZONE_DMA32 and ZONE_HIGHMEM support optional MAX_NR_ZONES will be 2 for many non i386 platforms and even for i386 without CONFIG_HIGHMEM set. Tested on ia64, x86_64 and on i386 with and without highmem. The patchset consists of 11 patches that are following this message. One could go even further than this patchset and also make ZONE_DMA optional because some platforms do not need a separate DMA zone and can do DMA to all of memory. This could reduce MAX_NR_ZONES to 1. Such a patchset will hopefully follow soon. This patch: Fix strange uses of MAX_NR_ZONES Sometimes we use MAX_NR_ZONES - x to refer to a zone. Make that explicit. Signed-off-by: Christoph Lameter Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit f71bf0cac730ccb5ebcdf21747db75ae0445ccde Author: Franck Bui-Huu Date: Mon Sep 25 23:31:08 2006 -0700 [PATCH] bootmem: miscellaneous coding style fixes It fixes various coding style issues, specially when spaces are useless. For example '*' go next to the function name. Signed-off-by: Franck Bui-Huu Cc: Dave Hansen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit bbc7b92e337ac349ca917f9bf0b6be4743c14f3a Author: Franck Bui-Huu Date: Mon Sep 25 23:31:07 2006 -0700 [PATCH] bootmem: use pfn/page conversion macros It also creates get_mapsize() helper in order to make the code more readable when it calculates the boot bitmap size. Signed-off-by: Franck Bui-Huu Cc: Dave Hansen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit e786e86a542ccc1133f333402526ad00b9c088ae Author: Franck Bui-Huu Date: Mon Sep 25 23:31:06 2006 -0700 [PATCH] bootmem: remove useless headers inclusions Signed-off-by: Franck Bui-Huu Cc: Dave Hansen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit bb0923a66820718f636736b22ce47372f79e3400 Author: Franck Bui-Huu Date: Mon Sep 25 23:31:05 2006 -0700 [PATCH] bootmem: limit to 80 columns width Signed-off-by: Franck Bui-Huu Cc: Dave Hansen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 71fb2e8f8753b66b1f4295aa264a2eb4e69381e8 Author: Franck Bui-Huu Date: Mon Sep 25 23:31:05 2006 -0700 [PATCH] bootmem: remove useless parentheses in bootmem header file Signed-off-by: Franck Bui-Huu Cc: Dave Hansen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 69d49e681d7c7ed864a1ba45efc1e78433df8b9a Author: Franck Bui-Huu Date: Mon Sep 25 23:31:04 2006 -0700 [PATCH] bootmem: mark link_bootmem() as part of the __init section Signed-off-by: Franck Bui-Huu Cc: Dave Hansen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 2d1a07d487d8b36658404839cdf03a974968cefd Author: Franck Bui-Huu Date: Mon Sep 25 23:31:03 2006 -0700 [PATCH] bootmem: remove useless __init in header file __init in headers is pretty useless because the compiler doesn't check it, and they get out of sync relatively frequently. So if you see an __init in a header file, it's quite unreliable and you need to check the definition anyway. Signed-off-by: Franck Bui-Huu Cc: Dave Hansen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 91023300057e96de7f46e95166a3e02394ae72f9 Author: keith mannthey Date: Mon Sep 25 23:31:03 2006 -0700 [PATCH] convert i386 NUMA KVA space to bootmem Address a long standing issue of booting with an initrd on an i386 numa system. Currently (and always) the numa kva area is mapped into low memory by finding the end of low memory and moving that mark down (thus creating space for the kva). The issue with this is that Grub loads initrds into this similar space so when the kernel check the initrd it finds it outside max_low_pfn and disables it (it thinks the initrd is not mapped into usable memory) thus initrd enabled kernels can't boot i386 numa :( My solution to the problem just converts the numa kva area to use the bootmem allocator to save it's area (instead of moving the end of low memory). Using bootmem allows the kva area to be mapped into more diverse addresses (not just the end of low memory) and enables the kva area to be mapped below the initrd if present. I have tested this patch on numaq(no initrd) and summit(initrd) i386 numa based systems. [akpm@osdl.org: cleanups] Signed-off-by: Keith Mannthey Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit b221385bc41d6789edde3d2fa0cb20d5045730eb Author: Adrian Bunk Date: Mon Sep 25 23:31:02 2006 -0700 [PATCH] mm/: make functions static This patch makes the following needlessly global functions static: - slab.c: kmem_find_general_cachep() - swap.c: __page_cache_release() - vmalloc.c: __vmalloc_node() Signed-off-by: Adrian Bunk Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 204ec841fbea3e5138168edbc3a76d46747cc987 Author: Peter Zijlstra Date: Mon Sep 25 23:31:01 2006 -0700 [PATCH] mm: msync() cleanup With the tracking of dirty pages properly done now, msync doesn't need to scan the PTEs anymore to determine the dirty status. From: Hugh Dickins In looking to do that, I made some other tidyups: can remove several #includes, and sys_msync loop termination not quite right. Most of those points are criticisms of the existing sys_msync, not of your patch. In particular, the loop termination errors were introduced in 2.6.17: I did notice this shortly before it came out, but decided I was more likely to get it wrong myself, and make matters worse if I tried to rush a last-minute fix in. And it's not terribly likely to go wrong, nor disastrous if it does go wrong (may miss reporting an unmapped area; may also fsync file of a following vma). Signed-off-by: Peter Zijlstra Signed-off-by: Hugh Dickins Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit ee6a6457886a80415db209e87033b63f2b06558c Author: Peter Zijlstra Date: Mon Sep 25 23:31:00 2006 -0700 [PATCH] mm: fixup do_wp_page() Wrt. the recent modifications in do_wp_page() Hugh Dickins pointed out: "I now realize it's right to the first order (normal case) and to the second order (ptrace poke), but not to the third order (ptrace poke anon page here to be COWed - perhaps can't occur without intervening mprotects)." This patch restores the old COW behaviour for anonymous pages. Signed-off-by: Peter Zijlstra Acked-by: Hugh Dickins Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit e88dd6c11c5aef74d8b74a062767add53315533b Author: Peter Zijlstra Date: Mon Sep 25 23:30:59 2006 -0700 [PATCH] mm: small cleanup of install_page() Smallish cleanup to install_page(), could save a memory read (haven't checked the asm output) and sure looks nicer. Signed-off-by: Peter Zijlstra Cc: Hugh Dickins Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit c1e6098b23bb46e2b488fe9a26f831f867157483 Author: Peter Zijlstra Date: Mon Sep 25 23:30:59 2006 -0700 [PATCH] mm: optimize the new mprotect() code a bit mprotect() resets the page protections, which could result in extra write faults for those pages whose dirty state we track using write faults and are dirty already. Signed-off-by: Peter Zijlstra Cc: Hugh Dickins Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit edc79b2a46ed854595e40edcf3f8b37f9f14aa3f Author: Peter Zijlstra Date: Mon Sep 25 23:30:58 2006 -0700 [PATCH] mm: balance dirty pages Now that we can detect writers of shared mappings, throttle them. Avoids OOM by surprise. Signed-off-by: Peter Zijlstra Cc: Hugh Dickins Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit d08b3851da41d0ee60851f2c75b118e1f7a5fc89 Author: Peter Zijlstra Date: Mon Sep 25 23:30:57 2006 -0700 [PATCH] mm: tracking shared dirty pages Tracking of dirty pages in shared writeable mmap()s. The idea is simple: write protect clean shared writeable pages, catch the write-fault, make writeable and set dirty. On page write-back clean all the PTE dirty bits and write protect them once again. The implementation is a tad harder, mainly because the default backing_dev_info capabilities were too loosely maintained. Hence it is not enough to test the backing_dev_info for cap_account_dirty. The current heuristic is as follows, a VMA is eligible when: - its shared writeable (vm_flags & (VM_WRITE|VM_SHARED)) == (VM_WRITE|VM_SHARED) - it is not a 'special' mapping (vm_flags & (VM_PFNMAP|VM_INSERTPAGE)) == 0 - the backing_dev_info is cap_account_dirty mapping_cap_account_dirty(vma->vm_file->f_mapping) - f_op->mmap() didn't change the default page protection Page from remap_pfn_range() are explicitly excluded because their COW semantics are already horrid enough (see vm_normal_page() in do_wp_page()) and because they don't have a backing store anyway. mprotect() is taught about the new behaviour as well. However it overrides the last condition. Cleaning the pages on write-back is done with page_mkclean() a new rmap call. It can be called on any page, but is currently only implemented for mapped pages, if the page is found the be of a VMA that accounts dirty pages it will also wrprotect the PTE. Finally, in fs/buffers.c:try_to_free_buffers(); remove clear_page_dirty() from under ->private_lock. This seems to be safe, since ->private_lock is used to serialize access to the buffers, not the page itself. This is needed because clear_page_dirty() will call into page_mkclean() and would thereby violate locking order. [dhowells@redhat.com: Provide a page_mkclean() implementation for NOMMU] Signed-off-by: Peter Zijlstra Cc: Hugh Dickins Signed-off-by: David Howells Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 725d704ecaca4a43f067092c140d4f3271cf2856 Author: Nick Piggin Date: Mon Sep 25 23:30:55 2006 -0700 [PATCH] mm: VM_BUG_ON Introduce a VM_BUG_ON, which is turned on with CONFIG_DEBUG_VM. Use this in the lightweight, inline refcounting functions; PageLRU and PageActive checks in vmscan, because they're pretty well confined to vmscan. And in page allocate/free fastpaths which can be the hottest parts of the kernel for kbuilds. Unlike BUG_ON, VM_BUG_ON must not be used to execute statements with side-effects, and should not be used outside core mm code. Signed-off-by: Nick Piggin Cc: Hugh Dickins Cc: Christoph Lameter Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit a6ca1b99ed434f3fb41bbed647ed36c0420501e5 Author: James Bottomley Date: Mon Sep 25 23:30:55 2006 -0700 [PATCH] update to the kernel kmap/kunmap API Give non-highmem architectures access to the kmap API for the purposes of overriding (this is what the attached patch does). The proposal is that we should now require all architectures with coherence issues to manage data coherence via the kmap/kunmap API. Thus driver writers never have to write code like kmap(page) modify data in page flush_kernel_dcache_page(page) kunmap(page) instead, kmap/kunmap will manage the coherence and driver (and filesystem) writers don't need to worry about how to flush between kmap and kunmap. For most architectures, the page only needs to be flushed if it was actually written to *and* there are user mappings of it, so the best implementation looks to be: clear the page dirty pte bit in the kernel page tables on kmap and on kunmap, check page->mappings for user maps, and then the dirty bit, and only flush if it both has user mappings and is dirty. Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 3998b9301d3d55be8373add22b6bc5e11c1d9b71 Author: Jan Kara Date: Mon Sep 25 23:30:53 2006 -0700 [PATCH] jbd: fix commit of ordered data buffers Original commit code assumes, that when a buffer on BJ_SyncData list is locked, it is being written to disk. But this is not true and hence it can lead to a potential data loss on crash. Also the code didn't count with the fact that journal_dirty_data() can steal buffers from committing transaction and hence could write buffers that no longer belong to the committing transaction. Finally it could possibly happen that we tried writing out one buffer several times. The patch below tries to solve these problems by a complete rewrite of the data commit code. We go through buffers on t_sync_datalist, lock buffers needing write out and store them in an array. Buffers are also immediately refiled to BJ_Locked list or unfiled (if the write out is completed). When the array is full or we have to block on buffer lock, we submit all accumulated buffers for IO. [suitable for 2.6.18.x around the 2.6.19-rc2 timeframe] Signed-off-by: Jan Kara Cc: Badari Pulavarty Cc: Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 632bbfeee4f042c05bc65150b4433a297d3fe387 Author: Jan Blunck Date: Mon Sep 25 23:30:53 2006 -0700 [PATCH] trigger a syntax error if percpu macros are incorrectly used get_cpu_var()/per_cpu()/__get_cpu_var() arguments must be simple identifiers. Otherwise the arch dependent implementations might break. This patch enforces the correct usage of the macros by producing a syntax error if the variable is not a simple identifier. Signed-off-by: Jan Blunck Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 0a2966b48fb784e437520e400ddc94874ddbd4e8 Author: Christoph Lameter Date: Mon Sep 25 23:30:51 2006 -0700 [PATCH] Fix longstanding load balancing bug in the scheduler The scheduler will stop load balancing if the most busy processor contains processes pinned via processor affinity. The scheduler currently only does one search for busiest cpu. If it cannot pull any tasks away from the busiest cpu because they were pinned then the scheduler goes into a corner and sulks leaving the idle processors idle. F.e. If you have processor 0 busy running four tasks pinned via taskset, there are none on processor 1 and one just started two processes on processor 2 then the scheduler will not move one of the two processes away from processor 2. This patch fixes that issue by forcing the scheduler to come out of its corner and retrying the load balancing by considering other processors for load balancing. This patch was originally developed by John Hawkes and discussed at http://marc.theaimsgroup.com/?l=linux-kernel&m=113901368523205&w=2. I have removed extraneous material and gone back to equipping struct rq with the cpu the queue is associated with since this makes the patch much easier and it is likely that others in the future will have the same difficulty of figuring out which processor owns which runqueue. The overhead added through these patches is a single word on the stack if the kernel is configured to support 32 cpus or less (32 bit). For 32 bit environments the maximum number of cpus that can be configued is 255 which would result in the use of 32 bytes additional on the stack. On IA64 up to 1k cpus can be configured which will result in the use of 128 additional bytes on the stack. The maximum additional cache footprint is one cacheline. Typically memory use will be much less than a cacheline and the additional cpumask will be placed on the stack in a cacheline that already contains other local variable. Signed-off-by: Christoph Lameter Cc: John Hawkes Cc: "Siddha, Suresh B" Cc: Ingo Molnar Cc: Nick Piggin Cc: Peter Williams Cc: Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 28b79ff9661b22e4c41c0d00d4ab8503e810f13d Author: Kyungmin Park Date: Tue Sep 26 09:45:28 2006 +0000 [MTD ONENAND] Check OneNAND lock scheme & all block unlock command support OneNAND lock scheme depends on density and process of chip. Some OneNAND chips support all block unlock Signed-off-by: Kyungmin Park Signed-off-by: David Woodhouse commit 8dd86eebc5315910ebfd9f30f1674254308be4b3 Author: Michael Krufky Date: Sat Sep 16 19:09:38 2006 -0300 V4L/DVB (4641): Trivial: use lowercase letters in hex subsystem ids Signed-off-by: Michael Krufky Signed-off-by: Mauro Carvalho Chehab commit dab489df2a3eec77e2ed7a4499ec7b9ef09e35b7 Author: Michael Krufky Date: Fri Sep 15 15:41:23 2006 -0300 V4L/DVB (4639): Cx88: add autodetection for alternate revision of Leadtek PVR Add autodetection for PCI subsystem ID 107d:6632, to detect as a Leadtek PVR 2000 Signed-off-by: Michael Krufky Signed-off-by: Mauro Carvalho Chehab commit aa481a654771217645188b64d82acfc38c2da892 Author: Steven Toth Date: Thu Sep 14 15:41:13 2006 -0300 V4L/DVB (4638): Basic DVB-T and analog TV support for the HVR1300. This is the first in a series of patches to add full WinTV-HVR1300 support to Linux. This first patch will enable analog TV support and DVB-T support. Later patches will add the hardware MPEG encoder support. Signed-off-by: Steven Toth Signed-off-by: Mauro Carvalho Chehab commit 1c2d034e3c0ce4c1c89f1636a9f4aa7615cc7474 Author: Mauro Carvalho Chehab Date: Thu Sep 14 13:36:34 2006 -0300 V4L/DVB (4637): Add a default method for VIDIOC_G_PARM For most drivers, VIDIOC_G_PARM will just return the current standard fps. So, instead of failing, drivers based on video_ioctl2 will implement the default method. Signed-off-by: Mauro Carvalho Chehab commit 3d265c96ccb8f72153b4e926053a79e1a52bf264 Author: Alan Cox Date: Thu Sep 14 11:53:16 2006 -0300 V4L/DVB (4635): Extend bttv and saa7134 to check for both AGP and PCI PCI failure case We could go and work out if the target object is AGP or PCI but the corner case of an Athlon 64 era box with PCI video is sufficiently unusual it doesn't seem worth the extra work, at least until other cases if any pop up. Signed-off-by: Alan Cox Signed-off-by: Mauro Carvalho Chehab commit 13f1371e8fb53df6b0a6c0cc7de56195bf132f1c Author: Alan Cox Date: Thu Sep 14 11:53:09 2006 -0300 V4L/DVB (4634): Zr36120: implement pcipci checks Again depends on the PCIAGP_FAIL patch for a define. Someone with more card knowledge should look at the ALIMAGIK case and whether latency can be safely to set to 0xA or so. Signed-off-by: Alan Cox Signed-off-by: Mauro Carvalho Chehab commit e355880b838c80ff53e6386a1caad10e6f719259 Author: Alan Cox Date: Thu Sep 14 11:47:55 2006 -0300 V4L/DVB (4632): Zoran: Implement pcipci failure check We should be doing this on all devices doing PCI<->PCI DMA. We only set the _FAIL ones when the DMA will fail or may cause crashes. This relies on the PCIAGP_FAIL patch I sent to Andrew already Signed-off-by: Alan Cox Signed-off-by: Mauro Carvalho Chehab commit d7e7a1567894146ca6c9442c824dded4f0f48dde Author: Oliver Endriss Date: Thu Sep 14 00:43:22 2006 -0300 V4L/DVB (4631): Av7110: remove V4L2_CAP_VBI_CAPTURE flag Implement fix suggested by Michael Hunold for a bug reported by Philipp Matthias Hahn: Starting "kdetv" on a Siemens DVB-C 1.x produced an oops because kdetv opened "/dev/vbi0". Remove the V4L2_CAP_VBI_CAPTURE flag because it does not work with this type of hardware anyway. Signed-off-by: Oliver Endriss Signed-off-by: Mauro Carvalho Chehab commit d98821e21ecbadb8c4dbf608d25454a8835c0667 Author: Oliver Endriss Date: Thu Sep 14 00:15:13 2006 -0300 V4L/DVB (4630): Av7110: FW_LOADER depemdency fixed Do not select FW_LOADER unless it is really required. Signed-off-by: Oliver Endriss Signed-off-by: Mauro Carvalho Chehab commit b04c1baf485f4c3a25d8dbc187156030f9247cb0 Author: Michal Majchrowicz Date: Wed Sep 13 16:42:42 2006 -0300 V4L/DVB (4629): Saa7134: add card support for Proteus Pro 2309 Add card support for Proteus Pro 2309, based on saa7130 bridge Signed-off-by: Michal Majchrowicz Signed-off-by: Michael Krufky Signed-off-by: Mauro Carvalho Chehab commit 666c73d9e123b9ea230fcb1e2bf47fe0294332a8 Author: Sascha Hauer Date: Wed Sep 13 13:26:11 2006 -0300 V4L/DVB (4628): Fix VIDIOC_ENUMSTD ioctl in videodev.c Do not return -EINVAL for index=0 in VIDIOC_ENUMSTD, because it is a valid index Signed-off-by: Sascha Hauer Signed-off-by: Mauro Carvalho Chehab commit d7fbefe06d2061de126095f903359ce1ef61faf3 Author: Sascha Hauer Date: Wed Sep 13 13:26:03 2006 -0300 V4L/DVB (4627): Vivi crashes with mplayer The vivi.current_norm field is not initialized in vivi.c, so a VIDIOC_G_STD ioctl without a prior call to VIDIOC_S_STD gives unpredictable results. mplayer does exactly this. Signed-off-by Sascha Hauer Signed-off-by: Mauro Carvalho Chehab commit 183d896a03e1f0e4ab69d75f123d33a62b47cf03 Author: Mauro Carvalho Chehab Date: Tue Sep 12 20:02:09 2006 -0300 V4L/DVB (4626): On saa7111/7113, LUMA_CTRL need a different value Also sends the proper saa71111 init table. Signed-off-by: Mauro Carvalho Chehab commit bc28287979592c015560f8837a98b63a3be8bbc1 Author: Cedric Le Goater Date: Mon Sep 11 16:31:45 2006 -0300 V4L/DVB (4624): Tvaudio: Replaced kernel_thread() with kthread_run() Replaced kernel_thread() with kthread_run() since kernel_thread() is deprecated in drivers/modules. Removed the completion and the wait queue which are now useless with kthread. Also removed the allow_signal() call as signals don't apply to kernel threads. Fixed a small race condition when thread is stopped. Please check if the timer vs. thread still works fine without the wait queue. Signed-off-by: Cedric Le Goater Signed-off-by: Michael Krufky Signed-off-by: Mauro Carvalho Chehab commit c93a5c34887426daa70f3caf05881fafb1cd687f Author: Sascha Hauer Date: Mon Sep 11 09:49:19 2006 -0300 V4L/DVB (4622): Copy-paste bug in videodev.c This patch fixes a copy-paste bug in videodev.c where the vidioc_qbuf() function gets called for the dqbuf ioctl. Signed-off-by: Sascha Hauer Signed-off-by: Mauro Carvalho Chehab commit 5ab6b267e5684452e229c58f4a5ba9f267866d42 Author: Jose Alberto Reguero Date: Mon Sep 11 04:34:31 2006 -0300 V4L/DVB (4620): Fix AGC configuration for MOD3000P-based boards While converting the configuration for the old DiB3000MC-module to the new one a wrong AGC configuration was introduced. This is using the old one again. Signed-off-by: Jose Alberto Reguero Signed-off-by: Patrick Boettcher Signed-off-by: Mauro Carvalho Chehab commit 6386828cb1748ba466e3d9df5d650ffeab937fd2 Author: Mauro Carvalho Chehab Date: Sun Sep 10 12:47:50 2006 -0300 V4L/DVB (4619): Fixes some I2C dependencies on V4L devices Signed-off-by: Mauro Carvalho Chehab commit 83905b02af4ebc1cbc952401788cb92619393d04 Author: Alistair Buxton Date: Sun Sep 10 12:09:22 2006 -0300 V4L/DVB (4617): Problem with dibusb-mb.c USB IDs There seems to be an off by one error in the dibusb-mb.c which causes the "Artec T1 with AN2235" box to be detected as a totally different box - but it only happens if the Artec is one with the correct USB IDs. A patch is attached to the second post. However, even with this patch, the box still won't tune. It will tune using a 2.6.12 kernel though. Signed-off-by: Alistair Buxton Signed-off-by: Patrick Boettcher Signed-off-by: Mauro Carvalho Chehab commit 774c0de4aed4d5171e8c3cb47402265d278d2591 Author: Allan Third Date: Sun Sep 10 12:05:50 2006 -0300 V4L/DVB (4616): [PATCH] Nebula DigiTV USB RC support Attached is a patch against latest HG which adds remote control support to the DigiTV driver. It works for me; Signed-off-by: Allan Third Signed-off-by: Patrick Boettcher Signed-off-by: Mauro Carvalho Chehab commit e9f964da79f6dcdd1c1a85dea84e9e7d7236729e Author: Ricardo Cerqueira Date: Sat Sep 9 12:24:08 2006 -0300 V4L/DVB (4614): Export symbol saa7134_tvaudio_setmute from saa7134 for saa7134-alsa saa7134-alsa now unmutes/mutes the line when opening/closing the capture device, and needs this symbol Signed-off-by: Ricardo Cerqueira Signed-off-by: Mauro Carvalho Chehab commit dafcaaf86a77c086ed663eb25da1ca42800e171c Author: Ricardo Cerqueira Date: Wed Sep 6 06:25:38 2006 -0300 V4L/DVB (4613): Unmute/mute saa7134 when opening/closing the audio capture device. This patch should enable unmuting the audio device when opening it (and posterior muting when closing it), doing away with the need for unmute ioctls or v4lctl usage. Signed-off-by: Ricardo Cerqueira Signed-off-by: Mauro Carvalho Chehab commit c8cd2ad3bb499ad684799b55ca10e260a9e2fd84 Author: Andrew de Quincey Date: Thu Sep 7 02:07:21 2006 -0300 V4L/DVB (4611): Add module-init-tools version comment. I've just determined that module-init-tools >=3.2 is needed for dvb_attach to work. This adds a comment to Kconfig about it. Signed-off-by: Andrew de Quincey Signed-off-by: Mauro Carvalho Chehab commit 92cd24fea4feefb9bde8efab3fdb25f525220672 Author: Andrew de Quincey Date: Thu Sep 7 00:31:55 2006 -0300 V4L/DVB (4610): Add tua6100 config wrapper I had forgotten to add the wrapper round the tua6100_attach function if its disabled in Kconfig Signed-off-by: Andrew de Quincey Signed-off-by: Mauro Carvalho Chehab commit 141276b57e1f83a86b8e77554b36511be0a7049c Author: Mauro Carvalho Chehab Date: Wed Sep 6 19:04:28 2006 -0300 V4L/DVB (4609): Improved i2c performance on software bitbang algoritm Software I2C were using a very conservative value of udelay=16, meaning about 20Kbps. According with Philips I2C datasheet, the i2c should answer well for times at the order of 4.7 us. So, using udelay=5 should work for all devices. After this patch, the speed should be close to 66,67 Kbps, with the current kernel software bitbang, with 30/60 duty cycle. Anyway, added a new parameter (i2c_udelay) that would allow using conservative values, if eventually a hardware doesn't support the datasheet values. Thanks to Jean Delvare for pointing this improvement. Signed-off-by: Mauro Carvalho Chehab commit 48c06d5e2d63c1d6282c0f7fe67741a39d6c1852 Author: Mauro Carvalho Chehab Date: Wed Sep 6 09:29:00 2006 -0300 V4L/DVB (4608a): V4L1 API conversion not finished yet Updates feature-removal-schedule.txt to reflect the current scheduled date to convert all V4L1 drivers to V4L2. Signed-off-by: Mauro Carvalho Chehab commit 1c72cfdcea00fbdcae37d096f2e58b4736d305fb Author: Andrew de Quincey Date: Tue Sep 5 17:58:20 2006 -0300 V4L/DVB (4607): Port budget-av to use the new tua6100 driver Port budget-av to use the new tua6100 driver Signed-off-by: Andrew de Quincey Signed-off-by: Mauro Carvalho Chehab commit 00be2e7c64157c845afff56f25677da706b151b6 Author: Andrew de Quincey Date: Tue Sep 5 17:53:06 2006 -0300 V4L/DVB (4606): Add driver for TUA6100 This driver was originally in budget-av.c, however I have extracted it into a seperate file to permit reuse. I also reworked the code to make it maintainable. I then examined the KNC1 windows drivers and rewrote the code in order to configure the PLL as they do. This solves a lot of reported tuning problems. Signed-off-by: Andrew de Quincey Signed-off-by: Mauro Carvalho Chehab commit c4e4aac88737879a562760ac07e51167847f193d Author: Mike Isely Date: Sun Sep 3 13:33:10 2006 -0300 V4L/DVB (4604): Fix broken pvrusb2 build Fix broken build when 24XXX support is not selected. This is required due to the requirement of removing 24XXX ifdef's from the driver source. Signed-off-by: Mike Isely Signed-off-by: Mauro Carvalho Chehab commit 1e9dadbe7a0afa0c3eeae538164d8b9d489d3cc0 Author: Bradley Kite Date: Sat Sep 2 21:14:27 2006 -0300 V4L/DVB (4600): Fix DVB Front-End Signal Strength Inconsistency The cx22702 returns an 8 bit unshifted value for signal strength; this is inconsistent with most other frontends Signed-off-by: Bradley Derek Kite Signed-off-by: Andrew de Quincey Signed-off-by: Mauro Carvalho Chehab commit 81409ed08a7ecc6a3da08b9b0321fd070c57a721 Author: Bas Bloemsaat Date: Sun Sep 3 09:47:41 2006 -0300 V4L/DVB (4599): Adds Compro PS39U USB ID to Vicam driver Trivial patch to make Compro PS39U WebCam work with linux by using the vicam driver. The camera is just a vicam with another USB ID, so I added that ID to the driver, and it works now. Signed-off-by: Bas Bloemsaat Signed-off-by: Mauro Carvalho Chehab commit 97d9e80e75547e940a24ebcd2ec99e817bcf47d6 Author: Mauro Carvalho Chehab Date: Sun Sep 3 09:38:11 2006 -0300 V4L/DVB (4598): Fix a typo: VRES, instead o HRES Signed-off-by: Mauro Carvalho Chehab commit 3ad9fc37bacd74c5c05eb0bd4b76876e0daf8a2d Author: Mike Isely Date: Sat Sep 2 22:37:52 2006 -0300 V4L/DVB (4597): Improve resolution limit enforcements in pvrusb2 The pvrusb2 driver resolution limits are now programmed the following way, based on empirical measurements of the hardware: Vertical max: 480 for NTSC, 576 otherwise Vertical min: 75 for 24xxx, 17 otherwise Horizontal max: 720 Horizontal min: 720 for 24xxx, 19 otherwise Signed-off-by: Mike Isely Signed-off-by: Mauro Carvalho Chehab commit 22ebb77dfa94904f534563512b70178f98bbe962 Author: Mike Isely Date: Sat Sep 2 22:33:02 2006 -0300 V4L/DVB (4596): Fix saa7115 miscalculation that breaks NTSC This repairs a problem introduced by a commit earlier applied. Thanks-to: Hans Verkuil Signed-off-by: Mike Isely Signed-off-by: Mauro Carvalho Chehab commit 7f19d0278c86c7f27df287fd0bd5170fe75dc7d2 Author: Mike Isely Date: Sat Sep 2 15:56:33 2006 -0300 V4L/DVB (4595): Remove CONFIG_VIDEO_PVRUSB2_24XXX from pvrusb2 driver Support for 24xxx devices was previously explicitly bracketed with CONFIG_VIDEO_PVRUSB2_24XXX inside the code because we didn't trust the stability of these changes. We trust it now; so there's no reason to leave this out of the driver anymore. Signed-off-by: Mike Isely Signed-off-by: Mauro Carvalho Chehab commit 4d31256f378e1a5fca7f4f3fb8b0a0aa1fff4312 Author: Mike Isely Date: Sat Sep 2 15:54:23 2006 -0300 V4L/DVB (4594): Remove some dead data elements from pvrusb2 driver Signed-off-by: Mike Isely Signed-off-by: Mauro Carvalho Chehab commit d9dce96faec043f261dc5a57d43cfc0e2905f2a5 Author: Mauro Carvalho Chehab Date: Sat Sep 2 12:59:38 2006 -0300 V4L/DVB (4592): Fixes some troubles on saa7115 Scaling were not working fine; Some reserved registers were wrong; On some situations, saa7115 were not properly being initializated. Removed some duplicated code. Thanks-to: Hans Verkuil for co-working on this patch. Signed-off-by: Hans Verkuil Signed-off-by: Mauro Carvalho Chehab commit 3e7d3e57350ab8b7b8ce930074a31c87f1cbc8cc Author: Mauro Carvalho Chehab Date: Fri Sep 1 18:39:05 2006 -0300 V4L/DVB (4586): Code were preventing saa7111 and saa7118 to work Signed-off-by: Mauro Carvalho Chehab commit 616b8b639e6491cfa63f79238a5c6fbee383eb09 Author: Hans Verkuil Date: Fri Sep 1 18:36:48 2006 -0300 V4L/DVB (4585): VIDIOC_G_SLICED_VBI_CAP now accepts a v4l2_buf_type, make it IOWR The VIDIOC_G_SLICED_VBI_CAP needs to receive the v4l2_buf_type field before it can return a result. Hence this ioctl must be IOWR, not IOR. Since this ioctl is still marked experimental we can make this change. Signed-off-by: Hans Verkuil Signed-off-by: Mauro Carvalho Chehab commit b31e341be01475e016842a662946b4fc9cff6bd4 Author: Hans Verkuil Date: Fri Sep 1 18:36:10 2006 -0300 V4L/DVB (4584): Fix VIDIOC_S_FMT min/max check in pvrusb2 Acked-by: Mike Isely Signed-off-by: Hans Verkuil Signed-off-by: Mauro Carvalho Chehab commit f2a49bc72bd2993356b3640cc105646ae56b10b8 Author: Hans Verkuil Date: Fri Sep 1 18:32:55 2006 -0300 V4L/DVB (4582): VIDIOC_INT_S_REGISTER is IOW, not IOR. Signed-off-by: Hans Verkuil Signed-off-by: Mauro Carvalho Chehab commit d87edf264a1f7d7678015e5a6752cde877434d4b Author: Mauro Carvalho Chehab Date: Fri Sep 1 09:37:11 2006 -0300 V4L/DVB (4573): Fix: There were some missing breaks at register check routine Without the breaks, saa7115 were not initializing PLL2. Signed-off-by: Mauro Carvalho Chehab commit 66440ccbf2f4077ce59c9692a2c7288201ea0171 Author: Mauro Carvalho Chehab Date: Wed Aug 30 19:52:14 2006 -0300 V4L/DVB (4565): Fix scaling calculus Signed-off-by: Mauro Carvalho Chehab commit 4fcd7d8f7b6ce0a0adb3edd6d6edcbf2fd05a02b Author: Unai Uribarri Date: Sun Aug 27 23:01:24 2006 -0300 V4L/DVB (4561): Sync'ing dvb-usb-remote with changes in USB input subsystem This patch fixes the physical address and takes into account recent changes in the USB input subsystem. Acked-by: Dmitry Torokhov Signed-off-by: Unai Uribarri Signed-off-by: Trent Piepho Signed-off-by: Mauro Carvalho Chehab commit 58f56cbe29042dca81fd59c05fb2055d58557d1e Author: Mauro Carvalho Chehab Date: Wed Aug 30 05:44:31 2006 -0300 V4L/DVB (4556): Fix a typo. Signed-off-by: Mauro Carvalho Chehab commit 59ba9154952baddfaea18e9decf91c040511c0ed Author: Mauro Carvalho Chehab Date: Wed Aug 30 05:34:36 2006 -0300 V4L/DVB (4555): Cleanup: removed hardcoded tables saa7115 module is capable of calculating the proper FIR tables. However, there were 4 hardcoded tables for the standard resolution. Signed-off-by: Mauro Carvalho Chehab commit 66ec1193ba2b4171c8f7e08245393d1b547ffd1e Author: Mauro Carvalho Chehab Date: Tue Aug 29 22:52:32 2006 -0300 V4L/DVB (4554): Renamed several common structs/functions to saa711x instead of saa7115 Signed-off-by: Mauro Carvalho Chehab commit 89f75ffc7e97d96ea76556671446d57d77c46beb Author: Mauro Carvalho Chehab Date: Tue Aug 29 22:07:03 2006 -0300 V4L/DVB (4553): Add support for saa7111 and partial support for saa7118 Signed-off-by: Mauro Carvalho Chehab commit 96ecfc4edf6bdb535b4ae3d87db2ba7f91596dd8 Author: Mauro Carvalho Chehab Date: Mon Aug 28 19:18:49 2006 -0300 V4L/DVB (4551): Added register aliases for saa711x registers, instead of using reg numbers Signed-off-by: Mauro Carvalho Chehab commit 236f16d241e16b269cd00ef0116975882f498be5 Author: Mauro Carvalho Chehab Date: Mon Aug 28 08:25:29 2006 -0300 V4L/DVB (4550): Make saa7115 to report the complete chipset name Signed-off-by: Mauro Carvalho Chehab commit 44b579d63678609a16265a0acdb6405fafd173d6 Author: Hans Verkuil Date: Sun Aug 27 19:22:15 2006 -0300 V4L/DVB (4548): Better temporal filter handling. Adjust temporal filter if necessary. The problem with the temporal filter is that it works well with full resolution capturing, but not when the capture window is scaled (the filter introduces a ghosting effect). So if the capture window changed, and there is no updated filter value, then the filter is set depending on whether the new window is full resolution or not. For full resolution a setting of 8 really improves the video quality, especially if the original video quality is suboptimal. Also report VBI Format in VIDIOC_LOG_STATUS, it was missing. Signed-off-by: Hans Verkuil Signed-off-by: Mauro Carvalho Chehab commit 299006612a811ba5acc92e2686f2e8b8bc10d4b7 Author: Hans Verkuil Date: Sat Aug 26 05:00:12 2006 -0300 V4L/DVB (4547): Add YUV HM12 and VBI IVTV format documentation. README.hm12: documentation on the HM12 YUV format used by the cx23415/6 chip. README.vbi: documentation on the V4L2_MPEG_STREAM_VBI_FMT_IVTV VBI format used in MPEG streams. Signed-off-by: Hans Verkuil Signed-off-by: Mauro Carvalho Chehab commit 784e8fe417d45b526eeb74794b7df43e11000f70 Author: Hans Verkuil Date: Sat Aug 26 03:17:58 2006 -0300 V4L/DVB (4546): Add u32 argument to VIDIOC_INT_RESET. The extra argument makes it possible to reset subsystems of a chip if that is supported. Signed-off-by: Hans Verkuil Signed-off-by: Mauro Carvalho Chehab commit 1739adea321788e380794c1072c810d445090bca Author: Hans Verkuil Date: Sat Aug 26 03:05:17 2006 -0300 V4L/DVB (4545): Add missing v4l2_buf_type to struct v4l2_sliced_vbi_cap. Signed-off-by: Hans Verkuil Signed-off-by: Mauro Carvalho Chehab commit d7304dee3b7e29e801ba59bbf9a47440c196263d Author: Trent Piepho Date: Thu Aug 24 22:43:45 2006 -0300 V4L/DVB (4533): Tda9887: add configuration setting for L standard PLL gating Add a tuner config parameter for TDA9887, default_pll_gating_18, that changes the L standard PLL gating value from 36% to 0% (datasheet says 0%, tda9887 code says 18%). Turn this on for Microtune 4049FM5, as recomended by tuner datasheet. Signed-off-by: Trent Piepho Signed-off-by: Mauro Carvalho Chehab commit 62a7b3e2ada3a76f1a6887b537c07517e90f72dd Author: Trent Piepho Date: Thu Aug 24 22:43:16 2006 -0300 V4L/DVB (4532): Isl6421: Release callback installed incorrectly The release callback was installed in ops.release, it should have been ops.release_sec. This prevented to front-end release from getting called. Signed-off-by: Trent Piepho Signed-off-by: Mauro Carvalho Chehab commit fb6065bbd915f9cf6022d52e114f5078654834b5 Author: Patrick Boettcher Date: Mon Aug 21 08:21:52 2006 -0300 V4L/DVB (4530): Another fix for the PID parsing Still the pid_parse bit was erased. Signed-off-by: Patrick Boettcher Signed-off-by: Mauro Carvalho Chehab commit 559463bba8b91d36b12f6722dc27440567e4f6be Author: Patrick Boettcher Date: Sat Aug 19 16:13:53 2006 -0300 V4L/DVB (4529): Keep the PID parse bit when resetting the output mode Matthieu Castet found that with the rewritten dib3000mc-driver the PID-parsing was handled correctly. This changeset fixes it. Thanks Matthieu Signed-off-by: Patrick Boettcher Signed-off-by: Mauro Carvalho Chehab commit ded38d2806b508b0b0f95581c103958949403daf Author: Jochen Issing Date: Sat Aug 19 16:03:21 2006 -0300 V4L/DVB (4528): PATCH: Club 3D zap250mini After some structural changes, here comes the updated patch for the Club 3D zap250mini USB dvb device. Adding support for a WideView-based device with a different "COLD" ID. Signed-off-by: Jochen Issing Signed-off-by: Patrick Boettcher Signed-off-by: Mauro Carvalho Chehab commit 56760f07a7948d53b807c8f00c1639df9acf97fd Author: Adrian Bunk Date: Tue Aug 15 11:38:40 2006 -0300 V4L/DVB (4525): Drivers/media/dvb/dvb-usb/dibusb-mb.c: NULL dereference The Coverity checker spotted the following "we dereference d->fe only when we know it's NULL" bug: <-- snip --> ... static int dibusb_dib3000mb_frontend_attach(struct dvb_usb_device *d) { ... if ((d->fe = dib3000mb_attach(&demod_cfg,&d->i2c_adap,&st->ops)) == NULL) { d->fe->ops.tuner_ops.init = dvb_usb_tuner_init_i2c; d->fe->ops.tuner_ops.set_params = dvb_usb_tuner_set_params_i2c; return -ENODEV; } ... <-- snip --> Signed-off-by: Patrick Boettcher Signed-off-by: Mauro Carvalho Chehab commit 1e805e679a4e92099c62cc952cd668a6c683e849 Author: Mauro Carvalho Chehab Date: Wed Aug 23 16:51:43 2006 -0300 V4L/DVB (4523): Fix a warning caused by a typo (comma instead of dot-comma) Signed-off-by: Mauro Carvalho Chehab commit 1450e6bedc58c731617d99b4670070ed3ccc91b4 Author: Mauro Carvalho Chehab Date: Wed Aug 23 10:08:41 2006 -0300 V4L/DVB (4519): Fixes Helper module dependencies against V4L APIs Signed-off-by: Mauro Carvalho Chehab commit 29adeee5340cb0de393330f962349ae88f747cea Author: Mauro Carvalho Chehab Date: Thu Aug 31 15:31:07 2006 -0300 V4L/DVB (4568): Added missing KS0197 Kconfig item Signed-off-by: Mauro Carvalho Chehab commit faa1cb2039141030c7179b530ea4c63246847bc3 Author: Mauro Carvalho Chehab Date: Tue Aug 22 18:49:17 2006 -0300 V4L/DVB (4518): Allow manually selecting the proper helper drivers There are several boards on V4L that can work with several different helper modules for audio/video encoding/decoding and similar stuff. This patch adds the capability of choicing between autoselecting the pertinent helper modules for each driver, or to manually selecting them. Acked-by: Michael Krufky Acked-by: Mike Isely Signed-off-by: Mauro Carvalho Chehab commit fe9b5bb5e57a92df74bd7bc6a79a04671a65dddd Author: Mauro Carvalho Chehab Date: Tue Aug 22 15:38:18 2006 -0300 V4L/DVB (4516): Split audio/video encoders/decoders from main drivers Several audio/video encoders/decoders were just bound as if they were part of the core driver. In fact, they are generic enough to be used by other drivers as well, since they use I2C event bus to communicate. Signed-off-by: Mauro Carvalho Chehab commit 6e40773a9b8fe196720b913cff31a346a39483e2 Author: Mauro Carvalho Chehab Date: Tue Aug 22 15:37:41 2006 -0300 V4L/DVB (4515): Fixed module name, since it is, in fact, a decoder. Signed-off-by: Mauro Carvalho Chehab commit b961b9c5a27da21f78b5e02c687db9cee259468e Author: Mauro Carvalho Chehab Date: Tue Aug 22 12:21:18 2006 -0300 V4L/DVB (4514): Add some comments for Kconfig encoders/decoders itens Signed-off-by: Mauro Carvalho Chehab commit 897ea1307b40a17cb2d6b8d458eaa1573bf1a45e Author: Mauro Carvalho Chehab Date: Fri Sep 1 09:25:30 2006 -0300 V4L/DVB (4513): Split audio decoders from bttv Several audio decoders were just bound as if they were part of bttv driver. In fact, they are generic enough to be used by other drivers as well, since they use I2C event bus to communicate. Signed-off-by: Mauro Carvalho Chehab commit f70a7a918adeebe6be4a72742bff9399210c7541 Author: Alexey Dobriyan Date: Tue Aug 22 09:57:24 2006 -0300 V4L/DVB (4512): Ks0127: wire up i2c_add_driver() return value Signed-off-by: Alexey Dobriyan Signed-off-by: Andrew Morton Signed-off-by: Mauro Carvalho Chehab commit d084aa706761060940110279794e6a4e83785858 Author: Eric Sesterhenn Date: Mon Aug 21 10:36:36 2006 -0300 V4L/DVB (4510): Fix signedness error in drivers/media/video/vivi.c when checking the -Wextra signedness warnings issued by gcc 4.1 I came across this one: drivers/media/video/vivi.c:1001: warning: comparison of unsigned expression < 0 is always false Since videobuf_reqbufs() returns negative values on errors the current code does no real error checking since gcc removes the comparison. This patch fixes this issue by making ret a normal, signed integer. Signed-off-by: Eric Sesterhenn Signed-off-by: Mauro Carvalho Chehab commit 3153d0d05d2b4e0466818e4f2319882010928d59 Author: Mauro Carvalho Chehab Date: Mon Aug 21 09:04:14 2006 -0300 V4L/DVB (4509): Added missing copyright Several changes at register stuff were done since commit b45009b0288a96a3458f4f8e93cb776678d41875, but I've forgot to add the copyright line for this. Those changes allowed cx88 to have multiple tuners, allowing it to support hardware with separated radio and video tuners. It also allows binding a tuner to an specific i2c address. Signed-off-by: Mauro Carvalho Chehab commit 0d0d871b3f3395820ec33a78fb2cc101b9bdcced Author: Mauro Carvalho Chehab Date: Fri Aug 18 07:40:28 2006 -0300 V4L/DVB (4508): Fix an array overflow on bt866 The Coverity checker spotted the following two array overflows. Registers 0xcc and 0xdc were cached on reg[] array, with only 128 elements, instead of 256. Signed-off-by: Mauro Carvalho Chehab commit eb42c42449b4d018881dc8f1856ce84cf74f90c5 Author: Mauro Carvalho Chehab Date: Fri Aug 18 07:31:22 2006 -0300 V4L/DVB (4507): Make tvp5150 an independent Kconfig item Signed-off-by: Mauro Carvalho Chehab commit 12500f07c6e179692ae3bd4d7bee9aa07ec74c25 Author: Mauro Carvalho Chehab Date: Fri Aug 18 07:31:10 2006 -0300 V4L/DVB (4506): TVP5150 routing logic were broken. As pointed by The Coverity checker, commit c7c0b34c27bbf0671807e902fbfea6270c8f138d broked input selection. Signed-off-by: Mauro Carvalho Chehab commit e738e35d1e9ae15b597c713e0b74e9a535020c0d Author: Ricardo Cerqueira Date: Thu Aug 17 18:40:28 2006 -0300 V4L/DVB (4504): Enable audio DMA restart on channel change even when cx88-alsa is compiled cx88-alsa can be compiled in (in distro built kernels, for example), but not used. In those cases, the audio DMA restart is needed for proper sound on NICAM channels. This patch enables the DMA restart even with ALSA, but the functions now check if cx88-alsa is really active. Signed-off-by: Ricardo Cerqueira Signed-off-by: Mauro Carvalho Chehab commit 4e318bef68e819f001a3c8af65401891893d3d54 Author: Christoph Pfister Date: Sat Aug 12 09:13:35 2006 -0300 V4L/DVB (4501): Add support for knc one dvb-s plus with 1894:0011 Apparently there are two types of knc1 dvb-s plus cards with different tuners (as for the knc1 dvb-s ones). This patch adds support for those cards with subsystem id 1894:0011. Successfully tested by: Benjamin Weber Signed-off-by: Christoph Pfister Signed-off-by: Andrew de Quincey Signed-off-by: Mauro Carvalho Chehab commit 0d7466146fa59cfa4b992a52cf274d603b475fd1 Author: Andrew de Quincey Date: Sat Aug 12 09:09:44 2006 -0300 V4L/DVB (4500): Fix KNC1 DVBC support This actually needs the same configuration as the other DVBC cards; simply no one had managed to test before to find out. Signed-off-by: Andrew de Quincey Signed-off-by: Mauro Carvalho Chehab commit 17bc98a41ae0ef82bab502ec1f9224ec5fcbe764 Author: Alexey Dobriyan Date: Sat Aug 12 22:01:27 2006 -0300 V4L/DVB (4499): CONFIG_PM=n slim: drivers/media/video/* Signed-off-by: Alexey Dobriyan Signed-off-by: Andrew Morton Signed-off-by: Mauro Carvalho Chehab commit 4d98816be7f3e2ffe90093a8e41074ea348289df Author: Mauro Carvalho Chehab Date: Sat Aug 12 21:59:19 2006 -0300 V4L/DVB (4498): Offset parameter permission were 0x666, instead of 0x664 Although not dangerous, it may allow a normal user with access to a machine to untune a TV channel. Signed-off-by: Mauro Carvalho Chehab commit d536e9c41f78c9959c585181f8a1e7fe8b157197 Author: Chris Pascoe Date: Thu Aug 10 03:22:21 2006 -0300 V4L/DVB (4497): Reset USB part of DViCO Dual Digital during PCI driver attach If the FX2 does not reset properly during reboot, it can present an invalid USB device ID and fail to attach. Prevent this situation from occuring by resetting the USB part of the card when the PCI part probes. Also fix the GPIO configurations so that analog capture will not inadvertantly reset the USB part. Signed-off-by: Chris Pascoe Signed-off-by: Mauro Carvalho Chehab commit fc3398d8b317bebe542f57c65572d9b9f52112f7 Author: Chris Pascoe Date: Thu Aug 10 03:17:42 2006 -0300 V4L/DVB (4496): Tuning tweaks for ZL10353 More register setup which improves the ZL10353's tuning characteristics. Signed-off-by: Chris Pascoe Signed-off-by: Mauro Carvalho Chehab commit 8fb957841b2f4311e6418dcbef24564e4cebb87d Author: Chris Pascoe Date: Thu Aug 10 03:17:16 2006 -0300 V4L/DVB (4495): Fix "no data from ZL10353 based USB tuner" problem Force parallel transport stream output on the ZL10353 attached to a bluebird device. Addresses the problem where a frontend lock was observed, but no MPEG transport data was received. Signed-off-by: Chris Pascoe Signed-off-by: Mauro Carvalho Chehab commit b5b168d7b9e28e0569ed4fe2c0a44fae71df30b5 Author: Oliver Endriss Date: Tue Aug 8 19:58:27 2006 -0300 V4L/DVB (4493): [lnbp21] release callback fixed lnbp21 module must use fe->ops.release_sec, not fe->ops.release. The release function of the frontend driver was never called for cards with lnbp21... Signed-off-by: Oliver Endriss Signed-off-by: Mauro Carvalho Chehab commit 7df0994d7bda8eb30b459e31f8b6be97a8f1b0b0 Author: Oliver Endriss Date: Tue Aug 8 19:51:04 2006 -0300 V4L/DVB (4492): [dvb_attach] dvb_frontend_detach fix dvb_frontend_detach() used invalid config option CONFIG_DVB_DETACH, so dvb_frontend_detach() did not call symbol_put_addr(). Replaced CONFIG_DVB_DETACH by CONFIG_DVB_CORE_ATTACH. Signed-off-by: Oliver Endriss Signed-off-by: Mauro Carvalho Chehab commit a2b9e3e74a8edbc4a9d266cc54cd30266215fbdf Author: Trent Piepho Date: Mon Aug 7 20:01:01 2006 -0300 V4L/DVB (4490): Whitespace cleanup from whitespace cleaning script Signed-off-by: Trent Piepho Signed-off-by: Mauro Carvalho Chehab commit 18795eb98d117dbb96fadfc17a7da44c93857fd6 Author: Trent Piepho Date: Mon Aug 7 19:43:21 2006 -0300 V4L/DVB (4488): Fix possible crash in Hauppauge eeprom reading If an eeprom defined two tuners and they supported more than eight standards combined (as opposed to each), it would overflow an array. Signed-off-by: Trent Piepho Signed-off-by: Mauro Carvalho Chehab commit 40346b290fcbf95d17c05ffe5101a1b5de8af548 Author: Mauro Carvalho Chehab Date: Tue Aug 8 15:21:47 2006 -0300 V4L/DVB (4485): Fix a warning on PPC64 drivers/media/video/pvrusb2/pvrusb2-i2c-cmd-v4l2.c: In function 'set_standard': drivers/media/video/pvrusb2/pvrusb2-i2c-cmd-v4l2.c:33: warning: format '%llx' expects type 'long long unsigned int', but argument 2 has type 'v4l2_std_id' Signed-off-by: Mauro Carvalho Chehab commit d591b9ccbe27fe974702411cff422fb6c6c62ad2 Author: Andrew Morton Date: Tue Aug 8 10:52:22 2006 -0300 V4L/DVB (4484): Git-dvb: cadet build fix drivers/media/radio/radio-cadet.c: In function 'cadet_do_ioctl': drivers/media/radio/radio-cadet.c:362: warning: implicit declaration of function 'KERNEL_VERSION' Signed-off-by: Andrew Morton Signed-off-by: Mauro Carvalho Chehab commit c6d74c2ce86a80c9859010eb65e622214a6993ed Author: Patrick Boettcher Date: Sun Aug 6 08:49:09 2006 -0300 V4L/DVB (4481): Make the dibx000-common-module GPL Forget to put the MODULE-define and thus to give the license. Now GPL Signed-off-by: Patrick Boettcher Signed-off-by: Mauro Carvalho Chehab commit 0e367a15ed08710098e2ff59aa25cec723c0a9d4 Author: Dave Jones Date: Mon Aug 7 13:18:56 2006 -0300 V4L/DVB (4480): Remove null chars from dvb names DVB null terminates its device names, which seems odd, and should be unnecessary. Acked-by: Alan Cox Signed-off-by: Dave Jones Signed-off-by: Andrew Morton Signed-off-by: Mauro Carvalho Chehab commit ef76856d26087f897e163b9fd8b2f7bd0cd54fc7 Author: Yeasah Pell Date: Tue Sep 26 12:30:14 2006 -0300 V4L/DVB (4479): LNB voltage control was inverted for the benefit of geniatech cards on Kworld 1) It sets LNBDCPol differently based on the card type. Now it should work properly for both the kworld and geniatech cards. 2) It stops returning an error for the SEC_VOLTAGE_OFF voltage command (the cx88-dvb level handles the actual voltage on/off, but it still passes the ioctl down to the cx24123 level, which previously rejected the OFF as invalid so the ioctl would report failure) Acked-by: Manu Abraham Signed-off-by: Yeasah Pell Signed-off-by: Mauro Carvalho Chehab commit 8d90ee5e0e57b67e6e5c01cb14495fb69edccbbf Author: Oliver Endriss Date: Mon Aug 7 02:04:26 2006 -0300 V4L/DVB (4478): [av7110] Support Grundig DVB-T tuner for sub-system 13c2:0001 Some DVB-T cards with Grundig 29504-401 tuner use subsystem id 13c2:0001 (reported by Stuart Butterfield). Signed-off-by: Oliver Endriss Signed-off-by: Mauro Carvalho Chehab commit d93f8860cc55504b376b38b95d22efeb3cc10edd Author: Mauro Carvalho Chehab Date: Sun Aug 6 17:03:50 2006 -0300 V4L/DVB (4477): Improve hardware algorithm by setting the appropriate registers Hardware algorithm needs to be configured to: 1) Increase timeout constants, to detect weaker signals; 2) do a wider zigzag search. Acked-by: Manu Abraham Signed-off-by: Mauro Carvalho Chehab commit 8a36ecf0f4c0861330cc9e69885b0502fedac14a Author: Mauro Carvalho Chehab Date: Sun Aug 6 10:16:27 2006 -0300 V4L/DVB (4475): Fix most Compat32 stuff on V4L2 Tested on x64 with a bttv board. Most Get ioctls are fixed. The only non-completely working one is VIDIOCGAUDIO. All other IOR ioctls give the same results on x86_64 and i386 architectures. Thanks to Alastair Poole for part of this patch and tests on ppc64. Signed-off-by: Alastair Poole Signed-off-by: Mauro Carvalho Chehab commit 3702627899db1d6a818c6e0b4ba5205f94bfbef4 Author: Mauro Carvalho Chehab Date: Sun Aug 6 09:10:06 2006 -0300 V4L/DVB (4474): On some cases, depth were not returned. Signed-off-by: Mauro Carvalho Chehab commit a202a5bfb6c1d7c778f67f28b5f2caac21beafce Author: Patrick Boettcher Date: Sun Aug 6 06:40:58 2006 -0300 V4L/DVB (4472): Remove debug-print from dib3000mc Removed and commented a small debug function. Signed-off-by: Patrick Boettcher Signed-off-by: Mauro Carvalho Chehab commit 294d83d7fed1ba5a15b625500b96b3fbf60138ad Author: matthieu castet Date: Thu Aug 3 06:36:17 2006 -0300 V4L/DVB (4470): MT2060: turn on the VGA The VGA was not turned on after calling sleep. This lead to bad performance in difficult areas. Signed-off-by: matthieu castet Signed-off-by: Patrick Boettcher Signed-off-by: Mauro Carvalho Chehab commit 0f69e7f3f5256ab392fc44e7340777348b5da2cd Author: Patrick Boettcher Date: Thu Aug 3 06:04:16 2006 -0300 V4L/DVB (4468): Another fix for attaching the DiB3000MC Another stupid fix for attaching the DiB3000MC. == 0 instead of != 0. Signed-off-by: Patrick Boettcher Signed-off-by: Mauro Carvalho Chehab commit 4e66c97c9299d53f1d9167e42b05357f023099c8 Author: Patrick Boettcher Date: Tue Aug 8 15:48:11 2006 -0300 V4L/DVB: DiB3000MC: set FE to NULL after being freed DiB3000MC: set FE to NULL after being freed Signed-off-by: Patrick Boettcher Signed-off-by: Mauro Carvalho Chehab commit a2c00a0eee751e298c916508b6fa5cee0d7d188d Author: Klaus Frahm Date: Sat Jul 29 18:49:36 2006 -0300 V4L/DVB (4464): FIX_ AverTV A800 trouble A new revision of the Avermedia A800 does not reenumerate after download the firmware. Signed-off-by: Klaus Frahm Signed-off-by: Martin Habbecke Signed-off-by: Patrick Boettcher Signed-off-by: Mauro Carvalho Chehab commit 6c95f61bcb3bd8dde9efc70f0ae9a83a7b7ac9cd Author: Patrick Boettcher Date: Sat Jul 29 18:24:21 2006 -0300 V4L/DVB (4463): New firmware for Nova-t-usb2 Thomas Rokamp and others are reporting: "I have now with success extracted a working firmware for the 93004 rev. C1A2." This patch increments the firmware version to 2. Signed-off-by: Patrick Boettcher Signed-off-by: Mauro Carvalho Chehab commit 5a19f312162abd1356cdcda608f2b13502a383cc Author: Patrick Boettcher Date: Wed Aug 2 08:44:31 2006 -0300 V4L/DVB (4465): Attach the dib3000mc correctly Flynn Marquardt found out that there is problem with the new dib3000mc-driver when using with the real dib3000mc. It resulted in a segfault. Fixed two things: use the correct I2C address and do not attach a tuner, when the demod was previously failing. Signed-off-by: Patrick Boettcher Signed-off-by: Mauro Carvalho Chehab commit 42afd061700edb43bb082bc65a2ddde431151d6b Author: Patrick Boettcher Date: Sat Jul 29 17:33:44 2006 -0300 V4L/DVB (4461): Added missing dibx000-common code and headers The first commit omitted the common-code and header-files. Signed-off-by: Patrick Boettcher Signed-off-by: Mauro Carvalho Chehab commit b7571f8d7e12cd70048331e6a0199a42dc995d99 Author: Patrick Boettcher Date: Tue Aug 8 15:48:10 2006 -0300 V4L/DVB: Complete rewrite of the DiB3000mc-driver A complete rewrite of the DiB3000MC/P driver has been done. It is now much more easy to maintain and to get improvements inside. Additionally the tuning time has been reduced and the usage of the driver is much more understandable now. Signed-off-by: Patrick Boettcher Signed-off-by: Francois KANOUNNIKOFF Signed-off-by: Mauro Carvalho Chehab commit 74340b0a8bc60b400c7e5fe4950303aa6f914d16 Author: Patrick Boettcher Date: Tue Jul 4 13:47:16 2006 -0300 V4L/DVB (4457): Remove dib3000-common-module removing the dib3000-common-module. The common stuff is not common anymore - it will be only used by the 3000mb-driver. A new 3000mc/p-driver will be added which will share common stuff with dib7000. Signed-off-by: Patrick Boettcher Signed-off-by: Mauro Carvalho Chehab commit 46f73f936665ab26c8501634e6aa34464fcc1521 Author: Olivier DANET Date: Tue Aug 8 15:48:10 2006 -0300 V4L/DVB: Update for MT2060 to use dvb_tuner_ops new tuner api minor fixes for tuning Signed-off-by: Olivier DANET Signed-off-by: Patrick Boettcher Signed-off-by: Mauro Carvalho Chehab commit 83fa907963662ecaade803cec4c9c3e14b69ad7d Author: Patrick Boettcher Date: Sun May 14 10:49:42 2006 -0300 V4L/DVB (4454): Corrected debugging output of the mt2060 When debugging was disabled at lot of empty lines where printed anyway. Reported by Rolf Ahrenberg and Sergei Haller. Signed-off-by: Patrick Boettcher Signed-off-by: Mauro Carvalho Chehab commit 825d51ef9ed956d896244f82b02988d370a7e47e Author: Patrick Boettcher Date: Tue Aug 8 15:48:10 2006 -0300 V4L/DVB: MT2060: Code cleanups, adding to new build-mechanism Some minor code cleanups and added the MT2060 to new v4l-dvb-build-system, preliminarily under dvb/frontends. Signed-off-by: Patrick Boettcher Signed-off-by: Mauro Carvalho Chehab commit a841e1f6d153c72e29802a33520f2c862792f7b0 Author: Sergei Haller Date: Sun May 14 10:47:21 2006 -0300 V4L/DVB (4453): [PATCH] dibcom mod3000p + mt2060 -- remote control + Added support for the remote control shipped with the pen drive size DVB-T receiver [ID 10b8:0bc7 DiBcom DiBcom USB2.0 DVB-T reference design (MOD3000P)] Signed-off-by: Sergei Haller Signed-off-by: Patrick Boettcher Signed-off-by: Mauro Carvalho Chehab commit 4de2730a1d2742aea67f24d1041bdc5e0bad37e3 Author: Patrick Boettcher Date: Mon Apr 17 13:22:15 2006 -0300 V4L/DVB (4451): MT2060: IF1 Offset from EEPROM, several updates - AGC gain set to 3 - The tuning sequence has been changed to match the DibCom driver ( from I2C spy captures ) - For LITE-ON adapters : The IF1 frequency is now tuned according to the calibration values stored in EEPROM. Signed-off-by: Patrick Boettcher Signed-off-by: Olivier DANET Signed-off-by: Mauro Carvalho Chehab commit d7357a53ef4d59724ad80560e47102e0095555b6 Author: Olivier DANET Date: Tue Aug 8 15:48:09 2006 -0300 V4L/DVB: Added support for LeadTek DVB-T USB clone Adding the USB ids for the LeadTek clone of the STK3000P-ref-design. Signed-off-by: Olivier DANET Signed-off-by: Patrick Boettcher Signed-off-by: Mauro Carvalho Chehab commit cb25a74d49f3589c7868422ec48d219246a4fca4 Author: Patrick Boettcher Date: Fri Mar 31 18:48:39 2006 -0300 V4L/DVB (4446): Add support for the Artec T14 Adding the USB IDs to dibusb-mc.c for the Artec T14 USB Stick based on STK3000P reference design. Thanks to Thomas Rabe testing. Signed-off-by: Patrick Boettcher Signed-off-by: Mauro Carvalho Chehab commit e4d6c1f74aaac1bbe5be50e7368e5ac99d54e5a2 Author: Patrick Boettcher Date: Tue Aug 8 15:48:09 2006 -0300 V4L/DVB: Cleanups for mt2060-integration - some coding style fixes for newly added mt2060 - moved agc-config from fixed values in dib3000mc to configurable ones - whitespace clean-ups for usb-id-file Signed-off-by: Patrick Boettcher Signed-off-by: Mauro Carvalho Chehab commit a16bf5d5603184dc1db88f37051881b2eeacfd17 Author: Olivier DANET Date: Tue Aug 8 15:48:09 2006 -0300 V4L/DVB: Adding support for MT2060 and thus for some DVB-USB-devices based on it - MT2060 tuner driver - Added support for some USB DVB-T devices based on Dib3000P Signed-off-by: Olivier DANET Signed-off-by: Patrick Boettcher Signed-off-by: Mauro Carvalho Chehab commit 47922e9c3f583adf05a23842ff98f3b0bf7eec6d Author: Chris Pascoe Date: Sat Aug 5 23:47:16 2006 -0300 V4L/DVB (4441): Flexcop/nxt200x attach fix Address another case where the test in dvb-pll to see if a tuner's PLL responds when attaching may fail. Signed-off-by: Chris Pascoe Signed-off-by: Mauro Carvalho Chehab commit f7b54b1067bc0ccc6a2a2051f039ce630083f927 Author: Michael Krufky Date: Tue Aug 8 15:48:08 2006 -0300 V4L/DVB (4439): Whitespace cleanups for cx88-dvb and saa7134-dvb This patch cleans up some whitespace problems after the dvb_attach changes in cx88-dvb.c and saa7134-dvb.c, and converts some capitalized i2c address constants to lowercase. Signed-off-by: Michael Krufky Signed-off-by: Mauro Carvalho Chehab commit 4ad8eee5ac8d8336ac7965e4a4027a7b4ec080f1 Author: Michael Krufky Date: Tue Aug 8 15:48:08 2006 -0300 V4L/DVB (4438): Fix dvb_pll_attach for nxt2004-based cards The test in dvb-pll to see if a tuner's PLL responds when attaching fails on NXT2004 based boards before the firmware is loaded. This patch allows us to avoid this test by not passing an I2C bus handle to the dvb_pll_attach routine, just as Chris Pascoe has done for MT352 and ZL10353 based boards when used in cx88-dvb. Signed-off-by: Michael Krufky Signed-off-by: Mauro Carvalho Chehab commit c162dff6437d5f66c272b1811074ee32c53d17b9 Author: Chris Pascoe Date: Tue Aug 8 15:48:08 2006 -0300 V4L/DVB (4436): Dvb-pll support for MT352/ZL10353 based tuners. Typical wiring of MT352 and ZL10353 based tuners differs from dvb-pll's expectation that the PLL is directly accessible. On these boards, the PLL is actually hidden behind the demodulator, and as such can only be accessed via the demodulator's interface. It was failing to communicate with the PLL during an attach test and subsequently not connecting the tuner ops. By passing a NULL I2C bus handle to dvb_pll_attach, this accessibility check can be bypassed. Do this for the affected boards. Also fix a possible NULL dereference at sleep time, which would otherwise be exposed by this change. Signed-off-by: Chris Pascoe Acked-by: Andrew de Quincey Acked-by: Manu Abraham Signed-off-by: Mauro Carvalho Chehab commit 174ff219b7e3212f701f70c71860894716b0045b Author: Yeasah Pell Date: Tue Aug 8 15:48:08 2006 -0300 V4L/DVB (4435): HW algo Change this card to use HW ALGO tuning Signed-off-by: Yeasah Pell Signed-off-by: Manu Abraham Signed-off-by: Mauro Carvalho Chehab commit 18c053b3c5414c385f4a67134fd963b98881aa0d Author: Yeasah Pell Date: Tue Aug 8 15:48:08 2006 -0300 V4L/DVB (4434): Change BER config Change the bit error counter configuration to be the actual BER. Originally it was reporting UCB. Signed-off-by: Yeasah Pell Signed-off-by: Manu Abraham Signed-off-by: Mauro Carvalho Chehab commit d12a9b911c793ab5b6b02379880efd6fa3499575 Author: Yeasah Pell Date: Tue Aug 8 15:48:08 2006 -0300 V4L/DVB (4433): Soft decision threshold Set the Soft decision threshold properly for the specified FEC Signed-off-by: Yeasah Pell Signed-off-by: Manu Abraham Signed-off-by: Mauro Carvalho Chehab commit bbdd11fa957913d6648cabbca59be1da479180ed Author: Manu Abraham Date: Tue Aug 8 15:48:08 2006 -0300 V4L/DVB (4432): Fix Circular dependencies Signed-off-by: Manu Abraham Signed-off-by: Mauro Carvalho Chehab commit e4a49d76ca4e2c0b2b4c89d59d43486d781ffe95 Author: Andrew de Quincey Date: Tue Aug 8 15:48:07 2006 -0300 V4L/DVB (4428): Fix tda826x detection The tda826x detection was (correctly) cleaned up earlier, but unfortunately changing the number of received i2c messages from 2 -> 1 was missed. This fixes it. Signed-off-by: Andrew de Quincey Signed-off-by: Mauro Carvalho Chehab commit 17aafcc67feb359820488ffb0017405ad48b776e Author: Andrew de Quincey Date: Tue Aug 8 15:48:07 2006 -0300 V4L/DVB (4424): Add missing dvb-pll Kconfig infrastructure Signed-off-by: Andrew de Quincey Signed-off-by: Mauro Carvalho Chehab commit 0518999c5fd640bfac24c7c452e902007b1a2b0a Author: Mauro Carvalho Chehab Date: Tue Aug 8 15:48:07 2006 -0300 V4L/DVB (4422): Improved comment for AR device and fix some typos Signed-off-by: Mauro Carvalho Chehab commit b23056ef373c27a3bd089b40f45f4bc74674e71c Author: Mauro Carvalho Chehab Date: Tue Aug 8 15:48:07 2006 -0300 V4L/DVB (4421): V4L2 Conversion: saa5246a, saa5249, vino, hexium_orion, hexium_gemini Just a few adjustments were required on those drivers to be V4L2 compliant. Signed-off-by: Mauro Carvalho Chehab commit 704fd4a5672a5447a7f177838236eb13232be3c1 Author: Hans Verkuil Date: Tue Aug 8 15:48:07 2006 -0300 V4L/DVB (4417): Add support for PAL-Nc in cx24850. Signed-off-by: Hans Verkuil Signed-off-by: Mauro Carvalho Chehab commit 56b8df11345452103a75060a44429751ce71ee97 Author: Dmitry Torokhov Date: Tue Aug 8 15:48:06 2006 -0300 V4L/DVB (4413): Konicawc - handle errors from input_register_device() Compile-tested only (no hardware) Signed-off-by: Dmitry Torokhov Signed-off-by: Mauro Carvalho Chehab commit 5aff308c5e73307fc495b89b6421b491f56d3657 Author: Alan Cox Date: Tue Aug 8 15:47:50 2006 -0300 V4L/DVB (4410): Cleanups and fixes for dsbr100 Signed-off-by: Alan Cox Signed-off-by: Mauro Carvalho Chehab commit c0c7fa096623c0cfdd9d253de9d874558066cdbb Author: Hans J. Koch Date: Tue Aug 8 09:10:12 2006 -0300 V4L/DVB (4406): Convert radio-cadet to V4L2 API This is a card with RDS capabilities. RDS specifications didn't change from V4L1 to V4L2, so that part should be OK. This patch changed the following stuff: * The device can be opened multiple times. That's necessary because there are at least a radio application and an RDS application (rdsd) that want to open() the device. * Added a poll() function. Every character device should have that, and rdsd expects it as it uses select() on that file descriptor. * Converted the ioctls to V4L2. MUTE is not implemented correctly as the card doesn't seem to have a special bit for that. Probably there are a few more ioctls that should at least return 0 or an error. As I do not own such a card, I couldn't test anything. If there is anybody out there who owns such an ancient card, please test and report. I just checked that the code compiles. Signed-off-by: Hans J. Koch Signed-off-by: Mauro Carvalho Chehab commit 176ac9da4f09820a43fd48f0e74b1486fc3603ba Author: Andrew de Quincey Date: Tue Aug 8 09:10:11 2006 -0300 V4L/DVB (4405): Add missing KConfig I2C dependencies This was breaking the build if i2c was not previously set Signed-off-by: Andrew de Quincey Signed-off-by: Mauro Carvalho Chehab commit 8b9a46647b965f7033c198dd5e73d58b10e22a21 Author: Andrew de Quincey Date: Tue Aug 8 09:10:11 2006 -0300 V4L/DVB (4403): Use dprintk in tda826x. As opposed to printk() at the moment, which will fill logs uselessly Signed-off-by: Andrew de Quincey Signed-off-by: Mauro Carvalho Chehab commit 2b100e7d3c448dd369cf36ff38844b2440fab49d Author: Andrew de Quincey Date: Tue Aug 8 09:10:11 2006 -0300 V4L/DVB (4402): Fix budget-ci to use dvb_frontend_detach() I missed one call during the dvb_attach() development. Signed-off-by: Andrew de Quincey Signed-off-by: Mauro Carvalho Chehab commit 07e19c20c8cdd5e1cc96e0bc8a37f5322ce78cdb Author: Andrew de Quincey Date: Tue Aug 8 09:10:11 2006 -0300 V4L/DVB (4401): Disable tda10086 debug by default. Left on by accident. Signed-off-by: Andrew de Quincey Signed-off-by: Mauro Carvalho Chehab commit ef09c071a2867279a49374c35b2a169f69fced73 Author: Trent Piepho Date: Tue Aug 8 09:10:11 2006 -0300 V4L/DVB (4400): Tda826x: Remove 0-byte I2C write; put tuner_ops info in static struct Remove the 0-byte write that precedes 2-byte read. Move initialize the info field in the static tuner_ops definition, so that it doesn't need to be done manually. Signed-off-by: Trent Piepho Signed-off-by: Mauro Carvalho Chehab commit e2ac28fa15696d3d9dc38923438ad39fe1235ecd Author: Igor M. Liplianin Date: Tue Aug 8 09:10:10 2006 -0300 V4L/DVB (4398): Add support for Acorp TV134DS + FlyDVB-S cards. Add support for Acorp TV134DS and FlyDVB-S cards (both based on tda10086+tda826x) Signed-off-by: Igor M. Liplianin Signed-off-by: Andrew de Quincey Signed-off-by: Mauro Carvalho Chehab commit adc619ac6e3d3b4a175476b915befe37650ee109 Author: Andrew de Quincey Date: Tue Aug 8 09:10:10 2006 -0300 V4L/DVB (4397): Add tda10086 support for TT DVB-S-1401 Add the necessary code and makefile infrastructure Signed-off-by: Andrew de Quincey Signed-off-by: Mauro Carvalho Chehab commit 6bca3580c3303451b65afc98276edf40628dffe0 Author: Andrew de Quincey Date: Tue Aug 8 09:10:10 2006 -0300 V4L/DVB (4396): Add drivers for tda10086 + tda826x chips TDA10086 is a new DVB-S demodulator TDA826x is a DVB-S Silicon Tuner Signed-off-by: Andrew de Quincey Signed-off-by: Mauro Carvalho Chehab commit 2cd885aa0f35e9329292e5be2a6c9d424bba5531 Author: Andrew Morton Date: Tue Aug 8 09:10:09 2006 -0300 V4L/DVB (4394): Git-dvb: radio-sf16fmi build fix drivers/media/radio/radio-sf16fmi.c: In function 'fmi_do_ioctl': drivers/media/radio/radio-sf16fmi.c:147: warning: implicit declaration of function 'KERNEL_VERSION' Signed-off-by: Andrew Morton Signed-off-by: Mauro Carvalho Chehab commit 0912ad0b0fdee374f1f49d75fee341980f0868b6 Author: Andrew de Quincey Date: Tue Aug 8 09:10:09 2006 -0300 V4L/DVB (4392): Fix dst_ca attach Move the call to dst_attach into the dst_attach function to eliminate problems caused with dvb_attach. Signed-off-by: Andrew de Quincey Acked-by: Manu Abraham Signed-off-by: Mauro Carvalho Chehab commit f52a838b74be70b4054ab27e435e9acb92d8c50a Author: Andrew de Quincey Date: Tue Aug 8 09:10:09 2006 -0300 V4L/DVB (4391): Refactor dvb_detach calls into a single dvb_frontend_detach function. Remove buggy dvb_detach() macro and replace with unified dvb_frontend_detach() call. Signed-off-by: Andrew de Quincey Acked-by: Trent Piepho Signed-off-by: Mauro Carvalho Chehab commit 2a514dea5fda67958c79f5137d4dcb272f8561e8 Author: Andrew de Quincey Date: Tue Aug 8 09:10:09 2006 -0300 V4L/DVB (4389): Remove duplication _release() op. I added a duplicate method during one of the previous dvb_attach attempts. This removes the unnecessary duplication. Signed-off-by: Andrew de Quincey Acked-by: Trent Piepho Signed-off-by: Mauro Carvalho Chehab commit 1f10c7afa1ac611c32ec4a2114788876a3f5d05e Author: Andrew de Quincey Date: Tue Aug 8 09:10:09 2006 -0300 V4L/DVB (4388): Remove frontend selection from cx88/saa7134 drivers Replaced with dvb_attach() Signed-off-by: Andrew de Quincey Acked-by: Michael Krufky Acked-by: Trent Piepho Signed-off-by: Mauro Carvalho Chehab commit 102a342bb9672f67a34fd185803aaded4ce8dd0f Author: Andrew de Quincey Date: Tue Aug 8 09:10:08 2006 -0300 V4L/DVB (4387): Add Kconfig infrastructure for dvb_attach Allow it to be en/disabled Disable it in < 2.6.17 due to symbol_xxx() bug Signed-off-by: Andrew de Quincey Acked-by: Michael Krufky Acked-by: Trent Piepho Signed-off-by: Mauro Carvalho Chehab commit 2bfe031df6bd5e3b8e503eba8e3b6461d7c2c27e Author: Andrew de Quincey Date: Tue Aug 8 09:10:08 2006 -0300 V4L/DVB (4386): Convert DVB devices to use dvb_attach() Only devices using > 1 frontend were ported; ones which did not are left using static binding. Signed-off-by: Andrew de Quincey Acked-by: Michael Krufky Acked-by: Trent Piepho Signed-off-by: Mauro Carvalho Chehab commit d995506062c974133ba66d0822e58a923d4d74d9 Author: Andrew de Quincey Date: Tue Aug 8 09:10:08 2006 -0300 V4L/DVB (4385): Add dvb_attach() macro and supporting routines Add dvb_attach() macro and supporting routines Signed-off-by: Andrew de Quincey Acked-by: Michael Krufky Acked-by: Trent Piepho Signed-off-by: Mauro Carvalho Chehab commit c10d14d62d7b7596fd5c7bb8aad3f2b56f8640e6 Author: Andrew de Quincey Date: Tue Aug 8 09:10:08 2006 -0300 V4L/DVB (4384): Remove remaining static function calls Rewrote _write() calls to use write() op. Signed-off-by: Andrew de Quincey Acked-by: Michael Krufky Acked-by: Trent Piepho Signed-off-by: Mauro Carvalho Chehab commit 13fef9335f4fe2a73e1733f8807e69711736faef Author: Andrew de Quincey Date: Tue Aug 8 09:10:08 2006 -0300 V4L/DVB (4383): Convert SEC drivers to new frontend API Convert SEC drivers to new frontend API Signed-off-by: Andrew de Quincey Acked-by: Michael Krufky Acked-by: Trent Piepho Signed-off-by: Mauro Carvalho Chehab commit 94cbae5a1a1537ef5a402199f597e84dc5dd92cb Author: Andrew de Quincey Date: Tue Aug 8 09:10:07 2006 -0300 V4L/DVB (4382): Dvb_attach modifications to dvb frontend structures Add write() op Add release_sec() op Add change misc_priv->sec_priv data field Acked-by: Michael Krufky Acked-by: Trent Piepho Signed-off-by: Andrew de Quincey Signed-off-by: Mauro Carvalho Chehab commit 0e957becc3d22bcdab550aadac36893c8e0cb36e Author: Adrian Bunk Date: Tue Aug 8 09:10:07 2006 -0300 V4L/DVB (4378): Ttpci/: remove unneeded #include 's Since av7110.c is the only file actually using something from this header, there's no reson for other files to Signed-off-by: Adrian Bunk Signed-off-by: Mauro Carvalho Chehab commit 094ddbe9506706187b58df91d64695547a807916 Author: Mike Isely Date: Tue Aug 8 09:10:07 2006 -0300 V4L/DVB (4377): Force horizontal resolution limits in the pvrusb2 driver This change causes the pvrusb2 driver to limit horizontal resolution to be only 720 if 24xxx device hardware is being used. This is a workaround for an unsolved problem in the driver where if the resolution is set to something other than 720 the video quality will be _seriously_ degraded. It only happens on 24xxx devices (29xxx are unaffected by the problem and unaffected by this change). Once the problem is finally solved, this small change can be removed. Signed-off-by: Mike Isely Signed-off-by: Mauro Carvalho Chehab commit 89ebd63fdddc83fabb5cc751d0e59a1350c1627c Author: Mike Isely Date: Tue Aug 8 09:10:07 2006 -0300 V4L/DVB (4376): Make it possible for run-time calculation of control min/max in pvrusb2 The internal control implementation in the pvrusb2 driver normally encodes integer range limits using literal values in a const structure. This change adds two function pointers, which if not null will be called through in order to determine integer min / max values. Signed-off-by: Mike Isely Signed-off-by: Mauro Carvalho Chehab commit e95a191566685530ef49b702bbce0a33c57c3136 Author: Mike Isely Date: Tue Aug 8 09:10:07 2006 -0300 V4L/DVB (4375): Eliminate hardcoded limits in VIDIOC_[S|TRY]_FMT for pvrusb2 The pvrusb2 implementation for VIDIOC_[S|TRY]_FMT was hardcoding limits on the range for allowed resolution, but it would be much better if we instead just queried the internal control for these values. This then opens the door for the driver to adjust these limits based on the detected hardware. Signed-off-by: Mike Isely Signed-off-by: Mauro Carvalho Chehab commit 434449f4c8902198e6fa90023f60395230f36c23 Author: Mike Isely Date: Tue Aug 8 09:10:06 2006 -0300 V4L/DVB (4372): Clean up some post mpeg-controls issues in pvrusb2 Fix a few miscellaneous issues in the pvrusb2 driver related to use of the new mpeg controls. This also should fix problems involving update of the saa7115 / cx25840 configuration as control changes are made. Signed-off-by: Mike Isely Signed-off-by: Mauro Carvalho Chehab commit 1ddf5bc5472f4a45b00bee33fc8c96d4616f8561 Author: Mauro Carvalho Chehab Date: Tue Aug 8 09:10:06 2006 -0300 V4L/DVB (4371): Included missing linux/version.h Signed-off-by: Mauro Carvalho Chehab commit 3ca57169ce979be1919b013230940bb5c7b3ba5d Author: Mauro Carvalho Chehab Date: Tue Aug 8 09:10:06 2006 -0300 V4L/DVB (4370): Fix some typos on ioctl handling function Signed-off-by: Mauro Carvalho Chehab commit 22694c0c38ba023c6535f6b5b7925f9fb7a868fd Author: Trent Piepho Date: Tue Aug 8 09:10:05 2006 -0300 V4L/DVB (4366): Remove of couple of useless lines A buffer was set just before an if block, and then again in both branches of the if. Obvious coding error. Signed-off-by: Trent Piepho Signed-off-by: Mauro Carvalho Chehab commit e84fef6b4a9d36fea53354633c590a7800d9fd83 Author: Mauro Carvalho Chehab Date: Tue Aug 8 09:10:05 2006 -0300 V4L/DVB (4364): V4L2 conversion: radio-maxiradio Driver conversion to V4L2 API. Require some testing, since this obsolete hardware is not common those days. Signed-off-by: Mauro Carvalho Chehab commit 982eddb911b772295d5efc11f7c2b34c7fd6e60e Author: Mauro Carvalho Chehab Date: Tue Aug 8 09:10:05 2006 -0300 V4L/DVB (4363): V4L2 conversion: radio-trust Driver conversion to V4L2 API. Require some testing, since this obsolete hardware is not common those days. Signed-off-by: Mauro Carvalho Chehab commit 2acadefa311b480864d686fb3f7e5f79737d0187 Author: David Bussenschutt Date: Tue Aug 8 09:10:05 2006 -0300 V4L/DVB (4362): Cx88: Shenzhen Tungsten Ages Tech TE-DTV-250 / Swann PCI TV Tuner card support Add support for Shenzhen Tungsten Ages Tech TE-DTV-250 OEM for Swann PCI TV Tuner Card Signed-off-by: David Bussenschutt Signed-off-by: Michael Krufky Signed-off-by: Mauro Carvalho Chehab commit d1009bd733a9324baff74611e0635e17fce4dfa2 Author: Peter Naulls Date: Tue Aug 8 09:10:05 2006 -0300 V4L/DVB (4361): Cx88: add support for Norwood PCI TV Tuner (non-pro) This patch adds support for Norwood PCI TV Tuner (non-pro) Signed-off-by: Peter Naulls Signed-off-by: Michael Krufky Signed-off-by: Mauro Carvalho Chehab commit 5dbaa2cb757545f8238319d55aa75cc8fabc8212 Author: Michael Krufky Date: Tue Aug 8 09:10:04 2006 -0300 V4L/DVB (4360): Cx88: add autodetection support for AverMedia M150-D This patch adds autodetection support for the AverMedia M150-D blackbird MPEG encoder / analog video capture card. This board is known to work with the ASUS PVR 416 configuration. Signed-off-by: Michael Krufky Signed-off-by: Mauro Carvalho Chehab commit ad10c930e8857585cc316e96c15f02b42020bac6 Author: Eric Thomas Date: Tue Aug 8 09:10:04 2006 -0300 V4L/DVB (4359): Cx88: add initial support for Hauppauge HVR3000 trimode card add initial support for Hauppauge WinTV-HVR3000 TriMode Analog/DVB-S/DVB-T only analog is working for now Signed-off-by: Eric Thomas Signed-off-by: Michael Krufky Signed-off-by: Mauro Carvalho Chehab commit 2ab652993623954c7bfdadeba311d15a3e1494c0 Author: Mauro Carvalho Chehab Date: Tue Aug 8 09:10:04 2006 -0300 V4L/DVB (4358): V4L2 conversion: radio-zoltrix Driver conversion to V4L2 API. Require some testing, since this obsolete hardware is not common those days. Signed-off-by: Mauro Carvalho Chehab commit 30c48305ba3e785cef33ff90efcbf5d9bdc3cffe Author: Mauro Carvalho Chehab Date: Tue Aug 8 09:10:04 2006 -0300 V4L/DVB (4357): V4L2 conversion: radio-typhoon Driver conversion to V4L2 API. Require some testing, since this obsolete hardware is not common those days. Signed-off-by: Mauro Carvalho Chehab commit 55ac7b690f086112ab8ac35764189269cdfae768 Author: Mauro Carvalho Chehab Date: Tue Aug 8 09:10:03 2006 -0300 V4L/DVB (4356): V4L2 conversion: radio-terratec Driver conversion to V4L2 API. Require some testing, since this obsolete hardware is not common those days. Signed-off-by: Mauro Carvalho Chehab commit acda0e71857c8ec4e5348d08b53a52d35b92e6aa Author: Mauro Carvalho Chehab Date: Tue Aug 8 09:10:02 2006 -0300 V4L/DVB (4355): V4L2 conversion: radio-sf16fmr2 Driver conversion to V4L2 API. Require some testing, since this obsolete hardware is not common those days. Signed-off-by: Mauro Carvalho Chehab commit fa38ad6592558660086e8ed4b12e5fdf90e78f90 Author: Mauro Carvalho Chehab Date: Tue Aug 8 09:10:02 2006 -0300 V4L/DVB (4354): A small fix at fmi->flags logic Signed-off-by: Mauro Carvalho Chehab commit a2ef73af4cd6cb46be13b11f9ce64d6b44f0350b Author: Mauro Carvalho Chehab Date: Tue Aug 8 09:10:02 2006 -0300 V4L/DVB (4353): V4L2 conversion: radio-sf16fmi Driver conversion to V4L2 API. Require some testing, since this obsolete hardware is not common those days. Signed-off-by: Mauro Carvalho Chehab commit f8c559f8c066a045fb3f70bbb35f9e7c2064b8ae Author: Mauro Carvalho Chehab Date: Tue Aug 8 09:10:02 2006 -0300 V4L/DVB (4352): V4L2 conversion: radio-rtrack2 Driver conversion to V4L2 API. Require some testing, since this obsolete hardware is not common those days. Signed-off-by: Mauro Carvalho Chehab commit b6055d7b1841e14ecc8c72a11490b42c85bf7bec Author: Mauro Carvalho Chehab Date: Tue Aug 8 09:10:02 2006 -0300 V4L/DVB (4351): V4L2 conversion: radio-maestro Driver conversion to V4L2 API. Require some testing, since I don't have such hardware Signed-off-by: Mauro Carvalho Chehab commit 52afbc2f4f1ab78c038bc0d56273ca68021bd3d5 Author: Mauro Carvalho Chehab Date: Tue Aug 8 09:10:01 2006 -0300 V4L/DVB (4350): V4L2 conversion: radio_gemtek-pci Driver conversion to V4L2 API. Require some testing, since this obsolete hardware is not common those days. Signed-off-by: Mauro Carvalho Chehab commit d1c4ecdeec612a587e9b564839fc578f41d3049d Author: Mauro Carvalho Chehab Date: Tue Aug 8 09:10:01 2006 -0300 V4L/DVB (4349): V4L2 conversion: radio_gemtek Driver conversion to V4L2 API. Require some testing, since this obsolete hardware is not common those days. Signed-off-by: Mauro Carvalho Chehab commit 38ee04f04340ffd6af868499862341d11ed2b331 Author: Mauro Carvalho Chehab Date: Tue Aug 8 09:10:01 2006 -0300 V4L/DVB (4348): Fix: compile for radio aimslab and aztech with V4L2 only All radio devices use an obsolete mode of opening/release driver. Since this is not V4L1 core, better to keep the method available for more time than to rewrite open/release without a radio device to test, since the newer method is much more complex than the previous one (although providing support for multiple opens and multiple devices). Signed-off-by: Mauro Carvalho Chehab commit a4366af40d7d2021499b84b8311336c944a9a71c Author: Mauro Carvalho Chehab Date: Tue Aug 8 09:10:01 2006 -0300 V4L/DVB (4347): V4L2 conversion: radio_aztech Driver conversion to V4L2 API. Require some testing, since this obsolete hardware is not common those days. Signed-off-by: Mauro Carvalho Chehab commit 46ff2c7250eece24974ddb2198421c83a69a6289 Author: Mauro Carvalho Chehab Date: Tue Aug 8 09:10:01 2006 -0300 V4L/DVB (4346): V4L2 conversion: radio_aimslab Driver conversion to V4L2 API. Require some testing, since this obsolete hardware is not common those days. Signed-off-by: Mauro Carvalho Chehab commit b59b36db9e8f441868c9907d6ea8fe0cdcb77f39 Author: Mauro Carvalho Chehab Date: Tue Aug 8 09:10:00 2006 -0300 V4L/DVB (4339): Removed the remaining config.h stuff Since kernel include autoconf.h via command line, those config.h inclusion can be removed. Signed-off-by: Mauro Carvalho Chehab commit 2c591947b044513bcc42dd57ea61f41b5b462d93 Author: Hartmut Hackmann Date: Mon Aug 7 14:03:32 2006 -0300 V4L/DVB (4309): Added PCI ID of the Genius VideoWonder Dual Cardbus It is just another Lifeview clone Signed-off-by: Hartmut Hackmann Signed-off-by: Mauro Carvalho Chehab commit 1e9bfb979bab6051c125f56230bfeeefe603f99e Author: Hartmut Hackmann Date: Mon Aug 7 14:03:32 2006 -0300 V4L/DVB (4308): Added PCI ID for AverMedia DVB-T 777 with SAA7133 The change is just an additional PCI ID Signed-off-by: Hartmut Hackmann Signed-off-by: Mauro Carvalho Chehab commit 5eda227fc622799a543dd7606f1037e89cd9e21b Author: Hartmut Hackmann Date: Mon Aug 7 14:03:32 2006 -0300 V4L/DVB (4307): Added support for the md8800 quadro board Analog TV, CVBS, S-video and DVB-T are working, DVB-S not yet Signed-off-by: Hartmut Hackmann Signed-off-by: Mauro Carvalho Chehab commit 19e22576d29cadaba88f08fb958f4fcf0de9b16c Author: Alexander Tuschen Date: Sun Jul 16 15:03:17 2006 -0300 V4L/DVB (4442): [PATCH] Freecom DVB-T stick with ID 14aa:0225 Ok, here is the working patch for the Freecom DVB-T stick with USB-ID 14aa:0225. It uses the Firmware-file, wich Erich Focht created and wich can be obtainded from http://home.arcor.de/efocht/dvb-usb-wt220u-fc03.fw Also the original patch is from Erich. It adds the proper USB-IDs and I only had to change the endpoint of the MPEG-2 data-transfer to 0x86. Signed-off-by: Alexander Tuschen Signed-off-by: Patrick Boettcher Signed-off-by: Mauro Carvalho Chehab commit 98638ee2edf86b80cf89486c4aabcd9ce471a54a Author: Kyungmin Park Date: Tue Sep 26 08:52:14 2006 +0000 [MTD ONENAND] Remove unused MTD_ONENAND_SYNC_READ configuration Now the bootloader configures the OneNAND sync. burst mode. So we don't access Sync. burst mode related registers in kernel. Signed-off-by: Kyungmin Park Signed-off-by: David Woodhouse commit 3f75f42d7733e73aca5c78326489efd4189e0111 Author: Andi Kleen Date: Tue Sep 26 10:52:42 2006 +0200 [PATCH] Don't set calgary iommu as default y Most systems don't need it. Signed-off-by: Andi Kleen commit dcf10307c3fff2bca4b104ad8fe4e3aa8dcb2ad1 Author: Dave Jones Date: Tue Sep 26 10:52:42 2006 +0200 [PATCH] i386/x86-64: New Intel feature flags Add supplemental SSE3 instructions flag, and Direct Cache Access flag. As described in "Intel Processor idenfication and the CPUID instruction AP485 Sept 2006" AK: also added for x86-64 Signed-off-by: Dave Jones Signed-off-by: Andi Kleen commit 3222b36f46c22f46697a0a53fa8804153a32669f Author: Dmitriy Zavin Date: Tue Sep 26 10:52:42 2006 +0200 [PATCH] x86: Add a cumulative thermal throttle event counter. The counter is exported to /sys that keeps track of the number of thermal events, such that the user knows how bad the thermal problem might be (since the logging to syslog and mcelog is rate limited). AK: Fixed cpu hotplug locking Signed-off-by: Dmitriy Zavin Signed-off-by: Andi Kleen commit 66aea9913cf435fe92ebb7bf869b4f15901ab993 Author: Dmitriy Zavin Date: Tue Sep 26 10:52:42 2006 +0200 [PATCH] i386: Make the jiffies compares use the 64bit safe macros. Signed-off-by: Dmitriy Zavin Signed-off-by: Andi Kleen commit 15d5f8398311f565682959daaca30e3ca7aea600 Author: Dmitriy Zavin Date: Tue Sep 26 10:52:42 2006 +0200 [PATCH] x86: Refactor thermal throttle processing Refactor the event processing (syslog messaging and rate limiting) into separate file therm_throt.c. This allows consistent reporting of CPU thermal throttle events. After ACK'ing the interrupt, if the event is current, the user (p4.c/mce_intel.c) calls therm_throt_process to log (and rate limit) the event. If that function returns 1, the user has the option to log things further (such as to mce_log in x86_64). AK: minor cleanup Signed-off-by: Dmitriy Zavin Signed-off-by: Andi Kleen commit 3b171672831b9633c2ed8fa94805255cd4d5af19 Author: Dmitriy Zavin Date: Tue Sep 26 10:52:42 2006 +0200 [PATCH] Add 64bit jiffies compares (for use with get_jiffies_64) The current time_before/time_after macros will fail typechecks when passed u64 values (as returned by get_jiffies_64()). On 64bit systems, this will just result in a warning about mismatching types without explicit casts, but since unsigned long and u64 (unsigned long long) are of same size, it will still work. On 32bit systems, a long is 32bits, so the value from get_jiffies_64() will be truncated by the cast and thus lose all the precision gained by 64bit jiffies. Signed-off-by: Dmitriy Zavin Signed-off-by: Andi Kleen commit b89ebd0b0a65d5371aa9ad98e873c4616056ca68 Author: Andi Kleen Date: Tue Sep 26 10:52:42 2006 +0200 [PATCH] Fix unwinder warning in traps.c Fix linux/arch/x86_64/kernel/traps.c: In function 'dump_trace': linux/arch/x86_64/kernel/traps.c:275: warning: cast to pointer from integer of different size with allnoconfig Cc: jbeulich@novell.com Signed-off-by: Andi Kleen commit 0637a70a5db98182d9ad3d6ae1ee30acf20afde9 Author: Andi Kleen Date: Tue Sep 26 10:52:41 2006 +0200 [PATCH] x86: Allow disabling early pci scans with pci=noearly or disallowing conf1 Some buggy systems can machine check when config space accesses happen for some non existent devices. i386/x86-64 do some early device scans that might trigger this. Allow pci=noearly to disable this. Also when type 1 is disabling also don't do any early accesses which are always type1. This moves the pci= configuration parsing to be a early parameter. I don't think this can break anything because it only changes a single global that is only used by PCI. Cc: gregkh@suse.de Cc: Trammell Hudson Signed-off-by: Andi Kleen commit 8f60774a116ced9b73ae3913d511687889efe725 Author: Andi Kleen Date: Tue Sep 26 10:52:41 2006 +0200 [PATCH] x86: Move direct PCI scanning functions out of line Saves about 200 bytes of code space. Signed-off-by: Andi Kleen commit f157cbb1eb9ce3f33a401ec6d20eb3eb852351a3 Author: Andi Kleen Date: Tue Sep 26 10:52:41 2006 +0200 [PATCH] i386/x86-64: Make all early PCI scans dependent on CONFIG_PCI This is useful on systems with broken PCI bus. Affects various scans in x86-64 and i386's early ACPI quirk scan. Cc: gregkh@suse.de Cc: len.brown@intel.com Cc: Trammell Hudson Signed-off-by: Andi Kleen commit 658fdbef66e5e9be79b457edc2cbbb3add840aa9 Author: Andi Kleen Date: Tue Sep 26 10:52:41 2006 +0200 [PATCH] Don't leak NT bit into next task SYSENTER can cause a NT to be set which might cause crashes on the IRET in the next task. Following similar i386 patch from Linus. Signed-off-by: Andi Kleen commit adf1423698f00d00b267f7dca8231340ce7d65ef Author: Jan Beulich Date: Tue Sep 26 10:52:41 2006 +0200 [PATCH] i386/x86-64: Work around gcc bug with noreturn functions in unwinder Current gcc generates calls not jumps to noreturn functions. When that happens the return address can point to the next function, which confuses the unwinder. This patch works around it by marking asynchronous exception frames in contrast normal call frames in the unwind information. Then teach the unwinder to decode this. For normal call frames the unwinder now subtracts one from the address which avoids this problem. The standard libgcc unwinder uses the same trick. It doesn't include adjustment of the printed address (i.e. for the original example, it'd still be kernel_math_error+0 that gets displayed, but the unwinder wouldn't get confused anymore. This only works with binutils 2.6.17+ and some versions of H.J.Lu's 2.6.16 unfortunately because earlier binutils don't support .cfi_signal_frame [AK: added automatic detection of the new binutils and wrote description] Signed-off-by: Jan Beulich Signed-off-by: Andi Kleen commit ab2e0b46cb9a197fab7d98e147cac7cd41a14047 Author: Andi Kleen Date: Tue Sep 26 10:52:41 2006 +0200 [PATCH] Fix some broken white space in ia32_signal.c No functional changes Signed-off-by: Andi Kleen commit 536e3ee4fed13d2d4bbf1b775174aba0cadf6aba Author: Andi Kleen Date: Tue Sep 26 10:52:41 2006 +0200 [PATCH] Initialize argument registers for 32bit signal handlers. In case the user space was compiled with -mregparm=3 Following i386. Pointed out by Albert Cahalan Signed-off-by: Andi Kleen commit dd54a11004b2c9a1f136225f880e021a43b0eadc Author: Andi Kleen Date: Tue Sep 26 10:52:41 2006 +0200 [PATCH] Remove all traces of signal number conversion This was old code that was needed for iBCS and x86-64 never supported that. Pointed out by Albert Cahalan Signed-off-by: Andi Kleen commit 2049336f60d297c85ac977245b9326ec00396114 Author: Andi Kleen Date: Tue Sep 26 10:52:41 2006 +0200 [PATCH] Don't synchronize time reading on single core AMD systems We do some additional CPU synchronization in gettimeofday et.al. to make sure the time stamps are always monotonic over multiple CPUs. But on single core systems that is not needed. So don't do it. Signed-off-by: Andi Kleen commit 9ddab42d1e65dfbdb14588346d47fb142090ab40 Author: Andi Kleen Date: Tue Sep 26 10:52:41 2006 +0200 [PATCH] Remove outdated comment in x86-64 mmconfig code Cc: gregkh@suse.de Signed-off-by: Andi Kleen commit 27fbe5b28a2ffef171c6005f304ea4f80fcdcc01 Author: Andi Kleen Date: Tue Sep 26 10:52:41 2006 +0200 [PATCH] Use string instructions for Core2 copy/clear It is faster than using a unrolled loop for the use cases the kernel cares about (cached, sizes typically < 4K) Signed-off-by: Andi Kleen commit 35d534a3ff4905c0a7bddbad0fc9df55967742c7 Author: Matthew Garrett Date: Tue Sep 26 10:52:41 2006 +0200 [PATCH] x86: - restore i8259A eoi status on resume Got it. i8259A_resume calls init_8259A(0) unconditionally, even if auto_eoi has been set. Keep track of the current status and restore that on resume. This fixes it for AMD64 and i386. Signed-off-by: Matthew Garrett Signed-off-by: Andi Kleen commit f354b3a92af9b132b188b9c8ebbfb74de699926d Author: Dave Jones Date: Tue Sep 26 10:52:41 2006 +0200 [PATCH] i386: Split multi-line printk in oops output. Sometimes, bug reports come in where we've had an oops, and the only record we have is what the reporter saw on screen shortly before the system locked up completely. Unfortunatly, syslog only prints lines beginning with KERN_EMERG to the console, so some lines get lost. An example of this can be seen at https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=203723 Some of this information isn't vital to diagnosis, but some parts are useful, such as the tainted flag. Signed-off-by: Dave Jones Signed-off-by: Andi Kleen commit 2817716ace8c397685bd702223cc5a8a42c7e997 Author: Jeremy Fitzhardinge Date: Tue Sep 26 10:52:40 2006 +0200 [PATCH] i386: Fix pack_descriptor() Fix pack_descriptor: 1. flags are bits 20-23 in the high word 2. limit's 4 msb are bits 16-19 in the high word These haven't mattered so far, because all users have had small limits and a flags setting of 0. Signed-off-by: Jeremy Fitzhardinge Signed-off-by: Andi Kleen =================================================================== commit de09bddb9d6f96785be470c832b881e6d72d589f Author: Andi Kleen Date: Tue Sep 26 10:52:40 2006 +0200 [PATCH] i386: Add MMCFG resources to i386 too Following earlier x86-64 patch Cc: gregkh@suse.de Signed-off-by: Andi Kleen commit 4c6e052adfe285ede5884e4e8c4d33af33932c13 Author: Aaron Durbin Date: Tue Sep 26 10:52:40 2006 +0200 [PATCH] MMCONFIG and new Intel motherboards On Sat, Sep 09, 2006 at 04:14:29PM +0200, Andi Kleen wrote: > [patch] Looks reasonable, but probably not for 2.6.18 because this stuff > is already too fragile and it is probably too risky to do any big changes now > since not enough testing time is left. Can you please resubmit > it with proper description and signed-off-by line? I can queue it for .19 then > > -Andi Patch inserts PCI memory mapped config region(s) into the resource map. This will allow for the MMCCONFIG regions to be marked as busy in the iomem address space as well as the regions(s) showing up in /proc/iomem. Signed-off-by: Aaron Durbin Signed-off-by: Andi Kleen commit 56dd669a138c40ea6cdae487f233430d12372767 Author: Aaron Durbin Date: Tue Sep 26 10:52:40 2006 +0200 [PATCH] Insert GART region into resource map Patch inserts the GART region into the iomem resource map. The GART will then be visible within /proc/iomem. It will also allow for other users utilizing the GART to subreserve the region (agp or IOMMU). Signed-off-by: Aaron Durbin Signed-off-by: Andi Kleen commit 9abd79280bbb9f56049f0168f412c3538cadb6eb Author: Andi Kleen Date: Tue Sep 26 10:52:40 2006 +0200 [PATCH] i386/x86-64: Only do MCFG e820 check when type 1 works Needs earlier patch to split type 1 probing from use. This patch should fix the x86 macs where type 1 PCI config space access doesn't work, but MCFG does. They also don't have a usable e820 table so the e820 sanity check failed. Instead assume now that if type 1 doesn't work then MCFG must work and don't do the e820 check. Signed-off-by: Andi Kleen commit 5e544d618f0fb21011f36f28d5e3952b9dc109d2 Author: Andi Kleen Date: Tue Sep 26 10:52:40 2006 +0200 [PATCH] i386/x86-64: PCI: split probing and initialization of type 1 config space access First probe if type1/2 accesses work, but then only initialize them at the end. This is useful for a later patch that needs this information inbetween. Signed-off-by: Andi Kleen commit a15da49debaf7f09460a886b0ecd08588410715e Author: Andi Kleen Date: Tue Sep 26 10:52:40 2006 +0200 [PATCH] Fix idle notifiers Previously exit_idle would be called more often than enter_idle Now instead of using complicated tests just keep track of it using the per CPU variable as a flip flop. I moved the idle state into the PDA to make the access more efficient. Original bug report and an initial patch from Stephane Eranian, but redone by AK. Cc: Stephane Eranian Signed-off-by: Andi Kleen commit 1c9c0a6ca35e9325cea811d734d6ab7352be086b Author: Eric W. Biederman Date: Tue Sep 26 10:52:40 2006 +0200 [PATCH] Remove experimental mark of kexec kexec has been marked experimental for a year now and all of the serious problems have been worked through. So it is time (if not past time) to remove the experimental mark. Signed-off-by: Eric W. Biederman Signed-off-by: Andi Kleen commit 371c2f2783eb880df333d0e9ac35c78143e79d0a Author: Eric W. Biederman Date: Tue Sep 26 10:52:40 2006 +0200 [PATCH] i386: Remove experimental mark of kexec kexec has been marked experimental for a year now and all of the serious problems have been worked through. So it is time (if not past time) to remove the experimental mark. Signed-off-by: Eric W. Biederman Signed-off-by: Andi Kleen commit b38337a624c4d3c2c3d9cdf27d952ca94181c6a8 Author: Andi Kleen Date: Tue Sep 26 10:52:40 2006 +0200 [PATCH] Mark per cpu data initialization __initdata again Before 2.6.16 this was changed to work around code that accessed CPUs not in the possible map. But that code should be all fixed now, so mark it __initdata again. Signed-off-by: Andi Kleen commit 73bb5117a448bdf0b56232ca28451fe4c534cb3a Author: Andi Kleen Date: Tue Sep 26 10:52:40 2006 +0200 [PATCH] Remove unused asm-x86_64/mmx.h Signed-off-by: Andi Kleen commit fd167e42b237e0688005b3dec380eb5a6e5f3585 Author: Andi Kleen Date: Tue Sep 26 10:52:40 2006 +0200 [PATCH] Define __bad_pda_field as noreturn This quietens so warnings about uninitialized use of the return value of the pda read operations. Signed-off-by: Andi Kleen commit c1a9d41f4f103bfef2ed0bea1e95b3190e39e448 Author: Andi Kleen Date: Tue Sep 26 10:52:40 2006 +0200 [PATCH] Reindent macros in pda.h Reindent the macros in x86-64 pda.h, making them much more readable. Follows Jeremy's i386 version of this. No functional changes Signed-off-by: Andi Kleen commit 383d079bfdfcfccd6a720405a510fe325b3e6576 Author: Andi Kleen Date: Tue Sep 26 10:52:40 2006 +0200 [PATCH] Fix some stylistic issues in uaccess.h - Replace some broken white space. - Replace __ keywords with standard names No functional changes. Signed-off-by: Andi Kleen commit 26c13f2b5bbb03f798f8907db20296347e6c7ca6 Author: Andi Kleen Date: Tue Sep 26 10:52:40 2006 +0200 [PATCH] Check return values of __copy_to_user in uname emulation Quietens some new warnings Signed-off-by: Andi Kleen commit 758333458aa719bfc26ec16eafd4ad3a9e96014d Author: Andi Kleen Date: Tue Sep 26 10:52:39 2006 +0200 [PATCH] Check return value of copy_to_user in compat_sys_pselect7 Fix linux/fs/compat.c: In function compat_sys_pselect7 linux/fs/compat.c:1869: warning: ignoring return value of copy_to_user, declared with attribute warn_unused_result To make it easier to handle I changed to semantics to not try to write out a timespec if an error occurred. I hope that's ok. Cc: dwmw2@infradead.org Signed-off-by: Andi Kleen commit 95912008ba1fb9d0677c1ce5930aeb0e85ba5710 Author: Andi Kleen Date: Tue Sep 26 10:52:39 2006 +0200 [PATCH] Add __must_check to copy_*_user Following i386. And also fix the two occurrences that caused warnings in arch/x86_64/* Signed-off-by: Andi Kleen commit 3022d734a54cbd2b65eea9a024564821101b4a9a Author: Andi Kleen Date: Tue Sep 26 10:52:39 2006 +0200 [PATCH] Fix zeroing on exception in copy_*_user - Don't zero for __copy_from_user_inatomic following i386. This will prevent spurious zeros for parallel file system writers when one does a exception - The string instruction version didn't zero the output on exception. Oops. Also I cleaned up the code a bit while I was at it and added a minor optimization to the string instruction path. Signed-off-by: Andi Kleen commit f0f4c3432e5e1087b3a8c0e6bd4113d3c37497ff Author: adurbin@google.com Date: Tue Sep 26 10:52:39 2006 +0200 [PATCH] i386: add HPET(s) into resource map Add HPET(s) into resource map. This will allow for the HPET(s) to be visibile within /proc/iomem. Signed-off-by: Aaron Durbin Signed-off-by: Andi Kleen commit 54dbc0c9ebefb38840c6b07fa6eabaeb96c921f5 Author: adurbin@google.com Date: Tue Sep 26 10:52:39 2006 +0200 [PATCH] insert IOAPIC(s) and Local APIC into resource map This patch places the IOAPIC(s) and the Local APIC specified by ACPI tables into the resource map. The APICs will then be visible within /proc/iomem Signed-off-by: Aaron Durbin Signed-off-by: Andi Kleen commit ec5c09269ba9cd3b9cf879390db6d5c7dcdcaf1e Author: Chuck Ebbert <76306.1226@compuserve.com> Date: Tue Sep 26 10:52:39 2006 +0200 [PATCH] i386: Do better early exception handlers Add early i386 fault handlers with debug information for common faults. Handles: divide error invalid opcode protection fault page fault Also adds code to detect early recursive/multiple faults and halt the system when they happen (taken from x86_64.) Signed-off-by: Chuck Ebbert <76306.1226@compuserve.com> Signed-off-by: Andi Kleen Cc: Andi Kleen Cc: Ingo Molnar Signed-off-by: Andrew Morton commit 78be3706b21a232310590fe00258b224177ac05f Author: Rusty Russell Date: Tue Sep 26 10:52:39 2006 +0200 [PATCH] i386: Allow a kernel not to be in ring 0 We allow for the fact that the guest kernel may not run in ring 0. This requires some abstraction in a few places when setting %cs or checking privilege level (user vs kernel). This is Chris' [RFC PATCH 15/33] move segment checks to subarch, except rather than using #define USER_MODE_MASK which depends on a config option, we use Zach's more flexible approach of assuming ring 3 == userspace. I also used "get_kernel_rpl()" over "get_kernel_cs()" because I think it reads better in the code... 1) Remove the hardcoded 3 and introduce #define SEGMENT_RPL_MASK 3 2) Add a get_kernel_rpl() macro, and don't assume it's zero. And: Clean up of patch for letting kernel run other than ring 0: a. Add some comments about the SEGMENT_IS_*_CODE() macros. b. Add a USER_RPL macro. (Code was comparing a value to a mask in some places and to the magic number 3 in other places.) c. Add macros for table indicator field and use them. d. Change the entry.S tests for LDT stack segment to use the macros Signed-off-by: Rusty Russell Signed-off-by: Zachary Amsden Signed-off-by: Jeremy Fitzhardinge Signed-off-by: Andrew Morton Signed-off-by: Andi Kleen commit 0da5db313317e3195482d3e660a1074857374a89 Author: Rusty Russell Date: Tue Sep 26 10:52:39 2006 +0200 [PATCH] i386: Abstract sensitive instructions Abstract sensitive instructions in assembler code, replacing them with macros (which currently are #defined to the native versions). We use long names: assembler is case-insensitive, so if something goes wrong and macros do not expand, it would assemble anyway. Resulting object files are exactly the same as before. Signed-off-by: Rusty Russell Signed-off-by: Jeremy Fitzhardinge Signed-off-by: Andrew Morton Signed-off-by: Andi Kleen commit 7b0bda74f7e77f362eaeee837e7911238acf4c76 Author: Andi Kleen Date: Tue Sep 26 10:52:39 2006 +0200 [PATCH] Fix a PDA warning uncovered by the new type checking Fix linux/arch/x86_64/kernel/process.c: In function __switch_to: linux/arch/x86_64/kernel/process.c:626: warning: assignment makes integer from pointer without a cast Signed-off-by: Andi Kleen commit 85691f135db78f3548107a0abe383dfab3bc38fa Author: Jeremy Fitzhardinge Date: Tue Sep 26 10:52:39 2006 +0200 [PATCH] Type checking for write_pda() I just added type checking for assignments the PDA in the i386 PDA code. Here's the x86-64 equivalent. (Obviously this doesn't contain the latest x86-64 PDA change.) Signed-off-by: Jeremy Fitzhardinge Signed-off-by: Andi Kleen commit baf5695dd1a49bb48a3daf08726d7f243f42e97e Author: Andi Kleen Date: Tue Sep 26 10:52:39 2006 +0200 [PATCH] Use %c instead of %P modifier in pda access Apparently that is the more official way to get numbers without $ in inline assembly Signed-off-by: Andi Kleen commit 96e540492ab54423f3693958329e095878f1f12b Author: Andi Kleen Date: Tue Sep 26 10:52:39 2006 +0200 [PATCH] Fix a irqcount comment in entry.S Signed-off-by: Andi Kleen commit 4f7fd4d7a79193ceda4ce77f75e22917d33fa154 Author: Arjan van de Ven Date: Tue Sep 26 10:52:39 2006 +0200 [PATCH] Add the -fstack-protector option to the CFLAGS Add a feature check that checks that the gcc compiler has stack-protector support and has the bugfix for PR28281 to make this work in kernel mode. The easiest solution I could find was to have a shell script in scripts/ to do the detection; if needed we can make this fancier in the future without making the makefile too complex. Signed-off-by: Arjan van de Ven Signed-off-by: Andi Kleen CC: Andi Kleen CC: Sam Ravnborg commit 3162f751d04086a9d006342de63ac8f44fe0f72a Author: Arjan van de Ven Date: Tue Sep 26 10:52:39 2006 +0200 [PATCH] Add the __stack_chk_fail() function GCC emits a call to a __stack_chk_fail() function when the stack canary is not matching the expected value. Since this is a bad security issue; lets panic the kernel rather than limping along; the kernel really can't be trusted anymore when this happens. Signed-off-by: Arjan van de Ven Signed-off-by: Ingo Molnar Signed-off-by: Andi Kleen CC: Andi Kleen commit 0a4254058037eb172758961d0a5b94f4320a1425 Author: Arjan van de Ven Date: Tue Sep 26 10:52:38 2006 +0200 [PATCH] Add the canary field to the PDA area and the task struct This patch adds the per thread cookie field to the task struct and the PDA. Also it makes sure that the PDA value gets the new cookie value at context switch, and that a new task gets a new cookie at task creation time. Signed-off-by: Arjan van Ven Signed-off-by: Ingo Molnar Signed-off-by: Andi Kleen CC: Andi Kleen commit b62a5c740df1e3d49a97349fce0c6a23f633d7fe Author: Arjan van de Ven Date: Tue Sep 26 10:52:38 2006 +0200 [PATCH] Add the Kconfig option for the stackprotector feature This patch adds the config options for -fstack-protector. Signed-off-by: Arjan van de Ven Signed-off-by: Ingo Molnar Signed-off-by: Andi Kleen CC: Andi Kleen commit 29a9af60e2120f874d0c600bf9e27617254a0488 Author: Arjan van de Ven Date: Tue Sep 26 10:52:38 2006 +0200 [PATCH] Add comments to the PDA structure to annotate offsets Change the comments in the pda structure to make the first fields to have their offset documented and to have the comments aligned. The stack protector series needs a field at offset 40 (gcc ABI); annotate upto 40 for that reason. Signed-off-by: Arjan van de Ven Signed-off-by: Ingo Molnar Signed-off-by: Andi Kleen CC: Andi Kleen commit 027a51cef330433ba5924fc92fb25ef48bcfc1a3 Author: Andi Kleen Date: Tue Sep 26 10:52:38 2006 +0200 [PATCH] Document my tree in Documentation/HOWTO Signed-off-by: Andi Kleen commit e8c7391de4cd91b2cbb0c791f69ba1e066595848 Author: Andi Kleen Date: Tue Sep 26 10:52:38 2006 +0200 [PATCH] Don't use kernel_text_address in oops context Because it can take spinlocks. Suggested by Mathieu Desnoyers Cc: Mathieu Desnoyers Signed-off-by: Andi Kleen commit 3566561bfadffcb5dbc85d576be80c0dbf2cccc9 Author: Magnus Damm Date: Tue Sep 26 10:52:38 2006 +0200 [PATCH] i386: Avoid overwriting the current pgd (V4, i386) kexec: Avoid overwriting the current pgd (V4, i386) This patch upgrades the i386-specific kexec code to avoid overwriting the current pgd. Overwriting the current pgd is bad when CONFIG_CRASH_DUMP is used to start a secondary kernel that dumps the memory of the previous kernel. The code introduces a new set of page tables. These tables are used to provide an executable identity mapping without overwriting the current pgd. Signed-off-by: Magnus Damm Signed-off-by: Andi Kleen commit 4bfaaef01a1badb9e8ffb0c0a37cd2379008d21f Author: Magnus Damm Date: Tue Sep 26 10:52:38 2006 +0200 [PATCH] Avoid overwriting the current pgd (V4, x86_64) kexec: Avoid overwriting the current pgd (V4, x86_64) This patch upgrades the x86_64-specific kexec code to avoid overwriting the current pgd. Overwriting the current pgd is bad when CONFIG_CRASH_DUMP is used to start a secondary kernel that dumps the memory of the previous kernel. The code introduces a new set of page tables. These tables are used to provide an executable identity mapping without overwriting the current pgd. Signed-off-by: Magnus Damm Signed-off-by: Andi Kleen commit f574164491d00d28b727d713685fb5edc9138200 Author: Keith Owens Date: Tue Sep 26 10:52:38 2006 +0200 [PATCH] Remove most of the special cases for the debug IST stack Remove most of the special cases for the debug IST stack. This is a follow on clean up patch, it requires the bug fix patch that adds orig_ist. Signed-off-by: Keith Owens Signed-off-by: Andi Kleen commit 575400d1b483fbe9e03c68758059bfaf4e4768d1 Author: H. Peter Anvin Date: Tue Sep 26 10:52:38 2006 +0200 [PATCH] i386: Fix the EDD code misparsing the command line The EDD code would scan the command line as a fixed array, without taking account of either whitespace, null-termination, the old command-line protocol, late overrides early, or the fact that the command line may not be reachable from INITSEG. This should fix those problems, and enable us to use a longer command line. Signed-off-by: H. Peter Anvin Signed-off-by: Andi Kleen commit 53ee11ae0d73f28029a5f0d991bc4dcd7c817e7a Author: Andi Kleen Date: Tue Sep 26 10:52:38 2006 +0200 [PATCH] Optimize PDA accesses slightly Based on a idea by Jeremy Fitzhardinge: Replace the volatiles and memory clobbers in the PDA access with telling gcc about access to a proxy PDA structure that doesn't actually exist. But the dummy accesses give a defined ordering for read/write accesses. Also add some memory barriers to the early GS initialization to make sure no PDA access is moved before it. Advantage is some .text savings (probably most from better code for accessing "current"): text data bss dec hex filename 4845647 1223688 615864 6685199 66020f vmlinux 4837780 1223688 615864 6677332 65e354 vmlinux-pda 1.2% smaller code Cc: Jeremy Fitzhardinge Signed-off-by: Andi Kleen commit 80d2679cbc8e170011c9649fb8fb684ffd7e5c8f Author: Andi Kleen Date: Tue Sep 26 10:52:38 2006 +0200 [PATCH] x86: Remove incorrect comment about ACPI e820 entries They cannot be actually freed because the FACS table has a shared-with-the-BIOS lock. Signed-off-by: Andi Kleen commit f2a9e1dec27189a09ff642f2648e49ad9e76607b Author: Ian Campbell Date: Tue Sep 26 10:52:38 2006 +0200 [PATCH] Put .note.* sections into a PT_NOTE segment This patch updates x86_64 linker script to pack any .note.* sections into a PT_NOTE segment in the output file. To do this, we tell ld that we need a PT_NOTE segment. This requires us to start explicitly mapping sections to segments, so we also need to explicitly create PT_LOAD segments for text and data, and map the sections to them appropriately. Fortunately, each section will default to its previous section's segment, so it doesn't take many changes to vmlinux.lds.S. The corresponding change is already made for i386 in -mm and I'd like this patch to join it. The section to segment mappings do change as do the segment flags so some time in -mm would be good for that reason as well, just in case. In particular .data and .bss move from the text segment to the data segment and .data.cacheline_aligned .data.read_mostly are put in the data segment instead of a separate one. I think that it would be possible to exactly match the existing section to segment mapping and flags but it would be a more intrusive change and I'm not sure there is a reason for the existing layout other than it is what you get by default if you don't explicitly specify something else. If there is a reason for the existing layout then I will of course make the more intrusive change. If there is no reason we could probably drop the executable or writable flags from some segments but I don't know how much attention is paid to them anyway so it might not be worth the effort. The vsyscall related sections need to go in a different segment to the normal data segment and so I invented a "user" segment to contain them. I believe this should appear to be another data segment as far as the kernel is concerned so the flags are setup accordingly. The notes will be used in the Xen paravirt_ops backend to provide additional information to the domain builder. I am in the process of converting the xen-unstable kernels and tools over to this scheme at the moment to support this in the future. It has been suggested to me that the notes segment should have flags 0 (i.e. not readable) since it is only used by the loader and is not used at runtime. For now I went with a readable segment since that is what the i386 patch uses. AK: dropped NOTES addition right now because the needed infrastructure for that is not merged yet Signed-off-by: Ian Campbell Signed-off-by: Andi Kleen commit 26374c7b7dca1ff90607c83d9b82e917119f0456 Author: Eric W. Biederman Date: Tue Sep 26 10:52:38 2006 +0200 [PATCH] Reload CS when startup_64 is used. In long mode the %cs is largely a relic. However there are a few cases like iret where it matters that we have a valid value. Without this patch it is possible to enter the kernel in startup_64 without setting %cs to a valid value. With this patch we don't care what %cs value we enter the kernel with, so long as the cs shadow register indicates it is a privileged code segment. Thanks to Magnus Damm for finding this problem and posting the first workable patch. I have moved the jump to set %cs down a few instructions so we don't need to take an extra jump. Which keeps the code simpler. Signed-of-by: Eric W. Biederman Signed-off-by: Andi Kleen commit 0136611c62e8650e354b95c76dff6d2ce6030eff Author: Andi Kleen Date: Tue Sep 26 10:52:38 2006 +0200 [PATCH] optimize hweight64 for x86_64 Based on patch from David Rientjes , but changed by AK. Optimizes the 64-bit hamming weight for x86_64 processors assuming they have fast multiplication. Uses five fewer bitops than the generic hweight64. Benchmark on one EMT64 showed ~25% speedup with 2^24 consecutive calls. Define a new ARCH_HAS_FAST_MULTIPLIER that can be set by other architectures that can also multiply fast. Signed-off-by: Andi Kleen commit 8380aabb99719af583447133f19a4d8074b5c337 Author: Andi Kleen Date: Tue Sep 26 10:52:37 2006 +0200 [PATCH] Remove non e820 fallbacks in high level code Drop support for non e820 BIOS calls to get the memory map. The boot assembler code still has some support, but not the C code now. Signed-off-by: Andi Kleen commit b3698c03eb6d4581e879d6bb0f183ed8dda96d37 Author: Paolo 'Blaisorblade' Giarrusso Date: Tue Sep 26 10:52:37 2006 +0200 [PATCH] Fix boot code head.S warning When compiling a 64-bit kernel on an Ubuntu 6.06 32bit system (whose GCC is also a cross-compiler for x86_64) I've seen that head.o is compiled as a 64-bit file (while it should not) and ld complaining about this during linking: [AK: it happens on all systems with new binutils] ld: warning: i386:x86-64 architecture of input file `arch/x86_64/boot/compressed/head.o' is incompatible with i386 output I've verified that removing -m64 from compilation flags to turn "-m64 -traditional -m32" into "-traditional -m32" fixes the issue. Signed-off-by: Paolo 'Blaisorblade' Giarrusso Signed-off-by: Andi Kleen commit 7a0a2dff1cac1df82acfa0395bc9bc1bf0bc16ef Author: Andi Kleen Date: Tue Sep 26 10:52:37 2006 +0200 [PATCH] Add a missing check for irq flags tracing in NMI NMIs are not supposed to track the irq flags, but TRACE_IRQS_IRETQ did it anyways. Add a check. Cc: mingo@elte.hu Signed-off-by: Andi Kleen commit aecc63615e15de861db7436c50dade495639132c Author: Andi Kleen Date: Tue Sep 26 10:52:37 2006 +0200 [PATCH] Fix coding style and output of the mptable parser Give the printks a consistent prefix. Add some missing white space. Cc: len.brown@intel.com Signed-off-by: Andi Kleen commit e4251e130deef9de5226cc36faa70a1c6671d3c5 Author: Andi Kleen Date: Tue Sep 26 10:52:37 2006 +0200 [PATCH] Remove some cruft in apic id checking during processor setup - Remove a define that was used only once - Remove the too large APIC ID check because we always support the full 8bit range of APICs. - Restructure code a bit to be simpler. Cc: len.brown@intel.com Signed-off-by: Andi Kleen commit f2c2cca3acef8b253a36381d9b469ad4fb08563a Author: Andi Kleen Date: Tue Sep 26 10:52:37 2006 +0200 [PATCH] Remove APIC version/cpu capability mpparse checking/printing ACPI went to great trouble to get the APIC version and CPU capabilities of different CPUs before passing them to the mpparser. But all that data was used was to print it out. Actually it even faked some data based on the boot cpu, not on the actual CPU being booted. Remove all this code because it's not needed. Cc: len.brown@intel.com Signed-off-by: Andi Kleen commit 5e6b0bfe5b452957b7be4b6ef181cd41880f8359 Author: Andi Kleen Date: Tue Sep 26 10:52:37 2006 +0200 [PATCH] Use proper accessors to change PSE bits in change_page_attr() Use normal pte accessors in change_page_attr() to access the PSE bits. Signed-off-by: Andi Kleen commit df992848f5aa803fcacd2c5e7d67034bb89e3fa3 Author: Andi Kleen Date: Tue Sep 26 10:52:37 2006 +0200 [PATCH] Fix pte_exec/mkexec and use it in change_page_attr() Fix the pte_exec/mkexec page table accessor functions to really use the NX bit. Previously they only checked the USER bit, but weren't actually used for anything. Then use them in change_page_attr() to manipulate the NX bit properly. Signed-off-by: Andi Kleen commit d3cf7f061521c78ad62e275eb6fbdc8f43fc75a7 Author: Andi Kleen Date: Tue Sep 26 10:52:37 2006 +0200 [PATCH] Remove bogus warning from early_ioremap It is correct for its only caller right now, but not for possible future others. Signed-off-by: Andi Kleen commit 151f8cc1169f9052095b2be36183ab132d75c6c2 Author: Andi Kleen Date: Tue Sep 26 10:52:37 2006 +0200 [PATCH] Remove safe_smp_processor_id() And replace all users with ordinary smp_processor_id. The function was originally added to get some basic oops information out even if the GS register was corrupted. However that didn't work for some anymore because printk is needed to print the oops and it uses smp_processor_id() already. Also GS register corruptions are not particularly common anymore. This also helps the Xen port which would otherwise need to do this in a special way because it can't access the local APIC. Cc: Chris Wright Signed-off-by: Andi Kleen commit 34464a5b8937b79801776dfb6970c1b949fed4be Author: Rafael J. Wysocki Date: Tue Sep 26 10:52:37 2006 +0200 [PATCH] Detect clock skew during suspend Detect the situations in which the time after a resume from disk would be earlier than the time before the suspend and prevent them from happening on x86_64. Signed-off-by: Rafael J. Wysocki Signed-off-by: Andi Kleen commit a549b86dd0f3cbffcd5f9343f4ae7fcd59f7e756 Author: Chuck Ebbert <76306.1226@compuserve.com> Date: Tue Sep 26 10:52:37 2006 +0200 [PATCH] i386: annotate FIX_STACK() and the rest of nmi() In i386's entry.S, FIX_STACK() needs annotation because it replaces the stack pointer. And the rest of nmi() needs annotation in order to compile with these new annotations. Signed-off-by: Chuck Ebbert <76306.1226@compuserve.com> Signed-off-by: Andi Kleen commit 1164c9994fe37d5b7035a5cf9328c98dd38af7b1 Author: Andrew Morton Date: Tue Sep 26 10:52:37 2006 +0200 [PATCH] make numa_emulation() __init Signed-off-by: Andrew Morton Signed-off-by: Andi Kleen commit 1bb4996bcebca1cde49d964b4e012699ce180e61 Author: Andi Kleen Date: Tue Sep 26 10:52:37 2006 +0200 [PATCH] Move compiler check for modules to ia64 only Apparently IA64 needs it, but i386/x86-64 don't anymore since gcc 2.95 support was dropped. Nobody else on linux-arch requested keeping it generically Cc: tony.luck@intel.com Cc: kaos@sgi.com Signed-off-by: Andi Kleen commit dbf9272e863bf4b17ee8e3c66c26682b2061d40d Author: Andi Kleen Date: Tue Sep 26 10:52:36 2006 +0200 [PATCH] Don't force reserve the 640k-1MB range From i386 x86-64 inherited code to force reserve the 640k-1MB area. That was needed on some old systems. But we generally trust the e820 map to be correct on 64bit systems and mark all areas that are not memory correctly. This patch will allow to use the real memory in there. Or rather the only way to find out if it's still needed is to try. So far I'm optimistic. Signed-off-by: Andi Kleen commit f704cb935006580db0495e54d3c82631f6e2a984 Author: Dave Jones Date: Tue Sep 26 10:52:36 2006 +0200 [PATCH] x86: remove config.h includes from asm-i386 & asm-x86_64 This is now automatically included by kbuild. Signed-off-by: Dave Jones Signed-off-by: Andi Kleen commit 06039754d775d3e48e4a292e4f353321205eff53 Author: Fernando Luis Vázquez Cao Date: Tue Sep 26 10:52:36 2006 +0200 [PATCH] i386: Disallow kprobes on NMI handlers A kprobe executes IRET early and that could cause NMI recursion and stack corruption. Note: This problem was originally spotted and solved by Andi Kleen in the x86_64 architecture. This patch is an adaption of his patch for i386. AK: Merged with current code which was a bit different. AK: Removed printk in nmi handler that shouldn't be there in the first time AK: Added missing include. AK: added KPROBES_END Signed-off-by: Fernando Vazquez Signed-off-by: Andi Kleen commit 6f6b1e0477ccb2f25a9b045e38440347d2ce21c8 Author: Fernando Luis Vázquez Cao Date: Tue Sep 26 10:52:36 2006 +0200 [PATCH] i386: Disallow kprobes on NMI handlers A kprobe executes IRET early and that could cause NMI recursion and stack corruption. Note: This problem was originally spotted by Andi Kleen. This patch adds fixes not included in his original patch. [AK: Jan Beulich originally discovered these classes of bugs] Signed-off-by: Fernando Vazquez Signed-off-by: Andi Kleen commit e9dff0ee6694b2edd40b1b448cb786f6a7b02336 Author: Magnus Damm Date: Tue Sep 26 10:52:36 2006 +0200 [PATCH] i386: mark cpu cache functions as __cpuinit Mark i386-specific cpu cache functions as __cpuinit. They are all only called from arch/i386/common.c:display_cache_info() that already is marked as __cpuinit. Signed-off-by: Magnus Damm Signed-off-by: Andi Kleen commit 5f0f1c166647860bb2c2a206338e7d9af3834753 Author: Magnus Damm Date: Tue Sep 26 10:52:36 2006 +0200 [PATCH] i386: mark cpu identify functions as __cpuinit Mark i386-specific cpu identification functions as __cpuinit. They are all only called from arch/i386/common.c:identify_cpu() that already is marked as __cpuinit. Signed-off-by: Magnus Damm Signed-off-by: Andi Kleen commit b4af3f7cf11e6b5904af08a652d4a2429af17c74 Author: Magnus Damm Date: Tue Sep 26 10:52:36 2006 +0200 [PATCH] i386: mark cpu init functions as __cpuinit, data as __cpuinitdata Mark i386-specific cpu init functions as __cpuinit. They are all only called from arch/i386/common.c:identify_cpu() that already is marked as __cpuinit. This patch also removes the empty function init_umc(). Signed-off-by: Magnus Damm Signed-off-by: Andi Kleen commit 95414930548871c6c92a5b0e607b12b81f3d84d8 Author: Magnus Damm Date: Tue Sep 26 10:52:36 2006 +0200 [PATCH] i386: mark cpu_dev structures as __cpuinitdata The different cpu_dev structures are all used from __cpuinit callers what I can tell. So mark them as __cpuinitdata instead of __initdata. I am a little bit unsure about arch/i386/common.c:default_cpu, especially when it comes to the purpose of this_cpu. Signed-off-by: Magnus Damm Signed-off-by: Andi Kleen commit ed77504b2007ff7ce56841227467ac3ead52df62 Author: Magnus Damm Date: Tue Sep 26 10:52:36 2006 +0200 [PATCH] mark init_amd() as __cpuinit The init_amd() function is only called from identify_cpu() which is already marked as __cpuinit. So let's mark it as __cpuinit. Signed-off-by: Magnus Damm Signed-off-by: Andi Kleen commit 68bbc172cd1b0ee01814304b8a7bef8922d5fdca Author: Magnus Damm Date: Tue Sep 26 10:52:36 2006 +0200 [PATCH] i386: remove redundant generic_identify() calls when identifying cpus cpu_dev->c_identify is only called from arch/i386/common.c:identify_cpu(), and this after generic_identify() already has been called. There is no need to call this function twice and hook it in c_identify - but I may be wrong, please double check before applying. This patch also removes generic_identify() from cpu.h to avoid unnecessary future nesting. Signed-off-by: Magnus Damm Signed-off-by: Andi Kleen commit 6ad916581181a105d7832a7dec9e1eb58f7a1621 Author: Keith Mannthey Date: Tue Sep 26 10:52:36 2006 +0200 [PATCH] x86_64 kernel mapping fix Fix for the x86_64 kernel mapping code. Without this patch the update path only inits one pmd_page worth of memory and tramples any entries on it. now the calling convention to phys_pmd_init and phys_init is to always pass a [pmd/pud] page not an offset within a page. Signed-off-by: Keith Mannthey Signed-off-by: Andi Kleen Cc: KAMEZAWA Hiroyuki Signed-off-by: Andrew Morton commit abf0f10948b316b577851ef21c728341f1046552 Author: Andrew Morton Date: Tue Sep 26 10:52:36 2006 +0200 [PATCH] wire up oops_enter()/oops_exit() Implement pause_on_oops() on x86_64. AK: I redid the patch to do the oops_enter/exit in the existing oops_begin()/end(). This makes it much shorter. Signed-off-by: Andrew Morton Signed-off-by: Andi Kleen commit e07e23e1fd3000289fc7ccc6c71879070d3b19e0 Author: Arjan van de Ven Date: Tue Sep 26 10:52:36 2006 +0200 [PATCH] non lazy "sleazy" fpu implementation Right now the kernel on x86-64 has a 100% lazy fpu behavior: after *every* context switch a trap is taken for the first FPU use to restore the FPU context lazily. This is of course great for applications that have very sporadic or no FPU use (since then you avoid doing the expensive save/restore all the time). However for very frequent FPU users... you take an extra trap every context switch. The patch below adds a simple heuristic to this code: After 5 consecutive context switches of FPU use, the lazy behavior is disabled and the context gets restored every context switch. If the app indeed uses the FPU, the trap is avoided. (the chance of the 6th time slice using FPU after the previous 5 having done so are quite high obviously). After 256 switches, this is reset and lazy behavior is returned (until there are 5 consecutive ones again). The reason for this is to give apps that do longer bursts of FPU use still the lazy behavior back after some time. [akpm@osdl.org: place new task_struct field next to jit_keyring to save space] Signed-off-by: Arjan van de Ven Signed-off-by: Andi Kleen Cc: Andi Kleen Signed-off-by: Andrew Morton commit 73fea175303926055440c06bc8894f0c5c58afc8 Author: Ashok Raj Date: Tue Sep 26 10:52:35 2006 +0200 [PATCH] i386: Support physical cpu hotplug for x86_64 This patch enables ACPI based physical CPU hotplug support for x86_64. Implements acpi_map_lsapic() and acpi_unmap_lsapic() to support physical cpu hotplug. Signed-off-by: Ashok Raj Signed-off-by: Andi Kleen Cc: Andi Kleen Cc: "Brown, Len" Signed-off-by: Andrew Morton commit 40bee2ee73c745922e9b2d5595c46f19d1cf1b6f Author: Brice Goglin Date: Tue Sep 26 10:52:35 2006 +0200 [PATCH] fix bus numbering format in mmconfig warning Make an mmconfig warning print the bus id with a regular format. Signed-off-by: Brice Goglin Signed-off-by: Andi Kleen Signed-off-by: Andrew Morton commit c0d83745cc67ed71a08c14739a0b286d0239b1e2 Author: Magnus Damm Date: Tue Sep 26 10:52:35 2006 +0200 [PATCH] i386: mark two more functions as __init cyrix_identify() should be __init because transmeta_identify() is. tsc_init() is only called from setup_arch() which is marked as __init. These two section mismatches have been detected using running modpost on a vmlinux image compiled with CONFIG_RELOCATABLE=y. Signed-off-by: Magnus Damm Signed-off-by: Andi Kleen commit aada06c9b7f4cdedbeb2bc905893cf1923a0abad Author: Magnus Damm Date: Tue Sep 26 10:52:35 2006 +0200 [PATCH] i386: clean up topology.c There is no need to duplicate the topology_init() function. Signed-off-by: Magnus Damm Signed-off-by: Andi Kleen commit ba4d40bb5c465f0a4dcc30d02dab80c2cb7e1ff3 Author: Eric W. Biederman Date: Tue Sep 26 10:52:35 2006 +0200 [PATCH] Auto size the per cpu area. Now for a completely different but trivial approach. I just boot tested it with 255 CPUS and everything worked. Currently everything (except module data) we place in the per cpu area we know about at compile time. So instead of allocating a fixed size for the per_cpu area allocate the number of bytes we need plus a fixed constant for to be used for modules. It isn't perfect but it is much less of a pain to work with than what we are doing now. AK: fixed warning Signed-off-by: Eric W. Biederman Signed-off-by: Andi Kleen commit 522e93e3fcdbf00ba85c72fde6df28cfc0486a65 Author: Rusty Russell Date: Tue Sep 26 10:52:35 2006 +0200 [PATCH] i386: Descriptor and trap table cleanups. The implementation comes from Zach's [RFC, PATCH 10/24] i386 Vmi descriptor changes: Descriptor and trap table cleanups. Add cleanly written accessors for IDT and GDT gates so the subarch may override them. Note that this allows the hypervisor to transparently tweak the DPL of the descriptors as well as the RPL of segments in those descriptors, with no unnecessary kernel code modification. It also allows the hypervisor implementation of the VMI to tweak the gates, allowing for custom exception frames or extra layers of indirection above the guest fault / IRQ handlers. Signed-off-by: Zachary Amsden Signed-off-by: Rusty Russell Signed-off-by: Andi Kleen commit 02ba1a32dbd3d406530a17a2643a8f0f8cbf3acc Author: Andi Kleen Date: Tue Sep 26 10:52:35 2006 +0200 [PATCH] i386: move kernel_thread_helper into entry.S And add proper CFI annotation to it which was previously impossible. This prevents "stuck" messages by the dwarf2 unwinder when reaching the top of a kernel stack. Includes feedback from Jan Beulich Cc: jbeulich@novell.com Signed-off-by: Andi Kleen commit 3d08a256da8aed5300bd0752200ece426f49b050 Author: Adrian Bunk Date: Tue Sep 26 10:52:35 2006 +0200 [PATCH] i386: Make enable_local_apic static enable_local_apic can now become static. Cc: len.brown@intel.com Signed-off-by: Adrian Bunk Signed-off-by: Andi Kleen commit e8924acb2ef46b96c93f97025815ef3843cb67a2 Author: Adrian Bunk Date: Tue Sep 26 10:52:35 2006 +0200 [PATCH] i386: Make acpi_force static acpi_force can become static. Cc: len.brown@intel.com Signed-off-by: Adrian Bunk Signed-off-by: Andi Kleen commit 474c256841074b913e76e392082373e12103a75d Author: Andi Kleen Date: Tue Sep 26 10:52:35 2006 +0200 [PATCH] i386: make fault notifier unconditional and export it It's needed for external debuggers and overhead is very small. Also make the actual notifier chain they use static Cc: jbeulich@novell.com Signed-off-by: Andi Kleen commit 273819a2d982faace30e587b86a0683882251fe7 Author: Andi Kleen Date: Tue Sep 26 10:52:35 2006 +0200 [PATCH] make fault notifier unconditional and export it It's needed for external debuggers and overhead is very small. Also make the actual notifier chain they use static Cc: jbeulich@novell.com Signed-off-by: Andi Kleen commit 5e4edbb711417be40f350a319db39888a4edd450 Author: Andi Kleen Date: Tue Sep 26 10:52:35 2006 +0200 [PATCH] i386: Fix warning in mpparse.c Fix linux/arch/i386/kernel/mpparse.c: In function #MP_bus_info#: linux/arch/i386/kernel/mpparse.c:232: warning: comparison is always false due to limited range of data type Signed-off-by: Andi Kleen commit 2717941c6a1d8fa543ddca337d450ab30ef91543 Author: Andi Kleen Date: Tue Sep 26 10:52:35 2006 +0200 [PATCH] Make boot_param_data pure BSS Since it's all zero. Actually I think gcc 4+ will do that automatically, but earlier compilers won't Signed-off-by: Andi Kleen commit 1edf777803bdd2aeeb04cf44508fd9b88737fba8 Author: Andi Kleen Date: Tue Sep 26 10:52:35 2006 +0200 [PATCH] i386/x86-64: Improve Kconfig description of CRASH_DUMP Improve Kconfig description of CONFIG_CRASH_DUMP. Previously it was too brief to be useful. Cc: vgoyal@in.ibm.com Cc: ebiederm@xmission.com Signed-off-by: Andi Kleen commit cbf9b4bb76c9ce53b7fdde0dffcd000951b5f0d4 Author: Dimitri Sivanich Date: Tue Sep 26 10:52:34 2006 +0200 [PATCH] X86_64 monotonic_clock goes backwards I've noticed some erratic behavior while testing the X86_64 version of monotonic_clock(). While spinning in a loop reading monotonic clock values (pinned to a single cpu) I noticed that the difference between subsequent values occasionally went negative (time going backwards). I found that in the following code: this_offset = get_cycles_sync(); /* FIXME: 1000 or 1000000? */ --> offset = (this_offset - last_offset)*1000 / cpu_khz; } return base + offset; the offset sometimes turns out to be 0, even though this_offset > last_offset. +Added fix From: Toyo Abe The x86_64-mm-monotonic-clock.patch in 2.6.18-rc4-mm2 made a change to the updating of monotonic_base. It now uses cycles_2_ns(). I suggest that a set_cyc2ns_scale() should be done prior to the setup_irq(). Because cycles_2_ns() can be called from the timer ISR right after the irq0 is enabled. Signed-off-by: Toyo Abe Signed-off-by: Dimitri Sivanich Signed-off-by: Andi Kleen commit d28c4393a7bf558538e9def269c1caeab6ec056f Author: Prasanna S.P Date: Tue Sep 26 10:52:34 2006 +0200 [PATCH] x86: error_code is not safe for kprobes This patch moves the entry.S:error_entry to .kprobes.text section, since code marked unsafe for kprobes jumps directly to entry.S::error_entry, that must be marked unsafe as well. This patch also moves all the ".previous.text" asm directives to ".previous" for kprobes section. AK: Following a similar i386 patch from Chuck Ebbert AK: Also merged Jeremy's fix in. +From: Jeremy Fitzhardinge KPROBE_ENTRY does a .section .kprobes.text, and expects its users to do a .previous at the end of the function. Unfortunately, if any code within the function switches sections, for example .fixup, then the .previous ends up putting all subsequent code into .fixup. Worse, any subsequent .fixup code gets intermingled with the code its supposed to be fixing (which is also in .fixup). It's surprising this didn't cause more havok. The fix is to use .pushsection/.popsection, so this stuff nests properly. A further cleanup would be to get rid of all .section/.previous pairs, since they're inherently fragile. +From: Chuck Ebbert <76306.1226@compuserve.com> Because code marked unsafe for kprobes jumps directly to entry.S::error_code, that must be marked unsafe as well. The easiest way to do that is to move the page fault entry point to just before error_code and let it inherit the same section. Also moved all the ".previous" asm directives for kprobes sections to column 1 and removed ".text" from them. Signed-off-by: Chuck Ebbert <76306.1226@compuserve.com> Signed-off-by: Andi Kleen commit 3ca113ea74836a80645c79adba24caaa7a74120c Author: Dave Jones Date: Tue Sep 26 10:52:34 2006 +0200 [PATCH] i386: don't taint UP K7's running SMP kernels. We have a test that looks for invalid pairings of certain athlon/durons that weren't designed for SMP, and taint accordingly (with 'S') if we find such a configuration. However, this test shouldn't fire if there's only a single CPU present. It's perfectly valid for an SMP kernel to boot on UP hardware for example. AK: changed to num_possible_cpus() Signed-off-by: Dave Jones Signed-off-by: Andi Kleen commit 5758d5dfef1c514200bda3f29ba700f1c3e3bc99 Author: Jeremy Fitzhardinge Date: Tue Sep 26 10:52:34 2006 +0200 [PATCH] i386: fix dubious segment register clear in cpu_init() Fix a very dubious piece of code in arch/i386/kernel/cpu/common.c:cpu_init(). This clears out %fs and %gs, but clobbers %eax in the process without telling gcc. It turns out that gcc happens to be not using %eax at that point anyway so it doesn't matter much, but it looks like a bomb waiting to go off. This does end up saving an instruction, because gcc wants %eax==0 for the set_debugreg()s below. Signed-off-by: Jeremy Fitzhardinge Signed-off-by: Andi Kleen commit 3b8d1fe0f28202ce1592d9fbc216959b49b72c95 Author: Andi Kleen Date: Tue Sep 26 10:52:34 2006 +0200 [PATCH] Don't force frame pointers for lockdep Now that stacktrace supports dwarf2 don't force frame pointers for lockdep anymore Cc: mingo@elte.hu Signed-off-by: Andi Kleen commit a32cf3975bed3b84491f8ffeb24abe8c45d86ab0 Author: Andi Kleen Date: Tue Sep 26 10:52:34 2006 +0200 [PATCH] i386: Get ebp from unwinder state when continuing fallback backtrace Cc: jbeulich@novell.com Signed-off-by: Andi Kleen commit 950fee84557416a3427dd404a13addc4be7b3e6c Author: Andi Kleen Date: Tue Sep 26 10:52:34 2006 +0200 [PATCH] i386: Terminate backtrace fallback early if unwinder stack pointer is zero Cc: jbeulich@novell.com Signed-off-by: Andi Kleen commit 2b14a78cd07a52001b8c3865ed615d8b9b905b78 Author: Andi Kleen Date: Tue Sep 26 10:52:34 2006 +0200 [PATCH] i386: Do stacktracer conversion too Following x86-64 patches. Reuses code from them in fact. Convert the standard backtracer to do all output using callbacks. Use the x86-64 stack tracer implementation that uses these callbacks to implement the stacktrace interface. This allows to use the new dwarf2 unwinder for stacktrace and get better backtraces. Cc: mingo@elte.hu Signed-off-by: Andi Kleen commit be7a91709b90825990e571b2f20cea937d5eef6c Author: Andi Kleen Date: Tue Sep 26 10:52:34 2006 +0200 [PATCH] Check for end of stack trace before falling back Signed-off-by: Andi Kleen commit c0b766f13d8e1189ce4d00e54700c9d96b543b9a Author: Andi Kleen Date: Tue Sep 26 10:52:34 2006 +0200 [PATCH] Merge stacktrace and show_trace This unifies the standard backtracer and the new stacktrace in memory backtracer. The standard one is converted to use callbacks and then reimplement stacktrace using new callbacks. The main advantage is that stacktrace can now use the new dwarf2 unwinder and avoid false positives in many cases. I kept it simple to make sure the standard backtracer stays reliable. Cc: mingo@elte.hu Signed-off-by: Andi Kleen commit c9538ed49272fb244ac06ba643ff076a68a77e12 Author: Andi Kleen Date: Tue Sep 26 10:52:34 2006 +0200 [PATCH] Move unwind_init earlier Needed for use of the unwinder in lockdep, because lockdep runs really early too. Cc: jbeulich@novell.com Signed-off-by: Andi Kleen commit b7f5e3c7742d5332b78b831131f43fc3630e6322 Author: Andi Kleen Date: Tue Sep 26 10:52:34 2006 +0200 [PATCH] Don't access the APIC in safe_smp_processor_id when it is not mapped yet Lockdep can call the dwarf2 unwinder early, and the dwarf2 code uses safe_smp_processor_id which tries to access the local APIC page. But that doesn't work before the APIC code has set up its fixmap. Check for this case and always return boot cpu then. Cc: jbeulich@novell.com Cc: mingo@elte.hu Signed-off-by: Andi Kleen commit 3fa7c794fe4dc127f7fac3fad4d13628e68f89ce Author: Andi Kleen Date: Tue Sep 26 10:52:34 2006 +0200 [PATCH] Avoid recursion in lockdep when stack tracer takes locks The new dwarf2 unwinder needs to take locks to do backtraces inside modules. This patch makes sure lockdep which calls stacktrace is not reentered. Thanks to Ingo for suggesting this simpler approach. Cc: mingo@elte.hu Signed-off-by: Andi Kleen commit 5a1b3999d6cb7ab87f1f3b1700bc91839fd6fa29 Author: Andi Kleen Date: Tue Sep 26 10:52:34 2006 +0200 [PATCH] x86: Some preparationary cleanup for stack trace - Remove unused all_contexts parameter No caller used it - Move skip argument into the structure (needed for followon patches) Cc: mingo@elte.hu Signed-off-by: Andi Kleen commit 4ea8a5d8b57cd504b4b2de1212523848e7ab50cf Author: Muli Ben-Yehuda Date: Tue Sep 26 10:52:33 2006 +0200 [PATCH] Calgary IOMMU: eradicate sole remaining 80 chars per line offender Signed-off-by: Muli Ben-Yehuda Signed-off-by: Jon Mason Signed-off-by: Andi Kleen commit 4ccf4ae3144360ab9c00d0b53427f43369287bfb Author: Muli Ben-Yehuda Date: Tue Sep 26 10:52:33 2006 +0200 [PATCH] remove tce_cache_blast_stress() tce_cache_blast_stress was useful during bringup to stress the IOMMU's cache flushing. Now that we quiesce DMAs on every cache flush, using _stress() brings the machine down to its knees once you put it under load. Remove this debug / bringup code that isn't useful anymore completely. Signed-off-by: Muli Ben-Yehuda Signed-off-by: Jon Mason Signed-off-by: Andi Kleen commit 796e4390e0378e1e57c033349610cfc741696a3d Author: Muli Ben-Yehuda Date: Tue Sep 26 10:52:33 2006 +0200 [PATCH] only verify the allocation bitmap if CONFIG_IOMMU_DEBUG is on Introduce new function verify_bit_range(). Define two versions, one for CONFIG_IOMMU_DEBUG enabled and one for disabled. Previously we were checking that the bitmap was consistent every time we allocated or freed an entry in the TCE table, which is good for debugging but incurs an unnecessary penalty on non debug builds. Signed-off-by: Muli Ben-Yehuda Signed-off-by: Jon Mason Signed-off-by: Andi Kleen commit de684652f34f57cb60d4d78d09139a0e0c5e7b1b Author: Muli Ben-Yehuda Date: Tue Sep 26 10:52:33 2006 +0200 [PATCH] print whether CONFIG_IOMMU_DEBUG is enabled Signed-off-by: Muli Ben-Yehuda Signed-off-by: Jon Mason Signed-off-by: Andi Kleen commit 2ade2920dcefdf5595c6380ebed131c964190855 Author: Chuck Ebbert <76306.1226@compuserve.com> Date: Tue Sep 26 10:52:33 2006 +0200 [PATCH] i386/x86-64: rename is_at_popf(), add iret to tests and fix is_at_popf() needs to test for the iret instruction as well as popf. So add that test and rename it to is_setting_trap_flag(). Also change max insn length from 16 to 15 to match reality. LAHF / SAHF can't affect TF, so the comment in x86_64 is removed. Signed-off-by: Chuck Ebbert <76306.1226@compuserve.com> Signed-off-by: Andi Kleen commit 91cd444e56ebe0c2acd9576a045d77490b26f607 Author: Andi Kleen Date: Tue Sep 26 10:52:33 2006 +0200 [PATCH] x86: Remove unneeded externs in acpi/boot.c And move one into proto.h Cc: len.brown@intel.com Signed-off-by: Andi Kleen commit 2b94ab2fd55768030e177a6ec224dedd031ad06b Author: Fernando Luis Vázquez Cao Date: Tue Sep 26 10:52:33 2006 +0200 [PATCH] Replace local_save_flags+local_irq_disable with The combination of "local_save_flags" and "local_irq_disable" seems to be equivalent to "local_irq_save" (see code snips below). Consequently, replace occurrences of local_save_flags+local_irq_disable with local_irq_save. * local_irq_save #define raw_local_irq_save(flags) \ do { (flags) = __raw_local_irq_save(); } while (0) static inline unsigned long __raw_local_irq_save(void) { unsigned long flags = __raw_local_save_flags(); raw_local_irq_disable(); return flags; } * local_save_flags #define raw_local_save_flags(flags) \ do { (flags) = __raw_local_save_flags(); } while (0) Signed-off-by: Fernando Vazquez Signed-off-by: Andi Kleen commit 52d522f53f137c7903db22f9196a48ad8658fb2b Author: Andi Kleen Date: Tue Sep 26 10:52:33 2006 +0200 [PATCH] Fix sparse warnings in compat aout code Signed-off-by: Andi Kleen commit ddb15ec130d38cb8076a9926040c7435b126db65 Author: Andi Kleen Date: Tue Sep 26 10:52:33 2006 +0200 [PATCH] Fix most sparse warnings in sys_ia32.c Mostly by adding casts. I didn't touch the "invalid access past ..." which are caused by the sigset conversion. Signed-off-by: Andi Kleen commit dd2994f619752fb731f21c89ad16536dd6673948 Author: Andi Kleen Date: Tue Sep 26 10:52:33 2006 +0200 [PATCH] Add sparse annotations to quiet sparse in arch/x86_64/mm/fault.c Fixes linux/arch/x86_64/mm/fault.c:125:7: warning: incorrect type in argument 1 (different address spaces) linux/arch/x86_64/mm/fault.c:125:7: expected void [noderef] * linux/arch/x86_64/mm/fault.c:125:7: got unsigned char *[assigned] instr linux/arch/x86_64/mm/fault.c:163:8: warning: incorrect type in argument 1 (different address spaces) linux/arch/x86_64/mm/fault.c:163:8: expected void [noderef] * linux/arch/x86_64/mm/fault.c:163:8: got unsigned char *[assigned] instr linux/arch/x86_64/mm/fault.c:179:9: warning: incorrect type in argument 1 (different address spaces) linux/arch/x86_64/mm/fault.c:179:9: expected void [noderef] * linux/arch/x86_64/mm/fault.c:179:9: got unsigned long * Signed-off-by: Andi Kleen commit 131cfd7bd54767ec8959e013f83839442a54d546 Author: Andi Kleen Date: Tue Sep 26 10:52:33 2006 +0200 [PATCH] Add sparse annotation to vsyscall.c Fixes linux/arch/x86_64/kernel/vsyscall.c:276:7: warning: constant 0x0f40000000000 is so big it is long linux/arch/x86_64/kernel/vsyscall.c:80:14: warning: incorrect type in argument 1 (different address spaces) linux/arch/x86_64/kernel/vsyscall.c:80:14: expected void const volatile [noderef] *addr linux/arch/x86_64/kernel/vsyscall.c:80:14: got void * linux/arch/x86_64/kernel/vsyscall.c:200:7: warning: incorrect type in assignment (different address spaces) linux/arch/x86_64/kernel/vsyscall.c:200:7: expected unsigned short [usertype] *map1 linux/arch/x86_64/kernel/vsyscall.c:200:7: got void [noderef] * linux/arch/x86_64/kernel/vsyscall.c:203:7: warning: incorrect type in assignment (different address spaces) linux/arch/x86_64/kernel/vsyscall.c:203:7: expected unsigned short [usertype] *map2 linux/arch/x86_64/kernel/vsyscall.c:203:7: got void [noderef] * linux/arch/x86_64/kernel/vsyscall.c:215:10: warning: incorrect type in argument 1 (different address spaces) linux/arch/x86_64/kernel/vsyscall.c:215:10: expected void volatile [noderef] *addr linux/arch/x86_64/kernel/vsyscall.c:215:10: got unsigned short [usertype] *map2 linux/arch/x86_64/kernel/vsyscall.c:217:10: warning: incorrect type in argument 1 (different address spaces) linux/arch/x86_64/kernel/vsyscall.c:217:10: expected void volatile [noderef] *addr linux/arch/x86_64/kernel/vsyscall.c:217:10: got unsigned short [usertype] *map1 Signed-off-by: Andi Kleen commit 3bd4d18cbab622c504f131f3c0029c3aa29c05be Author: Andi Kleen Date: Tue Sep 26 10:52:33 2006 +0200 [PATCH] Move e820 map into e820.c Minor cleanup. Keep setup.c free from unrelated clutter. Signed-off-by: Andi Kleen commit c31fbb1ad890b11f037c16496e53f28877c12722 Author: Andi Kleen Date: Tue Sep 26 10:52:33 2006 +0200 [PATCH] Clean up acpi_numa variable Move it into srat.c No need to clutter up setup.c for it And remove use in setup.c completely - it only guarded a printk which can be done unconditionally. Signed-off-by: Andi Kleen commit df3bb57d2c0160ccd1ee51322f50aa295c3b0858 Author: Andi Kleen Date: Tue Sep 26 10:52:33 2006 +0200 [PATCH] i386/x86-64: Move acpi_disabled variables into acpi/boot.c Removes code duplication between i386/x86-64. Not needed anymore in setup.c since early_param cleanup Cc: len.brown@intel.com Signed-off-by: Andi Kleen commit 43c85c9c5dff76efc1e411d3302840027ea92004 Author: Andi Kleen Date: Tue Sep 26 10:52:32 2006 +0200 [PATCH] Remove need for early lockdep init I think it was only needed for the printks and we can do them later. I put in a single early_printk so that we know the kernel is alive (early_printk doesn't need any locks) This makes some things easier for initialization of unwind for lockdep, which is needed by later patches. cc: mingo@elte.hu Signed-off-by: Andi Kleen commit 2c8c0e6b8d7700a990da8d24eff767f9ca223b96 Author: Andi Kleen Date: Tue Sep 26 10:52:32 2006 +0200 [PATCH] Convert x86-64 to early param Instead of hackish manual parsing Requires earlier i386 patchkit, but also fixes i386 early_printk again. I removed some obsolete really early parameters which didn't do anything useful. Also made a few parameters that needed it early (mostly oops printing setup) Also removed one panic check that wasn't visible without early console anyways (the early console is now initialized after that panic) This cleans up a lot of code. Signed-off-by: Andi Kleen commit 1a3f239ddf9208f2e52d36fef1c1c4518cbbbabe Author: Rusty Russell Date: Tue Sep 26 10:52:32 2006 +0200 [PATCH] i386: Replace i386 open-coded cmdline parsing with This patch replaces the open-coded early commandline parsing throughout the i386 boot code with the generic mechanism (already used by ppc, powerpc, ia64 and s390). The code was inconsistent with whether it deletes the option from the cmdline or not, meaning some of these will get passed through the environment into init. This transformation is mainly mechanical, but there are some notable parts: 1) Grammar: s/linux never set's it up/linux never sets it up/ 2) Remove hacked-in earlyprintk= option scanning. When someone actually implements CONFIG_EARLY_PRINTK, then they can use early_param(). [AK: actually it is implemented, but I'm adding the early_param it in the next x86-64 patch] 3) Move declaration of generic_apic_probe() from setup.c into asm/apic.h 4) Various parameters now moved into their appropriate files (thanks Andi). 5) All parse functions which examine arg need to check for NULL, except one where it has subtle humor value. AK: readded acpi_sci handling which was completely dropped AK: moved some more variables into acpi/boot.c Cc: len.brown@intel.com Signed-off-by: Rusty Russell Signed-off-by: Andi Kleen commit 33df0d19ea425d28bd5afb48898af32237fe81af Author: Rusty Russell Date: Tue Sep 26 10:52:32 2006 +0200 [PATCH] Allow early_param and identical __setup to exist We currently assume that boot parameters which are handled by early_param() will not overlap boot parameters handled by __setup: if they do, behaviour is dependent on link order, usually meaning __setup will not get called. ACPI wants to use early_param("pci"), and pci uses __setup("pci="), so we modify the core to let them coexist: "pci=noacpi" will now get passed to both. Signed-off-by: Rusty Russell Signed-off-by: Andi Kleen commit 9ca33eb6981549c0d1b7aea7f99f1ba602161356 Author: Andi Kleen Date: Tue Sep 26 10:52:32 2006 +0200 [PATCH] Use early CPU identify before early command line parsing This makes it possible to modify CPU flags in command line options without hacks. And remove another copy in head64.c Signed-off-by: Andi Kleen commit d4d35854a1cf7fb170c8e133a5e40a9d19e7fc17 Author: Chuck Ebbert <76306.1226@compuserve.com> Date: Tue Sep 26 10:52:32 2006 +0200 [PATCH] remove lock prefix from is_at_popf() tests The lock prefix will cause an exception when used with the popf instruction, so no need to continue searching after it's found. Signed-off-by: Chuck Ebbert <76306.1226@compuserve.com> Signed-off-by: Andi Kleen commit 145106e81090fcdfb57b7f2e90b98c6445b6f33d Author: Muli Ben-Yehuda Date: Tue Sep 26 10:52:32 2006 +0200 [PATCH] remove superflous BUG_ON's in nommu and gart There's no need to check for invalid DMA data direction in nommu and gart since we do it in dma-mapping.h anyway before calling the individual dma-ops. Signed-off-by: Muli Ben-Yehuda Signed-off-by: Andi Kleen commit 29a6c25bd63dbd52e73d25268402d065ad84c0fe Author: Eric W. Biederman Date: Tue Sep 26 10:52:32 2006 +0200 [PATCH] Fix gdt table size in trampoline.S Allows easier extension of the GDT by using the proper C symbol for the size in the descriptor. Signed-off-by: Eric W. Biederman Signed-off-by: Andi Kleen commit 8d379dad8f1670d233ac67b76b1c5a42ad3714a3 Author: Jan Beulich Date: Tue Sep 26 10:52:32 2006 +0200 [PATCH] annotate arch/x86_64/lib/*.S Add unwind annotations to arch/x86_64/lib/*.S, and also use the macros provided by linux/linkage.h where-ever possible. Some of the alternative instructions handling needed to be adjusted so that the replacement code would also have valid unwind information. Signed-off-by: Jan Beulich Signed-off-by: Andi Kleen commit fb2e28485679418e459583605f9b19807a72ceca Author: Andi Kleen Date: Tue Sep 26 10:52:32 2006 +0200 [PATCH] i386: Clean up spin/rwlocks - Inline spinlock strings into their inline functions - Convert macros to typesafe inlines - Replace some leftover __asm__ __volatile__s with asm volatile Signed-off-by: Andi Kleen commit 8b059d2373c16b6d32787a49daf8ccf72dc61b71 Author: Andi Kleen Date: Tue Sep 26 10:52:32 2006 +0200 [PATCH] Clean up spin/rwlocks - Inline spinlock strings into their inline functions - Convert macros to typesafe inlines - Replace some leftover __asm__ __volatile__s with asm volatile Signed-off-by: Andi Kleen commit a752d7194c4fb5a3e767c95542d04fc5decb1d52 Author: Chuck Ebbert <76306.1226@compuserve.com> Date: Tue Sep 26 10:52:32 2006 +0200 [PATCH] fix is_at_popf() for compat tasks When testing for the REX instruction prefix, first check for 32-bit mode because in compat mode the REX prefix is an increment instruction. Signed-off-by: Chuck Ebbert <76306.1226@compuserve.com> Signed-off-by: Andi Kleen commit 8578bdf835d6d6ece6718858d351456367b8a5cf Author: Andi Kleen Date: Tue Sep 26 10:52:32 2006 +0200 [PATCH] Don't use lock section for mutexes and semaphores Lock sections cannot be handled by the dwarf2 unwinder. Disadvantage is a taken branch in the hot path. Signed-off-by: Andi Kleen commit 7ca2b49b06a6d26e89e3535653889f1d7892b085 Author: Andi Kleen Date: Tue Sep 26 10:52:32 2006 +0200 [PATCH] i386: Remove lock section support in semaphore.h Lock sections don't work the new dwarf2 unwinder This generates slightly smaller code. It adds one more taken jump to the fast path. Cc: jbeulich@novell.com Signed-off-by: Andi Kleen commit add659bf8aa92f8b3f01a8c0220557c959507fb1 Author: Andi Kleen Date: Tue Sep 26 10:52:31 2006 +0200 [PATCH] i386: Remove lock section support in rwsem.h Lock sections don't work the new dwarf2 unwinder This generates slightly smaller code. It adds one more taken jump to the fast path. Also move the trampolines into semaphore.S and add proper CFI annotations. Cc: jbeulich@novell.com Signed-off-by: Andi Kleen commit 01215ad8d83e18321d99e9b5750a6f21cac243a2 Author: Andi Kleen Date: Tue Sep 26 10:52:31 2006 +0200 [PATCH] i386: Remove lock section support in mutex.h Lock sections don't work the new dwarf2 unwinder This generates slightly smaller code. It adds one more taken jump to the fast path. Cc: jbeulich@novell.com Signed-off-by: Andi Kleen commit 0577f148b5e9a773020e3da1e6332a7c6df9d601 Author: Muli Ben-Yehuda Date: Tue Sep 26 10:52:31 2006 +0200 [PATCH] Calgary IOMMU: save a bit of space in bus_info Make translation_disabled a uchar rather than an int Signed-off-by: Muli Ben-Yehuda Signed-off-by: Jon Mason Signed-off-by: Andi Kleen commit a4fc520a0ff92810eea46d74bf742ef73849302e Author: Muli Ben-Yehuda Date: Tue Sep 26 10:52:31 2006 +0200 [PATCH] Calgary IOMMU: calgary_init_one_nontraslated() can return void Signed-off-by: Muli Ben-Yehuda Signed-off-by: Jon Mason Signed-off-by: Andi Kleen commit 871b17008e93d7e96f96829ce5f0393c9902d25b Author: Muli Ben-Yehuda Date: Tue Sep 26 10:52:31 2006 +0200 [PATCH] Calgary IOMMU: fix reference counting of Calgary PCI devices The pci_get_device() API decrements the reference count on the 'from' parameter when it continues searching. Therefore, take a ref count on Calgary bus when we initialize them in either translated or non-translated mode. Signed-off-by: Muli Ben-Yehuda Signed-off-by: Jon Mason Signed-off-by: Andi Kleen commit b8f4fe66a560b5ccbb4d4d0d2df356a5d9b98b83 Author: Muli Ben-Yehuda Date: Tue Sep 26 10:52:31 2006 +0200 [PATCH] Calgary IOMMU: fix error path memleak in calgary_free_tar We were freeing the iommu_table and leaking the bitmap pages. Also rename it to calgary_free_bus, which is more accurate. Signed-off-by: Muli Ben-Yehuda Signed-off-by: Jon Mason Signed-off-by: Andi Kleen commit 9f2dc46d5ec6fd7787182d2232a1003af11879f1 Author: Muli Ben-Yehuda Date: Tue Sep 26 10:52:31 2006 +0200 [PATCH] Calgary IOMMU: break out of pci_find_device_reverse if dev not found Signed-off-by: Muli Ben-Yehuda Signed-off-by: Jon Mason Signed-off-by: Andi Kleen commit f38db651d5da5e10235fd7dd31095969fb7ef6fb Author: Muli Ben-Yehuda Date: Tue Sep 26 10:52:31 2006 +0200 [PATCH] Calgary IOMMU: consolidate per bus data structures Move the tce_table_kva array, disabled bitmap and bus_to_phb array into a new per bus 'struct calgary_bus_info'. Also slightly reorganize build_tce_table and tce_table_setparms to avoid exporting bus_info to tce.c. Signed-off-by: Muli Ben-Yehuda Signed-off-by: Jon Mason Signed-off-by: Andi Kleen commit 5f4a7a93886ce1a4327f6028cc05d423f39eebf0 Author: Muli Ben-Yehuda Date: Tue Sep 26 10:52:31 2006 +0200 [PATCH] Calgary IOMMU: rearrange 'struct iommu_table' members Rearrange struct members loosely based on size for improved alignment and to save a few bytes. Signed-off-by: Muli Ben-Yehuda Signed-off-by: Jon Mason Signed-off-by: Andi Kleen commit 352f7bae81faa2befa2a3c02b84478dce16b8fd6 Author: Andi Kleen Date: Tue Sep 26 10:52:31 2006 +0200 [PATCH] Add stack documentation document from Keith Owens Describes the stack organization on x86-64. I changed it a bit and removed some obsolete information and the questions. Cc: kaos@sgi.com Signed-off-by: Andi Kleen commit ba9c231f7499ff6918c069c72ff5fd836c76b963 Author: Jan Beulich Date: Tue Sep 26 10:52:31 2006 +0200 [PATCH] i386: initialize end-of-memory variables as early as possible Move initialization of all memory end variables to as early as possible, so that dependent code doesn't need to check whether these variables have already been set. Change the range check in kunmap_atomic to actually make use of this so that the no-mapping-estabished path (under CONFIG_DEBUG_HIGHMEM) gets used only when the address is inside the lowmem area (and BUG() otherwise). Signed-off-by: Jan Beulich Signed-off-by: Andi Kleen commit 3b94355c47e2b025a7ececa0a14180e8fce6b0f1 Author: Jan Beulich Date: Tue Sep 26 10:52:31 2006 +0200 [PATCH] remove int_delivery_dest The genapic field and the accessor macro weren't used anywhere. Signed-off-by: Jan Beulich Signed-off-by: Andi Kleen commit caff0710ebf6f2c44cbd2b8b31fd6329148bed2e Author: Jan Beulich Date: Tue Sep 26 10:52:31 2006 +0200 [PATCH] initialize end of memory variables as early as possible While an earlier patch already did a small step into that direction, this patch moves initialization of all memory end variables to as early as possible, so that dependent code doesn't need to check whether these variables have already been set. Also, remove a misleading (perhaps just outdated) comment, and make static a variable only used in a single file. Signed-off-by: Jan Beulich Signed-off-by: Andi Kleen commit 44cc45267bbe7c64f7d85b074bd670b48b5abdfb Author: Andi Kleen Date: Tue Sep 26 10:52:31 2006 +0200 [PATCH] Remove obsolete CVS $Id$ from assembler files in arch/x86_64/kernel/* CVS hasn't been used for a long time for them. Signed-off-by: Andi Kleen commit e2414910f212c52d9d7c64c99a22863488ac5b48 Author: Andi Kleen Date: Tue Sep 26 10:52:30 2006 +0200 [PATCH] x86: Detect CFI support in the assembler at runtime ... instead of using a CONFIG option. The config option still controls if the resulting executable actually has unwind information. This is useful to prevent compilation errors when users select CONFIG_STACK_UNWIND on old binutils and also allows to use CFI in the future for non kernel debugging applications. Cc: jbeulich@novell.com Cc: sam@ravnborg.org Signed-off-by: Andi Kleen commit fe7414a2882c953788af13a7f2c9d570ed8f71c5 Author: Andi Kleen Date: Tue Sep 26 10:52:30 2006 +0200 [PATCH] Use BUILD_BUG_ON in apic.c build sanity checking Makes code a little shorter. Signed-off-by: Andi Kleen commit 19f03ffecdb599c1f64113b6dda0a1f143d2bab9 Author: Andi Kleen Date: Tue Sep 26 10:52:30 2006 +0200 [PATCH] i386: Clean up code style in mpparse.c ACPI code Remove some unlinuxy ways to write function parameter definitions. Remove some stray "return;"s No functional change. Cc: len.brown@intel.com Signed-off-by: Andi Kleen commit efec3b9a3282714c8441b9bf476f8358bed9ecaa Author: Andi Kleen Date: Tue Sep 26 10:52:30 2006 +0200 [PATCH] Fix up some non linuxy style in ACPI functions in mpparse.c No functional changes. Cc: len.brown@intel.com Signed-off-by: Andi Kleen commit 276ec1a76ad204d47947894a914e10e798400ffb Author: Andi Kleen Date: Tue Sep 26 10:52:30 2006 +0200 [PATCH] Remove some unneeded ACPI externs in mpparse.c They are not used in this file so remove them. i386 didn't have them either. Cc: len.brown@intel.com Signed-off-by: Andi Kleen commit a01fd3baff5e2e744f9d1af0e5d3e6b6082e4dcf Author: Andi Kleen Date: Tue Sep 26 10:52:30 2006 +0200 [PATCH] Remove useless wrapper in mpparse.c code It used to contain support code for NUMAQ, but that is long gone already on 64bit. Signed-off-by: Andi Kleen commit 55f05ffaa788e039df2f1ebe0d7bfbcb6f39d0b4 Author: Andi Kleen Date: Tue Sep 26 10:52:30 2006 +0200 [PATCH] Replace mp bus array with bitmap for bus not pci Since we only support PCI and ISA legacy busses now there is no need to have an full array with checking. Signed-off-by: Andi Kleen commit dfa4698c50bf85b7927214b0e4a3dc4bc3b3c4a9 Author: Andi Kleen Date: Tue Sep 26 10:52:30 2006 +0200 [PATCH] Move early chipset quirks out to new file They did not really belong into io_apic.c. Move them into a new file and clean it up a bit. Also remove outdated ATI quirk that was obsolete, Signed-off-by: Andi Kleen commit edd965229669f8f8dfddec8c863250440fb65ab3 Author: Andi Kleen Date: Tue Sep 26 10:52:30 2006 +0200 [PATCH] Remove MPS table APIC renumbering The MPS table specification says that the operating system should renumber the IO-APICs following the table as needed. However in ACPI this is not allowed or neeeded and all x86-64 systems are ACPI compliant. The code was already disabled on some systems because it caused problems there. Remove it completely now. CC: mdomsch@dell.com Signed-off-by: Andi Kleen commit 606bd58de6542e847c51b1b6d83a4cd70a632fe7 Author: Diego Calleja Date: Tue Sep 26 10:52:30 2006 +0200 [PATCH] x86: AUX_DEVICE_INFO is one byte long, use 'movb' Bugzilla #6552 says: "In arch/i386/boot/setup.S, movw is used instead of movb for PS/2 mouse information, although it is unsigned char. This does not harm, because the jmp instruction overwritten by movw is used before executing movw, and never be used again" I've no idea if this is a real bug or how it gets fixed, so I'm submitting it for review instead of letting it die of boredom in bugzilla. Aditionally to i386, I've changed x86-64, which mirrors the same code. Credits to Yoshinori K. Okuji, who found the problem and suggested a fix. Signed-off-by: Diego Calleja Signed-off-by: Andi Kleen commit cf4c6a2f27f5db810b69dcb1da7f194489e8ff88 Author: Andi Kleen Date: Tue Sep 26 10:52:30 2006 +0200 [PATCH] i386: Factor out common io apic routing entry access The IO APIC code had lots of duplicated code to read/write 64bit routing entries into the IO-APIC. Factor this out int common read/write functions In a few cases the IO APIC lock is taken more often now, but this isn't a problem because it's all initialization/shutdown only slow path code. Similar to earlier x86-64 patch. Includes a fix by Jiri Slaby for a mistake that broke resume Signed-off-by: Andi Kleen commit eea0e11c1f0d6ef89e64182b2f1223a4ca2b74a2 Author: Andi Kleen Date: Tue Sep 26 10:52:30 2006 +0200 [PATCH] Factor out common io apic routing entry access The IO APIC code had lots of duplicated code to read/write 64bit routing entries into the IO-APIC. Factor this out int common read/write functions In a few cases the IO APIC lock is taken more often now, but this isn't a problem because it's all initialization/shutdown only slow path code. Signed-off-by: Andi Kleen commit c1a58b42b428e717afbbb298356e041cea54ad17 Author: Andi Kleen Date: Tue Sep 26 10:52:30 2006 +0200 [PATCH] i386/x86-64: Remove obsolete sanity check in mptable parsing It apparently has never triggered in many years. Signed-off-by: Andi Kleen commit a8fcf1a24a16e1c735c795d99773b5dcefb71518 Author: Andi Kleen Date: Tue Sep 26 10:52:30 2006 +0200 [PATCH] Remove obsolete PIC mode PIC mode is an outdated way to drive the APICs that was used on some early MP boards. It is not supported in the ACPI model. It is unlikely to be ever configured by any x86-64 system Remove it thus. Signed-off-by: Andi Kleen commit e50991343488edf25d58820be1684322808c763c Author: Andi Kleen Date: Tue Sep 26 10:52:29 2006 +0200 [PATCH] Remove leftover MCE/EISA support No 64bit EISA or Microchannel systems ever. Remove the left over code in the IO-APIC driver and the mptable parser Signed-off-by: Andi Kleen commit 5cb6b99928a8f1a1bbdac7a16b88aef8cb64d432 Author: Andi Kleen Date: Tue Sep 26 10:52:29 2006 +0200 [PATCH] Remove pirq overwrite support This was an old workaround for broken MP-BIOS. The user could specify overwrites on the command line. I've never seen it being used for anything on 64bit. So get rid of it for now. Signed-off-by: Andi Kleen commit 2e91a17b35116885373e04af142b1d08cf1b47bf Author: Andi Kleen Date: Tue Sep 26 10:52:29 2006 +0200 [PATCH] Add some comments to entry.S And remove some old obsolete ones. Signed-off-by: Andi Kleen commit 107878bb14b1fb6bddc646f4d5e72e8beaa2f6a2 Author: Andi Kleen Date: Tue Sep 26 10:52:29 2006 +0200 [PATCH] i386: Minor fixes & cleanup to tlb flush (based on x86-64 changes) - Add a proper memory clobber to invlpg - Remove an unused extern Signed-off-by: Andi Kleen commit b1c78c0fcc29097567e1afc39701012e6d89adb7 Author: Andi Kleen Date: Tue Sep 26 10:52:29 2006 +0200 [PATCH] Clean up and minor fixes to TLB flush - Convert CR* accesses to dedicated inline functions and rewrite the rest as C inlines - Don't do a double flush for global flushes (pointed out by Zach Amsden) This was a bug workaround for old CPUs that don't do 64bit and is obsolete. - Add a proper memory clobber to invlpg - Remove an unused extern Signed-off-by: Andi Kleen commit 3f14c746a61ec932c204aca820c02c293118c5df Author: Andi Kleen Date: Tue Sep 26 10:52:29 2006 +0200 [PATCH] Remove old "focus disabled" chipset errata workaround The new systems already use focus disabled and the comment was completely outdated. Signed-off-by: Andi Kleen commit 6c96a29f20762e8ce40b674f906055d009c302ee Author: Andi Kleen Date: Tue Sep 26 10:52:29 2006 +0200 [PATCH] Remove apic mismatch counter Nobody has been setting the mismatch counter and the ifdef was never set so remove it. Signed-off-by: Andi Kleen commit 7f11d8a5efd625ffa41cde1d8472f85e885478ec Author: Andi Kleen Date: Tue Sep 26 10:52:29 2006 +0200 [PATCH] Remove all ifdefs for local/io apic IO-APIC or local APIC can only be disabled at runtime anyways and Kconfig has forced these options on for a long time now. The Kconfigs are kept only now for the benefit of the shared acpi boot.c code. Signed-off-by: Andi Kleen commit 5ba5891d44a6acade44887a0f3195489d46c12de Author: Andi Kleen Date: Tue Sep 26 10:52:29 2006 +0200 [PATCH] Add some comments what tce.c actually does Signed-off-by: Andi Kleen commit cc1e684a9f1cc069b2ac249aa11486613369dd69 Author: Andi Kleen Date: Tue Sep 26 10:52:29 2006 +0200 [PATCH] Remove leftover CVS Id in thunk.S And move the comment to a proper place. Signed-off-by: Andi Kleen commit ecaf45ee5ce60afe7cc46e91d82c1b0cbda09387 Author: Andi Kleen Date: Tue Sep 26 10:52:29 2006 +0200 [PATCH] i386: Redo semaphore and rwlock assembly helpers - Move them to a pure assembly file. Previously they were in a C file that only consisted of inline assembly. Doing it in pure assembler is much nicer. - Add a frame.i include with FRAME/ENDFRAME macros to easily add frame pointers to assembly functions - Add dwarf2 annotation to them so that the new dwarf2 unwinder doesn't get stuck on them - Random cleanups Includes feedback from Jan Beulich and a UML build fix from Andrew Morton. Cc: jbeulich@novell.com Cc: jdike@addtoit.com Signed-off-by: Andi Kleen commit 07c9819b31eda7954feddc83f2fae035f31c11e1 Author: Andi Kleen Date: Tue Sep 26 10:52:29 2006 +0200 [PATCH] i386: add alternative-asm.h to allow LOCK_PREFIX replacement in .S files LOCK_PREFIX is replaced by nops on UP systems, so it has to be a special macro. Previously this was only possible from C. Allow it for pure assembly files too. Similar to earlier x86-64 patch. Signed-off-by: Andi Kleen commit b06babac45e1546dfb504f1f25eb0495632bfc41 Author: Andi Kleen Date: Tue Sep 26 10:52:29 2006 +0200 [PATCH] Add proper alignment to ENTRY Previously it didn't align. Use the same one as the C compiler in blended mode, which is good for K8 and Core2 and doesn't hurt on P4. Signed-off-by: Andi Kleen commit 1a015b5644ec6df0a2c4cbeff1f8a3d24ba0478e Author: Andi Kleen Date: Tue Sep 26 10:52:29 2006 +0200 [PATCH] i386: Remove const case for rwlocks rwlocks are now out of line, so it near never triggers. Also it was incompatible with the new dwarf2 unwinder because it had unannotiatable push/pops. Signed-off-by: Andi Kleen commit 9a0b26e6bc4ae1979d9bcc6194e57a71b2b5cac6 Author: Andi Kleen Date: Tue Sep 26 10:52:28 2006 +0200 [PATCH] Clean up read write lock assembly - Move the slow path fallbacks to their own assembly files This makes them much easier to read and is needed for the next change. - Add CFI annotations for unwinding (XXX need review) - Remove constant case which can never happen with out of line spinlocks - Use patchable LOCK prefixes - Don't use lock sections anymore for inline code because they can't be expressed by the unwinder (this adds one taken jump to the lock fast path) Cc: jbeulich@novell.com Signed-off-by: Andi Kleen commit b4062b16094038334d9bbadac0397a3fc9e981b0 Author: Andi Kleen Date: Tue Sep 26 10:52:28 2006 +0200 [PATCH] Support patchable lock prefix for pure assembly files Signed-off-by: Andi Kleen commit 538b5b419c7ae39a4b2deb15278da36102e42346 Author: Andi Kleen Date: Tue Sep 26 10:52:28 2006 +0200 [PATCH] Document backtracer selection options Signed-off-by: Andi Kleen commit 31679f38d88696ed032d59e457f1605c97e7d719 Author: Andi Kleen Date: Tue Sep 26 10:52:28 2006 +0200 [PATCH] Simplify profile_pc on x86-64 Use knowledge about EFLAGS layout (bits 22:63 are always 0) to distingush EFLAGS word and kernel address in the spin lock stack frame. Signed-off-by: Andi Kleen commit 0cb91a2293648507886563ccb91979cfc94d6a4b Author: Andi Kleen Date: Tue Sep 26 10:52:28 2006 +0200 [PATCH] i386: Account spinlocks to the caller during profiling for !FP kernels This ports the algorithm from x86-64 (with improvements) to i386. Previously this only worked for frame pointer enabled kernels. But spinlocks have a very simple stack frame that can be manually analyzed. Do this. Signed-off-by: Andi Kleen commit c16b63e09d9d03158e0a92e961234e94c4862620 Author: Andi Kleen Date: Tue Sep 26 10:52:28 2006 +0200 [PATCH] i386/x86-64: Don't randomize stack top when no randomization personality is set Based on patch from Frank van Maarseveen , but extended. Signed-off-by: Andi Kleen commit d5d9ca6d882f7c8d47ef91a701fc042cbebbc334 Author: Adam Henley Date: Tue Sep 26 10:52:28 2006 +0200 [PATCH] A few trivial spelling and grammar fixes A few trivial spelling and grammar mistakes picked up in "arch/x86_64/aperture.c", "arch/x86_64/crash.c" and "arch/x86_64/apic.c". I think all are correct fixes but am ever aware of my fallibility :o) This is my first patch submission so all feedback is appreciated, esp. WRT CCing to Linus, Andi and trivial@kernel.org, is this correct? And which is the most appropriate kernel version to diff against? If any. Should apply cleanly to 2.6.18-rc1 Signed-off-by: Adam Henley Signed-off-by: Andi Kleen - adam commit 3034d11c930f795d61321c9244c4ffaaabf0c282 Author: Andi Kleen Date: Tue Sep 26 10:52:28 2006 +0200 [PATCH] Don't print virtual address in HPET initialization virtual addresses don't belong into kernel logs for non debugging Cc: clemens@ladisch.de Signed-off-by: Andi Kleen commit d3a4f48d4866b8623ca9adde8ce4e5fde979c132 Author: Stephane Eranian Date: Tue Sep 26 10:52:28 2006 +0200 [PATCH] x86-64 TIF flags for debug regs and io bitmap in ctxsw Hello, Following my discussion with Andi. Here is a patch that introduces two new TIF flags to simplify the context switch code in __switch_to(). The idea is to minimize the number of cache lines accessed in the common case, i.e., when neither the debug registers nor the I/O bitmap are used. This patch covers the x86-64 modifications. A patch for i386 follows. Changelog: - add TIF_DEBUG to track when debug registers are active - add TIF_IO_BITMAP to track when I/O bitmap is used - modify __switch_to() to use the new TIF flags : eranian@hpl.hp.com Signed-off-by: Andi Kleen commit 2f766d16062d0147edff91be15de4a950667ca42 Author: Andi Kleen Date: Tue Sep 26 10:52:28 2006 +0200 [PATCH] Clean up asm/smp.h includes No need to include it from entry.S Drop all the #ifdef __ASSEMBLY__ Signed-off-by: Andi Kleen commit 3cfc348bf90ffaa777c188652aa297f04eb94de8 Author: Andi Kleen Date: Tue Sep 26 10:52:28 2006 +0200 [PATCH] x86: Add portable getcpu call For NUMA optimization and some other algorithms it is useful to have a fast to get the current CPU and node numbers in user space. x86-64 added a fast way to do this in a vsyscall. This adds a generic syscall for other architectures to make it a generic portable facility. I expect some of them will also implement it as a faster vsyscall. The cache is an optimization for the x86-64 vsyscall optimization. Since what the syscall returns is an approximation anyways and user space often wants very fast results it can be cached for some time. The norma methods to get this information in user space are relatively slow The vsyscall is in a better position to manage the cache because it has direct access to a fast time stamp (jiffies). For the generic syscall optimization it doesn't help much, but enforce a valid argument to keep programs portable I only added an i386 syscall entry for now. Other architectures can follow as needed. AK: Also added some cleanups from Andrew Morton Signed-off-by: Andi Kleen commit c08c820508233b424deab3302bc404bbecc6493a Author: Vojtech Pavlik Date: Tue Sep 26 10:52:28 2006 +0200 [PATCH] Add the vgetcpu vsyscall This patch adds a vgetcpu vsyscall, which depending on the CPU RDTSCP capability uses either the RDTSCP or CPUID to obtain a CPU and node numbers and pass them to the program. AK: Lots of changes over Vojtech's original code: Better prototype for vgetcpu() It's better to pass the cpu / node numbers as separate arguments to avoid mistakes when going from SMP to NUMA. Also add a fast time stamp based cache using a user supplied argument to speed things more up. Use fast method from Chuck Ebbert to retrieve node/cpu from GDT limit instead of CPUID Made sure RDTSCP init is always executed after node is known. Drop printk Signed-off-by: Vojtech Pavlik Signed-off-by: Andi Kleen commit a670fad0adb1cc6202a607d250f10bd380593905 Author: Vojtech Pavlik Date: Tue Sep 26 10:52:28 2006 +0200 [PATCH] Add initalization of the RDTSCP auxilliary values This patch adds initalization of the RDTSCP auxilliary values to CPU numbers to time.c. If RDTSCP is available, the MSRs are written with the respective values. It can be later used to initalize per-cpu timekeeping variables. AK: Some cleanups. Move externs into headers and fix CPU hotplug. Signed-off-by: Vojtech Pavlik Signed-off-by: Andi Kleen commit 81af4449af9c9b686a4eeeb00112614621655704 Author: Vojtech Pavlik Date: Tue Sep 26 10:52:28 2006 +0200 [PATCH] Add macros for rdtscp This patch adds macros for reading tsc via the RDTSCP instruction, as well as writing the auxilliary MSR read by RDTSCP to msr.h [AK: changed rdtscp definition for old binutils] Signed-off-by: Vojtech Pavlik Signed-off-by: Andi Kleen commit 248dcb2ffffe8f3e4a369556a68988788c208111 Author: Venkatesh Pallipadi Date: Tue Sep 26 10:52:27 2006 +0200 [PATCH] x86: i386/x86-64 Add nmi watchdog support for new Intel CPUs AK: This redoes the changes I temporarily reverted. Intel now has support for Architectural Performance Monitoring Counters ( Refer to IA-32 Intel Architecture Software Developer's Manual http://www.intel.com/design/pentium4/manuals/253669.htm ). This feature is present starting from Intel Core Duo and Intel Core Solo processors. What this means is, the performance monitoring counters and some performance monitoring events are now defined in an architectural way (using cpuid). And there will be no need to check for family/model etc for these architectural events. Below is the patch to use this performance counters in nmi watchdog driver. Patch handles both i386 and x86-64 kernels. Signed-off-by: Venkatesh Pallipadi Signed-off-by: Andi Kleen commit 1de84979dfc527c422abf63f27beabe43892989b Author: Andi Kleen Date: Tue Sep 26 10:52:27 2006 +0200 [PATCH] i386: Enable NMI watchdog by default I've had good experiences with having this on by default on x86-64. It turns nasty hangs into easier to debug oopses. Enable the local APIC wdog by default for systems newer than 2004. This comes from a strange compromise: according to arjan the reason it was off by default was some old IBM systems that corrupted registered when NMI happened in SMI. Can't remember more specific, but >= 2004 should avoid these. It's probably overly broad because most older systems should be ok (and the really old systems won't be supported by the local apic watchdog anyways) Signed-off-by: Andi Kleen commit 260d6790b6a2a0a048b7f96d154c2b49f1e6515a Author: Vivek Goyal Date: Tue Sep 26 10:52:27 2006 +0200 [PATCH] i386: Kdump i386 nmi event notification fix After a crash we should wait for NMI IPI event and not for external NMI or NMI watchdog tick. Signed-off-by: Vivek Goyal Signed-off-by: Andi Kleen Cc: Don Zickus Cc: Andi Kleen Signed-off-by: Andrew Morton commit 3f22c5789eb76fd9aabe4be37ba609c793f046f9 Author: Vivek Goyal Date: Tue Sep 26 10:52:27 2006 +0200 [PATCH] kdump x86_64 nmi event notification fix After a crash we should wait for NMI IPI event and not for external NMI or NMI watchdog tick. Signed-off-by: Vivek Goyal Signed-off-by: Andi Kleen Cc: Don Zickus Cc: Andi Kleen Signed-off-by: Andrew Morton commit c7c19f8e5e564fb1a354a065befc8a88a9bb08fd Author: Adrian Bunk Date: Tue Sep 26 10:52:27 2006 +0200 [PATCH] i386: make functions static This patch makes the following needlessly global functions static: - nmi_int.c: profile_exceptions_notify() - nmi_timer_int.c: profile_timer_exceptions_notify() Signed-off-by: Adrian Bunk Signed-off-by: Andi Kleen commit fac58550e80c307bf17cfa0dd544fca4eff120a5 Author: Andi Kleen Date: Tue Sep 26 10:52:27 2006 +0200 [PATCH] Fix up panic messages for different NMI panics When a unknown NMI happened the panic would claim a NMI watchdog timeout. Also it would check the variable set by nmi_watchdog=panic and panic then. Fix up the panic message to be generic Unconditionally panic on unknown NMI when panic on unknown nmi is enabled. Noticed by Jan Beulich Cc: jbeulich@novell.com Signed-off-by: Andi Kleen commit 4038f901cf102a40715b900984ed7540a9fa637f Author: Shaohua Li Date: Tue Sep 26 10:52:27 2006 +0200 [PATCH] i386/x86-64: Fix NMI watchdog suspend/resume Making NMI suspend/resume work with SMP. We use CPU hotplug to offline APs in SMP suspend/resume. Only BSP executes sysdev's .suspend/.resume method. APs should follow CPU hotplug code path. And: +From: Don Zickus Makes the start/stop paths of nmi watchdog more robust to handle the suspend/resume cases more gracefully. AK: I merged the two patches together Signed-off-by: Shaohua Li Signed-off-by: Andi Kleen Cc: Don Zickus Cc: Andi Kleen Signed-off-by: Andrew Morton commit c41c5cd3b20a2d81c30498f13b1527847a8fdf69 Author: Don Zickus Date: Tue Sep 26 10:52:27 2006 +0200 [PATCH] x86: x86 clean up nmi panic messages Clean up some of the output messages on the nmi error paths to make more sense when they are displayed. This is mainly a cosmetic fix and shouldn't impact any normal code path. Signed-off-by: Don Zickus Signed-off-by: Andi Kleen commit 8da5adda91df3d2fcc5300e68da491694c9af019 Author: Don Zickus Date: Tue Sep 26 10:52:27 2006 +0200 [PATCH] x86: Allow users to force a panic on NMI To quote Alan Cox: The default Linux behaviour on an NMI of either memory or unknown is to continue operation. For many environments such as scientific computing it is preferable that the box is taken out and the error dealt with than an uncorrected parity/ECC error get propogated. A small number of systems do generate NMI's for bizarre random reasons such as power management so the default is unchanged. In other respects the new proc/sys entry works like the existing panic controls already in that directory. This is separate to the edac support - EDAC allows supported chipsets to handle ECC errors well, this change allows unsupported cases to at least panic rather than cause problems further down the line. Signed-off-by: Don Zickus Signed-off-by: Andi Kleen commit e33e89ab1a8d295de0500b697f4f31c3ceee9aa2 Author: Don Zickus Date: Tue Sep 26 10:52:27 2006 +0200 [PATCH] x86: Add abilty to enable/disable nmi watchdog from procfs (update) Adds a new /proc/sys/kernel/nmi_watchdog call that will enable/disable the nmi watchdog. By entering a non-zero value here, a user can enable the nmi watchdog to monitor the online cpus in the system. By entering a zero value here, a user can disable the nmi watchdog and free up a performance counter which could then be utilized by the oprofile subsystem, otherwise oprofile may be short a counter when in use. Signed-off-by: Don Zickus Signed-off-by: Andi Kleen Cc: Andi Kleen Signed-off-by: Andrew Morton commit 407984f1af259b31957c7c05075a454a751bb801 Author: Don Zickus Date: Tue Sep 26 10:52:27 2006 +0200 [PATCH] x86: Add abilty to enable/disable nmi watchdog with sysctl Adds a new /proc/sys/kernel/nmi call that will enable/disable the nmi watchdog. Signed-off-by: Don Zickus Signed-off-by: Andi Kleen commit 2fbe7b25c8edaf2d10e6c1a4cc9f8afe714c4764 Author: Don Zickus Date: Tue Sep 26 10:52:27 2006 +0200 [PATCH] i386/x86-64: Remove un/set_nmi_callback and reserve/release_lapic_nmi functions Removes the un/set_nmi_callback and reserve/release_lapic_nmi functions as they are no longer needed. The various subsystems are modified to register with the die_notifier instead. Also includes compile fixes by Andrew Morton. Signed-off-by: Don Zickus Signed-off-by: Andi Kleen commit 957dc87c1bd849440f0eef27e2ade67387001e13 Author: Andi Kleen Date: Tue Sep 26 10:52:27 2006 +0200 [PATCH] Add ppoll/pselect syscalls Needed TIF_RESTORE_SIGMASK first Signed-off-by: Andi Kleen commit 1d001df19d5323e642ba8ac821c713675ebccd82 Author: Andi Kleen Date: Tue Sep 26 10:52:26 2006 +0200 [PATCH] Add TIF_RESTORE_SIGMASK We need TIF_RESTORE_SIGMASK in order to support ppoll() and pselect() system calls. This patch originally came from Andi, and was based heavily on David Howells' implementation of same on i386. I fixed a typo which was causing do_signal() to use the wrong signal mask. Signed-off-by: David Woodhouse Signed-off-by: Andi Kleen commit 3adbbcce9a49b900d4cc118cdccfdefa78bf1afb Author: Don Zickus Date: Tue Sep 26 10:52:26 2006 +0200 [PATCH] x86: Cleanup NMI interrupt path This patch cleans up the NMI interrupt path. Instead of being gated by if the 'nmi callback' is set, the interrupt handler now calls everyone who is registered on the die_chain and additionally checks the nmi watchdog, reseting it if enabled. This allows more subsystems to hook into the NMI if they need to (without being block by set_nmi_callback). Signed-off-by: Don Zickus Signed-off-by: Andi Kleen commit b7471c6da94d30d3deadc55986cc38d1ff57f9ca Author: Don Zickus Date: Tue Sep 26 10:52:26 2006 +0200 [PATCH] i386: Add SMP support on i386 to reservation framework This patch includes the changes to make the nmi watchdog on i386 SMP aware. A bunch of code was moved around to make it simpler to read. In addition, it is now possible to determine if a particular NMI was the result of the watchdog or not. This feature allows the kernel to filter out unknown NMIs easier. Signed-off-by: Don Zickus Signed-off-by: Andi Kleen commit f2802e7f571c05f9a901b1f5bd144aa730ccc88e Author: Don Zickus Date: Tue Sep 26 10:52:26 2006 +0200 [PATCH] Add SMP support on x86_64 to reservation framework This patch includes the changes to make the nmi watchdog on x86_64 SMP aware. A bunch of code was moved around to make it simpler to read. In addition, it is now possible to determine if a particular NMI was the result of the watchdog or not. This feature allows the kernel to filter out unknown NMIs easier. Signed-off-by: Don Zickus Signed-off-by: Andi Kleen commit cb9c448c661d40ce2efbce8e9c19cc4d420d8ccc Author: Don Zickus Date: Tue Sep 26 10:52:26 2006 +0200 [PATCH] i386: Utilize performance counter reservation framework in oprofile Incorporates the new performance counter reservation system in oprofile. Also cleans up a lot of the initialization code. The code original zero'd out every register associated with performance counters regardless if those registers were used or not. This causes issues with the nmi watchdog. Now oprofile tries to reserve registers and gives up if it can't get them. Cc: levon@movementarian.org Cc: oprofile-list@lists.sf.net Signed-off-by: Don Zickus Signed-off-by: Andi Kleen commit 828f0afda123a96ff4e8078f057a302f4b4232ae Author: Don Zickus Date: Tue Sep 26 10:52:26 2006 +0200 [PATCH] x86: Add performance counter reservation framework for UP kernels Adds basic infrastructure to allow subsystems to reserve performance counters on the x86 chips. Only UP kernels are supported in this patch to make reviewing easier. The SMP portion makes a lot more changes. Think of this as a locking mechanism where each bit represents a different counter. In addition, each subsystem should also reserve an appropriate event selection register that will correspond to the performance counter it will be using (this is mainly neccessary for the Pentium 4 chips as they break the 1:1 relationship to performance counters). This will help prevent subsystems like oprofile from interfering with the nmi watchdog. Signed-off-by: Don Zickus Signed-off-by: Andi Kleen commit b07f8915cda3fcd73b8b68075ba1e6cd0673365d Author: Andi Kleen Date: Tue Sep 26 10:52:26 2006 +0200 [PATCH] x86: Temporarily revert parts of the Core 2 nmi nmi watchdog support This makes merging easier. They are readded a few patches later. Signed-off-by: Andi Kleen commit 874c4fe389d1358f82c96dc9b5092fc5c7690604 Author: Andi Kleen Date: Tue Sep 26 10:52:26 2006 +0200 [PATCH] i386: Allow to use GENERICARCH for UP kernels There are some machines around (large xSeries or Unisys ES7000) that need physical IO-APIC destination mode to access all of their IO devices. This currently doesn't work in UP kernels as used in distribution installers. This patch allows to compile even UP kernels as GENERICARCH which allows to use physical or clustered APIC mode. Signed-off-by: Andi Kleen commit 9142e0c8396b25ed4cb549b5efa636065768ebe0 Author: Andi Kleen Date: Tue Sep 26 10:52:26 2006 +0200 [PATCH] i386: Update defconfig This is based on the x86-64 defconfig which works on a wide range of systems. Signed-off-by: Andi Kleen commit 265baba316ea258ca015aa79bc6f107cd9fce2b3 Author: Andi Kleen Date: Tue Sep 26 10:52:26 2006 +0200 [PATCH] Update defconfig Signed-off-by: Andi Kleen commit 47e777e02e7b21eaa4686a70069c9583c126aea8 Author: Kyungmin Park Date: Mon Sep 25 23:53:28 2006 +0000 [MTD ONENAND] Fix OneNAND probe - fix OneNAND probe whether OneNAND Sync. Burst read mode or not - fix OneNAND reset wait problem Signed-off-by: Kyungmin Park Signed-off-by: David Woodhouse commit d86d9b8cab45adf64e2ea8fe975bec3282b5de81 Author: Stephen Rothwell Date: Tue Sep 26 11:54:16 2006 +1000 [POWERPC] fix spin lock nesting in hvc_iseries We had nested spinlocks using the same flags variable, but it turns out that we don't need the nested locks at all (the lock protects a static buffer that we aren't using here), so just remove the extra locks. Spotted by Alexey Dobriyan. Signed-off-by: Stephen Rothwell Signed-off-by: Paul Mackerras commit 022d51b1b28d25d50935c39d7968fefe34102a9f Author: Linas Vepstas Date: Mon Sep 25 18:01:42 2006 -0500 [POWERPC] EEH failure to mark pci slot as frozen. Bug fix: when marking a slot as frozen, we forgot to mark pci device itself as frozen. (we did manage to mark the pci children, but forget the parent itself.) This is needed so that some device drivers can check the pci status in critical sections (e.g. in spin loops with interrupts disabled). Signed-off-by: Linas Vepstas Signed-off-by: Paul Mackerras commit 2cec1b452c2cb6abf0589f35b69ce09c3e612bb4 Author: Olaf Hering Date: Sun Sep 24 20:53:29 2006 +0200 [POWERPC] update powerpc defconfig files after libata kconfig breakage Update defconfig files after libata .config breakage sed -i 's/CONFIG_SCSI_SATA_/CONFIG_SATA_/;s/CONFIG_SCSI_SATA/CONFIG_ATA/' arch/powerpc/configs/*g Signed-off-by: Olaf Hering Signed-off-by: Paul Mackerras commit 0eab40ffadbdc601e5374e8df87f1d2490cd839e Author: Olaf Hering Date: Sun Sep 24 10:38:10 2006 +0200 [POWERPC] enable sysrq in pmac32_defconfig Enable sysrq also for pmac32 Signed-off-by: Olaf Hering Signed-off-by: Paul Mackerras commit 9e84b60ed87f5fe2dce10be2db1bfbb926a49e66 Author: Al Viro Date: Sat Sep 23 01:39:45 2006 +0100 [POWERPC] UPIO_TSI cleanup (le32_to_cpu(x) >> 8) & 0xff is a very odd way to spell (x >> 16) & 0xff, even if that code is hit only on ppc. The value is host-endian - we've got it from readl(), after all... Signed-off-by: Al Viro Signed-off-by: Paul Mackerras commit c32527a14049130eb29103b8da27520f07092371 Author: Al Viro Date: Sat Sep 23 01:37:41 2006 +0100 [POWERPC] rewrite mkprep and mkbugboot in sane C Signed-off-by: Al Viro Signed-off-by: Paul Mackerras commit 8c42ec2c99502f8a81076f24f57775b9c646351a Author: Al Viro Date: Sat Sep 23 01:37:41 2006 +0100 [POWERPC] maple/pci iomem annotations Signed-off-by: Al Viro Signed-off-by: Paul Mackerras commit 62034f03380a64c0144b6721f4a2aa55d65346c1 Author: Al Viro Date: Sat Sep 23 01:37:41 2006 +0100 [POWERPC] powerpc oprofile __user annotations Signed-off-by: Al Viro Signed-off-by: Paul Mackerras commit ed2bfcd2deeb0970654d06231f254c5d33140062 Author: Al Viro Date: Sat Sep 23 01:37:41 2006 +0100 [POWERPC] cell spufs iomem annotations Signed-off-by: Al Viro Signed-off-by: Paul Mackerras commit e45d6634e57315f09f4522365146da523453f859 Author: Al Viro Date: Sat Sep 23 01:37:41 2006 +0100 [POWERPC] NULL noise removal: spufs Signed-off-by: Al Viro Signed-off-by: Paul Mackerras commit 054e51a44bc63878430c30b137be20600bcf01e0 Author: Al Viro Date: Sat Sep 23 01:37:41 2006 +0100 [POWERPC] ppc math-emu needs -fno-builtin-fabs for math.c and fabs.c ... since they deal with internal function with that name. Signed-off-by: Al Viro Signed-off-by: Paul Mackerras commit 8306e511d2d95d912fe2d879a0fe115b4b6d360d Author: Kim Phillips Date: Mon Sep 25 21:55:19 2006 -0500 [POWERPC] update mpc8349_itx_defconfig and remove some debug settings update mpc8349_itx_defconfig and turn off some debug settings Signed-off-by: Kim Phillips Signed-off-by: Paul Mackerras commit 0ddd3e7d07d6adc4e905ee869a85db5184a02c17 Author: Anton Blanchard Date: Fri Sep 22 20:30:14 2006 +1000 [POWERPC] Always call cede in pseries dedicated idle loop The smt_snooze_delay logic changed a bit when the idle loops were consolidated. A value of 0 used to mean we always polled, now it means we always sleep. Instead of restoring the old behaviour, lets put a reasonable default in smt_snooze_delay. This means we spin for a bit (in case an external interrupt comes in) and then sleep. Also the pseries dedicated idle loop currently does not cede both threads in an SMT pair. The hypervisor wants us to call in so it can power manage, so lets do that. Signed-off-by: Anton Blanchard Signed-off-by: Paul Mackerras commit e12514650b167f48e952d50315fd492d01d42988 Author: Michael Ellerman Date: Wed Aug 2 10:48:50 2006 +1000 [POWERPC] Fix loop logic in irq_alloc_virt() There's a bug in irq_alloc_virt() if it's asked for more than 1 interrupt, if it can't find a slot it might look past the end of the irq_map. To be clear: the bug is that the continue affects the inner for loop, not the outer one, so i becomes j + 1 and then we continue the inner loop without checking if i is still <= limit. This fixes it. No one in the kernel actually calls this with count > 1, so it's not critical. Signed-off-by: Michael Ellerman Signed-off-by: Benjamin Herrenschmidt Signed-off-by: Paul Mackerras commit 94983cb7881dff760d724759105a6f67935b571d Author: David Woodhouse Date: Fri Sep 22 09:32:45 2006 +0100 [POWERPC] Fix PPC32 SECCOMP, unexport do_syscall_trace_{enter,leave} The secure_computing() call which automatically aborts a process if it tries to execute a syscall it shouldn't is much more useful if we actually do it _before_ the syscall, rather than afterwards. PPC64 got this right, but the original incorrect behaviour inherited from arch/ppc was preserved by ifdefs. Make it the same on PPC32 too. Also, I see no need to export do_syscall_trace_{leave,enter} on ppc32 -- they were only exported because the old do_syscall_trace() (which they replaced) used to be. Signed-off-by: David Woodhouse Signed-off-by: Paul Mackerras commit 4b9c876a812fd3e2b17e2d1c94082ee4cf31608f Author: David Woodhouse Date: Fri Sep 22 09:23:53 2006 +0100 [POWERPC] Fix audit syscall success/failure reporting on PowerPC Due to my stupidity, we were checking for the wrong bit in CCR when attempting to determine whether a syscall succeeded or not. Remedy the symptom, if not the cause. Signed-off-by: David Woodhouse Signed-off-by: Paul Mackerras commit 7e9f4b2d3e21e87c26025810413ef1592834e63b Author: Alan Stern Date: Mon Sep 18 16:28:06 2006 -0400 Driver core: Don't call put methods while holding a spinlock The klist utility routines currently call _put methods while holding a spinlock. This is of course illegal; a put routine could try to unregister a device and hence need to sleep. No problems have arisen until now because in many cases klist removals were done synchronously, so the _put methods were never actually used. In other cases we may simply have been lucky. This patch (as784) reworks the klist routines so that _put methods are called only _after_ the klist's spinlock has been released. Signed-off-by: Alan Stern Signed-off-by: Greg Kroah-Hartman commit 81107bf531d2524afbcd61f3b4ad57a71295d591 Author: Alan Stern Date: Mon Sep 18 16:24:28 2006 -0400 Driver core: Remove unneeded routines from driver core This patch (as783) simplifies the driver core slightly by removing four unnecessary _get and _put methods. It is vital that when a driver is removed from its bus's klist of registered drivers, or when a device is removed from a driver's klist of bound devices, that the klist updates complete synchronously. Otherwise the kernel might try binding an unregistered driver to a newly-registered device, or adding a device to the klist for a new driver before it has been removed from the old driver's klist. Since the removals must be synchronous, they don't need to update any reference counts. Hence the _get and _put methods can be dispensed with. Signed-off-by: Alan Stern Signed-off-by: Greg Kroah-Hartman commit f2eaae197f4590c4d96f31b09b0ee9067421a95c Author: Alan Stern Date: Mon Sep 18 16:22:34 2006 -0400 Driver core: Fix potential deadlock in driver core There is a potential deadlock in the driver core. It boils down to the fact that bus_remove_device() calls klist_remove() instead of klist_del(), thereby waiting until the reference count of the klist_node in the bus's klist of devices drops to 0. The refcount can't reach 0 so long as a modprobe process is trying to bind a new driver to the device being removed, by calling __driver_attach(). The problem is that __driver_attach() tries to acquire the device's parent's semaphore, but the caller of bus_remove_device() is quite likely to own that semaphore already. It isn't sufficient just to replace klist_remove() with klist_del(). Doing so runs the risk that the device would remain on the bus's klist of devices for some time, and so could be bound to another driver even after it was unregistered. What's needed is a new way to distinguish whether or not a device is registered, based on a criterion other than whether its klist_node is linked into the bus's klist of devices. That way driver binding can fail when the device is unregistered, even if it is still linked into the klist. This patch (as782) implements the solution, by adding a new bitflag to indiate when a struct device is registered, by testing the flag before allowing a driver to bind a device, and by changing the definition of the device_is_registered() inline. Signed-off-by: Alan Stern Signed-off-by: Greg Kroah-Hartman commit 0f397f865076e3471ec884ee73ad5e34165fac2a Author: Greg Kroah-Hartman Date: Tue Jul 18 10:59:59 2006 -0700 PCI: enable driver multi-threaded probe This provides a build and run-time option to turn on multhreaded probe for all PCI drivers. It can cause bad problems on multi-processor machines that take a while to find their root disks, and play havoc on machines that don't use persistant device names for block or network devices. But it can cause speedups on some machines, my tiny laptop's boot goes up by 0.4 seconds, and my desktop boots up several seconds faster. Use at your own risk!!! Signed-off-by: Greg Kroah-Hartman commit d779249ed4cb3b50690de6de8448829d65a1cd08 Author: Greg Kroah-Hartman Date: Tue Jul 18 10:59:59 2006 -0700 Driver Core: add ability for drivers to do a threaded probe This adds the infrastructure for drivers to do a threaded probe, and waits at init time for all currently outstanding probes to complete. A new kernel thread will be created when the probe() function for the driver is called, if the multithread_probe bit is set in the driver saying it can support this kind of operation. I have tested this with USB and PCI, and it works, and shaves off a lot of time in the boot process, but there are issues with finding root boot disks, and some USB drivers assume that this can never happen, so it is currently not enabled for any bus type. Individual drivers can enable this right now if they wish, and bus authors can selectivly turn it on as well, once they determine that their subsystem will work properly with it. Signed-off-by: Greg Kroah-Hartman commit f20a9ead0d005fbeeae3fc21a96f9bf197ac1c1c Author: Andrew Morton Date: Mon Aug 14 22:43:23 2006 -0700 sysfs: add proper sysfs_init() prototype Don't be crufty. Mark it __must_check too. Cc: "Randy.Dunlap" Signed-off-by: Andrew Morton Signed-off-by: Greg Kroah-Hartman commit f86db396ff455ed586751d21816a1ebd431264e5 Author: Andrew Morton Date: Mon Aug 14 22:43:20 2006 -0700 drivers/base: check errors Add lots of return-value checking. : fix bus_rescan_devices()] Cc: "Randy.Dunlap" Signed-off-by: Cornelia Huck Signed-off-by: Andrew Morton Signed-off-by: Greg Kroah-Hartman commit 370226449ced358e52d198081120826ef52c166b Author: Brian Walsh Date: Mon Aug 14 22:43:19 2006 -0700 drivers/base: Platform notify needs to occur before drivers attach to the device The platform_notify call for Arm and PPC architectures needs to be called before the driver attaches to the device. The problem only presents itself when hotplugging certain devices while the driver is already loaded. Signed-off-by: Brian Walsh Signed-off-by: Andrew Morton Signed-off-by: Greg Kroah-Hartman commit 8a6914ab7c95d471c23b42268aa8e1f55b3d2fdb Author: Andrew Morton Date: Mon Aug 14 22:43:19 2006 -0700 v4l-dev2: handle __must_check We get hundreds of these: include/media/v4l2-dev.h:348: warning: ignoring return value of 'class_device_create_file', declared with attribute warn_unused_result Handle it, and propagate the __must_check back a level. Signed-off-by: Andrew Morton Signed-off-by: Greg Kroah-Hartman commit cebc04ba9aeb3a646cc746300421fc0e5aa4f253 Author: Andrew Morton Date: Mon Aug 14 22:43:18 2006 -0700 add CONFIG_ENABLE_MUST_CHECK Those 1500 warnings can be a bit of a pain. Add a config option to shut them up. Signed-off-by: Andrew Morton Signed-off-by: Greg Kroah-Hartman commit 4a7fb6363f2d1a6c09a10253937f672f3c7929e1 Author: Andrew Morton Date: Mon Aug 14 22:43:17 2006 -0700 add __must_check to device management code We're getting a lot of crashes in the sysfs/kobject/device/bus/class code and they're very hard to diagnose. I'm suspecting that in some cases this is because drivers aren't checking return values and aren't handling errors correctly. So the code blithely blunders on and crashes later in very obscure ways. There's just no reason to ignore errors which can and do occur. So the patch sprinkles __must_check all over these APIs. Causes 1,513 new warnings. Heh. Signed-off-by: Andrew Morton Signed-off-by: Greg Kroah-Hartman commit 35acfdd7253025e8441883fd8f879f5240844f95 Author: Yoichi Yuasa Date: Sat Jul 15 01:30:11 2006 +0900 Driver core: fixed add_bind_files() definition When CONFIG_HOTPLUG is n, add_bind_files() definition is wrong. This patch has fixed it. Signed-off-by: Yoichi Yuasa Signed-off-by: Greg Kroah-Hartman commit 9de72ee59029087fc8300633113c75a5fe73a7b8 Author: Dmitry Torokhov Date: Sat Jul 15 00:31:54 2006 -0400 Driver core: fix comments in drivers/base/power/resume.c Driver core: fix comments in drivers/base/power/resume.c Signed-off-by: Dmitry Torokhov Signed-off-by: Greg Kroah-Hartman commit 995982ca79d9262869513948ec7c540f32035491 Author: Randy.Dunlap Date: Mon Jul 10 23:05:25 2006 -0700 sysfs_remove_bin_file: no return value, dump_stack on error Make sysfs_remove_bin_file() void. If it detects an error, printk the file name and call dump_stack(). sysfs_hash_and_remove() now returns an error code indicating its success or failure so that sysfs_remove_bin_file() can know success/failure. Convert the only driver that checked the return value of sysfs_remove_bin_file(). Signed-off-by: Randy Dunlap Signed-off-by: Greg Kroah-Hartman commit 10188012daa586ae7fcbef272e4db4f404741adf Author: Randy Dunlap Date: Tue Jul 11 20:49:41 2006 -0700 kobject: must_check fixes Check all __must_check warnings in lib/kobject.c Signed-off-by: Randy Dunlap Signed-off-by: Greg Kroah-Hartman commit 2589f1887b0bf9f08ec3d7f3c5705ccb7c628076 Author: Greg Kroah-Hartman Date: Tue Sep 19 09:39:19 2006 -0700 Driver core: add ability for devices to create and remove bin files Makes it easier for devices to create and remove binary attribute files so they don't have to call directly into sysfs. This is needed to help with the conversion from struct class_device to struct device. Signed-off-by: Greg Kroah-Hartman commit c47ed219ba81632595e9f02e27318151fec16c9e Author: Greg Kroah-Hartman Date: Wed Sep 13 15:34:05 2006 +0200 Class: add support for class interfaces for devices When moving class_device usage over to device, we need to handle class_interfaces properly with devices. This patch adds that support. Signed-off-by: Greg Kroah-Hartman commit c205ef4880273d2de4ee5388d4e52227ff688cc4 Author: Greg Kroah-Hartman Date: Mon Aug 7 22:19:37 2006 -0700 Driver core: create devices/virtual/ tree This change creates a devices/virtual/CLASS_NAME tree for struct devices that belong to a class, yet do not have a "real" struct device for a parent. It automatically creates the directories on the fly as needed. Cc: Kay Sievers Signed-off-by: Greg Kroah-Hartman commit a2de48cace5d0993da6cfa28b276ae724dc3569b Author: Greg Kroah-Hartman Date: Mon Jul 3 14:31:12 2006 -0700 Driver core: add device_rename function The network layer needs this to convert to using struct device instead of a struct class_device. Signed-off-by: Greg Kroah-Hartman commit 2620efef7029bb040430f50f0fc148f2d5e002ad Author: Greg Kroah-Hartman Date: Wed Jun 28 16:19:58 2006 -0700 Driver core: add ability for classes to handle devices properly This adds two new callbacks to the class structure: int (*dev_uevent)(struct device *dev, char **envp, int num_envp, char *buffer, int buffer_size); void (*dev_release)(struct device *dev); And one pointer: struct device_attribute * dev_attrs; which all corrispond with the same thing as the "normal" class devices do, yet this is for when a struct device is bound to a class. Someday soon, struct class_device will go away, and then the other fields in this structure can be removed too. But this is necessary in order to get the transition to work properly. Tested out on a network core patch that converted it to use struct device instead of struct class_device. Signed-off-by: Greg Kroah-Hartman commit 64bb5d2c116478dba7501d2acf078ed74ba30c1f Author: Greg Kroah-Hartman Date: Wed Jun 28 16:19:58 2006 -0700 Driver core: allow devices in classes to have no parent This fixes an oops when a device is attached to a class, yet has no "parent" device. An example of this would be the "lo" device in the network core. We should create a "virtual" subdirectory under /sys/devices/ for these, but no one seems to agree on a proper name for it yet... Oh, and update my copyright on the driver core. Signed-off-by: Greg Kroah-Hartman commit de0ff00d723fd821d372496e2c084805644aa5e1 Author: Greg Kroah-Hartman Date: Tue Jun 27 00:06:09 2006 -0700 Driver core: add groups support to struct device This is needed for the network class devices in order to be able to convert over to use struct device. Signed-off-by: Greg Kroah-Hartman commit 386415d88b1ae50304f9c61aa3e0db082fa90428 Author: David Brownell Date: Sun Sep 3 13:16:45 2006 -0700 PM: platform_bus and late_suspend/early_resume Teach platform_bus about the new suspend_late/resume_early PM calls, issued with IRQs off. Do we really need sysdev and friends any more, or can janitors start switching its users over to platform_device so we can do a minor code-ectomy? Signed-off-by: David Brownell Signed-off-by: Greg Kroah-Hartman commit bb84c89f94851161f387285d0a449b4a3f29f4df Author: Pavel Machek Date: Thu Aug 31 22:02:11 2006 -0700 PM: device_suspend/resume may sleep This adds warning when someone tries them from atomic context. Signed-off-by: Pavel Machek Signed-off-by: Andrew Morton Signed-off-by: Greg Kroah-Hartman commit 84ed64ee8f7dfd89f59857124dbeb8a350c6e03d Author: Rafael J. Wysocki Date: Wed Aug 30 23:38:06 2006 +0200 PM: add /sys/power documentation to Documentation/ABI The file sysfs-power that documents the interface in the /sys/power/ directory is added to Documentation/ABI/testing. Signed-off-by: Rafael J. Wysocki Acked-by: Pavel Machek Signed-off-by: Andrew Morton Signed-off-by: Greg Kroah-Hartman commit 1d3a82af45428c5e8deaa119cdeb79611ae46371 Author: David Brownell Date: Wed Aug 30 14:09:47 2006 -0700 PM: no suspend_prepare() phase Remove the new suspend_prepare() phase. It doesn't seem very usable, has never been tested, doesn't address fault cleanup, and would need a sibling resume_complete(); plus there are no real use cases. It could be restored later if those issues get resolved. Signed-off-by: David Brownell Cc: Linus Torvalds Signed-off-by: Greg Kroah-Hartman commit 1ebfd79eb46a89eacf3cbdf4a463d5d572d3557b Author: Pavel Machek Date: Wed Aug 30 13:50:27 2006 -0700 PM: schedule /sys/devices/.../power/state for removal This lists the /sys/devices/.../power/state file, and its internal support, as due for removal next year. Signed-off-by: Pavel Machek Signed-off-by: David Brownell Signed-off-by: Greg Kroah-Hartman commit 2bca293e56b6a8cd16bb6e70a09b2adac9c723b5 Author: David Brownell Date: Wed Aug 30 13:54:36 2006 -0700 PM: add kconfig option for deprecated .../power/state files Add a new PM_SYSFS_DEPRECATED config option to control whether or not the /sys/devices/.../power/state files are provided. This will make it easier to get rid of that mechanism when the time comes, and to verify that userspace tools work right without it. Signed-off-by: David Brownell Acked-by: Pavel Machek Signed-off-by: Greg Kroah-Hartman commit 047bda36150d11422b2c7bacca1df324c909c0b3 Author: David Brownell Date: Wed Aug 30 14:12:48 2006 -0700 PM: update docs for writing .../power/state Updates to match current code: - Make writes to the /sys/devices/.../power/state files fail cleanly if the device requires the irqs-off call variants. - Fix comments describing the /sys/devices/.../power/state file writes to match the code; the last several releases have invalidated the previous text. Signed-off-by: David Brownell Signed-off-by: Greg Kroah-Hartman commit 4fc0840006bf3df69dcf92397fdcaf85a542f939 Author: David Brownell Date: Thu Aug 10 16:38:28 2006 -0700 updated Documentation/power/devices.txt This turned into a rewrite of Documentation/power/devices.txt: - Provide more of the "big picture" - Fixup some of the horribly ancient/obsolete description of device suspend() semantics; lots of text just got deleted. - Add a decent description of PM_EVENT_* codes, including the new PRETHAW code needed in some swsusp scenarios. - Describe the new PM factorization from Linus: * class suspend, current suspend, then suspend_late * NOT suspend_prepare, it wasn't really usable * resume_early, current resume, class resume. - Updates power/state docs to be correct, and deprecate its usage except for driver testing. Signed-off-by: David Brownell Signed-off-by: Greg Kroah-Hartman commit f1cc0a894c963923b766eb2d455747495e6e982d Author: David Brownell Date: Mon Aug 14 23:11:08 2006 -0700 PM: issue PM_EVENT_PRETHAW This patch is the first of this series that should actually change any behavior ... by issuing the new event, now tha the rest of the kernel is prepared to receive it. This converts the PM core to issue the new PRETHAW message, which the rest of the kernel is now ready to receive. Signed-off-by: David Brownell Cc: "Rafael J. Wysocki" Cc: Pavel Machek Signed-off-by: Andrew Morton Signed-off-by: Greg Kroah-Hartman commit 185849991d592497e43bcd264c6152af1261ffe2 Author: David Brownell Date: Mon Aug 14 23:11:06 2006 -0700 PM: USB HCDs use PM_EVENT_PRETHAW This teaches several USB host controller drivers to treat PRETHAW as a chip reset since the controller, and all devices connected to it, are no longer in states compatible with how the snapshotted suspend() left them. Signed-off-by: David Brownell Cc: "Rafael J. Wysocki" Cc: Pavel Machek Signed-off-by: Andrew Morton Signed-off-by: Greg Kroah-Hartman commit c78a7c2dd913e68ce853d43edaba14eac91b2fd1 Author: David Brownell Date: Mon Aug 14 23:11:06 2006 -0700 PM: video drivers and PM_EVENT_PRETHAW Video drivers which explicitly test for messages reporting PM_EVENT_FREEZE will now handle PM_EVENT_PRETHAW the same way. Signed-off-by: David Brownell Cc: "Rafael J. Wysocki" Cc: Pavel Machek Signed-off-by: Andrew Morton Signed-off-by: Greg Kroah-Hartman commit b887d2e63c8857149ef59eb6e05adfaa018b8ebf Author: David Brownell Date: Mon Aug 14 23:11:05 2006 -0700 PM: PCI and IDE handle PM_EVENT_PRETHAW Convert some framework code to handle the new PRETHAW message. - IDE just treats it like a FREEZE. - The pci_choose_state() thingie still doesn't use PCI_D0 when it gets a FREEZE (and now PRETHAW) event, which seems rather buglike but wasn't something to change with this patch. Signed-off-by: David Brownell Cc: "Rafael J. Wysocki" Cc: Pavel Machek Signed-off-by: Andrew Morton Signed-off-by: Greg Kroah-Hartman commit 82bb67f2c1f9ef438c56ac24e7dca027fe7289b5 Author: David Brownell Date: Mon Aug 14 23:11:04 2006 -0700 PM: define PM_EVENT_PRETHAW This adds a new pm_message_t event type to use when preparing to restore a swsusp snapshot. Devices that have been initialized by Linux after resume (rather than left in power-up-reset state) may need to be reset; this new event type give drivers the chance to do that. The drivers that will care about this are those which understand more hardware states than just "on" and "reset", relying on hardware state during resume() methods to be either the state left by the preceding suspend(), or a power-lost reset. The best current example of this class of drivers are USB host controller drivers, which currently do not work through swsusp when they're statically linked. When the swsusp freeze/thaw mechanism kicks in, a troublesome third state could exist: one state set up by a different kernel instance, before a snapshot image is resumed. This mechanism lets drivers prevent that state. Signed-off-by: David Brownell Cc: "Rafael J. Wysocki" Cc: Pavel Machek Signed-off-by: Andrew Morton Signed-off-by: Greg Kroah-Hartman commit 8b4b8a24e4e49dc9fe36d4d079f6d2c23f942b03 Author: David Brownell Date: Mon Aug 14 23:11:03 2006 -0700 fix broken/dubious driver suspend() methods Small driver suspend() fixes in preparation for the PRETHAW events: - Only compare message events for equality against PM_EVENT_* codes; not against integers, or using greater/less-than comparisons. (PM_EVENT_* should really become a __bitwise thing.) - Explicitly test for SUSPEND events (rather than not-something-else) before suspending devices. - Removes more of the confusion between a pm_message_t (wraps event code) and a "state" ... suspend() originally took a target system state. These updates are correct and appropriate even without new PM_EVENT codes. benh: "I think in the Mesh case, we should handle the freeze case as well or we might get wild DMA." Signed-off-by: David Brownell Acked-by: Pavel Machek Cc: Greg KH Cc: Paul Mackerras Acked-by: Benjamin Herrenschmidt Cc: Mauro Carvalho Chehab Cc: James Bottomley Signed-off-by: Andrew Morton Signed-off-by: Greg Kroah-Hartman commit 8f4bcc20ee39f9c087f3532672e3e5f086e92281 Author: David Brownell Date: Sun Jul 9 16:28:28 2006 -0700 make suspend quieter Fix a goof in Linus' recent PM API updates: don't emit any messages in the typical NOP "already suspended it" late suspend case. Signed-off-by: David Brownell Acked-by: Pavel Machek Signed-off-by: Greg Kroah-Hartman commit cbd69dbbf1adfce6e048f15afc8629901ca9dae5 Author: Linus Torvalds Date: Sat Jun 24 14:50:29 2006 -0700 Suspend changes for PCI core Changes the PCI core to use the new suspend infrastructure changes. Signed-off-by: Linus Torvalds Signed-off-by: Greg Kroah-Hartman commit 7c8265f51073bc8632a99de78d5fd19117ed78b7 Author: Linus Torvalds Date: Sat Jun 24 14:50:29 2006 -0700 Suspend infrastructure cleanup and extension Allow devices to participate in the suspend process more intimately, in particular, allow the final phase (with interrupts disabled) to also be open to normal devices, not just system devices. Also, allow classes to participate in device suspend. Signed-off-by: Linus Torvalds Signed-off-by: Greg Kroah-Hartman commit ceeee1fb2897651b434547eb26d93e6d2ff5a1a5 Author: Greg Kroah-Hartman Date: Tue Apr 9 12:14:34 2002 -0700 SYSFS: allow sysfs_create_link to create symlinks in the root of sysfs This is needed to make the compatible link for /sys/block in the future. Signed-off-by: Greg Kroah-Hartman commit 6468b3afa7bcd9b0abc5997e5330d78f0bb6626a Author: Randy Dunlap Date: Thu Jul 20 08:16:42 2006 -0700 Debugfs: kernel-doc fixes for debugfs Fix kernel-doc and typos/spellos in fs/debugfs/. Signed-off-by: Randy Dunlap Signed-off-by: Greg Kroah-Hartman commit eea3f8911f34001d2450a272c2d02f175279b53c Author: Juha Yrjölä Date: Thu Aug 3 19:06:25 2006 +0300 sysfs: Make poll behaviour consistent When no events have been reported by sysfs_notify(), sd->s_events was previously set to zero. The initial value for new readers is also zero, so poll was blocking, regardless of whether the attribute was read by the process or not. Make poll behave consistently by setting the initial value of sd->s_events to non-zero. Signed-off-by: Juha Yrjola Signed-off-by: Greg Kroah-Hartman commit ab7d7371acc68fa9130b079a9ba879191202035f Author: Miguel Ojeda Sandonis Date: Wed Sep 13 15:34:05 2006 +0200 Driver core: add const to class_create Adds const to class_create second parameter, because: struct class { const char * name; /*...*/ } Signed-off-by: Miguel Ojeda Sandonis Signed-off-by: Greg Kroah-Hartman commit 5cbe5f8a5897470698222ac9924429056e57d84c Author: Greg Kroah-Hartman Date: Thu Aug 10 01:19:19 2006 -0400 device_create(): make fmt argument 'const char *' Signed-off-by: Greg Kroah-Hartman commit ddd5d35a8f7c1924049e8b6877b3177c1787e6a3 Author: Dmitry Torokhov Date: Thu Aug 10 01:18:18 2006 -0400 class_device_create(): make fmt argument 'const char *' Signed-off-by: Dmitry Torokhov Signed-off-by: Greg Kroah-Hartman commit d81d9d6b9f7d0af7d4341951d48d296681878f7a Author: Kay Sievers Date: Sun Aug 13 06:17:09 2006 +0200 deprecate PHYSDEV* keys deprecate PHYSDEV* values in the uevent environment These values are no longer needed and inconsistent with the stacking of class devices. The event environment should not carry properties of a parent device. The key PHYSDEVDRIVER is available as DRIVER, PHYDEVBUS is indentical SUBSYSTEM. Class devices should not carry any of these values. Signed-off-by: Kay Sievers Signed-off-by: Greg Kroah-Hartman commit 6d99eb33f55879bc71ddba077e09cf8a61129707 Author: jens m. noedler Date: Sun Sep 10 18:46:33 2006 +0200 Documentation/ABI: devfs is not obsolete, but removed! Signed-off-by: Jens M. Noedler Signed-off-by: Greg Kroah-Hartman commit 29da9f6d9cc3685ae7f6c8b817f6ed8864c78a4c Author: Jeff Garzik Date: Mon Sep 25 21:56:33 2006 -0400 [libata] Fix oops introduced in non-uniform port handling fix Noticed by several people. Signed-off-by: Jeff Garzik commit b7de567bf3187ccf776e2fe0e241593cdcba5459 Author: Jonathan Corbet Date: Mon Sep 25 16:25:37 2006 -0700 [PATCH] VIDIOC_ENUMSTD bug The v4l2 API documentation for VIDIOC_ENUMSTD says: To enumerate all standards applications shall begin at index zero, incrementing by one until the driver returns EINVAL. The actual code, however, tests the index this way: if (index<=0 || index >= vfd->tvnormsize) { ret=-EINVAL; So any application which passes in index=0 gets EINVAL right off the bat - and, in fact, this is what happens to mplayer. So I think the following patch is called for, and maybe even appropriate for a 2.6.18.x stable release. Signed-off-by: Jonathan Corbet Cc: Mauro Carvalho Chehab Cc: Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 1cc5f7142eca352109895fe20b1fc6405dd17727 Author: Ed Swierk Date: Mon Sep 25 16:25:36 2006 -0700 [PATCH] load_module: no BUG if module_subsys uninitialized Invoking load_module() before param_sysfs_init() is called crashes in mod_sysfs_setup(), since the kset in module_subsys is not initialized yet. In my case, net-pf-1 is getting modprobed as a result of hotplug trying to create a UNIX socket. Calls to hotplug begin after the topology_init initcall. Another patch for the same symptom (module_subsys-initialize-earlier.patch) moves param_sysfs_init() to the subsys initcalls, but this is still not early enough in the boot process in some cases. In particular, topology_init() causes /sbin/hotplug to run, which requests net-pf-1 (the UNIX socket protocol) which can be compiled as a module. Moving param_sysfs_init() to the postcore initcalls fixes this particular race, but there might well be other cases where a usermodehelper causes a module to load earlier still. The patch makes load_module() return an error rather than crashing the kernel if invoked before module_subsys is initialized. Cc: Mark Huang Cc: Greg KH Cc: Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit bfa0e9a07cd31f3858239dbc93011b82780acf4b Author: keith mannthey Date: Mon Sep 25 16:25:35 2006 -0700 [PATCH] i386: fix flat mode numa on a real numa system If there is only 1 node in the system cpus should think they are apart of some other node. If cases where a real numa system boots the Flat numa option make sure the cpus don't claim to be apart on a non-existent node. Signed-off-by: Keith Mannthey Cc: Andy Whitcroft Cc: Dave Hansen Cc: Andi Kleen Cc: Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 3212fe1594e577463bc8601d28aa008f520c3377 Author: KAMEZAWA Hiroyuki Date: Mon Sep 25 16:25:31 2006 -0700 [PATCH] cpu to node relationship fixup: map cpu to node Assume that a cpu is *physically* offlined at boot time... Because smpboot.c::smp_boot_cpu_map() canoot find cpu's sapicid, numa.c::build_cpu_to_node_map() cannot build cpu<->node map for offlined cpu. For such cpus, cpu_to_node map should be fixed at cpu-hot-add. This mapping should be done before cpu onlining. This patch also handles cpu hotremove case. Signed-off-by: KAMEZAWA Hiroyuki Cc: "Luck, Tony" Cc: Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 08992986497471ce575f23796268fb1b50b5c2ab Author: KAMEZAWA Hiroyuki Date: Mon Sep 25 16:25:21 2006 -0700 [PATCH] cpu to node relationship fixup: acpi_map_cpu2node Problem description: We have additional_cpus= option for allocating possible_cpus. But nid for possible cpus are not fixed at boot time. cpus which is offlined at boot or cpus which is not on SRAT is not tied to its node. This will cause panic at cpu onlining. Usually, pxm_to_nid() mapping is fixed at boot time by SRAT. But, unfortunately, some system (my system!) do not include full SRAT table for possible cpus. (Then, I use additiona_cpus= option.) For such possible cpus, pxm<->nid should be fixed at hot-add. We now have acpi_map_pxm_to_node() which is also used at boot. It's suitable here. Signed-off-by: KAMEZAWA Hiroyuki Cc: "Luck, Tony" Cc: Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 25981de5b836581364612a4b1fe27db3b5d1f861 Author: Michael Hanselmann Date: Mon Sep 25 16:25:07 2006 -0700 [PATCH] backlight: fix oops in __mutex_lock_slowpath during head /sys/class/graphics/fb0/* Seems like not all drivers use the framebuffer_alloc() function and won't have an initialized mutex. But those don't have a backlight, anyway. Signed-off-by: Michael Hanselmann Cc: Olaf Hering Cc: "Antonino A. Daplas" Cc: Daniel R Thompson Cc: Jon Smirl Cc: Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit f3ef9ead31ae995251b420ac98398bd7545bf4e1 Author: David Rientjes Date: Mon Sep 25 16:24:57 2006 -0700 [PATCH] do not free non slab allocated per_cpu_pageset Stops panic associated with attempting to free a non slab-allocated per_cpu_pageset. Signed-off-by: David Rientjes Acked-by: Christoph Lameter Cc: Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 24fd425edd53ea580cad917e825c1f6715e9b939 Author: keith mannthey Date: Mon Sep 25 16:24:39 2006 -0700 [PATCH] i386 bootioremap / kexec fix With CONFIG_PHYSICAL_START set to a non default values the i386 boot_ioremap code calculated its pte index wrong and users of boot_ioremap have their areas incorrectly mapped (for me SRAT table not mapped during early boot). This patch removes the addr < BOOT_PTE_PTRS constraint. [ Keith says this is applicable to 2.6.16 and 2.6.17 as well ] Signed-off-by: Keith Mannthey Cc: Vivek Goyal Cc: Dave Hansen Cc: Cc: Adrian Bunk Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 0b16f21f144010aa627c58b3a33be49ebfd685dc Author: Peter Zijlstra Date: Mon Sep 25 16:24:23 2006 -0700 [PATCH] rtc: lockdep fix/workaround BUG: warning at kernel/lockdep.c:1816/trace_hardirqs_on() (Not tainted) [] show_trace_log_lvl+0x58/0x171 [] show_trace+0xd/0x10 [] dump_stack+0x19/0x1b [] trace_hardirqs_on+0xa2/0x11e [] _spin_unlock_irq+0x22/0x26 [] rtc_get_rtc_time+0x32/0x176 [] hpet_rtc_interrupt+0x92/0x14d [] handle_IRQ_event+0x20/0x4d [] __do_IRQ+0x94/0xef [] do_IRQ+0x9e/0xbd [] common_interrupt+0x25/0x2c DWARF2 unwinder stuck at common_interrupt+0x25/0x2c Signed-off-by: Peter Zijlstra Acked-by: Ingo Molnar Cc: Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit c0ba7e5147829eaa607351997bccd06200a8db12 Author: Ian Kent Date: Mon Sep 25 16:24:16 2006 -0700 [PATCH] autofs4: zero timeout prevents shutdown If the timeout of an autofs mount is set to zero then umounts are disabled. This works fine, however the kernel module checks the expire timeout and goes no further if it is zero. This is not the right thing to do at shutdown as the module is passed an option to expire mounts regardless of their timeout setting. This patch allows autofs to honor the force expire option. Signed-off-by: Ian Kent Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit c32a8fd7cb33f30bcd855188dc8e243b144c5cee Author: Henne Date: Mon Sep 25 22:00:46 2006 +0200 [PATCH] ata-piix: fixes kerneldoc error Fixes an error in kerneldoc of ata_piix.c. Signed-off-by: Henrik Kretzschmar Signed-off-by: Jeff Garzik commit cc3afe6f856054a3752ef2b3ccc5eebf33bd5024 Author: Al Viro Date: Sat Sep 23 01:33:40 2006 +0100 [PATCH] more s2io __iomem annotations Signed-off-by: Al Viro Signed-off-by: Jeff Garzik commit 0c5649af3accc7f2941c5eebcc613e1a81b03448 Author: Al Viro Date: Sat Sep 23 01:32:40 2006 +0100 [PATCH] restore __iomem annotations in e1000 Signed-off-by: Al Viro Signed-off-by: Jeff Garzik commit ee705dba75c2f7daae5403ad4599b6738e2da7a0 Author: Al Viro Date: Sat Sep 23 01:28:17 2006 +0100 [PATCH] 64bit bugs in s2io le32_to_cpu() on 64bit values Signed-off-by: Al Viro Signed-off-by: Jeff Garzik commit 8a8e447b2aa1f9139d0bfc94a2a3426be9c8d40a Author: Jay Vosburgh Date: Fri Sep 22 21:56:15 2006 -0700 [PATCH] bonding: Fix primary selection error at enslavement time At enslavement time, the primary slave might not be activated if there is already an active slave and the new slave is the primary. Replaced complicated logic with a call to bond_select_active_slave(), which does the right thing. Fixes http://bugzilla.kernel.org/show_bug.cgi?id=6378 Signed-off-by: Jay Vosburgh Signed-off-by: Jeff Garzik commit 89cc76f95af3608d83a1d70b3c76b71ffe66e1f7 Author: Jay Vosburgh Date: Fri Sep 22 21:55:32 2006 -0700 [PATCH] bonding: Don't mangle LACPDUs Fixed handling of 802.3ad LACPDUs. Do not byte swap data in place in the packet. Updated nomenclature of "__ntohs_lacpdu" to be "htons"; it was previously used for both ntohs and htons operations, but only called ntohs functions. Signed-off-by: Jay Vosburgh Signed-off-by: Jeff Garzik commit f5b2b966f032f22d3a289045a5afd4afa09f09c6 Author: Jay Vosburgh Date: Fri Sep 22 21:54:53 2006 -0700 [PATCH] bonding: Validate probe replies in ARP monitor Add logic to check ARP request / reply packets used for ARP monitor link integrity checking. The current method simply examines the slave device to see if it has sent and received traffic; this can be fooled by extraneous traffic. For example, if multiple hosts running bonding are behind a common switch, the probe traffic from the multiple instances of bonding will update the tx/rx times on each other's slave devices. Signed-off-by: Jay Vosburgh Signed-off-by: Jeff Garzik commit 70298705bb29fb7982b85089adf17cd37b94baa7 Author: jamal Date: Fri Sep 22 21:54:37 2006 -0700 [PATCH] bonding: Don't release slaves when master is admin down When a bonding netdevice is admin-ed down it loses the slaves attributes (set via ifenslave). This is not consistent with other behavior of netdevices (example a qdisc attached to a netdevice doesnt disappear or an attached IP address etc). The included patch fixes this. Ive tested by ifenslaving, downing the bond, checking /proc and making sure it still has the slaves, up-ing the bond and making sure things continue to work. Jay/Bonding folks if you are ok with it, just ACK it or include it in your tree etc. Otherwise we can discuss. Acked-by: Jay Vosburgh Signed-off-by: Jeff Garzik commit 0b680e753724d31a9c45f059d1aad29df54584a1 Author: Jay Vosburgh Date: Fri Sep 22 21:54:10 2006 -0700 [PATCH] bonding: Add priv_flag to avoid event mishandling Add priv_flag to specifically identify bonding-involved devices. Needed because IFF_MASTER is an unreliable identifier (vlan interfaces above bonding will inherit IFF_MASTER). Misidentification of devices would cause notifier events for other devices to be erroneously processed by bonding, causing various havoc. Bug discovered by Martin Papik ; this patch is modified from his original. Signed-off-by: Martin Papik Signed-off-by: Jay Vosburgh Signed-off-by: Jeff Garzik commit 54ef313714070b397d3857289f0fd099b7643631 Author: Jay Vosburgh Date: Fri Sep 22 21:53:39 2006 -0700 [PATCH] bonding: Handle large hard_header_len The bonding driver fails to adjust its hard_header_len when enslaving interfaces. Whenever an interface with a hard_header_len greater than the ETH_HLEN default is enslaved, the potential for an oops exists, and if the oops happens while responding to an arp request, for example, the system panics. GIANFAR devices may use an extended hard_header for VLAN or hardware checksumming. Enslaving such a device and then transmitting over it causes a kernel panic. Patch modified from submitter's original, but submitter agreed with this patch in private email. Signed-off-by: Mark Huth Signed-off-by: Jay Vosburgh Signed-off-by: Jeff Garzik commit a50d8de2cc872818b61e60c20c75be3f19aa6887 Author: Jay Vosburgh Date: Fri Sep 22 21:53:25 2006 -0700 [PATCH] bonding: Remove unneeded NULL test Remove unneeded test for NULL. Reported by Thomas Dillig and Isil Dillig via Stephen Hemminger . Signed-off-by: Jay Vosburgh Signed-off-by: Jeff Garzik commit 65509645ae05886eccc81b8a453afea07f0eabb6 Author: Kenzo Iwami Date: Fri Sep 22 21:53:08 2006 -0700 [PATCH] bonding: Format fix in seq_printf call Though link_failure_count is type unsigned int, this value is outputted to /proc/net/bonding/bondX file using "%d" instead of "%u". The attached patch fixes this problem. Signed-off-by: Kenzo Iwami Acked-by: Jay Vosburgh Signed-off-by: Jeff Garzik commit 8bb5f96b0c1f430e6be56edd6c7032bcedd86ff0 Author: Jay Vosburgh Date: Fri Sep 22 21:52:51 2006 -0700 [PATCH] bonding: Convert delay value from s16 to int The value of "downdelay/miimon" and "updelay/miimon" are stored in slave->delay. The type of downdelay, updelay, and miimon are all int. However, slave->delay is type short, and it is not possible to store the value of "downdelay/miimon" or "updelay/miimon" in some cases. (For example, miimon=1 downdelay=32768) The attached patch fixes this problem. Signed-off-by: Kenzo Iwami Acked-by: Jay Vosburgh Signed-off-by: Jeff Garzik commit 94dbffd540eea601aecad07e2df5bfd8a46672f3 Author: Jay Vosburgh Date: Fri Sep 22 21:52:15 2006 -0700 [PATCH] bonding: Allow bonding to enslave a 10 Gig adapter Allow channel bonding to enslave a 10 Gig adapter without errors. Signed-off-by: Mitch Williams Acked-by: Jay Vosburgh Signed-off-by: Jeff Garzik commit e8126c82ccbfd39ccf3d22645207fbcc798021a3 Author: Jeff Garzik Date: Mon Sep 25 20:06:24 2006 -0400 Delete unused drivers/net/gt64240eth.h Noticed by Yoichi Yuasa. Signed-off-by: Jeff Garzik commit 64f6b64dfb8cdda21652f24a0fb0a68e2f0b0022 Author: Stephen Hemminger Date: Sat Sep 23 21:25:28 2006 -0700 [PATCH] skge: fiber support Add support for older fiber versions of the SysKonnect board. These chipsets use an internal PHY so they require special handling. The older sk98lin driver already supported these Signed-off-by: Stephen Hemminger Signed-off-by: Jeff Garzik commit 46798c897e235e71e1e9c46a5e6e9adfffd8b85d Author: Jesper Juhl Date: Mon Sep 25 16:39:24 2006 -0700 [PATCH] fix possible NULL ptr deref in forcedeth There seems to be a possible NULL pointer deref bug in drivers/net/forcedeth.c::nv_loopback_test(). If dev_alloc_skb() fails, the next line will call skb_put() with a NULL first argument which it'll then try to deref - kaboom: a NULL pointer deref. Found by coverity (#1337). Signed-off-by: Jesper Juhl Cc: Ayaz Abdulla Cc: Manfred Spraul Cc: Stephen Hemminger Cc: Jeff Garzik Signed-off-by: Andrew Morton Signed-off-by: Jeff Garzik commit 84c22d7901f793bd267b5f79270080964b252826 Author: Eric Sesterhenn Date: Mon Sep 25 16:39:22 2006 -0700 [PATCH] Signedness issue in drivers/net/phy/phy_device.c While checking gcc 4.1 -Wextra warnings, I stumbled across the following two warnings: drivers/net/phy/phy_device.c:528: warning: comparison of unsigned expression < 0 is always false drivers/net/phy/phy_device.c:546: warning: comparison of unsigned expression < 0 is always false Since phy_read() returns an integer and can return negative values, it seems to me the best way to get proper error handling working again is to make val an int. Currently it is an u32, so the < 0 check always fails. Signed-off-by: Eric Sesterhenn Cc: Jeff Garzik Signed-off-by: Andrew Morton Signed-off-by: Jeff Garzik commit 0fe2480aded9504434e24815c410cbebb4f4efad Author: Michal Piotrowski Date: Mon Sep 25 16:39:21 2006 -0700 [PATCH] drivers/net/typhoon.c Removal of old code Signed-off-by: Michal Piotrowski Cc: Jeff Garzik Signed-off-by: Andrew Morton Signed-off-by: Jeff Garzik commit f8d9c9c876d3a2a109caa2c06b2761af0337c2f4 Author: Michal Piotrowski Date: Mon Sep 25 16:39:21 2006 -0700 [PATCH] drivers/net/tokenring/lanstreamer.h Removal of old code Signed-off-by: Michal Piotrowski Cc: Jeff Garzik Signed-off-by: Andrew Morton Signed-off-by: Jeff Garzik commit 9098f5ba6947944d9b0d3e989535ab55ae6af3f6 Author: Michal Piotrowski Date: Mon Sep 25 16:39:20 2006 -0700 [PATCH] drivers/net/tokenring/lanstreamer.c Removal of old code Signed-off-by: Michal Piotrowski Cc: Jeff Garzik Signed-off-by: Andrew Morton Signed-off-by: Jeff Garzik commit bef363a1e07a913508cf10ab2d7e2b11e6313257 Author: Michal Piotrowski Date: Mon Sep 25 16:39:19 2006 -0700 [PATCH] drivers/net/acenic.c Removal of old code Signed-off-by: Michal Piotrowski Cc: Jeff Garzik Cc: Jes Sorensen Signed-off-by: Andrew Morton Signed-off-by: Jeff Garzik commit 6432dc1f44ff3f02a304db26717c4f76e2e57be9 Author: Deepak Saxena Date: Mon Sep 25 16:39:18 2006 -0700 [PATCH] Update smc91x driver with ARM Versatile board info We need to specify a Versatile-specific SMC_IRQ_FLAGS value or the new generic IRQ layer will complain thusly: No IRQF_TRIGGER set_type function for IRQ 25 () Signed-off-by: Deepak Saxena Cc: Jeff Garzik Cc: Russell King Cc: Nicolas Pitre Signed-off-by: Andrew Morton Signed-off-by: Jeff Garzik commit be5b6d3d6cb7311893c9fbeebf094591d5f760a8 Author: David S. Miller Date: Mon Sep 25 14:08:37 2006 -0700 [SOUND] sparc/amd7930: Use __devinit and __devinitdata as needed. Fixes section-mismatch errors. Signed-off-by: David S. Miller commit efdbc1a7caf770b1b312000a42c630597f06973d Author: David S. Miller Date: Mon Sep 25 14:04:49 2006 -0700 [SUNLANCE]: Mark sparc_lance_probe_one as __devinit. Fixes section mismatch warnings when built as a module. Also, mark find_ledma and sun4 init function as __devinit too. Signed-off-by: David S. Miller commit a4c0291aa942dceddabe23bf2b74addb958d0964 Author: David S. Miller Date: Mon Sep 25 14:00:45 2006 -0700 [SPARC64]: Fix section-mismatch errors in solaris emul module. init_socksys() was marked __init but invoked from a non-__init function. Use the correct module_{init,exit}() faciltiies while we're here and eliminate some seriously bogus ifdefs. Signed-off-by: David S. Miller commit 4cc6773508299377099aa30cf30e6a2196c5872d Author: Paul Moore Date: Mon Sep 25 15:57:13 2006 -0700 [NetLabel]: update docs with website information Now that all of the supporting pieces of NetLabel have a home at SourceForge update the Kconfig help text and add an entry to the MAINTAINERS file. Signed-off-by: Paul Moore Signed-off-by: David S. Miller commit fd3858554b62c3af6b7664b5c58ad864c87116c9 Author: Paul Moore Date: Mon Sep 25 15:56:37 2006 -0700 [NetLabel]: rework the Netlink attribute handling (part 2) At the suggestion of Thomas Graf, rewrite NetLabel's use of Netlink attributes to better follow the common Netlink attribute usage. Signed-off-by: Paul Moore Signed-off-by: David S. Miller commit fcd48280643e92ec6cb29a04e9079dd7b6b5bfef Author: Paul Moore Date: Mon Sep 25 15:56:09 2006 -0700 [NetLabel]: rework the Netlink attribute handling (part 1) At the suggestion of Thomas Graf, rewrite NetLabel's use of Netlink attributes to better follow the common Netlink attribute usage. Signed-off-by: Paul Moore Signed-off-by: David S. Miller commit 4fe5d5c07ab615a52fd1b0ceba5aeed7c612821a Author: Paul Moore Date: Mon Sep 25 15:54:03 2006 -0700 [Netlink]: add nla_validate_nested() Add a new function, nla_validate_nested(), to validate nested Netlink attributes. Signed-off-by: Paul Moore Signed-off-by: David S. Miller commit 22acb19a91d2b551ea37647747972e5286284b22 Author: Paul Moore Date: Mon Sep 25 15:53:37 2006 -0700 [NETLINK]: add nla_for_each_nested() to the interface list At the top of include/net/netlink.h is a list of Netlink interfaces, however, the nla_for_each_nested() macro was not listed. This patch adds this interface to the list at the top of the header file. Signed-off-by: Paul Moore Signed-off-by: David S. Miller commit df2115c3134d0d1a18c1f37f5192394e7f64d1e0 Author: Paul Moore Date: Mon Sep 25 15:53:13 2006 -0700 [NetLabel]: change the SELinux permissions Change NetLabel to use the 'recvfrom' socket permission and the SECINITSID_NETMSG SELinux SID as the NetLabel base SID for incoming packets. This patch effectively makes the old, and currently unused, SELinux NETMSG permissions NetLabel permissions. Signed-of-by: Paul Moore Signed-off-by: David S. Miller commit 609c92feea5652809319bb77f19d24a44615687d Author: Paul Moore Date: Mon Sep 25 15:52:37 2006 -0700 [NetLabel]: make the CIPSOv4 cache spinlocks bottom half safe The CIPSOv4 cache traversal routines are triggered both the userspace events (cache invalidation due to DOI removal or updated SELinux policy) and network packet processing events. As a result there is a problem with the existing CIPSOv4 cache spinlocks as they are not bottom-half/softirq safe. This patch converts the CIPSOv4 cache spin_[un]lock() calls into spin_[un]lock_bh() calls to address this problem. Signed-off-by: Paul Moore Signed-off-by: David S. Miller commit 14a72f53fb1bb5d5c2bdd8cf172219519664729a Author: Paul Moore Date: Mon Sep 25 15:52:01 2006 -0700 [NetLabel]: correct improper handling of non-NetLabel peer contexts Fix a problem where NetLabel would always set the value of sk_security_struct->peer_sid in selinux_netlbl_sock_graft() to the context of the socket, causing problems when users would query the context of the connection. This patch fixes this so that the value in sk_security_struct->peer_sid is only set when the connection is NetLabel based, otherwise the value is untouched. Signed-off-by: Paul Moore Signed-off-by: David S. Miller commit b77d95c78fb0ec330cd53e0d297ffa4fd2975e32 Author: David Woodhouse Date: Mon Sep 25 21:58:50 2006 +0100 [MTD NAND] Provide prototype for newly-exported nand_wait_ready() Signed-off-by: David Woodhouse commit 9663265626fd683faa3f7a994bb6db073581807e Author: David Woodhouse Date: Mon Sep 25 21:52:21 2006 +0100 [MTD] Remove #ifndef __KERNEL__ hack in Now that we have headers_install, we don't need this crap. Signed-off-by: David Woodhouse commit a67ab2bde752b26be75d4b68ecead9a14692eac5 Author: Larry Finger Date: Thu Sep 14 08:28:54 2006 -0500 [PATCH] bcm43xx: fix netdev watchdog timeouts The setup for running long periodic work has a bug that leads to netdev watchdog tx timeouts. This change eliminates the timeouts. Signed-off-by: Michael Buesch Acked-by: Larry Finger Signed-off-by: John W. Linville commit 583afd1e4f25c87000c85ad7d03f5299fd4155dc Author: Ulrich Kunitz Date: Wed Sep 13 02:42:38 2006 +0100 [PATCH] zd1211rw: Add LED support This patch includes a big cleanup of the existing unused LED code, and adds support for controlling the LED. The link LED will blink if the device is not associated. The LED switches between 2 seconds on and 1 second off. If the device is associated the LED is switched on. The link LED also indicates packet TX. I do a little bit more led resetting than the vendor driver, but the device works now as expected for single LED and double LED devices. Signed-off-by: Ulrich Kunitz Signed-off-by: Daniel Drake Signed-off-by: John W. Linville commit bc5f06a8aaa29a79c9da2cedb5b9779b8081289c Author: Ulrich Kunitz Date: Wed Sep 13 02:42:12 2006 +0100 [PATCH] zd1211rw: Added workqueue For housekeeping and watchdog tasks a workqueue is created. The central workqueue is not used to prevent crashes creates by bugs. It might be changed, when the housekeeping is stabilized. Signed-off-by: Ulrich Kunitz Signed-off-by: Daniel Drake Signed-off-by: John W. Linville commit 44976c66bb2b44e4cf29a259a0cd6adadf8eb031 Author: Ulrich Kunitz Date: Wed Sep 13 02:41:35 2006 +0100 [PATCH] zd1211rw: Removes wrong assertions Checking whether a mutex is not locked directly before mutex_lock() is called, doesn't make sense. The whole point of mutex_lock() is to block, if the mutex is locked. Signed-off-by: Ulrich Kunitz Signed-off-by: Daniel Drake Signed-off-by: John W. Linville commit cbb5e6bbb29a850dcb87d8efa30b457ce8014369 Author: Ulrich Kunitz Date: Wed Sep 13 02:41:02 2006 +0100 [PATCH] zd1211rw: 16-bit writes for physical control registers Caused by the fact that physical control registers appear to have only a width of 16 bit, 32-bit writes are not required. Signed-off-by: Ulrich Kunitz Signed-off-by: Daniel Drake Signed-off-by: John W. Linville commit 927db87fb1523101653eae44ac27223a30a18ada Author: Daniel Drake Date: Tue Sep 12 23:37:25 2006 +0100 [PATCH] softmac: Update MAINTAINERS entry This mailing list has been deactivated. Signed-off-by: Daniel Drake Signed-off-by: John W. Linville commit 8aeb9fc5699f1b3c64ba152910f7c5c075c3a93a Author: Larry Finger Date: Tue Sep 12 15:29:04 2006 -0500 [PATCH] bcm43xx-softmac: improve wrong firmware message An error message is changed to a printk as the original dprintk would be optimized away if debugging were not enabled. If the error is triggered, a more meaningful message is returned. Signed-off-by: Larry Finger Signed-off-by: John W. Linville commit b2f206f4a711b0b1e6d3cdca52e919a986aceada Author: Larry Finger Date: Tue Sep 12 12:40:32 2006 -0500 [PATCH] bcm43xx-softmac: update noise handling In bcm43xx-softmac, the bcm43xx_stats struct contains a variable that is no longer used. In addition, two TODO entries related to noise processing in bcm43xx_rx have been completed, and as unused one is removed. Signed-off-by: Larry Finger Signed-off-by: John W. Linville commit a271ca5bbb1df988806bead8910b603819f4190f Author: Larry Finger Date: Mon Sep 11 21:50:56 2006 -0500 [PATCH] bcm43xx-softmac: update PHY initialization This patch updates the PHY initialization code for bcm43xx-softmac to conform with recent changes in the clean-room specs at http://bcm-specs.sipsolutions.net. Mostly, these changes implement the sequence needed for chips with GPHY revision 8; however, the patch also corrects a typo in one address, and some parts that were missing from the spec when the initial coding was done. Signed-off-by: Larry Finger Signed-off-by: John W. Linville commit 919ee6ddcd3fcff09dee90c11af17a802196ad1f Author: Jean Tourrilhes Date: Tue Aug 29 18:01:40 2006 -0700 [PATCH] WE-21 for ipw2200 Signed-off-by: Jean Tourrilhes Signed-off-by: John W. Linville commit b978d0278c3a4c41bda806743c6ef5dca86b4c61 Author: Larry Finger Date: Thu Aug 31 10:01:39 2006 -0500 [PATCH] bcm43xx: WE-21 support Patch to make bcm43xx-softmac be compatible with the revised SSID length of WE-21. Signed-off-by: Larry Finger Signed-off-by: John W. Linville commit a6082f4032a9667e844fecd974f17268249fb966 Author: Daniel Drake Date: Wed Aug 30 03:46:27 2006 +0100 [PATCH] WE-21 for zd1211rw Signed-off-by: Daniel Drake Signed-off-by: John W. Linville commit 22b99262f59ddf5d283e19047e37dbc3be907e93 Author: Jean Tourrilhes Date: Tue Aug 29 18:07:11 2006 -0700 [PATCH] WE-21 for zd1201 Signed-off-by: Jean Tourrilhes Signed-off-by: John W. Linville commit de9621bc5637be5f9e3e3ff2fc1475b3de41132e Author: Jean Tourrilhes Date: Tue Aug 29 18:05:37 2006 -0700 [PATCH] WE-21 for wl3501 Signed-off-by: Jean Tourrilhes Signed-off-by: John W. Linville commit 4ced38ac48137e1928dd40de3cdc074ec31c059d Author: Jean Tourrilhes Date: Tue Aug 29 18:04:09 2006 -0700 [PATCH] WE-21 for ray_cs Signed-off-by: Jean Tourrilhes Signed-off-by: John W. Linville commit bad04f2ce00da5aaa6c8e97b1b80ad2ebd755b8b Author: Jean Tourrilhes Date: Tue Aug 29 18:03:23 2006 -0700 [PATCH] WE-21 for Prism54 Signed-off-by: Jean Tourrilhes Signed-off-by: John W. Linville commit eeec9f1a931262d69811135092c8447d6dccc3e6 Author: Jean Tourrilhes Date: Tue Aug 29 18:02:31 2006 -0700 [PATCH] WE-21 for orinoco Signed-off-by: Jean Tourrilhes Signed-off-by: John W. Linville commit 5b63bae0ab750942e84bfb9b353e6222583457a2 Author: Jean Tourrilhes Date: Tue Aug 29 18:00:48 2006 -0700 [PATCH] WE-21 for ipw2100 Signed-off-by: Jean Tourrilhes Signed-off-by: John W. Linville commit 9fb08363f1f6d360dbaf6d7f51b9e7ca07c05ecd Author: Jean Tourrilhes Date: Tue Aug 29 17:59:47 2006 -0700 [PATCH] WE-21 for hostap Signed-off-by: Jean Tourrilhes Signed-off-by: John W. Linville commit 6a484db472e77218252025d31d4ef96dbc11ada9 Author: Jean Tourrilhes Date: Tue Aug 29 17:59:03 2006 -0700 [PATCH] WE-21 for atmel Signed-off-by: Jean Tourrilhes Signed-off-by: John W. Linville commit 7f8544cc95c7f521847fa760ce38d932e6ab4542 Author: Jean Tourrilhes Date: Tue Aug 29 17:58:11 2006 -0700 [PATCH] WE-21 for airo Signed-off-by: Jean Tourrilhes Signed-off-by: John W. Linville commit baef186519c69b11cf7e48c26e75feb1e6173baa Author: John W. Linville Date: Fri Sep 8 16:04:05 2006 -0400 [PATCH] WE-21 support (core API) This is version 21 of the Wireless Extensions. Changelog : o finishes migrating the ESSID API (remove the +1) o netdev->get_wireless_stats is no more o long/short retry This is a redacted version of a patch originally submitted by Jean Tourrilhes. I removed most of the additions, in order to minimize future support requirements for nl80211 (or other WE successor). CC: Jean Tourrilhes Signed-off-by: John W. Linville commit a6d967a485c67ec8a1276261f39d81ace6a3e308 Author: Jeff Garzik Date: Mon Sep 25 15:33:09 2006 -0400 [libata] No need for all those arch libata-portmap.h headers They all contain the same thing. Instead, have a single generic one in include/asm-generic, and permit an arch to override as needed. Signed-off-by: Jeff Garzik commit 956e944c7690ea994757a8cbedbb6241e1d9138f Author: David Woodhouse Date: Mon Sep 25 17:12:39 2006 +0100 [MTD NAND] Allow override of page read and write functions. - allow high-level nand_write_page() function to be overridden - likewise low-level write_page_raw() and read_page_raw() functions - Clean up the abuse of chip->ecc.{write,read}_page() with MTD_OOB_RAW Signed-off-by: David Woodhouse commit 4bf63fcb83dc761853f69a77b15e47712689020b Author: David Woodhouse Date: Mon Sep 25 17:08:04 2006 +0100 [MTD NAND] Allocate chip->buffers separately to allow it to be overridden In particular, the board driver might need it to be DMAable. Signed-off-by: David Woodhouse commit 3b85c3211ebde263a86c8cd3c7277fdd2e440310 Author: David Woodhouse Date: Mon Sep 25 17:06:53 2006 +0100 [MTD NAND] Split nand_scan() into two parts; allow board driver to intervene Signed-off-by: David Woodhouse commit 4b648b0253c0976e944ea07e38a2d53ad4d0b30e Author: David Woodhouse Date: Mon Sep 25 17:05:24 2006 +0100 [MTD NAND] Export nand_wait_ready() for use by board drivers Signed-off-by: David Woodhouse commit 907b9bceb41fa46beae93f79cc4a2247df502c0f Author: Steven Whitehouse Date: Mon Sep 25 09:26:04 2006 -0400 [GFS2/DLM] Fix trailing whitespace As per Andrew Morton's request, removed trailing whitespace. Cc: Andrew Morton Signed-off-by: Steven Whitehouse commit fb60cf4ab52f3520c2119aa42f7d4ed8e7594eb6 Author: Tony Lindgren Date: Mon Sep 25 13:28:17 2006 +0300 ARM: OMAP: Remove common pm.c There is now separate pm.c for OMAP1 and OMAP2. Signed-off-by: Tony Lindgren commit 90afd5cb2ac0977c38e83b6b21493da911b242b3 Author: Tony Lindgren Date: Mon Sep 25 13:27:20 2006 +0300 ARM: OMAP: Sync clocks with linux-omap tree Mostly clean up CONFIG_OMAP_RESET_CLOCKS. Also includes a patch from Imre Deak to make McSPI clocks use id. Signed-off-by: Tony Lindgren commit 1630b52ddf4fc27e0dc421a57e4788bf9d3886cc Author: Komal Shah Date: Mon Sep 25 12:51:08 2006 +0300 [PATCH] ARM: OMAP: Check gpio_fck not gpio_ick Check gpio_fck not gpio_ick. Signed-off-by: Komal Shah Signed-off-by: Tony Lindgren commit 709eb3e5ccb304dca011c41456da5ffd246d7271 Author: Tony Lindgren Date: Mon Sep 25 12:45:45 2006 +0300 ARM: OMAP: Sync DMA with linux-omap tree This patch syncs OMAP DMA code with linux-omap tree. Mostly allow changing DMA callback function and set OMAP2 specific transfer mode. Signed-off-by: Tony Lindgren commit ddc32a87497d8806e361cfe7168f173396fe9219 Author: Juha Yrjola Date: Mon Sep 25 12:41:50 2006 +0300 ARM: OMAP2: Make sure peripherals can be accessed after clk_enable Some peripherals seem to need additional delay until they can actually be accessed after enabling their FCLK and ICLK. Signed-off-by: Juha Yrjola Signed-off-by: Tony Lindgren commit dc0d794e488090082b7194738a08f18db0874900 Author: Juha Yrjola Date: Mon Sep 25 12:41:49 2006 +0300 ARM: OMAP2: Keep both APLLs active during bootup Enabling and disabling the 54 MHz and 96 MHz APLLs can happen unnecessarily often during bootup. Make sure they're kept enabled during init. Signed-off-by: Juha Yrjola Signed-off-by: Tony Lindgren commit dee45648a5e2f3075c51f5d6b5da65b32235d3f9 Author: Juha Yrjola Date: Mon Sep 25 12:41:47 2006 +0300 ARM: OMAP: Add sanity check to clk_disable BUG() if the clock use count is already zero. Signed-off-by: Juha Yrjola Signed-off-by: Tony Lindgren commit bee7930f4aa501de4e3c793640c3af31fd3867e2 Author: Hiroshi DOYU Date: Mon Sep 25 12:41:46 2006 +0300 ARM: OMAP: GPIO: IRQSTATUS2 workaround for retention state In OMAP2420, an incoming GPIO interrupt always sets both GPIO_IRQSTATUS1 and GPIO_IRQSTATUS2, even if the relevant bit is disabled in GPIO_IRQENABLE1/2 and DSP doesn't use GPIO at all. GPIO_IRQSTATUS1 is for MPU and GPIO_IRQSTATUS2 is for DSP. If IRQSTATUS is set, this will prevent the system from going to idle state. This patch also clears IRQSTATUS2 to avoid the above situation. Signed-off-by: Hiroshi DOYU Signed-off-by: Juha Yrjola Signed-off-by: Tony Lindgren commit 0d9356cbb5d7a0bc8628f74fb15fd7268372c7fe Author: Tony Lindgren Date: Mon Sep 25 12:41:45 2006 +0300 ARM: OMAP: Fix typo for 24xx GPIO resume Fix typo for 24xx GPIO resume Signed-off-by: Tony Lindgren commit 39020842b3d8a450e80724a71d5df676535d249e Author: Juha Yrjola Date: Mon Sep 25 12:41:44 2006 +0300 ARM: OMAP: OMAP2 dmtimer power management support GPT1 will be set into non-posted mode, and the wakeup register is set for all timers. Signed-off-by: Juha Yrjola Signed-off-by: Tony Lindgren commit ab0a2b9b9f536d860681dacbfb5784bd76e88a1e Author: Juha Yrjola Date: Mon Sep 25 12:41:43 2006 +0300 ARM: OMAP: Add support for forcing osc_ck on Some boards might use the oscillator clock for powering external peripherals. Add support for making sure osc_ck stays active even when trying to go to sleep. Signed-off-by: Juha Yrjola Signed-off-by: Tony Lindgren commit 12583a70ac6b6641905e37fdd61a7f711fb4ce2b Author: Timo Teras Date: Mon Sep 25 12:41:42 2006 +0300 ARM: OMAP: Add enable/disable functions for dmtimer Add enable/disable functions which effectively control the GPT iclk and fclk. Signed-off-by: Timo Teras Signed-off-by: Juha Yrjola Signed-off-by: Tony Lindgren commit 893a668ee2a0bd28fbeb639ae97dd60ec8b7db66 Author: David Brownell Date: Mon Sep 25 12:41:41 2006 +0300 ARM: OMAP: Remove Remove superfluous/recursive locking for GPIO Remove Remove superfluous/recursive locking for GPIO Signed-off-by: David Brownell Signed-off-by: Tony Lindgren commit 14188b3a4cbffd317ac65434750481d2ee14e09e Author: Tony Lindgren Date: Mon Sep 25 12:41:40 2006 +0300 ARM: OMAP: Fix spinlock recursion for dyntick Fix spinlock recursion for dyntick. Modified version based on Imre Deak's earlier patch. Signed-off-by: Tony Lindgren commit e4d5ee8109c210b65becfc1ef7697a0ce4eaf3c4 Author: Komal Shah Date: Mon Sep 25 12:41:39 2006 +0300 ARM: OMAP: Remove IVA IRQ bank ARM11 can't access the IVA interrupt controller from IVA slave port. From Richard Woodruff: "The 0x40000000 is an IVA-ARM7 local bus address. The IVA-INTC is NOT accessible through the IVA-L3-Slave Port. The current TRM does say this directly and indirectly in a few spots and in figures." Signed-off-by: Komal Shah Signed-off-by: Tony Lindgren commit 4196dd6baabccdef3786c1d51d75e041313af848 Author: Tony Lindgren Date: Mon Sep 25 12:41:38 2006 +0300 ARM: OMAP: Reset GPIO irq state after free_irq() This is needed to reset GPIO after free_irq(). Signed-off-by: Tony Lindgren commit eaca33df44c0d00bc12b16e72b728ade25adf14d Author: Juha Yrjola Date: Mon Sep 25 12:41:37 2006 +0300 ARM: OMAP: Add write memory barriers to OMAP2 clock code After adjusting clock parameters, OMAP2 CPUs need a memory barrier to make sure the changes go into effect immediately. Otherwise bad things will happen if we try to access the peripheral whose clock is just being enabled. Signed-off-by: Juha Yrjola Signed-off-by: Tony Lindgren commit dbab288be47ddc84ad52ff926ea1a0efd33acb57 Author: Samuel Ortiz Date: Mon Sep 25 12:41:36 2006 +0300 ARM: OMAP: Fix OMAP2 clock.c typo A forgotten parenthesis in clock.c caused the PLL stabilization loop to not be executed correctly. Signed-off-by: Samuel Ortiz Signed-off-by: Juha Yrjola Signed-off-by: Tony Lindgren commit fa4bb626c660ada7cad3cc7e45da14f8ec17847c Author: Timo Teras Date: Mon Sep 25 12:41:35 2006 +0300 ARM: OMAP: Use GPT iclk only when needed This patch makes the OMAP2 dmtimers module using the interface clocks only while the registers are accessed (except GPT1 which has iclk enabled all the time). Signed-off-by: Timo Teras Signed-off-by: Juha Yrjola Signed-off-by: Tony Lindgren commit 123e9a5573098dbb10194c18d6d575620d0e94f3 Author: Tony Lindgren Date: Mon Sep 25 12:41:34 2006 +0300 ARM: OMAP: DMA source and destination addresses are unsigned Also export some omap24xx specific DMA functions. Signed-off-by: Tony Lindgren commit f37e4580c409e290f6e482007c3573cdb4470bf9 Author: Imre Deak Date: Mon Sep 25 12:41:33 2006 +0300 ARM: OMAP2: Dynamic allocator for GPMC memory space Add support for assigning memory regions dynamically to peripherals attached to GPMC interface. Platform specific code should now call gpmc_cs_request to get a free GPMC memory region instead of using a fixed address. Make the H4 and Apollon platform initialization use the new API. Signed-off-by: Imre Deak Signed-off-by: Juha Yrjola Signed-off-by: Tony Lindgren commit 2eaff915744b6c8db7770fa9e841fd1c0105fb0b Author: Jonathan McDowell Date: Mon Sep 25 12:41:31 2006 +0300 ARM: OMAP: Add some extra #defines for Amstrad Delta This patch adds some further #defines regarding GPIOs and latch bits for the Amstrad Delta; the drivers that use them will be submitted at a later date but there's no reason not to have the information already there and available for use. Signed-off-by: Jonathan McDowell Signed-off-by: Tony Lindgren commit 193e68be335890a99879799bdcd06e18247c110a Author: Jonathan McDowell Date: Mon Sep 25 12:41:30 2006 +0300 ARM: OMAP: Fix OMAP1 compilation after MPUIO check change The recent MPUIO range change fix breaks compilation if CONFIG_ARCH_OMAP24XX isn't defined; it should be OMAP_MAX_GPIO_LINES not MAX_GPIO_LINES I believe. This one liner fixes it. Signed-off-by: Jonathan McDowell Signed-off-by: Tony Lindgren commit 75a1d10e2f110380adaa9b993fd417537e2f85ba Author: Mark Howell Date: Mon Sep 25 12:41:29 2006 +0300 ARM: OMAP: mux: add config for 16xx SPI pins This patch adds pin mux info for the SPI master/slave interface on OMAP16xx. Data from OMAP 1611/1612 TRM and errata. Works for me on my 1611/H2 with current git kernel. Signed-off-by: Mark Howell Signed-off-by: Tony Lindgren commit b5beef5d5dddef820eb36c97216487ed7cf68971 Author: Imre Deak Date: Mon Sep 25 12:41:28 2006 +0300 ARM: OMAP: Sleep is prevented when no LCD is attached We have to make sure that the LCD DMA external destination bit is cleared by default, otherwise OMAP won't sleep. Signed-off-by: Imre Deak Signed-off-by: Juha Yrjola Signed-off-by: Tony Lindgren commit 5a4e86daa29e73a02ce8eb484837813e341a0b8a Author: Imre Deak Date: Mon Sep 25 12:41:27 2006 +0300 ARM: OMAP: GPIO: fix MPUIO check - MPUIO doesn't exist on OMAP2 - no error was returned for too big MPUIO numbers Signed-off-by: Imre Deak Signed-off-by: Juha Yrjola Signed-off-by: Tony Lindgren commit 0e0a198690f5769e5687cb0d66e4486796ccdef0 Author: Tony Lindgren Date: Mon Sep 25 12:41:26 2006 +0300 ARM: OMAP: Remove sys_ck and sys_clkout from McBSP for 24xx McBSP does not need sys_ck or sys_clkout. If the devices connected to McBSP need sys_clkout, they need to request it. Signed-off-by: Tony Lindgren commit abc45e1d69542281fb2b40968e5d112f51976623 Author: Kyungmin Park Date: Mon Sep 25 12:41:25 2006 +0300 ARM: OMAP: Apollon MMC support Apollon board MMC supports on OMAP2 TODO: We have to check MMC on H4 Signed-off-by: Kyungmin Park Signed-off-by: Tony Lindgren commit d1284b5f11aa946d732d60a402dfeec86a7bb2ef Author: Kevin Hilman Date: Mon Sep 25 12:41:24 2006 +0300 ARM: OMAP: 2420 boot BUG(): failure to map SRAM ARM: OMAP: Fix SRAM static mapping for EMU devices. Fix SRAM static mapping for EMU devices. Signed-off-by: Kevin Hilman Signed-off-by: Tony Lindgren commit 93bda4c0214441b0bb03b61c2bf1d6727896a750 Author: Samuel Ortiz Date: Mon Sep 25 12:41:22 2006 +0300 ARM: OMAP: Added OMAP24xx camera IRQ definition Signed-off-by: Samuel Ortiz Signed-off-by: Juha Yrjola Signed-off-by: Tony Lindgren commit df51a84d93e776b7481d937ccd60be1b27d320c5 Author: Imre Deak Date: Mon Sep 25 12:41:21 2006 +0300 ARM: OMAP: timer32k: fix tick count calculation when reprogramming Reprogramming takes places before putting the CPU into idle mode if the dynamic tick option is enabled. The timer is then set to expire at the next pending timer event. Because some time has already passed since the last reported jiffy we have to wait less than the time specified in jiffies. Also make sure we don't set a load value of 0 whose outcome is unspecified according to the TRM. Signed-off-by: Imre Deak Signed-off-by: Juha Yrjola Signed-off-by: Tony Lindgren commit ae78dcf79aefa98a1ed245898467eb6d3bfc11e6 Author: Tony Lindgren Date: Mon Sep 25 12:41:20 2006 +0300 ARM: OMAP: Avoid sleeping during arch_reset If we call clk_get() from arch_reset we get ugly messages before reboot. Signed-off-by: Tony Lindgren commit 7d95ded91149564100a3181d341361aedcfd5bf5 Author: Tony Lindgren Date: Wed Sep 20 13:03:34 2006 +0100 [ARM] 3838/1: ARM: DCC debug console support for ARM11 Adds support for CONFIG_DEBUG_ICEDCC for ARM11. Tested on ARM1136 (OMAP2420). Signed-off-by: Tony Lindgren Signed-off-by: Russell King commit baf97ce6eda5891ee45fae9c1b06db855bb697e1 Author: Russell King Date: Thu Sep 21 17:00:08 2006 +0100 [ARM] Cleanups for 4cc9bd2eaa1063c68341c1c00e66660adcfdf254 - Document the meaning for OP_SCALAR, OP_SD and add OP_DD. - Formatting cleanups - Remove now redundant code for making compare instructions operate on scalar values. Signed-off-by: Russell King commit 4cc9bd2eaa1063c68341c1c00e66660adcfdf254 Author: Gen FUKATSU Date: Thu Sep 21 14:08:24 2006 +0100 [ARM] 3789/4: Fix VFP emulation to ignore VECITR for scalar instruction VECITR in Floating-Point Exception register indicates the number of remaining short vector iterations after a potential exception was detected. In case of exception caused by scalar instructions, VECITR is NOT updated. Therefore emulation for VFP must ignore VECITR field and treat "veclen" as zero when recognizing scalar instructing. Signed-off-by: Gen Fukatsu Signed-off-by: Russell King commit f8c440b209581809c5c8acac599410f23597a7b8 Author: Dan Fandrich Date: Wed Sep 20 23:28:51 2006 +0100 [ARM] 3792/2: Fix description of ZBOOT_ROM_BSS The documentation for the ZBOOT_ROM_BSS config option describes it as "The base address of 64KiB of read/write memory in the target for the ROM-able zImage..." In actuality, it requires more than 100 KiB of space in addition to enough space to hold the decompressed kernel. This patch fixes the description in the Kconfig file. Signed-off-by: Dan Fandrich Signed-off-by: Russell King commit a71ebdfa5243765e455a9ec2d6360e1704c6599e Author: George G. Davis Date: Thu Sep 21 03:57:04 2006 +0100 [ARM] 3853/1: Fix flush_ptrace_access() thinko for nonaliasing VIPT cache case Fix thinko in the flush_ptrace_access() "if (expr)" for the ARM VIPT non-aliasing cache case. We only need to flush cache when VM_EXEC is set in vma->vm_flags but "if (expr) always evaluates to true on UP systems for the ARM VIPT non-aliasing cache case. Signed-off-by: George G. Davis Signed-off-by: Russell King commit e7cc2c59cc83558fc26f17eee3c8f901119f0a7c Author: Lennert Buytenhek Date: Thu Sep 21 03:35:20 2006 +0100 [ARM] 3852/1: convert atomic bitops and __xchg over to raw_local_irq_{save,restore} Thomas Gleixner noticed that bitops.h should also use the raw_* irq disable/enable variants, and __xchg needs them as well. Signed-off-by: Lennert Buytenhek Signed-off-by: Russell King commit 0c92e830bd39f3e6cf7b151dffecafbdc623496c Author: Lennert Buytenhek Date: Thu Sep 21 02:46:03 2006 +0100 [ARM] 3851/1: iop3xx: add io-data glantank support Add support for the IO-Data GLAN Tank, from Martin Michlmayr. Signed-off-by: Martin Michlmayr Signed-off-by: Lennert Buytenhek Signed-off-by: Russell King commit e60d07b6cd38a7afb85f2cf51aebcb3359b63819 Author: Lennert Buytenhek Date: Thu Sep 21 02:42:12 2006 +0100 [ARM] 3850/1: iop3xx: add thecus n2100 support Add support for the Thecus n2100 (80219-based.) Signed-off-by: Lennert Buytenhek Signed-off-by: Russell King commit 17b602b1c1a38f3f0a4461bb1f571346e751b36b Author: Lennert Buytenhek Date: Thu Sep 21 02:24:38 2006 +0100 [ARM] 3849/1: fix get_unaligned() for gcc >= 4.1 gcc 4.1's __typeof__ propagates 'const', which breaks get_unaligned(). Rewrite get_unaligned() not to use __typeof__. Signed-off-by: Lennert Buytenhek Signed-off-by: Russell King commit 3b7a86c2f01dafa797908fdcf386f51eb0d01f29 Author: Ben Dooks Date: Wed Sep 20 21:57:06 2006 +0100 [ARM] 3846/1: S3C24XX: Fix osiris memory map The memory mapping for the Osiris machine are all off by one bit, and the base address has been fixed for writing (bit25 is being checked by the write, but not on read) Signed-off-by: Ben Dooks Signed-off-by: Russell King commit bccd7458c0f6229a8cfbfad6c1fc0894b1d5fee8 Author: Ben Dooks Date: Wed Sep 20 21:15:29 2006 +0100 [ARM] 3844/1: S3C24XX: update s3c2410_defconfig New s3c2410_defconfig, updated 2.6.18 Signed-off-by: Ben Dooks Signed-off-by: Russell King commit 7f61a84076ce4a6fe83a381751e33972f2a91ddc Author: Ben Dooks Date: Wed Sep 20 20:54:54 2006 +0100 [ARM] 3843/1: S3C24XX: Remove modfication lines from comments Remove the redundant Modification lines from the top of the files in arch/arm/mach-s3c2410 Signed-off-by: Ben Dooks Signed-off-by: Russell King commit 72d70d06d8e431f40fc2d41710615735c0a84aed Author: Ben Dooks Date: Wed Sep 20 20:46:09 2006 +0100 [ARM] 3842/1: S3C2412: Rename LCD device The S3C2412 LCD controller is different enough to warrant renaming the platform device. Signed-off-by: Ben Dooks Signed-off-by: Russell King commit d9bc55faf7aaeea1d098bc8511d074837edb149d Author: Ben Dooks Date: Wed Sep 20 20:39:15 2006 +0100 [ARM] 3841/1: S3C2412: Add new IDCODE 32412003 Add new code for the S3C2412 Signed-off-by: Ben Dooks Signed-off-by: Russell King commit b6c440a98eb3245fb06d411f1bc9d584269e95d5 Author: Ben Dooks Date: Wed Sep 20 20:32:33 2006 +0100 [ARM] 3840/1: S3C2412: Add machine VSTMS Add new machine VSTMS Signed-off-by: Ben Dooks Signed-off-by: Thomas Gleixner Signed-off-by: Russell King commit 1649adc78d46db79510b92ffd58486ca82a86549 Author: Russell King Date: Sat Sep 23 20:48:24 2006 +0100 [ARM] Update mach-types Signed-off-by: Russell King commit 8337dd68aaef4faaa15e126f9f5c3f6f02711508 Author: Lennert Buytenhek Date: Mon Sep 18 23:32:04 2006 +0100 [ARM] 3834/1: iop3xx: remove per-board defconfigs Remove the old per-board defconfigs. Signed-off-by: Lennert Buytenhek Signed-off-by: Russell King commit 2d703ca0f9098fe0d6b1dbd668cf6eec3f701fb6 Author: Lennert Buytenhek Date: Mon Sep 18 23:31:31 2006 +0100 [ARM] 3833/1: iop3xx: add per-mach defconfigs Add one defconfig for all iop32x boards and one defconfig for all iop33x boards. Signed-off-by: Lennert Buytenhek Signed-off-by: Russell King commit c852ac80440db9b0a47f48578e9c6303078abbc1 Author: Lennert Buytenhek Date: Mon Sep 18 23:26:25 2006 +0100 [ARM] 3832/1: iop3xx: coding style cleanup Since the iop32x code isn't iop321-specific, and the iop33x code isn't iop331-specfic, do a s/iop321/iop32x/ and s/iop331/iop33x/, and tidy up the code to conform to the coding style guidelines somewhat better. Signed-off-by: Lennert Buytenhek Signed-off-by: Russell King commit 475549faa161f4e002225f2ef75fdd2a6d83d151 Author: Lennert Buytenhek Date: Mon Sep 18 23:25:33 2006 +0100 [ARM] 3831/1: iop3xx: factor out common register defines Factor out the register defines for a number of other peripherals common to the iop32x and iop33x. Signed-off-by: Lennert Buytenhek Signed-off-by: Russell King commit c680b77efe4542830bb170e1cc40db1c47c569bc Author: Lennert Buytenhek Date: Mon Sep 18 23:24:52 2006 +0100 [ARM] 3830/1: iop3xx: board support file cleanup Revamp the iop3xx board support: move the support code for each iop board type into its own file, start using platform serial and platform physmap flash devices, switch to a per-board time tick rate, and get rid of the ARCH_EP80219 and STEPD config options by doing the relevant checks at run time. Signed-off-by: Lennert Buytenhek Signed-off-by: Russell King commit 7412b10f7967ef4210ed6f793004d23642dc5140 Author: Lennert Buytenhek Date: Mon Sep 18 23:24:10 2006 +0100 [ARM] 3829/1: iop3xx: optimise irq entry macros Squeeze three instructions out of the iop32x irq demuxer, and nine out of the iop33x irq demuxer by using the hardware vector generator. Signed-off-by: Lennert Buytenhek Signed-off-by: Russell King commit d7d214e974b94e8332d1f6c16f6f19b661dfa855 Author: Lennert Buytenhek Date: Mon Sep 18 23:23:38 2006 +0100 [ARM] 3828/1: iop3xx: remove useless loadsp macro The iop33x loadsp hunk in arch/arm/boot/compressed/head.S serves no purpose -- remove it. Signed-off-by: Lennert Buytenhek Signed-off-by: Russell King commit 72edd84a6b2db1a21d1ed07929cae560e276a0a6 Author: Lennert Buytenhek Date: Mon Sep 18 23:23:07 2006 +0100 [ARM] 3827/1: iop3xx: add common gpio module Implement the gpio_line_{config,get,set} API for iop3xx. Signed-off-by: Lennert Buytenhek Signed-off-by: Russell King commit 610300e8f4f833904096ca1233ffd9dbd73fb11f Author: Lennert Buytenhek Date: Mon Sep 18 23:22:24 2006 +0100 [ARM] 3826/1: iop3xx: remove IOP3??_IRQ_OFS irq offset Get rid of the unused IOP3??_IRQ_OFS irq offset define, start IRQ numbering from zero. Signed-off-by: Lennert Buytenhek Signed-off-by: Russell King commit 38ce73ebd74a9a1738b73619557f2397c59ba628 Author: Lennert Buytenhek Date: Mon Sep 18 23:21:38 2006 +0100 [ARM] 3825/1: iop3xx: use cp6 enable/disable macros Add CP6 enable/disable sequences to the timekeeping code and the IRQ code. As a result, we can't depend on CP6 access being enabled when we enter get_irqnr_and_base anymore, so switch the latter over to using memory-mapped accesses for now. Signed-off-by: Lennert Buytenhek Signed-off-by: Russell King commit 0b29de4a6ac0936f56b974a3c19bd9c24ac5b5d7 Author: Lennert Buytenhek Date: Mon Sep 18 23:20:55 2006 +0100 [ARM] 3824/1: iop3xx: add cp6 enable/disable macros Add macros to enable and disable access to CP6. On the iop3xx, enabling CP6 access unfortunately also enables access to that coprocessor from unprivileged code, so we need these macros to enable and disable access to the coprocessor whenever we need to access it. Signed-off-by: Lennert Buytenhek Signed-off-by: Russell King commit 863753a81e4f863015be34900dc2ba3637622f34 Author: Lennert Buytenhek Date: Mon Sep 18 23:19:02 2006 +0100 [ARM] 3823/1: iop3xx: switch iop32x/iop33x over to shared time code Switch the iop32x and iop33x code over to the common time implementation, and remove the (nearly identical) iop32x and iop33x time implementations. Signed-off-by: Lennert Buytenhek Signed-off-by: Russell King commit 48388b2a56ae5e0f1c422e84d536f31729469b17 Author: Lennert Buytenhek Date: Mon Sep 18 23:18:16 2006 +0100 [ARM] 3822/1: iop3xx: rewrite time handling Merge and rewrite the iop32x/iop33x time code to do lost jiffy tracking properly, and put the result in plat-iop/time.c. Signed-off-by: Lennert Buytenhek Signed-off-by: Russell King commit 7e9740b11529a0a69789fbe92d324f293e6266f6 Author: Lennert Buytenhek Date: Mon Sep 18 23:17:36 2006 +0100 [ARM] 3821/1: iop3xx: switch iop32x/iop33x over to shared pci code Switch the iop32x and iop33x code over to the common PCI implementation, and remove the (nearly identical) iop32x and iop33x PCI implementations. Signed-off-by: Lennert Buytenhek Signed-off-by: Russell King commit 0cb015f9dea8a40d82d170be1a4f39ff909890bf Author: Lennert Buytenhek Date: Mon Sep 18 23:16:23 2006 +0100 [ARM] 3820/1: iop3xx: factor out shared pci code Merge the iop32x PCI code and iop33x PCI code into plat-iop/pci.c. Signed-off-by: Lennert Buytenhek Signed-off-by: Russell King commit e25d64f1242e8586f6e20c26fd876a4d956a6c45 Author: Lennert Buytenhek Date: Mon Sep 18 23:15:21 2006 +0100 [ARM] 3819/1: iop3xx: factor out shared i2c code Move the i2c bits shared between iop32x and iop33x to plat-iop/i2c.c and include/asm-arm/hardware/iop3xx.h. Signed-off-by: Lennert Buytenhek Signed-off-by: Russell King commit 7ae1f7ec525c32db441836ab0ab010b85cb819a2 Author: Lennert Buytenhek Date: Mon Sep 18 23:12:53 2006 +0100 [ARM] 3818/1: iop3xx: introduce arch/arm/plat-iop for shared iop32x/iop33x code Introduce the arch/arm/plat-iop directory, for code shared between the iop32x and iop33x, and move the common memory map setup bits there. Signed-off-by: Lennert Buytenhek Signed-off-by: Russell King commit 3f7e5815f4b774270e6506962de37af85aa9c830 Author: Lennert Buytenhek Date: Mon Sep 18 23:10:26 2006 +0100 [ARM] 3817/1: iop3xx: split the iop3xx mach into iop32x and iop33x Split the iop3xx mach type into iop32x and iop33x -- split the config symbols, and move the code in the mach-iop3xx directory to the mach-iop32x and mach-iop33x directories. Signed-off-by: Lennert Buytenhek Signed-off-by: Russell King commit 98954df6917cb8f7e65f4f0f79ed641112fcf6b6 Author: Lennert Buytenhek Date: Mon Sep 18 23:02:25 2006 +0100 [ARM] 3816/1: iop3xx: rename config symbols Rename CONFIG_ARCH_IOP321 to CONFIG_ARCH_IOP32X and CONFIG_ARCH_IOP331 to CONFIG_ARCH_IOP33X. Signed-off-by: Lennert Buytenhek Signed-off-by: Russell King commit cdf3f8e0387e81477dee72ecb2e3be28feac05c8 Author: Ben Dooks Date: Tue Sep 19 10:04:18 2006 +0100 [ARM] 3836/1: S3C24XX: Clear both EINT and INT status before sleep Clear both the EINT and INT status before going to sleep, otherwise we may end up being woken by something that was not set in our wakeup map. Signed-off-by: Ben Dooks Signed-off-by: Russell King commit 50dedf168c1afd23cbc6c4fd8429c9e931b4e813 Author: Ben Dooks Date: Mon Sep 18 10:19:06 2006 +0100 [ARM] 3806/2: S3C2412: Fix GPIO VA when only S3C2412 selected The s3c24xx_va_gpio2 variable is only used when the S3C2412 and another cpu-type is being used in the kernel. This patch ensures it is not set when it is not being used. Fixes bug report by Thomas Gleixner. Signed-off-by: Ben Dooks Signed-off-by: Russell King commit 0033a2f0d028400ad04588efbd5740c73f0eb740 Author: Ben Dooks Date: Tue Sep 19 09:51:32 2006 +0100 [ARM] 3803/2: S3C24XX: PM split S3C2410 out of core pm Remove the S3C2410 specific items out of the core PM code. Add sysdev driver for all the S3C24XX series that used the S3C2410 PM code. Signed-off-by: Ben Dooks Signed-off-by: Russell King commit 34348012d6b43eca5e241fe97381420d5758866c Author: Ben Dooks Date: Mon Sep 18 23:52:03 2006 +0100 [ARM] 3800/2: S3C2412: DMA channel mappings DMA channel mappings for the S3C2312 Signed-off-by: Ben Dooks Signed-off-by: Russell King commit 197c9444d6093b70c8faa24e7ab04a2423c9d14d Author: Lennert Buytenhek Date: Sat Sep 16 10:52:02 2006 +0100 [ARM] 3814/1: move 80200 dma_inv_range() erratum check out of line On stepping A0/A1 of the 80200, invalidating D-cache by line doesn't clear the dirty bits, which means that if we invalidate a dirty line, the dirty data can still be written back to memory later on. To work around this, dma_inv_range() on these two processors is implemented as dma_flush_range() (i.e. do a clean D-cache line before doing the invalidate D-cache line.) For this, we currently have a processor ID check in xscale_dma_inv_range(), but a better solution is to add a separate cache_fns and proc_info for A0/A1 80200. Signed-off-by: Lennert Buytenhek Signed-off-by: Russell King commit 51635ad282ead58b9d164f07e1fb62a9456b427c Author: Lennert Buytenhek Date: Sat Sep 16 10:50:22 2006 +0100 [ARM] 3813/1: prevent >= 4G /dev/mem mmap() Prevent userland from mapping in physical address regions >= 4G by checking for that in valid_mmap_phys_addr_range(). Unfortunately, we cannot override valid_mmap_phys_addr_range() without also overriding valid_phys_addr_range(), so copy drivers/char/mem.c's version of valid_phys_addr_range() over to arch/arm/mm/mmap.c as well. Signed-off-by: Lennert Buytenhek Signed-off-by: Russell King commit bf11d26cb96fe8221ef056eedab692e91634cc65 Author: Lennert Buytenhek Date: Sat Sep 16 10:48:02 2006 +0100 [ARM] 3811/1: ep93xx: add cirrus logic edb9312 support Add Cirrus Logic EDB9312 support. Signed-off-by: Lennert Buytenhek Signed-off-by: Russell King commit 8dd5c845bbc26c3517398abc3e5477b4b42e7176 Author: Lennert Buytenhek Date: Sat Sep 16 10:47:18 2006 +0100 [ARM] 3810/1: switch atomic helpers over to raw_local_irq_{save,restore} Now that we have raw_* variants of local_irq_$FOO(), switch the atomic helpers over to use those raw_* variants. This is necessary when using lockdep on pre-ARMv6 hardware, as lockdep uses atomic_t counters in the trace_hardirqs_off() path. Signed-off-by: Lennert Buytenhek Signed-off-by: Russell King commit 34148c6990d2f0107b53fe4ddf29b1ba30e613d3 Author: Ben Dooks Date: Sat Sep 16 00:12:53 2006 +0100 [ARM] 3805/1: S3C2412: LCD register update Add LCD register definitions for the S3C2412. Signed-off-by: Ben Dooks Signed-off-by: Russell King commit 3e9fc8e5de0fb00226325cf34eb08411eb72ec6d Author: Ben Dooks Date: Sat Sep 16 00:11:32 2006 +0100 [ARM] 3804/1: S3C2442: LCD register update Add LCD register definitions for the S3C2442. Signed-off-by: Ben Dooks Signed-off-by: Russell King commit 58095d7f39edc919cd3c63c6109ad282e7085da1 Author: Ben Dooks Date: Sat Sep 16 00:04:23 2006 +0100 [ARM] 3802/1: S3C24XX: PM tidy up cache flushing Change to using flush_cache_all() in pm.c and also remove the need to flush the cache in the PM code. This changes the sleep.S code to have an entry to store the registers for resume, and then a second entry (after the caches are cleaned) to do the suspend and resume. Signed-off-by: Ben Dooks Signed-off-by: Russell King commit 1e582fc73781da47eddd90c75bf97f191e4f450f Author: Ben Dooks Date: Sat Sep 16 00:01:39 2006 +0100 [ARM] 3801/1: S3C24XX: Move IRQ PM out of pm.c Seperate the IRQ power management code out of the pm.c file, and add it to the relevant system class devices. Also make the suspend and resume code take notice of the fact these registers can be moved by compile time code. Add fix from Ilya Yanok to also save the INTSUBMSK over sleep. Signed-off-by: Ben Dooks Signed-off-by: Russell King commit 3fc3a25ba47735296984ddbb2e6ba504017ec3e1 Author: Ben Dooks Date: Fri Sep 15 23:46:20 2006 +0100 [ARM] 3799/1: S3C2442: DMA channel mappings DMA channel mappings for the S3C2442 Signed-off-by: Ben Dooks Signed-off-by: Russell King commit 98c418a002ce5f3110eeb31d1ce8261f5199997d Author: Ben Dooks Date: Fri Sep 15 23:45:17 2006 +0100 [ARM] 3798/1: S3C2440: DMA channel mappings S3C2440 DMA channel mappings Signed-off-by: Ben Dooks Signed-off-by: Russell King commit c374fe7148f1b13854186a7a14c4a2c4ffe3134b Author: Ben Dooks Date: Fri Sep 15 23:44:00 2006 +0100 [ARM] 3797/1: S3C2410: DMA channel mappings DMA channel mappings for the S3C2410 Signed-off-by: Ben Dooks Signed-off-by: Russell King commit 505788cccbb96cd496b646594c8a5fcdc26bc2d9 Author: Ben Dooks Date: Fri Sep 15 23:42:24 2006 +0100 [ARM] 3796/1: S3C24XX: Add per-cpu DMA channel mapper Allow each CPU type in the S3C24XX range to select the DMA channel mapping it supports. We change the DMA registration to use an virtual channel number that the DMA system will allocate to a hardware channel at request time. Signed-off-by: Ben Dooks Signed-off-by: Russell King commit fd88edd20fb0e8e2729aa8ce565316242189ceea Author: Ben Dooks Date: Fri Sep 15 23:34:34 2006 +0100 [ARM] 3795/1: S3C24XX: add base AC97 registers Add base definitions for the AC97 register definitions. Signed-off-by: Ben Dooks Signed-off-by: Russell King commit 5e203d686277d87f0a6c9521a3a099ca10ee808d Author: Stephen Rothwell Date: Mon Sep 25 13:36:31 2006 +1000 [POWERPC] fix ioremap for a combined kernel Signed-off-by: Stephen Rothwell commit eecba334bdef03ce4918c3193f9b81791a715fb9 Author: Stephen Rothwell Date: Mon Sep 25 13:35:09 2006 +1000 [POWERPC] modify PCI code for a merged kernel Signed-off-by: Stephen Rothwell commit de0138da0f8cf406c096daec7494a5cbebce2e5c Author: Stephen Rothwell Date: Mon Sep 25 13:30:51 2006 +1000 [POWERPC] The two vio HVC backends clash Make sure only one of them actually registers as a driver. Also, remove cast from get_property(). Signed-off-by: Stephen Rothwell commit ef26a46f8c501f6888cc78bcc4a2dc1efea1e733 Author: Stephen Rothwell Date: Mon Sep 25 13:27:17 2006 +1000 [POWERPC] iSeries: set FW_FEATURE_ISERIES earlier This will help in the combined kernel as some really early things depend on being able to check this. Signed-off-by: Stephen Rothwell commit 597811ec167fa01c926a0957a91d9e39baa30e64 Author: Stephen Hemminger Date: Sun Sep 24 20:13:03 2006 -0700 [TCP]: make cubic the default Change default congestion control used from BIC to the newer CUBIC which it the successor to BIC but has better properties over long delay links. Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit 3d2573f7ebe507e372a23cdd3c8b03305d6e90aa Author: Stephen Hemminger Date: Sun Sep 24 20:11:58 2006 -0700 [TCP]: default congestion control menu Change how default TCP congestion control is chosen. Don't just use last installed module, instead allow selection during configuration, and make sure and use the default regardless of load order. Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit 5b7c714ec27584b18279b741b6043016f8adb9de Author: Roland Dreier Date: Sun Sep 24 20:09:33 2006 -0700 [ATM] he: Fix __init/__devinit conflict he_init_one() is declared __devinit, but calls lots of init functions that are marked __init. However, if CONFIG_HOTPLUG is enabled, __devinit functions go into normal .text, which leads to WARNING: drivers/atm/he.o - Section mismatch: reference to .init.text: from .text between 'he_start' (at offset 0x2130) and 'he_service_tbrq' Fix this by changing the __init functions to __devinit. Signed-off-by: Roland Dreier Signed-off-by: David S. Miller commit 7c250413e5b7c3dfae89354725b70c76d7621395 Author: Al Viro Date: Mon Sep 25 02:57:57 2006 +0100 [PATCH] pata_pdc2027x iomem annotations Signed-off-by: Al Viro Signed-off-by: Linus Torvalds commit 355edd2e396ef919d14a605fb4e45466ee2b64d1 Author: Al Viro Date: Mon Sep 25 02:57:22 2006 +0100 [PATCH] fix idiocy in asd_init_lseq_mdp() To whoever had written that code: a) priority of >> is higher than that of & b) priority of typecast is higher than that of any binary operator c) learn the fscking C Signed-off-by: Al Viro Signed-off-by: Linus Torvalds commit 3cc27547d6ee2d50ecdd11e9127bc3cd1947e8dd Author: Al Viro Date: Mon Sep 25 02:55:40 2006 +0100 [PATCH] SCSI gfp_t annotations Signed-off-by: Al Viro Signed-off-by: Linus Torvalds commit 855fc73bf81e8f99606d6f5914c5b7c3b079d718 Author: Al Viro Date: Mon Sep 25 02:54:46 2006 +0100 [PATCH] wrong thing iounmapped (qla3xxx) ql3xxx_probe() does ioremap and stores result in ->mem_map_registers. On failure exit it does iounmap() of the same thing. OTOH, ql3xxx_remove() does iounmap() of ->mmap_virt_base which is (a) never assigned and (b) never used other than in that iounmap() call. Signed-off-by: Al Viro Signed-off-by: Linus Torvalds commit ee111d111b69c2a216d674081107fe3b3829aa9a Author: Al Viro Date: Mon Sep 25 02:53:53 2006 +0100 [PATCH] qla3xxx iomem annotations the driver is still shite, though... Signed-off-by: Al Viro Signed-off-by: Linus Torvalds commit 8a1cdc9ca264c49ad0b896e43468fe6a4b0b646c Author: Matthew Wilcox Date: Sun Sep 24 20:22:52 2006 -0600 [PATCH] Revert ABI-breaking change in /proc Some user tools parse /proc/scsi/scsi, so we can't yet change the names. Change the existing ones back to their old names, and add an admonition to not make the same mistake that I did. Andrew Morton reports that this was breaking YDL 4.1 userspace. Signed-off-by: Matthew Wilcox Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 0d6c7ae22d4fadbc83677ea1a6144eea8911e319 Author: Yasuyuki Kozakai Date: Sun Sep 24 19:28:47 2006 -0700 [NETFILTER]: Add dscp,DSCP headers to header-y This patch adds xt_dscp.h and xt_DSCP.h to the kernel headers which are exported via 'make headers_install'. These are necessary for userspace to add rules using dscp match and DSCP target. Signed-off-by: Yasuyuki Kozakai Signed-off-by: David S. Miller commit 6a3670c4f1b97373425340ab2dc0a66c25983d46 Author: Al Viro Date: Sun Sep 24 23:45:29 2006 +0100 [PATCH] missing include (free_irq() use) Signed-off-by: Al Viro Signed-off-by: Linus Torvalds commit ae97dd9af17f0c7f5142b46c4289623176c477f3 Author: Al Viro Date: Sun Sep 24 23:42:57 2006 +0100 [PATCH] NULL noise removal Signed-off-by: Al Viro Signed-off-by: Linus Torvalds commit 3e597c6045502dd0fa98a61aa95ba178f8a2cc03 Author: Al Viro Date: Sun Sep 24 23:42:20 2006 +0100 [PATCH] fix iptables __user misannotations Signed-off-by: Al Viro Signed-off-by: Linus Torvalds commit 1db2ea398ffbfd9ea46d509ff0e4a85bb4b8c0ea Author: Al Viro Date: Sun Sep 24 23:41:42 2006 +0100 [PATCH] netlabel gfp annotations Signed-off-by: Al Viro Signed-off-by: Linus Torvalds commit 8abf1064c786ef5435b2d53cc8e9ebee13020de6 Author: Al Viro Date: Sun Sep 24 23:41:00 2006 +0100 [PATCH] libata won't build on SUN4 marked as such... Signed-off-by: Al Viro Signed-off-by: Linus Torvalds commit 9317fd4c60962d3a9423b5f9bb5d1b10cf8a0699 Author: Al Viro Date: Sun Sep 24 23:40:00 2006 +0100 [PATCH] libata won't build on m68k and m32r no ioread*(), for one thing Signed-off-by: Al Viro Signed-off-by: Linus Torvalds commit 638b093255e12e066ae16b8750f37383603f7bd8 Author: Al Viro Date: Sun Sep 24 23:39:25 2006 +0100 [PATCH] restore libata build on frv Signed-off-by: Al Viro Signed-off-by: Linus Torvalds commit 2722de7fed1601eb7de84f929e00776d37a4cf5f Author: David Woodhouse Date: Sun Sep 24 23:44:57 2006 +0100 Don't remove $(INSTALL_HDR_PATH)/install before headers_install. Signed-off-by: David Woodhouse commit 5cc8d246d0ebbdf827d4bb7c3de175377d244d73 Author: Jesper Juhl Date: Sun Sep 24 14:01:08 2006 +0200 kbuild: add distclean info to 'make help' and more details for 'clean' Add distclean info, that was previously missing, to 'make help'. Also add a few more details to the 'make clean' help text. Signed-off-by: Jesper Juhl Signed-off-by: Sam Ravnborg commit 5026b38cd2cd98e65f34cc6b079d5a155eae5881 Author: Randy Dunlap Date: Fri Sep 22 12:37:56 2006 -0700 dontdiff: add utsrelease.h Add auto-generated utsrelease.h to dontdiff file. Signed-off-by: Randy Dunlap Signed-off-by: Sam Ravnborg commit a5fa393b54c98044f50b0768f82336c510e68f3d Author: Rolf Eike Beer Date: Mon Aug 14 08:16:47 2006 +0200 kbuild: fix "mkdir -p" usage in scripts/package/mkspec "mkdir -p" does not only mean not to complain if the directory already exists, but also to create the parent directories if needed. This patch removes "lib" from the list of directories to create as we will also create "lib/modules". Signed-off-by: Rolf Eike Beer Signed-off-by: Sam Ravnborg commit 1ef988569051d47e990fe5bbea22fb9b64152098 Author: Robert P. J. Day Date: Tue Sep 12 12:38:19 2006 -0400 kbuild: correct and clarify versioning info in Makefile The attached patch clarifies the creation of KERNELRELEASE and corrects an error regarding the use of $(LOCALVERSION). Signed-off-by: Sam Ravnborg commit 2e99f3190f274c6783758ff511edb64e60753c9f Author: Robert P. J. Day Date: Thu Sep 21 09:39:41 2006 -0400 kbuild: fixup Documentation/kbuild/modules.txt Signed-off-by: Sam Ravnborg commit da7c04083c113c67800f1e13fe92a186e1f9084e Author: Aron Griffis Date: Thu Sep 21 00:27:02 2006 -0400 kbuild: Extend kbuild/defconfig tags support to exuberant ctags The following patch extends kbuild/defconfig tags support to exuberant ctags. The previous support is only for emacs ctags/etags programs. This patch also corrects the kconfig regex for the emacs invocation. Previously it would miss some instances because it assumed /^config instead of /^[ \t]*config Signed-off-by: Aron Griffis Signed-off-by: Sam Ravnborg commit 39e6e9cf902462abe624735fd95a51b01ceeda6f Author: Bryce Harrington Date: Wed Sep 20 12:43:37 2006 -0700 kbuild: fix for some typos in Documentation/makefiles.txt I noticed a few typos while reading makefiles.txt to learn about the kbuild system. Attached is a patch against 2.6.18 to fix them. Remove trailing whitespace while we are there.. Signed-off-by: Bryce Harrington Signed-off-by: Sam Ravnborg commit 1c7bafe7206d928eaccbcbd08d868733e0fb7054 Author: Robert P. J. Day Date: Wed Sep 13 07:57:50 2006 -0400 kbuild: clarify "make C=" build option Clarify the use of "make C=" in the top-level Makefile, and fix a typo in the Documentation file. Signed-off-by: Sam Ravnborg commit e41217129c66775d59c95978378ca42c53dd42c6 Author: Robert P. J. Day Date: Mon Sep 11 12:39:19 2006 -0400 Documentaion: update Documentation/Changes with minimum versions Based on conversations with greg kh (and noticing a simple typo), these are the actual minimal versions for 2.6.18. Signed-off-by: Sam Ravnborg commit b32c8268475358cfa18cf9373e6f95c661a7a142 Author: Robert P. J. Day Date: Mon Sep 11 12:09:42 2006 -0400 kbuild: update help in top level Makefile Signed-off-by: Sam Ravnborg commit c53ddacdc08d41f812f1e637d214251d14c07a3d Author: Kirill Korotaev Date: Thu Sep 7 13:08:54 2006 -0700 kbuild: fail kernel compilation in case of unresolved module symbols At stage 2 modpost utility is used to check modules. In case of unresolved symbols modpost only prints warning. IMHO it is a good idea to fail compilation process in case of unresolved symbols (at least in modules coming with kernel), since usually such errors are left unnoticed, but kernel modules are broken. - new option '-w' is added to modpost: if option is specified, modpost only warns about unresolved symbols - modpost is called with '-w' for external modules in Makefile.modpost Signed-off-by: Andrey Mirkin Signed-off-by: Kirill Korotaev Signed-off-by: Andrew Morton Signed-off-by: Sam Ravnborg commit 2212692913281e5fddb1c50c8c123378cfc42169 Author: Sam Ravnborg Date: Tue Aug 8 16:45:41 2006 +0200 kbuild: remove debug left-over from Makefile.host Signed-off-by: Sam Ravnborg commit 7b5b82038184d19f611be166a70fd11824109a71 Author: Sam Ravnborg Date: Mon Aug 7 21:55:33 2006 +0200 kbuild: create output directory for hostprogs with O=.. build hostprogs-y only supported creating output directory for the final program. Extend this to also cover the situation where a .o file (used when host program is made from compositie objects) is locate in another directory. First user of this is the built-in lxdialog that. Signed-off-by: Sam Ravnborg commit 93659af1ce4974b1882668fee06458c0ac9315fd Author: Sam Ravnborg Date: Wed Aug 9 08:23:55 2006 +0200 kbuild: add missing return statement in modpost.c:secref_whitelist() Noticed by: Magnus Damm Signed-off-by: Sam Ravnborg commit 4635281c8ea26e9f718c28f8f7713d10ad332eff Author: Sam Ravnborg Date: Tue Aug 8 21:41:18 2006 +0200 kbuild: preperly align SYSMAP output Align filenames for SYSMAP with other filenames Signed-off-by: Sam Ravnborg commit b805aa0e79c78bd05ad1f5c52ec126a19531edb0 Author: Sam Ravnborg Date: Tue Aug 8 21:36:08 2006 +0200 kbuild: make -rR is now default Do not specify -rR anymore - it is default. Signed-off-by: Sam Ravnborg commit 45d506bd65e2e35881d8276c111b647807823d19 Author: Sam Ravnborg Date: Tue Aug 8 21:35:14 2006 +0200 kbuild: make V=2 tell why a target is rebuild tell why a a target got build enabled by make V=2 Output (listed in the order they are checked): (1) - due to target is PHONY (2) - due to target missing (3) - due to: file1.h file2.h (4) - due to command line change (5) - due to missing .cmd file (6) - due to target not in $(targets) (1) We always build PHONY targets (2) No target, so we better build it (3) Prerequisite is newer than target (4) The command line stored in the file named dir/.target.cmd differed from actual command line. This happens when compiler options changes (5) No dir/.target.cmd file (used to store command line) (6) No dir/.target.cmd file and target not listed in $(targets) This is a good hint that there is a bug in the kbuild file This patch is inspired by a patch from: Milton Miller Cc: Milton Miller Signed-off-by: Sam Ravnborg commit 12715d20af9fd9179daca7a1cd2cf3db3c2c494f Author: Sam Ravnborg Date: Tue Aug 8 20:43:39 2006 +0200 kbuild: modpost on vmlinux regardless of CONFIG_MODULES Based on patch from: Magnus Damm This has the advantage that all section mismatch checks are run regardless of modules being enabled or not. When running modpost on vmlinux output: MODPOST vmlinux When running modpost on modules output count of modules like this: MODPOST 5 modules Signed-off-by: Sam Ravnborg commit 9e157a5aa899f1ef73780e4755b57ddeb9225079 Author: Magnus Damm Date: Tue Aug 8 17:32:11 2006 +0900 kbuild: ignore references from ".pci_fixup" to ".init.text" The modpost code is extended to ignore references from ".pci_fixup" to ".init.text". Signed-off-by: Magnus Damm commit a07f6033ca135a94a69c6874d028f01338e2535c Author: Jan Engelhardt Date: Thu Jul 27 22:14:29 2006 +0200 kbuild: linguistic fixes for Documentation/kbuild/makefiles.txt I have done a look-through through Documentation/kbuild/ and my corrections (proposed) are attached. Cc'ed are original author Michael (responsible for comitting changes to these files?), Sam (kbuild maintainer), Adrian (-trivial maintainer). Signed-off-by: Jan Engelhardt Signed-off-by: Sam Ravnborg commit d9a7ff664667e1991652db0bb0cb0abea96ec716 Author: Jan Engelhardt Date: Thu Jul 27 22:14:29 2006 +0200 kbuild: linguistic fixes for Documentation/kbuild/modules.txt I have done a look-through through Documentation/kbuild/ and my corrections (proposed) are attached. Cc'ed are original author Michael (responsible for comitting changes to these files?), Sam (kbuild maintainer), Adrian (-trivial maintainer). Signed-off-by: Jan Engelhardt Signed-off-by: Sam Ravnborg commit 83dcde4e1b64e39d34358ea9c5e6259af6aa50da Author: Jan Engelhardt Date: Thu Jul 27 22:14:29 2006 +0200 kconfig: linguistic fixes for Documentation/kbuild/kconfig-language.txt I have done a look-through through Documentation/kbuild/ and my corrections (proposed) are attached. Cc'ed are original author Michael (responsible for comitting changes to these files?), Sam (kbuild maintainer), Adrian (-trivial maintainer). Signed-off-by: Jan Engelhardt Signed-off-by: Sam Ravnborg commit 65ff22ee3bd0b0816e5e192b59f24a7538e5d497 Author: Olaf Hering Date: Tue Jul 25 18:42:26 2006 -0700 remove RPM_BUILD_ROOT from asm-offsets.h No file in rpm binary package should have the RPM_BUILD_ROOT string in it. To simplify building of external modules, our kernel-source package contains some temp files from the Kbuild system. asm/asm-offsets.h is one of the files that contains the absolute path if make O=$O is used. * This file was generated by /var/tmp/kernel-source-2.6.14_rc4-build/usr/src/linux-2.6.14-rc4-2/Kbuild Remove the $RPM_BUILD_ROOT string in the shipped tempfile. Signed-off-by: Olaf Hering Signed-off-by: Andrew Morton Signed-off-by: Sam Ravnborg commit 07aea3a71fc6b07744691eec2dfea705a7b30280 Author: Sam Ravnborg Date: Sun Jul 23 20:47:50 2006 +0200 kbuild: use in-kernel unifdef Let headers_install use in-kernel unifdef Signed-off-by: Sam Ravnborg commit 14a036d2dc304797f3624c06bd6d2a1e9b59e45a Author: Sam Ravnborg Date: Sun Jul 23 20:41:30 2006 +0200 kbuild: replace use of strlcpy with a dedicated implmentation in unifdef Signed-off-by: Sam Ravnborg commit 01f1c8799ad8b23c190d59cf1c9e28e6fed390a4 Author: Sam Ravnborg Date: Sun Jul 23 20:39:59 2006 +0200 kbuild: add unifdef This patch contains a raw copy of unifdef.c Next patch will modify it and add infrastructure to use it Adding unifdef to the kernel is acked by the author. The reason to add unifdef as part of the kernel source is that it is not yet a common utility on most distributions. Signed-off-by: Sam Ravnborg commit 48f1f0589dd09df6ea07d41c737db3218ad2cb79 Author: Sam Ravnborg Date: Sun Jul 23 19:37:44 2006 +0200 kbuild: consistently decide when to rebuild a target Consistently decide when to rebuild a target across all of if_changed, if_changed_dep, if_changed_rule. PHONY targets are now treated alike (ignored) for all targets While add it make Kbuild.include almost readable by factoring out a few bits to some common variables and reuse this in Makefile.build. Signed-off-by: Sam Ravnborg commit d3660a8cbdfad620af88b85b7bbfff29160f14c2 Author: Matthew Wilcox Date: Thu Jul 13 12:54:07 2006 -0600 kconfig: support DOS line endings Kconfig doesn't currently handle config files with DOS line endings. While these are, of course, an abomination, etc, etc, it can be handy to not have to convert them first. It's also a tiny patch and even adds support for lines ending in just \r or even \n\r. Signed-off-by: Matthew Wilcox Signed-off-by: Sam Ravnborg commit 6d71627581e96efb3717960b79fc2167a4617977 Author: David Woodhouse Date: Sun Sep 24 22:16:03 2006 +0100 New 'make headers_install_all' target. Install headers for _all_ architectures, suitable for making a tarball release or extracting them for use in a separate package. Signed-off-by: David Woodhouse commit de78912582bc1f95733d53e0d40779c0cd7b0686 Author: David Woodhouse Date: Sun Sep 24 22:15:14 2006 +0100 Use dependencies for 'make headers_install'. Re-export header files only if either they or their controlling Kbuild file has actually changed. Also allow for similar dependencies with 'headers_check', once we properly create the dependencies for those. Signed-off-by: David Woodhouse commit e41542f5167d6b506607f8dd111fa0a3e468ccb8 Author: Ian McDonald Date: Fri Sep 22 14:28:01 2006 +1200 [DCCP]: Introduce dccp_probe This adds DCCP probing shamelessly ripped off from TCP probes by Stephen Hemminger. I've put in here support for further CCID3 variables as well. Andrea/Arnaldo might look to extend for CCID2. Signed-off-by: Ian McDonald Signed-off-by: Arnaldo Carvalho de Melo commit b4daf69722c49670d355d66439abda5ab5d4c5db Author: David Woodhouse Date: Sun Sep 24 22:07:25 2006 +0100 [S390] Unexport , export in its place. Signed-off-by: David Woodhouse commit 9e72cbf353e259bd30ab472d72d7bdb9be23fb12 Author: David Woodhouse Date: Sun Sep 24 22:06:48 2006 +0100 Remove dead netfilter_logging.h from include/linux/Kbuild Signed-off-by: David Woodhouse commit 3dd9a7c3a155ee96160876cba92439fdc96d7e0b Author: Ian McDonald Date: Fri Sep 22 14:26:44 2006 +1200 [DCCP]: Use constants for CCIDs With constants for CCID numbers this now uses them in some places. Signed-off-by: Ian McDonald Signed-off-by: Arnaldo Carvalho de Melo commit b83eff641ed39bd631535b9a8971e161b056f541 Author: Ian McDonald Date: Fri Sep 22 14:25:36 2006 +1200 [DCCP]: Introduce constants for CCID numbers Signed-off-by: Ian McDonald Signed-off-by: Arnaldo Carvalho de Melo commit 0d5dc6c2dd7a3cd2b2f505b0625c4ec9c0e5b4f0 Author: Mark Fasheh Date: Thu Sep 14 14:44:51 2006 -0700 ocfs2: Teach ocfs2_drop_lock() to use ->set_lvb() callback With this, we don't need to pass an additional struct with function pointer. Now that the callbacks are fully used, comment the remaining API. Signed-off-by: Mark Fasheh commit b5e500e23e532795fbf79a3cdbcb014f207fdb2a Author: Mark Fasheh Date: Wed Sep 13 22:01:16 2006 -0700 ocfs2: Remove ->unblock lockres operation Have ocfs2_process_blocked_lock() call ocfs2_generic_unblock_lock(), which gets to be ocfs2_unblock_lock() now that it's the only possible unblock function. Remove the ->unblock() callback from the structure, and all lock type specific unblock functions. Signed-off-by: Mark Fasheh commit cc567d89b3af4294580c9c97610d2c1018032e33 Author: Mark Fasheh Date: Wed Sep 13 21:52:21 2006 -0700 ocfs2: move downconvert worker to lockres ops This way lock types don't have to manually pass it to ocfs2_generic_unblock_lock(). Signed-off-by: Mark Fasheh commit 08280f11de91beac2f5234ce5fc2ed246dfe6a86 Author: Mark Fasheh Date: Wed Sep 13 21:41:56 2006 -0700 ocfs2: Remove unused dlmglue functions The meta data unblocking code no longer needs ocfs2_do_unblock_meta() or ocfs2_can_downconvert_meta_lock(), so remove them. Signed-off-by: Mark Fasheh commit 810d5aeba18825c754cf47db59eb83814a54bb27 Author: Mark Fasheh Date: Wed Sep 13 21:39:52 2006 -0700 ocfs2: Have the metadata lock use generic dlmglue functions Fill in the ->check_downconvert and ->set_lvb callbacks with meta data specific operations and switch ocfs2_unblock_meta() to call ocfs2_generic_unblock_lock() Signed-off-by: Mark Fasheh commit 5ef0d4ea087740908f4fb57606f6c09e3b90c477 Author: Mark Fasheh Date: Wed Sep 13 21:21:52 2006 -0700 ocfs2: Add ->set_lvb callback in dlmglue This allows a lock type to set the value block before downconvert. Signed-off-by: Mark Fasheh commit 16d5b9567ad5241b5c6e0cc4778c1af6c04bb801 Author: Mark Fasheh Date: Wed Sep 13 21:10:12 2006 -0700 ocfs2: Add ->check_downconvert callback in dlmglue This will allow lock types to force a requeue of a lock downconvert. Signed-off-by: Mark Fasheh commit f7fbfdd1fc91543253ba742a926a29c289f8e6ca Author: Mark Fasheh Date: Wed Sep 13 21:02:29 2006 -0700 ocfs2: Check for refreshing locks in generic unblock function Tidy up the exit path a bit too. Signed-off-by: Mark Fasheh commit b80fc012e03f8f207911b5eafe6916b000e03c8b Author: Mark Fasheh Date: Tue Sep 12 22:08:14 2006 -0700 ocfs2: don't unconditionally pass LVB flags Allow a lock type to specifiy whether it makes use of the LVB. The only type which does this right now is the meta data lock. This should save us some space on network messages since they won't have to needlessly transmit value blocks. Signed-off-by: Mark Fasheh commit aa2623ad80577b37637914e809bafa36994ccdf1 Author: Mark Fasheh Date: Tue Sep 12 21:58:23 2006 -0700 ocfs2: combine inode and generic blocking AST functions There is extremely little difference between the two now. We can remove the callback from ocfs2_lock_res_ops as well. Signed-off-by: Mark Fasheh commit 54a7e7552e484c08db221e49c4519ccdeb8882d0 Author: Mark Fasheh Date: Tue Sep 12 21:49:13 2006 -0700 ocfs2: Add ->get_osb() dlmglue locking operation Will be used to find the ocfs2_super structure from a given lockres. Signed-off-by: Mark Fasheh commit 2a45f2d13e1dd91bc110801f5818379f2699509c Author: Mark Fasheh Date: Tue Sep 12 21:36:58 2006 -0700 ocfs2: remove ->unlock_ast() callback from ocfs2_lock_res_ops This was always defined to the same function in all locks, so clean things up by removing and passing ocfs2_unlock_ast() directly to the DLM. Signed-off-by: Mark Fasheh commit e92d57df273a3a7e57688e1d4f5a894870d550d2 Author: Mark Fasheh Date: Tue Sep 12 21:34:35 2006 -0700 ocfs2: combine inode and generic AST functions There is extremely little difference between the two now. We can remove the callback from ocfs2_lock_res_ops as well. Signed-off-by: Mark Fasheh commit f625c9793b6cc64aeb1b6387039d09019c214352 Author: Mark Fasheh Date: Tue Sep 12 21:24:53 2006 -0700 ocfs2: Clean up lock resource refresh flags Use of the refresh mechanism is lock-type wide, so move knowledge of that to the ocfs2_lock_res_ops structure. Signed-off-by: Mark Fasheh commit 24c19ef40474c3930597f31ae233dc06319bd881 Author: Mark Fasheh Date: Fri Sep 22 17:28:19 2006 -0700 ocfs2: Remove i_generation from inode lock names OCFS2 puts inode meta data in the "lock value block" provided by the DLM. Typically, i_generation is encoded in the lock name so that a deleted inode on and a new one in the same block don't share the same lvb. Unfortunately, that scheme means that the read in ocfs2_read_locked_inode() is potentially thrown away as soon as the meta data lock is taken - we cannot encode the lock name without first knowing i_generation, which requires a disk read. This patch encodes i_generation in the inode meta data lvb, and removes the value from the inode meta data lock name. This way, the read can be covered by a lock, and at the same time we can distinguish between an up to date and a stale LVB. This will help cold-cache stat(2) performance in particular. Since this patch changes the protocol version, we take the opportunity to do a minor re-organization of two of the LVB fields. Signed-off-by: Mark Fasheh commit f9e2d82e6395cfa0802446b54b63cc412089d82c Author: Mark Fasheh Date: Tue Sep 12 15:35:49 2006 -0700 ocfs2: Encode i_generation in the meta data lvb When i_generation is removed from the lockname, this will help us determine whether a meta data lvb has information that is in sync with the local struct inode. Signed-off-by: Mark Fasheh commit 4d3b83f7364269b66cdda271f680bd99e77afd96 Author: Mark Fasheh Date: Tue Sep 12 15:22:18 2006 -0700 ocfs2: Free up some space in the lvb lvb_version doesn't need to be a whole 32 bits. Make it an 8 bit field to free up some space. This should be backwards compatible until we use one of the fields, in which case we'd bump the lvb version anyway. Signed-off-by: Mark Fasheh commit 0027dd5bc213bc639e09dd002a4ab56bd18317c3 Author: Mark Fasheh Date: Thu Sep 21 16:51:28 2006 -0700 ocfs2: Remove special casing for inode creation in ocfs2_dentry_attach_lock() We can't use LKM_LOCAL for new dentry locks because an unlink and subsequent re-create of a name/inode pair may result in the lock still being mastered somewhere in the cluster. Signed-off-by: Mark Fasheh commit 1ba9da2ffa54b56a6346746248bfa38124d499a6 Author: Mark Fasheh Date: Fri Sep 8 14:22:54 2006 -0700 ocfs2: manually d_move() during ocfs2_rename() Make use of FS_RENAME_DOES_D_MOVE to avoid a race condition that can occur during ->rename() if we d_move() outside of the parent directory cluster locks, and another node discovers the new name (created during the rename) and unlinks it. d_move() will unconditionally rehash a dentry - which will leave stale data in the system. Signed-off-by: Mark Fasheh commit 349457ccf2592c14bdf13b6706170ae2e94931b1 Author: Mark Fasheh Date: Fri Sep 8 14:22:21 2006 -0700 [PATCH] Allow file systems to manually d_move() inside of ->rename() Some file systems want to manually d_move() the dentries involved in a rename. We can do this by making use of the FS_ODD_RENAME flag if we just have nfs_rename() unconditionally do the d_move(). While there, we rename the flag to be more descriptive. OCFS2 uses this to protect that part of the rename operation with a cluster lock. Signed-off-by: Mark Fasheh Cc: Trond Myklebust Cc: Al Viro Cc: Christoph Hellwig Signed-off-by: Andrew Morton commit 1390334b4c697b7588d5661fcf6acaeec409cf4c Author: Mark Fasheh Date: Fri Sep 8 14:21:43 2006 -0700 ocfs2: Remove the dentry vote This is unused now. Signed-off-by: Mark Fasheh commit 379dfe9d0db99ed33fb089fcb9c07f5f92566e9e Author: Mark Fasheh Date: Fri Sep 8 14:21:03 2006 -0700 ocfs2: Hook rest of the file system into dentry locking API Actually replace the vote calls with the new dentry operations. Make any necessary adjustments to get the scheme to work. Signed-off-by: Mark Fasheh commit 80c05846f604bab6d61e9732c262420ee9f5f358 Author: Mark Fasheh Date: Fri Sep 8 14:43:18 2006 -0700 ocfs2: Add dentry tracking API Replace the dentry vote mechanism with a cluster lock which covers a set of dentries. This allows us to force d_delete() only on nodes which actually care about an unlink. Every node that does a ->lookup() gets a read only lock on the dentry, until an unlink during which the unlinking node, will request an exclusive lock, forcing the other nodes who care about that dentry to d_delete() it. The effect is that we retain a very lightweight ->d_revalidate(), and at the same time get to make large improvements to the average case performance of the ocfs2 unlink and rename operations. This patch adds the higher level API and the dentry manipulation code. Signed-off-by: Mark Fasheh commit d680efe9d8fe0eb99d9dd063a4def6b362cdb40d Author: Mark Fasheh Date: Fri Sep 8 14:14:34 2006 -0700 ocfs2: Add new cluster lock type Replace the dentry vote mechanism with a cluster lock which covers a set of dentries. This allows us to force d_delete() only on nodes which actually care about an unlink. Every node that does a ->lookup() gets a read only lock on the dentry, until an unlink during which the unlinking node, will request an exclusive lock, forcing the other nodes who care about that dentry to d_delete() it. The effect is that we retain a very lightweight ->d_revalidate(), and at the same time get to make large improvements to the average case performance of the ocfs2 unlink and rename operations. This patch adds the cluster lock type which OCFS2 can attach to dentries. A small number of fs/ocfs2/dcache.c functions are stubbed out so that this change can compile. Signed-off-by: Mark Fasheh commit f0681062b8e369d9fb6f3ce10f4e3fc8cea5f910 Author: Mark Fasheh Date: Fri Sep 8 11:40:10 2006 -0700 ocfs2: Update dlmglue for new dlmlock() API File system lock names are very regular right now, so we really only need to pass an extra parameter to dlmlock(). Signed-off-by: Mark Fasheh commit ea5b3a187e2724fa9d08b2fbd3898c149ed95c6b Author: Mark Fasheh Date: Fri Sep 8 11:39:27 2006 -0700 ocfs2: Update dlmfs for new dlmlock() API We just need to add a namelen field to the user_lock_res structure, and update a few debug prints. Instead of updating all debug prints, I took the opportunity to remove a few that are likely unnecessary these days. Signed-off-by: Mark Fasheh commit 3384f3df5ed939a25135e1b2734fb7cdee1720a8 Author: Mark Fasheh Date: Fri Sep 8 11:38:29 2006 -0700 ocfs2: Allow binary names in the DLM The OCFS2 DLM uses strlen() to determine lock name length, which excludes the possibility of putting binary values in the name string. Fix this by requiring that string length be passed in as a parameter. Signed-off-by: Mark Fasheh commit e2c73698af3dac89328eef2b55f6746e0507d2bc Author: Mark Fasheh Date: Fri Sep 8 11:37:32 2006 -0700 ocfs2: Silence dlm error print An AST can be delivered via the network after a lock has been removed, so no need to print an error when we see that. Signed-off-by: Mark Fasheh commit 00e4d116a7ef94eb910be037912b0b2fc09f608b Author: Gerrit Renker Date: Fri Sep 22 09:33:58 2006 +0100 [DCCP]: Allow default/fallback service code. This has been discussed on dccp@vger and removes the necessity for applications to supply service codes in each and every case. If an application does not want to provide a service code, that's fine, it will be given 0. Otherwise, service codes can be set via socket options as before. This patch has been tested using various client/server configurations (including listening on multiple service codes). Signed-off-by: Gerrit Renker Signed-off-by: Arnaldo Carvalho de Melo commit e18fa700c9a31360bc8f193aa543b7ef7b39a06b Author: Jeff Garzik Date: Sun Sep 24 11:13:19 2006 -0400 Move several *_SUPER_MAGIC symbols to include/linux/magic.h. Signed-off-by: Jeff Garzik commit 2ed6d22cec37d9a3df4c5bacf1160dee7700106e Author: Russell King Date: Sun Sep 24 10:46:43 2006 +0100 [MMC] Don't check READY_FOR_DATA when reading There's no point checking to see if the card is ready to accept data when we're reading from it - sending the command only wastes precious bus bandwidth. Signed-off-by: Russell King commit 42431acbac43eb47c774c29d370f5c59136805bf Author: Russell King Date: Sun Sep 24 10:44:09 2006 +0100 [MMC] MMC_CAP_BYTEBLOCK flag for non-log2 block sizes capable hosts Some MMC hosts can only handle log2 block sizes. Unfortunately, the MMC password support needs to be able to send non-log2 block sizes. Provide a capability so that the MMC password support can decide whether it should use this support or not. The unfortunate side effect of this host limitation is that any MMC card protected by a password which is not a log2 block size can not be accessed on a host which only allows a log2 block size. This change just adds the flag. The MMC password support code needs updating to use it (if and when it is finally submitted.) Signed-off-by: Russell King commit 1b73c4bb063c4aa0cdc25425809bb87f65ee75af Author: James Bottomley Date: Sat Sep 23 22:07:20 2006 -0500 [SCSI] scsi_transport_fc: fixup netlink arguments nlmsg_multicast now takes an extra allocation flag, so add it to the use in the fibre channel transport class. Signed-off-by: James Bottomley commit dfdc58ba354adb80d67c99f7be84f95a8e02e466 Author: James Bottomley Date: Wed Sep 20 12:00:18 2006 -0400 [SCSI] SPI transport class: misc DV fixes Key more of the domain validation settings off the inquiry data from the disk (in particular, don't try IU or DT unless the disk claims to support them. Also add a new dv_in_progress flag to prevent recursive DV. Signed-off-by: James Bottomley commit 6973dddee264723720e18ad2be5a0a454c0f52d9 Author: David S. Miller Date: Sat Sep 23 18:32:38 2006 -0700 [SPARC64]: Update defconfig. Signed-off-by: David S. Miller commit e17ba8f51f69782abc4575dd30848ba5eafaa797 Author: David S. Miller Date: Sat Sep 23 18:31:42 2006 -0700 [SPARC64]: Fix sched_clock() wrapping every ~17 seconds. Unfortunately, sparc64 doesn't have an easy way to do a "64 X 64 --> 128" bit multiply like PowerPC and IA64 do. We were doing a "64 X 64 --> 64" bit multiple which causes overflow very quickly with a 30-bit quotient shift. So use a quotientshift count of 10 instead of 30, just like x86 and ARM do. This also fixes the wrapping of printk timestamp values every ~17 seconds. Signed-off-by: David S. Miller commit a07f353701acae77e023f6270e8af353b37af7c4 Author: Alan Cox Date: Fri Sep 15 15:34:32 2006 +0100 [SCSI] Switch some more scsi drivers to pci_get_device and refcounted pci structures Signed-off-by: Alan Cox Signed-off-by: James Bottomley commit 1a68d41a334a406d4bd35999f0be4d47f193e477 Author: Alan Cox Date: Mon Sep 18 19:18:34 2006 +0100 [SCSI] eata_pio cleanup and PCI fix This started as a PCI reference fixup but to do that I need to build it, to build it I need to fix it and its full of 32bitisms and uglies. It has been resurrected, I'm not sure if this is a thank you for the work on the license stuff or punishment for some unknown misdeed however 8). I've also fixed a memory scribble in the init code. One oddity - the changes from HZ * to constants are deliberate. Whoever originally wrote the code (or cleaned it up) used HZ for a cycle timing loop even though is not HZ related. I've put it back to the counts used in the old days when the driver was most used. Signed-off-by: Alan Cox Signed-off-by: James Bottomley commit 2538363eb51a70948ed36bf3971a728268d10766 Author: Mark Haverkamp Date: Tue Sep 19 09:00:39 2006 -0700 [SCSI] aacraid: README update Received from Mark Salyzyn: This patch to the driver's documentation adds a few new product entries, sorts the entries on OEM lines first for easy searching, followed by product id order to make it easier to compare against the open source pci list. The driver has 'family match' so is somewhat future proof, no code changes are required to recognize the new products. Signed-off-by: Mark Haverkamp Signed-off-by: James Bottomley commit ac5826ca91243272f97b3f01e80d71e3618f105f Author: Mark Haverkamp Date: Tue Sep 19 09:00:18 2006 -0700 [SCSI] aacraid: remove scsi_remove_device Received from Mark Salyzyn: Until the system is stabilized, I am suggesting the enclosed modification to prevent the driver from tickling the panic. Once sysfs and friends are stabilized, the patch may be backed out. We have yet to evaluate if we really want to relinquish existing Scsi Devices in any case, holding on to them as configuration of arrays comes and goes makes some sense as well. As a result, we have opted to pull the lines rather than comment them in legacy. Signed-off-by: Mark Haverkamp Signed-off-by: James Bottomley commit 76a7f8fdc0c2381ae1ba55ef71837712223ecb3c Author: Mark Haverkamp Date: Tue Sep 19 09:00:02 2006 -0700 [SCSI] aacraid: merge rx and rkt code Received from Mark Salyzyn: The only real difference between the rkt and rx platform modules is the offset of the message registers. This patch recognizes this similarity and simplifies the driver to reduce it's code footprint and to improve maintainability by reducing the code duplication. Visibly, the 'rkt.c' portion of this patch looks more complicated than it really is. View it as retaining the rkt-only specifics of the interface. Signed-off-by: Mark Haverkamp Signed-off-by: James Bottomley commit 653ba58d55feb708c6f97e6f3e84901b3a03c9c0 Author: Mark Haverkamp Date: Tue Sep 19 08:59:43 2006 -0700 [SCSI] aacraid: expose physical devices Received from Mark Salyzyn: I am placing this functionality into an insmod parameter. Normally the physical components are exported to sg, and are blocked from showing up in sd. Note that the pass-through I/O path via the driver through the Firmware to the physical disks is not an optimized path, the card is designed for Hardware RAID, elevator sorting and caching. This should not be used as a means for utilizing the aacraid based controllers as a generic scsi/SATA/SAS controller, performance should suck by a few percentage points, any RAID meta-data on the drives will confuse the controller about who owns the drives and there is a high risk of destroying content in both directions. Unreliable and for experimentation or strange controlled circumstances only. Signed-off-by: Mark Haverkamp Signed-off-by: James Bottomley commit 65101355450df2d935f8d56ac3abef279f28a0e2 Author: Mark Haverkamp Date: Tue Sep 19 08:59:23 2006 -0700 [SCSI] aacraid: misc cleanup Received from Mark Salyzyn: Basically cleanup, nothing here will have an affect. Adjusting some error codes, removing superfluous definitions and code fragments. Signed-off-by: Mark Haverkamp Signed-off-by: James Bottomley commit 73af07de3e32b9ac328c3d1417258bb98a9b0a9b Author: Herbert Xu Date: Sun Sep 24 09:30:19 2006 +1000 [CRYPTO] hmac: Fix error truncation by unlikely() The error return values are truncated by unlikely so we need to save it first. Thanks to Kyle Moffett for spotting this. Signed-off-by: Herbert Xu Signed-off-by: Linus Torvalds commit 9cbb889786548c1212fb77a9df8d09ed883a3480 Author: Swen Schillig Date: Thu Sep 21 16:29:31 2006 +0200 [SCSI] zfcp: update maintainers file As Andreas stated he will not maintain the zfcp driver anymore. Instead I will take over the responsibility. Signed-off-by: Swen Schillig Signed-off-by: James Bottomley commit 99005e91eb2289c0ff0875257b5d18d9b7cc4eb7 Author: Andreas Herrmann Date: Mon Sep 18 22:32:15 2006 +0200 [SCSI] zfcp: update maintainers file Removed myself as maintainer of the s390 zfcp driver -- I will not maintain it any longer. Signed-off-by: Andreas Herrmann Signed-off-by: James Bottomley commit 8165428610446ea9e6aa9dfa5485ab78e58cc9fc Author: Andreas Herrmann Date: Mon Sep 18 22:30:36 2006 +0200 [SCSI] zfcp: fix: avoid removal of fsf reqs before qdio queues are down Fix the fix ... One of my previous fixes introduced removal of all fsf requests in zfcp's eh_host_reset_handler. But this must not happen before qdio queues are shut down. So, I revert the changes of zfcp_scsi_eh_host_reset_handler. Signed-off-by: Andreas Herrmann Signed-off-by: James Bottomley commit 2abbe866c8eb0296e3f5343bcf73e5371522a738 Author: Andreas Herrmann Date: Mon Sep 18 22:29:56 2006 +0200 [SCSI] zfcp: introduce struct timer_list in struct zfcp_fsf_req This instance will be used whenever a timer is needed for a request by zfcp. Signed-off-by: Andreas Herrmann Signed-off-by: James Bottomley commit 4eff4a36516d72e4f6ede901141214a7e05607e7 Author: Andreas Herrmann Date: Mon Sep 18 22:29:20 2006 +0200 [SCSI] zfcp: fix: use correct req_id in eh_abort_handler zfcp's eh_abort_handler used the wrong request ID to identify the request to be aborted. The bug was introduced with commit fea9d6c7bcd8ff1d60ff74f27ba483b3820b18a3 for improved management of request IDs. The bug is fixed with this patch. Signed-off-by: Andreas Herrmann Signed-off-by: James Bottomley commit dd52e0eaf891cd85bf2ca057c15ed6bfd76db4e6 Author: Heiko Carstens Date: Mon Sep 18 22:28:49 2006 +0200 [SCSI] zfcp: create private slab caches to guarantee proper data alignment Create private slab caches in order to guarantee proper alignment of data structures that get passed to hardware. Sidenote: with this patch slab cache debugging will finally work on s390 (at least no known problems left). Furthermore this patch does some minor cleanups: - store ptr for transport template in struct zfcp_data Signed-off-by: Heiko Carstens Signed-off-by: Andreas Herrmann Compile fix ups and Signed-off-by: James Bottomley commit d136205182b1ea4897da31e325a296f8831a6796 Author: Heiko Carstens Date: Mon Sep 18 22:28:04 2006 +0200 [SCSI] zfcp: remove zfcp_ccw_unregister function Remove unused zfcp_ccw_unregister function (leftover from zfcp's module_exit era). Signed-off-by: Heiko Carstens Signed-off-by: Andreas Herrmann Signed-off-by: James Bottomley commit cf2b5d3fcab77a9390293920ec5b49e67eced200 Author: Doug Ledford Date: Sun Sep 17 07:38:15 2006 +0200 [SCSI] aic7xxx: pause sequencer before touching SBLKCTL Some cards need to pause the sequencer before the SBLKCTL register is touched. This fixes a PCI related oops seen on powerpc macs with this card caused by trying to ascertain the bus signalling before beginning domain validation. Signed-off-by: James Bottomley commit 3e3c60e3a8c7013d55768aa7256bb5a7f66b0bb4 Author: James Bottomley Date: Wed Sep 6 09:04:40 2006 -0500 [SCSI] aic7xxx: avoid checking SBLKCTL register for certain cards For cards that don't support LVD, checking the SBLKCTL register to determine the bus singalling doesn't work. So, check that the card supports LVD first (AHC_ULTRA2) before checking the register. Signed-off-by: James Bottomley commit 231839102b54512ced7d3ee7fc9b8bcf5e3b583b Author: Douglas Gilbert Date: Sat Sep 16 20:30:47 2006 -0400 [SCSI] scsi_debug version 1.80 See http://www.torque.net/sg/sdebug26.html for more information on the scsi_debug driver. ChangeLog: - add 'vpd_use_hostno' parameter to allow simulated hosts to see the same set of targets (and luns). For testing multipath software. - add 'fake_rw' parameter to ignore the data in READ and WRITE commands - add support for log subpages (new in SPC-4) - yield appropriate block descriptor for MODE SENSE commands (only for pdt=0 (i.e. disks)) - REQUEST SENSE response no longer shows the stopped power condition (SAT changed to agree with SPC-3) Signed-off-by: Douglas Gilbert Signed-off-by: James Bottomley commit 79da342c31ea839277060c1d2086aaf3b5cd85a4 Author: Al Viro Date: Sat Sep 23 18:21:35 2006 +0100 [PATCH] more get_property() fallout Signed-off-by: Al Viro Signed-off-by: Linus Torvalds commit 4ac493b1d5bfd332f3dee64baaa620961bab6cdc Author: Al Viro Date: Sat Sep 23 18:20:56 2006 +0100 [PATCH] briq_panel: read() and write() get __user pointers, damnit annotated, fixed a roothole in ->write(). Dereferencing user-supplied pointer is a Bad Idea(tm)... Signed-off-by: Al Viro Signed-off-by: Linus Torvalds commit 2efc80cb8ddc341d81de996920e3b2ad8a12b1f7 Author: Al Viro Date: Sat Sep 23 16:45:55 2006 +0100 [PATCH] #elif that should've been #elif defined #elif CONFIG_44x in ibm4xx.h should've been #elif defined(CONFIG_44x) Signed-off-by: Al Viro Signed-off-by: Linus Torvalds commit 13b5aeccc4350e5069c723e8f9becd7208ee02f2 Author: Al Viro Date: Sat Sep 23 16:44:58 2006 +0100 [PATCH] more fallout from get_property returning pointer to const Signed-off-by: Al Viro Signed-off-by: Linus Torvalds commit d7b2004528a967f2ba0bf31b1eb0da6a876960e6 Author: Al Viro Date: Sat Sep 23 16:44:16 2006 +0100 [PATCH] missing includes from infiniband merge indirect chains of includes are arch-specific and can't be relied upon... (hell, even attempt to build it for itanic would trigger vmalloc.h ones; err.h triggers on e.g. alpha). Signed-off-by: Al Viro Signed-off-by: Linus Torvalds commit 5f77043f0f7851aa6139fb9a8b297497b540b397 Author: Herbert Xu Date: Sun Sep 24 00:40:41 2006 +1000 [CRYPTO] hmac: Fix hmac_init update call The crypto_hash_update call in hmac_init gave the number 1 instead of the length of the sg list in bytes. This is a missed conversion from the digest => hash change. As tcrypt only tests crypto_hash_digest it didn't catch this. Signed-off-by: Herbert Xu Signed-off-by: Linus Torvalds commit 4c8bd7eeee4c8f157fb61fb64b57500990b42e0e Author: David Miller Date: Fri Sep 22 22:31:36 2006 -0700 [KERNEL] Do not truncate to 'int' in ALIGN() macro. Signed-off-by: David S. Miller Signed-off-by: Linus Torvalds commit 2d2f8d59b14bec6c745e219a350ac51d9e00673f Author: Jesper Juhl Date: Fri Sep 15 14:43:11 2006 +0200 [SCSI] megaraid: Make megaraid_ioctl() check copy_to_user() return value Check copy_to_user() return value in drivers/scsi/megaraid.c::megadev_ioctl() This gets rid of this little warning: drivers/scsi/megaraid.c:3661: warning: ignoring return value of 'copy_to_user', declared with attribute warn_unused_result Signed-off-by: Jesper Juhl Acked-by: "Ju, Seokmann" Signed-off-by: James Bottomley commit 5fcda4224529c4e550c917668d5e96c1d3e7039b Author: James Bottomley Date: Thu Sep 14 17:04:58 2006 -0500 [SCSI] aha152x: remove static host array Fix this driver not to use a static two element host array instead use a list. This should fix panic on multiple eject reinsert of the pcmcia version of this device. Signed-off-by: James Bottomley commit 10d19ae5e1715c27db7009df6d59179774e7b8a1 Author: malahal@us.ibm.com Date: Thu Sep 7 15:12:42 2006 -0700 [SCSI] aic94xx: Fix for a typo in aic94xx_init() Signed-off-by: Malahal Naineni Signed-off-by: James Bottomley commit f2d719c65ad8f10afa7bec11315faa7badf4ecb9 Author: Alexis Bruemmer Date: Thu Sep 7 14:32:16 2006 -0700 [SCSI] aic94xx: Removes Reliance on FLASH Manufacture IDs This patch removes the reliance on FLASH Manufacture IDs for validation. Signed-off-by: Alexis Bruemmer Signed-off-by: James Bottomley commit 08d3ad6a518051bfaefd5d6a8005e20c036996c3 Author: David Woodhouse Date: Sat Sep 23 16:20:48 2006 +0100 [MTD] Whitespace cleanup in SSFDC driver. Says akpm: ' - search for "( " and " )", fix.' Signed-off-by: David Woodhouse commit 3253b669eed7194ae490acb4aadab7262bbfeb8d Author: Stefan Richter Date: Thu Sep 14 22:05:16 2006 +0200 ieee1394: raw1394: arm functions slept in atomic context Sleeping functions like copy_to_user were accessed inside spinlocks in raw1394's arm_register, arm_unregister, arm_get_buf, arm_set_buf. http://bugzilla.kernel.org/show_bug.cgi?id=7120 Signed-off-by: Stefan Richter Tested-by: David Trent (cherry picked from e575953ec17c3f5c1e738847d2d16c241bb99783 commit) commit 9a05eded5d17a425b9d9ed9dd80f518429dde4e8 Author: David Woodhouse Date: Sat Sep 23 10:56:24 2006 +0100 [MTD] SSFDC translation layer minor cleanup Don't include . Don't say 'MB' where you mean 'MiB'. Don't allocate 512 bytes on the stack. Signed-off-by: David Woodhouse commit 892e4fba1cb5cdc70f3acc65e024e541c0b2d559 Author: David Woodhouse Date: Sat Sep 23 10:24:36 2006 +0100 [MTD] Fix dependencies with CONFIG_MTD=m CMDLINEPARTS shouldn't be selectable, and neither should SSFDC, which can be a tristate anyway. Signed-off-by: David Woodhouse commit f0063c4489a00ed5395378ef80a7edea4272f20b Author: Takashi Iwai Date: Fri Sep 22 15:30:42 2006 +0200 [ALSA] intel8x0m - Free irq in suspend Free the irq handler in suspend and reacquire in resume as well as intel8x0 audio driver does. Some devices may change the irq line dynamically during suspend/resume. Signed-off-by: Takashi Iwai Signed-off-by: Jaroslav Kysela commit 8b0c4149e82170ebc44b96e9ed96545f8ebd7c81 Author: Takashi Iwai Date: Fri Sep 22 15:27:55 2006 +0200 [ALSA] Move CONFIG_SND_AC97_POWER_SAVE to pci/Kconfig Moved the entry of CONFIG_SND_AC97_POWER_SAVE from drivers/Kconfig to more appropriate place, pci/Kconfig. Signed-off-by: Takashi Iwai Signed-off-by: Jaroslav Kysela commit fef8a0c03daa1aaf3f83e45da2b14674c073a9f5 Author: Clemens Ladisch Date: Fri Sep 22 11:00:51 2006 +0200 [ALSA] usb-audio: add mixer control names for the Aureon 5.1 MkII Add a mixer name map for the TerraTec Aureon 5.1 MkII USB. Signed-off-by: Clemens Ladisch Signed-off-by: Jaroslav Kysela commit dbf91dd47d90e1d91d5daf37ca30728f4e11c5e3 Author: Clemens Ladisch Date: Fri Sep 22 10:58:40 2006 +0200 [ALSA] ES1938: remove duplicate field initialization Remove the duplicate and inconsistent initialization of the kcontrol access field. Signed-off-by: Clemens Ladisch Signed-off-by: Jaroslav Kysela commit 92b9ac78f934616d08c72747607bfb0fa51ee52d Author: Clemens Ladisch Date: Fri Sep 22 10:57:36 2006 +0200 [ALSA] usb-audio: increase number of packets per URB To decrease the USB interrupts rate, increase both the default and the maximum number of packets per URB. Signed-off-by: Clemens Ladisch Signed-off-by: Jaroslav Kysela commit eb995a8c82dba4a8e027c99ac5001fbc287a115c Author: Takashi Iwai Date: Thu Sep 21 14:28:21 2006 +0200 [ALSA] hda-codec - Fix headphone auto-toggle on sigmatel codec Fix/optimize the headphone auto-toggle function on sigmatel codecs. The headphone pins are kept as output. When headhpones are unplugged, you cannot hear anyway ;) Signed-off-by: Takashi Iwai Signed-off-by: Jaroslav Kysela commit 5c79b1f887f8edcd399baa164b66a1c08566c994 Author: Takashi Iwai Date: Thu Sep 21 13:34:13 2006 +0200 [ALSA] hda-intel - A slight cleanup of timeout check in azx_get_response() A slight cleanup of timeout check in azx_get_response() to check jiffies for HZ-independent timeout. Signed-off-by: Takashi Iwai Signed-off-by: Jaroslav Kysela commit 314634bc81325dcfeb31ed138647d428b1f26cbf Author: Takashi Iwai Date: Thu Sep 21 11:56:18 2006 +0200 [ALSA] hda-codec - Fix mic input with STAC92xx codecs Fixed mic input with STAC92xx codecs. The mic pin was sometimes set to OUTPUT by the headphone jack detection. Also, try to assign a secondary mic as front-mic (or vice versa) in the auto-detection if possible. Signed-off-by: Takashi Iwai Signed-off-by: Jaroslav Kysela commit 7ffffecc7c4df08ad89723ca32d936ff09b5b3ff Author: Josef 'Jeff' Sipek Date: Thu Sep 21 11:33:42 2006 +0200 [ALSA] mixart: Use SEEK_{SET,CUR,END} instead of hardcoded values mixart: Use SEEK_{SET,CUR,END} instead of hardcoded values Signed-off-by: Josef 'Jeff' Sipek Signed-off-by: Andrew Morton Signed-off-by: Takashi Iwai Signed-off-by: Jaroslav Kysela commit d158da81ee9a1fa70d980f58b0f143fa873ca9ed Author: Josef 'Jeff' Sipek Date: Thu Sep 21 11:33:14 2006 +0200 [ALSA] gus: Use SEEK_{SET,CUR,END} instead of hardcoded values gus: Use SEEK_{SET,CUR,END} instead of hardcoded values Signed-off-by: Josef 'Jeff' Sipek Signed-off-by: Andrew Morton Signed-off-by: Takashi Iwai Signed-off-by: Jaroslav Kysela commit dd47a33806bfe93c08b071c4d26a2390cbbc9e65 Author: Josef 'Jeff' Sipek Date: Thu Sep 21 11:32:43 2006 +0200 [ALSA] opl4: Use SEEK_{SET,CUR,END} instead of hardcoded values opl4: Use SEEK_{SET,CUR,END} instead of hardcoded values Signed-off-by: Josef 'Jeff' Sipek Signed-off-by: Andrew Morton Signed-off-by: Takashi Iwai Signed-off-by: Jaroslav Kysela commit e6f8f108a19638d7c6535ab393a228ed9d4804a6 Author: Josef 'Jeff' Sipek Date: Thu Sep 21 11:31:58 2006 +0200 [ALSA] sound core: Use SEEK_{SET,CUR,END} instead of hardcoded values sound core: Use SEEK_{SET,CUR,END} instead of hardcoded values Signed-off-by: Josef 'Jeff' Sipek Signed-off-by: Andrew Morton Signed-off-by: Takashi Iwai Signed-off-by: Jaroslav Kysela commit eb06ed8f4c2440558ebf465e8baeac6367d90201 Author: Takashi Iwai Date: Wed Sep 20 17:10:27 2006 +0200 [ALSA] hda-codec - Support multiple headphone pins Some machines have multiple headpohne pins (usually on the lpatop and on the docking station) while the current hda-codec driver assumes a single headphone pin. Now it supports multiple hp pins (at least for detection). The sigmatel 92xx code supports this new multiple hp pins. It detects all hp pins for auto-muting, too. Also, the driver checks speaker pins in addition. In some cases, all line-out, speaker and hp-pins coexist. Signed-off-by: Takashi Iwai Signed-off-by: Jaroslav Kysela commit 33ef765131bcf82bc5fca3f25d8313fa4df93ce0 Author: Nicolas Graziano Date: Tue Sep 19 14:23:14 2006 +0200 [ALSA] hda_intel prefer 24bit instead of 20bit If I understand the hda_intel code, for format > 20bit it only advertise the SNDRV_PCM_FMTBIT_S32_LE format and play it at 32 bit, 20 bit or 24 bit. But if the 20bit and 24bit are available, actually it prefer the 20bit format. This path is to prefer the 24bit format instead of 20bit. Signed-off-by: Nicolas Graziano Signed-off-by: Takashi Iwai Signed-off-by: Jaroslav Kysela commit a922625126cc9bf593d801879a965b9f0eae6958 Author: Takashi Iwai Date: Sun Sep 17 22:05:54 2006 +0200 [ALSA] hda-codec - Add vendor ids for Motorola and Conexant Added string entries for Motorola and Conexant vendor ids. Signed-off-by: Takashi Iwai Signed-off-by: Jaroslav Kysela commit 5720fddd62367bb44335ec83f6371ce91e9ead12 Author: Takashi Iwai Date: Sun Sep 17 22:04:17 2006 +0200 [ALSA] hda-codec - Add device id for Motorola si3054-compatible codec Added the device id for Motorola si3054-compatible modem codec on a Gateway laptop. Signed-off-by: Takashi Iwai Signed-off-by: Jaroslav Kysela commit 2b1181ed83ee8b0afbf9ba3e4f789f00375b2a17 Author: Takashi Iwai Date: Sun Sep 17 22:02:22 2006 +0200 [ALSA] Add missing compat ioctls for ALSA control API Added the missing 32bit-compat ioctl entries for ALSA control API (espcially for recent additions of TLV stuff). Signed-off-by: Takashi Iwai Signed-off-by: Jaroslav Kysela commit 783eaf4671a4f5a95102aedb5a45e1f8adab945c Author: Takashi Iwai Date: Sun Sep 17 22:00:51 2006 +0200 [ALSA] powermac - Fix Oops when conflicting with aoa driver Fixed Oops when conflictin with aoa driver due to lack of i2c initialization. Signed-off-by: Takashi Iwai Signed-off-by: Jaroslav Kysela commit 307192065c55dbc70159037c1e3006a9f761192b Author: Johannes Berg Date: Sun Sep 17 21:59:25 2006 +0200 [ALSA] aoa: add locking to tas codec Looks like I completely forgot to do this. This patch adds locking to the tas codec so two userspace programs can't hit the controls at the same time. Tested on my powerbook, but I obviously can't find any problems even without it since it doesn't do SMP. Signed-off-by: Johannes Berg Signed-off-by: Takashi Iwai Signed-off-by: Jaroslav Kysela commit 43001c9515cf87935c50e84b3e27b1f3b3776b5d Author: Takashi Iwai Date: Fri Sep 8 12:30:03 2006 +0200 [ALSA] hda-intel - Fix suspend/resume with MSI Fixed suspend/resume with MSI enablement. Signed-off-by: Takashi Iwai Signed-off-by: Jaroslav Kysela commit 854b66e44260320c21ebe4b8a18e189f2e45b5be Author: Takashi Iwai Date: Fri Sep 8 12:27:38 2006 +0200 [ALSA] ak4xxx - Remove bogus IPGA controls Remove IPGA volume controls and merge the IPGA range to ADC volume controls. These two volumes are not really independent but connected simply in different ranges 0-0x7f and 0x80-max. It doesn't make sense to provide two controls. Since both 0x7f and 0x80 specify 0dB, a hack is needed for IPGA range to skip 0x80 (increment one) for such controls. Signed-off-by: Takashi Iwai Signed-off-by: Jaroslav Kysela commit 8f88820ee49359ea33af42845456ce9dbf54d39a Author: Liam Girdwood Date: Thu Sep 7 18:07:46 2006 +0200 [ALSA] Fix WM9705 AC97 patch build error This patch fixes a build error (introduced by me) in ac97_patch.c wrt WM9705 touchscreen. o Removed spurious '3D' from character after |= operation (0x3D is ASCII for '=') Signed-off-by: Liam Girdwood Signed-off-by: Takashi Iwai Signed-off-by: Jaroslav Kysela commit e08a007d1041e0bc3df6b855043d8efde91851aa Author: Takashi Iwai Date: Thu Sep 7 17:52:14 2006 +0200 [ALSA] hda-codec - Fix SPDIF device number of ALC codecs Assign the SPDIF always to the secondary device (dev#1) to keep the same configuration. Move the optional capture device to the third device (dev#2). hda_intel now just ignores the NULL entries in the pcm arrays from codecs. Signed-off-by: Takashi Iwai Signed-off-by: Jaroslav Kysela commit dafbbb1fdbf103b24d0f7aa645625b6bd558c896 Author: Takashi Iwai Date: Thu Sep 7 12:40:00 2006 +0200 [ALSA] hda-intel - Fix pci_disable_msi() call Fix the order to call pci_disable_msi() to be after free_irq(). (Otherwise pci_disable_msi() bugs you.) Also, added a description of disable_msi option to documentation. Signed-off-by: Takashi Iwai Signed-off-by: Jaroslav Kysela commit cd417d4fe89638a2848980cb389b9781d4913173 Author: Takashi Iwai Date: Wed Sep 6 16:03:11 2006 +0200 [ALSA] hda-codec - Add support for LG LW25 laptop Added the support for LG LW25 laptop with ALC880 codec. It's the same codec model as LG LW20 (model=lg-lw). Signed-off-by: Takashi Iwai Signed-off-by: Jaroslav Kysela commit 9d19f48cfe2570562c2c6226780a7ca627b0f1f1 Author: Takashi Iwai Date: Wed Sep 6 14:27:46 2006 +0200 [ALSA] Add pcm_class attribute to PCM sysfs entry This patch adds a new attribute, pcm_class, to each PCM sysfs entry. It's useful to detect what kind of PCM stream is, for example, HAL can check whether it's a modem or not. Signed-off-by: Takashi Iwai Signed-off-by: Jaroslav Kysela commit a7da6ce564a80952d9c0b210deca5a8cd3474a31 Author: Takashi Iwai Date: Wed Sep 6 14:03:14 2006 +0200 [ALSA] hda-codec - Add independent headphone volume control This patch addes the support of the independent 'Headphone' volume control to the generic codec parser. Some codecs (e.g. Conexant) have separate connections to the headphone and the independent amp adjustment is needed. Signed-off-by: Takashi Iwai Signed-off-by: Jaroslav Kysela commit 160ea0dc6b86e2c0c4d325c06bf402bfdde7c1c7 Author: Richard Fish Date: Wed Sep 6 13:58:25 2006 +0200 [ALSA] [snd-intel-hda] enable center/LFE speaker on some laptops This patch adds LFE mixer controls for laptops with a stac9200 and a mono speaker pin with amplifier. Signed-off-by: Richard Fish Signed-off-by: Takashi Iwai Signed-off-by: Jaroslav Kysela commit 0b59397268ed418e139db3806f7956ffcb18b33d Author: Takashi Iwai Date: Wed Sep 6 13:35:27 2006 +0200 [ALSA] Add dB information to es1938 driver Added the dB information to ESS Solo (es1938) driver. The new compound dB range TLVs are used for non-linear native volume controls. Signed-off-by: Takashi Iwai Signed-off-by: Jaroslav Kysela commit 55a29af5ed5d914f017e6a7c613a4d7cc34f82d9 Author: Takashi Iwai Date: Wed Sep 6 12:15:34 2006 +0200 [ALSA] Add definition of TLV dB range compound Added the definition of TLV dB range compound. It contains one or more dB-range or linear-volume TLV entries with min/max ranges. Used for volume controls with non-linear curves. Signed-off-by: Takashi Iwai Signed-off-by: Jaroslav Kysela commit 311e70a4741c736795da082da7290164d9cf3726 Author: Takashi Iwai Date: Wed Sep 6 12:13:37 2006 +0200 [ALSA] hdsp - Fix auto-updating of firmware Fixed the auto-updating of firmware if the breakout box was switched off/on. The firmware binary itself was already cached but it wasn't loaded properly. Also, request_firmware() is issued if the box was with firmware at module loading time but later it's erased. The auto-update is triggered at each PCM action (open, prepare, etc) and at opening proc files. Signed-off-by: Takashi Iwai Signed-off-by: Jaroslav Kysela commit ea543f1ee61bbfdf6cac4b79d66c7840d5b00037 Author: Krzysztof Helt Date: Tue Sep 5 20:25:05 2006 +0200 [ALSA] sparc dbri: SMP fixes The dbri driver hangs when used in kernel compiled with SMP support due to inproper locking. The patch fixes it. Signed-off-by: Krzysztof Helt Signed-off-by: Takashi Iwai Signed-off-by: Jaroslav Kysela commit 679e28eef835cbd30de78c2f80bf488cba1b7e40 Author: Ville Syrjala Date: Mon Sep 4 12:28:51 2006 +0200 [ALSA] es1968: Fix hw volume Fix maestro2 hardware volume control. Tested on a Dell Inspiron 7000. Signed-off-by: Ville Syrjala Signed-off-by: Takashi Iwai Signed-off-by: Jaroslav Kysela commit bd25b7cae1e763b292f359170e16bccd01c7ee5c Author: Ville Syrjala Date: Mon Sep 4 12:28:24 2006 +0200 [ALSA] ac97: Fix AD1819 volume range AD1819 volume registers can hold extra bits which do not affect the actual volume. Add a res_table to the codec patch to fix the problem. PCM, line and mic volume were tested. Signed-off-by: Ville Syrjala Signed-off-by: Takashi Iwai Signed-off-by: Jaroslav Kysela commit 93ed150375187ae7917ed1e3b9b830b9d4065bad Author: Tobin Davis Date: Fri Sep 1 21:03:12 2006 +0200 [ALSA] hda-codec - Add 5 stack audio support for Intel 965 systems This patch renames the 965_2112 function ids to 965_3ST, and adds functional support for 965_5ST (5 stack 7.1 surround). Signed-off-by: Tobin Davis Signed-off-by: Takashi Iwai Signed-off-by: Jaroslav Kysela commit 35a49934a7180fd80fb0bb3777d125dd939df50e Author: Takashi Iwai Date: Fri Sep 1 17:09:44 2006 +0200 [ALSA] Add dB scale information to mixart driver Added the dB scale information to mixart driver. Signed-off-by: Takashi Iwai Signed-off-by: Jaroslav Kysela commit 2fd53a7e9b1392f9cc3002a24f3c13b2796e70c3 Author: Andreas Schwab Date: Fri Sep 1 17:15:36 2006 +0200 [ALSA] [PPC,SOUND] Fix audio gpio state detection When booting with line out or headphone plugged, you won't hear anything. The problem is that after reset all channels are muted, but the actual value of the gpio port doesn't exactly match the active_val settings as expected by check_audio_gpio. For example, the line_mute port is set to 7, but check_audio_gpio would expect 0xd or 0xf, thus its return value indicates that it is not active, even though it is. AFAICS only looking at the low bit is enough to determine whether the port is active. Signed-off-by: Andreas Schwab Signed-off-by: Takashi Iwai Signed-off-by: Jaroslav Kysela commit 927fc866025857c109219d4ed62d8c3cbc02713a Author: Pavel Machek Date: Thu Aug 31 17:03:43 2006 +0200 [ALSA] sound/pci/hda/intel_hda: small cleanups Cleanup whitespace. Signed-off-by: Pavel Machek Signed-off-by: Takashi Iwai Signed-off-by: Jaroslav Kysela commit 929861c669a443cf667ec0d80ac73a567ed4543c Author: Takashi Iwai Date: Thu Aug 31 16:55:40 2006 +0200 [ALSA] hda-intel - Remove volatile Removed volatile from the position buffer pointer. Also, use synchronize_irq() instead of unreliable msleep(1) in the driver remove callback. Signed-off-by: Takashi Iwai Signed-off-by: Jaroslav Kysela commit f640c3205aca4fe231beccc9e719c946cf3fee7a Author: Takashi Iwai Date: Wed Aug 30 16:57:37 2006 +0200 [ALSA] Add dB scale information to ice1724 driver Added the dB scale information to each board support code of ice1724 driver. Signed-off-by: Takashi Iwai Signed-off-by: Jaroslav Kysela commit 680ef792a1afdb3bf38e4a0296cce996a5b95317 Author: Takashi Iwai Date: Wed Aug 30 16:56:30 2006 +0200 [ALSA] Add dB scale information to ice1712 driver Added the dB scale information for native digital volumes of ice1712 driver. Signed-off-by: Takashi Iwai Signed-off-by: Jaroslav Kysela commit 723b2b0d36fa7cea81a962af2d40d88520d5a5f1 Author: Takashi Iwai Date: Wed Aug 30 16:49:54 2006 +0200 [ALSA] Clean up and add TLV support to AK4xxx i2c driver - Clean up the code in AK4xxx-ADDA i2c code. - Fix capture gain controls for AK5365 - Changed the static table for DAC/ADC mixer labels to use structs - Implemented TLV entries for each AK codec The volumes in AK4524, AK4528 and AK5365 are corrected with a table to be suitable for dB conversion. Signed-off-by: Takashi Iwai Signed-off-by: Jaroslav Kysela commit d0ae48471570c680333cbe28c143bbab887a4ec2 Author: Takashi Iwai Date: Tue Aug 29 18:15:15 2006 +0200 [ALSA] Add missing dB scale information to vxpocket driver Added the missing dB scale information for Mic volume to vxpocket driver. Signed-off-by: Takashi Iwai Signed-off-by: Jaroslav Kysela commit a79eee8d3d8a80c37d235e1181d67c3705c7bbfe Author: Luke Ross Date: Tue Aug 29 10:46:32 2006 +0200 [ALSA] Support for non-standard rates in USB audio driver There's at least one USB audio chipset out there which supports only one non-standard rate (ID 0e6a:0310 supports 46875Hz). There's a few other patches for this card which are unsatisfactory because they attempt to map this rate to 44.1k leading to sound distortion. The patch below uses SNDRV_PCM_RATE_KNOT to properly support the non-standard rates where they are available. Signed-off-by: Luke Ross Signed-off-by: Takashi Iwai Signed-off-by: Jaroslav Kysela commit 9f458e7fb5b92385d348fb6039ba7211a6d6ba6e Author: Andrey Liakhovets Date: Mon Aug 28 16:52:41 2006 +0200 [ALSA] ac97 - Fix VIA EPIA sound problem Fix the bad sound quality on VIA EPIA system using VIA VT1617A (ALSA bug#2381). Signed-off-by: Andrey Liakhovets Signed-off-by: Takashi Iwai Signed-off-by: Jaroslav Kysela commit 33925186d843e7004288cd3d87843c5a1dbf55a4 Author: Takashi Iwai Date: Mon Aug 28 13:29:42 2006 +0200 [ALSA] ymfpci - Add TLV entries for native volume controls Added the linear volume TLV entries for YMFPCI native volume controls. Signed-off-by: Takashi Iwai Signed-off-by: Jaroslav Kysela commit 063a40d9111ce7558f2fdfa4f85acfc47eb27353 Author: Takashi Iwai Date: Mon Aug 28 13:20:13 2006 +0200 [ALSA] Add the definition of linear volume TLV Added the definition of linear volume TLV type. Some DSP chips and codecs (e.g. AK codec) use linear volume control. Signed-off-by: Takashi Iwai Signed-off-by: Jaroslav Kysela commit 1f14d167f0233342eab53bb1a429ddad1e848de4 Author: Krzysztof Helt Date: Mon Aug 28 13:01:31 2006 +0200 [ALSA] sparc dbri: OSS layer fix This patch removes setting of incorrect stop_threshold value inside the driver. After the change, playback through the OSS layer works correctly. Signed-off-by: Krzysztof Helt Signed-off-by: Takashi Iwai Signed-off-by: Jaroslav Kysela commit 99dabfe716002c54b4dffa545460dc74bc632c22 Author: Krzysztof Helt Date: Mon Aug 28 13:00:45 2006 +0200 [ALSA] dbri sparc: fixes TS leak This patch fixes time slot leak in the dbri driver. Signed-off-by: Krzysztof Helt Signed-off-by: Takashi Iwai Signed-off-by: Jaroslav Kysela commit aaad3653a5f073ce9eaef4efd387cf7fc3a53d18 Author: Krzysztof Helt Date: Mon Aug 28 12:59:23 2006 +0200 [ALSA] sparc dbri: recording is back This patch fixes sound recording after the driver convertion to ring buffered version. It also contains small clean ups to the driver. Signed-off-by: Krzysztof Helt Signed-off-by: Takashi Iwai Signed-off-by: Jaroslav Kysela commit 2c7782b420ee137057eeec7c24a565ac85fc1988 Author: Takashi Iwai Date: Fri Aug 25 13:11:26 2006 +0200 [ALSA] hda-codec - Use model=ref for some Dell laptops Force to choose model=ref for some Dell laptops with STAC9200 codec chip for fixing the silent mic recording problem (possibly due to a BIOS bug). Reference: ALSA bug#2038 So far, applied to Inspiron 630m, Latitude D620 and 120L. Signed-off-by: Takashi Iwai Signed-off-by: Jaroslav Kysela commit 18c1c3f694105ab2a6f43e054e23f9a751b2f869 Author: Takashi Iwai Date: Fri Aug 25 11:39:34 2006 +0200 [ALSA] Return error if no user TLV is defined Retrun error to user TLV_READ ioctl if no TLV is defined. (Until now, nothing was written and rerunred successfully.) Signed-off-by: Takashi Iwai Signed-off-by: Jaroslav Kysela commit 86148e84c218e49b54521e8dae7bb78eb66c4281 Author: Takashi Iwai Date: Thu Aug 24 12:36:36 2006 +0200 [ALSA] Fix errors with user TLV_WRITE Fixed the errors at checking info.access field during user TLV_WRITE call. It should have been zero-initialized. Signed-off-by: Takashi Iwai Signed-off-by: Jaroslav Kysela commit 1186ed8c7dc9c0185e783beddf241509cc224f1a Author: Takashi Iwai Date: Wed Aug 23 19:53:28 2006 +0200 [ALSA] Add dB scale information to vxpocket and vx222 drivers Added the dB scale information to vxpocket and vx222 drivers. Signed-off-by: Takashi Iwai Signed-off-by: Jaroslav Kysela commit c6ff77f71fe692fa48fe02dbfe74a01f3d5e55e2 Author: Takashi Iwai Date: Wed Aug 23 19:53:02 2006 +0200 [ALSA] Add dB scale information to pcxhr driver Added the dB scale information to pcxhr driver. Signed-off-by: Takashi Iwai Signed-off-by: Jaroslav Kysela commit 3479307f8ca3cbf4181b8bf7d8c824156a9e63b7 Author: Jochen Voss Date: Wed Aug 23 18:35:35 2006 +0200 [ALSA] Fix volume control for the AK4358 DAC Fix volume control for the AK4358 DAC. The attenuation control registers of the AK4358 use only 7bit for the volume, the msb is used to enable attenuation output. Without this patch there are 256 volume levels the lower 128 of which are mute. Signed-off-by: Jochen Voss Signed-off-by: Takashi Iwai Signed-off-by: Jaroslav Kysela commit 071c73ad5fce436ee00c9422b7ca0c5d629451fb Author: Takashi Iwai Date: Wed Aug 23 18:34:06 2006 +0200 [ALSA] hda-codec - Fix mic capture with generic parser Fixed the mic capture with generic parser of hda-codec driver - Use VREF80 for mic pins if available - Handle multiple inputs correctly on audio-input widget node. Confirmed on a conexant codec chip. Signed-off-by: Takashi Iwai Signed-off-by: Jaroslav Kysela commit 11b44bbde52b6c50ed8c9ba579d7ee9ff5b48cd8 Author: Richard Fish Date: Wed Aug 23 18:31:34 2006 +0200 [ALSA] hda-codec - restore HDA sigmatel pin configs on resume This patch restores the Intel HDA Sigmatel codec pin configuration on resume. Most of it is dedicated to saving the BIOS pin configuration if necessary, so that even unrecognized chips can be resumed correctly. Signed-off-by: Richard Fish Signed-off-by: Takashi Iwai Signed-off-by: Jaroslav Kysela commit 6d8590650eb81d2c869c7adf4b469071cec11eee Author: Guillaume Munch Date: Tue Aug 22 17:15:47 2006 +0200 [ALSA] hda-codec - Support for SigmaTel 9872 - AR11M and AR11S uses the same chip hence we claim to support the AR Series. - Added commentary about STAC9225s which shares the same id as CXD9872RD. - Added entry for 7662 but won't work automatically until pci_subdevice is known. - 'vaio' model now corresponds to CXD9872RD_VAIO for backward compat. - Replaced STAC766x_VAIO with CXD9872RD_VAIO, STAC9872AK_VAIO, STAC9872K_VAIO and CXD9872AKD_VAIO - Added 'vaio-ar' model for potential future modifications. Signed-off-by: Guillaume Munch Signed-off-by: Takashi Iwai Signed-off-by: Jaroslav Kysela commit 7b89190cf6ecd5075c272b4ec12f65a4ce45a762 Author: Magnus Sandin Date: Tue Aug 22 13:33:12 2006 +0200 [ALSA] ac97 - Enable S/PDIF on ASUS P5P800-VM mobo The attached patch will force building the S/PDIF controls on the PCU SSID for Asus P5P800-VM motherboard, even if the AC97_EI_SPDIF bit is not set. Signed-off-by: Magnus Sandin Signed-off-by: Takashi Iwai Signed-off-by: Jaroslav Kysela commit bab282b912baf372d8f705357946ef691b621899 Author: Vladimir Avdonin Date: Tue Aug 22 13:31:58 2006 +0200 [ALSA] hda-codec - Fix for Acer laptops with ALC883 codec Patch enables the internal speaker on acer laptops with ALC883. Signed-off-by: Vladimir Avdonin Signed-off-by: Takashi Iwai Signed-off-by: Jaroslav Kysela commit a1c7a7d890634eaec106e5fb3a7d9c92b8f85b0d Author: Takashi Iwai Date: Tue Aug 22 13:16:39 2006 +0200 [ALSA] Add dB scale information to opl3sa2 driver Added the dB scale information to opl3sa2 driver. Signed-off-by: Takashi Iwai Signed-off-by: Jaroslav Kysela commit eac06a10d2b814dfacc36a8fff35ef07bf4eec8e Author: Takashi Iwai Date: Tue Aug 22 13:16:25 2006 +0200 [ALSA] Add dB scale information to ad1848 driver Added the dB scale information to ad1848 driver. Signed-off-by: Takashi Iwai Signed-off-by: Jaroslav Kysela commit 0e7febf15851fb438b9518654340d1f704d202e5 Author: Takashi Iwai Date: Tue Aug 22 13:16:01 2006 +0200 [ALSA] Add dB scale information to ad1816a driver Added the dB scale information to ad1816a driver. Signed-off-by: Takashi Iwai Signed-off-by: Jaroslav Kysela commit fb567a8e4f077b7b084c0558706339c35a4fb186 Author: Takashi Iwai Date: Wed Aug 23 13:07:19 2006 +0200 [ALSA] Add dB scale information to dummy driver Added the dB scale information to dummy driver. Signed-off-by: Takashi Iwai Signed-off-by: Jaroslav Kysela commit a0aef8edfc9d6d682dba557fe42599297cbc329a Author: Takashi Iwai Date: Wed Aug 23 13:01:37 2006 +0200 [ALSA] Add dB scale information to trident driver Added the dB scale information to trident driver. Signed-off-by: Takashi Iwai Signed-off-by: Jaroslav Kysela commit 666c70ffd1c4be795de988f26a8ab13524d4ed47 Author: Takashi Iwai Date: Wed Aug 23 12:32:06 2006 +0200 [ALSA] Add dB scale information to fm801 driver Added the dB scale information to fm801 driver. Signed-off-by: Takashi Iwai Signed-off-by: Jaroslav Kysela commit 9f6ab25063f04597e02968ae8393e8f4703c1563 Author: Takashi Iwai Date: Wed Aug 23 12:14:25 2006 +0200 [ALSA] Add dB scale information to cs4281 driver Added the dB scale information to cs4281 driver. Signed-off-by: Takashi Iwai Signed-off-by: Jaroslav Kysela commit 9107226d2ca8a15534da96313a1d370fb1eb8f9e Author: Takashi Iwai Date: Wed Aug 23 12:04:34 2006 +0200 [ALSA] Add dB scale information to ak4531 codec Added the dB scale information to ak4531 codec driver. Signed-off-by: Takashi Iwai Signed-off-by: Jaroslav Kysela commit 7058c042001e111c601e1b031d9bcb8b5d392b74 Author: Takashi Iwai Date: Mon Aug 21 18:44:54 2006 +0200 [ALSA] Added TLV support to VIA82xx driver Added the TLV support to VIA82xx driver for addition of dB range information. Signed-off-by: Takashi Iwai Signed-off-by: Jaroslav Kysela commit 2f3482fbbd5dac7d0e86fe5b7ac5c1e51d52b084 Author: Takashi Iwai Date: Mon Aug 21 18:44:31 2006 +0200 [ALSA] Add TLV support to AC97 codec driver Added the TLV support to AC97 codec driver for addition of dB range information. Signed-off-by: Takashi Iwai Signed-off-by: Jaroslav Kysela commit 7376d013fc6d3a45d748e0ce758ca9412b01b9dd Author: Stephen Hemminger Date: Mon Aug 21 19:17:46 2006 +0200 [ALSA] intel_hda: MSI support Simple patch to enable Message Signalled Interrupts for the HDA Intel audio controller. Tested with: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) High Definition Audio Controller (rev 03) MSI is better because it means audio doesn't end up sharing IRQ with USB. Signed-off-by: Stephen Hemminger Signed-off-by: Takashi Iwai Signed-off-by: Jaroslav Kysela commit 93f09c4cc111506db2ffa6220b7a3d7f73e41aa3 Author: Adrian Bunk Date: Mon Aug 21 19:22:45 2006 +0200 [ALSA] make sound/pci/emu10k1/emu10k1.c:snd_emu10k1_resume() static This patch makes the needlessly global snd_emu10k1_resume() static. Signed-off-by: Adrian Bunk Signed-off-by: Takashi Iwai Signed-off-by: Jaroslav Kysela commit ab93c7ae54a81bcecb77608ca89eea140f1d45ad Author: Krzysztof Helt Date: Wed Aug 23 11:37:36 2006 +0200 [ALSA] sparc dbri: hardware constrains added This patch adds ALSA hardware constrains so stereo is possible only with 16-bit format. It contains small cleanups to ring buffered code as well. Signed-off-by: Krzysztof Helt Signed-off-by: Takashi Iwai Signed-off-by: Jaroslav Kysela commit 1be54c824be9b5e163cd83dabdf0ad3ac81c72a8 Author: Krzysztof Helt Date: Mon Aug 21 19:30:57 2006 +0200 [ALSA] sparc dbri: ring buffered version It is a complete rework of low level layer to work on ring buffers for comands and data descriptors. This removes annoying noise due to delay in data buffer switching. Signed-off-by: Krzysztof Helt Signed-off-by: Takashi Iwai Signed-off-by: Jaroslav Kysela commit 294a30dc8cf13c492913f2ed3a6540bdf6e84e39 Author: Krzysztof Helt Date: Mon Aug 21 19:29:59 2006 +0200 [ALSA] sparc dbri: simplifed linking time slot function A simplified routines to link and unlink time slots. Signed-off-by: Krzysztof Helt Signed-off-by: Takashi Iwai Signed-off-by: Jaroslav Kysela commit d1fdf07e22efdb9fa53739c0f0fec1f6b24c2056 Author: Krzysztof Helt Date: Mon Aug 21 19:29:18 2006 +0200 [ALSA] sparc dbri: fixed setting of burst size after reset A proper way to set DBRI's burst size. The size must be set after each chip reset. Signed-off-by: Krzysztof Helt Signed-off-by: Takashi Iwai Signed-off-by: Jaroslav Kysela commit 470f1f1a1c2597fab98339ab0966dbf602d604f0 Author: Krzysztof Helt Date: Mon Aug 21 19:28:16 2006 +0200 [ALSA] sparc dbri: more driver cleanup A general clean up and redudant code removal. Signed-off-by: Krzysztof Helt Signed-off-by: Takashi Iwai Signed-off-by: Jaroslav Kysela commit c27354460b1e0cbcd9dfc9232a76bd56c46dce89 Author: Krzysztof Helt Date: Mon Aug 21 19:27:35 2006 +0200 [ALSA] sparc dbri: removal of dri_desc struct The structure is in big part redudant. Signed-off-by: Krzysztof Helt Signed-off-by: Takashi Iwai Signed-off-by: Jaroslav Kysela commit e96224ae974844d3f4e84f927ca4b17f1a2079a3 Author: Takashi Iwai Date: Mon Aug 21 17:57:44 2006 +0200 [ALSA] hda-intel - Switch to polling mode for CORB/RIRB communication Automatically switch to polling mode for CORB/RIRB communication if the irq-driven mode seems not working well. If the polling mode still doesn't work, switch to single_cmd mode as fallback. Signed-off-by: Takashi Iwai Signed-off-by: Jaroslav Kysela commit 81d3dbde76eedcd3ede8a73eb72790d67fa254a9 Author: Tobin Davis Date: Tue Aug 22 19:44:45 2006 +0200 [ALSA] hda-codec - Add support for new Intel boards with Stac9227 codec This patch adds full 5.1 audio support for Intel boards with the SigmaTel 9227 codec chip (946, 963, 965 series). Signed-off-by: Tobin Davis Signed-off-by: Takashi Iwai Signed-off-by: Jaroslav Kysela commit 948a4db217235ba51c41d8e7c2ffcf9432e57274 Author: Tobin Davis Date: Tue Aug 22 19:43:46 2006 +0200 [ALSA] hda-codec - add missing device ids for Intel 945 boards This patch adds missing device ids for Intel 945 motherboards. Signed-off-by: Tobin Davis Signed-off-by: Takashi Iwai Signed-off-by: Jaroslav Kysela commit 79cf0d376fbf1cdf8e9c7c70c3a7c7434a716879 Author: Takashi Iwai Date: Tue Aug 22 16:35:19 2006 +0200 [ALSA] Fix missing selection of CONFIG_VIDEO_DEV from SND_FM801_TEA575X Fixed the missing selection of CONFIG_VIDEO_DEV from SND_FM801_TEA575X. Signed-off-by: Takashi Iwai Signed-off-by: Jaroslav Kysela commit 68a6abd97f8b9aa072e36b1901531e7bb69b6efc Author: Tobin Davis Date: Mon Aug 21 19:02:10 2006 +0200 [ALSA] hda-codec - Fix headphone output for some Intel 945 systems This patch enables headphone output at initialization for Intel 945 based systems that don't have proper detection circuitry. Signed-off-by: Tobin Davis Signed-off-by: Takashi Iwai Signed-off-by: Jaroslav Kysela commit 2aaeee8bd1cf51b6ed7c751a8472cb77f3ddc642 Author: Tobin Davis Date: Mon Aug 21 19:01:12 2006 +0200 [ALSA] hda-codec - add missing device ids This patch adds missing device ids for Intel 915 and D102GGC motherboards. Signed-off-by: Tobin Davis Signed-off-by: Takashi Iwai Signed-off-by: Jaroslav Kysela commit adf75dcab1deb9625538f74906508c1f6136fd98 Author: Clemens Ladisch Date: Fri Aug 18 09:03:45 2006 +0200 [ALSA] riptide: fix compile errors with older gcc Change the syntax of a union initialization that is not understood by gcc 2.x. Signed-off-by: Clemens Ladisch Signed-off-by: Jaroslav Kysela commit c256652466127872f1b2e510431dc25524ba40ba Author: Takashi Iwai Date: Thu Aug 17 18:21:36 2006 +0200 [ALSA] Add missing TLV callbacks for HD-audio codecs Added missing TLV callbacks for HD-audio codec supports. Also cleaned up the tlv callback for ad1986a (no mutex is needed there). Signed-off-by: Takashi Iwai Signed-off-by: Jaroslav Kysela commit e05d696424f21b59eccff35d04938f0d6588cd94 Author: Takashi Iwai Date: Thu Aug 17 17:12:19 2006 +0200 [ALSA] Fix some typos in snd-dummy driver Fixed some typos in snd-dummy driver. Signed-off-by: Takashi Iwai Signed-off-by: Jaroslav Kysela commit 16727d94adf9a1376775fd34d982778c7f3506df Author: Krzysztof Helt Date: Thu Aug 17 16:59:28 2006 +0200 [ALSA] sparc dbri: removal of redudant volatile keywords It removes redudant volatile keywords. Signed-off-by: Krzysztof Helt Signed-off-by: Takashi Iwai Signed-off-by: Jaroslav Kysela commit 5fc3a2b250716b34ca7c0128475bbedf795f1ac2 Author: Krzysztof Helt Date: Thu Aug 17 16:58:45 2006 +0200 [ALSA] sparc dbri: removal of unused struct members It removes unused or rarely used members of defined structures. Signed-off-by: Krzysztof Helt Signed-off-by: Takashi Iwai Signed-off-by: Jaroslav Kysela commit 7cf0a95310f21f3c986288a483801b1d5694dee1 Author: Takashi Iwai Date: Thu Aug 17 16:23:07 2006 +0200 [ALSA] Fix compile errors with older gcc Fixed compile errors with older gcc for initialization of a union. sound/pci/ca0106/ca0106_mixer.c: At top level: sound/pci/ca0106/ca0106_mixer.c:499: unknown field 'p' specified in initializer sound/pci/ca0106/ca0106_mixer.c:499: warning: missing braces around initializer sound/pci/ca0106/ca0106_mixer.c:499: warning: (near initialization for 'snd_ca0106_volume_ctls[0].tlv') Signed-off-by: Takashi Iwai Signed-off-by: Jaroslav Kysela commit 99ccc560b73ff7381153dc1391d18391373931d3 Author: Guillaume Munch Date: Wed Aug 16 19:35:12 2006 +0200 [ALSA] Add support for Sony Vaio AR 11B This patch adds automatic detection for Sigmatel ID 7664, the sound chip in Sony Vaio AR 11B (european name). - patch_stac7661 becomes patch_stac766x - .id = 0x83847664 is added Signed-off-by: Guillaume Munch Signed-off-by: Takashi Iwai Signed-off-by: Jaroslav Kysela commit d244bf897b2e7933112067ec8d8dc1d47b86145f Author: Magnus Sandin Date: Wed Aug 16 15:25:23 2006 +0200 [ALSA] Fix for LG K1 Express Laptop Attached is the patch for the LG K1 Express (K1-2333V) laptop that enables sound output. Signed-off-by: Magnus Sandin Signed-off-by: Takashi Iwai Signed-off-by: Jaroslav Kysela commit 80b556f26b3830ad5bd6ff9f701675ac8afcb263 Author: Alexey Dobriyan Date: Wed Aug 16 12:56:53 2006 +0200 [ALSA] emu10k1x: simplify around pci_register_driver() Report errors to modprobe as side effect. Signed-off-by: Alexey Dobriyan Signed-off-by: Andrew Morton Signed-off-by: Takashi Iwai Signed-off-by: Jaroslav Kysela commit 5e4968e24ced93b7b130e7e1fc947a79f82776bf Author: Tobias Klauser Date: Wed Aug 16 12:56:16 2006 +0200 [ALSA] sound/pci/fm801: Use ARRAY_SIZE macro Use ARRAY_SIZE macro instead of sizeof(x)/sizeof(x[0]) Signed-off-by: Tobias Klauser Signed-off-by: Andrew Morton Signed-off-by: Takashi Iwai Signed-off-by: Jaroslav Kysela commit 6fb982803522bc86ca61774c6edf317f77165453 Author: Krzysztof Helt Date: Wed Aug 16 12:54:29 2006 +0200 [ALSA] sparc dbri removal of DBRI_NO_INTS This patch removes define DBR_NO_INTS and all code related to handling more than one dbri irq statuses block. Signed-off-by: Krzysztof Helt Signed-off-by: Takashi Iwai Signed-off-by: Jaroslav Kysela commit 42fe7647911d0bcaf81aac46db73a3b24387df6d Author: Krzysztof Helt Date: Wed Aug 16 12:53:34 2006 +0200 [ALSA] dbri driver cleanup This is a small clean up of the dbri driver for sparc machines. It contains also a fix to DBRI interrupt queue initialization. Signed-off-by: Krzysztof Helt Signed-off-by: Takashi Iwai Signed-off-by: Jaroslav Kysela commit fe25befde9723ba7d921c100bf00d7643323e5a7 Author: Jaroslav Kysela Date: Tue Aug 15 14:39:07 2006 +0200 [ALSA] ice1712 - fix 1600->16000Hz value typo Signed-off-by: Jaroslav Kysela commit 22309c3e0c8911865cad0aa94f53a9afadaad7ee Author: Takashi Iwai Date: Wed Aug 9 16:57:28 2006 +0200 [ALSA] Added model for Uniwill laptop with ALC861 Added a new model 'uniwill-m31' for Uniwill laptops with ALC861 codec chip. The patch is taken from ALSA bug#2035, and modifeid. Signed-off-by: Takashi Iwai Signed-off-by: Jaroslav Kysela commit f24e9f586b377749dff37554696cf3a105540c94 Author: Takashi Iwai Date: Wed Aug 9 14:51:14 2006 +0200 [ALSA] Select I2C and I2C_POWERMAC in aoa/codecs/Kconfig Added the missing selection of I2C and I2C_POWERMAC for Onyx and TAS codecs in aoa/codecs/Kconfig. Signed-off-by: Takashi Iwai Signed-off-by: Jaroslav Kysela commit cf93907b98c82c2157e5bbe766bee8f1c5bb87b2 Author: Takashi Iwai Date: Wed Aug 9 14:33:27 2006 +0200 [ALSA] Fix compile warnings in ak4xxx-adda.c Fixed compile warnings in ak4xxx-adda.c reagarding missing enum cases in switch. Signed-off-by: Takashi Iwai Signed-off-by: Jaroslav Kysela commit 30ba6e207a915a6c70f22ccb3f9169d1cce88466 Author: Jochen Voss Date: Wed Aug 9 14:26:26 2006 +0200 [ALSA] Revolution 5.1 - complete the AK5365 support Complete the AK5365 support. This adds a boolean control to toggle the soft mute feature of the AK5365 chip. Signed-off-by: Jochen Voss Signed-off-by: Takashi Iwai Signed-off-by: Jaroslav Kysela commit 96d9e9347c9c5ca980bef22b4add7d437d79034f Author: Jochen Voss Date: Tue Aug 8 21:13:42 2006 +0200 [ALSA] Revolution 5.1 - register the AK5365 ADC with ALSA Enable capture support for the M-Audio Revolution 5.1 card, by registering the ADC with ALSA. Signed-off-by: Jochen Voss Signed-off-by: Takashi Iwai Signed-off-by: Jaroslav Kysela commit 683fe1537e660c322c8af953773921e814791193 Author: Jochen Voss Date: Tue Aug 8 21:12:44 2006 +0200 [ALSA] Revolution 5.1 - add AK5365 ADC support Add support for the AK5365 ADC. Signed-off-by: Jochen Voss Signed-off-by: Takashi Iwai Signed-off-by: Jaroslav Kysela commit f5a5ffad072ec3c1fd636174c30f0ba52fe0259f Author: Danny Tholen Date: Tue Aug 8 18:59:07 2006 +0200 [ALSA] [snd-hda-intel] fix sound on some Asus W6A chips This patch adds support in ALSA snd-hda-intel driver for Asus W6A motherboard as reported in MDV Bugzilla #19962 (see http://qa.mandriva.com/show_bug.cgi?id=19962) Signed-off-by: Danny Tholen Signed-off-by: Thomas Backlund Signed-off-by: Thierry Vignaud Signed-off-by: Takashi Iwai Signed-off-by: Jaroslav Kysela commit 25b6c43b3d6258f3e87244eeb2b9347dc5e83c40 Author: Takashi Iwai Date: Tue Aug 8 13:01:14 2006 +0200 [ALSA] Fix the preselected model for HP machine Fixed the preselected model for a HP machine with SSID 103c:3010 to use hp-3013 (ALSA bug#2157). Signed-off-by: Takashi Iwai Signed-off-by: Jaroslav Kysela commit 727f317a10da74b4e5c6d968bbba07767bfea794 Author: Takashi Iwai Date: Fri Aug 4 19:08:03 2006 +0200 [ALSA] usb-audio - Fix a typo of CONFIG_PROC_FS Fixed a typo of CONFIG_PROC_FS in usbaudio.c. The stream proc file appears again. Signed-off-by: Takashi Iwai Signed-off-by: Jaroslav Kysela commit 2529bba7606b23c1b7161d3c2ad486162e8650f9 Author: Takashi Iwai Date: Fri Aug 4 12:57:19 2006 +0200 [ALSA] Fix substream selection in PCM and rawmidi The PCM and rawmidi substreams can be selected explicitly by opening control handle and set via *_PREFER_SUBDEVICE ioctl. But, when multiple controls are opened, the driver gets confused. The patch fixes the initialization of prefer_*_subdevice and the check of multiple controls. The first set subdevice is picked up as the valid one. Signed-off-by: Takashi Iwai Signed-off-by: Jaroslav Kysela commit f03d68fe343d70bb06ecdb3d70dcf0e678ed99f9 Author: Dmitry Torokhov Date: Thu Aug 3 15:06:14 2006 +0200 [ALSA] ppc-beep - handle errors from input_register_device() ppc-beep: handle errors from input_register_device() (Also fixed the wrong memory release in the error path.) Signed-off-by: Dmitry Torokhov Signed-off-by: Takashi Iwai Signed-off-by: Jaroslav Kysela commit 548a648b98318e4b843b636dd2c7f42377e19a00 Author: Takashi Iwai Date: Mon Jul 31 16:51:51 2006 +0200 [ALSA] Fix control/status mmap with shared PCM substream The flag to avoid 32bit-incompatible mmap for control/status records should be outside the pcm substream instance since a substream can be shared among multiple opens. Now it's flagged in pcm_file list that is directly assigned to file->private_data. Also, removed snd_pcm_add_file() and remove_file() functions and substream.files field that are not really used in the code. Signed-off-by: Takashi Iwai Signed-off-by: Jaroslav Kysela commit 1c3985580445ef9225c1ea7714d6d963f7626eeb Author: Ondrej Zary Date: Mon Jul 31 12:51:57 2006 +0200 [ALSA] es18xx - Add PnP BIOS support This patch adds PnP BIOS support to es18xx driver. It allows ESS ES18xx sound chips integrated in some notebooks (such as DTK FortisPro TOP-5A) that don't appear as ISA cards (they aren't recognized by ISA PnP, only by PnP BIOS) to 'just work' automatically. Signed-off-by: Ondrej Zary Signed-off-by: Takashi Iwai Signed-off-by: Jaroslav Kysela commit f3302a59cf6961712658db63b66ea5902c17d5e1 Author: Matt Porter Date: Mon Jul 31 12:49:34 2006 +0200 [ALSA] hda: sigmatel 9205 family support Adds support for the '9205 family' which includes some other part numbers but 9205 is the first one. These are 4 channel codecs, some have digital mic capability. Support for the digital mic feature will come later. Signed-off-by: Matt Porter Signed-off-by: Takashi Iwai Signed-off-by: Jaroslav Kysela commit 7012b2dac71988f61b520b33c70c63be372b5994 Author: James Courtier-Dutton Date: Fri Jul 28 22:27:56 2006 +0100 [ALSA] snd-emu10k1: Add a comment explaining the conversion function for dB gain. Signed-off-by: James Courtier-Dutton Signed-off-by: Jaroslav Kysela commit 4e195a7b78618c89b06547f3140e67a69ec23272 Author: Takashi Iwai Date: Fri Jul 28 14:47:34 2006 +0200 [ALSA] Fix noisy output with shared channel mode with hd-audio - Fix the wrong initialization of num_dacs when changing the channel mode between 2 and multi-channel modes. It must be evaluated after calling snd_hda_ch_mode_put() - Added the similar check of num_dacs fix in Realtek code. Signed-off-by: Takashi Iwai Signed-off-by: Jaroslav Kysela commit 35aec4e2affb99d52b4b744ddb09767eb6e05580 Author: Takashi Iwai Date: Fri Jul 28 14:44:31 2006 +0200 [ALSA] Don't set up the same PID twice in snd_hda_multi_out_analog_prepare Check the hp_nid whether it's identical with front pin to avoid the setup of the same widget node twice. Signed-off-by: Takashi Iwai Signed-off-by: Jaroslav Kysela commit 4b146cb087b4a668511f6c991da1dc40e2e04b0d Author: Takashi Iwai Date: Fri Jul 28 14:42:36 2006 +0200 [ALSA] Misc fixes for Realtek HD-audio codecs - Added model=arima for Arima W820Di1 with ALC882 codec chip - Added EAPD-control verbs to TCL S700 init verbs - Added missing model strings for Realtek codecs (to be specified via module option explicitly for testing/debugging) Signed-off-by: Takashi Iwai Signed-off-by: Jaroslav Kysela commit 68ab801e32bbe2caac8b8c6e6e94f41fe7d687ad Author: Matthias Koenig Date: Thu Jul 27 16:59:23 2006 +0200 [ALSA] Add snd-mts64 driver for ESI Miditerminal 4140 Added snd-mts64 driver for Ego Systems (ESI) Miditerminal 4140 by Matthias Koenig . The driver requires parport (CONFIG_PARPORT). Signed-off-by: Matthias Koenig Signed-off-by: Takashi Iwai Signed-off-by: Jaroslav Kysela commit 9265d199616630c2eb993ffe40c9daef3d6873b3 Author: Takashi Iwai Date: Thu Jul 27 15:50:14 2006 +0200 [ALSA] Fix Makefile of cs5535audio Use ifeq instead of ifdef in Makefile to make the maintenance of out-of-kernel tree easier. Signed-off-by: Takashi Iwai Signed-off-by: Jaroslav Kysela commit bc6c531eb53de8a0ba355f76ce2bd28f58e46707 Author: Jaroslav Kysela Date: Thu Jul 27 10:44:30 2006 +0200 [ALSA] HDA driver - do not set mute flag for dB scale (follow HDA specification) Signed-off-by: Jaroslav Kysela commit b7c6b03405896bc181e1e2c9c06628c3b1681af5 Author: Takashi Iwai Date: Tue Jul 25 15:29:37 2006 +0200 [ALSA] via82xx - Add dxs_support entry for a FSC machine Added dxs_support=5 entry for a FSC machine. Signed-off-by: Takashi Iwai Signed-off-by: Jaroslav Kysela commit 827a56ea3d9c3d5f80c5520ba9d487f9b7069238 Author: Takashi Iwai Date: Tue Jul 25 14:51:16 2006 +0200 [ALSA] Added model for ASUS M2NPV-VM mobo Added the proper model (3stack) for ASUS M2NPV-VM mobo with AD1986A codec. Signed-off-by: Takashi Iwai Signed-off-by: Jaroslav Kysela commit 304dcaac91f0d26543b31fd7e63726f096c826ee Author: Takashi Iwai Date: Tue Jul 25 14:51:16 2006 +0200 [ALSA] Add support of Benq laptop with ALC262 Added the support of Benq laptop with ALC262 codec. A model string 'benq' is added, too. Signed-off-by: Takashi Iwai Signed-off-by: Jaroslav Kysela commit 6d177ba7839dd7ed391c2f36b121eb09d1eaee4c Author: Takashi Iwai Date: Tue Jul 25 14:51:15 2006 +0200 [ALSA] Add hp-bpc model type for HP laptops Added 'hp-bpc' model type for HP xw4400-compatible laptops. Signed-off-by: Takashi Iwai Signed-off-by: Jaroslav Kysela commit 5a053d012d0576e9306009939ca81a86547ef35a Author: Takashi Iwai Date: Tue Jul 25 14:51:15 2006 +0200 [ALSA] Add model entry for Clevo m665n laptop Added the proper model entry for Clevo m665n laptop with ALC880 codec. Also, added a model string 'clevo' to enable the clevo-type model option. Signed-off-by: Takashi Iwai Signed-off-by: Jaroslav Kysela commit 0a197f005a27766f5c9e0d960e7650748ec1ee4f Author: Takashi Iwai Date: Tue Jul 25 14:51:14 2006 +0200 [ALSA] Add model entry for Samsung X10 laptop Added the proper model entry (laptop-eapd) for Samsung X10-T2300 Culesa laptop with AD1986A codec. Signed-off-by: Takashi Iwai Signed-off-by: Jaroslav Kysela commit 31508f83f591dc8764427b6321c89f8f9e84bad2 Author: James Courtier-Dutton Date: Sat Jul 22 17:02:10 2006 +0100 [ALSA] snd-emu10k1: Implement dB gain infomation. Signed-off-by: James Courtier-Dutton Signed-off-by: Jaroslav Kysela commit fff36e472b4315df77513f4339c5c199c6aad28b Author: James Courtier-Dutton Date: Sat Jul 22 15:02:48 2006 +0100 [ALSA] snd-ca0106: Fix dB gain TLVs. Signed-off-by: James Courtier-Dutton Signed-off-by: Jaroslav Kysela commit f1265391ea002a28933dc1a8a55948c0ed64c9d0 Author: Clemens Ladisch Date: Fri Jul 21 10:46:18 2006 +0200 [ALSA] usb-audio: add more Yamaha devices Add some quirks for some unknown Yamaha USB MIDI devices. Signed-off-by: Clemens Ladisch Signed-off-by: Jaroslav Kysela commit 6e9059b05fa733045d7845ac70c5ba0a05e3c2d1 Author: Clemens Ladisch Date: Fri Jul 21 10:45:19 2006 +0200 [ALSA] system timer: remove unused snd_timer_system_private.timer field Remove the snd_timer_system_private structure's timer field that was never used. Signed-off-by: Clemens Ladisch Signed-off-by: Jaroslav Kysela commit cd93fe4770ca607c7f39260c02941deccbd77b8b Author: Clemens Ladisch Date: Mon Jul 17 16:53:57 2006 +0200 [ALSA] timer: fix timer rescheduling When checking whether a hardware timer needs to be rescheduled, we have to compare against the previously scheduled interval and not against the actual interval between the last two interrupts. Signed-off-by: Clemens Ladisch Signed-off-by: Jaroslav Kysela commit de2696d8bc9c81874b3743e0c27708760cb7fb52 Author: Clemens Ladisch Date: Mon Jul 17 16:52:09 2006 +0200 [ALSA] system timer: clear correction value when timer stops Do not retain the old correction value when the timer was stopped. Signed-off-by: Clemens Ladisch Signed-off-by: Jaroslav Kysela commit 6ed5eff025b72cb84a884d4be05f854f13b1542f Author: Clemens Ladisch Date: Mon Jul 17 16:51:37 2006 +0200 [ALSA] system timer: accumulate correction for multiple lost ticks When multiple timer interrupts arrive too late, correct for all delays instead of ignoring the earlier ones. Signed-off-by: Clemens Ladisch Signed-off-by: Jaroslav Kysela commit 17f48ec3f15ddb8080b151304ee887c68f7e4650 Author: Clemens Ladisch Date: Mon Jul 17 16:50:56 2006 +0200 [ALSA] system timer: fix lost ticks correction adjustment Fix the adjustment of the lost ticks correction variable in the case when the correction has been fully taken into account in the next timer expiration value. Subtracting the scheduled ticks value would result in an underflow. Signed-off-by: Clemens Ladisch Signed-off-by: Jaroslav Kysela commit 7bc5ba7e02f63a5732fdf99e7471f54738f6f918 Author: Takashi Iwai Date: Fri Jul 14 15:18:19 2006 +0200 [ALSA] Add TLV support to snd-usb-audio driver Added TLV-read support to snd-usb-audio driver for passing the volume dB scale information to user-space. Signed-off-by: Takashi Iwai Signed-off-by: Jaroslav Kysela commit 6a65d793b0a82c7e190d9fd92a479401b6a127ca Author: Takashi Iwai Date: Fri Jul 14 14:39:34 2006 +0200 [ALSA] Remove unused tlv_rw field from struct snd_kcontrol Remove unused tlv_rw field from struct snd_kcontrol. The callback is set in tlv.c field, instead. Signed-off-by: Takashi Iwai Signed-off-by: Jaroslav Kysela commit 11b3a7555aa1b1629614e919889a4479dfe6f37b Author: James Courtier-Dutton Date: Sat Jul 8 16:39:30 2006 +0100 [ALSA] snd-emu10k1: Implement 24bit capture via Philips 1361T ADC for SB0240 card. Signed-off-by: James Courtier-Dutton Signed-off-by: Jaroslav Kysela commit 22a27c7f8d0752b38b315d6a192c338d45ea28d5 Author: Matt Porter Date: Thu Jul 6 18:49:10 2006 +0200 [ALSA] hda: fix sigmatel 9227/8/9 codec support SigmaTel 9227/8/9 IDs must use the 927x patch. Signed-off-by: Matt Porter Signed-off-by: Takashi Iwai Signed-off-by: Jaroslav Kysela commit 302e9c5af4fb3ea258917ee6a32e9e45f578b231 Author: Jaroslav Kysela Date: Wed Jul 5 17:39:49 2006 +0200 [ALSA] HDA codec & CA0106 - add/fix TLV support Signed-off-by: Jaroslav Kysela commit 7f0e2f8bb851f5e0a2e0fef465b7b6f36c7aa7be Author: Jaroslav Kysela Date: Wed Jul 5 17:39:14 2006 +0200 [ALSA] HDA codec - little code & comment cleanup Signed-off-by: Jaroslav Kysela commit 8aa9b586e42099817163aba01d925c2660c4dbbe Author: Jaroslav Kysela Date: Wed Jul 5 17:34:51 2006 +0200 [ALSA] Control API - more robust TLV implementation - added callback option - added READ/WRITE/COMMAND flags to access member - added WRITE/COMMAND ioctls - added SNDRV_CTL_EVENT_MASK_TLV for TLV change notifications - added TLV support to ELEM_ADD ioctl Signed-off-by: Jaroslav Kysela commit 6bbe13ecbbce4415a5a7959b3bc35b18313025e0 Author: Jaroslav Kysela Date: Tue Jul 4 13:39:55 2006 +0200 [ALSA] fm801: fixed broken previous patch for the FM tuner only code - do not allocate and enable interrupt - do not do the FM tuner mute (it should be handled more cleanly) Signed-off-by: Jaroslav Kysela commit e0a5d82a966172c5f1dff6229d4a07be2222e8b3 Author: Andy Shevchenko Date: Tue Jul 4 12:05:14 2006 +0200 [ALSA] fm801: Support FM only card Signed-off-by: Andy Shevchenko Signed-off-by: Jaroslav Kysela commit 82466ad76d60c35bf1c48ba1b9c98c35d82fc385 Author: Mike Rapoport Date: Thu Jun 29 17:15:33 2006 +0200 [ALSA] add codec-specific controls for UCB1400 This patch adds some codec-specific controls for Philips UCB1400 codec. Signed-off-by: Mike Rapoport Signed-off-by: Takashi Iwai Signed-off-by: Jaroslav Kysela commit 6dbe662874ba08585eaf732d126762c25ac8e3f7 Author: Takashi Iwai Date: Tue Jun 27 18:28:53 2006 +0200 [ALSA] Add experimental support of aggressive AC97 power-saving mode Added CONFIG_SND_AC97_POWER_SAVE kernel config to enable the support of aggressive AC97 power-saving mode. In this mode, the AC97 powerdown register bits are dynamically controlled at each open/close of PCM streams. The mode is activated via power_save option for snd-ac97-codec driver. As default it's off. It can be turned on/off on the fly via sysfs, too. Signed-off-by: Takashi Iwai Signed-off-by: Jaroslav Kysela commit 2b29b13c5794f648cd5e839796496704d787f5a6 Author: Takashi Iwai Date: Fri Jun 23 14:38:26 2006 +0200 [ALSA] Deprecate snd_card_free_in_thread() Deprecated snd_card_free_in_thread(), replaced with snd_card_free_when_closed(). Signed-off-by: Takashi Iwai Signed-off-by: Jaroslav Kysela commit c461482c8072bb073e6146db320d3da85cdc89ad Author: Takashi Iwai Date: Fri Jun 23 14:38:23 2006 +0200 [ALSA] Unregister device files at disconnection Orignally proposed by Sam Revitch . Unregister device files at disconnection to avoid the futher accesses. Also, the dev_unregister callback is removed and replaced with the combination of disconnect + free. A new function snd_card_free_when_closed() is introduced, which is used in USB disconnect callback. Signed-off-by: Takashi Iwai Signed-off-by: Jaroslav Kysela commit 746d4a02e68499fc6c1f8d0c43d2271853ade181 Author: Takashi Iwai Date: Fri Jun 23 14:37:59 2006 +0200 [ALSA] Fix disconnection of proc interface - Add the linked list to each proc entry to enable a single-shot disconnection (unregister) - Deprecate snd_info_unregister(), use snd_info_free_entry() - Removed NULL checks of snd_info_free_entry() Signed-off-by: Takashi Iwai Signed-off-by: Jaroslav Kysela commit 42750b04c5baa7c5ffdf0a8be2b9b320efdf069f Author: Jaroslav Kysela Date: Thu Jun 1 18:34:01 2006 +0200 [ALSA] Control API - TLV implementation for additional information like dB scale This patch implements a TLV mechanism to transfer an additional information like dB scale to the user space. The types might be extended in future. Acked-by: Takashi Iwai Signed-off-by: Jaroslav Kysela commit 026ed5c9185dcc4b2df92e98c3d61a01cea19cbf Author: Chuck Lever Date: Wed Sep 20 14:33:07 2006 -0400 NFS: unmark NFS direct I/O as experimental Remove the EXPERIMENTAL flag from the NFS_DIRECTIO option. Test plan: Unset the EXPERIMENTAL kernel build option and check to see that the NFS direct I/O option is still available. Signed-off-by: Chuck Lever Signed-off-by: Trond Myklebust commit f551e44ff11d3e2ec8f37907bb88ec2433cc8b74 Author: Chuck Lever Date: Wed Sep 20 14:33:04 2006 -0400 NFS: add comments clarifying the use of nfs_post_op_update() Comments-only change to clarify a detail of the NFS protocol and how it is implemented in Linux. Test plan: None. Signed-off-by: Chuck Lever Signed-off-by: Trond Myklebust commit a53a3c58fd83e572a7c768d88b4c4e9840a57e82 Author: Steve Dickson Date: Wed Sep 6 11:51:21 2006 -0400 NFSv4: rpc_mkpipe creating socket inodes w/out sk buffers This patch stop rpc_mkpipe from create S_IFSOCK nodes what don't have associated sk buffers attached (which causes SELinux to oops during NFSv4 mounts). Instead the S_IFIFO mode bit is set which probably make more sense and seems to work just fine during my connectathon and fsx testing... Signed-off-by: Steve Dickson Signed-off-by: Trond Myklebust commit aec5e175288c711cbe44750276f61efa3fa3d370 Author: Josef 'Jeff' Sipek Date: Sat Sep 16 21:09:32 2006 -0400 NFS: Use SEEK_END instead of hardcoded value Signed-off-by: Josef 'Jeff' Sipek Signed-off-by: Trond Myklebust commit 51b6ded4d9a94a61035deba1d8f51a54e3a3dd86 Author: Trond Myklebust Date: Fri Sep 15 16:31:56 2006 -0400 NFSv4: When mounting with a port=0 argument, substitute port=2049 RFC3530 states that the registered port 2049 for the NFS protocol should be the default configuration in order to allow clients not to use the RPC binding protocols. If the mount program sends us a port=0, we therefore substitute port=2049. Signed-off-by: Trond Myklebust commit 2066fe89b459c3c787c811b3369df191cddd93d8 Author: Trond Myklebust Date: Fri Sep 15 08:30:46 2006 -0400 NFSv4: Poll more aggressively when handling NFS4ERR_DELAY Change the initial retry delay from 1s to 0.1s (and then back off exponentially). Signed-off-by: Trond Myklebust commit c514983d8d2260020543a81589a2b8c7d4bdab4e Author: Trond Myklebust Date: Fri Sep 15 08:25:04 2006 -0400 NFSv4: Handle the condition NFS4ERR_FILE_OPEN Retry a few times before we give up: the error is usually due to ordering issues with asynchronous RPC calls. Signed-off-by: Trond Myklebust commit 6b30954ebb569fa1b2abdb21f2f4290eec76bf80 Author: Trond Myklebust Date: Thu Sep 14 14:03:14 2006 -0400 NFSv4: Retry lease recovery if it failed during a synchronous operation. Signed-off-by: Trond Myklebust commit 97db8f41792839a6912fd21be8b61dd6c50db58f Author: Trond Myklebust Date: Thu Sep 14 14:03:14 2006 -0400 NFS: Don't invalidate the symlink we just stuffed into the cache And slight optimisation of nfs_end_data_update(): directories never have delegations anyway. Signed-off-by: Trond Myklebust commit 5f004cf2aa8494708fd8d78e78142b7b2748e765 Author: Trond Myklebust Date: Thu Sep 14 14:03:14 2006 -0400 NFS: Make read() return an ESTALE if the file has been deleted Currently, a read() request will return EIO even if the file has been deleted on the server, simply because that is what the VM will return if the call to readpage() fails to update the page. Ensure that readpage() marks the inode as stale if it receives an ESTALE. Then return that error to userland. Signed-off-by: Trond Myklebust commit 2dec51466a08ac1c67da41bfd0518d43d983a2eb Author: J. Bruce Fields Date: Tue Sep 12 11:53:23 2006 -0400 NFSv4: It's perfectly legal for clp to be NULL here.... Signed-off-by: J. Bruce Fields Signed-off-by: Trond Myklebust commit fd6840714d9cf6e93f1d42b904860a94df316b85 Author: Trond Myklebust Date: Tue Sep 5 12:27:44 2006 -0400 NFS: nfs_lookup - don't hash dentry when optimising away the lookup If the open intents tell us that a given lookup is going to result in a, exclusive create, we currently optimize away the lookup call itself. The reason is that the lookup would not be atomic with the create RPC call, so why do it in the first place? A problem occurs, however, if the VFS aborts the exclusive create operation after the lookup, but before the call to create the file/directory: in this case we will end up with a hashed negative dentry in the dcache that has never been looked up. Fix this by only actually hashing the dentry once the create operation has been successfully completed. Signed-off-by: Trond Myklebust commit 762d4527c2fc19d821a13d9a3455ccc2d4073731 Author: Trond Myklebust Date: Sun Sep 3 00:51:55 2006 -0400 SUNRPC: Fix Oops in pmap_getport_done There is no guarantee that the parent task still exists when we exit from the portmapper. Save the xprt instead. Signed-off-by: Trond Myklebust commit 6b6ca86b77b62b798cf9ca2599036420abce7796 Author: Trond Myklebust Date: Tue Sep 5 12:55:57 2006 -0400 SUNRPC: Add refcounting to the struct rpc_xprt In a subsequent patch, this will allow the portmapper to take a reference to the rpc_xprt for which it is updating the port number, fixing an Oops. Signed-off-by: Trond Myklebust commit da45828e2835057045150b318c4fbe9bb91f18dd Author: Trond Myklebust Date: Thu Aug 31 15:44:52 2006 -0400 SUNRPC: Clean up soft task error handling - Ensure that the task aborts the RPC call only when it has actually timed out. - Ensure that req->rq_majortimeo is initialised correctly. Signed-off-by: Trond Myklebust commit 76303992b4701124f4cd0791ae2049ab4332f02c Author: Trond Myklebust Date: Wed Aug 30 14:32:49 2006 -0400 SUNRPC: Handle ENETUNREACH, EHOSTUNREACH and EHOSTDOWN socket errors In case of any of the above errors occuring, delay for 3 seconds, then handle as if it were a timeout error. Signed-off-by: Trond Myklebust commit 8014793b1b2869445adfe678d64cdacd10e99d53 Author: Trond Myklebust Date: Thu Aug 31 18:24:08 2006 -0400 SUNRPC: rpc_delay() should not clobber the rpc_task->tk_status Doing so prevents stuff like call_encode() from working correctly. Signed-off-by: Trond Myklebust commit 297de4f65698ee1e1c75e27d57933b5fa8227e72 Author: andros@citi.umich.edu Date: Tue Aug 29 12:19:41 2006 -0400 Fix a referral error Oops Fix an oops when the referral server is not responding. Check the error return from nfs4_set_client() in nfs4_create_referral_server. Signed-off-by: Andy Adamson Signed-off-by: Trond Myklebust commit 058ad9cbf14b3c7480d01b20280cb4d5858f7a50 Author: Chuck Lever Date: Sun Aug 27 17:23:53 2006 -0400 NFS: NFS_ROOT should use the new rpc_create API Teach NFS_ROOT to use the new rpc_create API instead of the old two-call API for creating an RPC transport. Test plan: Compile the kernel with the NFS client build-in, and set CONFIG_NFS_ROOT. Signed-off-by: Chuck Lever Signed-off-by: Trond Myklebust commit 6daabf1b04c89f1fbd8eab5450261360943c8e20 Author: David Howells Date: Thu Aug 24 15:44:16 2006 -0400 NFS: Fix up compiler warnings on 64-bit platforms in client.c Fix up warnings from compiling on ppc64. Signed-Off-By: David Howells Signed-off-by: Trond Myklebust commit 158998b6fe36f6acef087f574c96d44713499cc9 Author: Trond Myklebust Date: Thu Aug 24 01:03:17 2006 -0400 SUNRPC: Make rpc_mkpipe() take the parent dentry as an argument Signed-off-by: Trond Myklebust commit 5dd3177ae5012c1e2ad7a9ffdbd0e0d0de2f60e4 Author: Trond Myklebust Date: Thu Aug 24 01:03:05 2006 -0400 NFSv4: Fix a use-after-free issue with the nfs server. Signed-off-by: Trond Myklebust commit 275a082fe9308e710324e26ccb5363c53d8fd45f Author: Trond Myklebust Date: Tue Aug 22 20:06:24 2006 -0400 Add a real API for dealing with blk_congestion_wait() Signed-off-by: Trond Myklebust commit 94a6d75320b3681e6e728b70e18bd186cb55e682 Author: Chuck Lever Date: Tue Aug 22 20:06:23 2006 -0400 NFS: Use cached page as buffer for NFS symlink requests Now that we have a copy of the symlink path in the page cache, we can pass a struct page down to the XDR routines instead of a string buffer. Test plan: Connectathon, all NFS versions. Signed-off-by: Chuck Lever Signed-off-by: Trond Myklebust commit 873101b33776780d32610fc4c90c7358a5e98f51 Author: Chuck Lever Date: Tue Aug 22 20:06:23 2006 -0400 NFS: copy symlinks into page cache before sending NFS SYMLINK request Currently the NFS client does not cache symlinks it creates. They get cached only when the NFS client reads them back from the server. Copy the symlink into the page cache before sending it. Test plan: Connectathon, all NFS versions. Signed-off-by: Chuck Lever Signed-off-by: Trond Myklebust commit 4f390c152bc87165da4b1f5b7d870b46fb106d4e Author: Chuck Lever Date: Tue Aug 22 20:06:22 2006 -0400 NFS: Fix double d_drop in nfs_instantiate() error path If the LOOKUP or GETATTR in nfs_instantiate fail, nfs_instantiate will do a d_drop before returning. But some callers already do a d_drop in the case of an error return. Make certain we do only one d_drop in all error paths. This issue was introduced because over time, the symlink proc API diverged slightly from the create/mkdir/mknod proc API. To prevent other coding mistakes of this type, change the symlink proc API to be more like create/mkdir/mknod and move the nfs_instantiate call into the symlink proc routines so it is used in exactly the same way for create, mkdir, mknod, and symlink. Test plan: Connectathon, all versions of NFS. Signed-off-by: Chuck Lever Signed-off-by: Trond Myklebust commit d3db90e270791b21cd00d3c094884bffa907cc9e Author: Chuck Lever Date: Tue Aug 22 20:06:22 2006 -0400 NFS: remove a no-longer-needed error check in nfs_symlink() In the early days of NFS, there was no duplicate reply cache on the server. Thus retransmitted non-idempotent requests often found that the request had already completed on the server. To avoid passing an unanticipated return code to unsuspecting applications, NFS clients would often shunt error codes that implied the request had been retried but already completed. Thanks to NFS over TCP, duplicate reply caches on the server, and network performance and reliability improvements, it is safe to remove such checks. Test plan: None. Signed-off-by: Chuck Lever Signed-off-by: Trond Myklebust commit b86acd501a34227e0ed2b2d54dc8002c1701ce17 Author: Chuck Lever Date: Tue Aug 22 20:06:22 2006 -0400 SUNRPC: export new RPC client functions with _GPL This patch is optional. It has been suggested that the RPC client internal functions used by upper layer protocols (such as NFS) be exported via EXPORT_SYMBOL_GPL. This patch does that. Test plan: Compile kernel with CONFIG_NFS enabled as a module. Signed-off-by: Chuck Lever Signed-off-by: Trond Myklebust commit ff9aa5e56df60cc8565a93cc868fe25ae3f20e49 Author: Chuck Lever Date: Tue Aug 22 20:06:21 2006 -0400 SUNRPC: Eliminate xprt_create_proto and rpc_create_client The two function call API for creating a new RPC client is now obsolete. Remove it. Also, remove an unnecessary check to see whether the caller is capable of using privileged network services. The kernel RPC client always uses a privileged ephemeral port by default; callers are responsible for checking the authority of users to make use of any RPC service, or for specifying that a nonprivileged port is acceptable. Test plan: Repeated runs of Connectathon locking suite. Check network trace to ensure correctness of NLM requests and replies. Signed-off-by: Chuck Lever Signed-off-by: Trond Myklebust commit 9e1968c58d72c4b85d8a69bda1e194f9701fb224 Author: Chuck Lever Date: Tue Aug 22 20:06:21 2006 -0400 SUNRPC: Convert RPC portmapper to use new rpc_create() API Replace xprt_create_proto/rpc_create_client calls in pmap_clnt.c with new rpc_create() API. Test plan: Repeated runs of Connectathon locking suite. Check network trace for proper PMAP calls and replies. Signed-off-by: Chuck Lever Signed-off-by: Trond Myklebust commit ae5c79476f36512d1100e162606bb5691f2cce5a Author: Chuck Lever Date: Tue Aug 22 20:06:21 2006 -0400 NFSD: Convert NFS server callback logic to use new rpc_create API Replace xprt_create_proto/rpc_create_client call in NFS server callback functions to use new rpc_create() API. Test plan: NFSv4 delegation functionality tests. Signed-off-by: Chuck Lever Signed-off-by: Trond Myklebust commit 41877d207c46f050b709f452703ade20c3b4a096 Author: Chuck Lever Date: Tue Aug 22 20:06:20 2006 -0400 NFS: Convert NFS client to use new rpc_create() API Convert NFS client mount logic to use rpc_create() instead of the old xprt_create_proto/rpc_create_client API. Test plan: Mount stress tests. Signed-off-by: Chuck Lever Signed-off-by: Trond Myklebust commit e1ec78928b4d5a31b7a847e65c6009f4229f7c0f Author: Chuck Lever Date: Tue Aug 22 20:06:20 2006 -0400 LOCKD: Convert to use new rpc_create() API Replace xprt_create_proto/rpc_create_client with new rpc_create() interface in the Network Lock Manager. Note that the semantics of NLM transports is now "hard" instead of "soft" to provide a better guarantee that lock requests will get to the server. Test plan: Repeated runs of Connectathon locking suite. Check network trace to ensure NLM requests are working correctly. Signed-off-by: Chuck Lever Signed-off-by: Trond Myklebust commit c2866763b4029411d166040306691773c12d4caf Author: Chuck Lever Date: Tue Aug 22 20:06:20 2006 -0400 SUNRPC: use sockaddr + size when creating remote transport endpoints Prepare for more generic transport endpoint handling needed by transports that might use different forms of addressing, such as IPv6. Introduce a single function call to replace the two-call xprt_create_proto/rpc_create_client API. Define a new rpc_create_args structure that allows callers to pass in remote endpoint addresses of varying length. Test-plan: Compile kernel with CONFIG_NFS enabled. Signed-off-by: Chuck Lever Signed-off-by: Trond Myklebust commit 6ca948238724c945bd353f51d54ae7d285f3889f Author: Chuck Lever Date: Tue Aug 22 20:06:19 2006 -0400 SUNRPC: Clean-up after previous patches. Remove some unused macros related to accessing an RPC peer address Test plan: Compile kernel with CONFIG_NFS option enabled. Signed-off-by: Chuck Lever Signed-off-by: Trond Myklebust commit c4efcb1d3e0bc76aeb9ca6301d19a5079893c6c9 Author: Chuck Lever Date: Tue Aug 22 20:06:19 2006 -0400 SUNRPC: Use "sockaddr_storage" for storing RPC client's remote peer address IPv6 addresses are big (128 bytes). Now that no RPC client consumers treat the addr field in rpc_xprt structs as an opaque, and access it only via the API calls, we can safely widen the field in the rpc_xprt struct to accomodate larger addresses. Test plan: Compile kernel with CONFIG_NFS enabled. Signed-off-by: Chuck Lever Signed-off-by: Trond Myklebust commit e7f7865743fff3d3938ec7540e5a784d662426da Author: Chuck Lever Date: Tue Aug 22 20:06:19 2006 -0400 SUNRPC: Teach rpc_pipe.c to use new rpc_peeraddr() API Hide the details of how the RPC client stores remote peer addresses from the RPC pipefs implementation. Test plan: Connectathon with Kerberos 5 authentication. Signed-off-by: Chuck Lever Signed-off-by: Trond Myklebust commit f425eba437f0051bde979ea2eef8bc875a77cd00 Author: Chuck Lever Date: Tue Aug 22 20:06:18 2006 -0400 SUNRPC: Create API for displaying remote peer address Provide an API for formatting the remote peer address for printing without exposing its internal structure. The address could be dynamic, so we support a function call to get the address rather than reading it straight out of a structure. Test-plan: Destructive testing (unplugging the network temporarily). Probably need to rig a server where certain services aren't running, or that returns an error for some typical operation. Signed-off-by: Chuck Lever Signed-off-by: Trond Myklebust commit edb267a688fcee5335d596752f117a30c7152e44 Author: Chuck Lever Date: Tue Aug 22 20:06:18 2006 -0400 SUNRPC: add xprt switch API for printing formatted remote peer addresses Add a new method to the transport switch API to provide a way to convert the opaque contents of xprt->addr to a human-readable string. Test plan: Compile kernel with CONFIG_NFS enabled. Signed-off-by: Chuck Lever Signed-off-by: Trond Myklebust commit 39d7bbcb5ba5e9d8d658b70903dd7939400e57db Author: Chuck Lever Date: Tue Aug 22 20:06:18 2006 -0400 SUNRPC: remove extraneous header inclusions include/linux/sunrpc/clnt.h already includes include/linux/sunrpc/xprt.h. We can remove xprt.h from source files that already include clnt.h. Likewise include/linux/sunrpc/timer.h. Test plan: Compile kernel with CONFIG_NFS enabled. Signed-off-by: Chuck Lever Signed-off-by: Trond Myklebust commit 081f79a9b09b634f0dc08ed014e0195464d52535 Author: Chuck Lever Date: Tue Aug 22 20:06:17 2006 -0400 SUNRPC: Teach the RPC portmapper to use the new rpc_peeraddr() API. Hide the details of how the RPC client stores remote peer addresses from the RPC portmapper. Test plan: Destructive testing (unplugging the network temporarily). Connectathon with UDP and TCP. NFSv2/3 and NFSv4 mounting should be carefully checked. Signed-off-by: Chuck Lever Signed-off-by: Trond Myklebust commit 44c31be261540acf66ddd730631ead8009cc361d Author: Chuck Lever Date: Tue Aug 22 20:06:17 2006 -0400 LOCKD: Teach lockd to use the new rpc_peeraddr() API Hide the details of how the RPC client stores remote peer addresses from the Network Lock Manager. Test plan: Destructive testing (unplugging the network temporarily). Connectathon with UDP and TCP. Signed-off-by: Chuck Lever Signed-off-by: Trond Myklebust commit ed39440a2573abc926f230267000f21fa5a87822 Author: Chuck Lever Date: Tue Aug 22 20:06:17 2006 -0400 SUNRPC: create API for getting remote peer address Provide an API for retrieving the remote peer address without allowing direct access to the rpc_xprt struct. Test-plan: Compile kernel with CONFIG_NFS enabled. Signed-off-by: Chuck Lever Signed-off-by: Trond Myklebust commit bbf7c1dd2ae2b4040b41b1065ee9b1b6905b1605 Author: Chuck Lever Date: Tue Aug 22 20:06:16 2006 -0400 SUNRPC: Introduce transport switch callout for pluggable rpcbind Introduce a clean transport switch API for plugging in different types of rpcbind mechanisms. For instance, rpcbind can cleanly replace the existing portmapper client, or a transport can choose to implement RPC binding any way it likes. Test plan: Destructive testing (unplugging the network temporarily). Connectathon with UDP and TCP. NFSv2/3 and NFSv4 mounting should be carefully checked. Probably need to rig a server where certain services aren't running, or that returns an error for some typical operation. Signed-off-by: Chuck Lever Signed-off-by: Trond Myklebust commit 5b1eacbcd78930d976eb50a93f1779d311b553d1 Author: Chuck Lever Date: Tue Aug 22 20:06:16 2006 -0400 SUNRPC: Support for RPC child tasks no longer needed The previous patches removed the last user of RPC child tasks, so we can remove support for child tasks from net/sunrpc/sched.c now. Signed-off-by: Chuck Lever Signed-off-by: Trond Myklebust commit c4a5692fb83f23008c720fe84454d5603e80b103 Author: Chuck Lever Date: Tue Aug 22 20:06:16 2006 -0400 SUNRPC: Clean-up after recent changes to sunrpc/pmap_clnt.c Add comments for external functions, use modern function definition style, and fix up dprintk formatting. Signed-off-by: Chuck Lever Signed-off-by: Trond Myklebust commit 4a68179d38874c37be2802442a71b847f5d1a2a9 Author: Chuck Lever Date: Tue Aug 22 20:06:15 2006 -0400 SUNRPC: Make RPC portmapper use per-transport storage Move connection and bind state that was maintained in the rpc_clnt structure to the rpc_xprt structure. This will allow the creation of a clean API for plugging in different types of bind mechanisms. This brings improvements such as the elimination of a single spin lock to control serialization for all in-kernel RPC binding. A set of per-xprt bitops is used to serialize tasks during RPC binding, just like it now works for making RPC transport connections. Test-plan: Destructive testing (unplugging the network temporarily). Connectathon with UDP and TCP. NFSv2/3 and NFSv4 mounting should be carefully checked. Probably need to rig a server where certain services aren't running, or that returns an error for some typical operation. Signed-off-by: Chuck Lever Signed-off-by: Trond Myklebust commit ec739ef03dc926d05051c8c5838971445504470a Author: Chuck Lever Date: Tue Aug 22 20:06:15 2006 -0400 SUNRPC: Create a helper to tell whether a transport is bound Hide the contents and format of xprt->addr by eliminating direct uses of the xprt->addr.sin_port field. This change is required to support alternate RPC host address formats (eg IPv6). Test-plan: Destructive testing (unplugging the network temporarily). Repeated runs of Connectathon locking suite with UDP and TCP. Signed-off-by: Chuck Lever Signed-off-by: Trond Myklebust commit 9c5bf38d85a31b946664bcc21078ef5bb10672f7 Author: Trond Myklebust Date: Tue Aug 22 20:06:14 2006 -0400 NFS: Fix nfs_alloc_client() The scheme to indicate which services have been started up appears to be seriously broken. Signed-off-by: Trond Myklebust commit 36b15c54cd0d6f707a3ac03e4a2a60bb530a95b9 Author: Trond Myklebust Date: Tue Aug 22 20:06:14 2006 -0400 NFS: Ensure NFSv2/v3 mounts respect the NFS_MOUNT_SECFLAVOUR flag Signed-off-by: Trond Myklebust commit 738a35195941ecf604d3070e2a053e1df3de350b Author: David Howells Date: Sun Jul 30 14:58:27 2006 -0400 NFS: Secure the roots of the NFS subtrees in a shared superblock Invoke security_d_instantiate() on root dentries after allocating them with dentry_alloc_anon(). Normally dentry_alloc_root() would do that, but we don't call that as we don't want to assign a name to the root dentry at this point (we may discover the real name later). Signed-Off-By: David Howells Signed-off-by: Trond Myklebust commit 27ba851244f627a302d0fc6469d1ad413fc34fcb Author: David Howells Date: Sun Jul 30 14:40:56 2006 -0400 NFS: Fix error handling Fix an error handling problem: nfs_put_client() can be given a NULL pointer if nfs_free_server() is asked to destroy a partially initialised record. Signed-Off-By: David Howells Signed-off-by: Trond Myklebust commit 6aaca566503296a73f956908ec98173946134fe2 Author: David Howells Date: Tue Aug 22 20:06:13 2006 -0400 NFS: Add server and volume lists to /proc Make two new proc files available: /proc/fs/nfsfs/servers /proc/fs/nfsfs/volumes The first lists the servers with which we are currently dealing (struct nfs_client), and the second lists the volumes we have on those servers (struct nfs_server). Signed-Off-By: David Howells Signed-off-by: Trond Myklebust commit 54ceac4515986030c2502960be620198dd8fe25b Author: David Howells Date: Tue Aug 22 20:06:13 2006 -0400 NFS: Share NFS superblocks per-protocol per-server per-FSID The attached patch makes NFS share superblocks between mounts from the same server and FSID over the same protocol. It does this by creating each superblock with a false root and returning the real root dentry in the vfsmount presented by get_sb(). The root dentry set starts off as an anonymous dentry if we don't already have the dentry for its inode, otherwise it simply returns the dentry we already have. We may thus end up with several trees of dentries in the superblock, and if at some later point one of anonymous tree roots is discovered by normal filesystem activity to be located in another tree within the superblock, the anonymous root is named and materialises attached to the second tree at the appropriate point. Why do it this way? Why not pass an extra argument to the mount() syscall to indicate the subpath and then pathwalk from the server root to the desired directory? You can't guarantee this will work for two reasons: (1) The root and intervening nodes may not be accessible to the client. With NFS2 and NFS3, for instance, mountd is called on the server to get the filehandle for the tip of a path. mountd won't give us handles for anything we don't have permission to access, and so we can't set up NFS inodes for such nodes, and so can't easily set up dentries (we'd have to have ghost inodes or something). With this patch we don't actually create dentries until we get handles from the server that we can use to set up their inodes, and we don't actually bind them into the tree until we know for sure where they go. (2) Inaccessible symbolic links. If we're asked to mount two exports from the server, eg: mount warthog:/warthog/aaa/xxx /mmm mount warthog:/warthog/bbb/yyy /nnn We may not be able to access anything nearer the root than xxx and yyy, but we may find out later that /mmm/www/yyy, say, is actually the same directory as the one mounted on /nnn. What we might then find out, for example, is that /warthog/bbb was actually a symbolic link to /warthog/aaa/xxx/www, but we can't actually determine that by talking to the server until /warthog is made available by NFS. This would lead to having constructed an errneous dentry tree which we can't easily fix. We can end up with a dentry marked as a directory when it should actually be a symlink, or we could end up with an apparently hardlinked directory. With this patch we need not make assumptions about the type of a dentry for which we can't retrieve information, nor need we assume we know its place in the grand scheme of things until we actually see that place. This patch reduces the possibility of aliasing in the inode and page caches for inodes that may be accessed by more than one NFS export. It also reduces the number of superblocks required for NFS where there are many NFS exports being used from a server (home directory server + autofs for example). This in turn makes it simpler to do local caching of network filesystems, as it can then be guaranteed that there won't be links from multiple inodes in separate superblocks to the same cache file. Obviously, cache aliasing between different levels of NFS protocol could still be a problem, but at least that gives us another key to use when indexing the cache. This patch makes the following changes: (1) The server record construction/destruction has been abstracted out into its own set of functions to make things easier to get right. These have been moved into fs/nfs/client.c. All the code in fs/nfs/client.c has to do with the management of connections to servers, and doesn't touch superblocks in any way; the remaining code in fs/nfs/super.c has to do with VFS superblock management. (2) The sequence of events undertaken by NFS mount is now reordered: (a) A volume representation (struct nfs_server) is allocated. (b) A server representation (struct nfs_client) is acquired. This may be allocated or shared, and is keyed on server address, port and NFS version. (c) If allocated, the client representation is initialised. The state member variable of nfs_client is used to prevent a race during initialisation from two mounts. (d) For NFS4 a simple pathwalk is performed, walking from FH to FH to find the root filehandle for the mount (fs/nfs/getroot.c). For NFS2/3 we are given the root FH in advance. (e) The volume FSID is probed for on the root FH. (f) The volume representation is initialised from the FSINFO record retrieved on the root FH. (g) sget() is called to acquire a superblock. This may be allocated or shared, keyed on client pointer and FSID. (h) If allocated, the superblock is initialised. (i) If the superblock is shared, then the new nfs_server record is discarded. (j) The root dentry for this mount is looked up from the root FH. (k) The root dentry for this mount is assigned to the vfsmount. (3) nfs_readdir_lookup() creates dentries for each of the entries readdir() returns; this function now attaches disconnected trees from alternate roots that happen to be discovered attached to a directory being read (in the same way nfs_lookup() is made to do for lookup ops). The new d_materialise_unique() function is now used to do this, thus permitting the whole thing to be done under one set of locks, and thus avoiding any race between mount and lookup operations on the same directory. (4) The client management code uses a new debug facility: NFSDBG_CLIENT which is set by echoing 1024 to /proc/net/sunrpc/nfs_debug. (5) Clone mounts are now called xdev mounts. (6) Use the dentry passed to the statfs() op as the handle for retrieving fs statistics rather than the root dentry of the superblock (which is now a dummy). Signed-Off-By: David Howells Signed-off-by: Trond Myklebust commit cf6d7b5de8535a9f0088c5cc28ee2dae87371b4a Author: David Howells Date: Tue Aug 22 20:06:12 2006 -0400 NFS: Start rpciod in server common management Start rpciod in the server common (nfs_client struct) management code rather than in the superblock management code. This means we only need to "start" it once per server instead of once per superblock. Signed-Off-By: David Howells Signed-off-by: Trond Myklebust commit 5006a76cca8f86c6975c16fcf67e83b8b0eee2b6 Author: David Howells Date: Tue Aug 22 20:06:12 2006 -0400 NFS: Eliminate client_sys in favour of cl_rpcclient Eliminate nfs_server::client_sys in favour of nfs_client::cl_rpcclient as we only really need one per server that we're talking to since it doesn't have any security on it. The retransmission management variables are also moved to the common struct as they're required to set up the cl_rpcclient connection. The NFS2/3 client and client_acl connections are thenceforth derived by cloning the cl_rpcclient connection and post-applying the authorisation flavour. The code for setting up the initial common connection has been moved to client.c as nfs_create_rpc_client(). All the NFS program definition tables are also moved there as that's where they're now required rather than super.c. Signed-Off-By: David Howells Signed-off-by: Trond Myklebust commit 8fa5c000d7f986ef9cdc6d95f9f7fcee20e0a7d6 Author: David Howells Date: Tue Aug 22 20:06:12 2006 -0400 NFS: Move rpc_ops from nfs_server to nfs_client Move the rpc_ops from the nfs_server struct to the nfs_client struct as they're common to all server records of a particular NFS protocol version. Signed-Off-By: David Howells Signed-off-by: Trond Myklebust commit 1f163415dc05983830bcc47b33c155b2528b1574 Author: David Howells Date: Tue Aug 22 20:06:11 2006 -0400 NFS: Make better use of inode* dereferencing macros Make better use of inode* dereferencing macros to hide dereferencing chains (including NFS_PROTO and NFS_CLIENT). Signed-Off-By: David Howells Signed-off-by: Trond Myklebust commit 27951bd26031f6c27d38df9e94623bbe208a2464 Author: David Howells Date: Tue Aug 22 20:06:11 2006 -0400 NFS: Maintain a common server record for NFS2/3 as well as for NFS4 Maintain a common server record for NFS2/3 as well as for NFS4 so that common stuff can be moved there from struct nfs_server. Signed-Off-By: David Howells Signed-off-by: Trond Myklebust commit 509de8111656a7d89b4a1a5f430f4460ce510f0f Author: David Howells Date: Tue Aug 22 20:06:11 2006 -0400 NFS: Add extra const qualifiers Add some extra const qualifiers into NFS. Signed-Off-By: David Howells Signed-off-by: Trond Myklebust commit 0c7d90cfed91a283228017ba6faf37ee0bcd32b1 Author: David Howells Date: Tue Aug 22 20:06:10 2006 -0400 NFS: Use the dentry superblock directly in nfs_statfs() Use the nominated dentry's superblock directly in the NFS statfs() op to get a file handle, rather than using s_root (which will become a dummy dentry in a future patch). Signed-Off-By: David Howells Signed-off-by: Trond Myklebust commit 24c8dbbb5f777187d660393599641ab3307b4b97 Author: David Howells Date: Tue Aug 22 20:06:10 2006 -0400 NFS: Generalise the nfs_client structure Generalise the nfs_client structure by: (1) Moving nfs_client to a more general place (nfs_fs_sb.h). (2) Renaming its maintenance routines to be non-NFS4 specific. (3) Move those maintenance routines to a new non-NFS4 specific file (client.c) and move the declarations to internal.h. (4) Make nfs_find/get_client() take a full sockaddr_in to include the port number (will be required for NFS2/3). (5) Make nfs_find/get_client() take the NFS protocol version (again will be required to differentiate NFS2, 3 & 4 client records). Also: (6) Make nfs_client construction proceed akin to inodes, marking them as under construction and providing a function to indicate completion. (7) Make nfs_get_client() wait interruptibly if it finds a client that it can share, but that client is currently being constructed. (8) Make nfs4_create_client() use (6) and (7) instead of locking cl_sem. Signed-Off-By: David Howells Signed-off-by: Trond Myklebust commit e9326dcab413848e70ab746c7c5363da13e5f801 Author: David Howells Date: Tue Aug 22 20:06:10 2006 -0400 NFS: Add a server capabilities NFS RPC op Add a set_capabilities NFS RPC op so that the server capabilities can be set. Signed-Off-By: David Howells Signed-off-by: Trond Myklebust commit 2b3de4411b3ccaeb00018c99d1bbe7203554cf7f Author: David Howells Date: Tue Aug 22 20:06:09 2006 -0400 NFS: Add a lookupfh NFS RPC op Add a lookup filehandle NFS RPC op so that a file handle can be looked up without requiring dentries and inodes and other VFS stuff when doing an NFS4 pathwalk during mounting. Signed-Off-By: David Howells Signed-off-by: Trond Myklebust commit b7162792b5c0e0f6e91b8997f8e6bbc76ec5420a Author: David Howells Date: Tue Aug 22 20:06:09 2006 -0400 NFS: Return an error when starting the idmapping pipe Return an error when starting the idmapping pipe so that we can detect it failing. Signed-Off-By: David Howells Signed-off-by: Trond Myklebust commit 7539bbab8062aadc1db95a22b377146843cfa88f Author: David Howells Date: Tue Aug 22 20:06:09 2006 -0400 NFS: Rename nfs_server::nfs4_state Rename nfs_server::nfs4_state to nfs_client as it will be used to represent the client state for NFS2 and NFS3 also. Signed-Off-By: David Howells Signed-off-by: Trond Myklebust commit adfa6f980bd46974e6b32b22dd0c45e3f52063f4 Author: David Howells Date: Tue Aug 22 20:06:08 2006 -0400 NFS: Rename struct nfs4_client to struct nfs_client Rename struct nfs4_client to struct nfs_client so that it can become the basis for a general client record for NFS2 and NFS3 in addition to NFS4. Signed-Off-By: David Howells Signed-off-by: Trond Myklebust commit 5ae1fbce142b67bf59e15fb1af96e88a96abde7b Author: David Howells Date: Tue Aug 22 20:06:08 2006 -0400 NFS: Fix NFS4 callback up/down prototypes Make the nfs_callback_up()/down() prototypes just do nothing if NFS4 is not enabled. Also make the down function void type since we can't really do anything if it fails. Signed-Off-By: David Howells Signed-off-by: Trond Myklebust commit 0a8ea4372b2868842986118ca90912f3382e6c5a Author: David Howells Date: Tue Aug 22 20:06:08 2006 -0400 NFS: Disambiguate nfs_stat_to_errno() Rename the NFS4 version of nfs_stat_to_errno() so that it doesn't conflict with the common one used by NFS2 and NFS3. Signed-Off-By: David Howells Signed-off-by: Trond Myklebust commit 7d4e2747a0412583526a162fbbd6edeeafcceb08 Author: David Howells Date: Tue Aug 22 20:06:07 2006 -0400 NFS: Fix up split of fs/nfs/inode.c Fix ups for the splitting of the superblock stuff out of fs/nfs/inode.c, including: (*) Move the callback tcpport module param into callback.c. (*) Move the idmap cache timeout module param into idmap.c. (*) Changes to internal.h: (*) namespace-nfs4.c was renamed to nfs4namespace.c. (*) nfs_stat_to_errno() is in nfs2xdr.c, not nfs4xdr.c. (*) nfs4xdr.c is contingent on CONFIG_NFS_V4. (*) nfs4_path() is only uses if CONFIG_NFS_V4 is set. Plus also: (*) The sec_flavours[] table should really be const. Signed-Off-By: David Howells Signed-off-by: Trond Myklebust commit 770bfad846ab6628444428467b11fa6773ae9ea1 Author: David Howells Date: Tue Aug 22 20:06:07 2006 -0400 NFS: Add dentry materialisation op The attached patch adds a new directory cache management function that prepares a disconnected anonymous function to be connected into the dentry tree. The anonymous dentry is transferred the name and parentage from another dentry. The following changes were made in [try #2]: (*) d_materialise_dentry() now switches the parentage of the two nodes around correctly when one or other of them is self-referential. The following changes were made in [try #7]: (*) d_instantiate_unique() has had the interior part split out as function __d_instantiate_unique(). Callers of this latter function must be holding the appropriate locks. (*) _d_rehash() has been added as a wrapper around __d_rehash() to call it with the most obvious hash list (the one from the name). d_rehash() now calls _d_rehash(). (*) d_materialise_dentry() is now __d_materialise_dentry() and is static. (*) d_materialise_unique() added to perform the combination of d_find_alias(), d_materialise_dentry() and d_add_unique() that the NFS client was doing twice, all within a single dcache_lock critical section. This reduces the number of times two different spinlocks were being accessed. The following further changes were made: (*) Add the dentries onto their parents d_subdirs lists. Signed-Off-By: David Howells Signed-off-by: Trond Myklebust commit 979df72e6f963b42ee484f2eca049c3344da0ba7 Author: Trond Myklebust Date: Tue Jul 25 11:28:19 2006 -0400 NFS: Add an ACCESS cache memory shrinker A pinned inode may in theory end up filling memory with cached ACCESS calls. This patch ensures that the VM may shrink away the cache in these particular cases. The shrinker works by iterating through the list of inodes on the global nfs_access_lru_list, and removing the least recently used access cache entry until it is done (or until the entire cache is empty). Signed-off-by: Trond Myklebust commit cfcea3e8c66c2dcde98d5c2693d4bff50b5cac97 Author: Trond Myklebust Date: Tue Jul 25 11:28:18 2006 -0400 NFS: Add a global LRU list for the ACCESS cache ...in order to allow the addition of a memory shrinker. Signed-off-by: Trond Myklebust commit 1c3c07e9f6cc50dab2aeb8051325e317d4f6c70e Author: Trond Myklebust Date: Tue Jul 25 11:28:18 2006 -0400 NFS: Add a new ACCESS rpc call cache to the linux nfs client The current access cache only allows one entry at a time to be cached for each inode. Add a per-inode red-black tree in order to allow more than one to be cached at a time. Should significantly cut down the time spent in path traversal for shared directories such as ${PATH}, /usr/share, etc. Signed-off-by: Trond Myklebust commit 183798799216fad36c7219fe8d4d6dee6b8fa755 Author: Jeff Garzik Date: Fri Sep 22 21:19:05 2006 -0400 net/ieee80211: fix more crypto-related build breakage Signed-off-by: Jeff Garzik commit c03efdb202a4882f426ce49766859af4058c9b8a Author: Al Viro Date: Sat Sep 23 01:29:34 2006 +0100 [PATCH] fallout from hcd-core patch missing le16_to_cpu() Signed-off-by: Al Viro Signed-off-by: Linus Torvalds commit 956295d50dc5462722f029de64d44a7ecba54e69 Author: Al Viro Date: Sat Sep 23 01:27:30 2006 +0100 [PATCH] fix the survivors of fbcon_vbl_handler() renaming In |Author: James Simmons |Date: Thu Mar 13 22:37:08 2003 -0800 | | [FBCON] Cursor handling clean up. I nuked several static variables. we have -static void fbcon_vbl_handler(int irq, void *dummy, struct pt_regs *fp) +static void fb_vbl_handler(int irq, void *dev_id, struct pt_regs *fp) and 3 years later a couple of instances missed back then still remains there. Signed-off-by: Al Viro Signed-off-by: Linus Torvalds commit 5932ef077716e3e798eaba6738ef874849f62a17 Author: Al Viro Date: Sat Sep 23 01:26:02 2006 +0100 [PATCH] sun4: fix sbus_setup_iommu() iommu_init() and iounit_init() are never called for sun4, but that's not enough - these calls should be ifdefed out since the functions in question simply do not exist for CONFIG_SUN4 kernel. Signed-off-by: Al Viro Signed-off-by: Linus Torvalds commit a07562e03a3f4a1276931e3fb3cb532622a6c616 Author: Al Viro Date: Sat Sep 23 01:25:18 2006 +0100 [PATCH] asm/backlight.h is ppc-only Signed-off-by: Al Viro Signed-off-by: Linus Torvalds commit 00ddaf20b0049c65ddd0c2b1cbed16c7a433e47c Author: Al Viro Date: Sat Sep 23 01:22:46 2006 +0100 [PATCH] sanitize frv archclean Signed-off-by: Al Viro Signed-off-by: Linus Torvalds commit 55ae922323c90fdcb733c13ccf0da2ee72763913 Author: Al Viro Date: Sat Sep 23 01:24:25 2006 +0100 [PATCH] aoa is pmac-only Signed-off-by: Al Viro Signed-off-by: Linus Torvalds commit 634965f5cfda1763f51e7916cfa49265b70e2a8d Author: Al Viro Date: Sat Sep 23 01:20:31 2006 +0100 [PATCH] memcpy_fromio() missing in istallion memcpy() from iomem is a bad thing... Signed-off-by: Al Viro Signed-off-by: Linus Torvalds commit cc9bd99e9adfa4f44ea050a63fb41a3f764acf84 Author: Al Viro Date: Sat Sep 23 01:18:41 2006 +0100 [PATCH] fix ancient breakage in ebus_init() Back when pci_dev had base_address[], loop of form base = &...->base_address[0]; for (.....) { ... *base++ = addr; } was fine, but when that array got spread in ->resource[...].start replacing the initialization with base = &...->resource[0].start; was not a sufficient modification. IOW this code got broken for cases when there had been more than one resource to fill. All way back in 2.3.41-pre3... Signed-off-by: Al Viro Signed-off-by: Linus Torvalds commit a83fbf635992442edf6aa3252e4008d4a08edf12 Author: Al Viro Date: Sat Sep 23 00:10:18 2006 +0100 [PATCH] fix missing ifdefs in syscall classes hookup for generic targets several targets have no ....at() family and m32r calls its only chown variant chown32(), with __NR_chown being undefined. creat(2) is also absent in some targets. Signed-off-by: Al Viro Signed-off-by: Linus Torvalds commit 9b6b0b81f0de6a17ce57c818d1f403253c200e1f Author: Jim Lewis Date: Fri Sep 22 17:22:53 2006 -0700 [PATCH] Spidernet: add ethtool -S (show statistics) Add the ethtool -S (show statistics) feature to the Spidernet ethernet driver. I have tested it extensively and believe it is ready to be applied. Signed-off-by: James K Lewis Signed-off-by: Andrew Morton Signed-off-by: Jeff Garzik commit ff2a2e0172fd11b1bfb9b45ee1b996d3f10669af Author: Ralf Baechle Date: Fri Sep 22 20:15:30 2006 -0400 [NET] GT96100: Delete bitrotting ethernet driver Code for the EV96100 evaluation board hasn't compiled since at least November 15, 2003, so it is being deleted as of 2.6.18 due to lack of a user base. Signed-off-by: Ralf Baechle Signed-off-by: Jeff Garzik commit 06ede91017d015a03cf8c1c87b3ff668f9a846e0 Author: Dale Farnsworth Date: Wed Sep 20 12:24:34 2006 -0700 [PATCH] mv643xx_eth: restrict to 32-bit PPC_MULTIPLATFORM No 64-bit PPC_MULTIPLATFORM platforms use the mv643xx_eth driver, so build it only on PPC32. Signed-off-by: Dale Farnsworth Acked-by: Sven Luther Signed-off-by: Jeff Garzik commit 1d22e05df8183b36b3cc0760344774040abc74d5 Author: Lennert Buytenhek Date: Fri Sep 22 02:28:13 2006 +0200 [PATCH] Cirrus Logic ep93xx ethernet driver The Cirrus Logic ep93xx is an ARM SoC that includes an ethernet MAC -- this patch adds a driver for that ethernet MAC. Signed-off-by: Lennert Buytenhek Signed-off-by: Jeff Garzik commit 24669f7d00d387799fc6a39452ab22d7f078f043 Author: Jeremy Fitzhardinge Date: Tue Sep 12 18:55:53 2006 -0700 [CPUFREQ] sw_any_bug_dmi_table can be used on resume, so it isn't initdata sw_any_bug_dmi_table can be used on resume, so it isn't initdata. Signed-off-by: Jeremy Fitzhardinge Signed-off-by: Dave Jones commit ddad65df0048e210c93640b59b3bad12701febb6 Author: Dave Jones Date: Fri Sep 22 19:15:23 2006 -0400 [CPUFREQ] Fix some more CPU hotplug locking. Lukewarm IQ detected in hotplug locking BUG: warning at kernel/cpu.c:38/lock_cpu_hotplug() [] lock_cpu_hotplug+0x42/0x65 [] cpufreq_update_policy+0x25/0xad [] kprobe_flush_task+0x18/0x40 [] schedule+0x63f/0x68b [] __link_module+0x0/0x1f [] __cond_resched+0x16/0x34 [] cond_resched+0x26/0x31 [] wait_for_completion+0x17/0xb1 [] cpufreq_stat_cpu_callback+0x13/0x20 [cpufreq_stats] [] cpufreq_stats_init+0x74/0x8b [cpufreq_stats] [] sys_init_module+0x91/0x174 [] sysenter_past_esp+0x56/0x79 As there are other places that call cpufreq_update_policy without the hotplug lock, it seems better to keep the hotplug locking at the lower level for the time being until this is revamped. Signed-off-by: Dave Jones commit 9cd330d36b32ed48d49561b165842db20bd153cc Author: Krishna Kumar Date: Fri Sep 22 15:22:58 2006 -0700 IB: Fix typo in kerneldoc for ib_set_client_data() Signed-off-by: Krishna Kumar Signed-off-by: Roland Dreier commit a8bfca024326560d86c6323b0504288ca55a75fc Author: Eli Cohen Date: Fri Sep 22 15:22:58 2006 -0700 IPoIB: Add some likely/unlikely annotations in hot path Signed-off-by: Eli Cohen Signed-off-by: Roland Dreier commit 507c33504686e733a14ef0b2dc9db0c20fae4653 Author: Dotan Barak Date: Thu Sep 21 18:26:43 2006 +0300 IPoIB: Remove unused include of vmalloc.h IPoIB doesn't use anything from , so don't include it. Signed-off-by: Dotan Barak Signed-off-by: Roland Dreier commit 5ccd025553d73e523212ee0860b7f4a75e886bfa Author: Eli Cohen Date: Fri Sep 22 15:22:56 2006 -0700 IPoIB: Rejoin all multicast groups after a port event When ipoib_ib_dev_flush() is called because of a port event, the driver needs to rejoin all multicast groups, since the flush will call ipoib_mcast_dev_flush() (via ipoib_ib_dev_down()). Otherwise no (non-broadcast) multicast groups will be rejoined until the networking core calls ->set_multicast_list again, and so multicast reception will be broken for potentially a long time. Signed-off-by: Eli Cohen Signed-off-by: Michael S. Tsirkin Signed-off-by: Roland Dreier commit d0df6d6d4539241179a1ef5394787825bf05bbce Author: Roland Dreier Date: Fri Sep 22 15:22:56 2006 -0700 IPoIB: Create MCGs with all attributes required by RFC RFC 4391 ("Transmission of IP over InfiniBand (IPoIB)") says: If the IB multicast group does not already exist, one must be created first with the IPoIB link MTU. The MGID MUST use the same P_Key, Q_Key, SL, MTU, and HopLimit as those used in the broadcast-GID. The rest of attributes SHOULD follow the values used in the broadcast-GID as well. However, the current IPoIB driver is only setting the attributes required by the InfiniBand spec to create a multicast group, so in particular the MTU and HopLimit are not being set. Add these attributes when creating MCGs, and also set the Rate attribute, since IPoIB pays attention to that attribute as well. Signed-off-by: Roland Dreier commit aec79fcc3ea3b536a2788b4e22b7ebabbb176485 Author: Michael S. Tsirkin Date: Mon Sep 18 22:17:08 2006 +0300 IB/sa: fix ib_sa_selector names Relevant SA queries are actually "greater than" / "less than", not "greater than or equal" / "less than or equal" as the names imply. (See IB spec 1.2 Vol 1, 15.2.5.16 PATHRECORD/Table 205 PathRecord) Signed-off-by: Michael S. Tsirkin Signed-off-by: Roland Dreier commit 5755d6dad95808a24a65dd9e61e23c305f9b077c Author: Roland Dreier Date: Fri Sep 22 15:22:55 2006 -0700 IB/iser: INFINIBAND_ISER depends on INET iSER won't build without CONFIG_INET enabled, so make Kconfig reflect that. Signed-off-by: Roland Dreier commit d35cc330a2058a32410ef42784b8d3b942f37b8b Author: Roland Dreier Date: Fri Sep 22 15:22:55 2006 -0700 IB/mthca: Simplify calls to mthca_cq_clean() If a QP has separate send and receive CQs, then the send CQ will never have receive completions from that QP in it. So when cleaning the send CQ, there's no need to pass in an SRQ pointer, even if the QP is attached to an SRQ. Signed-off-by: Roland Dreier commit 951f7fc1372da3d826b1d975b3cc5e3db92af5d0 Author: Or Gerlitz Date: Fri Sep 22 15:22:54 2006 -0700 RDMA/cma: Document rdma_accept() error handling Document the reject sending and modifying QP to error done in rdma_accept(). Signed-off-by: Or Gerlitz Signed-off-by: Sean Hefty Signed-off-by: Roland Dreier commit b3b30f5e8a0c50db3d76b6f7c7cc50245aeb57fd Author: Jack Morgenstein Date: Tue Aug 15 21:11:18 2006 +0300 IB/mthca: Recover from catastrophic errors Trigger device remove and then add when a catastrophic error is detected in hardware. This, in turn, will cause a device reset, which we hope will recover from the catastrophic condition. Since this might interefere with debugging the root cause, add a module option to suppress this behaviour. Signed-off-by: Jack Morgenstein Signed-off-by: Michael S. Tsirkin Signed-off-by: Roland Dreier commit 07eeec0627e93a1a753c4df004a97a4d0a7b9ceb Author: Or Gerlitz Date: Tue Sep 12 09:03:33 2006 -0700 RDMA/cma: Document rdma_destroy_id() function Clarify that rdma_destroy_id cancels outstanding asynchronous operations on the Associated id. Signed-off-by: Or Gerlitz Signed-off-by: Sean Hefty Signed-off-by: Roland Dreier commit a70d059009f4a207e2a9c794f40fc8c870096d54 Author: Michael S. Tsirkin Date: Mon Aug 28 16:32:50 2006 +0300 IB/cm: Do not track remote QPN in timewait state Do not track remote QPN in TimeWait state, since QP is not connected. Signed-off-by: Michael S. Tsirkin Signed-off-by: Roland Dreier commit c1a0b23bf477c2e1068905f4e2b5c3cee139e853 Author: Michael S. Tsirkin Date: Mon Aug 21 16:40:12 2006 -0700 IB/sa: Require SA registration Require users to register with SA module, to prevent the sa_query module text from going away while an SA query callback is still running. Update all in-tree users for the new interface. Signed-off-by: Michael S. Tsirkin Signed-off-by: Sean Hefty Signed-off-by: Roland Dreier commit 2439a6e65ff09729c3b4215f134dc5cd4e8a30c0 Author: Roland Dreier Date: Fri Sep 22 15:22:52 2006 -0700 IPoIB: Refactor completion handling Split up ipoib_ib_handle_wc() into ipoib_ib_handle_rx_wc() and ipoib_ib_handle_tx_wc() to make the code easier to read. This will also help implement NAPI in the future. Signed-off-by: Roland Dreier commit d81110285f7f6c07a0ce8f99a5ff158a647cd649 Author: Erez Zilber Date: Mon Sep 11 12:26:33 2006 +0300 IB/iser: Do not use FMR for a single dma entry sg Fast Memory Registration (fmr) is used to register for rdma an sg whose elements are not linearly sequential after dma mapping. The IB verbs layer provides an "all dma memory MR (memory region)" which can be used for RDMA-ing a dma linearly sequential buffer. Change the code to use the dma mr instead of doing fmr when dma mapping produces a single dma entry sg. Signed-off-by: Erez Zilber Signed-off-by: Roland Dreier commit e981f1d4b8288072ba7cf6b7141cd4aefb404383 Author: Erez Zilber Date: Mon Sep 11 12:24:00 2006 +0300 IB/iser: fix some debug prints fix and add some debug prints related to iser handling of memory for rdma. Signed-off-by: Erez Zilber Signed-off-by: Roland Dreier commit 8dfa0876d3dde5f9c1818a4c35caaabc3ddba78b Author: Erez Zilber Date: Mon Sep 11 12:22:30 2006 +0300 IB/iser: make FMR "page size" be 4K and not PAGE_SIZE As iser is able to use at most one rdma operation for the execution of a scsi command, and registration of the sg associated with scsi command has its restrictions, the code checks if an sg is "aligned for rdma". Alignment for rdma is measured in "fmr page" units whose possible resolutions are different between HCAs and can be smaller, equal or bigger to the system page size. When the system page size is bigger than 4KB (eg the default with ia64 kernels) there a bigger chance that an sg would be aligned for rdma if the fmr page size is 4KB. Change the code to create FMR whose pages are of size 4KB and to take that into account when processing the sg. Signed-off-by: Erez Zilber Signed-off-by: Roland Dreier commit 8072ec2f8f6790df91e85d833e672c9c30a7ab3c Author: Erez Zilber Date: Mon Sep 11 12:20:54 2006 +0300 IB/iser: Limit the max size of a scsi command Currently, the data length of a command coming down from scsi-ml is limited only by the size of its sg list (sg_tablesize). The max data length may be different for different page size values. By setting max_sectors, we limit the data length to max_sectors*512 bytes. Signed-off-by: Erez Zilber Signed-off-by: Roland Dreier commit 777a71dd4d901f055967ddbd038d2a74ffce0eb8 Author: Erez Zilber Date: Mon Sep 11 12:19:17 2006 +0300 IB/iser: fix a check of SG alignment for RDMA dma mapping may include a "compaction" of the sg associated with scsi command. Hence, the size of the maximal prefix of the SG which is aligned for rdma must be compared against the length of the dma mapped sg (mem->dma_nents) and not against the size of it before it was mapped (mem->size). Signed-off-by: Erez Zilber Signed-off-by: Roland Dreier commit 61a73c708f37295892176bc911b178278df6a091 Author: Sean Hefty Date: Fri Sep 1 15:33:55 2006 -0700 RDMA/cma: Protect against adding device during destruction Closes a window where address resolution can attach an rdma_cm_id to a device during destruction of the rdma_cm_id. This can result in the rdma_cm_id remaining in the device list after its memory has been freed. Signed-off-by: Sean Hefty Signed-off-by: Roland Dreier commit f94b533d091a42da92d908eb7b3f9ade1923f90d Author: Tom Tucker Date: Fri Sep 22 15:22:48 2006 -0700 RDMA/amso1100: Add driver for Ammasso 1100 RNIC Add a driver for the Ammasso 1100 gigabit ethernet RNIC. Signed-off-by: Tom Tucker Signed-off-by: Steve Wise Signed-off-by: Roland Dreier commit 07ebafbaaa72aa6a35472879008f5a1d1d469a0c Author: Tom Tucker Date: Thu Aug 3 16:02:42 2006 -0500 RDMA: iWARP Core Changes. Modifications to the existing rdma header files, core files, drivers, and ulp files to support iWARP, including: - Hook iWARP CM into the build system and use it in rdma_cm. - Convert enum ib_node_type to enum rdma_node_type, which includes the possibility of RDMA_NODE_RNIC, and update everything for this. Signed-off-by: Tom Tucker Signed-off-by: Steve Wise Signed-off-by: Roland Dreier commit 922a8e9fb2e0711212badce47a41137e2ca04cb3 Author: Tom Tucker Date: Thu Aug 3 16:02:40 2006 -0500 RDMA: iWARP Connection Manager. Add an iWARP Connection Manager (CM), which abstracts connection management for iWARP devices (RNICs). It is a logical instance of the xx_cm where xx is the transport type (ib or iw). The symbols exported are used by the transport independent rdma_cm module, and are available also for transport dependent ULPs. Signed-off-by: Tom Tucker Signed-off-by: Steve Wise Signed-off-by: Roland Dreier commit 3cd965646b7cb75ae84dd0daf6258adf20e4f169 Author: Roland Dreier Date: Fri Sep 22 15:22:46 2006 -0700 IB: Whitespace fixes Remove some trailing whitespace that has snuck in despite the best efforts of whitespace=error-all. Also fix a few other whitespace bogosities. Signed-off-by: Roland Dreier commit f06d26537559113207e4b73af6a22eaa5c5e9dc3 Author: Sean Hefty Date: Mon Aug 28 15:15:18 2006 -0700 IB/cm: Randomize starting comm ID Randomize the starting local comm ID to avoid getting a rejected connection due to a stale connection after a system reboot or reloading of the ib_cm. Signed-off-by: Sean Hefty Signed-off-by: Roland Dreier commit 2b3e258e5dd1938e2708eb5354ad8ba056fe8154 Author: James Lentini Date: Mon Aug 28 15:12:04 2006 -0700 IB/mad: Remove unused includes The ib_mad module does not use a kthread function, but mad_priv.h includes . mad_rmpp.c does not do any DMA-related stuff, but includes . Remove the unused includes. Signed-off-by: James Lentini Signed-off-by: Sean Hefty Signed-off-by: Roland Dreier commit 75ab13443e4575c00788ba9861105745b9dda05c Author: Sean Hefty Date: Mon Aug 28 15:10:32 2006 -0700 IB/mad: Add support for dual-sided RMPP transfers. The implementation assumes that any RMPP request that requires a response uses DS RMPP. Based on the RMPP start-up scenarios defined by the spec, this should be a valid assumption. That is, there is no start-up scenario defined where an RMPP request is followed by a non-RMPP response. By having this assumption we avoid any API changes. In order for a node that supports DS RMPP to communicate with one that does not, RMPP responses assume a new window size of 1 if a DS ACK has not been received. (By DS ACK, I'm referring to the turn-around ACK after the final ACK of the request.) This is a slight spec deviation, but is necessary to allow communication with nodes that do not generate the DS ACK. It also handles the case when a response is sent after the request state has been discarded. Signed-off-by: Sean Hefty Signed-off-by: Roland Dreier commit 76842405fca5f8b8e08d91558ecd3b922265034a Author: Sean Hefty Date: Mon Aug 28 11:57:42 2006 -0700 IB/cm: Use correct reject code for invalid GID Set the reject code properly when rejecting a request that contains an invalid GID. A suitable GID is returned by the IB CM in the additional reject information (ARI). This is a spec compliancy issue. Signed-off-by: Sean Hefty Signed-off-by: Roland Dreier commit c1f250c0b45cdfdd89b21f2b866f317439aa21de Author: Sean Hefty Date: Mon Aug 28 11:55:52 2006 -0700 IB/cm: Enable atomics along with RDMA reads Enable atomic operations along with RDMA reads if a local RDMA read/atomic depth is provided by the user. Signed-off-by: Sean Hefty Signed-off-by: Roland Dreier commit 9e583b85c2a0215dc7f4427361b4f75fcc0316af Author: Jack Morgenstein Date: Mon Aug 28 19:12:39 2006 +0300 IB/mthca: Return correct number of bits for static rate in query_qp Incorrect number of bits was taken for static_rate field. Signed-off-by: Jack Morgenstein Signed-off-by: Roland Dreier commit f6f76725b5ed8085c602b16bfd309c9957fb84c8 Author: Jack Morgenstein Date: Mon Aug 28 19:10:34 2006 +0300 IB/mthca: Return port number for unconnected QPs in query_qp port_num was not being returned for unconnected QPs. Signed-off-by: Jack Morgenstein Signed-off-by: Roland Dreier commit b046a04e162dc7f468700a0817acda0321b2b3ae Author: Jack Morgenstein Date: Mon Aug 28 19:08:53 2006 +0300 IB/mthca: Fix default static rate returned for Tavor in AV When default static rate is returned for Tavor, need to translate it to an ib rate value. Signed-off-by: Jack Morgenstein Signed-off-by: Roland Dreier commit 30fc5c3130bdbc7cc051a2d6054ad38360d408a8 Author: Bryan O'Sullivan Date: Fri Aug 25 11:24:48 2006 -0700 IB/ipath: control receive polarity inversion Signed-off-by: Bryan O'Sullivan Signed-off-by: Roland Dreier commit e35d710d0c5b74bc9833d6a3791706bd577a3724 Author: Bryan O'Sullivan Date: Fri Aug 25 11:24:46 2006 -0700 IB/ipath: fix return value from ipath_poll This stops the generic poll code from waiting for a timeout. Signed-off-by: Bryan O'Sullivan Signed-off-by: Roland Dreier commit d821f02a6ebed97e35e0bc7575452cfc6f9073cb Author: Bryan O'Sullivan Date: Fri Aug 25 11:24:45 2006 -0700 IB/ipath: allow SMA to be disabled This is useful for testing purposes. Signed-off-by: Bryan O'Sullivan Signed-off-by: Roland Dreier commit a78aa6fb156f9954562c9539aeb25dbec1ffca10 Author: Bryan O'Sullivan Date: Fri Aug 25 11:24:44 2006 -0700 IB/ipath: handle sq_sig_all field correctly Signed-off-by: Bryan O'Sullivan Signed-off-by: Roland Dreier commit 0b81e4f79af8322c7142701982f40d1431dedf19 Author: Bryan O'Sullivan Date: Fri Aug 25 11:24:43 2006 -0700 IB/ipath: put a limit on the number of QPs that can be created Signed-off-by: Bryan O'Sullivan Signed-off-by: Roland Dreier commit ca4ce383acfb05b8035453cdbbfd4f8ae36c7a69 Author: Bryan O'Sullivan Date: Fri Aug 25 11:24:42 2006 -0700 IB/ipath: validate path_mig_state properly Signed-off-by: Bryan O'Sullivan Signed-off-by: Roland Dreier commit fc8cf8cdfc3ce328c577b18ebcd60a5595f2a283 Author: Bryan O'Sullivan Date: Fri Aug 25 11:24:41 2006 -0700 IB/ipath: be more strict about testing the modify QP verb Signed-off-by: Bryan O'Sullivan Signed-off-by: Roland Dreier commit ff0b8597ec3e7db6b37130a195cb3d673dafea27 Author: Bryan O'Sullivan Date: Fri Aug 25 11:24:40 2006 -0700 IB/ipath: add serial number to hardware freeze error message Also added the word "Hardware" after "Fatal" to make it more obvious that it's hardware, not software. Signed-off-by: Bryan O'Sullivan Signed-off-by: Roland Dreier commit 525d0ca1d452ed336c1d907fb20c104467a8a47b Author: Bryan O'Sullivan Date: Fri Aug 25 11:24:39 2006 -0700 IB/ipath: support new QLogic product naming scheme This patch only renames files, fixes product names, and updates comments. Signed-off-by: Bryan O'Sullivan Signed-off-by: Roland Dreier commit 092260b8f966ebe0742045416082e9a81bd971d1 Author: Bryan O'Sullivan Date: Fri Aug 25 11:24:38 2006 -0700 IB/ipath: account for attached QPs correctly Signed-off-by: Bryan O'Sullivan Signed-off-by: Roland Dreier commit eae33d47a797e159306567643284a98ae7428ec4 Author: Bryan O'Sullivan Date: Fri Aug 25 11:24:37 2006 -0700 IB/ipath: do not allow use of CQ entries with invalid counts Signed-off-by: Bryan O'Sullivan Signed-off-by: Roland Dreier commit 98341f261893acd7bc5abee5ddc35337ef49e457 Author: Bryan O'Sullivan Date: Fri Aug 25 11:24:36 2006 -0700 IB/ipath: add new minor device to allow sending of diag packets Signed-off-by: Bryan O'Sullivan Signed-off-by: Roland Dreier commit 32c0a26c8f91dbc2797175c2bdff42b54f66c71d Author: Bryan O'Sullivan Date: Fri Aug 25 11:24:35 2006 -0700 IB/ipath: trivial cleanups Signed-off-by: Bryan O'Sullivan Signed-off-by: Roland Dreier commit 0fd41363e0785247b7c19127318abc8b5eacc86b Author: Bryan O'Sullivan Date: Fri Aug 25 11:24:34 2006 -0700 IB/ipath: remove stale references to userspace SMA When we first submitted a userspace subnet management agent, it was rejected, so we left it out of the final driver submission. This patch removes a number of vestigial references to it. Signed-off-by: Bryan O'Sullivan Signed-off-by: Roland Dreier commit b55f4f06c834a67f949a5219c5f97ffafa240989 Author: Bryan O'Sullivan Date: Fri Aug 25 11:24:33 2006 -0700 IB/ipath: simplify debugging code after ipath_core and ib_ipath merger Signed-off-by: Bryan O'Sullivan Signed-off-by: Roland Dreier commit 34b2aafea38efdf02cd8107a6e1057e2a297c447 Author: Bryan O'Sullivan Date: Fri Aug 25 11:24:32 2006 -0700 IB/ipath: simplify layering code A lot of ipath layer code was only called in one place. Now that the ipath_core and ib_ipath drivers are merged, it's more sensible to simply inline the simple stuff that the layer code was doing. Signed-off-by: Bryan O'Sullivan Signed-off-by: Roland Dreier commit b1c1b6a30eac88665a35a207cc5e6233090b9d65 Author: Bryan O'Sullivan Date: Fri Aug 25 11:24:31 2006 -0700 IB/ipath: merge ipath_core and ib_ipath drivers There is little point in keeping the two drivers separate, so we are merging them. Signed-off-by: Bryan O'Sullivan Signed-off-by: Roland Dreier commit 367fe711c5dc85dbc3265cf01e34d4d6fbd55f06 Author: Bryan O'Sullivan Date: Fri Aug 25 11:24:30 2006 -0700 IB/ipath: drop requirement that PIO buffers be mmaped write-only Some userlands try to mmap these pages read-write, so accommodate them. Signed-off-by: Bryan O'Sullivan Signed-off-by: Roland Dreier commit ba11203a11835737df980ef3dd3bd8325b9cc94e Author: Bryan O'Sullivan Date: Fri Aug 25 11:24:29 2006 -0700 IB/ipath: fix handling of kpiobufs Change comment: no longer imply that user can set ipath_kpiobufs to zero. Actually set ipath_kpiobufs from parameter. Previously only altered per-device ipath_lastport_piobuf, which was over-written in chip init. Signed-off-by: Bryan O'Sullivan Signed-off-by: Roland Dreier commit 8e280d94e29af67035637fb957daba7ae0d23583 Author: Bryan O'Sullivan Date: Fri Aug 25 11:24:28 2006 -0700 IB/ipath: fix for crash on module unload, if cfgports < portcnt Allocate enough pointers for all possible ports, to avoid problems in cleanup/unload. Signed-off-by: Bryan O'Sullivan Signed-off-by: Roland Dreier commit c27fef26271d352b5546c33239edeb0dcb4fc0cc Author: Bryan O'Sullivan Date: Fri Aug 25 11:24:27 2006 -0700 IB/ipath: lock resource limit counters correctly Signed-off-by: Bryan O'Sullivan Signed-off-by: Roland Dreier commit eb9dc6f48dc7537ce53163109625bd992150e0cf Author: Bryan O'Sullivan Date: Fri Aug 25 11:24:26 2006 -0700 IB/ipath: More changes to support InfiniPath on PowerPC 970 systems Ordering of writethrough store buffers needs to be forced, and we need to use ifdef to get writethrough behavior to InfiniPath buffers, because there is no generic way to specify that at this time (similar to code in char/drm/drm_vm.c and block/z2ram.c). Signed-off-by: John Gregor Signed-off-by: Bryan O'Sullivan Signed-off-by: Roland Dreier commit 373d9915803aebbbf7fd3841efd9dac31c32e148 Author: Ralph Campbell Date: Fri Sep 22 15:22:26 2006 -0700 IB/ipath: Performance improvements via mmap of queues Improve performance of userspace post receive, post SRQ receive, and poll CQ operations for ipath by allowing userspace to directly mmap() receive queues and completion queues. This eliminates the copying between userspace and the kernel in the data path. Signed-off-by: Ralph Campbell Signed-off-by: Roland Dreier commit 9bc57e2d19db4da81c1150120658cc3658a99ed4 Author: Ralph Campbell Date: Fri Aug 11 14:58:09 2006 -0700 IB/uverbs: Pass userspace data to modify_srq and modify_qp methods Pass a struct ib_udata to the low-level driver's ->modify_srq() and ->modify_qp() methods, so that it can get to the device-specific data passed in by the userspace driver. Signed-off-by: Ralph Campbell Signed-off-by: Roland Dreier commit 64f817ba98095156149ba5991592d5d039f6da74 Author: Ralph Campbell Date: Fri Sep 22 15:22:24 2006 -0700 IB/uverbs: Allow resize CQ operation to return driver-specific data Add a ib_uverbs_resize_cq_resp.driver_data field so that low-level drivers can return data from a resize CQ operation to userspace. Have ib_uverbs_resize_cq() only copy the cqe field, to avoid having to bump the userspace ABI. Signed-off-by: Ralph Campbell Signed-off-by: Roland Dreier commit fab97220c9e409a98b1956ba677ddd2dd43b0b95 Author: Heiko J Schick Date: Fri Sep 22 15:22:22 2006 -0700 IB/ehca: Add driver for IBM eHCA InfiniBand adapters Add a driver for IBM GX bus InfiniBand adapters, which are usable with some pSeries/System p systems. Signed-off-by: Heiko J Schick Signed-off-by: Roland Dreier commit 3b9f9a1c3903b64c38505f9fed3bb11e48dbc931 Author: Noriaki TAKAMIYA Date: Fri Sep 22 14:45:56 2006 -0700 [IPV6] ADDRCONF: Mobile IPv6 Home Address support. IFA_F_HOMEADDRESS is introduced for Mobile IPv6 Home Addresses on Mobile Node. The IFA_F_HOMEADDRESS flag should be set for Mobile IPv6 Home Addresses for 2 purposes. 1) We need to check this on receipt of Type 2 Routing Header (RFC3775 Secion 6.4), 2) We prefer Home Address(es) in source address selection (RFC3484 Section 5 Rule 4). Signed-off-by: Noriaki TAKAMIYA Signed-off-by: YOSHIFUJI Hideaki Signed-off-by: David S. Miller commit 55ebaef1d5db9c1c76ba01a87fd986db5dee550d Author: Noriaki TAKAMIYA Date: Fri Sep 22 14:45:27 2006 -0700 [IPV6] ADDRCONF: Allow non-DAD'able addresses. IFA_F_NODAD flag, similar to IN6_IFF_NODAD in BSDs, is introduced to skip DAD. This flag should be set to Mobile IPv6 Home Address(es) on Mobile Node because DAD would fail if we should perform DAD; our Home Agent protects our Home Address(es). Signed-off-by: Noriaki TAKAMIYA Signed-off-by: YOSHIFUJI Hideaki Signed-off-by: David S. Miller commit fc26d0abd5afd2b5268a7dbdbf8be1095ce5703e Author: YOSHIFUJI Hideaki Date: Fri Sep 22 14:44:53 2006 -0700 [IPV6] NDISC: Fix is_router flag setting. We did not send appropriate IsRouter flag if the forwarding setting is positive even value. Let's give 1/0 value to ndisc_send_na(). Also, existing users of ndisc_send_na() give 0/1 to override, we can omit redundant operation in that function. Bug hinted by Nicolas Dichtel . Signed-off-by: YOSHIFUJI Hideaki Signed-off-by: David S. Miller commit 8814c4b533817df825485ff32ce6ac406c3a54d1 Author: YOSHIFUJI Hideaki Date: Fri Sep 22 14:44:24 2006 -0700 [IPV6] ADDRCONF: Convert addrconf_lock to RCU. Signed-off-by: YOSHIFUJI Hideaki Signed-off-by: David S. Miller commit fbea49e1e2404baa2d88ab47e2db89e49551b53b Author: YOSHIFUJI Hideaki Date: Fri Sep 22 14:43:49 2006 -0700 [IPV6] NDISC: Add proxy_ndp sysctl. We do not always need proxy NDP functionality even we enable forwarding. Signed-off-by: YOSHIFUJI Hideaki Signed-off-by: David S. Miller commit 62dd93181aaa1d5a501a9cebcb254f44b8a48af7 Author: Ville Nuorvala Date: Fri Sep 22 14:43:19 2006 -0700 [IPV6] NDISC: Set per-entry is_router flag in Proxy NA. We have sent NA with router flag from the node-wide forwarding configuration. This is not appropriate for proxy NA, and it should be set according to each proxy entry's configuration. This is used by Mobile IPv6 home agent to support physical home link in acting as a proxy router for mobile node which is not a router, for example. Based on MIPL2 kernel patch. Signed-off-by: Ville Nuorvala Signed-off-by: Masahide NAKAMURA Signed-off-by: YOSHIFUJI Hideaki commit 5f3e6e9e19f50a6910aec2dbd479187aabba04b7 Author: Ville Nuorvala Date: Fri Sep 22 14:42:46 2006 -0700 [IPV6] NDISC: Avoid updating neighbor cache for proxied address in receiving NA. This aims at proxying router not updating neighbor cache entry for proxied address when it receives NA because either the proxied node is off link or it has already sent a NA to the proxied router. Based on MIPL2 kernel patch. Signed-off-by: Ville Nuorvala Signed-off-by: Masahide NAKAMURA Signed-off-by: YOSHIFUJI Hideaki commit 74553b09dcd9194cbda737016f0b89f245145670 Author: Ville Nuorvala Date: Fri Sep 22 14:42:18 2006 -0700 [IPV6]: Don't forward packets to proxied link-local address. Proxying router can't forward traffic sent to link-local address, so signal the sender and discard the packet. This behavior is clarified by Mobile IPv6 specification (RFC3775) but might be required for all proxying router. Based on MIPL2 kernel patch. Signed-off-by: Ville Nuorvala Signed-off-by: Masahide NAKAMURA Signed-off-by: YOSHIFUJI Hideaki commit e21e0b5f19ac7835a244c2016f7ed726f971b3e9 Author: Ville Nuorvala Date: Fri Sep 22 14:41:44 2006 -0700 [IPV6] NDISC: Handle NDP messages to proxied addresses. It is required to respond to NDP messages sent directly to the "target" unicast address. Proxying node (router) is required to handle such messages. To achieve this, check if the packet in forwarding patch is NDP message. With this patch, the proxy neighbor entries are always looked up in forwarding path. We may want to optimize further. Based on MIPL2 kernel patch. Signed-off-by: Ville Nuorvala Signed-off-by: Masahide NAKAMURA Signed-off-by: YOSHIFUJI Hideaki commit 4c5de695cf7f71c85ad8cfff509f6475b8bd4d27 Author: Patrick McHardy Date: Wed Sep 20 12:11:30 2006 -0700 [NETFILTER]: PPTP conntrack: fix another GRE keymap leak When the master PPTP connection times out while still having unfullfilled expectations (and a GRE keymap entry) associated with it, the keymap entry is not destroyed. Add a destroy callback to struct ip_conntrack_helper and use it to destroy PPTP siblings when the master is destroyed. Signed-off-by: Patrick McHardy Signed-off-by: David S. Miller commit fd5e3befa405ea64d4db6b393b821644bf963c57 Author: Patrick McHardy Date: Wed Sep 20 12:11:12 2006 -0700 [NETFILTER]: PPTP conntrack: fix GRE keymap leak When destroying the GRE expectations without having seen the GRE connection the keymap entry is not freed, leading to a memory leak and, in case of a following call within the same session, failure during expectation setup. Signed-off-by: Patrick McHardy Signed-off-by: David S. Miller commit 62fbe9c82b20197a4f9c54f7add5d368418ba277 Author: Patrick McHardy Date: Wed Sep 20 12:10:52 2006 -0700 [NETFILTER]: PPTP conntrack: fix PPTP_IN_CALL message types Fix incorrectly used message types and call IDs: - PPTP_IN_CALL_REQUEST (PAC->PNS) contains a PptpInCallRequest (icreq) message and the PAC call ID - PPTP_IN_CALL_REPLY (PNS->PAC) contains a PptpInCallReply (icack) message and the PNS call ID Signed-off-by: Patrick McHardy Signed-off-by: David S. Miller commit 750a58423309b56751076329e9edf61b93213e0f Author: Patrick McHardy Date: Wed Sep 20 12:10:37 2006 -0700 [NETFILTER]: PPTP conntrack: check call ID before changing state For rejected calls the state is set to PPTP_CALL_NONE even for non-matching call ids. Signed-off-by: Patrick McHardy Signed-off-by: David S. Miller commit 87a0117afdfe64473a6c802501bc15aee145ebb8 Author: Patrick McHardy Date: Wed Sep 20 12:10:21 2006 -0700 [NETFILTER]: PPTP conntrack: clean up debugging cruft Also make sure not to hand packets received in an invalid state to the NAT helper since it will mangle the packet with invalid data. Signed-off-by: Patrick McHardy Signed-off-by: David S. Miller commit 4c651756d502e72a68b0bc6fb20bb18c68785227 Author: Patrick McHardy Date: Wed Sep 20 12:10:06 2006 -0700 [NETFILTER]: PPTP conntrack: consolidate header parsing Signed-off-by: Patrick McHardy Signed-off-by: David S. Miller commit a1073406a124c1d3b33a0f06bfb8078a9ddd1985 Author: Patrick McHardy Date: Wed Sep 20 12:09:51 2006 -0700 [NETFILTER]: PPTP conntrack: consolidate header size checks Also make sure not to pass undersized messages to the NAT helper. Signed-off-by: Patrick McHardy Signed-off-by: David S. Miller commit cf9f81523ef3e95d9f222c896d266e4562999150 Author: Patrick McHardy Date: Wed Sep 20 12:09:34 2006 -0700 [NETFILTER]: PPTP conntrack: simplify expectation handling Remove duplicated expectation handling in the NAT helper and simplify the remains in the conntrack helper. Signed-off-by: Patrick McHardy Signed-off-by: David S. Miller commit 857c06da2ba2e00b81677c2f6740048d87da0207 Author: Patrick McHardy Date: Wed Sep 20 12:09:19 2006 -0700 [NETFILTER]: PPTP conntrack: remove unnecessary cid/pcid header pointers Just the values are needed, not the memory locations. Signed-off-by: Patrick McHardy Signed-off-by: David S. Miller commit 6013c0a13e335674a783215e182c367406294392 Author: Patrick McHardy Date: Wed Sep 20 12:08:56 2006 -0700 [NETFILTER]: PPTP conntrack: fix header definitions Fix a few header definitions to match RFC2637. Most importantly the PptpOutCallRequest header included an invalid padding field and a size check was disabled because of this. Signed-off-by: Patrick McHardy Signed-off-by: David S. Miller commit 5256f663a0228af9bf69ba74ad9f0928f35713f7 Author: Patrick McHardy Date: Wed Sep 20 12:08:41 2006 -0700 [NETFILTER]: PPTP conntrack: remove more dead code The calculated sequence numbers are not used for anything. Signed-off-by: Patrick McHardy Signed-off-by: David S. Miller commit a1ad1deed5bf6fa06f2213b7f1a794de4cf791a6 Author: Patrick McHardy Date: Wed Sep 20 12:08:23 2006 -0700 [NETFILTER]: PPTP conntrack: remove dead code The call ID in reply packets is never changed, remove the code. Signed-off-by: Patrick McHardy Signed-off-by: David S. Miller commit 955b944293dd4c931ec866ebe19a6b2463b8f9a0 Author: Patrick McHardy Date: Wed Sep 20 12:08:03 2006 -0700 [NETFILTER]: PPTP conntrack: get rid of unnecessary byte order conversions The conntrack structure contains the call ID in host byte order for no reason, get rid of back and forth conversions. Signed-off-by: Patrick McHardy Signed-off-by: David S. Miller commit edd5a329cf69c112882e03c8ab55e985062a5d2a Author: Patrick McHardy Date: Wed Sep 20 12:07:39 2006 -0700 [NETFILTER]: PPTP conntrack: fix whitespace errors Signed-off-by: Patrick McHardy Signed-off-by: David S. Miller commit 127f15dd659b20e722561ff8c86dc058e1a72323 Author: Patrick McHardy Date: Wed Sep 20 12:07:23 2006 -0700 [NETFILTER]: ipt_hashlimit: add compat conversion functions Signed-off-by: Patrick McHardy Signed-off-by: David S. Miller commit 02c63cf777c331121bfb6e9c1440a9835ad2f2a8 Author: Patrick McHardy Date: Wed Sep 20 12:07:06 2006 -0700 [NETFILTER]: xt_limit: add compat conversion functions Signed-off-by: Patrick McHardy Signed-off-by: David S. Miller commit 7ce975b9da93b46dbf6ba70a1b4751bec211d079 Author: Patrick McHardy Date: Wed Sep 20 12:06:40 2006 -0700 [NETFILTER]: xt_CONNMARK: add compat conversion functions Signed-off-by: Patrick McHardy Signed-off-by: David S. Miller commit f1eda05386ade8dad4e8e9b48ecbd9432b6739d9 Author: Patrick McHardy Date: Wed Sep 20 12:06:25 2006 -0700 [NETFILTER]: xt_connmark: add compat conversion functions Signed-off-by: Patrick McHardy Signed-off-by: David S. Miller commit be7263b7b72ed9d5d25958f2b71e77e889e4845a Author: Patrick McHardy Date: Wed Sep 20 12:06:10 2006 -0700 [NETFILTER]: xt_MARK: add compat conversion functions Signed-off-by: Patrick McHardy Signed-off-by: David S. Miller commit bc80b656657251fc936d2d93fc70d5566c1c7d29 Author: Patrick McHardy Date: Wed Sep 20 12:05:54 2006 -0700 [NETFILTER]: xt_mark: add compat conversion functions Signed-off-by: Patrick McHardy Signed-off-by: David S. Miller commit 9fa492cdc160cd27ce1046cb36f47d3b2b1efa21 Author: Patrick McHardy Date: Wed Sep 20 12:05:37 2006 -0700 [NETFILTER]: x_tables: simplify compat API Split the xt_compat_match/xt_compat_target into smaller type-safe functions performing just one operation. Handle all alignment and size-related conversions centrally in these function instead of requiring each module to implement a full-blown conversion function. Replace ->compat callback by ->compat_from_user and ->compat_to_user callbacks, responsible for converting just a single private structure. Signed-off-by: Patrick McHardy Signed-off-by: David S. Miller commit 79030ed07de673e8451a03aecb9ada9f4d75d491 Author: Patrick McHardy Date: Wed Sep 20 12:05:08 2006 -0700 [NETFILTER]: ip_tables: revision support for compat code Signed-off-by: Patrick McHardy Signed-off-by: David S. Miller commit bec71b162747708d4b45b0cd399b484f52f2901a Author: Patrick McHardy Date: Wed Sep 20 12:04:08 2006 -0700 [NETFILTER]: ip_tables: fix module refcount leaks in compat error paths Signed-off-by: Patrick McHardy Signed-off-by: David S. Miller commit 1192e403e9ea2dc23bbbe2b4fe9bdbc47e8c6056 Author: Brian Haley Date: Wed Sep 20 12:03:46 2006 -0700 [NETFILTER]: make some netfilter globals __read_mostly Signed-off-by: Brian Haley Signed-off-by: Patrick McHardy Signed-off-by: David S. Miller commit c1fe3ca5106d9568791433fa6c7f27e71ac69e1b Author: George Hansper Date: Wed Sep 20 12:03:23 2006 -0700 [NETFILTER]: TCP conntrack: improve dead connection detection Don't count window updates as retransmissions. Signed-off-by: George Hansper Signed-off-by: Patrick McHardy commit 71cd83a8bde61612b277fd5bf91503ac1ad61e23 Author: Alexey Dobriyan Date: Wed Sep 20 12:02:44 2006 -0700 [NETFILTER]: xt_policy: remove dups in .family sparse "defined twice" warning Signed-off-by: Alexey Dobriyan Signed-off-by: Patrick McHardy Signed-off-by: David S. Miller commit 7cf73936fe6bb9b027b75fd8fa3c634fe74843d3 Author: Patrick McHardy Date: Wed Sep 20 12:02:21 2006 -0700 [NETFILTER]: ip6t_HL: remove write-only variable Noticed by Alexey Dobriyan Signed-off-by: Patrick McHardy Signed-off-by: David S. Miller commit ca39df6cdfbe2ea210e31117f5d469576cfe9008 Author: Patrick McHardy Date: Wed Sep 20 12:01:34 2006 -0700 [NETFILTER]: ipt_TTL: fix checksum update bug Fix regression introduced by the incremental checksum patches. Signed-off-by: Patrick McHardy Signed-off-by: David S. Miller commit 5251e2d2125407bbff0c39394a4011be9ed8b5d0 Author: Pablo Neira Ayuso Date: Wed Sep 20 12:01:06 2006 -0700 [NETFILTER]: conntrack: fix race condition in early_drop On SMP environments the maximum number of conntracks can be overpassed under heavy stress situations due to an existing race condition. CPU A CPU B atomic_read() ... early_drop() ... ... atomic_read() allocate conntrack allocate conntrack atomic_inc() atomic_inc() This patch moves the counter incrementation before the early drop stage. Signed-off-by: Pablo Neira Ayuso Signed-off-by: Patrick McHardy Signed-off-by: David S. Miller commit 01f348484dd8509254d045e3ad49029716eca6a1 Author: Pablo Neira Ayuso Date: Wed Sep 20 12:00:45 2006 -0700 [NETFILTER]: ctnetlink: simplify the code to dump the conntrack table Merge the bits to dump the conntrack table and the ones to dump and zero counters in a single piece of code. This patch does not change the default behaviour if accounting is not enabled. Signed-off-by: Pablo Neira Ayuso Signed-off-by: Patrick McHardy Signed-off-by: David S. Miller commit 90d47db4a06f93f7339618b2a4f0cb032ef8d6d5 Author: Dmitry Mishin Date: Wed Sep 20 12:00:21 2006 -0700 [NETFILTER]: x_tables: small check_entry & module_refcount cleanup While standard_target has target->me == NULL, module_put() should be called for it as for others, because there were try_module_get() before. Signed-off-by: Dmitry Mishin Signed-off-by: Patrick McHardy Signed-off-by: David S. Miller commit 9123de2c043996050bacf77031cad845f5976f5d Author: Patrick McHardy Date: Wed Sep 20 11:59:42 2006 -0700 [NETFILTER]: ip6table_mangle: reroute when nfmark changes in NF_IP6_LOCAL_OUT Now that IPv6 supports policy routing we need to reroute in NF_IP6_LOCAL_OUT when the mark value changes. Signed-off-by: Patrick McHardy Signed-off-by: David S. Miller commit 57dab5d0bfee21663ed20222b4cedeb0655ba1f3 Author: Patrick McHardy Date: Wed Sep 20 11:59:25 2006 -0700 [NETFILTER]: xt_limit: don't reset state on unrelated rule updates The limit match reinitializes its state whenever the ruleset changes, which means it will forget about previously used credits. Signed-off-by: Patrick McHardy Signed-off-by: David S. Miller commit ecb70c95c45ece0935b076295388267f6d8db65c Author: Patrick McHardy Date: Wed Sep 20 11:59:06 2006 -0700 [NETFILTER]: ipt_TCPMSS: misc cleanup - remove debugging cruft - remove printk for reallocation failures - remove unused addition Signed-off-by: Patrick McHardy Signed-off-by: David S. Miller commit 2be344c4461d29b99113f62fa91c5ceab9997329 Author: Patrick McHardy Date: Wed Sep 20 11:58:50 2006 -0700 [NETFILTER]: ipt_TCPMSS: remove impossible condition Every skb must have a dst_entry at this point. Signed-off-by: Patrick McHardy Signed-off-by: David S. Miller commit 68e1f188de535865d4543bae92d168c007857e7b Author: Patrick McHardy Date: Wed Sep 20 11:58:35 2006 -0700 [NETFILTER]: ipt_TCPMSS: reformat - fix whitespace error - break lines at 80 characters - reformat some expressions to be more readable Signed-off-by: Patrick McHardy Signed-off-by: David S. Miller commit 50b9f1d509eb998db73cd769c9511186474f566e Author: Patrick McHardy Date: Wed Sep 20 11:58:17 2006 -0700 [NETFILTER]: xt_conntrack: clean up overly long lines Also fix some whitespace errors and use the NAT bits instead of deriving the state manually. Signed-off-by: Patrick McHardy Signed-off-by: David S. Miller commit df0933dcb027e156cb5253570ad694b81bd52b69 Author: Patrick McHardy Date: Wed Sep 20 11:57:53 2006 -0700 [NETFILTER]: kill listhelp.h Kill listhelp.h and use the list.h functions instead. Signed-off-by: Patrick McHardy Signed-off-by: David S. Miller commit 1bf38a36b6a0e810dafae048fdbb999e587f0f2f Author: Patrick McHardy Date: Wed Sep 20 11:57:09 2006 -0700 [NETFILTER]: remove unused include file Signed-off-by: Patrick McHardy Signed-off-by: David S. Miller commit c55e2f4997a104d66b59bdf1aa8ab125d09ae00a Author: Al Viro Date: Tue Sep 19 13:23:19 2006 -0700 [IPV4]: ipip and ip_gre encapsulation bugs Handling of ipip and ip_gre ICMP error relaying is b0rken; it accesses 8bit field + 3 reserved octets as host-endian 32bit, does comparison, subtraction and stuffs the result back. That breaks on big-endian. Fixed, made endian-clean. [ Note that this effected code is permanently commented out with and ifdef, so this error couldn't actually cause problems for anyone. -DaveM ] Signed-off-by: Al Viro Signed-off-by: David S. Miller commit 593f16aa627d61da447c76ee5a159450174627f6 Author: Andrea Bittau Date: Tue Sep 19 13:15:33 2006 -0700 [DCCP] CCID2: Add helper functions for changing important CCID2 state Introduce methods which manipulate interesting congestion control state such as pipe and rtt estimate. This is useful for people wishing to monitor the variables of CCID and instrument the code [perhaps using Kprobes]. Personally, I am a fan of encapsulation---that justifies this change =D. Signed-off-by: Andrea Bittau Signed-off-by: Arnaldo Carvalho de Melo Signed-off-by: David S. Miller commit 374bcf32c86e1b56eab832bbb6b21e636707eab6 Author: Andrea Bittau Date: Tue Sep 19 13:14:43 2006 -0700 [DCCP] CCID2: Halve cwnd once upon multiple losses in a single RTT When multiple losses occur in one RTT, the window should be halved only once [a single "congestion event"]. This is now implemented, although not perfectly. Slightly changed the interface for changing the cwnd: pass hctx instead of dp. This is required in order to allow for change_cwnd to be called from _init(). Signed-off-by: Andrea Bittau Signed-off-by: Arnaldo Carvalho de Melo Signed-off-by: David S. Miller commit 07978aabd52ce67f59971872c80f76d6e3ca18ae Author: Andrea Bittau Date: Tue Sep 19 13:13:37 2006 -0700 [DCCP] CCID2: Allocate seq records on demand Allocate more sequence state on demand. Each time a packet is sent out by CCID2, a record of it needs to be kept. This list of records grows proportionally to cwnd. Previously, the length of this list was hardcored and therefore the cwnd could only grow to this value (of 128). Now, records are allocated on demand as necessary---cwnd may grow as it wishes. The exceptional case of when memory is not available is not handled gracefully. Perhaps, cwnd should be capped at that point. Signed-off-by: Andrea Bittau Signed-off-by: Arnaldo Carvalho de Melo Signed-off-by: David S. Miller commit 8d424f6ca2d02026dadff409770639d720375afb Author: Andrea Bittau Date: Tue Sep 19 13:12:44 2006 -0700 [DCCP] CCID2: Add Kconfig option for CCID2 debug Allow the user to choose whether or not to enable CCID2 debugging via Kconfig. Signed-off-by: Andrea Bittau Signed-off-by: Arnaldo Carvalho de Melo Signed-off-by: David S. Miller commit 446dec30c7f305ed1bb0092b0a8d9367d842a33f Author: Andrea Bittau Date: Tue Sep 19 13:10:11 2006 -0700 [DCCP] CCID2: Tell DCCP to quickly check whether cwnd is available If not enough cwnd is available, tell the sender to check again as soon as possible. This will increase CPU utilization (polling frequently for cwnd) but will improve network performance. That is, the sender will need to wait less before detecting the increase of cwnd. A better architecture would be for the CCID to call-back (or dequeue) from DCCP when it is able to transmit traffic -- not the other way around as it currently occurs. Signed-off-by: Andrea Bittau Signed-off-by: Arnaldo Carvalho de Melo Signed-off-by: David S. Miller commit 69263bcfb5016bc3bdd099607a4232cba06f8491 Author: Adrian Bunk Date: Fri Sep 22 14:28:11 2006 -0700 [ATM]: proper prototypes in net/atm/mpc.h (and reduce ifdef clutter) Signed-off-by: Adrian Bunk Signed-off-by: Chas Williams Signed-off-by: David S. Miller commit d458c25ce24ce00ea547e9976e293e7835416253 Author: Andrea Bittau Date: Tue Sep 19 13:07:20 2006 -0700 [DCCP] CCID2: Initialize ssthresh to infinity Initialize the slow-start threshold to infinity. This way, upon connection initiation, slow-start will be exited only upon a packet loss. This patch will allow connections to quickly gain speed. Signed-off-by: Andrea Bittau Signed-off-by: Arnaldo Carvalho de Melo Signed-off-by: David S. Miller commit 29651cda97b0a9e4ac0fbeb5ea731a9909f0f128 Author: Andrea Bittau Date: Tue Sep 19 13:06:46 2006 -0700 [DCCP] CCID2: Fix jiffie wrap issues Jiffies are now handled correctly (I hope) in CCID2. If they wrap, no problem. Signed-off-by: Andrea Bittau Signed-off-by: Arnaldo Carvalho de Melo Signed-off-by: David S. Miller commit 4a0a50fb43912b4a593d2416c507a198fe607a6d Author: Andrea Bittau Date: Tue Sep 19 13:06:16 2006 -0700 [DCCP] ackvec: Remove unused variables Get rid of unused variables in ackvector state. Signed-off-by: Andrea Bittau Signed-off-by: Arnaldo Carvalho de Melo Signed-off-by: David S. Miller commit 8e27e4650cb7e73aa4dd97d860539e7605ac7e39 Author: Andrea Bittau Date: Tue Sep 19 13:05:35 2006 -0700 [DCCP] ackvec: Fix how DCCP_ACKVEC_STATE_NOT_RECEIVED is used Fix the way state is masked out. DCCP_ACKVEC_STATE_NOT_RECEIVED is defined as appears in the packet, therefore bit shifting is not required. This fix allows CCID2 to correctly detect losses. Signed-off-by: Andrea Bittau Signed-off-by: Arnaldo Carvalho de Melo Signed-off-by: David S. Miller commit 23d06e3b986677ec57007a24891fa9deb09ac973 Author: Andrea Bittau Date: Tue Sep 19 13:04:54 2006 -0700 [DCCP] ACKVEC: fix ackvector length calculation Fix ackvector length calculation upon receiving an "ack-of-ack". This patch avoids the ackvector from growing too large which causes it to not be inserted into packets. Signed-off-by: Andrea Bittau Signed-off-by: Arnaldo Carvalho de Melo Signed-off-by: David S. Miller commit a1e59abf824969554b90facd44a4ab16e265afa4 Author: Patrick McHardy Date: Tue Sep 19 12:57:34 2006 -0700 [XFRM]: Fix wildcard as tunnel source Hashing SAs by source address breaks templates with wildcards as tunnel source since the source address used for hashing/lookup is still 0/0. Move source address lookup to xfrm_tmpl_resolve_one() so we can use the real address in the lookup. Signed-off-by: Patrick McHardy Signed-off-by: David S. Miller commit 1ef9696c909060ccdae3ade245ca88692b49285b Author: Alexey Kuznetsov Date: Tue Sep 19 12:52:50 2006 -0700 [TCP]: Send ACKs each 2nd received segment. It does not affect either mss-sized connections (obviously) or connections controlled by Nagle (because there is only one small segment in flight). The idea is to record the fact that a small segment arrives on a connection, where one small segment has already been received and still not-ACKed. In this case ACK is forced after tcp_recvmsg() drains receive buffer. In other words, it is a "soft" each-2nd-segment ACK, which is enough to preserve ACK clock even when ABC is enabled. Signed-off-by: Alexey Kuznetsov Signed-off-by: David S. Miller commit 4eb327b517cf85f6cb7dcd5691e7b748cbe8c343 Author: Venkat Yekkirala Date: Tue Sep 19 10:24:19 2006 -0700 [SELINUX]: Fix bug in security_sid_mls_copy The following fixes a bug where random mem is being tampered with in the non-mls case; encountered by Jashua Brindle on a gentoo box. Signed-off-by: Venkat Yekkirala Acked-by: Stephen Smalley Signed-off-by: James Morris commit 161643660129dd7d98f0b12418c0a2710ffa7db6 Author: Adrian Bunk Date: Mon Sep 18 00:40:38 2006 -0700 [SCTP]: Cleanups This patch contains the following cleanups: - make the following needlessly global function static: - socket.c: sctp_apply_peer_addr_params() - add proper prototypes for the several global functions in include/net/sctp/sctp.h Note that this fixes wrong prototypes for the following functions: - sctp_snmp_proc_exit() - sctp_eps_proc_exit() - sctp_assocs_proc_exit() The latter was spotted by the GNU C compiler and reported by David Woodhouse. Signed-off-by: Adrian Bunk Acked-by: Sridhar Samudrala Signed-off-by: David S. Miller commit 7198f8cec12ccec6d6f2e18c08ecc8c66c8aaf93 Author: Thomas Graf Date: Mon Sep 18 00:13:46 2006 -0700 [IPV6] address: Support NLM_F_EXCL when adding addresses iproute2 doesn't provide the NLM_F_CREATE flag when adding addresses, it is assumed to be implied. The existing code issues a check on said flag when the modify operation fails (likely due to ENOENT) before continueing to create it, this leads to a hard to predict result, therefore the NLM_F_CREATE check is removed. Signed-off-by: Thomas Graf Signed-off-by: David S. Miller commit 680a27a23af45307095ae432dd0bc859e1fbe219 Author: Thomas Graf Date: Mon Sep 18 00:13:07 2006 -0700 [IPV6] address: Allow address changes while device is administrative down Same behaviour as IPv4, using IFF_UP is a no-no anyway. Signed-off-by: Thomas Graf Signed-off-by: David S. Miller commit 0ab6803bc90a8ee5c860ef09334b30007d1746be Author: Thomas Graf Date: Mon Sep 18 00:12:35 2006 -0700 [IPV6] address: Convert address dumping to new netlink api Replaces INET6_IFADDR_RTA_SPACE with a new function calculating the total required message size for all address messages. Signed-off-by: Thomas Graf Signed-off-by: David S. Miller commit 101bb229691c438bce4d7f13006494dd4de6910a Author: Thomas Graf Date: Mon Sep 18 00:11:52 2006 -0700 [IPV6] address: Add put_ifaddrmsg() and rt_scope() Signed-off-by: Thomas Graf Signed-off-by: David S. Miller commit 85486af00b620ebe26fe0fa72172c115667a2fba Author: Thomas Graf Date: Mon Sep 18 00:11:24 2006 -0700 [IPV6] address: Add put_cacheinfo() to dump struct cacheinfo Signed-off-by: Thomas Graf Signed-off-by: David S. Miller commit 1b29fc2c8bf42d8fc5310f3770d7fd7ddf4386c0 Author: Thomas Graf Date: Mon Sep 18 00:10:50 2006 -0700 [IPV6] address: Convert address lookup to new netlink api Signed-off-by: Thomas Graf Signed-off-by: David S. Miller commit b933f7166ba376967f88a598ff04256f6d1b0b21 Author: Thomas Graf Date: Mon Sep 18 00:10:19 2006 -0700 [IPV6] address: Convert address deletion to new netlink api Signed-off-by: Thomas Graf Signed-off-by: David S. Miller commit 461d8837faac141f4676bf451b3339d0e48656d1 Author: Thomas Graf Date: Mon Sep 18 00:09:49 2006 -0700 [IPV6] address: Convert address addition to new netlink api Signed-off-by: Thomas Graf Signed-off-by: David S. Miller commit 94aec08ea426903a3fb3cafd4d8b900cd50df702 Author: Brian Haley Date: Mon Sep 18 00:05:22 2006 -0700 [NETFILTER]: Change tunables to __read_mostly Change some netfilter tunables to __read_mostly. Also fixed some incorrect file reference comments while I was in there. (this will be my last __read_mostly patch unless someone points out something else that needs it) Signed-off-by: Brian Haley Acked-by: Patrick McHardy Signed-off-by: David S. Miller commit 4cbf1cae9f08c76ed92700090a69a5b1f1f6a982 Author: Brian Haley Date: Mon Sep 18 00:04:22 2006 -0700 [SCTP]: Change globals to __read_mostly Change sctp globals to __read_mostly. Signed-off-by: Brian Haley Signed-off-by: David S. Miller commit 9c1ea148ad8bb06538b43908891afedebeaf361b Author: Brian Haley Date: Mon Sep 18 00:03:41 2006 -0700 [BRIDGE]: Change sysctl tunables to __read_mostly Change some bridge sysctl tunables to __read_mostly. Signed-off-by: Brian Haley Signed-off-by: David S. Miller commit eb328111efde7bca782f340fe805756039ec6a0c Author: Thomas Graf Date: Mon Sep 18 00:01:59 2006 -0700 [GENL]: Provide more information to userspace about registered genl families Additionaly exports the following information when providing the list of registered generic netlink families: - protocol version - header size - maximum number of attributes - list of available operations including - id - flags - avaiability of policy and doit/dumpit function libnl HEAD provides a utility to read this new information: 0x0010 nlctrl version 1 hdrsize 0 maxattr 6 op GETFAMILY (0x03) [POLICY,DOIT,DUMPIT] 0x0011 NLBL_MGMT version 1 hdrsize 0 maxattr 0 op unknown (0x02) [DOIT] op unknown (0x03) [DOIT] .... Signed-off-by: Thomas Graf Signed-off-by: David S. Miller commit 78e5b8916e7db119850f57ce8548fbb9767078fc Author: Patrick McHardy Date: Wed Sep 13 20:35:36 2006 -0700 [RTNETLINK]: Fix netdevice name corruption When changing a device by ifindex without including a IFLA_IFNAME attribute, the ifname variable contains random garbage and is used to change the device name. Signed-off-by: Patrick McHardy Signed-off-by: David S. Miller commit d1d9facfd1b326e0df587c96f0ee55de2ae9f946 Author: James Morris Date: Fri Sep 1 00:32:12 2006 -0700 [XFRM]: remove xerr_idxp from __xfrm_policy_check() It seems that during the MIPv6 respin, some code which was originally conditionally compiled around CONFIG_XFRM_ADVANCED was accidently left in after the config option was removed. This patch removes an extraneous pointer (xerr_idxp) which is no longer needed. Signed-off-by: James Morris Acked-by: Masahide NAKAMURA Signed-off-by: David S. Miller commit eb878e84575fbce21d2edb079eada78bfa27023d Author: Jamal Hadi Salim Date: Thu Aug 31 17:42:59 2006 -0700 [IPSEC]: output mode to take an xfrm state as input param Expose IPSEC modes output path to take an xfrm state as input param. This makes it consistent with the input mode processing (which already takes the xfrm state as a param). Signed-off-by: Jamal Hadi Salim Signed-off-by: David S. Miller commit fda9ef5d679b07c9d9097aaf6ef7f069d794a8f9 Author: Dmitry Mishin Date: Thu Aug 31 15:28:39 2006 -0700 [NET]: Fix sk->sk_filter field access Function sk_filter() is called from tcp_v{4,6}_rcv() functions with arg needlock = 0, while socket is not locked at that moment. In order to avoid this and similar issues in the future, use rcu for sk->sk_filter field read protection. Signed-off-by: Dmitry Mishin Signed-off-by: Alexey Kuznetsov Signed-off-by: Kirill Korotaev commit dc435e6dac1439340eaeceef84022c4e4749796d Author: Masahide NAKAMURA Date: Thu Aug 31 15:18:49 2006 -0700 [IPV6] MIP6: Fix to update IP6CB when cloned skbuff is received at HAO. Signed-off-by: Masahide NAKAMURA Signed-off-by: David S. Miller commit a9917c06652165fe4eeb9ab7a5d1e0674e90e508 Author: Masahide NAKAMURA Date: Thu Aug 31 15:14:32 2006 -0700 [XFRM] STATE: Fix flusing with hash mask. This is a minor fix about transformation state flushing for net-2.6.19. Please apply it. Signed-off-by: David S. Miller commit ff9b5e0f08cb650d113eef0c654f931c0a7ae730 Author: Herbert Xu Date: Thu Aug 31 15:11:02 2006 -0700 [TCP]: Fix rcv mss estimate for LRO By passing a Linux-generated TSO packet straight back into Linux, Xen becomes our first LRO user :) Unfortunately, there is at least one spot in our stack that needs to be changed to cope with this. The receive MSS estimate is computed from the raw packet size. This is broken if the packet is GSO/LRO. Fortunately the real MSS can be found in gso_size so we simply need to use that if it is non-zero. Real LRO NICs should of course set the gso_size field in future. Signed-off-by: Herbert Xu Signed-off-by: David S. Miller commit 3015d5d4e5b15eddea272a697e83391100581932 Author: Thomas Graf Date: Thu Aug 31 15:04:30 2006 -0700 [RTNETLINK]: Fix typo causing wrong skb to be freed A typo introduced by myself which leads to freeing the skb containing the netlink message when it should free the newly allocated skb for the reply. Signed-off-by: Thomas Graf Signed-off-by: David S. Miller commit 18adaf067cf013fc2690d3830eba99ff800795b4 Author: Brian Haley Date: Thu Aug 31 15:03:36 2006 -0700 [AF_UNIX]: Change max_dgram_qlen sysctl to __read_mostly Signed-off-by: Brian Haley Signed-off-by: David S. Miller commit 7a42c2175703f54a3640f25dc078c8190a4f904e Author: Brian Haley Date: Thu Aug 31 15:03:02 2006 -0700 [NET]: Change somaxconn sysctl to __read_mostly Signed-off-by: Brian Haley Signed-off-by: David S. Miller commit 28a7b327b8cc8ea35662d360d3d11d60195debc9 Author: Adrian Bunk Date: Wed Aug 30 15:03:07 2006 -0700 [PKT_SCHED] act_simple.c: make struct simp_hash_info static This patch makes the needlessly global struct simp_hash_info static. Signed-off-by: Adrian Bunk Signed-off-by: David S. Miller commit 7a0e1d602288370801c353221c6a938eab925053 Author: Paul Moore Date: Tue Aug 29 17:56:04 2006 -0700 [NetLabel]: add some missing #includes to various header files Add some missing include files to the NetLabel related header files. Signed-off-by: Paul Moore Signed-off-by: David S. Miller commit e448e931309e703f51d71a557973c620ff12fbda Author: Paul Moore Date: Tue Aug 29 17:55:38 2006 -0700 [NetLabel]: uninline selinux_netlbl_inode_permission() Uninline the selinux_netlbl_inode_permission() at the request of Andrew Morton. Signed-off-by: Paul Moore Signed-off-by: David S. Miller commit 7b3bbb926f4b3dd3a007dcf8dfa00203f52cb58d Author: Paul Moore Date: Tue Aug 29 17:55:11 2006 -0700 [NetLabel]: Cleanup ebitmap_import() Rewrite ebitmap_import() so it is a bit cleaner and easier to read. Signed-off-by: Paul Moore Signed-off-by: David S. Miller commit c1b14c0a46232246f61d3157bac1201e1e102227 Author: Paul Moore Date: Tue Aug 29 17:54:41 2006 -0700 [NetLabel]: Comment corrections. Fix some incorrect comments. Signed-off-by: Paul Moore Signed-off-by: David S. Miller commit 1b7f775209bbee6b993587bae69acb9fc12ceb17 Author: Paul Moore Date: Tue Aug 29 17:54:17 2006 -0700 [NetLabel]: remove unused function prototypes Removed some older function prototypes for functions that no longer exist. Signed-off-by: Paul Moore Signed-off-by: David S. Miller commit 99f59ed073d3c1b890690064ab285a201dea2e35 Author: Paul Moore Date: Tue Aug 29 17:53:48 2006 -0700 [NetLabel]: Correctly initialize the NetLabel fields. Fix a problem where the NetLabel specific fields of the sk_security_struct structure were not being initialized early enough in some cases. Signed-off-by: Paul Moore Signed-off-by: David S. Miller commit fc747e82b40ea50a62eb2aef55bedd4465607cb0 Author: Ian McDonald Date: Tue Aug 29 17:50:19 2006 -0700 [DCCP]: Tidyup CCID3 list handling As Arnaldo Carvalho de Melo points out I should be using list_entry in case the structure changes in future. Current code functions but is reliant on position and requires type cast. Noticed when doing this that I have one more variable than I needed so removing that also. Signed off by: Ian McDonald Signed-off-by: David S. Miller commit 8394e9b2faf539f82470b36c86f0485cab5278bd Author: Stephen Hemminger Date: Tue Aug 29 17:49:31 2006 -0700 [NETFILTER] bridge: debug message fixes If CONFIG_NETFILTER_DEBUG is enabled, it shouldn't change the actions of the filtering. The message about skb->dst being NULL is commonly triggered by dhclient, so it is useless. Make sure all messages end in newline. Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit 9bcfcaf5e9cc887eb39236e43bdbe4b4b2572229 Author: Stephen Hemminger Date: Tue Aug 29 17:48:57 2006 -0700 [NETFILTER] bridge: simplify nf_bridge_pad Do some simple optimization on the nf_bridge_pad() function and don't use magic constants. Eliminate a double call and the #ifdef'd code for CONFIG_BRIDGE_NETFILTER. Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit 07317621d004e8e6967f2dac8562825267e56135 Author: Stephen Hemminger Date: Tue Aug 29 17:48:17 2006 -0700 [NETFILTER] bridge: code rearrangement for clarity Cleanup and rearrangement for better style and clarity: Split the function nf_bridge_maybe_copy_header into two pieces Move copy portion out of line. Use Ethernet header size macros. Use header file to handle CONFIG_NETFILTER_BRIDGE differences Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit cd360007a0eb8cbf17c006cca42aa884d33f96be Author: Alexey Dobriyan Date: Mon Aug 28 23:58:32 2006 -0700 [IPV4]: Make struct sockaddr_in::sin_port __be16 Signed-off-by: Alexey Dobriyan Signed-off-by: David S. Miller commit def42ff4dd6f54ebcf78192579a8ff1f81d8e2e8 Author: Alexey Dobriyan Date: Mon Aug 28 23:57:56 2006 -0700 [IPV4]: Make struct in_addr::s_addr __be32 There will be relatively small increase in sparse endian warnings, but this (and sin_port) patch is a first step to make networking code endian clean. Signed-off-by: Alexey Dobriyan Signed-off-by: David S. Miller commit 0719bdf1b5e7eb0d9c3c73ebbd9c9d5d382bb9e1 Author: Benoit Boissinot Date: Mon Aug 28 17:50:37 2006 -0700 [NETFILTER]: xt_CONNMARK.c build fix net/netfilter/xt_CONNMARK.c: In function 'target': net/netfilter/xt_CONNMARK.c:59: warning: implicit declaration of function 'nf_conntrack_event_cache' The warning is due to the following .config: CONFIG_IP_NF_CONNTRACK=m CONFIG_IP_NF_CONNTRACK_MARK=y # CONFIG_IP_NF_CONNTRACK_EVENTS is not set CONFIG_IP_NF_CONNTRACK_NETLINK=m This change was introduced by: http://www.kernel.org/git/?p=linux/kernel/git/davem/net-2.6.19.git;a=commit;h=76e4b41009b8a2e9dd246135cf43c7fe39553aa5 Proposed solution (based on the define in include/net/netfilter/nf_conntrack_compat.h: Signed-off-by: Benoit Boissinot Acked-by: Pablo Neira Ayuso Signed-off-by: Andrew Morton Signed-off-by: David S. Miller commit 33cc48966827165e49de1cb8ff4fb57c127d4be0 Author: YOSHIFUJI Hideaki Date: Mon Aug 28 13:19:30 2006 -0700 [IPV6] ROUTE: Fix dst reference counting in ip6_pol_route_lookup(). In ip6_pol_route_lookup(), when we finish backtracking at the top-level root entry, we need to hold it. Bug noticed by Mitsuru Chinen . Signed-off-by: YOSHIFUJI Hideaki Signed-off-by: David S. Miller commit 5176f91ea83f1a59eba4dba88634a4729d51d1ac Author: Thomas Graf Date: Sat Aug 26 20:13:18 2006 -0700 [NETLINK]: Make use of NLA_STRING/NLA_NUL_STRING attribute validation Converts existing NLA_STRING attributes to use the new validation features, saving a couple of temporary buffers. Signed-off-by: Thomas Graf Signed-off-by: David S. Miller commit a5531a5d852008be40811496029012f4ad3093d1 Author: Thomas Graf Date: Sat Aug 26 20:11:47 2006 -0700 [NETLINK]: Improve string attribute validation Introduces a new attribute type NLA_NUL_STRING to support NUL terminated strings. Attributes of this kind require to carry a terminating NUL within the maximum specified in the policy. The `old' NLA_STRING which is not required to be NUL terminated is extended to provide means to specify a maximum length of the string. Aims at easing the pain with using nla_strlcpy() on temporary buffers. Signed-off-by: Thomas Graf Signed-off-by: David S. Miller commit e3b4eadbea77ecb3c3a74d1bc81b392f454c7f2e Author: David S. Miller Date: Sat Aug 26 20:10:15 2006 -0700 [UDP]: saddr_cmp function should take const socket pointers This also kills a warning while building ipv6: net/ipv6/udp.c: In function ‘udp_v6_get_port’: net/ipv6/udp.c:66: warning: passing argument 3 of ‘udp_get_port’ from incompatible pointer type Signed-off-by: David S. Miller commit bed53ea7fef37820b7c92ad74feff1b817c6aae3 Author: David S. Miller Date: Sat Aug 26 20:06:49 2006 -0700 [UDP]: Mark udp_port_rover static. It is not referenced outside of net/ipv4/udp.c any longer. Signed-off-by: David S. Miller commit 25030a7f9eeab2dcefff036469e0e2b4f956198f Author: Gerrit Renker Date: Sat Aug 26 20:06:05 2006 -0700 [UDP]: Unify UDPv4 and UDPv6 ->get_port() This patch creates one common function which is called by udp_v4_get_port() and udp_v6_get_port(). As a result, * duplicated code is removed * udp_port_rover and local port lookup can now be removed from udp.h * further savings follow since the same function will be used by UDP-Litev4 and UDP-Litev6 In contrast to the patch sent in response to Yoshifujis comments (fixed by this variant), the code below also removes the EXPORT_SYMBOL(udp_port_rover), since udp_port_rover can now remain local to net/ipv4/udp.c. Signed-off-by: Gerrit Renker Signed-off-by: David S. Miller commit 6a28ec8cd0c6993a4ac0d52f4347f7ed077b5cac Author: David S. Miller Date: Sat Aug 26 19:48:49 2006 -0700 [NETFILTER]: Fix nf_conntrack_ftp.c build. Noticed by Adrian Bunk. Signed-off-by: David S. Miller commit e5d679f33900c71d1a76ba07c5b04055abd34480 Author: Alexey Dobriyan Date: Sat Aug 26 19:25:52 2006 -0700 [NET]: Use SLAB_PANIC Signed-off-by: Alexey Dobriyan Signed-off-by: David S. Miller commit ff5dfe736dd9f6c74b206aa77c0465dfd503bdb9 Author: Johannes Berg Date: Sat Aug 26 19:17:53 2006 -0700 [NETLINK]: remove third bogus argument from NLA_PUT_FLAG This patch removes the 'value' argument from NLA_PUT_FLAG which is unused anyway. The documentation comment was already correct so it doesn't need an update :) Signed-off-by: Johannes Berg Signed-off-by: David S. Miller commit 97e5848dd39e7e76bd6077735ebb5473763ab9c5 Author: Ian McDonald Date: Sat Aug 26 19:16:45 2006 -0700 [DCCP]: Introduce tx buffering This adds transmit buffering to DCCP. I have tested with CCID2/3 and with loss and rate limiting. Signed off by: Ian McDonald Signed-off-by: David S. Miller commit 2a0109a707d2b0ae48f124d3be0fdf1715c0107a Author: Ian McDonald Date: Sat Aug 26 19:15:35 2006 -0700 [DCCP]: Shift sysctls into feat.h This shifts further sysctls into feat.h. No change in functionality - shifting code only. Signed off by: Ian McDonald Signed-off-by: David S. Miller commit ef047f5e1085d6393748d1ee27d6327905f098dc Author: YOSHIFUJI Hideaki Date: Fri Sep 1 00:29:06 2006 -0700 [NET]: Use BUILD_BUG_ON() for checking size of skb->cb. Signed-off-by: YOSHIFUJI Hideaki Signed-off-by: David S. Miller commit 366e4adc0f9ef33f56c62f980a7d83775e64abd0 Author: Patrick McHardy Date: Sat Aug 26 16:50:20 2006 -0700 [IPV6]: Fix routing by fwmark Fix mark comparison, also dump the mask to userspace when the mask is zero, but the mark is not (in which case the mark is dumped, so the mask is needed to make sense of it). Signed-off-by: Patrick McHardy Signed-off-by: David S. Miller commit 74975d40b16fd4bad24a2e2630dc7957d8cba013 Author: Alexey Dobriyan Date: Fri Aug 25 17:10:33 2006 -0700 [TCP] Congestion control (modulo lp, bic): use BUILD_BUG_ON Signed-off-by: Alexey Dobriyan Signed-off-by: David S. Miller commit b4e9b520ca5d07a37ea59648e7f50f478e7487a3 Author: Patrick McHardy Date: Fri Aug 25 16:11:42 2006 -0700 [NET_SCHED]: Add mask support to fwmark classifier Support masking the nfmark value before the search. The mask value is global for all filters contained in one instance. It can only be set when a new instance is created, all filters must specify the same mask. Signed-off-by: Patrick McHardy Signed-off-by: David S. Miller commit 88e91f290307d22ae88302e3a24f0c36905e8a6c Author: Patrick McHardy Date: Fri Aug 25 16:11:08 2006 -0700 [DECNET]: Add support for fwmark masks in routing rules Add support for fwmark masks. For compatibility a mask of 0xFFFFFFFF is used when a mark value != 0 is sent without a mask. Signed-off-by: Patrick McHardy Acked-by: Steven Whitehouse Signed-off-by: David S. Miller commit bbfb39cbf63829d1db607aa90cbdca557a3a131d Author: Patrick McHardy Date: Fri Aug 25 16:10:14 2006 -0700 [IPV4]: Add support for fwmark masks in routing rules Add a FRA_FWMASK attributes for fwmark masks. For compatibility a mask of 0xFFFFFFFF is used when a mark value != 0 is sent without a mask. Signed-off-by: Patrick McHardy Signed-off-by: David S. Miller commit 267935b197d2a6e6924f9de2841f0470bfe63acd Author: David S. Miller Date: Fri Aug 25 16:07:48 2006 -0700 [IPV6]: Fix build with fwmark disabled. Based upon a patch by Brian Haley. Signed-off-by: David S. Miller commit cd9d742622fbc2190221e0b2aca80596bfd17733 Author: YOSHIFUJI Hideaki Date: Fri Aug 25 16:05:43 2006 -0700 [IPV6] ROUTE: Add support for fwmask in routing rules. Add support for fwmark masks. A mask of 0xFFFFFFFF is used when a mark value != 0 is sent without a mask. Based on patch for net/ipv4/fib_rules.c by Patrick McHardy . Signed-off-by: YOSHIFUJI Hideaki Signed-off-by: David S. Miller commit 2613aad5ab28579687519918cdc353af0eed5a3f Author: YOSHIFUJI Hideaki Date: Fri Aug 25 16:05:00 2006 -0700 [IPV6] ROUTE: Fix size of fib6_rule_policy. It should not be RTA_MAX+1 but FRA_MAX+1. Signed-off-by: YOSHIFUJI Hideaki Signed-off-by: David S. Miller commit 6c5eb6a50741b882fd99fbb8178942ca2f74b724 Author: YOSHIFUJI Hideaki Date: Fri Aug 25 16:04:29 2006 -0700 [IPV6] ROUTE: Fix FWMARK support. - Add missing nla_policy entry. - type of fwmark is u32, not u8. Signed-off-by: YOSHIFUJI Hideaki Signed-off-by: David S. Miller commit acba48e1a3c95082af1e12c5efaaca3506103a92 Author: David S. Miller Date: Fri Aug 25 15:46:46 2006 -0700 [XFRM]: Respect priority in policy lookups. Even if we find an exact match in the hash table, we must inspect the inexact list to look for a match with a better priority. Noticed by Masahide NAKAMURA . Signed-off-by: David S. Miller commit 65e3d72654d9a33cdccd5c19777a5515ae9dd37d Author: Alexey Dobriyan Date: Fri Aug 25 00:38:03 2006 -0700 [TCP] tcp_bic: use BUILD_BUG_ON Signed-off-by: Alexey Dobriyan Signed-off-by: David S. Miller commit 298969727e7b855d53f3becfa92c055914082ec4 Author: Alexey Dobriyan Date: Fri Aug 25 00:37:24 2006 -0700 [TCP] tcp_lp: use BUILD_BUG_ON Signed-off-by: Alexey Dobriyan Signed-off-by: David S. Miller commit d4f3e9b735c72823aab597bfa4860d184658a609 Author: David S. Miller Date: Fri Aug 25 00:27:09 2006 -0700 [NET] in6_pton: Kill errant printf statement. Signed-off-by: David S. Miller commit 1884f78c7a8b456c654338e3eb2874a99688ea10 Author: YOSHIFUJI Hideaki Date: Mon Jun 19 03:20:32 2006 +0900 [NETFILTER] NF_CONNTRACK_FTP: Use in6_pton() to convert address string. Signed-off-by: YOSHIFUJI Hideaki commit 1aaec67f9335a17856dfacdd3e5cc6f4c18faeec Author: YOSHIFUJI Hideaki Date: Sun Jun 25 23:54:55 2006 +0900 [NET]: Add common helper functions to convert IPv6/IPv4 address string to network address structure. These helpers can be used in netfilter, cifs etc. Signed-off-by: YOSHIFUJI Hideaki commit 75bff8f023e02b045a8f68f36fa7da98dca124b8 Author: YOSHIFUJI Hideaki Date: Mon Aug 21 19:22:01 2006 +0900 [IPV6] ROUTE: Routing by FWMARK. Based on patch by Jean Lorchat . Signed-off-by: YOSHIFUJI Hideaki commit 2cc67cc731d9b693a08e781e98fec0e3a6d6ba44 Author: YOSHIFUJI Hideaki Date: Mon Aug 21 19:18:57 2006 +0900 [IPV6] ROUTE: Routing by Traffic Class. Signed-off-by: YOSHIFUJI Hideaki commit e731c248ba9e8c7025ae8b4a3fa48e4236b82e52 Author: YOSHIFUJI Hideaki Date: Thu Aug 24 23:18:12 2006 +0900 [IPV6] MIP6: Several obvious clean-ups. - Remove redundant code. Pointed out by Brian Haley . - Unify code paths with/without CONFIG_IPV6_MIP. - Use NIP6_FMT for IPv6 address textual presentation. - Fold long line. Pointed out by David Miller . Signed-off-by: YOSHIFUJI Hideaki commit e4bec827feda76d5e7417a2696a75424834d564f Author: David S. Miller Date: Fri Sep 22 15:17:35 2006 -0700 [IPSEC] esp: Defer output IV initialization to first use. First of all, if the xfrm_state only gets used for input packets this entropy is a complete waste. Secondly, it is often the case that a configuration loads many rules (perhaps even dynamically) and they don't all necessarily ever get used. This get_random_bytes() call was showing up in the profiles for xfrm_state inserts which is how I noticed this. Signed-off-by: David S. Miller commit ded7f1a16d50527359be02f8b04f9ba56bc923e6 Author: Ishai Rabinovitz Date: Tue Aug 15 17:34:52 2006 +0300 IB/srp: Add port/device attributes Add local_ib_device and local_ib_port attributes to srp scsi_host. These are needed when we want to connect to the same target through multiple distinct ports. Signed-off-by: Ishai Rabinovitz Signed-off-by: Michael S. Tsirkin Signed-off-by: Roland Dreier commit 2a214182d23594915d6ae517b6368ba2eae055d2 Author: James Lentini Date: Fri Sep 22 15:17:20 2006 -0700 IB/mthca: Include the header we really want Signed-off-by: James Lentini Signed-off-by: Roland Dreier commit 1ccf6aa19aabc11587d6d7818a5729adfed0e3de Author: Roland Dreier Date: Fri Sep 22 15:17:20 2006 -0700 IB/uverbs: Fix lockdep warning when QP is created with 2 CQs Lockdep warns when userspace creates a QP that uses different CQs for send completions and receive completions, because both CQs are locked and their mutexes belong to the same lock class. However, we know that the mutexes are distinct and the nesting is safe (there is no possibility of AB-BA deadlock because the mutexes are locked with down_read()), so annotate the situation with SINGLE_DEPTH_NESTING to get rid of the lockdep warning. Signed-off-by: Roland Dreier commit ab10867621a96230757eb4a2a19d560b85f62ce9 Author: Roland Dreier Date: Fri Sep 22 15:17:19 2006 -0700 IB/uverbs: Use idr_read_cq() where appropriate There were two functions that open-coded idr_read_cq() in terms of idr_read_uobj() rather than using the helper. Signed-off-by: Roland Dreier commit 9217b27b12eb5ab910d14b3376c2b6cd13d87711 Author: Michael S. Tsirkin Date: Thu Aug 3 22:16:06 2006 +0300 IB/ipoib: Fix flush/start xmit race (from code review) Prevent flush task from freeing the ipoib_neigh pointer, while ipoib_start_xmit() is accessing the ipoib_neigh through the pointer it has loaded from the skb's hardware address. Signed-off-by: Michael S. Tsirkin Signed-off-by: Roland Dreier commit 9fd558f454b666aca218a990d44f9e1ffac6ed4d Author: Michael S. Tsirkin Date: Fri Sep 22 15:17:18 2006 -0700 IB/mthca: Don't use privileged UAR for kernel access Make kernel use UAR2 instead of UAR1 for hardware access: this adds sanity checking from the hardware side, without any performance cost. Signed-off-by: Michael S. Tsirkin Signed-off-by: Roland Dreier commit b27075735e371f481940a4920b329202334d2259 Author: Jack Morgenstein Date: Tue Sep 19 11:13:24 2006 +0300 IB/mthca: Fix lid used for sending traps The SM LID used to send traps to is incorrectly set to port LID. This is a regression from 2.6.17 -- after a PortInfo MAD is received, no traps are sent to the SM LID. The traps go to the loopback interface instead, and are dropped there. The SM LID should be taken from the sm_lid of the PortInfo response. The bug was introduced by commit 12bbb2b7be7f5564952ebe0196623e97464b8ac5: IB/mthca: Add client reregister event generation Signed-off-by: Jack Morgenstein Signed-off-by: Michael S. Tsirkin Signed-off-by: Roland Dreier commit 44e36b42a8378be1dcf7e6f8a1cb2710a8903387 Author: David S. Miller Date: Thu Aug 24 04:50:50 2006 -0700 [XFRM]: Extract common hashing code into xfrm_hash.[ch] Signed-off-by: David S. Miller commit 2518c7c2b3d7f0a6b302b4efe17c911f8dd4049f Author: David S. Miller Date: Thu Aug 24 04:45:07 2006 -0700 [XFRM]: Hash policies when non-prefixed. This idea is from Alexey Kuznetsov. It is common for policies to be non-prefixed. And for that case we can optimize lookups, insert, etc. quite a bit. For each direction, we have a dynamically sized policy hash table for non-prefixed policies. We also have a hash table on policy->index. For prefixed policies, we have a list per-direction which we will consult on lookups when a non-prefix hashtable lookup fails. This still isn't as efficient as I would like it. There are four immediate problems: 1) Lots of excessive refcounting, which can be fixed just like xfrm_state was 2) We do 2 hash probes on insert, one to look for dups and one to allocate a unique policy->index. Althought I wonder how much this matters since xfrm_state inserts do up to 3 hash probes and that seems to perform fine. 3) xfrm_policy_insert() is very complex because of the priority ordering and entry replacement logic. 4) Lots of counter bumping, in addition to policy refcounts, in the form of xfrm_policy_count[]. This is merely used to let code path(s) know that some IPSEC rules exist. So this count is indexed per-direction, maybe that is overkill. Signed-off-by: David S. Miller commit c1969f294e624d5b642fc8e6ab9468b7c7791fa8 Author: David S. Miller Date: Thu Aug 24 04:00:03 2006 -0700 [XFRM]: Hash xfrm_state objects by source address too. The source address is always non-prefixed so we should use it to help give entropy to the bydst hash. Signed-off-by: David S. Miller commit a47f0ce05ae12ce9acad62896ff703175764104e Author: David S. Miller Date: Thu Aug 24 03:54:22 2006 -0700 [XFRM]: Kill excessive refcounting of xfrm_state objects. The refcounting done for timers and hash table insertions are just wasted cycles. We can eliminate all of this refcounting because: 1) The implicit refcount when the xfrm_state object is active will always be held while the object is in the hash tables. We never kfree() the xfrm_state until long after we've made sure that it has been unhashed. 2) Timers are even easier. Once we mark that x->km.state as anything other than XFRM_STATE_VALID (__xfrm_state_delete sets it to XFRM_STATE_DEAD), any timer that fires will do nothing and return without rearming the timer. Therefore we can defer the del_timer calls until when the object is about to be freed up during GC. We have to use del_timer_sync() and defer it to GC because we can't do a del_timer_sync() while holding x->lock which all callers of __xfrm_state_delete hold. This makes SA changes even more light-weight. Signed-off-by: David S. Miller commit 1c0953997567b22e32fdf85d3b4bc0f2461fd161 Author: David S. Miller Date: Thu Aug 24 03:30:28 2006 -0700 [XFRM]: Purge dst references to deleted SAs passively. Just let GC and other normal mechanisms take care of getting rid of DST cache references to deleted xfrm_state objects instead of walking all the policy bundles. Signed-off-by: David S. Miller commit c7f5ea3a4d1ae6b3b426e113358fdc57494bc754 Author: David S. Miller Date: Thu Aug 24 03:29:04 2006 -0700 [XFRM]: Do not flush all bundles on SA insert. Instead, simply set all potentially aliasing existing xfrm_state objects to have the current generation counter value. This will make routes get relooked up the next time an existing route mentioning these aliased xfrm_state objects gets used, via xfrm_dst_check(). Signed-off-by: David S. Miller commit 2575b65434d56559bd03854450b9b6aaf19b9c90 Author: David S. Miller Date: Thu Aug 24 03:26:44 2006 -0700 [XFRM]: Simplify xfrm_spi_hash It can use __xfrm{4,6}_addr_hash(). Signed-off-by: David S. Miller commit a624c108e5595b5827796c253481436929cd5344 Author: David S. Miller Date: Thu Aug 24 03:24:33 2006 -0700 [XFRM]: Put more keys into destination hash function. Besides the daddr, key the hash on family and reqid too. Signed-off-by: David S. Miller commit 9d4a706d852411154d0c91b9ffb3bec68b94b25c Author: David S. Miller Date: Thu Aug 24 03:18:09 2006 -0700 [XFRM]: Add generation count to xfrm_state and xfrm_dst. Each xfrm_state inserted gets a new generation counter value. When a bundle is created, the xfrm_dst objects get the current generation counter of the xfrm_state they will attach to at dst->xfrm. xfrm_bundle_ok() will return false if it sees an xfrm_dst with a generation count different from the generation count of the xfrm_state that dst points to. This provides a facility by which to passively and cheaply invalidate cached IPSEC routes during SA database changes. Signed-off-by: David S. Miller commit f034b5d4efdfe0fb9e2a1ce1d95fa7914f24de49 Author: David S. Miller Date: Thu Aug 24 03:08:07 2006 -0700 [XFRM]: Dynamic xfrm_state hash table sizing. The grow algorithm is simple, we grow if: 1) we see a hash chain collision at insert, and 2) we haven't hit the hash size limit (currently 1*1024*1024 slots), and 3) the number of xfrm_state objects is > the current hash mask All of this needs some tweaking. Remove __initdata from "hashdist" so we can use it safely at run time. Signed-off-by: David S. Miller commit 8f126e37c0b250310a48a609bedf92a19a5559ec Author: David S. Miller Date: Thu Aug 24 02:45:07 2006 -0700 [XFRM]: Convert xfrm_state hash linkage to hlists. Signed-off-by: David S. Miller commit edcd582152090bfb0ccb4ad444c151798a73eda8 Author: David S. Miller Date: Thu Aug 24 00:42:45 2006 -0700 [XFRM]: Pull xfrm_state_by{spi,src} hash table knowledge out of afinfo. Signed-off-by: David S. Miller commit 2770834c9f44afd1bfa13914c7285470775af657 Author: David S. Miller Date: Thu Aug 24 00:13:10 2006 -0700 [XFRM]: Pull xfrm_state_bydst hash table knowledge out of afinfo. Signed-off-by: David S. Miller commit 64d9fdda8e1bdf416b2d9203c3ad9c249ea301be Author: Masahide NAKAMURA Date: Wed Aug 23 22:54:07 2006 -0700 [XFRM] IPV6: Support Mobile IPv6 extension headers sorting. Support Mobile IPv6 extension headers sorting for two transformation policies. Mobile IPv6 extension headers should be placed after IPsec transport mode, but before transport AH when outbound. Signed-off-by: Masahide NAKAMURA Signed-off-by: YOSHIFUJI Hideaki Signed-off-by: David S. Miller commit 58c949d1b9551f3e4ba9dde4aeda341ecf5e42b5 Author: Masahide NAKAMURA Date: Wed Aug 23 22:51:02 2006 -0700 [XFRM] IPV6: Add sort functions to combine templates/states for IPsec. Add sort functions to combine templates/states for IPsec. Think of outbound transformation order we should be careful with transport AH which must be the last of all transport ones. Signed-off-by: Masahide NAKAMURA Signed-off-by: YOSHIFUJI Hideaki Signed-off-by: David S. Miller commit f7b6983f0feeefcd2a594138adcffe640593d8de Author: Masahide NAKAMURA Date: Wed Aug 23 22:49:28 2006 -0700 [XFRM] POLICY: Support netlink socket interface for sub policy. Sub policy can be used through netlink socket. PF_KEY uses main only and it is TODO to support sub. Signed-off-by: Masahide NAKAMURA Signed-off-by: YOSHIFUJI Hideaki Signed-off-by: David S. Miller commit 41a49cc3c02ace59d4dddae91ea211c330970ee3 Author: Masahide NAKAMURA Date: Wed Aug 23 22:48:31 2006 -0700 [XFRM]: Add sorting interface for state and template. Under two transformation policies it is required to merge them. This is a platform to sort state for outbound and templates for inbound respectively. It will be used when Mobile IPv6 and IPsec are used at the same time. Signed-off-by: Masahide NAKAMURA Signed-off-by: YOSHIFUJI Hideaki Signed-off-by: David S. Miller commit 4e81bb8336a0ac50289d4d4c7a55e559b994ee8f Author: Masahide NAKAMURA Date: Wed Aug 23 22:43:30 2006 -0700 [XFRM] POLICY: sub policy support. Sub policy is introduced. Main and sub policy are applied the same flow. (Policy that current kernel uses is named as main.) It is required another transformation policy management to keep IPsec and Mobile IPv6 lives separate. Policy which lives shorter time in kernel should be a sub i.e. normally main is for IPsec and sub is for Mobile IPv6. (Such usage as two IPsec policies on different database can be used, too.) Limitation or TODOs: - Sub policy is not supported for per socket one (it is always inserted as main). - Current kernel makes cached outbound with flowi to skip searching database. However this patch makes it disabled only when "two policies are used and the first matched one is bypass case" because neither flowi nor bundle information knows about transformation template size. Signed-off-by: Masahide NAKAMURA Signed-off-by: YOSHIFUJI Hideaki commit c11f1a15c522ddd3bbd2c32b5ce3e0b1831b22f2 Author: Masahide NAKAMURA Date: Wed Aug 23 22:38:14 2006 -0700 [XFRM] POLICY: Add Kconfig to support sub policy. Add Kconfig to support sub policy. Signed-off-by: Masahide NAKAMURA Signed-off-by: YOSHIFUJI Hideaki Signed-off-by: David S. Miller commit 01be8e5d59d7e6da5c425a31b43709c2a4a69b5d Author: Masahide NAKAMURA Date: Wed Aug 23 20:47:44 2006 -0700 [IPV6] MIP6: Ignore to report if mobility headers is rejected. Ignore to report user-space for known mobility headers rejected by destination options header transformation. Mobile IPv6 specification (RFC3775) says that mobility header is used with destination options header carrying home address option only for binding update message. Other type message cannot be used and node must drop it silently (and must not send binding error) if receving such packet. To achieve it, (1) application should use transformation policy and wild-card states to catch binding update message prior other packets (2) kernel doesn't report the reject to user-space not to send binding error message by application. This patch is for (2). Based on MIPL2 kernel patch. This patch was also written by: Ville Nuorvala Signed-off-by: Masahide NAKAMURA Signed-off-by: YOSHIFUJI Hideaki Signed-off-by: David S. Miller commit 70182ed23d2559345aadb3cfb6a68a7c1cc0aa39 Author: Masahide NAKAMURA Date: Wed Aug 23 20:45:55 2006 -0700 [IPV6] MIP6: Report to user-space when home address option is rejected. Report to user-space when home address option is rejected. In receiving this message user-space application will send Mobile IPv6 binding error. It is rate-limited by kernel. Based on MIPL2 kernel patch. This patch was also written by: Ville Nuorvala Signed-off-by: Masahide NAKAMURA Signed-off-by: YOSHIFUJI Hideaki Signed-off-by: David S. Miller commit 97a64b4577ae2bc5599dbd008a3cd9e25de9b9f5 Author: Masahide NAKAMURA Date: Wed Aug 23 20:44:06 2006 -0700 [XFRM]: Introduce XFRM_MSG_REPORT. XFRM_MSG_REPORT is a message as notification of state protocol and selector from kernel to user-space. Mobile IPv6 will use it when inbound reject is occurred at route optimization to make user-space know a binding error requirement. Based on MIPL2 kernel patch. Signed-off-by: Masahide NAKAMURA Signed-off-by: YOSHIFUJI Hideaki Signed-off-by: David S. Miller commit df0ba92a99ca757039dfa84a929281ea3f7a50e8 Author: Masahide NAKAMURA Date: Wed Aug 23 20:41:00 2006 -0700 [XFRM]: Trace which secpath state is reject factor. For Mobile IPv6 usage, it is required to trace which secpath state is reject factor in order to notify it to user space (to know the address which cannot be used route optimized communication). Based on MIPL2 kernel patch. This patch was also written by: Henrik Petander Signed-off-by: Masahide NAKAMURA Signed-off-by: YOSHIFUJI Hideaki Signed-off-by: David S. Miller commit 2ce4272a699c731b9736d76126dc742353e381db Author: Masahide NAKAMURA Date: Wed Aug 23 20:39:03 2006 -0700 [IPV6] MIP6: Transformation support mobility header. Transformation support mobility header. Based on MIPL2 kernel patch. Signed-off-by: Masahide NAKAMURA Signed-off-by: YOSHIFUJI Hideaki Signed-off-by: David S. Miller commit 6e8f4d48b265225bdf437bbf3151b0d6700dda22 Author: Masahide NAKAMURA Date: Wed Aug 23 20:36:47 2006 -0700 [IPV6] MIP6: Add sending mobility header functions through raw socket. Mobility header is built by user-space and sent through raw socket. Kernel just extracts its type to flow. Based on MIPL2 kernel patch. Signed-off-by: Masahide NAKAMURA Signed-off-by: YOSHIFUJI Hideaki Signed-off-by: David S. Miller commit 7be96f7628469e56f91d51f13b03e9bcff113c7f Author: Masahide NAKAMURA Date: Wed Aug 23 20:35:31 2006 -0700 [IPV6] MIP6: Add receiving mobility header functions through raw socket. Like ICMPv6, mobility header is handled through raw socket. In inbound case, check only whether ICMPv6 error should be sent as a reply or not by kernel. Based on MIPL2 kernel patch. This patch was also written by: Ville Nuorvala This patch was also written by: Antti Tuominen Signed-off-by: Masahide NAKAMURA Signed-off-by: YOSHIFUJI Hideaki Signed-off-by: David S. Miller commit 2b741653b6c824fe7520ee92b6795f11c5f24b24 Author: Masahide NAKAMURA Date: Wed Aug 23 20:34:26 2006 -0700 [IPV6] MIP6: Add Mobility header definition. Add Mobility header definition for Mobile IPv6. Based on MIPL2 kernel patch. This patch was also written by: Antti Tuominen Signed-off-by: Masahide NAKAMURA Signed-off-by: YOSHIFUJI Hideaki Signed-off-by: David S. Miller commit e23c7194a8a21e96b99106bdabde94614c4b84d6 Author: Masahide NAKAMURA Date: Wed Aug 23 20:33:28 2006 -0700 [XFRM] STATE: Add Mobile IPv6 route optimization protocols to netlink interface. Add Mobile IPv6 route optimization protocols to netlink interface. Route optimization states carry care-of address. Based on MIPL2 kernel patch. Signed-off-by: Masahide NAKAMURA Signed-off-by: YOSHIFUJI Hideaki Signed-off-by: David S. Miller commit 3d126890dd67beffec27c1b6f51c040fc8d0b526 Author: Noriaki TAKAMIYA Date: Wed Aug 23 20:32:34 2006 -0700 [IPV6] MIP6: Add destination options header transformation. Add destination options header transformation for Mobile IPv6. Based on MIPL2 kernel patch. This patch was also written by: Ville Nuorvala Signed-off-by: Noriaki TAKAMIYA Signed-off-by: Masahide NAKAMURA Signed-off-by: YOSHIFUJI Hideaki Signed-off-by: David S. Miller commit 2c8d7ca0f76103855ad1f2a930e05683b64a00eb Author: Noriaki TAKAMIYA Date: Wed Aug 23 20:31:11 2006 -0700 [IPV6] MIP6: Add routing header type 2 transformation. Add routing header type 2 transformation for Mobile IPv6. Based on MIPL2 kernel patch. Signed-off-by: Noriaki TAKAMIYA Signed-off-by: Masahide NAKAMURA Signed-off-by: YOSHIFUJI Hideaki Signed-off-by: David S. Miller commit 27637df92e25dfb45dd71a93a2f4bf9c080fa627 Author: Masahide NAKAMURA Date: Wed Aug 23 19:29:47 2006 -0700 [IPV6] IPSEC: Support sending with Mobile IPv6 extension headers. Mobile IPv6 defines home address option as an option of destination options header. It is placed before fragment header then ip6_find_1stfragopt() is fixed to know about it. Home address option also carries final source address of the flow, then outbound AH calculation should take care of it like routing header case. Based on MIPL2 kernel patch. Signed-off-by: Masahide NAKAMURA Signed-off-by: YOSHIFUJI Hideaki Signed-off-by: David S. Miller commit 793832361fe7e9c3fcae2edd1d293c583a0a095c Author: Masahide NAKAMURA Date: Wed Aug 23 19:27:25 2006 -0700 [IPV6] MIP6: Revert address to send ICMPv6 error. IPv6 source address is replaced in receiving packet with home address option carried by destination options header. To send ICMPv6 error back, original address which is received one on wire should be used. This function checks such header is included and reverts them. Based on MIPL2 kernel patch. This patch was also written by: Ville Nuorvala Signed-off-by: Masahide NAKAMURA Signed-off-by: YOSHIFUJI Hideaki Signed-off-by: David S. Miller commit 8dd7368dd97def967bbb3aec67b882e8dfd1a528 Author: David S. Miller Date: Wed Aug 23 19:25:55 2006 -0700 [IPV6]: Put dsthao after flags in order to pack inet6_skb_parm better. Signed-off-by: David S. Miller commit a831f5bbc89a9978795504be9e1ff412043f8f77 Author: Masahide NAKAMURA Date: Wed Aug 23 19:24:48 2006 -0700 [IPV6] MIP6: Add inbound interface of home address option. Add inbound function of home address option by registering it to TLV table for destination options header. Based on MIPL2 kernel patch. This patch was also written by: Ville Nuorvala Signed-off-by: Masahide NAKAMURA Signed-off-by: YOSHIFUJI Hideaki Signed-off-by: David S. Miller commit 842426e719f86cd5709617208efae93ff1a1e2d8 Author: Noriaki TAKAMIYA Date: Wed Aug 23 19:21:34 2006 -0700 [IPV6] MIP6: Add home address option definition. Add home address option definition for Mobile IPv6. Based on MIPL2 kernel patch. Signed-off-by: Noriaki TAKAMIYA Signed-off-by: Masahide NAKAMURA Signed-off-by: YOSHIFUJI Hideaki Signed-off-by: David S. Miller commit a80ff03e05e4343d647780c116b02ec86078fd24 Author: Masahide NAKAMURA Date: Wed Aug 23 19:19:50 2006 -0700 [IPV6]: Allow to replace skbuff by TLV parser. In receiving Mobile IPv6 home address option which is a TLV carried by destination options header, kernel will try to mangle source adderss of packet. Think of cloned skbuff it is required to replace it by the parser just like routing header case. This is a framework to achieve that to allow TLV parser to replace inbound skbuff pointer. Signed-off-by: Masahide NAKAMURA Signed-off-by: YOSHIFUJI Hideaki Signed-off-by: David S. Miller commit c61a404325093250b676f40ad8f4dd00f3bcab5f Author: Masahide NAKAMURA Date: Wed Aug 23 19:18:35 2006 -0700 [IPV6]: Find option offset by type. This is a helper to search option offset from extension header which can carry TLV option like destination options header. Mobile IPv6 home address option will use it. Based on MIPL2 kernel patch. Signed-off-by: Masahide NAKAMURA Signed-off-by: YOSHIFUJI Hideaki Signed-off-by: David S. Miller commit 280a9d340057ce1b3cca63084df22f4ef5b35fba Author: Masahide NAKAMURA Date: Wed Aug 23 19:17:12 2006 -0700 [IPV6] MIP6: Add socket option and ancillary data interface of routing header type 2. Add socket option and ancillary data interface of routing header type 2. Mobile IPv6 application will use this to send binding acknowledgement with the header without relation of confirmed route optimization (binding). Based on MIPL2 kernel patch. Signed-off-by: Masahide NAKAMURA Signed-off-by: YOSHIFUJI Hideaki Signed-off-by: David S. Miller commit 65d4ed92219b28875efb52de5700da8c3dfa83e1 Author: Masahide NAKAMURA Date: Wed Aug 23 19:16:22 2006 -0700 [IPV6] MIP6: Add inbound interface of routing header type 2. Add inbound interface of routing header type 2 for Mobile IPv6. Based on MIPL2 kernel patch. This patch was also written by: Ville Nuorvala Signed-off-by: Masahide NAKAMURA Signed-off-by: YOSHIFUJI Hideaki Signed-off-by: David S. Miller commit 642ec62eee5bdc158e01029220c8a23c685778fb Author: Noriaki TAKAMIYA Date: Wed Aug 23 19:15:07 2006 -0700 [IPV6] MIP6: Add routing header type 2 definition. Add routing header type 2 definition for Mobile IPv6. Based on MIPL2 kernel patch. Signed-off-by: Noriaki TAKAMIYA Signed-off-by: Masahide NAKAMURA Signed-off-by: YOSHIFUJI Hideaki commit ee53826801a8fa7a0e333895421ef6d0e5fbfbf0 Author: Masahide NAKAMURA Date: Wed Aug 23 19:13:46 2006 -0700 [IPV6]: Add Kconfig to enable Mobile IPv6. Add Kconfig to enable Mobile IPv6. Based on MIPL2 kernel patch. Signed-off-by: Noriaki TAKAMIYA Signed-off-by: Masahide NAKAMURA Signed-off-by: YOSHIFUJI Hideaki commit 654b32c6aad19d2fd363813cd8a1a1e64daf611b Author: Masahide NAKAMURA Date: Wed Aug 23 19:12:56 2006 -0700 [XFRM]: Fix message about transformation user interface. Transformation user interface is not only for IPsec. Based on MIPL2 kernel patch. Signed-off-by: Masahide NAKAMURA Signed-off-by: YOSHIFUJI Hideaki Signed-off-by: David S. Miller commit e53820de0f81da1429048634cadc6ef5f50c2f8b Author: Masahide NAKAMURA Date: Wed Aug 23 19:12:01 2006 -0700 [XFRM] IPV6: Restrict bundle reusing For outbound transformation, bundle is checked whether it is suitable for current flow to be reused or not. In such IPv6 case as below, transformation may apply incorrect bundle for the flow instead of creating another bundle: - The policy selector has destination prefix length < 128 (Two or more addresses can be matched it) - Its bundle holds dst entry of default route whose prefix length < 128 (Previous traffic was used such route as next hop) - The policy and the bundle were used a transport mode state and this time flow address is not matched the bundled state. This issue is found by Mobile IPv6 usage to protect mobility signaling by IPsec, but it is not a Mobile IPv6 specific. This patch adds strict check to xfrm_bundle_ok() for each state mode and address when prefix length is less than 128. Signed-off-by: Masahide NAKAMURA Signed-off-by: YOSHIFUJI Hideaki Signed-off-by: David S. Miller commit 9afaca057980c02771f4657c455cc7592fcd7373 Author: Masahide NAKAMURA Date: Wed Aug 23 18:20:16 2006 -0700 [XFRM] IPV6: Update outbound state timestamp for each sending. With this patch transformation state is updated last used time for each sending. Xtime is used for it like other state lifetime expiration. Mobile IPv6 enabled nodes will want to know traffic status of each binding (e.g. judgement to request binding refresh by correspondent node, or to keep home/care-of nonce alive by mobile node). The last used timestamp is an important hint about it. Based on MIPL2 kernel patch. This patch was also written by: Henrik Petander Signed-off-by: Masahide NAKAMURA Signed-off-by: YOSHIFUJI Hideaki Signed-off-by: David S. Miller commit 060f02a3bdd4d9ba8aa3c48e9b470672b1f3a585 Author: Noriaki TAKAMIYA Date: Wed Aug 23 18:18:55 2006 -0700 [XFRM] STATE: Introduce care-of address. Care-of address is carried by state as a transformation option like IPsec encryption/authentication algorithm. Based on MIPL2 kernel patch. Signed-off-by: Noriaki TAKAMIYA Signed-off-by: Masahide NAKAMURA Signed-off-by: YOSHIFUJI Hideaki commit 1b5c229987dc4d0c92a38fac0cde2aeec08cd775 Author: Masahide NAKAMURA Date: Wed Aug 23 18:11:50 2006 -0700 [XFRM] STATE: Support non-fragment outbound transformation headers. For originated outbound IPv6 packets which will fragment, ip6_append_data() should know length of extension headers before sending them and the length is carried by dst_entry. IPv6 IPsec headers fragment then transformation was designed to place all headers after fragment header. OTOH Mobile IPv6 extension headers do not fragment then it is a good idea to make dst_entry have non-fragment length to tell it to ip6_append_data(). Signed-off-by: Masahide NAKAMURA Signed-off-by: YOSHIFUJI Hideaki Signed-off-by: David S. Miller commit 99505a843673faeae962a8cde128c7c034ba6b5e Author: Masahide NAKAMURA Date: Wed Aug 23 18:10:33 2006 -0700 [XFRM] STATE: Add a hook to obtain local/remote outbound address. Outbound transformation replaces both source and destination address with state's end-point addresses at the same time when IPsec tunnel mode. It is also required to change them for Mobile IPv6 route optimization, but we should care about the following differences: - changing result is not end-point but care-of address - either source or destination is replaced for each state This hook is a common platform to change outbound address. Based on MIPL2 kernel patch. Signed-off-by: Masahide NAKAMURA Signed-off-by: YOSHIFUJI Hideaki Signed-off-by: David S. Miller commit 9e51fd371a022318c5b64b831c43026e89bc4f75 Author: Masahide NAKAMURA Date: Wed Aug 23 18:09:09 2006 -0700 [XFRM]: Rename secpath_has_tunnel to secpath_has_nontransport. On current kernel inbound transformation state is allowed transport and disallowed tunnel mode when mismatch is occurred between tempates and states. As the result of adding two more modes by Mobile IPv6, this function name is misleading. Inbound transformation can allow only transport mode when mismatch is occurred between template and secpath. Based on MIPL2 kernel patch. Signed-off-by: Masahide NAKAMURA Signed-off-by: YOSHIFUJI Hideaki Signed-off-by: David S. Miller commit fbd9a5b47ee9c319ff0cae584391241ce78ffd6b Author: Masahide NAKAMURA Date: Wed Aug 23 18:08:21 2006 -0700 [XFRM] STATE: Common receive function for route optimization extension headers. XFRM_STATE_WILDRECV flag is introduced; the last resort state is set it and receives packet which is not route optimized but uses such extension headers i.e. Mobile IPv6 signaling (binding update and acknowledgement). A node enabled Mobile IPv6 adds the state. Based on MIPL2 kernel patch. Signed-off-by: Masahide NAKAMURA Signed-off-by: YOSHIFUJI Hideaki Signed-off-by: David S. Miller commit f3bd484021d9486b826b422a017d75dd0bd258ad Author: Masahide NAKAMURA Date: Wed Aug 23 18:00:48 2006 -0700 [XFRM]: Restrict authentication algorithm only when inbound transformation protocol is IPsec. For Mobile IPv6 usage, routing header or destination options header is used and it doesn't require this comparison. It is checked only for IPsec template. Based on MIPL2 kernel patch. Signed-off-by: Masahide NAKAMURA Signed-off-by: YOSHIFUJI Hideaki Signed-off-by: David S. Miller commit 1d71627d699eca831c1fbfb66ea67bb1fba41415 Author: Masahide NAKAMURA Date: Wed Aug 23 17:59:44 2006 -0700 [XFRM] STATE: Introduce route optimization mode. Route optimization is used with routing header and destination options header for Mobile IPv6. At outbound it makes header space like IPsec transport. At inbound it does nothing because exhdrs.c functions have responsibility to update skbuff information for these headers. Signed-off-by: Masahide NAKAMURA Signed-off-by: YOSHIFUJI Hideaki Signed-off-by: David S. Miller commit aee5adb4307c4c63a4dc5f3b49984d76f8a71b5b Author: Masahide NAKAMURA Date: Wed Aug 23 17:57:28 2006 -0700 [XFRM] STATE: Add a hook to find offset to be inserted header in outbound. On current kernel, ip6_find_1stfragopt() is used by IPv6 IPsec to find offset to be inserted header in outbound for transport mode. (BTW, no usage may be needed for IPv4 case.) Mobile IPv6 requires another logic for routing header and destination options header respectively. This patch is common platform for the offset and adopts it to IPsec. Based on MIPL2 kernel patch. Signed-off-by: Masahide NAKAMURA Signed-off-by: YOSHIFUJI Hideaki Signed-off-by: David S. Miller commit eb2971b68a7d17a7d0fa2c7fc6fbc4bfe41cd694 Author: Masahide NAKAMURA Date: Wed Aug 23 17:56:04 2006 -0700 [XFRM] STATE: Search by address using source address list. This is a support to search transformation states by its addresses by using source address list for Mobile IPv6 usage. To use it from user-space, it is also added a message type for source address as a xfrm state option. Based on MIPL2 kernel patch. Signed-off-by: Masahide NAKAMURA Signed-off-by: YOSHIFUJI Hideaki Signed-off-by: David S. Miller commit 6c44e6b7ab500d7e3e3f406c83325671be51a752 Author: Masahide NAKAMURA Date: Wed Aug 23 17:53:57 2006 -0700 [XFRM] STATE: Add source address list. Support source address based searching. Mobile IPv6 will use it. Based on MIPL2 kernel patch. Signed-off-by: Masahide NAKAMURA Signed-off-by: YOSHIFUJI Hideaki Signed-off-by: David S. Miller commit 622dc8281a80374873686514e46f852093d91106 Author: Masahide NAKAMURA Date: Wed Aug 23 17:52:01 2006 -0700 [XFRM]: Expand XFRM_MAX_DEPTH for route optimization. XFRM_MAX_DEPTH is a limit of transformation states to be applied to the same flow. Two more extension headers are used by Mobile IPv6 transformation. Based on MIPL2 kernel patch. Signed-off-by: Masahide NAKAMURA Signed-off-by: YOSHIFUJI Hideaki Signed-off-by: David S. Miller commit dc00a525603650a1471c823a1e48c6505c2f9765 Author: Masahide NAKAMURA Date: Wed Aug 23 17:49:52 2006 -0700 [XFRM] STATE: Allow non IPsec protocol. It will be added two more transformation protocols (routing header and destination options header) for Mobile IPv6. xfrm_id_proto_match() can be handle zero as all, IPSEC_PROTO_ANY as all IPsec and otherwise as exact one. Based on MIPL2 kernel patch. Signed-off-by: Masahide NAKAMURA Signed-off-by: YOSHIFUJI Hideaki Signed-off-by: David S. Miller commit 5794708f11551b6d19b10673abf4b0202f66b44d Author: Masahide NAKAMURA Date: Fri Sep 22 15:06:24 2006 -0700 [XFRM]: Introduce a helper to compare id protocol. Put the helper to header for future use. Based on MIPL2 kernel patch. Signed-off-by: Masahide NAKAMURA Signed-off-by: YOSHIFUJI Hideaki Signed-off-by: David S. Miller commit 7e49e6de30efa716614e280d97963c570f3acf29 Author: Masahide NAKAMURA Date: Fri Sep 22 15:05:15 2006 -0700 [XFRM]: Add XFRM_MODE_xxx for future use. Transformation mode is used as either IPsec transport or tunnel. It is required to add two more items, route optimization and inbound trigger for Mobile IPv6. Based on MIPL2 kernel patch. This patch was also written by: Ville Nuorvala Signed-off-by: Masahide NAKAMURA Signed-off-by: YOSHIFUJI Hideaki Signed-off-by: David S. Miller commit 77d16f450ae0452d7d4b009f78debb1294fb435c Author: YOSHIFUJI Hideaki Date: Wed Aug 23 17:25:05 2006 -0700 [IPV6] ROUTE: Unify RT6_F_xxx and RT6_SELECT_F_xxx flags Unify RT6_F_xxx and RT6_SELECT_F_xxx flags into RT6_LOOKUP_F_xxx flags, and put them into ip6_route.h Signed-off-by: YOSHIFUJI Hideaki Acked-by: Ville Nuorvala commit 4e96c2b4180aff4f080b77314712073c6ca430e7 Author: YOSHIFUJI Hideaki Date: Wed Aug 23 17:23:39 2006 -0700 [IPV6] KCONFIG: Add subtrees support. This is for developers only. Based on MIPL2 kernel patch. Signed-off-by: YOSHIFUJI Hideaki Signed-off-by: Ville Nuorvala commit c0bece9f2aec546c3750ae3972f80e024a923f34 Author: YOSHIFUJI Hideaki Date: Wed Aug 23 17:23:25 2006 -0700 [IPV6] ROUTE: Add credits about subtree fixes. Based on MIPL2 kernel patch. Signed-off-by: YOSHIFUJI Hideaki Signed-off-by: David S. Miller commit cb15d9c224fcc03b32396c1c7416e777c2dcca34 Author: YOSHIFUJI Hideaki Date: Wed Aug 23 17:23:11 2006 -0700 [IPV6] NDISC: Search subtrees when backtracking on receipt of redirects. Signed-off-by: YOSHIFUJI Hideaki Acked-by: Ville Nuorvala commit 150730d5a53b1bbb486101b2a5fb82ff0d3f916e Author: YOSHIFUJI Hideaki Date: Wed Aug 23 17:22:55 2006 -0700 [IPV6] ROUTE: Purge clones on other trees when deleting a route. Based on MIPL2 kernel patch. Signed-off-by: YOSHIFUJI Hideaki Signed-off-by: Ville Nuorvala commit 982f56f3a9be4651520c0fdd3d80a5d02e95a178 Author: YOSHIFUJI Hideaki Date: Wed Aug 23 17:22:39 2006 -0700 [IPV6] ROUTE: Search subtree when backtracking. Based on MIPL2 kernel patch. Signed-off-by: YOSHIFUJI Hideaki Signed-off-by: Ville Nuorvala Signed-off-by: David S. Miller commit 7fc33165a74301b2c5c90b2f2a1f6907cbd5c6f1 Author: YOSHIFUJI Hideaki Date: Wed Aug 23 17:22:24 2006 -0700 [IPV6] ROUTE: Put SUBTREE() as FIB6_SUBTREE() into ip6_fib.h for future use. Based on MIPL2 kernel patch. Signed-off-by: YOSHIFUJI Hideaki Signed-off-by: Ville Nuorvala Signed-off-by: David S. Miller commit fefc2a6c201aeafc1d0329a140de502d49f69d04 Author: YOSHIFUJI Hideaki Date: Wed Aug 23 17:21:50 2006 -0700 [IPV6] ROUTE: Allow searching subtree only. Signed-off-by: YOSHIFUJI Hideaki Acked-by: Ville Nuorvala Signed-off-by: David S. Miller commit 825e288ef4c55a379a97e104c825eb9b74874099 Author: YOSHIFUJI Hideaki Date: Wed Aug 23 17:21:29 2006 -0700 [IPV6] ROUTE: Make sure we do not exceed args in fib6_lookup_1(). Signed-off-by: YOSHIFUJI Hideaki Acked-by: Ville Nuorvala Signed-off-by: David S. Miller commit 3fc5e0440be7fab3abae4e801b0ef17e9b3b58c4 Author: YOSHIFUJI Hideaki Date: Wed Aug 23 17:21:12 2006 -0700 [IPV6] ROUTE: Fix looking up a route on subtree. Even on RTN_ROOT node, we need to process its subtree first. Fix NULL pointer dereference in fib6_locate(). Based on MIPL2 kernel patch. Signed-off-by: YOSHIFUJI Hideaki Signed-off-by: Ville Nuorvala Signed-off-by: David S. Miller commit 2285adc1e6c9f964f9625e7edcd233fccd7a7c92 Author: YOSHIFUJI Hideaki Date: Wed Aug 23 17:20:54 2006 -0700 [IPV6] ROUTE: Prune clones from main tree as well. Based on MIPL2 kernel patch. Signed-off-by: YOSHIFUJI Hideaki Signed-off-by: Ville Nuorvala Signed-off-by: David S. Miller commit 66729e18df08ee20a9824148236b89f56371659e Author: YOSHIFUJI Hideaki Date: Wed Aug 23 17:20:34 2006 -0700 [IPV6] ROUTE: Make sure we have fn->leaf when adding a node on subtree. Based on MIPL2 kernel patch. Signed-off-by: YOSHIFUJI Hideaki Signed-off-by: Ville Nuorvala Signed-off-by: David S. Miller commit 8e1ef0a95b87e8b4292b2ba733e8cb854ea2d2fe Author: YOSHIFUJI Hideaki Date: Tue Aug 29 17:15:09 2006 -0700 [IPV6]: Cache source address as well in ipv6_pinfo{}. Based on MIPL2 kernel patch. Signed-off-by: YOSHIFUJI Hideaki Signed-off-by: Ville Nuorvala Signed-off-by: David S. Miller commit cf6b1982599cbb60f410adeda659b0b29cdf7ad7 Author: YOSHIFUJI Hideaki Date: Wed Aug 23 17:19:18 2006 -0700 [IPV6] ROUTE: Introduce a helper to check route validity. Signed-off-by: YOSHIFUJI Hideaki Acked-by: Ville Nuorvala Signed-off-by: David S. Miller commit af184765848c280c7e6190f45c827c5ea3881126 Author: YOSHIFUJI Hideaki Date: Wed Aug 23 17:18:57 2006 -0700 [IPV6] NDISC: Initialize fl with outbound interface to lookup rules properly. Based on MIPL2 kernel patch. Signed-off-by: YOSHIFUJI Hideaki Signed-off-by: Ville Nuorvala Signed-off-by: David S. Miller commit a6279458c534d01ccc39498aba61c93083ee0372 Author: YOSHIFUJI Hideaki Date: Wed Aug 23 17:18:26 2006 -0700 [IPV6] NDISC: Search over all possible rules on receipt of redirect. Split up function for finding routes for redirects. Signed-off-by: YOSHIFUJI Hideaki Signed-off-by: David S. Miller commit 5e032e32ecc2e6cb0385dc115ca9bfe5e19a9539 Author: YOSHIFUJI Hideaki Date: Wed Aug 23 17:12:24 2006 -0700 [IPV6] NDISC: Take source address into account for redirects. Signed-off-by: YOSHIFUJI Hideaki Signed-off-by: Ville Nuorvala Signed-off-by: David S. Miller commit a57d27fc7107ddcc655ba2812cfebfce3163fd62 Author: David S. Miller Date: Tue Aug 22 22:20:14 2006 -0700 [RTNETLINK]: Don't return error on no-metrics. Instead just cancel the nested attribute and return 0. Signed-off-by: David S. Miller commit 2809486424df58043b380aeb9d7f402c031c46f6 Author: Thomas Graf Date: Tue Aug 22 13:52:17 2006 -0700 [NETFILTER]: x_tables: Fix typos after conversion to use mass registation helper Signed-off-by: Thomas Graf Signed-off-by: David S. Miller commit 3fd091e73b81f131e1567c4d4a1ec042940bf2f7 Author: Vladislav Yasevich Date: Tue Aug 22 13:29:17 2006 -0700 [SCTP]: Remove multiple levels of msecs to jiffies conversions. The SCTP sysctl entries are displayed in milliseconds, but stored internally in jiffies. This results in multiple levels of msecs to jiffies conversion and as a result produces a truncation error. This patch makes things consistent in that we store and display defaults in milliseconds and only convert once for use by association. This patch also adds some sane min/max values so that we don't go off the deep end. Signed-off-by: Vladislav Yasevich Signed-off-by: Sridhar Samudrala Signed-off-by: David S. Miller commit ce556b3a591fff3bebf8c5590a86aa98e1b2f153 Author: Patrick McHardy Date: Tue Aug 22 00:44:14 2006 -0700 [NETFILTER]: xt_tcpmss: minor cleanups - remove unused define - remove useless wrapper function - use new line for expression after condition Signed-off-by: Patrick McHardy Signed-off-by: David S. Miller commit 5fa2a7601f994bdd034e871b7ea1abd6969fbb6c Author: Patrick McHardy Date: Tue Aug 22 00:43:55 2006 -0700 [NETFILTER]: ip6_tables: consolidate dst and hbh matches The matches are identical besides one looking for NEXTHDR_HOP, the other for NEXTHDR_DEST. Remove ip6t_dst.c and handle both in ip6t_hbh.c. Signed-off-by: Patrick McHardy Signed-off-by: David S. Miller commit 91270cf81765152f6e77953440beb4d3b34a71b5 Author: Patrick McHardy Date: Tue Aug 22 00:43:38 2006 -0700 [NETFILTER]: x_tables: add data member to struct xt_match Shared match functions can use this to make runtime decisions basen on the used match. Signed-off-by: Patrick McHardy Signed-off-by: David S. Miller commit 53e26658282373b84ba85a0c9807cb762f7738a6 Author: Patrick McHardy Date: Tue Aug 22 00:43:20 2006 -0700 [NETFILTER]: nfnetlink: remove unnecessary packed attributes Remove unnecessary packed attributes in nfnetlink structures. Unfortunately in a few cases they have to stay to avoid changing structure sizes. Signed-off-by: Patrick McHardy Signed-off-by: David S. Miller commit efa741656e9ebf5fd6e0432b0d1b3c7f156392d3 Author: Patrick McHardy Date: Tue Aug 22 00:36:37 2006 -0700 [NETFILTER]: x_tables: remove unused size argument to check/destroy functions The size is verified by x_tables and isn't needed by the modules anymore. Signed-off-by: Patrick McHardy Signed-off-by: David S. Miller commit fe1cb10873b44cf89082465823ee6d4d4ac63ad7 Author: Patrick McHardy Date: Tue Aug 22 00:35:47 2006 -0700 [NETFILTER]: x_tables: remove unused argument to target functions Signed-off-by: Patrick McHardy Signed-off-by: David S. Miller commit 4470bbc749e5551cce914529309456f631e25120 Author: Patrick McHardy Date: Tue Aug 22 00:34:04 2006 -0700 [NETFILTER]: x_tables: make use of mass registation helpers Signed-off-by: Patrick McHardy Signed-off-by: David S. Miller commit 52d9c42ef2563d2c420eb23b96bf5a4cae9e167b Author: Patrick McHardy Date: Tue Aug 22 00:33:45 2006 -0700 [NETFILTER]: x_tables: add helpers for mass match/target registration Signed-off-by: Patrick McHardy Signed-off-by: David S. Miller commit 90528e6fe92ee1a353d6a639930e7d70d85b5c85 Author: Patrick McHardy Date: Tue Aug 22 00:33:26 2006 -0700 [NETFILTER]: xt_CONNMARK: use tabs for indentation Signed-off-by: Patrick McHardy Signed-off-by: David S. Miller commit da878c8e5aae3eeceeee7af8d52633d7bc125edf Author: Patrick McHardy Date: Tue Aug 22 00:33:09 2006 -0700 [NETFILTER]: replace open coded checksum updates Replace open coded checksum update by nf_csum_update calls and clean up the surrounding code a bit. Signed-off-by: Patrick McHardy Signed-off-by: David S. Miller commit 1158ba27bec6d1a20999099a938908cf85f47640 Author: Patrick McHardy Date: Tue Aug 22 00:32:47 2006 -0700 [NETFILTER]: nfnetlink_queue: fix typo in error message Signed-off-by: Patrick McHardy Signed-off-by: David S. Miller commit 1a31526baeed30aaa70503cee0ab281f78cae0d6 Author: Pablo Neira Ayuso Date: Tue Aug 22 00:32:23 2006 -0700 [NETFILTER]: ctnetlink: remove impossible events tests for updates IPCT_HELPER and IPCT_NATINFO bits are never set on updates. Signed-off-by: Pablo Neira Ayuso Signed-off-by: Patrick McHardy Signed-off-by: David S. Miller commit b3a27bfba51d445784eb0cd6451b73a73fb69cf9 Author: Pablo Neira Ayuso Date: Tue Aug 22 00:32:05 2006 -0700 [NETFILTER]: ctnetlink: check for listeners before sending expectation events This patch uses nfnetlink_has_listeners to check for listeners in userspace. Signed-off-by: Pablo Neira Ayuso Signed-off-by: Patrick McHardy Signed-off-by: David S. Miller commit b9a37e0c81c498be2db9f52063c53e55d76c815e Author: Pablo Neira Ayuso Date: Tue Aug 22 00:31:49 2006 -0700 [NETFILTER]: ctnetlink: dump connection mark ctnetlink dumps the mark iif the event mark happened Signed-off-by: Pablo Neira Ayuso Signed-off-by: Patrick McHardy Signed-off-by: David S. Miller commit 2521c12cf1a29f6c380b13ca32a38175f6beed08 Author: Pablo Neira Ayuso Date: Tue Aug 22 00:31:24 2006 -0700 [NETFILTER]: conntrack: introduce connection mark event This patch introduces the mark event. ctnetlink can use this to know if the mark needs to be dumped. Signed-off-by: Pablo Neira Ayuso Signed-off-by: Patrick McHardy Signed-off-by: David S. Miller commit b93ff78317c0b8f42830e2bb13dd8df596232528 Author: Daniel De Graaf Date: Tue Aug 22 00:30:55 2006 -0700 [NETFILTER]: ipt_recent: add module parameter for changing ownership of /proc/net/ipt_recent/* Signed-off-by: Daniel De Graaf Signed-off-by: Patrick McHardy Signed-off-by: David S. Miller commit a468701db58a8b3e08e3f55fa6ac66db42014922 Author: Yasuyuki Kozakai Date: Tue Aug 22 00:30:26 2006 -0700 [NETFILTER]: x_tables: replace IPv4 DSCP target by address family independent version This replaces IPv4 DSCP target by address family independent version. This also - utilizes dsfield.h to get/mangle DS field in IPv4/IPv6 header - fixes Kconfig help text. Signed-off-by: Yasuyuki Kozakai Signed-off-by: Patrick McHardy Signed-off-by: David S. Miller commit 9ba1627617d396135a4d679542a3623d5819e628 Author: Yasuyuki Kozakai Date: Tue Aug 22 00:29:37 2006 -0700 [NETFILTER]: x_tables: replace IPv4 dscp match by address family independent version This replaces IPv4 dscp match by address family independent version. This also - utilizes dsfield.h to get the DS field in IPv4/IPv6 header, and - checks for the DSCP value from user space. - fixes Kconfig help text. Signed-off-by: Yasuyuki Kozakai Signed-off-by: Patrick McHardy Signed-off-by: David S. Miller commit 131852176c1f5b4350b4af811d1836db387d0c61 Author: Henrik Kretzschmar Date: Tue Aug 22 00:28:33 2006 -0700 [TG3]: Convert the pci_device_id table to PCI_DEVICE() Convert the pci_device_ids to PCI_DEVICE() macro. Saves 1.5k in the sourcefile. Signed-off-by: Henrik Kretzschmar Acked-by: Michael Chan Signed-off-by: David S. Miller commit 8abfedd889e46ad4977dfcdab737edf5c5803c62 Author: Sridhar Samudrala Date: Tue Aug 22 00:24:09 2006 -0700 [SCTP]: Use the flags value that is passed as an arg to sctp_accept. No need to do multiple dereferences - sk->sk_socket->file->f_flags Signed-off-by: Sridhar Samudrala Signed-off-by: David S. Miller commit eb5fa39f5ef490c72901b547ac5e7211efd47d56 Author: Vladislav Yasevich Date: Tue Aug 22 00:23:13 2006 -0700 [SCTP]: Fix IPv6 address flag setting when doing peel-off/accept. During accept/peeloff we try to copy the list of bound addresses from the original endpoint to the new one. However, we forgot to set the flag to say that IPv6 is allowed on the new endpoint. Signed-off-by: Vladislav Yasevich Signed-off-by: Sridhar Samudrala Signed-off-by: David S. Miller commit df7deeb5402087ea0387173aaf067d37a264a8f0 Author: Vladislav Yasevich Date: Tue Aug 22 00:19:51 2006 -0700 [SCTP]: Cleanup nomem handling in the state functions. This patch cleans up the "nomem" conditions that may occur during the processing by the state machine functions. In most cases we delay adding side-effect commands until all memory allocations are done. Signed-off-by: Vladislav Yasevich Signed-off-by: Sridhar Samudrala Signed-off-by: David S. Miller commit ac0b04627269ff16c3c7ab854a65fe6780c6e3e5 Author: Sridhar Samudrala Date: Tue Aug 22 00:15:33 2006 -0700 [SCTP]: Extend /proc/net/sctp/snmp to provide more statistics. This patch adds more statistics info under /proc/net/sctp/snmp that should be useful for debugging. The additional events that are counted now include timer expirations, retransmits, packet and data chunk discards. The Data chunk discards include all the cases where a data chunk is discarded including high tsn, bad stream, dup tsn and the most useful one(out of receive buffer/rwnd). Also moved the SCTP MIB data structures from the generic include directories to include/sctp/sctp.h. Signed-off-by: Sridhar Samudrala Signed-off-by: David S. Miller commit 72d3b2c970a2d5d2ccb1d1cab4fb76663c4f2e49 Author: David S. Miller Date: Tue Aug 22 00:13:07 2006 -0700 [IPV6]: Fixup ip6_del_rt() call for new args. Signed-off-by: David S. Miller commit ab364a6f96bad9625bdb97b5688c76c44eb1e96e Author: Thomas Graf Date: Tue Aug 22 00:01:47 2006 -0700 [IPv6] route: Convert GETROUTE to use new netlink api Fixes various unvalidated netlink attributes causing memory corruptions when left empty by userspace applications. Signed-off-by: Thomas Graf Signed-off-by: David S. Miller commit 2d7202bfdd28687073f5efef8d2f51bbab0af867 Author: Thomas Graf Date: Tue Aug 22 00:01:27 2006 -0700 [IPv6] route: Convert FIB6 dumping to use new netlink api Signed-off-by: Thomas Graf Signed-off-by: David S. Miller commit 86872cb57925c46a6499887d77afb880a892c0ec Author: Thomas Graf Date: Tue Aug 22 00:01:08 2006 -0700 [IPv6] route: FIB6 configuration using struct fib6_config Replaces the struct in6_rtmsg based interface orignating from the ioctl interface with a struct fib6_config based on. Allows changing the interface without breaking the ioctl interface and avoids passing on tons of parameters. The recently introduced struct nl_info is used to pass on netlink authorship information for notifications. Signed-off-by: Thomas Graf Signed-off-by: David S. Miller commit 40e22e8f3d4d4f1ff68fb03683f007c53ee8b348 Author: Thomas Graf Date: Tue Aug 22 00:00:45 2006 -0700 [IPv6] route: Simplify ip6_ins_rt() Provide a simple ip6_ins_rt() for the majority of users and an alternative for the exception via netlink. Avoids code obfuscation. Signed-off-by: Thomas Graf Signed-off-by: David S. Miller commit e0a1ad73d34fd6dfdb630479400511e9879069c0 Author: Thomas Graf Date: Tue Aug 22 00:00:21 2006 -0700 [IPv6] route: Simplify ip6_del_rt() Provide a simple ip6_del_rt() for the majority of users and an alternative for the exception via netlink. Avoids code obfuscation. Signed-off-by: Thomas Graf Signed-off-by: David S. Miller commit e9ce1cd3cf6cf35b21d0ce990f2e738f35907386 Author: David S. Miller Date: Mon Aug 21 23:54:55 2006 -0700 [PKT_SCHED]: Kill pkt_act.h inlining. This was simply making templates of functions and mostly causing a lot of code duplication in the classifier action modules. We solve this more cleanly by having a common "struct tcf_common" that hash worker functions contained once in act_api.c can work with. Callers work with real action objects that have the common struct plus their module specific struct members. You go from a common object to the higher level one using a "to_foo()" macro which makes use of container_of() to do the dirty work. This also kills off act_generic.h which was only used by act_simple.c and keeping it around was more work than the it's value. Signed-off-by: David S. Miller commit 2e4ca75b31b6851dcc036c2cdebf3ecfe279a653 Author: Stephen Hemminger Date: Thu Aug 17 18:20:18 2006 -0700 [ETH]: indentation and cleanup Run ethernet support through Lindent and fix up. Applies after docbook comments patch Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit d3e01f71863da30a2d6bfca069a036168b6c8607 Author: Stephen Hemminger Date: Thu Aug 17 18:18:53 2006 -0700 [ETH]: docbook comments Add docbook style comments to ethernet support. Signed-off-by: Stephen Hemminger Acked-by: Randy Dunlap Signed-off-by: David S. Miller commit e92b43a3455d3e817c13481bb3ea3cd29d0a47f4 Author: Stephen Hemminger Date: Thu Aug 17 18:17:37 2006 -0700 [NET] neighbour: reduce exports There are several symbols only used by rtnetlink and since it can not be a module, there is no reason to export them. Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit d889ce3b29e55b91257964b4c9aac70b91fedd91 Author: Thomas Graf Date: Thu Aug 17 18:15:44 2006 -0700 [IPv4]: Convert route get to new netlink api Fixes various unvalidated netlink attributes causing memory corruptions when left empty by userspace applications. Signed-off-by: Thomas Graf Signed-off-by: David S. Miller commit be403ea1856f1428b5912b42184acbba808c41d6 Author: Thomas Graf Date: Thu Aug 17 18:15:17 2006 -0700 [IPv4]: Convert FIB dumping to use new netlink api Signed-off-by: Thomas Graf Signed-off-by: David S. Miller commit 4e902c57417c4c285b98ba2722468d1c3ed83d1b Author: Thomas Graf Date: Thu Aug 17 18:14:52 2006 -0700 [IPv4]: FIB configuration using struct fib_config Introduces struct fib_config replacing the ugly struct kern_rta prone to ordering issues. Avoids creating faked netlink messages for auto generated routes or requests via ioctl. A new interface net/nexthop.h is added to help navigate through nexthop configuration arrays. A new struct nl_info will be used to carry the necessary netlink information to be used for notifications later on. Signed-off-by: Thomas Graf Signed-off-by: David S. Miller commit ab32ea5d8a760e7dd4339634e95d7be24ee5b842 Author: Brian Haley Date: Fri Sep 22 14:15:41 2006 -0700 [NET/IPV4/IPV6]: Change some sysctl variables to __read_mostly Change net/core, ipv4 and ipv6 sysctl variables to __read_mostly. Couldn't actually measure any performance increase while testing (.3% I consider noise), but seems like the right thing to do. Signed-off-by: Brian Haley Signed-off-by: David S. Miller commit 56fc85ac961e2c20dcb5ef07e2628b3f93de2e49 Author: Thomas Graf Date: Tue Aug 15 00:37:29 2006 -0700 [RTNETLINK]: Unexport rtnl socket Signed-off-by: Thomas Graf Signed-off-by: David S. Miller commit 0ec6d3f467faeec5dd3b617959eb90e9d520113d Author: Thomas Graf Date: Tue Aug 15 00:37:09 2006 -0700 [NET] link: Convert notifications to use rtnl_notify() Signed-off-by: Thomas Graf Signed-off-by: David S. Miller commit bd5785ba3ac1c89aa4c351ceb2acd96686424d8c Author: Thomas Graf Date: Tue Aug 15 00:36:49 2006 -0700 [WIRELESS]: Convert notifications to use rtnl_notify() Signed-off-by: Thomas Graf Signed-off-by: David S. Miller commit 280a306c539389156477cc9c07028d43fe4fbf86 Author: Thomas Graf Date: Tue Aug 15 00:36:28 2006 -0700 [BRIDGE]: Convert notifications to use rtnl_notify() Fixes a wrong use of current->pid as netlink pid. Signed-off-by: Thomas Graf Signed-off-by: David S. Miller commit 8c384bfa36b1dbeba8154da20d49167ce3e275c4 Author: Thomas Graf Date: Tue Aug 15 00:36:07 2006 -0700 [IPv6] prefix: Convert prefix notifications to use rtnl_notify() Fixes a wrong use of current->pid as netlink pid. Signed-off-by: Thomas Graf Signed-off-by: David S. Miller commit 8d7a76c9b17866f426fcbb531c81af7a1f53e071 Author: Thomas Graf Date: Tue Aug 15 00:35:47 2006 -0700 [IPv6] link: Convert link notifications to use rtnl_notify() Fixes a wrong use of current->pid as netlink pid. Signed-off-by: Thomas Graf Signed-off-by: David S. Miller commit 21713ebc4f119950e87d21c4637d5a750eea20e8 Author: Thomas Graf Date: Tue Aug 15 00:35:24 2006 -0700 [IPv6] route: Convert route notifications to use rtnl_notify() Fixes a wrong use of current->pid as netlink pid. Signed-off-by: Thomas Graf Signed-off-by: David S. Miller commit 5d620266431c03d1dac66287367c6da26c64a069 Author: Thomas Graf Date: Tue Aug 15 00:35:02 2006 -0700 [IPv6] address: Convert address notification to use rtnl_notify() Fixes a wrong use of current->pid as netlink pid. Signed-off-by: Thomas Graf Signed-off-by: David S. Miller commit f21c7bc5f6a0a5bd03988886ff46656bc3f255b7 Author: Thomas Graf Date: Tue Aug 15 00:34:17 2006 -0700 [IPv4] route: Convert route notifications to use rtnl_notify() Signed-off-by: Thomas Graf Signed-off-by: David S. Miller commit d6062cbbd1f5e92c94e5eae9ef1a280ed48d56d5 Author: Thomas Graf Date: Tue Aug 15 00:33:59 2006 -0700 [IPv4] address: Convert address notification to use rtnl_notify() Adds support for NLM_F_ECHO allowing applications to easly see which address have been deleted, added, or promoted. Signed-off-by: Thomas Graf Signed-off-by: David S. Miller commit dc738dd83e88c3c5de55431f8cfb758de5d4df48 Author: Thomas Graf Date: Tue Aug 15 00:33:35 2006 -0700 [DECNET]: Convert DECnet notifications to use rtnl_notify() Signed-off-by: Thomas Graf Signed-off-by: David S. Miller commit b8673311804ca29680dd584bd08352001fcbe2f8 Author: Thomas Graf Date: Tue Aug 15 00:33:14 2006 -0700 [NEIGH]: Convert neighbour notifications ot use rtnl_notify() Signed-off-by: Thomas Graf Signed-off-by: David S. Miller commit c17084d21c18497b506bd28b82d964bc9e6c424b Author: Thomas Graf Date: Tue Aug 15 00:32:48 2006 -0700 [NET] fib_rules: Convert fib rule notification to use rtnl_notify() Adds support for NLM_F_ECHO to simplify the process of identifying inserted rules with an auto generated priority. Signed-off-by: Thomas Graf Signed-off-by: David S. Miller commit 97676b6b5538b3e059d33b8338e7d5cc41c5f1f1 Author: Thomas Graf Date: Tue Aug 15 00:31:41 2006 -0700 [RTNETLINK]: Add rtnetlink notification interface Adds rtnl_notify() to send rtnetlink notification messages and rtnl_set_sk_err() to report notification errors as socket errors in order to indicate the need of a resync due to loss of events. nlmsg_report() is added to properly document the meaning of NLM_F_ECHO. Signed-off-by: Thomas Graf Signed-off-by: David S. Miller commit d387f6ad10764fc2174373b4a1cca443adee36e3 Author: Thomas Graf Date: Tue Aug 15 00:31:06 2006 -0700 [NETLINK]: Add notification message sending interface Adds nlmsg_notify() implementing proper notification logic. The message is multicasted to all listeners in the group. The applications the requests orignates from can request a unicast back report in which case said socket will be excluded from the multicast to avoid duplicated notifications. nlmsg_multicast() is extended to take allocation flags to allow notification in atomic contexts. Signed-off-by: Thomas Graf Signed-off-by: David S. Miller commit 2942e90050569525628a9f34e0daaa9b661b49cc Author: Thomas Graf Date: Tue Aug 15 00:30:25 2006 -0700 [RTNETLINK]: Use rtnl_unicast() for rtnetlink unicasts Signed-off-by: Thomas Graf Signed-off-by: David S. Miller commit f8d8fda54a1bfcf8cf829e44c494b2b4582819aa Author: David S. Miller Date: Tue Aug 15 00:15:41 2006 -0700 [IPV6] udp: Fix type in previous change. UDPv6 stats are UDP6_foo not UDP_foo. Signed-off-by: David S. Miller commit 62872e2dcb3127b20a49e3b4b1d93523cf476cc4 Author: Stphane Witzmann Date: Tue Aug 15 00:09:17 2006 -0700 [ARCNET]: SoHard PCI support Add support for a SoHard PCI ARCnet card. Signed-off-by: Andrew Morton Signed-off-by: David S. Miller commit 9c3bd6833a4df1abd9ecd3b51492b8949bf9cd11 Author: Bjorn Helgaas Date: Tue Aug 15 00:05:38 2006 -0700 [IRDA]: Replace hard-coded dev_self[] array sizes with ARRAY_SIZE() Several IR drivers used "for (i = 0; i < 4; i++)" to walk their dev_self[] table. Better to use ARRAY_SIZE(). And fix ali-ircc so it won't run off the end if we find too many adapters. Signed-off-by: Bjorn Helgaas Signed-off-by: Andrew Morton Signed-off-by: David S. Miller commit 9a673e563e543a5c8a6f9824562e55e807b8a56c Author: Adrian Bunk Date: Tue Aug 15 00:03:53 2006 -0700 [SELINUX]: security/selinux/hooks.c: Make 4 functions static. This patch makes four needlessly global functions static. Signed-off-by: Adrian Bunk Acked-by: James Morris Signed-off-by: Andrew Morton Signed-off-by: David S. Miller commit 97a4f3e7110619568aa239fe19143d9ec42dede5 Author: Alan Cox Date: Tue Aug 15 00:01:05 2006 -0700 [NETFILTER]: Make unused signal code go away so nobody copies its brokenness This code is wrong on so many levels, please lose it so it isn't replicated anywhere else. Signed-off-by: Alan Cox Signed-off-by: Andrew Morton Signed-off-by: David S. Miller commit a18135eb9389c26d36ef5c05bd8bc526e0cbe883 Author: David S. Miller Date: Tue Aug 15 00:00:09 2006 -0700 [IPV6]: Add UDP_MIB_{SND,RCV}BUFERRORS handling. Signed-off-by: David S. Miller commit 81aa646cc4df3779bcbf9d18cc2c0813ee9b3262 Author: Martin Bligh Date: Mon Aug 14 23:57:10 2006 -0700 [IPV4]: add the UdpSndbufErrors and UdpRcvbufErrors MIBs Signed-off-by: Martin Bligh Signed-off-by: Andrew Morton commit 2aa7f36cdb332a32849afbf25fcbf35dce5b1940 Author: Adrian Bunk Date: Mon Aug 14 23:55:20 2006 -0700 [DECNET]: cleanups - make the following needlessly global functions static: - dn_fib.c: dn_fib_sync_down() - dn_fib.c: dn_fib_sync_up() - dn_rules.c: dn_fib_rule_action() - remove the following unneeded prototype: - dn_fib.c: dn_cache_dump() Signed-off-by: Adrian Bunk Signed-off-by: Andrew Morton Signed-off-by: David S. Miller commit 50da859d4e566fba90ebda87b843970d902c903e Author: Andreas Mohr Date: Mon Aug 14 23:54:30 2006 -0700 [TG3]: Constify firmware structs Constify largish areas of firmware data in Tigon3 ethernet driver. non-const: lsmod: tg3 101404 0 objdump -x: .rodata 000003e8 .data 00004a0c ls -l: -rw-r--r-- 1 root root 114404 2006-08-19 21:36 drivers/net/tg3.ko const: lsmod: tg3 101404 0 objdump -x: .rodata 000042c8 .data 00000b4c ls -l: -rw-r--r-- 1 root root 114532 2006-08-19 21:06 drivers/net/tg3.ko Signed-off-by: Andreas Mohr Signed-off-by: Andrew Morton Signed-off-by: David S. Miller commit 90d41122f79c8c3687d965dde4c6d30a6e0cac4c Author: Adrian Bunk Date: Mon Aug 14 23:49:16 2006 -0700 [IPV6] ip6_fib.c: make code static Make the following needlessly global code static: - fib6_walker_lock - struct fib6_walker_list - fib6_walk_continue() - fib6_walk() Signed-off-by: Adrian Bunk Signed-off-by: Andrew Morton Signed-off-by: David S. Miller commit d1aa62f15b511457af2233150c960dc1fd02769b Author: Steven Whitehouse Date: Fri Aug 11 16:44:18 2006 -0700 [DECNET] Fix to decnet rules compare function Here is a fix to the DECnet rules compare function where we used 32bit values rather than 16bit values. Spotted by Patrick McHardy. Signed-off-by: Steven Whitehouse Signed-off-by: David S. Miller commit d880309ae17783c27016bf4f903782d322d0a2a1 Author: Steven Whitehouse Date: Fri Aug 11 16:43:41 2006 -0700 [DECNET] Fix to multiple tables routing Here is a fix to Patrick McHardy's increase number of routing tables patch for DECnet. I did just test this and it appears to be working fine with this patch. Signed-off-by: Steven Whitehouse Acked-by: Patrick McHardy Signed-off-by: David S. Miller commit b6fe17d6cc5d570b72f8e4da351b593c5a680355 Author: Stephen Hemminger Date: Tue Aug 29 17:06:13 2006 -0700 [NET] netdev: Check name length Some improvements to robust name interface. These API's are safe now by convention, but it is worth providing some safety checks against future bugs. Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit 3696f625e2efa1f1b228b276788274e1eb86fcfa Author: Stephen Hemminger Date: Thu Aug 10 23:36:01 2006 -0700 [HTB]: rbtree cleanup Add code to initialize rb tree nodes, and check for double deletion. This is not a real fix, but I can make it trap sometimes and may be a bandaid for: http://bugzilla.kernel.org/show_bug.cgi?id=6681 Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit 0cef296da9331e871401076b8c0688b2b31fcadd Author: Stephen Hemminger Date: Thu Aug 10 23:35:38 2006 -0700 [HTB]: Use hlist for hash lists. Use hlist instead of list for the hash list. This saves space, and we can check for double delete better. Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit 87990467d387f922103db31678034785d8f21cb7 Author: Stephen Hemminger Date: Thu Aug 10 23:35:16 2006 -0700 [HTB]: Lindent Code was a mess in terms of indentation. Run through Lindent script, and cleanup the damage. Also, don't use, vim magic comment, and substitute inline for __inline__. Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit 18a63e868b04cf949643cc9d2c8a51d8cb5da9c4 Author: Stephen Hemminger Date: Thu Aug 10 23:34:02 2006 -0700 [HTB]: HTB_HYSTERESIS cleanup Change the conditional compilation around HTB_HYSTERSIS since code was splitting mid expression. Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit 9ac961ee05bfc837e5271be34ad7158e90dce7d9 Author: Stephen Hemminger Date: Thu Aug 10 23:33:16 2006 -0700 [HTB]: Remove lock macro. Get rid of the macro's being used to obscure the locking. Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit 3bf72957d2a553c343e4285463ef0a88139bdec4 Author: Stephen Hemminger Date: Thu Aug 10 23:31:08 2006 -0700 [HTB]: Remove broken debug code. The HTB network scheduler had debug code that wouldn't compile and confused and obfuscated the code, remove it. Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit b801f54917b7c6e8540f877ee562cd0725e62ebd Author: Patrick McHardy Date: Thu Aug 10 23:12:34 2006 -0700 [NET]: Increate RT_TABLE_MAX to 2^32 Signed-off-by: Patrick McHardy Signed-off-by: David S. Miller commit abcab268303c22d24fc89fedd35d82271d20f5da Author: Patrick McHardy Date: Thu Aug 10 23:11:47 2006 -0700 [DECNET]: Increase number of possible routing tables to 2^32 Increase the number of possible routing tables to 2^32 by replacing the fixed sized array of pointers by a hash table and replacing iterations over all possible table IDs by hash table walking. Signed-off-by: Patrick McHardy Signed-off-by: David S. Miller commit 1b43af5480c351dbcb2eef478bafe179cbeb6e83 Author: Patrick McHardy Date: Thu Aug 10 23:11:17 2006 -0700 [IPV6]: Increase number of possible routing tables to 2^32 Increase number of possible routing tables to 2^32 by replacing iterations over all possible table IDs by hash table walking. Signed-off-by: Patrick McHardy Signed-off-by: David S. Miller commit 1af5a8c4a11cfed0c9a7f30fcfb689981750599c Author: Patrick McHardy Date: Thu Aug 10 23:10:46 2006 -0700 [IPV4]: Increase number of possible routing tables to 2^32 Increase the number of possible routing tables to 2^32 by replacing the fixed sized array of pointers by a hash table and replacing iterations over all possible table IDs by hash table walking. Signed-off-by: Patrick McHardy Signed-off-by: David S. Miller commit 9e762a4a89b302cb3b26a1f9bb33eff459eaeca9 Author: Patrick McHardy Date: Thu Aug 10 23:09:48 2006 -0700 [NET]: Introduce RTA_TABLE/FRA_TABLE attributes Introduce RTA_TABLE route attribute and FRA_TABLE routing rule attribute to hold 32 bit routing table IDs. Usespace compatibility is provided by continuing to accept and send the rtm_table field, but because of its limited size it can only carry the low 8 bits of the table ID. This implies that if larger IDs are used, _all_ userspace programs using them need to use RTA_TABLE. Signed-off-by: Patrick McHardy Signed-off-by: David S. Miller commit 2dfe55b47e3d66ded5a84caf71e0da5710edf48b Author: Patrick McHardy Date: Thu Aug 10 23:08:33 2006 -0700 [NET]: Use u32 for routing table IDs Use u32 for routing table IDs in net/ipv4 and net/decnet in preparation of support for a larger number of routing tables. net/ipv6 already uses u32 everywhere and needs no further changes. No functional changes are made by this patch. Signed-off-by: Patrick McHardy Signed-off-by: David S. Miller commit d924424aaed116b362c6d0e667d912b77e655085 Author: Stephen Hemminger Date: Thu Aug 10 23:03:23 2006 -0700 [NEIGHBOUR]: Use ALIGN() macro. Rather than opencoding the mask, it looks better to use ALIGN() macro from kernel.h. Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit 1e38bb3a38d08129d08c904b10ea3ba08e22d297 Author: David S. Miller Date: Thu Aug 10 00:22:41 2006 -0700 [NET]: Kill double initialization in sock_alloc_inode. No need to set ei->socket.flags to zero twice. Signed-off-by: David S. Miller commit bf0d52492d82ad70684e17c8a46942c13d0e140e Author: Dave Jones Date: Fri Sep 22 14:00:29 2006 -0700 [NET]: Remove unnecessary config.h includes from net/ config.h is automatically included by kbuild these days. Signed-off-by: Dave Jones Signed-off-by: David S. Miller commit f0fd27d42e39b91f85e1840ec49b072fd6c545b8 Author: Stephen Hemminger Date: Wed Aug 9 21:03:17 2006 -0700 [NET]: sock_register interface changes The sock_register() doesn't change the family, so the protocols can define it read-only. No caller ever checks return value from sock_unregister() Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit 55737fda0bc73cb20f702301d8b52938a5a43630 Author: Stephen Hemminger Date: Fri Sep 1 00:23:39 2006 -0700 [NET]: socket family using RCU Replace the gross custom locking done in socket code for net_family[] with simple RCU usage. Some reordering necessary to avoid sleep issues with sock_alloc. Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit 757dbb494be3309fe41ce4c62f8057d8b41d8897 Author: Stephen Hemminger Date: Wed Aug 9 20:50:00 2006 -0700 [NET]: drop unused elements from net_proto_family Three values in net_proto_family are defined but never used. Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit 89bddce58e85bb18b13f5077e8349ba9a3ee2597 Author: Stephen Hemminger Date: Fri Sep 1 00:19:31 2006 -0700 [NET] socket: code style cleanup Make socket.c conform to current style: * run through Lindent * get rid of unneeded casts * split assignment and comparsion where possible Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit 53fad3cbff120d8987f377eff374cf4db4ecb177 Author: Sridhar Samudrala Date: Wed Aug 9 17:03:17 2006 -0700 [SUNRPC]: Remove the unnecessary check for highmem in xs_sendpages(). Just call kernel_sendpage() directly. Signed-off-by: Sridhar Samudrala Signed-off-by: David S. Miller commit a22ec367b08455f95fa0096ce1999950b6f6911c Author: Steven Whitehouse Date: Wed Aug 9 16:00:57 2006 -0700 [DECNET]: Convert rwlock to spinlock As per Stephen Hemminger's recent patch to ipv4/fib_semantics.c this is the same change but for DECnet. Signed-off-by: Steven Whitehouse Signed-off-by: David S. Miller commit a8731cbf61c8768ea129780b70dc7dfc6795aad4 Author: Steven Whitehouse Date: Wed Aug 9 15:56:46 2006 -0700 [DECNET]: Covert rules to use generic code This patch converts the DECnet rules code to use the generic rules system created by Thomas Graf . Signed-off-by: Steven Whitehouse Acked-by: Thomas Graf Signed-off-by: David S. Miller commit 8f491069b40be5d627007a343f99759e9da6a178 Author: Herbert Xu Date: Wed Aug 9 15:47:12 2006 -0700 [IPV4]: Use network-order dport for all visible inet_lookup_* Right now most inet_lookup_* functions take a host-order hnum instead of a network-order dport because that's how it is represented internally. This means that users of these functions have to be careful about using the right byte-order. To add more confusion, inet_lookup takes a network-order dport unlike all other functions. So this patch changes all visible inet_lookup functions to take a dport and move all dport->hnum conversion inside them. Signed-off-by: Herbert Xu Signed-off-by: David S. Miller commit 832b4c5e184391773e462653aa862a8cab71f38d Author: Stephen Hemminger Date: Tue Aug 29 16:48:09 2006 -0700 [IPV4] fib: convert reader/writer to spinlock Ther is no point in using a more expensive reader/writer lock for a low contention lock like the fib_info_lock. The only reader case is in handling route redirects. Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit b14295532421c40f82ee099fdbd3d011f022e756 Author: Ville Nuorvala Date: Tue Aug 8 16:44:17 2006 -0700 [IPV6]: Make sure fib6_rule_lookup doesn't return NULL The callers of fib6_rule_lookup don't expect it to return NULL, therefore it must return ip6_null_entry whenever fib_rule_lookup fails. Signed-off-by: Ville Nuorvala Signed-off-by: David S. Miller commit 99a92ff50424146ba01a222248fd47a1cd55b78f Author: Herbert Xu Date: Tue Aug 8 02:18:10 2006 -0700 [IPV4]: Uninline inet_lookup_listener By modern standards this function is way too big to be inlined. It's even bigger than __inet_lookup_listener :) Signed-off-by: Herbert Xu Signed-off-by: David S. Miller commit 1a01912ae0a5666c4c24eaae2b4821711e2ad79a Author: Louis Nyffenegger Date: Tue Aug 8 00:56:11 2006 -0700 [INET]: Remove is_setbyuser patch The value is_setbyuser from struct ip_options is never used and set only one time (http://linux-net.osdl.org/index.php/TODO#IPV4). This little patch removes it from the kernel source. Signed-off-by: Louis Nyffenegger Signed-off-by: David S. Miller commit 0298f36a579b5bd7f10f6f6d57e5929977a865a1 Author: David S. Miller Date: Mon Aug 7 21:56:52 2006 -0700 [IPV4]: Kill fib4_rules_clean(). As noted by Adrian Bunk this function is totally unused. Signed-off-by: David S. Miller commit 8423a9aadfaa135fd5fd1ab8bbd4a1e76b4143c9 Author: David S. Miller Date: Mon Aug 7 21:54:37 2006 -0700 [IPV6]: Protect RTM_GETRULE table entry with IPV6_MULTIPLE_TABLES ifdef This is how IPv4 handles this case too. Based upon a patch from Andrew Morton. Signed-off-by: David S. Miller commit 8ce11e6a9faf1f1c849b77104adc1642c46aee95 Author: Adrian Bunk Date: Mon Aug 7 21:50:48 2006 -0700 [NET]: Make code static. This patch makes needlessly global code static. Signed-off-by: Adrian Bunk Signed-off-by: David S. Miller commit e6242e928ef1e4ed853f909a7479e4934f4bcb70 Author: Sridhar Samudrala Date: Mon Aug 7 20:58:01 2006 -0700 [SUNRPC]: Update to use in-kernel sockets API. Signed-off-by: Sridhar Samudrala Acked-by: James Morris Signed-off-by: David S. Miller commit ac5a488ef252ed673cb067843e411f8cc43f7ab9 Author: Sridhar Samudrala Date: Mon Aug 7 20:57:31 2006 -0700 [NET]: Round out in-kernel sockets API This patch implements wrapper functions that provide a convenient way to access the sockets API for in-kernel users like sunrpc, cifs & ocfs2 etc and any future users. Signed-off-by: Sridhar Samudrala Acked-by: James Morris Signed-off-by: David S. Miller commit b63bbc5006a0a62fabc81c4f77e95f16ff16f340 Author: Thomas Graf Date: Mon Aug 7 18:00:57 2006 -0700 [NEIGH]: Move netlink neighbour table bits to linux/neighbour.h rtnetlink_rcv_msg() is not longer required to parse attributes for the neighbour tables layer, remove dependency on obsolete and buggy rta_buf. Signed-off-by: Thomas Graf Signed-off-by: David S. Miller commit ca860fb39b4aa1479e2fea67435a2c1eac9ce789 Author: Thomas Graf Date: Mon Aug 7 18:00:18 2006 -0700 [NEIGH]: Convert neighbour table dumping to new netlink api Also fixes skipping of already dumped neighbours. Signed-off-by: Thomas Graf Signed-off-by: David S. Miller commit 6b3f8674bccbb2e784d01e44373fb730af6cb149 Author: Thomas Graf Date: Mon Aug 7 17:58:53 2006 -0700 [NEIGH]: Convert neighbour table modification to new netlink api Signed-off-by: Thomas Graf Signed-off-by: David S. Miller commit 9067c722cf6930adf1df2d169de9094dd90b0c33 Author: Thomas Graf Date: Mon Aug 7 17:57:44 2006 -0700 [NEIGH]: Move netlink neighbour bits to linux/neighbour.h Moves netlink neighbour bits to linux/neighbour.h. Also moves bits to be exported to userspace from net/neighbour.h to linux/neighbour.h and removes __KERNEL__ guards, userspace is not supposed to be using it. rtnetlink_rcv_msg() is not longer required to parse attributes for the neighbour layer, remove dependency on obsolete and buggy rta_buf. Signed-off-by: Thomas Graf Signed-off-by: David S. Miller commit 8b8aec508302d4e63fd88f47894805115277f70f Author: Thomas Graf Date: Mon Aug 7 17:56:37 2006 -0700 [NEIGH]: Convert neighbour dumping to new netlink api Signed-off-by: Thomas Graf Signed-off-by: David S. Miller commit 5208debd0f1da07bbb350f8b0b142775d4f002ea Author: Thomas Graf Date: Mon Aug 7 17:55:40 2006 -0700 [NEIGH]: Convert neighbour addition to new netlink api Fixes: Return EAFNOSUPPORT if no table matches the specified address family. Signed-off-by: Thomas Graf Signed-off-by: David S. Miller commit a14a49d2b7b9290e87751f21f503f1954267d4c4 Author: Thomas Graf Date: Mon Aug 7 17:53:08 2006 -0700 [NEIGH]: Convert neighbour deletion to new netlink api Fixes: Return ENOENT if the neighbour is not found (was EINVAL) Return EAFNOSUPPORT if no table matches the specified address family. Signed-off-by: Thomas Graf Signed-off-by: David S. Miller commit 3226f6881719e61e00e92b4c85a8ef49aa4d42b1 Author: Patrick McHardy Date: Sun Aug 6 22:24:08 2006 -0700 [IPV6]: Fix policy routing lookup When the lookup in a table returns ip6_null_entry the policy routing lookup returns it instead of continuing in the next table, which effectively means it only searches the local table. Signed-off-by: Patrick McHardy Signed-off-by: David S. Miller commit 6c813a7297e3af4cd7c3458e09e9ee3d161c6830 Author: Patrick McHardy Date: Sun Aug 6 22:22:47 2006 -0700 [IPV6]: Fix crash in ip6_del_rt ip6_null_entry doesn't have rt6i_table set, when trying to delete it the kernel crashes dereferencing table->tb6_lock. Signed-off-by: Patrick McHardy Signed-off-by: David S. Miller commit d7aba67f814729647c938ac6da2d5224b790f926 Author: Patrick McHardy Date: Sat Aug 5 02:20:42 2006 -0700 [IPV6]: Fix thinko in rt6_fill_node This looks like a mistake, the table ID is overwritten again. Signed-off-by: Patrick McHardy Signed-off-by: David S. Miller commit 394f545db6e7e4d7a6a2fa3f543b755ca39d58ac Author: Patrick McHardy Date: Sat Aug 5 00:58:52 2006 -0700 [NETFILTER]: nf_queue: handle GSO packets Handle GSO packets in nf_queue by segmenting them before queueing to avoid breaking GSO in case they get mangled. Signed-off-by: Patrick McHardy Signed-off-by: David S. Miller commit 4cf411de49c65140b3c259748629b561c0d3340f Author: Patrick McHardy Date: Sat Aug 5 00:58:33 2006 -0700 [NETFILTER]: Get rid of HW checksum invalidation Update hardware checksums incrementally to avoid breaking GSO. Signed-off-by: Patrick McHardy Signed-off-by: David S. Miller commit 84fa7933a33f806bbbaae6775e87459b1ec584c0 Author: Patrick McHardy Date: Tue Aug 29 16:44:56 2006 -0700 [NET]: Replace CHECKSUM_HW by CHECKSUM_PARTIAL/CHECKSUM_COMPLETE Replace CHECKSUM_HW by CHECKSUM_PARTIAL (for outgoing packets, whose checksum still needs to be completed) and CHECKSUM_COMPLETE (for incoming packets, device supplied full checksum). Patch originally from Herbert Xu, updated by myself for 2.6.18-rc3. Signed-off-by: Patrick McHardy Signed-off-by: David S. Miller commit 8584d6df39db5601965f9bc5e3bf2fea833ad7bb Author: Patrick McHardy Date: Sat Aug 5 00:56:16 2006 -0700 [NETFILTER]: netbios conntrack: fix compile Fix compile breakage caused by move of IFA_F_SECONDARY to new header file. Signed-off-by: Patrick McHardy Signed-off-by: David S. Miller commit 0844565fb8a9418f5a860aa480c1aef70319c9a2 Author: Thomas Graf Date: Fri Aug 4 23:05:56 2006 -0700 [NET]: Move netlink interface bits to linux/if.h Signed-off-by: Thomas Graf Signed-off-by: David S. Miller commit b60c5115f4abf0b961a18682889798dcfbe6a801 Author: Thomas Graf Date: Fri Aug 4 23:05:34 2006 -0700 [NET]: Convert link dumping to new netlink api Transforms netlink code to dump link tables to use the new netlink api. Makes rtnl_getlink() available regardless of the availability of the wireless extensions. Adding copy_rtnl_link_stats() avoids the structural dependency of struct rtnl_link_stats on struct net_device_stats and thus avoids troubles later on. Signed-off-by: Thomas Graf Signed-off-by: David S. Miller commit da5e0494c542dddc56a1f1edfd30310ea30f41ff Author: Thomas Graf Date: Thu Aug 10 21:17:37 2006 -0700 [NET]: Convert link modification to new netlink api Transforms do_setlink() into rtnl_setlink() using the new netlink api. A warning message printed to the console is added in the event that a change request fails while part of the change request has been comitted already. The ioctl() based nature of net devices makes it almost impossible to move on to atomic netlink operations without obsoleting some of the functionality. Signed-off-by: Thomas Graf Signed-off-by: David S. Miller commit 1823730fbc89fadde72a7bb3b7bdf03cc7b8835c Author: Thomas Graf Date: Fri Aug 4 23:04:54 2006 -0700 [IPv4]: Move interface address bits to linux/if_addr.h Signed-off-by: Thomas Graf Signed-off-by: David S. Miller commit 47f68512d2685431f1781830dfcbab31bda87644 Author: Thomas Graf Date: Fri Aug 4 23:04:36 2006 -0700 [IPV4]: Convert address dumping to new netlink api Signed-off-by: Thomas Graf Signed-off-by: David S. Miller commit dfdd5fd4e93d98e06be9ac9db84e3b98c6c26706 Author: Thomas Graf Date: Fri Aug 4 23:04:17 2006 -0700 [IPV4]: Convert address deletion to new netlink api Fixes various unvalidated netlink attributes causing memory corruptions when left empty by userspace. Signed-off-by: Thomas Graf Signed-off-by: David S. Miller commit 5c7539781d392629fb40b04aad9a1f197b66cd01 Author: Thomas Graf Date: Fri Aug 4 23:03:53 2006 -0700 [IPV4]: Convert address addition to new netlink api Adds rtm_to_ifaddr() transforming a netlink message to a struct in_ifaddr. Fixes various unvalidated netlink attributes causing memory corruptions when left empty by userspace applications. Signed-off-by: Thomas Graf Signed-off-by: David S. Miller commit bf8b79e444a748963c71d2a58709e1ce5597e1b5 Author: Thomas Graf Date: Fri Aug 4 23:03:29 2006 -0700 [NETLINK]: Convert core netlink handling to new netlink api Fixes a theoretical memory and locking leak when the size of the netlink header would exceed the skb tailroom. Signed-off-by: Thomas Graf Signed-off-by: David S. Miller commit fe4944e59c357f945f81bc67edb7ed1392e875ad Author: Thomas Graf Date: Fri Aug 4 23:03:05 2006 -0700 [NETLINK]: Extend netlink messaging interface Adds: nlmsg_get_pos() return current position in message nlmsg_trim() trim part of message nla_reserve_nohdr(skb, len) reserve room for an attribute w/o hdr nla_put_nohdr(skb, len, data) add attribute w/o hdr nla_find_nested() find attribute in nested attributes Fixes nlmsg_new() to take allocation flags and consider size. Signed-off-by: Thomas Graf Signed-off-by: David S. Miller commit e1ef4bf23b1ced0bf78a1c98289f746486e5c912 Author: Thomas Graf Date: Fri Aug 4 03:39:22 2006 -0700 [IPV4]: Use Protocol Independant Policy Routing Rules Framework Signed-off-by: Thomas Graf Signed-off-by: David S. Miller commit 101367c2f8c464ea96643192673aa18d88e6336d Author: Thomas Graf Date: Fri Aug 4 03:39:02 2006 -0700 [IPV6]: Policy Routing Rules Adds support for policy routing rules including a new local table for routes with a local destination. Signed-off-by: Thomas Graf Signed-off-by: David S. Miller commit 14c0b97ddfc2944982d078b8e33b088840068976 Author: Thomas Graf Date: Fri Aug 4 03:38:38 2006 -0700 [NET]: Protocol Independant Policy Routing Rules Framework Derived from net/ipv/fib_rules.c Signed-off-by: Thomas Graf Signed-off-by: David S. Miller commit c71099acce933455123ee505cc75964610a209ad Author: Thomas Graf Date: Fri Aug 4 23:20:06 2006 -0700 [IPV6]: Multiple Routing Tables Adds the framework to support multiple IPv6 routing tables. Currently all automatically generated routes are put into the same table. This could be changed at a later point after considering the produced locking overhead. Signed-off-by: Thomas Graf Signed-off-by: David S. Miller commit 5d0bbeeb144f631150881712607345c532e38e7e Author: Thomas Graf Date: Fri Aug 4 03:37:36 2006 -0700 [IPV6]: Remove ndiscs rt6_lock dependency (Ab)using rt6_lock wouldn't work anymore if rt6_lock is converted into a per table lock. Signed-off-by: Thomas Graf Signed-off-by: David S. Miller commit 8161327311fe4da1684ed08015e141feb9a0a737 Author: Paul Moore Date: Thu Aug 3 16:50:39 2006 -0700 [NetLabel]: tie NetLabel into the Kconfig system Modify the net/Kconfig file to enable selecting the NetLabel Kconfig options. Signed-off-by: Paul Moore Signed-off-by: David S. Miller commit 7420ed23a4f77480b5b7b3245e5da30dd24b7575 Author: Venkat Yekkirala Date: Fri Aug 4 23:17:57 2006 -0700 [NetLabel]: SELinux support Add NetLabel support to the SELinux LSM and modify the socket_post_create() LSM hook to return an error code. The most significant part of this patch is the addition of NetLabel hooks into the following SELinux LSM hooks: * selinux_file_permission() * selinux_socket_sendmsg() * selinux_socket_post_create() * selinux_socket_sock_rcv_skb() * selinux_socket_getpeersec_stream() * selinux_socket_getpeersec_dgram() * selinux_sock_graft() * selinux_inet_conn_request() The basic reasoning behind this patch is that outgoing packets are "NetLabel'd" by labeling their socket and the NetLabel security attributes are checked via the additional hook in selinux_socket_sock_rcv_skb(). NetLabel itself is only a labeling mechanism, similar to filesystem extended attributes, it is up to the SELinux enforcement mechanism to perform the actual access checks. In addition to the changes outlined above this patch also includes some changes to the extended bitmap (ebitmap) and multi-level security (mls) code to import and export SELinux TE/MLS attributes into and out of NetLabel. Signed-off-by: Paul Moore Signed-off-by: David S. Miller commit 96cb8e3313c7a12e026c1ed510522ae6f6023875 Author: Paul Moore Date: Thu Aug 3 16:48:59 2006 -0700 [NetLabel]: CIPSOv4 and Unlabeled packet integration Add CIPSO/IPv4 and unlabeled packet management to the NetLabel subsystem. The CIPSO/IPv4 changes allow the configuration of CIPSO/IPv4 within the overall NetLabel framework. The unlabeled packet changes allows NetLabel to pass unlabeled packets without error. Signed-off-by: Paul Moore Signed-off-by: David S. Miller commit d15c345fe3b8dfda0fa5a1d2143a35fffa746a43 Author: Paul Moore Date: Thu Aug 3 16:48:37 2006 -0700 [NetLabel]: core NetLabel subsystem Add a new kernel subsystem, NetLabel, to provide explicit packet labeling services (CIPSO, RIPSO, etc.) to LSM developers. NetLabel is designed to work in conjunction with a LSM to intercept and decode security labels on incoming network packets as well as ensure that outgoing network packets are labeled according to the security mechanism employed by the LSM. The NetLabel subsystem is configured through a Generic NETLINK interface described in the header files included in this patch. Signed-off-by: Paul Moore Signed-off-by: David S. Miller commit 446fda4f26822b2d42ab3396aafcedf38a9ff2b6 Author: Paul Moore Date: Thu Aug 3 16:48:06 2006 -0700 [NetLabel]: CIPSOv4 engine Add support for the Commercial IP Security Option (CIPSO) to the IPv4 network stack. CIPSO has become a de-facto standard for trusted/labeled networking amongst existing Trusted Operating Systems such as Trusted Solaris, HP-UX CMW, etc. This implementation is designed to be used with the NetLabel subsystem to provide explicit packet labeling to LSM developers. The CIPSO/IPv4 packet labeling works by the LSM calling a NetLabel API function which attaches a CIPSO label (IPv4 option) to a given socket; this in turn attaches the CIPSO label to every packet leaving the socket without any extra processing on the outbound side. On the inbound side the individual packet's sk_buff is examined through a call to a NetLabel API function to determine if a CIPSO/IPv4 label is present and if so the security attributes of the CIPSO label are returned to the caller of the NetLabel API function. Signed-off-by: Paul Moore Signed-off-by: David S. Miller commit 11a03f78fbf15a866ba3bf6359a75cdfd1ced703 Author: Paul Moore Date: Thu Aug 3 16:46:20 2006 -0700 [NetLabel]: core network changes Changes to the core network stack to support the NetLabel subsystem. This includes changes to the IPv4 option handling to support CIPSO labels. Signed-off-by: Paul Moore Signed-off-by: David S. Miller commit 8802f616f6de8576805f32e47602816f141118f2 Author: Paul Moore Date: Thu Aug 3 16:45:49 2006 -0700 [NetLabel]: documentation Documentation for the NetLabel system, this includes a basic overview of how NetLabel works, how LSM developers can integrate it into their favorite LSM, as well as documentation on the CIPSO related sysctl variables. Also, due to the difficulty of finding expired IETF drafts, I am including the IETF CIPSO draft that is the basis of the NetLabel CIPSO implementation. Signed-off-by: Paul Moore Signed-off-by: David S. Miller commit a51c64f1e5c2876eab2a32955acd9e8015c91c15 Author: Venkat Yekkirala Date: Thu Jul 27 22:01:34 2006 -0700 [MLSXFRM]: Fix build with SECURITY_NETWORK_XFRM disabled. The following patch will fix the build problem (encountered by Andrew Morton) when SECURITY_NETWORK_XFRM is not enabled. As compared to git-net-selinux_xfrm_decode_session-build-fix.patch in -mm, this patch sets the return parameter sid to SECSID_NULL in selinux_xfrm_decode_session() and handles this value in the caller selinux_inet_conn_request() appropriately. Signed-off-by: Venkat Yekkirala Acked-by: James Morris Signed-off-by: David S. Miller commit 4237c75c0a35535d7f9f2bfeeb4b4df1e068a0bf Author: Venkat Yekkirala Date: Mon Jul 24 23:32:50 2006 -0700 [MLSXFRM]: Auto-labeling of child sockets This automatically labels the TCP, Unix stream, and dccp child sockets as well as openreqs to be at the same MLS level as the peer. This will result in the selection of appropriately labeled IPSec Security Associations. This also uses the sock's sid (as opposed to the isec sid) in SELinux enforcement of secmark in rcv_skb and postroute_last hooks. Signed-off-by: Venkat Yekkirala Signed-off-by: David S. Miller commit cb969f072b6d67770b559617f14e767f47e77ece Author: Venkat Yekkirala Date: Mon Jul 24 23:32:20 2006 -0700 [MLSXFRM]: Default labeling of socket specific IPSec policies This defaults the label of socket-specific IPSec policies to be the same as the socket they are set on. Signed-off-by: Venkat Yekkirala Signed-off-by: David S. Miller commit beb8d13bed80f8388f1a9a107d07ddd342e627e8 Author: Venkat Yekkirala Date: Fri Aug 4 23:12:42 2006 -0700 [MLSXFRM]: Add flow labeling This labels the flows that could utilize IPSec xfrms at the points the flows are defined so that IPSec policy and SAs at the right label can be used. The following protos are currently not handled, but they should continue to be able to use single-labeled IPSec like they currently do. ipmr ip_gre ipip igmp sit sctp ip6_tunnel (IPv6 over IPv6 tunnel device) decnet Signed-off-by: Venkat Yekkirala Signed-off-by: David S. Miller commit 4e2ba18eae7f370c7c3ed96eaca747cc9b39f917 Author: Venkat Yekkirala Date: Mon Jul 24 23:31:14 2006 -0700 [MLSXFRM]: Add security context to acquire messages using PF_KEY This includes the security context of a security association created for use by IKE in the acquire messages sent to IKE daemons using PF_KEY. This would allow the daemons to include the security context in the negotiation, so that the resultant association is unique to that security context. Signed-off-by: Venkat Yekkirala Signed-off-by: David S. Miller commit 0d681623d30c6565e8b62889f3aa3f4d4662c3e8 Author: Serge Hallyn Date: Mon Jul 24 23:30:44 2006 -0700 [MLSXFRM]: Add security context to acquire messages using netlink This includes the security context of a security association created for use by IKE in the acquire messages sent to IKE daemons using netlink/xfrm_user. This would allow the daemons to include the security context in the negotiation, so that the resultant association is unique to that security context. Signed-off-by: Serge Hallyn Signed-off-by: David S. Miller commit e0d1caa7b0d5f02e4f34aa09c695d04251310c6c Author: Venkat Yekkirala Date: Mon Jul 24 23:29:07 2006 -0700 [MLSXFRM]: Flow based matching of xfrm policy and state This implements a seemless mechanism for xfrm policy selection and state matching based on the flow sid. This also includes the necessary SELinux enforcement pieces. Signed-off-by: Venkat Yekkirala Signed-off-by: David S. Miller commit b6340fcd761acf9249b3acbc95c4dc555d9beb07 Author: Venkat Yekkirala Date: Mon Jul 24 23:28:37 2006 -0700 [MLSXFRM]: Add security sid to flowi This adds security to flow key for labeling of flows as also to allow for making flow cache lookups based on the security label seemless. Signed-off-by: Venkat Yekkirala Signed-off-by: David S. Miller commit 892c141e62982272b9c738b5520ad0e5e1ad7b42 Author: Venkat Yekkirala Date: Fri Aug 4 23:08:56 2006 -0700 [MLSXFRM]: Add security sid to sock This adds security for IP sockets at the sock level. Security at the sock level is needed to enforce the SELinux security policy for security associations even when a sock is orphaned (such as in the TCP LAST_ACK state). This will also be used to enforce SELinux controls over data arriving at or leaving a child socket while it's still waiting to be accepted. Signed-off-by: Venkat Yekkirala Signed-off-by: David S. Miller commit 08554d6b33e60aa8ee40bbef94505941c0eefef2 Author: Venkat Yekkirala Date: Mon Jul 24 23:27:16 2006 -0700 [MLSXFRM]: Define new SELinux service routine This defines a routine that combines the Type Enforcement portion of one sid with the MLS portion from the other sid to arrive at a new sid. This would be used to define a sid for a security association that is to be negotiated by IKE as well as for determing the sid for open requests and connection-oriented child sockets. Signed-off-by: Venkat Yekkirala Signed-off-by: David S. Miller commit 51bd39860ff829475aef611a3234309e37e090d9 Author: Venkat Yekkirala Date: Mon Jul 24 23:26:30 2006 -0700 [MLSXFRM]: Granular IPSec associations for use in MLS environments The current approach to labeling Security Associations for SELinux purposes uses a one-to-one mapping between xfrm policy rules and security associations. This doesn't address the needs of real world MLS (Multi-level System, traditional Bell-LaPadula) environments where a single xfrm policy rule (pertaining to a range, classified to secret for example) might need to map to multiple Security Associations (one each for classified, secret, top secret and all the compartments applicable to these security levels). This patch set addresses the above problem by allowing for the mapping of a single xfrm policy rule to multiple security associations, with each association used in the security context it is defined for. It also includes the security context to be used in IKE negotiation in the acquire messages sent to the IKE daemon so that a unique SA can be negotiated for each unique security context. A couple of bug fixes are also included; checks to make sure the SAs used by a packet match policy (security context-wise) on the inbound and also that the bundle used for the outbound matches the security context of the flow. This patch set also makes the use of the SELinux sid in flow cache lookups seemless by including the sid in the flow key itself. Also, open requests as well as connection-oriented child sockets are labeled automatically to be at the same level as the peer to allow for use of appropriately labeled IPSec associations. Description of changes: A "sid" member has been added to the flow cache key resulting in the sid being available at all needed locations and the flow cache lookups automatically using the sid. The flow sid is derived from the socket on the outbound and the SAs (unlabeled where an SA was not used) on the inbound. Outbound case: 1. Find policy for the socket. 2. OLD: Find an SA that matches the policy. NEW: Find an SA that matches BOTH the policy and the flow/socket. This is necessary since not every SA that matches the policy can be used for the flow/socket. Consider policy range Secret-TS, and SAs each for Secret and TS. We don't want a TS socket to use the Secret SA. Hence the additional check for the SA Vs. flow/socket. 3. NEW: When looking thru bundles for a policy, make sure the flow/socket can use the bundle. If a bundle is not found, create one, calling for IKE if necessary. If using IKE, include the security context in the acquire message to the IKE daemon. Inbound case: 1. OLD: Find policy for the socket. NEW: Find policy for the incoming packet based on the sid of the SA(s) it used or the unlabeled sid if no SAs were used. (Consider a case where a socket is "authorized" for two policies (unclassified-confidential, secret-top_secret). If the packet has come in using a secret SA, we really ought to be using the latter policy (secret-top_secret).) 2. OLD: BUG: No check to see if the SAs used by the packet agree with the policy sec_ctx-wise. (It was indicated in selinux_xfrm_sock_rcv_skb() that this was being accomplished by (x->id.spi == tmpl->id.spi || !tmpl->id.spi) in xfrm_state_ok, but it turns out tmpl->id.spi would normally be zero (unless xfrm policy rules specify one at the template level, which they usually don't). NEW: The socket is checked for access to the SAs used (based on the sid of the SAs) in selinux_xfrm_sock_rcv_skb(). Forward case: This would be Step 1 from the Inbound case, followed by Steps 2 and 3 from the Outbound case. Outstanding items/issues: - Timewait acknowledgements and such are generated in the current/upstream implementation using a NULL socket resulting in the any_socket sid (SYSTEM_HIGH) to be used. This problem is not addressed by this patch set. This patch: Add new flask definitions to SELinux Adds a new avperm "polmatch" to arbitrate flow/state access to a xfrm policy rule. Signed-off-by: Venkat Yekkirala Signed-off-by: David S. Miller commit 734a56285dbeedc6cc10aef6f700eeab7c65ea9f Author: David Woodhouse Date: Fri Sep 22 18:41:20 2006 +0100 Remove accidentally-added include/linux/utsrelease.h Signed-off-by: David Woodhouse commit e4e3295f0c0e1a09a46522359e24c0569e2e7b47 Author: David Woodhouse Date: Fri Sep 22 11:05:42 2006 +0100 Revert "[MTD] blkdev helper code: fix printk format warning" This reverts commit 668040fcd1e06fc3e68a92708cbdfa5a52c37d3c. The 'flags' field of the struct request is 'unsigned long'. Quite how Randy came to see 'long int format, different type arg' I don't know, but it doesn't seem to be the case any more. Signed-off-by: David Woodhouse commit 51197abf29657373bcf9803d87da3c3d8fc3a37e Author: Claudio Lanconelli Date: Fri Sep 22 11:01:37 2006 +0100 [MTD] Add SSFDC (SmartMedia) read-only translation layer Signed-off-by: Claudio Lanconelli Signed-off-by: David Woodhouse commit 98aacdfde05ccf512d4395eed0d4894eea2d163c Author: Jiri Slaby Date: Tue Sep 19 21:55:28 2006 +0200 [MTD] pmc551 pci cleanup Use pci_resource_start for getting start of regions and pci_iomap to not doing this directly by using dev->resource... (Thanks to Rolf Eike Beer) Signed-off-by: Jiri Slaby Signed-off-by: David Woodhouse commit 7fefb924d7aed7116fe2a68cdbfc9e36318e7300 Author: Jiri Slaby Date: Tue Sep 19 21:55:18 2006 +0200 [MTD] pmc551 use kzalloc Use kzalloc instad of kmalloc+memset(0). Signed-off-by: Jiri Slaby Signed-off-by: David Woodhouse commit cdf0a7d16980858e72f5d26bfe48abf01112fab5 Author: Jiri Slaby Date: Tue Sep 19 21:55:06 2006 +0200 [MTD] pmc551 whitespace cleanup Spaces were used for indent, there was more than 80 columns per line. Get rid of that stuff. Signed-off-by: Jiri Slaby Signed-off-by: David Woodhouse commit e417fcfb857b809e5dabc9b252ad70f090d553d1 Author: Lennert Buytenhek Date: Thu Sep 21 03:47:48 2006 +0200 [MTD] Remove iq80310 map driver The iq80310 mtd map driver depends on ARCH_IQ80310, which isn't defined anywhere in the tree (as we don't have 80310 support), and furthermore, everything the driver does can be done with physmap instead. Signed-off-by: Lennert Buytenhek Signed-off-by: David Woodhouse commit 6a545a0d6021a4d759ba6d0c1082d1abf8d64c84 Author: Frank Haverkamp Date: Wed Sep 20 17:24:52 2006 +0200 [MTD NAND] Fix in typo ndfc.c causing wrong ECC layout Due to this typo, a wrong ECC layout table is chosen. Signed-off-by: Frank Haverkamp Signed-off-by: David Woodhouse commit 17c2dae3aaff9b1e5d83996a5f098ad693f3aeca Author: Lennert Buytenhek Date: Thu Sep 21 23:16:48 2006 +0200 [MTD] physmap: add power management support Implement PM handling for physmap. Idea from Steven Scholz, patch by David Anders. Signed-off-by: Lennert Buytenhek Signed-off-by: David Woodhouse commit 25f0c659fe64832d8ee06aa623fffaad708dcf8b Author: Amol Lad Date: Thu Sep 21 18:12:43 2006 +0530 ioremap balanced with iounmap for drivers/mtd subsystem ioremap must be balanced by an iounmap and failing to do so can result in a memory leak. Tested (compilation only) with: - allmodconfig - Modifying drivers/mtd/maps/Kconfig and drivers/mtd/nand/Kconfig to make sure that the changed file is compiling without warning Signed-off-by: Amol Lad Signed-off-by: David Woodhouse commit dd8e9ed6ed544e2b924429d29cd2a6b55590109b Author: Alan Cox Date: Fri Sep 22 10:19:20 2006 +0100 [MTD] Switch to pci_get_device and do ref counting Signed-off-by: Alan Cox Cc: Greg KH Signed-off-by: Andrew Morton Signed-off-by: David Woodhouse commit 668040fcd1e06fc3e68a92708cbdfa5a52c37d3c Author: Randy Dunlap Date: Fri Sep 22 10:17:28 2006 +0100 [MTD] blkdev helper code: fix printk format warning Fix printk format warning(s): drivers/mtd/mtd_blkdevs.c:72: warning: long int format, different type arg (arg 2) Signed-off-by: Randy Dunlap Signed-off-by: Andrew Morton Signed-off-by: David Woodhouse commit f40a6f1cc7fe522e51e1ac4c7ab3035a434f2cef Author: Brian Walsh Date: Fri Sep 22 10:16:16 2006 +0100 [MTD] Fix ixp4xx partition parsing. If the amount of flash is not divisible by 2 then the mask in parse_mtd_partitions would fail to work as designed. Passing in the base address corrects this problem. Signed-off-by: Brian Walsh Cc: Deepak Sanexa Cc: Thomas Gleixner Signed-off-by: Andrew Morton Signed-off-by: David Woodhouse commit f2dd117fa51dd8fc071b1352254c0d14d2399b0a Author: Michal Piotrowski Date: Fri Sep 22 10:13:46 2006 +0100 [JFFS2] Remove unneeded ifdefs from jffs2_fs_i.h We certainly don't need the check for Linux version > 2.5.2, and in fact we can also live without the __ECOS check, since we can just add it back in the eCos git tree which is automatically derived from the Linux fs/jffs2 subdirectory in the upstream git tree. Signed-off-by: Michal Piotrowski Signed-off-by: Andrew Morton Signed-off-by: David Woodhouse commit cbc88ba83ff772d8c47d95ba0fef38ad888d6fcf Author: Michal Piotrowski Date: Fri Sep 22 10:09:44 2006 +0100 [MTD NAND] Remove old code in au1550nd.c Signed-off-by: Michal Piotrowski Signed-off-by: Andrew Morton Signed-off-by: David Woodhouse commit 187ef15268e638603dea55a91fdfa29feaed6d13 Author: HÃ¥vard Skinnemoen Date: Fri Sep 22 10:07:08 2006 +0100 [MTD] Unlock NOR flash automatically where necessary Introduce the MTD_STUPID_LOCK flag which indicates that the flash chip is always locked after power-up, so all sectors need to be unlocked before it is usable. If this flag is set, and the chip provides an unlock() operation, mtd_add_device will unlock the whole MTD device if it's writeable. This means that non-writeable partitions will stay locked. Set MTD_STUPID_LOCK in fixup_use_atmel_lock() so that these chips will work as expected. Signed-off-by: HÃ¥vard Skinnemoen Signed-off-by: Andrew Morton Signed-off-by: David Woodhouse commit 1694176a210189312e31b083bac1e1688981219a Author: David Woodhouse Date: Fri Sep 22 08:00:42 2006 +0100 Remove offsetof() from user-visible It's not used by anything user-visible, and it make g++ unhappy. Signed-off-by: David Woodhouse commit 69917c26c840e7de94522bf90fb190de63bf92bd Author: Benjamin Herrenschmidt Date: Fri Sep 22 12:56:30 2006 +1000 [POWERPC] Fix ohare IDE irq workaround on old powermacs Looks like a workaround for old bogus OF bitrot... This fixes it and hence fixes boot on some performa machines. Signed-off-by: Benjamin Herrenschmidt Signed-off-by: Paul Mackerras commit e102926385b56e593b995ecc433f041b498a49e1 Author: Linas Vepstas Date: Thu Sep 21 18:25:56 2006 -0500 [POWERPC] EEH: Power4 systems sometimes need multiple resets. On detection of an EEH error, some Power4 systems seem to occasionally want to be reset twice before they report themselves as fully recovered. This patch re-arranges the code to attempt additional resets if the first one doesn't take. Signed-off-by: Linas Vepstas Signed-off-by: Paul Mackerras commit 3d574abd59d49173ac3096a19575a2f7430505be Author: Scott Wood Date: Thu Sep 21 13:11:52 2006 -0500 [POWERPC] Include in arch/powerpc/sysdev/fsl_soc.h for phys_addr_t. This patch causes fsl_soc.h to import the definition of phys_addr_t itself, rather than relying on its includer to do so. Signed-off-by: Scott Wood Signed-off-by: Paul Mackerras commit cc9881ce371dc7ff3ef5404feda59566fabaf521 Author: Nathan Lynch Date: Thu Sep 21 14:31:13 2006 -0500 [POWERPC] Demacrofy arch/powerpc/platforms/maple/pci.c Noticed that the U3_*CFA macros have some typos: #define U3_HT_CFA0(devfn, off) \ ((((unsigned long)devfn) << 8) | offset) (refers to offset rather than off) #define U3_AGP_CFA0(devfn, off) \ ((1 << (unsigned long)PCI_SLOT(dev_fn)) \ | (((unsigned long)PCI_FUNC(dev_fn)) << 8) \ (refers to dev_fn rather than devfn) Things happen to work, but there doesn't seem to be any reason these shouldn't be functions. Overall behavior should be unchanged. Signed-off-by: Nathan Lynch Signed-off-by: Paul Mackerras commit d608df5c7da6ee968aa2ad43c596d5f8d4022299 Author: Nathan Lynch Date: Thu Sep 21 14:25:34 2006 -0500 [POWERPC] Maple U3 HT - reject inappropriate config space access When there is a PCI-X mode 2 capable device behind the HT<->PCI-X bridge, the pci core decides that the device has the extended 4K config space, even though the bus is not operating in mode 2. This is because the u3_ht pci ops silently accept offsets greater than 255 but use only the 8 least significant bits, which means reading at offset 0x100 gets the data at offset 0x0, and causes confusion for lspci. Reject accesses to configuration space offsets greater than 255. Signed-off-by: Nathan Lynch Signed-off-by: Paul Mackerras commit ed709d134deeaea7925a3d748b33ca7e58cc683d Author: Scott Wood Date: Thu Sep 21 13:10:51 2006 -0500 [POWERPC] Fix IPIC pending register assignments This patch fixes the assignment of pending registers to IRQ numbers for the IPIC; the code previously assigned all IRQs to the high pending word regardless of which word the interrupt belonged to. Signed-off-by: Scott Wood Signed-off-by: Paul Mackerras commit 7d452c326c2ac879aced884411a0fe3ba75d9c87 Author: Arnd Bergmann Date: Thu Sep 21 12:29:51 2006 +0200 [POWERPC] powerpc: fix building gdb against asm/ptrace.h Ulrich Weigand found a bug with the current version of the asm-powerpc/ptrace.h that prevents building at least the SPU target version of gdb, since some ptrace opcodes are not defined. The problem seems to have originated in the merging of 32 and 64 bit versions of that file, the problem is that some opcodes are only valid on 64 bit kernels, but are also used by 32 bit programs, so they can't depends on the __powerpc64__ symbol. Signed-off-by: Arnd Bergmann Signed-off-by: Paul Mackerras commit 2954da897c40de0f3abdd6a100f2978f30d04068 Author: Michael Ellerman Date: Thu Sep 21 18:21:35 2006 +1000 [POWERPC] Remove DISCONTIGMEM cruft from page.h This looks like cruft to me, these functions don't exist AFAICT, and I can't see that it's possible to even enable DISCONTIGMEM on powerpc anymore. CC'ing some folks who might know better, based on the who-touched-it-last principle. Signed-off-by: Michael Ellerman Signed-off-by: Paul Mackerras commit caf81329c39b5c48f6cc0d78fa159b5a587e37f9 Author: Stephen Rothwell Date: Thu Sep 21 18:00:00 2006 +1000 [POWERPC] Merge iSeries i/o operations with the rest This patch changes the io operations so that they are out of line if CONFIG_PPC_ISERIES is set and includes a firmware feature check in that case. Signed-off-by: Stephen Rothwell Signed-off-by: Paul Mackerras commit b8c06a2ab68661bf841e21003f4447f8d422aed3 Author: Steve French Date: Fri Sep 22 01:14:52 2006 +0000 [CIFS] statfs for cifs unix extensions no longer experimental Signed-off-by: Steve French commit 7276b3b0c77101f8b3f4e45e89a29cf9045e831a Author: Steven Whitehouse Date: Thu Sep 21 17:05:23 2006 -0400 [GFS2] Tidy up meta_io code Fix a bug in the directory reading code, where we might have dereferenced a NULL pointer in case of OOM. Updated the directory code to use the new & improved version of gfs2_meta_ra() which now returns the first block that was being read. Previously it was releasing it requiring following code to grab the block again at each point it was called. Also turned off readahead on directory lookups since we are reading a hash table, and therefore reading the entries in order is very unlikely. Readahead is still used for all other calls to the directory reading function (e.g. when growing the hash table). Removed the DIO_START constant. Everywhere this was used, it was used to unconditionally start i/o aside from a couple of places, so I've removed it and made the couple of exceptions to this rule into separate functions. Also hunted through the other DIO flags and removed them as arguments from functions which were always called with the same combination of arguments. Updated gfs2_meta_indirect_buffer to be a bit more efficient and hopefully also be a bit easier to read. Signed-off-by: Steven Whitehouse commit 3e14a2867d8ccf555fe6e318eac0f8200399fe1c Author: Michel Daenzer Date: Fri Sep 22 04:26:35 2006 +1000 drm: Use register writes instead of BITBLT_MULTI packets for buffer swap blits This takes up two more ring buffer entries per rectangle blitted but makes sure the blit is performed top to bottom, reducing the likelyhood of tearing. Signed-off-by: Dave Airlie commit 54a56ac583ac66f3f4bc2c4cc3ef9b0676770742 Author: Dave Airlie Date: Fri Sep 22 04:25:09 2006 +1000 drm: use radeon specific names for radeon flags Signed-off-by: Dave Airlie commit 2f02cc3fb8960754a2a5df6a33f53528e0d830be Author: Eric Anholt Date: Fri Sep 22 04:19:34 2006 +1000 drm: add device/vendor id to drm_device_t for compat with FreeBSD drivers Signed-off-by: Dave Airlie commit e08870c87ab5b0c0c3cb05d0d0041240736493e4 Author: Thomas Hellstrom Date: Fri Sep 22 04:18:37 2006 +1000 drm: allow multiple addMaps with the same 32-bit map offsset. Reported on -mm kernels. Signed-off-by: Dave Airlie commit 214ff13d9ebbba7940f29bc89669f85f12533083 Author: Michel Daenzer Date: Fri Sep 22 04:12:11 2006 +1000 drm: fd.o Bug #7595: Avoid u32 overflows in radeon_check_and_fixup_offset(). The overflows could cause valid offsets to get rejected under some circumstances, e.g. when the framebuffer resides at the very end of the card's address space. Signed-off-by: Dave Airlie commit 47cc140931cc03076014fdbfdd512d6dd9d74d34 Author: Thomas Hellstrom Date: Fri Sep 22 04:04:18 2006 +1000 drm: Fix hashtab implementation leaking illegal error codes to user space. reported by Dave Airlie Signed-off-by: Dave Airlie commit 9b1a51b69c89028f18277e235533c160e7506ebb Author: Dave Airlie Date: Fri Sep 22 03:37:19 2006 +1000 drm: domain changes broke ppc r200 Freedesktop.org bug #8246 The domain changes regressed on PPC, go back to just using 0, as X.org's domain support is crap Signed-off-by: Dave Airlie commit 1f27ce6ab7ad7abf014ef7f181d494cf1107f9db Author: Dave Airlie Date: Sun Aug 27 11:11:14 2006 +1000 drm: fixup setversion return codes.. Frederik Deweerdt noticed some badness in setversion returns, however just making it work, breaks things... this code is hairy with backwards compat... Signed-off-by: Dave Airlie commit 46acbf13fb280e69c5cafe7c837d5a27c6e380c3 Author: Dave Airlie Date: Sun Aug 27 11:09:46 2006 +1000 drm: fixup i915 error codes Frederik Deweerdt pointed this out, I fixed a missing DRM error wrapper also. Signed-off-by: Dave Airlie commit b15ec36806ce3b89a2fddce958de9370efb249da Author: Dave Airlie Date: Sat Aug 19 17:43:52 2006 +1000 drm: realign sosme radeon code with drm git tree this applies some minor cleanups for the radeon driver, to use the 3D flush and reset the AGP flags on X recycle Signed-off-by: Dave Airlie commit d40c8533a5b8ca1887f81ae1c81136f3c40a8488 Author: Dave Airlie Date: Sat Aug 19 17:40:50 2006 +1000 drm: realign via driver with drm git tree This just realigns some code/whitespace between the kernel and main tree Signed-off-by: Dave Airlie commit 1f4eccfdb2a5f8b2751aea8cf2d6b00401c156e0 Author: Thomas Hellstrom Date: Fri Aug 18 16:37:10 2006 +1000 drm: remove hash tables on drm exit Signed-off-by: Dave Airlie commit fb41e54be4bad6f64d343d051d699efde3c92e2c Author: Adrian Bunk Date: Wed Aug 16 11:55:18 2006 +1000 drm: cleanups This patch contains the following cleanups: - make 3 needlessly global functions static - sis_mm.c: fix compile warnings with CONFIG_FB_SIS=y Signed-off-by: Adrian Bunk Signed-off-by: Dave Airlie commit c7aed1790254aed286b7bfb51167c2676df86f4b Author: Denis Vlasenko Date: Wed Aug 16 11:54:07 2006 +1000 drm: i810_dma.c: fix pointer arithmetic for 64-bit target First warning result from open-coded PTR_ERR, the rest is caused by code like this: *(u32 *) ((u32) buf_priv->kernel_virtual + used) I've also fixed a missing PTR_ERR in i830_dma.c Signed-off-by: Dave Airlie commit 0a0c721dc5d0de011e5d363cd454c60c66ca00ec Author: Thomas Hellstrom Date: Wed Aug 16 09:21:56 2006 +1000 drm: avoid kernel oops in some error paths calling drm_lastclose Signed-off-by: Dave Airlie commit bd5af0781aed12b9707d238c17cf55d46f9bf98d Author: Chuck Short Date: Wed Aug 16 09:17:53 2006 +1000 drm: allow detection of new VIA chipsets Update pci ids. patch location: http://www.kernel.org/git/?p=linux/kernel/git/bcollins/ubuntu-dapper.git;a=c ommitdiff;h=5195a64a27550a279b2ecaf400066a3823f2d053 Signed-off-by: Chuck Short Signed-off-by: Ben Collins Signed-off-by: Andrew Morton Signed-off-by: Dave Airlie commit 78eca43d0391f59c3b1505bb7bd38ff45b650aab Author: Andrew Morton Date: Wed Aug 16 09:15:51 2006 +1000 drm: fix i965 build bug Signed-off-by: Andrew Morton Signed-off-by: Dave Airlie commit a1d0fcf5a1cf56ae4711c7e0f857832724a67e8b Author: Andrew Morton Date: Mon Aug 14 11:35:15 2006 +1000 drm: remove FALSE/TRUE that snuck in with simple memory manager changes. Thanks to Andrew Morton for pointing these out, I've fixed a few his patch missed. Signed-off-by: Andrew Morton Signed-off-by: Dave Airlie commit c29b669caae4ed1630ef479e54bdde126a0378ec Author: Alan Hourihane Date: Sat Aug 12 16:29:24 2006 +1000 drm: Add support for Intel i965G chipsets. This is a patch prepared by Guangdeng Liao based off of Tungsten Graphics's final code drop. From: Alan Hourihane Signed-off-by: Dave Airlie commit d000b486ea1633380e6224c03e94227db46567ad Author: Dave Airlie Date: Sat Aug 12 16:03:52 2006 +1000 drm: add better explanation for i830/i915 Signed-off-by: Dave Airlie commit c2604ce05853939cf712ebc5acc0da4011289346 Author: Dave Airlie Date: Sat Aug 12 16:03:26 2006 +1000 drm: remove a tab that snuck in Signed-off-by: Dave Airlie commit 572225bedf8e39b5dd7cc687a51015edbb738401 Author: Dave Airlie Date: Tue Aug 8 22:17:02 2006 +1000 drm: fix return value in auth function This just fixes up the return value in the drm_auth:remove_magic Signed-off-by: Dave Airlie commit 7981bf7d494a6c4d45e22c54b0da887e5a67e705 Author: Thomas Hellstrom Date: Tue Aug 8 21:34:46 2006 +1000 drm: SiS 315 Awareness. Add support for the SiS 315 to the DRM. Signed-off-by: Dave Airlie commit 8d153f7107ff2c5d6e32053ae377c961187ab6b9 Author: Thomas Hellstrom Date: Mon Aug 7 22:36:47 2006 +1000 drm: update user token hashing and map handles Keep hashed user tokens, with the following changes: 32-bit physical device addresses are mapped directly to user-tokens. No duplicate maps are allowed, and the addresses are assumed to be outside of the range 0x10000000 through 0x30000000. The user-token is identical to the 32-bit physical start-address of the map. 64-bit physical device addressed are mapped to user-tokens in the range 0x10000000 to 0x30000000 with page-size increments. The user_token should not be interpreted as an address. Other map types, like upcoming TTM maps are mapped to user-tokens in the range 0x10000000 to 0x30000000 with page-size increments. The user_token should not be interpreted as an address. Implement hashed map lookups. Signed-off-by: Dave Airlie commit 8669cbc5e651bf4effa20e8c244a5a7d67da6fe9 Author: Thomas Hellstrom Date: Mon Aug 7 22:22:10 2006 +1000 drm: move drm authentication to new generic hash table. Fix drm_remove_magic potential memory leak / corruption. Move drm authentication token hashing to new generic hash table implementation. Signed-off-by: Dave Airlie commit 3d45dbd611d1441d667b06acced9fbad3c8fcb1b Author: Dave Airlie Date: Mon Aug 7 22:06:04 2006 +1000 drm: Add the P4VM800PRO (?) PCI ID. Signed-off-by: Dave Airlie commit ce65a44de07f73ceda1749812b75086b7add408d Author: Thomas Hellstrom Date: Mon Aug 7 22:03:22 2006 +1000 drm: add drm simple memory manager support for SiS and VIA drivers This add support to the SiS and VIA drivers for the simple memory manager. This fixes a lot of problems with the current simple code these drivers used, including locking and SMP issues. Signed-off-by: Dave Airlie commit 3a1bd924f36da202e480a0e0174b2878c0924a05 Author: Thomas Hellstrom Date: Mon Aug 7 21:30:28 2006 +1000 drm: add simple DRM memory manager, and hash table This adds the DRM hashtable and simple memory manager implementations from Tungsten Graphics, this is NOT the new memory manager, this is a replacement for the SIS and VIA memory managers. Signed-off-by: Dave Airlie commit b9b603dd1c99a68e65ad51cda25379441df2e17b Author: Michel Dänzer Date: Mon Aug 7 20:41:53 2006 +1000 drm: radeon: Use RADEON_RB3D_DSTCACHE_CTLSTAT instead of RADEON_RB2D_DSTCACHE_CTLSTAT. The latter seems to be a read-only mirror of the former. Signed-off-by: Dave Airlie commit ae1b1a4816ac11075d338af79a239f4c326d675c Author: Michel Dänzer Date: Mon Aug 7 20:37:46 2006 +1000 drm: radeon: fix up bus mastering when writeback is disabled When writeback isn't used, actually disable it in the hardware. Not doing this might waste bus bandwidth or even cause memory corruption or system crashes on systems that check bus transfers. No such incident has been reported though. Signed-off-by: Dave Airlie commit 8624ecbf68e90e5a8124514a0b7f92767fb80a62 Author: Michel Dänzer Date: Mon Aug 7 20:33:57 2006 +1000 drm: radeon: implement RADEON_PARAM_SCRATCH_OFFSET getparam When this succeeds, userspace can read the scratch register contents from th mapped writeback page directly. Signed-off-by: Dave Airlie commit 9ca941615ee6418cd38c13602960f29c7ac7d973 Author: Michel Dänzer Date: Mon Aug 7 20:31:30 2006 +1000 drm: radeon: add some debug output when getparam is called with unknown Signed-off-by: Dave Airlie commit 7a3f1f216b92724ff822fe3122272b7fd6a58f8c Author: Thomas Hellstrom Date: Mon Aug 7 20:28:29 2006 +1000 drm: missing mutex unlock Signed-off-by: Dave Airlie commit 332296016ee2e808b362de66bf6bec49c396e5bf Author: Dave Airlie Date: Mon Aug 7 20:23:42 2006 +1000 drm: remove the DRM pci domain This patch removes the pci_domain from the DRM device structure, and gets it via a macro that either asks the platform or does the alpha special case. jgarzik asked for this to just use the platform magic, but I've no alpha experience and I'd rather not just break it and wait for someone to give out. Signed-off-by: Dave Airlie commit 242ef0e1e7e5bb7e80c3620c1aa55168819d6fb8 Author: Dave Date: Tue Jul 18 04:01:01 2006 +1000 drm: remove local copies of pci bus/slot/func The drm keeps a local copy of these for little use. Signed-off-by: Dave Airlie commit 3d77461ecd7fb92bb888f69478e3518b3c947ce3 Author: Dave Airlie Date: Mon Aug 7 20:07:43 2006 +1000 drm: cleanup old compat code and DRM fns from Linux only code This patch removes some of the old compatibility macros from the DRM, and removes use of DRM wrappers from Linux specific code. Signed-off-by: Dave Airlie commit 611a15afcdaacec6efba984c7eb089b853564bdf Author: Vitaly Bordug Date: Thu Sep 21 22:38:05 2006 +0400 POWERPC: Bring the fs_no calculation to the relevant SoC enumeration The fs_no mean used to be fs_enet driver driven, hence it was an enumeration across all the possible fs_enet "users" in the SoC. Now, with QE on the pipeline, and to make DTS descriptions more clear, fs_no features relevant SoC part number, with additional field to describe the SoC type. Another reason for that is now not only fs_enet is going to utilize those stuff. There might be UART, HLDC, and even USB, so to prevent confusion and be ready for upcoming OF_device transfer, fs_enet and cpm_uart drivers were updated in that concern, as well as the relevant DTS. Signed-off-by: Vitaly Bordug commit d3465c921f79cfef0a4a8ceeeef9a3721bbbb57d Author: Vitaly Bordug Date: Thu Sep 21 22:38:05 2006 +0400 POWERPC: overhaul with cpm2_map mechanism Incorporating the new way of cpm2 immr access, introduced in the previous patch, into CPM2 peripheral devices (fs_enet and cpm_uart). Both ppc and powerpc approved working( real actions taken in powerpc only, ppc just has a wrapper to keep init stuff consistent). Signed-off-by: Vitaly Bordug commit fc8e50e349aa722d9f97ed9ba30e324ede8fa408 Author: Vitaly Bordug Date: Thu Sep 21 22:37:58 2006 +0400 POWERPC: Get rid of remapping the whole immr The stuff below cleans up the code attempting to remap the whole cpm2_immr early, as well as places happily assuming that fact. This is more like the 2.4 legacy stuff, and is at least confusing and unclear now. To keep the world comfortable, a new mechanism is introduced: before accessing specific immr register/register set, one needs to map it, using cpm2_map(), for instance, access to CPM command register will look like volatile cpm_cpm2_t *cp = cpm2_map(im_cpm); keeping the code clear, yet without "already defined somewhere" cpm2_immr. So far, unmapping code is not implemented, but it's not a big deal to add it, if the whole idea makes sense. Signed-off-by: Vitaly Bordug commit 902f392d011d0a781ea4695c464345faa6664540 Author: Vitaly Bordug Date: Thu Sep 21 22:31:26 2006 +0400 POWERPC: Add support for the mpc8560 eval board This makes the 8560 evaluation board fully supported under arch/powerpc, as the first board with CPM2 SoC peripherals. The brand new devicetree nodes are introduced (intending to be a subset of the QuiccEngine-equipped models, with dts sources placed into the kernel according to the new convention. Assuming all the preceding stuff applied (PAL+fs_enet related+ CPM_UART update), the both TSEC eth ,FCC Eths, and both SCC UARTs are working. The relevant drivers are still capable to drive users in ppc, which was verified with 8272ADS (SCC uart+FCC eth). This is also verified on mpc8540 and actually make it work (PCI stuff working as well) Signed-off-by: Vitaly Bordug commit b0c110b4f19b226dcc9f7805759bf17f8ef4dca4 Author: Vitaly Bordug Date: Thu Sep 21 22:18:53 2006 +0400 POWERPC: Move generic cpm2 stuff to powerpc This moves the cpm2 common code and PIC stuff to the powerpc. Most of the files were just copied from ppc/, with minor tuning to make it compile, and, subsequently, work. Signed-off-by: Vitaly Bordug commit 3dd0dcbe9dc5c116df96989c42a062951b644e04 Author: Vitaly Bordug Date: Thu Sep 21 17:27:15 2006 +0400 cpm_uart: make it possible to utilize from powerpc Driver core has been updated to make use of the new powerpc OF-inspired platform devices, yet keeping compatibility to the vast board list from ppc. Signed-off-by: Vitaly Bordug commit fba43665360d361d338efd120a34ad615ca960d8 Author: Vitaly Bordug Date: Thu Sep 21 17:26:34 2006 +0400 POWERPC: Add cpm2 stuff support to the fsl_soc.c This patch contains necessary modifications to support the CPM2 SoC peripherals. For the time being, those are fs_enet Ethernet driver and cpm_uart serial. Written initially to support mpc8560, it also suites to the part of the large PQ2 (more specifically, mpc8260) family. Signed-off-by: Vitaly Bordug commit 7da8a2e5c1fd2ee513fdeac8d13c4f3623838fd0 Author: Josh Boyer Date: Wed Sep 20 09:11:59 2006 -0500 [POWERPC] 40x: Fix debug status register defines This fixes some debug register defines on PPC 40x that were incorrect. Signed-off-by: Josh Boyer Signed-off-by: Paul Mackerras commit 8b9b5a77e3aeb9650b511a8be4c61632999537db Author: Amy Fong Date: Mon Sep 18 23:07:24 2006 -0400 [POWERPC] Fix compile error in sbc8560 The following fixes compile errors in sbc8560. Signed-off-by: Amy Fong Signed-off-by: Paul Mackerras commit 6a1ca373a16b0e170164ab8a2d6d01eab2a22f6e Author: Linas Vepstas Date: Fri Sep 15 18:58:59 2006 -0500 [POWERPC] EEH: support MMIO enable recovery step Update to the PowerPC PCI error recovery code. Add code to enable MMIO if a device driver reports that it is capable of recovering on its own. One anticipated use of this having a device driver enable MMIO so that it can take a register dump, which might then be followed by the device driver requesting a full reset. Signed-off-by: Linas Vepstas Signed-off-by: Paul Mackerras commit 47b5c838af92d3504e99633bf568578203b7305f Author: Linas Vepstas Date: Fri Sep 15 18:57:42 2006 -0500 [POWERPC] EEH: enable MMIO/DMA on frozen slot Add wrapper around the rtas call to enable MMIO or DMA on a frozen pci slot. Signed-off-by: Linas Vepstas Signed-off-by: Paul Mackerras commit cb5b562444c27cf53f5d297bd7a89807ea614cf3 Author: Linas Vepstas Date: Fri Sep 15 18:56:35 2006 -0500 [POWERPC] EEH: code comment cleanup Clean up subroutine documentation; mostly formatting changes, with some new content. Signed-off-by: Linas Vepstas Signed-off-by: Paul Mackerras commit af525592187951a595c73de11b48969a13b5d5a3 Author: Linas Vepstas Date: Fri Sep 15 18:55:34 2006 -0500 [POWERPC] EEH: balance pcidev_get/put calls This corrects a pci_dev get/put imbalance that can occur only in highly unlikely situations (kmalloc failures, pci devices with overlapping resource addresses). No actual failures seen, this was spotted during code review. Signed-off-by: Linas Vepstas Signed-off-by: Paul Mackerras commit 4dbefe6459555d6fb9d08743615fbaa53894beb2 Author: Josh Boyer Date: Fri Sep 15 14:53:10 2006 -0500 [POWERPC] PPC: Fix xmon stack frame address in backtrace The stack frame address was being printed incorrectly in the backtrace option of XMON on PPC. This patch fixes it to print the actual stack address instead of the address of the local variable that contains it. Signed-off-by: Josh Boyer Signed-off-by: Paul Mackerras commit 838fdb4d2d0e4730364220b51be28a42d04c665e Author: Peter Bergner Date: Thu Sep 14 14:18:38 2006 -0500 [POWERPC] Add AT_PLATFORM value for Xilinx Virtex-4 FX Jakub noticed the cputable.c entry for Xilinx Virtex-4 FX was missing a .platform value, so the AT_PLATFORM value wouldn't be set correctly. This adds it. Signed-off-by: Peter Bergner Signed-off-by: Paul Mackerras commit ed9526b0d342a1c08a19f880c3f0c1d0fec4e8db Author: David Woodhouse Date: Thu Sep 21 09:33:55 2006 +0100 Clean up exported headers on CRIS This fixes most of the issues with exported headers on CRIS, although we do still need to deal with the asm/arch symlink. Signed-off-by: David Woodhouse commit 2a1b181eff32f497f285fcfc1e771ec469205908 Author: David Woodhouse Date: Thu Sep 21 09:05:25 2006 +0100 Fix v850 exported headers Signed-off-by: David Woodhouse commit f17b7bad396c8f748620f54a88754a1f5af02c8a Author: David Woodhouse Date: Thu Sep 21 09:01:45 2006 +0100 Don't advertise (or allow) headers_{install,check} where inappropriate. For architectures which don't have the include/asm-$(ARCH)/Kbuild file, like ARM26, UM, etc. Signed-off-by: David Woodhouse commit d28d1f10f99f8ab2fe2bd06c3d22397d0ba08687 Author: David Woodhouse Date: Thu Sep 21 08:55:28 2006 +0100 Remove UML header export No need for UML to export headers for userspace to build against. Signed-off-by: David Woodhouse commit cb16da6a71924772dc4580c16541dece2b9a8472 Author: David Woodhouse Date: Thu Sep 21 08:54:44 2006 +0100 Remove ARM26 header export. We ought to be able to use ARM headers; no need for special ARM26 version. Signed-off-by: David Woodhouse commit 0000f0b1bc9aa340356a8dcdb9e8b1dbbaf0afcb Author: David Woodhouse Date: Thu Sep 21 08:51:43 2006 +0100 Fix H8300 exported headers. Just clean up asm/page.h Signed-off-by: David Woodhouse commit 5daf3033aa4fc5ec0535816d8a8e94874160482e Author: David Woodhouse Date: Thu Sep 21 08:50:36 2006 +0100 Fix m68knommu exported headers Just clean up asm/page.h Signed-off-by: David Woodhouse commit 09087a1a8722fac30b1969a4a542cde064af13f8 Author: David Woodhouse Date: Thu Sep 21 08:48:27 2006 +0100 Fix exported headers for SPARC, SPARC64 Mostly removing files which have no business being used in userspace. Signed-off-by: David Woodhouse Signed-off-by: David S. Miller commit 47dbec79d1b9ce9e80bed932f345adc92049f05d Author: David Woodhouse Date: Sun Sep 17 08:39:39 2006 +0100 Fix 'make headers_check' on m32r > asm-m32r/page.h requires asm-generic/memory_model.h, which does not exist > asm-m32r/ptrace.h requires asm/m32r.h, which does not exist > asm-m32r/signal.h requires linux/linkage.h, which does not exist > asm-m32r/unistd.h requires asm/syscall.h, which does not exist > asm-m32r/user.h requires asm/processor.h, which does not exist Signed-off-by: Hirokazu Takata Signed-off-by: David Woodhouse commit 029669da25efa18ee4b8911e694fdcf4a11c8cbe Author: Paul Mundt Date: Wed Sep 20 03:27:17 2006 +0900 Fix 'make headers_check' on sh64 Cleanup for user headers, as noted: asm-sh64/page.h requires asm-generic/memory_model.h, which does not exist in exported headers asm-sh64/shmparam.h requires asm/cache.h, which does not exist in exported headers asm-sh64/signal.h requires asm/processor.h, which does not exist in exported headers asm-sh64/user.h requires asm/processor.h, which does not exist in exported headers Signed-off-by: Paul Mundt Signed-off-by: David Woodhouse commit b5233d0704c9a6147ebbfabc576d1638b3ac5274 Author: Paul Mundt Date: Wed Sep 20 03:25:34 2006 +0900 Fix 'make headers_check' on sh Cleanup for user headers, as noted: asm-sh/page.h requires asm-generic/memory_model.h, which does not exist in exported headers asm-sh/ptrace.h requires asm/ubc.h, which does not exist in exported headers Signed-off-by: Paul Mundt Signed-off-by: David Woodhouse commit 6b70c9559bcf381a6521e38b0dd5d3d4d905868a Author: Steve French Date: Thu Sep 21 07:35:29 2006 +0000 [CIFS] New POSIX locking code not setting rc properly to zero on successful unlock in case where server does not support POSIX locks and nobrl is not specified. Signed-off-by: Steve French commit 6ff6340abeaaf1a15587c87dac3e56754778cc7a Author: David Woodhouse Date: Thu Sep 21 08:34:39 2006 +0100 [HEADERS] Fix ARM 'make headers_check' Sanitise the ARM headers exported to userspace. Signed-off-by: David Woodhouse commit 2fe87f02a04ad6e7075023a87fe38eb458a4bb9d Author: Steve French Date: Thu Sep 21 07:02:52 2006 +0000 [CIFS] Support deep tree mounts (e.g. mounts to //server/share/path) Samba bugzilla #4040 Signed-off-by: Steve French commit 54caf44da31995df1f51174468fd9e83ca5c67a2 Author: Jeff Garzik Date: Thu Sep 21 00:08:10 2006 -0400 [netdrvr] mv643xx_eth: fix obvious typo, which caused build breakage The last minute fix submitted by the author fixed a bug, but broke the driver build. Noticed by Al Viro, since I can't build on said platform. Signed-off-by: Jeff Garzik commit 8ce90907ea534f10075a9eba5f83d6dd77b39cb6 Author: Jeff Garzik Date: Thu Sep 21 00:06:21 2006 -0400 [netdrvr] lp486e: fix typo inside #if 0'd code, but it bugged me. Really, we should probably just delete the driver. Signed-off-by: Jeff Garzik commit 3c164bd8153c4644a22dc2101b003c67cd2a0d0a Author: Rik Snel Date: Sat Sep 2 18:17:33 2006 +1000 [BLOCK] dm-crypt: trivial comment improvements Just some minor comment nits. - little-endian is better than low-endian - and since it is called essiv everywere it should also be essiv in the comments (and not ess_iv) Signed-off-by: Rik Snel Signed-off-by: Herbert Xu commit 3ad819c61f5f8347f39cdcbe652b3c60ec615888 Author: Herbert Xu Date: Sat Aug 26 18:44:31 2006 +1000 [CRYPTO] api: Deprecate crypto_digest_* and crypto_alg_available This patch marks the crypto_digest_* functions and crypto_alg_available as deprecated. They've been replaced by crypto_hash_* and crypto_has_* respectively. Signed-off-by: Herbert Xu commit 6010439f47e6b308c031dad7d99686030ef942dd Author: Herbert Xu Date: Sat Aug 26 18:34:10 2006 +1000 [CRYPTO] padlock: Convert padlock-sha to use crypto_hash This patch converts padlock-sha to use crypto_hash for its fallback. It also changes the fallback selection to use selection by type instead of name. This is done through the new CRYPTO_ALG_NEED_FALLBACK bit, which is set if and only if an algorithm needs a fallback of the same type. Signed-off-by: Herbert Xu commit e4d5b79c661c7cfca9d8d5afd040a295f128d3cb Author: Herbert Xu Date: Sat Aug 26 18:12:40 2006 +1000 [CRYPTO] users: Use crypto_comp and crypto_has_* This patch converts all users to use the new crypto_comp type and the crypto_has_* functions. Signed-off-by: Herbert Xu commit fce32d70ba834129b164c40c2d4260e5a7a7d850 Author: Herbert Xu Date: Sat Aug 26 17:35:45 2006 +1000 [CRYPTO] api: Add crypto_comp and crypto_has_* This patch adds the crypto_comp type to complete the compile-time checking conversion. The functions crypto_has_alg and crypto_has_cipher, etc. are also added to replace crypto_alg_available. Signed-off-by: Herbert Xu commit 35058687912aa2f0b4554383cc10be4e0683b9a4 Author: Herbert Xu Date: Thu Aug 24 19:10:20 2006 +1000 [CRYPTO] users: Use crypto_hash interface instead of crypto_digest This patch converts all remaining crypto_digest users to use the new crypto_hash interface. Signed-off-by: Herbert Xu commit dc64ddf4918f0da52df10d83c2a5941a547c2035 Author: Herbert Xu Date: Thu Aug 24 18:45:50 2006 +1000 [SCSI] iscsi: Use crypto_hash interface instead of crypto_digest This patch converts ISCSI to use the new crypto_hash interface instead of crypto_digest. It's a fairly straightforward substitution. Signed-off-by: Herbert Xu commit 8425165dfed27945e8509c141cea245d1739e372 Author: Herbert Xu Date: Sun Aug 20 15:25:22 2006 +1000 [CRYPTO] digest: Remove old HMAC implementation This patch removes the old HMAC implementation now that nobody uses it anymore. Signed-off-by: Herbert Xu Signed-off-by: David S. Miller commit 878b9014666217555d16073764f30e825cf18d2f Author: Herbert Xu Date: Sun Aug 20 15:17:04 2006 +1000 [CRYPTO] doc: Update documentation for hash and me This patch updates the documentation to reflect the switch from digest to hash. It also replaces notes about emailing James Morris to refer to me instead. Signed-off-by: Herbert Xu commit 1b489e11d4df82514792f9f981f31976f8a94ddf Author: Herbert Xu Date: Sun Aug 20 15:07:14 2006 +1000 [SCTP]: Use HMAC template and hash interface This patch converts SCTP to use the new HMAC template and hash interface. Signed-off-by: Herbert Xu Signed-off-by: David S. Miller commit 07d4ee583e21830ec5604d31f65cdc60a6eca19e Author: Herbert Xu Date: Sun Aug 20 14:24:50 2006 +1000 [IPSEC]: Use HMAC template and hash interface This patch converts IPsec to use the new HMAC template. The names of existing simple digest algorithms may still be used to refer to their HMAC composites. The same structure can be used by other MACs such as AES-XCBC-MAC. This patch also switches from the digest interface to hash. Signed-off-by: Herbert Xu Signed-off-by: David S. Miller commit e9d41164e2fdd897fe4520c2079ea0000f6e0ec3 Author: Herbert Xu Date: Sat Aug 19 21:38:49 2006 +1000 [CRYPTO] tcrypt: Use HMAC template and hash interface This patch converts tcrypt to use the new HMAC template rather than the hard-coded version of HMAC. It also converts all digest users to use the new cipher interface. Signed-off-by: Herbert Xu Signed-off-by: David S. Miller commit 0796ae061e6da5de7cfc1af57dfd42a73908b1bf Author: Herbert Xu Date: Mon Aug 21 20:50:52 2006 +1000 [CRYPTO] hmac: Add crypto template implementation This patch rewrites HMAC as a crypto template. This means that HMAC is no longer a hard-coded part of the API. It's now a template that generates standard digest algorithms like any other. The old HMAC is preserved until all current users are converted. The same structure can be used by other MACs such as AES-XCBC-MAC. Signed-off-by: Herbert Xu Signed-off-by: David S. Miller commit 055bcee3102dc35f019b69df9c2618e9d6dd1c09 Author: Herbert Xu Date: Sat Aug 19 22:24:23 2006 +1000 [CRYPTO] digest: Added user API for new hash type The existing digest user interface is inadequate for support asynchronous operations. For one it doesn't return a value to indicate success or failure, nor does it take a per-operation descriptor which is essential for the issuing of requests while other requests are still outstanding. This patch is the first in a series of steps to remodel the interface for asynchronous operations. For the ease of transition the new interface will be known as "hash" while the old one will remain as "digest". This patch also changes sg_next to allow chaining. Signed-off-by: Herbert Xu commit 7226bc877a22244e8003924031435a4bffd52654 Author: Herbert Xu Date: Mon Aug 21 21:40:49 2006 +1000 [CRYPTO] api: Mark parts of cipher interface as deprecated Mark the parts of the cipher interface that have been replaced by block ciphers as deprecated. Thanks to Andrew Morton for suggesting doing this before removing them completely. Signed-off-by: Herbert Xu commit 03fd9cee7f46dddcd2562bc175d2c348502ce281 Author: Herbert Xu Date: Mon Aug 14 23:11:53 2006 +1000 [PATCH] scatterlist: Add const to sg_set_buf/sg_init_one pointer argument This patch adds a const modifier to the buf argument of sg_set_buf and sg_init_one. This lets people call it with pointers that are const. Signed-off-by: Herbert Xu commit efcf8023e299be605f217dc2c1b2754b5534569c Author: Herbert Xu Date: Sat Aug 5 16:28:19 2006 +1000 [CRYPTO] drivers: Remove obsolete block cipher operations This patch removes obsolete block operations of the simple cipher type from drivers. These were preserved so that existing users can make a smooth transition. Now that the transition is complete, they are no longer needed. Signed-off-by: Herbert Xu commit f12cc2090d721647c23dfce20834f4306db3b77d Author: Herbert Xu Date: Tue Aug 22 20:36:13 2006 +1000 [CRYPTO] users: Use block ciphers where applicable This patch converts all remaining users to use the new block cipher type where applicable. It also changes all simple cipher operations to use the new encrypt_one/decrypt_one interface. Signed-off-by: Herbert Xu commit 378c6697a282c383d89428380a3405bf95189347 Author: Herbert Xu Date: Tue Aug 22 20:33:54 2006 +1000 [SUNRPC] GSS: Use block ciphers where applicable This patch converts SUNRPC/GSS to use the new block cipher type where applicable. Signed-off-by: Herbert Xu commit 6b7326c8497f954c2cfcb4c49fe42be5b80887bc Author: Herbert Xu Date: Sun Jul 30 15:41:01 2006 +1000 [IPSEC] ESP: Use block ciphers where applicable This patch converts IPSec/ESP to use the new block cipher type where applicable. Similar to the HMAC conversion, existing algorithm names have been kept for compatibility. Signed-off-by: Herbert Xu commit 04ff12609445c7b462d7fc7f2d30dad442c922f3 Author: Herbert Xu Date: Sun Aug 13 08:50:00 2006 +1000 [IPSEC]: Add compatibility algorithm name support This patch adds a compatibility name field for each IPsec algorithm. This is needed when parameterised algorithms are used. For example, "md5" will become "hmac(md5)", and "aes" will become "cbc(aes)". Signed-off-by: Herbert Xu commit d1806f6a97a536b043fe50e6d8a25b061755cf50 Author: Herbert Xu Date: Tue Aug 22 20:29:17 2006 +1000 [BLOCK] dm-crypt: Use block ciphers where applicable This patch converts dm-crypt to use the new block cipher type where applicable. It also changes simple cipher operations to use the new encrypt_one/decrypt_one interface. Signed-off-by: Herbert Xu commit 69affe7fc52c14e4b81408a2076e9e58ba4af60a Author: Herbert Xu Date: Thu Sep 21 11:45:53 2006 +1000 [BLOCK] cryptoloop: Use block ciphers where applicable This patch converts cryptoloop to use the new block cipher type where applicable. As a result the ECB-specific and CBC-specific transfer functions have been merged. Signed-off-by: Herbert Xu commit cba83564d112e4aec52227f68670f8dbd4d4ac89 Author: Herbert Xu Date: Sun Aug 13 08:26:09 2006 +1000 [CRYPTO] tcrypt: Use block ciphers where applicable This patch converts tcrypt to use the new block cipher type where applicable. Signed-off-by: Herbert Xu commit a9e62fadf0b02ba4a1d945d1a75652507da94319 Author: Herbert Xu Date: Mon Aug 21 21:39:24 2006 +1000 [CRYPTO] s390: Added block cipher versions of CBC/ECB This patch adds block cipher algorithms for S390. Once all users of the old cipher type have been converted the existing CBC/ECB non-block cipher operations will be removed. Signed-off-by: Herbert Xu commit 28ce728a90cce3a0c6c0ed00354299de52db94b1 Author: Herbert Xu Date: Mon Aug 21 21:38:42 2006 +1000 [CRYPTO] padlock: Added block cipher versions of CBC/ECB This patch adds block cipher algorithms for cbc(aes) and ecb(aes) for the PadLock device. Once all users to the old cipher type have been converted the old cbc/ecb PadLock operations will be removed. Signed-off-by: Herbert Xu commit db131ef9084110d9e82549c0a627e157e8bb99d7 Author: Herbert Xu Date: Thu Sep 21 11:44:08 2006 +1000 [CRYPTO] cipher: Added block ciphers for CBC/ECB This patch adds two block cipher algorithms, CBC and ECB. These are implemented as templates on top of existing single-block cipher algorithms. They invoke the single-block cipher through the new encrypt_one/decrypt_one interface. This also optimises the in-place encryption and decryption to remove the cost of an IV copy each round. Signed-off-by: Herbert Xu commit 5cde0af2a9825dd1edaca233bd9590566579ef21 Author: Herbert Xu Date: Tue Aug 22 00:07:53 2006 +1000 [CRYPTO] cipher: Added block cipher type This patch adds the new type of block ciphers. Unlike current cipher algorithms which operate on a single block at a time, block ciphers operate on an arbitrarily long linear area of data. As it is block-based, it will skip any data remaining at the end which cannot form a block. The block cipher has one major difference when compared to the existing block cipher implementation. The sg walking is now performed by the algorithm rather than the cipher mid-layer. This is needed for drivers that directly support sg lists. It also improves performance for all algorithms as it reduces the total number of indirect calls by one. In future the existing cipher algorithm will be converted to only have a single-block interface. This will be done after all existing users have switched over to the new block cipher type. Signed-off-by: Herbert Xu commit 5c64097aa0f6dc4f27718ef47ca9a12538d62860 Author: Herbert Xu Date: Sat Aug 12 21:56:17 2006 +1000 [CRYPTO] scatterwalk: Prepare for block ciphers This patch prepares the scatterwalk code for use by the new block cipher type. Firstly it halves the size of scatter_walk on 32-bit platforms. This is important as we allocate at least two of these objects on the stack for each block cipher operation. It also exports the symbols since the block cipher code can be built as a module. Finally there is a hack in scatterwalk_unmap that relies on progress being made. Unfortunately, for hardware crypto we can't guarantee progress to be made since the hardware can fail. So this also gets rid of the hack by not advancing the address returned by scatterwalk_map. Signed-off-by: Herbert Xu commit f28776a369b12f9a03a822a8e1090ed670a41f4f Author: Herbert Xu Date: Sun Aug 13 20:58:18 2006 +1000 [CRYPTO] cipher: Added encrypt_one/decrypt_one This patch adds two new operations for the simple cipher that encrypts or decrypts a single block at a time. This will be the main interface after the existing block operations have moved over to the new block ciphers. It also adds the crypto_cipher type which is currently only used on the new operations but will be extended to setkey as well once existing users have been converted to use block ciphers where applicable. Signed-off-by: Herbert Xu commit e853c3cfa8cc24869ecd2526e589bcb176bc12e9 Author: Herbert Xu Date: Tue Aug 22 00:06:54 2006 +1000 [CRYPTO] api: Added crypto_type support This patch adds the crypto_type structure which will be used for all new crypto algorithm types, beginning with block ciphers. The primary purpose of this abstraction is to allow different crypto_type objects for crypto algorithms of the same type, in particular, there will be a different crypto_type objects for asynchronous algorithms. Signed-off-by: Herbert Xu commit 8f21cf0d2bae04ece761595036c9da8328b279aa Author: Herbert Xu Date: Sun Jul 30 11:53:45 2006 +1000 [CRYPTO] api: Feed flag directly to crypto_yield The sleeping flag used to determine whether crypto_yield can actually yield is really a per-operation flag rather than a per-tfm flag. This patch changes crypto_yield to take a flag directly so that we can start using a per-operation flag instead the tfm flag. Signed-off-by: Herbert Xu commit 6d7d684d635ac5a345f075015f2c84169c111c6a Author: Herbert Xu Date: Sun Jul 30 11:53:01 2006 +1000 [CRYPTO] api: Added crypto_alloc_base Up until now all crypto transforms have been of the same type, struct crypto_tfm, regardless of whether they are ciphers, digests, or other types. As a result of that, we check the types at run-time before each crypto operation. This is rather cumbersome. We could instead use different C types for each crypto type to ensure that the correct types are used at compile time. That is, we would have crypto_cipher/crypto_digest instead of just crypto_tfm. The appropriate type would then be required for the actual operations such as crypto_digest_digest. Now that we have the type/mask fields when looking up algorithms, it is easy to request for an algorithm of the precise type that the user wants. However, crypto_alloc_tfm currently does not expose these new attributes. This patch introduces the function crypto_alloc_base which will carry these new parameters. It will be renamed to crypto_alloc_tfm once all existing users have been converted. Signed-off-by: Herbert Xu commit 65b75c36f4e8422602826c75c803136e0da94122 Author: Herbert Xu Date: Mon Aug 21 21:18:50 2006 +1000 [CRYPTO] s390: Added missing driver name and priority Accelerated versions of crypto algorithms must carry a distinct driver name and priority in order to distinguish themselves from their generic counter- part. Signed-off-by: Herbert Xu commit f3f632d61ae9af85d436706ee8e33af1a7fb9c28 Author: Herbert Xu Date: Sun Aug 6 23:12:59 2006 +1000 [CRYPTO] api: Added asynchronous flag This patch adds the asynchronous flag and changes all existing users to only look up algorithms that are synchronous. Signed-off-by: Herbert Xu commit 7fed0bf271b374be4c98a5880faed4b1128e78e9 Author: Herbert Xu Date: Sun Aug 6 23:10:45 2006 +1000 [CRYPTO] api: Add common instance initialisation code This patch adds the helpers crypto_get_attr_alg and crypto_alloc_instance which can be used by simple one-argument templates like hmac to process input parameters and allocate instances. Signed-off-by: Herbert Xu commit df89820ebd5bbf4f3c6b5f8ee7d9e983107f6a91 Author: Herbert Xu Date: Fri Jul 14 10:42:27 2006 +1000 [CRYPTO] cipher: Removed special IV checks for ECB This patch makes IV operations on ECB fail through nocrypt_iv rather than calling BUG(). This is needed to generalise CBC/ECB using the template mechanism. Signed-off-by: Herbert Xu commit c907ee76d8456fe1d98f40b5febfc7802a73b784 Author: Herbert Xu Date: Mon Aug 21 22:04:03 2006 +1000 [CRYPTO] tcrypt: Use test_hash for crc32c Now that crc32c has been fixed to conform with standard digest semantics, we can use test_hash for it. I've turned the last test into a chunky test. Signed-off-by: Herbert Xu commit ee7564166da9e218c3f605ee78ff16599d4d5a05 Author: Herbert Xu Date: Sun Jul 9 14:49:42 2006 +1000 [CRYPTO] digest: Store temporary digest in tfm When the final result location is unaligned, we store the digest in a temporary buffer before copying it to the final location. Currently that buffer sits on the stack. This patch moves it to an area in the tfm, just like the CBC IV buffer. Signed-off-by: Herbert Xu commit 560c06ae1ab7c677002ea3b6ac83521bf12ee07d Author: Herbert Xu Date: Sun Aug 13 14:16:39 2006 +1000 [CRYPTO] api: Get rid of flags argument to setkey Now that the tfm is passed directly to setkey instead of the ctx, we no longer need to pass the &tfm->crt_flags pointer. This patch also gets rid of a few unnecessary checks on the key length for ciphers as the cipher layer guarantees that the key length is within the bounds specified by the algorithm. Rather than testing dia_setkey every time, this patch does it only once during crypto_alloc_tfm. The redundant check from crypto_digest_setkey is also removed. Signed-off-by: Herbert Xu commit 25cdbcd9e5d20e431f829cafce48a418830011f4 Author: Herbert Xu Date: Sun Aug 6 23:03:08 2006 +1000 [CRYPTO] crc32c: Fix unconventional setkey usage The convention for setkey is that once it is set it should not change, in particular, init must not wipe out the key set by it. In fact, init should always be used after setkey before any digestion is performed. The only user of crc32c that sets the key is tcrypt. This patch adds the necessary init calls there. Signed-off-by: Herbert Xu commit 58ec4152895b96f047dcf5e490ee49b4c574dec3 Author: Michal Ludvig Date: Mon Jul 17 08:14:58 2006 +1000 [CRYPTO] padlock-sha: TFMs don't need to be static TFMs are local variables. No need to declare them static. After all one is enough. Signed-off-by: Michal Ludvig Signed-off-by: Herbert Xu commit 5644bda5d6aa17a70b8842eb56365d501a5da159 Author: Michal Ludvig Date: Sun Aug 6 22:50:30 2006 +1000 [CRYPTO] padlock: Helper module padlock.ko Compile a helper module padlock.ko that will try to autoload all configured padlock algorithms. This also provides backward compatibility with the ancient times before padlock.ko was renamed to padlock-aes.ko Signed-off-by: Michal Ludvig Signed-off-by: Herbert Xu commit cb17530b0a4e01bd595a7ac437467a1a9833a15c Author: Adrian Bunk Date: Sat Jul 15 11:31:25 2006 +1000 [CRYPTO] padlock-sha: Make 2 functions static This patch makes two needlessly global functions static. Signed-off-by: Adrian Bunk Signed-off-by: Herbert Xu commit 6c833275152b454d311f0e70b5e6bf028b4a2aaf Author: Michal Ludvig Date: Wed Jul 12 12:29:38 2006 +1000 [CRYPTO] padlock: Driver for SHA1 / SHA256 algorithms Support for SHA1 / SHA256 algorithms in VIA C7 processors. Signed-off-by: Michal Ludvig Signed-off-by: Herbert Xu commit ccc17c34d676f116bd09dd36a3b01627bc6a2f8a Author: Michal Ludvig Date: Sat Jul 15 10:23:49 2006 +1000 [CRYPTO] padlock: Update private header file PADLOCK_CRA_PRIORITY is shared between padlock-aes and padlock-sha so it should be in the header. On the other hand "struct cword" is only used in padlock-aes.c so it's unnecessary to have it in padlock.h Signed-off-by: Michal Ludvig Signed-off-by: Herbert Xu commit db5e9a42373ae6d84c4b0179c2fe0aba866474e8 Author: Herbert Xu Date: Sun Jul 9 10:35:49 2006 +1000 [CRYPTO] padlock: Add compatibility alias after rename Whenever we rename modules we should add an alias to ensure that existing users can still locate the new module. This patch also gets rid of the now unused module function prototypes from padlock.h. Signed-off-by: Herbert Xu commit 1191f0a49390caf16f4a2831a4fc373757471ad6 Author: Michal Ludvig Date: Sun Aug 6 22:46:20 2006 +1000 [CRYPTO] padlock: Get rid of padlock-generic.c Merge padlock-generic.c into padlock-aes.c and compile AES as a standalone module. We won't make a monolithic padlock.ko with all supported algorithms, instead we'll compile each driver into its own module. Signed-off-by: Michal Ludvig Signed-off-by: Herbert Xu commit b14cdd6704c96474ba5c74b5959487beaa5ee1cd Author: Michal Ludvig Date: Sun Jul 9 09:02:24 2006 +1000 [CRYPTO] api: Add missing accessors for new crypto_alg fields Add missing accessors for cra_driver_name and cra_priority. Signed-off-by: Michal Ludvig Signed-off-by: Herbert Xu commit b3be9a6d9a78bb820f5242f43b98f38b0ca610a6 Author: Michal Ludvig Date: Sun Jul 9 08:59:38 2006 +1000 [CRYPTO] sha: Add module aliases for sha1 / sha256 Crypto modules should be loadable by their .cra_driver_name, so we should make MODULE_ALIAS()es with these names. This patch adds aliases for SHA1 and SHA256 only as that's what we need for PadLock-SHA driver. Signed-off-by: Michal Ludvig Signed-off-by: Herbert Xu commit 6bfd48096ff8ecabf955958b51ddfa7988eb0a14 Author: Herbert Xu Date: Thu Sep 21 11:39:29 2006 +1000 [CRYPTO] api: Added spawns Spawns lock a specific crypto algorithm in place. They can then be used with crypto_spawn_tfm to allocate a tfm for that algorithm. When the base algorithm of a spawn is deregistered, all its spawns will be automatically removed. Signed-off-by: Herbert Xu Signed-off-by: David S. Miller commit 492e2b63eb10c28f4f0b694264d74a8755cd1be0 Author: Herbert Xu Date: Thu Sep 21 11:35:17 2006 +1000 [CRYPTO] api: Allow algorithm lookup by type This patch also adds the infrastructure to pick an algorithm based on their type. For example, this allows you to select the encryption algorithm "aes", instead of any algorithm registered under the name "aes". For now this is only accessible internally. Eventually it will be made available through crypto_alloc_tfm. Signed-off-by: Herbert Xu Signed-off-by: David S. Miller commit 2b8c19dbdc692e81243a328725a02efb77b144a5 Author: Herbert Xu Date: Thu Sep 21 11:31:44 2006 +1000 [CRYPTO] api: Add cryptomgr The cryptomgr module is a simple manager of crypto algorithm instances. It ensures that parameterised algorithms of the type tmpl(alg) (e.g., cbc(aes)) are always created. This is meant to satisfy the needs for most users. For more complex cases such as deeper combinations or multiple parameters, a netlink module will be created which allows arbitrary expressions to be parsed in user-space. Signed-off-by: Herbert Xu Signed-off-by: David S. Miller commit 2825982d9d66ebba4b532a07391dfbb357f71c5f Author: Herbert Xu Date: Sun Aug 6 21:23:26 2006 +1000 [CRYPTO] api: Added event notification This patch adds a notifier chain for algorithm/template registration events. This will be used to register compound algorithms such as cbc(aes). In future this will also be passed onto user-space through netlink. Signed-off-by: Herbert Xu Signed-off-by: David S. Miller commit 4cc7720cd165273b08a72b4193146dffee58e34b Author: Herbert Xu Date: Sun Aug 6 21:16:34 2006 +1000 [CRYPTO] api: Add template registration A crypto_template generates a crypto_alg object when given a set of parameters. this patch adds the basic data structure fo templates and code to handle their registration/deregistration. Signed-off-by: Herbert Xu Signed-off-by: David S. Miller commit cce9e06d100df19a327b19f23adad76e7bf63edd Author: Herbert Xu Date: Mon Aug 21 21:08:13 2006 +1000 [CRYPTO] api: Split out low-level API The crypto API is made up of the part facing users such as IPsec and the low-level part which is used by cryptographic entities such as algorithms. This patch splits out the latter so that the two APIs are more clearly delineated. As a bonus the low-level API can now be modularised if all algorithms are built as modules. Signed-off-by: Herbert Xu commit 9409f38a0c8773c04bff8dda8c552d7ea013d956 Author: Herbert Xu Date: Sun Aug 6 19:49:12 2006 +1000 [IPSEC]: Move linux/crypto.h inclusion out of net/xfrm.h The header file linux/crypto.h is only needed by a few files so including it in net/xfrm.h (which is included by half of the networking stack) is a waste. This patch moves it out of net/xfrm.h and into the specific header files that actually need it. Signed-off-by: Herbert Xu commit 6521f30273fbec65146a0f16de74b7b402b0f7b0 Author: Herbert Xu Date: Sun Aug 6 20:28:44 2006 +1000 [CRYPTO] api: Add crypto_alg reference counting Up until now we've relied on module reference counting to ensure that the crypto_alg structures don't disappear from under us. This was good enough as long as each crypto_alg came from exactly one module. However, with parameterised crypto algorithms a crypto_alg object may need two or more modules to operate. This means that we need to count the references to the crypto_alg object directly. Signed-off-by: Herbert Xu Signed-off-by: David S. Miller commit 72fa491912689ca69dd15f4266945d2c2f2819f8 Author: Herbert Xu Date: Sun May 28 09:05:24 2006 +1000 [CRYPTO] api: Rename crypto_alg_get to crypto_mod_get The functions crypto_alg_get and crypto_alg_put operates on the crypto modules rather than the algorithms. Therefore it makes sense to call them crypto_mod_get and crypto_alg_put respectively. This is needed because we need to have real algorithm reference counters for parameterised algorithms as they can be unregistered from below by when their parameter algorithms are themselves unregistered. Signed-off-by: Herbert Xu Signed-off-by: David S. Miller commit eaf44088ff467410dd15a033fef118888002ffe6 Author: Joachim Fritschi Date: Tue Jun 20 21:12:02 2006 +1000 [CRYPTO] twofish: x86-64 assembly version The patch passed the trycpt tests and automated filesystem tests. This rewrite resulted in some nice perfomance increase over my last patch. Short summary of the tcrypt benchmarks: Twofish Assembler vs. Twofish C (256bit 8kb block CBC) encrypt: -27% Cycles decrypt: -23% Cycles Twofish Assembler vs. AES Assembler (128bit 8kb block CBC) encrypt: +18% Cycles decrypt: +15% Cycles Twofish Assembler vs. AES Assembler (256bit 8kb block CBC) encrypt: -9% Cycles decrypt: -8% Cycles Full Output: http://homepages.tu-darmstadt.de/~fritschi/twofish/tcrypt-speed-twofish-c-x86_64.txt http://homepages.tu-darmstadt.de/~fritschi/twofish/tcrypt-speed-twofish-asm-x86_64.txt http://homepages.tu-darmstadt.de/~fritschi/twofish/tcrypt-speed-aes-asm-x86_64.txt Here is another bonnie++ benchmark with encrypted filesystems. Most runs maxed out the hd. It should give some idea what the module can do for encrypted filesystem performance even though you can't see the full numbers. http://homepages.tu-darmstadt.de/~fritschi/twofish/output_20060610_130806_x86_64.html Signed-off-by: Joachim Fritschi Signed-off-by: Herbert Xu commit b9f535ffe38f7eb61ac2219d32d97c377b69f70d Author: Joachim Fritschi Date: Tue Jun 20 20:59:16 2006 +1000 [CRYPTO] twofish: i586 assembly version The patch passed the trycpt tests and automated filesystem tests. This rewrite resulted in some nice perfomance increase over my last patch. Short summary of the tcrypt benchmarks: Twofish Assembler vs. Twofish C (256bit 8kb block CBC) encrypt: -33% Cycles decrypt: -45% Cycles Twofish Assembler vs. AES Assembler (128bit 8kb block CBC) encrypt: +3% Cycles decrypt: -22% Cycles Twofish Assembler vs. AES Assembler (256bit 8kb block CBC) encrypt: -20% Cycles decrypt: -36% Cycles Full Output: http://homepages.tu-darmstadt.de/~fritschi/twofish/tcrypt-speed-twofish-asm-i586.txt http://homepages.tu-darmstadt.de/~fritschi/twofish/tcrypt-speed-twofish-c-i586.txt http://homepages.tu-darmstadt.de/~fritschi/twofish/tcrypt-speed-aes-asm-i586.txt Here is another bonnie++ benchmark with encrypted filesystems. All runs with the twofish assembler modules max out the drivespeed. It should give some idea what the module can do for encrypted filesystem performance even though you can't see the full numbers. http://homepages.tu-darmstadt.de/~fritschi/twofish/output_20060611_205432_x86.html Signed-off-by: Joachim Fritschi Signed-off-by: Herbert Xu commit 758f570ea785a5fbcdca026dfab2e9e1a3f89726 Author: Joachim Fritschi Date: Tue Jun 20 20:39:29 2006 +1000 [CRYPTO] twofish: Fix the priority This patch adds a proper driver name and priority to the generic c implemtation to allow coexistance of c and assembler modules. Signed-off-by: Joachim Fritschi Signed-off-by: Herbert Xu commit 2729bb427f686e47970406d6bde6b11892885f29 Author: Joachim Fritschi Date: Tue Jun 20 20:37:23 2006 +1000 [CRYPTO] twofish: Split out common c code This patch splits up the twofish crypto routine into a common part ( key setup ) which will be uses by all twofish crypto modules ( generic-c , i586 assembler and x86_64 assembler ) and generic-c part. It also creates a new header file which will be used by all 3 modules. This eliminates all code duplication. Correctness was verified with the tcrypt module and automated test scripts. Signed-off-by: Joachim Fritschi Signed-off-by: Herbert Xu commit 799111020c66c41aef621a3b53ad112543754124 Author: Herbert Xu Date: Mon Aug 21 21:03:52 2006 +1000 [CRYPTO] api: Fixed crypto_tfm context alignment Previously the __aligned__ attribute was added to the crypto_tfm context member to ensure it is alinged correctly on architectures such as arm. Unfortunately kmalloc does not use the same minimum alignment rules as gcc so this is useless. This patch changes it to use kmalloc's minimum alignment. Signed-off-by: Herbert Xu commit eb35746ca5e2211569b91ebb44d55b88ec91f3b0 Author: Mark Fasheh Date: Wed Aug 9 13:23:08 2006 -0700 ocfs2: Remove overzealous BUG_ON() The truncate code was never supposed to BUG() on an allocator it doesn't know about, but rather to ignore it. Right now, this does nothing, but when we change our allocation paths to use all suballocator files, this will allow current versions of the fs module to work fine. Signed-off-by: Mark Fasheh commit f12033d206ea48928d8124cdd5d35d8008c18935 Author: Mark Fasheh Date: Wed Sep 13 18:57:57 2006 -0700 ocfs2: Don't print on unknown remote blocking call Signed-off-by: Mark Fasheh commit 02ed8416fe5b7e33b5bbf2d73f9af1d316806822 Author: Mark Fasheh Date: Thu Sep 14 10:28:06 2006 -0700 ocfs2: Remove EXPERIMENTAL dependency Things have been working pretty well for a while now. We should've probably done this at least one kernel revision ago, but it doesn't hurt to be paranoid. Signed-off-by: Mark Fasheh commit aa9588741db907785e4d92c8b768dd6c9077e6f0 Author: Mark Fasheh Date: Fri Apr 21 13:49:02 2006 -0700 ocfs2: implement directory read-ahead Uptodate.c now knows about read-ahead buffers. Use some more aggressive logic in ocfs2_readdir(). The two functions which currently use directory read-ahead are ocfs2_find_entry() and ocfs2_readdir(). Signed-off-by: Mark Fasheh commit e0b4096d34fbd6b30838c417100c9d0ef73c71f2 Author: Mark Fasheh Date: Tue Jul 11 14:38:54 2006 -0700 ocfs2: properly update i_mtime on buffered write We weren't always updating i_mtime on writes, so fix ocfs2_commit_write() to handle this. Signed-off-by: Mark Fasheh Acked-by: Zach Brown commit 0f62de2c9ca60a35f63122e7ea992cee8aae4bef Author: Tiger Yang Date: Thu Aug 31 20:39:47 2006 -0700 ocfs2: Fix directory link count checks in ocfs2_link() Remove the redundant "i_nlink >= OCFS2_LINK_MAX" check and adds an unlinked directory check in ocfs2_link(). Signed-off-by: Tiger Yang Signed-off-by: Mark Fasheh commit a663e30513d7ecc77dd71d474e7646bf78c0ba62 Author: Mark Fasheh Date: Wed Aug 9 11:45:07 2006 -0700 ocfs2: move nlink check in ocfs2_mknod() The dir nlink check in ocfs2_mknod() was being done outside of the cluster lock, which means we could have been checking against a stale version of the inode. Fix this by doing the check after the cluster lock instead. Signed-off-by: Mark Fasheh commit 471e3f57286da7ce8820ad42c77d5f5f49d56a41 Author: Mathieu Avila Date: Wed Sep 13 11:11:27 2006 -0700 ocfs2: Fix heartbeat sector calculation This fixes things for devices which set max_sectors to 8. Signed-off-by: Mark Fasheh commit 2d5625181fac18f572cbbd18878d28f5eebf4733 Author: Adrian Bunk Date: Mon Jul 10 01:32:51 2006 +0200 [PATCH] fs/ocfs2/ioctl.c should #include "ioctl.h" Every file should #include the headers containing the prototypes for its global functions. Signed-off-by: Adrian Bunk Signed-off-by: Mark Fasheh commit ca4d147e62df370c334898464023aa7f9126abe1 Author: Herbert Poetzl Date: Mon Jul 3 17:27:12 2006 -0700 ocfs2: add ext2 attributes Support immutable, and other attributes. Some renaming and other minor fixes done by myself. Signed-off-by: Herbert Poetzl Signed-off-by: Mark Fasheh commit b4c98f625fffee3a6f633082e9e4be3e952ca2ab Author: Joel Becker Date: Wed Sep 13 11:01:19 2006 -0700 configfs: Prevent duplicate subsystem names. For all child objects, creation comes through mkdir(2), so duplicate names are prevented. Subsystems, though, are registered by client drivers at init_module()/__init time. This patch prevents duplicate subsystem names. Signed-off-by: Joel Becker Signed-off-by: Mark Fasheh commit 36b35a5be0e4b406acd816e2122d153e875105be Author: Jeff Garzik Date: Wed Sep 20 17:48:53 2006 -0400 [libata] Delete pata_it8172 driver This MIPS platform is going away. Acked-by: Ralf Baechle Signed-off-by: Jeff Garzik commit 56965536b8056f57830219efbba4b85218d96d6c Author: Steven Whitehouse Date: Wed Sep 20 15:48:09 2006 -0400 [GFS2] Remove unused constants Three of the DIO constants were not being used, so remove them. Signed-off-by: Steven Whitehouse commit d81bf551103cc3bc9e4f7ddf337511d6da0d088f Author: Francois Romieu Date: Wed Sep 20 21:31:20 2006 +0200 r8169: the MMIO region of the 8167 stands behin BAR#1 Reported by Matt Bockol to make its LOM (MSI 965 Neo) work. Signed-off-by: Francois Romieu commit 388c571cffc4ae4e64f0786333e811308acbbc10 Author: Michael Holzheu Date: Wed Sep 20 16:00:04 2006 +0200 [S390] hypfs crashes with invalid mount option. When an invalid mount option is specified, no root inode is created for hypfs, hypfs_fill_super() returns with -EINVAL and then hypfs_kill_super() is called. hypfs_kill_super() does not check if the root inode has been initialized. This patch adds this check. Signed-off-by: Michael Holzheu Signed-off-by: Martin Schwidefsky commit 564337f34cc10fd8f30329e4e5f14f8995db5711 Author: Peter Oberparleiter Date: Wed Sep 20 16:00:01 2006 +0200 [S390] cio: subchannel evaluation function operates without lock css_evaluate_subchannel() operates subchannel without lock which can lead to erratic behavior caused by concurrent device access. Also split evaluation function to make it more readable. Signed-off-by: Peter Oberparleiter Signed-off-by: Martin Schwidefsky commit 28bdc6f6233f380ddc0b430cabd88ffeafea34c7 Author: Peter Oberparleiter Date: Wed Sep 20 15:59:59 2006 +0200 [S390] cio: always query all paths on path verification. Reappearing channel paths are sometimes not utilized by CCW devices because path verification incorrectly relies on path-operational-mask information which is not updated until a channel path has been used again. Modify path verification procedure to always query all available paths to a device. Signed-off-by: Peter Oberparleiter Signed-off-by: Martin Schwidefsky commit e0e32c8eba86fd5ea79eefad6f2c0b4988dfd02a Author: Peter Oberparleiter Date: Wed Sep 20 15:59:57 2006 +0200 [S390] cio: update path groups on logical CHPID changes. CHPIDs that are logically varied off will not be removed from a CCW device's path group because resign-from-pathgroup command is issued with invalid path mask of 0 because internal CCW operations are masked by the logical path mask after the relevant bits are cleared by the vary operation. Do not apply logical path mask to internal operations. Signed-off-by: Peter Oberparleiter Signed-off-by: Martin Schwidefsky commit dd9963f9dd0985e16e878fd3632ecadfc54d3fbb Author: Peter Oberparleiter Date: Wed Sep 20 15:59:54 2006 +0200 [S390] cio: subchannels in no-path state. Subchannel may incorrectly remain in state no-path after channel paths have reappeared. Currently the scan for subchannels which are using a channel path ends at the first occurrence if a full link address was provided by the channel subsystem. The scan needs to continue over all subchannels. Signed-off-by: Peter Oberparleiter Signed-off-by: Martin Schwidefsky commit dcd707b4bdc10b4fa20efa116dbaeded21513115 Author: Peter Oberparleiter Date: Wed Sep 20 15:59:52 2006 +0200 [S390] Replace nopav-message on VM. Specifying kernel parameter "dasd=nopav" on systems running under VM has no function but results in message "disable PAV mode". Correct message is "'nopav' not supported on VM". Signed-off-by: Peter Oberparleiter Signed-off-by: Martin Schwidefsky commit db0c2d59087296b3567ec408abe17108db88b385 Author: Peter Oberparleiter Date: Wed Sep 20 15:59:49 2006 +0200 [S390] set modalias for ccw bus uevents. Add the MODALIAS environment variable for ccw bus uevents. Signed-off-by: Peter Oberparleiter Signed-off-by: Martin Schwidefsky commit 250b2dc83347feb73eb6bdf7511685e72b587e68 Author: Cornelia Huck Date: Wed Sep 20 15:59:47 2006 +0200 [S390] Get rid of DBG macro. Signed-off-by: Cornelia Huck Signed-off-by: Martin Schwidefsky commit 6c2a9e6df60478e712f3c3d98b5047778a82a3d7 Author: Gerald Schaefer Date: Wed Sep 20 15:59:44 2006 +0200 [S390] Use alternative user-copy operations for new hardware. This introduces new user-copy operations which are optimized for copying more than 256 Bytes on new hardware. Signed-off-by: Gerald Schaefer Signed-off-by: Martin Schwidefsky commit d02765d1af743567398eb6d523dea0ba5e5e7e8e Author: Gerald Schaefer Date: Wed Sep 20 15:59:42 2006 +0200 [S390] Make user-copy operations run-time configurable. Introduces a struct uaccess_ops which allows setting user-copy operations at run-time. Signed-off-by: Gerald Schaefer Signed-off-by: Martin Schwidefsky commit 6837a8c352efcc5efc70424e9bfd94ff9bfa9a47 Author: Gerald Schaefer Date: Wed Sep 20 15:59:39 2006 +0200 [S390] Cleanup in signal handling code. Signed-off-by: Gerald Schaefer Signed-off-by: Martin Schwidefsky commit 9282ed929758b82f448a40d3c17319d794970624 Author: Gerald Schaefer Date: Wed Sep 20 15:59:37 2006 +0200 [S390] Cleanup in page table related code. Changed and simplified some page table related #defines and code. Signed-off-by: Gerald Schaefer Signed-off-by: Martin Schwidefsky commit 31b58088292c7f00f0b81088bfb557285b0b6247 Author: Melissa Howland Date: Wed Sep 20 15:59:34 2006 +0200 [S390] Linux API for writing z/VM APPLDATA Monitor records. This patch delivers a new Linux API in the form of a misc char device that is useable from user space and allows write access to the z/VM APPLDATA Monitor Records collected by the *MONITOR System Service of z/VM. Signed-off-by: Melissa Howland Signed-off-by: Martin Schwidefsky commit e620c4940002348417e8d317d65bc7b152646493 Author: Christian Borntraeger Date: Wed Sep 20 15:59:32 2006 +0200 [S390] xpram off by one error. The xpram driver shows and uses 4096 bytes less than available. Signed-off-by: Christian Borntraeger Signed-off-by: Martin Schwidefsky commit 07d43ce6a2ba0bb914078c3b066a7a3bab57599d Author: Heiko Carstens Date: Wed Sep 20 15:59:29 2006 +0200 [S390] Remove kexec experimental flag. Follow other architectures and remove kexec experimental flag. Signed-off-by: Heiko Carstens Signed-off-by: Martin Schwidefsky commit 1f38d61347203055b55e34083cce7a9cd8c529a9 Author: Gerald Schaefer Date: Wed Sep 20 15:59:26 2006 +0200 [S390] cleanup appldata. Introduce asm header that contains the appldata data structures and the diag inline assembly. Signed-off-by: Gerald Schaefer Signed-off-by: Martin Schwidefsky commit 45af3af8761a3f790fe414c017de039a08ccd780 Author: Christian Borntraeger Date: Wed Sep 20 15:59:24 2006 +0200 [S390] fix typo in vmcp. Fix comment typo in vmcp, it is z/VM and not v/VM. Signed-off-by: Christian Borntraeger Signed-off-by: Martin Schwidefsky commit 9514e2311be97a01e8669c4de78e9fea37489f09 Author: Heiko Carstens Date: Wed Sep 20 15:59:22 2006 +0200 [S390] Kernel stack overflow handling. Substract the size of the initial stack frame from the correct register. Otherwise we will end up in a program check loop. Fix the offset into the save area as well. Signed-off-by: Heiko Carstens Signed-off-by: Martin Schwidefsky commit 6981e936aa156c747bb3e6aea414bba673457115 Author: Frank Pavlic Date: Wed Sep 20 15:59:19 2006 +0200 [S390] qdio slsb processing state. The last SLSB has to be set to STATE_PROCESSING if we really want to use the PROCESSING feature. Signed-off-by: Frank Pavlic Signed-off-by: Martin Schwidefsky commit 81388d2a45b89c890b981cfc83b01ec15ae3483b Author: Heiko Carstens Date: Wed Sep 20 15:59:17 2006 +0200 [S390] Missing initialization in common i/o layer. Previous patch that was intended to reduce stack usage within common i/o layer didn't consider implicit memset(..., 0, ...) used with the initializations used before. Add these missing memsets wherever it's not obvious that the concerned memory region is zeroed. This should give the same semantics as before. Signed-off-by: Heiko Carstens Signed-off-by: Martin Schwidefsky commit e87bfe51b5ca2db99dd680bbb1e8fe3c94b607df Author: Heiko Carstens Date: Wed Sep 20 15:59:15 2006 +0200 [S390] convert some assembler to C. Convert GET_IPL_DEVICE assembler macro to C function. Signed-off-by: Heiko Carstens Signed-off-by: Martin Schwidefsky commit 1375fc1fb0434a26f93c59b1b9f3fdb8bf90bba5 Author: Heiko Carstens Date: Wed Sep 20 15:59:12 2006 +0200 [S390] __exit cleanup. Signed-off-by: Heiko Carstens Signed-off-by: Martin Schwidefsky commit 0fee644ada12c524abbf723132fbea6a082ecfc2 Author: Martin Schwidefsky Date: Wed Sep 20 15:59:10 2006 +0200 [S390] cleanup sysinfo and add system z9 specific extensions. With System z9 additional fields have been added to the output of the store system information instruction. This patch adds the new model information field and the alternate cpu capability fields to the output of /proc/sysinfo. While we at it clean up the code as well. Signed-off-by: Martin Schwidefsky commit b0035f127e007ea0afc8baad740093eb124f7b0b Author: Horst Hummel Date: Wed Sep 20 15:59:07 2006 +0200 [S390] dasd default debug level. Enhanced default DBF level to get most important messages in debug feature files. Signed-off-by: Horst Hummel Signed-off-by: Martin Schwidefsky commit a00bfd7147c0c5c04a59f7adcb0e6d8948b90a6e Author: Martin Schwidefsky Date: Wed Sep 20 15:59:05 2006 +0200 [S390] dasd deadlock after state change pending interrupt. The dasd_device_from_cdev function is called from interrupt context to get the struct dasd_device associated with a ccw device. The driver_data of the ccw device points to the dasd_devmap structure which contains the pointer to the dasd_device structure. The lock that protects the dasd_devmap structure is acquire with out irqsave. To prevent the deadlock in dasd_device_from_cdev if it is called from interrupt context the dependency to the dasd_devmap structure needs to be removed. Let the driver_data of the ccw device point to the dasd_device structure directly and use the ccw device lock to protect the access. Signed-off-by: Martin Schwidefsky commit 47addc84b450fd5e391ab118e178645cb0bbd89d Author: Frank Pavlic Date: Wed Sep 20 15:59:03 2006 +0200 [S390] qdio_get_micros return value. qdio_get_micros is supposed to return microseconds. The get_clock() return value needs to be shifted by 12 to get to microseconds. Signed-off-by: Frank Pavlic Signed-off-by: Martin Schwidefsky commit 7d5d688f724dd5a651d1ce7bc3ea7c03d28137a1 Author: Heiko Carstens Date: Wed Sep 20 15:59:00 2006 +0200 [S390] Use simple_strtoul instead of own cmm_strtoul wrapper. Fix compile warning with some configurations: arch/s390/mm/cmm.c:58: warning: 'cmm_strtoul' defined but not used Originally cmm_strtoul was introduced because simple_strtoul couldn't handle strings with hexadecimal numbers that contained a capital 'X'. Since this is no longer true cmm_strtoul can be removed. Signed-off-by: Heiko Carstens Signed-off-by: Martin Schwidefsky commit 8301425534b87bae9990261f3008f39999be738c Author: Martin Schwidefsky Date: Wed Sep 20 15:58:58 2006 +0200 [S390] architecture co-maintainer. Add Heiko Carstens as co-maintainer for the s390 architecture. Signed-off-by: Martin Schwidefsky commit ba8ce5c6f0a15f08eae39880a0de296007f4a4e7 Author: Martin Schwidefsky Date: Wed Sep 20 15:58:56 2006 +0200 [S390] #undef in unistd.h Avoid using #undef in unistd.h. Signed-off-by: Martin Schwidefsky commit 8427082a506f7ae0abf82ce0047a045ec4309e59 Author: Heiko Carstens Date: Wed Sep 20 15:58:54 2006 +0200 [S390] fix syscall restart handling. If do_signal() gets called several times before returning to user space and no signal is pending (e.g. cancelled by a debugger) syscall restart handling could be done several times. This would change the user space PSW to an address prior to the syscall instruction. Fix this by making sure that syscall restart handling is only done once. Signed-off-by: Heiko Carstens Signed-off-by: Martin Schwidefsky commit 39b083fe1c3c7b88939f6fa1b0b96e579f12e96f Author: Heiko Carstens Date: Wed Sep 20 15:58:51 2006 +0200 [S390] empty function defines. Use do { } while (0) constructs instead of empty defines to avoid subtle compile bugs. Signed-off-by: Heiko Carstens Signed-off-by: Martin Schwidefsky commit ff6b8ea68f4b7353f88b97024f28127e2148aa00 Author: Michael Holzheu Date: Wed Sep 20 15:58:49 2006 +0200 [S390] ipl/dump on panic. It is now possible to specify a ccw/fcp dump device which is used to automatically create a system dump in case of a kernel panic. The dump device can be configured under /sys/firmware/dump. In addition it is now possible to specify a ccw/fcp device which is used for the next reboot of Linux. The reipl device can be configured under /sys/firmware/reipl. Signed-off-by: Michael Holzheu Signed-off-by: Martin Schwidefsky commit 331c982d4a6b43cdc0d056956a1cae8a7d6237bf Author: Michael Holzheu Date: Wed Sep 20 15:58:47 2006 +0200 [S390] hypfs compiler warnings. Add casts to avoid compiler warnings. Signed-off-by: Michael Holzheu Signed-off-by: Martin Schwidefsky commit f19bfb2c9b8675590fbecb43e5ce3b34ee321185 Author: Michael Holzheu Date: Wed Sep 20 15:58:44 2006 +0200 [S390] hypfs comment cleanup. Correct some comments in the hypervisor filesystem. Signed-off-by: Michael Holzheu Signed-off-by: Martin Schwidefsky commit 65912a84c0f33304fa5ea004c7b6ee58d5f5572e Author: Heiko Carstens Date: Wed Sep 20 15:58:41 2006 +0200 [S390] initrd vs. bootmem bitmap. Move initrd if the bitmap of the bootmem allocator would overwrite it. In addition this patch sets the default size and address of the initrd to 0. Therefore all boot loaders must set the initrd size and address correctly. This is especially relevant for ftp boot via HMC/SE, where this change requires a special patch file entry in the .ins file which sets these two values contained at address 0x10408 and 0x10410. Signed-off-by: Heiko Carstens Signed-off-by: Martin Schwidefsky commit 4ba069b802c29eee066385f9826e2d83716626b4 Author: Michael Grundy Date: Wed Sep 20 15:58:39 2006 +0200 [S390] add kprobes support. Signed-off-by: Michael Grundy Signed-off-by: David Wilder Signed-off-by: Martin Schwidefsky commit 5432114baf0300286a6ca1b0aea549492a379432 Author: Ralph Wuerthner Date: Wed Sep 20 15:58:36 2006 +0200 [S390] zcrypt secure key cryptography extension. Allow the user space to send extended cprb messages directly to the PCIXCC / CEX2C cards. This allows the CCA library to construct special crypto requests that use "secure" keys that are stored on the card. Signed-off-by: Ralph Wuerthner Signed-off-by: Martin Schwidefsky commit acc46c0144b6d1cf0d77bb8b4d1b7dcd5dc28d71 Author: Greg Ungerer Date: Thu Sep 14 00:28:26 2006 +1000 [ARM] nommu: create flat.h to support uClinux flat binaries Create header with uClinux flat format binary support macros for ARM platforms. Derived from the m68knommu flat.h. Signed-off-by: Greg Ungerer Signed-off-by: Russell King commit 6a39dd6222dda5ee2414a1b42e8e62118742a49e Author: Daniel Jacobowitz Date: Wed Aug 30 15:02:08 2006 +0100 [ARM] 3759/2: Remove uses of %? Patch from Daniel Jacobowitz The ARM kernel has several uses of asm("foo%?"). %? is a GCC internal modifier used to output conditional execution predicates. However, no version of GCC supports conditionalizing asm statements. GCC 4.2 will correctly expand %? to the empty string in user asms. Earlier versions may reuse the condition from the previous instruction. In 'if (foo) asm ("bar%?");' this is somewhat likely to be right... but not reliable. So, the only safe thing to do is to remove the uses of %?. I believe the tlbflush.h occurances were supposed to be removed before, based on the comment about %? not working at the top of that file. Old versions of GCC could omit branches around user asms if the asm didn't mark the condition codes as clobbered. This problem hasn't been seen on any recent (3.x or 4.x) GCC, but it could theoretically happen. So, where %? was removed a cc clobber was added. Signed-off-by: Daniel Jacobowitz Signed-off-by: Russell King commit 681a4991f83742a0d2325afbf7b7f22045ad5b30 Author: Russell King Date: Sun Aug 27 12:38:34 2006 +0100 [ARM] Optimise VFP thread notify function a little The common case for the thread notifier is a context switch. Tell gcc that this is the most likely condition so it can optimise the function for this case. Signed-off-by: Russell King commit b36e4758dc1b9ff1f6d97e951edba22366230d11 Author: Russell King Date: Sun Aug 27 12:26:34 2006 +0100 [ARM] Fix kernel/fork.c for lockdep on ARM ARM has interrupts enabled over context switches (iow, has __ARCH_WANT_INTERRUPTS_ON_CTXSW defined.) The lockdep code in fork.c assumes that interrupts are always disabled. Fix this wrong assumption by making the initialisation of 'p->hardirqs_enabled' depend on __ARCH_WANT_INTERRUPTS_ON_CTXSW. Acked-by: Ingo Molnar Signed-off-by: Russell King commit 7ad1bcb25c5623f1f87c50fdf2272f58ff91db5a Author: Russell King Date: Sun Aug 27 12:07:02 2006 +0100 [ARM] Add ARM irqtrace support This adds support for irqtrace for lockdep on ARM. Signed-off-by: Russell King commit d84b47115a04d9f6b0da777e8aa8cd930d5b6b8b Author: Russell King Date: Mon Aug 21 19:23:38 2006 +0100 [ARM] Move mmu.c out of the way Rename mmu.c to context.c - it's the ARMv6 ASID context handling code rather than generic "mmu" handling code. Signed-off-by: Russell King commit 1b2e2b73b4c84c918686c04a00724197036c0847 Author: Russell King Date: Mon Aug 21 17:06:38 2006 +0100 [ARM] Cleanup arch/arm/mm a little Move top_pmd into arch/arm/mm/mm.h - nothing outside arch/arm/mm references it. Move the repeated definition of TOP_PTE into mm/mm.h, as well as a few function prototypes. Signed-off-by: Russell King commit fe3a1be59c851aba2330387596c6134bc5ec8397 Author: Martin Schwidefsky Date: Wed Sep 20 15:58:34 2006 +0200 [S390] zcrypt driver Makefile, Kconfig and monolithic build. The Makefile and Kconfig changes should be obvious. The monolithic build option is there to create an old-style z90crypt module for backward compatability to older distributions. Signed-off-by: Ralph Wuerthner Signed-off-by: Martin Schwidefsky commit 6684af1a07a1f88f3970bc90e5aed173d39168db Author: Martin Schwidefsky Date: Wed Sep 20 15:58:32 2006 +0200 [S390] zcrypt PCICC, PCIXCC coprocessor card ap bus drivers. Signed-off-by: Ralph Wuerthner Signed-off-by: Martin Schwidefsky commit 963ed931c3fd18082bfde0e8704a28955663abf4 Author: Martin Schwidefsky Date: Wed Sep 20 15:58:29 2006 +0200 [S390] zcrypt CEX2A, CEX2C, PCICA accelerator card ap bus drivers. Signed-off-by: Ralph Wuerthner Signed-off-by: Martin Schwidefsky commit 2dbc2418bac32a18a372ae9aec386f0fe9174389 Author: Martin Schwidefsky Date: Wed Sep 20 15:58:27 2006 +0200 [S390] zcrypt user space interface. The user space interface of the zcrypt device driver implements the old user space interface as defined by the old z90crypt driver. Everything is there, the /dev/z90crypt misc character device, all the lovely ioctls and the /proc file. Even writing to the z90crypt proc file to configure the crypto device still works. It stands to reason to remove the proc write function someday since a much cleaner configuration via the sysfs is now available. The ap bus device drivers register crypto cards to the zcrypt user space interface. The request router of the user space interface picks one of the registered cards based on the predicted latency for the request and calls the driver via a callback found in the zcrypt_ops of the device. The request router only knows which operations the card can do and the minimum / maximum number of bits a request can have. Signed-off-by: Cornelia Huck Signed-off-by: Ralph Wuerthner Signed-off-by: Martin Schwidefsky commit 1534c3820c26aca4e2567f97b8add8bea40e7e2b Author: Martin Schwidefsky Date: Wed Sep 20 15:58:25 2006 +0200 [S390] zcrypt adjunct processor bus. Add a bus for the adjunct processor interface. Up to 64 devices can be connect to the ap bus interface, each device with 16 domains. That makes 1024 message queues. The interface is asynchronous, the answer to a message sent to a queue needs to be received at some later point in time. Unfortunately the interface does not provide interrupts when a message reply is pending. So the ap bus needs to implement some fancy polling, each active queue is polled once per 1/HZ second or continuously if an idle cpus exsists and the poll thread is activ (see poll_thread parameter). The ap bus uses the sysfs path /sys/bus/ap and has two bus attributes, ap_domain and config_time. The ap_domain selects one of the 16 domains to be used for this system. This limits the maximum number of ap devices to 64. The config_time attribute contains the number of seconds between two ap bus scans to find new devices. The ap bus uses the modalias entries of the form "ap:tN" to autoload the ap driver for hardware type N. Currently known types are: 3 - PCICC, 4 - PCICA, 5 - PCIXCC, 6 - CEX2A and 7 - CEX2C. Signed-off-by: Cornelia Huck Signed-off-by: Ralph Wuerthner Signed-off-by: Martin Schwidefsky commit 7561b974e0cbbdca1bb880b55200afd9a1a20737 Author: Martin Schwidefsky Date: Wed Sep 20 15:58:22 2006 +0200 [S390] remove old z90crypt driver. The z90crypt driver has served its term. It is replaced by the shiny new zcrypt device driver. Signed-off-by: Martin Schwidefsky commit de1a3f1ce6c4c3b2b14cf9157a22d6b4c64f708e Author: Martin Schwidefsky Date: Wed Sep 20 15:58:20 2006 +0200 [S390] EX_TABLE macro. Add EX_TABLE helper macro to simplify creation of inline assembly exception table entries. Signed-off-by: Martin Schwidefsky commit b2c5f61920eeee9c4e78698de4fde4586fe5ae79 Author: Mark A. Greer Date: Tue Sep 19 14:05:08 2006 +1000 [POWERPC] Start arch/powerpc/boot code reorganization This abstracts the operations used in the bootwrapper, and defines the operations needed for the bootwrapper to run on an OF platform. The operations have been divided up into platform ops (platform_ops), firmware ops (fw_ops), device tree ops (dt_ops), and console ops (console_ops). The proper operations will be hooked up at runtime to provide the functionality that you need. Signed-off-by: Mark A. Greer Signed-off-by: Paul Mackerras commit a4dc7ff08915a2035aa6d6decc53fa1deaa410bb Author: Paul Mackerras Date: Tue Sep 19 14:06:27 2006 +1000 [POWERPC] Define of_read_ulong helper There are various places where we want to extract an unsigned long value from a device-tree property that can be 1 or 2 cells in length. This replaces some open-coded calculations, and one place where we assumed without checking that properties were the length we wanted, with a little of_read_ulong() helper. Signed-off-by: Paul Mackerras commit 19e59df4dc2e6f7b46190ee77ce7093769f597a7 Author: Stephen Rothwell Date: Thu Sep 14 14:55:36 2006 +1000 [POWERPC] iseries: eliminate a couple of warnings Copy and paste bug in io.h Signed-off-by: Stephen Rothwell commit 5adcaf50cf697aa4d0c731107003c1383b59b214 Author: Stephen Rothwell Date: Tue Sep 19 22:17:49 2006 +1000 [POWERPC] convert string i/o operations to C This produces essentially the same code and will make the iSeries i/o consolidation easier. The count parameter is changed to long since that will produce the same (better) code on 32 and 64 bit builds. Signed-off-by: Stephen Rothwell commit 73ea9e1bcb8eea4f3b2052fe7ccd7ee4b5a271a0 Author: Stephen Rothwell Date: Tue Sep 19 17:30:20 2006 +1000 [POWERPC] clean up ide io accessors Signed-off-by: Stephen Rothwell commit 661f1cdb8b3e3c2c44e97df122c1d5643c054ce8 Author: Stephen Rothwell Date: Tue Sep 19 16:52:55 2006 +1000 [POWERPC] remove unused asm routines _insw, _outsw, _insl amd _outsl are all unused, so remove them. Signed-off-by: Stephen Rothwell commit fa053d2f008cb73fa768b8e171486d8c0b33312b Author: Stephen Rothwell Date: Tue Sep 19 14:51:40 2006 +1000 [POWERPC] remove unused io accessors The io accessors insw_ns, outsw_ns, insl_ns and outsl_ns are unused (except for one unnecessary use in drivers/net/3c509.c that is addressed in a previous patch) and are only defined in powerpc/ppc, so remove them. Signed-off-by: Stephen Rothwell commit 9ca91e0fb5295e8317030feb889085e452cedab1 Author: Stephen Rothwell Date: Thu Sep 14 16:59:31 2006 +1000 [POWERPC] silence a warning Left over from the constifying of get_property. Signed-off-by: Stephen Rothwell commit 4f896e53eea70013fa48d0d8662680cf8aae8a43 Author: Stephen Rothwell Date: Thu Aug 24 13:29:33 2006 +1000 [POWERPC] make spinlocks work in a combined kernel If we build a pSeries/iSeries combined kernel, we will need this. Signed-off-by: Stephen Rothwell commit f0e522a901f209d55992a20f4e30123b43af37dd Author: Steven Whitehouse Date: Tue Sep 19 16:41:11 2006 -0400 [GFS2] Remove "NFS only" readdir path This code path shouldn't be needed, so remove it for now. This tidys things up. Signed-off-by: Steven Whitehouse commit f8ec473387f70d103c83ffb3ab50cb2b1380d0c0 Author: Jeff Garzik Date: Tue Sep 19 15:27:07 2006 -0400 e1000, ixgb: Remove pointless wrappers Signed-off-by: Jeff Garzik commit 74669416f747363c14dba2ee6137540ae5a6834f Author: Steven Whitehouse Date: Tue Sep 19 11:17:38 2006 -0400 [GFS2] Use list_for_each_entry_safe_reverse in gfs2_ail1_start() This is an attempt to fix Red Hat bz 204364. I don't hit it all the time, but with these changes, running postmark which used to trigger it on a regular basis no longer appears to. So I'm not saying that its 100% certain that its fixed, but it does look promising at the moment. Signed-off-by: Steven Whitehouse commit 7d308590ae60d1f038a54a94e78a385c5c163452 Author: Fabio Massimo Di Nitto Date: Tue Sep 19 07:56:29 2006 +0200 [GFS2] Export lm_interface to kernel headers lm_interface.h has a few out of the tree clients such as GFS1 and userland tools. Right now, these clients keeps a copy of the file in their build tree that can go out of sync. Move lm_interface.h to include/linux, export it to userland and clean up fs/gfs2 to use the new location. Signed-off-by: Fabio M. Di Nitto Signed-off-by: Steven Whitehouse commit f3b30912e0eab0e4160c7649a5f2b10be68027b9 Author: akpm@osdl.org Date: Mon Sep 18 22:16:03 2006 -0700 [GFS2] inode-diet-eliminate-i_blksize-and-use-a-per-superblock-default-vs-gfs2 i_blksize got removed in -mm. Cc: Steven Whitehouse Signed-off-by: Andrew Morton Signed-off-by: Steven Whitehouse commit fadcfa33b6319a5faf8af2287f08bf93a7f926b6 Author: David Woodhouse Date: Tue Sep 19 12:43:58 2006 +0100 [HEADERS] One line per header in Kbuild files to reduce conflicts Signed-off-by: David Woodhouse commit 90da11514562020ea7d697982f912ac949adc317 Author: Lennart Poettering Date: Tue Sep 19 01:59:55 2006 -0400 Input: add KEY_BLUETOOTH and KEY_WLAN definitions Some laptops have separate "rfkill" buttons for disabling/enabling Bluetooth and WLAN. Signed-off-by: Lennart Poettering Signed-off-by: Dmitry Torokhov commit 9a87fdded5742a9d14780e5dfd9c940d7862e0ec Author: Michael Hanselmann Date: Tue Sep 19 01:59:49 2006 -0400 Input: add new BUS_VIRTUAL bus type BUS_VIRTUAL can be used when creating virtual devices using uinput driver. Note that when uinput is used to drive a real piece of hardware "real" bus type (such as BUS_USB, BUS_BLUETOOTH) should be specified. Signed-off-by: Michael Hanselmann Signed-off-by: Dmitry Torokhov commit f35d0616bddf4efdfaedc5dfad2267202a3c739f Author: Marek Vasut Date: Tue Sep 19 01:59:32 2006 -0400 Input: add driver for stowaway serial keyboards Add support for stowaway and stowaway compatible (eg. dicota inutPDA) serial keyboards. Reported to work on palm zire71 and palm tungsten T3. Signed-off-by: Marek Vasut Signed-off-by: Andrew Morton Signed-off-by: Dmitry Torokhov commit 93590859884784520a1850767f86296abc2cdc6d Author: Alan Cox Date: Tue Sep 12 16:55:12 2006 +0100 [PATCH] libata: improve handling of diagostic fail (and hardware that misreports it) Our ATA probe code checks that a device is not reporting a diagnostic failure during start up. Unfortunately at least one device seems to like doing this - the Gigabyte iRAM. This is only done for the master right now (which is fine for the iRAM as it is SATA), as with PATA some combinations of ATAPI device seem to fool the check into seeing a drive that isn't there if it is applied to the slave. Signed-off-by: Alan Cox Signed-off-by: Jeff Garzik commit 8624a1c93772d24a38ed10cfcd290e8a18ac5b0a Author: Stephen Rothwell Date: Tue Sep 19 11:54:49 2006 +1000 [PATCH] Remove powerpc specific parts of 3c509 driver On powerpc and ppc, insl_ns and insl are identical as are outsl_ns and outsl, so remove the conditional use of insl_ns and outsl_ns. Signed-off-by: Stephen Rothwell Signed-off-by: Jeff Garzik commit fea63e38013ec628ab3f7fddc4c2148064b7910a Author: Tejun Heo Date: Sat Sep 16 03:04:15 2006 +0900 [PATCH] libata: fix non-uniform ports handling Non-uniform ports handling got broken while updating libata to handle those in the same host. Only separate irq for the non-uniform secondary port was implemented while all other fields (host flags, transfer mode...) of the secondary port simply shared those of the first. For ata_piix combined mode, which ATM is the only user of non-uniform ports, this causes the secondary port assume the wrong type. This can cause PATA port to use SATA ops, which results in bogus check on PCS and detection failure. This patch adds ata_probe_ent->pinfo2 which points to optional port_info for the secondary port. For the time being, this seems to be the simplest solution. This workaround will be removed together with ata_probe_ent itself after init model is updated to allow more flexibility. Signed-off-by: Tejun Heo Cc: Alan Cox Cc: Nelson A. de Oliveira Signed-off-by: Jeff Garzik commit cb60736b32a84cbc9525b0bb4df26b04cbfbc8e8 Author: Arnaud Patard Date: Tue Sep 19 00:23:52 2006 -0400 Fix libata resource conflict for legacy mode When the libata is trying to handle legacy ide ports (0x1f0 for instance), it doesn't take care if the resource has childs or not. The result is that this situation : 0100-01fe : pnp 00:09 0170-0177 : libata 01f0-01f7 : libata is seen as conflict, which is wrong. The proposed fix is to detect childs and in this case, look at which child is conflicting. Signed-off-by: Arnaud Patard Signed-off-by: Jeff Garzik commit 26d36b642e2f024019f94819284a11273807571d Author: Alan Cox Date: Fri Sep 15 15:22:51 2006 +0100 [PATCH] s2io: Switch to pci_get_device We want the pci devices ref counted against hotplug. Signed-off-by: Alan Cox Signed-off-by: Jeff Garzik commit b921c3d8b64fe12948088be049785de49be50990 Author: Alan Cox Date: Fri Sep 15 15:27:06 2006 +0100 [PATCH] gt96100: move to pci_get_device API Signed-off-by: Alan Cox Signed-off-by: Jeff Garzik commit 53ccce2395cdc3693c22b9a94764b66dc1a4fcb4 Author: Jan-Bernd Themann Date: Thu Sep 14 13:51:56 2006 +0200 [PATCH] ehea: bugfix for register access functions Hi Jeff, sorry to bother you again. We figured out that the readq function we included in the eHEA patch we sent yesterday to access eHEA registers is defined as little endian on POWER. This collides with our adapter. We talked to some PPC people who told us there is a discussion going on about new access functions. We were told to use __raw_readq / __raw_writeq for now. This patch fixes this bug found by our internal tests today. Please apply this small patch on the latest patch we sent you yesterday. If it is easier for you I can also give you the entire eHEA patch again. sorry and thanks a lot, Jan-Bernd Signed-off-by: Jan-Bernd Themann drivers/net/ehea/ehea.h | 2 +- drivers/net/ehea/ehea_hw.h | 11 ++++++++--- 2 files changed, 9 insertions(+), 4 deletions(-) Signed-off-by: Jeff Garzik commit 72e8d6bbc151ca670c66d58a37e5bbfbc041db69 Author: Linas Vepstas Date: Mon Sep 18 20:58:06 2006 -0700 [PATCH] e1000 disable device on PCI error A recent patch in -mm3 titled "gregkh-pci-pci-don-t-enable-device-if-already-enabled.patch" causes pci_enable_device() to be a no-op if the kernel thinks that the device is already enabled. This change breaks the PCI error recovery mechanism in the e1000 device driver, since, after PCI slot reset, the card is no longer enabled. This is a trivial fix for this problem. Tested. Signed-off-by: Linas Vepstas Cc: John Ronciak Cc: Jesse Brandeburg Cc: Jeff Kirsher Acked-by: Auke Kok Cc: Jeff Garzik Signed-off-by: Andrew Morton Signed-off-by: Jeff Garzik commit 07903c02d056452da369595f00eac078bf4c7ef0 Author: Steven Whitehouse Date: Mon Sep 18 17:30:05 2006 -0400 [GFS2] Tweek unlock test in readpage() This make the unlock test a bit simpler. Signed-off-by: Steven Whitehouse commit dc41aeedef6b776583064be8abe6813159b4901d Author: Russell Cattelan Date: Mon Sep 18 17:26:48 2006 -0400 [GFS2] Fix for mmap() bug in readpage Fix for Red Hat bz 205307. Don't need to lock in readpage if the higher level code has already grabbed the lock. Signed-off-by: Russell Cattelan Signed-off-by: Steven Whitehouse commit 7a6bbacbb8dec6fbd1242c959250388f907d429e Author: Steven Whitehouse Date: Mon Sep 18 17:18:23 2006 -0400 [GFS2] Map multiple blocks at once where possible This is a tidy up of the GFS2 bmap code. The main change is that the bh is passed to gfs2_block_map allowing the flags to be set directly rather than having to repeat that code several times in ops_address.c. At the same time, the extent mapping code from gfs2_extent_map has been moved into gfs2_block_map. This allows all calls to gfs2_block_map to map extents in the case that no allocation is taking place. As a result reads and non-allocating writes should be faster. A quick test with postmark appears to support this. There is a limit on the number of blocks mapped in a single bmap call in that it will only ever map blocks which are pointed to from a single pointer block. So in other words, it will never try to do additional i/o in order to satisfy read-ahead. The maximum number of blocks is thus somewhat less than 512 (the GFS2 4k block size minus the header divided by sizeof(u64)). I've further limited the mapping of "normal" blocks to 32 blocks (to avoid extra work) since readpages() will currently read a maximum of 32 blocks ahead (128k). Some further work will probably be needed to set a suitable value for DIO as well, but for now thats left at the maximum 512 (see ops_address.c:gfs2_get_block_direct). There is probably a lot more that can be done to improve bmap for GFS2, but this is a good first step. Signed-off-by: Steven Whitehouse commit 65952fb4e91c159d253bd28ceaf028a86dbb0b02 Author: David Teigland Date: Fri Sep 15 13:09:11 2006 -0500 [GFS2] print mount errors related to sysfs Print an error message if mount fails in setting up the sysfs files. Signed-off-by: David Teigland Signed-off-by: Steven Whitehouse commit c394f1eafef61c6666f5876afde6110a276c4c9f Author: Stefan Richter Date: Mon Aug 7 20:48:00 2006 +0200 ieee1394: sbp2: enable auto spin-up for all SBP-2 devices This is a follow-up to patch "ieee1394: sbp2: enable auto spin-up for Maxtor disks". When I 'ejected' an OXUF922 based HDD from a Mac OS X box, it was spun down by the Mac and did not spin up by itself when attached to a Linux box right after that. The first SCSI command that required the bridge to access the drive ended in sda:<6>sd 18:0:0:0: Device not ready: <6>: Current: sense key: Not Ready Additional sense: Logical unit not ready, initializing cmd. required Therefore the flag which instructs scsi_mod to send START STOP UNIT with START=1 ("make medium ready") after such a condition is now enabled unconditionally for all FireWire storage devices. Signed-off-by: Stefan Richter commit 87730d045913f28e636cf53ad35950069a85c7f2 Author: Stefan Richter Date: Sat Sep 16 12:24:00 2006 +0200 MAINTAINERS: updates to IEEE 1394 subsystem maintainership - Stefan Richter snatches Jody's place - update path to linux1394.org's repo - remove now redundant entries of ohci1394 and sbp2 - promote eth1394 from Orphaned to Odd Fixes - Stefan takes patches to pcilynx but doesn't have the hardware Signed-off-by: Stefan Richter commit ea6104c22468239083857fa07425c312b1ecb424 Author: Stefan Richter Date: Sun Sep 17 19:41:45 2006 +0200 ieee1394: ohci1394: check for errors in suspend or resume Some of the suspend and resume litany may fail. Tell the PCI core about it. Signed-off-by: Stefan Richter commit f0645e7720e0baacbde61d7d1f0180309451c695 Author: Pavel Machek Date: Sun Sep 17 19:39:06 2006 +0200 set power state of firewire host during suspend Put firewire host controller in PCI Dx state for system suspend. (I was not able to measure any power savings, but it sounds like right thing to do, anyway.) Signed-off-by: Pavel Machek Update by stefanr: Shuffle with existing PPC_PMAC code. Set power state in the resume hook too. Signed-off-by: Stefan Richter commit 9531f13ae56b136d0ad09e6e5c8308a7dc58f3f0 Author: Stefan Richter Date: Thu Sep 7 20:36:00 2006 +0200 ieee1394: ohci1394: more obvious endianess handling Rename ohci1394's packet_swab to header_le32_to_cpu to better reflect what it actually does. Also, define a constant array as 'const' and check the array index properly. Signed-off-by: Stefan Richter commit cf82703dc6f8197341ca6be33cd38e80332685f0 Author: Stefan Richter Date: Thu Sep 7 15:52:00 2006 +0200 ieee1394: ohci1394: fix endianess bug in debug message The transaction labels were misprinted int the debug printk "Packet received from node..." due two byte-swapping once too often. Affected were big endian machines, except UniNorth based ones. Fix tested by Wolfgang Pfeiffer. Signed-off-by: Stefan Richter commit 98e238cd42be6c0852da519303cf0182690f8d9f Author: Stefan Richter Date: Thu Sep 7 01:06:00 2006 +0200 ieee1394: sbp2: don't prefer MODE SENSE 10 In the old days, sbp2 used to coerce all MODE SENSE commands into the 10 bytes version. When all command set conversions were removed from sbp2 several months ago, sdev->use_10_for_ms = 1 was added. Meaning, higher SCSI layers preferred the 10 bytes version but would try the 6 bytes version if the former failed. Recently, a problem with the 10 bytes version was discovered. An Initio INIC-1530 firmware accepted the 10 bytes version but replied with bogus data, showing the HDD incorrectly as write-protected. Since RBC actually mandates MODE SENSE (6), I checked which version was sent by Windows XP and Mac OS X 10.3 to an SBP-2 target hosted by Linux --- it was the 6 bytes version. (Exception: OS X sent the 10 bytes version to an MMC target. RBC and SBC got MODE SENSE (6).) Therefore, drop the use_10_for_ms flag from sbp2. Now the upper layers will try MODE SENSE (6) before MODE SENSE (10) on all SBP-2 devices. Signed-off-by: Stefan Richter commit a1842be898a2295ef513ed0a5d26f65d6283cb11 Author: Stefan Richter Date: Wed Sep 6 19:04:00 2006 +0200 ieee1394: nodemgr: grab class.subsys.rwsem in nodemgr_resume_ne nodemgr_resume_ne was iterating over nodemgr_ud_class.children without protection by nodemgr_ud_class.subsys.rwsem. FIXME: Shouldn't we rather use class->sem there, not class->subsys.rwsem? Signed-off-by: Stefan Richter commit 9b516010863195ba7db061233a3eeffe779130e8 Author: Stefan Richter Date: Wed Sep 6 19:04:00 2006 +0200 ieee1394: nodemgr: fix rwsem recursion nodemgr_update_pdrv grabbed an rw semaphore (as reader) which was already taken by its caller's caller, nodemgr_probe_ne (as reader too). Reported by Miles Lane, call path pointed out by Arjan van de Ven. FIXME: Shouldn't we rather use class->sem there, not class->subsys.rwsem? Signed-off-by: Stefan Richter commit b809289df06ff9453c1b19df74ea83aba311dfc6 Author: Stefan Richter Date: Wed Aug 30 18:22:00 2006 +0200 ieee1394: sbp2: more help in Kconfig Add some pointers to SCSI to the configuration menu item of sbp2. Signed-off-by: Stefan Richter commit 2cccbb555c77e641de9008660e08bdf17fc4206a Author: Stefan Richter Date: Mon Aug 14 18:59:00 2006 +0200 ieee1394: sbp2: prevent rare deadlock in shutdown Scsi_remove_device() may go into uninterruptible sleep if blocked. Therefore sbp2_remove() unblocks the Scsi_Host before the device is requested to be removed. But there could be another 1394 bus reset after that which would block the host again. The 1394 subsystem won't call sbp2_update() concurrently to sbp2_remove(), which is why there is no chance for sbp2_remove() to be unblocked by sbp2_update(). The fix is to tell sbp2's bus reset handler when a device is to be shut down so that it skips scsi_block_requests() on that host. As before, any new commands after a reset without reconnect will be failed quickly by sbp2scsi_queuecommand(). In the long term, means to go without scsi_block_requests() should be found. Signed-off-by: Stefan Richter commit 902abed1587805fe8513e10aef6643f58a6de0a6 Author: Stefan Richter Date: Mon Aug 14 18:56:00 2006 +0200 ieee1394: sbp2: update includes Remove unused includes. Add missing includes, i.e. explicitly include all used headers. Sort includes alphabetically. Replace one call to signal_pending(current) to avoid to include headers just for this line. Signed-off-by: Stefan Richter commit abbca103a02ff0e87569c38be518f9cb2d6baabc Author: Stefan Richter Date: Mon Aug 14 18:51:00 2006 +0200 ieee1394: sbp2: better handling of transport errors If the target signals a transport failure via status block, complete the request with DID_BUSY to indicate to the SCSI subsystem that the command may succeed when retried. Also log diagnostic information if the status block shows a transport related problem. It may point to hardware faults. Signed-off-by: Stefan Richter commit 4fc383c09d14783ca7d7e97e2134abbe7dc43230 Author: Stefan Richter Date: Mon Aug 14 18:46:00 2006 +0200 ieee1394: sbp2: recheck node generation in sbp2_update While sbp2_update() is doing its duties after a bus reset, another reset could happen. Don't accept new requests until the next undisturbed sbp2_update() or until sbp2_remove(). Signed-off-by: Stefan Richter commit 1f427e8055b1ab408395d6da421d93783120484c Author: Stefan Richter Date: Mon Aug 14 18:44:00 2006 +0200 ieee1394: sbp2: safer agent reset in error handlers The scsi_host_template's eh_abort_handler and eh_device_reset_handler are allowed to sleep. Use this to run sbp2_agent_reset in the more reliable mode which returns _after_ its write transaction was finished. Signed-off-by: Stefan Richter commit 09ee67abe997ee95cd3f6cc552fa9532bc722d83 Author: Stefan Richter Date: Mon Aug 14 18:43:00 2006 +0200 ieee1394: sbp2: handle "sbp2util_node_write_no_wait failed" Fix for http://bugzilla.kernel.org/show_bug.cgi?id=6948 Because sbp2 writes to the target's fetch agent's registers from within atomic context, it cannot sleep to guaranteedly get a free transaction label. This may repeatedly lead to "sbp2util_node_write_no_wait failed" and consequently to SCSI command abortion after timeout. A likely cause is that many queue_command softirqs may occur before khpsbpkt (the ieee1394 driver's thread which cleans up after finished transactions) is woken up to recycle tlabels. Sbp2 now schedules a workqueue job whenever sbp2_link_orb_command fails in sbp2util_node_write_no_wait. The job will reliably get a transaction label because it can sleep. We use the kernel-wide shared workqueue because it is unlikely that the job itself actually needs to sleep. In the improbable case that it has to sleep, it doesn't need to sleep long since the standard transaction timeout is 100ms. Signed-off-by: Stefan Richter commit 2a874182842c6a70f245b7f1ad859f9152517951 Author: Alexey Dobriyan Date: Fri Aug 11 16:46:14 2006 -0700 CONFIG_PM=n slim: drivers/ieee1394/ohci1394.c Remove some code which is unneeded if CONFIG_PM=n. Signed-off-by: Alexey Dobriyan Signed-off-by: Andrew Morton Signed-off-by: Stefan Richter commit 611aa19fd60fe57059d9972fa6ae29f7472a13cf Author: Stefan Richter Date: Wed Aug 2 18:44:00 2006 +0200 ieee1394: safer definition of empty macros A deactivated macro, defined as "#define foo(bar)", will result in silent corruption if somebody forgets a semicolon after a call to foo. Replace it by "#define foo(bar) do {} while (0)" which will reveal any respective syntax errors. Signed-off-by: Stefan Richter commit 4b60912e52bc6ccdf587f2b92f3435ee2678d730 Author: David Moore Date: Wed Aug 2 01:00:00 2006 +0200 video1394: add poll file operation support This patch adds support for the poll file operation to the video1394 driver. Signed-off-by: David Moore Signed-off-by: Stefan Richter commit a1b3206b362335f7986d1fab294c16148a8c50ab Author: Adrian Bunk Date: Sat Jul 29 19:48:28 2006 +0200 the scheduled removal of drivers/ieee1394/sbp2.c:force_inquiry_hack This patch contains the scheduled removal of the force_inquiry_hack module parameter. Signed-off-by: Adrian Bunk Signed-off-by: Stefan Richter commit 8df4083c5291b3647e0381d3c69ab2196f5dd3b7 Author: Andi Kleen Date: Thu Jul 27 21:54:00 2006 +0200 Initialize ieee1394 early when built in This makes debugging with firescope easier. Signed-off-by: Andi Kleen (original patch) Update: - no need for #ifdef MODULE - add comment in ieee1394_core, more verbose comment in ohci1394 Signed-off-by: Stefan Richter (update) commit e8398bb737ceadff8825aa98cb9f4a5e96857546 Author: Stefan Richter Date: Sun Jul 23 22:19:00 2006 +0200 ieee1394: sbp2: convert sbp2util_down_timeout to waitqueue The waitqueue API is used to replace a custom wait mechanism. Only one global waitqueue (instead of per-device waitqueues or completions) is added because there is usually just one waiter. Signed-off-by: Stefan Richter commit 6065772d54a3b994b9b5d3df6413ec6a1c8c2ec1 Author: Stefan Richter Date: Sun Jul 23 22:18:00 2006 +0200 ieee1394: sbp2: more checks of status block - Add checks for the (very unlikely) cases that the target writes too little or too much status data or writes unsolicited status. - Indicate that these and similar conditions are unlikely(). - Check the 'resp' and 'sbp_status' fields for possible failure status. - Slightly optimize access macros for the status block bitfields. - Unify a few related log messages. TODO: Check if 'src'==1, then withhold the respective ORB from reuse until status for any subsequent ORB was received. This is an old bug whose fix requires more complex command queue handling. Signed-off-by: Stefan Richter commit 3e98eab46d1a482532c653bdb0c006413654d171 Author: Stefan Richter Date: Sun Jul 23 22:16:00 2006 +0200 ieee1394: sbp2: safer initialization of status fifo Sbp2's copy of the status fifo was cleared when management ORBs or new command ORBs were prepared. The latter had potential for a race condition if the block layer's soft IRQ and the 1394 LLD's interrupt handler ran on different CPUs. It would also yield wrong status if a command was completed with non-zero completion status before other commands that had zero completion status, and no new command was enqueued in the meantime. Now, the status buffer is cleared right before it is written. Thus it ends up in the following simpler and safer access pattern: - sbp2_alloc_device: allocates and implicitly clears once, - sbp2_handle_status_write: clears, writes, and reads, - sbp2_query_logins, sbp2_login_device, sbp2_reconnect_device: read. The latter three do not race with sbp2_handle_status_write because of how the protocol works. As a tiny optimization, the first two quadlets of the status never need to be cleared. Signed-off-by: Stefan Richter commit d4018d7fa63d25f3e1ecf6949fca6b81a182231a Author: Stefan Richter Date: Sun Jul 23 22:57:00 2006 +0200 ieee1394: sbp2: optimize DMA direction of command ORBs Only the driver writes ORBs, the device just reads them. Therefore PCI_DMA_BIDIRECTIONAL can be replaced by PCI_DMA_TODEVICE which may be cheaper on some architectures. Signed-off-by: Stefan Richter commit 28212767e58402ea362edcb80b753d49bfd44d98 Author: Stefan Richter Date: Sun Jul 23 22:10:00 2006 +0200 ieee1394: sbp2: discard return value of sbp2_link_orb_command Since sbp2 is at the moment unable to do anything with the return value of sbp2_link_orb_command, just discard it. Signed-off-by: Stefan Richter commit cc078189125db84a85a3bbb82df788b84fc68aa1 Author: Stefan Richter Date: Sun Jul 23 22:12:00 2006 +0200 ieee1394: sbp2: safer last_orb and next_ORB handling The sbp2 initiator has two ways to tell a target's fetch agent about new command ORBs: - Write the ORB's address to the ORB_POINTER register. This must not be done while the fetch agent is active. - Put the ORB's address into the previously submitted ORB's next_ORB field and write to the DOORBELL register. This may be done while the fetch agent is active or suspended. It must not be done while the fetch agent is in reset state. Sbp2 has a last_orb pointer which indicates in what way a new command should be announced. That pointer is concurrently accessed at various occasions. Furthermore, initiator and target are accessing the next_ORB field of ORBs concurrently and asynchronously. This patch does: - Protect all initiator accesses to last_orb by sbp2_command_orb_lock. - Add pci_dma_sync_single_for_device before a previously submitted ORB's next_ORB field is overwritten. - Insert a memory barrier between when next_ORB_lo and next_ORB_hi are overwritten. Next_ORB_hi must not be updated before next_ORB_lo. - Remove the rather unspecific and now superfluous qualifier "volatile" from the next_ORB fields. - Add comments on how last_orb is connected with what is known about the target's fetch agent's state. Signed-off-by: Stefan Richter commit 9154df538fa044ac2b729ae5c6c47cae09e6977f Author: Stefan Richter Date: Sun Jul 23 22:01:00 2006 +0200 ieee1394: remove #include These includes in ieee1394_core and eth1394 are obsolete. Signed-off-by: Stefan Richter commit 9951903e616662e9a5dad5fbd296690e2ebbbc65 Author: Stefan Richter Date: Sun Jul 2 14:17:00 2006 +0200 ieee1394: shrink tlabel pools, remove tpool semaphores This patch reduces the size of struct hpsb_host and also removes semaphores from ieee1394_transactions.c. On i386, struct hpsb_host shrinks from 10656 bytes to 6688 bytes. This is accomplished by - using a single wait_queue for hpsb_get_tlabel instead of many instances of semaphores, - using a single lock to serialize access to all tlabel pools (the protected code regions are small, i.e. lock contention very low), - omitting the sysfs attribute tlabels_allocations. Drawback: In the rare case that a process needs to sleep because all transaction labels for the node are temporarily exhausted, it is also woken up if a tlabel for a different node became free, checks for an available tlabel, and is put to sleep again. The check is not costly and the situation occurs extremely rarely. (Tlabels are typically only exhausted if there was no context switch to the khpsbpkt thread which recycles tlables.) Therefore the benefit of reduced tpool size outweighs this drawback. The sysfs attributes tlabels_free and tlabels_mask are not compiled anymore unless CONFIG_IEEE1394_VERBOSEDEBUG is set. The by far biggest member of struct hpsb_host, the struct csr_control csr (5272 bytes on i386), is now placed at the end of struct hpsb_host. Note, hpsb_get_tlabel calls the macro wait_event_interruptible with a condition argument which has a side effect (allocation of a tlabel and manipulation of the packet). This side effect happens only if the condition is true. The patch relies on wait_event_interruptible not evaluating the condition again after it became true. Signed-off-by: Stefan Richter commit db53f28b3a6d9338cca1b7e917dc063ac99e1871 Author: Russell King Date: Wed Aug 30 15:14:56 2006 +0100 [MMC] Add multi block-write capability Add a capability flag for drivers to set when they can perform multi- block transfers to cards _and_ correctly report the number of bytes transferred should an error occur. The last point is very important - if a driver reports more bytes than were actually accepted by the card and an error occurs, there is the possibility for data loss. Pierre Ossman provided the patch for wbsd and sdhci. Signed-off-by: Pierre Ossman Signed-off-by: Russell King commit 132919ba80ad207755fe271277bfefff865a54fe Author: Russell King Date: Sun Aug 27 13:56:52 2006 +0100 [MMC] Remove data->blksz_bits member data->blksz_bits is unused now - remove it. Signed-off-by: Russell King commit 3bc87f243f64c953717bea058f4b458a57fc1a29 Author: Russell King Date: Sun Aug 27 13:51:28 2006 +0100 [MMC] Convert mmci to use data->blksz rather than data->blksz_bits Signed-off-by: Russell King commit a8336344a5fd1366eb3616d351c39cadcd077f43 Author: Steven Whitehouse Date: Thu Sep 14 13:57:38 2006 -0400 [GFS2] Fix glock hash clearing A one liner bug fix to prevent the return value being wrong when more than one superblock is mounted. Signed-off-by: Steven Whitehouse commit 4263cf0fac28122c8381b6f4f9441a43cd93c81f Author: Dmitry Torokhov Date: Thu Sep 14 01:32:39 2006 -0400 Input: make input_register_handler() return error codes Signed-off-by: Dmitry Torokhov commit 68c2a1607cd6dd12427c9566b39756e92708713c Author: Dmitry Torokhov Date: Thu Sep 14 01:32:28 2006 -0400 Input: remove cruft that was needed for transition to sysfs Signed-off-by: Dmitry Torokhov commit 655816e49867082d13ece0da31d76e12cc0de4a5 Author: Dmitry Torokhov Date: Thu Sep 14 01:32:14 2006 -0400 Input: fix input module refcounting Now that input_free_device is basically an alias for input_put_device we need to acquire a reference to input module right when we allocate device because input_dev_release releases reference to input module unconditionally. Signed-off-by: Dmitry Torokhov commit 66e66118837ed95a299328437c2d9fb4b5137352 Author: Dmitry Torokhov Date: Thu Sep 14 01:31:59 2006 -0400 Input: constify input core Signed-off-by: Dmitry Torokhov commit 5206c0d5ec514733dd098cf658d71327d199c7a0 Author: Dmitry Torokhov Date: Thu Sep 14 01:31:40 2006 -0400 Input: libps2 - rearrange exports The new way is to mark function as exported right after its definition. Signed-off-by: Dmitry Torokhov commit 9807879bfdc0c2b5106b4b378f5475c6a333d853 Author: Dmitry Torokhov Date: Thu Sep 14 01:31:27 2006 -0400 Input: atkbd - support Microsoft Natural Elite Pro keyboards Microsoft Natural Elite Pro keyboard produces unisual response to the GET ID command - single byte 0xaa (normally keyboards produce 2-byte response). Fail GET ID command so atkbd gets a change to do alternate probe. Signed-off-by: Dmitry Torokhov commit a91eaa16df5cd6c552e3a4a6e40e60ffbd9be951 Author: Dmitry Torokhov Date: Thu Sep 14 01:31:06 2006 -0400 Input: i8042 - disable MUX mode on Toshiba Equium A110 When keyboard controller is in active multiplexing mode ALPS touchpad may get detected twice. Since the box does not have external PS/2 ports simply disabling MUX mode is safe solution. Signed-off-by: Dmitry Torokhov commit 7dcd86e14319f4ceab883787ab2e00a5f860d14d Author: Kim Phillips Date: Wed Sep 13 17:41:55 2006 -0500 [POWERPC] Fix MPC8349EMDS dts PCI interrupt-map values for IDSEL 0x18 Fix MPC8349EMDS dts PCI interrupt-map values for IDSEL 0x18 per Tanya's catch. Signed-off-by: Kim Phillips Signed-off-by: Tanya Jiang Signed-off-by: Paul Mackerras commit f04da0bc36566ad17cf21e4ac8dbae377ca1dc75 Author: Olof Johansson Date: Wed Sep 13 13:32:39 2006 -0500 [POWERPC] Fix non-smp build This fixes a compile error that only surfaces on CONFIG_SMP=n builds; seems to get pulled in through another header file for SMP builds. This problem was introduced by the hvcall stats patch. Signed-off-by: Olof Johansson Signed-off-by: Paul Mackerras commit c233289c29369dba7177ca873e9b8ed457af2a78 Author: Jeff Garzik Date: Wed Sep 13 14:33:12 2006 -0400 drivers/net/phy/fixed: #if 0 some incomplete code Signed-off-by: Jeff Garzik commit 7282d491ecaee9883233a0e27283c4c79486279a Author: Jeff Garzik Date: Wed Sep 13 14:30:00 2006 -0400 drivers/net: const-ify ethtool_ops declarations Signed-off-by: Jeff Garzik commit 76fd85937097a0c2ec8ab23bf21dc10992d1c398 Author: Stephen Hemminger Date: Fri Sep 8 11:16:13 2006 -0700 [PATCH] ethtool: allow const ethtool_ops The ethtool_ops structure is immutable, it expected to be setup by the driver and is never changed. This patch allows drivers to declare there ethtool_ops structure read-only. Signed-off-by: Stephen Hemminger Signed-off-by: Jeff Garzik commit f65b138ca94326bbffe06ddc28e65606a249e58e Author: Stephen Hemminger Date: Wed Sep 6 12:45:02 2006 -0700 [PATCH] sky2: big endian Fix support for big endian platforms like PPC. Still not sure about VLAN acceleration (does it need swapping)? Signed-off-by: Stephen Hemminger Signed-off-by: Jeff Garzik commit b89165f2b75ba0a79eb5ed60924835cf3c54c51a Author: Stephen Hemminger Date: Wed Sep 6 12:44:53 2006 -0700 [PATCH] sky2: fiber support Fix the support for fiber connected gigabit boards. Allow half duplex gigabit to be configured. Signed-off-by: Stephen Hemminger Signed-off-by: Jeff Garzik commit 2eaba1a280b6380f5b1238c53ce62e4381fc5f97 Author: Stephen Hemminger Date: Wed Sep 6 12:44:47 2006 -0700 [PATCH] sky2: tx pause bug fix Fix problems with transmit pause frames. The driver was telling the GMAC to flush (not process) pause frames. Manually disabling pause wasn't working because of problems in the setup. This maybe the cause of the lockup under load. http://bugzilla.kernel.org/show_bug.cgi?id=6839 Patch against netdev-2.6 git tree Signed-off-by: Stephen Hemminger Signed-off-by: Jeff Garzik commit 6aa20a2235535605db6d6d2bd850298b2fe7f31e Author: Jeff Garzik Date: Wed Sep 13 13:24:59 2006 -0400 drivers/net: Trim trailing whitespace Signed-off-by: Jeff Garzik commit 7a291083225af6e22ffaa46b3d91cfc1a1ccaab4 Author: Jan-Bernd Themann Date: Wed Sep 13 17:44:31 2006 +0200 [PATCH] ehea: IBM eHEA Ethernet Device Driver Hi Jeff, I fixed the __iomem issue and tested the driver with sparse. Looks good so far. Thanks for your effort. Jan-Bernd Themann Signed-off-by: Jan-Bernd Themann drivers/net/Kconfig | 9 drivers/net/Makefile | 1 drivers/net/ehea/Makefile | 6 drivers/net/ehea/ehea.h | 447 ++++++ drivers/net/ehea/ehea_ethtool.c | 294 ++++ drivers/net/ehea/ehea_hcall.h | 51 drivers/net/ehea/ehea_hw.h | 287 ++++ drivers/net/ehea/ehea_main.c | 2654 ++++++++++++++++++++++++++++++++++++++++ drivers/net/ehea/ehea_phyp.c | 705 ++++++++++ drivers/net/ehea/ehea_phyp.h | 455 ++++++ drivers/net/ehea/ehea_qmr.c | 582 ++++++++ drivers/net/ehea/ehea_qmr.h | 358 +++++ 12 files changed, 5849 insertions(+) Signed-off-by: Jeff Garzik commit 7de745e56244156233e5cdd62b462e52e638d408 Author: Don Fry Date: Wed Sep 13 10:16:53 2006 -0700 [PATCH] pcnet32: NAPI implementation Implement NAPI changes to pcnet32 driver. Compile default is off. Listed as experimental. Len and Don both worked on a NAPI implementation and have both tested these changes. An e1000 blasting short packets to the pcnet32 will lockup Don's system until the receive storm stops. Without NAPI Len's system watchdog would expire causing the system to reboot. With NAPI the system will stay operational. Tested ia32 and ppc64. Tested '970A, '971, '972, '973, '975, '976, and '978. The Kconfig changes came from Len. Don is to blame for all the others. Signed-off-by: Len Sorensen Signed-off-by: Don Fry Signed-off-by: Jeff Garzik commit 3904c324148930bad5d9b97fdf66c63e7682b546 Author: Don Fry Date: Wed Sep 13 10:16:38 2006 -0700 [PATCH] pcnet32: break receive routine into two pieces. Breaking the receive frame processing into two routines for greater clarity. Tested ia32 and ppc64. Signed-off-by: Don Fry Signed-off-by: Jeff Garzik commit 9691edd26cfae0484367a6b8e3d46f3a5179e663 Author: Don Fry Date: Wed Sep 13 10:16:21 2006 -0700 [PATCH] pcnet32: move/create receive and transmit routines Move the receive routine and create the transmit routine. Tested ia32 and ppc64. Signed-off-by: Don Fry Signed-off-by: Jeff Garzik commit b368a3fbe41c44e4c7eb628002bbd8891defa7e0 Author: Don Fry Date: Wed Sep 13 10:16:07 2006 -0700 [PATCH] pcnet32: magic number cleanup Change some magic numbers to clearer names. A few whitespace changes. Tested ia32 and ppc64. Signed-off-by: Don Fry Signed-off-by: Jeff Garzik commit 5c99346a3358a9c3c3fcf38669c05ac5f06832c9 Author: Don Fry Date: Wed Sep 13 10:15:43 2006 -0700 [PATCH] pcnet32: remove unnecessary save/restore register accesses. Delete unnecessary save/restore of rap in interrupt handler and statistics. tested ia32 and ppc64. Signed-off-by: Don Fry Signed-off-by: Jeff Garzik commit faa31ce85f626dff30ba865684bd1f0ad97a9ca0 Author: Steven Whitehouse Date: Wed Sep 13 11:13:27 2006 -0400 [GFS2] Tidy up log.c Based upon previous feedback from lkml and also removing some commented out debugging which is no longer needed. Signed-off-by: Steven Whitehouse commit 16feb9fec0e1f74339bd6992130ceedb3aa9567e Author: Steven Whitehouse Date: Wed Sep 13 10:43:37 2006 -0400 [GFS2] Use atomic_t rather than kref in glock.c Use atomic_t as the ref count in glocks rather than a kref. This is another step towards using RCU for the glock hash. Signed-off-by: Steven Whitehouse commit 3dd836a56de0d4f049438412959b905e1db4666e Author: David Howells Date: Tue Sep 12 16:04:25 2006 +0100 [POWERPC] Export copy_4K_page() Export copy_4K_page() for use by modules via copy_page() (such as CacheFiles). Signed-Off-By: David Howells Signed-off-by: Paul Mackerras commit 26c8af5f01dfb91f709cc2ba07fb650949aae13e Author: Olaf Hering Date: Fri Sep 8 16:29:21 2006 +0200 [POWERPC] print backtrace when entering xmon xmon does not print a backtrace per default. This is bad on systems with USB keyboard, the most needed info about the crash is lost. print a backtrace during the very first xmon entry. Booting with xmon=nobt disables the autobacktrace functionality. Signed-off-by: Olaf Hering Signed-off-by: Paul Mackerras commit 87fd7724d4022913ae8dbee3ed55cd04f2c316a6 Author: Olof Johansson Date: Thu Sep 7 15:18:08 2006 -0500 [POWERPC] Quiet hvc_console console output on failed opens No other tty driver will print on the console when the open of it fails. On systems that happen to be configured for both ttyS0 and hvc0 console, this will keep flooding the console output. This is most likely to happen with systems booted between with and without hypervisor from the same filesystem. Let's just remove it. When it's really needed (i.e. when the open fails and someone is trying to debug it), noone will see the output anyway. And init will report the opens failing in due time through the syslog. Signed-off-by: Olof Johansson Acked-by: Ryan S. Arnold Signed-off-by: Paul Mackerras commit 06e6d290ac7a9fb6fcec3a2207988163709f06aa Author: Josh Boyer Date: Thu Sep 7 08:25:40 2006 -0500 [POWERPC] PPC: Fix Kconfig whitespace warnings Fix the following whitespace warnings when compiling with ARCH=ppc arch/ppc/Kconfig:1207:warning: leading whitespace ignored arch/ppc/Kconfig:1226:warning: leading whitespace ignored arch/ppc/Kconfig:1231:warning: leading whitespace ignored Also fix a typo ("Supprt"). Signed-off-by: Josh Boyer Signed-off-by: Paul Mackerras commit 57852a853b0d6761f270be0961d5d8387e98c8bb Author: Mike Kravetz Date: Wed Sep 6 16:23:12 2006 -0700 [POWERPC] powerpc: Instrument Hypervisor Calls Add instrumentation for hypervisor calls on pseries. Call statistics include number of calls, wall time and cpu cycles (if available) and are made available via debugfs. Instrumentation code is behind the HCALL_STATS config option and has no impact if not enabled. Signed-off-by: Mike Kravetz Signed-off-by: Paul Mackerras commit ab06ff3af34a6288b314862abfebd86ad918c5d9 Author: Olof Johansson Date: Wed Sep 6 14:44:54 2006 -0500 [POWERPC] powerpc: PA Semi PWRficient MAINTAINER entry Maintainer entry for PWRficient Signed-off-by: Olof Johansson Signed-off-by: Paul Mackerras commit 1e76875e51266a5c43f601ecf08a92be5769228c Author: Olof Johansson Date: Wed Sep 6 14:42:08 2006 -0500 [POWERPC] powerpc: PA Semi PWRficient platform support Base patch for PA6T and PA6T-1682M. This introduces the arch/powerpc/platform/pasemi directory, together with basic implementations for various setup. Much of this was based on other platform code, i.e. Maple, etc. Signed-off-by: Olof Johansson Signed-off-by: Paul Mackerras commit b3ebd1d862d6c23caa58e40d341eefc426f835e1 Author: Olof Johansson Date: Wed Sep 6 14:35:57 2006 -0500 [POWERPC] powerpc: PA6T cputable entry, PVR value Introduce PWRficient PA6T cputable entries and feature bits. Signed-off-by: Olof Johansson Signed-off-by: Paul Mackerras commit 0024300000769eadcb4a4fcdff531d45ee7735d4 Author: Olof Johansson Date: Wed Sep 6 14:35:19 2006 -0500 [POWERPC] powerpc: Divorce CPU_FTR_CTRL from CPU_FTR_PPCAS_ARCH_V2_BASE The performance monitor implementation (including CTRL register behaviour) is just included in PPC v2 as an example, it's not truly part of the base. It's actually a somewhat misleading feature, but I'll leave that be for now: The presence of the register is not what the feature bit is used for, but instead it's used to determine if it contains the runlatch bit for idle reporting of the performance monitor. For alternative implementations, the register might still exist but the bit might have different meaning (or no meaning at all). For now, split it off and don't include it in CPU_FTR_PPCAS_ARCH_V2_BASE. Signed-off-by: Olof Johansson Signed-off-by: Paul Mackerras commit 5a2fe38d2844ba2f2dd8f4946d795e09d8f7e095 Author: Olof Johansson Date: Wed Sep 6 14:34:41 2006 -0500 [POWERPC] powerpc: Reduce default cacheline size to 64 bytes Reduce default cacheline size on 64-bit powerpc from 128 bytes to 64. This is the architected minimum. In most cases we'll still end up using cache line information from the device tree, but defaults are used during early boot and doing a few dcbst/icbi's too many there won't do any harm. Signed-off-by: Olof Johansson Signed-off-by: Paul Mackerras commit b7e89214aadf82fa5eaff28f50f2078fa6ae773c Author: Josh Boyer Date: Thu Sep 7 13:27:58 2006 -0500 [POWERPC] PPC 4xx: Enable XMON on PPC 4xx boards The following patch allows XMON to run on the 4xx platform. Tested on Walnut, Ebony, and Nova (440GX based) eval boards. 440EP, 440SP, and 440SPE boards should work as well. Patch is against 2.6.18-rc6. Signed-off-by: Josh Boyer Signed-off-by: Paul Mackerras commit 477bcae4c289a60f2303fbd4a3a875dcca647cf8 Author: Corey Minyard Date: Wed Sep 6 09:02:53 2006 -0500 [POWERPC] Make function of pm_power_off consistent with x86 Allow the pm_power_off function variable in PPC to work as an override. This makes the function consistent with the other architectures and it allows generic poweroff operations (like those provided in IPMI systems) to work properly on PPC. Signed-off-by: Corey Minyard Cc: Joseph Barnett Signed-off-by: Paul Mackerras commit c3412dcb75ff4d64b44bedc72761d5707d19edf7 Author: Will Schmidt Date: Wed Aug 30 13:11:38 2006 -0500 [POWERPC] Emulate power5 popcntb instruction In an attempt to make it easier for a power5 optimized app to run on a power4 or a 970 or random earlier machine, this provides emulation of the popcntb instruction. Signed-off-by: Will Schmidt Signed-off-by: Paul Mackerras commit f50d4cfc98d70f919afb2924b1b53c36b2f4e62f Author: Michael Ellerman Date: Thu Aug 24 16:54:08 2006 +1000 [POWERPC] Split out vpa unregister logic from pseries_kexec_cpu_down_xics() As part of the new irq code pseries_kexec_cpu_down() was split into a xics and mpic version. The vpa unregister logic is now only done in the xics routine, and although that's ok in practice (we don't have SPLPAR machines with mpic), I'd rather have the two concepts stay separate. So move the vpa unregister into pseries_kexec_cpu_down(), which gets called by both the xics and mpic routines. This also gives us an obvious place to put any new kexec-down logic needed in future. Signed-off-by: Michael Ellerman Signed-off-by: Paul Mackerras commit b0fea350ce515c6ae01e0f259d9b1ffdec824e22 Author: Jeff Garzik Date: Wed Sep 13 00:25:23 2006 -0400 [libata] ata_piix: build fix Spotted by Andrew Morton. Signed-off-by: Jeff Garzik commit d3148ce9a65813a8020473739c200cb63036f84c Author: Auke-Jan H Kok Date: Tue Sep 12 10:46:15 2006 -0700 [PATCH] e1000: revert 'e1000: Remove 0x1000 as supported device' The commit 'e1000: Remove 0x1000 as supported device' (Jeff Kirsher, 673a052fde79ab5e9dce569b0336358812ddba2d) Removes PIC device ID 8086:1000 from the list of supported devices. A fix was submitted for the original issue (commit 6a9516989f94df10d9a27ba543c6b53b3e69c84a). This commit reverts commit 673a052fde79ab5e9dce569b0336358812ddba2d and re-enables 82542rev3 chips completely. Signed-off-by: Auke Kok Signed-off-by: Jeff Garzik commit 65396410af63db90d6428c678ff84aa652c3c1ec Author: Henrik Kretzschmar Date: Tue Sep 12 23:49:33 2006 +0200 [SCSI] wd33c93: Scsi_Cmnd convertion Changes obsolete typedef'd Scsi_Cmnd to struct scsi_cmnd. Signed-off-by: Henrik Kretzschmar Signed-off-by: James Bottomley commit 48907e39890590792c58272604cfb34ad1d80054 Author: Francois Romieu Date: Sun Sep 10 23:33:44 2006 +0200 8139cp: ring_info removal for the transmit path As long as the descriptor fits on a single cacheline, the change should be almost free. Now ring_info is not used at all. Remove it. Signed-off-by: Francois Romieu commit 76ff3c6e3b389a5a7692811dd456e0ff58340cac Author: Alan Cox Date: Tue Sep 12 17:14:03 2006 +0100 [PATCH] pata_amd: Check enable bits on Nvidia A couple of people reported long delays on probe with the newer kernels and Nvidia PATA. This turned out to be because the Nvidia path forgot to check the enable bits so probed empty ports. Signed-off-by: Alan Cox Signed-off-by: Jeff Garzik commit af323a2fb508b0fa1c1fa91cbc6ec86fb0879c07 Author: Alan Cox Date: Tue Sep 12 17:15:12 2006 +0100 [PATCH] Update SiS PATA New chipset identifiers Signed-off-by: Alan Cox Signed-off-by: Jeff Garzik commit d5b20697ca37d80cc4ec2ba3c5ddf1339dc1d49a Author: Andy Gospodarek Date: Mon Sep 11 17:39:18 2006 -0400 [PATCH] Remove more unnecessary driver printk's As I promised last week, here is the first pass at removing all unnecessary printk's that exist in network device drivers currently in promiscuous mode. The duplicate messages are not needed so they have been removed. Some of these drivers are quite old and might not need an update, but I did them all anyway. I am currently auditing the remaining conditional printk's and will send out a patch for those soon. Signed-off-by: Andy Gospodarek Signed-off-by: Jeff Garzik commit a506b44bb5000b2652490a906c3e58beb2a8f6bb Author: Daniel Walker Date: Sat Sep 9 09:31:03 2006 -0700 [SCSI] fix compile error on module_refcount LD .tmp_vmlinux1 drivers/built-in.o(.text+0x8e1f9): In function `scsi_device_put': drivers/scsi/scsi.c:887: undefined reference to `module_refcount' make: *** [.tmp_vmlinux1] Error 1 There are only two users of module_refcount() outside of kernel/module.c and the other one uses ifdef's similar to this. Signed-Off-By: Daniel Walker Signed-off-by: James Bottomley commit b6397893a5ed81970e803d61ee2f1a0e79f87438 Author: Steven Whitehouse Date: Tue Sep 12 10:10:01 2006 -0400 [GFS2] Use hlist for glock hash chains This results in smaller list heads, so that we can have more chains in the same amount of memory (twice as many). I've multiplied the size of the table by four though - this is because we are saving memory by not having one lock per chain any more. So we land up using about the same amount of memory for the hash table as we did before I started these changes, the difference being that we now have four times as many hash chains. The reason that I say "about the same amount of memory" is that the actual amount now depends upon the NR_CPUS and some of the config variables, so that its not exact and in some cases we do use more memory. Eventually we might want to scale the hash table size according to the size of physical ram as measured on module load. Signed-off-by: Steven Whitehouse commit 24264434603cc102d71fb2a1b3b7e282a781f449 Author: Steven Whitehouse Date: Mon Sep 11 21:40:30 2006 -0400 [GFS2] Rewrite of examine_bucket() The existing implementation of this function in glock.c was not very efficient as it relied upon keeping a cursor element upon the hash chain in question and moving it along. This new version improves upon this by using the current element as a cursor. This is possible since we only look at the "next" element in the list after we've taken the read_lock() subsequent to calling the examiner function. Obviously we have to eventually drop the ref count that we are then left with and we cannot do that while holding the read_lock, so we do that next time we drop the lock. That means either just before we examine another glock, or when the loop has terminated. The new implementation has several advantages: it uses only a read_lock() rather than a write_lock(), so it can run simnultaneously with other code, it doesn't need a "plug" element, so that it removes a test not only from this list iterator, but from all the other glock list iterators too. So it makes things faster and smaller. Signed-off-by: Steven Whitehouse commit 884d3a2bad7293e56fe99d9322a1090bfdfd7c4e Author: Christian Steineck Date: Fri Sep 8 23:51:34 2006 +0200 [PATCH] hostap_cs: added support for Proxim Harmony PCI W-Lan card hostap_cs driver - added support for Proxim Harmony PCI W-Lan Card (uses pd6729 based pcmcia2pci bridge) Signed-off-by: Christian Steineck Signed-off-by: John W. Linville commit dca762d63a6fd62599f0d5d18525fa347fa1772a Author: Larry Finger Date: Thu Sep 7 11:17:05 2006 -0500 [PATCH] bcm43xx: remove dead code in bcm43xx_sysfs.c Coverity CID 1160 & 1161 Remove some dead code from bcm43xx_sysfs.c in 2.6.18-rc6 Signed-off-by: Darren Jenkins Signed-off-by: Larry Finger Signed-off-by: John W. Linville commit 87d263271b1bbf344c596ac308417ff692ddc851 Author: Larry Finger Date: Thu Sep 7 10:12:11 2006 -0500 [PATCH] bcm43xx: ucode debug status via sysfs This patch prints out the ucode debug status to sysfs. So, users can watch the microcode status of their hardware. Signed-off-by: Martin Langer Signed-off-by: Larry Finger Signed-off-by: John W. Linville commit 1ef4583ee3e1efab83d05b6ccdad378c9caaa95f Author: Larry Finger Date: Mon Sep 4 17:13:57 2006 -0500 [PATCH] bcm43xx: Add firmware version printout This patch prints microcode revision, patchlevel, date and time to KERN_INFO. Also, version 4.xx microcodes (rev>0x128) will be rejected by the driver, because they still do not work. Signed-off-by: Martin Langer Acked-by: Michael Buesch Signed-off-by: Larry Finger Signed-off-by: John W. Linville commit 6807b5076373b8a6b6dac3b3b54645c85df91ad6 Author: Larry Finger Date: Sun Sep 3 23:38:56 2006 -0500 [PATCH] bcm43xx: remove dead statistics code This patch removes code that was make obsolete when the wireless statistics in bcm43xx-softmac were changed, but was overlooked at that time. The value of bcm->stats.link_quality computed here is never used. Signed-off-by: Larry Finger Signed-off-by: John W. Linville commit bd6dd756522f3874b0efe576f9c25f5dee239646 Author: Jean Tourrilhes Date: Tue Aug 29 18:19:23 2006 -0700 [PATCH] Prism54 : add bitrates to scan result This patch adds bitrate information to the scan result in the Prism54 driver, like some/most other driver do. Signed-off-by: Jean Tourrilhes Signed-off-by: John W. Linville commit 4e1bbd846d00a245dcf78b6b331d8a9afed8e6d7 Author: Ulrich Kunitz Date: Tue Aug 29 23:51:43 2006 +0100 [PATCH] zd1211rw: Removed unneeded packed attributes Inspired by an e-mail by Stephen Hemminger I decided to remove all unneeded packed attributes from the code where the member variables are already aligned. This avoids horrible code being generated on some architectures. Signed-off-by: Ulrich Kunitz Signed-off-by: Daniel Drake Signed-off-by: John W. Linville commit fc3e39bef9ef5eb594ab2a35206b9b049c36320a Author: Daniel Drake Date: Tue Aug 29 23:49:53 2006 +0100 [PATCH] zd1211rw: Add ID for Asus WL-159g Tested by Vincent TOUCHARD zd1211 chip 0b05:170c v4802 high 00-11-d8 AL2230_RF pa0 g--- Signed-off-by: Daniel Drake Signed-off-by: John W. Linville commit fca2714f27376caa04c3127c802a553b295eaa32 Author: Daniel Drake Date: Tue Aug 29 23:49:32 2006 +0100 [PATCH] zd1211rw: Add ID for Siemens Gigaset USB Stick 54 Tested by Martin Dummer. zd1211 chip 0b3b:5630 v4330 high 00-01-e3 RF2959_RF pa0 --- Signed-off-by: Daniel Drake Signed-off-by: John W. Linville commit 6aeb3dddb7c6697c083582a0757078e163758971 Author: Larry Finger Date: Mon Sep 11 16:46:26 2006 -0400 [PATCH] bcm43xx: Correct out of sequence initialization step This patch fixes an out of sequence step in the bcm43xx_init_board routine for bcm43xx-softmac. Signed-off-by: Larry Finger Signed-off-by: John W. Linville commit 7d4b0394bbf5e306ff9d5753163a07187131bfd8 Author: Larry Finger Date: Mon Aug 21 09:43:44 2006 -0500 [PATCH] bcm43xx-softmac: Init, shutdown and restart fixes This fixes various bugs in the init and shutdown code that would lead to lockups and crashes. Signed-Off-By: Larry Finger Signed-off-by: John W. Linville commit b39fe41f481d20c201012e4483e76c203802dda7 Author: Francois Romieu Date: Mon Sep 11 20:10:58 2006 +0200 r8169: quirk for the 8110sb on arm platform Inverting the write ordering of the TxDescAddr{High/Low} registers suffices to trigger a sabbat of PCI errors which make the device completely dysfunctional. The issue has not been reported on a different platform. Switching from MMIO accesses to I/O ones as done in Realtek's own driver fixes (papers over ?) the bug as well but I am not thrilled to see everyone pay the I/O price for an obscure bug. This is the minimal change to handle the issue. Signed-off-by: Francois Romieu Reported-by: Lennert Buytenhek commit 0486a8c83b0f83c52c4d93accd841e08ccdf04dc Author: Stephen Hemminger Date: Wed Sep 6 11:06:10 2006 -0700 [PATCH] skge: check for PCI hotplug during IRQ Check if IRQ came from hardware fault (hotplug). Signed-off-by: Stephen Hemminger Signed-off-by: Jeff Garzik commit 2a2fc64481ed48ef0952d03979b053d1e6ba89dc Author: Andy Gospodarek Date: Fri Sep 8 08:41:48 2006 -0400 [PATCH] cleanup unnecessary forcedeth printk This removes unnecessary messages that show up every time I put my ethernet card in promiscuous mode. I'm already getting notification from the networking layer, I don't need notification from the driver as well. There are probably other drivers that do this as well -- I'll look around and see what I can find. Signed-off-by: Andy Gospodarek Signed-off-by: Jeff Garzik commit 9f486ae1d9ea700a952b77a8881de05ebc1610c3 Author: Valerie Henson Date: Fri Sep 8 11:15:41 2006 -0700 [PATCH] Handle pci_enable_device() errors in resume Signed-off-by: Valerie Henson Cc: Jeff Garzik Signed-off-by: Jeff Garzik commit 42eab56776b7c9686ee39f8f677a3e3b09caa170 Author: Grant Grundler Date: Fri Sep 8 11:15:40 2006 -0700 [PATCH] Use tulip.h in winbond-840.c Include "tulip.h" in winbond-840.c and clean up lots of redundant definitions. Signed-off-by: Grant Grundler Signed-off-by: Kyle McMartin Signed-off-by: Valerie Henson Signed-off-by: Jeff Garzik commit 7f2b12482c86d69ed1804d239a52ea846ef294f2 Author: Grant Grundler Date: Fri Sep 8 11:15:39 2006 -0700 [PATCH] Clean up tulip.h Update/cleanup some definitions in tulip.h and tulip_core.c. Signed-off-by: Grant Grundler Signed-off-by: Kyle McMartin Signed-off-by: Valerie Henson Signed-off-by: Jeff Garzik commit 0bb3cf726b37c13abce9f9134a68b94aa10e8803 Author: Francois Romieu Date: Fri Sep 8 11:15:38 2006 -0700 [PATCH] Defer tulip_select_media() to process context Move tulip_select_media() processing to a workqueue, instead of delaying in interrupt context, edited by Kyle McMartin to use kevent thread, instead of creating its own workqueue. Signed-off-by: Kyle McMartin Signed-off-by: Valerie Henson Signed-off-by: Jeff Garzik commit 40c0d87948ab635e814f45664259d4cc193651a1 Author: Grant Grundler Date: Fri Sep 8 11:15:37 2006 -0700 [PATCH] Flush MMIO writes in reset sequence The obvious safe registers to read is one from PCI config space. Signed-off-by: Grant Grundler Signed-off-by: Kyle McMartin Signed-off-by: Valerie Henson Signed-off-by: Jeff Garzik commit b892de0bd79d534ff4dcbae7aa2ad5b63e23e9fd Author: Thibaut Varene Date: Fri Sep 8 11:15:36 2006 -0700 [PATCH] Make DS21143 printout match lspci output Signed-off-by: Thibaut Varene Signed-off-by: Kyle McMartin Signed-off-by: Valerie Henson Signed-off-by: Jeff Garzik commit c69f412219855c9525c96052a65b60814531977c Author: Grant Grundler Date: Fri Sep 8 11:15:35 2006 -0700 [PATCH] Print physical address in tulip_init_one As the cookie returned by pci_iomap() is fairly useless... [Compile warning on pci_resource_start() format fixed up by Valerie Henson.] Signed-off-by: Grant Grundler Signed-off-by: Kyle McMartin Signed-off-by: Valerie Henson Signed-off-by: Jeff Garzik commit 6b92801b43441f1f0280c332b966b75c74222060 Author: Valerie Henson Date: Fri Sep 8 11:15:34 2006 -0700 [PATCH] Change tulip maintainer Signed-off-by: Valerie Henson Signed-off-by: Jeff Garzik MAINTAINERS | 4 ++-- drivers/net/tulip/21142.c | 2 +- drivers/net/tulip/eeprom.c | 2 +- drivers/net/tulip/interrupt.c | 2 +- drivers/net/tulip/media.c | 2 +- drivers/net/tulip/pnic.c | 2 +- drivers/net/tulip/pnic2.c | 2 +- drivers/net/tulip/timer.c | 2 +- drivers/net/tulip/tulip_core.c | 2 +- 9 files changed, 10 insertions(+), 10 deletions(-) commit de9ce703c6b807b1dfef5942df4f2fadd0fdb67a Author: Dmitry Torokhov Date: Sun Sep 10 21:57:21 2006 -0400 Input: i8042 - get rid of polling timer Remove polling timer that was used to detect keybord/mice hotplug and register both IRQs right away instead of waiting for a driver to attach to a port. Signed-off-by: Dmitry Torokhov commit 6d2750c167d47a97936cf4415165205f945c08f8 Author: Dmitry Torokhov Date: Sun Sep 10 21:56:06 2006 -0400 Input: send key up events at disconnect Emit key up events for all pressed keys/buttons when disconnecting an input device. Cures "stuck" enter key effect when unloading keyboard module. Signed-off-by: Dmitry Torokhov commit e38de678f6b19be3e46a678ec4deeaa7fa0fc140 Author: Helge Deller Date: Sun Sep 10 21:54:39 2006 -0400 Input: constify psmouse driver Signed-off-by: Helge Deller Signed-off-by: Dmitry Torokhov commit edf03fb0575cbee2595a63374b17dc0921f2094a Author: Dave Jones Date: Sun Sep 10 21:12:20 2006 -0400 [AGPGART] Rework AGPv3 modesetting fallback. Sometimes the logic to handle AGPx8->AGPx4 fallback failed, as can be seen in https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=197346 The failures occured if the bridge was in AGPx8 mode, but the user hadn't specified a mode in their X config. We weren't setting the mode to the highest mode capable by the video card+bridge (as we do in the AGPv2 case), which was leading to all kinds of mayhem including us believing that after falling back from AGPx8, that we couldn't do x4 mode (which is disastrous in AGPv3, as those are the only two modes possible). Signed-off-by: Dave Jones commit 08da3f413f6aa3eb48cfc5331c68e57393167fe5 Author: Dave Jones Date: Sun Sep 10 21:09:26 2006 -0400 [AGPGART] Add suspend callback for i965 Signed-off-by: Dave Jones commit 94610610f10749c0e17b4d2840ff8a7cb636c413 Author: Steven Whitehouse Date: Sat Sep 9 18:59:27 2006 -0400 [GFS2] Remove unused function from glock.c The callback for iopen locks is unused, so this removes it. Signed-off-by: Steven Whitehouse commit a5e08a9ef50e8b6feb099f8e4b253df04f5ec9db Author: Steven Whitehouse Date: Sat Sep 9 17:07:05 2006 -0400 [GFS2] Add consts to glock sorting function Add back the consts which were casted away in the glock sorting function. Also add early exit code. Signed-off-by: Steven Whitehouse commit 087efdd391f47305dc251a7b00dcc5d69e8c636a Author: Steven Whitehouse Date: Sat Sep 9 16:59:11 2006 -0400 [GFS2] Make glock hash locks proportional to NR_CPUS Make the number of locks used for hash chains in glock.c proportional to NR_CPUS. Also move constants for the number of hash chains into glock.c from incore.h since they are not used outside of glock.c. Signed-off-by: Steven Whitehouse commit ff6af411ae65da95a1801668b9580c5c33f0f7d1 Author: Steven Whitehouse Date: Sat Sep 9 16:56:34 2006 -0400 [GFS2] vfree should be kfree (II) The superblock is now created with kmalloc, not vmalloc. Signed-off-by: Steven Whitehouse commit fa9f0e4925c7796afd14bf7bbf7a064078818bbc Author: David Teigland Date: Fri Sep 8 08:36:35 2006 -0500 [DLM] confirm master for recovered waiting requests Fixing the following scenario: - A request is on the waiters list waiting for a reply from a remote node. - The request is the first one on the resource, so first_lkid is set. - The remote node fails causing recovery. - During recovery the requesting node becomes master. - The request is now processed locally instead of being a remote operation. - At this point we need to call confirm_master() on the resource since we're certain we're now the master node. This will clear first_lkid. - We weren't calling confirm_master(), so first_lkid was not being cleared causing subsequent requests on that resource to get stuck. Signed-off-by: David Teigland Signed-off-by: Steven Whitehouse commit 37b2fa6a24f996d751dc80fbc8a77602cead269b Author: Steven Whitehouse Date: Fri Sep 8 13:35:56 2006 -0400 [GFS2] Move rwlocks in glock.c into their own array This splits the rwlocks guarding the hash chains of the glock hash table into their own array. This will reduce memory usage in some cases due to better alignment, although the real reason for doing it is to allow the two tables to be different sizes in future (i.e. the locks will be sized proportionally with the max number of CPUs and the hash chains sized proportinally with the size of physical memory) In order to allow this, the gl_bucket member of struct gfs2_glock has now become gl_hash, so we record the hash rather than a pointer to the bucket itself. Signed-off-by: Steven Whitehouse commit 9b47c11d1cbedcba685c9bd90c73fd41acdfab0e Author: Steven Whitehouse Date: Fri Sep 8 10:17:58 2006 -0400 [GFS2] Use void * instead of typedef for locking module interface As requested by Jan Engelhardt, this removes the typedefs in the locking module interface and replaces them with void *. Also since we are changing the interface, I've added a few consts as well. Cc: Jan Engelhardt Cc: David Teigland Signed-off-by: Steven Whitehouse commit a2c4580797f62b0dd9a48f1e0ce3fe8b8fd76262 Author: Steven Whitehouse Date: Fri Sep 8 10:13:03 2006 -0400 [GFS2] vfree should be kfree This was missed in an earlier patch when changing over from vmalloc to kmalloc for the superblock. Signed-off-by: Steven Whitehouse commit 5ce311ebdb90429519f7c6d2092e4ae6ca8cba74 Author: Steven Whitehouse Date: Thu Sep 7 17:35:48 2006 -0400 [GFS2] Remove unused sync_lvb code from lock modules This code is no longer used for anything and can be removed from the locking modules. The sync_lvb function is not required as this happens automatically with the current locking system. Signed-off-by: Steven Whitehouse commit 2b7cbe20174695bca1afe2a8f755e1eb299f4768 Author: James Bottomley Date: Thu Sep 7 15:14:46 2006 -0500 [SCSI] fix up SCSI netlink build CONFIG_SCSI_NETLINK can become a bool since the item its selecting (CONFIG_NET) cannot be a module. Signed-off-by: James Bottomley commit a01e70e570a72b8a8c9a58062e4f5bdcd3986222 Author: James Bottomley Date: Wed Sep 6 19:28:07 2006 -0500 [SCSI] aci94xx: implement link rate setting This patch implements the ability to set the minimum and maximum linkrates for both libsas (for expanders) and aic94xx (for the host phys). It also tidies up the setting of the hardware min and max to make sure they're updated when the expander emits a change broadcast. Signed-off-by: James Bottomley commit d24e1eeb3a16e4944288c2f3bf082e1513f4b425 Author: James Bottomley Date: Wed Sep 6 19:25:22 2006 -0500 [SCSI] scsi_transport_sas: make minimum and maximum linkrate settable quantities According to SPEC, the minimum_linkrate and maximum_linkrate should be settable by the user. This patch introduces a callback that allows the sas class to pass these settings on to the driver. Signed-off-by: James Bottomley commit 1c089c325d5cda0f64a3cf8edf3aaafa148f200a Author: Steven Whitehouse Date: Thu Sep 7 15:50:20 2006 -0400 [GFS2] Remove one typedef This removes one of the typedefs from the locking interface. It is replaced by a forward declaration of the gfs2 superblock. The other two are not so easy to solve since in their case, they can refer to one of two possible structures. Cc: David Teigland Cc: Jan Engelhardt Signed-off-by: Steven Whitehouse commit b9201ce9a826f5ae4a8e153b52cf5d29f525ca11 Author: Steven Whitehouse Date: Thu Sep 7 14:46:39 2006 -0400 [GFS2] Forgot to remove unused include vmalloc.h Excatly as the subject line says. Signed-off-by: Steven Whitehouse commit 85d1da67f7e1239afa3494d05be87da6fc3ecada Author: Steven Whitehouse Date: Thu Sep 7 14:40:21 2006 -0400 [GFS2] Move glock hash table out of superblock There are several reasons why we want to do this: - Firstly its large and thus we'll scale better with multiple GFS2 fs mounted at the same time - Secondly its easier to scale its size as required (thats a plan for later patches) - Thirdly, we can use kzalloc rather than vmalloc when allocating the superblock (its now only 4888 bytes) - Fourth its all part of my plan to eventually be able to use RCU with the glock hash. Signed-off-by: Steven Whitehouse commit 88edf74610bd894b93438f389688bc8b4a2d3414 Author: James Bottomley Date: Wed Sep 6 17:36:13 2006 -0500 [SCSI] SAS: consolidate linkspeed definitions At the moment we have two separate linkspeed enumerations covering roughly the same values. This patch consolidates on a single one enum sas_linkspeed in scsi_transport_sas.h and uses it everywhere in the aic94xx driver. Eventually I'll get around to removing the duplicated fields in asd_sas_phy and sas_phy ... Signed-off-by: James Bottomley commit b4620233d6a3510564c561a5a2a365a1d8a34b68 Author: Henrik Kretzschmar Date: Wed Sep 6 10:49:48 2006 +0200 [SCSI] scsi-driver ultrastore replace Scsi_Cmnd with struct scsi_cmnd Signed-off-by: Henrik Kretzschmar Signed-off-by: James Bottomley commit b8547856f9c158ff70effbcfd15969c908fbe1b3 Author: Steven Whitehouse Date: Thu Sep 7 13:12:27 2006 -0400 [GFS2] Add gfs2 superblock to glock hash function This is another patch preparing for sharing of the glock hash table between different gfs2 mounts. Signed-off-by: Steven Whitehouse commit f479ab87936563a286b8aa0e39003c40fa31c6da Author: James Bottomley Date: Wed Sep 6 09:00:29 2006 -0500 [SCSI] fix up non-modular SCSI The recent change to the way scsi_device_get()/put() work broke the non modular build (we do a module_refcount on a NULL). Fix this by checking for non-null before checking module_refcount(). Signed-off-by: James Bottomley commit 884d25cc4fda20908fd4ef93dbb41d817984b68b Author: James Bottomley Date: Tue Sep 5 16:26:41 2006 -0500 [SCSI] Fix refcount breakage with 'echo "1" > scan' when target already present Spotted by: Dan Aloni The problem is there's inconsistent locking semantic usage of scsi_alloc_target(). Two callers assume the target comes back with reference unincremented and the third assumes its incremented. Fix by always making the reference incremented on return. Also fix path in target alloc that could consistently increment the parent lock. Finally document scsi_alloc_target() so its callers know what the expectations are. Signed-off-by: James Bottomley commit 62f140c173f2c85e15527eefc6e2fb3c37a97eb1 Author: Steven Whitehouse Date: Thu Sep 7 09:54:55 2006 -0400 [GFS2] Add brackets in locking/dlm/sysfs.c As per Jan Engelhardt's request. Cc: Jan Engelhardt Signed-off-by: Steven Whitehouse commit a1d144c71ddc11d3e9d9f29e92cf037da382a541 Author: David Teigland Date: Wed Sep 6 17:01:40 2006 -0500 [DLM] use snprintf in sysfs show Use snprintf(buf, PAGE_SIZE, ...) instead of sprintf in sysfs show methods. Signed-off-by: David Teigland Signed-off-by: Steven Whitehouse commit 3204a6c05588788f7686bc45585185a9a4788430 Author: David Teigland Date: Wed Sep 6 16:57:06 2006 -0500 [GFS2] use snprintf for sysfs show Use snprintf(buf, PAGE_SIZE, ...) instead of sprintf for sysfs show methods. Per instructions in Documentation/filesystems/sysfs.txt Signed-off-by: David Teigland Signed-off-by: Steven Whitehouse commit c53921248c79197befa7caa4c17b1af5c077a2c2 Author: Jan Engelhardt Date: Tue Sep 5 14:30:40 2006 +0200 [GFS2] More style changes Remove redundant brackets Signed-off-by: Jan Engelhardt Signed-off-by: Steven Whitehouse commit cff93eb3d3244cc117a5204fe1d62102b506afb9 Author: Adrian Bunk Date: Mon Sep 4 13:41:14 2006 +0200 [PATCH] make drivers/net/e1000/e1000_hw.c:e1000_phy_igp_get_info() static This patch makes the needlessly global e1000_phy_igp_get_info() static. Signed-off-by: Adrian Bunk Signed-off-by: Jeff Garzik commit c14635eb4e591c61e419c065df1fdacf9ff90c00 Author: Dave Jones Date: Wed Sep 6 11:59:35 2006 -0400 [AGPGART] Fix number of aperture sizes in 830 gart structs. Spotted by Eric Anholt. Signed-off-by: Dave Jones commit 65c25aadfa4e917060e99fe459f33a6a07db53cc Author: Eric Anholt Date: Wed Sep 6 11:57:18 2006 -0400 [AGPGART] Intel 965 Express support. From: Alan Hourihane From: Eric Anholt Signed-off-by: Dave Jones commit f6aa1693671fa9ea661fd30f003820d129fe0628 Author: Stephen Hemminger Date: Fri Sep 1 15:53:50 2006 -0700 [PATCH] skge: version 1.8 Because of the NAPI and other SMP fixes, let's call this a version. Signed-off-by: Stephen Hemminger Signed-off-by: Jeff Garzik commit 513f533e3f161c5a59555677d35e8ae28037bd89 Author: Stephen Hemminger Date: Fri Sep 1 15:53:49 2006 -0700 [PATCH] skge: use NAPI for transmit complete The skge driver has much better performance if transmit done is handled in NAPI softirq. Change from doing transmit locking in driver (LLTX) and use device lock. Signed-off-by: Stephen Hemminger Signed-off-by: Jeff Garzik commit 29365c900963d4986b74a0dadea46872bf283d76 Author: Stephen Hemminger Date: Fri Sep 1 15:53:48 2006 -0700 [PATCH] skge: irq lock race The driver needs to access the IRQ status inside of lock to avoid races with other places changing IRQ mask etc. This may be related to some of the SMP bugs reported against skge in kernel bugzilla. Signed-off-by: Stephen Hemminger Signed-off-by: Jeff Garzik commit c54f9765daafe8493dba837b3d70e97432cd876a Author: Stephen Hemminger Date: Fri Sep 1 15:53:47 2006 -0700 [PATCH] skge: use netdev_alloc_skb Change to use new netdev_alloc_skb interface for 2.6.18. Signed-off-by: Stephen Hemminger Signed-off-by: Jeff Garzik commit 2f4a66ad49097f0b0207a141aa2115ed352fbf58 Author: Stephen Hemminger Date: Fri Sep 1 14:52:04 2006 -0700 [PATCH] sky2: more pci device id's Some more Marvell device id's, these are from the latest SysKonnect vendor driver version of sk98lin (8.36). Signed-off-by: Stephen Hemminger Signed-off-by: Jeff Garzik commit ce7f93680aa1d37171c654536ae0ce9745d86a24 Author: Brice Goglin Date: Thu Aug 31 01:32:59 2006 -0400 [PATCH] myri10ge: improve firmware selection Improve the firmware selection by adding 2 cases where we should use the optimized firmware: * when the actual PCIe link width is lower than 8x. * when the board is plugged to one of the new Intel PCIe chipsets that are known to provide aligned PCIe completions. The patch actually raises two concerns: * We might want to add a generic PCI function to get the PCIe link width since some other drivers (at least ipath) do the same. But we probably do not want to add a new function for every PCIe capability. I will probably look at it and discuss it on linux-pci in the future. * As requested during the submission, the PCI ids of chipsets that are known to provided aligned completion are defined in the myri10ge code. If we keep adding new ones, it might become better to move them to pciids.h. But, this sort of quirk to detect these chipsets are very specific to our NIC, I don't think it is worth moving it to the PCI core until somebody else really needs it. Signed-off-by: Brice Goglin Signed-off-by: Jeff Garzik commit f2ad2d9b65963322186a8af2bd2965c734a7badb Author: Ayaz Abdulla Date: Thu Aug 24 17:35:41 2006 -0400 [PATCH] forcedeth: decouple vlan and rx checksum dependency This patch decouples the dependency between the rx checksum feature and vlan feature. This is done by ignoring the checksum information if the user has disabled rx checksum when vlan is enabled. Signed-Off-By: Ayaz Abdulla Signed-off-by: Jeff Garzik commit edf7e5ec99c2e24cea3951f7961958fc7edbfdd1 Author: Ayaz Abdulla Date: Thu Aug 24 15:43:42 2006 -0400 [PATCH] forcedeth: errata for marvell phys This patch addresses an errata found on certain marvell phys concerning the reset of the BMCR phy register during phy reset. Signed-Off-By: Ayaz Abdulla Signed-off-by: Jeff Garzik commit 406176ee7ef81cec3f346ecd41286a67148e3b0c Author: Jeff Garzik Date: Wed Sep 6 10:48:19 2006 -0400 [libata] Add pata_jmicron driver to Kconfig, Makefile Someone on LKML noticed it was missing (sorry, missed the name). Signed-off-by: Jeff Garzik commit 8adcc0c674004c0f9467031a93dc639c2b01411f Author: Venkatesh Pallipadi Date: Fri Sep 1 14:02:24 2006 -0700 [CPUFREQ] Workaround for BIOS bug in software coordination of frequency Some buggy BIOSes do a "software any" kind of coordination without telling about it to OS. So, when OS sets frequency on one CPU on these platforms, it will also impact all the other logical CPUs that are in the same power domain. Attached patch is a workaround for those buggy BIOSes. Patch should be a noop on the normal non-buggy platforms. Applies over previously sent acpi-cpufreq and software coordination bug fix patch Signed-off-by: Denis Sadykov Signed-off-by: Venkatesh Pallipadi Signed-off-by: Alexey Starikovskiy Signed-off-by: Dave Jones commit db44aaf3a2f599163c53ce96658aca688b3466f0 Author: Rafa³ Bilski Date: Wed Aug 16 01:07:33 2006 +0200 [CPUFREQ] Longhaul - Add voltage scaling to driver Rename option "dont_scale_voltage" to "scale_voltage" because don't will be default. Use "pos" for calculating voltage. In this way driver don't need to know mV value or low level value. Simply min U is one pos and max U is second pos. All pos between these two are used. Assume that min U is for min f and max U for max f. For frequency between min and max calculate pos based on difference between current frequency and min f. Values in mobile VRM table changed to values from C3-M datasheet. Signed-off-by: Rafa³ Bilski Signed-off-by: Dave Jones commit 8eb7925f93af75e66a240d148efdec212f95bcb7 Author: Alexey Dobriyan Date: Sun Aug 20 18:48:13 2006 +0400 [AGPGART] agp.h: constify struct agp_bridge_data::version drivers/char/agp/backend.c: In function `agp_backend_initialize': drivers/char/agp/backend.c:141: warning: assignment discards qualifiers from pointer target type Signed-off-by: Alexey Dobriyan Signed-off-by: Dave Jones commit 3906f4edeef976c081c4e7bd92164d2f59c325ae Author: Dave Jones Date: Tue Sep 5 17:15:47 2006 -0400 [CPUFREQ] Fix sparse warning in ondemand drivers/cpufreq/cpufreq_ondemand.c:323:2: warning: Using plain integer as NULL pointer Signed-off-by: Dave Jones commit 7b62536141927212158ab84ce2afda9319ae6f2d Author: Steven Whitehouse Date: Tue Sep 5 15:56:17 2006 -0400 [GFS2] Add a comment in ops_export.c Ass a comment explaining the slightly odd construct used to pass error values back. Cc: Jan Engelhardt Signed-off-by: Steven Whitehouse commit 2c1e52aa905f2223dc600cfeda6c0dc94fac8b81 Author: Steven Whitehouse Date: Tue Sep 5 15:41:57 2006 -0400 [GFS2] More style fixes As per Jan Engelhardt's follow up emails, here are a few small fixes which were missed earlier. Cc: Jan Engelhardt Signed-off-by: Steven Whitehouse commit 48fac1790935ef2f9548d92e7c8ba604d1b80c12 Author: Steven Whitehouse Date: Tue Sep 5 15:17:12 2006 -0400 [GFS2] Remove unused code from quota As per Jan Engelhardt's request, some unused code is removed and some consts added in the quota code. Cc: Jan Engelhardt Signed-off-by: Steven Whitehouse commit a67cdbd4579c387c021a17c7447da8b88f2a94f4 Author: Steven Whitehouse Date: Tue Sep 5 14:41:30 2006 -0400 [GFS2] Style changes in logging code As per Jan Engelhardt's comments, removed some unused code and removed some brackets which were not required. Cc: Jan Engelhardt Signed-off-by: Steven Whitehouse commit cca195c5c09b81065018dee39f4013b95bf47502 Author: Steven Whitehouse Date: Tue Sep 5 13:15:18 2006 -0400 [GFS2] Extended attribute code style changes As per Jan Engelhardt's request and also a few of my own. It has been possible to add a few most const to the code as a result of the change in gfs2_ea_name2type. Cc: Jan Engelhardt Signed-off-by: Steven Whitehouse commit 16910427e1eb2a8069708ee24406d2d465381ebd Author: Steven Whitehouse Date: Tue Sep 5 11:15:45 2006 -0400 [GFS2] Style changes in rgrp.c Change one constant plus remove a redundant !!. Cc: Jan Engelhardt Signed-off-by: Steven Whitehouse commit ea67eedb211d3418fa62fe3477e0d19b2888225e Author: Steven Whitehouse Date: Tue Sep 5 10:53:09 2006 -0400 [GFS2] Fix end of multi-line structures As per Jan Engelhardt's request, I've added a ',' to the end of each of the multi-line structures which didn't already have one (most already did). Cc: Jan Engelhardt Signed-off-by: Steven Whitehouse commit f2f7ba5237e2fe10ba3e328a4f728b9e1ff141da Author: Steven Whitehouse Date: Tue Sep 5 10:39:21 2006 -0400 [GFS2] Make headers compile on their own As per Jan Engelhardt's comments, this should make all the headers compile on their own by including and/or declaring structures early. Cc: Jan Engelhardt Signed-off-by: Steven Whitehouse commit 2bdbc5d73961c040fdc9b30d985fab3047d697a0 Author: Steven Whitehouse Date: Tue Sep 5 09:34:20 2006 -0400 [GFS2] Directory code style changes As per comments from Jan Engelhardt, remove redundant casts, redundant endian conversions, add a smattering of const and rewrite the dirent_next function in order to avoid as many casts as possible. Cc: Jan Engelhardt Signed-off-by: Steven Whitehouse commit 26dacd0c9b2dc1dc987c376aeee4e80691a7dd0b Author: James Smart Date: Fri Aug 18 17:47:24 2006 -0400 [SCSI] lpfc 8.1.10 : Change version number to 8.1.10 Change version number to 8.1.10 Signed-off-by: James Smart Signed-off-by: James Bottomley commit c3f28afa61343e3e010e3014aa0d6eba271c1558 Author: James Smart Date: Fri Aug 18 17:47:18 2006 -0400 [SCSI] lpfc 8.1.10 : Add support for new lpfc soft_wwpn attribute Add support for a new lpfc soft_wwpn sysfs attribute Signed-off-by: James Smart Signed-off-by: James Bottomley commit c01f32087960edd60a302ad62ad6b8b525e4aeec Author: James Smart Date: Fri Aug 18 17:47:08 2006 -0400 [SCSI] lpfc 8.1.10 : Add support for dev_loss_tmo_callbk and fast_io_fail_tmo_callbk Add support for new dev_loss_tmo callback Goodness is that it removes code for a parallel nodev timer that existed in the driver Add support for the new fast_io_fail callback Signed-off-by: James Smart Signed-off-by: James Bottomley commit 0f29b966d60e9a4f5ecff9f3832257b38aea4f13 Author: James Smart Date: Fri Aug 18 17:33:29 2006 -0400 [SCSI] FC transport: Add dev_loss_tmo callbacks, and new fast_io_fail_tmo w/ callback This patch adds the following functionality to the FC transport: - dev_loss_tmo LLDD callback : Called to essentially confirm the deletion of an rport. Thus, it is called whenever the dev_loss_tmo fires, or when the rport is deleted due to other circumstances (module unload, etc). It is expected that the callback will initiate the termination of any outstanding i/o on the rport. - fast_io_fail_tmo and LLD callback: There are some cases where it may take a long while to truly determine device loss, but the system is in a multipathing configuration that if the i/o was failed quickly (faster than dev_loss_tmo), it could be redirected to a different path and completed sooner. Many thanks to Mike Reed who cleaned up the initial RFC in support of this post. The original RFC is at: http://marc.theaimsgroup.com/?l=linux-scsi&m=115505981027246&w=2 Signed-off-by: James Smart Signed-off-by: James Bottomley commit 5acd3967347dab361d296d39ba19f8241507ef65 Author: Steven Whitehouse Date: Mon Sep 4 16:16:45 2006 -0400 [GFS2] Some further style changes Introduce a couple of new constants which make the NFS filehandle sizes that GFS2 uses a bit clearer. Also fix one or two minor issues as per Jan Engelhardt's sixth email. Cc: Jan Engelhardt Signed-off-by: Steven Whitehouse commit 26c1a57412b59a2284a521c711d9e9105bb6ad23 Author: Steven Whitehouse Date: Mon Sep 4 15:32:10 2006 -0400 [GFS2] More code style updates As per Jan Engelhardt's fifth email. This has most of the changes recommended, which is the removal of casts which are not required, some indenting fixes and similar. Cc: Jan Engelhardt Signed-off-by: Steven Whitehouse commit 0bd5996a00346fee772cbdebc5666fd4e514089b Author: Steven Whitehouse Date: Mon Sep 4 14:59:35 2006 -0400 [GFS2] Style changes in ops_address.c As per the remainder of Jan Engelhardt's fourth email comments, remove an cast thats not required. Also tidy up the "limit" code in stuck_releasepage(). Cc: Jan Engelhardt Signed-off-by: Steven Whitehouse commit dd538c832aaf8e35c46c98a825fa9dacee3cf226 Author: Steven Whitehouse Date: Mon Sep 4 14:53:30 2006 -0400 [GFS2] Spelling sentinal -> sentinel A spelling mistake (one of mine). Cc: Jan Engelhardt Signed-off-by: Steven Whitehouse commit 38c60ef228596c8e331437ea9287ce035706b107 Author: Steven Whitehouse Date: Mon Sep 4 14:48:37 2006 -0400 [GFS2] Use const in endian conversion routines Use const in endian conversion and printing of on-disk structures. Cc: Jan Engelhardt Signed-off-by: Steven Whitehouse commit 82ffa51637f9239aaddd3151fb0d41c657f760db Author: Steven Whitehouse Date: Mon Sep 4 14:47:06 2006 -0400 [GFS2] More style changes As per Jan Engelhardt's fourth email, this is the first part of the change set with a few minor style points. Cc: Jan Engelhardt Signed-off-by: Steven Whitehouse commit c26687113aea9a11c6f23ddf668f1fe43eca4ce7 Author: Steven Whitehouse Date: Mon Sep 4 13:55:48 2006 -0400 [GFS2] Remove a cast, tidy gfs2_inode_attr_in The remains of the changes for Jan Engelhardt's third email. Remove a cast and tidy up gfs2_inode_attr_in. Cc: Jan Engelhardt Signed-off-by: Steven Whitehouse commit cd915493fce912f1bd838ee1250737ecf33b8fae Author: Steven Whitehouse Date: Mon Sep 4 12:49:07 2006 -0400 [GFS2] Change all types to uX style This makes all fixed size types have consistent names. Cc: Jan Engelhardt Signed-off-by: Steven Whitehouse commit a91ea69ffd3f8a0b7139bfd44042ab384461e631 Author: Steven Whitehouse Date: Mon Sep 4 12:04:26 2006 -0400 [GFS2] Align all labels against LH side This makes everything consistent. Signed-off-by: Steven Whitehouse commit 75d3b817a0b48425da921052955cc58f20bbab52 Author: Steven Whitehouse Date: Mon Sep 4 11:41:31 2006 -0400 [GFS2] Tidy up bmap/inode code As per Jan Engelhardt's third set of comments, this make various code style changes and moves the structures from format.h into super.c, which was the only place that format.h was actually used. Cc: Jan Engelhardt Signed-off-by: Steven Whitehouse commit 5029996547a9f3988459e11955c13259495308ef Author: Steven Whitehouse Date: Mon Sep 4 09:49:55 2006 -0400 [GFS2] Tidy up locking code As per Jan Engelhardt's second email, this removes some unused code, and fixes up indenting in various places. Cc: Jan Engelhardt Signed-off-by: Steven Whitehouse commit ae36764a230ff6a278ed93735acf5fcda08f2786 Author: James Smart Date: Fri Aug 18 17:46:53 2006 -0400 [SCSI] lpfc 8.1.10 : Add support to return adapter symbolic name Add support to return adapter symbolic name (now that attribute is dynamic) Signed-off-by: James Smart Signed-off-by: James Bottomley commit d2873e4c1ef293ee6d66456fb84448e258a487fa Author: James Smart Date: Fri Aug 18 17:46:43 2006 -0400 [SCSI] lpfc 8.1.10 : Add support to post events via new FC event interfaces Add support to post events via new FC event interfaces Signed-off-by: James Smart Signed-off-by: James Bottomley commit f14e2e29cdd07f80de6dec168dc2bb39de37eec3 Author: James Smart Date: Tue Aug 22 09:55:23 2006 -0400 [SCSI] SCSI & FC transport: extend event vendor id's to 64bits During discussions with Mike Christie, I became convinced that we needed a larger vendor id. This patch extends the id from 32 to 64 bits. This applies on top of the prior patches that add SCSI transport events via netlink. Signed-off-by: James Smart Signed-off-by: James Bottomley commit 84314fd4740ad73550c76dee4a9578979d84af48 Author: James Smart Date: Fri Aug 18 17:30:09 2006 -0400 [SCSI] SCSI and FC Transport: add netlink support for posting of transport events This patch formally adds support for the posting of FC events via netlink. It is a followup to the original RFC at: http://marc.theaimsgroup.com/?l=linux-scsi&m=114530667923464&w=2 and the initial posting at: http://marc.theaimsgroup.com/?l=linux-scsi&m=115507374832500&w=2 The patch has been updated to optimize the send path, per the discussions in the initial posting. Per discussions at the Storage Summit and at OLS, we are to use netlink for async events from transports. Also per discussions, to avoid a netlink protocol per transport, I've create a single NETLINK_SCSITRANSPORT protocol, which can then be used by all transports. This patch: - Creates new files scsi_netlink.c and scsi_netlink.h, which contains the single and shared definitions for the SCSI Transport. It is tied into the base SCSI subsystem intialization. Contains a single interface routine, scsi_send_transport_event(), for a transport to send an event (via multicast to a protocol specific group). - Creates a new scsi_netlink_fc.h file, which contains the FC netlink event messages - Adds 3 new routines to the fc transport: fc_get_event_number() - to get a FC event # fc_host_post_event() - to send a simple FC event (32 bits of data) fc_host_post_vendor_event() - to send a Vendor unique event, with arbitrary amounts of data. Note: the separation of event number allows for a LLD to send a standard event, followed by vendor-specific data for the event. Note: This patch assumes 2 prior fc transport patches have been installed: http://marc.theaimsgroup.com/?l=linux-scsi&m=115555807316329&w=2 http://marc.theaimsgroup.com/?l=linux-scsi&m=115581614930261&w=2 Sorry - next time I'll do something like making these individual patches of the same posting when I know they'll be posted closely together. Signed-off-by: James Smart Tidy up configuration not to make SCSI always select NET Signed-off-by: James Bottomley commit deb81d80ba27da8dfabc29ccb5977db8f4942a0a Author: James Bottomley Date: Fri Sep 1 09:28:48 2006 -0400 [SCSI] add failure return to scsi_init_shared_tag_map() And use it in the stex driver. Signed-off-by: James Bottomley commit cf355883f506051a8ce3ac4539752829320b6c8c Author: Ed Lin Date: Fri Sep 1 14:31:51 2006 +0800 [SCSI] stex: add shared tags from block Use block shared tags entirely within the driver. In the case of shutdown, assume that there are no other outstanding commands, so tag 0 is fine. Signed-off-by: Ed Lin Signed-off-by: James Bottomley commit 5a25ba1677ab8d63890016a8c1bca68a3e0fbc7d Author: Jeff Garzik Date: Fri Sep 1 03:12:19 2006 -0400 [SCSI] Add Promise SuperTrak driver Add Promise SuperTrak 'stex' driver, supporting SuperTrak EX8350/8300/16350/16300 controllers. The controller's firmware accepts SCSI commands, handing them to the underlying RAID or JBOD disks. The driver consisted of the following cleanups and fixes, beyond its initial submission: Ed Lin: stex: cleanup and minor fixes stex: add new device ids stex: update internal copy code path stex: add hard reset function stex: adjust command timeout in slave_config routine stex: use more efficient method for unload/shutdown flush Jeff Garzik: [SCSI] Add Promise SuperTrak 'shasta' driver. Rename drivers/scsi/shasta.c to stex.c ("SuperTrak EX"). [SCSI] stex: update with community comments from 'Promise SuperTrak' thread [SCSI] stex: Fix warning, trim trailing whitespace. [SCSI] stex: remove last remnants of "shasta" project code name [SCSI] stex: removed 6-byte command emulation [SCSI] stex: minor cleanups [SCSI] stex: minor fixes: irq flag, error return value [SCSI] stex: use dma_alloc_coherent() Signed-off-by: Jeff Garzik Signed-off-by: James Bottomley commit 69bdd88ca2670c321fef774e77059516f836c6f2 Author: Hannes Reinecke Date: Fri Sep 1 15:50:23 2006 +0200 [SCSI] Wrong size information for devices with disabled read access When accessing a device with disabled read access the capacity is set randomly to 1GB. This makes it impossible to userspace tools to detect invalid device capacities. Signed-off-by: Mike Anderson Acked-by: Chris Mason Signed-off-by: Hannes Reinecke Signed-off-by: James Bottomley commit 01dfc7fc56f4b7ec0e5344ab44fcf673ebfbf7fa Author: Mike Christie Date: Thu Aug 31 18:09:35 2006 -0400 [SCSI] iscsi class: update version Signed-off-by: Mike Christie Signed-off-by: James Bottomley commit e648f63c6520d6e572573149c16a64d2c5ad7ec5 Author: Mike Christie Date: Thu Aug 31 18:09:34 2006 -0400 [SCSI] libiscsi: don't call into lld to cleanup task In the normal IO path we should not be calling back into the LLD since the LLD will have cleaned up the task before or after calling complete pdu. For the fail_command path we still need to do this to force the cleanup. Signed-off-by: Mike Christie Signed-off-by: James Bottomley commit f47f2cf5d4acf929a3aaa6957c3fc4622c358703 Author: Mike Christie Date: Thu Aug 31 18:09:33 2006 -0400 [SCSI] libiscsi: check that command ptr is set before accessing it If the scsi eh sends a TUR and the session is down we could return SCSI_ML_HOST_BUSY. scsi eh will ignore this and send ask us to abort the command and we blindly accesst the command ptr. Signed-off-by: Mike Christie Signed-off-by: James Bottomley commit ca5186842a6d85e982e3d572ecd407453d0c5116 Author: Mike Christie Date: Thu Aug 31 18:09:32 2006 -0400 [SCSI] iscsi_tcp: fix partial digest recv When a digest is spread across two network buffers, we currently ignore this and try to check the digest with the partial buffer. Or course this fails. This patch has use iscsi_tcp_copy to copy the whole digest before testing it. Signed-off-by: Mike Christie Signed-off-by: James Bottomley commit db98ccde0881b8247acb52dece6d94ed770a7aa5 Author: Mike Christie Date: Thu Aug 31 18:09:31 2006 -0400 [SCSI] libiscsi: only check burst lengths when sending unsol data The first burst length is only relevant if immedate data = Yes or if Initial R2T is No Signed-off-by: Mike Christie Signed-off-by: James Bottomley commit d5390f5f788f01788e9dfd41ad516a2908901610 Author: Mike Christie Date: Thu Aug 31 18:09:30 2006 -0400 [SCSI] iscsi_tcp: update header size during relogin When we relogin to a target, we have not yet negotiated digests so we must reset the hdr_size var. Signed-off-by: Mike Christie Signed-off-by: James Bottomley commit 753e7d3866748799e4a8769cd27ea7202654211b Author: Mike Christie Date: Thu Aug 31 18:09:29 2006 -0400 [SCSI] iscsi_tcp: fix header resend This patch built over the last ones fixes a bug in the partial header resend code, where we add on another 4 bytes to the send length on the resend. We want just the header plus digest. Signed-off-by: Mike Christie Signed-off-by: James Bottomley commit dd8c0d958621e3137f3e3302f7b8952041a4a1d7 Author: Mike Christie Date: Thu Aug 31 18:09:28 2006 -0400 [SCSI] scsi_tcp: rm data rx and tx tfms We currently allocated seperate tfms for data and header digests. There is no reason for this since we can never calculate a rx header and digest at the same time. Same for sends. So this patch removes the data tfms and has the send and recv sides use the rx_tfm or tx_tfm. I also made the connection creation code preallocate the tfms because I thought I hit a bug where I changed the digests settings during a relogin but could not allocate the tfm and then we just failed. Signed-off-by: Mike Christie Signed-off-by: James Bottomley commit 62f383003c22cd34920d0412465eddcb1223da0d Author: Mike Christie Date: Thu Aug 31 18:09:27 2006 -0400 [SCSI] iscsi_tcp: fix padding, data digests, and IO at weird offsets iscsi_tcp calculates padding by using the expected transfer length. This has the problem where if we have immediate data = no and initial R2T = yes, and the transfer length ended up needing padding then we send: 1. header 2. padding which should have gone after data 3. data Besides this bug, we also assume the target will always ask for nice transfer lengths and the first burst length will always be a nice value. As far as I can tell form the RFC this is not a requirement. It would be silly to do this, but if someone did it we will end doing bad things. Finally the last bug in that bit of code is in our handling of the recalculation of data digests when we do not send a whole iscsi_buf in one try. The bug here is that we call crypto_digest_final on a iscsi_sendpage error, then when we send the rest of the iscsi_buf, we doiscsi_data_digest_init and this causes the previous data digest to be lost. And to make matters worse, some of these bugs are replicated over and over and over again for immediate data, solicited data and unsolicited data. So the attached patch made over the iscsi git tree (see kernel.org/git for details) which I updated today to include the patches I said I merged, consolidates the sending of data, padding and digests and calculation of data digests and fixes the above bugs. Signed-off-by: Mike Christie Signed-off-by: James Bottomley commit 98a9416af08385f8497e9c1595113a81aefa5d49 Author: Mike Christie Date: Thu Aug 31 18:09:26 2006 -0400 [SCSI] attempt to complete r2t with data len greater than max burst A couple targets like string bean and MDS, send r2ts with a data len greater than the max burst we agreed to. We were being strict in our enforcing of the iscsi rfc in that code path, but there is no driver limitation that prevents us from fullfilling the request. To allow those targets to work we will ignore the max_burst length and send as much data as the target asks for assuming it has consciously decided to override its max burst length. Signed-off-by: Mike Christie Signed-off-by: James Bottomley commit 60ecebf5a10e42f5e2d6e07eb9e24bdee8500b81 Author: Mike Christie Date: Thu Aug 31 18:09:25 2006 -0400 [SCSI] add refcouting around ctask usage in main IO patch It is possible that a ctask could be completing and getting cleaned up at the same time, we are finishing up the last data transfer. This could then result in the data transfer code using stale or invalid values. This patch adds a refcount to the ctask. When the count goes to zero then we know the transmit thread and recv thread or softirq are not touching it and we can safely release it. The eh should not need to grab a reference because it only cleans up a task if it has both the xmit mutex and recv lock (or recv side suspended). Signed-off-by: Mike Christie Signed-off-by: James Bottomley commit ffd0436ed2e5a741c8d30062b489b989acf0a526 Author: Mike Christie Date: Thu Aug 31 18:09:24 2006 -0400 [SCSI] libiscsi, iscsi_tcp, iscsi_iser: check that burst lengths are valid. iSCSI RFC states that the first burst length must be smaller than the max burst length. We currently assume targets will be good, but that may not be the case, so this patch adds a check. This patch also moves the unsol data out offset to the lib so the LLDs do not have to track it. Signed-off-by: Mike Christie Signed-off-by: James Bottomley commit e5b3cd42960a10c1bc3701d4f00767463c88ec9d Author: Alan Stern Date: Mon Aug 21 15:53:25 2006 -0400 [SCSI] SCSI: sanitize INQUIRY strings Sanitize the Vendor, Product, and Revision strings contained in an INQUIRY result by setting all non-graphic or non-ASCII characters to ' '. Since the standard disallows such characters, this will affect only non-compliant devices. To help maintain backward compatibility, NUL characters are treated specially. They are taken as string terminators; they and all the following characters are set to ' '. If some valid characters get erased as a result... well, we weren't seeing them before so we haven't lost anything. The primary purpose of this change is to allow blacklist entries to match devices with illegal Vendor or Product strings. In addition, the patch updates a couple of function prototypes, giving inq_result its correct type (unsigned char *). Signed-off-by: Alan Stern Signed-off-by: James Bottomley commit 85b6c720b0931101c8bcc3a5abdc2b8514b0fb4b Author: James Bottomley Date: Thu Aug 31 18:15:22 2006 -0400 [SCSI] sd: fix cache flushing on module removal (and individual device removal) The fix isn't actually in sd: it's in scsi_device_get(). I modified it to allow devices to be returned in SDEV_CANCEL, but not SDEV_DEL. This means that the device_remove_driver, which occurs in device_del() in scsi_remove_device() after the device has gone into SDEV_CANCEL is now effective at flushing the cache. Signed-off-by: James Bottomley commit e9fc2aa091ab8fa46e60d4c9d06a89305c441652 Author: Steven Whitehouse Date: Fri Sep 1 11:05:15 2006 -0400 [GFS2] Update copyright, tidy up incore.h As per comments from Jan Engelhardt this updates the copyright message to say "version" in full rather than "v.2". Also incore.h has been updated to remove forward structure declarations which are not required. The gfs2_quota_lvb structure has now had endianess annotations added to it. Also quota.c has been updated so that we now store the lvb data locally in endian independant format to avoid needing a structure in host endianess too. As a result the endianess conversions are done as required at various points and thus the conversion routines in lvb.[ch] are no longer required. I've moved the one remaining constant in lvb.h thats used into lm.h and removed the unused lvb.[ch]. I have not changed the HIF_ constants. That is left to a later patch which I hope will unify the gh_flags and gh_iflags fields of the struct gfs2_holder. Cc: Jan Engelhardt Signed-off-by: Steven Whitehouse commit 9ee093f653bae98cb56b0669819d4bccb8c05fa4 Author: Auke Kok Date: Thu Aug 31 14:27:53 2006 -0700 ixgb: Increment version to 1.0.112-k2 Signed-off-by: Auke Kok commit 69c7a940335371cf31a6589bf2b2ad1d197ef6ec Author: Auke Kok Date: Thu Aug 31 14:27:52 2006 -0700 ixgb: remove skb->dev assignment Same change as e1000: remove skb->dev assignment, it's now done by netdev_alloc_skb. Signed-off-by: Auke Kok commit 01748fbb413d6f3b36c330544969d1d7254ee509 Author: Linas Vepstas Date: Thu Aug 31 14:27:52 2006 -0700 ixgb: Add PCI Error recovery callbacks Adds PCI Error recovery callbacks to the Intel 10-gigabit ethernet ixgb device driver. Lightly tested, works. "Zhang, Yanmin" wrote: Both pci_disable_device and ixgb_down would access the device. It doesn't follow Documentation/pci-error-recovery.txt that error_detected shouldn't do any access to the device. Signed-off-by: Linas Vepstas Signed-off-by: Andrew Morton Signed-off-by: Auke Kok commit adc5413965e6ca2cd18f0ec89933f762b5605574 Author: Jesse Brandeburg Date: Thu Aug 31 14:27:51 2006 -0700 ixgb: Add buffer_info and test like e1000 has. Signed-off-by: Jesse Brandeburg Signed-off-by: Auke Kok commit 7a0eec3bca6ca024325defbc454252da6c537d40 Author: Jesse Brandeburg Date: Thu Aug 31 14:27:51 2006 -0700 ixgb: Cache-align all TX components of the adapter struct. Signed-off-by: Jesse Brandeburg Signed-off-by: Auke Kok commit ab8ced2fb00f3a1e1b63f8c3c61ad4262308ddc0 Author: Auke Kok Date: Thu Aug 31 14:27:51 2006 -0700 ixgb: recalculate after how many descriptors to wake the queue Recalculate when to wake the queue using DESC_NEEDED instead of a static hardcoded number. Signed-off-by: Auke Kok commit a91bb6a8b411bdd8053601d7c2254d54670a4df6 Author: Jesse Brandeburg Date: Thu Aug 31 14:27:50 2006 -0700 ixgb: Set a constant blink rate for ixgb adapter identify (1sec on, 1sec off) Signed-off-by: Jesse Brandeburg Signed-off-by: Auke Kok commit f990b426afb2f6ed77ba9ec272bdfe3d5d3a3d39 Author: Auke Kok Date: Thu Aug 31 14:27:50 2006 -0700 ixgb: convert dev->priv to netdev_priv(dev). Signed-off-by: Auke Kok commit 5791704fbe6e1a23de29332e18840f8c90faf601 Author: Auke Kok Date: Thu Aug 31 14:27:50 2006 -0700 ixgb: Convert dev_alloc_skb to netdev_alloc_skb. Signed-off-by: Auke Kok commit a535aa1922083c85ce6fb7d1341db0d17df433d4 Author: Auke Kok Date: Thu Aug 31 14:27:49 2006 -0700 e100: increment version to 3.5.16-k2 Increment the version of e100 to 3.5.16-k2, increment dates. Signed-off-by: Auke Kok commit 859b039463d7584afb4e25e950bf6dd58460add8 Author: Auke Kok Date: Thu Aug 31 14:27:49 2006 -0700 e100: remove skb->dev assignment Signed-off-by: Auke Kok commit b1d26f24e864204dfaa82b1252477e981ba9ef24 Author: Linas Vepstas Date: Thu Aug 31 14:27:48 2006 -0700 e100: fix error recovery A recent patch in -mm3 titled "gregkh-pci-pci-don-t-enable-device-if-already-enabled.patch" causes pci_enable_device() to be a no-op if the kernel thinks that the device is already enabled. This change breaks the PCI error recovery mechanism in the e100 device driver, since, after PCI slot reset, the card is no longer enabled. This is a trivial fix for this problem. Tested. Signed-off-by: Linas Vepstas Signed-off-by: Andrew Morton Signed-off-by: Auke Kok commit 4187592b6d2230d4f9f7177c369dde2aef1a4337 Author: Auke Kok Date: Thu Aug 31 14:27:48 2006 -0700 e100: Convert e100 to use netdev_alloc_skb(). Signed-off-by: Auke Kok commit 7cc33234f23f1abb5d2f6639dda1700b1fde4b64 Author: Auke Kok Date: Thu Aug 31 14:27:47 2006 -0700 e1000: Increment driver version to 7.2.7-k2 Signed-off-by: Auke Kok commit ca6f72241966602d254900b9d624cac00df745bf Author: Christoph Hellwig Date: Thu Aug 31 14:27:47 2006 -0700 e1000: clean up skb allocation code Signed-off-by: Christoph Hellwig Acked-by: Jesse Brandeburg Signed-off-by: Auke Kok commit 5881cde8a38cab3b228a63516ab64f8d79acc4f5 Author: Jesse Brandeburg Date: Thu Aug 31 14:27:47 2006 -0700 e1000: Add PCI ID 0x10a4 for our new 4-port PCI-Express device Device 0x10a4 is a double 82571 on a single PCI-Express card and has 4 gigabit capable ports. Signed-off-by: Jesse Brandeburg Signed-off-by: Auke Kok commit 120cd57644f85b280b538ee403423641167913a9 Author: Jesse Brandeburg Date: Thu Aug 31 14:27:46 2006 -0700 e1000: unify WoL capability detection code WoL is constantly giving problems and needed a rewrite. Consolidates all WoL capabilities into a single function, and disables WoL for all other ports on the device except for port A. Signed-off-by: Jesse Brandeburg Signed-off-by: Auke Kok commit cccb20d3a9b7c6d4b6e1b52ee02814e6094aaa12 Author: Francois Romieu Date: Wed Aug 16 13:07:18 2006 +0200 8139cp: use PCI_DEVICE() to shorten the PCI device table Signed-off-by: Francois Romieu commit 7668a4945ba0e17a61e535a6c67aa64a319a03b4 Author: François Romieu Date: Tue Aug 15 20:10:57 2006 +0200 8139cp: pci_get_drvdata(pdev) can not be NULL in suspend handler 1) pci_set_drvdata() is used in cp_{init/remove}_one to initialize/reset driver_data to the relevant value (resp. net_device * and NULL). 2) each of the 3 relevant functions is issued under (device *)->sem: 2.1) pci_unregister_driver -> driver_unregister -> bus_remove_driver -> driver_detach (takes (device *)->sem) -> __device_release_driver(dev) -> dev->bus-remove(dev) (== pci_device_remove) -> drv->remove(pdev) (== cp_remove_one) [...] pci_dev->driver = NULL; 2.2) pci_register_driver -> __pci_register_driver -> driver_register -> bus_add_driver -> driver_attach -> __driver_attach (takes (device *)->sem) -> driver_probe_device(drv, dev) -> dev->bus->probe(dev) (== pci_device_probe) -> _pci_device_probe(drv, pci_dev) -> pci_call_probe(drv, pci_dev, id) -> drv->probe(dev, id) (== cp_init_one) [...] pci_dev->driver = drv; 2.3) suspend_device (takes (device *)->sem) -> dev->bus->suspend(dev) (== pci_device_suspend) checking for drv = pci_dev->driver != NULL [...] -> drv->suspend(pci_dev, state) (== cp_suspend) dev->sem and the state of pci_dev->driver provide the expected result. St Mary's day was a bit rainy here. Signed-off-by: Francois Romieu commit e68970e7543815133224f79a858e7c9e0c42f4de Author: Francois Romieu Date: Tue Aug 15 16:22:27 2006 +0200 8139cp: removal of useless BUG_ON() check netdev_priv() will provide a nice oops a few lines before the BUG_ON() check. Signed-off-by: Francois Romieu commit d03d376dd29cae53bf70a21a0c26b306abe37326 Author: Francois Romieu Date: Sun Jan 29 01:31:36 2006 +0100 8139cp: sync the device private data with its r8169 counterpart struct cp_private is reorganized to be more easily compared between the r8169 and the 8139cp drivers. The alignment should not be impacted. Signed-off-by: Francois Romieu commit 0ba894d420b845667e2981c2147af974a755fba2 Author: Francois Romieu Date: Mon Aug 14 19:55:07 2006 +0200 8139cp: ring_info removal for the receive path The ring_info.len field is not used at all. cp_private.rx_skb is turned into an array of sk_buff *. Signed-off-by: Francois Romieu commit c48e9399e895834f26dff9149de1930ba18a0d6c Author: Francois Romieu Date: Sun Jan 29 01:30:48 2006 +0100 8139cp: remove gratuitous indirection dev is an argument of the current function. Signed-off-by: Francois Romieu commit 3598b57be449a2ee9178e5c511bdb1a8aaccba20 Author: Francois Romieu Date: Sun Jan 29 01:31:13 2006 +0100 8139cp: trim ring_info Fat removal: the mapping address is available from the Rx/Tx descriptors. Signed-off-by: Francois Romieu commit d2eed8cff9a1a5d7e12ec9ddf71432c466b104d0 Author: Francois Romieu Date: Thu Aug 31 22:01:07 2006 +0200 r8169: the 0x8136 needs a 8 bytes alignment Reported by Darren Salt. Signed-off-by: Francois Romieu commit 5f787a1aca3705bdc6adbda36f8d6446380e85a6 Author: Francois Romieu Date: Thu Aug 17 13:02:36 2006 +0200 r8169: add basic MII ioctl support Signed-off-by: Francois Romieu commit 64e4bfb40c9d07a48c1c7e5b8556e92e7cd7406a Author: Francois Romieu Date: Thu Aug 17 12:43:06 2006 +0200 r8169: use standard #defines from mii.h instead of declaring private ones Some unused stuff goes away btw. Signed-off-by: Francois Romieu commit 5b0384f4fd079c24b976ee333e6d1f0c95cf14de Author: Francois Romieu Date: Wed Aug 16 16:00:01 2006 +0200 r8169: trim trailing whitespaces and convert whitespaces to tabs Signed-off-by: Francois Romieu commit b518fa8eac2d0ac497c0fdb27e4cec68d0249bb7 Author: Francois Romieu Date: Wed Aug 16 15:23:13 2006 +0200 r8169: udelay() removal No need to chew CPU cycles as there is no heavy timing requirement and the delays are always requested from a sleepable context. Signed-off-by: Francois Romieu commit 188f4af04618b32b8ec7c630a3f18201c81ce70c Author: Francois Romieu Date: Wed Aug 16 14:51:52 2006 +0200 r8169: use NETDEV_TX_{BUSY/OK} Signed-off-by: Francois Romieu commit c6e6f0ba8fc1dea99c7bd020916f24d533b62697 Author: David Teigland Date: Wed Aug 30 10:50:18 2006 -0500 [DLM] force removal of user lockspace Check if the FORCEFREE flag has been provided from user space. If so, set the force option to dlm_release_lockspace() so that any remaining locks will be freed. Signed-off-by: David Teigland Signed-off-by: Steven Whitehouse commit 623d93555c8884768db65ffc11509c93e50dd4db Author: Steven Whitehouse Date: Thu Aug 31 12:14:44 2006 -0400 [GFS2] Fix releasepage bug (fixes direct i/o writes) This patch fixes three main bugs. Firstly the direct i/o get_block was returning the wrong return code in certain cases. Secondly, the GFS2's releasepage function was not dealing with cases when clean, ordered buffers were found still queued on a transaction (which can happen depending on the ordering of journal flushes). Thirdly, the journaling code itself needed altering to take account of the after effects of removing the clean ordered buffers from the transactions before a journal flush. The releasepage bug did also show up under "normal" buffered i/o as well, so its not just a fix for direct i/o. In fact its not normally used in the direct i/o path at all, except when flushing existing buffers after performing a direct i/o write, but that was the code path that led us to spot this. Signed-off-by: Steven Whitehouse commit 86e33a296c2c9ed6eece0bfff4ac776f42040504 Author: James Bottomley Date: Wed Aug 30 09:45:51 2006 -0400 [SCSI] add shared tag map helpers This patch adds support for sharing tag maps at the host level (i.e. either every queue [LUN] has its own tag map or there's a single one for the entire host). This formulation is primarily intended to help single issue queue hardware, like the aic7xxx Signed-off-by: James Bottomley commit 492dfb489658dfe4a755fa29dd0e34e9c8bd8fb8 Author: James Bottomley Date: Wed Aug 30 15:48:45 2006 -0400 [SCSI] block: add support for shared tag maps The current block queue implementation already contains most of the machinery for shared tag maps. The only remaining pieces are a way to allocate and destroy a tag map independently of the queues (so that the maps can be managed on the life cycle of the overseeing entity) Acked-by: Jens Axboe Signed-off-by: James Bottomley commit 85cd7251b9112e3dabeac9fd3b175601ca607241 Author: Jeff Garzik Date: Thu Aug 31 00:03:49 2006 -0400 [libata #pata-drivers] Trim trailing whitespace. commit 9bec2e38527a9f2497b3d976715c672d08d6160d Author: Jeff Garzik Date: Thu Aug 31 00:02:15 2006 -0400 [libata] Trim trailing whitespace. commit f19eaa7f53736449a6eac89c3863eca2c64d5913 Author: Darrick J. Wong Date: Wed Aug 30 14:18:33 2006 -0700 [SCSI] aic94xx: Increase can_queue for better performance This patch sets can_queue in the aic94xx driver's scsi_host to better performing values than what's there currently. It seems that asd_ha->seq.can_queue reflects the number of requests that can be queued per controller; so long as there's one scsi_host per controller, it seems logical that the scsi_host ought to have the same can_queue value. To the best of my (still limited) knowledge, this method provides the correct value. The effect of leaving this value set to 1 is terrible performance in the case of either (a) certain Maxtor SAS drives flying solo or (b) flooding several disks with I/O simultaneously (md-raid). There may be more scenarios where we see similar problems that I haven't uncovered. Signed-off-by: Darrick J. Wong Signed-off-by: James Bottomley commit 899be4d3b7e00bf364d84c1c8cfe8bbbd1e3507b Author: Steven Whitehouse Date: Wed Aug 30 12:50:28 2006 -0400 [GFS2] Add superblock into key for glock lookups This adds the superblock as a key for glock lookups. Since the glocks are already stored in a per-superblock table, this has no effect at the moment. Later on this will change though. Signed-off-by: Steven Whitehouse commit d6a53727683bbf993c01ab49b45e0eac17e23df1 Author: Steven Whitehouse Date: Wed Aug 30 11:16:23 2006 -0400 [GFS2] Use const on glock lookup key Use const for the glock name which is being used as a lookup key in the glock hash table. Signed-off-by: Steven Whitehouse commit bc229b3663dcd7d8f266cb13b0839efdee6d95b5 Author: James Bottomley Date: Mon Aug 28 17:08:21 2006 -0500 [SCSI] aic94xx: add MODULE_FIRMWARE tag Add a tag which shows what the firmware file we're requesting is. Signed-off-by: James Bottomley commit 187afbed1814ea0851bf30bacbf807217dd7864b Author: Jon Masters Date: Mon Aug 28 17:08:21 2006 -0500 [SCSI] MODULE_FIRMWARE for binary firmware(s) Right now, various kernel modules are being migrated over to use request_firmware in order to pull in binary firmware blobs from userland when the module is loaded. This makes sense. However, there is right now little mechanism in place to automatically determine which binary firmware blobs must be included with a kernel in order to satisfy the prerequisites of these drivers. This affects vendors, but also regular users to a certain extent too. The attached patch introduces MODULE_FIRMWARE as a mechanism for advertising that a particular firmware file is to be loaded - it will then show up via modinfo and could be used e.g. when packaging a kernel. Signed-off-by: Jon Masters Comments added in line with all the other MODULE_ tag Signed-off-by: James Bottomley Signed-off-by: Greg Kroah-Hartman commit ec45d9f583b3663f90a7c5c559fd13e6e4c56ad5 Author: Steven Whitehouse Date: Wed Aug 30 10:36:52 2006 -0400 [GFS2] Use slab properly with glocks We can take advantage of the slab allocator to ensure that all the list heads and the spinlock (plus one or two other fields) are initialised by slab to speed up allocation of glocks. Signed-off-by: Steven Whitehouse commit 5e2b0613ed9f9641937dd5948051631249447c57 Author: Steven Whitehouse Date: Wed Aug 30 09:38:30 2006 -0400 [GFS2] Remove unused code from glock layer Remove the unused sync feature from glocks. This is currently done by calling the required functions to sync pages/blocks directly so this code isn't needed. Signed-off-by: Steven Whitehouse commit 8fb4b536e7b9dbaf7a6b8204e887b92a14e4352c Author: Steven Whitehouse Date: Wed Aug 30 09:30:00 2006 -0400 [GFS2] Make glock operations const For all the usual reasons of enforcing correctness and potentially reducing code size, this patch makes the glock operations const. Signed-off-by: Steven Whitehouse commit 669a5db411d85a14f86cd92bc16bf7ab5b8aa235 Author: Jeff Garzik Date: Tue Aug 29 18:12:40 2006 -0400 [libata] Add a bunch of PATA drivers. The vast majority of drivers and changes are from Alan Cox. Albert Lee contributed and maintains pata_pdc2027x. Adrian Bunk, Andrew Morton, and Tejun Heo contributed various minor fixes and updates. Signed-off-by: Jeff Garzik commit 6fc47e31c0e802d205d67e644f654532e5d365d5 Author: Stephen Hemminger Date: Mon Aug 28 16:19:39 2006 -0700 [PATCH] skge: version 1.7 Increase version. Signed-off-by: Stephen Hemminger Signed-off-by: Jeff Garzik commit ccdaa2a9daf4777aa50866a28921153ad837a2be Author: Stephen Hemminger Date: Mon Aug 28 16:19:38 2006 -0700 [PATCH] skge: use ethX for irq assigments The user level irq balance daemon uses "eth" as a way to distinquish ethernet devices. Also, by using device name it is possible to distinquish different boards. Signed-off-by: Stephen Hemminger Signed-off-by: Jeff Garzik commit 83c758fabd3589842ebcb3af6b9150ff55bc39aa Author: Stephen Hemminger Date: Mon Aug 28 16:19:37 2006 -0700 [PATCH] skge: use dev_alloc_skb To avoid problems with buggy protocols that assume extra header space, use dev_alloc_skb() when allocating receive buffers. Signed-off-by: Stephen Hemminger Signed-off-by: Jeff Garzik commit 78bc218663e3bd6cbbaf6a363d2f88f17541adfb Author: Stephen Hemminger Date: Mon Aug 28 16:19:36 2006 -0700 [PATCH] skge: pci bus post fixes At the end of a critical section, we need to force the PCI write to complete by doing a read. Signed-off-by: Stephen Hemminger Signed-off-by: Jeff Garzik commit d38efdd65aaabd82374f386d0cc54de2ffc90af3 Author: Stephen Hemminger Date: Mon Aug 28 16:19:35 2006 -0700 [PATCH] skge: cleanup suspend/resume code The code for suspend/resume needs several fixes. The hardware lock should be setup in probe only, not in resume. Interrupts should be disabled during suspend, etc. Signed-off-by: Stephen Hemminger Signed-off-by: Jeff Garzik commit e981d47b9f0c322bacc8398c6c25fcd355a19415 Author: shemminger@osdl.org Date: Mon Aug 28 10:00:53 2006 -0700 [PATCH] sky2: version 1.7 Change version number for this bundle. Signed-off-by: Stephen Hemminger Signed-off-by: Jeff Garzik commit 98232f85ffd0efc34c462da5ee81516f7432cec2 Author: shemminger@osdl.org Date: Mon Aug 28 10:00:52 2006 -0700 [PATCH] sky2: pci post bug Make sure that PCI write occurs before the delay. Signed-off-by: Stephen Hemminger Signed-off-by: Jeff Garzik commit d3bcfbeb27a546d02af202353381ddd91ea39b87 Author: shemminger@osdl.org Date: Mon Aug 28 10:00:51 2006 -0700 [PATCH] sky2: power down PHY when not up To save power, don't enable power to the PHY until device is brought up. Signed-off-by: Stephen Hemminger Signed-off-by: Jeff Garzik commit 1d179332f8918a5f4e031dc068a469283b01c4c1 Author: shemminger@osdl.org Date: Mon Aug 28 10:00:50 2006 -0700 [PATCH] sky2: optimize checksum offload information Since many packets have the same checksum starting offset and insertion location; the driver can save the last information and only tell hardware when it changes. Signed-off-by: Stephen Hemminger Signed-off-by: Jeff Garzik commit e07560cd4f762935968a1120168eb7d22260d85f Author: shemminger@osdl.org Date: Mon Aug 28 10:00:49 2006 -0700 [PATCH] sky2: TSO mss optimization The MSS in the transmit engine only has to change if TSO mtu changes. This means less commands to the chip when mixing TSO and regular data. Signed-off-by: Stephen Hemminger Signed-off-by: Jeff Garzik commit bb507fe11ffda19eee158ce0be42d222135b7aca Author: shemminger@osdl.org Date: Mon Aug 28 10:00:48 2006 -0700 [PATCH] sky2: MSI test timing The test for MSI IRQ could have timing issues. The PCI write needs to be pushed out before waiting, and the wait queue should be initialized before the IRQ. Signed-off-by: Stephen Hemminger Signed-off-by: Jeff Garzik commit 97bda706b475655088201d7bb96cb8dd6d0d1aa3 Author: shemminger@osdl.org Date: Mon Aug 28 10:00:47 2006 -0700 [PATCH] sky2: dont use force status bit Don't use force status bit. It was never implemented on all chips, or has no impact. Signed-off-by: Stephen Hemminger Signed-off-by: Jeff Garzik commit 497d7c8681dec5084b2e79193c2aaeddc789477f Author: shemminger@osdl.org Date: Mon Aug 28 10:00:46 2006 -0700 [PATCH] sky2: use netdev_alloc_skb Use netdev_alloc_skb for buffer allocation to allow for headroom. This prevents bugs in code paths that assume extra space at the front and makes sky2 behave like other drivers. Signed-off-by: Stephen Hemminger Signed-off-by: Jeff Garzik commit fba5008cda606488cf42b60de60b4414cc2276ad Author: shemminger@osdl.org Date: Mon Aug 28 10:00:45 2006 -0700 [PATCH] sky2: remove cloned/pskb_expand_head check The code to handle cloned skb overwriting is unnecessary in the sky2 driver and is buggy. The bug is that pskb_expand_head can change the skb but the driver has already mapped in the header. Since the sky2 hardware doesn't need to overwrite memory, the buggy code can just be removed; it was mistakenly copied from the tg3 driver. Signed-off-by: Stephen Hemminger Signed-off-by: Jeff Garzik commit c576af479162c0a11d4e2691ebc97354958d9285 Author: Larry Finger Date: Wed Aug 23 23:02:40 2006 -0500 [PATCH] bcm43xx: Set floor of wireless signal and noise at -110 dBm This patch sets the floor of wireless level (signal) and noise at -110 dBm, which makes them be comatible with RCPI, as discussed by Simon Barber. With this change, bcm43xx-softmac and bcm43xx-d80211 behave the same. Signed-Off-By: Larry Finger Signed-off-by: John W. Linville commit 653d5b55c0125dca97a420b9a5e77fad7adbf3f0 Author: Larry Finger Date: Wed Aug 23 10:04:01 2006 -0500 [PATCH] bcm43xx - set correct value in mac_suspended for ifdown/ifup sequence When bcm43xx-softmac is given an ifdown/ifup sequence, the value for bcm->mac_suspended ends up wrong, which leads to a large number of assert(bcm->mac_suspended>=0) messages. This one-line patch fixes this problem. Signed-off-by: Michael Buesch Signed-Off-By: Larry Finger Signed-off-by: John W. Linville commit efa7e0691f476bfe39d83bf367dfd9c4fa05b43f Author: Zhu Yi Date: Tue Aug 22 17:11:56 2006 +0800 [PATCH] ipw2200: Fix compile error when CONFIG_IPW2200_DEBUG is not selected Signed-off-by: Zhu Yi Signed-off-by: John W. Linville commit 8b5f9171f66ce5049d306cd65010ef6cb290f18d Author: Zhu Yi Date: Mon Aug 21 11:39:13 2006 +0800 [PATCH] ipw2200: Update version stamp to 1.1.4 Update version ipw2200 stamp to 1.1.4 Signed-off-by: Zhu Yi Signed-off-by: John W. Linville commit 094c4d2df6c17a37d9e1b88601990ab660c00c3e Author: Zhu Yi Date: Mon Aug 21 11:39:03 2006 +0800 [PATCH] ipw2200: enable wireless extension passive scan This patch enables the ipw2200 driver to support passive scanning as offered by the wireless extensions. For this, I enhanced the ipw_wx_set_scan function in such a way that it differentiates between a passive and an active scan request. Additionally, I added a new function called ipw_request_passive_scan that is similiar to the ipw_request_scan function to perform passive scans. Last but not least, I added a field (in fact it is a work_struct struct) called request_passive_scan to the ipw_priv struct. Signed-off-by: Thomas King Signed-off-by: Zhu Yi Signed-off-by: John W. Linville commit efbd809829001c94e48b96337ea05a16d5ecee85 Author: Zhu Yi Date: Mon Aug 21 11:38:52 2006 +0800 [PATCH] ipw2100: Fix deadlock detected by lockdep Fix by removing dependency between priv->action_sem and rtnl semaphore. Signed-off-by: Zhu Yi Signed-off-by: John W. Linville commit c8c22c942e46ca0e06fc7c72845314da1ad41702 Author: Zhu Yi Date: Mon Aug 21 11:38:39 2006 +0800 [PATCH] ipw2200: Add pci .shutdown handler If we don't disable the card in the pci .shutdown method, there might be pending interrupts still in the interrupt line after a reboot on some platform. This patch fixes the problem by disable the hardware in the pci .shutdown method. Signed-off-by: Zhu Yi Signed-off-by: John W. Linville commit b9bec768c321e51a8da00d56230bc795464992b2 Author: Zhu Yi Date: Mon Aug 21 11:38:28 2006 +0800 [PATCH] ipw2200: Fix kernel Oops if cmdlog debug is enabled When command error log debug is enabled, we write every host command and parameters into a buffer. But we didn't alloc the parameter buffer for this case. The patch adds struct cmdlog_host_cmd so that the buffer is allocated from the stack. Signed-off-by: Zhu Yi Signed-off-by: John W. Linville commit d5f7ac203924a51d0e678338a11be42135fa7996 Author: Zhu Yi Date: Mon Aug 21 11:38:17 2006 +0800 [PATCH] ipw2200: mark "iwconfig retry 255" as invalid The ipw2200 firmware/ucode only support values from 0 to 254. So mark 255 as invalid. Signed-off-by: Zhu Yi Signed-off-by: John W. Linville commit 88a93df4cbc1342108356bda4f163d5cb78b6381 Author: Zhu Yi Date: Mon Aug 21 11:38:08 2006 +0800 [PATCH] ipw2200: remove the MAC timestamp present field from radiotap head IEEE80211_RADIOTAP_TSFT is defined as the Value in microseconds of the MAC's 64-bit 802.11 Time Synchronization Function timer when the first bit of the MPDU arrived at the MAC. Since ipw2200 hardware doesn't provide this value, we disable this feature from the radiotap header present flag. Signed-off-by: Zhu Yi Signed-off-by: John W. Linville commit 851ca2687e224b3ad82222d9788532a0eaa05a41 Author: Zhu Yi Date: Mon Aug 21 11:37:58 2006 +0800 [PATCH] ipw2200: Fix ipw2200 QOS parameters endian issue Signed-off-by: Jackie Wu Signed-off-by: Zhu Yi Signed-off-by: John W. Linville commit 39be0aaf20c832c50e5f0a975d13013a13650865 Author: Zhu Yi Date: Mon Aug 21 11:37:36 2006 +0800 [PATCH] ipw2200: remove unused struct ipw_rx_buffer Signed-off-by: Zhu Yi Signed-off-by: John W. Linville commit a9f0d42321a7ac40d244a7c6d74a3d1c7a4aa4f3 Author: Zhu Yi Date: Mon Aug 21 11:37:26 2006 +0800 [PATCH] ipw2200: Reassociate even if set the same essid. This patch traps the case when the essid is being set to its current value. If the essid is being set again and we are already associated, chances are some other parameters have also been altered. I think it is safer to do the re-association for this case. Signed-off-by: Bill Moss Signed-off-by: Zhu Yi Signed-off-by: John W. Linville commit ab644b0b51bf3170b398c087b7a34be6d3c7b7ba Author: Zhu Yi Date: Mon Aug 21 11:37:13 2006 +0800 [PATCH] ipw2200: ipw_wx_set_essid fix This patch cleanups the ipw_wx_set_essid code and forces a reassociation when setting the essid to "any". I have tested this patch with iwconfig. It makes ipw2200 compliant with all the cases mentioned in the iwconfig man page. The commands iwconfig iface essid any iwconfig iface essid -- any iwconfig iface essid off iwconfig iface essid on all seemed to work correctly. None of this worked before the patch. Note, this patch treats iwconfig iface essid iwconfig iface essid "" The same. It produces an error message: essid: Unknown host. Since an essid of "" is not mentioned in the iwconfig man page. Signed-off-by: Bill Moss Signed-off-by: Zhu Yi Signed-off-by: John W. Linville commit c580f67fd7fa9deee1f4cf6b86c694b880534a82 Author: Zhu Yi Date: Mon Aug 21 11:37:01 2006 +0800 [PATCH] ipw2200: SIOCGIWFREQ ioctl returns frequency rather than channel The SIOCGIWFREQ ioctl fills the request structure's freq field by setting the exponent to 0 and the mantissa to the current channel number. The iwconfig tool works around this behaviour by looking up the frequency from the channel table if a frequency below 1kHz is returned, other tools (e.g. kwlaninfo) don't. According to the comment in the iwconfig source the driver is supposed to return the frequency, not the channel number. Signed-off-by: Ingo van Lil Signed-off-by: Zhu Yi Signed-off-by: John W. Linville commit 01d478338ff3eff3bade043495f0fc9e57568876 Author: Zhu Yi Date: Mon Aug 21 11:36:53 2006 +0800 [PATCH] ipw2200: always enable frequently used debugging code Moving part of the debugging code from IPW_DEBUG to IPW_LL_DEBUG (low level debugging) and make IPW_DEBUG be always enabled. IPW_LL_DEBUG still needs to be enabled by selecting CONFIG_IPW2200_DEBUG. But it is highly deprecated for normal users since it adds higher debug verbosity in driver hot paths. Signed-off-by: Zhu Yi Signed-off-by: John W. Linville commit f09fc44d8c25f22c4d985bb93857338ed02feac6 Author: Zhu Yi Date: Mon Aug 21 11:34:19 2006 +0800 [PATCH] ieee80211: Workaround malformed 802.11 frames from AP Stop processing further but return success when we receive a malformed packet from the AP. We need this patch to workaround some AP bugs. For example, the beacon frames from the Orinoco AP1000 contains an IE (value = 128) with length equals to 8 but the actual frame length is only 7. Signed-off-by: Zhu Yi Signed-off-by: John W. Linville commit 5a656949719bf8598ad1e93a56eb11e70a4c3208 Author: Zhu Yi Date: Mon Aug 21 11:33:56 2006 +0800 [PATCH] ieee80211: Fix TKIP and WEP decryption error on SMP machines The IEEE80211 TKIP and WEP Tx and Rx paths use the same crypto_tfm to encrypt and decrypt data. During the encrypt and decrypt process, both of them will set a new key to crypto_tfm. If they happen on the same time, it will corrupt the crypto_tfm. Thus users will receive an ICV error or Michael MIC error. This only likely to happen on SMP box with heavy traffic both on Tx and Rx. The patch use two sets of crypto_tfms to avoid this problem. Signed-off-by: Hong Liu Signed-off-by: Zhu Yi Signed-off-by: John W. Linville commit b4328d87ec5711543b818fea2e1cf64f09d326f1 Author: Zhu Yi Date: Mon Aug 21 11:33:09 2006 +0800 [PATCH] ieee80211: TKIP and CCMP replay check rework Signed-off-by: Hong Liu Signed-off-by: Zhu Yi Signed-off-by: John W. Linville commit 051562f7e980b53f7bc6529f2e55b68e20f5d0e6 Author: Zhu Yi Date: Mon Aug 21 11:32:47 2006 +0800 [PATCH] ieee80211: remove ieee80211_tx() is_queue_full warning Signed-off-by: Zhu Yi Signed-off-by: John W. Linville commit 65b6a2775102cd81e57158ef4b1cb89641f76cfd Author: Zhu Yi Date: Mon Aug 21 11:32:31 2006 +0800 [PATCH] ieee80211: Fix header->qos_ctl endian issue Signed-off-by: Jackie Wu Signed-off-by: Zhu Yi Signed-off-by: John W. Linville commit b6971c2191d910714ec36b0ef50886f12c744a06 Author: Larry Finger Date: Sat Aug 19 10:56:28 2006 -0500 [PATCH] bcm43xx: return correct hard_start_xmit error code hard_start_xmit should return a NETIF_TX_FOO error code. Signed-off-by: Michael Buesch Signed-Off-By: Larry Finger Signed-off-by: John W. Linville commit 80b60fa8488e98ceaecb8f976abe79df50988037 Author: Larry Finger Date: Wed Aug 16 11:05:16 2006 -0500 [PATCH] bcm43xx: optimization of DMA bitfields Convert the bitfields in the bcm43xx DMA code to properly aligned u8 booleans. These flags are accessed in the DMA hotpath, so it's a good idea to waste a few bytes of memory for the sake of speed by not requiring masking (and probably shifting) of the bitfields. Signed-off-by: Michael Buesch Signed-Off-By: Larry Finger Signed-off-by: John W. Linville commit 9c974fb1a44dc8d09c16caa4dd174b0403ba585c Author: Pavel Roskin Date: Tue Aug 15 20:45:03 2006 -0400 [PATCH] orinoco: include linux/if_arp.h directly Don't rely on linux/if_arp.h being included by other headers Signed-off-by: Pavel Roskin Signed-off-by: John W. Linville commit 821fe6831c02259ea0e8c2dec56173bd6037f900 Author: Pavel Roskin Date: Tue Aug 15 20:45:00 2006 -0400 [PATCH] orinoco: Don't use "extern inline" on locking functions SPARC architecture has been fixed, so it's no longer needed. Signed-off-by: Pavel Roskin Signed-off-by: John W. Linville commit fb67a0f7b76647ab5ad1e2512275f672584bb4c3 Author: Michael Buesch Date: Wed Aug 16 00:39:36 2006 +0200 [PATCH] MAINTAINERS: Add Larry Finger for bcm43xx (softmac) Add Larry Finger to bcm43xx MAINTAINERS Remove Michael Buesch and add Larry Finger in the bcm43xx-softmac MAINTAINERS record. Signed-off-by: Michael Buesch Signed-off-by: John W. Linville commit 7a9b8cdacfd42d44f8a615e7db8743655d7647e7 Author: Michael Buesch Date: Wed Aug 16 00:29:07 2006 +0200 [PATCH] bcm43xx: re-add bcm43xx_rng_init() call Calls to bcm43xx_rng_init() and bcm43xx_rng_exit() got lost due to merge trouble. Re-add them. Signed-off-by: Michael Buesch Signed-off-by: John W. Linville commit 9218e02bd4dba86e458d9c57d66c18517fb642ff Author: Michael Buesch Date: Wed Aug 16 00:25:16 2006 +0200 [PATCH] bcm43xx: >1G and 64bit DMA support This is a rewrite of the bcm43xx DMA engine. It adds support for >1G of memory (for chips that support the extension bits) and 64-bit DMA (for chips that support it). Signed-off-by: Michael Buesch Signed-off-by: John W. Linville commit 3b4c7d640376dbccfe80fc4f7b8772ecc7de28c5 Author: Sukadev Bhattiprolu Date: Mon Aug 14 23:12:03 2006 -0700 [PATCH] kthread: airo.c The airo driver is currently caching a pid for later use, but with the implementation of containers, pids themselves do not uniquely identify a task. The driver is also using kernel_thread() which is deprecated in drivers. This patch essentially replaces the kernel_thread() with kthread_create(). It also stores the task_struct of the airo_thread rather than its pid. Since this introduces a second task_struct in struct airo_info, the patch renames airo_info.task to airo_info.list_bss_task. As an extension of these changes, the patch further: - replaces kill_proc() with kthread_stop() - replaces signal_pending() with kthread_should_stop() - removes thread completion synchronisation which is handled by kthread_stop(). [akpm@osdl.org: fix races] Signed-off-by: Sukadev Bhattiprolu Cc: Javier Achirica Cc: Christoph Hellwig Signed-off-by: Andrew Morton Signed-off-by: John W. Linville commit 2908d778ab3e244900c310974e1fc1c69066e450 Author: James Bottomley Date: Tue Aug 29 09:22:51 2006 -0500 [SCSI] aic94xx: new driver This is the end point of the separate aic94xx driver based on the original driver and transport class from Luben Tuikov The log of the separate development is: Alexis Bruemmer: o aic94xx: fix hotplug/unplug for expanderless systems o aic94xx: disable split completion timer/setting by default o aic94xx: wide port off expander support o aic94xx: remove various inline functions o aic94xx: use bitops o aic94xx: remove queue comment o aic94xx: remove sas_common.c o aic94xx: sas remove depot's o aic94xx: use available list_for_each_entry_safe_reverse() o aic94xx: sas header file merge James Bottomley: o aic94xx: fix TF_TMF_NO_CTX processing o aic94xx: convert to request_firmware interface o aic94xx: fix hotplug/unplug o aic94xx: add link error counts to the expander phys o aic94xx: add transport class phy reset capability o aic94xx: remove local_attached flag o Remove README o Fixup Makefile variable for libsas rename o Rename sas->libsas o aic94xx: correct return code for sas_discover_event o aic94xx: use parent backlink port o aic94xx: remove channel abstraction o aic94xx: fix routing algorithms o aic94xx: add backlink port o aic94xx: fix cascaded expander properties o aic94xx: fix sleep under lock o aic94xx: fix panic on module removal in complex topology o aic94xx: make use of the new sas_port o rename sas_port to asd_sas_port o Fix for eh_strategy_handler move o aic94xx: move entirely over to correct transport class formulation o remove last vestages of sas_rphy_alloc() o update for eh_timed_out move o Preliminary expander support for aic94xx o sas: remove event thread o minor warning cleanups o remove last vestiges of id mapping arrays o Further updates o Convert aic94xx over entirely to the transport class end device and o update aic94xx/sas to use the new sas transport class end device o [PATCH] aic94xx: attaching to the sas transport class o Add missing completion removal from prior patch o [PATCH] aic94xx: attaching to the sas transport class o Build fixes from akpm Jeff Garzik: o [scsi aic94xx] Remove ->owner from PCI info table Luben Tuikov: o initial aic94xx driver Mike Anderson: o aic94xx: fix panic on module insertion o aic94xx: stub out SATA_DEV case o aic94xx: compile warning cleanups o aic94xx: sas_alloc_task o aic94xx: ref count update o aic94xx nexus loss time value o [PATCH] aic94xx: driver assertion in non-x86 BIOS env Randy Dunlap: o libsas: externs not needed Robert Tarte: o aic94xx: sequence patch - fixes SATA support Signed-off-by: James Bottomley commit 1db2740d78c74eb11c4d0906047d9c13229a89a4 Author: Auke Kok Date: Mon Aug 28 14:56:32 2006 -0700 e1000: Use module param array code Use module param array code to distinguish between defaults and user specified values. Signed-off-by: Auke Kok commit e7b4411704246e28be0eea8c83af174e1766ed86 Author: Auke Kok Date: Mon Aug 28 14:56:30 2006 -0700 e1000: remove unused part_num reading code Remove the code that reads part_num from the EEPROM. This part number is never displayed or queryable by the user. Signed-off-by: Auke Kok commit 3d1dd8cb23c30447602563fc8302af0f15fdf3a9 Author: Auke Kok Date: Mon Aug 28 14:56:27 2006 -0700 e1000: error out if we cannot enable PCI device on resume Do not ignore errors returned by pci_enable_device, instead error out. Signed-off-by: Auke Kok commit 3fbbc72ef172cd4272a43234d4c7a7bba44c97f5 Author: Vasily Averin Date: Mon Aug 28 14:56:24 2006 -0700 e1000: ring buffers resources cleanup Memory leak was found in 2.6.18-rc4 and e1000 7.2.7 from sourceforge: We should free resources allocated for previous rings if following allocation fails. Signed-off-by: Vasily Averin Signed-off-by: Andrew Morton Signed-off-by: Auke Kok commit 6dd62ab063ec12bf1343d244d89e09d5c3b79f51 Author: Vasily Averin Date: Mon Aug 28 14:56:22 2006 -0700 e1000: e1000_probe resources cleanup Fix resources cleanup in e1000_probe() Signed-off-by: Vasily Averin Signed-off-by: Andrew Morton Signed-off-by: Auke Kok commit 401a552b8b318d594fc44d36e3da13ad475a41f7 Author: Vasily Averin Date: Mon Aug 28 14:56:19 2006 -0700 e1000: IRQ resources cleanup irq leak was found in 2.6.18-rc4 and e1000 7.2.7 from sourceforge: if e1000_up fails in e1000_open() we do not free allocated irq Signed-off-by: Vasily Averin Signed-off-by: Andrew Morton Signed-off-by: Auke Kok commit 8fc897b00a7d81ffaa24e18881c2d6b10698ab0b Author: Auke Kok Date: Mon Aug 28 14:56:16 2006 -0700 e1000: Whitespace cleanup, cosmetic changes Signed-off-by: Auke Kok commit f4ad7b5807385ad1fed0347d966e51a797cd1013 Author: James Bottomley Date: Fri Aug 25 13:48:18 2006 -0500 [SCSI] scsi_transport_sas: remove local_attached flag This flag denotes local attachment of the phy. There are two problems with it: 1) It's actually redundant ... you can get the same information simply by seeing whether a host is the phys parent 2) we condition a lot of phy parameters on it on the false assumption that we can only control local phys. I'm wiring up phy resets in the aic94xx now, and it will be able to reset non-local phys as well. I fixed 2) by moving the local check into the reset and stats function of the mptsas, since that seems to be the only HBA that can't (currently) control non-local phys. Signed-off-by: James Bottomley commit 8638460540749ddb1beca9e9a68d655a6fe6df65 Author: Abhijith Das Date: Fri Aug 25 11:13:37 2006 -0500 [GFS2] Allow mounting of gfs2 and gfs2meta at the same time This patch allows the simultaneous mounting of gfs2meta and gfs2 filesystems. A restriction however is that a gfs2meta fs may only be mounted if its corresponding gfs2 filesystem is also mounted. Also, a gfs2 filesystem cannot be unmounted before its gfs2meta filesystem. Signed-off-by: Abhijith Das Signed-off-by: Steven Whitehouse commit 5f88f1ea16a2fb5f125505053d1bfb7901a88c64 Author: David Teigland Date: Thu Aug 24 14:47:20 2006 -0500 [DLM] add new lockspace to list ealier When a new lockspace was being created, the recoverd thread was being started for it before the lockspace was added to the global list of lockspaces. The new thread was looking up the lockspace in the global list and sometimes not finding it due to the race with the original thread adding it to the list. We need to add the lockspace to the global list before starting the thread instead of after, and if the new thread can't find the lockspace for some reason, it should return an error. Signed-off-by: David Teigland Signed-off-by: Steven Whitehouse commit 5dc39fe621ead2fa2a0439a686be4df185861eae Author: Benjamin Marzinski Date: Thu Aug 24 14:47:17 2006 -0500 [GFS2] Fix journal off-by-one error log_refund() incorrectly assumed that if a transaction had been touched, it always committed buffers to the incore log. Thus, when you got around to flushing the log, you would need one more block than you committed, to account for the header. So it automatically set reserved to 1, which had the effect of making sdp->sd_log_blks_reserved one greater when you got to gfs2_log_flush(). However, if you don't actually commit anything to the incore log between flushes, you don't need the header, because you aren't writing anything out. With this patch, log_refund() only increments reservered to account for the header if something has been committed since the last flush. Signed-off-by: Benjamin E. Marzinski Signed-off-by: Steven Whitehouse commit 2818c5dec5e28d65d52afbb7695bbbafe6377ee5 Author: Paul Mackerras Date: Fri Aug 25 15:08:21 2006 +1000 [POWERPC] Only offer CONFIG_BRIQ_PANEL if CONFIG_PPC_CHRP is enabled since only the briQ has a briQ front panel, and the briQ is a CHRP and is only supported if CONFIG_PPC_CHRP is set. Signed-off-by: Paul Mackerras commit 271c511db9d37d6797745adb1f151a8bd2838c6f Author: Johannes Berg Date: Tue Aug 22 16:57:05 2006 +0200 [POWERPC] make checkstack work with ARCH=powerpc This patch adds 'powerpc' architecture support to checkstack.pl. Signed-off-by: Johannes Berg Signed-off-by: Paul Mackerras commit 39ed2fe62c39ac46cda00b1759806a297f38743b Author: Olaf Hering Date: Mon Aug 21 18:11:32 2006 +0200 [POWERPC] reboot when panic_timout is set Only call into RTAS when booted with panic=0 because the RTAS call does not return. The system has to be rebooted via the HMC or via the management console right now. This is cumbersome and not what the default panic=180 is supposed to do. Signed-off-by: Olaf Hering Signed-off-by: Paul Mackerras commit e2bf2e26c0915d54208315fc8c9864f1d987217a Author: Stephen Rothwell Date: Thu Aug 17 16:28:28 2006 +1000 [POWERPC] iseries: remove some gcc 4.1 warnings gcc 4.1 produces some warnings that say it is ignoring the packed attribute on some structure elements, so, since all the elements of these structs are packed, pack the structs instead. Signed-off-by: Stephen Rothwell Signed-off-by: Paul Mackerras commit 6f3d5d3cc4b1447578ae8484166bbc34a64150c5 Author: Michael Ellerman Date: Wed Aug 16 22:04:14 2006 +1000 [POWERPC] Add a helper for calculating RTAS "config_addr" parameters Several RTAS calls take a "config_addr" parameter, which is a particular way of specifying a PCI busno, devfn and register number into a 32-bit word. Currently these are open-coded, and I'll be adding another soon, replace them with a helper that encapsulates the logic. Be more strict about masking the busno too, just in case. Booted on P5 LPAR. Signed-off-by: Michael Ellerman Signed-off-by: Paul Mackerras commit a0a428e30077fd64c39aadf5221cf2c7a14dc281 Author: Stephen Rothwell Date: Wed Aug 16 15:24:28 2006 +1000 [POWERPC] iseries: remove const warning Just one bit of fallout from the constification of the get_property return value. Signed-off-by: Stephen Rothwell Signed-off-by: Paul Mackerras commit 9a2ded55c40ad17b8b12f87c592a40b2e8593c4d Author: Michael Neuling Date: Wed Aug 16 23:12:14 2006 -0500 [POWERPC] powerpc: Make RTAS console init generic The rtas console doesn't have to be Cell specific. If we get both RTAS tokens, we should just enabled the console then and there. Signed-off-by: Michael Neuling Signed-off-by: Paul Mackerras commit 869d7f381e8c32de85ddfa9621125fb10a885f87 Author: Jon Loeliger Date: Tue Aug 15 16:19:02 2006 -0500 [POWERPC] Allow MPC8641 HPCN to build with CONFIG_PCI disabled too. Signed-off-by: Jon Loeliger Signed-off-by: Paul Mackerras commit f39b7a55a84e34e3074b168e30dc73b66e85261d Author: Olof Johansson Date: Fri Aug 11 00:07:08 2006 -0500 [POWERPC] Cleanup CPU inits Cleanup CPU inits a bit more, Geoff Levand already did some earlier. * Move CPU state save to cpu_setup, since cpu_setup is only ever done on cpu 0 on 64-bit and save is never done more than once. * Rename __restore_cpu_setup to __restore_cpu_ppc970 and add function pointers to the cputable to use instead. Powermac always has 970 so no need to check there. * Rename __970_cpu_preinit to __cpu_preinit_ppc970 and check PVR before calling it instead of in it, it's too early to use cputable. * Rename pSeries_secondary_smp_init to generic_secondary_smp_init since everyone but powermac and iSeries use it. Signed-off-by: Olof Johansson Signed-off-by: Paul Mackerras commit 2e97425197ecf85641a89e5a4868f8e147cc443f Author: Olof Johansson Date: Fri Aug 11 00:03:01 2006 -0500 [POWERPC] Rename cpu_setup_power4.S to cpu_setup_ppc970.S Rename cpu_setup_power4.S to cpu_setup_ppc970.S, since that's really what it is. No functional or other changes. Signed-off-by: Olof Johansson Signed-off-by: Paul Mackerras commit 9e6ee340194e8bd8f463b55c6d028272c0e64155 Author: Geoff Levand Date: Wed Aug 9 15:28:13 2006 -0700 [POWERPC] cell: interrupt.c whitespace clean up Whitespace clean up for cell/interrupt.c. Signed-off-by: Geoff Levand Signed-off-by: Paul Mackerras commit 11a27ad782fc7ae4b7d6ac8fefad4ceb415300d6 Author: Michael Neuling Date: Wed Aug 9 17:00:30 2006 +1000 [POWERPC] SLB shadow buffer cleanup Cleanup some of the #define magic as suggested by Milton. Signed-off-by: Michael Neuling Signed-off-by: Paul Mackerras commit a2242db0906445491d9ac50bfa756b0de0a25d45 Author: Steven Whitehouse Date: Thu Aug 24 17:03:05 2006 -0400 [GFS2] Speed up scanning of glocks I noticed the gfs2_scand seemed to be taking a lot of CPU, so in order to cut that down a bit, here is a patch. Firstly the type of a glock is a constant during its lifetime, so that its possible to check this without needing locking. I've moved the (common) case of testing for an inode glock outside of the glmutex lock. Also there was a mutex left over from when the glock cache was master of the inode cache. That isn't required any more so I've removed that too. There is probably scope for further speed ups in the future in this area. Signed-off-by: Steven Whitehouse commit 166afccd71fbb7bd758ab9fc770eef4924081077 Author: Steven Whitehouse Date: Thu Aug 24 15:59:40 2006 -0400 [GFS2] Tidy up error handling in gfs2_releasepage() This should clarify the logic in gfs2_releasepage() relating to error handling as well as making the response to errors a bit more graceful. Signed-off-by: Steven Whitehouse commit 233e515f4062f99569c24f00ad7429a860b23db4 Author: David Teigland Date: Wed Aug 23 16:05:44 2006 -0500 [DLM] recover_locks not clearing NEW_MASTER flag When there are no locks on a resource, the recover_locks() function fails to clear the NEW_MASTER flag by going directly to out, missing the line that clears the flag. Signed-off-by: David Teigland Signed-off-by: Steven Whitehouse commit f5888750aad219bec42f3f28354eb230d1a47b89 Author: David Teigland Date: Wed Aug 23 12:50:54 2006 -0500 [DLM] sequence number missing in not_ready reply When a status reply is sent for a lockspace that doesn't yet exist, the message sequence number from the sender was not being copied into the reply causing the sender to ignore the reply. Signed-off-by: David Teigland Signed-off-by: Steven Whitehouse commit e889173c2c67dc288e9b050ab066cfae151b047e Author: Jeff Garzik Date: Thu Aug 24 03:55:09 2006 -0400 Rename libata-bmdma.c to libata-sff.c. Signed-off-by: Jeff Garzik commit cca3974e48607c3775dc73b544a5700b2e37c21a Author: Jeff Garzik Date: Thu Aug 24 03:19:22 2006 -0400 libata: Grand renaming. The biggest change is that ata_host_set is renamed to ata_host. * ata_host_set => ata_host * ata_probe_ent->host_flags => ata_probe_ent->port_flags * ata_probe_ent->host_set_flags => ata_probe_ent->_host_flags * ata_host_stats => ata_port_stats * ata_port->host => ata_port->scsi_host * ata_port->host_set => ata_port->host * ata_port_info->host_flags => ata_port_info->flags * ata_(.*)host_set(.*)\(\) => ata_\1host\2() The leading underscore in ata_probe_ent->_host_flags is to avoid reusing ->host_flags for different purpose. Currently, the only user of the field is libata-bmdma.c and probe_ent itself is scheduled to be removed. ata_port->host is reused for different purpose but this field is used inside libata core proper and of different type. Signed-off-by: Tejun Heo Signed-off-by: Jeff Garzik commit 81ce3c4b4d3771866ce74b1c3856b45c3e2549fc Author: Jeff Garzik Date: Thu Aug 24 02:41:25 2006 -0400 Clean up drivers/ata/Kconfig a bit. commit 281d426c7e64286f433645e27862e7744b1e9310 Author: Alexey Dobriyan Date: Mon Aug 14 22:49:30 2006 -0700 [PATCH] CONFIG_PM=n slim: drivers/scsi/sata_sil* Remove some code which is unneeded if CONFIG_PM=n. Signed-off-by: Alexey Dobriyan Cc: Jeff Garzik Signed-off-by: Andrew Morton Signed-off-by: Jeff Garzik commit 08be09b7c38a71b1677285c10a08725833ff9b95 Author: Jay Cliburn Date: Mon Aug 7 22:08:30 2006 -0500 [PATCH] sata_via: Add SATA support for vt8237a This patch adds support for the VIA Technologies VT8237A SATA controller, used, for example, on the ASUS M2V socket AM2 motherboard. Signed-off-by: Jay Cliburn Signed-off-by: Jeff Garzik commit 85a7ea1b0a3263f3ad423b789a841d03c9acbb65 Author: Brice Goglin Date: Mon Aug 21 17:36:56 2006 -0400 [PATCH] myri10ge: use multicast support in the firmware Some recent myri10ge firmwares support multicast filtering as well as an extended mcp_irq_data structure (64 instead of 40 bytes). The new command MXGEFW_CMD_SET_STATS_DMA_V2 is used to check whether the firmware support those. mgp->fw_multicast_support is defined accordingly. When fw_multicast_support is set, some new multicast filtering commands is passed to the board in myri10ge_set_multicast_list(). Signed-off-by: Brice Goglin Signed-off-by: Jeff Garzik commit c58ac5caeb32ef17c2e4fc208f7dc93f6de32b7d Author: Brice Goglin Date: Mon Aug 21 17:36:49 2006 -0400 [PATCH] myri10ge: use netif_msg_link Add msg_enable and use netif_msg_link to enable/disable reporting of link status changes since some Ethernet switches seem to generate a lot of status changes under some circumstances and some people want to avoid useless flooding in the logs. Also add a counter for link status changes to statistics. Signed-off-by: Brice Goglin Signed-off-by: Jeff Garzik commit 32f105a123804c7882d447f013aeb3530b4d63c0 Author: David Teigland Date: Wed Aug 23 16:07:31 2006 -0400 [DLM] down conversion clearing flags The down-conversion optimization was resulting in the lkb flags being cleared because the stub message reply had no flags value set. Copy the current flags into the stub message so they'll be copied back into the lkb as part of processing the fake reply. Also add an assertion to catch this error more directly if it exists elsewhere. Signed-off-by: David Teigland Signed-off-by: Steven Whitehouse commit c059f70e357af1adcfc1a9294e44cdd945adb841 Author: Patrick Caulfield Date: Wed Aug 23 10:24:03 2006 +0100 [DLM] down conversion clearing flags Oh, and here's (hopefully) the last of these ua_tmp patches. I think I've caught all the paths now. Sorry it didn't make the last one. Signed-off-by: Patrick Caulfield Signed-off-by: Steven Whitehouse commit 10948eb4eddea6750a3b27f77bec423d844e6726 Author: Patrick Caulfield Date: Wed Aug 23 09:49:31 2006 +0100 [DLM] preserve lksb address in user conversions This patch fixes bz#203444 where the LKSB was lost during userland conversion operations Signed-off-by: Patrick Caulfield Signed-off-by: Steven Whitehouse commit b8e1aabf218a2037d9d6a3256c33fc6ef96ac44c Author: Steven Whitehouse Date: Tue Aug 22 16:25:50 2006 -0400 [GFS2] Another list_del bug Another case where list_del should be list_del_init. Signed-off-by: Steven Whitehouse commit 08867605e1d5f575685aa2b5bf575aba3d996758 Author: Steven Whitehouse Date: Tue Aug 22 11:03:57 2006 -0400 [GFS2] Fix to list_del in lops.c A list_del should have been a list_del_init in lops.c which was resulting in incorrect status returns from list_empty(). Signed-off-by: Steven Whitheouse commit 58707cceeef22bd5e85a7f41491e9c3ff57772f9 Author: Henrik Kretzschmar Date: Mon Aug 21 18:39:26 2006 -0700 [PATCH] libata: change path to libata in libata.tmpl Since libata moved from /drivers/scsi to /drivers/ata this template is broken. Signed-off-by: Henrik Kretzschmar Acked-by: Randy Dunlap Acked-by: Alan Cox Cc: Jeff Garzik Signed-off-by: Andrew Morton Signed-off-by: Jeff Garzik commit 4dc3595f5c569021b1bd0109502acfca82036902 Author: Parag Warudkar Date: Tue Aug 22 10:12:58 2006 +1000 intelfbhw.c: intelfbhw_get_p1p2 defined but not used intelfbhw_get_p1p2 is used only if REGDUMP is defined - compile it in only if REGDUMP is defined - one less compiler warning. Signed-off-by: Dave Airlie commit d5afabcea215a828eb00df992b429486aae14c2f Author: Dave Airlie Date: Tue Aug 22 10:10:56 2006 +1000 intelfb: fix mtrr_reg signedness This is my fix for gcc 4.1 sign issue reported by Eric Sesterhenn . Signed-off-by: Dave Airlie commit d463d34e7b336ae3645ac331adccb578ae5a4285 Author: Christian Merkle Date: Tue Aug 22 10:07:01 2006 +1000 intelfb: update doc and Kconfig (supported devices) According to drivers/video/intelfb/intelfb.h, the intelfb driver supportes the following devices: 830M/845G/852GM/855GM/865G/915G/915GM/945G/945GM. So the description in drivers/video/Kconfig and the documentation in Documentation/fb/intelfb.txt is outdated. airlied: cleaned up some other obvious mistakes in intelfb.txt. Signed-off-by: Christian Merkle Signed-off-by: Dave Airlie commit a345da3e8f28ff69e1b14df78f7ddc6e7b78b726 Author: David Teigland Date: Fri Aug 18 11:54:25 2006 -0500 [DLM] dump rsb and locks on assert Introduce new function dlm_dump_rsb() to call within assertions instead of dlm_print_rsb(). The new function dumps info about all locks on the rsb in addition to rsb details. Signed-off-by: David Teigland Signed-off-by: Steven Whitehouse commit d2afb3ae04e36dbc6e9eb2d8bd54406ff7b6b3bd Author: Daniel Walker Date: Mon Aug 14 23:09:23 2006 -0700 [SCSI] BusLogic gcc 4.1 warning fixes - Reworked all the very long lines in that block (this drivers full of them though) - Returns an error in three places that it didn't before. - Properly clean up after a scsi_add_host() failure. Signed-off-by: Daniel Walker Signed-off-by: Andrew Morton Signed-off-by: James Bottomley commit c67eebd67400c4c2ae1389317f1de0cbb3b7a1ca Author: Komuro Date: Wed Aug 16 13:54:11 2006 +0900 [PATCH] network: axnet_cs.c: add new id (0x021b, 0x0202) Signed-off-by: komurojun-mbn@nifty.com Signed-off-by: Jeff Garzik commit 7796705244d1f04053acf24bee7eb2983f9cfeaf Author: Tejun Heo Date: Sat Aug 19 03:54:39 2006 +0900 [PATCH] libata: s/CONFIG_SCSI_SATA/CONFIG_[S]ATA/g in pci/quirks.c drivers/pci/quirks.c was not updated when libata config constants were renamed braking several libata quirks. Fix it. Signed-off-by: Tejun Heo Signed-off-by: Jeff Garzik commit 299176206b266f204be859adf9e66efd06628ab2 Author: Jeff Garzik Date: Sat Aug 19 17:48:59 2006 -0400 drivers/net: Remove deprecated use of pci_module_init() From: Michal Piotrowski Signed-off-by: Michal Piotrowski Signed-off-by: Jeff Garzik commit 5243a37b7991c85e3ea3afb6e3e13eea7ec2927d Author: Henrik Kretzschmar Date: Tue Aug 15 11:41:11 2006 +0200 [PATCH] remove an unused function from the header Removes an unused function from the via-velocity-driver. It doesn't make the binary smaller, but the source cleaner. Signed-off-by: Henrik Kretzschmar Signed-off-by: Jeff Garzik commit fd6746daade513bf7f887625c107878b6aacccfd Author: Brice Goglin Date: Mon Aug 14 17:53:15 2006 -0400 [PATCH] myri10ge: convert to netdev_alloc_skb Convert the myri10ge driver to use netdev_alloc_skb instead of dev_alloc_skb, which requires to propagate the net_device across several functions. Signed-off-by: Brice Goglin Signed-off-by: Jeff Garzik commit e700f9f4a208bf6c5d2b4dd67816555930524476 Author: Brice Goglin Date: Mon Aug 14 17:52:54 2006 -0400 [PATCH] myri10ge: define some previously hardwired firmware constants Define some previously hardwired firmware constants. Signed-off-by: Brice Goglin Signed-off-by: Jeff Garzik commit 4041b9cd87d97a7c73a5bf5a9305dffee2599386 Author: Michal Piotrowski Date: Thu Aug 17 13:28:22 2006 +0000 [SCSI] megaraid_sas: pci_module_init to pci_register_driver conversion Signed-off-by: Michal Piotrowski Acked-by: "Patro, Sumant" Signed-off-by: James Bottomley commit b8d08210126a7b769b857720a59721a453a57a1e Author: James Smart Date: Thu Aug 17 08:00:43 2006 -0400 [SCSI] fc transport: add fc_host system_hostname attribute and u64_to_wwn() This patch updates the fc transport for the following: - Addition of a new attribute "system_hostname" which can be used to set the fully qualified hostname that the fc_host is attached to. The fc_host can then register this string as the FDMI-based host name attribute. Note: for NPIV, a fc_host could be associated with a system which is not the local system. - Add the inline function u64_to_wwn(), which is the inverse of the existing wwn_to_u64() function. - Slight reorg, just to keep dynamic attributes with each other, etc Signed-off-by: James Smart Signed-off-by: James Bottomley commit f3d7271c5ac9029d19fc0252a85bc045334382cc Author: Henrik Kretzschmar Date: Tue Aug 15 11:17:21 2006 +0200 [SCSI] convert to PCI_DEVICE() macro Convert the pci_device_id-table of the megaraid_sas-driver to the PCI_DEVICE-macro, to safe some lines. Signed-off-by: Henrik Kretzschmar Acked-by: "Patro, Sumant" Signed-off-by: James Bottomley commit 2b6ee9b5295460017fc1bc3d60545512df280908 Author: Randy Dunlap Date: Mon Aug 14 23:09:23 2006 -0700 [SCSI] aic7*: cleanup MODULE_PARM_DESC strings Modify beginning string to be more readable. Remove one trailing newline. Signed-off-by: Randy Dunlap Signed-off-by: Andrew Morton Signed-off-by: James Bottomley commit 016131b8fffa1085b4ad165ab228116fdc278ebe Author: James Smart Date: Mon Aug 14 08:20:25 2006 -0400 [SCSI] fc transport: convert fc_host symbolic_name attribute to a dynamic attribute Signed-off-by: James Bottomley commit a2f5d4d94f0ab9560b9a99d73d5b86b377c7f201 Author: Dave Jones Date: Thu Aug 10 21:41:13 2006 -0400 [SCSI] remove unnecessary includes of linux/config.h from drivers/scsi/ kbuild includes this automatically these days. Signed-off-by: Dave Jones Signed-off-by: James Bottomley commit 84961f28e9d13a4b193d0c8545f3c060c1890ff3 Author: dave wysochanski Date: Wed Aug 9 14:56:32 2006 -0400 [SCSI] Don't add scsi_device for devices that return PQ=1, PDT=0x1f Some targets may return slight variations of PQ and PDT to indicate no LUN mapped. USB UFI setting PDT=0x1f but having reserved bits for PQ is one example, and NetApp targets returning PQ=1 and PDT=0x1f is another. Both instances seem like reasonable responses according to SPC-3 and UFI specs. The current scsi_probe_and_add_lun() code adds a scsi_device for targets that return PQ=1 and PDT=0x1f. This causes LUNs of type "UNKNOWN" to show up in /proc/scsi/scsi when no LUNs are mapped. In addition, subsequent rescans fail to recognize LUNs that may be added on the target, unless preceded by a write to the delete attribute of the "UNKNOWN" LUN. This patch addresses this problem by skipping over the scsi_add_lun() when PQ=1,PDT=0x1f is encountered, and just returns SCSI_SCAN_TARGET_PRESENT. Signed-off-by: Dave Wysochanski Signed-off-by: Christoph Hellwig Signed-off-by: James Bottomley commit 8c867b257d159ca04602d7087fa29f846785f9ea Author: Mark Haverkamp Date: Thu Aug 3 08:03:30 2006 -0700 [SCSI] aacraid: Reset adapter in recovery timeout Received from Mark Salyzyn If the adapter is in blinkled (Firmware Assert) when error recovery timeout actions have been triggered, perform an adapter warm reset and restart the initialization. Signed-off-by: Mark Haverkamp Signed-off-by: James Bottomley commit 90ee346651524eb275405d410f5d3bb6765a2d93 Author: Mark Haverkamp Date: Thu Aug 3 08:03:07 2006 -0700 [SCSI] aacraid: Check for unlikely errors Received from Mark Salyzyn The enclosed patch cleans up some code fragments, adds some paranoia (unproven causes of potential driver failures). Signed-off-by: Mark Haverkamp Signed-off-by: James Bottomley commit 8c23cd7457151fc8ace79ec700a8aeaa9fc5b3d9 Author: Mark Haverkamp Date: Tue Aug 8 08:52:14 2006 -0700 [SCSI] aacraid: Restart adapter on firmware assert (Update 2) Received from Mark Salyzyn If the adapter should be in a blinkled (Firmware Assert) state when the driver loads, we will perform a warm restart of the Adapter Firmware to see if we can rescue the adapter. Possible causes of a blinkled can occur on some early release motherboard BIOSes, transitory PCI bus problems on embedded systems or non-x86 based architectures, transitory startup failures of early release drives or transitory hardware failures; some of which can bite the adapter later at runtime. Future enhancements will include recovery during runtime. Fixed extra whitespace space issue. Signed-off-by: Mark Haverkamp Signed-off-by: James Bottomley commit c8f7b073e0e81499474a84ee2a90f77f7805c7f8 Author: Mark Haverkamp Date: Thu Aug 3 08:02:24 2006 -0700 [SCSI] aacraid: interruptible ioctl Received from Mark Salyzyn This patch allows the FSACTL_SEND_LARGE_FIB, FSACTL_SENDFIB and FSACTL_SEND_RAW_SRB ioctl calls into the aacraid driver to be interruptible. Only necessary if the adapter and/or the management software has gone into some sort of misbehavior and the system is being rebooted, thus permitting the user management software applications to be killed relatively cleanly. The FIB queue resource is held out of the free queue until the adapter finally, if ever, completes the command. Signed-off-by: Mark Haverkamp Signed-off-by: James Bottomley commit 04846f25920d4b05d6040c531cc601049260db52 Author: Andreas Herrmann Date: Wed Aug 9 17:31:16 2006 +0200 [SCSI] limit recursion when flushing shost->starved_list Attached is a patch that should limit a possible recursion that can lead to a stack overflow like follows: Kernel stack overflow. CPU: 3 Not tainted Process zfcperp0.0.d819 (pid: 13897, task: 000000003e0d8cc8, ksp: 000000003499dbb8) Krnl PSW : 0404000180000000 000000000030f8b2 (get_device+0x12/0x48) Krnl GPRS: 00000000135a1980 000000000030f758 000000003ed6c1e8 0000000000000005 0000000000000000 000000000044a780 000000003dbf7000 0000000034e15800 000000003621c048 070000003499c108 000000003499c1a0 000000003ed6c000 0000000040895000 00000000408ab630 000000003499c0a0 000000003499c0a0 Krnl Code: a7 fb ff e8 a7 19 00 00 b9 02 00 22 e3 e0 f0 98 00 24 a7 84 Call Trace: ([<000000004089edc2>] scsi_request_fn+0x13e/0x650 [scsi_mod]) [<00000000002c5ff4>] blk_run_queue+0xd4/0x1a4 [<000000004089ff8c>] scsi_queue_insert+0x22c/0x2a4 [scsi_mod] [<000000004089779a>] scsi_dispatch_cmd+0x8a/0x3d0 [scsi_mod] [<000000004089f1ec>] scsi_request_fn+0x568/0x650 [scsi_mod] ... [<000000004089f1ec>] scsi_request_fn+0x568/0x650 [scsi_mod] [<00000000002c5ff4>] blk_run_queue+0xd4/0x1a4 [<000000004089ff8c>] scsi_queue_insert+0x22c/0x2a4 [scsi_mod] [<000000004089779a>] scsi_dispatch_cmd+0x8a/0x3d0 [scsi_mod] [<000000004089f1ec>] scsi_request_fn+0x568/0x650 [scsi_mod] [<00000000002c5ff4>] blk_run_queue+0xd4/0x1a4 [<000000004089fa9e>] scsi_run_host_queues+0x196/0x230 [scsi_mod] [<00000000409eba28>] zfcp_erp_thread+0x2638/0x3080 [zfcp] [<0000000000107462>] kernel_thread_starter+0x6/0xc [<000000000010745c>] kernel_thread_starter+0x0/0xc <0>Kernel panic - not syncing: Corrupt kernel stack, can't continue. This stack overflow occurred during tests on s390 using zfcp. Recursion depth for this panic was 19. Usually recursion between blk_run_queue and a request_fn is avoided using QUEUE_FLAG_REENTER. But this does not help if the scsi stack tries to flush the starved_list of a scsi_host. Limit recursion depth when flushing the starved_list of a scsi_host. Signed-off-by: Andreas Herrmann Signed-off-by: James Bottomley commit 15d00c0b91ca776b51b5ab04f79ab35b06670d30 Author: Steven Whitehouse Date: Fri Aug 18 15:51:09 2006 -0400 [GFS2] Fix leak of gfs2_bufdata This fixes a memory leak of struct gfs2_bufdata and also some problems in the ordered write handling code. It needs a bit more testing, but I believe that the reference counting of ordered write buffers should now be correct. This is aimed at fixing Red Hat bugzilla: #201028 and #201082 Signed-off-by: Steven Whitehouse commit 891b11f619dcfe045015394fa89041f02dac9428 Author: Auke Kok Date: Wed Aug 16 13:47:31 2006 -0700 ixgb: Increment version to 1.0.109-k4 Signed-off-by: Auke Kok commit 3ae84d9269592a1284892c93597a604a894f1102 Author: Jesse Brandeburg Date: Wed Aug 16 13:47:25 2006 -0700 ixgb: fix cache miss due to miscalculation Reduce writeback threshold by 1. We were instructing the hardware to wait until the 17th descriptor which went over the cache line limit. Signed-off-by: Jesse Brandeburg Signed-off-by: Auke Kok commit 0fe198a5e10229b269624a18bbd390001a8d3476 Author: Manasi Deval Date: Wed Aug 16 13:47:20 2006 -0700 ixgb: Add CX4 PHY type detection and subdevice ID. Signed-off-by: Manasi Deval Signed-off-by: Auke Kok commit dc335d9735220b3a9ece5ec2d95864b1e8ff06a0 Author: Auke Kok Date: Wed Aug 16 13:39:09 2006 -0700 e1000: Increment driver version to 7.1.9-k6 Signed-off-by: Auke Kok commit 600c977c0801210602d7502f9c978c2b8c31a209 Author: Jeff Kirsher Date: Wed Aug 16 13:39:04 2006 -0700 e1000: Disable aggressive clocking on esb2 with SERDES port Disable aggressive clocking on esb2 with SERDES port as it causes hardware problems. Signed-off-by: Jeff Kirsher Signed-off-by: Auke Kok commit 7820d4281a0d746a92992a9117aec007628ae3fe Author: Jeff Kirsher Date: Wed Aug 16 13:39:00 2006 -0700 e1000: Force full DMA clocking for 10/100 speed Signed-off-by: Jeff Kirsher Signed-off-by: Auke Kok commit c9c1b834c7b6e00badfd9a775682644f192f0357 Author: Jeff Kirsher Date: Wed Aug 16 13:38:54 2006 -0700 e1000: Allow NVM to setup LPLU for IGP2 and IGP3 Allow NVM to setup LPLU for IGP2 and IGP3. Only IGP needs LPLU D3 disabled during init here. Signed-off-by: Jeff Kirsher Signed-off-by: Auke Kok commit 1a821ca59593d307e564800c2f25ed1f9e1e2a6f Author: Jesse Brandeburg Date: Wed Aug 16 13:38:46 2006 -0700 e1000: explicit locking for two ethtool path functions Explicitly lock two more ethtool entry points completely instead of the hardware reset only to prevent a race condition. Signed-off-by: Jesse Brandeburg Signed-off-by: Auke Kok commit d658266ed6144f9dbc785c7d5bb6e8e5e2e7f3cf Author: Jesse Brandeburg Date: Wed Aug 16 13:31:33 2006 -0700 e1000: Explicitly power up the PHY during loopback testing. Signed-off-by: Jesse Brandeburg commit 673a052fde79ab5e9dce569b0336358812ddba2d Author: Jeff Kirsher Date: Wed Aug 16 11:28:49 2006 -0700 e1000: Remove 0x1000 as supported device Remove pci ID 8086:1000 from the list fo supported devices. This device has not functioned with the driver for very long (since v. 5.2.4!) and we lack the resources to come with a substantial fix. There are only few cards of this type out there. Signed-off-by: Jeff Kirsher Signed-off-by: Auke Kok commit e15fdd0391dfeb0d439ecac759fb88aca7930f2f Author: Auke Kok Date: Wed Aug 16 11:28:45 2006 -0700 e1000: Same cosmetic fix as earlier sent out for IPV4. Signed-off-by: Auke Kok commit 4e1dc97d5e0dd5b1cf78e67ea8f12ca9697c9eee Author: Auke Kok Date: Wed Aug 16 11:28:35 2006 -0700 e100: increment version to 3.5.10-k4 Increment the version of e100 to 3.5.10-k4, increment dates. Signed-off-by: Auke Kok commit 60ffa478759f39a2eb3be1ed179bc3764804b2c8 Author: Jeff Kirsher Date: Wed Aug 16 11:28:14 2006 -0700 e100: Fix MDIO/MDIO-X MDIO/MDIO-X was broken due to a wrong errata. Removing the workaround code fixes for affected NICs. Signed-off-by: Jeff Kirsher Signed-off-by: Auke Kok commit 113b898e38cb20e80847c24154ce62273b948c6a Author: Michael Wu Date: Sun Aug 13 23:27:17 2006 -0700 [PATCH] ray_cs: Remove dependency on ieee80211 This patch removes the dependency on ieee80211.h from the ray_cs driver. ray_cs only needs iw_handler.h. Signed-off-by: Michael Wu Signed-off-by: John W. Linville commit c48cf125146852424bfe8e02033c6065dd0a4021 Author: Ulrich Kunitz Date: Sat Aug 12 18:00:17 2006 +0100 [PATCH] zd1211rw: cleanups Add static to 2 internal functions. Thanks goes to Adrian Bunk, who found that. Also made some modifications to the clear functions: After a discussion on the mailing list, I implemented this code to have on the one hand sufficient test in debug mode, but on the other hand reduce the overhead for structure clearing to a minimum. A new macro ZD_MEMCLEAR is introduced, which produces code if DEBUG is set. Locks are not set anymore for structure clearing, but in debug mode, there is a verification, that the locks have not been set. Finally, removed a misleading comment regarding locking in the disconnect path. Signed-off-by: Ulrich Kunitz Signed-off-by: Daniel Drake Signed-off-by: John W. Linville commit 943599ee2c3a018fd09c25d7a9e8703792dd618e Author: Ulrich Kunitz Date: Sat Aug 12 18:00:05 2006 +0100 [PATCH] zd1211rw: USB id 1582:6003 for Longshine 8131G3 added The Longshine device is a ZD1211B and has a AL2230 RF. I tested it successfully with no encryption and WEP. Signed-off-by: Ulrich Kunitz Signed-off-by: Daniel Drake Signed-off-by: John W. Linville commit a1030e92c1507eb4a3c15d0a7d62987f671b609c Author: Daniel Drake Date: Sun Aug 13 12:15:29 2006 +0100 [PATCH] zd1211rw: Convert installer CDROM device into WLAN device Some devices identify themselves as a virtual USB CDROM drive. The virtual CD includes the windows driver. We aren't interested in this, so we eject the virtual CDROM and then the real wireless device appears. Patch fixed over the earlier version to not leak cmd, thanks to Michael Buesch for spotting that. Signed-off-by: Daniel Drake Signed-off-by: John W. Linville commit 4ceb7e9936dae67d6c553a4954fa410a99b3ea16 Author: Daniel Drake Date: Sat Aug 12 18:00:03 2006 +0100 [PATCH] zd1211rw: Add ID for ZyXEL G220F zd1211 chip 0586:3402 v4916 high 00-13-49 AL2230_RF pa0 ---- This device pops up after the virtual driver CD has been ejected. Signed-off-by: Daniel Drake Signed-off-by: John W. Linville commit d066c2190de86d75e17dc35beba48b920cb125ee Author: Daniel Drake Date: Sat Aug 12 17:59:59 2006 +0100 [PATCH] zd1211rw: Firmware version vs bootcode version mismatch handling This is needed for my G220F, otherwise it fails to initialize after the existing firmware upload routine. The vendor driver actually does more than what I have done here: it downloads the firmware + boot code, modifies it, and uploads it again (really messy). I have not copied that part over, as my device can get on its feet without it. Signed-off-by: Daniel Drake Signed-off-by: John W. Linville commit 12f393089775ca33c53541eb67112fc04d799131 Author: Daniel Drake Date: Sat Aug 12 17:59:51 2006 +0100 [PATCH] zd1211rw: Add ID for Allnet ALLSPOT Hotspot finder Tested by Wonka on IRC. zd1211 chip 157e:3204 v4810 high 00-11-e0 AL7230B_RF pa0 g--- Signed-off-by: Daniel Drake Signed-off-by: John W. Linville commit 1b865491fcbf9b865fb5cf48c94cbae2995c6589 Author: Daniel Drake Date: Sat Aug 12 17:59:50 2006 +0100 [PATCH] zd1211rw: Add ID for Senao NUB-8301 Tested by lyakh on IRC zd1211 chip 1740:2000 v4721 high 00-02-6f AL7230B_RF pa0 g--- Signed-off-by: Daniel Drake Signed-off-by: John W. Linville commit ec62bd91bbb58254dfddca3d290f5fe4aa1cb769 Author: Daniel Drake Date: Sat Aug 12 17:59:46 2006 +0100 [PATCH] zd1211rw: Support AL7230B RF This patch adds support for another Airoha RF which is present in some ZD1211 adapters. This RF supports 802.11a as well as 802.11b/g, but 802.11a connectivity is not yet supported by this driver. Signed-off-by: Daniel Drake Signed-off-by: John W. Linville commit 20fe2176e5edbeb5957f113df1282a917ef87b5d Author: Daniel Drake Date: Sat Aug 12 17:59:42 2006 +0100 [PATCH] zd1211rw: AL2230 ZD1211B vendor sync This patch synchronizes our code to some recent vendor driver modifications. A new PHY layout is supported, some values are tweaked, and the AL2230 is now programmed over a new interface which is many times faster. Signed-off-by: Daniel Drake Signed-off-by: John W. Linville commit 98227a90a727029613f23c5e53554f1f4d7a1c89 Author: Daniel Drake Date: Sat Aug 12 17:59:22 2006 +0100 [PATCH] zd1211rw: Match vendor driver IFS values The vendor driver resets the IFS value every time the channel changes, to this one. Signed-off-by: Daniel Drake Signed-off-by: John W. Linville commit fe7215caa033814cee1e6808e44132b7cefb1a9e Author: Daniel Drake Date: Sat Aug 12 17:59:12 2006 +0100 [PATCH] zd1211rw: ZD1211B ASIC/FWT, not jointly decoder The vendor driver chooses this value based on an ifndef ASIC, and ASIC is never defined. Signed-off-by: Daniel Drake Signed-off-by: John W. Linville commit 421b20b9c44b3fcdc07d6af875dad5ae86fad014 Author: Jeff Garzik Date: Mon Aug 14 14:27:36 2006 -0400 libata: Make sure drivers/ata is a separate Kconfig menu Noticed by Rafael J. Wysocki Signed-off-by: Jeff Garzik commit 24dd01bfbce685395dc0ade71308326b3861187a Author: Jeff Garzik Date: Mon Aug 14 14:22:54 2006 -0400 [libata] ata_piix: add missing kfree() Noticed by Andrew Morton. Signed-off-by: Jeff Garzik commit 370ba07eb8324569636bacb47abba79587640d05 Author: Jeff Garzik Date: Mon Aug 14 14:12:57 2006 -0400 libata: Separate libata.ko build from individual driver builds Since some SAS drivers need libata, we can no longer use the rule that auto-builds libata.ko as needed. We must instead depend on Kconfig to determine when to build the library kernel module. Noticed by Brian King @ IBM. Signed-off-by: Jeff Garzik commit 8ad92ba7152f40cc31f6f15500c01e4eb39cfed1 Author: Jeff Garzik Date: Mon Aug 14 14:10:07 2006 -0400 libata: Remove SCSI_ prefix from Kconfig symbols Signed-off-by: Jeff Garzik commit b352e57dc3bb5033996adaa67c2f69b795eddd39 Author: Alan Cox Date: Thu Aug 10 18:52:12 2006 +0100 [PATCH] libata: Add CompactFlash support The CFA world has some additional rules and drive modes we need to support for newer expansion cards and on embedded boxes Signed-off-by: Alan Cox Signed-off-by: Jeff Garzik commit bcd68373877e74d8ca5039c10dc5d699ba5dc7d0 Author: Dave Jones Date: Thu Aug 10 21:37:13 2006 -0400 [PATCH] remove unnecessary config.h includes from drivers/net/ config.h is automatically included by kbuild these days. Signed-off-by: Dave Jones Signed-off-by: Jeff Garzik commit 80a8003f9236992fce45e6b2d0f33098b55a3859 Author: Daniele Venzano Date: Sat Aug 12 11:17:03 2006 +0200 [PATCH] Add new PHY to sis900 supported list Please include the attached patch that adds support for a new PHY to the sis900 driver. See also Bugzilla 6919. Signed-off-by: Daniele Venzano -- Signed-off-by: Jeff Garzik commit b5ecf60fe6b18de0bc59d336d444835d4ef835ed Author: Adrian Bunk Date: Sun Aug 13 23:00:08 2006 +0200 [CPUFREQ] make drivers/cpufreq/cpufreq_ondemand.c:powersave_bias_target() static This patch makes the needlessly global powersave_bias_target() static. Signed-off-by: Adrian Bunk Signed-off-by: Dave Jones commit 6595413fc9453a211f4b5d5cc42f0bbf3daa615b Author: Rafa³ Bilski Date: Sun Aug 13 09:16:20 2006 +0200 [CPUFREQ] Longhaul - Add ignore_latency option Some laptops with VIA C3 processor, CLE266 chipset and AMI BIOS have incorrect latency values in FADT table. These laptops seems to be C3 capable, but latency values are to big: 101 for C2 and 1017 for C3. This option will allow user to skip C3 latency test but not C3 address test. AMI BIOS is setting C3 address to correct value in DSDT table. Signed-off-by: Rafa³ Bilski Signed-off-by: Dave Jones commit b53e674a707cf77e76339852abdc063696679261 Author: Dave Jones Date: Fri Aug 11 18:13:41 2006 -0400 [AGPGART] const'ify VIA AGP PCI table. Signed-off-by: Dave Jones commit 85be7d60595b4803731cec158b0023bc050fdd14 Author: Alexey Dobriyan Date: Sat Aug 12 02:02:02 2006 +0400 [AGPGART] CONFIG_PM=n slim: drivers/char/agp/intel-agp.c Signed-off-by: Alexey Dobriyan Signed-off-by: Dave Jones commit 71565619af84a15d0abef6f0d6704e6472cd87c1 Author: Alexey Dobriyan Date: Sat Aug 12 01:59:50 2006 +0400 [AGPGART] CONFIG_PM=n slim: drivers/char/agp/efficeon-agp.c Signed-off-by: Alexey Dobriyan Signed-off-by: Dave Jones commit e7745d4e0299a3460128917ceb6b6a807fa7f9e8 Author: Dave Jones Date: Fri Aug 11 18:02:27 2006 -0400 [AGPGART] Const'ify the agpgart driver version. Signed-off-by: Dave Jones commit 179da8e6e8903a8cdb19bb12672d50dc33f0fde6 Author: Rafa³ Bilski Date: Tue Aug 8 19:12:20 2006 +0200 [CPUFREQ] Longhaul - Disable arbiter ACPI C3 works for "Powersaver" processors, so use it only for them. Older CPU will change frequency on "halt" only. But we can protect transition in two ways: - by ACPI PM2 register, there is "bus master arbiter disable" bit. This isn't tested because VIA mainboards don't have PM2 register, - by PLE133 PCI/AGP arbiter disable register. There are two bits in this register. First is "PCI arbiter disable", second "AGP arbiter disable". This is working on VIA Epia 800 mainboards. Test on bm_control is more proper because this is true when PM2 register exist. Signed-off-by: Rafa³ Bilski Signed-off-by: Dave Jones commit 05ca0350e8caa91a5ec9961c585c98005b6934ea Author: Alexey Starikovskiy Date: Mon Jul 31 22:28:12 2006 +0400 [CPUFREQ][2/2] ondemand: updated add powersave_bias tunable ondemand selects the minimum frequency that can retire a workload with negligible idle time -- ideally resulting in the highest performance/power efficiency with negligible performance impact. But on some systems and some workloads, this algorithm is more performance biased than necessary, and de-tuning it a bit to allow some performance impact can save measurable power. This patch adds a "powersave_bias" tunable to ondemand to allow it to reduce its target frequency by a specified percent. By default, the powersave_bias is 0 and has no effect. powersave_bias is in units of 0.1%, so it has an effective range of 1 through 1000, resulting in 0.1% to 100% impact. In practice, users will not be able to detect a difference between 0.1% increments, but 1.0% increments turned out to be too large. Also, the max value of 1000 (100%) would simply peg the system in its deepest power saving P-state, unless the processor really has a hardware P-state at 0Hz:-) For example, If ondemand requests 2.0GHz based on utilization, and powersave_bias=100, this code will knock 10% off the target and seek a target of 1.8GHz instead of 2.0GHz until the next sampling. If 1.8 is an exact match with an hardware frequency we use it, otherwise we average our time between the frequency next higher than 1.8 and next lower than 1.8. Note that a user or administrative program can change powersave_bias at run-time depending on how they expect the system to be used. Signed-off-by: Venkatesh Pallipadi Signed-off-by: Alexey Starikovskiy Signed-off-by: Dave Jones commit 1ce28d6b19112a7c76af8e971e2de3109d19a943 Author: Alexey Starikovskiy Date: Mon Jul 31 22:25:20 2006 +0400 [CPUFREQ][1/2] ondemand: updated tune for hardware coordination Try to make dbs_check_cpu() call on all CPUs at the same jiffy. This will help when multiple cores share P-states via Hardware Coordination. Signed-off-by: Venkatesh Pallipadi Signed-off-by: Alexey Starikovskiy Signed-off-by: Dave Jones commit cd878479792cc1e4bc9d62ed0ef2c4454743848c Author: Dave Jones Date: Fri Aug 11 17:59:28 2006 -0400 [CPUFREQ] Fix typo. Signed-off-by: Dave Jones commit fcc8abc8d4fcdbddc383091449f3696b411aa8fb Author: David Teigland Date: Thu Aug 10 13:31:23 2006 -0500 [DLM] move kmap to after spin_unlock Doing the kmap() while holding the spinlock was causing recursive spinlock problems. It seems the kmap was scheduling, although there was no warning as I'd expect. Patrick, do we need locking around the kmap? Signed-off-by: David Teigland Signed-off-by: Steven Whitehouse commit 8872187780f6104216c67e7b60c11f708b513c38 Author: Russell Cattelan Date: Thu Aug 10 11:08:40 2006 -0500 [GFS2] Fix a couple of refcount leaks. recovery.c add a brelse to deal with gfs2_replay_read_block being called twice on the same block. add a dput to drop the ref count on the root inode. This was causing lingering glocks and thus causing a mount failure to hang. Fix a endian conversion macro that was was swizzling 16bits when it should have been swizzling 32. Signed-off-by: Russell Cattelan Signed-off-by: Steven Whitehouse commit c6fd280766a050b13360d7c2d59a3d6bd3a27d9a Author: Jeff Garzik Date: Thu Aug 10 07:31:37 2006 -0400 Move libata to drivers/ata. commit 8b881b0410de0f72a43e814393abf3a4cb29ebb4 Author: Jeff Garzik Date: Sun Jun 11 09:59:27 2006 -0400 [ATA] Increase lba48 max-sectors from 200 to 256. Also, moved ATA_MAX_SECTORS and ATA_MAX_SECTORS_LBA48 from linux/libata.h to linux/ata.h, now that they truly reflect the standard (well... mostly; note TODO comment). This changes the performance profile (and potential bug profile) for a bunch of drivers, so be wary. commit b7887196e38da54ff893897b80875d632d1a1114 Author: Pavel Roskin Date: Thu Aug 10 18:13:18 2006 +0900 [PATCH] libata: replace pci_module_init() with pci_register_driver() Replace pci_module_init() with pci_register_driver(). Signed-off-by: Pavel Roskin Signed-off-by: Tejun Heo commit 4852ba24f647199be797545226c6d325db231937 Author: Tejun Heo Date: Thu Aug 10 16:59:18 2006 +0900 [PATCH] libata: kill unused hard_port_no and legacy_mode Kill unused probe_ent/ap->hard_port_no and probe_ent->legacy_mode. Signed-off-by: Tejun Heo commit 2a88d1ac8dca898a7fb602ddd581bf4d2977509d Author: Tejun Heo Date: Thu Aug 10 16:59:16 2006 +0900 [PATCH] libata: replace ap->hard_port_no with ap->port_no Replace ap->hard_port_no with ap->port_no. Signed-off-by: Tejun Heo commit c4b01f1de254820175fe2d02b4cf7c0fab335846 Author: Tejun Heo Date: Thu Aug 10 16:59:14 2006 +0900 [PATCH] libata: use dummy port for stolen legacy ports Use dummy port for stolen legacy ports. This makes ap->port_no always equal ap->hard_port_no. Signed-off-by: Tejun Heo commit dd5b06c490de72440ec39f814de99a714a45a1a9 Author: Tejun Heo Date: Thu Aug 10 16:59:12 2006 +0900 [PATCH] libata: implement dummy port Implement dummy port which can be requested by setting appropriate bit in probe_ent->dummy_port_mask. The dummy port is used as placeholder for stolen legacy port. This allows libata to guarantee that index_of(ap) == ap->port_no == actual_device_port_no, and thus to remove error-prone ap->hard_port_no. As it's used only when one port of a legacy controller is reserved by some other entity (e.g. IDE), the focus is on keeping the added *code* complexity at minimum, so dummy port allocates all libata core resources and acts as a normal port. It just has all dummy port_ops. This patch only implements dummy port. The following patch will make libata use it for stolen legacy ports. Signed-off-by: Tejun Heo commit 2ec7df0457b710d9201f211dbccdbecf0ad38b7e Author: Alan Cox Date: Thu Aug 10 16:59:10 2006 +0900 [PATCH] libata: rework legacy handling to remove much of the cruft Kill host_set->next Fix simplex support Allow per platform setting of IDE legacy bases Some of this can be tidied further later on, in particular all the legacy port gunge belongs as a PCI quirk/PCI header decode to understand the special legacy IDE rules in the PCI spec. Longer term Jeff also wants to move the request_irq/free_irq out of core which will make this even cleaner. tj: folded in three followup patches - ata_piix-fix, broken-arch-fix and fix-new-legacy-handling, and separated per-dev xfermask into separate patch preceding this one. Folded in fixes are... * ata_piix-fix: fix build failure due to host_set->next removal * broken-arch-fix: add missing include/asm-*/libata-portmap.h * fix-new-legacy-handling: * In ata_pci_init_legacy_port(), probe_num was incorrectly incremented during initialization of the secondary port and probe_ent->n_ports was incorrectly fixed to 1. * Both legacy ports ended up having the same hard_port_no. * When printing port information, both legacy ports printed the first irq. Signed-off-by: Alan Cox Signed-off-by: Andrew Morton Signed-off-by: Tejun Heo commit 37deecb5139ee431233781a9a093d9fcaab54c5b Author: Tejun Heo Date: Thu Aug 10 16:59:07 2006 +0900 [PATCH] libata: implement per-dev xfermask Implement per-dev xfermask. libata used to determine xfermask per-port - the fastest mode of the slowest device on the port. This patch enables per-dev xfermask. Original patch is from Alan Cox . The following changes are made by me. * simplex warning message is added * remove disabled device handling code which is never invoked (originally for choosing port-wide lowest PIO mode) Cc: Alan Cox Signed-off-by: Tejun Heo commit 6d0500df5b37c94b779ac2c3f522ff917e039f99 Author: Jeff Garzik Date: Thu Aug 10 16:59:05 2006 +0900 [PATCH] [libata] Kill 'count' var in ata_device_add() Eliminate redundant loop variable 'count' Signed-off-by: Jeff Garzik Signed-off-by: Tejun Heo commit 996139f1ce50c56c5e66f86b6aba17ff5ea00b86 Author: Jeff Garzik Date: Thu Aug 10 16:59:03 2006 +0900 [PATCH] [libata] some function renaming s/ata_host_add/ata_port_add/ s/ata_host_init/ata_port_init/ libata naming got stuck in the middle of a Great Renaming: ata_host -> ata_port ata_host_set -> ata_host To eliminate confusion, let's just give up for now, and simply ensure that things are internally consistent. Signed-off-by: Jeff Garzik Signed-off-by: Tejun Heo commit 4608c1608501cf2b0dc4478c9b6c3902db58408a Author: Tejun Heo Date: Thu Aug 10 16:59:01 2006 +0900 [PATCH] libata: update ata_host_init() and rename it to ata_port_init_shost() Update ata_host_init() such that it only initializes SCSI host related stuff and doesn't call into ata_port_init(), and rename it to ata_port_init_shost(). Signed-off-by: Tejun Heo commit 4a99c3d9d6663085e28bc7ac8dae1e985c5a6174 Author: David Teigland Date: Wed Aug 9 11:20:15 2006 -0500 [DLM] reject replies to old requests When recoveries are aborted by other recoveries we can get replies to status or names requests that we've given up on. This can cause problems if we're making another request and receive an old reply. Add a sequence number to status/names requests and reject replies that don't match. A field already exists for the seq number that's used in other message types. Signed-off-by: David Teigland Signed-off-by: Steven Whitehouse commit faa0f2677287a2e7ae796db8b73618ec43715e94 Author: David Teigland Date: Tue Aug 8 17:08:42 2006 -0500 [DLM] show nodeid for recovery message To aid debugging, it's useful to be able to see what nodeid the dlm is waiting on for a message reply. Signed-off-by: David Teigland Signed-off-by: Steven Whitehouse commit 06442440bc442ef79cb060c6e786eaeeabd9044b Author: David Teigland Date: Tue Aug 8 11:31:30 2006 -0500 [DLM] break from snprintf loop When the debug buffer has filled up, break from the loop and return the correct number of bytes that have been written. Signed-off-by: David Teigland Signed-off-by: Steven Whitehouse commit f6db1b8e724b071d144055b48da3827ce26dba1c Author: David Teigland Date: Tue Aug 8 17:06:07 2006 -0500 [DLM] abort recovery more quickly When we abort one recovery to do another, break out of the ping_members() routine more quickly, and wake up the dlm_recoverd thread more quickly instead of waiting for it to time out. Signed-off-by: David Teigland Signed-off-by: Steven Whitehouse commit 5ff519112af6a6dab0ad7f6b0b0a2dcfff273e5b Author: David Teigland Date: Tue Aug 8 17:03:30 2006 -0500 [DLM] print bad length in assertion Print the violating name length in the assertion. Signed-off-by: David Teigland Signed-off-by: Steven Whitehouse commit f4b5cc874158a139c091b3decd468929e10645e6 Author: Tejun Heo Date: Mon Aug 7 11:39:04 2006 +0900 [PATCH] ahci: remove IRQ mask clearing from init_controller() Initial IRQ mask clearing is done by libata-core by freezing all ports prior to requesting IRQ. Remove redundant IRQ clearing from init_controller(). Signed-off-by: Tejun Heo Signed-off-by: Jeff Garzik commit 80289167fd3ebaeb7b2641e69cbec44b61165fe7 Author: Brian King Date: Mon Aug 7 14:27:31 2006 -0500 [PATCH] libata: Add support for SATA attachment to SAS adapters The following patch enhances libata to allow SAS device drivers to utilize libata to talk to SATA devices. It introduces some new APIs which allow libata to be used without allocating a virtual scsi host. New APIs: ata_sas_port_alloc - Allocate an ata_port ata_sas_port_init - Initialize an ata_port (probe device, etc) ata_sas_port_destroy - Free an ata_port allocated by ata_sas_port_alloc ata_sas_slave_configure - configure scsi device ata_sas_queuecmd - queue a scsi command, similar to ata_scsi_queuecomand These new APIs can be used either directly by a SAS LLDD or could be used by the SAS transport class. Possible usage for a SAS LLDD would be: scsi_scan_host target_alloc ata_sas_port_alloc slave_alloc ata_sas_port_init slave_configure ata_sas_slave_configure Commands received by the LLDD for SATA devices would call ata_sas_queuecmd. Device teardown would occur with: slave_destroy port_disable target_destroy ata_sas_port_destroy Signed-off-by: Brian King Signed-off-by: Jeff Garzik commit f6d950e2a5209bd7e3fb1a238f43f24f3697f5b0 Author: Brian King Date: Mon Aug 7 14:27:24 2006 -0500 [PATCH] libata: Move ata_probe_ent_alloc to libata_core Move ata_probe_ent_alloc to libata-core. It will also be used by future SAS/SATA integration patches. Signed-off-by: Brian King Signed-off-by: Jeff Garzik commit 155a8a9c8f4084016d9e27bf03ba1f19201438f4 Author: Brian King Date: Mon Aug 7 14:27:17 2006 -0500 [PATCH] libata: Add ata_port_init Separate out the ata_port initialization from ata_host_init so that it can be used in future SAS patches. Signed-off-by: Brian King Signed-off-by: Jeff Garzik commit b03732f006bd1ecee32587ec8235c41af5ad905f Author: Brian King Date: Mon Aug 7 14:27:10 2006 -0500 [PATCH] libata: Add ata_host_set_init Add ata_host_set_init in preparation for SAS attached SATA. Signed-off-by: Brian King Signed-off-by: Jeff Garzik commit e714d99cacac976deac3239c89f2c9e3125649b6 Author: Philippe De Muyter Date: Thu Aug 3 18:42:15 2006 +0200 [PATCH] sundance: small cleanup This patch uses the sundance_reset function everywhere a reset is done, and adds a link to the archives of the original mailing list. Signed-off-by: Philippe De Muyter Signed-off-by: Jeff Garzik commit e27cdba53b8ad5c12c9281b3737e07f2a536c3a2 Author: Stephen Hemminger Date: Mon Jul 31 20:37:19 2006 -0700 [PATCH] forcdeth: revised NAPI support Revised version of the forcedeth NAPI support. This version is based against netdev-2.6#upstream (after the MAC patches from Ayaz today). Can't use nv_disable_hw_interrupts because NAPI only wants to mask off receive irq's and leave the others alone. Signed-off-by: Stephen Hemminger Signed-off-by: Jeff Garzik commit 5070d3408405ae1941f259acac7a9882045c3be4 Author: Ayaz Abdulla Date: Mon Jul 31 12:05:01 2006 -0400 [PATCH] forcedeth: mac address corrected This patch will correct the mac address and set a flag to indicate that it is already corrected in case nv_probe is called again. For example, when you use kexec to restart the kernel. Signed-Off-By: Ayaz Abdulla Signed-off-by: Jeff Garzik commit f1489653e9c891f343d2034aad0ef6984d3ef5cb Author: Ayaz Abdulla Date: Mon Jul 31 12:04:45 2006 -0400 [PATCH] forcedeth: move mac address setup/teardown This patch moves the mac address setup/teardown to the nv_probe/nv_remove functions. This fixes WOL wakeup since on nv_close we would reverse the mac address. Also, bonding driver will reset address after nv_close is called. Signed-Off-By: Ayaz Abdulla Signed-off-by: Jeff Garzik commit fcf194d19b7857c2467bebdb271bd079a0c0da81 Author: Komuro Date: Sun Jul 23 10:20:55 2006 +0900 [PATCH] network: pcnet_cs.c: remove unnecessary 'mdio_reset' 'mdio_reset' has bad side effects that moves the phy_id. DL10022-based cards work properly without 'mdio_reset'. Signed-off-by: komurojun-mbn@nifty.com Signed-off-by: Jeff Garzik commit e2df452b8adca9d3e3195ff7d91be375342964d7 Author: Cjacker Huang Date: Tue Aug 8 23:38:22 2006 -0400 Input: i8042 - add Amoi to the MUX blacklist ALPS touchpad on Amoi laptops (Amoi is a vendor in China) is not detected when keyboard controller is in MUX mode, add to blacklist. Signed-off-by: Andrew Morton Signed-off-by: Dmitry Torokhov commit e3882bb56e31dbb3950e51c1ba914ef2f445650c Author: Helge Deller Date: Tue Aug 8 23:37:18 2006 -0400 Input: logips2pp - add sugnature 56 (Cordless MouseMan Wheel), cleanup Signed-off-by: Helge Deller Signed-off-by: Dmitry Torokhov commit f4387149ec71fed11535b49400bad17d22fdc935 Author: Steven Whitehouse Date: Tue Aug 8 13:23:19 2006 -0400 [GFS2] Fix lack of buffers in writepage bug In some cases we can enter write page without there being buffers attached to the page. In this case the function to add gfs2_bufdata to the buffers fails sliently causing further failures down the stack. This fix ensures that we always add buffers in writepage if they didn't already exist (mmap is one way to trigger this). Signed-off-by: Steven Whitehouse commit cc346d555f2c3eb4a63b2df6bf9c9947f0a92a01 Author: Patrick Caulfield Date: Tue Aug 8 10:34:40 2006 -0400 [DLM] fix userland unlock This patch fixes the userland DLM unlock code so that it correctly returns the address of the userland lock status block in its completion AST. It fixes bug #201348 Patrick Signed-Off-By: Patrick Caulfield Signed-off-by: Steven Whitehouse commit 5cf13911b1e72707b6f0eb39b2d819ec6e343d76 Author: Michael Neuling Date: Mon Aug 7 17:34:50 2006 +1000 [POWERPC] Update lppaca offset comments Update offset comments. No functional change. Signed-off-by: Michael Neuling Signed-off-by: Paul Mackerras commit 2f6093c84730b4bad65bcd0f2f904a5769b1dfc5 Author: Michael Neuling Date: Mon Aug 7 16:19:19 2006 +1000 [POWERPC] Implement SLB shadow buffer This adds a shadow buffer for the SLBs and regsiters it with PHYP. Only the bolted SLB entries (top 3) are shadowed. The SLB shadow buffer tells the hypervisor what the kernel needs to have in the SLB for the kernel to be able to function. The hypervisor can use this information to speed up partition context switches. Signed-off-by: Michael Neuling Signed-off-by: Paul Mackerras commit 452b5e21216011f2f068e80443568f5f3f3f4d63 Author: Matt Porter Date: Fri Aug 4 11:44:01 2006 -0500 [POWERPC] Fix powerpc 44x_mmu build The PIN_SIZE definition name changed, update 44x_mmu.c accordingly. Signed-off-by: Matt Porter Signed-off-by: Paul Mackerras commit f4dddce57c105c447c566be52c3d210dec570a27 Author: Matt Porter Date: Fri Aug 4 11:41:51 2006 -0500 [POWERPC] Remove flush_dcache_all export Removes the flush_dcache_all export for non coherent platforms. We removed the last in-kernel user of this years ago in arch/ppc so it no longer serves a purpose. Plus, it breaks the build at the moment. Signed-off-by: Matt Porter Signed-off-by: Paul Mackerras commit 3d7714867a8d240fae3ab0bde656a369de2b08ab Author: Jon Loeliger Date: Thu Aug 3 16:27:57 2006 -0500 [POWERPC] Add MPC8641 HPCN Device Tree Source file. As per list discussion, let's add device tree source files under powerpc/boot/dts. If nothing else, it is a starting point. Signed-off-by: Jon Loeliger Signed-off-by: Paul Mackerras commit 40681b95a4ef798bc38c92e0d9b8c06bbdd34409 Author: Michael Ellerman Date: Wed Aug 2 11:13:50 2006 +1000 [POWERPC] Make doc comments extractable We don't have much in the way of doc comments, but some of those we do have don't work because they start with "/***" or "/*", not "/**" which is what kernel-doc requires. Signed-off-by: Michael Ellerman Signed-off-by: Paul Mackerras commit 3ab2b385c8a5cdf060c6a41582118a0cb27d0910 Author: Amos Waterland Date: Tue Aug 1 15:44:11 2006 -0400 [POWERPC] Turn on tigon3 support in maple_defconfig I think that most people who use maple_defconfig are doing so for a JS21, so it might make sense to turn Tigon3 support on by default. Built and booted on a JS21. Signed-off-by: Amos Waterland Signed-off-by: Paul Mackerras commit 45934c47237108903ec019f08e124e592ba0b6c2 Author: Jake Moilanen Date: Thu Jul 27 13:17:25 2006 -0500 [POWERPC] Export msi symbols Forgot to export symbols for MSI. Signed-off-by: Jake Moilanen Acked-by: Segher Boessenkool Signed-off-by: Paul Mackerras commit 919fede6edab94cccb3ca8c1c0b32fa62c9369a5 Author: Jon Loeliger Date: Mon Jul 31 15:35:41 2006 -0500 [POWERPC] Rewrite the PPC 86xx IRQ handling to use Flat Device Tree IRQ setup now comes from the Flat Device Tree and use the new generic IRQ code. Fixed the fsl_soc.c IRQ OF interrupt node parsing. Removed some unused MPC86xx macro definition. Signed-off-by: Zhang Wei Signed-off-by: Jon Loeliger Signed-off-by: Paul Mackerras commit 2b557f6dc7899a0f6afc0169534346f8fa977a46 Author: Steven Whitehouse Date: Mon Aug 7 11:12:30 2006 -0400 [GFS2] Fix gfs_ prefix in locking.c The previous patch didn't change all the gfs_ to gfs2_ so this is the remainder. Signed-off-by: Steven Whitehouse commit 08eac93a689ca05c7b7413f6d362c7d38b5fd5b1 Author: David Teigland Date: Fri Aug 4 16:19:20 2006 -0500 [GFS2] match plock result with correct request When the result of a posix lock request is read it needs to be matched up with the correct waiting request. The owner field needs to be used in the comparison since more than one process may be waiting for locks on the same file. Signed-off-by: David Teigland Signed-off-by: Steven Whitehouse commit 3120ec541eafc6ed19bacb395adf08c5872143bf Author: David Teigland Date: Fri Aug 4 13:14:50 2006 -0500 [GFS2] lockproto api prefix Use the gfs2_ prefix on the register/unregister functions for the lock modules. The gfs_ prefix was left from an old idea on how to share these with gfs1. Signed-off-by: David Teigland Signed-off-by: Steven Whitehouse commit afd05423e02bc7391a7489b686ba1e166b6e8349 Author: Michael Neuling Date: Fri Jul 28 13:58:37 2006 +1000 [POWERPC] Enable PURR sysfs entry correctly We have CPU_FTR_PURR now, so let's use it. Signed-off-by: Michael Neuling Signed-off-by: Paul Mackerras commit 19ac0db3e22de3b00cc4aadc7efbad0420c7aa08 Author: James Bottomley Date: Sun Aug 6 18:15:22 2006 -0500 [SCSI] fix up short inquiry printing A recent drivers base commit: 3e95637a48820ff8bedb33e6439def96ccff1de5 Caused the bus to be added to dev_printk, so now our SCSI inquiry short messages print like this: scsiscsi 2:0:0:0: Direct access IBM-ESXS ST973401SS B519 PQ: 0 ANSI: 5 Just remove the "scsi" from the sdev_printk to compensate. Signed-off-by: James Bottomley commit 4ff36718ede26ee2da73f2dae94d71e2b06845fc Author: Matthew Wilcox Date: Tue Jul 4 12:15:20 2006 -0600 [SCSI] Improve inquiry printing - Replace scsi_device_types array API with scsi_device_type function API. Gets rid of a lot of common code, as well as being easier to use. - Add the new device types in SPC4 r05a, and rename some of the older ones. - Reformat the printing of inquiry data; now fits on one line and includes PQ. I think I've addressed all the feedback from the previous versions. My current test box prints: scsi 2:0:1:0: Direct access HP 18.2G ATLAS10K3_18_SCA HP05 PQ: 0 ANSI: 2 Signed-off-by: Matthew Wilcox Signed-off-by: James Bottomley commit 008cd5bbfb4763322837cd1f7c621f02ebe22fef Author: Brian King Date: Wed Aug 2 14:58:04 2006 -0500 [SCSI] ipr: Bump driver version to 2.1.4 Bump the ipr driver version to 2.1.4. Signed-off-by: Brian King Signed-off-by: James Bottomley commit 117d2ce1cea25fc94302ff418ccef644cd3e59af Author: Brian King Date: Wed Aug 2 14:57:58 2006 -0500 [SCSI] ipr: Auto sense handling fix Fix up a logic error in the checking for valid sense data. Signed-off-by: Brian King Signed-off-by: James Bottomley commit 5b7304fbfb74bfca6f7d5a88b28197e3f7f2743b Author: Brian King Date: Wed Aug 2 14:57:51 2006 -0500 [SCSI] ipr: Properly handle IOA recovered errors The ipr driver currently translates adapter recovered errors to DID_ERROR. This patch fixes this to translate these errors to success instead. Signed-off-by: Brian King Signed-off-by: James Bottomley commit 896bbd21408ddbfb9a57819404dbb04f4f0afb35 Author: Brian King Date: Wed Aug 2 14:57:44 2006 -0500 [SCSI] ipr: Handle new SAS error codes Add definitions for some SAS error codes that can be logged by ipr SAS adapters. Signed-off-by: Brian King Signed-off-by: James Bottomley commit b5145d25f0d8eae21ad7969822f2d4ce7f22e72a Author: Brian King Date: Wed Aug 2 14:57:36 2006 -0500 [SCSI] ipr: Add some hardware defined types for SATA Add some hardware defined types for SATA. This is required by future patches to add SATA support to ipr. Signed-off-by: Brian King Signed-off-by: James Bottomley commit 5d947f2b7607c4674d104accbd3768744aaa4154 Author: Michael Reed Date: Mon Jul 31 12:19:30 2006 -0500 [SCSI] mptfc: add additional fc transport attributes Add host_supported_speeds, host_maxframe_size, host_speed, host_fabric_name, host_port_type, host_port_state, and host_symbolic_name transport attributes to fusion fibre channel. Signed-off-by: Michael Reed Acked-by: Moore, Eric Signed-off-by: James Bottomley commit dd7e2f2266acf66ec882baa6fbd79f853b5fe966 Author: Michael Reed Date: Fri Aug 4 12:09:24 2006 -0500 [SCSI] scsi_queue_work() documented return value is incorrect If you examine the queue_work() routine you'll see that it returns 1 on success, 0 if the work is already queued. This patch corrects the source code documentation for the scsi_queue_work function. Signed-off-by: Michael Reed Signed-off-by: James Bottomley commit 9e5c50fa8686ede7c37b939a0b950df50346eb3d Author: Christoph Hellwig Date: Fri Aug 4 17:18:30 2006 +0200 [SCSI] remove SCSI_STATE_ #defines These aren't used anymore since the field in scsi_cmnd where it was stored has been removed. Signed-off-by: Christoph Hellwig Signed-off-by: James Bottomley commit 11ea3173d5f2de71d037ef58ac43395795fed2bc Author: Rick Koch Date: Sat Aug 5 00:32:30 2006 -0400 Input: add driver for Touchwin serial touchscreens Signed-off-by: Rick Koch Signed-off-by: Dmitry Torokhov commit 4003dff41e65ad338a60dde90019bffcb5531fb6 Author: Rick Koch Date: Sat Aug 5 00:32:24 2006 -0400 Input: add driver for Touchright serial touchscreens Signed-off-by: Rick Koch Signed-off-by: Dmitry Torokhov commit ee4799997950e81437ef9055a4b104099e3272c4 Author: Rick Koch Date: Sat Aug 5 00:32:18 2006 -0400 Input: add driver for Penmount serial touchscreens Signed-off-by: Rick Koch Signed-off-by: Dmitry Torokhov commit fae3006e4b42eafbed4af714e93cf6c2b92ff793 Author: Shaun Jackman Date: Sat Aug 5 00:29:49 2006 -0400 Input: elo - add support for non-pressure-sensitive touchscreens - Use the touch status bit rather than the pressure bits to distinguish a BTN_TOUCH event. Non-pressure-sensitive touchscreens always report full pressure - Report ABS_PRESSURE information only if the touchscreen supports it Signed-off-by: Shaun Jackman Signed-off-by: Dmitry Torokhov commit 1ce316efb55a1497d07d518853e60a4356abceb6 Author: Shaun Jackman Date: Sat Aug 5 00:27:59 2006 -0400 Input: elo - fix checksum calculation Fix 10-byte protocol checksum calculation and do not discard packet early unless it is missing lead in byte. Signed-off-by: Shaun Jackman Signed-off-by: Dmitry Torokhov commit 6b50d8b862284929314e9ff09e5b1cce2c43d32b Author: Dmitry Torokhov Date: Sat Aug 5 00:27:00 2006 -0400 Input: elo - handle input_register_device() failures Signed-off-by: Dmitry Torokhov commit f287caee8094097e3901d9982b6780873b36944f Author: Adrian Bunk Date: Fri Aug 4 23:00:02 2006 -0400 Input: hid - #if 0 the no longer used hid_find_field_by_usage() Signed-off-by: Adrian Bunk Signed-off-by: Andrew Morton Signed-off-by: Dmitry Torokhov commit 59a1cc6bdabf5ed148b48808ad1a418d87f5e6bf Author: Steven Whitehouse Date: Fri Aug 4 15:41:22 2006 -0400 [GFS2] Fix lock ordering bug in page fault path Mmapped files were able to trigger a lock ordering bug. Private maps do not need to take the glock so early on. Shared maps do unfortunately, however we can get around that by adding a flag into the flags for the struct gfs2_file. This only works because we are taking an exclusive lock at this point, so we know that nobody else can be racing with us. Fixes Red Hat bugzilla: #201196 Signed-off-by: Steven Whitehouse commit fddafd3d21953d5ea740f7b2f27149f7dd493194 Author: Brian King Date: Thu Aug 3 13:54:59 2006 -0500 [SCSI] DAC960: PCI id table fixup The PCI ID table in the DAC960 driver conflicts with some devices that use the ipr driver. All ipr adapters that use this chip have an IBM subvendor ID and all DAC960 adapters that use this chip have a Mylex subvendor id. Signed-off-by: Brian King Signed-off-by: James Bottomley commit 2672ea86be26353108a72a28910df4dc61cdb5e2 Author: Dave Jones Date: Wed Aug 2 17:11:49 2006 -0400 [SCSI] advansys pci tweaks. Remove a lot of duplicate #defines from the advansys driver, and make them look like PCI IDs as defined elsewhere in the kernel. Also add a module table so that it automatically gets picked up by tools relying on modinfo output (like say, distro installers). Signed-off-by: Dave Jones Signed-off-by: James Bottomley commit fe2a24dfc577a05349a39c6c8a6312818d28bb59 Author: Stephen Hemminger Date: Tue Aug 1 11:55:23 2006 -0700 [PATCH] sky2: status interrupt handling improvement More changes to prevent losing status and causing hangs. The hardware is smarter than I gave it credit for. Clearing the status IRQ causes the status state machine to toggle an IRQ if needed and post any more transmits. Signed-off-by: Stephen Hemminger Signed-off-by: Jeff Garzik commit 57fa442c1e842e6ec18ec7cd8cca9e29b5189278 Author: Stephen Hemminger Date: Sat Jul 29 17:21:55 2006 -0700 [PATCH] sky2: more pci device ids Recent vendor driver and customer reports show more devices. Signed-off-by: Stephen Hemminger Signed-off-by: Jeff Garzik commit d67a70aca200f67be42428e74eb3353f20ad1130 Author: James Bottomley Date: Fri Jul 28 17:36:46 2006 -0500 [SCSI] arcmsr: fix up sysfs values The sysfs files in arcmsr are non-standard in that they aren't simple filename value pairs, the values actually contain preceeding text which would have to be parsed. The idea of sysfs files is that the file name is the description and the contents is a simple value. Fix up arcmsr to conform to this standard. Acked-By: Erich Chen Signed-off-by: James Bottomley commit 43d6b68dc38867e489995e21649bb82f6ee7b5d3 Author: Andrew Morton Date: Sat Jul 29 11:14:08 2006 -0700 [SCSI] areca sysfs fix Remove sysfs_remove_bin_file() return-value checking from the areca driver. There's nothing a driver can do if sysfs file removal fails, so we'll soon be changing sysfs_remove_bin_file() to internally print a diagnostic and to return void. Cc: Erich Chen Signed-off-by: Andrew Morton Signed-off-by: James Bottomley commit 899bb264507cfed83922bf14cd66a073494601ba Author: Steven Whitehouse Date: Tue Aug 1 15:28:57 2006 -0400 [GFS2] Fix bug in directory code This was a nasty bug which resulted in corruption of hash tables in the directory code with larger directories. We forgot to increment a pointer in the read/write routines internal to the directory code. Signed-off-by: Steven Whitehouse commit b9377ffc3a03cde558d76349a262a1adbb6d3112 Author: Anton Blanchard Date: Wed Jul 19 08:01:28 2006 +1000 [POWERPC] clean up pseries hcall interfaces Our pseries hcall interfaces are out of control: plpar_hcall_norets plpar_hcall plpar_hcall_8arg_2ret plpar_hcall_4out plpar_hcall_7arg_7ret plpar_hcall_9arg_9ret Create 3 interfaces to cover all cases: plpar_hcall_norets: 7 arguments no returns plpar_hcall: 6 arguments 4 returns plpar_hcall9: 9 arguments 9 returns There are only 2 cases in the kernel that need plpar_hcall9, hopefully we can keep it that way. Pass in a buffer to stash return parameters so we avoid the &dummy1, &dummy2 madness. Signed-off-by: Anton Blanchard -- Signed-off-by: Paul Mackerras commit de9b75d31e81e87685d8cc70052a003c654f1e8e Author: David Teigland Date: Fri Jul 28 14:00:20 2006 -0500 [GFS2] add plock owner We need to use fl_owner instead of fl_pid to track the owner of a posix lock. Pass the owner value out to user space where cluster plocks are managed. Signed-off-by: David Teigland Signed-off-by: Steven Whitehouse commit 420b9e5e45d33355471c8d2d593bb0e5d6c77421 Author: Steven Whitehouse Date: Mon Jul 31 15:42:17 2006 -0400 [GFS2] Tidy up in various files Tidy up some files and remove an unused routine in meta_io.h. Also added a bit of extra debugging in meta_io.h. Signed-off-by: Steven Whitehouse commit 48c86da1a211ef13bbfb1c8f2e35dda44a66b8a1 Author: John W. Linville Date: Mon Jul 31 14:54:57 2006 -0400 [PATCH] bcm43xx: reduce mac_suspend delay loop count Drop the mac_suspend loop count to reduce the maximum delay to 10ms. Signed-off-by: John W. Linville commit 894b62748bec22a98e636ed40221b27d1b9094b7 Author: Larry Finger Date: Mon Jul 31 14:20:44 2006 -0400 [PATCH] bcm43xx: add missing mac_suspended initialization Fix-up missing mac_suspended initialization which resulted from Linville's sloppy patch mangling. Signed-off-by: John W. Linville commit cb18bd40030c879cd93fef02fd579f74dbab473d Author: Mike Kravetz Date: Thu Jul 20 23:39:51 2006 -0700 [POWERPC] Instrument Hypervisor Calls: merge headers Move all the Hypervisor call definitions to to a single header file. Signed-off-by: Mike Kravetz Signed-off-by: Paul Mackerras commit 5d33eebee83784f5f03bc3861fa92ee5cd831922 Author: Jeremy Kerr Date: Thu Jul 13 16:32:52 2006 +1000 [POWERPC] Simplify dma_ops bug conditions Use BUG_ON rather than BUG to simplify the dma_ops handing, and remove the now-unnecessary return cases. Booted on pseries. Signed-off-by: Jeremy Kerr Signed-off-by: Paul Mackerras commit 931b261f442e779b0656d9b04c7ffe4939ef8c0a Author: Jeremy Kerr Date: Wed Jul 12 15:42:06 2006 +1000 [POWERPC] Make get_property() return a const void * Previous changes have treated the return values of get_property as const, so now we can make the actual change to get_property(). There shouldn't be a need to cast the return values anymore. We will now get compiler warnings when property values are assigned to a non-const variable. If properties need to be updated, there's still the of_find_property function. Built for cell_defconfig, chrp32_defconfig, g5_defconfig, iseries_defconfig, maple_defconfig, pmac32_defconfig, ppc64_defconfig and pseries_defconfig. Signed-off-by: Jeremy Kerr Signed-off-by: Paul Mackerras commit 88c805940bb9a1478f06ed6dd5d6f660bdc38eaa Author: Jeremy Kerr Date: Wed Jul 12 15:41:52 2006 +1000 [POWERPC] tsi108: Constify & voidify get_property() Now that get_property() returns a void *, there's no need to cast its return value. Also, treat the return value as const, so we can constify get_property later. tsi108 driver changes. Signed-off-by: Jeremy Kerr Signed-off-by: Paul Mackerras commit af5f92d881d783b47d1f993ddffa2bce8b2993fe Author: Jeremy Kerr Date: Wed Jul 12 15:41:41 2006 +1000 [POWERPC] sata_svw: Constify & voidify get_property() Now that get_property() returns a void *, there's no need to cast its return value. Also, treat the return value as const, so we can constify get_property later. sata_svw changes Signed-off-by: Jeremy Kerr Signed-off-by: Paul Mackerras commit 5c339e96a391476ebb7cc63d913445c8cee092ff Author: Jeremy Kerr Date: Wed Jul 12 15:41:30 2006 +1000 [POWERPC] tmp_atmel: Constify & voidify get_property() Now that get_property() returns a void *, there's no need to cast its return value. Also, treat the return value as const, so we can constify get_property later. tpm_atmel changes Signed-off-by: Jeremy Kerr Signed-off-by: Paul Mackerras commit abddd185a0195988b8a5e802d55aff91783489de Author: Jeremy Kerr Date: Wed Jul 12 15:41:18 2006 +1000 [POWERPC] sound: Constify & voidify get_property() Now that get_property() returns a void *, there's no need to cast its return value. Also, treat the return value as const, so we can constify get_property later. powerpc-specific sound driver changes. Signed-off-by: Jeremy Kerr Signed-off-by: Paul Mackerras commit 1a2509c946bfd4d4a4c5a6e816082d3a7de45db8 Author: Jeremy Kerr Date: Wed Jul 12 15:41:03 2006 +1000 [POWERPC] netdevices: Constify & voidify get_property() Now that get_property() returns a void *, there's no need to cast its return value. Also, treat the return value as const, so we can constify get_property later. powerpc-specific network device driver changes. Signed-off-by: Jeremy Kerr Signed-off-by: Paul Mackerras commit 294ef16a2ee34d0d94aa63616f7552d3bc66c982 Author: Jeremy Kerr Date: Wed Jul 12 15:40:51 2006 +1000 [POWERPC] scsi: Constify & voidify get_property() Now that get_property() returns a void *, there's no need to cast its return value. Also, treat the return value as const, so we can constify get_property later. powerpc-specific scsi driver changes. Signed-off-by: Jeremy Kerr Signed-off-by: Paul Mackerras commit b04e3dd4ab4c7763a4ca8f751caaf69ce8dabbba Author: Jeremy Kerr Date: Wed Jul 12 15:40:40 2006 +1000 [POWERPC] video & agp: Constify & voidify get_property() Now that get_property() returns a void *, there's no need to cast its return value. Also, treat the return value as const, so we can constify get_property later. powerpc-specific video & agp driver changes. Signed-off-by: Jeremy Kerr Signed-off-by: Paul Mackerras commit 018a3d1db7cdb6127656c1622ee1d2302e16436d Author: Jeremy Kerr Date: Wed Jul 12 15:40:29 2006 +1000 [POWERPC] powermac: Constify & voidify get_property() Now that get_property() returns a void *, there's no need to cast its return value. Also, treat the return value as const, so we can constify get_property later. powermac platform & macintosh driver changes. Built for pmac32_defconfig, g5_defconfig Signed-off-by: Jeremy Kerr Signed-off-by: Paul Mackerras commit eeb2b723ef5100fafa381d92eb70d83e98516a44 Author: Jeremy Kerr Date: Wed Jul 12 15:40:17 2006 +1000 [POWERPC] maple: Constify & voidify get_property() Now that get_property() returns a void *, there's no need to cast its return value. Also, treat the return value as const, so we can constify get_property later. maple platform changes. Built for maple_defconfig Signed-off-by: Jeremy Kerr Signed-off-by: Paul Mackerras commit ae6b4101e53dcf8a41f3432dacca9d3eb34e9cc3 Author: Jeremy Kerr Date: Wed Jul 12 15:40:05 2006 +1000 [POWERPC] chrp: Constify & voidify get_property() Now that get_property() returns a void *, there's no need to cast its return value. Also, treat the return value as const, so we can constify get_property later. chrp platform changes. Built for chrp32_defconfig Signed-off-by: Jeremy Kerr Signed-off-by: Paul Mackerras commit c61c27d58af61e5b78257019b173732c29ce0c64 Author: Jeremy Kerr Date: Wed Jul 12 15:39:54 2006 +1000 [POWERPC] cell: Constify & voidify get_property() Now that get_property() returns a void *, there's no need to cast its return value. Also, treat the return value as const, so we can constify get_property later. cell platform changes. Built for cell_defconfig Signed-off-by: Jeremy Kerr Signed-off-by: Paul Mackerras commit 8efca49329a50710d656a8bb78d6f0f0e2f48a26 Author: Jeremy Kerr Date: Wed Jul 12 15:39:42 2006 +1000 [POWERPC] mpc: Constify & voidify get_property() Now that get_property() returns a void *, there's no need to cast its return value. Also, treat the return value as const, so we can constify get_property later. mpc* platform changes. Signed-off-by: Jeremy Kerr Signed-off-by: Paul Mackerras commit c4c7cba90cf9f180a2c45f7e54143f786360f3dd Author: Jeremy Kerr Date: Wed Jul 12 15:39:42 2006 +1000 [POWERPC] iseries: Constify & voidify get_property() Now that get_property() returns a void *, there's no need to cast its return value. Also, treat the return value as const, so we can constify get_property later. iseries platform changes. Built for iseries_defconfig Signed-off-by: Jeremy Kerr Signed-off-by: Paul Mackerras commit 954a46e2d5aec6f59976ddeb1d232b486e59b54a Author: Jeremy Kerr Date: Wed Jul 12 15:39:43 2006 +1000 [POWERPC] pseries: Constify & voidify get_property() Now that get_property() returns a void *, there's no need to cast its return value. Also, treat the return value as const, so we can constify get_property later. pseries platform changes. Built for pseries_defconfig Signed-off-by: Jeremy Kerr Signed-off-by: Paul Mackerras commit a7f67bdf2c9f24509b8e81e0f35573b611987c80 Author: Jeremy Kerr Date: Wed Jul 12 15:35:54 2006 +1000 [POWERPC] Constify & voidify get_property() Now that get_property() returns a void *, there's no need to cast its return value. Also, treat the return value as const, so we can constify get_property later. powerpc core changes. Signed-off-by: Jeremy Kerr Signed-off-by: Paul Mackerras commit 4288b92b9644fdb4c6168273873fe08f32090d7a Author: Andrew Morton Date: Sat Jul 8 22:38:56 2006 -0700 [POWERPC] briq_panel Kconfig fix drivers/char/briq_panel.c:28:22: error: asm/prom.h: No such file or directory Cc: Jeremy Kerr Acked-by: Benjamin Herrenschmidt Signed-off-by: Andrew Morton Signed-off-by: Paul Mackerras commit 95916edd02e3a7752315422f386c55723d4a3637 Author: Jeff Garzik Date: Sat Jul 29 04:10:14 2006 -0400 [libata] ahci: add SiS PCI IDs Signed-off-by: David Wang Signed-off-by: Jeff Garzik commit 3c5100c1c40cc5e27b4da4a736994c76d93392a0 Author: Tejun Heo Date: Wed Jul 26 16:58:33 2006 +0900 [PATCH] libata: cosmetic changes to PM functions Unify pm_message_t argument to the new-style @mesg. Signed-off-by: Tejun Heo Signed-off-by: Jeff Garzik commit c1332875cbe0c148c7f200d4f9b36b64e34d9872 Author: Tejun Heo Date: Wed Jul 26 15:59:26 2006 +0900 [PATCH] ahci: implement Power Management support Implement power management support. Original implementation is from Zhao, Forrest Signed-off-by: Tejun Heo Signed-off-by: Zhao, Forrest Signed-off-by: Jeff Garzik commit d91542c11f3981768367815cf087ad36e792ea4a Author: Tejun Heo Date: Wed Jul 26 15:59:26 2006 +0900 [PATCH] ahci: separate out ahci_reset_controller() and ahci_init_controller() Separate out ahci_reset_controller() and ahci_init_controller() from ata_host_init(). These will be used by PM callbacks. This patch doesn't introduce any behavior change. Signed-off-by: Tejun Heo Signed-off-by: Zhao, Forrest Signed-off-by: Jeff Garzik commit 0be0aa98985dfec42502c0d0af2a1baff9bdb19f Author: Tejun Heo Date: Wed Jul 26 15:59:26 2006 +0900 [PATCH] libata: improve driver initialization and deinitialization Implement ahci_[de]init_port() and use it during initialization and de-initialization. ahci_[de]init_port() are supersets of what used to be done during driver [de-]initialization. This patch makes the following behavior changes. * Per-port IRQ mask is cleared on driver load as done in other drivers. The mask will be configured properly during probe. * During init_one(), HOST_IRQ_STAT is cleared after masking port IRQs such that there is no race window. * CMD_SPIN_UP is cleared during init_one() instead of being set. It is set in port_start(). This is more consistent with overall structure of initialization. Note that CMD_SPIN_UP simply controls PHY activation. * Slumber and staggered spin-up are handled properly. * All init/deinit operations are done in step-by-step manner as described in the spec instead of issued as single merged command. Original implementation is from Zhao, Forrest Signed-off-by: Tejun Heo Signed-off-by: Zhao, Forrest Signed-off-by: Jeff Garzik commit 9f5920567bfabbd1be26112a31c44652b6587394 Author: Tejun Heo Date: Wed Jul 26 15:59:26 2006 +0900 [PATCH] ahci: simplify ahci_start_engine() Simplify ahci_start_engine() by killing prerequisite condition checks. Rationales are.. * No user checks error return from ahci_start_engine() * Code flow guarantees the prerequisite conditions unless the controller is malfunctioning. In such cases, the driver had chances to learn about the problem _before_ calling this function. * Closely related to the above two, driver calls into this function even when prerequisites fail hoping for the best. Basically, ahci_start_engine() should only do the operation itself. It isn't the right place to check for prerequisites. Signed-off-by: Tejun Heo Signed-off-by: Zhao, Forrest Signed-off-by: Jeff Garzik commit d8fcd116d203dfe2f6c272d0cd67724b172f1bc2 Author: Tejun Heo Date: Wed Jul 26 15:59:25 2006 +0900 [PATCH] ahci: cosmetic changes to ahci_start/stop_engine() * fascist-format comments according to comment style used in libata core layer. * if() -> if () Signed-off-by: Tejun Heo Signed-off-by: Zhao, Forrest Signed-off-by: Jeff Garzik commit 254950cd56fee220c9d548f3e57211b95976ba64 Author: Tejun Heo Date: Wed Jul 26 15:59:25 2006 +0900 [PATCH] ahci: relocate several internal functions * move ahci_port_start/stop() below EH functions. This makes ahci more consistent with other drivers and makes prototypes for ahci_start/stop_engine() unnecessary. * swap positions between ahci_start_engine() and ahci_stop_engine() for readability. Signed-off-by: Tejun Heo Signed-off-by: Zhao, Forrest Signed-off-by: Jeff Garzik commit e1c3e5014040869abd6ef2cdf987e7c74cb40ada Author: Henrik Kretzschmar Date: Mon Jul 24 14:42:01 2006 +0200 [PATCH] initialisation cleanup for ULI526x-net-driver removes the unneeded local variable rc replace pci_module_init() with pci_register_driver() two coding style issues on switch Signed-off-by: Henrik Kretzschmar Signed-off-by: Jeff Garzik commit a8bed49ecfb47a40cc401f5ec7c9a8a38098e728 Author: Stephen Hemminger Date: Thu Jul 27 18:50:09 2006 -0700 [PATCH] forcedeth: le32 annotation Use __le32 to indicate byte order of hardware ring elements Signed-off-by: Stephen Hemminger drivers/net/forcedeth.c | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) Signed-off-by: Jeff Garzik commit f82a9352f6b955d1dd9adc1124d6796be2c147df Author: Stephen Hemminger Date: Thu Jul 27 18:50:08 2006 -0700 [PATCH] forcedeth: coding style cleanups Fix the coding style of the nForce Ethernet driver. - typedef's should not be used - variable names should not be capitialized - structure tags should be lower case - add whitespace near keywords - don't add paren's to switch cases - remove paren's from return - don't use __constant_ntohs unless necessary. Signed-off-by: Stephen Hemminger drivers/net/forcedeth.c | 246 ++++++++++++++++++++++++------------------------ 1 file changed, 123 insertions(+), 123 deletions(-) Signed-off-by: Jeff Garzik commit 5a4faa873782d748960b02fdec95e3d4d2e3ae38 Author: Ron Mercer Date: Tue Jul 25 00:40:21 2006 -0700 [PATCH] qla3xxx NIC driver This is a complementary network driver for our ISP4XXX parts. There is a concurrent effort underway to get the iSCSI driver (qla4xxx) integrated upstream as well. I have been through several iterations with the linux-netdev list and have had much response from Stephen Hemminger. - Built and tested using kernel 2.6.17-rc4. - The chip supports two ethernet and two iSCSI functions. - The functions ql_sem_lock, ql_sem_spinlock, ql_sem_unlock, and ql_wait_for_drvr_lock are used to protect resources that are shared across the network and iSCSI functions. This protection is mostly during chip initialization and resets, but also include link management. - The PHY/MII are not exported through ethtool due to the fact that the iSCSI function will control the common link at least 50% of the time. This driver has been through several iterations on the netdev list and we feel this driver is ready for inclusion in the upstream kernel. It has been built and tested on x86 and PPC64 platforms. Cc: Jeff Garzik Cc: Stephen Hemminger Signed-off-by: Ron Mercer Signed-off-by: Andrew Morton Signed-off-by: Jeff Garzik commit 1c57e86d75cf162bdadb3a5fe0cd3f65aa1a9ca3 Author: Erich Chen Date: Wed Jul 12 08:59:32 2006 -0700 [SCSI] arcmsr: initial driver, version 1.20.00.13 arcmsr is a driver for the Areca Raid controller, a host based RAID subsystem that speaks SCSI at the firmware level. This patch is quite a clean up over the initial submission with contributions from: Randy Dunlap Christoph Hellwig Matthew Wilcox Adrian Bunk Signed-off-by: Erich Chen Signed-off-by: Andrew Morton Signed-off-by: James Bottomley commit 5dd9feafb351a8bf304292623cbc63335c34d279 Author: Steven Whitehouse Date: Fri Jul 28 14:52:33 2006 -0400 [GFS2] Fix bug in clear_inode We should have been waiting for lock demotion to finish in clear_inode. Signed-off-by: Steven Whitehouse commit 0c269e6d3c615403a6e0acbe6e88f1c0da9c2396 Author: James Bottomley Date: Wed Jul 12 09:51:04 2006 -0400 [SCSI] mptsas: add parent port backlink This takes advantage of the sas class backlink function to show which port on an expander is used to communicate with the parent. Signed-off-by: James Bottomley commit f4c8aa1107969c26b1984eb2996a58f816dea71f Author: brking@charter.net Date: Wed Jul 5 17:00:01 2006 -0500 [SCSI] megaraid: Add support for change_queue_depth Adds support for change_queue_depth so that device queue depth can be changed at runtime through sysfs. Signed-off-by: Acked-by: Seokmann Ju Signed-off-by: James Bottomley commit f1207ba1a756610a9880fe4b70d7f0e9f0627073 Author: John W. Linville Date: Thu Jul 27 18:10:00 2006 -0400 [PATCH] bcm43xx: fix-up build breakage from merging patches out of order Signed-off-by: John W. Linville commit 27be44ff8ee29e945adad226cc360c9278239d17 Author: Larry Finger Date: Fri Jul 14 15:42:17 2006 -0500 [PATCH] bcm43xx: improved statistics This minor patch for wireless-2.6 (softmac) adjusts the parameters of the wireless statistics to improve the display of programs such as the "Wireless Network Information" applet of KDE. Thanks to Dan Williams and Jean Tourrilhes for valuable help in setting up the return of info in dBm. Signed-Off-By: Larry Finger Signed-off-by: John W. Linville commit 58e5528ee464d38040b9489e10033c9387a10d56 Author: Michael Buesch Date: Sat Jul 8 22:02:18 2006 +0200 [PATCH] bcm43xx: init routine rewrite Rewrite of the bcm43xx initialization routines. This fixes several issues: * up-down-up-down-up... stale data issue (May fix some DHCP issues) * Fix the init vs IRQ handler race (and remove the workaround) * Fix init for cards with multiple cores (APHY) As softmac has no internal PHY handling (unlike dscape), this adds the file "phymode" to sysfs. The active PHY can be selected by writing either a, b or g to this file. Current PHY can be determined by reading from it. * Fix the controller restart code. Controller restart can now also be triggered through echo 1 > /debug/bcm43xx/ethX/restart Signed-off-by: Michael Buesch Signed-off-by: John W. Linville commit 3234faa8abe0c3d6da12cc4a38ce790134c92564 Author: Michael Buesch Date: Wed Jun 28 20:35:17 2006 +0200 [PATCH] bcm43xx: fix mac_suspend refcount This fixes mac_suspend reference counting for ifconfig up ifconfig down ifconfig up Signed-off-by: Michael Buesch Signed-off-by: John W. Linville commit b8e7cdb391c50cfc243a387b6690f5a251537e50 Author: Michael Buesch Date: Tue Jun 27 17:56:44 2006 +0200 [PATCH] bcm43xx: lower mac_suspend udelay Microoptimization: This reduces the udelay in bcm43xx_mac_suspend. Signed-off-by: Michael Buesch Signed-off-by: John W. Linville commit 062caf43d803771b660defe6b147711d8b730364 Author: Michael Buesch Date: Mon Jun 12 17:02:22 2006 +0200 [PATCH] bcm43xx: suspend MAC while executing long pwork Suspend MAC (and make MAC-suspend refcounting) when doing long periodic work. On long periodic work, we disable IRQs on the device, so we don't want the MAC to stay operating and probably miss packets due do non-delivery of interrupts. Signed-off-by: Michael Buesch Signed-off-by: John W. Linville commit 2b98a54f796f701604737abd9c2017948e9e010b Author: Steven Whitehouse Date: Thu Jul 27 16:37:48 2006 -0400 [GFS2] Fix bug in super block reading code This gets the argument to submit_bio() correct. Signed-off-by: Steven Whitehouse commit 8f0f850e240df5bea027caeb1723142c50e37e57 Author: Daniel Drake Date: Tue Jul 18 22:00:25 2006 +0100 [PATCH] softmac: Add MAINTAINERS entry Signed-off-by: Daniel Drake Acked-by: Johannes Berg Signed-off-by: John W. Linville commit f2060f039e8a8bc83b10e6d0f8fb440425560569 Author: Daniel Drake Date: Tue Jul 18 21:38:05 2006 +0100 [PATCH] ieee80211: Make ieee80211_rx_any usable ieee80211_rx_any is new to 2.6.18-rc1, even though it appears this function was never completed: http://lists.sipsolutions.net/pipermail/softmac-dev/2006-February/000103.html This patch changes ieee80211_rx_any to always claim the skb, which avoids further driver complexity and the possibility of leaking management frames. It also exports the function so that people can actually use it. Signed-off-by: Daniel Drake Acked-by: Johannes Berg Signed-off-by: John W. Linville commit d7712ac254a4ae2e9c927e29e37b8c7ac334e6ad Author: Daniel Drake Date: Tue Jul 18 21:34:56 2006 +0100 [PATCH] softmac: export highest_supported_rate function zd1211 needs this functionality, no point duplicating it. Signed-off-by: Daniel Drake Acked-by: Johannes Berg Signed-off-by: John W. Linville commit 5acd0c4153be25269d7cb9a4b09fd6db571c5cc1 Author: Daniel Drake Date: Tue Jul 18 21:33:27 2006 +0100 [PATCH] softmac: ERP handling and driver-level notifications This patch implements ERP handling in softmac so that the drivers can support protection and preambles properly. I added a new struct, ieee80211softmac_bss_info, which is used for BSS-dependent variables like these. A new hook has been added (bssinfo_change), which allows the drivers to be notified when anything in bssinfo changes. I modified the txrates_change API to match the bssinfo_change API. The existing one is a little messy and the usefulness of providing the old rates is questionable (and can be implemented at driver level if really necessary). No drivers are using this API (yet), so this should be safe. Signed-off-by: Daniel Drake Acked-by: Johannes Berg Signed-off-by: John W. Linville commit d8e2be90d301a0381e9b2528fe2835cf2992bca3 Author: Daniel Drake Date: Tue Jul 18 21:30:34 2006 +0100 [PATCH] ieee80211: small ERP handling additions This adds a flag to the ieee80211_network structure which indicates whether the stored erp_value is valid (a check against 0 is not enough, since an ERP of 0 is valid and very meaningful). I also added the ERP IE bit-definitions to ieee80211.h. This is needed by some upcoming softmac patches. Signed-off-by: Daniel Drake Acked-by: Johannes Berg Signed-off-by: John W. Linville commit eab411f1e850af5acbd6ef278f4e669250f71915 Author: Dan Williams Date: Mon Jul 17 21:21:47 2006 -0400 [PATCH] prism54: update to WE-19 for WPA support Add WE-19 capabilities to prism54 fullmac driver so that it supports the necessary Wireless Extensions WPA calls. Convert reporting of WPA/RSN Generic Information Elements to IWEVGENIE rather than pre-WE-19 IWEVCUSTOM as well. Signed-off-by: Dan Williams Signed-off-by: John W. Linville commit 7c0c3afb6e67004648ca589445e073dba4040509 Author: Daniel Drake Date: Sun Jul 16 13:55:17 2006 +0100 [PATCH] Add zd1211rw MAINTAINERS entry Hopefully this will help people like Adrian Bunk send patches where the maintainers will see them :) Signed-off-by: Daniel Drake Signed-off-by: John W. Linville commit 089f99d8ac398905f6dc75dd2ce5796ced5dd943 Author: Daniel Drake Date: Thu Jul 13 17:56:16 2006 +0100 [PATCH] zd1211rw: Implement SIOCGIWNICKN wireless.h discourages using SIOCGIWNAME to publish the driver name which the interface belongs to. Use SIOCGIWNICKN instead. Signed-off-by: Daniel Drake Signed-off-by: John W. Linville commit 67fd6b45231362a2f1ed6c74281a901105ae7d3e Author: Pavel Machek Date: Tue Jul 11 15:34:05 2006 +0200 [PATCH] cleanup // comments from ipw2200 ipw2200 uses // comments, and uses them for removing unneeded code. Clean it up a bit. Signed-off-by: Pavel Machek Signed-off-by: John W. Linville commit 13dca9b87edebd5aa1d9ea5811bcf0fa1e975b52 Author: Robert Schulze Date: Mon Jul 10 18:37:44 2006 +0200 [PATCH] airo: collapse debugging-messages in issuecommand to one line Signed-off-by: John W. Linville commit dd894be8df11ea40a1163b75596ab85d558816c8 Author: Steven Whitehouse Date: Thu Jul 27 14:29:00 2006 -0400 [GFS2] Change some allocations to GFP_NOFS Some allocations in rgrp.c should have been GFP_NOFS rather than GFP_KERNEL. Signed-off-by: Steven Whitehouse commit f45b7ddd2bae1dc98e35c3611b55cba6d2a8da9e Author: Steven Whitehouse Date: Thu Jul 27 13:53:53 2006 -0400 [GFS2] Use a bio to read the superblock This means that we don't need to create a special inode just to contain a struct address_space in order to read a single disk block. Instead we read the disk block directly. Its slightly faster, and uses slightly less memory, but the real reason for doing this is that it removes a special case from the glock code. Signed-off-by: Steven Whitehouse commit 804af2cf6e7af31d2e664b54e657dddd9b531dbd Author: Hugh Dickins Date: Wed Jul 26 21:39:49 2006 +0100 [AGPGART] remove private page protection map AGP keeps its own copy of the protection_map, upcoming DRM changes will also require access to this map from modules. Signed-off-by: Hugh Dickins Signed-off-by: Dave Airlie Signed-off-by: Dave Jones commit bcf0bf90cd9e9242b66e0563b6a8c8db2e4c262c Author: Francois Romieu Date: Wed Jul 26 23:14:13 2006 +0200 r8169: sync with vendor's driver - add several PCI ID for the PCI-E adapters ; - new identification strings ; - the RTL_GIGA_MAC_VER_ defines have been renamed to closely match the out-of-tree driver. It makes the comparison less hairy ; - various magic ; - the PCI region for the device with PCI ID 0x8136 is guessed. Explanation: the in-kernel Linux driver is written to allow MM register accesses and avoid the IO tax. The relevant BAR register was found at base address 1 for the plain-old PCI 8169. User reported lspci show that it is found at base address 2 for the new Gigabit PCI-E 816{8/9}. Typically: 01:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd.: Unknown device 8168 (rev 01) Subsystem: Unknown device 1631:e015 Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- Status: Cap+ 66Mhz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- SERR- commit 4ff96fa67379c31ced69f193c7ffba17051f38e8 Author: Francois Romieu Date: Wed Jul 26 22:05:06 2006 +0200 r8169: remove rtl8169_init_board Rationale: - its signature is not exactly pretty; - it has no knowledge of pci_device_id; - kiss 23 lines good bye. Signed-off-by: Francois Romieu commit 623a1593c84afb86b2f496a56fb4ec37f82b5c78 Author: Francois Romieu Date: Sun May 14 12:42:14 2006 +0200 r8169: hardware flow control The datasheet suggests that the device handles the hardware flow control almost automagically. User report a different story, so let's try to twiddle the mii registers. Signed-off-by: Francois Romieu commit 9dccf61112e6755f4e6f154c1794bab3c509bc71 Author: Francois Romieu Date: Sun May 14 12:31:17 2006 +0200 r8169: RX fifo overflow recovery Signed-off-by: Francois Romieu commit a2b98a697fa4e7564f78905b83db122824916cf9 Author: Francois Romieu Date: Sun May 14 12:18:44 2006 +0200 r8169: mac address change support Fix for http://bugzilla.kernel.org/show_bug.cgi?id=6032. Cc: Tim Mattox Signed-off-by: Francois Romieu commit ae4a382004fc6cf229c51deaf69910410d313e0b Author: David Teigland Date: Wed Jul 26 15:31:15 2006 -0400 [DLM] fix i_private > I think you must have an old version of the base kernel as well? > i_private no longer exists in struct inode, so you'll have to use > something else, I have that patch in my stack but didn't send it; for some reason I thought it was already changed in your git tree. Signed-off-by: David Teigland Signed-off-by: Steven Whitehouse commit 20abf975f75d6fb45d8c055d30cdcb112ca8b608 Author: David Teigland Date: Wed Jul 26 08:29:06 2006 -0500 [DLM] fix broken patches On Wed, Jul 26, 2006 at 10:47:14AM +0100, Steven Whitehouse wrote: > Hi, > > I've applied all the patches you sent, but they don't build: Argh, sorry about that... when I fixed these a long time ago they somehow never got included in the quilt patches. I mistakenly assumed the quilt patches matched the source I had in front of me. Signed-off-by: David Teigland Signed-off-by: Steven Whitehouse commit ba7f72901cfd437d6de087bf44d2b64357cb38a5 Author: Steven Whitehouse Date: Wed Jul 26 11:27:10 2006 -0400 [GFS2] Remove page.[ch] The remaining routines in page.c were all only used in one other file, so they are now moved into the files where they are referenced and made static. Thus page.[ch] are no longer required. Signed-off-by: Steven Whitehouse commit f25ef0c1b4e032b2641857ac4cff3315c6eb90e3 Author: Steven Whitehouse Date: Wed Jul 26 10:51:20 2006 -0400 [GFS2] Tidy gfs2_unstuffer_page Tidy up gfs2_unstuffer_page by: a) Moving it into bmap.c b) Making it static c) Calling it directly from gfs2_unstuff_dinode d) Updating all callers of gfs2_unstuff_dinode due to one less required argument. It doesn't change the behaviour at all. Signed-off-by: Steven Whitehouse commit 81456807a33c2122e2f1f92acfbaaa77b3d06c3c Author: David Teigland Date: Tue Jul 25 14:05:09 2006 -0500 [DLM] schedule during long loop through locks The loop through all waiting locks in recover_waiters can potentially be long, so we should schedule explicitly. Signed-off-by: David Teigland Signed-off-by: Steven Whitehouse commit 2b4e926aab7c854a536beee6ba8b9a78a9e00316 Author: David Teigland Date: Tue Jul 25 13:59:48 2006 -0500 [DLM] fix loop in grant_after_purge The loop in grant_after_purge is intended to find all rsb's in each hash bucket that have the LOCKS_PURGED flag set. The loop was quitting the current bucket after finding just one rsb instead of going until there are no more. Signed-off-by: David Teigland Signed-off-by: Steven Whitehouse commit f7da790d743d2f0b4f39e4fa442079b3b54f3bef Author: David Teigland Date: Tue Jul 25 13:53:33 2006 -0500 [DLM] set purged flag on rsbs If a node becomes the new master of an rsb during recovery, the LOCKS_PURGED flag needs to be set on it so that any waiting/converting locks will try to be granted. Signed-off-by: David Teigland Signed-off-by: Steven Whitehouse commit 5de6319b1839300ba6b461ed19531cdab90db9fc Author: David Teigland Date: Tue Jul 25 13:44:31 2006 -0500 [DLM] more info through debugfs Display more information from debugfs, particularly locks waiting for a master lookup or operations waiting for a remote reply. Signed-off-by: David Teigland Signed-off-by: Steven Whitehouse commit a9e5f4d0780ec9cda7a70b08294d7718431b62a1 Author: Steven Whitehouse Date: Tue Jul 25 17:24:12 2006 -0400 [GFS2] Alter direct I/O path As per comments received, alter the GFS2 direct I/O path so that it uses the standard read functions "out of the box". Needs a small change to one of the VFS functions. This reduces the size of the code quite a lot and also removes the need for one new export. Some more work remains to be done, but this is the bones of the thing. Signed-off-by: Steven Whitehouse commit 52f341cf75d2da84811127582616984eb0602360 Author: Abhijith Das Date: Fri Jul 21 02:03:21 2006 -0400 [GFS2] gfs2_set_flags double locking patch traced the "umount hang due to spurious glock" issue that I was having with gfs2meta. It's in the do_gfs2_set_flags function, which does a gfs2_holder_init as well as a gfs2_glock_nq_init (increases ref count by 2 instead of 1). Signed-off-by: Abhijith Das Signed-off-by: Steven Whitehouse commit c5921fd02e6c720938141a45f1f9dbd71b17fff2 Author: David Teigland Date: Thu Jul 20 09:06:34 2006 -0500 [GFS2] fix typo in locking/dlm Typo causes the error value from the wrong lock to be checked. Signed-off-by: David Teigland Signed-off-by: Steven Whitehouse commit 36098198184b0644537f4b2257d861e9bdf124bd Author: David Teigland Date: Thu Jul 20 08:35:39 2006 -0500 [DLM] fix whitespace damage My previous dlm patch added trailing whitespace damage, fix that. Signed-off-by: David Teigland Signed-off-by: Steven Whitehouse commit 34e22bed19013c77f942083e25cfc7adf6c71a8f Author: David Teigland Date: Tue Jul 18 11:24:04 2006 -0500 [DLM] fix leaking user locks User NOQUEUE lock requests to a remote node that failed with -EAGAIN were never being removed from a process's list of locks. Signed-off-by: David Teigland Signed-off-by: Steven Whitehouse commit 3b4a0a74949cf4f87f7ca84cc0457eb5687b2923 Author: Adrian Bunk Date: Sat Jul 15 02:36:31 2006 +0200 [DLM] [RFC: -mm patch] fs/dlm/lock.c: unexport dlm_lvb_operations On Thu, Jul 13, 2006 at 10:48:00PM -0700, Andrew Morton wrote: >... > Changes since 2.6.18-rc1-mm1: >... > git-gfs2.patch >... > git trees. >... This patch removes the unused EXPORT_SYMBOL_GPL(dlm_lvb_operations). Signed-off-by: Adrian Bunk Signed-off-by: Steven Whitehouse commit 5457f2194ad198a0aba4190ec99a6a81846fdca5 Author: zhao, forrest Date: Thu Jul 13 13:38:32 2006 +0800 [PATCH] The redefinition of ahci_start_engine() and ahci_stop_engine() - Make ahci_start_engine() and ahci_stop_engine() more consistent with AHCI spec 1.1 - Change their input parameter from ap to port_mmio - Update the existing users of ahci_start_engine() and ahci_stop_engine() Signed-off-by: Forrest Zhao Signed-off-by: Hannes Reinecke Signed-off-by: Jens Axboe Signed-off-by: Jeff Garzik commit 22ad852b8297e5063fc50f54a77e13f6d9b16a6f Author: Arjan van de Ven Date: Wed Jul 5 20:36:40 2006 +0200 [PATCH] resend of 8390 patch for lockdep The 8390 drivers use disable_irq() as a locking primitive, which means these uses need lockdep specific annotation that they are used as such. Signed-off-by: Arjan van de Ven Signed-off-by: Ingo Molnar Signed-off-by: Jeff Garzik commit 3fac0613937dff488141c8ade3320fd815c38ed7 Author: Ralf Baechle Date: Thu Jul 13 12:14:55 2006 +0100 [PATCH] Remove useless #ifdef MODULE stuff and printout Get rid of the MODULE stuff. Could have rewritten to use modern interfaces but the copyright message of this BSD licensed code isn't interesting enough to be watched on every bootup, in every syslog. Signed-off-by: Ralf Baechle Signed-off-by: Jeff Garzik commit 79690602adc5b52ce224df6ac67bde0074b2aede Author: Ralf Baechle Date: Thu Jul 13 12:12:53 2006 +0100 [PATCH] Remove useless casts Signed-off-by: Ralf Baechle Signed-off-by: Jeff Garzik commit 15880352659a363209c5ad9cfc796a9c8a7f5196 Author: Ralf Baechle Date: Thu Jul 13 12:10:48 2006 +0100 [PATCH] Convert to kzalloc Signed-off-by: Ralf Baechle Signed-off-by: Jeff Garzik commit b6e37e55c250f5233401b2566b1a4b512a98bc7b Author: Ralf Baechle Date: Fri Jul 14 12:15:40 2006 +0100 [PATCH] Cleanup SLHC configuration Convert selection of serial line header compression to use CONFIG_SLHC rather than makefile ifeq uglyness. This makes it easier to select the SLHC module from other code. Signed-off-by: Ralf Baechle Signed-off-by: Jeff Garzik commit 5f5d83fdbfb50ffb6f5fbf5fd69bc791d9d5cd20 Author: Stephen Hemminger Date: Mon Jul 17 15:38:32 2006 -0400 [PATCH] sky2: add another PCI ID Yet another PCI ID for 88E8056 Signed-off-by: Stephen Hemminger Signed-off-by: Jeff Garzik commit 8b8277a17477de38d8df6783e8221aed55bab300 Author: Anssi Hannula Date: Wed Jul 19 01:44:22 2006 -0400 Input: update the force feedback documentation Signed-off-by: Anssi Hannula Signed-off-by: Dmitry Torokhov commit bb3caf7f438a67452f5cf4773ca1bf82260bbbad Author: Anssi Hannula Date: Wed Jul 19 01:44:17 2006 -0400 Input: add force feedback driver for PSX-style Zeroplus devices Signed-off-by: Anssi Hannula Signed-off-by: Dmitry Torokhov commit 1f734cb461e1f029d751deb15c8d9f8137fb2ca7 Author: Anssi Hannula Date: Wed Jul 19 01:44:08 2006 -0400 Input: drop remnants of the old force-feedback interface Signed-off-by: Anssi Hannula Signed-off-by: Dmitry Torokhov commit ff462551235d8d7d843a005950bc90924fcedede Author: Anssi Hannula Date: Wed Jul 19 01:41:09 2006 -0400 Input: uinput - switch to the new FF interface The userspace interface of the force feedback part is changed and documentation in uinput.h is updated accordingly. MODULE_VERSION is also incremented to reflect the revision. Signed-off-by: Anssi Hannula Signed-off-by: Dmitry Torokhov commit dc76c912145febae8b62746d6f93e5edae342c9d Author: Anssi Hannula Date: Wed Jul 19 01:40:55 2006 -0400 Input: use new FF interface in the HID force feedback drivers Signed-off-by: Anssi Hannula Signed-off-by: Dmitry Torokhov commit 224ee88fe39564358ec99b46bf3ee6e6999ae17d Author: Anssi Hannula Date: Wed Jul 19 01:40:47 2006 -0400 Input: add force feedback driver for PID devices This replaces the older PID driver which was never completed. Signed-off-by: Anssi Hannula Signed-off-by: Dmitry Torokhov commit f6a01c85965c9e6fa8fb893c1fa5db16130d0ccb Author: Anssi Hannula Date: Wed Jul 19 01:40:39 2006 -0400 Input: iforce - switch to the new FF interface Signed-off-by: Anssi Hannula Signed-off-by: Dmitry Torokhov commit 7d928a2b14eede1f333db7b7b684c57f7fa7f456 Author: Anssi Hannula Date: Wed Jul 19 01:40:30 2006 -0400 Input: unified force feedback support for memoryless devices Consolidate core implementing memoryless devices in one module; added support for gain and envelopes and periodic => rumble conversion. Signed-off-by: Anssi Hannula Signed-off-by: Dmitry Torokhov commit 509ca1a9383601fdc5612d3d3ba5b981f6eb6c8b Author: Anssi Hannula Date: Wed Jul 19 01:40:22 2006 -0400 Input: implement new force feedback interface Implement a new force feedback interface, in which all non-driver-specific operations are separated to a common module. This includes handling effect type validations, locking, etc. The effects are now file descriptor specific instead of the previous strange half-process half-fd specific behaviour. The effect memory of devices is not emptied if the root user opens and closes the device while another user is using effects. This is a minor change and most likely no force feedback aware programs are affected by this negatively. Otherwise the userspace interface is left unaltered. Signed-off-by: Anssi Hannula Signed-off-by: Dmitry Torokhov commit 806d41b756fecc1b13584e2b806b76d8934b1679 Author: Anssi Hannula Date: Wed Jul 19 01:40:14 2006 -0400 Input: move fixp-arith.h to drivers/input Move fixp-arith.h from drivers/usb/input to drivers/input, as the part of force feedback support that requires trigonometric functions is being moved there. Signed-off-by: Anssi Hannula Signed-off-by: Dmitry Torokhov commit 57e6b724c08697d8332a63b60d3a60ee5e74e219 Author: Dmitry Torokhov Date: Wed Jul 19 01:39:56 2006 -0400 Input: rename input.ko into input-core.ko This will allow building input core module from several files which is needed for the reworked force feedback support. Signed-off-by: Dmitry Torokhov commit e0f2bf780a970f7aae9263db2e14149132671cf2 Author: Steven Whitehouse Date: Mon Jul 17 09:36:28 2006 -0400 [GFS2] Fix endian conversion bug Fix an endian coversion bug in log.c spotted by Kevin Anderson. Cc: Kevin Anderson Signed-off-by: Steven Whitehouse commit 634ee0b9f458f3530b9c0ea7e6951dd03db7d678 Author: Steven Whitehouse Date: Mon Jul 17 09:32:37 2006 -0400 [GFS2] Fix use after free bug in dir.c Fix a use after free bug in dir.c spotted by Kevin Anderson. Cc: Kevin Anderson Signed-off-by: Steven Whitehouse commit dd3bec63f80e663cdb655b8bdc9c1a0ea938f1c5 Author: Tejun Heo Date: Wed Mar 1 15:13:50 2006 +0900 [PATCH] sata_sil: remove unaffected drives from m15w blacklist m15w blacklist overgrew by attributing unrelated problems to m15w including R_ERR on DMA activate FIS errata. This patch shrinks sata_sil m15w blacklist such that it's as reported by Silicon Image. Signed-off-by: Tejun Heo Cc: Carlos Pardo Signed-off-by: Jeff Garzik commit ca652c9396fa052815518e2b2ce2ebee6d9fb861 Author: Michael Ellerman Date: Fri Jul 14 14:25:33 2006 +1000 [POWERPC] iseries: Move iommu_table_cb into platforms/iseries Although we pass the address of an iommu_table_cb to HvCallXm_getTceTableParms, we don't actually need the structure definition anywhere except in the iseries iommu code, so move the struct in there. Signed-off-by: Michael Ellerman Signed-off-by: Stephen Rothwell commit 597d0cae0f99f62501e229bed50e8149604015bb Author: David Teigland Date: Wed Jul 12 16:44:04 2006 -0500 [DLM] dlm: user locks This changes the way the dlm handles user locks. The core dlm is now aware of user locks so they can be dealt with more efficiently. There is no more dlm_device module which previously managed its own duplicate copy of every user lock. Signed-off-by: Patrick Caulfield Signed-off-by: David Teigland Signed-off-by: Steven Whitehouse commit 2eb168ca94aba3bcae350ad9b31870955174a218 Author: Wendy Cheng Date: Tue Jul 11 13:28:53 2006 -0400 [GFS2] NFS update Update the NFS filehandles so that they contain the file type. Signed-off-by: Wendy Cheng Signed-off-by: Steven Whitehouse commit 54f5cd8afa1c9c9f8b152a946b0a7e0ecdef1631 Author: Stephen Rothwell Date: Thu Jul 13 18:56:56 2006 +1000 [POWERPC] iseries: Remove unnecessary include of iseries/hv_lp_event.h Also remove unnecessary reference to struct HvLpEvent. Signed-off-by: Stephen Rothwell commit 380ed24b1b81a188c5b716286143157a27935aab Author: Stephen Rothwell Date: Thu Jul 13 18:56:00 2006 +1000 [POWERPC] iseries: Small viotape cleanup allowed by devfs removal Signed-off-by: Stephen Rothwell commit 4e9e95a3554e98e7383a3591283ffcd850c9ef48 Author: Stephen Rothwell Date: Thu Jul 13 18:53:32 2006 +1000 [POWERPC] Make the hvc_console output buffer size settable So the iSeries console will be faster since it can send up to 200 bytes at a time to the Hypervisor. This only affects the tty part of the console, the console writes are still in 16 byte lots. Signed-off-by: Stephen Rothwell commit 8bff05b052db7a4cfaaf0eee7f8145600548e9c9 Author: Stephen Rothwell Date: Thu Jul 13 18:51:22 2006 +1000 [POWERPC] iseries: A new iSeries console This driver uses the hvc_console.c infrastructure that is used by the pSeries virtual and RTAS consoles. This will allow us to make viocons.c obsolete and is another step along the way to a combined kernel (as viocons could not coexist with CONFIG_VT). Signed-off-by: Stephen Rothwell commit 2d69ff32ebf3dff9e9b48bbbbafe2b9b6f188d48 Author: Michael Ellerman Date: Thu Jul 13 17:54:44 2006 +1000 [POWERPC] Fix a compiler warning in mm/tlb_64.c The compiler doesn't understand that BUG() never returns, so complains that psize isn't set. Just set it to the normal value, which seems to produce nice code and keeps gcc happy. Signed-off-by: Michael Ellerman Signed-off-by: Stephen Rothwell commit 463c61928c453c2998d39b683c86385ee877c289 Author: Michael Ellerman Date: Thu Jul 13 17:54:44 2006 +1000 [POWERPC] iseries: Fix a compiler warning in platforms/iseries/vpdinfo.c PhbId might be used unitialised, so set it to 0xff (nothing) always. Signed-off-by: Michael Ellerman Signed-off-by: Stephen Rothwell commit f357b4cc5826ae55a5f3893424502cb15c6b6eba Author: Michael Ellerman Date: Thu Jul 13 17:54:39 2006 +1000 [POWERPC] iseries: Fix a compiler warning in platforms/iseries/vpdinfo.c iSeries_Get_Location_Code() has error paths, but currently returns void, so give it a return code and only print the output if it returns successfully. Gcc isn't smart enough to be quiet though, so set frame to 0 to shut it up. Signed-off-by: Michael Ellerman Signed-off-by: Stephen Rothwell commit 06a36db1d712242a00cb30aaebdd088b4be28082 Author: Michael Ellerman Date: Thu Jul 13 17:52:17 2006 +1000 [POWERPC] iseries: Move ItLpNaca into platforms/iseries Move ItLpNaca into platforms/iseries now that it's not used elsewhere. Signed-off-by: Michael Ellerman Signed-off-by: Stephen Rothwell commit a2ced11b6af59854cc2a2791dccd8b6c0da2f733 Author: Michael Ellerman Date: Thu Jul 13 17:52:12 2006 +1000 [POWERPC] iseries: Make HvLpConfig_get(Primary)LpIndex functions HvLpConfig_get(Primary)LpIndex are currently static inlines that return fields from the itLpNaca, if we make them real functions we can make the itLpNaca private to iSeries. Signed-off-by: Michael Ellerman Signed-off-by: Stephen Rothwell commit c59acae85409fdf5d7574e90009c8410daf38938 Author: Michael Ellerman Date: Thu Jul 13 17:52:09 2006 +1000 [POWERPC] iseries: Make ItExtVpdPanel private to iSeries No one outside platforms/iseries needs ItExtVpdPanel anymore, so move it in there. It used to be needed by lparcfg, and so was exported, but isn't needed anymore, so unexport it. Signed-off-by: Michael Ellerman Signed-off-by: Stephen Rothwell commit a892e5d7fa7fb893b5873f7150a83f6f1ee141b5 Author: Michael Ellerman Date: Thu Jul 13 17:52:06 2006 +1000 [POWERPC] iseries: Cleanup e2a() and strne2a() e2a() was formally used by lparcfg, and so had to be exported, but isn't anymore, so don't. e2a() and strne2a() can both be static, and __init. And e2a can be made much more concise if we use x ... y case labels, while we're there add support for lower case letters. Signed-off-by: Michael Ellerman Signed-off-by: Stephen Rothwell commit dac411e7aa92d23dadbcb8721845ab88577294c7 Author: Michael Ellerman Date: Thu Jul 13 17:52:04 2006 +1000 [POWERPC] iseries: Move e2a()/strne2a() into their only caller The ASCII -> EBCDIC functions, e2a() and strne2a() are now only used in dt.c, so move them in there. Signed-off-by: Michael Ellerman Signed-off-by: Stephen Rothwell commit a749690ecf7ab55aa46df1698bcee3ec110612df Author: Michael Ellerman Date: Thu Jul 13 17:52:01 2006 +1000 [POWERPC] iseries: Use device tree /system-id in /proc/iSeries/config We export a bunch of info in /proc/iSeries/config. Currently we pull it directly out of some iSeries specific structs, but we could use the device tree instead, this saves decoding it twice and is a little neater. Signed-off-by: Michael Ellerman Signed-off-by: Stephen Rothwell commit 4da3c6463ef6759fb50d12c8652bc29c5c1730a4 Author: Steven Whitehouse Date: Tue Jul 11 13:19:13 2006 -0400 [GFS2] Fix a coupls of warnings in dir.c Fix a couple of compiler warnings in dir.c caused by potentially uninitialised variables. Signed-off-by: Steven Whitehouse commit b2a580d87b33816aa9b50268f70666368e12f7df Author: Abhijith Das Date: Mon Jul 10 12:36:12 2006 -0500 [PATCH] patch to init di_payload_format field in gfs2_dinode A missing initialisation when creating a new on disk inode. Signed-off-by: Abhijith Das Signed-off-by: Steven Whitehouse commit f3bba03fd16e25a262323293e5a07dea173c89f7 Author: Steven Whitehouse Date: Tue Jul 11 09:50:54 2006 -0400 [GFS2] Fix deadlock in memory allocation We must not call GFP_KERNEL memory allocations while we are holding the log lock (read or write) since that may trigger a log flush resulting in a deadlock. Eventually we need to fix the locking in log.c, for now this solves the problem at the expense of freeing up memory as fast as we would like to. This needs to be revisited later on. Cc: Kevin Anderson Signed-off-by: Steven Whitehouse commit 4340fe62531f7d1dafb6f5359ffe0378bdb0db80 Author: Steven Whitehouse Date: Tue Jul 11 09:46:33 2006 -0400 [GFS2] Add generation number This adds a generation number for the eventual use of NFS to the ondisk inode. Its backward compatible with the current code since it doesn't really matter what the generation number is to start with, and indeed since its set to zero, due to it being taken from padding in both the inode and rgrp header, it should be fine. The eventual plan is to use this rather than no_formal_ino in the NFS filehandles. At that point no_formal_ino will be unused. At the same time we also add a releasepages call back to the "normal" address space for gfs2 inodes. Also I've removed a one-linrer function thats not required any more. Signed-off-by: Steven Whitehouse commit ffeb874b2b893aea7d10b0b088e06a7b1ded2a3e Author: Steven Whitehouse Date: Mon Jul 10 15:47:01 2006 -0400 [GFS2] Bug fix to gfs2_readpages() This fixes a bug where we were releasing a page incorrectly sometimes when reading a stuffed file. This fixes the bug that Kevin reported when using Xen. Cc: Kevin Anderson Signed-off-by: Steven Whitehouse commit dd2f5538a157bda68bfa8efb39feaaccdda9e74e Author: Daniel Drake Date: Wed Jul 5 15:57:31 2006 +0100 [PATCH] zd1211rw: Add Sagem device ID's Based on a patch by Matthieu CASTET. zd1211 chip 079b:004a v4330 high 00-60-b3 AL2230_RF pa0 g-- zd1211b chip 079b:0062 v4810 high 00-60-b3 AL2230_RF pa0 g-- Signed-off-by: Daniel Drake Signed-off-by: John W. Linville commit 4221f980a4931364be7ffd81c4f16784990f6f8b Author: Larry Finger Date: Thu Jun 29 22:48:59 2006 -0500 [PATCH] bcm43xx: improved statistics This patch improves the statistics returned from bcm43xx_get_wireless_stats. The signal level comes from smoothing the "rssi" value returned by the firmware after it is converted into a dBm value by the driver. The quality value is a hack derived from the smoothed level and an assumed RX_POWER_MAX of -10 dBM. The noise value is still the one calculated from the clean-room formula. On my system, this is roughly -65 dBm, which seems too high. The revised version uses the ieee80211 spinlock to protect traversing of the network list. Signed-Off-By: Larry Finger Signed-off-by: John W. Linville commit 2087da5dc12c497123d5fb8949ceed9021b673ec Author: Michael Buesch Date: Wed Jun 28 20:17:57 2006 +0200 [PATCH] bcm43xx: voluntary preemtion in the calibration loops This patch adds voluntary preemption points into the PHY calibration loops to allow non-CONFIG_PREEMPT machines to not suffer from huge delays. CONFIG_PREEMPT machines are already fine, because all this code is run in non-atomic process context. Signed-off-by: Michael Buesch Signed-off-by: John W. Linville commit efa6a370216f1816456b49aac03295071720f7eb Author: Michael Buesch Date: Tue Jun 27 21:38:40 2006 +0200 [PATCH] bcm43xx: opencoded locking As many people don't seem to like the locking "obfuscation" in the bcm43xx driver, this patch removes it. Signed-off-by: Michael Buesch Signed-off-by: John W. Linville commit dc3e130a08996e2b56381365a5ac7bb1ce2a9f47 Author: Steven Whitehouse Date: Mon Jul 10 11:19:29 2006 -0400 [GFS2] Remove unused code from dir.c Remove a couple of commented out, and unused lines of code. Signed-off-by: Steven Whitehouse commit 3da27289a8ecc688fc62c0961dfe89d392370480 Author: Jeremy Kerr Date: Tue Jul 4 16:47:18 2006 +1000 [POWERPC] Remove linux,pci-domain properties The linux,pci-domain property is no longer used by DLPAR/PCI Hotplug utilites, or LSVPD. This change removes it. Built for ppc64_defconfig. Signed-off-by: Jeremy Kerr Signed-off-by: Paul Mackerras commit b5a1a9abe1a54ba40a9612001920f98bbdd0c56f Author: Jeremy Kerr Date: Tue Jul 4 16:46:44 2006 +1000 [POWERPC] Use const qualifiers for prom parsing utilites The of_bus callbacks map and get_flags can be constified, as they don't alter the range or addr arguments. of_dump_addr and of_read_addr can also be constified. Built for 32- and 64-bit powerpc Signed-off-by: Jeremy Kerr Signed-off-by: Paul Mackerras commit 980ffd3258dbcdb011e929de5d658ec81febba8d Author: Jeremy Kerr Date: Tue Jul 4 16:44:46 2006 +1000 [POWERPC] Remove linux,device properties The linux,device property isn't used anywhere within the kernel, and since it's a kernel pointer, it's a little useless for userspace. This change removes the code to create this property in of_device_register. Built for pmac32. Signed-off-by: Jeremy Kerr Signed-off-by: Paul Mackerras commit 7ed14c2177694ce086180eb9ca9ca4c6cd72c7ef Author: Benjamin Herrenschmidt Date: Thu Jul 6 15:09:19 2006 +1000 [POWERPC] Add cpufreq support for Xserve G5 The Xserve G5 are capable of frequency switching like other desktop G5s. This enables it. It also fix a Kconfig issue which prevented from building the G5 cpufreq support if CONFIG_PMAC_SMU was not set (the first version of that driver only worked with SMU based macs, but this isn't the case anymore). Signed-off-by: Benjamin Herrenschmidt Signed-off-by: Paul Mackerras commit 861fa7737db889ae1701ba58c083d4a7bd8705d3 Author: Benjamin Herrenschmidt Date: Thu Jul 6 18:03:06 2006 +1000 [POWERPC] Xserve G5 thermal control fixes The thermal control for the Xserve G5s had a few issues. For one, the way to program the RPM fans speeds into the FCU is different between it and the desktop models, which I didn't figure out until recently, and it was missing a control loop for the slots fan, running it too fast. Both of those problems were causing the machine to be much more noisy than necessary. This patch also changes the fixed value of the slots fan for desktop G5s to 40% instead of 50%. It seems to still have a pretty good airflow that way and is much less noisy. Signed-off-by: Benjamin Herrenschmidt Signed-off-by: Paul Mackerras commit e7c1f69d4fa4da47dc995b5de64b6cb76ae32081 Author: Michael Ellerman Date: Tue Jul 4 17:13:23 2006 +1000 [POWERPC] Fix mem= handling when the memory limit is > RMO size There's a bug in my cleaned up mem= handling, if the memory limit is larger than the RMO size we'll erroneously enlarge the RMO size. Fix is to only change the RMO size if the memory limit is less than the current RMO value. Signed-off-by: Michael Ellerman Signed-off-by: Paul Mackerras commit 73ea6959b11821ba5ade77fb1d3d4aed52be3b67 Author: Benjamin Herrenschmidt Date: Tue Jul 4 17:07:18 2006 +1000 [POWERPC] More offb/bootx fixes There were still some issues with offb when BootX doesn't provide a proper display node, this fixes them. This also re-instates the palette hacks that were disabled a couple of kernel versions ago when I converted to the new OF parsing, and shuffles some functions around to avoid prototypes. Signed-off-by: Benjamin Herrenschmidt Signed-off-by: Paul Mackerras commit a45b83957deabbdac9a3d908c6ca4c25f05ce1ad Author: Benjamin Herrenschmidt Date: Tue Jul 4 15:06:20 2006 +1000 [POWERPC] Add support for briq front panel This adds the driver for the Briq front panel. This is a cleaned up version of a driver that has been floating around for some time now, initially written by Karsten Jeppesen and cleaned up by jk and myself. Signed-off-by: Jeremy Kerr Signed-off-by: Benjamin Herrenschmidt Signed-off-by: Paul Mackerras commit 26c5032eaa64090b2a01973b0c6ea9e7f6a80fa7 Author: Benjamin Herrenschmidt Date: Tue Jul 4 14:16:28 2006 +1000 [POWERPC] Add briq support to CHRP The support for Briq machines has been floating around as patches for ages. This cleans it up and adds it once for all. Some of this is based on initial code provided by Karsten Jeppesen and mostly rewritten from scratch by me. Signed-off-by: Benjamin Herrenschmidt Signed-off-by: Paul Mackerras commit f704b8d1f080ee71b7a9a88bcf585e7dd4272f4b Author: Benjamin Herrenschmidt Date: Tue Jul 4 14:14:07 2006 +1000 [POWERPC] Fix legacy_serial.c error handling on 32 bits The code in legacy_serial.c wouldn't properly compare OF translation results against OF_BAD_ADDR as it's using a phys_addr_t which is 32 bits on some 32-bit powerpc platforms. This fixes it by always using a u64 which is what is returned by the OF parsing routines. It also makes translation failure harmless for ISA serial ports. If they can't translate, we can't use the UART early, but we can still let the 8250 driver use it later on by using IO port accessors. Signed-off-by: Benjamin Herrenschmidt Signed-off-by: Paul Mackerras commit e70e943847bdae13175bf3a8bca6328e369de90a Author: Benjamin Herrenschmidt Date: Tue Jul 4 14:11:23 2006 +1000 [POWERPC] Fix default clock for udbg_16550 This patch makes it possible to provide 0 as the clock value for udbg_16550, making it default to the standard 1.8432Mhz clock Signed-off-by: Benjamin Herrenschmidt Signed-off-by: Paul Mackerras commit 1e031d65b0cb5f882b20ebc356ea0345ff18dbf0 Author: Benjamin Herrenschmidt Date: Tue Jul 4 14:09:36 2006 +1000 [POWERPC] Fix non-MPIC CHRPs with CONFIG_SMP set Pseudo-CHRP machines like Pegasos without an MPIC would crash at boot if CONFIG_SMP was set because the "smp_ops" pointer was set to MPIC related ops unconditionally. This patch makes it NULL on machines that don't support SMP and provides proper default behaviour in the callers when smp_ops is NULL. Signed-off-by: Benjamin Herrenschmidt Signed-off-by: Paul Mackerras commit 470407a88e549135dce5fba7d86fb9910f500e56 Author: Benjamin Herrenschmidt Date: Tue Jul 4 14:07:42 2006 +1000 [POWERPC] Fix 32 bits warning in prom_init.c A warning is hurting my eyes when building 32 bits kernels Signed-off-by: Benjamin Herrenschmidt Signed-off-by: Paul Mackerras commit e8c0acf9a4fe3b2b6847541bf5cc3c86c18272ec Author: Benjamin Herrenschmidt Date: Tue Jul 4 14:06:29 2006 +1000 [POWERPC] Workaround Pegasos incorrect ISA "ranges" The Pegasos firmware doesn't create a valid "ranges" property for the ISA bridge, thus causing translation of ISA addresses and IO ports to fail. This fixes it, thus re-enabling proper early serial console to work on Pegasos. Signed-off-by: Benjamin Herrenschmidt Signed-off-by: Paul Mackerras commit 3a09aa4730f021ad917a66a0c6d2ff6d616a7e4f Author: Johannes Berg Date: Mon Jul 3 14:28:14 2006 +0200 [POWERPC] fix up front-LED Kconfig Rather long patch, apparently no one has updated the pmac32_defconfig in a while. Signed-off-by: Paul Mackerras commit fda7ffd25fc5bbe1b4209dfafb854c7ad7308c93 Author: Niels Kristian Bech Jensen Date: Sun Jul 2 13:02:27 2006 +0200 [POWERPC] Add -fno-stack-protector to BOOTCFLAGS in arch/powerpc/boot/Makefile. I got some undefined references to __stack_chk_fail in arch/powerpc/boot/stdio.o and arch/powerpc/boot/prom.o when I was trying to build a kernel on Ubuntu Edgy Eft - which includes Stack Smashing Protection. This patch adds -fno-stack-protector to BOOTCFLAGS in arch/powerpc/boot/Makefile (why does BOOTCFLAGS depend on HOSTCFLAGS and not CFLAGS?). Regards, Niels Kristian Bech Jensen Signed-off-by: Paul Mackerras commit 29937ac6caa68d60c7f1a3e07b6137cf53e09e24 Author: Steven Whitehouse Date: Thu Jul 6 17:58:03 2006 -0400 [GFS2] Fixes to scanning of glocks (again) This really is the correct fix this time. We just ignore all glocks associated with inodes until the inodes are pushed from the inode cache. At that point the glocks are queued for reclaim, so we don't need to do it here. Also fix one or two other minor bugs. Signed-off-by: Steven Whitehouse commit 627add2d1385394d020c84533c91ad26bc37b166 Author: Steven Whitehouse Date: Wed Jul 5 13:16:19 2006 -0400 [GFS2] Correct logic in glock scanner Under certain circumstances the glock scanning logic would demote locks which ought not to have been selected for demotion. Signed-off-by: Steven Whitehouse commit fd4de2d41a9de2d949b0850d637aa84616f87ab8 Author: Steven Whitehouse Date: Wed Jul 5 13:14:59 2006 -0400 [GFS2] Add cast for printk Cast a uint64_t to unsigned long long for a printk. Signed-off-by: Steven Whitehouse commit 3864caea2ed2b43bfc92e5cfbe001abe3f002a06 Author: Steven Whitehouse Date: Wed Jul 5 11:17:36 2006 -0400 [GFS2] Kbuild update to install correct headers Now that the headers_instakll target is in Linus' kernel, this update ensures that the correct GFS2/DLM headers are installed. Signed-off-by: Steven Whitehouse commit ecb1460dc44ffb8d3e570597f394504898f088bb Author: Steven Whitehouse Date: Wed Jul 5 10:41:39 2006 -0400 [GFS2] Make GFS2 work with lock validator Change our one existing old-style lock initialiser to a new-style one. This allows the lock validator to work as intended. Signed-off-by: Steven Whitehouse commit faac9bd0e3ce7cb0572ec66e0a426cacf6afa970 Author: Steven Whitehouse Date: Wed Jul 5 08:24:34 2006 -0400 [GFS2] Fix locking for Direct I/O reads We need to hold i_mutex when doing direct i/o reads. Signed-off-by: Steven Whitehouse commit b0dd9308b703310e9a988df70f6ed3e87cb55655 Author: Steven Whitehouse Date: Mon Jul 3 13:47:02 2006 -0400 [GFS2] Mark file_operations const As per Arjan's patches: http://www.kernel.org/git/?p=linux/kernel/git/steve/gfs2-2.6.git;a=commitdiff;h=99ac48f54a91d02140c497edc31dc57d4bc5c85d and http://www.kernel.org/git/?p=linux/kernel/git/steve/gfs2-2.6.git;a=commitdiff;h=4b6f5d20b04dcbc3d888555522b90ba6d36c4106 make the GFS2 file_operations structures const. Signed-off-by: Steven Whitehouse commit 66de045d9fe6147b065c47236d3b9d8d8a6cbd57 Author: Steven Whitehouse Date: Mon Jul 3 13:37:30 2006 -0400 [GFS2] Make our address_space_operations const As per Christoph's patch: http://www.kernel.org/git/?p=linux/kernel/git/steve/gfs2-2.6.git;a=commitdiff;h=f5e54d6e53a20cef45af7499e86164f0e0d16bb2 We mark struct address_space_operations const in GFS2. Signed-off-by: Steven Whitehouse commit 3c6c65f5ed5a6d307bd607aecd06d658c0934d88 Author: Stefan Richter Date: Mon Jul 3 12:02:37 2006 -0400 [PATCH] ieee1394: fix kerneldoc of hpsb_alloc_host There was stuff between the comment and the function. Signed-off-by: Stefan Richter Signed-off-by: Ben Collins commit cab8d154e2ed43fe1495aa0e18103e747552891b Author: Stefan Richter Date: Mon Jul 3 12:02:36 2006 -0400 [PATCH] ieee1394: nodemgr: convert nodemgr_serialize semaphore to mutex Another trivial sem2mutex conversion. Side note: nodemgr_serialize's purpose, when introduced in linux1394's revision 529 in July 2002, was to protect several data structures which are now largely handled by or together with Linux' driver core and are now protected by the LDM's own mechanisms. It may very well be possible to remove this mutex now. But fully parallelized node scanning is on our long-term TODO list anyway; the mutex will certainly go away then. Signed-off-by: Stefan Richter Signed-off-by: Ben Collins commit d2f119fe319528da8c76a1107459d6f478cbf28c Author: Stefan Richter Date: Mon Jul 3 12:02:35 2006 -0400 [PATCH] ieee1394: nodemgr: switch to kthread api, replace reset semaphore Convert nodemgr's host thread from kernel_thread to kthread and its sleep/restart mechanism from a counting semaphore to a schedule()/ wake_up_process() scheme. Signed-off-by: Stefan Richter Signed-off-by: Ben Collins commit 3a632fe2321f6440ea8184b99549c74b912f5cef Author: Stefan Richter Date: Mon Jul 3 12:02:35 2006 -0400 [PATCH] ieee1394: nodemgr: make module parameter ignore_drivers writable Nodemgr's ignore_drivers variable is exposed as a module load parameter (therefore also as a sysfs attribute below /sys/module) and additionally as an attribute below /sys/bus/ieee1394. Since the latter is writable, make the former writable too. Note, the bus's attribute ignore_drivers is only relevant to newly added units, not to present or suspended or resuming units. Those have their own attribute ignore_driver. Signed-off-by: Stefan Richter Signed-off-by: Ben Collins commit 40fd89cc54a8a67c81b5aa40b22c4f40b39e47b9 Author: Stefan Richter Date: Mon Jul 3 12:02:34 2006 -0400 [PATCH] ieee1394: nodemgr: do not spawn kernel_thread for sysfs rescan nodemgr.c::fw_set_rescan() is used to re-run the driver core over nodemgr's representation of unit directories in order to initiate protocol driver probes. It is initiated via write access to one of nodemgr's sysfs attributes. The purpose is to attach drivers to units after switching a unit's ignore_driver attribute from 1 to 0. It is not really necessary to fork a kernel_thread for this job. The call to kernel_thread() can be eliminated to avoid the deprecated API and to simplify the code a bit. Signed-off-by: Stefan Richter Signed-off-by: Ben Collins commit 1ee0dc51fb68d2d25888250c554492c4926c5ec1 Author: Stefan Richter Date: Mon Jul 3 12:02:33 2006 -0400 [PATCH] ieee1394: nodemgr: remove unnecessary includes Signed-off-by: Stefan Richter Signed-off-by: Ben Collins commit 45289bf6ac70b106f5000d10b040e4485dd3e9d5 Author: Stefan Richter Date: Mon Jul 3 12:02:33 2006 -0400 [PATCH] ieee1394: raw1394: remove redundant counting semaphore An already existing wait queue replaces raw1394's complete_sem which was maintained in parallel to the wait queue. The role of the semaphore's counter is taken over by a direct check of what was really counted: The presence of items in the list of completed requests. Notes: - raw1394_release() sleeps uninterruptibly until all requests were completed. This is the same behaviour as before the patch. - The macros wait_event and wait_event_interruptible are called with a condition argument which has a side effect, i.e. manipulation of the requests list. This side effect happens only if the condition is true. The patch relies on the fact that wait_event[_interruptible] does not evaluate the condition again after it became true. - The diffstat looks unfavorable with respect to added lines of code. However 19 of them are comments, and some are due to separation of existing code blocks into two small helper functions. Signed-off-by: Stefan Richter Signed-off-by: Ben Collins commit 438bd525e5240a48233cd3290f7fe66ff0167e20 Author: Stefan Richter Date: Mon Jul 3 12:02:32 2006 -0400 [PATCH] ieee1394: dv1394: sem2mutex conversion Signed-off-by: Stefan Richter (not runtime-tested) Signed-off-by: Ben Collins commit d8831d5554c2f295a6746e9d3b4cbd8bb13a540f Author: Stefan Richter Date: Mon Jul 3 12:02:31 2006 -0400 [PATCH] ieee1394: clean up declarations of hpsb_*_config_rom hpsb_update_config_rom() is defined in csr.c, not hosts.c. hpsb_get_config_rom() does not exist. Signed-off-by: Stefan Richter Signed-off-by: Ben Collins commit d83e7d8e7e9f41a9d0e68aaf24ec4e785dd071bb Author: Stefan Richter Date: Mon Jul 3 12:02:31 2006 -0400 [PATCH] ieee1394: remove unused macros HPSB_PANIC and HPSB_TRACE Signed-off-by: Stefan Richter Signed-off-by: Ben Collins commit 66faadfac3b8488d27374acaa407e3bd7380131a Author: Stefan Richter Date: Mon Jul 3 12:02:30 2006 -0400 [PATCH] ieee1394: remove redundant code from ieee1394_hotplug.h Signed-off-by: Stefan Richter Signed-off-by: Ben Collins commit de4394f13cc843fae2a3ba2df752ee20e6e779a8 Author: Stefan Richter Date: Mon Jul 3 12:02:29 2006 -0400 [PATCH] ieee1394: update #include directives in midlayer header files Remove unnecessary includes, add missing includes. Use forward type declarations for some structs. Signed-off-by: Stefan Richter Signed-off-by: Ben Collins commit e1d118f16dca0f54faba3e8dd5b6adbbf7ac68c8 Author: Stefan Richter Date: Mon Jul 3 12:02:28 2006 -0400 [PATCH] ieee1394: coding style and comment fixes in midlayer header files Adjust tabulators, line wraps, empty lines, and comment style. Update comments in ieee1394_transactions.h and highlevel.h. Fix typo in comment in csr.h. Signed-off-by: Stefan Richter Signed-off-by: Ben Collins commit 2b01b80b944b3abf623c8acc2b5537a85b5ebd3c Author: Stefan Richter Date: Mon Jul 3 12:02:28 2006 -0400 [PATCH] ieee1394: replace __inline__ by inline Signed-off-by: Stefan Richter Signed-off-by: Ben Collins commit 433a87d528f685028b6f61fc3d7fae07ed915aa8 Author: Stefan Richter Date: Mon Jul 3 12:02:27 2006 -0400 [PATCH] ieee1394: skip dummy loop in build_speed_map The last loop in ieee1394 core's speed calculation is not required unless ieee1394.h::IEEE1394_SPEED_MAX is changed from its current value of 3. Signed-off-by: Stefan Richter Signed-off-by: Ben Collins commit f0cbefe63c4347044fffebca24c03f3c6829f322 Author: Stefan Richter Date: Mon Jul 3 12:01:59 2006 -0400 [PATCH] ieee1394: fix calculation of csr->expire This variant of calculate_expire() is more correct and easier to read. Signed-off-by: Stefan Richter Signed-off-by: Ben Collins commit 31a379e1067834868b8f1ce3e409392c42dc0f2b Author: Stefan Richter Date: Mon Jul 3 12:01:58 2006 -0400 [PATCH] ieee1394: sbp2: enable auto spin-up for Maxtor disks At least Maxtor OneTouch III require a "start stop unit" command after auto spin-down before the next access can proceed. This patch activates the responsible code in scsi_mod for all Maxtor SBP-2 disks. https://bugzilla.novell.com/show_bug.cgi?id=183011 Maybe that should be done for all SBP-2 disks, but better be cautious. Signed-off-by: Stefan Richter Signed-off-by: Ben Collins commit 0c0834a30cceeaf2748705d2b31f0d058693b716 Author: Steven Whitehouse Date: Mon Jul 3 11:38:01 2006 -0400 [GFS2] API change for gfs2_statfs The kernel API for super_operations->statfs() has changed so this updates GFS2 to the new API. Signed-off-by: Steven Whitehouse commit ccd6efd0cd1244d5d4404393576c37f269de4c5a Author: Andrew Morton Date: Fri Jun 30 02:16:34 2006 -0700 [patch 1/1] gfs2: get_sb_dev() fix Update GFS2 for dhowells API changes. Cc: Steven Whitehouse Cc: David Howells Signed-off-by: Andrew Morton Signed-off-by: Steven Whitehouse commit 02630a12c7f72fa294981c8d86e38038781c25b7 Author: Steven Whitehouse Date: Mon Jul 3 11:20:06 2006 -0400 [GFS2] Remove dependance on tty_write_message() This removes the call in GFS2 to tty_write_message and replaces it with a printk. As the export was added by GFS2, we remove this as well. Signed-off-by: Steven Whitehouse commit 7627899b11ece118b46fbf652e944f9a239f6cd1 Author: Dennis Munsie Date: Tue Jun 20 14:55:55 2006 -0400 intelfb: add preliminary i2c support Adds code to unregister the I2C buses in the cleanup function. Signed-off-by: Dennis Munsie commit 1f6e8449e11fd79ee30456ce7ec973317b8dd6ae Author: Dennis Munsie Date: Tue Jun 20 14:55:55 2006 -0400 intelfb: add preliminary i2c support [07/07] intelfb: adds an option to enable I2C support in the intelfb driver. Also adds the intel_i2c.c file to the Makefile. Signed-off-by: Dennis Munsie commit 41c9480a1d22e8f28b8675a2d7ec7fd4c50bc900 Author: Dennis Munsie Date: Tue Jun 20 14:55:55 2006 -0400 intelfb: add preliminary i2c support [06/07] intelfb: adds intelfb_i2c.c which contains the infrastructure needed to enumerate the i2c busses on the intelfb. Signed-off-by: Dennis Munsie commit dd696ec852dc34c40e2a18cc426c8f462c0715a5 Author: Dennis Munsie Date: Tue Jun 20 14:55:55 2006 -0400 intelfb: add preliminary i2c support [05/07] intelfb: add output fields to dinfo. Signed-off-by: Dennis Munsie commit 399fb4316ab4fe4c46d1e4ed8b12d56c94b4c251 Author: Dennis Munsie Date: Tue Jun 20 14:55:55 2006 -0400 intelfb: add preliminary i2c support [04/07] intelfb: add intelfb_output_rec struct and the constants for it's fields. Signed-off-by: Dennis Munsie commit 183b1214402a205bf6eea2030686249c7d365fd1 Author: Dennis Munsie Date: Tue Jun 20 14:55:55 2006 -0400 intelfb: add preliminary i2c support [03/07] intelfb: add intelfb_i2c_chan struct. Signed-off-by: Dennis Munsie commit 82c10f07c2d7baf6f280f206f9067a4715777962 Author: Dennis Munsie Date: Tue Jun 20 14:55:55 2006 -0400 intelfb: add preliminary i2c support [02/07] intelfb: add GPIO registers. Signed-off-by: Dennis Munsie commit c37bb26654bb8981ea237076e333eb37d4aa2dc6 Author: Dennis Munsie Date: Tue Jun 20 14:55:55 2006 -0400 intelfb: add preliminary i2c support [01/07] i2c: add intelfb bit algorithm id Adds the intelfb bit algorithm id to i2c-id.h. Signed-off-by: Dennis Munsie commit f80d0d23f2010b7682e06449345e8199a2b2619c Author: Eric Hustvedt Date: Tue Jun 20 14:36:42 2006 -0400 intelfb: add vsync interrupt support [05/05] intelfb: Honor FB_ACTIVATE_VBL for display panning Extends the intelfb_vsync struct to store panning offset. The interrupt service routine uses the stored panning offset if a pan is requested for the vsync. intelfbhw_disable_irq also pans the display if there is a pending request. Signed-off-by: Eric Hustvedt commit 37bced38b3d09c3de7c871790eddde81a3ce57cb Author: Eric Hustvedt Date: Tue Jun 20 14:36:42 2006 -0400 intelfb: add vsync interrupt support [04/05] intelfb: implement FBIO_WAITFORVSYNC ioctl The (unofficial) FBIO_WAITFORVSYNC ioctl is implemented by sleeping on the appropriate waitqueue, as defined in my earlier patch. Currently, only display 0 (aka pipe A) is supported. Signed-off-by: Eric Hustvedt commit 7649757bd900bc900adcd95ab08903cdc28342fa Author: Eric Hustvedt Date: Tue Jun 20 14:36:41 2006 -0400 intelfb: add vsync interrupt support [03/05] intelfb: Implement basic interrupt handling Functions have been added to enable and disable interrupts using the MMIO registers. Currently only pipe A vsync interrupts are enabled. A generalized vsync accounting struct is defined, with the intent that it can encapsulate per-pipe vsync related info in the future. Currently a single instance is hard-coded. The interrupt service routine currently only looks for vsync interrupts on pipe A, and increments a counter and wakes up anyone waiting on it. This implementation is heavily influenced by similar implementations in the atyfb and matroxfb drivers. Signed-off-by: Eric Hustvedt commit 9a5f019b1a9ea6a75ba36d7c312ff069006ed479 Author: Eric Hustvedt Date: Tue Jun 20 14:36:41 2006 -0400 intelfb: add vsync interrupt support [02/05] intelfb: Add interrupt related register definitions Add constants for accessing HWSTAM, IER, IIR, and IMR registers. Add constants for interrupt types supported by the 8xx and 9xx chipsets. The registers are also stored in the hwstate struct and dumped in the debug routine. Signed-off-by: Eric Hustvedt commit 3ce6fb4358bce6aced489f798138795163ad3f7c Author: Eric Hustvedt Date: Tue Jun 20 14:36:41 2006 -0400 intelfb: add vsync interrupt support [01/05] intelfb: Add 16-bit register access macros This patch adds macros to read and write two-byte MMIO registers. The interrupt-related registers are all word-sized, rather than long-sized. Signed-off-by: Eric Hustvedt commit d7530a1e767b562c7e071f559d542c132d85fff7 Author: Stefan Richter Date: Mon Jul 3 00:58:01 2006 +0200 [PATCH] ieee1394: fix cosmetic problem in speed probe If ieee1394.h::IEEE1394_SPEED_MAX is bigger than the actual speed of an 1394b host adapter and the speed to another 1394b node was probed, a bigger speed than actually used was kept in host->speed[n]. The only resulting problem so far was sbp2 displaying bogus values in the syslog, e.g. S3200 for actual S800 connections if IEEE1394_SPEED_MAX was S3200. But other high-level drivers which access this field could get into more trouble. (Eth1394 is the only other in-tree driver which does so. It seems it is not affected.) Nodemgr now clips this value according to the host adapter's link speed. A pointer expression in nodemgr_check_speed is also changed for clarity. Signed-off-by: Stefan Richter Signed-off-by: Ben Collins commit af18ddb8864b096e3ed4732e2d4b21c956dcfe3a Author: Steven Whitehouse Date: Sat Jun 24 15:42:21 2006 -0400 [GFS2] Eliminate one instance of __GFP_NOFAIL This removes one instance of GFP_NOFAIL from the glock callback function. It also fixes a bug where a , was used at a line end rather than ; causing unintended results. Signed-off-by: Steven Whitehouse commit a53311d4d9e1cde15aebc2048847ea19fb33ac3a Author: Steven Whitehouse Date: Fri Jun 23 16:16:29 2006 -0400 [GFS2] Use generic_file_sendfile directly Don't use a wrapper for generic_file_sendfile but call it directly. Cc: Christoph Hellwig Signed-off-by: Steven Whitehouse commit a464418425192da270a9944d0e48c33e186af601 Author: David Teigland Date: Thu Jun 22 15:29:57 2006 -0400 [GFS2] gfs2/dlm: mailing list and web page List new development mailing list and correct web page url. Signed-off-by: David Teigland Signed-off-by: Steven Whitehouse commit bdd512aeeab860f7a9a537142dd0983f884d723a Author: Steven Whitehouse Date: Thu Jun 22 15:26:33 2006 -0400 [GFS2] Remove unused flag The flag GIF_MIN_INIT is no longer used or required. Signed-off-by: Steven Whitehouse commit 43f5d210a02dcf9d8bafb147044f27add10a459a Author: Adrian Bunk Date: Thu Jun 22 11:16:40 2006 -0400 [GFS2] [-mm patch] fs/gfs2/: make code static This patch makes the following needlessly global code static: - eaops.c: struct gfs2_security_eaops - rgrp.c: gfs2_free_uninit_di() Signed-off-by: Adrian Bunk Signed-off-by: Steven Whitehouse commit faf450ef4a8567e4c75a905aadae01cf401d893a Author: Steven Whitehouse Date: Thu Jun 22 10:59:10 2006 -0400 [GFS2] Remove gfs2_repermission gfs2_repermission is just a wrapper for permission, so remove it and call permission directly where required. Signed-off-by: Steven Whitehouse commit d9d1ca30505c6fed867e1724b16fdad0c281d7d1 Author: Steven Whitehouse Date: Wed Jun 21 15:38:17 2006 -0400 [GFS2] Fix double locking problem in rename The rename inode operation was trying to lock the same inode twice in the case of renaming with the source and destination directories the same. We now test for this and just lock once. Signed-off-by: Steven Whitehouse commit 2ab561a116e16cdee3ae0e13d51910634c15aee9 Author: David Mosberger-Tang Date: Wed Jun 21 11:19:22 2006 -0700 [IA64] esi-support Add support for making ESI calls [1]. ESI stands for "Extensible SAL specification" and is basically a way for invoking firmware subroutines which are identified by a GUID. I don't know whether ESI is used by vendors other than HP (if you do, please let me know) but as firmware "backdoors" go, this seems one of the cleaner methods, so it seems reasonable to support it, even though I'm not aware of any publicly documented ESI calls. I'd have liked to make the ESI module completely stand-alone, but unfortunately that is not easily (or not at all) possible because in order to make ESI calls in physical mode, a small stub similar to the EFI stub is needed in the kernel proper. I did try to create a stub that would work in user-level, but it quickly got ugly beyond recognition (e.g., the stub had to make assumptions about how the module-loader generated call-stubs work) and I didn't even get it to work (that's probably fixable, but I didn't bother because I concluded it was too ugly anyhow). While it's not terribly elegant to have kernel code which isn't actively used in the kernel proper, I think it might be worth making an exception here for two reasons: the code is trivially small (all that's really needed is esi_stub.S) and by including it in the normal kernel distro, it might encourage other OEMs to also use ESI, which I think would be far better than each inventing their own firmware "backdoor". The code was originally written by Alex. I just massaged and packaged it a bit (and perhaps messed up some things along the way...). Changes since first version of patch that was posted to mailing list: * Export ia64_esi_call and ia64_esi_call_phys() as GPL symbols. * Disallow building esi.c as a module for now. Building as a module would currently lead to an unresolved reference to "sal_lock" on SMP kernels because that symbol doesn't get exported. * Export esi_call_phys() only if ESI is enabled. * Remove internal stuff from esi.h and add a "proc_type" argument to ia64_esi_call() such that serialization-requirements can be expressed (ESI follows SAL here, where procedure calls may have to be serialized, are MP-safe, or MP-safe andr reentrant). [1] h21007.www2.hp.com/dspp/tech/tech_TechDocumentDetailPage_IDX/1,1701,919,00.html Signed-off-by: David Mosberger Signed-off-by: Alex Williamson Signed-off-by: Tony Luck commit bf9f424d9acf461fabcb0e9f47b356e08186d91f Author: Steven Whitehouse Date: Wed Jun 21 11:54:43 2006 -0400 [GFS2] Make file_read_actor export _GPL Make file_read_actor export a _GPL export. Signed-off-by: Steven Whitehouse commit 0d42e54220ba34e031167138ef91cbd42d8b5876 Author: Steven Whitehouse Date: Tue Jun 20 16:13:49 2006 -0400 [GFS2] Remove unused ra_state variable As per Nick Piggin's comments on lkml, remove the unused ra_state variable. Signed-off-by: Steven Whitehouse Cc: Nick Piggin commit 0239c4ae8aa5cdee6dc3792effc2800d65292c04 Author: David Woodhouse Date: Tue Jun 20 13:48:31 2006 +0100 [GFS2] Fix printk format warnings in DLM code fs/gfs2/locking/dlm/thread.c: In function ‘process_complete’: fs/gfs2/locking/dlm/thread.c:56: warning: format ‘%llx’ expects type ‘long long unsigned int’, but argument 3 has type ‘uint64_t’ fs/gfs2/locking/dlm/thread.c:69: warning: format ‘%llx’ expects type ‘long long unsigned int’, but argument 4 has type ‘uint64_t’ fs/gfs2/locking/dlm/thread.c:102: warning: format ‘%llx’ expects type ‘long long unsigned int’, but argument 3 has type ‘uint64_t’ fs/gfs2/locking/dlm/thread.c:124: warning: format ‘%llx’ expects type ‘long long unsigned int’, but argument 4 has type ‘uint64_t’ fs/gfs2/locking/dlm/thread.c:146: warning: format ‘%llx’ expects type ‘long long unsigned int’, but argument 4 has type ‘uint64_t’ fs/gfs2/locking/dlm/thread.c:148: warning: format ‘%llx’ expects type ‘long long unsigned int’, but argument 4 has type ‘uint64_t’ Signed-off-by: David Woodhouse commit 695165dfba5204791bc4ae8911ed8b6326ce6d91 Author: David Woodhouse Date: Tue Jun 20 13:44:27 2006 +0100 [GFS2] Fix use of bitops on unsigned int (struct gfs2_holder->gh_iflags) fs/gfs2/glock.c: In function ‘gfs2_holder_get’: fs/gfs2/glock.c:439: warning: passing argument 2 of ‘set_bit’ from incompatible pointer type fs/gfs2/glock.c: In function ‘rq_promote’: fs/gfs2/glock.c:512: warning: passing argument 2 of ‘set_bit’ from incompatible pointer type fs/gfs2/glock.c:526: warning: passing argument 2 of ‘set_bit’ from incompatible pointer type ... Signed-off-by: David Woodhouse commit 9f5aa2a921797ce6eb4542c7517915bd1d5fbd0b Author: Patrick Caulfield Date: Mon Jun 19 16:27:52 2006 -0400 [DLM] Fix potential conflict in DLM userland locks Just spotted this one. The lockinfo structs are hashed by lockid but into a global structure. So that if there are two lockspaces with the same lockid all hell breaks loose. I'm not exactly sure what will happen but it can't be good! The attached patch moves the lockinfo_idr into the user_ls structure so that lockids are localised. patrick Signed-Off-By: Patrick Caulfield Signed-off-by: Steven Whitehouse commit b61dde795f120f5dca2c865a1860dd9ff76705a1 Author: Steven Whitehouse Date: Mon Jun 19 10:51:11 2006 -0400 [GFS2] Always include glock in transaction Include the glock in the transaction, even when not journaling data in order that ordered write data will be correctly flushed when the lock is released. Signed-off-by: Steven Whitehouse commit 7d5513d58d072cf38cae9c886653aadac38ef4a9 Author: David Teigland Date: Mon Jun 19 09:15:38 2006 -0400 [DLM] init rwsem earlier The nodeinfo_lock rwsem needs to be initialized when the module is loaded instead of when the dlm is first used. Signed-off-by: David Teigland Signed-off-by: Steven Whitehouse commit 3a8476dda13bc6690c5c2d5f1d3078048392c188 Author: Steven Whitehouse Date: Mon Jun 19 09:10:39 2006 -0400 [GFS2] Remove debugging printks A few of my printks slipped through last time. Also fix a couple of minor bugs. Signed-off-by: Steven Whitehouse commit feaa7bba026c181ce071d5a4884f7f9dd26207a1 Author: Steven Whitehouse Date: Wed Jun 14 15:32:57 2006 -0400 [GFS2] Fix unlinked file handling This patch fixes the way we have been dealing with unlinked, but still open files. It removes all limits (other than memory for inodes, as per every other filesystem) on numbers of these which we can support on GFS2. It also means that (like other fs) its the responsibility of the last process to close the file to deallocate the storage, rather than the person who did the unlinking. Note that with GFS2, those two events might take place on different nodes. Also there are a number of other changes: o We use the Linux inode subsystem as it was intended to be used, wrt allocating GFS2 inodes o The Linux inode cache is now the point which we use for local enforcement of only holding one copy of the inode in core at once (previous to this we used the glock layer). o We no longer use the unlinked "special" file. We just ignore it completely. This makes unlinking more efficient. o We now use the 4th block allocation state. The previously unused state is used to track unlinked but still open inodes. o gfs2_inoded is no longer needed o Several fields are now no longer needed (and removed) from the in core struct gfs2_inode o Several fields are no longer needed (and removed) from the in core superblock There are a number of future possible optimisations and clean ups which have been made possible by this patch. Signed-off-by: Steven Whitehouse commit 22da645fd6675b7abc55cf937ddf6132f343e5b9 Author: Patrick Caulfield Date: Fri Jun 9 16:14:20 2006 -0400 [DLM] compat patch Here's a patch which add 32/64 bit compat to the DLM IOs and tidies the structures for alignment. As it causes an ABI change I had few qualms about adding the extra flag for "is64bit" as it simply uses a byte that would have been padding. Cc: David Woodhouse Signed-off-by: Patrick Caulfield Signed-off-by: Steven Whitehouse commit 01eb7c07968fdab0cca0d2474346cff176537de8 Author: Steven Whitehouse Date: Tue Jun 6 17:31:30 2006 -0400 [GFS2] Fix warning on impossible event in eattr code The caller ensures that ea_list_i() is never called with an invalid type, so lets BUG() if we see one. This clears up a couple of compiler warnings too. Signed-off-by: Steven Whitehouse commit 6b61b072a8b54212ab0808c443e5c16699390d25 Author: Steven Whitehouse Date: Tue Jun 6 14:49:39 2006 -0400 [GFS2] Move some fields around to reduce wasted space We can reclaim some space by moving fields in some structures in order to allow them to pack better on 64 bit architectures. Signed-off-by: Steven Whitehouse commit 76d08bb3f09054edc45326ce5c698a3f6c45f5d0 Author: Tony Luck Date: Mon Jun 5 13:54:14 2006 -0700 [IA64] Add "model name" to /proc/cpuinfo Linux ia64 port tried to decode the processor family number to something human-readable, but Intel brandnames don't change synchronously with updates to the family number. Adopt a more i386-like approach and just print the family number in decimal. Add a new field "model name" that uses PAL_BRAND_INFO to find the official name for the cpu, or on older systems, falls back to using the well-known codenames (Merced, McKinley, Madison). Signed-off-by: Tony Luck commit 47c96298cd0b04b4478206fde55fd6a6431de980 Author: Steven Whitehouse Date: Thu May 25 17:43:14 2006 -0400 [GFS2] Change name due to local_nodeid being a macro Change names of local_nodeid to dlm_local_nodeid to prevent a namespace collision. Changed other local variable to match. Cc: David Teigland Signed-off-by: Steven Whitehouse commit e70409f5f37587e101b4fd6d268686ae8e03ba88 Author: Ryan O'Hara Date: Thu May 25 17:36:15 2006 -0400 [GFS2] Fix for selinux support This should fix the mount problems with gfs2 and selinux. Signed-off-by: Ryan O'Hara Signed-off-by: Steven Whitehouse commit e79664886ddd569afa1b198ca436a63aefc19073 Author: Steven Whitehouse Date: Thu May 25 12:47:04 2006 -0400 [GFS2] Remove unused entry in ioctl-number.txt GFS2 doesn't use any ioctl numbers of its own, so we don't need a reserved range of numbers for it. Signed-off-by: Steven Whitehouse commit 382066da251132f768380f4852ed5afb72d88f80 Author: Steven Whitehouse Date: Wed May 24 10:22:09 2006 -0400 [GFS2] Casts for printing 64bit numbers Signed-off-by: Steven Whitehouse commit 9229f013495dcdae76e9942ebc2cfc69851fe10a Author: David Teigland Date: Wed May 24 09:21:30 2006 -0400 [GFS2] Cast 64 bit printk args to unsigned long long. Signed-off-by: David Teigland Signed-off-by: Steven Whitehouse commit 90cdd2083aea9a536ecdef62840db01fff2e645d Author: Steven Whitehouse Date: Mon May 22 10:36:25 2006 -0400 [GFS2] Flag up issue in selinux code Signed-off-by: Steven Whitehouse commit 639b6d79b8c20cce4079fb035640c65456324d1c Author: Ryan O'Hara Date: Mon May 22 10:08:35 2006 -0400 [GFS2] selinux support This adds support to GFS2 for selinux extended attributes. There is a known bug in gfs2_ea_get() which is believed to be independant of this patch. Further patches will follow once that bug is fixed in order to make GFS2 use as much of the generic eattr infrastructure as possible. Signed-off-by: Ryan O'Hara Signed-off-by: Steven Whitehouse commit d2f222e6310b073ae3d91b8d3d676621fae1314e Author: David Teigland Date: Fri May 19 08:24:02 2006 -0400 [GFS2] setup lock_dlm kobject earlier Setup the lock_dlm kobject before setting up the dlm lockspace instead of after. We want to use the sysfs files to detect the mount without having to wait for the dlm setup which can take a while. Signed-off-by: David Teigland Signed-off-by: Steven Whitehouse commit 320dd101e2d595a03439adb92b319f3af53dd1d0 Author: Steven Whitehouse Date: Thu May 18 16:25:27 2006 -0400 [GFS2] glock debugging and inode cache changes This adds some extra debugging to glock.c and changes inode.c's deallocation code to call the debugging code at a suitable moment. I'm chasing down a particular bug to do with deallocation at the moment and the code can go again once the bug is fixed. Also this includes the first part of some changes to unify the Linux struct inode and GFS2's struct gfs2_inode. This transformation will happen in small parts over the next short period. Signed-off-by: Steven Whitehouse commit 3a8a9a1034813aa99f5ae3150f652d490c5ff10d Author: Steven Whitehouse Date: Thu May 18 15:09:15 2006 -0400 [GFS2] Update copyright date to 2006 Signed-off-by: Steven Whitehouse commit bd8968010a9a08e67a0ddb3ddee9feb8882e8c2f Author: Steven Whitehouse Date: Thu May 18 14:54:58 2006 -0400 [GFS2] Remove semaphore.h from C files We no longer use semaphores, everything has been converted to mutex or rwsem, so we don't need to include this header any more. Signed-off-by: Steven Whitehouse commit 1b50259bc33f2adfcb4c5fba4b740bf80789df22 Author: Steven Whitehouse Date: Thu May 18 14:10:52 2006 -0400 [GFS2] Drop log lock on I/O error & tidy up This patch drops the log spinlock when an I/O error occurs to avoid any possible problems in case of blocking or recursion in the I/O error routine. It also has a few cosmetic changes to tidy up various other files. Signed-off-by: Steven Whitehouse commit 02f211f4d0e67794020ba1babbdaf7c45d56db45 Author: Steven Whitehouse Date: Thu May 18 14:03:43 2006 -0400 [GFS2] Remove bits.c from the Makefile Signed-off-by: Steven Whitehouse commit 3efd7534a84a3eacb9d43e7f02fadeec4a5b79ff Author: Steven Whitehouse Date: Thu May 18 14:02:52 2006 -0400 [GFS2] Make newly moved functions static The functions moved from bits.c can now be made static. Signed-off-by: Steven Whitehouse commit 88c8ab1fcb53feadb8ebdcb4cda7e6137c6416bd Author: Steven Whitehouse Date: Thu May 18 13:52:39 2006 -0400 [GFS2] Merge bits.[ch] into rgrp.c Since they are small and will be inlined by the complier, it makes sense to merge the contents of bits.[ch] into rgrp.c Signed-off-by: Steven Whitehouse commit 64c14ea73b58e2c3759682d67eeb00d088355f08 Author: Steven Whitehouse Date: Tue May 16 13:37:11 2006 -0400 [GFS2] Fix ref count bug that used to bite us on umount The ref count of certain glock's got elevated too far during unlink which caused umount to fail. This fixes it. Signed-off-by: Steven Whitehouse commit b9cb981310bc22f165726e99385c2d85196e2f41 Author: Steven Whitehouse Date: Fri May 12 17:07:56 2006 -0400 [GFS2] Fix attributes setting logic The attributes logic for immutable was wrong so that there was not way to remove this attribute once set. This fixes the bug. Signed-off-by: Steven Whitehouse commit 9801f6461eb994e4eda29cba97f4596dffafbf32 Author: Steven Whitehouse Date: Fri May 12 14:06:02 2006 -0400 [GFS2] Remove incorrect initialisation of gh_owner The gh_owner field shouldn't be set or reset outside the glock code. These were left over from when recursive locking was allowed. It isn't any more, so they are not needed. Signed-off-by: Steven Whitehouse commit e90c01e148b967d30caf59e76accb3a58ca6b74b Author: Steven Whitehouse Date: Fri May 12 12:09:15 2006 -0400 [GFS2] Reverse block order in build_height The original code ordered the blocks allocated in the build_height routine backwards causing excessive disk seeks during a read of the metadata. This patch reverses the order to try and reduce disk seeks. Example: A five level metadata tree, I = Inode, P = Pointers, D = Data You need to read the blocks in the order: I P5 P4 P3 P2 P1 D in order to read a single data block. The new code now orders the blocks in this way. The old code used to order them as: I P1 P2 P3 P4 P5 D requiring two extra seeks on average. Note that for files which are grown by gradual extension rather than by truncate or by llseek/write at a large offset, this doesn't apply. In the case of writing to a file linearly, this routine will only be called upon to extend the height of the tree by one block at a time, so the ordering is determined by when its called rather than by the internals of the routine itself. Optimising that part of the ordering is a much harder problem. Signed-off-by: Steven Whitehouse commit fd88de569b802c4a04aaa6ee74667775f4aed8c6 Author: Steven Whitehouse Date: Fri May 5 16:59:11 2006 -0400 [GFS2] Readpages support This adds readpages support (and also corrects a small bug in the readpage error path at the same time). Hopefully this will improve performance by allowing GFS to submit larger lumps of I/O at a time. In order to simplify the setting of BH_Boundary, it currently gets set when we hit the end of a indirect pointer block. There is always a boundary at this point with the current allocation code. It doesn't get all the boundaries right though, so there is still room for improvement in this. See comments in fs/gfs2/ops_address.c for further information about readpages with GFS2. Signed-off-by: Steven Whitehouse commit 5bb76af1e089ac186c15c6aa792340d22b63d4b4 Author: Robert S Peterson Date: Fri May 5 16:29:50 2006 -0400 [GFS2] Set d_ops for root inode Well, I managed to track down the bug in gfs2 that was causing my grief. Below is a patch for the problem. Please incorporate as you see fit. Or should I say: as you see git. The problem was basically that you never set d_ops for the root inode, so the wrong hash algorithm was being used. But only for the root directory. Turns out that if I used subdirectories, it used the proper hash and my files were found just fine. Signed-off-by: Robert S Peterson Signed-off-by: Steven Whitehouse commit 97a35d1e5fab9ff8de27814082b78b2fc9ad94f0 Author: David Teigland Date: Tue May 2 13:34:03 2006 -0400 [DLM] fix grant_after_purge softlockup In dlm_grant_after_purge() we were holding a hash table read_lock while calling put_rsb() which potentially removes the rsb from the hash table, taking the same lock in write. Fix this by flagging rsb's ahead of time that have been purged. Then iteratively read_lock the hash table, find a flagged rsb, unlock, process rsb. Signed-off-by: David Teigland Signed-off-by: Steven Whitehouse commit d2d7b8a2a756fb520792ca3db3abdeed9214ae5b Author: Steven Whitehouse Date: Tue May 2 12:09:42 2006 -0400 [GFS2] Fix bug in writepage() As pointed out by Wendy Cheng, the logic in GFS2's writepage() function wasn't quite right with respect to invalidating pages when a file has been truncated. This patch fixes that. CC: Wendy Cheng Signed-off-by: Steven Whitehouse commit 56409abbf8a9e3754d752d0189f9b9a609ec78de Author: Steven Whitehouse Date: Fri Apr 28 11:48:45 2006 -0400 [GFS2] Remove some unused code Remove some of the unused code flagged up by Adrian Bunk. Cc: Adrian Bunk Signed-off-by: Steven Whitehouse commit bac1e07926ae514739e6a12218c8b6ce8ce04514 Author: Steven Whitehouse Date: Fri Apr 28 11:29:48 2006 -0400 [GFS2] Update my Credits file entry Signed-off-by: Steven Whitehouse commit 5be7b50f3227577d651eb6788ffea8272d215b63 Author: Steven Whitehouse Date: Fri Apr 28 11:27:32 2006 -0400 [GFS2] Add suitable Maintainers entries As suggested by Adrian Bunk Signed-off-by: Steven Whithouse commit 08bc2dbc7327e89b9d5b9c8ef9401d1df2622fca Author: Adrian Bunk Date: Fri Apr 28 10:59:12 2006 -0400 [GFS2] [-mm patch] fs/gfs2/: possible cleanups This patch contains the following possible cleanups: - make needlessly global code static - #if 0 unused functions - remove the following global function that was both unused and unimplemented: - super.c: gfs2_do_upgrade() Signed-off-by: Adrian Bunk Signed-off-by: Steven Whitehouse commit c56b39cd2c55d521597f04bbd872a08d1c4373ca Author: David Teigland Date: Fri Apr 28 10:51:53 2006 -0400 [DLM] PATCH 3/3 dlm: show recover state Expose the current recovery state in sysfs to help in debugging. Signed-off-by: David Teigland Signed-off-by: Steven Whitehouse commit 1c032c03117c014512195f2e33c3af999f132146 Author: David Teigland Date: Fri Apr 28 10:50:41 2006 -0400 [DLM] PATCH 2/3 dlm: lowcomms close When a node is removed from a lockspace configuration, close our connection to it, clearing any remaining messages for it. Signed-off-by: David Teigland Signed-off-by: Patrick Caulfield Signed-off-by: Steven Whitehouse commit ae118962b9f8572b5ff00e85c053dbeede2314db Author: David Teigland Date: Fri Apr 28 10:48:59 2006 -0400 [DLM] PATCH 1/3 dlm: force free user lockspace Lockspaces created from user space should be forcibly freed without requiring any further user space interaction. Signed-off-by: David Teigland Signed-off-by: Steven Whitehouse commit 363275216c1a1b0b82c8419310c194b8c26b9c27 Author: Steven Whitehouse Date: Fri Apr 28 10:46:21 2006 -0400 [GFS2] Reordering in deallocation to avoid recursive locking Despite my earlier careful search, there was a recursive lock left in the deallocation code. This removes it. It also should speed up deallocation be reducing the number of locking operations which take place by using two "try lock" operations on the two locks involved in inode deallocation which allows us to grab the locks out of order (compared with NFS which grabs the inode lock first and the iopen lock later). It is ok for us to fail while doing this since if it does fail it means that someone else is still using the inode and thus it wouldn't be possible to deallocate anyway. This fixes the bug reported to me by Rob Kenna. Cc: Rob Kenna Signed-off-by: Steven Whitehouse commit e7f5c01caddbad150dcf003f76cd5aac413f4c50 Author: David Teigland Date: Thu Apr 27 11:25:45 2006 -0400 [GFS2] Remove redundant casts to/from void Signed-off-by: Steven Whitehouse commit 6bd70aba5ab453459bb53b1e29f0e0650d6c311f Author: David Teigland Date: Wed Apr 26 15:56:35 2006 -0400 [DLM] lock_dlm recover_status patch This saves the journal recovery result and makes it visible through sysfs. User space needs to know if the node actually recovered the journal or tried and gave up. Signed-off-by: David Teigland Signed-off-by: Steven Whitehouse commit 579b78a43b366d51f9c888afaf1eab1f4ea599fa Author: Steven Whitehouse Date: Wed Apr 26 14:58:26 2006 -0400 [GFS2] Remove GL_NEVER_RECURSE flag There is no point in keeping this flag since recursion is not now allowed for any glock. Signed-off-by: Steven Whitehouse commit 5965b1f4792a1a9364b4e1ed6be8778a50eb981b Author: Steven Whitehouse Date: Wed Apr 26 13:21:55 2006 -0400 [GFS2] Don't do recursive locking in glock layer This patch changes the last user of recursive locking so that it no longer needs this feature and removes it from the glock layer. This makes the glock code a lot simpler and easier to understand. Its also a prerequsite to adding support for the AOP_TRUNCATED_PAGE return code (or at least it is if you don't want your brain to melt in the process) I've left in a couple of checks just in case there is some place else in the code which is still using this feature that I didn't spot yet, but they can probably be removed long term. Signed-off-by: Steven Whitehouse commit 3a2a9c96ac129d17aad1a5c46988ad28f72564b0 Author: David Teigland Date: Tue Apr 25 15:45:51 2006 -0400 [GFS2] Update plock code in DLM locking module We should be using fl_pid not fl_owner. Signed-off-by: David Teigland Signed-off-by: Steven Whitehouse commit 373b5a453255b6a013b9d20116918f09a1ceeccc Author: David Teigland Date: Tue Apr 25 15:44:04 2006 -0400 [GFS2] Update documentation Updated information on the GFS2 tools Signed-off-by: David Teigland Signed-off-by: Steven Whitehouse commit 714dc65c34385afbc21342f5bee8d0d25027ac9a Author: Patrick Caulfield Date: Tue Apr 25 14:49:01 2006 -0400 [DLM] Convert a semaphore to a completion Convert a semaphore into a completion in device.c. Cc: David Teigland Cc: Andrew Morton Signed-off-by: Patrick Caulfield Signed-off-by: Steven Whitehouse commit 96c2c0083d76ca80d546a53089c86e74fbfbe791 Author: Steven Whitehouse Date: Tue Apr 25 13:23:09 2006 -0400 [DLM] Update Kconfig in the light of comments on lkml We now depend on user selectable options rather than select them. There is no dependancy on SYSFS since this selection is independant of the DLM (even though it wouldn't be sensible to build the DLM without it) Signed-off-by: Steven Whitehouse commit 4bcf7091f9da595016f9d1175aa1bea8e736566f Author: Steven Whitehouse Date: Tue Apr 25 13:20:27 2006 -0400 [GFS2] Remove inherited flags from exported flags. We don't need the inherited flags since this action can be implied by setting the flags on directories where they wouldn't otherwise make sense. It reduces the number of extra flags by two. Also updated the list of flags to take account of one extra ext2/3 flag. Cc: Andreas Dilger Signed-off-by: Steven Whitehouse commit b5ea3e1ef307548bdd40fff6aba5fc96b002f284 Author: Steven Whitehouse Date: Mon Apr 24 14:14:42 2006 -0400 [GFS2] Tidy up Makefile & Kconfig Remove select of SYSFS as requested by Greg KH. Change whitespace to tabs rather than spaces in places where it was incorrect and removed 'default m' as suggested by Adrian Bunk. Reorganised Makefile as suggested by Sam Ravnborg. Cc: Sam Ravnborg Cc: Adrian Bunk Cc: Greg KH Signed-off-by: Steven Whitehouse commit b800a1cb3940f216c4e5c963007a1f72fca0f15f Author: Steven Whitehouse Date: Mon Apr 24 13:13:56 2006 -0400 [GFS2] Tidy up daemon.c As per Andrew Morton's comments, remove uneeded casts and use wait_event_interruptible() rather than open code the wait. Cc: Andrew Morton Signed-off-by: Steven Whitehouse commit 61e085a88cb59232eb8ff5b446d70491c7bf2c68 Author: Steven Whitehouse Date: Mon Apr 24 10:07:13 2006 -0400 [GFS2] Tidy up dir code as per Christoph Hellwig's comments 1. Comment whitespace fix 2. Removed unused header files from dir.c 3. Split the gfs2_dir_get_buffer() function into two functions Cc: Christoph Hellwig Signed-off-by: Steven Whitehouse commit 1e09ae544eb1a2d11b04c6924f738a310c7a7a2b Author: Steven Whitehouse Date: Fri Apr 21 15:52:46 2006 -0400 [GFS2] Move BUG() back into the header file In order to make the file and line number reporting work correctly, this has been moved back into the header file. Signed-off-by: Steven Whitehouse commit 1dde2dbfc70001e2f86b6581baac2f48900b80ed Author: Steven Whitehouse Date: Fri Apr 21 15:39:02 2006 -0400 [GFS2] Add back missing BUG() Signed-off-by: Steven Whitehouse commit a74604bee27da7c9506114e5710f91f388e98296 Author: Steven Whitehouse Date: Fri Apr 21 15:10:46 2006 -0400 [GFS2] sem -> mutex conversion in locking.c Convert a semaphore to a mutex in locking.c and also tidy up one or two loose ends. Signed-off-by: Steven Whitehouse commit c63e31c2cc1ec67372920b5e1aff8204d04dd172 Author: David Teigland Date: Thu Apr 20 17:03:48 2006 -0400 [GFS2] journal recovery patch This is one of the changes related to journal recovery I mentioned a couple weeks ago. We can get into a situation where there are only readonly nodes currently mounting the fs, but there are journals that need to be recovered. Since the readonly nodes can't recover journals, the next rw mounter needs to go through and check all journals and recover any that are dirty (i.e. what the first node to mount the fs does). This rw mounter needs to skip the journals held by the existing readonly nodes. Skipping those journals amounts to using the TRY flag on the journal locks so acquiring the lock of a journal held by a readonly node will fail instead of blocking indefinately. Signed-off-by: David Teigland Signed-off-by: Steven Whitehouse commit 190562bd84a484bf6590425aa2bb4d6d611c112b Author: Steven Whitehouse Date: Thu Apr 20 16:57:23 2006 -0400 [GFS2] Fix a bug: scheduling under a spinlock At some stage, a mutex was added to gfs2_glock_put() without checking all its call sites. Two of them were called from under a spinlock causing random delays at various points and crashes. Signed-off-by: Steven Whitehouse commit fe1bdedc6c16adedc6fd3636185ea91596b1d6eb Author: Steven Whitehouse Date: Tue Apr 18 10:09:15 2006 -0400 [GFS2] Use vmalloc() in dir code When allocating memory to sort directory entries, use vmalloc() rather than kmalloc() since for larger directories, the required size can easily be graeter than the 128k maximum of kmalloc(). Also adding the first steps towards getting the AOP_TRUNCATED_PAGE return code get in the glock code by flagging all places where we request a glock and we are holding a page lock. Signed-off-by: Steven Whitehouse commit 4d8012b60e0f0e0217e65f67da7d97276d1824e9 Author: Steven Whitehouse Date: Wed Apr 12 17:39:45 2006 -0400 [GFS2] Fix bug which was causing postmark to fail A typo in the directory code was causing postmark to fail somewhere in the allocation code, since it was unable to find newly allocated directory leaf blocks under certain circumstances. Signed-off-by: Steven Whitehouse commit f4154ea039bbf45c52840b30c68143a2dc28d4b4 Author: Steven Whitehouse Date: Tue Apr 11 14:49:06 2006 -0400 [GFS2] Update journal accounting code. A small update to the journaling code to change the way that the "extra" blocks are accounted for in the journal. These are used at a rate of one per 503 metadata blocks or one per 251 journaled data blocks (or just one if the total number of journaled blocks in the transaction is smaller). Since we are using them at two different rates the old method of accounting for them no longer works and we count them up as required. Since the "per transaction" accounting can't handle this (there is no fixed number of header blocks per transaction) we have to account for it in the general journal code. We now require that each transaction reserves more blocks than it actually needs to take account of the possible extra blocks. Also a final fix to dir.c to ensure that all ref counts are handled correctly. Signed-off-by: Steven Whitehouse commit ed3865079b573ef55dc13ab0bfb242ed5ebab4c1 Author: Steven Whitehouse Date: Fri Apr 7 16:28:07 2006 -0400 [GFS2] Finally get ref counting correct The last patch missed some other instances of incorrect ref counting, this fixes all of those too. Signed-off-by: Steven Whitehouse commit b09e593d799560f1a0782c20ac5900058390a26f Author: Steven Whitehouse Date: Fri Apr 7 11:17:32 2006 -0400 [GFS2] Fix a ref count bug and other clean ups This fixes a ref count bug that sometimes showed up a umount time (causing it to hang) but it otherwise mostly harmless. At the same time there are some clean ups including making the log operations structures const, moving a memory allocation so that its not done in the fast path of checking to see if there is an outstanding transaction related to a particular glock. Removes the sd_log_wrap varaible which was updated, but never actually used anywhere. Updates the gfs2 ioctl() to run without the kernel lock (which it never needed anyway). Removes the "invalidate inodes" loop from GFS2's put_super routine. This is done in kill super anyway so we don't need to do it here. The loop was also bogus in that if there are any inodes "stuck" at this point its a bug and we need to know about it rather than hide it by hanging forever. Signed-off-by: Steven Whitehouse commit 55eccc6d00cea224bf634d44e9871cfe83200ff2 Author: Steven Whitehouse Date: Tue Apr 4 14:29:30 2006 -0400 [GFS2] Finish off ioctl support This puts the finishing touches to the ioctl support and also removes a couple of unused fields from GFS2's private per file structure. Signed-off-by: Steven Whitehouse commit 8628de0583504138551a05ad44ca388467f0f552 Author: Steven Whitehouse Date: Fri Mar 31 16:48:41 2006 -0500 [GFS2] Update GFS2 for the recent pull from Linus Some interfaces have changed. In particular one of the posix locking functions has changed prototype, along with the address space operation invalidatepage and the block getting callback to the direct IO function. In addition add the splice file operations. These will need to be updated to support AOP_TRUNCATED_PAGE before they will be of much use to us. Signed-off-by: Steven Whitehouse commit 7ea9ea832212c4a755650f7c7cc1ff0b63292a41 Author: Steven Whitehouse Date: Fri Mar 31 15:01:28 2006 -0500 [GFS2] Update ioctl() to new interface This is designed as a fs independent way to set flags on a particular inode. The values of the ioctl() and flags are designed to be identical to the ext2/3 values. Assuming that this plan is acceptable to people in general, the plan is to then move other fs across to using the same set of #defines, etc. Signed-off-by: Steven Whitehouse commit e3167ded1f1b16424bc14d5673cdc5414f179970 Author: Steven Whitehouse Date: Thu Mar 30 15:46:23 2006 -0500 [GFS] Fix bug in endian conversion for metadata header In some cases 16 bit functions were being used rather than 32 bit functions. Signed-off-by: Steven Whitehouse commit cd45697f0ddbb58f3f83c29fe164713ee7765e21 Author: Steven Whitehouse Date: Thu Mar 30 11:10:12 2006 -0500 [GFS2] Add missing {} in trans.c A conditional had missing {} around the two following statements. Now added. Signed-off-by: Steven Whitehouse commit e90deff5336ac500c65f873484c326cfa8a9d379 Author: Steven Whitehouse Date: Wed Mar 29 19:02:15 2006 -0500 [GFS2] Fix bug in directory expansion code We didn't properly check that leaf splitting was allowed. We do now. Signed-off-by: Steven Whitehouse commit d0dc80dbafb5c10ad2084831a61bbf945484a139 Author: Steven Whitehouse Date: Wed Mar 29 14:36:49 2006 -0500 [GFS2] Update debugging code Update the debugging code in trans.c and at the same time improve the debugging code for gfs2_holders. The new code should be pretty fast during the normal case and provide just as much information in case of errors (or more). One small function from glock.c has moved to glock.h as a static inline so that its return address won't get in the way of the debugging. Signed-off-by: Steven Whitehouse commit 484adff8a06cb5d952832f5487ae863f54c0fb69 Author: Steven Whitehouse Date: Wed Mar 29 09:12:12 2006 -0500 [GFS2] Update locking in log.c Replace the lock_for_trans()/lock_for_flush() functions with an rwsem. In fact the sd_log_flush_lock becomes an rwsem (the write part of it) and is extended slightly to cover everything that the lock_for_flush() used to cover. The read part of the lock is instead of lock_for_trans(). This corrects the races in the original code and reduces the code size. Signed-off-by: Steven Whitehouse commit 7aabffcab47a0f881c7640f5c108e8d3f2e35ebf Author: David Teigland Date: Tue Mar 28 14:20:58 2006 -0500 [DLM] Look for "nodir" in the lockspace mount options Look for "nodir" in the hostdata mount option which is used to set the NODIR flag in dlm_new_lockspace(). Signed-off-by: David Teigland Signed-off-by: Steven Whitehouse commit 71b86f562b5eb6f94ea00bba060caa64d0137969 Author: Steven Whitehouse Date: Tue Mar 28 14:14:04 2006 -0500 [GFS2] Further updates to dir and logging code This reduces the size of the directory code by about 3k and gets readdir() to use the functions which were introduced in the previous directory code update. Two memory allocations are merged into one. Eliminates zeroing of some buffers which were never used before they were initialised by other data. There is still scope for further improvement in the directory code. On the logging side, a hand created mutex has been replaced by a standard Linux mutex in the log allocation code. Signed-off-by: Steven Whitehouse commit 94aabbd99370f738da4f6cb4ea0b94cd9024002f Author: Steven Whitehouse Date: Tue Mar 21 11:29:00 2006 -0500 [GFS2] Remove ioctl support The various flags on inodes will in future be set and queried via the extended attributes interface, so this interface is no longer required. Signed-off-by: Steven Whitehouse commit c752666c17f870fa8ae9f16804dd457e9e6daaec Author: Steven Whitehouse Date: Mon Mar 20 12:30:04 2006 -0500 [GFS2] Fix bug in directory code and tidy up Due to a typo, the dir leaf split operation was (for the first split in a directory) writing the new hash vaules at the wrong offset. This is now fixed. Also some other tidy ups are included: - We use GFS2's hash function for dentries (see ops_dentry.c) so that we don't have to keep recalculating the hash values. - A lot of common code is eliminated between the various directory lookup routines. - Better error checking on directory lookup (previously different routines checked for different errors) - The leaf split operation has a couple of redundant operations removed from it, so it should be faster. There is still further scope for further clean ups in the directory code, and readdir in particular could do with slimming down a bit. Signed-off-by: Steven Whitehouse commit 419c93e0b6b9eef0bf26b8ad415f2a5bf4300119 Author: Steven Whitehouse Date: Thu Mar 2 16:33:41 2006 -0500 [GFS2] Add gfs2meta filesystem In order to separate out the filesystem's metadata from "normal" files and directories, a new filesystem type has been created. It is called gfs2meta and mounting it gives access to the files that were previously under .gfs2_admin (well still are until mkfs is altered, which is next on the adgenda). Its not currently possible to mount both gfs2 and gfs2meta on the same block device at the same time. A future patch will allow that to happen. Signed-off-by: Steven Whitehouse commit b4dc72911d149d7d6b7ffb512bd68906f1cbd33a Author: Steven Whitehouse Date: Wed Mar 1 17:41:58 2006 -0500 [GFS2] Fix some bugs Fix a bug I introduced earlier with a kfree() and usage of a structure in the wrong order. Also try and get the counts of the journaled data buffers "more correct". Still some work to do in this area though. Signed-off-by: Steven Whitehouse commit c9fd43078f5007c6ca6b3a9cd04c51a8f0e44a20 Author: Steven Whitehouse Date: Wed Mar 1 15:31:02 2006 -0500 [GFS2] Tidy up mount code. We no longer lookup ".gfs2_admin" in the root directory in order to find it, but instead use the inode number given in the superblock. Both the root directory and the admin directory are now looked up using the same routine, so the redundant code is removed. Also, there is no longer a reference to the root inode in the GFS2 super block. When required this can be retreived via sb->s_root->d_inode instead. Assuming that we introduce a metadata filesystem type for GFS, then this is a first step towards that goal. Signed-off-by: Steven Whitehouse commit e317ffcb7cc26c5e80cab97160a5e2761a4436ec Author: Steven Whitehouse Date: Wed Mar 1 11:39:37 2006 -0500 [GFS2] Remove uneeded memory allocation For every filesystem operation where we need a transaction, we now make one less memory allocation. Signed-off-by: Steven Whitehouse commit b3f58d8f2b1200f1b9abbcfb9dec6c25bc787469 Author: David Teigland Date: Tue Feb 28 11:16:37 2006 -0500 [DLM] Pass in lockspace to lkb put function In some cases a lockspace isn't attached to the lkb, so that it needs to be passed directly to the lkb put function. Signed-off-by: David Teigland Signed-off-by: Steven Whitehouse commit 5c676f6d359b0404d53f542f02e1359583cb2895 Author: Steven Whitehouse Date: Mon Feb 27 17:23:27 2006 -0500 [GFS2] Macros removal in gfs2.h As suggested by Pekka Enberg . The DIV_RU macro is renamed DIV_ROUND_UP and and moved to kernel.h The other macros are gone from gfs2.h as (although not requested by Pekka Enberg) are a number of included header file which are now included individually. The inode number comparison function is now an inline function. The DT2IF and IF2DT may be addressed in a future patch. Signed-off-by: Steven Whitehouse commit 116ad29d9839610d2811a1962cac7f3f2a9f9295 Author: Steven Whitehouse Date: Mon Feb 27 12:11:18 2006 -0500 [GFS2] Remove pointless comment from nolock/main.c As requested by: Pavel Machek Pavel's other comments will be dealt with in later patches. Signed-off-by: Steven Whitehouse commit f382894e8889a64f8daf747db477a16da2d54eb0 Author: Steven Whitehouse Date: Mon Feb 27 12:07:05 2006 -0500 [GFS2] 80 Column audit of locking modules Requested by: Prarit Bhargava Signed-off-by: Steven Whitehouse commit 568f4c9659a2225b0d29cf86feecbcf25c9045c8 Author: Steven Whitehouse Date: Mon Feb 27 12:00:42 2006 -0500 [GFS2] 80 Column audit of GFS2 Requested by: Prarit Bhargava Signed-off-by: Steven Whitehouse commit 3a8fe9be6c9794e55ac2253eab91d42b28a9dab6 Author: Steven Whitehouse Date: Mon Feb 27 11:00:37 2006 -0500 [GFS2] Use BUG_ON() rather then if (...) BUG(); This issue was raised by: Eric Sesterhenn Signed-off-by: Steven Whitehouse commit d92a8d48085df863032110d9ccb221cde98d14e1 Author: Steven Whitehouse Date: Mon Feb 27 10:57:14 2006 -0500 [GFS2] Audit printk and kmalloc All printk calls now have KERN_ set where required and a couple of kmalloc(), memset(.., 0, ...) calls changed to kzalloc(). This is in response to comments from: Pekka Enberg and Eric Sesterhenn Signed-off-by: Steven Whitehouse commit 2fcb4a1278ec41508d76786f4c5d23bff3b378ee Author: Steven Whitehouse Date: Fri Feb 24 10:42:20 2006 -0500 [GFS2] Update documentation Change from gfs2_mkfs to mkfs -t gfs2 in the documentation. Signed-off-by: Steven Whitehouse commit d95cb943f5b217c5b5f97f5af0fea3c511ed9c97 Author: David Teigland Date: Thu Feb 23 10:13:13 2006 +0000 [GFS2] Patch to remove stats counters from GFS2 (II) Signed-off-by: David Teigland Signed-off-by: Steven Whitehouse commit 6a6b3d018f4781f108d170f2181281a3c5589dc8 Author: David Teigland Date: Thu Feb 23 10:11:47 2006 +0000 [GFS2] Patch to remove stats gathering from GFS2 Signed-off-by: David Teigland Signed-off-by: Steven Whitehouse commit 8d3b35a4af87965d1873872b21e504558f62116a Author: David Teigland Date: Thu Feb 23 10:00:56 2006 +0000 [DLM] Remove support for range locks (II) This is the second of two patches removing support for range locks from the DLM Signed-off-by: David Teigland Signed-off-by: Steven Whitehouse commit 3bcd3687f895f178fa8480a7bcc47a363817354a Author: David Teigland Date: Thu Feb 23 09:56:38 2006 +0000 [DLM] Remove range locks from the DLM This patch removes support for range locking from the DLM Signed-off-by: David Teigland Signed-off-by: Steven Whitehouse commit 91ffd7db71e7451f89941a8f428b4daa2a7c1e38 Author: Steven Whitehouse Date: Wed Feb 22 16:41:45 2006 +0000 [GFS2] Missed deletion of debugging code One line which should have been deleted in the last patch was missed. Signed-off-by: Steven Whitehouse commit 13538b8e46022b6a3721cda097fe3e0d91f16959 Author: Steven Whitehouse Date: Wed Feb 22 11:15:03 2006 +0000 [GFS2] Add list empty test to databuf_lo_add Heinz had spotted that I'd forgotten to test in databuf_lo_add() that the data buffer in question hadn't already been added to the list. This was causing an infinite loop later on in the "before commit" routine. This means that GFS2 is now ready to be tested by everybody. Signed-off-by: Steven Whitehouse commit f55ab26a8f92a23988c3e6da28dae4741933a4e2 Author: Steven Whitehouse Date: Tue Feb 21 12:51:39 2006 +0000 [GFS2] Use mutices rather than semaphores As well as a number of minor bug fixes, this patch changes GFS to use mutices rather than semaphores. This results in better information in case there are any locking problems. Signed-off-by: Steven Whitehouse commit 5c4e9e036678fae65c9288e1c00a6f33cd447283 Author: Steven Whitehouse Date: Wed Feb 15 12:26:19 2006 +0000 [GFS2] Fix a case where we didn't get unstuffing right There was a bug in the unstuffing logic which caused a crash under certain circumstances. This is now fixed. Signed-off-by: Steven Whitehouse commit 61a30dcb5866eb7e92796b2988ddb4c94b9f78ac Author: Steven Whitehouse Date: Wed Feb 15 10:15:18 2006 +0000 [GFS2] Fix for lock recursion problem for internal files Two internal files which are read through the gfs2_internal_read() routine were already locked when the routine was called and this do not need locking at the redapages level. This patch introduces a struct file which is used as a sentinal so that readpage will only perform locking in the case that the struct file passed to it is _not_ equal to this sentinal. Since the comments in the generic kernel code indicate that the struct file will never be used for anything other than passing straight through to readpage(), this should be ok. Signed-off-by: Steven Whitehouse commit 4dd651adbb4898d3200426c197b26c99d2209d8d Author: Steven Whitehouse Date: Tue Feb 14 15:56:44 2006 +0000 [GFS2] Fix the bugs I introduced in the last patch but one Various endianess changes required in the directory code. Signed-off-by: Steven Whitehouse commit d1665e414297c3a46fd80cb8242ad0c8e82acae7 Author: Steven Whitehouse Date: Tue Feb 14 11:54:42 2006 +0000 [GFS2] Put back O_DIRECT support This patch adds back O_DIRECT support with various caveats attached: 1. Journaled data can be read via O_DIRECT since its now the same on disk format as normal data files. 2. Journaled data writes with O_DIRECT will be failed sliently back to normal writes (should we really do this I wonder or should we return an error instead?) 3. Stuffed files will be failed back to normal buffered I/O 4. All the usual corner cases (write beyond current end of file, write to an unallocated block) will also revert to normal buffered I/O. The I/O path is slightly odd as reads arrive at the page cache layer with the lock for the file already held, but writes arrive unlocked. Signed-off-by: Steven Whitehouse commit fc69d0d336214219abb521d8ff060f786d7f369e Author: Steven Whitehouse Date: Mon Feb 13 16:21:47 2006 +0000 [GFS2] Change ondisk format (hopefully for the last time) There were one or two fields in structures which didn't get changed last time back to their gfs1 sizes and alignments. One or two constants have also changed back to their original values which were missed the first time. Its possible that indirect pointer blocks might need to change. If they don't we'll have to rewrite them all on upgrade due to a change in the amount of padding that they use. Signed-off-by: Steven Whitehouse commit 7359a19cc758946aba0e45233b8641256b194884 Author: Steven Whitehouse Date: Mon Feb 13 12:27:43 2006 +0000 [GFS2] Fix for root inode ref count bug Umount is now working correctly again. The bug was due to not getting an extra ref count when mounting the fs. We should have bumped it by two (once for the internal pointer to the root inode from the super block and once for the inode hanging off the dcache entry for root). Also this patch tidys up the code dealing with looking up and creating inodes. We now pass Linux inodes (with gfs2_inodes attached) rather than the other way around and this reduces code duplication in various places. Signed-off-by: Steven Whitehouse commit 18ec7d5c3f434aed9661ed10a9e1f48cdeb4981d Author: Steven Whitehouse Date: Wed Feb 8 11:50:51 2006 +0000 [GFS2] Make journaled data files identical to normal files on disk This is a very large patch, with a few still to be resolved issues so you might want to check out the previous head of the tree since this is known to be unstable. Fixes for the various bugs will be forthcoming shortly. This patch removes the special data format which has been used up till now for journaled data files. Directories still retain the old format so that they will remain on disk compatible with earlier releases. As a result you can now do the following with journaled data files: 1) mmap them 2) export them over NFS 3) convert to/from normal files whenever you want to (the zero length restriction is gone) In addition the level at which GFS' locking is done has changed for all files (since they all now use the page cache) such that the locking is done at the page cache level rather than the level of the fs operations. This should mean that things like loopback mounts and other things which touch the page cache directly should now work. Current known issues: 1. There is a lock mode inversion problem related to the resource group hold function which needs to be resolved. 2. Any significant amount of I/O causes an oops with an offset of hex 320 (NULL pointer dereference) which appears to be related to a journaled data buffer appearing on a list where it shouldn't be. 3. Direct I/O writes are disabled for the time being (will reappear later) 4. There is probably a deadlock between the page lock and GFS' locks under certain combinations of mmap and fs operation I/O. 5. Issue relating to ref counting on internally used inodes causes a hang on umount (discovered before this patch, and not fixed by it) 6. One part of the directory metadata is different from GFS1 and will need to be resolved before next release. Signed-off-by: Steven Whitehouse commit 257f9b4e97e9a6cceeb247cead92119a4396d37b Author: Steven Whitehouse Date: Tue Jan 31 10:00:25 2006 +0000 [GFS2] Update truncate function (shrinking partial blocks) Update the function in GFS2 which deals with truncation of partial blocks. Some of the code is "borrowed" from ext3 since it appears to give a good model of how to do this operation. The function is renamed gfs2_block_truncate_page accordingly. Signed-off-by: Steven Whitehouse commit f42faf4fa4eaf7e108dd60f3f2ca5c6e9b45352c Author: Steven Whitehouse Date: Mon Jan 30 18:34:10 2006 +0000 [GFS2] Add gfs2_internal_read() Add the new external read function. Its temporarily in jdata.c even though the protoype is in ops_file.h - this will change shortly. The current implementation will change to a page cache one when that happens. In order to effect the above changes, the various internal inodes now have Linux inodes attached to them. We keep the references to the Linux inodes, rather than the gfs2_inodes in the super block. In order to get everything to work correctly I've had to reorder the init sequence on mount (which I should probably have done earlier when .gfs2_admin was made visible). Signed-off-by: Steven Whitehouse commit fd2ee6bb1ef02dfe1f1e1f5b44322e0854596e9a Author: Steven Whitehouse Date: Mon Jan 30 13:36:53 2006 +0000 [GFS2] Remove unused prototype Signed-off-by: Steven Whitehouse commit e13940ba56157a663944f2a827be96b6b787e260 Author: Steven Whitehouse Date: Mon Jan 30 13:31:50 2006 +0000 [GFS2] Make dir.c independant of jdata.c Copy & rename various jdata functions into dir.c. The plan being that directory metadata format will not change although the journalled data format for "normal" files will change. Signed-off-by: Steven Whitehouse commit 9b124fbb8ddb3d0b17f5a807414d85cbaf527a56 Author: Steven Whitehouse Date: Mon Jan 30 11:55:32 2006 +0000 [GFS2] Use mpage_readpage() in gfs2_readpage() Signed-off-by: Steven Whitehouse commit 2442a098be6b38ee3abe8edda3224b48ff4d604a Author: Steven Whitehouse Date: Mon Jan 30 11:49:32 2006 +0000 [GFS2] Bug fix relating to endian conversion in inode.c A two line fix to get endian conversion correct. Signed-off-by: Steven Whitehouse commit 4ff14670ee2a8229381ff295eaae84aa51beff43 Author: Steven Whitehouse Date: Mon Jan 30 09:39:10 2006 +0000 [GFS2] Rename get_block and make it extern This renames get_block to gfs2_get_block and makes it accessible from outside ops_address.c. Signed-off-by: Steven Whitehouse commit c25ec8f5684cb3c5dde6a67c1bbc33a449eefbe2 Author: Steven Whitehouse Date: Mon Jan 30 08:57:31 2006 +0000 [GFS2] Export file_read_actor Export file_read_actor so that it can be used from modules since functions which take this function as an argument are already exported. Signed-off-by: Steven Whitehouse commit d41cc702cc4ba3782ebe3b2e189633607d5ccd6a Author: Steven Whitehouse Date: Mon Jan 30 08:53:33 2006 +0000 [GFS2] Export file_ra_state_init Export file_ra_state_init so that its possible to use the already exported functions which require a struct ra_state as an argument from a module. Signed-off-by: Steven Whitehouse commit b381beadee8a3d6e690d30bdccddd08ab024945e Author: Steven Whitehouse Date: Mon Jan 30 08:47:14 2006 +0000 [GFS2] Remove unused file resize.c The code in this file is no longer used as the rindex file is now accessible to userspace, so can be read/written directly. Signed-off-by: Steven Whitehouse commit aa6a85a971065b013a71a399c3fc4312e2dd81eb Author: Steven Whitehouse Date: Tue Jan 24 10:37:06 2006 +0000 [GFS2] Remove pointless argument relating to truncate For some reason a function pointer was being passed through the truncate code which only ever took one value. This removes the function pointer and replaces it with a single call to the function in question. Signed-off-by: Steven Whitehouse commit 8ca05c60de49c3bb523a435abc216b6b6eeb1067 Author: David Teigland Date: Tue Jan 24 10:03:04 2006 +0000 [GFS2] Update ioctl() numbering to use official numbers. This patch adds us into the official ioctl-number.txt registry and updates GFS2 accordingly. Signed-off-by: David Teigland Signed-off-by: Steven Whitehouse commit 901359256b2666f52a3a7d3f31927677e91b3a2a Author: David Teigland Date: Fri Jan 20 08:47:07 2006 +0000 [DLM] Update DLM to the latest patch level Signed-off-by: David Teigland Signed-off-by: Steve Whitehouse commit ec5800246607183a1d7fd0bae5f087c12439e9e7 Author: David Teigland Date: Wed Jan 18 14:21:40 2006 +0000 [DLM] Export config_group_find_obj for use by the DLM Signed-off-by: David Teigland Signed-off-by: Steven Whitehouse commit a98ab2204f8ed414c5e95fbca28a9f001c53bc7b Author: Steven Whitehouse Date: Wed Jan 18 13:38:44 2006 +0000 [GFS2] Rename gfs2_meta_pin to gfs2_pin Since we'll need to pin data if we are going to journal it, then I'm renaming this function to make it less confusing. It might also be worth moving it into lops.c since there are no users outside that file. Signed-off-by: Steven Whitehouse commit 4f3df04137d426a0ad1758ab744f5b6d658617bf Author: Steven Whitehouse Date: Wed Jan 18 13:20:16 2006 +0000 [GFS2] Change memory allocations to GFP_NOFS I'd like to be rid of these memory allocations entirely so far as is possible. For the moment though, mark them GFP_NOFS to make them less harmful. Signed-off-by: Steven Whitehouse commit 64fb4eb7d4cc9de89f4d9b9061adde46ed3b5641 Author: Steven Whitehouse Date: Wed Jan 18 13:14:40 2006 +0000 [GFS2] Remove gfs2_databuf in favour of gfs2_bufdata structure Removing the gfs2_databuf structure and using gfs2_bufdata instead is a step towards allowing journaling of data without requiring the metadata header on each journaled block. The idea is to merge the code paths for ordered data with that of journaled data, with the log operations in lops.c tacking account of the different types of buffers as they are presented to it. Largely the code path for metadata will be similar too, but obviously through a different set of log operations. Signed-off-by: Steven Whitehouse commit 586dfdaaf328d79bb356d760db963b03a75a4131 Author: Steven Whitehouse Date: Wed Jan 18 11:32:00 2006 +0000 [GFS2] Make the new argument to gfs2_trans_add_bh() actually do something Passes the flag through to ensure that the correct log operations are invoked when the flag is set. Signed-off-by: Steven Whitehouse: commit d4e9c4c3bf861ef2ac96e0de659c75a00da92b28 Author: Steven Whitehouse Date: Wed Jan 18 11:19:28 2006 +0000 [GFS2] Add an additional argument to gfs2_trans_add_bh() This adds an extra argument to gfs2_trans_add_bh() to indicate whether the bh being added to the transaction is metadata or data. Its currently unused since all existing callers set it to 1 (metadata) but following patches will make use of it. Signed-off-by: Steven Whitehouse commit b96ca4fa4e3b510d528a093a5bac0befbc2ba46d Author: Steven Whitehouse Date: Wed Jan 18 10:57:10 2006 +0000 [GFS2] Update init_dinode() to reduce stack usage We no longer allocate a dinode on the stack in init_dinode() and we no longer use gfs2_dinode_out (eliminating one copy) and gfs2_meta_header_in (eliminating another copy). The meta_header_in fucntion is now no longer referenced from outside gfs2_ondisk.c, so make it static. Signed-off-by: Steven Whitehouse commit 3bd7662c4de28522d4709ab5a56033e3c33e1d4a Author: Steven Whitehouse Date: Wed Jan 18 10:40:17 2006 +0000 [GFS2] Remove unused code from ondisk.c/gfs2_ondisk.h Removal of unused conversion functions from ondisk.c and gfs2_ondisk.h Signed-off-by: Steven Whitehouse commit 666a2c534cc6238932296a95c9e9c06ca3b73d97 Author: Steven Whitehouse Date: Wed Jan 18 10:29:04 2006 +0000 [GFS2] Remove unused code from various files Signed-off-by: Steven Whitehouse commit c73530a1f9633b2e7e6e19d0274b575febf8e8dc Author: David Teigland Date: Wed Jan 18 10:11:51 2006 +0000 [GFS2] Remove remains of the GFS2 identify ioctl() We don't need this ioctl, we can use stat() to gain the same information. Signed-off-by: Steven Whitehouse commit 5ddec5b3d79eed6df1a37be435f183915a4b696a Author: David Teigland Date: Wed Jan 18 09:34:14 2006 +0000 [GFS2] Only two args for kobject_uevent() in locking/dlm/mount.c Update the dlm interface module to take account of the recently removed third argument to kobject_uevent() Signed-off-by: David Teigland Signed-off-by: Steve Whitehouse commit e7fd41792fc0ee52a05fcaac87511f118328d147 Author: David Teigland Date: Wed Jan 18 09:30:29 2006 +0000 [DLM] The core of the DLM for GFS2/CLVM This is the core of the distributed lock manager which is required to use GFS2 as a cluster filesystem. It is also used by CLVM and can be used as a standalone lock manager independantly of either of these two projects. It implements VAX-style locking modes. Signed-off-by: David Teigland Signed-off-by: Steve Whitehouse commit e47314207032cfd1157b8c377df162839b32ea6f Author: David Teigland Date: Wed Jan 18 09:21:38 2006 +0000 [GFS2] Add documentation for GFS2 Signed-off-by: David Teigland Signed-off-by: Steve Whitehouse commit cd1344fe322cd9d95b2c0f011d6766677cfcb29b Author: David Teigland Date: Wed Jan 18 08:53:38 2006 +0000 [GFS2] Remove unused ioctls and unused structure Signed-off-by: David Teigland Signed-off-by: Steven Whitehouse commit 869d81df53ad28ce78fc92504b3365b8196a2fa1 Author: David Teigland Date: Tue Jan 17 08:47:12 2006 +0000 [GFS2] An update of the GFS2 lock modules This brings the lock modules uptodate and removes the stray .mod.c file which accidently got included in the last check in. Signed-off-by: David Teigland Signed-off-by: Steven Whitehouse commit a8f2d64728d8b706392fc1cb0f2fd6852a5e27ae Author: David Teigland Date: Tue Jan 17 08:36:49 2006 +0000 [GFS2] Fix typo in GFS2 Makefile A two line fix to the GFS2 Makefile. Signed-off-by: David Teigland Signed-off-by: Steve Whitehouse commit 29b7998d887529eca1ef43c8ca7b278448dc983c Author: David Teigland Date: Mon Jan 16 16:52:38 2006 +0000 [GFS2] The lock modules for GFS2 This patch contains the pluggable locking modules for GFS2. Signed-off-by: David Teigland Signed-off-by: Steven Whitehouse commit b3b94faa5fe5968827ba0640ee9fba4b3e7f736e Author: David Teigland Date: Mon Jan 16 16:50:04 2006 +0000 [GFS2] The core of GFS2 This patch contains all the core files for GFS2. Signed-off-by: David Teigland Signed-off-by: Steven Whitehouse commit f7825dcf8c7301cfd3724eb40c5b443cc85ab7b8 Author: David Teigland Date: Mon Jan 16 16:43:37 2006 +0000 [GFS2] Hook GFS2 into the Kbuild system Adds GFS2 into fs/Kconfig and adds a Makefile entry Signed-off-by: David Teigland Signed-off-by: Steven Whitehouse commit fba7b940194465ac7a8f0cdf793959fb5fbb8834 Author: David Teigland Date: Mon Jan 16 11:48:01 2006 +0000 [PATCH] Add fs_subsys to enable filesystems to use sysfs This creates an "fs" subdirectory in sysfs so that GFS2 (or any other filesystem, come to that) can make use of sysfs. Signed-off-by: David Teigland Signed-off-by: Steven Whitehouse commit b346671fa196abaf82ed3e1842f981209f7887af Author: Steven Whitehouse Date: Mon Jan 16 11:31:24 2006 +0000 [PATCH] Export tty_write_message() for GFS2 quota code The kernel's existing quota code makes use of tty_write_message() to inform the user of certain events. GFS2 also uses the same mechanism so we export it here to avoid code duplication in GFS2. Signed-off-by: Steven Whitehouse