commit 3975d16760d4be7402d1067c548c30c427971331 Merge: 4d3d769 1c24d06 Author: Linus Torvalds Date: Mon Jun 7 17:10:06 2010 -0700 Merge git://git.infradead.org/~dwmw2/mtd-2.6.35 * git://git.infradead.org/~dwmw2/mtd-2.6.35: jffs2: update ctime when changing the file's permission by setfacl jffs2: Fix NFS race by using insert_inode_locked() jffs2: Fix in-core inode leaks on error paths mtd: Fix NAND submenu mtd/r852: update card detect early. mtd/r852: Fixes in case of DMA timeout mtd/r852: register IRQ as last step drivers/mtd: Use memdup_user docbook: make mtd nand module init static commit 4d3d769c605ebdf9fbb5a9d63827598b48351861 Merge: cfca31c 0ee7195 Author: Linus Torvalds Date: Mon Jun 7 17:09:03 2010 -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: ahci: redo stopping DMA engines on empty ports sata_sil24: fix kernel panic on ARM caused by unaligned access in sata_sil24 ahci: add pci quirk for JMB362 sata_via: explain the magic fix commit 0ee719527229fa86ace8e3abccae3c2a8bbfd6db Author: Tejun Heo Date: Mon Jun 7 15:15:08 2010 +0200 ahci: redo stopping DMA engines on empty ports Commit 96d60303fd (ahci: Turn off DMA engines when there's no device) implemented stopping DMA engines on empty ports but it used single sampling of status registers to determine device presence which led to disabling of DMA engines on occupied ports. Do it after all EH actions are complete using device presence state determined by EH. This avoids spurious disabling of DMA engines and simplifies the code. Signed-off-by: Tejun Heo Tested-by: Marc Dionne Cc: Matthew Garrett Cc: Robert Hancock Signed-off-by: Jeff Garzik commit 7a4f876b876afb13856a79a0402f71b9dfbe86a8 Author: Colin Tuckley Date: Fri Jun 4 16:19:51 2010 +0200 sata_sil24: fix kernel panic on ARM caused by unaligned access in sata_sil24 The sata_sil24 driver has six 16-bit registers that are initialised with 32-bit writes. This cause a kernel panic on ARM due to the unaligned accesses which result. This patch changes the accesses to the correct 16-bit ones. Signed-off-by: Colin Tuckley Signed-off-by: Tejun Heo Signed-off-by: Jeff Garzik commit 4daedcfe8c6851aa01cc1997220f2577f4039c13 Author: Tejun Heo Date: Thu Jun 3 11:57:04 2010 +0200 ahci: add pci quirk for JMB362 JMB362 is a new variant of jmicron controller which is similar to JMB360 but has two SATA ports instead of one. As there is no PATA port, single function AHCI mode can be used as in JMB360. Add pci quirk for JMB362. Signed-off-by: Tejun Heo Reported-by: Aries Lee Cc: stable@kernel.org Signed-off-by: Jeff Garzik commit b475a3b83a7709e16a734ef2b8ead4d50f885427 Author: Tejun Heo Date: Thu Jun 3 11:35:03 2010 +0200 sata_via: explain the magic fix Add Joseph Chan's explanation of the problem and workaround to the VT6421 magic fix. Signed-off-by: Tejun Heo Cc: Joseph Chan Signed-off-by: Jeff Garzik commit cfca31ce789963c0dd6ca2e9cc13b90cc2802fbd Author: Julia Lawall Date: Thu May 27 14:32:24 2010 +0200 [PATCH 2/11] drivers/watchdog: Eliminate a NULL pointer dereference At the point of the call to dev_err, wm8350 is NULL. A simplified version of the semantic match that finds this problem is as follows: (http://coccinelle.lip6.fr/) // @r exists@ expression E,E1; identifier f; statement S1,S2,S3; @@ if ((E == NULL && ...) || ...) { ... when != if (...) S1 else S2 when != E = E1 * E->f ... when any return ...; } else S3 // Signed-off-by: Julia Lawall Acked-by: Mark Brown Signed-off-by: Wim Van Sebroeck commit 386f40c86d6c8d5b717ef20620af1a750d0dacb4 Author: Linus Torvalds Date: Sun Jun 6 20:44:04 2010 -0700 Revert "tty: fix a little bug in scrup, vt.c" This reverts commit 962400e8fd29981a7b166e463dd143b6ac6a3e76, which was entirely bogus. The code used to multiply the character offset by "vc->vc_cols", and that's actually correct, because 'd' itself is an 'unsigned short'. So the pointer arithmetic already takes the size of a VGA character into account. Changing it to use vc_size_row (which is just "vc_cols" shifted up to take the size of the character into account) ends up multiplying with the VGA character size twice. This got reported as bugs for various other subsystems, because what it actually results in is writing the 16-bit vc_video_erase_char pattern (usually 0x0720: 0x07 is the default attribute, 0x20 is ASCII space) into some random other allocation. So Markus ended up reporting this as a ext4 bug, while to Torsten Kaiser it looked like a problem with KMS or libata. Jeff Chua saw it in different places. And finally - Justin Mattock had slab poisoning enabled, and saw it as a slab poison overwritten. And bisected and reverted this to verify the buggy commit. Reported-by: Markus Trippelsdorf Reported-by: Torsten Kaiser Reported-by: Jeff Chua Reported-by: Justin P. Mattock Reported-bisected-and-tested-by: Justin P. Mattock Acked-by: Dave Airlie Cc: Frank Pan Cc: Greg Kroah-Hartman Signed-off-by: Linus Torvalds commit 1c24d06f8e065023ebb428db5af5514500839ee6 Author: Jan Kara Date: Fri Jun 4 17:07:55 2010 +0200 jffs2: update ctime when changing the file's permission by setfacl jffs2 didn't update the ctime of the file when its permission was changed. Steps to reproduce: # touch aaa # stat -c %Z aaa 1275289822 # setfacl -m 'u::x,g::x,o::x' aaa # stat -c %Z aaa 1275289822 <- unchanged But, according to the spec of the ctime, jffs2 must update it. Port of ext3 patch by Miao Xie . Signed-off-by: Jan Kara Signed-off-by: David Woodhouse commit e72e6497e74811e01d72b4c1b7537b3aea3ee857 Author: David Woodhouse Date: Thu Jun 3 08:09:12 2010 +0100 jffs2: Fix NFS race by using insert_inode_locked() New inodes need to be locked as we're creating them, so they don't get used by other things (like NFSd) before they're ready. Pointed out by Al Viro. Signed-off-by: David Woodhouse commit f324e4cb2cadd9a42932c8a158e761ae31b88e72 Author: David Woodhouse Date: Thu Jun 3 08:03:39 2010 +0100 jffs2: Fix in-core inode leaks on error paths Pointed out by Al Viro. Signed-off-by: David Woodhouse commit 5869d2c387e75814334697c9d702d91b7c63a308 Author: Maxim Levitsky Date: Wed Jun 2 18:22:48 2010 +0300 mtd: Fix NAND submenu Move MTD_NAND_ECC and MTD_NAND_ECC_SMC above NAND memuconfig, to unbreak display in xconfig. This shouldn't change any dependencies. Signed-off-by: Maxim Levitsky Signed-off-by: David Woodhouse commit ac373f7e2286ed3690e8a93ebf9f6f1ae0c7d4a9 Author: Maxim Levitsky Date: Wed Jun 2 16:01:47 2010 +0300 mtd/r852: update card detect early. This turns out to be the reason for DMA timeouts on resume, if card was inserted while system was suspended Signed-off-by: Maxim Levitsky Signed-off-by: David Woodhouse commit 9489be8ca234c07666e88a4472e4d5f2a2425aa5 Author: Maxim Levitsky Date: Wed Jun 2 16:01:46 2010 +0300 mtd/r852: Fixes in case of DMA timeout * Don't call complete on dma completion * do a INIT_COMPLETE before using it each time * Report DMA read error via ecc 'correct' I finally managed to make my system do suspend to ram propertly, and I see that if card was inserted during suspend (while system was off), I get dma timeouts on resume. Simple card reinsert solves the issue. This patch solves a crash that would happen otherwise Signed-off-by: Maxim Levitsky Signed-off-by: David Woodhouse commit cc1fed00c9ba84f38717a6cab84409cd48f340e3 Author: Maxim Levitsky Date: Wed Jun 2 16:01:45 2010 +0300 mtd/r852: register IRQ as last step Otherwise, if it fires right away, it might access uninitialized spinlock Signed-off-by: Maxim Levitsky Signed-off-by: David Woodhouse commit df1f1d1cb43b4ffdef5ba5f0623e2f73e94ce030 Author: Julia Lawall Date: Sat May 22 10:22:49 2010 +0200 drivers/mtd: Use memdup_user Use memdup_user when user data is immediately copied into the allocated region. The semantic patch that makes this change is as follows: (http://coccinelle.lip6.fr/) // @@ expression from,to,size,flag; position p; identifier l1,l2; @@ - to = \(kmalloc@p\|kzalloc@p\)(size,flag); + to = memdup_user(from,size); if ( - to==NULL + IS_ERR(to) || ...) { <+... when != goto l1; - -ENOMEM + PTR_ERR(to) ...+> } - if (copy_from_user(to, from, size) != 0) { - <+... when != goto l2; - -EFAULT - ...+> - } // Signed-off-by: Julia Lawall Signed-off-by: David Woodhouse commit 39c5837d7968ffd68e1d3c79efba1631b7f513d9 Author: H Hartley Sweeten Date: Mon May 17 16:21:11 2010 -0700 docbook: make mtd nand module init static In the example the module_init function should be static. Signed-off-by: H Hartley Sweeten Signed-off-by: Randy Dunlap Signed-off-by: David Woodhouse