commit 5bee17f18b595937e6beafeee5197868a3f74a06 Author: Kyle McMartin Date: Sat Mar 14 19:40:59 2009 -0400 parisc: sba_iommu: fix build bug when CONFIG_PARISC_AGP=y CC drivers/parisc/sba_iommu.o drivers/parisc/sba_iommu.c:1373: error: expected identifier or '(' before '}' token make[2]: *** [drivers/parisc/sba_iommu.o] Error 1 make[1]: *** [drivers/parisc] Error 2 make: *** [drivers] Error 2 Don't know how this has gone missed for so long... clearly I need to do builds on my C8000 more often. Signed-off-by: Kyle McMartin Signed-off-by: Linus Torvalds commit fbd8104c2eb2f00a031a3e472a0fc08e40d04c0b Merge: 18553c3... 1522ac3... Author: Linus Torvalds Date: Sun Mar 15 13:34:56 2009 -0700 Merge master.kernel.org:/home/rmk/linux-2.6-arm * master.kernel.org:/home/rmk/linux-2.6-arm: (23 commits) [ARM] Fix virtual to physical translation macro corner cases [ARM] update mach-types [ARM] 5421/1: ftrace: fix crash due to tracing of __naked functions MX1 fix include [ARM] 5419/1: ep93xx: fix build warnings about struct i2c_board_info [ARM] 5418/1: restore lr before leaving mcount ARM: OMAP: board-omap3beagle: set i2c-3 to 100kHz ARM: OMAP: Allow I2C bus driver to be compiled as a module ARM: OMAP: sched_clock() corrected ARM: OMAP: Fix compile error if pm.h is included [ARM] orion5x: pass dram mbus data to xor driver [ARM] S3C64XX: Fix s3c64xx_setrate_clksrc [ARM] S3C64XX: sparse warnings in arch/arm/plat-s3c64xx/irq.c [ARM] S3C64XX: sparse warnings in arch/arm/plat-s3c64xx/s3c6400-clock.c [ARM] S3C64XX: Fix USB host clock mux list [ARM] S3C64XX: Fix name of USB host clock. [ARM] S3C64XX: Rename IRQ_UHOST to IRQ_USBH [ARM] S3C64XX: Do gpiolib configuration earlier [ARM] S3C64XX: Staticise s3c64xx_init_irq_eint() [ARM] SMDK6410: Declare iodesc table static ... commit 18553c38bcdef9b0cc69a784cd033a8a21bfa012 Merge: 326d851... bfbd442... Author: Linus Torvalds Date: Sat Mar 14 13:43:18 2009 -0700 Merge branch 'for-linus' of git://git.kernel.dk/linux-2.6-block * 'for-linus' of git://git.kernel.dk/linux-2.6-block: Fix Xilinx SystemACE driver to handle empty CF slot block: fix memory leak in bio_clone() block: Add gfp_mask parameter to bio_integrity_clone() commit bfbd442f69ec9c58590ffc6e93ac8d6809caa48b Author: Grant Likely Date: Mon Mar 9 13:42:24 2009 +0100 Fix Xilinx SystemACE driver to handle empty CF slot The SystemACE driver does not handle an empty CF slot gracefully. An empty CF slot ends up hanging the system. This patch adds a check for the CF state and stops trying to process requests if the slot is empty. Signed-off-by: Grant Likely Signed-off-by: Jens Axboe commit 059ea3318c8ede71851a52b4359fbf1ab0cec301 Author: Li Zefan Date: Mon Mar 9 10:42:45 2009 +0100 block: fix memory leak in bio_clone() If bio_integrity_clone() fails, bio_clone() returns NULL without freeing the newly allocated bio. Signed-off-by: Li Zefan Signed-off-by: Jens Axboe commit 87092698c665e0a358caf9825ae13114343027e8 Author: un'ichi Nomura Date: Mon Mar 9 10:40:52 2009 +0100 block: Add gfp_mask parameter to bio_integrity_clone() Stricter gfp_mask might be required for clone allocation. For example, request-based dm may clone bio in interrupt context so it has to use GFP_ATOMIC. Signed-off-by: Kiyoshi Ueda Signed-off-by: Jun'ichi Nomura Acked-by: Martin K. Petersen Cc: Alasdair G Kergon Signed-off-by: Jens Axboe commit 326d8519fc97be186c55ac605c3a7c957c758ae1 Merge: 228b5b7... a83860c... Author: Linus Torvalds Date: Sat Mar 14 12:02:21 2009 -0700 Merge branch 'upstream' of git://ftp.linux-mips.org/pub/scm/upstream-linus * 'upstream' of git://ftp.linux-mips.org/pub/scm/upstream-linus: MIPS: Mark Eins: Fix configuration. MIPS: Fix TIF_32BIT undefined problem when seccomp is disabled commit 228b5b7e840f79c8751614ae2b83e97e361634ce Merge: 37e79a4... 5fa0ae1... Author: Linus Torvalds Date: Sat Mar 14 12:01:37 2009 -0700 Merge git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi-rc-fixes-2.6 * git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi-rc-fixes-2.6: (31 commits) [SCSI] qla2xxx: Update version number to 8.03.00-k4. [SCSI] qla2xxx: Correct overwrite of pre-assigned init-control-block structure size. [SCSI] qla2xxx: Correct truncation in return-code status checking. [SCSI] qla2xxx: Correct vport delete bug. [SCSI] qla2xxx: Use correct value for max vport in LOOP topology. [SCSI] qla2xxx: Correct address range checking for option-rom updates. [SCSI] fcoe: Change fcoe receive thread nice value from 19 (lowest priority) to -20 [SCSI] fcoe: fix handling of pending queue, prevent out of order frames (v3) [SCSI] fcoe: Out of order tx frames was causing several check condition SCSI status [SCSI] fcoe: fix kfree(skb) [SCSI] fcoe: ETH_P_8021Q is already in if_ether and fcoe is not using it anyway [SCSI] libfc: do not change the fh_rx_id of a recevied frame [SCSI] fcoe: Correct fcoe_transports initialization vs. registration [SCSI] fcoe: Use setup_timer() and mod_timer() [SCSI] libfc, fcoe: Remove unnecessary cast by removing inline wrapper [SCSI] libfc, fcoe: Cleanup function formatting and minor typos [SCSI] libfc, fcoe: Fix kerneldoc comments [SCSI] libfc: Cleanup libfc_function_template comments [SCSI] libfc: check for err when recv and state is incorrect [SCSI] libfc: rename rp to rdata in fc_disc_new_target() ... commit 37e79a43acf963676fc358e7c9154c0d42c4f569 Merge: f1823ac... e9c1670... Author: Linus Torvalds Date: Sat Mar 14 12:00:42 2009 -0700 Merge branch 'upstream-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jgarzik/libata-dev * 'upstream-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jgarzik/libata-dev: ata_piix: add workaround for Samsung DB-P70 libata: Keep shadow last_ctl up to date during resets sata_mv: fix MSI irq race condition commit f1823acfbcc7d29029d6db757644bc820664af37 Merge: ff9cb43... 9f4c899... Author: Linus Torvalds Date: Sat Mar 14 12:00:18 2009 -0700 Merge branch 'bugfixes' of git://git.linux-nfs.org/projects/trondmy/nfs-2.6 * 'bugfixes' of git://git.linux-nfs.org/projects/trondmy/nfs-2.6: NFS: Fix the fix to Bugzilla #11061, when IPv6 isn't defined... SUNRPC: xprt_connect() don't abort the task if the transport isn't bound SUNRPC: Fix an Oops due to socket not set up yet... Bug 11061, NFS mounts dropped NFS: Handle -ESTALE error in access() NLM: Fix GRANT callback address comparison when IPv6 is enabled NLM: Shrink the IPv4-only version of nlm_cmp_addr() NFSv3: Fix posix ACL code NFS: Fix misparsing of nfsv4 fs_locations attribute (take 2) SUNRPC: Tighten up the task locking rules in __rpc_execute() commit ff9cb43ce09a9069f0ec95375d2f403578ec4977 Merge: 2a4c13b... 712e53e... Author: Linus Torvalds Date: Sat Mar 14 11:59:22 2009 -0700 Merge branch 'upstream-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mfasheh/ocfs2 * 'upstream-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mfasheh/ocfs2: ocfs2: Use xs->bucket to set xattr value outside ocfs2: Fix a bug found by sparse check. ocfs2: tweak to get the maximum inline data size with xattr ocfs2: reserve xattr block for new directory with inline data commit 2a4c13baebe30613cfa2c99d6a076f3a114dad9c Merge: bf9bc99... a00d0bb... Author: Linus Torvalds Date: Sat Mar 14 11:59:05 2009 -0700 Merge branch 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-2.6 * 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-2.6: V4L/DVB (10978): Report tuning algorith correctly V4L/DVB (10977): STB6100 init fix, the call to stb6100_set_bandwidth needs an argument V4L/DVB (10976): Bug fix: For legacy applications stv0899 performs search only first time after insmod. V4L/DVB (10975): Bug: Use signed types, Offsets and range can be negative V4L/DVB (10974): Use Diseqc 3/3 mode to send data V4L/DVB (10972): zl10353: i2c_gate_ctrl bug fix V4L/DVB (10834): zoran: auto-select bt866 for AverMedia 6 Eyes V4L/DVB (10832): tvaudio: Avoid breakage with tda9874a V4L/DVB (10789): m5602-s5k4aa: Split up the initial sensor probe in chunks. commit bf9bc995a59d8c152a4d7e6465d6afa1e098b3e8 Merge: 6d71135... e8f208e... Author: Linus Torvalds Date: Sat Mar 14 11:58:38 2009 -0700 Merge git://git.kernel.org/pub/scm/linux/kernel/git/kyle/parisc-2.6.29 * git://git.kernel.org/pub/scm/linux/kernel/git/kyle/parisc-2.6.29: parisc: update defconfigs parisc: define x->x mmio accessors parisc: dino: struct device - replace bus_id with dev_name(), dev_set_name() parisc: convert cpu_check_affinity to new cpumask api parisc: convert (read|write)bwlq to inlines parisc: fix use of new cpumask api in irq.c parisc: update parisc for new irq_desc parisc: update MAINTAINERS parisc: fix wrong assumption about bus->self parisc: fix 64bit build parisc: add braces around arguments in assembler macros parisc: fix dev_printk() compile warnings for accessing a device struct parisc: remove unused local out_putf label parisc: fix `struct pt_regs' declared inside parameter list warning parisc: fix section mismatch warnings parisc: remove klist iterators parisc: BUG_ON() cleanup commit 6d71135d635f84b584df55096627ed750c069e61 Merge: 1d88552... 5d82720... Author: Linus Torvalds Date: Sat Mar 14 11:58:10 2009 -0700 Merge git://git.kernel.org/pub/scm/linux/kernel/git/bart/ide-2.6 * git://git.kernel.org/pub/scm/linux/kernel/git/bart/ide-2.6: ide: save the returned value of dma_map_sg ide-floppy: do not map dataless cmds to an sg commit 1d885526f2f3fffacee2ecb541270bd00168adff Author: Daisuke Nishimura Date: Fri Mar 13 13:52:00 2009 -0700 vmscan: pgmoved should be cleared after updating recent_rotated pgmoved should be cleared after updating recent_rotated. Signed-off-by: Daisuke Nishimura Cc: Rik van Riel Cc: Lee Schermerhorn Acked-by: KOSAKI Motohiro Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 84814d642a4f1f294bd675ab11aae1ca54c6cedb Author: Tyler Hicks Date: Fri Mar 13 13:51:59 2009 -0700 eCryptfs: don't encrypt file key with filename key eCryptfs has file encryption keys (FEK), file encryption key encryption keys (FEKEK), and filename encryption keys (FNEK). The per-file FEK is encrypted with one or more FEKEKs and stored in the header of the encrypted file. I noticed that the FEK is also being encrypted by the FNEK. This is a problem if a user wants to use a different FNEK than their FEKEK, as their file contents will still be accessible with the FNEK. This is a minimalistic patch which prevents the FNEKs signatures from being copied to the inode signatures list. Ultimately, it keeps the FEK from being encrypted with a FNEK. Signed-off-by: Tyler Hicks Cc: Serge Hallyn Acked-by: Dustin Kirkland Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 15e7b8767605dc0cb9bd4594caabfec392385210 Author: Johannes Weiner Date: Fri Mar 13 13:51:58 2009 -0700 nommu: ramfs: don't leak pages when adding to page cache fails When a ramfs nommu mapping is expanded, contiguous pages are allocated and added to the pagecache. The caller's reference is then passed on by moving whole pagevecs to the file lru list. If the page cache adding fails, make sure that the error path also moves the pagevec contents which might still contain up to PAGEVEC_SIZE successfully added pages, of which we would leak references otherwise. Signed-off-by: Johannes Weiner Cc: David Howells Cc: Enrik Berkhan Cc: Nick Piggin Cc: Peter Zijlstra Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 020fe22ff14320927f394de222cbb11708bcc7a8 Author: Enrik Berkhan Date: Fri Mar 13 13:51:56 2009 -0700 nommu: ramfs: pages allocated to an inode's pagecache may get wrongly discarded The pages attached to a ramfs inode's pagecache by truncation from nothing - as done by SYSV SHM for example - may get discarded under memory pressure. The problem is that the pages are not marked dirty. Anything that creates data in an MMU-based ramfs will cause the pages holding that data will cause the set_page_dirty() aop to be called. For the NOMMU-based mmap, set_page_dirty() may be called by write(), but it won't be called by page-writing faults on writable mmaps, and it isn't called by ramfs_nommu_expand_for_mapping() when a file is being truncated from nothing to allocate a contiguous run. The solution is to mark the pages dirty at the point of allocation by the truncation code. Signed-off-by: Enrik Berkhan Signed-off-by: David Howells Cc: Peter Zijlstra Cc: Nick Piggin Cc: Johannes Weiner Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit a83860c2da9303c864a53c299d17f608f9643541 Author: Ralf Baechle Date: Fri Mar 13 21:17:57 2009 +0100 MIPS: Mark Eins: Fix configuration. Signed-off-by: Ralf Baechle commit 3b289d6e35a1a535c19a5b079f0500526754e650 Author: Zhang Le Date: Thu Mar 12 18:00:50 2009 +0800 MIPS: Fix TIF_32BIT undefined problem when seccomp is disabled Signed-off-by: Zhang Le Signed-off-by: Ralf Baechle commit 5d82720a7f41f0c877e026c7d17e3bf20ccdbae0 Author: FUJITA Tomonori Date: Fri Mar 13 21:16:13 2009 +0100 ide: save the returned value of dma_map_sg dma_map_sg could return a value different to 'nents' argument of dma_map_sg so the ide stack needs to save it for the later usage (e.g. for_each_sg). The ide stack also needs to save the original sg_nents value for pci_unmap_sg. Signed-off-by: FUJITA Tomonori [bart: backport to Linus' tree] Signed-off-by: Bartlomiej Zolnierkiewicz commit 3eb76c1ccde496c3c0bfda23d1c803e40b762ce6 Author: Borislav Petkov Date: Fri Mar 13 21:16:12 2009 +0100 ide-floppy: do not map dataless cmds to an sg since it fails the virt_to_page() translation check with DEBUG_VIRTUAL enabled. Signed-off-by: Borislav Petkov [bart: backport to Linus' tree] Signed-off-by: Bartlomiej Zolnierkiewicz commit e9c1670c2a14ef9cc20d86b24b829f3947aad34e Author: Tejun Heo Date: Tue Mar 3 13:52:16 2009 +0900 ata_piix: add workaround for Samsung DB-P70 Samsung DB-P70 somehow botched the first ICH9 SATA port. The board doesn't expose the first port but somehow SStatus reports link online while failing SRST protocol leading to repeated probe failures and thus long boot delay. Because the BIOS doesn't carry any identifying DMI information, the port can't be blacklisted safely. Fortunately, the controller does have subsystem vendor and ID set. It's unclear whether the subsystem IDs are used only for the board but it can be safely worked around by disabling SIDPR access and just using SRST works around the problem. Even when the workaround is triggered on an unaffected board the only side effect will be missing SCR access. Signed-off-by: Tejun Heo Reported-by: Joseph Jang Reported-by: Jonghyon Sohn Signed-off-by: Jeff Garzik commit e3e4385f6181f434c0d786998ad1d0eef4e21c9b Author: Stuart MENEFY Date: Tue Mar 10 11:38:13 2009 +0000 libata: Keep shadow last_ctl up to date during resets libata keeps a shadow copy of the ATA CTL register (which is write only), and only writes to the hardware when the required value doesn't match the shadow. However this copy wasn't being maintained when performing reset functions. This could cause problems for the first operation after a reset when the correct value might not be written to the CTL register. This problem was observed when hotplugging a drive: the identify command was being issued with interrupts enabled, when they should have been disabled. Signed-off-by: Stuart Menefy Signed-off-by: Jeff Garzik commit 9d51af7bd2f1d730cb6eeeb9ff837e3441ad4e07 Author: Mark Lord Date: Tue Mar 10 16:28:51 2009 -0400 sata_mv: fix MSI irq race condition Fix a (rare) race condition in mv_interrupt() when using MSI. The value of hpriv->main_irq_mask_addr can change on on the fly, and without this patch we could end up writing back a stale copy to the hardware. Signed-off-by: Mark Lord Signed-off-by: Jeff Garzik commit a00d0bb86b20a86a72f4df9d6e31dda94c02b4fa Author: Matthias Schwarzzot Date: Tue Jan 27 16:29:44 2009 -0300 V4L/DVB (10978): Report tuning algorith correctly Signed-off-by: Manu Abraham Signed-off-by: Mauro Carvalho Chehab commit 26f26fa8e3a0822aa43ee0a80bd0196fa2554c42 Author: Hans Werner Date: Tue Jan 27 16:09:12 2009 -0300 V4L/DVB (10977): STB6100 init fix, the call to stb6100_set_bandwidth needs an argument in Hz not kHz, and a comment incorrectly says MHz instead of Hz. I don't know if this caused real problems anywhere Signed-off-by: Manu Abraham Signed-off-by: Mauro Carvalho Chehab commit 1d06059c13fc64b67027334507f734ec0f2f4b6c Author: Igor M. Liplianin Date: Sun Nov 9 11:35:13 2008 -0300 V4L/DVB (10976): Bug fix: For legacy applications stv0899 performs search only first time after insmod. For legacy applications stv0899 performs search only first time after insmod due to not set DVBFE_ALGO_SEARCH_AGAIN bit Signed-off-by: Igor M. Liplianin Signed-off-by: Manu Abraham Signed-off-by: Mauro Carvalho Chehab commit b5d067b8e331ce78f4a81eb220965ffa36069d3f Author: Manu Abraham Date: Tue Jan 27 11:03:16 2009 -0300 V4L/DVB (10975): Bug: Use signed types, Offsets and range can be negative Code simplification: use in kernel macros Signed-off-by: Manu Abraham Signed-off-by: Mauro Carvalho Chehab commit d284e4f71dd42826fb60df33846ba310310c6c51 Author: Sigmund Augdal Date: Mon Jan 26 19:08:48 2009 -0300 V4L/DVB (10974): Use Diseqc 3/3 mode to send data Signed-off-by: Sigmund Augdal Signed-off-by: Manu Abraham Signed-off-by: Mauro Carvalho Chehab commit e8f208e8f727515bc605f241a5f854b41f77d0ed Author: Kyle McMartin Date: Fri Mar 13 01:33:34 2009 -0400 parisc: update defconfigs Signed-off-by: Kyle McMartin commit 0cb385e3ff54ee095d9873209f4da764dfb17fec Author: Kyle McMartin Date: Tue Feb 17 12:42:52 2009 -0500 parisc: define x->x mmio accessors Bloody inconsiderate driver writers... Signed-off-by: Kyle McMartin commit d4995244bd4c02eb7bea3c63aee81a2f2b64910e Author: Kay Sievers Date: Mon Jan 26 03:53:16 2009 +0000 parisc: dino: struct device - replace bus_id with dev_name(), dev_set_name() Acked-by: Greg Kroah-Hartman Signed-off-by: Kay Sievers Signed-off-by: Kyle McMartin commit 8b6649c575e0d8312f62fe643ae43558892da2e1 Author: Kyle McMartin Date: Mon Feb 16 03:20:54 2009 -0500 parisc: convert cpu_check_affinity to new cpumask api cpumask arg to the affinity function is now const, sort that out through the irq_desc implementations. Signed-off-by: Kyle McMartin commit 9dfe914da83ebc88f85d94b4d30d0e45882766d1 Author: Kyle McMartin Date: Mon Feb 16 03:05:02 2009 -0500 parisc: convert (read|write)bwlq to inlines Kills the 'value computed but not used' due to leX_to_cpu. Signed-off-by: Kyle McMartin commit 7c4be70e6d07582a111a1b66942c8a1d45528dfb Author: Kyle McMartin Date: Mon Feb 16 02:53:03 2009 -0500 parisc: fix use of new cpumask api in irq.c cpumask api needs to take a pointer to irq_desc[cpu].affinity Signed-off-by: Kyle McMartin commit 5a8247ca4c6441cafbb852cb1048d1056734a90c Author: Mike Travis Date: Tue Jan 13 03:05:25 2009 +0000 parisc: update parisc for new irq_desc Impact: cleanup, update to new cpumask API Irq_desc.affinity and irq_desc.pending_mask are now cpumask_var_t's so access to them should be using the new cpumask API. Signed-off-by: Mike Travis Signed-off-by: Kyle McMartin commit 763461194817bc39905c7c41d08e8d9548a3916d Author: Grant Grundler Date: Mon Dec 1 00:21:35 2008 -0700 parisc: update MAINTAINERS Signed-off-By: Grant Grundler Reviewed-by: Matthew Wilcox Acked-by: Helge Deller Signed-off-by: Kyle McMartin commit 9785d646c10b0707412516ffe56b71b9eb18861f Author: Grant Grundler Date: Wed Jan 28 22:30:55 2009 -0700 parisc: fix wrong assumption about bus->self Kenji Kaneshige posted a patch series to linux-pci to fix a wrong assumption about pci_bus->self==NULL for all PCI host bus controllers. While PARISC platforms to not behave this way, I prefer to have the code consistent across architectures. The following patch replaces pci_bus->self with pci_bus->parent when used as a test to check for "root bus controller". Signed-off-by: Grant Grundler Signed-off-by: Kyle McMartin commit c1da90fd099531e9449019dc53a5a02a5eaef2b4 Author: Helge Deller Date: Mon Jan 26 22:24:38 2009 +0100 parisc: fix 64bit build Signed-off-by: Helge Deller Signed-off-by: Kyle McMartin commit 2cfeb9a6755d4d7be1026422b6aced48e3bad492 Author: Helge Deller Date: Sun Jan 18 18:13:53 2009 +0100 parisc: add braces around arguments in assembler macros Add braces around the macro arguments, else for example "shl %r1, 5-3, %r2" would not expand to what you would assume. Signed-off-by: Helge Deller Signed-off-by: Kyle McMartin commit 7f384ce780c6091968fc848b14f17b45cb849e14 Author: Helge Deller Date: Tue Jan 13 21:14:51 2009 +0100 parisc: fix dev_printk() compile warnings for accessing a device struct Fix compile warnings: drivers/scsi/zalon.c: In function `zalon_probe': drivers/scsi/zalon.c:140: warning: passing arg 1 of `dev_driver_string' from incompatible pointer type drivers/scsi/zalon.c:140: warning: passing arg 1 of `dev_name' from incompatible pointer type Signed-off-by: Helge Deller Signed-off-by: Kyle McMartin commit ddd1f6c66dd964c106377f2be37b318794f112f4 Author: Helge Deller Date: Tue Jan 13 20:54:25 2009 +0100 parisc: remove unused local out_putf label Signed-off-by: Helge Deller Signed-off-by: Kyle McMartin commit e448372c79c49ef80df23496339ce0915abef76e Author: Helge Deller Date: Tue Jan 13 20:52:46 2009 +0100 parisc: fix `struct pt_regs' declared inside parameter list warning Fix those compile warnings: uaccess.h:244: warning: `struct pt_regs' declared inside parameter list uaccess.h:244: warning: its scope is only this definition or declaration, which is probably not what you want Signed-off-by: Helge Deller Signed-off-by: Kyle McMartin commit 24dc029f71c1411c5974a79848d68bb3e34263b9 Author: Helge Deller Date: Tue Jan 13 20:51:29 2009 +0100 parisc: fix section mismatch warnings Signed-off-by: Helge Deller Signed-off-by: Kyle McMartin commit bfe4f4f800ccbb499a1120735016a20d3feacd4f Author: James Bottomley Date: Fri Jan 9 18:57:06 2009 -0600 parisc: remove klist iterators commit 11c3b5c3e08f4d855cbef52883c266b9ab9df879 Author: Greg Kroah-Hartman Date: Tue Dec 16 12:24:56 2008 -0800 driver core: move klist_children into private structure Broke our parisc build pretty badly because we touch the klists directly in three cases (AGP, SBA and GSC). Although GregKH will revert this patch, there's no reason we should be using the iterators directly, we can just move to the standard device_for_each_child() API. Signed-off-by: James Bottomley Tested-by: Helge Deller Tested-by: Kyle McMartin Signed-off-by: Kyle McMartin commit 8980a7baf93e478205e32ec7d6ef3bfb6c0bdfa7 Author: Helge Deller Date: Tue Jan 6 12:57:01 2009 +0100 parisc: BUG_ON() cleanup - convert a few "if (xx) BUG();" to BUG_ON(xx) - remove a few printk()s, as we get a backtrace with BUG_ON() anyway Signed-off-by: Helge Deller Signed-off-by: Kyle McMartin commit 5f77af93266e107bd46c010c51d772c0fb003232 Author: Antti Palosaari Date: Tue Mar 10 13:06:40 2009 -0300 V4L/DVB (10972): zl10353: i2c_gate_ctrl bug fix zl10353 i2c-gate was always closed and due to that devices having tuner behind i2c-gate were broken. Add module configuration which allows disabling i2c-gate only when really needed. Signed-off-by: Antti Palosaari Signed-off-by: Mauro Carvalho Chehab commit 712e53e46a1da35fcd88c05aa0c675b10f7c0e9d Author: Tao Ma Date: Thu Mar 12 08:37:34 2009 +0800 ocfs2: Use xs->bucket to set xattr value outside A long time ago, xs->base is allocated a 4K size and all the contents in the bucket are copied to the it. Now we use ocfs2_xattr_bucket to abstract xattr bucket and xs->base is initialized to the start of the bu_bhs[0]. So xs->base + offset will overflow when the value root is stored outside the first block. Then why we can survive the xattr test by now? It is because we always read the bucket contiguously now and kernel mm allocate continguous memory for us. We are lucky, but we should fix it. So just get the right value root as other callers do. Signed-off-by: Tao Ma Acked-by: Joel Becker Signed-off-by: Mark Fasheh commit 74e77eb30d0ecbb12964d005b439c8b84a505b84 Author: Tao Ma Date: Thu Mar 12 06:24:23 2009 +0800 ocfs2: Fix a bug found by sparse check. We need to use le32_to_cpu to test rec->e_cpos in ocfs2_dinode_insert_check. Signed-off-by: Tao Ma Acked-by: Joel Becker Signed-off-by: Mark Fasheh commit d9ae49d6e2b1ac9166e58ae3c9345135604beaa6 Author: Tiger Yang Date: Thu Mar 5 11:06:15 2009 +0800 ocfs2: tweak to get the maximum inline data size with xattr Replace max_inline_data with max_inline_data_with_xattr to ensure it correct when xattr inlined. Signed-off-by: Tiger Yang Acked-by: Joel Becker Signed-off-by: Mark Fasheh commit 6c9fd1dc0a597e575617a7de7086c8a3efa8f524 Author: Tiger Yang Date: Fri Mar 6 10:19:30 2009 +0800 ocfs2: reserve xattr block for new directory with inline data If this is a new directory with inline data, we choose to reserve the entire inline area for directory contents and force an external xattr block. Signed-off-by: Tiger Yang Acked-by: Joel Becker Signed-off-by: Mark Fasheh commit 1522ac3ec95ff0230e7aa516f86b674fdf72866c Author: Russell King Date: Thu Mar 12 17:03:48 2009 +0000 [ARM] Fix virtual to physical translation macro corner cases The current use of these macros works well when the conversion is entirely linear. In this case, we can be assured that the following holds true: __va(p + s) - s = __va(p) However, this is not always the case, especially when there is a non-linear conversion (eg, when there is a 3.5GB hole in memory.) In this case, if 's' is the size of the region (eg, PAGE_SIZE) and 'p' is the final page, the above is most definitely not true. So, we must ensure that __va() and __pa() are only used with valid kernel direct mapped RAM addresses. This patch tweaks the code to achieve this. Tested-by: Charles Moschel Signed-off-by: Russell King commit 305b07680f6c6a7e59f996c5bd85f009caff5bb1 Author: Russell King Date: Thu Mar 12 18:03:01 2009 +0000 [ARM] update mach-types Signed-off-by: Russell King commit 446c92b2901bedb3725d29b4e73def8aba623ffc Author: Uwe Kleine-König Date: Thu Mar 12 18:03:16 2009 +0100 [ARM] 5421/1: ftrace: fix crash due to tracing of __naked functions This is a fix for the following crash observed in 2.6.29-rc3: http://lkml.org/lkml/2009/1/29/150 On ARM it doesn't make sense to trace a naked function because then mcount is called without stack and frame pointer being set up and there is no chance to restore the lr register to the value before mcount was called. Reported-by: Matthias Kaehlcke Tested-by: Matthias Kaehlcke Cc: Abhishek Sagar Cc: Steven Rostedt Cc: Ingo Molnar Signed-off-by: Uwe Kleine-König Signed-off-by: Russell King commit 9311c593f24f28de2a339da602644f0f7ae0fc60 Merge: c06b488... 20214fc... Author: Russell King Date: Thu Mar 12 21:32:52 2009 +0000 Merge branch 'for-rmk' of git://git.pengutronix.de/git/imx/linux-2.6 commit 9f4c899c0d90e1b51b6864834f3877b47c161a0e Author: Trond Myklebust Date: Thu Mar 12 14:51:32 2009 -0400 NFS: Fix the fix to Bugzilla #11061, when IPv6 isn't defined... Stephen Rothwell reports: Today's linux-next build (powerpc ppc64_defconfig) failed like this: fs/built-in.o: In function `.nfs_get_client': client.c:(.text+0x115010): undefined reference to `.__ipv6_addr_type' Fix by moving the IPV6 specific parts of commit d7371c41b0cda782256b1df759df4e8d4724584c ("Bug 11061, NFS mounts dropped") into the '#ifdef IPV6..." section. Also fix up a couple of formatting issues. Signed-off-by: Trond Myklebust commit 01d37c428ae080563c0a3bb8bdfa88c65a6891d3 Author: Trond Myklebust Date: Wed Mar 11 14:09:39 2009 -0400 SUNRPC: xprt_connect() don't abort the task if the transport isn't bound If the transport isn't bound, then we should just return ENOTCONN, letting call_connect_status() and/or call_status() deal with retrying. Currently, we appear to abort all pending tasks with an EIO error. Signed-off-by: Trond Myklebust commit fba91afbec2c004e2c8733ae9e0ca6998e962c64 Author: Trond Myklebust Date: Wed Mar 11 14:06:41 2009 -0400 SUNRPC: Fix an Oops due to socket not set up yet... We can Oops in both xs_udp_send_request() and xs_tcp_send_request() if the call to xs_sendpages() returns an error due to the socket not yet being set up. Deal with that situation by returning a new error: ENOTSOCK, so that we know to avoid dereferencing transport->sock. Signed-off-by: Trond Myklebust commit d7371c41b0cda782256b1df759df4e8d4724584c Author: Ian Dall Date: Tue Mar 10 20:33:22 2009 -0400 Bug 11061, NFS mounts dropped Addresses: http://bugzilla.kernel.org/show_bug.cgi?id=11061 sockaddr structures can't be reliably compared using memcmp() because there are padding bytes in the structure which can't be guaranteed to be the same even when the sockaddr structures refer to the same socket. Instead compare all the relevant fields. In the case of IPv6 sin6_flowinfo is not compared because it only affects QoS and sin6_scope_id is only compared if the address is "link local" because "link local" addresses need only be unique to a specific link. Signed-off-by: Ian Dall Signed-off-by: Trond Myklebust commit a71ee337b31271e701f689d544b6153b75609bc5 Author: Suresh Jayaraman Date: Tue Mar 10 20:33:21 2009 -0400 NFS: Handle -ESTALE error in access() Hi Trond, I have been looking at a bugreport where trying to open applications on KDE on a NFS mounted home fails temporarily. There have been multiple reports on different kernel versions pointing to this common issue: http://bugzilla.kernel.org/show_bug.cgi?id=12557 https://bugs.launchpad.net/ubuntu/+source/linux/+bug/269954 http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=508866.html This issue can be reproducible consistently by doing this on a NFS mounted home (KDE): 1. Open 2 xterm sessions 2. From one of the xterm session, do "ssh -X " 3. "stat ~/.Xauthority" on the remote SSH session 4. Close the two xterm sessions 5. On the server do a "stat ~/.Xauthority" 6. Now on the client, try to open xterm This will fail. Even if the filehandle had become stale, the NFS client should invalidate the cache/inode and should repeat LOOKUP. Looking at the packet capture when the failure occurs shows that there were two subsequent ACCESS() calls with the same filehandle and both fails with -ESTALE error. I have tested the fix below. Now the client issue a LOOKUP after the ACCESS() call fails with -ESTALE. If all this makes sense to you, can you consider this for inclusion? Thanks, If the server returns an -ESTALE error due to stale filehandle in response to an ACCESS() call, we need to invalidate the cache and inode so that LOOKUP() can be retried. Without this change, the nfs client retries ACCESS() with the same filehandle, fails again and could lead to temporary failure of applications running on nfs mounted home. Signed-off-by: Suresh Jayaraman Signed-off-by: Trond Myklebust commit 57df675c60c5cf0748ddba9c7f85afde1530d74d Author: Chuck Lever Date: Tue Mar 10 20:33:20 2009 -0400 NLM: Fix GRANT callback address comparison when IPv6 is enabled The NFS mount command may pass an AF_INET server address to lockd. If lockd happens to be using a PF_INET6 listener, the nlm_cmp_addr() in nlmclnt_grant() will fail to match requests from that host because they will all have a mapped IPv4 AF_INET6 address. Adopt the same solution used in nfs_sockaddr_match_ipaddr() for NFSv4 callbacks: if either address is AF_INET, map it to an AF_INET6 address before doing the comparison. Signed-off-by: Chuck Lever Signed-off-by: Trond Myklebust commit 78851e1aa4c3b796d5f0bb11b445016726302b44 Author: Chuck Lever Date: Tue Mar 10 20:33:19 2009 -0400 NLM: Shrink the IPv4-only version of nlm_cmp_addr() Clean up/micro-optimatization: Make the AF_INET-only version of nlm_cmp_addr() smaller. This matches the style of nlm_privileged_requester(), and makes the AF_INET-only version of nlm_cmp_addr() nearly the same size as it was before IPv6 support. Signed-off-by: Chuck Lever Signed-off-by: Trond Myklebust commit ae46141ff08f1965b17c531b571953c39ce8b9e2 Author: Trond Myklebust Date: Tue Mar 10 20:33:18 2009 -0400 NFSv3: Fix posix ACL code Fix a memory leak due to allocation in the XDR layer. In cases where the RPC call needs to be retransmitted, we end up allocating new pages without clearing the old ones. Fix this by moving the allocation into nfs3_proc_setacls(). Also fix an issue discovered by Kevin Rudd, whereby the amount of memory reserved for the acls in the xdr_buf->head was miscalculated, and causing corruption. Signed-off-by: Trond Myklebust commit ef95d31e6de6be9602ce950b85fb7ab8af46ae42 Author: Trond Myklebust Date: Tue Mar 10 20:33:17 2009 -0400 NFS: Fix misparsing of nfsv4 fs_locations attribute (take 2) The changeset ea31a4437c59219bf3ea946d58984b01a45a289c (nfs: Fix misparsing of nfsv4 fs_locations attribute) causes the mountpath that is calculated at the beginning of try_location() to be clobbered when we later strncpy a non-nul terminated hostname using an incorrect buffer length. Signed-off-by: Trond Myklebust commit eb9b55ab4d73280597fd183b367d50452f4d7846 Author: Trond Myklebust Date: Tue Mar 10 20:33:16 2009 -0400 SUNRPC: Tighten up the task locking rules in __rpc_execute() We should probably not be testing any flags after we've cleared the RPC_TASK_RUNNING flag, since rpc_make_runnable() is then free to assign the rpc_task to another workqueue, which may then destroy it. We can fix any races with rpc_make_runnable() by ensuring that we only clear the RPC_TASK_RUNNING flag while holding the rpc_wait_queue->lock that the task is supposed to be sleeping on (and then checking whether or not the task really is sleeping). Signed-off-by: Trond Myklebust commit 5fa0ae19822d60307059ee64b80ba9e5effdce58 Author: Andrew Vasquez Date: Thu Mar 5 11:07:05 2009 -0800 [SCSI] qla2xxx: Update version number to 8.03.00-k4. Signed-off-by: Andrew Vasquez Signed-off-by: James Bottomley commit ca42f2b5f58702e5751e1423bd2f7987b0760eab Author: Andrew Vasquez Date: Thu Mar 5 11:07:04 2009 -0800 [SCSI] qla2xxx: Correct overwrite of pre-assigned init-control-block structure size. The value is already pre-assigned prior to the qla2x00_mem_alloc(). Signed-off-by: Andrew Vasquez Signed-off-by: James Bottomley commit c6b2fca8205dc33e3bb444835769e4ea4c6bc58d Author: Andrew Vasquez Date: Thu Mar 5 11:07:03 2009 -0800 [SCSI] qla2xxx: Correct truncation in return-code status checking. QLA_* return codes are 'int' in size. There were still several legacy check-points which assumed a return-code width of 8-bits. This could cause incorrect assumptions of 'good' status if a return of QLA_FUNCTION_TIMEOUT. Signed-off-by: Andrew Vasquez Signed-off-by: James Bottomley commit ee546b6e048586381462ce7bb51c7ddc03819619 Author: Anirban Chakraborty Date: Thu Mar 5 11:07:02 2009 -0800 [SCSI] qla2xxx: Correct vport delete bug. Signed-off-by: Anirban Chakraborty Signed-off-by: James Bottomley commit 605aa2bcd5e9dddc4666f12e0c19822809186d6d Author: Lalit Chandivade Date: Thu Mar 5 11:07:01 2009 -0800 [SCSI] qla2xxx: Use correct value for max vport in LOOP topology. Use minimum value for max vport during firmware initialization in LOOP topology. Using max vport value from get resource count in LOOP topology causes firmware initialization failure. Signed-off-by: Lalit Chandivade Signed-off-by: Andrew Vasquez Signed-off-by: James Bottomley commit 6431c5dc5eeaa79863b4af300c081a01e2ccd0bb Author: Andrew Vasquez Date: Thu Mar 5 11:07:00 2009 -0800 [SCSI] qla2xxx: Correct address range checking for option-rom updates. Signed-off-by: Andrew Vasquez Signed-off-by: James Bottomley commit 4469c195da43bf8220f53da8b576c0e154c2b662 Author: Robert Love Date: Fri Feb 27 10:56:38 2009 -0800 [SCSI] fcoe: Change fcoe receive thread nice value from 19 (lowest priority) to -20 This change makes the fcoe Rx threads have the same nice value as lpfc and qla2xxx Rx threads. Signed-off-by: Robert Love Signed-off-by: James Bottomley commit 55c8bafba549e3e82f6999db8c5a62fc3c255c14 Author: Chris Leech Date: Fri Feb 27 10:56:32 2009 -0800 [SCSI] fcoe: fix handling of pending queue, prevent out of order frames (v3) In fcoe_check_wait_queue() the queue length could temporarily drop to 0, before the last frame was successfully sent. This resulted in out of order data frames within a single sequence, leading to IO timeout errors. This builds on the approach from Vasu Dev to only fix the queue management in fcoe_check_wait_queue, where my first patch added locking to the transmit path even when the pending queue was not in use. This patch continues to use fcoe_pending_queue.qlen instead of introducing a new length counter, but takes precautions to ensure it never drops to 0 before the final frame in the queue has successfully been passed to the netdev qdisc layer. It also includes some cleanup of fcoe_check_wait_queue and removes the fcoe_insert_wait_queue(_head) wrapper functions. Signed-off-by: Chris Leech Signed-off-by: Robert Love Signed-off-by: James Bottomley commit c826a3145736e3baabebccfd0aecfbb6dae059f2 Author: Vasu Dev Date: Fri Feb 27 10:56:27 2009 -0800 [SCSI] fcoe: Out of order tx frames was causing several check condition SCSI status frames followed by these errors in log. [sdp] Result: hostbyte=DID_OK driverbyte=DRIVER_SENSE,SUGGEST_OK [sdp] Sense Key : Aborted Command [current] [sdp] Add. Sense: Data phase error This was causing some test apps to exit due to write failure under heavy load. This was due to a race around adding and removing tx frame skb in fcoe_pending_queue, Chris Leech helped me to find that brief unlocking period when pulling skb from fcoe_pending_queue in various contexts (fcoe_watchdog and fcoe_xmit) and then adding skb back into fcoe_pending_queue up on a failed fcoe_start_io could change skb/tx frame order in fcoe_pending_queue. Thanks Chris. This patch allows only single context to pull skb from fcoe_pending_queue at any time to prevent above described ordering issue/race by use of fcoe_pending_queue_active flag. This patch simplified fcoe_watchdog with modified fcoe_check_wait_queue by use of FCOE_LOW_QUEUE_DEPTH instead previously used several conditionals to clear and set lp->qfull. I think FCOE_MAX_QUEUE_DEPTH with FCOE_LOW_QUEUE_DEPTH will work better in re/setting lp->qfull and these could be fine tuned for performance. Signed-off-by: Vasu Dev Signed-off-by: Robert Love Signed-off-by: James Bottomley commit e904158159e9812d06646767b7c81846dc3b05e6 Author: Roel Kluin Date: Fri Feb 27 10:56:22 2009 -0800 [SCSI] fcoe: fix kfree(skb) Use kfree_skb instead of kfree for struct sk_buff pointers. Signed-off-by: Roel Kluin Signed-off-by: Robert Love Signed-off-by: James Bottomley commit 74846bf85e42b4ba851d3f0dd67aa1df245895f9 Author: Yi Zou Date: Fri Feb 27 10:56:16 2009 -0800 [SCSI] fcoe: ETH_P_8021Q is already in if_ether and fcoe is not using it anyway Signed-off-by: Yi Zou Signed-off-by: Robert Love Signed-off-by: James Bottomley commit 422819cfa3a2605a0b3bdc33aaef0bc2feaeaada Author: Yi Zou Date: Fri Feb 27 10:56:11 2009 -0800 [SCSI] libfc: do not change the fh_rx_id of a recevied frame We shouldn't be altering inbound frames. Signed-off-by: Yi Zou Signed-off-by: Robert Love Signed-off-by: James Bottomley commit 03ec862dff57ca3d1fcb439b99aadc45bc5c2f28 Author: Robert Love Date: Fri Feb 27 10:56:06 2009 -0800 [SCSI] fcoe: Correct fcoe_transports initialization vs. registration The registration function shouldn't initialize the mutex or list head. The fcoe SW transport should initialize itself before registering. Signed-off-by: Robert Love Signed-off-by: James Bottomley commit a468f328ad83f14556e5961ef1de80b32b428d32 Author: Robert Love Date: Fri Feb 27 10:56:00 2009 -0800 [SCSI] fcoe: Use setup_timer() and mod_timer() Use helper functions for watchdog timer setup. Signed-off-by: Robert Love Signed-off-by: James Bottomley commit fc47ff6b1b27fb736f255ed8cd490356e0cd228f Author: Robert Love Date: Fri Feb 27 10:55:55 2009 -0800 [SCSI] libfc, fcoe: Remove unnecessary cast by removing inline wrapper Comment from "Andrew Morton " > +{ > + return (struct fcoe_softc *)lport_priv(lp); unneeded/undesirable cast of void*. There are probably zillions of instances of this - there always are. This whole inline function was unnecessary. The FCoE layer knows that it's data structure is stored in the lport private data, it can just access it from lport_priv(). Signed-off-by: Robert Love Signed-off-by: James Bottomley commit b2ab99c9a300e572105d6db7f6efe0a4d1572167 Author: Robert Love Date: Fri Feb 27 10:55:50 2009 -0800 [SCSI] libfc, fcoe: Cleanup function formatting and minor typos 1) There were a few functions with a strange layout, i.e. all arguments on the second line, when not necessary. Where ever possible I moved the return value to the same line as the function name. However, when the line was too long to have a single argument on the same line I moved the return value to above line. For example: (, ) and (, ) 2) Removed one extra whitespace line 3) Fixed two typos Signed-off-by: Robert Love Signed-off-by: James Bottomley commit 34f42a070fc98f5dc07e9fa2338b7b8d1dc347eb Author: Robert Love Date: Fri Feb 27 10:55:45 2009 -0800 [SCSI] libfc, fcoe: Fix kerneldoc comments 1) Added '()' for function names in kerneldoc comments 2) Changed comment bookends from '**/' to '*/'. The comment on the the mailing list was that '**/' "is consistently unconventional. Not wrong, just odd." The Documentation/kernel-doc-nano-HOWTO.txt states that kerneldoc comment blocks should end with '**/' but most (if not all) instance I found under drivers/scsi/ were only using the '*/' so I converted to that style. 3) Removed incorrect linebreaks in kerneldoc comments where found 4) Removed a few unnecessary blank comment lines in kerneldoc comment blocks Signed-off-by: Robert Love Signed-off-by: James Bottomley commit c06b4889c340da483d35a877ef9195c0401319b9 Merge: 74fac66... 8ca7fe2... Author: Russell King Date: Mon Mar 9 09:42:15 2009 +0000 Merge branch 'omap-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap-2.6 commit 74fac66e821475f5cb0f23bb5ecc7e18aa32fdc5 Merge: ef449e6... 1264fa6... Author: Russell King Date: Fri Mar 6 21:53:05 2009 +0000 Merge branch 's3c-fixes' of git://aeryn.fluff.org.uk/bjdooks/linux commit 0ae4d4ae47d2ccbcad813b0d6d8fe12590c7d648 Author: Robert Love Date: Fri Feb 27 10:55:39 2009 -0800 [SCSI] libfc: Cleanup libfc_function_template comments Made the comments more like the comments for struct scsi_host_template. Signed-off-by: Robert Love Signed-off-by: James Bottomley commit efaf5c085dd2d31757b0ff7886970dfddd8d1808 Author: Robert Love Date: Fri Feb 27 10:55:34 2009 -0800 [SCSI] libfc: check for err when recv and state is incorrect If we've just created an interface and the an rport is logging in we may have a request on the wire (say PRLI). If we destroy the interface, we'll go through each rport on the disc->rports list and set each rport's state to NONE. Then the lport will reset the EM. The EM reset will send a CLOSED event to the prli_resp() handler which will notice that the state != PRLI. In this case it frees the frame pointer, decrements the refcount and unlocks the rport. The problem is that there isn't a frame in this case. It's just a pointer with an embedded error code. The free causes an Oops. This patch moves the error checking to be before the state checking. Signed-off-by: Robert Love Signed-off-by: James Bottomley commit d3b33327cab0c8e9cae2c12d908ca79433c0d1ac Author: Robert Love Date: Fri Feb 27 10:55:29 2009 -0800 [SCSI] libfc: rename rp to rdata in fc_disc_new_target() Just rename the variable as per our naming convention. Signed-off-by: Robert Love Signed-off-by: James Bottomley commit 23f11f9076fcd6ee20c56e413b11f1b5658e3f82 Author: Robert Love Date: Fri Feb 27 10:55:23 2009 -0800 [SCSI] libfc: correct RPORT_TO_PRIV usage We only need to use this macro when assigning a value to rport->dd_data. All other accesses should just use dd_data. Signed-off-by: Robert Love Signed-off-by: James Bottomley commit 5101ff99f59aefb72e0c96e82aa32048ac9f8425 Author: Robert Love Date: Fri Feb 27 10:55:18 2009 -0800 [SCSI] libfc: Don't violate transport template for rogue port creation Signed-off-by: Robert Love Signed-off-by: James Bottomley commit f7db2c150cf5082cf74555f30a1305938041de80 Author: Steve Ma Date: Fri Feb 27 10:55:13 2009 -0800 [SCSI] libfc: exch mgr is freed while lport still retrying sequences When a sequence cannot be delivered to the target, the local port will schedule retries, While this process is in progress, if we destroy the FCoE interface, the fcoe_sw_destroy routine is entered, and the fc_exch_mgr_free(lp->emp) is called. Thus if fc_exch_alloc() is called when retrying the sequence, the mempool_alloc() will fail to allocate the exchange because the mempool of the exchange manager has already been released. This patch is to cancel any pending retry work of the local port before we start to destroy the interface. Also, when resetting the local port, we should also stop the scheduled pending retries. Signed-off-by: Steve Ma Signed-off-by: Robert Love Signed-off-by: James Bottomley commit 26d9cab558f901051d0b69b2c445c8588931ce8d Author: Vasu Dev Date: Fri Feb 27 10:55:07 2009 -0800 [SCSI] libfc: fixed a read IO data integrity issue when a IO data frame lost The fc_fcp_complete_locked detected data underrun in this case and set the FC_DATA_UNDRUN but that was ignored by fc_io_compl for all cases including read underrun. Added code to not to ignore FC_DATA_UNDRUN for read IO and instead suggested scsi-ml to retry cmd to recover from lost data frame. Not sure if it is okay to ignore FC_DATA_UNDRUN for other case, so let code as is for other cases but removed or-ing with zero valued fsp->cdb_status for those cases. Signed-off-by: Vasu Dev Signed-off-by: Robert Love Signed-off-by: James Bottomley commit 6755db1cd4587084be85f860b7aa7c0cc9d776dc Author: Chris Leech Date: Fri Feb 27 10:55:02 2009 -0800 [SCSI] libfc: rport retry on LS_RJT from certain ELS This allows any rport ELS to retry on LS_RJT. The rport error handling would only retry on resource allocation failures and exchange timeouts. I have a target that will occasionally reject PLOGI when we do a quick LOGO/PLOGI. When a critical ELS was rejected, libfc would fail silently leaving the rport in a dead state. The retry count and delay are managed by fc_rport_error_retry. If the retry count is exceeded fc_rport_error will be called. When retrying is not the correct course of action, fc_rport_error can be called directly. Signed-off-by: Chris Leech Signed-off-by: Robert Love Signed-off-by: James Bottomley commit bc0e17f691085315ae9303eb5b0883fe16dfe6b1 Author: Vasu Dev Date: Fri Feb 27 10:54:57 2009 -0800 [SCSI] libfc, fcoe: fixed locking issues with lport->lp_mutex around lport->link_status The fcoe_xmit could call fc_pause in case the pending skb queue len is larger than FCOE_MAX_QUEUE_DEPTH, the fc_pause was trying to grab lport->lp_muex to change lport->link_status and that had these issues :- 1. The fcoe_xmit was getting called with bh disabled, thus causing "BUG: scheduling while atomic" when grabbing lport->lp_muex with bh disabled. 2. fc_linkup and fc_linkdown function calls lport_enter function with lport->lp_mutex held and these enter function in turn calls fcoe_xmit to send lport related FC frame, e.g. fc_linkup => fc_lport_enter_flogi to send flogi req. In this case grabbing the same lport->lp_mutex again in fc_puase from fcoe_xmit would cause deadlock. The lport->lp_mutex was used for setting FC_PAUSE in fcoe_xmit path but FC_PAUSE bit was not used anywhere beside just setting and clear this bit in lport->link_status, instead used a separate field qfull in fc_lport to eliminate need for lport->lp_mutex to track pending queue full condition and in turn avoid above described two locking issues. Also added check for lp->qfull in fc_fcp_lport_queue_ready to trigger SCSI_MLQUEUE_HOST_BUSY when lp->qfull is set to prevent more scsi-ml cmds while lp->qfull is set. This patch eliminated FC_LINK_UP and FC_PAUSE and instead used dedicated fields in fc_lport for this, this simplified all related conditional code. Also removed fc_pause and fc_unpause functions and instead used newly added lport->qfull directly in fcoe. Signed-off-by: Vasu Dev Signed-off-by: Robert Love Signed-off-by: James Bottomley commit a7e84f2b83f17f8f11da34ccef3ba5a862dc0182 Author: Vasu Dev Date: Fri Feb 27 10:54:51 2009 -0800 [SCSI] libfc: fixed a soft lockup issue in fc_exch_recv_abts The fc_seq_start_next grabs ep->ex_lock but this lock was already held here, so instead called fc_seq_start_next_locked to avoid soft lockup. Signed-off-by: Vasu Dev Signed-off-by: Robert Love Signed-off-by: James Bottomley commit 78342da3682ec843e3e6301af5c723c88a46c408 Author: Vasu Dev Date: Fri Feb 27 10:54:46 2009 -0800 [SCSI] libfc: handle RRQ exch timeout Cleanup exchange held due to RRQ when RRQ exch times out, in this case the ABTS is already done causing RRQ req therefore proceeding with cleanup in fc_exch_rrq_resp should be okay to restore exch resource. Signed-off-by: Vasu Dev Signed-off-by: Robert Love Signed-off-by: James Bottomley commit 571f824c3cd7b7f5a40ba100f7e576b6b0fe826a Author: Abhijeet Joglekar Date: Fri Feb 27 10:54:41 2009 -0800 [SCSI] libfc: when rport goes away (re-plogi), clean up exchanges to/from rport When a rport goes away, libFC does a plogi which will reset exchanges at the rport. Clean exchanges at our end, both in transport and libFC. If transport hooks into exch_mgr_reset, it will call back into fc_exch_mgr_reset() to clean up libFC exchanges. Signed-off-by: Abhijeet Joglekar Signed-off-by: Robert Love Signed-off-by: James Bottomley commit 1f6ff364ceda516f88351a8ab640e656beed0b26 Author: Abhijeet Joglekar Date: Fri Feb 27 10:54:35 2009 -0800 [SCSI] libfc: Pass lport in exch_mgr_reset fc_exch_mgr structure is private to fc_exch.c. To export exch_mgr_reset to transport, transport needs access to the exch manager. Change exch_mgr_reset to use lport param which is the shared structure between libFC and transport. Alternatively, fc_exch_mgr definition can be moved to libfc.h so that lport can be accessed from mp*. Signed-off-by: Abhijeet Joglekar Signed-off-by: Robert Love Signed-off-by: James Bottomley commit 1264fa6f8c5bf561a86128b2d48ace53e3f1e66f Merge: efeff56... 559595a... Author: Ben Dooks Date: Fri Mar 6 17:13:52 2009 +0000 Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6 into s3c-fixes commit 20214fcd74bddc16d65d466212f5dd32aafe8868 Author: Darius Augulis Date: Mon Jan 12 16:22:57 2009 +0200 MX1 fix include Includes missed irqs.h in devices.c and mx1ads.c. Signed-off-by: Darius Augulis Signed-off-by: Sascha Hauer commit e08e7b5f01de7ec246b996c65e9c26c7cea0c62d Author: Mauro Carvalho Chehab Date: Thu Mar 5 16:19:14 2009 -0300 V4L/DVB (10834): zoran: auto-select bt866 for AverMedia 6 Eyes AFAIK, the bt866 is only seen on AverMedia 6 Eyes. However, no module selects it. Adds a proper select for this driver. Signed-off-by: Mauro Carvalho Chehab commit 4c6c390eb8ba0c569279266a98c604508c695ef8 Author: Vitaly Wool Date: Thu Mar 5 13:03:32 2009 -0300 V4L/DVB (10832): tvaudio: Avoid breakage with tda9874a The 'bytes' array is 64 bytes large but the easy standard programming (TDA9874A_ESP) has a number of 255, outside the shadow array size. This patch increases the size of the shadow array in order to accomodate this register. Signed-off-by: Vitaly Wool Signed-off-by: Mauro Carvalho Chehab commit d2c452306ab402d7a3572bc3bf8e575796529bf8 Author: Gregory Lardiere Date: Sun Feb 22 17:54:11 2009 -0300 V4L/DVB (10789): m5602-s5k4aa: Split up the initial sensor probe in chunks. The previous probe rotine tried to read 6 bytes in one chunk which currently isn't allowed. This is the rev. 10346 243399e67c41 readded with a high priority. Signed-off-by: Gregory Lardiere Signed-off-by: Erik Andrén Signed-off-by: Mauro Carvalho Chehab commit ef449e6d21b6e560c7ec36ed285ec3a34e0b12ed Author: Hartley Sweeten Date: Thu Mar 5 17:33:50 2009 +0100 [ARM] 5419/1: ep93xx: fix build warnings about struct i2c_board_info Fix build warnings due to struct i2c_board_info in Patch "5311/1: add core support for built in i2c bus" is causing 11 of 39 the build warnings with Kautobuild for ep93xx_defconfig on kernel 2.6.29-rc5-git4. This patch fixes it. Signed-off-by: H Hartley Sweeten Signed-off-by: Russell King commit 33dd6f92a1a7ad85c54d47fd9d73371a32c0bde4 Author: Matthew Wilcox Date: Fri Feb 20 06:53:48 2009 -0700 [SCSI] sd: Don't try to spin up drives that are connected to an inactive port We currently try to spin up drives connected to standby and unavailable ports. This will never succeed and wastes a lot of time. Fail quickly if the sense data reports the port is in standby or unavailable state. Reported-by: Narayanan Rengarajan Tested-by: Narayanan Rengarajan Signed-off-by: Matthew Wilcox Signed-off-by: James Bottomley commit d4cc510c61b050ef38e842a12feef71c56d7cf81 Author: Uwe Kleine-König Date: Wed Mar 4 11:48:46 2009 +0100 [ARM] 5418/1: restore lr before leaving mcount gcc seems to expect that lr isn't clobbered by mcount, because for a function starting with: static int func(void) { void *ra = __builtin_return_address(0); printk(KERN_EMERG "__builtin_return_address(0) = %pS\n", ra) ... the following assembler is generated by gcc 4.3.2: 0: e1a0c00d mov ip, sp 4: e92dd810 push {r4, fp, ip, lr, pc} 8: e24cb004 sub fp, ip, #4 ; 0x4 c: ebfffffe bl 0 10: e59f0034 ldr r0, [pc, #52] 14: e1a0100e mov r1, lr 18: ebfffffe bl 0 Without this patch obviously __builtin_return_address(0) yields func+0x10 instead of the return address of the caller. Note this patch fixes a similar issue for the routines used with dynamic ftrace even though this isn't currently selectable for ARM. Cc: Abhishek Sagar Cc: Steven Rostedt Cc: Ingo Molnar Signed-off-by: Uwe Kleine-König Signed-off-by: Russell King commit 843e22b056c07d39b8f97935173dab879abc613b Merge: 559595a... f45964e... Author: Russell King Date: Thu Mar 5 09:21:18 2009 +0000 Merge branch 'for-rmk' of git://git.marvell.com/orion commit 8ca7fe267f58462825729443f3e3b44ef4901cf0 Author: Koen Kooi Date: Wed Mar 4 10:07:42 2009 -0800 ARM: OMAP: board-omap3beagle: set i2c-3 to 100kHz Changing it do 100kHz is needed to make more devices works properly. Controlling the TI DLP Pico projector[1] doesn't work properly at 400kHz, 100kHz and lower work fine. EDID readout is unaffected by this change. [1] http://focus.ti.com/dlpdmd/docs/dlpdiscovery.tsp?sectionId=60&tabId=2234 Signed-off-by: Koen Kooi Acked-by: David Brownell Signed-off-by: Tony Lindgren commit e951651657610305c9af0045fd64c6a5b0bc4b80 Author: Aaro Koskinen Date: Wed Mar 4 10:07:41 2009 -0800 ARM: OMAP: Allow I2C bus driver to be compiled as a module Fixes a linker error when OMAP I2C bus driver is compiled as a module: ERROR: "i2c_register_board_info" [arch/arm/plat-omap/i2c.ko] undefined! The I2C utility functions used for board initialization should be always built-in. Signed-off-by: Aaro Koskinen Acked-by: Jarkko Nikula Signed-off-by: Tony Lindgren commit 80ea3bac3a47bc73efa334d0dd57099d0ff14216 Author: Aaro Koskinen Date: Wed Mar 4 10:07:41 2009 -0800 ARM: OMAP: sched_clock() corrected After my OMAP3 board has been running for a while, I'm seeing weird latency traces like this: sh-1574 0d.h2 153us : do_timer (tick_do_update_jiffies64) sh-1574 0d.h2 153us : update_wall_time (do_timer) sh-1574 0d.h2 153us!: omap_32k_read (update_wall_time) sh-1574 0d.h2 1883us : update_xtime_cache (update_wall_time) sh-1574 0d.h2 1883us : clocksource_get_next (update_wall_time) sh-1574 0d.h2 1883us+: _spin_lock_irqsave (clocksource_get_next) and after a while: sh-17818 0d.h3 153us : do_timer (tick_do_update_jiffies64) sh-17818 0d.h3 153us : update_wall_time (do_timer) sh-17818 0d.h3 153us!: omap_32k_read (update_wall_time) sh-17818 0d.h3 1915us : update_xtime_cache (update_wall_time) sh-17818 0d.h3 1915us+: clocksource_get_next (update_wall_time) sh-17818 0d.h3 1945us : _spin_lock_irqsave (clocksource_get_next) Turns out that sched_clock() is using cyc2ns(), which returns NTP adjusted time. The sched_clock() frequency should not be adjusted. The patch deletes omap_32k_ticks_to_nsecs() and rewrites sched_clock() to do the conversion using the constant multiplier. Signed-off-by: Aaro Koskinen Signed-off-by: Tony Lindgren commit 87d99d6f7ee3ec73b2b0212427b173502ec9d6cb Author: David Brownell Date: Wed Mar 4 10:07:40 2009 -0800 ARM: OMAP: Fix compile error if pm.h is included Change the error to a warning. Signed-off-by: David Brownell Signed-off-by: Tony Lindgren commit f45964ed6971db2e7ae6cb9b164def1d23b46612 Author: Saeed Bishara Date: Mon Mar 2 17:30:36 2009 +0200 [ARM] orion5x: pass dram mbus data to xor driver This data should be passed to the xor driver in order to initialize the address decoding windows of the xor unit. without this patch, the self tests of the xor will fail unless the address decoding windows were initialized by the boot loader. Signed-off-by: Saeed Bishara Signed-off-by: Nicolas Pitre commit efeff568677aa325f84d3ce37c219019887a79eb Author: Werner Almesberger Date: Fri Feb 27 08:03:07 2009 -0300 [ARM] S3C64XX: Fix s3c64xx_setrate_clksrc Some of the rate selection logic in s3c64xx_setrate_clksrc uses what appears to be parent clock selection logic. This patch corrects it. I also added a check for overly large dividers to prevent them from changing unrelated clocks. Signed-off-by: Werner Almesberger Signed-off-by: Ben Dooks commit fdca9bf2dae14218704ddd7dc60ad1b198c1d787 Author: Ben Dooks Date: Fri Feb 27 11:29:23 2009 +0000 [ARM] S3C64XX: sparse warnings in arch/arm/plat-s3c64xx/irq.c Fix the following sparse warnings in arch/arm/plat-s3c64xx/irq.c arch/arm/plat-s3c64xx/irq.c:210:23: warning: incorrect type in initializer (different address spaces) arch/arm/plat-s3c64xx/irq.c:210:23: expected void *reg_base arch/arm/plat-s3c64xx/irq.c:210:23: got void [noderef] *regs arch/arm/plat-s3c64xx/irq.c:215:2: warning: incorrect type in argument 1 (different address spaces) arch/arm/plat-s3c64xx/irq.c:215:2: expected void const volatile [noderef] * arch/arm/plat-s3c64xx/irq.c:215:2: got void * Signed-off-by: Ben Dooks commit 3782d3605522b836f53c6d11f76abf5404425c1b Author: Ben Dooks Date: Fri Feb 27 11:25:37 2009 +0000 [ARM] S3C64XX: sparse warnings in arch/arm/plat-s3c64xx/s3c6400-clock.c Fix the following sparse warnings in s3c6400-clock.c: 39:12: warning: symbol 'clk_ext_xtal_mux' was not declared. Should it be static? 66:12: warning: symbol 'clk_fout_apll' was not declared. Should it be static? 81:19: warning: symbol 'clk_mout_apll' was not declared. Should it be static? 91:12: warning: symbol 'clk_fout_epll' was not declared. Should it be static? 106:19: warning: symbol 'clk_mout_epll' was not declared. Should it be static? 126:19: warning: symbol 'clk_mout_mpll' was not declared. Should it be static? 148:12: warning: symbol 'clk_dout_mpll' was not declared. Should it be static? Signed-off-by: Ben Dooks commit 41ba41d7c7e1d2a3c9cdfe16c1ee9f7af4693ae2 Author: Ben Dooks Date: Thu Feb 26 23:00:34 2009 +0000 [ARM] S3C64XX: Fix USB host clock mux list The clock list for the USB host bus clock was in the wrong order, move clk_48m to position 0. Signed-off-by: Ben Dooks Signed-off-by: Ben Dooks commit 19c5957081a6ffbf014e6c944e6aafee3c1632c3 Author: Ben Dooks Date: Thu Feb 26 23:00:33 2009 +0000 [ARM] S3C64XX: Fix name of USB host clock. The usb-host-bus clock should be named usb-bus-host. Signed-off-by: Ben Dooks Signed-off-by: Ben Dooks commit 4271c3bd46a0f0448118cf618c7210237a98e6bf Author: Ben Dooks Date: Thu Feb 26 23:00:27 2009 +0000 [ARM] S3C64XX: Rename IRQ_UHOST to IRQ_USBH The USB OHCI host device expects the IRQ definition to be named IRQ_USBH, so rename the S3C64XX IRQ header to match. Signed-off-by: Ben Dooks Signed-off-by: Ben Dooks commit 24d4076734b4ecf083a6be611040fe0743e59989 Author: Mark Brown Date: Fri Jan 23 17:06:23 2009 +0000 [ARM] S3C64XX: Do gpiolib configuration earlier arch_initcall() runs after the machine init function which means that any configuration of GPIO pins must currently be done later on, for example in callbacks from drivers. Move the initialisation earlier in order to allow machines to configure GPIOs directly in their init functions rather than having to have a callback invoked later on. Some other ARM platforms use this method. Other solutions for this include providing a special interface for setting up GPIOs en masse, adding callbacks to do the GPIO configuration from devices and doing the GPIO configuration implicitly. Signed-off-by: Mark Brown Signed-off-by: Ben Dooks commit 8bd8dbdf3725ce569467bd704840249869f626d6 Author: Mark Brown Date: Fri Jan 23 16:29:44 2009 +0000 [ARM] S3C64XX: Staticise s3c64xx_init_irq_eint() It's an initcall and does not need to be exported. Signed-off-by: Mark Brown Signed-off-by: Ben Dooks commit 027191a8c6602d3fb6dde3820517339e1daf191d Author: Mark Brown Date: Fri Jan 23 16:29:43 2009 +0000 [ARM] SMDK6410: Declare iodesc table static Shuts up a warning. Signed-off-by: Mark Brown Signed-off-by: Ben Dooks commit 778974797793e7dcd42e3701e09c686b6419cb35 Author: Mark Brown Date: Fri Jan 23 16:29:41 2009 +0000 [ARM] SMDK6410: Correct I2C device name for WM8580 The WM8580 driver registers itself as "wm8580" rather than "WM8580". Signed-off-by: Mark Brown Signed-off-by: Ben Dooks commit 789b4ad36c7037758309df98f1efa65d0c26527d Author: Mark Brown Date: Mon Jan 26 19:12:01 2009 +0000 [ARM] S3C64XX: Fix section mismatch for s3c64xx_register_clocks() Signed-off-by: Mark Brown Signed-off-by: Ben Dooks commit 28fd2d397bab5c7fb0eed0c20b6766c99ae34a8f Author: Ben Dooks Date: Fri Dec 12 00:24:33 2008 +0000 [ARM] S3C64XX: Set GPIO pin when select IRQ_EINT type Set the GPIO pin mode to external interrupt when configuring an IRQ_EINT's IRQ type. Signed-off-by: Ben Dooks